Abstract:
An analog-to-digital conversion system has an analog-to-digital converter (300) and a digital-filter system (100). The digital-filter system (100) is connected to the output of the analog-to-digital converter (300). A processor (310) is connected to the output of the digital-filter system (100) so that the processor (310) transparently receives filtered sample data in the native format of the analog-to-digital converter (300). An FIR filter circuit (130) in the digital-filter system (100) is connected to receive data from, and output filtered data to, a sample capture and data-type conversion circuit (120) connected between the analog-to-digital converter (300) and the processor (310). A configuration and control-register circuit (110) is connected to the circuit for sample collection and data-type conversion (120), and to the FIR filter circuit (130), for selectively controlling the operation of the digital filter system (100) according to parameters for data conversion and filter operation passed to the configuration and control-register circuit (110) over a serial interface.
Abstract:
A serial interface controller (200) provides for transferring data between a data source having a least one channel (110) and a processor. The serial interface controller (200) has a plurality of control registers (220); the control registers (220) in turn include a data structure for configuring the serial interface controller (200) for a data transfer. That data structure further comprises a field for selectively setting the serial interface controller (200) in its run mode or its configuration mode; a field for storing the I/O mode of the serial interface controller (200); a field for storing the address of the active data channel; and, a field for storing the system clock rate. In the preferred embodiment, the control registers (220) include fields for device identification, a flag for the run or configure mode, a I/O-mode control, a value for the channels active (in multi-channel implementations), the data source clock rate, the ADC clock rate, channel-status flags, the CIC decimation rate, the number of taps for FIR filters, and the filter coefficients corresponding to the number of FIR taps in a particular data source.
Abstract:
An integrated circuit for implementing a digital filter has a data memory (100); the data memory (100) having two ports (210, 220) to permit the access of two data samples at the same time, and a coefficient memory (105) for storing filter coefficients. A first adder (110) adds data samples from first and second data memory ports (210, 220); a multiplier (115) multiplies a value from the first adder (110) by a value from the coefficient memory (105); and, a second adder accumulates values from the multiplier (115). A master controller (190) is provided configured for selectively storing the accumulated values in the data memory (100) for further processing or outputting the accumulated values. An address and control block (125) communicating with the data memory (100) and the coefficient memory (105) holds values appropriate to the filter to be executed. The address and control block (125) has two sets of a first set of registers for holding values for a first pre-determined digital filter and a second pre-determined digital filter in cascade. The method maintains a current write address for data in the address and control block (125) as a circular list, where the circular list has a size equal to a predetermined number of filter taps;. The method maintains a first read address for data from the first port as a first-in-first-out queue, a second read address for data from the second port as a last-in-first-out stack, and a coefficient read address as a circular list.
Abstract:
An analog-to-digital conversion system has an analog-to-digital converter (300) and a digital-filter system (100). The digital-filter system (100) is connected to the output of the analog-to-digital converter (300). A processor (310) is connected to the output of the digital-filter system (100) so that the processor (310) transparently receives filtered sample data in the native format of the analog-to-digital converter (300). An FIR filter circuit (130) in the digital-filter system (100) is connected to receive data from, and output filtered data to, a sample capture and data-type conversion circuit (120) connected between the analog-to-digital converter (300) and the processor (310). A configuration and control-register circuit (110) is connected to the circuit for sample collection and data-type conversion (120), and to the FIR filter circuit (130), for selectively controlling the operation of the digital filter system (100) according to parameters for data conversion and filter operation passed to the configuration and control-register circuit (110) over a serial interface.
Abstract:
A serial interface controller (200) provides for transferring data between a data source having a least one channel (110) and a processor. The serial interface controller (200) has a plurality of control registers (220); the control registers (220) in turn include a data structure for configuring the serial interface controller (200) for a data transfer. That data structure further comprises a field for selectively setting the serial interface controller (200) in its run mode or its configuration mode; a field for storing the I/O mode of the serial interface controller (200); a field for storing the address of the active data channel; and, a field for storing the system clock rate. In the preferred embodiment, the control registers (220) include fields for device identification, a flag for the run or configure mode, a I/O-mode control, a value for the channels active (in multi-channel implementations), the data source clock rate, the ADC clock rate, channel-status flags, the CIC decimation rate, the number of taps for FIR filters, and the filter coefficients corresponding to the number of FIR taps in a particular data source.
Abstract:
An integrated circuit for implementing a digital filter has a data memory (100); the data memory (100) having two ports (210, 220) to permit the access of two data samples at the same time, and a coefficient memory (105) for storing filter coefficients. A first adder (110) adds data samples from first and second data memory ports (210, 220); a multiplier (115) multiplies a value from the first adder (110) by a value from the coefficient memory (105); and, a second adder accumulates values from the multiplier (115). A master controller (190) is provided configured for selectively storing the accumulated values in the data memory (100) for further processing or outputting the accumulated values. An address and control block (125) communicating with the data memory (100) and the coefficient memory (105) holds values appropriate to the filter to be executed. The address and control block (125) has two sets of a first set of registers for holding values for a first pre-determined digital filter and a second pre-determined digital filter in cascade. The method maintains a current write address for data in the address and control block (125) as a circular list, where the circular list has a size equal to a predetermined number of filter taps;. The method maintains a first read address for data from the first port as a first-in-first-out queue, a second read address for data from the second port as a last-in-first-out stack, and a coefficient read address as a circular list.