FPGA在∑-Δ D/A轉(zhuǎn)換器中的應(yīng)用
出處:pheavecn 發(fā)布于:2011-08-26 16:51:38
用數(shù)字信號完成對數(shù)字量進(jìn)行算術(shù)運算和邏輯運算的電路稱為數(shù)字電路,或數(shù)字系統(tǒng)。由于它具有邏輯運算和邏輯處理功能,所以又稱數(shù)字邏輯電路?,F(xiàn)代的數(shù)字電路由半導(dǎo)體工藝制成的若干數(shù)字集成器件構(gòu)造而成。邏輯門是數(shù)字邏輯電路的基本單元。存儲器是用來存儲二值數(shù)據(jù)的數(shù)字電路。從整體上看,數(shù)字電路可以分為組合邏輯電路和時序邏輯電路兩大類。集成度高,體積小,功耗低是數(shù)字電路突出的優(yōu)點之一。電路的設(shè)計、維修、維護(hù)靈活方便,隨著集成電路技術(shù)的高速發(fā)展,數(shù)字邏輯電路的集成度越來越高,集成電路塊的功能隨著小規(guī)模集成電路(SSI)、中規(guī)模集成電路(MSI)、大規(guī)模集成電路(LSI)、超大規(guī)模集成電路(VLSI)的發(fā)展也從元件級、器件級、部件級、板卡級上升到系統(tǒng)級。電路的設(shè)計組成只需采用一些標(biāo)準(zhǔn)的集成電路塊單元連接而成。對于非標(biāo)準(zhǔn)的特殊電路還可以使用可編程序邏輯陣列電路,通過編程的方法實現(xiàn)任意的邏輯功能。
1 變∑-Δ換的原理
∑-Δ變換采用過取樣技術(shù),將信號按時間分割,保持幅度恒定,具有高取樣率、噪聲整形和比特字長短的特點。變換可以在低取樣率、高分辨率的量化器或者高取樣率、低分辨率的量化器中進(jìn)行,在數(shù)字音頻中很有用,如用于音頻信號數(shù)字化的∑-Δ ADC及可將已經(jīng)數(shù)字化處理后的音頻信號還原為模擬聲音信號的比特數(shù)時所帶來的量化非線性誤差、糾錯困難的缺點。
∑-Δ變換是將信號按時間分割,保持信號幅度恒定。它用高電平或低電平的脈沖表示信號,例如可以采用脈沖密度調(diào)制(PDM),如圖1所示恒定幅度的脈沖信號,不論電平高或低都能夠重建輸出信號波形。 打個比方來說明如何用1比特替代16或更多比特:傳統(tǒng)的階梯變換器像16個電燈泡,連接到各自的開關(guān)上,每個都有不同的亮度,用各種組合方式可以得到216(即65536)種不同的亮度。然而,燈泡間的亮度差會引入誤差,某種組合也并不總是能夠產(chǎn)生所要求的亮度。1比特變換技術(shù)采用完全不同的方法,不用那么多燈泡和開關(guān),只用一個燈泡和一個開關(guān)。房間亮度的變化可以通過簡單的改變開、關(guān)燈泡的次數(shù)來得到。如果燈泡開的次數(shù)增加,房間的亮度就會增加。

