




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
本文格式為Word版,下載可任意編輯——多路信號測量電路的設計畢業(yè)設計
多路信號測量電路的設計
院系:機電與自動化學院專業(yè)班:電氣工程及其自動化姓名:學號:指導教師:
2023年5月
The
多路信號測量電路的設計DesignofMultiplexSignalMeasuring
Circuit
摘要
信號采集是信號和控制器之間樞紐,采集信號質量的高低,速度的快慢將嚴重影響到控制質量。然而,自然中的信號各種各樣,環(huán)境繁雜,并且控制器對信號的要求變各不一致,這些都有使得信號采集一直以來都是技術難點。
基于單片機和DSP設計的數據采集系統都有一定的不足。單片機制時鐘頻率低,各種功能都要靠軟件的運行來實現,軟件運行時間在整個采樣時間中占很大的比例,效率低,難以適應高速數據采集系統的要求。DSP的運算速度快,擅優(yōu)點理密集的乘加運算,但很難完成外圍的繁雜硬件規(guī)律控制。而FPGA卻有單片機和DSP無法比較的優(yōu)勢。本文拭圖設計一種多路的基于FPGA的信號采集系統。與傳統的數據采集系統以單片機或DSP作為控制器相比,FPGA具有高集中成度、高時鐘頻率、時序控制確切、編程靈活等眾多優(yōu)點,特別在并行信號處理能力方面比DSP更具有優(yōu)勢。在信號處理領域,經常需要對從路信號進行采集和實時處理,這也是本文的目標。
4.4電源模塊27第五章軟件的設計與實現285.1VHDL編程285.2開發(fā)應用程序285.3QuartusⅡ編譯335.4編譯鏈接程序345.5編程下載345.6FIFO在系統中的作用35第六章終止語37致謝38考文獻39
IV
緒論
常用數據采集方案是以微處理處理為核心控制多數據采集系統是計算機測控系統中不可或缺的組成部分,是影響測控系統個通道的信號采集、預處理、存儲和傳輸,即用軟件實現數據的采集,這在一定的程度上局限了數據采集的速度、效率及時序的確切控制。20世紀80年代起步的FPGA(FieldProgrammableGateArray),現場可編程門羅列技術近年來發(fā)展十分迅速,并廣泛應用于通信、自動控制、儀器儀表、信息處理等諸多領域?,F在的FPGA器件具有高集中成度、高時鐘頻率、時序控制確切、編程靈活等明顯優(yōu)于普通微處理器的特點,因此系統假使采用FPGA為核心控制ADC和數據傳輸,這樣可達到預期要求,并簡化外圍電路,降低設計風險,縮短開發(fā)周期。
FPGA卻有單片機和DSP無法比較的優(yōu)勢。本文提出了運用VHDL語言,以硬件的方式通過對AD轉換芯片進行時序控制,并同時實現相關順序的多路開關切換,最終實現高速多路采樣,采樣的結果保存在FIFO中供上位機進行調用。通過FPGA不僅完成了系統中全部數字電路部分的設計,并且使系統具有了較高的可適應性、可擴展性和可調試性。
在高速多路數據采集系統中,尋常采用單片機或數字信號處理器DSP作為微控制器,控制模數轉換器ADC及其他外圍設備的工作。但是基于單片機或DSP的高速多路數據采集系統都有一定的不足。由于單片機運行的時鐘頻率較低,并且單片機是基于順序語言的,各種功能都要靠軟件的運行來實現,因此隨著程序量的增加,假使程序的頑強性不好,會出現“程序跑飛〞和“復位〞現象。DSP的運算速度快,處理繁雜的乘加運算有一定的優(yōu)勢,但是很難完成外圍設備的繁雜硬件規(guī)律控制。因而單片機或DSP很難滿足高速多路數據采集系統對實時性和同步性的要求。
現場可編程門陣列(FPGA)是在PAL、GAL、EPLD等可編程器件的基礎上進一步發(fā)展起來的。FPGA時鐘頻率高,內部延時小,運行速度快,全部控制規(guī)律由硬件完成。它本身集采樣控制、處理、緩存、傳輸控制、通信于一個芯片內,編程配置靈活、開發(fā)周期短、系統簡單,具有高集成度、體積小、低功耗、I/O端口多、在系統編程等優(yōu)點。在高速多路數據采集系統中,FPGA可以戰(zhàn)勝上述單片機或DSP的不足之處,滿足系統對實時性和同步性的要求。
1
本數據采集系統是基于FPGA技術設計的多路模擬量、數字量采集與處理系統。FPGA的I/O端口多,且可以自由編程支配、定義其功能,再配以VHDL語言進行軟件設計;FPGA的最大優(yōu)點是可在線編程,基于FPGA設計的數據采集器可以便利地進行遠程功能擴展,可以適應不同應用場合的需要。
國內外學者在利用FPGA實現信號處理算法方面做了大量的工作,并取得了良好的效益。我國的FPGA技術起步相對較晚,但進入21世紀后,發(fā)展十分迅速。目前不少大學及研究所都使用FPGA芯片設計開發(fā)具有自主知識產權的IP核?;贔PGA的研究將會是繼單片機后的又一個巨大產業(yè),自然以FPGA作為處理器也將會有廣闊的前景和重要意義。所以借做多路數據采集器的系統設計的機遇,選擇FPGA作為控制器,并借此機遇來系統的學習FPGA。
2
第一章信號與模數轉換
1.1如何理解信號
什么是信號?“信號〞一詞在人們的日常生活和社會活動中并不陌生,例如時鐘報時、汽車喇叭的聲音、交織路口的紅綠燈、戰(zhàn)場上的信號彈、電子計算機內部以及它和外圍設備之間聯絡的電信號等,都是人們熟悉的信號。但是,要嚴格地給信號下定義,必需搞清它和信息、消息之間的聯系。
我們生活在信息時代,信息對每個人來說都具有重要的意義。信息是指人類社會和自然界中需要傳送、交換、存儲和提取的抽象內容。首先,信息具有客觀性,它存在于一切事物之中,事物的一切變化和運動都伴隨著信息的交換和傳送。同時,信息具有抽象性,只有通過一定的形式才能把它表現出來。
由于信息的抽象性,為了交換和傳送,必需通過一定的表現形式將它表示出來。人們把表示信息的語言、文字、圖像、數據等稱為消息,而信息是消息之中賦予人們新知識與新概念的內容??梢姡畔⑹窍⒌膬热?,而且是預先不知道的內容。尋常,人們說:“這張報紙信息量大〞或“那個消息不含一點信息〞就表達了消息和信息之間的關系。
一般狀況下,消息不便于傳送和交換,往往需要借助于某種便于傳送和交換的物理量作為運載手段,我們把聲、光、電等運載消息的物理量稱為信號,它們是時間或空間的函數,所攜帶的消息則表達在它們的變化之中。在作為信號的眾多物理量中,電是應用最廣泛的物理量,由于它簡單產生、傳輸和控制,也簡單實現與其它物理量的相互轉換。因此,我們尋常所指的信號主要是電信號。
信息、消息和信號三者之間的關系可以用下面的例子形象地給以說明:甲通過電話告訴了乙一件乙事先不知道的事情,我們說乙得到了信息,它是客觀存在的,但是它是乙從甲的語言這一表現形式中得到的,這里,語言是甲傳遞給乙的消息,而電話傳
3
1.2信號采集
信號采集,具體地說,就是把傳感器輸出的模擬或數字信號轉換成計算機可以識別的數字,由計算機接口采集成為內存中的數據,按各種需要處理成相應的數據結果,供傳送、顯示、打印輸出,以實現對自然界變量的監(jiān)測。與此同時,將計算機得到的數據進行顯示或打印,以便實現對某些物理量的監(jiān)視,其中一部分數據還將被控制生產過程中的計算機控制系統用來控制某些物理量。信息測量的范圍很廣泛,它已滲透到了地質、醫(yī)藥器械、雷達、通訊、遙感遙測等各個領域,為我們更好的獲取信息提供了良好的基礎。
另外,在評估一個信號源的質量時,也可以通過數據采集的手段將信號采集存入計算機,再通過各種處理方式來測量評價該信號源的好壞。這時,該信號測量系統就類似一臺測試儀器。信號測量系統的性能好壞,主要取決于數據采集時的精度和速度。精度是通過有效位數來反映的,有效位數越高,要求系統的噪聲就越低。速度是通過采樣率[2]來反映的,速度太高,傳統的TTL規(guī)律往往不能滿足需求,一般高速采集芯片的輸出規(guī)律都為ECL規(guī)律。這樣相應地增加了功耗。所以,在高速數據采集芯片的設計上是用大功耗來換取高速度,同時也減小了規(guī)律擺幅。
1.3典型高速數據采集的特點和發(fā)展趨勢
典型數據采集系統的構成是由A/D+DSP+FPGA(CPLD)+D/A。其中A/D(模數轉換器)完成把模擬信號轉化為數字信號,DSP(數字信號處理器)用來對A/D采樣后的數據進行處理,而FPGA(現場可編程門陣列)或CPLD(繁雜可編程規(guī)律器件)是用來對整個系統進行控制,而D/A(數模轉換器)是用來將輸出的數字信號轉化為模擬信號從而來驅動外部設備。當采樣頻率很高時,A/D采樣后的數據量很大,DSP來不及對采樣后的數據進行處理,所以此時一般在A/D和DSP之間使用FIFO(FirstInFirstOut)或者雙口RAM來對采集后的數據進行緩存。假使數據量特別大,有時還要使用外加的SDRAM(同步動態(tài)存儲器)來對采集后的數據作以保存。同時,采集系統有時需要與外界進行數據交換,所以需要設置一些對外接口,譬如,采集卡有時需要與計算機進行數據交換,就可以在采集
4
卡上設計一些PCI、ISA、USB、串口或并行接口等。
采集卡[3]需要時鐘作為基準,所以應當具備時鐘電路。當然,還必需提供采集卡工作的必要電源,所以也應當具有電源電路。當系統的工作頻率很高時,在低頻時不大明顯的信號完整性和電磁兼容性問題就會突出地表現出來。所以,此時對PCB的布局和布線應相當嚴格,通過適當的布局和布線,可以將影響信號完整性的因素降到很低的水平。
現在的A/D的采樣頻率可達GHz的量級,GEFanuc智能平臺近日發(fā)布了ICS-8551加固型ADCPMC/XMC模塊,ICS-8551專為嚴苛環(huán)境設計,提供雙或四通道操作,四通道采樣頻率1.5GHz,雙通道采樣頻率3GHz,適用于光譜監(jiān)測、信號智能、戰(zhàn)場通訊、雷達等方面的軟件無線電(SDR)應用。對于采樣頻率較低的A/D,其有效位數可達16位以上。數字信號處理器DSP的時鐘頻率可達600MHz以上,每秒鐘能夠進行千萬次以上的乘加運算。FPGA的時鐘頻率也可達到100MHz以上,內部規(guī)律門數可達500萬以上。SDRAM的容量單片可達64MB,并且可以多片級聯,能夠滿足高速緩存的需要。D/A的位數可達18位以上,轉換時間可以達到小于1微妙。現在的一些總線,譬如PCI總線,傳輸速率可達132Mbyte/s;USB總線,傳輸速率可達480Mbit/s,可以滿足數據采集卡與其它設備的高速數據傳輸。所有這些條件,都使數據采集向寬帶、高速方向發(fā)展成為現實。
1.4模數轉換(A/D)
隨著數字電子技術的迅速發(fā)展,各種數字設備,特別是數字電子計算機的應用日益廣泛,幾乎滲透到國民經濟的所有領域之中。數字計算機只能夠對數字信號進行處理,處理的結果還是數字量,它在用于生產過程自動控制的時候,所要處理的變量往往是連續(xù)變化的物理量,如溫度、壓力、速度等都是模擬量,這些非電子信號的模擬量先要經過傳感器變成電壓或者電流信號,然后再轉換成數字量,才能夠送往計算機進行處理。
模擬量轉換成數字量的過程被稱為模數轉換,簡稱A/D(AnalogtoDigital)轉換;完成模數轉換的電路被稱為A/D轉換器,簡稱ADC(AnalogtoDigitalConverter)。數字量轉換成模擬量的過程稱為數模轉換,簡稱D/A(DigitaltoAnalog)
5
轉換;完成數模轉換的電路稱為D/A轉換器,簡稱DAC(DigitaltoConverter)。帶有模數和數模轉換電路的測控系統大致可用圖1.1所示的框圖表示。
圖1-1典型數字系統控制框圖
圖中模擬信號由傳感器轉換為電信號,經放大送入AD轉換器轉換為數字量,由數字電路進行處理,再由DA轉換器還原為模擬量,去驅動執(zhí)行部件。為了保證數據處理結果的確鑿性,AD轉換器和DA轉換器必需有足夠的轉換精度。同時,為了適應快速過程的控制和檢測的需要,AD轉換器和DA轉換器還必需有足夠快的轉換速度。因此,轉換精度和轉換速度乃是衡量AD轉換器和DA轉換器性能優(yōu)劣的主要標志。
A/D轉換器的主要性能參數:
(1)轉換速率(ConversionRate):指完成一次從模擬到數字的ADC轉換過程所需時間的倒數。積分型ADC的轉換時間是毫秒級屬低速ADC,逐次比較型ADC是微秒級屬中速ADC,全并行/串并行型ADC可達到納秒級。為了保證轉換的正確完成,采樣速率(SampleRate)必需小于或等于轉換速率。常用單位是KS/S和MS/S,表示每秒采樣千/百萬次(Kilo/MillionSamplesperSecond)。
(2)分辯率(Resolution):指數字量變化一個最小量時模擬信號的變化量。分辯率又稱精度,尋常以數字信號的位數來表示。
(3)量化誤差(QuantizingError):由于ADC的有限分辯率而引起的誤差,即有限分辯率AD的階梯狀轉移特性曲線與無限分辯率ADC(理想ADC)的轉移特性曲線(直線)之間的最大偏差。尋常是一個或半個最小數字量的模擬變化量,表示為1LSB、1/2LSB。
6
(4)偏移誤差(OffsetError):輸入信號為零時輸出信號不為零的值,可外接電位器調至最小。
(5)滿刻度誤差(FullScaleError):滿度輸出時對應的輸入信號與理想輸入信號值之差。
(6)線性度(Linearity):實際轉換器的轉移函數與理想直線的最大偏移,不包括以上三種誤差。
7
其次章FPGA設計
2.1FPGA技術/簡介
可編和規(guī)律羅列器件是可能由用戶進行編程以實現所需規(guī)律功能的數字集成電路,利用其內部的規(guī)律結構實現任何布爾表達式,寄放器函數。和一般的ASIC電路相比,可編程規(guī)律器件具有設計周期短,修改便利的優(yōu)點.
現場可編程門羅列FPGA是八十年代中期出現的新型高密度可編程規(guī)律器件,它是在PAL、GAL、EPLD等可編程器件的基礎上進一步發(fā)展的產物。通過編程可以立刻把一個通用的FPGA芯片配置成用戶需要的硬件數字電路,因而大大加快電子產品的研發(fā)周期,降低研發(fā)成本,縮短產品上市時間。FPGA具有高密度(一個器件內部可用規(guī)律門可達數萬門),運行速度快(管腳間的延時小,公幾個ns)的特點。用它來設計數字電路可以簡化系統設計,縮小數據規(guī)模,提高系統的穩(wěn)定性。
FPGA兼有串、并行工作方式和高集成度和高可靠性等明顯的特點,其時鐘延遲可達納秒級,同時,在基于芯片的設計中可以減少芯片數量,縮小系統體積,降低能源消耗,提高系統的性能指標和可靠性。正是由于FPGA具有這些優(yōu)點FPGA在超高速應用領域和實時測控方面有十分廣闊的應用前景。在高可靠應用領域,假使設計得當,將不會存在類似于MCU的復位不可靠和PC可能跑飛等問題。FPGA的高可靠性還表現在,幾乎可將整個系統下載于同一芯片中,實現所謂片上系統,從而大大縮小了體積。與AMU設計相比,FPGA顯著的優(yōu)勢是開發(fā)周期短,投資風險小、產品上市速度快,市場適應能力強和硬件升級旋繞碩士學位論文余地大,而且當產品定型和產量擴大后,可將在生產中達到充分檢驗的VHDL設計迅速實現ASIC投產。
隨著大規(guī)模現場可編程規(guī)律器件的發(fā)展,系統設計進入“片上可編程系統〞(SOPC)的新紀元;芯片朝著高密度、低壓、低功耗方向挺進:在SOC芯片上可以將微處理器、數字信號處理器、存儲器、規(guī)律電路、模擬電路集成在一個芯片上。而假使將可編程規(guī)律電路IP核集成到SOC芯片上則會大大提高SOC芯片
8
的靈活性與有效性,并且縮短了SOC芯片的設計周期。因此國際各大公司都在積極擴展其IP庫,以優(yōu)化的資源更好的滿足用戶的需求,擴大市場。
由此可見,FPGA不僅可以解決電子系統小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價格不斷降低,這使得FPGA占有越來越多的市場,特別是對小批量、多品種的產品需求,使FPGA成為首選。FPGA普及的另一重要原因是IP(知識產權)越來越被高度重視,帶有IP內核的功能塊在ASIC設計平臺上的應用日益廣泛。越來越多的設計人員,采用設計重用,將系統設計模塊化,為設計帶來了快捷和便利。并可以使每個設計人員充分利用軟件代碼,提高開發(fā)效率,減少上市時間,降低研發(fā)費用,縮短研發(fā)周期,降低風險。
2.2FPGA的特點及工作原理
2.2.1FPGA的特點
FPGA是由存放在片內RAM中的程序來設置其工作狀態(tài)的,因此,工作時需要對片內的RAM進行編程。用戶可以根據不同的配置模式,采用不同的編程方式。
加電時,FPGA芯片將EPROM中數據讀入片內編程RAM中,配置完成后,FPGA進入工作狀態(tài)。掉電后,FPGA恢復成白片,內部規(guī)律關系消失,因此,FPGA能夠反復使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當需要修改FPGA功能時,只需換一片EPROM即可。這樣,同一片FPGA,不同的編程數據,可以產生不同的電路功能。因此,FPGA的使用十分靈活
(1)采用FPGA設計ASIC電路,用戶不需要投片生產,就能得到合用的芯片。
(2)FPGA可做其它全定制或半定制ASIC電路的中試樣片。(3)FPGA內部有豐富的觸發(fā)器和I/O引腳。
(4)FPGA是ASIC電路中設計周期最短、開發(fā)費用最低、風險最小的器
9
件。之一。
(5)FPGA采用高速CHMOS工藝,功耗低,可以與CMOS、TTL電平兼容。2.2.2FPGA的工作原理
FPGA采用了規(guī)律單元陣列LCA(LogicCellArray)這樣一個概念,內部包括可配置規(guī)律模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內部連線(Interconnect)三個部分。現場可編程門陣列(FPGA)是可編程器件。與傳統規(guī)律電路和門陣列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的結構,FPGA利用小型查找表(16×1RAM)來實現組合規(guī)律,每個查找表連接到一個D觸發(fā)器的輸入端,觸發(fā)器再來驅動其他規(guī)律電路或驅動I/O,由此構成了既可實現組合規(guī)律功能又可實現時序規(guī)律功能的基本規(guī)律單元模塊,這些模塊間利用金屬連線相互連接或連接到I/O模塊。FPGA的規(guī)律是通過向內部靜態(tài)存儲單元加載編程數據來實現的,存儲在存儲器單元中的值決定了規(guī)律單元的規(guī)律功能以及各模塊之間或模塊與I/O間的聯接方式,并最終決定了FPGA所能實現的功能,FPGA允許無限次的編程
2.3配置芯片
Altera的配置器件可以分為以下3種:
(1)加強型的配置器件:EPC16、EPC8、EPC4。(2)普通配置器件:EPC2、EPC1、EPC1441。
(3)AS串行配置器件:EPCS64、EPCS16、EPCS4、EPCS1。加強型的配置器件可以支持對大容量FPGA的單片配置,它們可以由JTAG接口進行在系統編程(ISP),而且可以支持FPP快速配置方式。普通配置器件容量相對較小,其中只有EPC2可以重復編程。要支持大容量FPGA的配置,可以將多片級聯起來。AS串行配置芯片是一種非易失性的、基于Flash存儲器的器件,專門為Altera的StratixII、Cyclone和CycloneII系列FPGA而設計。用戶可以使用Altera的ByteBlasterII下載電纜來將程序加載到配置芯片中。Cyclone系列專用配置器件,即專門用于配置Cyclone器件的EEPROM,可以用ByteblasterII在線改寫,電壓為3.3V。如下表2-1所示:
10
表2-1Cyclone專用配置器件
2.4FPGA的常用開發(fā)工具
開發(fā)Altera公司的可編程規(guī)律器件有兩種軟件,QuartusII和MAX+PLUSII。本設計采用QuartusII開發(fā)軟件,其提供了一種與結構無關的全集成化設計環(huán)境,使設計者能對Altera的各種產品系列便利地進行設計輸入、快速處理和器件編程。QuartusII開發(fā)系統具有強大的處理能力和高度的靈活性,它的優(yōu)點主要表現在以下方面:
(1)與結構無關:QuartusII系統的編譯程序,支持Altera全部系列的PLD產品,提供與結構無關的設計開發(fā)環(huán)境,具有強大的規(guī)律綜合與優(yōu)化功能。
(2)多平臺:QuartusII可在基于PC機的WINDOWS或WINDOWSNT環(huán)境下以及多種工作站的XWINDOWS環(huán)境下運行。
(3)全集成化:QuartusII的設計輸入、規(guī)律綜合、布局布線、仿真校驗和編程下載等功能都全部集成在統一的開發(fā)環(huán)境下,可以加快動態(tài)開發(fā)和調試,縮短開發(fā)周期。并且在QuartusII軟件中還集成了SignalTapII規(guī)律分析儀,在系統調試過程中可以實時的監(jiān)控FPGA中各觀測信號的變化(包括虛擬引腳上的信號),從而給調試過程帶來了極大的便利。
(4)硬件描述語言(HDL):QuartusII支持各種HDL輸入選項,包括VHDL,VerilogHDL和Altera的硬件描述語言AHDL。
(5)豐富的設計庫:QuartusII提供豐富的庫單元供設計者調用,其中包括各類常用的基本數字器件,以及參數化的宏單元模塊(MegaFunction)。并且可以通過加載Altera的MegaCore軟件包來在QuartusII中加載IPCore資源,從而引入像FFT、PCI、FIR等這樣的IP軟核。這些模塊都可以通過QuartusII中的MegaWizard來加以編程和設計,根據我們的具體需要來實現其相應的功能。
11
調用這些庫單元進行設計,可以大大減輕設計工作量,設計周期成倍縮短。
(6)開放的界面:QuartusII提供標準的接口,可以與其它第三方工業(yè)標準的EDA軟件協同使用。設計者可以使用其它的EDA軟件工具進行設計輸入,再利用QuartusII進行編譯處理,并使用其它EDA工具進行器件和板級仿真。
2.5FPGA配置模式
FPGA有多種配置模式:并行主模式為一片FPGA加一片EPROM的方式;主從模式可以支持一片PROM編程多片FPGA;串行模式可以采用串行PROM編程FPGA;外設模式可以將FPGA作為微處理器的外設,由微處理器對其編程。
如何實現快速的時序收斂、降低功耗和成本、優(yōu)化時鐘管理并降低FPGA與PCB并行設計的繁雜性等問題,一直是采用FPGA的系統設計工程師需要考慮的關鍵問題。如今,隨著FPGA向更高密度、更大容量、更低功耗和集成更多IP的方向發(fā)展,系統設計工程師在從這些優(yōu)異性能獲益的同時,不得不面對由于FPGA前所未有的性能和能力水平而帶來的新的設計挑戰(zhàn)。
FPGA廠商Xilinx最近推出的Virtex-5系列采用65nm工藝,可提供高達33萬個規(guī)律單元、1,200個I/O和大量硬IP塊。超大容量和密度使繁雜的布線變得更加不可預計,由此帶來更嚴重的時序收斂問題。此外,針對不同應用而集成的更多數量的規(guī)律功能、DSP、嵌入式處理和接口模塊,也讓時鐘管理和電壓分派問題變得更加困難。
FPGA廠商、EDA工具供應商正在通力合作解決65nmFPGA獨特的設計挑戰(zhàn)。不久以前,Synplicity與Xilinx宣布成立超大容量時序收斂聯合工作小組,旨在最大程度地幫助系統設計工程師以更快、更高效的方式應用65nmFPGA器件。設計軟件供應商Magma推出的綜合工具BlastFPGA能幫助建立優(yōu)化的布局,加快時序的收斂
最近FPGA的配置方式已經多元化!
2.6FPGA開發(fā)流程
FPGA開發(fā)基本流程包括:設計輸入、設計仿真、設計綜合、布局布線,它們的連接關系如圖1所示。圖1FPGA開發(fā)流程圖設計綜合是整個FPGA設計流程中一個重要的步驟,它將HDL代碼生成用于布局布線的網表和相應的約束。而且
12
隨著新一代FPGA芯片頻率和密度的增長,時序收斂問題越來越嚴重,綜合已經成為整個設計成敗的關鍵。尋常芯片供應商的FPGA軟件中都包含綜合功能,但它相對簡單,不能適應新一代FPGA芯片的發(fā)展,需要更加專業(yè)的綜合工具
FPGA開發(fā)基本流程包括:設計輸入、設計仿真、設計綜合、布局布線,它們的連接關系如圖2-2所示。
圖2-2FPGA開發(fā)流程圖
設計綜合是整個FPGA設計流程中一個重要的步驟,它將HDL代碼生成用于布局布線的網表和相應的約束。而且隨著新一代FPGA芯片頻率和密度的增長,時序收斂問題越來越嚴重,綜合已經成為整個設計成敗的關鍵。尋常芯片供應商的FPGA軟件中都包含綜合功能,但它相對簡單,不能適應新一代FPGA芯片的發(fā)展,需要更加專業(yè)的綜合工具來優(yōu)化設計,PrecisionRTL綜合就是其中之一。
13
第三章系統的組成
3.1系統設計方案
3.1.1系統分析
基于FPGA的多路信號采集器系統涉及的內容包括,信號的采集,數據的傳輸,數據的處理和存儲,實時信息的顯示。如前所述系統的工作流程為:首先要對多通道模擬信號進行模數轉換,然后對其進行緩存處理和必要的轉換,最終將處理后的結果傳送到PC機。這需要結合各個模擬傳感器輸出的信號的特點和系統各項指標選擇合理的調理電路,A/D轉換,信號處理器和顯示模塊等。前端模擬部分前人已做了大量的研發(fā)工作,技術比較成熟,方案比較固定,本節(jié)重點針對數字部分的方案進行探討。
(1)信號處理器的選擇
在高速多路數據采集系統中,尋常采用單片機或數字信號處理器DSP作為微控制器,控制模數轉換器ADC及其他外圍設備的工作。但是基于單片機或DSP的高速多路數據采集系統都有一定的不足。由于單片機運行的時鐘頻率較低,并且單片機是基于順序語言的,各種功能都要靠軟件的運行來實現,因此隨著程序量的增加,假使程序的頑強性不好,會出現“程序跑飛〞和“復位〞現象。DSP的運算速度快,處理繁雜的乘加運算有一定的優(yōu)勢,但是很難完成外圍設備的繁雜硬件規(guī)律控制。因而單片機或DSP很難滿足高速多路數據采集系統對實時性和同步性的要求
現場可編程門陣列(FPGA)是在PAL、GAL、EPLD等可編程器件的基礎上進一步發(fā)展起來的。FPGA時鐘頻率高,內部延時小,運行速度快,全部控制規(guī)律由硬件完成。它本身集采樣控制、處理、緩存、傳輸控制、通信于一個芯片內,編程配置靈活、開發(fā)周期短、系統簡單,具有高集成度、體積小、低功耗、I/O端口多、在系統編程等優(yōu)點。在高速多路數據采集系統中,FPGA可以戰(zhàn)勝上述單片機或DSP的不足之處,滿足系統對實時性和同步性的要求。
本數據采集系統是基于FPGA技術設計的多路模擬量、數字量采集與處理系統。FPGA的I/O端口多,且可以自由編程支配、定義其功能,再配以VHDL語
14
言進行軟件設計;FPGA的最大優(yōu)點是可在線編程,基于FPGA設計的數據采集器可以便利地進行遠程功能擴展,可以適應不同應用場合的需要。
(2)傳輸總線接口的選擇
傳統的數據采集系統的數據傳輸接口在低速時常采用標準串行口或并行口,高速時一般彩PCI總線接口。它們各自的特點如下:準串行口或并行口應用開發(fā)比較簡單,即硬件電路和編程簡單但是數據傳輸速率較低;PCI總線數據傳輸速率較高,可以達到1GPS,但是硬件設計和驅動開發(fā)難度較大,PCI卡的尺寸面積限制了I/O接口的擴展,不能在筆記本電腦或便攜式PC上安裝,而且驅動程序使用不便利;目前流行的USB2.0傳輸協議傳輸速率可達480Mbps,而且接口簡單,便攜,可熱插拔的優(yōu)點而用硬件描棕語言開發(fā)的難度太大。
由于設計要求的數據速度不高,考慮到編程的快捷和連接電路的簡單,及其系統的穩(wěn)定性和經濟。本設計系統彩通用串行通信接口RS-232。
3.2系統設計方案
該多路信號測量系統主要由模擬部分,數字部分和接口部分三大板塊組成,其中模擬部分主要包含模擬信號預處理模塊和模數轉換模塊;數字部分除時鐘產生電路外,其余部分完全在FPGA中設計完成包含8位AD轉換芯片ADC0809。首先以硬件的方式通過對AD轉換芯片進行時序控制并同時實現相關順序的多路開關切換;然后實現高速多路采樣;最終采樣的結果保存在FIFO中供上位機進行調用,系統結構如下圖3-1所示:
圖3-1數據采集結構框圖
本系統由FPGA、ADC0809芯片等組合而成。FPGA(現場可編程門陣列)是可編程規(guī)律器件;ADC0809為單極性輸入,8位轉換精度逐次逼進式A/D轉換器,
15
其采樣速度為每次轉換約100μs,采用雙排28引腳封裝,是自動數據采集、程控增益放大等重要技術領域的常用器件,其實際使用性能的優(yōu)劣對系統的嚴謹和可靠性重要影響。
3.3各部件在系統中的作用
在本系統中,各個部件都有其獨特的作用。簡述如下:
(1)FPGA在系統中主要是將程序下載到其里面,加電時,FPGA芯片將EPROM中數據讀入片內編程RAM中,配置完成后,FPGA進入工作狀態(tài)。掉電后,FPGA恢復成白片,內部規(guī)律關系消失,因此,FPGA能夠反復使用。
(2)ADC0809芯片的作用是將輸入的模擬信號轉換成數字信號,內部具有自動采樣保持、可按比例量程校準轉換范圍、抗噪聲干擾功能。
16
第四章硬件的設計及實現
4.1硬件的設計思路
本系統的設計思路是:首先將模擬信號輸入給A/D轉換器ADCO8O9轉換芯片進行時序控制并同時實現對相關順序的多路開關的切換;然后實現高速多路采樣;最終采樣的結果保存在FIFO中供上位機進行調用數據[5]。由此可以看出FPGA在本系統中,起到了一個傳輸橋梁的作用。
使用QuartusⅡ軟件選取Cyclone系列,并對SOPCBuilder生成的HDL設計文件進行布局布線;再使用QuartusⅡ選取EP2C5T114C8并對系統上的各種I/O分派管腳,另外還要根據要求進行硬件編譯選項或時序約束的設置。在編譯的過程中,QuartusⅡ從VHDL源文件綜合生成一個適合目標器件的網表。最終,生成配置文件。
最終,使用QuartusⅡ編程器和Altera下載電纜,將配置文件下載到開發(fā)板上。當校驗完當前硬件設計后,還可再次將新的配置下載到開發(fā)板上的非易失存儲器里。
17
4.2硬件總體設計
本硬件電路的主要芯片有:模數轉換芯片ADC0809、FPGA。其硬件電路如下圖所示
圖4-1FPGA控制的ADC0809采樣電路
圖4-1中,輸入部分:IN0-IN7為8條模擬量輸入通道。ADC0809對輸入模擬量要求:信號單極性,電壓范圍是0-5V,若信號太小,必需進行放大;輸入的模擬量在轉換過程中應當保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路;中間部分:主要是FPGA芯片,實現對ADC0809的采樣控制;輸出部分:輸出的8位二進制數字信號由兩種方式顯示,一種方式是由8個發(fā)光二極管組成,每一個二極管代表一位二進制數,當二極管處于發(fā)光狀態(tài)即“亮〞時,表示輸出二進制“1〞;否則輸出“0〞。簡言之,“亮〞—“1〞,“滅〞—“0〞;另一種輸出方式是由兩位數碼管組成的,每一位數碼管以十六進制(即0--F)顯示二進制輸出的四位。
18
4.2硬件組成
本系統由FPGA、ADC0809芯片連接和管腳分派等組合而成。其中,FPGA是核心的功能模塊,承載了全部的數字電路部分。FPGA完成的功能可以主要描述為以下幾點:
(1)PIO控制器模擬接口,完成與外設的連接。
(2)通過內部PLL(鎖相環(huán)),將外部信號源時鐘引入FPGA中,并做相應的倍頻處理。
(3)通過在其內部設計RAM,存儲ADC采集后的數據。并且根RAM的特點,來便利的進行數據轉發(fā)。
4.2.1FPGA的優(yōu)點(1)FPGA的優(yōu)點
第一,隨著VlSI(VeryLargeScaleIC,超大規(guī)模集成電路)工藝的不斷提高單一芯片內部可以容納上百萬個晶體管,FPGA芯片的規(guī)模也越來越大,其單片規(guī)律門數已達到上百萬門,它所能實現的功能也越來越強,同時也可以實現系統集成,即片上系統SOC。
其次,FPGA芯片在出廠之前都做過百分之百的測試,不需要設計人員承受投片風險和費用,設計人員只需在自己的試驗室里就可以通過相關的軟硬件環(huán)境來完成芯片的最終功能設計。所以,FPGA的資金投入小,節(jié)省了大量潛在的花費。
第三,用戶可以反復地編程、擦除、使用或者在外圍電路不動的狀況下用不同軟件就可實現不同的功能。所以,用FPGA試制樣片,能以最快的速度占領市場。FPGA軟件包中有各種輸入工具和仿真工具,及幅員設計工具和編程器等全線產品,電路設計人員在很短的時間內就可完成電路的輸入、編譯、優(yōu)化、仿真,直至最終芯片的制作。當電路有少量改動時,更能顯示出FPGA的優(yōu)勢。電路設計人員使用FPGA進行電路設計時,不需要具備專門的IC(集成電路)深層次的知識,FPGA軟件易學易用,可以使設計人員更能集中精力進行電路設計,快速將產品推向市場。
19
mV)。因此廣泛應用于模擬量和數字量的轉換電路。
(3)AD轉換芯片ADC0809的工作原理
ADC0809具有8種串行接口時序模式.這些模式是由I/OCLOCK周期來定義,圖4-6所示為ADC0809的時序圖。
圖4-6ADC0809的時序圖
①在IN0-IN7上可分別接上要測量轉換的8路模擬量信號。
②將ADDA-ADDC端給上代表選擇測量通道的代碼。如000(B)則代表通道0;001(B)代表通道1;111則代表通道7。
③將ALE由低電平置為高電平,從而將ADDA-ADDC送進的通道代碼鎖存,經譯碼后被選中的通道的模擬量送給內部轉換單元。
④給START一個正脈沖。當上升沿時,所有內部寄放器清零。下降沿時,開始進行A/D轉換;在轉換期間,START保持低電平。
⑤EOC為轉換終止信號。在上述的A/D轉換期間,可以對EOC進行不斷測量,當EOC為高電平日,說明轉換工作終止。否則,說明正在進行A/D轉換。⑥當A/D轉換終止后,將OE設置為1,這時D0-D7的數據便可以讀取了。OE=0,D0-D7輸出端為高阻態(tài),OE=1,D0-D7端輸出轉換的數據。
(4)ADC0809的工作方式
25
ADC0809在控制時產生START轉換啟動信號,ALE地址鎖存允許信號(高電平有效),在工作流程中,FPGA不斷讀入轉換終止信號EOC判斷AD0809轉換能不能終止。當EOC發(fā)出一個正脈沖時,表示A/D轉換終止,此時開啟輸出允許OE,開啟ADC0809的三態(tài)緩沖鎖存器將轉換好的8位二進制數輸入FPGA芯片中。通過查找表的要領將8位二進制數轉換成12位BCD碼。
4.3時鐘電路
系統的時鐘由外部晶振供給,同倍的各個時鐘信號則通過FPGA編程來實現,在這方面FPGA的分頻很有優(yōu)勢。如圖4-7所示,4M晶振工作電壓為5V,通過FPGA芯片的全局時鐘信號輸入端I0183口輸入到系統中。
圖4-7時鐘電路
26
4.4電源模塊
電源模塊一般以可插拔的形式給出。就原理上來說,它尋常也是個開關穩(wěn)壓器,所以它的效率也十分高,而且相對于普通開關穩(wěn)壓器,它的集成度更高,外圍只需要一個輸入電容和一個輸出電容即可工作(這一點于LDO類似),設計相當簡便,特別適合要求開發(fā)周期十分短的應用,特別是原型機的設計。由于電源模塊上集成了幾乎所有可以集成的東西,靈活性相對較差,價格也相對較高。圖3以TI的PT6943為例,描述了用電源模塊設計FPGA電源的典型電路。PT6943是TI的PT6940系列電源模塊的一種,輸入為4.5V至5.5V,它支持3.3V和1.5V兩路輸出,每路輸出的最大電流均為6A,它內部還集成了電壓順序控制,短路保護等功能。
圖4-8用電源模塊設計FPGA電源典型電路
27
第五章軟件的設計與實現
5.1VHDL編程
在用VHDL編程時,由于采取自頂向下的設計思想,所以思路明了明白。
根據系統要實現的功能,用一個總體模塊來實現,即需要幾個輸入又有幾個輸出。在這方面,由于一個完全的VHDL語言程序包括實體、結構體、配置、程序包和庫五個部分。其中,實體就用于描述系統和外部的接口;結構體用于描述設計系統的行為,系統的數據流和系統內部的結構;配置用于從庫中選取所需要設計單元來組成系統設計的不同版本;程序包主要用來存放各種設計模塊都能共享的數據類型、常量、和子程序等;庫主要用于存放已經編譯好的實體、機構體、程序包和配置。所以,先設計總體的實體,然后再細分,最終再把各個子模塊連接起來。
5.2開發(fā)應用程序
在構建硬件系統后,在此基礎上開發(fā)應用程序。根據ADC0809工作時序,就可以利用VHDL語言編寫ADC0809的單路AD轉換程序,其源程序如下。
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
useieee.std_logic_arith.all;
entityADC0809is
port(d:instd_logic_vector(7downto0);--ADC0809輸出的采樣數據
28
clk,eoc:instd_logic;--clk為系統時鐘,eoc為ADC0809轉換終止信號
clk1,start,ale,en:outstd_logic;--ADC0809控制信號
abc_in:instd_logic_vector(2downto0);--模擬選通信號
abc_out:outstd_logic_vector(2downto0);--ADC0809模擬信號選通信號
q:outstd_logic_vector(7downto0));--送至8個并排數碼管信號
endADC0809;
architecturebehavofADC0809is
typestatesis(st0,st1,st2,st3,st4,st5,st6);--定義各狀態(tài)的子類型
signalcurrent_state,next_state:states:=st0;
signalregl:std_logic_vector(7downto0);--中間數據寄放信號
signal:std_logic_vector(7downto0);begin
com:process(current_state,eoc)--規(guī)定各種狀態(tài)的轉換方式begin
casecurrent_stateis
29
whenst0=>next_statenext_statenext_statealealenext_statenext_statenext_state
(3)運行程序
在工程編譯調試之后,就可以運行程序了,以下為ADC0809采樣控制原理圖。
圖5-6ADC0809采樣控制原理圖
5.6FIFO在系統中的作用
FIFO(FirstInFirstOut)簡單說就是指先進先出。由于微電子技術的飛速發(fā)展,新一代FIFO芯片容量越來越大,體積越來越小,價格越來越低廉。作為一種新型大規(guī)模集成電路,FIFO芯片以其靈活、便利、高效的特性,逐漸在高速數據采集、高速數據處理、高速數據傳輸以及多機處理系統中得到越來越廣泛的應用。
在系統設計中,以增加數據傳輸率、處理大量數據流、匹配具有不同傳輸率的系統為目的而廣泛使用FIFO存儲器,從而提高了系統性能。FIFO存儲器是一個先入先出的雙口緩沖器,即第一個進入其內的數據第一個被移出,其中一個存儲器的輸入口,另一個口是存儲器的輸出口。對于單片FIFO來說,主要有兩種結構:觸發(fā)導向結構和零導向傳輸結構。觸發(fā)導向傳輸結構的FIFO是由寄放器陣列構成的,零導向傳輸結構的FIFO是由具有讀和寫地址指針的雙口RAM構成。
FIFO存儲器是系統的緩沖環(huán)節(jié),假使沒有FIFO存儲器,整個系統就不可能正常工作,它主要有幾方面的功能:
(1)對連續(xù)的數據流進行緩存,防止在進機和存儲操作時丟失數據;
35
(2)數據集中起來進行進機和存儲,可避免頻繁的總線操作,減輕CPU的負擔;
(3)允許系統進行DMA操作,提高數據的傳輸速度。這是至關重要的一點,假使不采用DMA操作,數據傳輸將達不到傳輸要求,而且大大增加CPU的負擔,無法同時完成數據的存儲工作。
FIFO存儲器[12]分為寫入專用區(qū)和讀取專用區(qū)。讀操作與寫操作可以異步進行,寫人區(qū)上寫入的數據依照寫入的順序從讀取端的區(qū)中讀出,類似于吸收寫人端與讀出端速度差的一種緩沖器。計算機的串口,一般也都具有FIFO緩沖器(不是單
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 遼寧省丹東市五校協作體2025屆高三12月考-化學試題(含答案)
- 初中數學第四章 三角形單元復習題2024-2025學年北師大版七年級數學下冊
- 2《合理利用網絡》表格式公開課一等獎創(chuàng)新教學設計-3
- 藏族民間舞蹈的文化特征
- 化工安全作業(yè)票培訓講座
- 臨時工勞務派遣合同模板
- 員工服務合同協議書
- 人防工程專業(yè)分包合同
- 2025耕地流轉合同范本
- 2025年勞動合同書范本
- 蜜雪冰城工商大學店開店方案設計
- 毛澤東詩詞賞析
- 《我國中小企業(yè)融資的現狀、問題及完善對策研究-S高科技公司為例》12000字(論文)
- 灼口綜合征護理
- 【碳足跡報告】山東金拓熱能科技有限公司產品碳足跡報告
- 小孩進入廠區(qū)安全免責協議書(2篇)
- 讀書分享讀書交流會《基督山伯爵》課件
- VTE評分量表解讀 課件2024.8
- 2023年12月英語六級真題及答案-第3套
- 《文化學概論》第三章-文化的起源及其發(fā)展-38
- 2024年四川省成都市中考地理+生物試卷真題(含答案解析)
評論
0/150
提交評論