版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 數(shù)字電子技術(shù)基礎(chǔ)</b></p><p><b> 課程設(shè)計報告書</b></p><p> 題目:基于可編程器件的多路選擇器</p><p><b> 目錄</b></p><p> 背景和設(shè)計目的···&
2、#183;····································
3、;·····</p><p> 設(shè)計背景···························
4、··························</p><p> 設(shè)計目的······&
5、#183;····································
6、;··········</p><p> EDA技術(shù)的簡介·····················
7、183;·······················</p><p> EDA技術(shù)的概念········
8、;····································
9、83;···</p><p> EDA技術(shù)的特點····························
10、····················</p><p> VHDL語言的簡介···········
11、183;································</p><p> V
12、HDL語言的概念···································
13、183;···········</p><p> VHDL語言的特點···················
14、3;···························</p><p> VHDL語言的設(shè)計流程···
15、3;····································
16、183;··</p><p> 16選1設(shè)計的實現(xiàn)過程····························
17、183;········</p><p> 1、 16選1的主要功能······················
18、;·······················</p><p> 2、 函數(shù)真值表········
19、····································
20、3;······</p><p> 3、 硬件設(shè)計(電路圖)························&
21、#183;···················</p><p> 4、 軟件編程···········
22、83;····································&
23、#183;····</p><p> 5、 系統(tǒng)調(diào)試··························
24、83;··························</p><p> 6、 附錄·····&
25、#183;····································
26、;···············</p><p> 7、 小組成員與負責的任務(wù)···············&
27、#183;·························</p><p> 8、 參考文獻·····
28、83;····································&
29、#183;··········</p><p> 多路選擇器(16選1)的設(shè)計</p><p> 摘要 數(shù)據(jù)選擇器是常用的組合邏輯部件之一。它由組合邏輯電路對數(shù)字信號進行控制來完成比較復(fù)雜的邏輯功能。數(shù)據(jù)選擇是指經(jīng)過選擇,把多個通道的數(shù)據(jù)傳送到唯一的公共數(shù)據(jù)通道上去。它的功能相當于一個多
30、個輸入的單刀多擲開關(guān).因此數(shù)據(jù)選擇器又稱多路轉(zhuǎn)換器或多路開關(guān)。數(shù)據(jù)選擇器(MUX)的邏輯功能是在控制輸入端加上適當?shù)男盘?,既可從多個輸入數(shù)據(jù)源中講所需的數(shù)據(jù)信號選擇出來,送到輸出端。</p><p> 關(guān)鍵詞 組合邏輯電路;Maxplus II;VHDL語言;EDA設(shè)計;多路選擇器。</p><p><b> 背景和設(shè)計目的</b></p><
31、;p><b> 1、設(shè)計背景</b></p><p> 在電子技術(shù)飛速發(fā)展的今天,人類正跨入信息時代。從計算機到GSM移動電話,從家用娛樂使用的VCD、HDTV數(shù)字電視到軍用雷達、醫(yī)用CT儀器等設(shè)備,數(shù)字化技術(shù)比比皆是,涉及通信、國防、航天、醫(yī)學(xué)、工業(yè)自動化、計算機應(yīng)用、儀器儀表等領(lǐng)域。數(shù)字系統(tǒng)的使用已經(jīng)成為構(gòu)成現(xiàn)代電子系統(tǒng)的重要標志。</p><p>
32、隨著微電子技術(shù)的發(fā)展,設(shè)計與制造集成電路的任務(wù)已不完全由半導(dǎo)體廠商獨立承擔可編程邏輯器件是一種半定制邏輯器件,它為用戶最終把自己所設(shè)計的邏輯電路直接寫入到芯片上提供了物質(zhì)基礎(chǔ),而不必由芯片制造廠商去設(shè)計和制作專用集成電路,可以避免定制芯片帶來的存在設(shè)計風(fēng)險、制造周期較長、成本高等問題。</p><p> 可編程器件的出現(xiàn),給數(shù)字系統(tǒng)的設(shè)計方法帶來了革命性的變化。通過定義器件內(nèi)部的邏輯和輸入輸出端口,將原來由電路
33、板設(shè)計完成的大部分工作放在芯片設(shè)計中進行。這樣不僅可以通過芯片設(shè)計實現(xiàn)各種數(shù)字邏輯電路功能,而且由于引出端定義的靈活,大大減輕了電路圖設(shè)計和電路板設(shè)計的工作和難度,從而有效地增強了設(shè)計的靈活性,提高了工作效率。</p><p><b> 2、設(shè)計目的</b></p><p> 本次設(shè)計的目的就是通過實踐掌握數(shù)字電路的分析方法和設(shè)計方法,了解EDA技術(shù)和Maxplu
34、s II軟件并掌握VHDL硬件描述語言的設(shè)計方法和思想。以數(shù)字電路為指導(dǎo),通過學(xué)習(xí)的VHDL語言結(jié)合電子電路的設(shè)計知識理論聯(lián)系實際,掌握所學(xué)的課程知識和基本單元電路的綜合設(shè)計應(yīng)用。</p><p> 通過此次16選1選擇器課程設(shè)計的制作,熟悉掌握Maxpuls II軟件的使用方法以及程序編寫的基本功能,同時掌握用數(shù)據(jù)選擇器實現(xiàn)多路信號的分時傳送,實現(xiàn)組合邏輯函數(shù)的方法。</p><p>
35、<b> EDA技術(shù)的簡介</b></p><p> 1、EDA技術(shù)的概念</p><p> EDA是電子設(shè)計自動化(Electronic Design Automation)的縮寫,在20世紀90年代初從計算機輔助設(shè)計(CAD)、計算機輔助制造(CAM)、計算機輔助測試(CAT)和計算機輔助工程(CAE)的概念發(fā)展而來的。EDA技術(shù)就是以計算機為工具,設(shè)計者在
36、EDA軟件平臺上,用硬件描述語言HDL完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。由于它是一門剛剛發(fā)展起來的新技術(shù),涉及面廣,內(nèi)容豐富,理解各異。從EDA技術(shù)的幾個主要方面的內(nèi)容來看,可以理解為:EDA技術(shù)是以大規(guī)??删幊踢壿嬈骷樵O(shè)計載體,以硬件描述語言為系統(tǒng)邏輯描述的主要表達方式,以計算機、大規(guī)模可編程邏輯器件的開發(fā)軟件及實驗開發(fā)系
37、統(tǒng)為設(shè)計工具,通過有關(guān)的開發(fā)軟件,自動完成用軟件的方式設(shè)計電子系統(tǒng)到硬件系統(tǒng)的一門新技術(shù)。</p><p> 2、EDA技術(shù)的特點</p><p> 采用可編程器件,通過設(shè)計芯片來實現(xiàn)系統(tǒng)功能。采用硬件描述語言作為設(shè)計輸入和庫(LibraLy)的引入,由設(shè)計者定義器件的內(nèi)部邏輯和管腳,將原來由電路板設(shè)計完成的大部分工作故在芯片的設(shè)計中進行。由于管腳定義的靈活性,大大減輕了電路圖設(shè)計和電
38、路板設(shè)計的工作量和難度,有效增強了設(shè)計的靈活性,提高了工作效率。并且可減少芯片的數(shù)量,縮小系統(tǒng)體積,降低能源消耗,提高了系統(tǒng)的性能和可靠性。能全方位地利用計算機自動設(shè)計、仿真和調(diào)試。</p><p><b> VHDL語言的簡介</b></p><p> 1、VHDL語言的概念</p><p> VHDL語言是一種用于電路設(shè)計的高級語言。
39、它在80年代的后期出現(xiàn)。最初是由美國國防部開發(fā)出來供美軍用來提高設(shè)計的可靠性和縮減開發(fā)周期的一種使用范圍較小的設(shè)計語言。但是,由于它在一定程度上滿足了當時的設(shè)計需求,于是他在1987年成為A I/IEEE的標準(IEEE STD 1076-1987)。1993年更進一步修訂,變得更加完備,成為A I/IEEE的A I/IEEE STD 1076-1993標準。目前,大多數(shù)的CAD廠商出品的EDA軟件都兼容了這種標準。VHDL的英文全寫是
40、:VHSIC(Very High eed Integrated Circuit)Hardware Descriptiong Language.翻譯成中文就是超高速集成電路硬件描述語言。因此它的應(yīng)用主要是應(yīng)用在數(shù)字電路的設(shè)計中。</p><p> 2、VHDL語言的特點</p><p> VHDL是一種用普通文本形式設(shè)計數(shù)字系統(tǒng)的硬件描述語言,主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口
41、,可以在任何文字處理軟件環(huán)境中編輯。除了含有許多具有硬件特征的語句外,其形式、描述風(fēng)格及語法十分類似于計算機高級語言。VHDL程序?qū)⒁豁椆こ淘O(shè)計項目(或稱設(shè)計實體)分成描述外部端口信號的可視部分和描述端口信號之間邏輯關(guān)系的內(nèi)部不可視部分,這種將設(shè)計項目分成內(nèi)、外兩個部分的概念是硬件描述語言(HDL)的基本特征。當一個設(shè)計項目定義了外部界面(端口),在其內(nèi)部設(shè)計完成后,其他的設(shè)計就可以利用外部端口直接調(diào)用這個項目。VHDL的主要特點如下:
42、</p><p> 1). 作為HDL的第一個國際標準,VHDL具有很強的可移植性。</p><p> 2). 具有豐富的模擬仿真語句和庫函數(shù),隨時可對設(shè)計進行仿真模擬,因而能將設(shè)計中的錯誤消除在電路系統(tǒng)裝配之前,在設(shè)計早期就能檢查設(shè)計系統(tǒng)功能的可行性,有很強的預(yù)測能力。</p><p> 3). VHDL有良好的可讀性,接近高級語言,容易理解。</p&
43、gt;<p> 4). 系統(tǒng)設(shè)計與硬件結(jié)構(gòu)無關(guān),方便了工藝的轉(zhuǎn)換,也不會因工藝變化而使描述過時。</p><p> 5). 支持模塊化設(shè)計,可將大規(guī)模設(shè)計項目分解成若干個小項目,還可以把已有的設(shè)計項目作為一個模塊調(diào)用。</p><p> 6). 對于用VHDL完成的一個確定設(shè)計,可以利用EDA工具進行邏輯綜合和優(yōu)化,并能自動地把VHDL描述轉(zhuǎn)變成門電路級網(wǎng)表文件。<
44、;/p><p> 7). 設(shè)計靈活,修改方便,同時也便于設(shè)計結(jié)果的交流、保存和重用,產(chǎn)品開發(fā)速度快,成本低。</p><p> 3、VHDL語言的設(shè)計流程</p><p> 它主要包括以下幾個步驟:</p><p><b> 1).文本編輯:</b></p><p> 用任何文本編輯器都可以
45、進行,也可以用專用的HDL編輯環(huán)境。通常VHDL文件保存為.vhd文件,Verilog文件保存為.v文件。</p><p> 2).使用編譯工具編譯源文件。</p><p><b> 3).功能仿真:</b></p><p> 將文件調(diào)入VHDL仿真軟件進行功能仿真,檢查邏輯功能是否正確(也叫前仿真,對簡單的設(shè)計可以跳過這一步,只在布線完
46、成以后,進行時序仿真)</p><p><b> 4).邏輯綜合:</b></p><p> 將源文件調(diào)入邏輯綜合軟件進行綜合,即把語言綜合成最簡的布爾表達式。邏輯綜合軟件會生成.edf或.edif 的EDA工業(yè)標準文件。</p><p><b> 5).布局布線:</b></p><p>
47、 將.edf文件調(diào)入PLD廠家提供的軟件中進行布線,即把設(shè)計好的邏輯安放PLD/FPGA內(nèi)。</p><p><b> 6).時序仿真:</b></p><p> 需要利用在布局布線中獲得的精確參數(shù),用仿真軟件驗證電路的時序。(也叫后仿真) 通常以上過程可以都在PLD/FPGA廠家提供的開發(fā)工具。</p><p> 四、16選1設(shè)計的實現(xiàn)
48、過程</p><p> 1、16選1的主要功能</p><p> 數(shù)據(jù)選擇器是常用的組合邏輯部件之一。它由組合邏輯電路對數(shù)字信號進行控制來完成比較復(fù)雜的邏輯功能。它有若干個數(shù)據(jù)輸入端D0、D1、....,若干個控制輸入端A0、A1,......和一個輸出端Y0。數(shù)據(jù)選擇是指經(jīng)過選擇,把多個通道的數(shù)據(jù)傳送到唯一的公共數(shù)據(jù)通道上去。它的功能相當于一個多個輸入的單刀多擲開關(guān).因此數(shù)據(jù)選擇器又
49、稱多路轉(zhuǎn)換器或多路開關(guān)。數(shù)據(jù)選擇器(MUX)的邏輯功能是在控制輸入端加上適當?shù)男盘枺瓤蓮亩鄠€輸入數(shù)據(jù)源中講所需的數(shù)據(jù)信號選擇出來,送到輸出端。</p><p><b> 2、函數(shù)真值表 </b></p><p> 說明:A,B,C,D為輸入地址,Y為輸出端,其中具體輸出情況如上圖所示。</p><p> 3、硬件設(shè)計(電路圖)</
50、p><p> 16選1數(shù)據(jù)選擇器設(shè)計原理圖如下:</p><p> 說明:圖中A、B、C、D是地址輸入端,通過給定的A、B、C、D的輸入狀態(tài),便可以從16個輸入數(shù)據(jù)中選中一個,經(jīng)過或門輸出。例如我們給“ABCD”賦值為“0110”時,則選中第6個數(shù)據(jù),這是因為其他15個數(shù)據(jù)輸入不管輸入值是多少在“ABCD”四個地址輸入信號作用下數(shù)值均為0,最后經(jīng)過或門輸出第6個數(shù)據(jù),如果它是“1”則輸出“
51、1”,如果它是“0”則輸出“0”。</p><p><b> 4、軟件編程</b></p><p> ?。?)工程管理,創(chuàng)建工程。</p><p> (2)VHDL文本語言設(shè)計輸入</p><p> (3)程序的編譯以及運行界面</p><p><b> ?。?)編譯成功</
52、b></p><p> ?。?)打開波形編輯器窗口,建立波形運行文件</p><p> ?。?)進入波形仿真界面</p><p><b> ?。?)波形仿真運行</b></p><p><b> ?。?)波形仿真結(jié)果</b></p><p> (9)程序清單以及必要的
53、模塊注釋</p><p> library ieee; //使IEEE庫可見</p><p> use ieee.std_logic_1164.all; //調(diào)用IEEE庫中的程序包</p><p> entity xuanzeqi is //建立名為xuanzeqi的實體</p><p&g
54、t; port(shurushuju:instd_logic_vector(15 downto 0);//端口說明</p><p> A,B,C,D:instd_logic; //進入實體的信號的名稱ABCD和它們的數(shù)據(jù)類型</p><p> Y: out std_logic ); //離開實體的信號名稱Y以及其數(shù)據(jù)類型</p><p>
55、 end xuanzeqi ; //定義實體結(jié)束</p><p> architecture jiegouti of xuanzeqi is //建立名為jiegouti的結(jié)構(gòu)體</p><p> signal xinhaoming :std_logic_vector(3 downto 0); //結(jié)構(gòu)體信號說明</p><p>&
56、lt;b> begin</b></p><p> xinhaoming<=B&A&C&D; //信號的代入賦值</p><p> process(shurushuju,xinhaoming)//在process中封裝</p><p><b> b
57、egin</b></p><p> if (xinhaoming="0000")then Y<=shurushuju(0);//以下為并行處理語句</p><p> elsif (xinhaoming="0001")then Y<=shurushuju(1);</p><p> elsi
58、f (xinhaoming="0010")then Y<=shurushuju(2);</p><p> elsif (xinhaoming="0011")then Y<=shurushuju(3);</p><p> elsif (xinhaoming="0100")then Y<=shurushuju(4
59、);</p><p> elsif (xinhaoming="0101")then Y<=shurushuju(5);</p><p> elsif (xinhaoming="0110")then Y<=shurushuju(6);</p><p> elsif (xinhaoming="0111&
60、quot;)then Y<=shurushuju(7);</p><p> elsif (xinhaoming="1000")then Y<=shurushuju(8);</p><p> elsif (xinhaoming="1001")then Y<=shurushuju(9);</p><p>
61、elsif (xinhaoming="1010")then Y<=shurushuju(10);</p><p> elsif (xinhaoming="1011")then Y<=shurushuju(11);</p><p> elsif (xinhaoming="1100")then Y<=shurus
62、huju(12);</p><p> elsif (xinhaoming="1101")then Y<=shurushuju(13);</p><p> elsif (xinhaoming="1110")then Y<=shurushuju(14);</p><p> elsif (xinhaoming=&q
63、uot;1111")then Y<=shurushuju(15);</p><p> else Y<='Z';</p><p><b> end if;</b></p><p> end process; //進程執(zhí)行結(jié)束</p><p><b
64、> 5、系統(tǒng)調(diào)試</b></p><p> 自從得到題目后,我們便開始著手代碼的編寫。我們小組首先從學(xué)習(xí)使用VHDL開始,學(xué)習(xí)了解了什么是庫、結(jié)構(gòu)體、函數(shù)、賦值語句以及怎么去正確地建立并且使用它們。整個小組共同進步,互相幫助,受益匪淺。我們碰到的問題主要有以下幾個:(1)當我們打開new界面并且選中Text Editor file寫入程序,然后按“保存”進入Save As界面,直接按OK???/p>
65、是程序怎么也編譯不過去。后來經(jīng)過分析才知道我們應(yīng)該修改File name為工程名+.vhd。(2)程序編譯運行后我們發(fā)現(xiàn)彈出的對話框中有錯誤提示。經(jīng)過檢查發(fā)現(xiàn)原來我們錯誤地把“elsif”寫成了“else if”。(3)當我們點擊MAX+plus并且選中Simulator后,出現(xiàn)了“缺少.SCF文件”的錯誤提示,后來我們才知道在進行方針之前應(yīng)該先進行保存,這樣才會生成波形仿真所必需的文件?,F(xiàn)在16選1選擇器的設(shè)計已全部完成,能夠完成預(yù)期
66、的功能,在本課題的設(shè)計中體現(xiàn)了VHDL覆蓋面廣,描述能力強,是一個多層次的硬件描述語言及PLD器件速度快,使用方便,便于修改等特點。在這一周里我們再次熟悉和增強了對VHDL語言的基本知識,熟悉利用VHDL語言對</p><p><b> 6、附錄</b></p><p><b> 設(shè)計的程序清單:</b></p><p&g
67、t; libraryieee;</p><p> use ieee.std_logic_1164.all;</p><p> entityxuanzeqi is</p><p> port(shurushuju:instd_logic_vector(15 downto 0);</p><p> A,B,C,D:instd_logic
68、;</p><p> Y: out std_logic );</p><p> endxuanzeqi ;</p><p> architecturejiegouti of xuanzeqi is</p><p> signalxinhaoming :std_logic_vector(3 downto 0);</p>&
69、lt;p><b> begin</b></p><p> xinhaoming<=B&A&C&D;</p><p> process(shurushuju,xinhaoming)</p><p><b> begin</b></p><p> if
70、 (xinhaoming="0000")then Y<=shurushuju(0);</p><p> elsif (xinhaoming="0001")then Y<=shurushuju(1);</p><p> elsif (xinhaoming="0010")then Y<=shurushuju(
71、2);</p><p> elsif (xinhaoming="0011")then Y<=shurushuju(3);</p><p> elsif (xinhaoming="0100")then Y<=shurushuju(4);</p><p> elsif (xinhaoming="0101
72、")then Y<=shurushuju(5);</p><p> elsif (xinhaoming="0110")then Y<=shurushuju(6);</p><p> elsif (xinhaoming="0111")then Y<=shurushuju(7);</p><p>
73、 elsif (xinhaoming="1000")then Y<=shurushuju(8);</p><p> elsif (xinhaoming="1001")then Y<=shurushuju(9);</p><p> elsif (xinhaoming="1010")then Y<=shurush
74、uju(10);</p><p> elsif (xinhaoming="1011")then Y<=shurushuju(11);</p><p> elsif (xinhaoming="1100")then Y<=shurushuju(12);</p><p> elsif (xinhaoming=&qu
75、ot;1101")then Y<=shurushuju(13);</p><p> elsif (xinhaoming="1110")then Y<=shurushuju(14);</p><p> elsif (xinhaoming="1111")then Y<=shurushuju(15);</p>
76、<p> else Y<='Z';</p><p><b> end if;</b></p><p> end process;</p><p> endjiegouti;</p><p><b> 設(shè)計的函數(shù)電路圖:</b></p><
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 多路選擇器課程設(shè)計
- 可編程器件的設(shè)計與開發(fā)
- 基于可編程器件的存儲測試系統(tǒng)設(shè)計.pdf
- 基于可編程器件的信號發(fā)生器的設(shè)計【文獻綜述】
- 基于可編程器件的信號發(fā)生器的設(shè)計【開題報告】
- 可編程器件與應(yīng)用---作業(yè)一
- 基于可編程增益多路選擇器的陣列信號數(shù)據(jù)預(yù)處理系統(tǒng).pdf
- 基于可編程器件的安全監(jiān)控系統(tǒng)開發(fā).pdf
- 可編程定時器課程設(shè)計--- 寬范圍可編程定時器
- 基于靜態(tài)不揮發(fā)存儲器的新型可編程器件研究.pdf
- 基于現(xiàn)場可編程器件的智能無線傳感器網(wǎng)絡(luò)自修復(fù)設(shè)計.pdf
- 可編程音樂發(fā)生器課程設(shè)計
- 基于eeprom的可編程波形發(fā)生器 課程設(shè)計
- eda課程設(shè)計-- 多路數(shù)據(jù)選擇器、奇偶檢驗器
- 電子與信息工程畢業(yè)論文基于可編程器件的信號發(fā)生器的設(shè)計
- 課程設(shè)計---基于eeprom的可編程波形發(fā)生器
- 可編程彩燈課程設(shè)計報告
- 基于可編程器件實現(xiàn)的PCI數(shù)據(jù)采集卡的研究.pdf
- 可編程字符顯示課程設(shè)計
- 可編程彩燈控制器課程設(shè)計報告
評論
0/150
提交評論