Forum Discussion
Altera_Forum
Honored Contributor
14 years ago --- Quote Start --- What the JOP processor does is that it puts the program from the serial port onto the on-board memory. This question maybe too specific, but is there a way to program the memory (PSRAM in my case) directly through USB. Sorry if this is trival, but I'm new to this, as you might be able to tell. --- Quote End --- No need to apologize, there's lots of stuff to learn. When any processor boots, it jumps to a reset vector and executes its first instruction. It sounds like your processor has a small bootloader that will read a program image over a serial port. You have two options; 1) Delete the bootloader code, and just put your code into the memory location of the processor reset vector, or 2) Create a fake serial port that delivers bytes to the bootloader. Both methods are equally valid. The second might actually be easier, as you do not have to touch the JOP code. Does it expect a serial port at a specific address? If so, you can map a FIFO to that address, and when the processor reads from that address deliver the next byte of code. The code could be loaded into an FPGA RAM using a memory initialization file (.mif) as part of the FPGA configuration, or you could load the RAM after power-on, and then enable the processor. The second option would however require you to understand how to hold the processor in reset, and how to create a multi-master bus, where both the processor and JTAG can access RAM. Is this JOP processor configured as an Avalon-MM master? If so, then multi-mastering the bus is as easy as dropping the processor component into SOPC builder, along with the RAM, and JTAG master. There's probably lots of things that aren't quite clear to you yet, so keep asking questions. Have you tried 'booting' this processor in the Modelsim simulator? Regarding PSRAM; yes, you could program this RAM from USB. You would need an Avalon-MM slave PSRAM controller, and then you can also add this component to an SOPC System. Cheers, Dave