Hello everyone,I am a newbie with a lot of concepts regarding FPGA. I have a question : what is exactly the System ID peripheral ? Why is it important (or not) to include it as an SOPC builder component? Which designs require it ? Thank you for your help! Cheers, Pdoc.
Hi Pdoc,System ID is for systems involving multiple processors. When you use Eclipse to download software, you can choose the processor that executes the code based on the system ID. It doesn't hurt to include it. As far as I know, if you don't include it, Eclipse will still download the code, but it will complain.
It isn't required, because I have downloaded software onto systems without it. Eclipse will at first complain with some error message. But, all you have to do is check the "Ignore mismatched system id" when downloading the program.Regardless, I don't think it hurts to include it.
System ID also prevents you from having a mismatch between your hardware and software configurations. When you compile the software, it stores the system ID of the SOPC Builder/QSYS project at the time of the compile, and when you download the software Eclipse will first check that the configuration in the FPGA has the same ID than the one used to compile the software. That way if you have modified your SOPC project but forgot to recompile the software, you will know it before uploading the software to a potentially incompatible hardware configuration.So using system ID isn't required, but it is recommended, to avoid mismatches between hardware and software.
Hey everybody,thank you very much for your help! This makes more sense to me. I will include the systemID in my design, as it does not hurt and seems even useful in some situations :o) Cheers, Pdoc