From f5711477188c12f48bcd6a6207ed2c56772e934a Mon Sep 17 00:00:00 2001 From: Eric Kooistra <kooistra@astron.nl> Date: Mon, 20 Sep 2021 17:32:22 +0200 Subject: [PATCH] Added missing mon_input_bsn_at_sync field and corrected address_offsets. --- libraries/base/dp/dp.peripheral.yaml | 30 ++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/libraries/base/dp/dp.peripheral.yaml b/libraries/base/dp/dp.peripheral.yaml index ba8ee5a641..d8d9608200 100644 --- a/libraries/base/dp/dp.peripheral.yaml +++ b/libraries/base/dp/dp.peripheral.yaml @@ -216,26 +216,37 @@ peripherals: mm_port_description: "" fields: - - field_name: ctrl_enable - field_description: "Enable the output when 1, disable the output when 0. To first disable output to re-enable output." - address_offset: 0 * MM_BUS_SIZE # = 0x0 + field_description: + "Enable the output when 1, disable the output when 0. First disable output to re-enable output." + address_offset: 0 * MM_BUS_SIZE mm_width: 1 access_mode: RW - - field_name: ctrl_interval_size - field_description: "Number of samples in output sync interval" - address_offset: 1 * MM_BUS_SIZE # = 0x4 + field_description: + "Number of samples in output sync interval. For example, for sample rate 200 MHz + this implies a maximum sync interval period of 2**31 * 5 ns = 10.7 s (because + VHDL NATURAL range is 0 - 2**31-1)" + address_offset: 1 * MM_BUS_SIZE + mm_width: 31 access_mode: RW - - field_name: ctrl_start_bsn field_description: "Schedule start BSN for the output. The start BSN needs to be in the future, if the start BSN is in the past or if the input stream is not active, then ctrl_enable = '1' will have no effect." - address_offset: 2 * MM_BUS_SIZE # = 0x8 + address_offset: 2 * MM_BUS_SIZE user_width: 64 radix: uint64 access_mode: RW - - field_name: mon_current_input_bsn field_description: "Current input BSN. This can be read to determine a start BSN in the future." - address_offset: 4 * MM_BUS_SIZE # = 0x10 + address_offset: 4 * MM_BUS_SIZE + user_width: 64 + radix: uint64 + access_mode: RO + - - field_name: mon_input_bsn_at_sync + field_description: "Input BSN at input sync. This can be read to compare with mon_output_sync_bsn." + address_offset: 6 * MM_BUS_SIZE user_width: 64 radix: uint64 access_mode: RO @@ -244,21 +255,20 @@ peripherals: "Is 1 when output is enabled, 0 when output is disabled. The output stream gets enabled when ctrl_enable is set '1' and when the BSN of the input stream has reached the ctrl_start_bsn." - address_offset: 6 * MM_BUS_SIZE # = 0x18 + address_offset: 8 * MM_BUS_SIZE mm_width: 1 access_mode: RO - - field_name: mon_output_sync_bsn field_description: "Output BSN at sync. This yields the number of blocks per output sync interval." - address_offset: 7 * MM_BUS_SIZE # = 0x1C + address_offset: 9 * MM_BUS_SIZE user_width: 64 radix: uint64 access_mode: RO - - field_name: block_size field_description: "Number of samples per BSN block, same for input stream and output stream." - address_offset: 9 * MM_BUS_SIZE # = 0x24 + address_offset: 11 * MM_BUS_SIZE access_mode: RO - - peripheral_name: dp_bsn_monitor # pi_dp_bsn_monitor.py peripheral_description: "Monitor the Block Sequence Number (BSN) status of streaming data." parameters: -- GitLab