Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
15480 Discussions

How does the checksum in the map file relates to the checksum o fthe rpd file?

Honored Contributor II


I'm working on a remote upgrade feature through Ethernet for a MAX 10 device. 

In order to make sure that the content of the rpd file matches the configuration, I intend to read the map file, get the sections offset and length and then extract the data from the rpd file accordingly. 

And to make sure that the rpd file is indeed the one associated with the map file used, I wanted to test the checksum information contained in that map file. 

However, I'm not able to find a match with the content of the rpd file... :( 

I tried to compute the checksum with single xOr of 32 bits Integers through the whole content of the file, no success. 

I tried using CRC32 algorithm through the whole file: idem; skipping ICB section: idem; skipping UFM too: idem... 

Maybe I made a mistake in my CRC32 algorithm, but before spending too long trying to fix it, does anyone know how the checksum written in the map file is computed and if there is an easy way to verify that it matches with the content of the rpd file? 






Typical map file content:BLOCK START ADDRESS END ADDRESS 


ICB 0x00000000 0x00001FFF 

UFM 0x00002000 0x00011FFF 

CFM0 0x000BA000 0x00161FFF (0x0011C473) 

CFM1 0x00012000 0x000B9FFF (0x0009ECFF) 


Max 10 Setting: 


Verify protect: OFF 

Watchdog value: Not activated 

Configure device from CFM0 only: OFF 

POR: Instant ON 

IO Pullup: ON 

SPI IO Pullup: ON 


- Data checksum for this conversion is 0x0C1686D1 

- All the addresses in this file are byte addresses 


0 Kudos
1 Reply

Hi did you found a solution, I m in the same situation