EDA課程設(shè)計——移位寄存器的設(shè)計與實現(xiàn)_第1頁
EDA課程設(shè)計——移位寄存器的設(shè)計與實現(xiàn)_第2頁
EDA課程設(shè)計——移位寄存器的設(shè)計與實現(xiàn)_第3頁
EDA課程設(shè)計——移位寄存器的設(shè)計與實現(xiàn)_第4頁
EDA課程設(shè)計——移位寄存器的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、河南科技大學(xué)課 程 設(shè) 計 說 明 書課程名稱 EDA技術(shù)與應(yīng)用 題 目 移位寄存器的設(shè)計與實現(xiàn) 學(xué) 院 班 級 學(xué)生姓名 指導(dǎo)教師 日 期 EDA技術(shù)課程設(shè)計任務(wù)書班級: 姓名: 學(xué)號: 設(shè)計題目: 移位寄存器的設(shè)計與實現(xiàn) 一、設(shè)計目的進(jìn)一步鞏固理論知識,培養(yǎng)所學(xué)理論知識在實際中的應(yīng)用能力;掌握EDA設(shè)計的一般方法;熟悉一種EDA軟件,掌握一般EDA系統(tǒng)的調(diào)試方法;利用EDA軟件設(shè)計一個電子技術(shù)綜合問題,培養(yǎng)VHDL編程、書寫技術(shù)報告的能力。為以后進(jìn)行工程實際問題的研究打下設(shè)計基礎(chǔ)。二、設(shè)計任務(wù)根據(jù)計算機(jī)組成原理中移位寄存器的相關(guān)知識,利用VHDL語言設(shè)計了三種不同的寄存器:雙向移位寄存器、

2、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。三、設(shè)計要求(1)通過對相應(yīng)文獻(xiàn)的收集、分析以及總結(jié),給出相應(yīng)課題的背景、意義及現(xiàn)狀研究分析。(2)通過課題設(shè)計,掌握計算機(jī)組成原理的分析方法和設(shè)計方法。(3)學(xué)習(xí)按要求編寫課程設(shè)計報告書,能正確闡述設(shè)計和實驗結(jié)果。(4)學(xué)生應(yīng)抱著嚴(yán)謹(jǐn)認(rèn)真的態(tài)度積極投入到課程設(shè)計過程中,認(rèn)真查閱相應(yīng)文獻(xiàn)以及實現(xiàn),給出個人分析、設(shè)計以及實現(xiàn)。四、設(shè)計時間安排查找相關(guān)資料(1天)、設(shè)計并繪制系統(tǒng)原理圖(2天)、編寫VHDL程序(2天)、調(diào)試(2天)、編寫設(shè)計報告(2天)和答辯(1天)。五、主要參考文獻(xiàn)1 江國強(qiáng)編著. EDA技術(shù)與實用(第三版). 北

3、京:電子工業(yè)出版社,2011.2 曹昕燕,周鳳臣.EDA技術(shù)實驗與課程設(shè)計.北京:清華大學(xué)出版社,2006.53 閻石主編.數(shù)字電子技術(shù)基礎(chǔ).北京:高等教育出版社,2003.4 Mark Zwolinski. Digital System Design with VHDL.北京:電子工業(yè)出版社,20085 Alan B. Marcovitz Introduction to logic Design.北京:電子工業(yè)出版社,2003指導(dǎo)教師簽字: 年 月 日農(nóng)業(yè)工程學(xué)院課程設(shè)計說明書移位寄存器的設(shè)計與實現(xiàn)摘 要系統(tǒng)使用EDA技術(shù)設(shè)計了具有移位功能的寄存器,采用硬件描述語言VHDL進(jìn)行設(shè)計,然后進(jìn)行

