格雷碼設(shè)計(jì)報(bào)告_第1頁
格雷碼設(shè)計(jì)報(bào)告_第2頁
格雷碼設(shè)計(jì)報(bào)告_第3頁
格雷碼設(shè)計(jì)報(bào)告_第4頁
格雷碼設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 EDA技術(shù)課程設(shè)計(jì)格雷碼碼轉(zhuǎn)換器設(shè)計(jì)學(xué) 院電氣與信息工程專業(yè)電子信息工程班級(jí)0934111課程名稱EDA技術(shù)學(xué)號(hào)093411139姓名譚振梁指導(dǎo)教師曹延生 一、指導(dǎo)教師評(píng)語(根據(jù)學(xué)生設(shè)計(jì)報(bào)告質(zhì)量、答辯情況及其平時(shí)表現(xiàn)綜合評(píng)定)。二、評(píng)分(按下表要求評(píng)定)評(píng)分項(xiàng)目設(shè)計(jì)報(bào)告評(píng)分答辯評(píng)分平時(shí)表現(xiàn)評(píng)分合 計(jì) (100分)任務(wù)完成情 況(20分)課程設(shè)計(jì)報(bào)告質(zhì)量(40分)表達(dá)情況(10分)回答問題情 況(10分)工作態(tài)度與紀(jì)律(10分)獨(dú)立工作能力(10分)得分課程設(shè)計(jì)成績評(píng)定班級(jí) 姓名 學(xué)號(hào)成績: 分(折合等級(jí) )指導(dǎo)教師簽字 年 月 日 目錄目 錄摘要11.課程設(shè)計(jì)目的22.課程設(shè)計(jì)內(nèi)容及要求22

2、.1設(shè)計(jì)題目22.2設(shè)計(jì)任務(wù)和要求23. EDA設(shè)計(jì)23.1總體設(shè)計(jì)流程圖23.1.1 設(shè)計(jì)的總體流程圖23.1.2 設(shè)計(jì)內(nèi)容33.2波形仿真及分析;34.硬件測試55. 實(shí)驗(yàn)困難問題及解決方法76.課程設(shè)計(jì)總結(jié)77.參考文獻(xiàn)78.附錄8附錄一 modelsim仿真程序8附錄二 測試結(jié)果圖11摘要 現(xiàn)代電子設(shè)計(jì)技術(shù)的核心已轉(zhuǎn)向基于計(jì)算機(jī)的電子設(shè)計(jì)自動(dòng)化技術(shù),即EDA(Electronic Design Automation)技術(shù)。EDA技術(shù)就是依賴計(jì)算機(jī),在EDA工具軟件平臺(tái)上,對以硬件描述語言HDL(Hardware Description Language)為系統(tǒng)邏輯描述手段完成的設(shè)計(jì)文件

3、,自動(dòng)地完成邏輯編譯、化簡、分割、綜合、布局布線以及邏輯優(yōu)化和仿真測試,直至實(shí)現(xiàn)既定的電子線路系統(tǒng)功能。EDA技術(shù)使得設(shè)計(jì)者的工作僅限于利用軟件的方式,即利用硬件描述語言和EDA軟件來完成對系統(tǒng)硬件功能的實(shí)現(xiàn)。硬件描述語言是EDA技術(shù)的重要組成部分,常見的HDL語言有VHDL、Verilog、HDL、ABLE、AHDL、System Verilog和System C。其中VHDL、Verilog在現(xiàn)在的EDA設(shè)計(jì)中使用最多,也擁有幾乎所有主流EDA工具的支持。VHDL語言具有很強(qiáng)的電路描述和建模能力,能從多個(gè)層次對數(shù)字系統(tǒng)進(jìn)行建模和描述,從而大大簡化硬件設(shè)計(jì)任務(wù),提高了設(shè)計(jì)效率和可靠性。在這次

