<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 用FPGA實(shí)現音頻采樣率的轉換

用FPGA實(shí)現音頻采樣率的轉換

作者: 時(shí)間:2010-02-26 來(lái)源:網(wǎng)絡(luò ) 收藏

因為Synplify DSP中的折疊功能還支持多速率系統,所以與只有一種采樣頻率的系統相比,您可以進(jìn)一步減少所需乘法器的數量。過(guò)采樣使用兩個(gè)FIR濾波器完成。這兩個(gè)濾波器以不同的采樣頻率運行。以較高采樣頻率運行的濾波器可以用您指定的折疊系數進(jìn)行折疊。

以較低采樣頻率運行的濾波器用相對較高的系數折疊。獲得此系數的方法是用兩個(gè)濾波器的采樣頻率之差乘以折疊系數。例如,如果一個(gè)濾波器的采樣頻率是另一濾波器的8倍,則較快的濾波器用系數 8折疊,而較慢的濾波器用系數6?折疊。

這樣甚至可能生成以通常不能折疊的很高運行的空間優(yōu)化電路。例如,如果系統以 200MHz運行并使用折疊系數2,那么系統頻率就可以提高到400MHz。

您還可以將折疊系數定義為1。以最高運行的電路元件不折疊。但是,以較低采樣頻率運行的多速率系統的所有電路元件都可從折疊和空間優(yōu)化實(shí)現中受益。您只需將系統作為整體為其定義折疊系數即可。然后,折疊會(huì )自動(dòng)傳播到所有采樣頻率。

可以把折疊功能與另一優(yōu)化功能-重定時(shí)功能結合起來(lái)使用。如果系統不滿(mǎn)足目標頻率要求,可以增加流水線(xiàn)級數,直到獲得所需速率。這種做法對于使用高折疊系數的電路尤為重要,因為這類(lèi)電路需要以相對較高的系統速度工作。

您還可以為折疊很少或沒(méi)有折疊的電路使用重定時(shí),除非已經(jīng)達到的性能極限??梢酝ㄟ^(guò)增加流水線(xiàn)級數來(lái)減少兩個(gè)寄存器之間組合邏輯門(mén)的數量(邏輯級數),這樣可以提高系統時(shí)鐘速度。

在生成RTL代碼時(shí),Synplify DSP工具將進(jìn)行時(shí)序分析,它會(huì )考慮所需的采樣頻率、折疊系數和的目標架構。例如,與在較慢的低成本Spartan-3A DSP 中實(shí)現的完全相同的電路相比,可以使用較少的流水線(xiàn)級數優(yōu)化映射到快速Virtex-5 FPGA的電路。

可以用 FPGA提供的大量寄存器進(jìn)行這種優(yōu)化。寄存器可以大量使用,不像乘法器或LUT(查找表)那樣很快會(huì )用光,這意味著(zhù)可以使用寄存器輕而易舉的顯著(zhù)提高系統時(shí)鐘速度。

當然,增加流水線(xiàn)級數會(huì )增加系統延遲。例如,如果使用重定時(shí)系數8,計算結果就會(huì )遲8個(gè)系統時(shí)鐘周期(不是采樣頻率周期)出現在FPGA的輸出上。向系統中嵌入電路時(shí)必須考慮到這一點(diǎn)(圖6)。

6.jpg
圖6:可以使用重定時(shí)功能為電路定義允許的最大延遲。然后由Synplify DSP自動(dòng)增加流水線(xiàn)級數,直到獲得所需頻率。

特別重要的是,務(wù)必確保上述優(yōu)化不會(huì )影響Simulink中描述的原始MATLAB模型。通過(guò)驗證可以對算法進(jìn)行鑒定,并且對量化效應的影響予以表述。Synplify DSP軟件模塊集允許使用截斷(去除無(wú)關(guān)位)、四舍五入(在下溢情況下)或飽和(在上溢情況下)進(jìn)行從浮點(diǎn)到定點(diǎn)的。一旦仿真顯示算法工作正常,即可生成RTL代碼。優(yōu)化VHDL或Verilog代碼可能改變延遲,但不會(huì )改變電路的操作。

本文小結

Synplify DSP工具基于MathWorks公司推出的行業(yè)標準MATLAB/Simulink軟件。模塊集提供的標準元件庫可用于實(shí)現復雜算法。除了加法、增益和延遲等基本元件,該庫還包含FIR或IIR濾波器等許多復雜功能和CORDIC算法。所有功能(包括高度復雜的FFT或Viterbi解碼器)均可任意參數化。還可以創(chuàng )建用戶(hù)定義庫,或者將現有的VHDL或Verilog代碼集成到Simulink模型中。

用Synplify DSP可以實(shí)現單速率和多速率系統。使用折疊、多通道化或重定時(shí)功能可以針對尺寸或速度優(yōu)化代碼。生成的RTL代碼都是未加密的通用代碼,可以使用常用工具進(jìn)行綜合。

為了用FPGA取得最佳結果,Synplicity推薦使用Synplify Pro綜合工具。目前針對ASIC的開(kāi)發(fā)環(huán)境也已經(jīng)推出。


上一頁(yè) 1 2 3 4 下一頁(yè)

關(guān)鍵詞: FPGA 音頻 采樣率 轉換

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>