4、編程,時序仿真等。軟件基于VHDL語言實現(xiàn)了本設(shè)計的控制功能。本設(shè)計根據(jù)移位寄存器的功能設(shè)計了三種不同的寄存器:雙向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。設(shè)計過程中,運用了軟件Quartus進(jìn)行編程,仿真,整個設(shè)計過程簡單,使用方便。功能齊全,精度高,具有一定的開發(fā)價值。通過設(shè)計,對EDA有了更深層的了解,相對于課堂上所學(xué)的知識來說,增加了一定的實踐經(jīng)驗,在編譯時,常會出現(xiàn)錯誤不能通過編譯,經(jīng)過一點點的改正錯誤,最終終于通過編譯,并得到正確的仿真結(jié)果,同時對EDA的實現(xiàn)軟件Quartus的使用方法也能夠更加熟練的掌握。關(guān)鍵詞: EDA,VHDL,移位寄存器

5、目 錄第一章 緒論1一、課程設(shè)計的目的1二、課程設(shè)計的內(nèi)容1三、EDA簡介2四、VHDL21、VHDL的簡介22、VHDL語言的特點33、VHDL的設(shè)計流程3第二章 總體設(shè)計5一、設(shè)計規(guī)劃5二、各模塊工作原理及設(shè)計51、移位寄存器的工作原理52、雙向移位寄存器的設(shè)計53、串入串出(SISO)移位寄存器的設(shè)計84、串入并出(SIPO)移位寄存器的設(shè)計10第三章 設(shè)計結(jié)論13參考文獻(xiàn)14I第一章 緒論隨著社會的發(fā)展,科學(xué)技術(shù)也在不斷的進(jìn)步。特別是計算機(jī)產(chǎn)業(yè),可以說是日新月異,移位寄存器作為計算機(jī)的一個重要部件,從先前的只能做簡單的左移或右移功能的寄存器到現(xiàn)在廣泛應(yīng)用的具有寄存代碼、實現(xiàn)數(shù)據(jù)的串行-

6、并行轉(zhuǎn)換、數(shù)據(jù)運算和數(shù)據(jù)處理功能的移位寄存器。移位寄存器正在向著功能強(qiáng),體積小,重量輕等方向不斷發(fā)展,本設(shè)計主要介紹的是一個基于超高速硬件描述語言VHDL對移位寄存器進(jìn)行編程實現(xiàn)。近年來,集成電路和計算機(jī)應(yīng)用得到了高速發(fā)展,現(xiàn)代電子設(shè)計技術(shù)已邁入一個嶄新的階段,具體表現(xiàn)在:(1)電子器件及其技術(shù)的發(fā)展將更多地趨向于為EDA服務(wù);(2)硬件電路與軟件設(shè)計過程已高度滲透;(3)電子設(shè)計技術(shù)將歸結(jié)為更加標(biāo)準(zhǔn)、規(guī)范的EDA工具和硬件描述語言HDL的運用;(4)數(shù)字系統(tǒng)的芯片化實現(xiàn)手段已成主流。因此利用計算機(jī)和大規(guī)模復(fù)雜可編程邏輯器件進(jìn)行現(xiàn)代電子系統(tǒng)設(shè)計已成為電子工程類技術(shù)人員必不可少的基本技能之一。一

7、、課程設(shè)計的目的在計算機(jī)中常要求寄存器有移位功能。如在進(jìn)行乘法時,要求將部分積右移;在將并行傳送的數(shù)轉(zhuǎn)換成串行數(shù)時也需要移位。因此,移位寄存器的設(shè)計是必要的。本次設(shè)計的目的就是利用計算機(jī)組成原理中移位寄存器的相關(guān)知識,通過課程設(shè)計更加深入的了解移位寄存器的功能。了解EDA技術(shù),并掌握VHDL硬件描述語言的設(shè)計方法和思想,通過學(xué)習(xí)的VHDL語言結(jié)合計算機(jī)組成原理中的相關(guān)知識理論聯(lián)系實際,掌握所學(xué)的課程知識。通過對移位寄存器的設(shè)計,鞏固和綜合運用所學(xué)知識,提高對計算機(jī)組成原理的理解。二、課程設(shè)計的內(nèi)容本課程設(shè)計是關(guān)于移位寄存器的設(shè)計,它不僅具有存儲代碼的功能,而且還有左移、右移、并行輸入及保持等功