4、設(shè)計(jì)中,主要使用VHDL語言輸入。此次設(shè)計(jì)很好地完成了數(shù)字鐘的定時(shí)、切換顯示年月日和時(shí)分秒的功能,完成了小型FPGA的設(shè)計(jì)開發(fā),鍛煉了動(dòng)手實(shí)踐能力,達(dá)到了課程設(shè)計(jì)的目的。關(guān)鍵詞:EDA技術(shù) 硬件描述語言 VHDL 設(shè)計(jì) 格雷碼轉(zhuǎn)換1.課程設(shè)計(jì)目的EDA技術(shù)課程設(shè)計(jì)在課程結(jié)束以后進(jìn)行,在實(shí)踐中驗(yàn)證理論知識(shí),不僅是為了鞏固課堂上所學(xué)知識(shí),更是為了加深我們對EDA技術(shù)和VHDL語言的理解;為了讓我們自己動(dòng)手完成從設(shè)計(jì)輸入、邏輯綜合、功能仿真、設(shè)計(jì)實(shí)現(xiàn)到實(shí)現(xiàn)編程、時(shí)序仿真,一直到器件的下載測試的整個(gè)過程,真切感受利用EDA技術(shù)對FPGA進(jìn)行設(shè)計(jì)開發(fā)的過程,鍛煉和提高我們對器件的編程調(diào)試能力。2.課程設(shè)

5、計(jì)內(nèi)容及要求2.1設(shè)計(jì)題目格雷碼碼轉(zhuǎn)換器設(shè)計(jì)2.2設(shè)計(jì)任務(wù)和要求輸入數(shù)據(jù)范圍0,9;輸入數(shù)據(jù)做為固定值預(yù)置在程序中,利用開關(guān)選擇不同的數(shù)據(jù)做為轉(zhuǎn)換器的輸入;利用4個(gè)8段數(shù)碼管做為輸出,顯示轉(zhuǎn)換后的格雷碼數(shù)值。完成全部流程:設(shè)計(jì)規(guī)范文檔、模塊設(shè)計(jì)、代碼輸入、功能仿真、約束與綜合、布局布線、時(shí)序仿真、下載驗(yàn)證等。3. EDA設(shè)計(jì)3.1總體設(shè)計(jì)流程圖3.1.1 設(shè)計(jì)的總體流程圖十進(jìn)制輸入范圍:0到15十進(jìn)制轉(zhuǎn)化為二進(jìn)制 (通過模式五引腳設(shè)置實(shí)現(xiàn))二進(jìn)制轉(zhuǎn)化為格雷碼利用GW48系列試驗(yàn)箱進(jìn)行硬件顯示圖1 總體設(shè)計(jì)流程圖3.1.2 設(shè)計(jì)內(nèi)容格雷碼轉(zhuǎn)換器設(shè)計(jì)時(shí),定義輸入g為4位標(biāo)準(zhǔn)邏輯矢量位STD_LOG

6、IC_VECTOR,輸出的信號(hào)4個(gè)信號(hào)的數(shù)據(jù)類型在模式五、模式六下分別為4位和7位標(biāo)準(zhǔn)邏輯矢量位STD_LOGIC_VECTOR。使用LIBRATY語句和USE語句,來打開IEEE庫的程序包STD_LOGIC_1164.ALL。當(dāng)輸入信號(hào)時(shí),程序按照輸入的指令來選擇格雷碼的輸出,并最終通過譯碼器在數(shù)碼管上顯示出來。增加設(shè)計(jì)部分:考慮到易操作及應(yīng)用廣的因素,在原設(shè)計(jì)要求的基礎(chǔ)上增設(shè)十進(jìn)制輸入,并將輸入范圍改為0,15。 3.2波形仿真及分析; 格雷碼(Gray code),又叫循環(huán)二進(jìn)制碼或反射二進(jìn)制碼,在數(shù)字系統(tǒng)中只能識(shí)別0和1,各種數(shù)據(jù)要轉(zhuǎn)換為二進(jìn)制代碼才能進(jìn)行處理,格雷碼是一種無權(quán)碼,采用

