1// 2// Copyright 2020 Ettus Research, a National Instruments Brand 3// 4// SPDX-License-Identifier: LGPL-3.0-or-later 5// 6// Module: rfnoc_block_vector_iir_regs (Header) 7// 8// Description: 9// 10// This is a header file that contains the register descriptions for the 11// RFNoC Vector IIR block. 12// 13// Each RFNoC Vector IIR block consists of NUM_PORTS independent Vector IIR 14// filters. Each one has its own address space that is VECTOR_IIR_ADDR_W bits 15// wide. That is, Vector IIR block N can be addressed starting at byte offset 16// N*(2**VECTOR_IIR_ADDR_W). 17// 18 19//----------------------------------------------------------------------------- 20// Register Space 21//----------------------------------------------------------------------------- 22 23// The amount of address space taken up by each Vector IIR filter. That is, the 24// address space for port N starts at N*(2^VECTOR_IIR_ADDR_W). 25localparam VECTOR_IIR_ADDR_W = 20'h00004; 26 27 28//----------------------------------------------------------------------------- 29// Vector IIR Register Descriptions 30//----------------------------------------------------------------------------- 31 32// REG_DELAY (R/W) 33// 34// This register controls and reports the state of the filter delay. 35// 36// [31:16] REG_MAX_DELAY : This field reports the maximum supported vector 37// length, in samples. That is, it returns the 38// MAX_DELAY block parameter. 39// [15: 0] REG_DELAY : This field controls/reports the current vector delay 40// length in samples. Values of 5 or more are supported. 41// 42localparam REG_DELAY = 'h00; 43// 44localparam REG_MAX_DELAY_LEN = 16; 45localparam REG_MAX_DELAY_POS = 16; 46// 47localparam REG_DELAY_LEN = 16; 48localparam REG_DELAY_POS = 0; 49 50// REG_ALPHA (R/W) 51// 52// This register controls the Alpha value for the filter. This is a signed 53// 16-bit value. 54// 55// [31:0] : Unused 56// [15:0] : Alpha value to use 57// 58localparam REG_ALPHA = 'h04; 59// 60localparam REG_ALPHA_LEN = 16; 61localparam REG_ALPHA_POS = 0; 62 63// REG_BETA (R/W) 64// 65// This register controls the Beta value for the filter. This is a signed 66// 16-bit value. 67// 68// [31:0] : Unused 69// [15:0] : Beta value to use 70// 71localparam REG_BETA = 'h08; 72// 73localparam REG_BETA_LEN = 16; 74localparam REG_BETA_POS = 0; 75