圖1 脈沖密度調(diào)制
2 ∑-Δ DAC的結(jié)構(gòu)
DAC格式是英文Digital Audio Compress的簡稱,是北京豪杰縱橫網(wǎng)絡(luò)技術(shù)有限公司(以超級解霸的成功開發(fā)而聞名),憑借自己多年積累的音頻編碼技術(shù),獨創(chuàng)自然聲學(xué)模型,開發(fā)出的級音頻壓縮格式,超高音質(zhì),并且具有很好的定位能力。DAC格式具有以下優(yōu)勢:低碼率時DAC壓縮的大小與MP3差不多,但聲音不發(fā)沙,定位感依然存在,與原始無損壓縮相比只是會發(fā)現(xiàn)截止頻率以上的聲音有些小差別;中等碼率時DAC音質(zhì)與AC-3差不多,截止頻率越過了人耳的范圍,從儀器中可以測出;高碼率時DAC音質(zhì)與CD的差別是人耳幾乎分辨不出來,只能從儀器中的波形進(jìn)行比較才能分出差別;DAC的效率不會發(fā)沙,因為它不刪去頻率,它不認(rèn)為人耳聽不到;也不會發(fā)悶,因為它不針對低質(zhì)量的音頻進(jìn)行處理。
傳統(tǒng)的應(yīng)用電流模技術(shù)的DAC當(dāng)位數(shù)達(dá)到10位以上時,要在某一溫度范圍保持非常困難。本文的∑-Δ DAC運用了數(shù)字技術(shù),因此與電流模DAC相比,不受溫度變化的影響,且能在可編程邏輯器件如FPGA中實現(xiàn)?!?Δ DAC實際上是高速1位DAC,應(yīng)用數(shù)字反饋技術(shù)從輸入二進(jìn)制數(shù)字量產(chǎn)生等幅的脈沖串,脈沖串的平均占空比與輸入二進(jìn)制數(shù)字量成正比,脈沖串再通過一RC模擬低通濾波器就能重建模擬波形?!?Δ DAC非常適合于低頻、高的應(yīng)用,尤其在數(shù)字音頻領(lǐng)域應(yīng)用廣泛。
作為例子,本文中所描述的∑-Δ DAC的二進(jìn)制8位輸入數(shù)字量是無符號數(shù),模擬輸出電壓值都是正值。輸入"00000000"產(chǎn)生輸出電壓0V,"11111111"產(chǎn)生輸出電壓的值Vmax,Vmax非常接近VCCO,其中VCCO是FPGA芯片I/O端口的供電電壓。
圖2 ∑-Δ DAC的內(nèi)部結(jié)構(gòu)圖
術(shù)語"∑-Δ"分別代表算術(shù)和與差,都可用二進(jìn)制加法器來產(chǎn)生。雖然Δ加法器的輸入是無符號數(shù),但Δ和∑兩加法器的輸出被看作有符號數(shù)。Δ加法器用來計算DAC輸入與當(dāng)前DAC輸出之間的差值。由于DAC的輸出只有一位,非0即1,即全0或全1.如圖2 ∑-Δ DAC的結(jié)構(gòu)圖所示,Δ加法器的另一個輸入值由∑鎖存器位L[9]的兩個拷貝后面跟8個0產(chǎn)生,這也彌補(bǔ)了DAC輸入值是無符號數(shù)的問題?!萍臃ㄆ鲗⑺纳陷敵觯ㄒ呀?jīng)保存在∑鎖存器)與Δ加法器的當(dāng)前輸出求和。
3 ∑-Δ DAC的FPGA實現(xiàn)
FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。FPGA一般來說比ASIC(專用集成芯片)的速度要慢,無法完成復(fù)雜的設(shè)計,而且消耗更多的電能。但是他們也有很多的優(yōu)點比如可以快速成品,可以被修改來改正程序中的錯誤和更便宜的造價。廠商也可能會提供便宜的但是編輯能力差的FPGA.因為這些芯片有比較差的可編輯能力,所以這些設(shè)計的開發(fā)是在普通的FPGA上完成的,然后將設(shè)計轉(zhuǎn)移到一個類似于ASIC的芯片上。另外一種方法是用CPLD(復(fù)雜可編程邏輯器件備)。
如圖2所示,∑-Δ DAC的內(nèi)部僅由2個10位的二進(jìn)制加法器,1個10位的鎖存器和一個D觸發(fā)器組成,用FPGA實現(xiàn)時只需耗費極少的邏輯資源,即使用的FPGA也能實現(xiàn),本文采用了Xilinx Virtex FPGA,圖3給出了FPGA實現(xiàn)的頂層原理圖。輸入信號有8位寬的二進(jìn)制數(shù)字量DACin[7:0]、時鐘信號CLK和復(fù)位信號Reset;輸出信號為等幅脈沖串DACout,通過一個驅(qū)動緩沖器OBUF_F_24(是Xilinx FPGA特有的SelectI/O資源,OBUF表示輸出緩沖器,F(xiàn)表示它的轉(zhuǎn)換速率快,24表示它的驅(qū)動能力即輸出驅(qū)動電流是24MA,基于LVTTL I/O標(biāo)準(zhǔn))驅(qū)動FPGA外部的模擬RC低通濾波器,該緩沖器的輸出端連接到FPGA的I/O端口,則它的驅(qū)動電壓即為FPGA的I/O端口的供電電壓VCCO.表1列出了∑-Δ DAC的接口信號。

