版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課程設(shè)計說明書唐 山 學 院 EDA技術(shù) 課 程 設(shè) 計 題 目 數(shù)字電子鐘設(shè)計 系 (部) 智能與信息工程學院 班 級 13電本1班 姓 名 馬建雨 學 號 4130208144 指導教師 郭耀華、王默琦、戴彥 2016 年 7 月 4 日至 7 月 8 日 共 1 周2016年 7 月8日目 錄1 引言12 EDA技術(shù)簡介22.1 EDA技術(shù)的基本特征22.2 硬件描述語言23 QuartusII軟件簡介43.1軟件介紹43.2 QuartusII工作環(huán)境介紹54 課程設(shè)計說明84.1設(shè)計內(nèi)容84.2設(shè)計要求84.3設(shè)計目的84.4設(shè)計思路84.5 設(shè)計具體方案及實現(xiàn)94.5.1秒、分、時
2、計時模塊94.5.2 動態(tài)顯示模塊114.5.3 整點報時模塊134.5.4 校時模塊144.6 總程序165 總結(jié)18參考文獻193課程設(shè)計說明書1 引言隨著大規(guī)模集成電路技術(shù)和計算機技術(shù)的不斷發(fā)展,在涉及通信、國防、航天、醫(yī)學、工業(yè)自動化、計算機應用、儀器儀表等領(lǐng)域的電子系統(tǒng)設(shè)計工作中,EDA技術(shù)的含量正以驚人的速度上升;電子類的高新技術(shù)項目的開發(fā)也愈益依賴于EDA技術(shù)的應用。即使是普通的電子技術(shù)的開發(fā),EDA技術(shù)常常使一些原來的技術(shù)瓶頸得以輕松突破,從而使產(chǎn)品的開發(fā)周期大為縮短、性能價格比大幅提高。不言而喻,EDA技術(shù)將迅速成為電子設(shè)計領(lǐng)域中的極其重要的組成部分。EDA技術(shù)的設(shè)計語言為V
3、HDL(硬件描述語言),實驗載體為可編程器件CPLD或者FPGA,進行元件模擬和仿真的目標器件為ASIC/SOC芯片。它是一種自動化設(shè)計電子產(chǎn)品的過程。在電子設(shè)計仿真的領(lǐng)域里,EDA技術(shù)的出現(xiàn)具有非常重要的現(xiàn)實意義。EDA源自于計算機輔助設(shè)計、制造、測試以及輔助工程。利用EDA工具,設(shè)計者們可以從概念、算法、協(xié)議等方面來設(shè)計電子系統(tǒng)。值得一提的是,在整個電子系統(tǒng)的設(shè)計過程中,設(shè)計電路、分析性能、布置IC和PCB版圖等步驟都可以在電腦上自動完成。時鐘是我們?nèi)粘I钪斜貍涞纳钣闷分?。而?shù)字時鐘的出現(xiàn)更是給人們的生產(chǎn)生活帶來了極大的便利。鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴展
4、了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、定時啟閉電路、定時開關(guān)烘箱、通斷動力設(shè)備,甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究數(shù)字鐘及擴大其應用,有著非?,F(xiàn)實的意義。EDA技術(shù)為數(shù)字類產(chǎn)品提供了一個非常簡便實用的開發(fā)平臺。隨著EDA技術(shù)的快速發(fā)展,數(shù)字時鐘的應用越來越廣泛,并且它在功能外觀方面也有了很大的改善和提高。本文就是基于EDA技術(shù)的基礎(chǔ)知識,利用Quartus2軟件再現(xiàn)一個具有傳統(tǒng)時鐘功能和自動報時功能的數(shù)字時鐘。 數(shù)字鐘采用EDA技術(shù)設(shè)計,利用硬件描述語言VHDL按模塊化方式設(shè)計、編程及時序仿真等。該數(shù)字鐘能實
5、現(xiàn)時、分、秒計數(shù)的顯示功能,且以24小時循環(huán)計時,具有清零的功能,且能夠?qū)τ嫊r系統(tǒng)的小時、分鐘進行調(diào)整,具有整點報時功能。整個系統(tǒng)包括傳統(tǒng)數(shù)字時鐘所擁有的計時模塊、校時模塊、譯碼顯示模塊以及整點報時模塊。整個系統(tǒng)使用方便,功能齊全,精度高。2 EDA技術(shù)簡介電子設(shè)計技術(shù)的核心就是EDA 技術(shù),EDA是指以計算機為工作平臺,融合應用電子技術(shù)、計算機技術(shù)、智能化技術(shù)、最新成果二研制成的電子CAD通用軟件包,主要能輔助進行三方面的設(shè)計工作,即IC設(shè)計、電子電路設(shè)計和PCB設(shè)計。2.1 EDA技術(shù)的基本特征EDA代表了當今電子技術(shù)的最新發(fā)展方向,它的基本特征是:設(shè)計人員按照“自頂向下”的設(shè)計方法,對整
6、個系統(tǒng)進行方案設(shè)計和功能劃分,系統(tǒng)的關(guān)鍵電路用一片或幾片專用集成電路(ASIC)實現(xiàn),然后采用硬件描述語言(HDL)完成系統(tǒng)行為及設(shè)計,最后通過綜合器和適配器生成最終的目標器件,這樣的設(shè)計被稱為高層次的電子設(shè)計方法。這種設(shè)計方法首先從系統(tǒng)設(shè)計入手,在頂層進行功能方框圖的劃分和結(jié)構(gòu)設(shè)計。在方框圖一級進行仿真、糾錯,并用硬件描述語言對高層次的系統(tǒng)行為進行描述,在系統(tǒng)一進行享驗證。然后,用綜合優(yōu)化工具生成具體門電路的網(wǎng)絡(luò)表,其對應的物理實現(xiàn)既可以是印刷電路板或?qū)S眉呻娐?。由于設(shè)計的主要仿真和調(diào)試過程實在高層次上完成的,這既有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計上的一些錯誤,避免設(shè)計工作的浪費,又減少了邏輯功能仿真
7、的工作量,提高了設(shè)計的一次成功率。2.2 硬件描述語言 硬件描述語言是一種用于設(shè)計硬件電子系統(tǒng)的計算機語言,它用軟件編程的方式來描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式,與傳統(tǒng)的門級描述方式相比,它更適合大規(guī)模系統(tǒng)的設(shè)計。例如一個32位的加法器,利用圖形輸入軟件需要輸入500至1000個門,而利用VHDL語言只需要書寫一行A=B+C即可。而且VHDL語言可讀性強,易于修改和發(fā)現(xiàn)錯誤。早期的硬件描述語言,如ABEL、HDL、AHDL,由不同的EDA廠商開發(fā),互不兼容,而且不支持多層次設(shè)計,層次間翻譯工作要由人工完成。為了克服以上不足,1985年美國國防部正式推出了高速集成電路硬件描述語言VHD
8、L,1987年IEEE采納VHDL為硬件描述語言標準(IEEESTD1067)。VHDL是一種全方位的硬件描述語言,包括系統(tǒng)行為級、寄存器傳輸級和邏輯門級多個設(shè)計層次,支持結(jié)構(gòu)、數(shù)據(jù)流和行為三種描述形式的混合描述,因此VHDL幾乎覆蓋了以往各種硬件描述語言的功能,整個自頂向下或者自底向上的電子設(shè)計過程都可以用VHDL來完成。VHDL還具有以下優(yōu)點:(1)VHDL的寬范圍描述能力使它成為高層次設(shè)計的核心,將設(shè)計人員的工作重心提高到了系統(tǒng)功能的實現(xiàn)與調(diào)試,而花較少的精力于物理實現(xiàn).(2)VHDL可以用簡潔明確的代碼描述來進行復雜控制邏輯的設(shè)計,靈活且方便,而且也便于設(shè)計結(jié)果的交流、保存和重用。(3
9、)VHDL的設(shè)計不依賴于特定的期間,方便了工藝的轉(zhuǎn)換。(4)VHDL是一個標準語言,為眾多的EDA廠商支持,因此移植性好。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式、描述風格以及語法是十分類似于一般的計算機高級語言。VHDL的程序結(jié)構(gòu)特點是將一項工程設(shè)計,或稱設(shè)計實體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可視部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實體的內(nèi)部功能和算法完成部分。在對一個設(shè)計實體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其他的設(shè)計就可以直接調(diào)用這個實體。這種將設(shè)計實體分成內(nèi)外部分的概念是VHDL
10、系統(tǒng)設(shè)計的基本點。與其他的硬件描述語言相比,VHDL的優(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)高效,高速的完成必須有多人甚至多個代發(fā)組共同并行工作才能實現(xiàn)。(4)對于用VHDL完成的一個確定的設(shè)計,可以利用EDA工
11、具進行邏輯綜合和優(yōu)化,并自動的把VHDL描述設(shè)計轉(zhuǎn)變成門級網(wǎng)表。(5)VHDL對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實現(xiàn)的目標器件是什么,而進行獨立的設(shè)計。3 QuartusII軟件簡介3.1軟件介紹Quartus II 是Altera公司的綜合性PLD/FPGA開發(fā)軟件,原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardware 支持Description Language)等多種設(shè)計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計輸入到硬件配置的完整PLD設(shè)計流程。Quartus II可以在XP、Linux以及Unix上使用,除
12、了可以使用Tcl腳本完成設(shè)計流程外,提供了完善的用戶圖形界面設(shè)計方式。具有運行速度快,界面統(tǒng)一,功能集中,易學易用等特點。Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模塊庫,使用戶可以充分利用成熟的模塊,簡化了設(shè)計的復雜性、加快了設(shè)計速度。對第三方EDA工具的良好支持也使用戶可以在設(shè)計流程的各個階段使用熟悉的第三方EDA工具。此外,Quartus II 通過和DSP Builder工具與Matlab/Simulink相結(jié)合,可以方便地實現(xiàn)各種DSP應用系統(tǒng);支持Altera的片上可編程系統(tǒng)(SOPC)開發(fā),集系統(tǒng)級設(shè)計、嵌入式軟件開發(fā)、可編程邏輯設(shè)
13、計于一體,是一種綜合性的開發(fā)平臺。Quartus II提供了完全集成且與電路結(jié)構(gòu)無關(guān)的開發(fā)包環(huán)境,具有數(shù)字邏輯設(shè)計的全部特性,包括:可利用原理圖、結(jié)構(gòu)框圖、VerilogHDL、AHDL和VHDL完成電路描述,并將其保存為設(shè)計實體文件;芯片(電路)平面布局連線編輯;LogicLock增量設(shè)計方法,用戶可建立并優(yōu)化系統(tǒng),然后添加對原始系統(tǒng)的性能影響較小或無影響的后續(xù)模塊;功能強大的邏輯綜合工具;完備的電路功能仿真與時序邏輯仿真工具;定時/時序分析與關(guān)鍵路徑延時分析;可使用SignalTap II邏輯分析工具進行嵌入式的邏輯分析;支持軟件源文件的添加和創(chuàng)建,并將它們鏈接起來生成編程文件;使用組合編
14、譯方式可一次完成整體設(shè)計流程;自動定位編譯錯誤;高效的期間編程與驗證工具;可讀入標準的EDIF網(wǎng)表文件、VHDL網(wǎng)表文件和Verilog網(wǎng)表文件;能生成第三方EDA軟件使用的VHDL網(wǎng)表文件和Verilog網(wǎng)表文件。3.2 QuartusII工作環(huán)境介紹1啟動QuartusII,進入如圖3.1管理器窗口:圖3.1 QuartusII管理器窗口2新建工程,如圖3.2所示:圖3.2.2 新建工程工程項目目錄工程名稱項目頂層設(shè)計實體名稱圖3.2 新建工程3代碼輸入:執(zhí)行File菜單下的New命令,點擊VHDL File。如圖3.3所示:圖3.3 代碼輸入界面4進行程序仿真,如圖3.4所示:圖3.4
15、功能仿真界面5建立波形文件,進行波形仿真。執(zhí)行File菜單下的New命令,點擊Vector Waveform File。如圖3.5所示:圖3.5 功能仿真界面4 課程設(shè)計說明4.1設(shè)計內(nèi)容在本次課程設(shè)計中使用QuartusII軟件并基于實驗室現(xiàn)有的EDA實驗箱,實現(xiàn)數(shù)字電子鐘的設(shè)計:(1)設(shè)計一個能進行時、分、秒計時數(shù)字鐘。(2)能對時、分和秒進行手動調(diào)節(jié)以校準時間。(3)具有整點報時功能,通過選擇此功能,能在整點時間發(fā)出報時聲音。(4)系統(tǒng)具有整體復位功能(5)進階設(shè)計:報時聲響為四低一高,最后一響正好為整點4.2設(shè)計要求(1) 根據(jù)任務(wù)要求確定電路各功能模塊;(2) 寫出設(shè)計程序并給出時序
16、仿真結(jié)果;(3) 最后要有設(shè)計總結(jié);4.3設(shè)計目的(1) 加深對VHDL語言設(shè)計的理解并熟悉QuartusII軟件的工作方法及應用。(2) 通過設(shè)計加深對EDA課程的理解并了解簡易集成電路的設(shè)計思路。(3) 熟悉QuartusII軟件的工作方法及應用技術(shù)。4.4設(shè)計思路顯示LED1(4位)秒計時模塊clk用于正常計時本設(shè)計包含:校時模塊、秒、分計時模塊(60進制計數(shù)器)、時計時模塊(24進制計數(shù)器)、數(shù)碼顯示模塊、整點報時模塊。具體框圖如圖4.1所示:moshi=1moshi=0顯示LED2(4位)分計時模塊校時模塊控制鍵moshi moshi=2整點報時時計時模塊控制鍵anjian mosh
17、i=3圖4.1 設(shè)計框圖4.5 設(shè)計具體方案及實現(xiàn)4.5.1秒、分、時計時模塊(1)秒、分計時模塊的設(shè)計原理秒、分計時模塊實質(zhì)上是一個60進制計數(shù)器其設(shè)計思想是將輸入脈沖進行計數(shù),每來一個上升沿記一次數(shù),當計到60是清零并且進位端輸出1,否則輸出0。而秒計時的進位端用于控制分計時的clk脈沖,分計時的進位端用于控制小時計時的clk脈沖。小時計時模塊則是一個24進制計數(shù)器,與前兩個不同的是其在計到24時清零但不需要使用進位輸出端。(以下均以秒計時為例分析)(2)程序如下:library ieee;use ieee.std_logic_1164.all;entity miao is port(cl
18、k,rst:in std_logic;m1,m2:out std_logic_vector(3 downto 0);-m1為秒的低位;m2為秒的高位; cin:out std_logic);end miao;architecture bhv of miao isbeginprocess(clk,rst)variable temp1:integer range 0 to 10;variable temp2:integer range 0 to 6;beginif rst=1 then temp1:=0;temp2:=0;elsif clkevent and clk=1 then temp1:=t
19、emp1+1;if temp1=10 then temp1:=0; temp2:=temp2+1;if temp2=6 then temp2:=0; cin=1;else cinm1m1m1m1m1m1m1m1m1m1null;end case;case temp2 iswhen 0=m2m2m2m2m2m2null;end case;end process;end bhv;(3)波形仿真在Quartus II軟件輸入上述代碼,再通過編譯和時序仿真,可得到如下的仿真波形。如圖4.2所示:圖4.2 仿真波形(4)將我們設(shè)計的計時模塊電路編譯成庫中的一個元件。如下圖所示:圖4.3秒計時元件圖4.4
20、分計時元件圖4.5 時計時元件4.5.2 動態(tài)顯示模塊(1)動態(tài)顯示模塊的設(shè)計原理將計時模塊的輸出作為顯示模塊的輸入,用動態(tài)掃描的方式實現(xiàn)四位二進制的七段數(shù)碼顯示。本設(shè)計采用了兩個四位七段數(shù)碼顯示模塊實現(xiàn)XXXXXX。(2)設(shè)計程序如下:library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY xianshi1 IS PORT (c1,c2,c3: IN STD_LOGIC_VECTOR(3 DOWNTO 0); clk : IN st
21、d_logic; rst : IN std_logic; led_out1 : OUT std_logic_vector(7 DOWNTO 0); led_bit1 : OUT std_logic_vector(3 DOWNTO 0); END xianshi1 ;ARCHITECTURE bhv OF xianshi1 ISsignal dongtai : std_logic_vector(5 downto 0 );signal data : std_logic_vector(3 downto 0);signal m_bit: std_logic_vector(3 downto 0);beg
22、in process(clk,rst) begin if(rst=1)then dongtai=000000; elsif(clkevent and clk=1)then dongtai m_bit m_bit m_bit m_bit m_bit data data data data data led_out1 led_out1 led_out1 led_out1 led_out1 led_out1 led_out1 led_out1 led_out1 led_out1 led_out1 null; END CASE; END PROCESS; led_bit1=m_bit;end bhv;
23、(4) 將動態(tài)顯示模塊編譯為庫中的元件,如下圖所示: 圖4.7 顯示模塊2圖4.6 顯示模塊1a4.5.3 整點報時模塊(1)模塊設(shè)計原理本次設(shè)計中要求完成進階設(shè)計:報時聲響為四低一高,最后一響正好為整點。所以在設(shè)計中用case語句對alarm進行賦值,例如當分計時模塊輸出為59,而秒計時模塊為56、57、58、59時,對alarm賦低頻clk;當秒、分計時模塊輸出都為00時,對alarm賦1;其他情況時對alarm賦0;(2)設(shè)計程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use iee
24、e.std_logic_unsigned.all;entity baoshi isport(clk:in std_logic; m1,m2,f1,f2,h1,h2:in std_logic_vector(3 downto 0); alarm:out std_logic);end baoshi;architecture bhv of baoshi is signal a:std_logic;beginprocess(clk)variable cnt:integer range 0 to 10000; variable c:std_logic;beginif clkevent and clk=1
25、then if cnt10000 then cnt:=cnt+1;else cnt:=0; c:=not c; end if; end if;a=c; end process;process(f1,f2,m1,m2)beginif f1=0000 and f2=0000 and m1=0000 and m2=0000 then alarm=1;elsif f1=1001 and f2=0101 and m1=0110 and m2=0101 then alarm=a;elsif f1=1001 and f2=0101 and m1=0111 and m2=0101 then alarm=a;e
26、lsif f1=1001 and f2=0101 and m1=1000 and m2=0101 then alarm=a;elsif f1=1001 and f2=0101 and m1=1001 and m2=0101 then alarm=a;else alarmout1=c1;out2=c2;out3out1=k2;out2=1;out3out1=1;out2=k2;out3out1=1;out2=1;out3null;end case; end process; end bhv; (3)將整點報時模塊編譯為庫中的元件,如圖4.9所示:圖4.9 調(diào)時元件4.6 總程序 (1)設(shè)計思想將各個模塊生成元件,最后采用原理圖的方式將輸入輸出對應好以完成各個單獨模塊的綜合來構(gòu)成最后的主程序。 (2)構(gòu)建原理圖,如圖4.10所示: 圖4.10 原理圖(3)對原理圖進行仿真得到仿真波形,如圖4.11所示:圖4.11 仿真波形5 總結(jié)本學期我們開設(shè)了VHDL數(shù)字電路設(shè)計教程,這門學科屬于電子和通信信息技術(shù)范疇,與我們的專業(yè)有著密切的聯(lián)系,且是理論方面的指示。正所謂“紙上談兵終覺淺,覺知此事要躬行?!睂W習任何知識,僅從理論上去求知,而不去實踐、探索是不夠的,所以在本學期暨VHDL數(shù)字電路設(shè)計剛學完之際,緊接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鄭州澍青醫(yī)學高等??茖W校《廣告策劃與創(chuàng)意》2023-2024學年第一學期期末試卷
- 小學2025-2026學年度第一學期教學工作計劃
- 長春汽車工業(yè)高等??茖W校《酒店管理信息系統(tǒng)》2023-2024學年第一學期期末試卷
- 食品生產(chǎn)過程中交叉污染預防措施
- 保險入職培訓模板
- 專業(yè)基礎(chǔ)知識(給排水)-2020年注冊公用設(shè)備工程師(給水排水)《專業(yè)基礎(chǔ)知識》真題
- 代表愛情的花語
- 統(tǒng)編版五年級語文上冊寒假作業(yè)(九)(有答案)
- 人教版四年級數(shù)學下冊第一次月考綜合卷(含答案)
- 二零二五年特種設(shè)備特種買賣合同3篇
- 下套管危害識別和風險評估
- 翼狀胬肉病人的護理
- GB/T 12914-2008紙和紙板抗張強度的測定
- GB/T 1185-2006光學零件表面疵病
- ps6000自動化系統(tǒng)用戶操作及問題處理培訓
- 家庭教養(yǎng)方式問卷(含評分標準)
- 城市軌道交通安全管理課件(完整版)
- 線纜包覆擠塑模設(shè)計和原理
- TSG ZF001-2006 安全閥安全技術(shù)監(jiān)察規(guī)程
- 部編版二年級語文下冊《蜘蛛開店》
- 鍋爐升降平臺管理
評論
0/150
提交評論