7、絕對編碼方式,典型格雷碼是一種具有反射特性和循環(huán)特性的單步自補(bǔ)碼,它的循環(huán)、單步特性消除了隨機(jī)取數(shù)時(shí)出現(xiàn)重大誤差的可能,它的反射、自補(bǔ)特性使得求反非常方便。格雷碼屬于可靠性編碼,是一種錯(cuò)誤最小化的編碼方式。一個(gè)二進(jìn)制碼轉(zhuǎn)換成格雷碼的方法是,從最右邊一位起,依次將每一位與左邊一位異或(XOR),作為對應(yīng)格雷碼該位的值,最左邊一位不變。那么我們?nèi)绾螌?shí)現(xiàn)一個(gè)4位二進(jìn)制碼到格雷碼轉(zhuǎn)換器的設(shè)計(jì)呢? 假設(shè)這4位二進(jìn)制碼為,輸出格雷碼為,則我們可以得到,。表格如表1。4位二進(jìn)制碼格雷碼00000000000100010010001100110010010001100101011101100101011101

8、001000110010011101101011111011111011001010110110111110100111111000表1 二進(jìn)制與格雷碼轉(zhuǎn)換表我們用modelsim軟件進(jìn)行仿真,仿真程序見附錄一。下面是modelsim軟件仿真波形。圖2 格雷碼轉(zhuǎn)換仿真圖4.硬件測試經(jīng)過modelsim軟件的仿真成功后,接下來我們就在試驗(yàn)箱上做硬件測試,這需要用到另一個(gè)軟件quartus II.通過quartusII軟件,建立工程,進(jìn)行編譯,引腳設(shè)定進(jìn)行硬件測試,得到電路圖圖一,我們選擇的芯片是GW2C35 EP2C35FBGA484C8 CycloneII.主要目的是用4個(gè)按鍵來控制4個(gè)七段數(shù)

9、碼管,4個(gè)按鍵表示的是4位二進(jìn)制,4個(gè)七段數(shù)碼管則顯示的經(jīng)過輸入轉(zhuǎn)換后的格雷碼,所以這需要嚴(yán)格控制好各引腳的鏈接,其引腳設(shè)定如圖4。圖3 整體電路圖圖4 引腳圖通過quartusII,軟件把程序燒入試驗(yàn)箱中,便可通過按鍵輸入得到輸出結(jié)果,便可進(jìn)行驗(yàn)證。我們選定鍵8、鍵7、鍵6、鍵5作為輸入控制鍵。與其相對應(yīng)的七段數(shù)碼管作為輸出顯示。根據(jù)表1,逐一比對,測試結(jié)果與理論、仿真一致。部分結(jié)果附錄二。5. 實(shí)驗(yàn)困難問題及解決方法 編寫的程序會(huì)有各種不完善,所以運(yùn)用modelsim軟件進(jìn)行仿真,因此必須編寫testbench的程序,從而進(jìn)行仿真,不斷地根據(jù)錯(cuò)誤提示進(jìn)行修改,通過查資料,發(fā)現(xiàn)問題,并改寫,

10、最后仿真成功。硬件測試時(shí),燒入程序時(shí),PC未能及時(shí)識(shí)別USB外接設(shè)備,聽過重新啟動(dòng)試驗(yàn)箱,重新插入U(xiǎn)SB線,解決這一問題。6.課程設(shè)計(jì)總結(jié)在這次設(shè)計(jì)過程中,我遇到很多問題,開始的時(shí)候,制定的方案有錯(cuò)誤,花費(fèi)了一天半的時(shí)間,雖然能夠使各個(gè)模塊單獨(dú)仿真成功,但是綜合到一塊就會(huì)出錯(cuò),經(jīng)過和同學(xué)商量,最終重新制定方案,又經(jīng)過兩天半的編程最終達(dá)到了預(yù)期的結(jié)果。在此過程中讓我學(xué)到了一些知識(shí):1、正確而有效的方案是成功的一半,只有正確的方案才能高效的完成任務(wù)。2、細(xì)節(jié)很重要,基本功必須要扎實(shí),因?yàn)樵诰幊讨杏龅搅撕芏嗉?xì)節(jié)問題,只有基本功扎實(shí)才能減少出錯(cuò)的幾率。3、對eda知識(shí)又有了更進(jìn)一步的提高,特別是模塊化

