基于FPGA多通道采樣系統(tǒng)設(shè)計資料
基于FPGA多通道采樣系統(tǒng)設(shè)計資料,基于,fpga,通道,采樣系統(tǒng),設(shè)計,資料
摘 要
本論文介紹了基于FPGA的多通道采樣系統(tǒng)的設(shè)計。用FPGA設(shè)計一個多通道采樣控制器,利用VHDL語言設(shè)計有限狀態(tài)機來實現(xiàn)對AD7892的控制。由于FPGA器件的特性是可以實現(xiàn)高速工作,為此模擬信號選用音頻信號。由于音頻信號的頻率是20Hz-20KHz,這樣就對AD轉(zhuǎn)換的速率有很高的要求.因為FPGA的功能很強大,所以我們把系統(tǒng)的許多功能都集成到FPGA器件中,例如AD通道選擇部分,串并輸出控制模塊,這樣使得整個系統(tǒng)的外圍電路簡單、系統(tǒng)的穩(wěn)定性強。FPGA的配置模式選用被動串行模式,這樣就增強了系統(tǒng)的可擴展性。輸出模式可選擇性使得系統(tǒng)的應(yīng)用相當(dāng)廣泛,串行輸出可以用于通信信號的采集,方便調(diào)制后發(fā)射到遠程接受端,遠程接收端對采集的數(shù)據(jù)進行解調(diào);而并行輸出模式則可以通過高速存儲器將采集的信號放到微機或者其他的處理器上,根據(jù)采集的數(shù)據(jù)進行相應(yīng)的控制。此系統(tǒng)的缺點是由于FPGA器件配置是基于SRAM查找表單元,編程的信息是保持在SRAM中,但SRAM在掉電后編程信息立即丟失,所以每次系統(tǒng)上電都需要重新配置芯片,這對在野外作業(yè)的工作人員很不方便,解決的方法是專用的配置器件來配置FPGA,在每次系統(tǒng)上電的時候會自動把編程信息配置到FPGA芯片中。但設(shè)計中沒有采用到這種配置方案主要是考慮到專用配置器件的價格問題。
本文開始介紹了多通道系統(tǒng)的組成部分,然后分別介紹了各個組成部分的原理和設(shè)計方法,其中重點介紹了FPGA軟件設(shè)計部分。還對當(dāng)前十分流行的基于FPGA的設(shè)計技術(shù)作了簡單的闡述,最后對系統(tǒng)的調(diào)試和應(yīng)用作了簡短的說明。
關(guān)鍵詞:音頻放大;濾波器;FPGA;VHDL;AD7892;有限狀態(tài)機;
Abstract
The paper introduces the design of multiple channel sampling system based on FPGA, It designs a multiple channel control sampling instrument with FPGA, I use VHDL to design ASM and then achieve the control to AD7892. Because the FPGA device can work in high-speed, we select audio signal for analog signals. The range of audio signal frequency is 20Hz-20 KHz, And then the transform speed of AD sampling must be very high. We integrate many modules in the FPGA device. For example the AD sampling channel control, the mode of output which made the circuit simply and the system stably. We choose Passive Serial for configuring the FPGA device which made the system can extend easily. The mode of output can control which made this system can use many field. The serial output mode can use in the sampling of communication. The sampling data can launch to the long-distance sink by brewage, and then the long-distance sink can demodulation the sampling data. The parallel output mode can put the sampling data to the microprocessor or other processor by the high-speed memorizer. And then control accordingly. The disadvantage of this system is that the configure of the FPGA device is based on SRAM LUT. The message of programming is kept in the SRAM, which will lose when the system is out of power supply. So we should reconfigure the programming message into the FPGA device when the system has the power supply again. It is not very convenience for working outside. But this can be resolve by using appropriative configure device which can load the configure message into the FPGA device automatically when the system have power supply. Because the price of the appropriative device, I don't choose this configure mode in this design.
This paper introduce the multiple channel sampling system in the first place, and then introduce the principle of each module and design method separately, among these I introduce the designs of FPGA especially. I also introduce the designing technique which is popular at present based on FPGA simply. Finally, I introduce debugging and application of this system.
Key words: audio amplifying; filter; FPGA; VHDL; AD7892; ASM
目 錄
引言···························································1
1 FPGA和VHDL概述·············································1
FPGA發(fā)展歷程·················································1
VHDL語言介紹·················································3
2 多通道采樣系統(tǒng)的組成········································3
3 總體方案設(shè)計與論證··········································4
3.1 方案設(shè)計·····················································4
3.1.1方案一·····················································4
3.1.2方案二·····················································4
3.1.3方案三·····················································4
3.2方案比較·····················································4
4 單元電路的設(shè)計··············································5
4.1音頻放大、濾波部分············································5
4.1.1音頻放大部分················································5
4.1.2有源濾波器的設(shè)計·············································6
4.2 AD采樣電路···················································8
4.2.1芯片介紹····················································8
4.2.2芯片應(yīng)用···················································11
4.3 FPGA控制部分·················································11
4.3.1通道選擇模塊···············································11
4.3.2 AD7892控制部分·············································12
4.3.3延時模塊的設(shè)計·············································17
4.3.4串并輸出選擇控制············································18
4.3.5 FIFO模塊··················································18
4.3.6 AD采樣系統(tǒng)頂層電路設(shè)計······································19
4.4 FPGA的硬件設(shè)計··············································20
4.4.1 EP1K30TC144-3芯片介紹·······································20
4.4.2芯片組成描述···············································20
4.4.3芯片工作電壓設(shè)計············································21
4.4.4芯片配置介紹···············································22
4.4.5電路設(shè)計注意事項············································24
4.4.6硬件電路設(shè)計技巧············································25
5 軟件介紹···················································25
5.1 MAX+PlusⅡ··················································25
5.2 Electronics Workbench(EWB) ····································25
5.3Protel99SE···················································26
6 整機調(diào)試···················································26
6.1 硬件電路的調(diào)試步驟···········································26
6.1.1音頻放大部分調(diào)試············································26
6.1.2濾波部分調(diào)試···············································27
6.1.3LM317穩(wěn)壓塊調(diào)試·············································27
6.1.4FPGA硬件電路調(diào)試············································27
6.1.5AD采樣模塊調(diào)試··············································28
6.2 聯(lián)機調(diào)試····················································28
6.3調(diào)試注意事項·················································28
7 結(jié)論·······················································29
謝辭··························································30
參考文獻······················································31
附錄··························································32
引言
FPGA(Field-Programmable Gate Array 現(xiàn)場可編程門陣列)是近年來廣泛應(yīng)用的超大規(guī)模、超高速的可編程邏輯器件,由于其具有高集成度(單片集成的系統(tǒng)門數(shù)達上千萬門)、高速(200MHz以上)、在線系統(tǒng)可編程等優(yōu)點,為數(shù)字系統(tǒng)的設(shè)計帶來了突破性變革,大大推動了數(shù)字系統(tǒng)設(shè)計的單片化、自動化,提高了單片數(shù)字系統(tǒng)的設(shè)計周期、設(shè)計靈活性和可靠性。在超高速信號處理和實時測控方面有非常廣泛的應(yīng)用。
硬件描述語言HDL是一種用形式化方法描述數(shù)字電路和系統(tǒng)的語言。VHDL是硬件描述語言的幾種代表性語言的一種。VHDL(Very High Speed Integrated Circuit Hardware Description Language 即超高速集成電路硬件描述語言)主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口,與其它的硬件描述語言相比,VHDL具有更強的行為描述能力,從而決定了它成為系統(tǒng)設(shè)計領(lǐng)域最佳的硬件描述語言。用VHDL設(shè)計的程序,通過綜合工具產(chǎn)生網(wǎng)表文件,下載到目標器件,從而生成硬件電路。VHDL還是一種仿真語言,包括行為仿真、功能仿真和時序仿真,給系統(tǒng)設(shè)計各個階段的可行性做出了決策。
目前,這種高層次(high-level-design)的方法已被廣泛采用。據(jù)統(tǒng)計,目前在美國硅谷約有90%以上的ASIC和FPGA采用硬件描述語言進行設(shè)計。
數(shù)據(jù)采集在現(xiàn)代工業(yè)生產(chǎn)以及科學(xué)研究中的重要地位日益突出,并且實時高速數(shù)據(jù)采集的要求也不斷提高,在信號測量、圖像處理,音頻信號處理等一些高速、高精度的測量中,都需要進行高速數(shù)據(jù)采集。本次設(shè)計就是用FPGA實現(xiàn)采樣系統(tǒng),來實現(xiàn)音頻信號的數(shù)據(jù)采集。
1 FPGA和VHDL概述
1.1 FPGA發(fā)展歷程
當(dāng)今社會是數(shù)字化的社會,是數(shù)字集成電路廣泛應(yīng)用的社會。數(shù)字集成電路本身在不斷地進行更新?lián)Q代。它由早期的電子管、晶體管、小中規(guī)模集成電路、發(fā)展到超大規(guī)模集成電路(VLSIC,幾萬門以上)以及許多具有特定功能的專用集成電路。但是,隨著微電子技術(shù)的發(fā)展,設(shè)計與制造集成電路的任務(wù)已不完全由半導(dǎo)體廠商來獨立承擔(dān)。系統(tǒng)設(shè)計師們更愿意自己設(shè)計專用集成電路(ASIC)芯片,而且希望ASIC的設(shè)計周期盡可能短,最好是在實驗室里就能設(shè)計出合適的ASIC芯片,并且立即投入實際應(yīng)用之中,因而出現(xiàn)了現(xiàn)場可編程邏輯器件(FPLD),其中應(yīng)用最廣泛的當(dāng)屬現(xiàn)場可編程門陣列(FPGA)和復(fù)雜可編程邏輯器件(CPLD)。
早期的可編程邏輯器件只有可編程只讀存儲器(PROM)、紫外線可擦除只讀存儲器(EPROM)和電可擦除只讀存儲器(EEPROM)三種。由于結(jié)構(gòu)的限制,它們只能完成簡單的數(shù)字邏輯功能。其后,出現(xiàn)了一類結(jié)構(gòu)上較復(fù)雜的可編程芯片,即可編程邏輯器件(PLD),它能夠完成各種數(shù)字邏輯功能。典型的PLD由一個“與”門和一個“或”門陣列組成,而任意一個組合邏輯都可以用“與一或”表達式來描述,所以, PLD能以乘積和的形式完成大量的組合邏輯功能。
這一階段的產(chǎn)品主要有PAL(可編程陣列邏輯)和GAL(通用陣列邏輯)。 PAL由一個可編程的“與”平面和一個固定的“或”平面構(gòu)成,或門的輸出可以通過觸發(fā)器有選擇地被置為寄存狀態(tài)。 PAL器件是現(xiàn)場可編程的,它的實現(xiàn)工藝有反熔絲技術(shù)、EPROM技術(shù)和EEPROM技術(shù)。還有一類結(jié)構(gòu)更為靈活的邏輯器件是可編程邏輯陣列(PLA),它也由一個“與”平面和一個“或”平面構(gòu)成,但是這兩個平面的連接關(guān)系是可編程的。 PLA器件既有現(xiàn)場可編程的,也有掩膜可編程的。 在PAL的基礎(chǔ)上,又發(fā)展了一種通用陣列邏輯GAL (Generic Array Logic),如GAL16V8,GAL22V10 等。它采用了EEPROM工藝,實現(xiàn)了電可擦除、電可改寫,其輸出結(jié)構(gòu)是可編程的邏輯宏單元,因而它的設(shè)計具有很強的靈活性,至今仍有許多人使用。 這些早期的PLD器件的一個共同特點是可以實現(xiàn)速度特性較好的邏輯功能,但其過于簡單的結(jié)構(gòu)也使它們只能實現(xiàn)規(guī)模較小的電路。
為了彌補這一缺陷,20世紀80年代中期。 Altera和Xilinx分別推出了類似于PAL結(jié)構(gòu)的擴展型 CPLD(Complex Programmab1e Logic Device)和與標準門陣列類似的FPGA(Field Programmable Gate Array),它們都具有體系結(jié)構(gòu)和邏輯單元靈活、集成度高以及適用范圍廣等特點。這兩種器件兼容了PLD和通用門陣列的優(yōu)點,可實現(xiàn)較大規(guī)模的電路,編程也很靈活。與門陣列等其它ASIC(Application Specific IC)相比,它們又具有設(shè)計開發(fā)周期短、設(shè)計制造成本低、開發(fā)工具先進、標準產(chǎn)品無需測試、質(zhì)量穩(wěn)定以及可實時在線檢驗等優(yōu)點,因此被廣泛應(yīng)用于產(chǎn)品的原型設(shè)計和產(chǎn)品生產(chǎn)(一般在10,000件以下)之中。幾乎所有應(yīng)用門陣列、PLD和中小規(guī)模通用數(shù)字集成電路的場合均可應(yīng)用FPGA和CPLD器件。
FPGA(現(xiàn)場可編程門陣列)與 CPLD(復(fù)雜可編程邏輯器件)都是可編程邏輯器件,它們是在PAL,GAL等邏輯器件的基礎(chǔ)之上發(fā)展起來的。同以往的PAL,GAL等相比較,F(xiàn)PGA的規(guī)模比較大,它可以替代幾十甚至幾千塊通用IC芯片。這樣的FPGA實際上就是一個子系統(tǒng)部件。這種芯片受到世界范圍內(nèi)電子工程設(shè)計人員的廣泛關(guān)注和普遍歡迎。
盡管FPGA和其它類型PLD的結(jié)構(gòu)各有其特點和長處,但概括起來,它們是由三大部分組成的:
一個二維的邏輯塊陣列,構(gòu)成了PLD器件的邏輯組成核心;
輸入/輸出塊;
連線資源:由各種長度的連線線段組成,其中也有一些可編程的連接開關(guān),它們用于邏輯塊之間、邏輯塊與輸入/輸出塊之間的連接。
FPGA芯片都是特殊的ASIC芯片,它們除了具有ASIC的特點之外,還具有以下幾個優(yōu)點:
(1)隨著VLSI(Very Large Scale IC,超大規(guī)模集成電路)工藝的不斷提高單一芯片內(nèi)部可以容納上百萬個晶體管,F(xiàn)PGA芯片的規(guī)模也越來越大,其單片邏輯門數(shù)已達到上百萬門,它所能實現(xiàn)的功能也越來越強,同時也可以實現(xiàn)系統(tǒng)集成。
(2)FPGA芯片在出廠之前都做過百分之百的測試,不需要設(shè)計人員承擔(dān)投資的風(fēng)險和費用,設(shè)計人員只需在自己的實驗室里就可以通過相關(guān)的軟硬件環(huán)境來完成芯片的最終功能設(shè)計。所以,F(xiàn)PGA的資金投入小,節(jié)省了許多潛在的花費。
(3)用戶可以反復(fù)地編程、擦除、使用或者在外圍電路不動的情況下用不同軟件就可實現(xiàn)不同的功能。
所以,用FPGA 試制樣片,能以最快的速度占領(lǐng)市場。 FPGA軟件包中有各種輸入工具和仿真工具,及版圖設(shè)計工具和編程器等全線產(chǎn)品,電路設(shè)計人員在很短的時間內(nèi)就可完成電路的輸入、編譯、優(yōu)化、仿真,直至最后芯片的制作。 當(dāng)電路有少量改動時,更能顯示出FPGA的優(yōu)勢。電路設(shè)計人員使用FPGA進行電路設(shè)計時,不需要具備專門的IC(集成電路)深層次的知識, FPGA軟件易學(xué)易用,可以使設(shè)計人員更能集中精力進行電路設(shè)計,快速將產(chǎn)品推向市場。
1.2 VHDL語言介紹
VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風(fēng)格與句法是十分類似于一般的計算機高級語言。VHDL的程序結(jié)構(gòu)特點是將一項工程設(shè)計,或稱設(shè)計實體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可視部分,及端口)和內(nèi)部(或稱不可視部分),一旦其內(nèi)部開發(fā)完成后,其他的設(shè)計就可以直接調(diào)用這個實體。這種將設(shè)計實體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計的基本點。應(yīng)用VHDL進行工程設(shè)計的優(yōu)點是多方面的。
(1)與其他的硬件描述語言相比,VHDL具有更強的行為描述能力,從而決定了他成為系統(tǒng)設(shè)計領(lǐng)域最佳的硬件描述語言。強大的行為描述能力是避開具體的器件結(jié)構(gòu),從邏輯行為上描述和設(shè)計大規(guī)模電子系統(tǒng)的重要保證。
(2)VHDL豐富的仿真語句和庫函數(shù),使得在任何系統(tǒng)的設(shè)計早期就能查驗設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計進行仿真模擬。
(3)VHDL語句的行為描述能力和程序結(jié)構(gòu)決定了他具有支持大規(guī)模設(shè)計的分解和已有設(shè)計的再利用功能。符合市場需求的大規(guī)模系統(tǒng)設(shè)計,高速的完成必須有多人甚至多個開發(fā)組共同并行工作才能實現(xiàn)的工程。
(4)對于用VHDL完成的一個確定的設(shè)計,可以利用EDA工具進行邏輯綜合和優(yōu)化,并自動的把VHDL描述設(shè)計轉(zhuǎn)變成門級網(wǎng)表。
(5)VHDL對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管最終設(shè)計實現(xiàn)的目標器件是什么,而進行獨立的設(shè)計。
2 多通道采樣系統(tǒng)的組成
本系統(tǒng)硬件電路包括FPGA設(shè)計的多通道采樣控制器和相應(yīng)的通道選擇電路,A/D轉(zhuǎn)換電路,由于采樣音頻信號,所以需要設(shè)計音頻的放大和濾波電路。系統(tǒng)組成部分如圖2.1所示:
通道選擇部分
音頻放大、濾波部分
信號1
模擬信號輸入
信號2
AD轉(zhuǎn)換部分
控制
FPGA控制的通道選擇和AD控制部分
信號7
控制采樣
信號8
數(shù)字信號存儲
輸出
圖2.1 多通道系統(tǒng)的組成
3 總體方案設(shè)計與論證
3.1 方案設(shè)計
3.1.1方案一
用FPGA實現(xiàn)一個3位8進制的計數(shù)器,記數(shù)脈沖是FPGA鎖存AD轉(zhuǎn)換數(shù)據(jù)的鎖存信號,計數(shù)器的輸出作為數(shù)據(jù)開關(guān)CD4051的地址。利用進程的并行操作來實現(xiàn)AD574來實現(xiàn)AD轉(zhuǎn)換,這個方案的優(yōu)點是節(jié)省了FPGA芯片的資源,但數(shù)字電路較為復(fù)雜,而且AD574的轉(zhuǎn)換速率最高達到50KHz,不能達到8通道的高速音頻采集。
3.1.2方案二
用FPGA實現(xiàn)一個3位8進制的計數(shù)器,記數(shù)脈沖是FPGA鎖存AD轉(zhuǎn)換數(shù)據(jù)的鎖存信號,計數(shù)器的輸出作為數(shù)據(jù)開關(guān)CD4051的地址。用有限狀態(tài)機來實現(xiàn)對AD7892的控制,用外部RAM實現(xiàn)采樣數(shù)據(jù)的存儲,這樣電路實現(xiàn)比較簡單,而且AD7892的采樣速率可以達到500KHz,可以實現(xiàn)8個通道同時8路音頻信號采集。但需要外接RAM芯片,成本比較高,而且外部RAM的讀寫速度達不到高速數(shù)據(jù)采集的要求。
3.1.3方案三
用FPGA實現(xiàn)一個3位8進制的計數(shù)器,記數(shù)脈沖是FPGA鎖存AD轉(zhuǎn)換數(shù)據(jù)的鎖存信號,計數(shù)器的輸出作為數(shù)據(jù)開關(guān)CD4051的地址。用有限狀態(tài)機來實現(xiàn)對AD7892的控制,這樣電路實現(xiàn)比較簡單,而且AD7892的采樣速率可以達到500KHz,可以實現(xiàn)8個通道同時8路音頻信號采集。同時采用FIFO模塊,讓數(shù)字數(shù)據(jù)先存到隊列中,一邊往隊列中寫數(shù)據(jù),一邊從隊列中讀數(shù)據(jù),這樣就對數(shù)字數(shù)據(jù)起了一個高速緩存的作用,更加快了整個系統(tǒng)的運行速度。
3.2 方案比較
為獲得更佳的系統(tǒng)功能,使系統(tǒng)資源能得到充分地利用,我們采用第三種方案。主要是因為狀態(tài)機容易構(gòu)成性能良好的同步時序邏輯模塊,為了消除電路中的毛刺現(xiàn)象,在狀態(tài)機設(shè)計中有很多種設(shè)計方案可供選擇。FIFO隊列的讀寫操作只需要一個周期就可以完成,起到高速緩存的作用,這樣更加快了整個系統(tǒng)的運行速度,解決了采樣和存儲的“瓶頸問題”,更加有效地利用FPGA芯片的資源。
4 單元電路的設(shè)計
由圖2.1可以看出,系統(tǒng)可以分為4個大部分,分別是音頻放大、濾波部分,F(xiàn)PGA控制部分,AD采樣電路,F(xiàn)PGA硬件電路的設(shè)計。其中以FPGA控制部分為主體部分,它涉及到AD采樣控制,通道選擇控制,串并輸出模式選擇模塊,延時模塊以及FIFO模塊介紹。這些模塊的實現(xiàn)是系統(tǒng)實現(xiàn)的關(guān)鍵。下面分別對系統(tǒng)的這些單元電路做詳細的闡述。
4.1 音頻放大、濾波部分
人的耳朵可以辨別到的聲音頻率范圍是:20Hz-20KHz,所以對音頻放大部分的放大器有帶寬要求,要求放大器是寬頻帶的。所以本次設(shè)計選用專門用于音頻放大的高速低噪聲運放NE5532作為放大部分的放大器。濾波部分是一個有源帶通濾波器,濾掉電路的20Hz以下的低頻和20KHz以上的高頻干擾。
4.1.1音頻放大部分
音源采用普通CD輸出的音頻信號,它產(chǎn)生輸出的信號的幅度約有300mV左右,根據(jù)設(shè)計AD7892的輸入電壓是±10V,選擇放大器的放大倍數(shù)在10-30之間,通過一個精密可調(diào)電阻來調(diào)節(jié)放大倍數(shù)。音頻放大芯片NE5532特性是雙運放、寬頻帶、低噪聲、轉(zhuǎn)換速率大、電源范圍廣。
NE5532的管腳結(jié)構(gòu)及其功能:
(1腳)輸出信號 (2腳)反相端輸入
(3腳)同相端輸入 (4腳)負電源
(5腳)同相端輸入 (6腳)反相端輸入
(7腳)輸出信號 (8腳)正電源
NE5532技術(shù)參數(shù)
參數(shù)名稱 單位 數(shù)據(jù)值
輸入失調(diào)電壓 mV ±0.5
溫漂 μV/℃ 5
增益帶寬積 MHz 10
轉(zhuǎn)換速率 V/us 9
諧波失真 % 0.001
工作電流 mA 8
工作電壓 V ±3-±22
設(shè)計中因為采用反相端輸入音頻信號,為了在輸出端得到正向的音頻信號,所以放大部分采用兩級放大,前級放大10倍,后級放大通過可調(diào)電阻設(shè)計在1-3倍,這樣得到的正向音頻信號就方便了AD采樣。
4.1.2有源濾波器的設(shè)計
在一個實際的電子系統(tǒng)中,輸入信號往往因受干擾等原因而含有一些不必要的成份,應(yīng)設(shè)法將干擾衰減到足夠小的程度。在其他一些情況,我們需要的信號和干擾信號混在一起,如果這兩個信號在頻率成分上有較大的差別,就可以用濾波的方法將所需要的信號濾出。為了解決上述問題,可采用濾波電路。濾波器包括電抗性元件L、C構(gòu)成的無源濾波器、由集成運算放大器組成的有源濾波器、以及晶體濾波器等。本次設(shè)計需要的通帶頻率范圍是20Hz-20KHz,如果用有源帶通濾波器來實現(xiàn),考慮到該帶通濾波器的上下截止頻率之比20000/20=1000,大于一個倍頻程,為一個寬帶濾波器,所以采用一個低通濾波器和一個高通濾波器級聯(lián)來實現(xiàn)帶通濾波。
(1)設(shè)計步驟
有源濾波器的設(shè)計,就是根據(jù)所給定的指標要求,確定濾波器的階數(shù)n,選擇具體的電路形式,算出電路中各元件的具體數(shù)值,安裝電路和調(diào)試,使設(shè)計的濾波器滿足指標要求,具體步驟如下:
① 根據(jù)阻帶衰減速率要求,確定濾波器的階數(shù)n。
② 選擇具體的電路形式。
③ 根據(jù)電路的傳遞函數(shù)和附錄中表1歸一化濾波器傳遞函數(shù)的分母多項式,建立起系數(shù)的方程組。
④ 解方程組求出電路中元件的具體數(shù)值。
⑤ 將設(shè)計好的電路,在EWB上進行仿真。
⑥ 按照所設(shè)計的電路,將元件安裝在實驗板上。
⑦ 安裝電路并進行調(diào)試,使電路的性能滿足指標要求。
(2)對安裝好的電路按以下方法進行調(diào)整和測試
① 仔細檢查安裝好的電路,確定元件與導(dǎo)線連接無誤后,接通電源。
② 在電路的輸入端輸入Ui=10mv的正弦信號,慢慢改變輸入信號的頻率(注意保持Ui的值不變),用示波器觀察波形的變化,在濾波器的截止頻率附近,觀察電路是否具有濾波特性,若沒有濾波特性,應(yīng)檢查電路,找出故障原因并排除之。
③ 若電路具有濾波特性,可進一步進行調(diào)試。對于低通和高通濾波器應(yīng)觀測其截止頻率是否滿足設(shè)計要求,若不滿足設(shè)計要求,應(yīng)根據(jù)有關(guān)的公式,確定應(yīng)調(diào)整哪一個元件才能使截止頻率既能達到設(shè)計要求又不會對其它的指標參數(shù)產(chǎn)生影響。然后觀測電壓放大倍數(shù)是否滿足設(shè)計要求,若達不到要求,應(yīng)根據(jù)相關(guān)的公式調(diào)整有關(guān)的元件,使其達到設(shè)計要求。最后設(shè)計的有源帶通濾波器在EWB上的仿真圖如圖4.1所示:
圖4.1 有源帶通濾波器的仿真圖
有源帶通濾波電路分成兩個部分,高通部分和低通部分,圖4.2是20HZ的高通濾波器,圖4.3是20KHZ的低通濾波器。
圖4.2 低通濾波器電路圖
圖4.3 高通濾波器電路圖
音頻信號經(jīng)過音頻放大電路放大后就進入了上圖的電路。經(jīng)過20HZ-20KHZ的帶通濾波電路進行濾波。
4.2 AD采樣電路
由于人的耳朵能識別的音頻的頻率范圍是20Hz-20KHz,根據(jù)奈魁斯特(NYQUIST)采樣定理知道,要使采樣后的數(shù)字信號能恢復(fù)成模擬信號,采樣的頻率必須是模擬信號的頻率的兩倍,即本次采樣系統(tǒng)的采樣頻率最低要設(shè)計在40KHz,而一般CD格式的音頻信號的采樣頻率是44.1KHz,由于是8路通道的采樣,所以AD芯片的最低采樣頻率應(yīng)該是44.1KHz8=352.8KHz,所以選擇采樣頻率為500KHz的AD7892。這樣我們每個通道的采樣頻率就是500KHz/8=62.5KHz。
4.2.1芯片介紹
AD7892是美國ANALOG DEVICE公司生產(chǎn)的具有采樣保護功能的逐次逼近式12位高速ADC,根據(jù)輸入模擬信號范圍的不同可分為AD7892-1,AD7892-2,AD7892-3三種類型。其中,AD7892-1輸入信號范圍為±10V或者±5V(可設(shè)置),AD7892-2輸入信號范圍為0~+2.5V,這兩種的采樣轉(zhuǎn)換速率均為500kSPS,AD7892-3的輸入信號范圍為±2.5V,采樣轉(zhuǎn)換速率為600kSPS,AD7892-1和AD7892-3的輸入信號過壓保護電壓分別為±17V和±7V。本次設(shè)計選用的是AD7892AN-1,因為其采樣速率已符合8路的音頻采集速率。
AD7892模數(shù)轉(zhuǎn)換器具有如下特點:
① 單電源工作(+5V);
② 內(nèi)含采樣保持放大器;
③ 具有高速串、并行接口。
AD7892的內(nèi)部框圖如圖4.5所示,它內(nèi)含模擬信號換算電路、采樣保持電路、A/D轉(zhuǎn)換的基準電源(+2.5V)、時鐘電路、12位逐次逼近式ADC電路和控制電路,轉(zhuǎn)換的結(jié)果可以并行輸出,也可以串行輸出,非常容易和微處理器或DSP(數(shù)字信號處理器)接口。AD7892共有兩種封裝,一種是24腳雙列直插式DIP封裝,另一種為貼面式SOIC封裝,AD7892的引腳排列如圖4.4所示。各個引腳的功能說明如表4.1所列。
圖4.4 AD7892引腳排列圖 圖4.5 AD7892功能框圖
表4.1 AD7892的管腳名稱及功能說明
名稱
管腳
類型
功能說明
VDD
1
電源
電源:±5V±5%
STANDBY
2
I
低電平時為睡眠狀態(tài)(功耗5mW),高電平時正常工作,一般應(yīng)用時接高電平
VIN2
3
I
模擬輸入2,對AD7892-2和AD7892-3,應(yīng)懸空或接AGND。對AD7892-1來說,此引腳決定輸入信號(VIN1)的范圍,當(dāng)VIN2接AGND時,VIN1的范圍為±10V,接VIN1時,輸入信號范圍為±5V
VIN1
4
I
模擬信號輸入腳1,其輸入范圍同上。
REFOUT/REFIN
5
I/O
內(nèi)部ADC基準,2.5V輸出,也可通過該引腳輸入一個A/D轉(zhuǎn)換的外部基準(2.5V),如果用內(nèi)部基準,此引腳懸空,對外作為基準時應(yīng)對AGND接一個 0.1μF的瓷片電容
AGND
6
模擬地
MODE
7
I
低電平時為串行輸出,高電平時為并行輸出
DB11~DB0
8~13
15~20
O/I
A/D轉(zhuǎn)換的12位并行輸出,可與TTL電平兼容,為三態(tài)輸出,DB0為低位,DB11為高位,當(dāng)串行工作時,15腳(SDATA)為串行數(shù)據(jù)輸出腳,16位的前四位為0,后12位為A/D的結(jié)果。
16腳(SCLK)為串行輸出的時鐘輸入端
17腳(RFS)為測試腳,正常工作時應(yīng)接低電平
DGND
14
數(shù)字地,與外電路的數(shù)字地相連
RD
21
I
和CS配合讀,使數(shù)據(jù)輸出
CS
22
I
片選,低電平有效,可以一直有效
EOC
23
O
轉(zhuǎn)換結(jié)束信號,轉(zhuǎn)換結(jié)束時,此引腳輸出100ns的低電平脈沖
CONVST
24
I
啟動轉(zhuǎn)換輸入端,當(dāng)此引腳由低變高時,使采樣保持器保持開始轉(zhuǎn)換,應(yīng)加一個大于25ns的負脈沖來啟動轉(zhuǎn)換
(1) AD7892的并行輸出時序
當(dāng)MODE引腳接高電平時,AD7892為并行輸出方式,其時序如圖4.6所示。CONVST信號t1應(yīng)大于35ns,在上升沿,采樣保護器進入保持狀態(tài),并開始A/D轉(zhuǎn)換,轉(zhuǎn)換時間tCONV為1.47μs(AD7892-3)或1.6μs(AD7892-1,AD7892-2),轉(zhuǎn)換結(jié)束后EOC腳輸出t260ns的負脈沖以進行中斷或數(shù)據(jù)鎖存,并在EOC下降沿開始下次采樣,也就是轉(zhuǎn)換一結(jié)束就開始下次采樣,采樣時間tACQ要大于等于200ns(AD7892-3)或400ns(AD7892-1,AD7892-2),當(dāng)轉(zhuǎn)換結(jié)束后(EOC的下降沿),只要CS和RD有效,經(jīng)過t6=40ns的時間,即可在DB0~DB11上獲得轉(zhuǎn)換后的12位數(shù)據(jù),CS和一般的片選信號相同,可一直有效,外加RD的時間t5亦應(yīng)大于35ns。下次采樣和本次的輸出可同時進行,所以最小的一次采樣轉(zhuǎn)換輸出時間對于AD7892-3來說為1.47+0.2=1.67μs(600kSPS),而對于AD7892-1和AD7892-2來說為1.6+0.4=2μs (即500kSPS),圖6中t9200ns,t75ns,t3、t4、t8可為零(此時t9=tACQ)。
圖4.6 AD7892的并行輸出時序
(2) 轉(zhuǎn)換后的二進制代碼
由于三種類型的模擬輸入范圍不相同,因而其轉(zhuǎn)換輸出的二進代碼碼也不相同,表3所列為AD7892-1和AD7892-3的輸入輸出代碼。
表4.2 AD7892-1,AD7892-3理想的輸入輸出表
輸?入
輸出(12位)
+FSR/2+1/2LSB
100…000→100…001
-FSR/2+3/2LSB
100…001→100…101
…
…
AGND-1/2LSB
111…111→000…000
AGND+1/2LSB
000…000→000…001
…
…
+FSR/2-5/2LSB
011…101→011…110
+FSR/2-3/2LSB
011…110→011…111
對于AD7892-1和AD7892-3,F(xiàn)SR為滿度范圍,如輸入為±10V,則FSR=20V,輸入為±5V,F(xiàn)SR=10V,輸入為±2.5V,F(xiàn)SR=5V.模擬信號從-FSR/2→GND→+FSR/2變化,輸出則從100…000→111…111→000…000→011…111變化。而對于AD7892-2,在輸入從0→+2.5V變化時,輸出則從全0→全1。
4.2.2芯片應(yīng)用
如圖4.7所示為AD7892應(yīng)用于采樣系統(tǒng)。目的是把音頻輸入模擬信號轉(zhuǎn)換為12位數(shù)字信號,該電路采用的是AD7892AN-1的并行輸出模式,其采集速度設(shè)計為500kSPS。
在此應(yīng)用中,將IN2接到AGND,IN1接音頻輸入信號,其輸入范圍為±10V,音頻信號經(jīng)過放大、濾波和AD7892的輸出信號為100…000~111…111,即從2048→4095,在D11反相后,在狀態(tài)機的第5個狀態(tài)鎖存器鎖存的數(shù)據(jù)為000…000→011…111,即從0→2047。由P/S選擇相應(yīng)的輸出模式輸出。
圖4.7 AD7892采樣系統(tǒng)
電路中的CONV,EOC,CS,RD控制信號均由有限狀態(tài)機提供,D[0]到D[11]數(shù)字信號是經(jīng)過AD采樣后的數(shù)字信號。
4.3 FPGA控制部分
4.3.1通道選擇模塊
通道選擇部分是一個二進制模8的計數(shù)器,計數(shù)器的時鐘是AD數(shù)字信號的鎖存信號,每次鎖存數(shù)據(jù)后,計數(shù)器就會一次進行加一操作,CD4051選擇下一個通道的音頻信號進行采集。在MAX+PlusⅡ中用VHDL語言設(shè)計圖形如下圖4.8所示:
圖4.8 通道選擇部分
通過CNT[0]到CNT[2]來選擇相應(yīng)的通道,CD4051的輸出就是最后要進行AD采樣的音頻信號。例如:若CNT[0]CNT[1]CNT[2]=“000”,則選擇第一通道音頻信號進行AD采樣。這個部分實現(xiàn)的重點是對數(shù)字鎖存信號記數(shù),計數(shù)器的輸出作為CD4051的通道選擇地址。
通道選擇部分的主體程序如下:
二進制模8計數(shù)器
signal q:std_logic_vector(2 downto 0);
begin
counter:process(clk)
begin
if(clk'event and clk='1') then
if q="111" then
q<="000";
else
q<=q+1;
end if;
end if;
cnt<=q;
end process;
通道選擇模塊的仿真圖如圖4.9所示:
圖4.9 通道模塊仿真圖
4.3.2AD7892控制部分
這個部分的主要工作是對AD7892的控制,使得AD7892可以工作。對AD7892的控制部分主要是通過一個有限狀態(tài)機來實現(xiàn)的,通過對AD7892的工作時序觀察,用有限狀態(tài)機對AD的控制信號做出描述,從而讓AD芯片能工作起來,這就是有限狀態(tài)機的主題任務(wù),當(dāng)然還有一些其他的功能,將在后序的部分介紹,這里先對有限狀態(tài)機作個闡述。
(1)有限狀態(tài)機的介紹
AD采樣的控制部分主要是設(shè)計一個有限狀態(tài)機來實現(xiàn),利用VHDL設(shè)計的使用邏輯系統(tǒng)中,有許多是可以利用有限狀態(tài)機的設(shè)計方案來描述和實現(xiàn)的,無論與基于VHDL的其他設(shè)計方案相比,還是與完成相似功能的CPU相比,狀態(tài)機都有其難以超越的優(yōu)越性,它主要表現(xiàn)在以下幾個方面:
有限狀態(tài)機克服了純硬件數(shù)字系統(tǒng)順序方式控制不靈活的缺點。狀態(tài)機的工作方式是根據(jù)控制信號按照預(yù)先設(shè)定的狀態(tài)進行順序運行的,狀態(tài)機是純硬件數(shù)字系統(tǒng)中的順序控制電路,因此狀態(tài)機在其運行方式上類似于控制靈活和方便的CPU,而在運行速度和工作可靠方面都優(yōu)于CPU。
由于狀態(tài)機的結(jié)果模式相對簡單,設(shè)計方案相對固定,特別是可以定義符號化枚舉類型的狀態(tài),這一切都為VHDL綜合器盡可能發(fā)揮其強大的優(yōu)化功能提供了有利條件。而且,性能良好的綜合器都具備許多可控或自動的專門用于優(yōu)化狀態(tài)機的功能。
狀態(tài)機容易構(gòu)成性能良好的同步時序邏輯模塊,這對于對付大規(guī)模邏輯電路設(shè)計中令人深感棘手的競爭冒險現(xiàn)象無疑是一個上佳的選擇。為了消除電路中的毛刺現(xiàn)象,在狀態(tài)機設(shè)計中有很多種設(shè)計方案可供選擇。
與VHDL的其他描述方式相比,狀態(tài)機的VHDL表述豐富多樣、程序?qū)哟畏置?,結(jié)構(gòu)清晰,易懂易讀;在排錯、修改和模塊移植方面也有其獨特的特點。
在高速運算和控制方面,狀態(tài)機就更有其巨大的優(yōu)勢。由于在VHDL中,一個狀態(tài)機可以由多個進程構(gòu)成,一個結(jié)構(gòu)體可以包括多個狀態(tài)機,而一個單獨的狀態(tài)機(或多個并行進程的狀態(tài)機)以順序方式所能完成的運算和控制方面的工作與一個CPU的功能類似。因此,一個設(shè)計實體的功能便類似于一個含有并行運行的CPU的高性能微處理器的功能。事實上,多CPU的微處理早已在通信、工控和軍事等領(lǐng)域有了十分廣泛的應(yīng)用。
就可靠性而言,狀態(tài)機的優(yōu)勢也是十分明顯的。CPU本身的結(jié)構(gòu)特點與執(zhí)行軟件指令的工作方式?jīng)Q定了任何CPU都不可能獲得圓滿的容錯保障,這已是不爭的事實了。因此,用于要求高可靠性的特殊環(huán)境中的電子系統(tǒng)中,如果以CPU作為主控部件,應(yīng)是一項錯誤的決策。然而,在狀態(tài)機系統(tǒng)就不同了,首先它是由純硬件電路構(gòu)成,不存在CPU運行軟件過程中固有的缺陷;其次是由于狀態(tài)機的設(shè)計中能使用各種完整的容錯技術(shù);再次是當(dāng)狀態(tài)機進入非法狀態(tài)并從中跳出,進入正常狀態(tài)所耗的時間十分短暫,通常只有2、3個時鐘周期,約十個ns,尚不足對系統(tǒng)的運行構(gòu)成損害;而CPU通過復(fù)位方式從非法運行方式中恢復(fù)過來,耗時達到十ms,這對于高速高可靠系統(tǒng)顯然是無法容忍,特別是本次設(shè)計的采集音頻信號,十ms的就會丟失很多的模擬數(shù)據(jù),這樣就會讓音頻信號的不完整,所以采用有限狀態(tài)機是一個很好的選擇。
(2)有限狀態(tài)機的設(shè)計
根據(jù)AD7892的時序圖設(shè)計的狀態(tài)轉(zhuǎn)換圖如圖4.10所示:
圖4.10 AD采樣的狀態(tài)轉(zhuǎn)移圖
(由于FPGA芯片時鐘定在20MHZ,故一個周期是0.05us,完成一次AD采樣,AD7982AN-1大約需要2us,40個時鐘周期)
ST1:對AD7892的初始化,此時conv<='1';cs<='1';rd<='1';lock<='0';wr_en='0';rd_en='0'
ST2:啟動AD7892輸入端,使采樣保持器保持開始轉(zhuǎn)換,此時conv<='0';cs<='1';rd<='1';lock<='0';wr_en='0';rd_en='0'
ST3:開始進行模數(shù)轉(zhuǎn)換,此時conv<='1';cs<='1';rd<='1';lock<='0';wr_en='0';rd_en='0';
ST4:采樣周期等待,等待EOC跳變低電平,此時conv<='1';cs<='1';rd<='1';lock<='0';wr_en='0';rd_en='0';
ST5:判斷EOC是否跳變高電平,若跳變,則開始讀數(shù)據(jù),此時conv<='1';cs<='1';rd<='1';lock<='0';wr_en='0';rd_en='0'
ST6:鎖存信號有效,鎖存轉(zhuǎn)換后的數(shù)據(jù)到12位并行輸出口,F(xiàn)IFO的寫信號有效,此時conv<='1';cs<='0';rd<='0';lock<='1';wr_en='1';rd_en='0'
ST7:從FIFO中讀出寫入的數(shù)據(jù),此時conv<='1';cs<='1';rd<='1';lock<='0';wr_en='0';rd_en='1'
ST8:等待狀態(tài),準備下次的采樣,此時conv<='1';cs<='1';rd<='1';lock<='0';wr_en='0';rd_en='0'
程序的主體如下:
com1:process(current_state,eoc)
begin
case current_state is
when st1 => next_state <= st2;
when st2 => next_state <= st3;
when st3 => next_state <= st4;
when st4 => if (eoc='1') then next_state <= st4;
else next_state <= st5;
end if;
when st5 => if (eoc='0') then next_state <= st5;
else next_state <=st6;
end if;
when st6 => next_state <= st7;
when st7 => next_state <= st8;
when st8 => next_state <= st1;
when others => next_state<=st1;
end case;
end process com1;
com2:process(current_state)
begin
case current_state is
when st1 => conv<='1';cs<='1';rd<='1';lock<='0';wr_en<='0';rd_en<='0';
when st2 => conv<='0';cs<='1';rd<='1';lock<='0';wr_en<='0';rd_en<='0';
when st3 => conv<='1';cs<='1';rd<='1';lock<='0';wr_en<='0';rd_en<='0';
when st4 => conv<='1';cs<='1';rd<='1';lock<='0';wr_en<='0';rd_en<='0';
when st5 =>
收藏
編號:2689627
類型:共享資源
大?。?span id="kywiwiy4em" class="font-tahoma">726.23KB
格式:ZIP
上傳時間:2019-11-28
5
積分
- 關(guān) 鍵 詞:
-
基于
fpga
通道
采樣系統(tǒng)
設(shè)計
資料
- 資源描述:
-
基于FPGA多通道采樣系統(tǒng)設(shè)計資料,基于,fpga,通道,采樣系統(tǒng),設(shè)計,資料
展開閱讀全文
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請勿作他用。