8、能。本設(shè)計根據(jù)功能的不同,設(shè)計了三種移位寄存器。( 1 ) 雙向移位寄存器。 ( 2 ) 串入串出(SISO)移位寄存器。( 3 ) 串入并出(SIPO)移位寄存器。三、EDA簡介EDA是電子設(shè)計自動化(Electronic Design Automation)的縮寫,在20世紀(jì)90年代初從計算機(jī)輔助設(shè)計(CAD)、計算機(jī)輔助制造(CAM)、計算機(jī)輔助測試(CAT)和計算機(jī)輔助工程(CAE)的概念發(fā)展而來的。EDA技術(shù)就是以計算機(jī)為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言HDL完成設(shè)計文件,然后由計算機(jī)自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適

9、配編譯、邏輯映射和編程下載等工作。EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可*性,減輕了設(shè)計者的勞動強(qiáng)度。四、VHDL1、VHDL的簡介VHDL(Very-High-Speed Integrated Circuit Hardware Description Language),翻譯成中文就是超高速集成電路硬件描述語言。因此它的應(yīng)用主要是應(yīng)用在數(shù)字電路的設(shè)計中。誕生于1982年。自IEEE公布了VHDL的標(biāo)準(zhǔn)版本,IEEE-1076(簡稱87版)之后,各EDA公司相繼推出了自己的VHDL設(shè)計環(huán)境,或宣布自己的設(shè)計工具可以和VHDL接口。此后VHDL在電子設(shè)計領(lǐng)域得到了廣泛的接受,并逐步取代