11、思想和buffer信號(hào)的應(yīng)用,都讓我在此次設(shè)計(jì)過程中學(xué)會(huì)了,并能夠熟練的應(yīng)用。7.參考文獻(xiàn)1 林明權(quán).VHDL數(shù)字控制系統(tǒng)設(shè)計(jì)范例M. 北京:電子工業(yè)出版社.20032 雷伏容.VHDL電路設(shè)計(jì)M. 北京:清華大學(xué)出版社.20063 陳榮,陳華.VHDL芯片設(shè)計(jì)M. 北京:機(jī)械工業(yè)出版社.20064 楊恒,李愛國等. FPGA/CPLD最新實(shí)用技術(shù)指南M. 北京:清華大學(xué)出版社. 20055 孫研鵬,張芝賢等.VHDL與可編程邏輯器件應(yīng)用M. 北京:航空工業(yè)出版社. 20066 辛春艷.VHDL硬件描述語言M. 北京:國防工業(yè)出版社.20027 曾繁泰,陳美金.VHDL程序設(shè)計(jì)M. 北京:清華

12、大學(xué)出版社. 20008 閻石.數(shù)字電子技術(shù)M. 北京:高等教育出版社. 20069 Bob Zeidman, 基于FPGA&CPLD的數(shù)字IC設(shè)計(jì)方法 M. 趙宏圖譯,北京:北京航空航天大學(xué)出版社.20048.附錄附錄一 modelsim仿真程序rtl文件library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity geleima is port ( g : in std_logic_vector(3 downto 0); yout,sg

13、0,sg1,sg2,sg3 : out std_logic_vector(6 downto 0);end geleima;architecture rtl of geleima issignal b:std_logic_vector(3 downto 0);signal q:std_logic_vector(6 downto 0);beginprocess (g)begincase g is when 0000=qqqqqqqqqqqqqqqqnull; end case ; end process; yout b b b b b b b b b b b b b b b bNULL; end

14、case; end process p1; p2: process(b) begin case b is when 0000= sg3 = 0111111;sg2 = 0111111;sg1 = 0111111;sg0 sg3 = 0111111;sg2 = 0111111;sg1 = 0111111;sg0 sg3 = 0111111;sg2 = 0111111;sg1 = 0000110;sg0 sg3 = 0111111;sg2 = 0111111;sg1 = 0000110;sg0 sg3 = 0111111;sg2 = 0000110;sg1 = 0000110;sg0 sg3 =

15、0111111;sg2 = 0000110;sg1 = 0000110;sg0 sg3 = 0111111;sg2 = 0000110;sg1 = 0111111;sg0 sg3 = 0111111;sg2 = 0000110;sg1 = 0111111;sg0 sg3 = 0000110;sg2 = 0000110;sg1 = 0111111;sg0 sg3 = 0000110;sg2 = 0000110;sg1 = 0111111;sg0 sg3 = 0000110;sg2 = 0000110;sg1 = 0000110;sg0 sg3 = 0000110;sg2 = 0000110;sg

16、1 = 0000110;sg0 sg3 = 0000110;sg2 = 0111111;sg1 = 0000110;sg0 sg3 = 0000110;sg2 = 0111111;sg1 = 0000110;sg0 sg3 = 0000110;sg2 = 0111111;sg1 = 0111111;sg0 sg3 = 0000110;sg2 = 0111111;sg1 = 0111111;sg0 null; end case; end process p2; end rtl;testbench文件library ieee;use ieee.std_logic_1164.all;use ieee

17、.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity test isend test;architecture behaviour of test issignal sig_g :std_logic_vector(3 downto 0):= 0000;signal sig_yout :std_logic_vector(6 downto 0);signal sig_sg0:std_logic_vector(6 downto 0);signal sig_sg1:std_logic_vector(6 downto 0);signal

18、sig_sg2:std_logic_vector(6 downto 0);signal sig_sg3:std_logic_vector(6 downto 0);component geleima port (g : in std_logic_vector(3 downto 0);yout,sg0,sg1,sg2,sg3: out std_logic_vector(6 downto 0);end component; begin- instanceu_geleima : geleima port map (g = sig_g,yout = sig_yout,sg0= sig_sg0,sg1= sig_sg1,sg2= sig_sg2,sg3= sig_sg3);sig_g = 0000, 0001 after 10 ns, 0010 after 20 ns,0011 after 30 ns, 0100 after 40 ns,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論