Forum Discussion

HBhat2's avatar
HBhat2
Icon for Contributor rankContributor
5 years ago

Programming EPCQ from External processor

Hi,

We are targeting Arria 10 GX & we want to use 3 EPCQ devices to contain 3 different Binaries controlled by nCSO [0:2] lines in the custome hardware design.

Also, in the custom hardware, there is an NVIDIA processor is present. In the product version we want to update the EPCQ content from the processor instead of updating the EPCQ content (jic) over JTAG.

We came to know that there is an IP called " remote update IP" and that could be used for updating EPCQ. However I am not clear with regards to the interface between Processor & FPGA. Is it possible to update over SPI or PCIe interface from External processor?

I have attached the system level block diagram for your reference.

With Regards,

HPB

9 Replies

    • HBhat2's avatar
      HBhat2
      Icon for Contributor rankContributor

      Hi,

      Thanks for the reply. With respect to using "Generic Serial Flash Interface IP", I have couple of questions.

      1) Do you have any source code / reference design to interface the External processor to JTAG UART module of FPGA?

      2) We are not planning to use Quartus programmer or any Intel tools from Host PC to update the EPCQ device. Is it possible to update without Quartus programmer or Nios console to interface between External processor & FPGA .

      With Regards,

      HPB

    • HBhat2's avatar
      HBhat2
      Icon for Contributor rankContributor

      Hi,

      Thanks for the quick reply. I downloaded & understood the example design on high level.

      I understood that the host interface is through JTAG.

      As I mentioned previously, we are connecting the FPGA to external processor without JTAG. So, we do not want any dependency of tools like USB blaster/Quartus programmer/Nios Console.

      This requirement is for the field upgradable option of Arria 10 based product.

      Our requirement is the external processor must have a standard interface like UART/SPI and the external processor must be able to send the new Flash content through SPI/UART to FPGA. The FPGA must then send those contents to EPCQ flash.

      To support above requirement, flash interface IP is fine in the flash side. But, the way FPGA receives the flash content through JTAG is the concern.

      How to send the JIC content from External processor to FPGA over UART/SPI?

      What file format of JIC content must be sent by the external processor to FPGA?

      With Regards,

      HPB

    • HBhat2's avatar
      HBhat2
      Icon for Contributor rankContributor

      Hi,

      Thanks for the real time answer. We will check on rpd format & how we can use UART/SPI interface to send that format from external processor.

      Just one concern with remote update. If at all remote update failed due to unwanted scenarios like external processor shutdown or FPGA shutdown in the middle of remote update, whether Flash will contain previous image until new image is written completely or we need to take this scenario by creating 2 images in the EPCQ memory (one image is factory image & other is updated image)?

      With regards,

      HPB

  • JohnT_Altera's avatar
    JohnT_Altera
    Icon for Regular Contributor rankRegular Contributor

    Hi,


    I would recommend that you retain the factory image that will not be change and only update the application image. So if there is any issue happen during the application image update then it will always revert back to factory image until you update the application image again.