FIR II IP Core: User Guide

ID 683208
Date 8/14/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

4.8.3. FIR II IP Core Signals

Table 18.  FIR II IP Core Signals with Avalon-ST Interface
Signal Direction Width Description
clk Input 1 Clock signal for all internal FIR II IP core filter registers.
reset_n Input 1 Asynchronous active low reset signal. Resets the FIR II IP core filter control circuit on the rising edge of clk.
coeff_in_clk Input 1 Clock signal for the coefficient reloading mechanism. This clock can have a lower rate than the system clock.
coeff_in_areset Input 1 Asynchronous active high reset signal for the coefficient reloading mechanism.
ast_sink_ready Output 1 FIR filter asserts this signal when can accept data in the current clock cycle. This signal is not available when backpressure is turned off.
ast_sink_valid Input 1 Assert this signal when the input data is valid. When ast_sink_valid is not asserted, the FIR processing stops until you re-assert the ast_sink_valid signal.
ast_sink_data Input (Data width + Bank width) × the number of channel input wires (PhysChanIn)

where,

Bank width= Log2(Number of coefficient sets)

Sample input data. For a multichannel operation (number of channel input wires > 1), the LSBs of ast_sink_data map to xln_0 of the FIR II IP core filter.

For example:

ast_sink_data[7:0] --> xln_0[7:0]

ast_sink_data[15:8] --> xln_1[7:0]

ast_sink_data[23:16] --> xln_2[7:0]

For multiple coefficient banks, the MSBs of the channel data are mapped to the bank input signal and the LSBs of the channel data map to the data input signal. For reconfigurable FIR filters, the MSBs map to the mode signal.

For example,

Single channel with 4 coefficient banks:

ast_sink_data[9:8] --> BankIn_0

ast_sink_data[7:0] --> xln_0

Multi-channel (4 channels) with 4 coefficient banks:

ast_sink_data[9:8] --> BankIn_0

ast_sink_data[7:0] --> xln_0

ast_sink_data[19:18] --> BankIn_1

ast_sink_data[17:10] --> xln_1

ast_sink_data[29:28] --> BankIn_2

ast_sink_data[27:20] --> xln_2

ast_sink_data[39:38] --> BankIn_3

ast_sink_data[37:30] --> xln_3

ast_sink_sop Input 1 Marks the start of the incoming sample group. The start of packet (SOP) is interpreted as a sample from channel 0.
ast_sink_eop Input 1 Marks the end of the incoming sample group. If data is associated with N channels, the end of packet (EOP) must be driven high when the sample belonging to the last channel (that is, channel N-1), is presented at the data input.
ast_sink_error Input 2 Error signal indicating Avalon-ST protocol violations on the sink side:
  • 00: No error
  • 01: Missing SOP
  • 10: Missing EOP
  • 11: Unexpected EOP

    Other types of errors are also marked as 11.

ast_source_ready Input 1 The downstream module asserts this signal if it is able to accept data. This signal is not available when backpressure is turned off.
ast_source_valid Output 1 The IP core asserts this signal when there is valid data to output.
ast_source_channel Output Log2(number of channels per wire) Indicates the index of the channel whose result is presented at the data output.
ast_source_data Output Data width × number of channel output wires (PhysChanOut) FIR II IP core filter output. For a multichannel operation (number of channel output wires > 1), the least significant bits of ast_source_data are mapped to xOut_0 of the FIR II IP core filter.

For example:

xOut_0[7:0] --> ast_source_data[7:0]

xOut_1[7:0] --> ast_source_data[15:8]

xOut_2[7:0]--> ast_source_data[23:16]

ast_source_sop Output 1 Marks the start of the outgoing FIR II IP core filter result group. If '1', a result corresponding to channel 0 is output.
ast_source_eop Output 1 Marks the end of the outgoing FIR II IP core filter result group. If '1', a result corresponding to channels per wire N-1 is output, where N is the number of channels per wire.
ast_source_error Output 2 Error signal indicating Avalon-ST protocol violations on the source side:
  • 00: No error
  • 01: Missing SOP
  • 10: Missing EOP
  • 11: Unexpected EOP

    Other types of errors are also marked as 11.

coeff_in_address Input Number of coefficients Address input to write new coefficient data.
coeff_in_clk Input - Clock input for coefficients.
coeff_in_areset Input - Reset input for coefficients.
coeff_in_we Input 1 Write enable for memory-mapped coefficients.
coeff_in_data Input Coefficient width Data coefficient input.
coeff_in_read Input Coefficient width Read enable.
coeff_out_valid Output 1 Coefficient read valid signal.
coeff_out_waitrequest Output 1

Avalon memory-mapped waitrequest signal for coefficient read.

Only available when Coefficient Reload is on and the Read/Write Mode is Read or Read/Write.

coeff_out_data Output Coefficient width Data coefficient output. The coefficient in memory at the address specified by coeff_in_address.