| Electronics > Beginners |
| OTP Programming |
| << < (3/3) |
| brucehoult:
--- Quote from: Ian.M on June 11, 2018, 09:24:31 pm ---Check if the NOP instruction has all bits programmed. If so, you can reuse a chip by over-programming bad code with NOPs and relocating the start of your code to a higher memory address, until the remaining space is too small for your code. --- End quote --- On our "HiFive1" RISC-V Arduino compatible we start the code in the OTP with 0x0000000F which is a fence instruction and thus something close to a NOP for practical purposes. It can later be patched to 0xnnnnnn06F, a relative branch with +/- 1 MB range to replacement code elsewhere in the OTP. The replacement code should also start with 0x0000000F so that it can itself be patched later. Actually, our OTP ships with the first 4 bytes being a branch to 12 bytes from the top of the OTP. At that location there are three instructions: 0x0000000F fence 0x200002b7 lui t0,0x20000 // loads 0x20000000 into register t0 0x00028057 jr t0 The main bootloader is in flash at 0x20000000 There is some other information about the hardware in the OTP, but as shipped 8156 bytes out of 8192 are unprogrammed. |
| westfw:
I have some 4-bit Toshiba OTP microprocessors (TMP47P443) that seemed like a good idea at the time (cheap, and "4bit" was vaguely interesting.)They need some weird adapter to be programmed with an EPROM programmer, and there isn't even a vendor-provided assembler, so they're still sitting in storage :-(I don't even know for sure that they haven't already been programmed with some vendor's code... |
| soFPG:
Any updates on the topic? There is an IDE available for download on their webpage: http://bjxmcu.com/index/mcu.html And there is also a "Writer" which writes programs to either OTP or "MTP" (as they call it on their website) controllers: http://bjxmcu.com/index/productkf.html Unfortunately neither TaoBao nor 1688.com have anything listed for "BJXDWTR" - so I am not sure if it is possible to program these chips at all! They have a few controllers listed here: http://bjxmcu.com/index/product/ptid/2.html but most of them aren't available through TaoBao or 1688.com - which tells me this is a pretty niche company if even TaoBao doesn't list the majority. If I start "compiler.exe" (found in the IDE download package) I just get this error message in chinese (see attached images) - anyone able to translate this? "CompilerDLL.dll" is right next to "compiler.exe" in the same folder so that shouldn't be the problem. If I open "BjxMTPWriter.exe" there are only 3 chips available from the dropdown menu: "BJ8M601A, BJ8M602A, BJ8M603A". So this tool is missing a couple of chips. I am wondering if there also is a "BjxOTPWriter.exe" - at least not in the IDE.rar package :( Seems like this is a dead end for now Edit: Their last chip on the "New IC"-section: http://bjxmcu.com/index/product/ptid/1.html is from 2014. Edit_2: @westfw There is a chinese company selling multi device programmers, there are some which are able to program the "TMP47P422VF", although it is not the exact same chip if they are compatible enough it could work, full supported devices are listed here: http://www.weilei.com/VP998list.htm#TOSHIBA |
| TomS_:
--- Quote from: Sudo_apt-get_install_yum on June 11, 2018, 12:21:47 pm ---an instruction based language with is nice so I can get out of my C comfort zone :) --- End quote --- You could do that with a low end PIC or ATMEL part, but without the headache. ^-^ Or, if you want to learn/do something really interesting (if I do say so myself), try and build yourself a Z80 or 6502 based computer. :-+ |
| Navigation |
| Message Index |
| Previous page |