




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 . . . 大學(xué)行健文理學(xué)院FPGA課程設(shè)計(jì)題目:數(shù)字溫度表的設(shè)計(jì) 學(xué) 部:電氣信息學(xué)部 專 業(yè): 電子科學(xué)與技術(shù) 班 級(jí):2012級(jí)1班 學(xué) 號(hào):1238340106 學(xué)生:黃東悟 指導(dǎo)教師:周柳娜 二一五 年 一 月30 / 35摘要:本文主要研究利用FPGA器件和MAXPLUS工具軟件設(shè)計(jì)數(shù)字溫度表的問題,本文介紹了一種基于FPGA的數(shù)字溫度表的設(shè)計(jì),給出了儀表的硬件結(jié)構(gòu),詳細(xì)介紹了用VHDL語(yǔ)言設(shè)計(jì)FPGA器件電路的方法。本課題在MAX+PLUS開發(fā)環(huán)境下,采用VHDL語(yǔ)言設(shè)計(jì)并實(shí)現(xiàn)了數(shù)字溫度表。設(shè)計(jì)采用VHDL的結(jié)構(gòu)描述風(fēng)格,依據(jù)功能將系統(tǒng)分為三個(gè)模塊,控制模塊、數(shù)據(jù)處理模塊和掃描
2、顯示模塊,通過(guò)波形仿真、下載芯片的測(cè)試,完成了溫度表的功能。由AD590與FPGA組成的測(cè)溫系統(tǒng)的硬件電路和軟件設(shè)計(jì)與提高測(cè)量精度的方法,通過(guò)對(duì)實(shí)際溫度的測(cè)量,本設(shè)計(jì)具有結(jié)構(gòu)簡(jiǎn)單、外圍電路少、抗干擾能力強(qiáng)、功耗小、可靠性高、速度快、反應(yīng)時(shí)間短等優(yōu)點(diǎn)。關(guān)鍵字:VHDL;FPGA;MAX+PLUS;數(shù)字溫度表Design and Emulation of the Digital ThermometerAbstract:This article main research the question using the FPGA components and the software tool MAX
3、PLUS.design digit thermometer's, this article introduced one kind design of digital thermometer's based on the FPGA, has given the hardware architecture of measuring appliances, introduced the method using the language VHDL design circuit of FPGA component in detail. Under the development en
4、vironment of MAX+PLUS this topic used the VHDL language design, and has realized the digital thermometer. The design take the structure description style of VHDL, based on the function the system consists of three modules, the control module, the data processing module and the scanning display modul
5、e, via the profile simulation, the downloading chip's test, has completed thermometer's function. The temperature measurement system's hardware circuit which consist of AD590 and FPGA and the method that enhancement measuring accuracy, through the testing of the practical temperature, fo
6、und this design has the merits simple structure, few outside-circuit, strong ability anti interrupter ,small power loss, high reliability, high speed, short time of reaction and so on.Key Words:VHDL; FPGA; MAX+PLUS; Digital thermometer目 錄第1章 總體方案設(shè)計(jì)11.1 方案原理的構(gòu)思與比較11.2 A/D轉(zhuǎn)換器的合理選用11.2.1 A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo)1
7、1.2.2 A/D轉(zhuǎn)換器的選用原則21.2.3 本系統(tǒng)中A/D轉(zhuǎn)換器的選擇21.2.4 ADC0804轉(zhuǎn)換原理31.3 A/D溫度傳感器的合理選用51.3.1 傳感器選用原則51.3.2 本系統(tǒng)中溫度傳感器的選擇71.4 多個(gè)LED的動(dòng)態(tài)掃描顯示71.5 數(shù)字溫度表測(cè)量原理81.6 系統(tǒng)的硬件結(jié)構(gòu)8第2章 FPGA功能模塊102.1 FPGA簡(jiǎn)介102.2 FPGA結(jié)構(gòu)與原理112.3利用硬件描述語(yǔ)言VHDL設(shè)計(jì)數(shù)字系統(tǒng)112.4系統(tǒng)中的FPGA器件設(shè)計(jì)13第3章 系統(tǒng)仿真163.1 MAX+plus簡(jiǎn)介與設(shè)計(jì)流程163.2各模塊的仿真183.3頂層總電路圖和總仿真波形20結(jié)束語(yǔ)21參考文獻(xiàn)2
8、2致23附 錄24第1章 總體方案設(shè)計(jì)1.1 方案原理的構(gòu)思與比較任何物質(zhì)的溫度變化都會(huì)引起它本身的物理特征與幾何形狀的改變。利用物質(zhì)這一特性,確定它與溫度間的數(shù)量關(guān)系,就可以作為測(cè)溫儀器的感應(yīng)部分,制成各種各樣的溫度表。數(shù)字溫度表要求能實(shí)時(shí)檢測(cè)外界環(huán)境溫度,本系統(tǒng)所設(shè)計(jì)的數(shù)字溫度表要求測(cè)量圍0100,精度大于0.5,用數(shù)碼管顯示測(cè)量結(jié)果。決定用以下方案:要設(shè)計(jì)一個(gè)數(shù)字顯示溫度表,首先要有信號(hào)采集電路,在本設(shè)計(jì)中,我們采用的電流型溫度傳感器AD590來(lái)構(gòu)架溫度采集系統(tǒng),采集到的溫度信號(hào)經(jīng)過(guò)傳感器的處理轉(zhuǎn)換成電信號(hào),在這里我們得到的僅僅是模擬信號(hào),所以我們要將信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),我們考慮到用8位
9、模數(shù)轉(zhuǎn)換器ADC0804完成這個(gè)階段,最后我們用七段LED顯示器來(lái)進(jìn)行數(shù)字顯示。1.2 A/D轉(zhuǎn)換器的合理選用自然界中,許多物理量大多數(shù)是模擬量,需要進(jìn)行適當(dāng)?shù)淖儞Q才能轉(zhuǎn)化為數(shù)字量。例如,先把被測(cè)的模擬物理量通過(guò)變換器轉(zhuǎn)換成直流電壓,再將所得到的直流電壓量轉(zhuǎn)換成數(shù)字量;或者將所得到的直流電壓轉(zhuǎn)換成時(shí)間間隔,再轉(zhuǎn)換成數(shù)字量。1.2.1 A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo)A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo)有轉(zhuǎn)換精度、轉(zhuǎn)換速度等。選擇A/D轉(zhuǎn)換器時(shí),除考慮這兩項(xiàng)技術(shù)指標(biāo)外,還應(yīng)注意滿足其輸入電壓的圍、輸出數(shù)字的編碼、工作溫度圍和電壓穩(wěn)定度等方面的要求。轉(zhuǎn)換精度單片集成A/D轉(zhuǎn)換器的轉(zhuǎn)換精度是用分辨率和轉(zhuǎn)換誤差來(lái)描述
10、的。分辨率A/D轉(zhuǎn)換器的分辨率以輸出二進(jìn)制(或十進(jìn)制)數(shù)的位數(shù)來(lái)表示。它說(shuō)明A/D轉(zhuǎn)換器對(duì)輸入信號(hào)的分辨能力。從理論上講,n位輸出的A/D轉(zhuǎn)換器能區(qū)分2個(gè)不同等級(jí)的輸入模擬電壓,能區(qū)分輸入電壓的最小值為滿量程輸入的1/2n。在最大輸入電壓一定時(shí),輸出位數(shù)愈多,分辨率愈高。例如A/D轉(zhuǎn)換器輸出為8位二進(jìn)制數(shù),輸入信號(hào)最大值為5V,那么這個(gè)轉(zhuǎn)換器應(yīng)能區(qū)分出輸入信號(hào)的最小電壓為9.53mV。轉(zhuǎn)換誤差轉(zhuǎn)換誤差通常是以輸出誤差的最大值形式給出。它表示A/D轉(zhuǎn)換器實(shí)際輸出的數(shù)字量和理論上的輸出 數(shù)字量之間的差別。常用最低有效位的倍數(shù)表示。例如給出相對(duì)誤差±LSB/2,這就表明實(shí)際輸出的數(shù)字量和理
11、論上應(yīng)得到的輸出數(shù)字量之間的誤差小于最低位的半個(gè)字。轉(zhuǎn)換時(shí)間轉(zhuǎn)換時(shí)間是指A/D轉(zhuǎn)換器從轉(zhuǎn)換控制信號(hào)到來(lái)開始,到輸出端得到穩(wěn)定的數(shù)字信號(hào)所經(jīng)過(guò)的時(shí)間。A/D轉(zhuǎn)換器的轉(zhuǎn)換時(shí)間與轉(zhuǎn)換電路的類型有關(guān)。不同類型的轉(zhuǎn)換器轉(zhuǎn)換速度相差甚遠(yuǎn)。其中并行比較A/D轉(zhuǎn)換器的轉(zhuǎn)換速度最高,8位二進(jìn)制輸出的單片集成A/D轉(zhuǎn)換器轉(zhuǎn)換時(shí)間可達(dá)到50ns以,逐次比較型A/D轉(zhuǎn)換器次之,它們多數(shù)轉(zhuǎn)換時(shí)間在1050s以,間接A/D轉(zhuǎn)換器的速度最慢,如雙積分A/D轉(zhuǎn)換器的轉(zhuǎn)換時(shí)間大都在幾十毫秒至幾百毫秒之間。在實(shí)際應(yīng)用中,應(yīng)從系統(tǒng)數(shù)據(jù)總的位數(shù)、精度要求、輸入模擬信號(hào)的圍以與輸入信號(hào)極性等方面綜合考慮A/D轉(zhuǎn)換器的選用。1.2.2
12、A/D轉(zhuǎn)換器的選用原則A/D轉(zhuǎn)換器是將模擬量轉(zhuǎn)換成數(shù)字量的芯片,選用A/D轉(zhuǎn)換器應(yīng)考慮以下幾個(gè)問題:選擇分辨率。低分辨率38位。中分辨率912位。A/D還包括BCD三位半。高分辨串13位以上,A/D還包括BCD四位半。確定精度。對(duì)輸入或輸出特性和圍提出要求。確定電源種類和功耗。A/D根據(jù)轉(zhuǎn)換速度、精度、用途等選擇轉(zhuǎn)換方式:低速有雙重積分方式等,常用于儀器儀表。中速有逐次比較方式等,常用于一般自動(dòng)控制。高速有并行方式、串行方式等。A/D轉(zhuǎn)換路數(shù)等。1.2.3 本系統(tǒng)中A/D轉(zhuǎn)換器的選擇ADC0804的規(guī)格與引腳圖8 位COMS 依次逼近型的A/D 轉(zhuǎn)換器。三態(tài)鎖定輸出存取時(shí)間:135US分辨率:
13、8位轉(zhuǎn)換時(shí)間:100US總誤差:正負(fù)1LSB工作溫度:ADC0804LCN-070度圖2.1 ADC0804引腳圖:芯片選擇信號(hào)。:外部讀取轉(zhuǎn)換結(jié)果的控制輸出信號(hào)。為HI時(shí),DB0DB7處理高阻抗;為L(zhǎng)O時(shí),數(shù)字?jǐn)?shù)據(jù)才會(huì)輸出。:用來(lái)啟動(dòng)轉(zhuǎn)換的控制輸入,相當(dāng)于ADC的轉(zhuǎn)換開始(=0時(shí)),當(dāng)由HI變?yōu)長(zhǎng)O時(shí),轉(zhuǎn)換器被清除:當(dāng)回到HI時(shí),轉(zhuǎn)換正式開始。CLK IN,CLK R:時(shí)鐘輸入或接振蕩無(wú)件(R,C)頻率約限制在100KHZ1460KHZ,如果使用RC 電路則其振蕩頻率為1/(1.1RC)。:中斷請(qǐng)求信號(hào)輸出,低地平動(dòng)作。VIN(+) VIN(-):差動(dòng)模擬電壓輸入。輸入單端正電壓時(shí), VIN
14、(-)接地;而差動(dòng)輸入時(shí),直接加入VIN(+) VIN(-)。AGND,DGND:模擬信號(hào)以與數(shù)字信號(hào)的接地。VREF:輔助參考電壓。DB0DB7:8 位的數(shù)字輸出。VCC:電源供應(yīng)以與作為電路的參考電壓。1.2.4 ADC0804轉(zhuǎn)換原理以輸出8位的ADC0804動(dòng)作來(lái)說(shuō)明“逐次逼近式A/D轉(zhuǎn)換器”的轉(zhuǎn)換原理,動(dòng)作步驟如下表示(原則上先從左側(cè)最高位尋找起)。第一次尋找結(jié)果:10000000(若假設(shè)值輸入值,則尋找位=假設(shè)位=1)第二次尋找結(jié)果:11000000(若假設(shè)值輸入值,則尋找位=假設(shè)位=1)第三次尋找結(jié)果:11000000(若假設(shè)值輸入值,則尋找位=該假設(shè)位=0)第四次尋找結(jié)果:11
15、010000(若假設(shè)值輸入值,則尋找位=假設(shè)位=1)第五次尋找結(jié)果:10100000(若假設(shè)值輸入值,則尋找位=該假設(shè)位=0)第六次尋找結(jié)果:11010100(若假設(shè)值輸入值,則尋找位=假設(shè)位=1)第七次尋找結(jié)果:11010110(若假設(shè)值輸入值,則尋找位=假設(shè)位=1)第八次尋找結(jié)果:11010110(若假設(shè)值輸入值,則尋找位=假設(shè)位=0)這樣使用二分法的尋找方式,8位的A/D轉(zhuǎn)換器只要8次尋找,12位的A/D轉(zhuǎn)換器只要12次尋找,就能完成轉(zhuǎn)換的動(dòng)作,其中的輸入值代表圖2.1的模擬輸入電壓VIN。對(duì)8位ADC0804而言,它的輸出準(zhǔn)位共有28=256種,即它的分辨率是1/256,假設(shè)輸入信號(hào)V
16、IN為05V電壓圍,則它最小輸出電壓5V/256=0.01953V,這代表ADC0804所能轉(zhuǎn)換的最小電壓值。 至于部的轉(zhuǎn)換頻率fCK,是由圖2.2的CLKR(19腳)、CLK(4腳)所連接的R、C來(lái)決定的。圖2.2 ADC0804與CPLD&FPGA、單片機(jī)(8051)等的典型連接圖頻率的計(jì)算方法是若以圖2.2的、為例,則部的轉(zhuǎn)換頻率是更換不同的R、C值,會(huì)有不同的轉(zhuǎn)換頻率,而且頻率愈高代表轉(zhuǎn)換速度愈快。ADC0804的控制方法以圖2.2的信號(hào)流向來(lái)看,控制ADC0804動(dòng)作的信號(hào)應(yīng)該只有CS、WR、RD。其中INTR由高電位轉(zhuǎn)向低電位后,代表ADC0804完成這次的模擬/數(shù)字轉(zhuǎn)換,
17、而DB0-DB7代表是轉(zhuǎn)換后的數(shù)字資料。ADC0804的動(dòng)作大概分為4個(gè)步驟區(qū)間S0、S1、S2、S3,每個(gè)步驟區(qū)間的動(dòng)作如下:步驟S0:CS=0、WR=0、RD=1(由CPLD發(fā)出信號(hào)要求ADC0804開始進(jìn)行模擬/數(shù)字信號(hào)的轉(zhuǎn)換)。步驟S1:CS=1、WR=1、RD=1(ADC0804進(jìn)行轉(zhuǎn)換動(dòng)作,轉(zhuǎn)換完畢后INTR將高電位將至低電位,而轉(zhuǎn)換時(shí)間100s)。步驟S2:CS=0、WR=1、RD=0(由CPLD發(fā)出信號(hào)以讀取ADC0804的轉(zhuǎn)換資料)。步驟S3:CS=1、WR=1、RD=1(由CPLD讀取DB0-DB7上的數(shù)字轉(zhuǎn)換資料)。由上述的步驟說(shuō)明,可以歸納出所要設(shè)計(jì)的CPLD動(dòng)作功能有
18、:負(fù)責(zé)在每個(gè)步驟送出所需的CS、WR、RD控制信號(hào)。在步驟S1時(shí),監(jiān)控INTR信號(hào)是否由低電位變?yōu)楦唠娢唬绱艘员懔私釧DC0804的轉(zhuǎn)換動(dòng)作結(jié)束與否。在步驟S3,讀取轉(zhuǎn)換的數(shù)字資料DB0-DB7。1.3 A/D溫度傳感器的合理選用信息處理技術(shù)取得的進(jìn)展以與微處理器和計(jì)算機(jī)技術(shù)的高速發(fā)展,都需要在傳感器的開發(fā)方面有相應(yīng)的進(jìn)展。微處理器現(xiàn)在已經(jīng)在測(cè)量和控制系統(tǒng)中得到了廣泛的應(yīng)用。隨著這些系統(tǒng)能力的增強(qiáng),作為信息采集系統(tǒng)的前端單元,傳感器的作用越來(lái)越重要。傳感器已成為自動(dòng)化系統(tǒng)和機(jī)器人技術(shù)中的關(guān)鍵部件,作為系統(tǒng)中的一個(gè)結(jié)構(gòu)組成,其重要性變得越來(lái)越明顯。1.3.1 傳感器選用原則現(xiàn)代傳感器在原理與結(jié)
19、構(gòu)上千差萬(wàn)別,如何根據(jù)具體的測(cè)量目的、測(cè)量對(duì)象以與測(cè)量環(huán)境合理地選用傳感器,是在進(jìn)行某個(gè)量的測(cè)量時(shí)首先要解決的問題。當(dāng)傳感器確定之后,與之相配套的測(cè)量方法和測(cè)量設(shè)備也就可以確定了。測(cè)量結(jié)果的成敗,在很大程度上取決于傳感器的選用是否合理。根據(jù)測(cè)量對(duì)象與測(cè)量環(huán)境確定傳感器的類要進(jìn)行個(gè)具體的測(cè)量工作,首先要考慮采用何種原理的傳感器,這需要分析多方面的因素之后才能確定。因?yàn)椋词故菧y(cè)量同一物理量,也有多種原理的傳感器可供選用,哪一種原理的傳感器更為合適,則需要根據(jù)被測(cè)量的特點(diǎn)和傳感器的使用條件考慮以下一些具體問題:量程的大小;被測(cè)位置對(duì)傳感器體積的要求;測(cè)量方式為接觸式還是非接觸式;信號(hào)的引出方法,有
20、線或是非接觸測(cè)量;傳感器的來(lái)源,國(guó)產(chǎn)還是進(jìn)口,價(jià)格能否承受,還是自行研制。在考慮上述問題之后就能確定選用何種類型的傳感器,然后再考慮傳感器的具體性能指標(biāo)。靈敏度的選擇通常,在傳感器的線性圍,希望傳感器的靈敏度越高越好。因?yàn)橹挥徐`敏度高時(shí),與被測(cè)量變化對(duì)應(yīng)的輸出信號(hào)的值才比較大,有利于信號(hào)處理。但要注意的是,傳感器的靈敏度高,與被測(cè)量無(wú)關(guān)的外界噪聲也容易混入,也會(huì)被放大系統(tǒng)放大,影響測(cè)量精度。因此,要求傳感器本身應(yīng)具有較高的信噪比,盡員減少?gòu)耐饨缫氲膹S擾信號(hào)。傳感器的靈敏度是有方向性的。當(dāng)被測(cè)量是單向量,而且對(duì)其方向性要求較高,則應(yīng)選擇其它方向靈敏度小的傳感器;如果被測(cè)量是多維向量,則要求傳感
21、器的交叉靈敏度越小越好。頻率響應(yīng)特性傳感器的頻率響應(yīng)特性決定了被測(cè)量的頻率圍,必須在允許頻率圍保持不失真的測(cè)量條件,實(shí)際上傳感器的響應(yīng)總有定延遲,希望延遲時(shí)間越短越好。傳感器的頻率響應(yīng)高,可測(cè)的信號(hào)頻率圍就寬,而由于受到結(jié)構(gòu)特性的影響,機(jī)械系統(tǒng)的慣性較大,因有頻率低的傳感器可測(cè)信號(hào)的頻率較低。在動(dòng)態(tài)測(cè)量中,應(yīng)根據(jù)信號(hào)的特點(diǎn)(穩(wěn)態(tài)、瞬態(tài)、隨機(jī)等)響應(yīng)特性,以免產(chǎn)生過(guò)火的誤差。線性圍傳感器的線形圍是指輸出與輸入成正比的圍。以理論上講,在此圍,靈敏度保持定值。傳感器的線性圍越寬,則其量程越大,并且能保證一定的測(cè)量精度。在選擇傳感器時(shí),當(dāng)傳感器的種類確定以后首先要看其量程是否滿足要求。但實(shí)際上,任何傳
22、感器都不能保證絕對(duì)的線性,其線性度也是相對(duì)的。當(dāng)所要求測(cè)量精度比較低時(shí),在一定的圍,可將非線性誤差較小的傳感器近似看作線性的,這會(huì)給測(cè)量帶來(lái)極大的方便。穩(wěn)定性傳感器使用一段時(shí)間后,其性能保持不變化的能力稱為穩(wěn)定性。影響傳感器長(zhǎng)期穩(wěn)定性的因素除傳感器本身結(jié)構(gòu)外,主要是傳感器的使用環(huán)境。因此,要使傳感器具有良好的穩(wěn)定性,傳感器必須要有較強(qiáng)的環(huán)境適應(yīng)能力。在選擇傳感器之前,應(yīng)對(duì)其使用環(huán)境進(jìn)行調(diào)查,并根據(jù)具體的使用環(huán)境選擇合適的傳感器,或采取適當(dāng)?shù)拇胧瑴p小環(huán)境的影響。傳感器的穩(wěn)定性有定量指標(biāo),在超過(guò)使用期后,在使用前應(yīng)重新進(jìn)行標(biāo)定,以確定傳感器的性能是否發(fā)生變化。在某些要求傳感器能長(zhǎng)期使用而又不能輕
23、易更換或標(biāo)定的場(chǎng)合,所選用的傳感器穩(wěn)定性要求更嚴(yán)格,要能夠經(jīng)受住長(zhǎng)時(shí)間的考驗(yàn)。精度精度是傳感器的一個(gè)重要的性能指標(biāo),它是關(guān)系到整個(gè)測(cè)量系統(tǒng)測(cè)量精度的一個(gè)重要環(huán)節(jié)。傳感器的精度越高,其價(jià)格越昂貴,因此,傳感器的精度只要滿足整個(gè)測(cè)量系統(tǒng)的精度要求就可以,不必選得過(guò)高。這樣就可以在滿足同一測(cè)量目的的諸多傳感器中選擇比較便宜和簡(jiǎn)單的傳感器。如果測(cè)量目的是定性分析的,選用重復(fù)精度高的傳感器即可,不宜選用絕對(duì)量值精度高的;如果是為了定量分析,必須獲得精確的測(cè)量值,就需選用精度等級(jí)能滿足要求的傳感器。對(duì)某些特殊使用場(chǎng)合,無(wú)法選到合適的傳感器,則需自行設(shè)計(jì)制造傳感器。自制傳感器的性能應(yīng)滿足使用要求。1.3.2
24、 本系統(tǒng)中溫度傳感器的選擇溫度傳感器具有線性好、精度適中、靈敏度高、體積小、使用方便等優(yōu)點(diǎn),得到廣泛應(yīng)用。 AD590是美國(guó)模擬器件公司生產(chǎn)的單片集成電路溫度傳感器。 1、流過(guò)器件的電流(mA)等于器件所處環(huán)境的熱力學(xué)溫度(開爾文)度數(shù)。 2、AD590的測(cè)溫圍為-55+150。 3、AD590的電源電壓圍為4V30V。電源電壓可在4V6V圍變化,電流變化1mA,相當(dāng)于溫度變化1K。AD590可以承受44V正向電壓和20V反向電壓,因而器件反接也不會(huì)被損壞。 4、輸出電阻為710MW。 5、精度高。AD590共有I、J、K、L、M五檔,其中M檔精度最高,在-55+150圍,非線性誤差為
25、7;0.3。AD590測(cè)量熱力學(xué)溫度、攝氏溫度、兩點(diǎn)溫度差、多點(diǎn)最低溫度、多點(diǎn)平均溫度的具體電路,廣泛應(yīng)用于不同的溫度控制場(chǎng)合。該傳感器屬于電流型,其輸入量為溫度,輸出則為電流,體積很小,且具有互換性好、線性度好、信號(hào)可長(zhǎng)線傳輸、抗電壓干擾能力強(qiáng)、長(zhǎng)期穩(wěn)定性高、配用電路簡(jiǎn)單等優(yōu)點(diǎn),因而已成為工業(yè)應(yīng)用中測(cè)溫圍在-55150的首選溫度傳感器。因此,本次數(shù)字溫度表的設(shè)計(jì)中選用集成溫度傳感器AD590。1.4 多個(gè)LED的動(dòng)態(tài)掃描顯示七段數(shù)碼管各數(shù)碼段分布與排序如圖2.3所示:在許多實(shí)際的系統(tǒng)中,經(jīng)常需要多個(gè)LED顯示系統(tǒng)的信息,比如,此次設(shè)計(jì)的數(shù)字溫度表的測(cè)量圍是20100,需要顯示個(gè)、十、百與負(fù)號(hào)
26、,就必須要3個(gè)LED。其中若七段譯碼器驅(qū)動(dòng)每一個(gè)LED,并使所有LED的公共端始終接有效信號(hào),即共陰極LED公共端接地,共陽(yáng)極LED公共端接電源。這種LED顯示方式稱為靜態(tài)顯示方式。采用靜態(tài)方式,LED亮度高,但這是以復(fù)雜硬件驅(qū)動(dòng)電路作為代價(jià)的,硬件成本高。圖2.3七段數(shù)碼管各數(shù)碼段分布與排序因此,在實(shí)際使用時(shí),特別是有微處理器的系統(tǒng)中,如果用多位的LED顯示,一般采取動(dòng)態(tài)掃描方式、分時(shí)循環(huán)顯示,即多個(gè)發(fā)光管輪流交替點(diǎn)亮。這種方式的依據(jù)是利用人眼的滯留現(xiàn)象,只要在1秒一個(gè)發(fā)光管亮24次以上,每次點(diǎn)亮?xí)r間維持2ms以上,則人眼感覺不到閃爍,宏觀上仍可看到多位LED同時(shí)顯示的效果。動(dòng)態(tài)顯示可以簡(jiǎn)化
27、硬件、降低成本、減小功耗。1.5 數(shù)字溫度表測(cè)量原理本系統(tǒng)所設(shè)計(jì)的數(shù)字溫度表測(cè)量圍00100,AD590溫度傳感器的感測(cè)能力是溫度每升高就增加的電流量,該電流量流入而的電阻后,將會(huì)產(chǎn)生的電壓,而0時(shí)(等于)時(shí),輸出電流量為,流入的電阻后,產(chǎn)生的電壓。如果測(cè)到電壓為,則可由公式得到要測(cè)量的溫度。1.6 系統(tǒng)的硬件結(jié)構(gòu)根據(jù)數(shù)字溫度表的測(cè)量原理,可以得到整個(gè)硬件結(jié)構(gòu)如圖2.4所示。溫度傳感器AD590串接的電阻,然后經(jīng)一個(gè)運(yùn)算放大器后,將電壓引入ADC0804的管腳。ADC0804是8位模數(shù)轉(zhuǎn)換器,測(cè)量精度為0.02V,當(dāng)ADC0804的轉(zhuǎn)換值為,所測(cè)溫度為。即對(duì)于測(cè)量到的溫度是幾度,可以由下面的公
28、式得到:=(ADC0804的DB7DB0轉(zhuǎn)換值)×0.02-2.73)÷10mV =(ADC0804的DB7DB0轉(zhuǎn)換值)×2-273 例如讀取到的轉(zhuǎn)換值是186,則溫度應(yīng)為:= (ADC0804的DB7DB0轉(zhuǎn)換值)×2-273=(186) ×2-273=99FPGA是本系統(tǒng)的核心,本系統(tǒng)在MAX+PLUS開發(fā)平臺(tái)上,用VHDL語(yǔ)言來(lái)對(duì)它進(jìn)行設(shè)計(jì),實(shí)現(xiàn)三大功能模塊:控制模塊:激活A(yù)/D轉(zhuǎn)換器動(dòng)作,接收A/D轉(zhuǎn)換器傳遞過(guò)來(lái)的數(shù)字轉(zhuǎn)換值;數(shù)據(jù)處理模塊:實(shí)現(xiàn)上式的運(yùn)算,將接收到的轉(zhuǎn)換值調(diào)整成對(duì)應(yīng)的數(shù)字信號(hào);掃描顯示模塊:產(chǎn)生數(shù)碼管的片選信號(hào),并將數(shù)
29、據(jù)處理模塊輸出的BCD碼譯成相應(yīng)的7段數(shù)碼管驅(qū)動(dòng)值,送數(shù)碼管顯示出所測(cè)溫度。圖2.4 數(shù)字溫度表硬件結(jié)構(gòu)第2章 FPGA功能模塊2.1 FPGA簡(jiǎn)介FPGA是英文Field Programmable Gate Array的縮寫,即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、EPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個(gè)新概念,部包括可配置邏輯模塊
30、CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和部連線(Interconnect)三個(gè)部分。FPGA的基本特點(diǎn)主要有:采用FPGA設(shè)計(jì)ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。 FPGA可做其它全定制或半定制ASIC電路的中試樣片。FPGA部有豐富的觸發(fā)器和IO引腳。FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最低、風(fēng)險(xiǎn)最小的器件之一。FPGA采用高速CHMOS工藝,功耗低,可以與CMOS、TTL電平兼容??梢哉f(shuō),F(xiàn)PGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇
31、之一。目前FPGA的品種很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。FPGA是由存放在片RAM中的程序來(lái)設(shè)置其工作狀態(tài)的,因此,工作時(shí)需要對(duì)片的RAM進(jìn)行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。加電時(shí),F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片編程RAM中,配置完成后,F(xiàn)PGA進(jìn)入工作狀態(tài)。掉電后,F(xiàn)PGA恢復(fù)成白片,部邏輯關(guān)系消失,因此,F(xiàn)PGA能夠反復(fù)使用。FPGA的編程無(wú)須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當(dāng)需要修改FPGA功能時(shí),只需換一片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不
32、同的電路功能。因此,F(xiàn)PGA的使用非常靈活。FPGA有多種配置模式:并行主模式為一片F(xiàn)PGA加一片EPROM的方式;主從模式可以支持一片PROM編程多片F(xiàn)PGA;串行模式可以采用串行PROM編程FPGA;外設(shè)模式可以將FPGA作為微處理器的外設(shè),由微處理器對(duì)其編程。2.2 FPGA結(jié)構(gòu)與原理1.查找表(Look-Up-Table)的原理與結(jié)構(gòu)采用這種結(jié)構(gòu)的PLD芯片我們也可以稱之為FPGA:如altera的ACEX,APEX系列,xilinx的Spartan,Virtex系列等。查找表(Look-Up-Table)簡(jiǎn)稱為L(zhǎng)UT,LUT本質(zhì)上就是一個(gè)RAM。目前FPGA中多使用4輸入的LUT,所
33、以每一個(gè)LUT可以看成一個(gè)有4位地址線的16x1的RAM。當(dāng)用戶通過(guò)原理圖或HDL語(yǔ)言描述了一個(gè)邏輯電路以后,PLD/FPGA開發(fā)軟件會(huì)自動(dòng)計(jì)算邏輯電路的所有可能的結(jié)果,并把結(jié)果事先寫入RAM,這樣,每輸入一個(gè)信號(hào)進(jìn)行邏輯運(yùn)算就等于輸入一個(gè)地址進(jìn)行查表,找出地址對(duì)應(yīng)的容,然后輸出即可。2. 查找表結(jié)構(gòu)的FPGA邏輯實(shí)現(xiàn)原理在EDA的軟件系統(tǒng)中,輸入設(shè)計(jì)項(xiàng)目,經(jīng)編譯后生成網(wǎng)表文件,并下載到FPGA中,其邏輯輸出入由FPGA的芯片輸入后進(jìn)入可編程連線,然后作為地址線到LUT,LUT中已經(jīng)事先寫入了所有可能的邏輯結(jié)果,通過(guò)地址查找到相應(yīng)的數(shù)據(jù)然后輸出,這樣組合邏輯就實(shí)現(xiàn)了。電路中D觸發(fā)器是直接利用L
34、UT后面D觸發(fā)器來(lái)實(shí)現(xiàn)。時(shí)鐘信號(hào)CLK由I/O腳輸入后進(jìn)入芯片部的時(shí)鐘專用通道,直接連接到觸發(fā)器的時(shí)鐘端。觸發(fā)器的輸出與I/O腳相連,把結(jié)果輸出到芯片管腳。這就實(shí)現(xiàn)了特定功能的電路。2.3利用硬件描述語(yǔ)言VHDL設(shè)計(jì)數(shù)字系統(tǒng)VHDL 語(yǔ)言(Very High Integrated Circuit HardwareDescription Language) 即超高速集成電路硬件描述語(yǔ)言。他用軟件編程的方式來(lái)描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式, 與傳統(tǒng)的門級(jí)描述方式相比, 他更適合大規(guī)模系統(tǒng)的設(shè)計(jì)。VHDL 語(yǔ)言具有功能強(qiáng)大的語(yǔ)言結(jié)構(gòu),可用明確的代碼描述復(fù)雜的控制邏輯設(shè)計(jì), 并且具有多層次
35、的設(shè)計(jì)描述功能, 支持設(shè)計(jì)庫(kù)和可重復(fù)使用的元件的生成。VHDL 語(yǔ)言可讀性強(qiáng)、使用方便、易于修改, 他允許設(shè)計(jì)者不依賴器件、可移植性好, 描述實(shí)現(xiàn)了設(shè)計(jì)與工藝無(wú)關(guān)。因此, VHDL 語(yǔ)言在數(shù)字系統(tǒng)設(shè)計(jì)中很受歡迎。利用VHDL語(yǔ)言設(shè)計(jì)數(shù)字系統(tǒng)硬件電路,與傳統(tǒng)的數(shù)字系統(tǒng)硬件設(shè)計(jì)方法相比,具有以下優(yōu)點(diǎn):采用自頂向下(TOP-DOWN)的設(shè)計(jì)方法自頂向下是指從系統(tǒng)總體要求出發(fā),在頂層進(jìn)行功能方框圖的劃分和結(jié)構(gòu)設(shè)計(jì)。由于設(shè)計(jì)的主要仿真和調(diào)試過(guò)程是在高層次上完成的,這一方面有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計(jì)上的失誤,避免設(shè)計(jì)工作的浪費(fèi),同時(shí)減少了邏輯功能仿真的工作量,提高了設(shè)計(jì)的一次成功率。系統(tǒng)可大量采用PLD芯片,
36、電路設(shè)計(jì)更趨合理由于目前眾多制造PLD芯片的廠家,其工具軟件均支持VHDL語(yǔ)言的編程。所以利用VHDL語(yǔ)言設(shè)計(jì)數(shù)字系統(tǒng)時(shí),可以根據(jù)硬件電路的設(shè)計(jì)需要,硬件設(shè)計(jì)人員在設(shè)計(jì)硬件電路時(shí)使用PLD器件,就可以自行設(shè)計(jì)所需的專用功能模塊,而無(wú)需受通用元器件的限制,從而使電路設(shè)計(jì)更趨合理,其體積和功耗也可大為減小。降低了硬件電路的設(shè)計(jì)難度在傳統(tǒng)的設(shè)計(jì)方法中,往往要求設(shè)計(jì)者在設(shè)計(jì)電路之前寫出該電路的邏輯表達(dá)式或真值表(或時(shí)序電路的狀態(tài)表)。這一工作是相當(dāng)困難和繁雜的,特別是當(dāng)系統(tǒng)比較復(fù)雜時(shí)更是如此。而利用VHDL語(yǔ)言設(shè)計(jì)硬件電路時(shí),就可以使設(shè)計(jì)者免除編寫邏輯表達(dá)式或真值表之苦,從而大大降低了設(shè)計(jì)的難度,也縮
37、短了設(shè)計(jì)的周期。主要設(shè)計(jì)文件是用VHDL語(yǔ)言編寫的源程序在傳統(tǒng)的硬件電路設(shè)計(jì)中,最后形成的主要文件是電路原理圖,而采用 VHDL語(yǔ)言設(shè)計(jì)系統(tǒng)硬件電路時(shí)主要的設(shè)計(jì)文件是VHDL語(yǔ)言編寫的源程序。如果需要也可以轉(zhuǎn)化成電路原理圖輸出。與傳統(tǒng)的電路原理圖相比,使用VHDL源程序有許多好處:其一是資料量小,便于保存。其二是可繼承性好。當(dāng)設(shè)計(jì)其他硬件電路時(shí),可使用文件中的某些庫(kù)、進(jìn)程和過(guò)程等描述某些局部硬件電路的程序。其三是閱讀方便。閱讀程序比閱讀電路原理圖要更容易一些,閱讀者很容易在程序中看出某一電路的工做原理和邏輯關(guān)系。而要從電路原理圖中推知其工作原理則需要較多的硬件知識(shí)和經(jīng)驗(yàn)。語(yǔ)言可以與工藝無(wú)關(guān)編程
38、在用VHDL語(yǔ)言設(shè)計(jì)系統(tǒng)硬件時(shí),沒有嵌入與工藝有關(guān)的信息,其綜合生成的是一種標(biāo)準(zhǔn)的電子設(shè)計(jì)互換格式文件,它獨(dú)立于采用的實(shí)現(xiàn)工藝。有關(guān)工藝參數(shù)的描述可通過(guò)VHDL語(yǔ)言提供的屬性包括進(jìn)去,然后利用不同廠家的布局布線工具,將設(shè)計(jì)映射成不同工藝,在不同的芯片土實(shí)現(xiàn)。這使得工程師在功能設(shè)計(jì)、編輯、驗(yàn)證階段,可以不必過(guò)多地考慮工藝實(shí)現(xiàn)的具體細(xì)節(jié)。方便ASIC移植VHDL語(yǔ)言的效率之一,就是如果設(shè)計(jì)是被綜合到一個(gè)CPLD或FPGA,則可以設(shè)計(jì)的產(chǎn)品以最快速度上市。當(dāng)產(chǎn)品的產(chǎn)量達(dá)到相當(dāng)?shù)臄?shù)量時(shí),采用VHDL進(jìn)行的設(shè)計(jì)可以很容易轉(zhuǎn)成用專用集成電路來(lái)實(shí)現(xiàn),僅僅需要更換不同的庫(kù)重新進(jìn)行綜合。由于VHDL是一個(gè)成熟的
39、定義型語(yǔ)言,可以確保ASIC廠商交付優(yōu)良品質(zhì)的器件產(chǎn)品。此外,由于工藝技術(shù)的進(jìn)步,需要采用更先進(jìn)的工藝時(shí),仍可以采用原來(lái)的VHDL代碼。 2.4系統(tǒng)中的FPGA器件設(shè)計(jì)啟動(dòng)控制模塊等待信號(hào)開始是否結(jié)束啟動(dòng)數(shù)字處理模塊掃描顯示模塊結(jié)束NY圖3.1 CPLD&FPGA設(shè)計(jì)流程圖FPGA器件設(shè)計(jì)采用自頂向下的設(shè)計(jì)方法,將任務(wù)分解為三大功能模塊:控制模塊、數(shù)據(jù)處理模塊和掃描顯示模塊,最后將各功能模塊連接形成頂層模塊,完成整體設(shè)計(jì)!三大功能模塊都是用VHDL語(yǔ)言編程實(shí)現(xiàn)的,其設(shè)計(jì)流程圖見圖3.1所示。1.控制模塊:激活A(yù)/D轉(zhuǎn)換器動(dòng)作,接收A/D轉(zhuǎn)換器傳遞過(guò)來(lái)的數(shù)字轉(zhuǎn)換值。部分VHDL代碼如下:
40、PRO: PROCESS(CURRENT_STATE,INTR) BEGIN -規(guī)定各狀態(tài)轉(zhuǎn)換方式CASE CURRENT_STATE ISWHEN S0 => WR<='0'CS<='0'RD<='1'LOCK<='0'NEXT_STATE <= ST1;WHEN S1 => WR<='1'CS<='1'RD<='1'LOCK<='0'IF (INTR='1') THEN NEXT_S
41、TATE <= ST1; -測(cè)試INTR的下降沿ELSE NEXT_STATE <= ST2;END IF;WHEN S2 => WR<='1'CS<='0'RD<='0'LOCK<='0'IF (INTR='0') THEN NEXT_STATE <= ST2; -測(cè)試INTR的上升沿ELSE NEXT_STATE <= ST3; =1則表明結(jié)束轉(zhuǎn)換END IF;WHEN S3 => WR<='1'CS<='1'
42、;RD<='1'LOCK<='1'NEXT_STATE <= ST0;WHEN OTHERS => WR<='1'CS<='1'RD<='1'LOCK<='0'NEXT_STATE <= ST0;2.數(shù)據(jù)處理模塊:A/D傳送過(guò)來(lái)的二進(jìn)制數(shù)據(jù)通過(guò)上式轉(zhuǎn)換成十進(jìn)制溫度值,再將其轉(zhuǎn)換成對(duì)應(yīng)的BCD碼,供LED動(dòng)態(tài)掃描電路使用。部分VHDL代碼如下:Conversion:BlockSignal V : STD_LOGIC_VECTOR(8 DOWNTO
43、0);Signal T : STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINV <= (D & 0) “100010001”; - A/D Date * 2-273T <= V(7 DOWNTO 0); -只取低8位 Temp <= T;Value <= “0” When T = 0 Else “1” When T = 1 Else “0” When T = 2 Else“1” When T = 3 Else“0” When T = 4 Else“1” When T = 5 Else“0” When T = 6 Else“1” When T
44、= 7 Else “0” When T = 98 Else“1” When T = 99 Else“0”;End Block Conversion;其中,程序?qū)⒆x取到的ADC0804的數(shù)字轉(zhuǎn)換值乘2(左移一位即可),再減去164;程序只取相減結(jié)果的后面8位。因?yàn)闇p去164后,最高位必定是0,而所測(cè)溫度圍為0-100,所以只要較低的8位即可;程序利用查表的方法把相減的結(jié)果轉(zhuǎn)換成12位BCD碼,供以后的7段顯示器掃描電路使用。3.掃描顯示模塊:產(chǎn)生數(shù)碼管的片選信號(hào),并將數(shù)據(jù)處理模塊輸出的BCD碼譯成相應(yīng)的7段數(shù)碼管驅(qū)動(dòng)值,送數(shù)碼管顯示出所測(cè)溫度。數(shù)據(jù)選擇器和掃描譯碼電路的部分VHDL代碼如下:SE
45、L <= “110” WHEN ST = 1 ELSE “101” WHEN ST = 2 ELSE “111”;END BLOCK FREE_COUNTER;SELECT_BCD:BLOCKBEGINNUM <= VALUE(3 DOWNTO 0) WHEN ST = 0 ELSE VALUE(7 DOWNTO 4) WHEN ST = 1 ELSE VALUE(11 DOWNTO 8) ;END BLOCK SELECT_BCD;其中,Value是數(shù)據(jù)緩存器(包含3組BCD碼);ST是可逆計(jì)數(shù)器的計(jì)數(shù)值(圍0-2)。兩部分電路的驅(qū)動(dòng)基于同一個(gè)計(jì)數(shù)值,完全同步工作。BCD譯碼電路
46、的部分VHDL代碼如下:SEVENT_SEGMENT:BLOCKBEGINSEG <= “0111111” WHEN NUM =0 ELSE“0000110” WHEN NUM =1 ELSE“1011011” WHEN NUM =2 ELSE“1001111” WHEN NUM =3 ELSE“1100110” WHEN NUM =4 ELSE“1101101” WHEN NUM =5 ELSE“1111101” WHEN NUM =6 ELSE“0000111” WHEN NUM =7 ELSE“1111111” WHEN NUM =8 ELSE“1101111” WHEN NUM
47、=9 ELSE“0000000”;END BLOCK SEVENT_SEGMENT;END A;第3章 系統(tǒng)仿真3.1 MAX+plus簡(jiǎn)介與設(shè)計(jì)流程MAX + plus是一種與結(jié)構(gòu)無(wú)關(guān)的全集成化設(shè)計(jì)環(huán)境,使設(shè)計(jì)者能對(duì)Altera 的各種CPLD 系列方便地進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程。MAX+ plus 開發(fā)系統(tǒng)具有強(qiáng)大的處理能力和高度的靈活性。其主要優(yōu)點(diǎn):與結(jié)構(gòu)無(wú)關(guān)、多平臺(tái)、豐富的設(shè)計(jì)庫(kù)、開放的界面、全集成化、支持多種硬件描述語(yǔ)言( HDL) 等。Max+plus開發(fā)系統(tǒng)的特點(diǎn):1.開放的界面:Max+plus支持與Cadence,Exemplarlogic,Mentor Graphi
48、cs,Synplicty,Viewlogic和其它公司所提供的EDA工具接口。2.與結(jié)構(gòu)無(wú)關(guān):Max+plus系統(tǒng)的核心Complier支持Altera公司的FLEX10K、FLEX8000、FLEX6000、MAX9000、MAX7000、MAX5000和Classic可編程邏輯器件,提供了世界上唯一真正與結(jié)構(gòu)無(wú)關(guān)的可編程邏輯設(shè)計(jì)環(huán)境。3.完全集成化:Max+plus的設(shè)計(jì)輸入、處理與較驗(yàn)功能全部集成在統(tǒng)一的開發(fā)環(huán)境下,這樣可以加快動(dòng)態(tài)調(diào)試、縮短開發(fā)周期。4.豐富的設(shè)計(jì)庫(kù):Max+plus提供豐富的庫(kù)單元供設(shè)計(jì)者調(diào)用,其中包括74系列的全部器件和多種特殊的邏輯功能(Macro-Functio
49、n)以與新型的參數(shù)化的兆功能(Mage-Function)。5.模塊化工具:設(shè)計(jì)人員可以從各種設(shè)計(jì)輸入、處理和較驗(yàn)選項(xiàng)中進(jìn)行選擇從而使設(shè)計(jì)環(huán)境用戶化。6.硬件描述語(yǔ)言(HDL):Max+plus軟件支持各種HDL設(shè)計(jì)輸入選項(xiàng),包括VHDL、Verilog HDL和Altera自己的硬件描述語(yǔ)言AHDL。7.Opencore特征:Max+plus軟件具有開放核的特點(diǎn),允許設(shè)計(jì)人員添加自己認(rèn)為有價(jià)值的宏函數(shù)。數(shù)字系統(tǒng)的設(shè)計(jì)采用自頂向下、由粗到細(xì),逐步分解的設(shè)計(jì)方法,最頂層電路是指系統(tǒng)的整體要求,最下層是具體的邏輯電路的實(shí)現(xiàn)。自頂向下的設(shè)計(jì)方法將一個(gè)復(fù)雜的系統(tǒng)逐漸分解成若干功能模塊,從而進(jìn)行設(shè)計(jì)描述
50、,并且應(yīng)用EDA 軟件平臺(tái)自動(dòng)完成各功能模塊的邏輯綜合與優(yōu)化,門級(jí)電路的布局,再下載到硬件中實(shí)現(xiàn)設(shè)計(jì)。設(shè)計(jì)輸入設(shè)計(jì)處理設(shè)計(jì)檢查編譯下載圖4.1 MAX+plus簡(jiǎn)介與設(shè)計(jì)流程具體設(shè)計(jì)過(guò)程如下:1.設(shè)計(jì)輸入:MAX + plus 支持多種設(shè)計(jì)輸入方式,如原理圖輸入、波形輸入、文本輸入和它們的混合輸入。 2.設(shè)計(jì)處理:設(shè)計(jì)輸入完后,用MAX + plus 的編譯器編譯、查錯(cuò)、修改直到設(shè)計(jì)輸入正確,同時(shí)將對(duì)輸入文件進(jìn)行邏輯簡(jiǎn)化、優(yōu)化,最后生成一個(gè)編程文件。 這是設(shè)計(jì)的核心環(huán)節(jié)。 3.設(shè)計(jì)檢查:MAX + plus 為設(shè)計(jì)者提供完善的檢查方法設(shè)計(jì)仿真和定時(shí)分析。其目的是檢驗(yàn)電路的邏輯功能是否正確,同時(shí)
51、測(cè)試目標(biāo)器件在最差情況下的時(shí)延。這一查錯(cuò)過(guò)程對(duì)于檢驗(yàn)組合邏輯電路的競(jìng)爭(zhēng)冒險(xiǎn)和時(shí)序邏輯電路的時(shí)序、時(shí)延等至關(guān)重要。 4.編譯下載:當(dāng)電路設(shè)計(jì)、校驗(yàn)之后,MAX+plus 的Programmer 將編譯器所生成的編譯文件下載到具體的CPLD 器件中,即實(shí)現(xiàn)目標(biāo)器件的物理編程 。 3.2各模塊的仿真1.控制模塊圖4.2控制模塊仿真波形COM組合進(jìn)程以INTR和Current_state為敏感信號(hào),當(dāng)INTR由低變高或Current_slate變?yōu)閚ext_state時(shí)對(duì)現(xiàn)狀態(tài)進(jìn)行判斷,改變CS和RD的狀態(tài)完成對(duì)ADC0804的控制。REG時(shí)序進(jìn)程以CLK為敏感信號(hào),在CLK的上升沿將Current
52、state轉(zhuǎn)換到next state. LATCH進(jìn)程以lock為敏感信號(hào),在lock的上升沿鎖存ADC0804的輸出值。圖4.3控制模塊頂層文件“ADCINT”是控制0804的采樣狀態(tài)機(jī)。其各端口信號(hào)的功能如下:D70:在0804轉(zhuǎn)換過(guò)程中呈高阻態(tài),轉(zhuǎn)換結(jié)束后,八位數(shù)據(jù)由此輸入FPGA。CLK:時(shí)鐘脈沖輸入端口。WR、CS、RD、ADDA:0804采樣控制信號(hào)。2.數(shù)據(jù)處理模塊圖4.4數(shù)據(jù)處理模塊仿真波形圖4.5數(shù)據(jù)處理模塊頂層文件當(dāng)寫入請(qǐng)求wrreq為高電平時(shí),在clock的沒一個(gè)上升沿,將data上的數(shù)據(jù)寫入fifo中,而在wrreq為低電平時(shí),讀出請(qǐng)求rdreq為高電平時(shí),clock的
53、每一個(gè)上升沿,按照先進(jìn)先出的順序?qū)ifo中存入的數(shù)據(jù)讀出。3.掃描顯示模塊圖4.6掃描顯示模塊仿真波形圖4.7掃面顯示模塊頂層文件3.3頂層總電路圖和總仿真波形圖4.8頂層總電路圖圖4.9總仿真波形所測(cè)溫度圍是-20100之間的整數(shù)值溫度,所以7段顯示器并沒有小數(shù)點(diǎn)存在。程序讀取到ADC0804的數(shù)字轉(zhuǎn)換值乘2(左移一位即可),然后減去273(二進(jìn)制數(shù)100010001),接著利用查表的方法,把計(jì)算結(jié)果轉(zhuǎn)換成對(duì)應(yīng)的12位BCD碼。結(jié)束語(yǔ)數(shù)字溫度表的高速發(fā)展,使它已成為實(shí)現(xiàn)測(cè)量自動(dòng)化、提高工作效率不可缺少的儀表。數(shù)字化是當(dāng)前計(jì)量?jī)x器儀表發(fā)展的主要方向之一。而高準(zhǔn)確度數(shù)字溫度表的出現(xiàn),又使溫度表
54、進(jìn)入了精密標(biāo)準(zhǔn)測(cè)量領(lǐng)域。與此相適應(yīng),測(cè)量的可靠性、準(zhǔn)確性顯得越來(lái)越重要。經(jīng)過(guò)對(duì)設(shè)計(jì)方案的比較,本課題采用FPGA器件,硬件描述語(yǔ)言VHDL進(jìn)行數(shù)字溫度表設(shè)計(jì),雖然還有很多不足之處,但基本實(shí)現(xiàn)了所要求的各項(xiàng)指標(biāo)。應(yīng)用 FPGA器件和EDA技術(shù),克服了傳統(tǒng)的基于單片機(jī)的數(shù)字溫度表的諸多缺點(diǎn),具有外圍電路簡(jiǎn)單、速度快、可靠性高等優(yōu)點(diǎn)。系統(tǒng)中FPGA器件分為三大模塊,每個(gè)模塊均用VHDL語(yǔ)言編程實(shí)現(xiàn),使大部分的電路設(shè)計(jì)工作在計(jì)算機(jī)上完成,大幅度地縮短了儀表的開發(fā)時(shí)間,提高了工作效率。使用MAX+PLUS軟件進(jìn)行仿真等工作,其軟件功能全面,使用方便,易懂好學(xué),已成為最廣為接受的EDA工具之一。參考文獻(xiàn)1
55、迎新,雷道振等.非電量測(cè)量技術(shù)基礎(chǔ).航空航天大學(xué),2002,62-962宋萬(wàn)杰,羅豐等.CPLD技術(shù)與其應(yīng)用.電子科技大學(xué),1999,42-1403王眾生.智能檢測(cè)與控制技術(shù)(第1版).:西北工業(yè)大學(xué),2002,47-1014林玉池.測(cè)量控制與儀器儀表前沿技術(shù)與發(fā)展趨勢(shì).:大學(xué),2005,21-855何希才.傳感器與其應(yīng)用(第1版).:國(guó)防工業(yè),2001,55-706金發(fā)慶.傳感器技術(shù)與應(yīng)用.:機(jī)械工業(yè),2002,120-1507吳金戎,慶陽(yáng).8051單片機(jī)實(shí)踐與應(yīng)用.:清華大學(xué),2002,84-1438常澍,雅興.數(shù)字電路與FPGA(第1版).:人民郵電,2004,41-689徐志軍,徐光輝
56、.CPLD/FPGA的開發(fā)與應(yīng)用.:清華大學(xué)出版,2002,20-5610褚振勇,翁木云. FPGA設(shè)計(jì)與應(yīng)用.電子科技大學(xué),2002,38-15611王建坤.MAX+PLUS入門與提高(第1版).:清華大學(xué),2004,97-13412盧毅,賴杰.VHDL與數(shù)字電路設(shè)計(jì)(第1版).:科學(xué),2001,96-18213宋春榮,芳芳,禮成等.通用集成電路速查手冊(cè).科學(xué)技術(shù),199514王福瑞.單片微機(jī)測(cè)控系統(tǒng)設(shè)計(jì)大全.:航空航天大學(xué),1998,23-4715王大海.新型溫濕度自動(dòng)控制系統(tǒng)的設(shè)計(jì)與應(yīng)用.電子工程師, 2002,1-3416松,黃繼業(yè).EDA技術(shù)實(shí)用教程.科學(xué).2002,50-15017志利,蔡偉.基于AD590的溫度測(cè)控裝置研究.自動(dòng)化與儀器儀表,2002,5-3518Stanley A. White, “Application of Distribut
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 客服話務(wù)知識(shí)培訓(xùn)課件
- 供貨合同補(bǔ)充協(xié)議
- 交通運(yùn)輸行業(yè)智能化交通規(guī)劃與建設(shè)方案
- 湖北省武漢市2024-2025學(xué)年高一上學(xué)期1月期末地理試題 含解析
- 云南省昭通市昭通一中教研聯(lián)盟2024-2025學(xué)年高一上學(xué)期期中質(zhì)量檢測(cè)生物學(xué)B試題(含答案)
- 吉林省長(zhǎng)春市榆樹市2024-2025學(xué)年七年級(jí)上學(xué)期期末生物學(xué)試題(含答案)
- 小學(xué)低年級(jí)數(shù)學(xué)故事讀后感
- 會(huì)議記錄表格:會(huì)議記錄臺(tái)賬分類
- 季度采購(gòu)管理計(jì)劃與工作推進(jìn)安排
- 辦公用品采購(gòu)與供應(yīng)鏈管理協(xié)議
- 新能源概論新能源及其材料課件
- 化學(xué)化工專業(yè)英語(yǔ)1課件
- 裝配式建筑裝配率計(jì)算評(píng)分表
- 1.1北京市基本概況與主要文旅資源《地方導(dǎo)游基礎(chǔ)知識(shí)》(第四版)PPT
- 綜述的寫作方法與技巧課件
- 零售藥店實(shí)施GSP情況的內(nèi)審報(bào)告
- 機(jī)械設(shè)計(jì)基礎(chǔ)網(wǎng)考題庫(kù)答案 吉林大學(xué)
- 新蘇教版科學(xué)六年級(jí)下冊(cè)全冊(cè)教案(含反思)
- 觸電事故應(yīng)急處置卡
- 國(guó)際貿(mào)易運(yùn)輸方式課件
- 南陽(yáng)理工學(xué)院畢業(yè)論文格式規(guī)范
評(píng)論
0/150
提交評(píng)論