摘要:2常見的DSP功能實現下面通過分析有限沖擊響應(FIR)濾波器的兩個實現示例來說明這些特性是如何影響器件的利用率。一個是基于乘法累加器(MAC)的實現,另一個是基于多通道分布式算法(DA)的實現。FIR濾波器通常應用于基站、數字視頻、無線局域網、xDSL以及有線調制解調器。測試基準是在Spartan-3XC3S400FPGA中實現頻率為130MH
2 常見的DSP功能實現
下面通過分析有限沖擊響應(FIR)濾波器的兩個實現示例來說明這些特性是如何影響器件的利用率。一個是基于乘法累加器(MAC)的實現,另一個是基于多通道分布式算法(DA)的實現。
FIR濾波器通常應用于基站、數字視頻、無線局域網、xDSL以及有線調制解調器。測試基準是在Spartan-3 XC3S400 FPGA中實現頻率為130MHz、數據和系數均為16位的64抽頭MAC FIR濾波器。第一個實現僅用了一個MAC,第二個實現則用了四個MAC。
從采用單個MAC的實現到采用四個MAC的實現可顯著增加FIR濾波器的性能,而LUT數量只增加一倍并仍僅占總可用邏輯資源的4%。四個MAC的實現使用了四塊RAM和四個MAC,以最少的器件邏輯資源高效地實現了FIR濾波器。
另一個有趣的實現是多通道FIR功能的實現,在這里可以看到從單通道FIR濾波器到8通道FIR濾波器,器件利用率是如何變化的。
實現單通道分布式算法FIR濾波器使用了XC3S1000 Spartan-3器件29%的邏輯資源和39%的寄存器資源。當實現同樣的8通道濾波器時,通常將不同通道進行時分復用來保存邏輯,但這將占用很多寄存器或者大量的片內存儲器來存放中間結果。
如果使用Spartan-3 FPGA,中間結果將被存放在由LUT配置成的16位移位寄存器(SRL-16)中。這樣,實現同樣的8通道濾波器只多使用10%的可用邏輯資源和7%的可用寄存器資源,也就是說,構建8個通道僅多占用25%的器件資源。
這種顯著的資源節約與Spartan-3器件中SRL-16的使用有直接關系,在8通道實現中還有另外1,343個LUT被用作SRL-16模式。
如果在不支持SRL-16性能的FPGA中實現這種設計,將需要額外的10,744(1343×8)個觸發器用作存儲單元,這就必須選用大規模器件以提供數量龐大的寄存器,同時將也會消耗相關的組合邏輯資源。
[1] [2]
通信工程師備考資料免費領取
去領取
專注在線職業教育25年