Topic: Reference design FMC204  (Read 9327 times)

nissart July 08, 2013, 11:56 AM

  • Member
  • *
  • Posts: 6
Hello,


I am working with a FMC204 DAC and aHTG-V6-PCIE-L550-2 board.

The first thing we would like to do is to use the reference design given with the DAC. The problem is that there is no reference design available for our board. So we wanted to use the one for the ML605 (step 1 for ethernet) and adapt it for our board. To do so, we changed the pins in the UCF file, but do we need to change other things?


Regards,
Olivier.

arnaudNL July 09, 2013, 04:42 AM (#1)

  • 4DSP Staff (EU)
  • Administrator
  • Member
  • *****
  • Posts: 7110

Bonjour Olivier,




The reference design is made of a software and a firmware. The software is configuring the FMC204 via Ethernet. The firmware element receiving host transaction is the star sip_mac_engine.




What I would do is directly work on the FMC204 reference firmware. Check inside there is a star_lib. If you look at sip_fmc204\sip_files you will see different files typically:




sip_fmc204_v6.lst is the list of all the star files for v6 platform. The path to LST file is what goes in the SDF file in the star declaration area. You are using the same platform so you should not need to change that.




If you look at ml605_fmc204.sdf in the implement folder, you will see that TRGT_FPGA_TYPE should be updated for the FPGA type you have on your board. TRGT_BOARD is something you need to change, you should choose a name, I use HTGV6L550 as name for the remaining explanation.




The following line is correct and don't need to be changed:




Code: [Select]
STAR sip_fmc204          ,ID=0 ,FILE=sip_fmc204\sip_files\sip_fmc204_v6.lst;




Actually this tells StelarIP that the star file list is sip_fmc204_v6.lst and that the star sip_fmc204 is attached to ID 0.




About the UCF. With TRGT_BOARD = ML605 and ID=0, StellarIP expect a sip_fmc204_ml605_0.ucf file. The name is made of star name, board type and ID. On your side you would create a sip_fmc204_htgv6l550_0.ucf based on the other one.




Now that this "secret" is revealed you understand how the same star can target many boards.




If you keep other information the same in your sdf (typically ID) then the default software should run just fine, this of course assumes you get Ethernet working on your board.




You will also need to do that same trick for sip_mac_engine (the ethernet engine) and sip_fmc_ct_gen (a clock trigger generation). The second one is generally outputting clock/trigger on SMA connector present on Xiinx dev boards.




As soon you have stars modified and an updated sdf, you can use StellarIP to generate a new firmware for you. Note that you could also decide to use StellarIP once in order to get the complete FMC204-ML605 firmware and then modify the top level UCF by hand in there.




Best Regards,
Arnaud

nissart July 09, 2013, 01:09 PM (#2)

  • Member
  • *
  • Posts: 6
Hello Arnaud, thank you very much for your reply.



If I understand well, I will have to create also a "sip_i2c_master_htgv6l550_0.ucf" file, and to modify the core in the "sip_fmc_ct_gen" folder, to fit my board?



If yes, it will give way to 2 problems: - the pin for the SDA and SCL signals are not defined for my board (ie the screenshot attached)

- the core version is an old one and cannot be open with my version.

arnaudNL July 09, 2013, 04:46 PM (#3)

  • 4DSP Staff (EU)
  • Administrator
  • Member
  • *****
  • Posts: 7110
Dear Olivier,


Yes, more or less. I guess your carrier does not route the i2c to the FPGA for a reason or another, maybe they are routed to some other silicon on your board.


The purpose of i2c is to communicate with the EEPROM and the monitoring devices available on the board. You might want to remove sip_fmc_ct_gen from the sdf; in the star declaration as well as the connections associated to it.


You could also decide to remove the i2c master star or simply attach these signals to "unused" pins on your board.


Best Regards,
Arnaud





nissart July 22, 2013, 12:42 PM (#4)

  • Member
  • *
  • Posts: 6
Hello Arnaud,

First, thank you for your help. I finally removed the sip_fmc_ct_gen and found pins for i2c on our other ethernet port.



However, I have now problems with the software: we "could not obtain sipcid table error ffffffff"

I saw the thread on this problem and tried different things (changed jumpers, changed to an 1GBps ethernet port, checked the bitfile, the FMC port). Anyway there is still no progress.
Do you think it could be due to the constellation ID that doesn't exist for our board?

And what should I enter as "device type"? HTGV6L550 or ML605?



Regards,
Olivier

arnaudNL July 23, 2013, 08:33 AM (#5)

  • 4DSP Staff (EU)
  • Administrator
  • Member
  • *****
  • Posts: 7110

Hello Olivier,


The could not obtain sipcid table error indicate a communication problem between your host and the mac engine in the firmware so no, unfortunately this is not about having wrong constellation ID.


I assume the device type should be HTGV6L550 and if the firmware compiles and you have the modification in the stellarip ucf then it should be fine.


Maybe differences around the PHY or connections between the PHY and the EMAC (RGMII, SGM, etc..)


I can look at your project if you wish, I will not be able to tell you what is wrong but give you confirmation your project and your support for HTGV6L550 is correct, in a StellarIP point of view. You can send the project to support@4dsp.com, I will look at it.


Best Regards,
Arnaud

nissart July 23, 2013, 10:49 AM (#6)

  • Member
  • *
  • Posts: 6
Hello,

I sent my project to you, could you please confirm when you receive it.

Regards,
Olivier.

arnaudNL July 24, 2013, 04:27 AM (#7)

  • 4DSP Staff (EU)
  • Administrator
  • Member
  • *****
  • Posts: 7110
Dear Olivier,


I received the archive but I do not see a valid htgv6l550_fmc204.sdf.


Can you also send me that one?


Best Regards,
Arnaud

nissart July 30, 2013, 09:20 AM (#8)

  • Member
  • *
  • Posts: 6
Hello,

Did you actually receive the file?

Regards.

arnaudNL July 30, 2013, 11:27 AM (#9)

  • 4DSP Staff (EU)
  • Administrator
  • Member
  • *****
  • Posts: 7110
Hello,


Yes I received the file, I will look into that as soon I am able to have time for that, hopefully tomorrow.


Best Regards,
Arnaud

nissart August 09, 2013, 11:19 AM (#10)

  • Member
  • *
  • Posts: 6
Hello,

Actually, our mother board has one 100 MBps ethernet port on which internet works but not the application. According to the forum, 100 MBps port are not supported and the application doesn't work on it. That's why we added a 1GBps ethernet port on which the application doesn't work. However I tested this morning (why I didn't think about it before, I am still wondering...), the internet doesn't work on the 1Gbps port! That could easily explain why the application doesn't work on it.

However, the question is now: why does the same error happen on both ports and how I could deal with it?

Regards.