在測控系統中用IP核實(shí)現D/A轉換
摘要:采用數字化技術(shù)、在測控系統中用IP核實(shí)現D/A轉換,并且在1片可編程邏輯器件中實(shí)現。它不受溫度的影響,既可保持高分辨率,又可降低對電路精度和穩定度的要求,并減少元件的數量。 關(guān)鍵詞:IP D/A VHDL 可編程邏輯器件 在各類(lèi)電子系統中,數字電路所占比重越來(lái)越大。這主要是因為數字電路相對于模擬電路有一些突出的優(yōu)點(diǎn),例如: *數字電路中的有源器件工作在飽和區與截止區,工作狀態(tài)穩定; *數字電路處理的是二值信號,易于存儲和再生; *數字電路是由大量相同的基本單元,如門(mén)、觸發(fā)器等所組成,易于大規模集成,易于自動(dòng)化設計工具的應用等。 由于數字電路的以上特點(diǎn),再加上數字計算機和數字信號處理技術(shù)的迅速發(fā)展,使得數字電路從集成規模、應用范圍及設計自動(dòng)化程度等方面大大超過(guò)了模擬電路,越來(lái)越多的由模擬電路實(shí)現的功能轉由數字電路實(shí)現,進(jìn)入了電子系統數字化的時(shí)代。 在測控系統采用數字化技術(shù),將原來(lái)由模擬電路實(shí)現的D/A由數字電路實(shí)現。 IP(知識產(chǎn)權)核將一些在數字電路中常用,但比較復雜的功能塊,如FIR濾波器、SDRAM控制器、PCI接口等設計成可修改參數的模塊。IP核的重用是設計人員贏(yíng)得迅速上市時(shí)間的主要策略。隨著(zhù)CPLD/FPGA的規模越來(lái)越大,設計越來(lái)越復雜(IC的復雜度以每年55%的速率遞增,而設計能力每年僅提高21%),設計者的主要任務(wù)是在規定的時(shí)間周期內完成復雜的設計。調用IP核能避免重復勞動(dòng),大大減輕工程師的負擔,因此使用IP核是一個(gè)發(fā)展趨勢。 IP核包括硬IP與軟IP??膳渲肐P是參數化后的可重定目標IP,其優(yōu)點(diǎn)是可以對功能加以裁剪,以符合特定的應用。這些參數包括總線(xiàn)寬度、存儲器容量、使能或禁止功能塊。 硬IP最大的優(yōu)點(diǎn)是確保性能,如速度、功耗等。然而,硬IP難以轉移到新工藝或集成到新結構中,是不可重配置的。 軟IP是以綜合形式交付的,因而必須在目標工藝中實(shí)現,并由系統設計者驗證。其優(yōu)點(diǎn)是源代碼靈活,可重定目標于多種制作工藝,在新功能級中重新配置。 不過(guò)目前大多數庫是收費的,但也可以從網(wǎng)上下載一些免費的IP核。 2 用IP核實(shí)現的D/A轉換器的功能及特點(diǎn) 數字到模擬轉換器(DACs)將一個(gè)二進(jìn)制數轉換為與之對應的電壓值,目前常用的D/A轉換器都是由電阻或電容加權網(wǎng)絡(luò )、受碼元控制的開(kāi)關(guān)和基準電壓或電流源組成。當D/A轉換器需要轉換的信號每次取樣字長(cháng)很長(cháng)時(shí),對這些電路的精度要求很高,并且還必須在整個(gè)溫度范圍和整個(gè)使用壽命期間內保持電路參數的穩定。例如,一個(gè)16位的D/A轉換器,其MSB的精度必須在1/2 16以?xún)?,這是很困難的。所以,需尋求一種中保持高分辨率又可降低對電路精度和穩定度要求的方法。 可綜合的Delta-Sigma DAC(術(shù)語(yǔ)Delta-Sigma分別指算術(shù)差與和,即Δ-∑DAC),是Xilinx公司提供的免費IP核,可從網(wǎng)上下載得到。 Delta-Sigma DAC使用數字技術(shù),因而它不溫度的影響,并且能在一片可編程邏輯器件中實(shí)現。避免在D/A轉換器中使用匹配電阻,不僅能更便宜,而且,其轉換是線(xiàn)性的。Delta-Sigma DAC實(shí)際上是高速單個(gè)位的DAC,用數字反饋技術(shù),在輸出端產(chǎn)生一串脈沖。脈沖串中信號為高電平的時(shí)間部分與二進(jìn)制輸入成比例,當這個(gè)脈沖串通過(guò)一個(gè)模擬低通濾波器后就得到一個(gè)模擬輸出信號。 圖1是一個(gè)典型的可編程邏輯器件實(shí)現的DAC的頂層電路圖,輸入信號有復位信號、時(shí)鐘信號以及二進(jìn)制數據總線(xiàn)。輸出DACoutDrvr驅動(dòng)一個(gè)外部的低通濾波器Vout能從0V~Vcco。這里Vcco是FPGA I/O塊的供電電壓。輸入/輸出詳細說(shuō)明如表1所列。
DAC的二進(jìn)制輸入是一個(gè)無(wú)符號數?!?”代表最低電壓,輸出的模擬電壓也只有正的?!?”輸入產(chǎn)生0V輸出,輸入端全“1”,則輸出近似達到Vcco。 圖2是Delta-Sigma DAC的原理框圖,二進(jìn)制輸入的位寬是可變的。為簡(jiǎn)單起見(jiàn),電路原理圖描述了一個(gè)8位二進(jìn)制輸入的DAC。 在這個(gè)器件中,二進(jìn)制加法器用來(lái)產(chǎn)生和,也用來(lái)產(chǎn)生差。盡管Delta Adder的輸入是無(wú)符號數,兩個(gè)加法器的輸出卻都是有符號數。Delta Adder計算DAC輸入和當前DAC輸出的差,并用一個(gè)二進(jìn)制數表示。因為DAC的輸出是一個(gè)單個(gè)的位,因此它不是1就是0。如圖2所示,當輸入加上由Sigma Latch的輸出的兩個(gè)拷貝與0構成的10位數,就產(chǎn)生差值,這也補償了DACIN是無(wú)符號數的事實(shí)。Sigma Adder將它原來(lái)的輸出(保存在Sigma Latch中)與當前的Delta Adder的輸出相加。 圖1中輸出電壓與輸入電壓的關(guān)系為 VOUT=(DACIN/(2MSBI+1))VCCO 式中單位為V。 例如,對于一個(gè)8位DAC(MSBI=7),最后的輸出是這樣:DACIN輸入是0,則輸出也是0;DACIN輸入是十六進(jìn)制數FF時(shí),輸出值為最大(255/256)Vcco。 阻容低通濾波器適合多數應用需要,一個(gè)簡(jiǎn)單的阻容低通濾波器就能工作得很好。 Vs的定義是:DAC輸入增加或減少時(shí),在Vout端產(chǎn)生變化的絕對值。對一個(gè)8位DAC,Vs等于(1/256)Vcco。 Vout能夠產(chǎn)生在0V~Vcco之間可變的電壓,具體的值由DACIN的位寬和輸入的數值決定。 Delta-Sigma DAC適合需要相對高精度的低頻應用。在這種應用中,電壓不會(huì )很快地變化,因此,RC的時(shí)間常數可以很大,以減小噪聲。 這種DAC最廣泛的應用就是產(chǎn)生通常直流電壓。這包括電壓控制振蕩器、電壓控制運算放大器、I/O參數電壓、可編程電壓源、波形發(fā)生器(正弦、三角等)、A/D轉換中的參考電壓等。 Delta-Sigma DAC是一個(gè)例子,說(shuō)明高速可編程邏輯器件能用于混合信號系統,以減少元件的數量??删幊踢壿嬈骷乃俣群兔芏仁顾鼈兂蔀槟M信號產(chǎn)生和處理方面理想的元件。 library ieee; use ieeestd_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity dac_ds is port(reset :in std_logic; clk :in std_logic; din :in std_logic_vector(7 downto 0);--Signed integer dout :out std_logic; ); end dac_ds; architecture arch_dac_ds of dac_ds is signal error :std_logic_vector(9 downto 0);--Error accumulator is 2 bits larger constant zeros:std_logic_vector(7 downto 0):=(others=>'0'); begin process(reset,clk,din) variable val :std_logic_vector(9 downto 0); begin if reset='1'then error=(others=>'0'); dout='0'; elsif clk'event and clk='1' then --val:=din+error;din is sign extended to nbits+2 val:=(din(din'high)din(din'high)din)+error; if val(val'high)='0'then dout='1'; error=val+("11" zeros); else dout='0'; error=val+("01"zeros); end if; end if; end process; end arch_dac_ds; 4 芯片的選擇和配置 選擇MAX7000S系列可編程邏輯器件,編譯后由MAX+PLUS II軟件自動(dòng)配置進(jìn)EMP7032SLC44芯片,將生成的目標文件通過(guò)編程電纜對器件進(jìn)行編程。 將該IP核實(shí)現的D/A轉換器用于新型智能電阻爐溫度控制儀中,因為調節爐溫的信號不要求變化很快,因此DAC的輸入二進(jìn)制信號為緩變信號。對于這種低頻應用,可以將RC時(shí)間常數取得較大,以減小噪聲。這樣,可綜合的VHDL語(yǔ)言Delta-Sigma DAC模塊配置進(jìn)EMP7032芯片后,達到了預期的效果。 |
評論