10、了原有的非標(biāo)準(zhǔn)的硬件描述語言。1993年,IEEE對VHDL進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)展VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標(biāo)準(zhǔn)的1076-1993版本,(簡稱93版)?,F(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實上的通用硬件描述語言。有專家認(rèn)為,在新的世紀(jì)中,VHDL于Verilog語言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。2、VHDL語言的特點(1)與其他的硬件描述語言相比,VHDL具有更強(qiáng)的行為描述能力,從而決定了他成為系統(tǒng)設(shè)計領(lǐng)域最佳的硬件描述語言。強(qiáng)大的行為描述能力是避開具體的器

11、件結(jié)構(gòu),從邏輯行為上描述和設(shè)計大規(guī)模電子系統(tǒng)的重要保證。(2)VHDL豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計早期就能查驗設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計進(jìn)行仿真模擬。(3)VHDL語句的行為描述能力和程序結(jié)構(gòu)決定了他具有支持大規(guī)模設(shè)計的分解和已有設(shè)計的再利用功能。符合市場需求的大規(guī)模系統(tǒng)高效,高速的完成必須有多人甚至多個代發(fā)組共同并行工作才能實現(xiàn)。(4)對于用VHDL完成的一個確定的設(shè)計,可以利用EDA工具進(jìn)行邏輯綜合和優(yōu)化,并自動的把VHDL描述設(shè)計轉(zhuǎn)變成門級網(wǎng)表。(5)VHDL對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨立

12、的設(shè)計。3、VHDL的設(shè)計流程(1)設(shè)計規(guī)范的定義明確設(shè)計的目的,進(jìn)行設(shè)計的總體規(guī)劃。分析設(shè)計要求,以及自己要達(dá)到的設(shè)計目的和目標(biāo)。(2)采用VHDL進(jìn)行設(shè)計描述這部分包括設(shè)計規(guī)劃和程序的編寫。設(shè)計規(guī)劃主要包括設(shè)計方式的選擇及是否進(jìn)行模塊劃分。設(shè)計方式一般包括直接設(shè)計,自頂向下和自底向下設(shè)計。(3)VHDL程序仿真對于某些人而言,仿真這一步似乎是可有可無的。但是對于一個可靠的設(shè)計而言,任何設(shè)計最好都進(jìn)行仿真,以保證設(shè)計的可靠性。另外,對于作為一個獨立的設(shè)計項目而言,仿真文件的提供足可以證明你設(shè)計的完整性。(4)綜合、優(yōu)化和布局布線綜合指的是將設(shè)計描述轉(zhuǎn)化成底層電路的表示形式,其結(jié)果是一個網(wǎng)表或

13、者是一組邏輯方程;優(yōu)化,這個主要是為了提高程序的執(zhí)行效率及減少資源的利用;布局布線,指的是將邏輯關(guān)系轉(zhuǎn)化成電路連接的方式。(5)仿真這一步主要是為了確定你的設(shè)計在經(jīng)過布局布線之后,是不是還滿足你的設(shè)計要求。13第2章 總體設(shè)計一、設(shè)計規(guī)劃本設(shè)計是基于VHDL語言設(shè)計的移位寄存器,由于移位寄存器是計算機(jī)中非常重要的部件,所以本設(shè)計采用了不同的方法來實現(xiàn)寄存器的移位功能,具體設(shè)計的移位寄存器有:雙向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。由于涉及內(nèi)容比較基礎(chǔ),所以設(shè)計比較簡單。二、各模塊工作原理及設(shè)計1、移位寄存器的工作原理用VHDL語言描述任意分頻數(shù)的分頻器,

14、并實現(xiàn)占空比任意設(shè)置.每當(dāng)系統(tǒng)時鐘上升沿到來時,計數(shù)器就加計數(shù)一位(可任意設(shè)置為N位),當(dāng)計數(shù)值到達(dá)預(yù)定值時就對分頻時鐘翻轉(zhuǎn)。這樣就會得到一個連續(xù)的時鐘脈沖。當(dāng)移位信號到來時,移位寄存器就對存儲的二進(jìn)制進(jìn)行移位操。移位寄存方式可自行設(shè)置(可左移、右移、一位移、多位移位寄存)。所謂雙向移位寄存器,即輸入的數(shù)據(jù)既可以左移又可以右移。所謂的串入/串出移位寄存器,即輸入的數(shù)據(jù)是一個接著一個依序地進(jìn)入,輸出時一個接著一個依序地送出。所謂的串入/并出移位寄存器,即輸入的數(shù)據(jù)是一個接著一個依序地進(jìn)入,輸出時一起送出。2、雙向移位寄存器的設(shè)計(1)雙向移位寄存器工作原理: 圖一 雙向移位寄存器原理圖雙向移位寄

15、存器由VHDL程序?qū)崿F(xiàn),下面是其VHDL代碼:程序名:tdirreg.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY tdirreg IS PORT (clk: IN STD_LOGIC; din: IN STD_LOGIC; dir : IN STD_LOGIC; op_l: OUT STD_LOGIC; op_r: OUT STD_LOGIC);END tdirreg;ARCHITECTURE a OF tdirre

16、g IS SIGNAL q: STD_LOGIC_VECTOR(7 DOWNTO 0);BEGIN PROCESS(clk) BEGIN IF clk'EVENT AND CLK= '1'THEN IF dir = '0' THEN q(0) <= din; FOR i IN 1 TO 7 LOOP q(i) <= q(i-1); END LOOP ; ELSE q(7) <= din; FOR i IN 7 DOWNTO 1 LOOP q(i-1) <=q(i); END LOOP ; END IF; END IF; END P

17、ROCESS ; op_l <= q(7); op_r <= q(0);END a;(2)雙向移位寄存器仿真圖分析:圖二 雙向移位寄存器仿真圖對其仿真圖進(jìn)行仿真分析:dir為一個控制信號,clk為時鐘控制信號,din為輸入信號,表示要存入的數(shù)據(jù),op_r表示右移(從高位到低位)后得到的結(jié)果,op_l表示左移(從低位到高位)后得到的結(jié)果。如圖所示:當(dāng)dir為0時,op_r輸出的是右移的結(jié)果,遇到一個clk的下降沿時,輸入數(shù)據(jù)右移一位。op_l輸出的是左移的結(jié)果,遇到一個clk的下降沿時,輸入數(shù)據(jù)左移一位。當(dāng)dir為1時,op_r與op_l與上述相反。3、串入串出(SISO)移位寄存器

18、的設(shè)計(1) 串入串出移位寄存器工作原理圖三 串入串出移位寄存器原理圖串入串出(SISO)移位寄存器由VHDL程序?qū)崿F(xiàn)。下面是其VHDL代碼:程序名:siso.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY siso IS PORT(data_in : IN STD_LOGIC; clk : IN STD_LOGIC; data_out : OUT STD_LOGIC);END siso;ARCHITECTURE a OF siso IS SIGNAL q : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN PROCE

19、SS(clk) BEGIN IF clk 'EVENT AND CLK = '1' THEN q(0)<=data_in; FOR i IN 1 TO 3 LOOP q(i)<=q(i-1); END LOOP; END IF; END PROCESS; data_out<=q(3);END a;(2) 串入串出移位寄存器仿真圖分析圖四 串入串出移位寄存器仿真圖對其仿真圖進(jìn)行仿真分析:clk為時鐘控制信號,data_in為輸入信號,表示要存入的數(shù)據(jù)。data_out為輸出信號,表示輸出的數(shù)據(jù)。如圖所示:當(dāng)data_in串行輸入數(shù)據(jù)時,遇到一個時鐘信號c

20、lk,輸入數(shù)據(jù)向右移位,并串行輸出數(shù)據(jù)。4、串入并出(SIPO)移位寄存器的設(shè)計(1)串入串出移位寄存器工作原理圖五 串入串出移位寄存器原理圖串入并出(SIPO)移位寄存器由VHDL程序?qū)崿F(xiàn)。下面是其VHDL代碼:程序名:sipo.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY sipo IS PORT(d_in : IN STD_LOGIC; clk : IN STD_LOGIC; d_out : OUT STD_LO

21、GIC_VECTOR(3 DOWNTO 0);END sipo;ARCHITECTURE a OF sipo IS SIGNAL q : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN PROCESS(clk) BEGIN IF clk 'EVENT AND CLK = '1' THEN q(0)<=d_in; FOR i IN 1 TO 3 LOOP q(i)<=q(i-1); END LOOP; END IF; END PROCESS; d_out<=q;END a;(2)串入并出移位寄存器仿真圖分析圖六 串入并出移位寄存器仿

22、真圖對其仿真圖進(jìn)行仿真分析:clk為時鐘控制信號,d_in為串行輸入信號,d_out為四位并行輸出信號,串行輸入信號四位為一組,該信號一位一位的按順序存入寄存器。如圖所示:當(dāng)串行輸入四位數(shù)據(jù)時,輸出一次性并行輸出。第三章 設(shè)計結(jié)論經(jīng)過了兩周的學(xué)習(xí)和工作,我終于完成了移位寄存器的設(shè)計和實現(xiàn)及相關(guān)論文。在這段時間里,我學(xué)到了很多知識也有很多感受,從課程設(shè)計,EDA,VHDL等相關(guān)知識很不了解的狀態(tài),我開始了獨立的學(xué)習(xí)和試驗,查看相關(guān)的資料和書籍,讓自己頭腦中模糊的概念逐漸清晰,使自己非常稚嫩作品一步步完善起來,每一次改進(jìn)都是我學(xué)習(xí)的收獲,每一次試驗的成功都會讓我興奮好一段時間。雖然我的論文作品不是很成熟,還有很多不足之處,但我可以自豪的說,這里面的每一段代碼,都有我的勞動。當(dāng)看著自己的程序,自己成天相伴的系統(tǒng)能夠健康的運行,真是莫大的幸福和欣慰。我相

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論