VHDL implementation of a polyphase filter bank with polyphase filter and 5ndft
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
Lilian RM 41e0b34d60 Mise à jour de 'README.md' 3 år sedan
5ndft Transférer les fichiers vers '5ndft' 3 år sedan
matlab Transférer les fichiers vers 'matlab' 3 år sedan
polyphase_filter Transférer les fichiers vers 'polyphase_filter' 3 år sedan
tb_txt_files Transférer les fichiers vers 'tb_txt_files' 3 år sedan
utils Transférer les fichiers vers 'utils' 3 år sedan
LICENSE Initial commit 3 år sedan
PFB_blk.vhd Transférer les fichiers vers '' 3 år sedan
PFB_pkg.vhd Transférer les fichiers vers '' 3 år sedan
PFB_tb.vhd Transférer les fichiers vers '' 3 år sedan
README.md Mise à jour de 'README.md' 3 år sedan

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