Skip to content
Snippets Groups Projects
Commit 293b7313 authored by Eric Kooistra's avatar Eric Kooistra
Browse files

Add impact of supporting 160MHz in SDP.

parent 9bf92509
No related branches found
No related tags found
No related merge requests found
Pipeline #43880 passed
SDP @ 160 MHz:
1) Hoe weet de firmware eigenlijk dattie op 160MHz draait?
Daarvoor moeten we een component toevoegen die gebruik maakt van de 25MHz crystal clock (van het 1GbE interface) en daarmee dan telt hoeveel CLK pulsen er in 1 seconde zitten. Het M&C interface werkt ook op deze 25MHz crystal, en daarom blijft het bord wel bereikbaar na een CLK 160M <-> 200M wissel. Dus het duurt 1s en dan weet de SDPFW of CLK is 160M of 200M.
2) SC acties
Na clock wissel 200M --> 160M of andersom is het volgende nodig en genoeg voor SC richting SDP:
* doe FPGA_boot_image_RW zodat de images opnieuw geladen worden
* write FPGA_pps_expected_cnt_RW met 160M of 200M
JDM: Als ik FPGA_boot_image_RW schrijf naar de huidige waarde, hoe kan ik dan zien of de FPGAs gereboot zijn? wachten op TR_FPGA_communication_error_R == False oid?
EK: Handmatig poll ik altijd FPGA_firmware_version_R totdat die een naam terug geeft, want het duurt een aantal secondes na een reboot. Maar TR_FPGA_communication_error_R == False voldoet mogelijk ook.
3) SDPFW modifiaties:
De SDPFW is er nog niet helemaal voor klaar, want FPGA_sdp_info_f_adc_R = 1 = 200 MHz staat fixed in de VHDL code. Dit betekent dat het f_adc veldje in de statistics header en beamlet output header altijd 1 is. Echter dit is makkelijk dynamisch te maken in de SDPFW (zie 1).
De SDPFW moet dan ook dynamisch FPGA_sdp_info_block_period_R goed zetten (staat nu fixed op 5120 ns).
De BSN nummering blijft verder gelijk, alleen de resolutie wijzigt. Dus BSN waarde voor t0 in 160MHz mode is factor 160/200 = 0.8 kleiner dan voor t0 in 200MHz mode.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment