VHDL implementation of a polyphase filter bank with polyphase filter and 5ndft
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
Lilian RM 41e0b34d60 Mise à jour de 'README.md' hace 3 años
5ndft Transférer les fichiers vers '5ndft' hace 3 años
matlab Transférer les fichiers vers 'matlab' hace 3 años
polyphase_filter Transférer les fichiers vers 'polyphase_filter' hace 3 años
tb_txt_files Transférer les fichiers vers 'tb_txt_files' hace 3 años
utils Transférer les fichiers vers 'utils' hace 3 años
LICENSE Initial commit hace 3 años
PFB_blk.vhd Transférer les fichiers vers '' hace 3 años
PFB_pkg.vhd Transférer les fichiers vers '' hace 3 años
PFB_tb.vhd Transférer les fichiers vers '' hace 3 años
README.md Mise à jour de 'README.md' hace 3 años

README.md

pfb_5n_vhdl - a simple 5x2n Polyphase Filter Bank VHDL implementation

VHDL implementation of a polyphase filter bank with polyphase filter and 5ndft. A few improvements (regarding synthesis) has been made on both components compare to the separate ones on their respectively repos (on this instance), but the general principle is the same.

This implementation uses parallel timing computation: a definite number of different data edges are computed on the same clock edge, through parallel polyphase filters and dfts replications. The main omponent discriminating which input data is given to which parallel pfb is the shiftreg component.

Usage - Workflow

  1. Download the repo on your computer
  2. Use (or replicate principle of) the main matlab file, which creates a signal and operate filtering and DFT on it. Both input and output are stored in txt files, while the used coefficients (the matlab generated ones) are stored on 2 different vhdl files, through specific functions.
  3. Because Matlab manipulates table instead of timed data edges, maybe some inputs and outputs columns will make your vhdl simulations and comparisons between Matlab and VHDL entities be wrong (delay or spacial shift); just delete these columns on Matlab (examples on the Matlab file is shown round line 149 (s_pol transformed).
  4. Simulate your entities and validate