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

Some more notes.

parent fc19d7c3
No related branches found
No related tags found
No related merge requests found
......@@ -281,6 +281,9 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
. FPGA_tbuf_signal_input_rsn_R = RSN at sync
FPGA_tbuf_signal_input_nof_blocks_R : expected value nof_block_per_sync = 100k or 80k
FPGA_tbuf_signal_input_nof_samples_R : expected value nof_clk_per_sync = 200M or 160M
If FPGA_tbuf_signal_input_rsn_R == -1 then either FPGA_processing_enable_R == False
or there is or was something wrong with the data path processing clock (dp_clk
= 200MHz or 160MHz).
* Record:
. FPGA_tbuf_record_all_RW[pn]
......@@ -289,7 +292,7 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
. FPGA_tbuf_record_enable_RW[pn]
FPGA_tbuf_record_enable_R[pn]
True = start/continue recording, all ai or half of ai (dependent on FPGA_tbuf_record_all_RW)
False = stop/freeze recording immediately
False = RW: stop/freeze recording immediately, R: recording has stopped
* Recording:
. FPGA_tbuf_recorded_last_timestamp_R[pn] = reg_recorded_last_rsn_R * T_adc
......@@ -328,7 +331,7 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
- when busy then FPGA_tbuf_memory_read_nof_packets_R increments until it reaches value of
FPGA_tbuf_dump_nof_packets_R
- when finished then FPGA_tbuf_memory_remaining_nof_packets_R = 0
False = stop dumping packets immediately
False = RW: stop dumping packets immediately, R: dumping has stopped
SDPFW:
- loops over one or multiple ai
SC / dump tool:
......@@ -366,12 +369,12 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
Enable output on the pn at end of ring that has interface to CEP.
* 10GbE output monitor:
. FPGA_tbuf_output_nof_packets_R[pn]
Number of dump packets that have been output while FPGA_tbuf_output_enable_RW = True,
reset to 0 when FPGA_tbuf_output_clear_counts_RW = True event
. FPGA_tbuf_output_clear_counts_RW[pn]
Use dp_strobe_total_count with MM clear register rather than in_clr = revt(reg_output_enable_RW) and
rather then dp_bsn_monitor with sync = revt(reg_output_enable_RW).
. FPGA_tbuf_output_nof_packets_R[pn]
Number of dump packets that have been output while FPGA_tbuf_output_enable_RW = True,
reset to 0 when FPGA_tbuf_output_clear_counts_RW = True event
* Memory DDR4:
With streaming use of io_ddr then the dvr_wr_flush_en = '0' (so ctlr_wr_flush_en = 0 in MP), because
......@@ -416,9 +419,12 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
True = pn is recording, all ai or half of ai (dependent on reg_record_all_RW)
False = pn is frozen
. c_tbuf_nof_samples_per_page = c_tbuf_nof_samples_per_packet = 2000
. reg_nof_ddr_words_per_page_R = 657 or 329, depends on reg_record_enable_RW
SDPTR: ddr_nof_pages = floor(ddr_gigabytes * 1024**3 / (reg_nof_ddr_words_per_page_R * ctrl_nof_bytes_per_ddr_word)
Constants, signals:
. c_tbuf_nof_samples_per_page = c_tbuf_nof_samples_per_packet = 2000
. nof_ddr_words_per_page = 657 or 329, depends on reg_record_enable_RW
SDPTR: ddr_nof_pages = floor(ddr_gigabytes * 1024**3 / (nof_ddr_words_per_page * ctrl_nof_bytes_per_ddr_word)
. Moet SDPTR dit weten, heeft SDPTR dit nodig? --> Nee want SPDTR hoeft alleen pages/blocks/packets
te kennen, omdat SDPFW conversie van page/address doet.
. reg_recorded_first_page_R
freezes when recording stops by reg_record_enable_RW = False,
......@@ -478,14 +484,14 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
amount of packets that have been read correctly and were passed on to ring
= reg_memory_read_nof_packets_R - reg_memory_read_nof_errors_R
FPGA_tbuf_memory_read_nof_packets_R[pn][ai] = reg_memory_read_nof_packets_R
FPGA_tbuf_memory_dropped_nof_packets_R[pn][ai] = reg_memory_read_nof_errors_R
FPGA_tbuf_memory_remaining_nof_packets_R[pn][ai] = reg_memory_remaining_nof_packets_R
FPGA_tbuf_memory_dumped_nof_packets_R[pn][ai] = reg_memory_dumped_nof_packets_R
FPGA_tbuf_memory_clear_counts[pn]
FPGA_tbuf_memory_clear_counts_RW[pn]
Use dp_strobe_total_count with MM clear register, rather than in_clr = revt(reg_dump_enable_RW)
to clear all reg_memory_* counters.
. FPGA_tbuf_memory_read_nof_packets_R[pn][ai] = reg_memory_read_nof_packets_R
. FPGA_tbuf_memory_dropped_nof_packets_R[pn][ai] = reg_memory_read_nof_errors_R
. FPGA_tbuf_memory_remaining_nof_packets_R[pn][ai] = reg_memory_remaining_nof_packets_R
. FPGA_tbuf_memory_dumped_nof_packets_R[pn][ai] = reg_memory_dumped_nof_packets_R
. reg_dump_enable_RW[ai]
True = start / keep dumping packets for the requested ai,
......@@ -514,6 +520,9 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
* Enable output:
. write FPGA_tbuf_output_enable_RW = True for pn that has the 10GbE interface to CEP
* Prepare dumping:
. write FPGA_tbuf_dump_inter_packet_time_RW
* Prepare recording:
. write FPGA_tbuf_reg_record_all_RW
......@@ -538,7 +547,7 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
* Clear counts:
. write FPGA_tbuf_output_clear_counts_RW = True to clear FPGA_tbuf_output_nof_packets_R
. write FPGA_tbuf_memory_clear_counts = True to clear FPGA_tbuf_memory_*_R counts
. write FPGA_tbuf_memory_clear_counts_RW = True to clear FPGA_tbuf_memory_*_R counts
* Prepare dump:
. write FPGA_tbuf_dump_start_timestamp_RW to request start time of dump interval
......@@ -564,7 +573,7 @@ The CP FPGA_beamlet_output_nof_beamlets_RW is not supported in SDPTR and SDPFW y
. write FPGA_tbuf_dump_enable_RW = False to force stop dumping from pn
* Monitor dump results:
. read packet counts:
. read packet counts (or use for ai loop instead of sum):
N_remaining = sum(FPGA_tbuf_memory_remaining_nof_packets_R[pn][ai])
N_read = sum(FPGA_tbuf_memory_read_nof_packets_R[pn][ai])
N_dropped = sum(FPGA_tbuf_memory_dropped_nof_packets_R[pn][ai])
......
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