圖3 FPGA實現(xiàn)∑-Δ DAC的頂層原理圖

表1 ∑-Δ DAC的接口信號
圖3虛線框內(nèi)的電路都在FPGA里面實現(xiàn),其中的DAC模塊的原理圖見圖2,在本文中是用可以綜合的VerilogHDL語句來描述的。VerilogHDL描述的可綜合性是指其可被綜合工具所識別,將其寄存器傳輸級(RTL)描述綜合成門級網(wǎng)表,終能通過FPGA的布局布線工具映射到FPGA當(dāng)中成為能完成指定功能的硬件電路。VerilogHDL語言初是面向建模和仿真的,只有10%可以被綜合稱為可綜合子集。對于不同的綜合工具,可綜合子集的內(nèi)容并不相同。IEEE的一個工作組目前正在撰寫一個名為IEEE Std 1364.1RTL的綜合子集的規(guī)范,定義了一個的可綜合的Verilog語言要素的子集,以便得到各綜合工具提供商的支持。
圖3中緩沖器的輸出端DACoutDrvr連接到FPGA的輸出引腳上,驅(qū)動外部的模擬RC低通濾波器。圖
中R=3.3kΩ,C=0.0047μF,VOUT即為終轉(zhuǎn)換所得的模擬信號。下面給出了DAC模塊的可綜合的VerilogHDL描述:
'timescale 100 ps / 10 ps
//This is a Delta-Sigma Digital to Analog Converter
module dac(DACout, DACin, Clk, Reset);
output DACout; // This is the average output that feeds low pass filter
reg DACout;
input [7:0] DACin; // DAC input
input Clk;
input Reset;
reg [9:0] DeltaAdder; // Output of Delta adder
reg [9:0] SigmaAdder; // Output of Sigma adder
reg [9:0] SigmaLatch; // Latches output of Sigma adder
reg [9:0] DeltaB; // B input of Delta adder
always @(SigmaLatch) DeltaB = {SigmaLatch[9],SigmaLatch[9]} 《 (8);
always @(DACin or DeltaB) DeltaAdder = DACin + DeltaB;
always @(DeltaAdder or SigmaLatch) SigmaAdder = DeltaAdder + SigmaLatch;
always @(posedge Clk or posedge Reset)
begin
if(Reset)
begin
SigmaLatch <= #1 1'bl 《 (8);
DACout <= #1 1'b0;
end
else
begin
SigmaLatch <= #1 SigmaAdder;
DACout <= #1 SigmaLatch[9];
end
end
endmodule該程序經(jīng)過Xilinx的FPGA集成開發(fā)工具ISE6.2編譯(含綜合過程)、仿真后,再選擇Virtex系列FPGA芯片進(jìn)行配置。設(shè)置CLK=100MHz(可達(dá)219MHz)。
4 結(jié)論
∑-Δ DAC是高速FPGA芯片用于數(shù)字模擬混合信號系統(tǒng)設(shè)計的嘗試,可應(yīng)用于可編程電壓源、波形發(fā)生器、聲音發(fā)生器、RGB顏色發(fā)生器和ADC的參考電壓發(fā)生器等,極大的減少了系統(tǒng)的元件數(shù)目,降低了系統(tǒng)的成本,有很好的實用價值。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識介紹2025/8/29 16:58:56
- SQL核心知識點總結(jié)2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復(fù)控制的復(fù)合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎(chǔ)知識2025/6/18 16:30:52









