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

下載本文檔

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

文檔簡介

1、長沙理工大學(xué)計算機組成原理課程設(shè)計報告移位寄存器的設(shè)計與實現(xiàn)張娜學(xué)院計算機與通信工程專業(yè)計算機科學(xué)與技術(shù)班級計0701學(xué)號200750080106 學(xué)生姓名張娜 指導(dǎo)教師黃 敏課程成績完成日期 2009年12月31日題 目移位寄存器的設(shè)計與實現(xiàn)主要內(nèi)容:本設(shè)計根據(jù)計算機組成原理中移位寄存器的相關(guān)知識,利用VHDL語言設(shè)計了三種不同的寄存器:雙向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。要求:(1)通過對相應(yīng)文獻的收集、分析以及總結(jié),給出相應(yīng)課題的背景、意義及現(xiàn)狀研究分析。(2)通過課題設(shè)計,掌握計算機組成原理的分析方法和設(shè)計方法。(3)學(xué)生按要求編寫課程設(shè)計報

2、告書,能正確闡述設(shè)計和實驗結(jié)果。(4)學(xué)生應(yīng)抱著嚴(yán)謹(jǐn)認(rèn)真的態(tài)度積極投入到課程設(shè)計過程中,認(rèn)真查閱相應(yīng)文獻以及實現(xiàn),給出個人分析、設(shè)計以及實現(xiàn)。應(yīng)當(dāng)提交的文件:(1)課程設(shè)計報告。(2)課程設(shè)計附件(主要是源程序)。移位寄存器的設(shè)計與實現(xiàn)摘要:系統(tǒng)使用EDA技術(shù)設(shè)計了具有移位功能的寄存器,采用硬件描述語言VHDL進行設(shè)計,然后進行編程,時序仿真等。軟件基于VHDL語言實現(xiàn)了本設(shè)計的控制功能。本設(shè)計根據(jù)移位寄存器的功能設(shè)計了三種不同的寄存器:雙向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。整個設(shè)計過程簡單,使用方便。功能齊全,精度高,具有一定的開發(fā)價值。關(guān)鍵詞:ED

3、A;VHDL;移位寄存器Abstract: This system usesEDA designed a shift register, using a hardware description language VHDL , then programming, and timing simulation.This software is based on VHDL language to implement the control functions of this design. This design according to the function of shift register

4、 design the three different registers: two-way shift register , string-instring-out (SISO) shift register,string-into parallel-out (SIPO) shift register. The wholedesign has a simple process and is easy to use. And it has a full function and a high precision, and its development value is very high.K

5、eywords: EDA; VHDL; shift register目錄1 引言11.1課程設(shè)計的目的11.2 課程設(shè)計的內(nèi)容12 EDA、VHDL簡介22.1 EDA簡介22.2VHDL22.2.3 VHDL的設(shè)計流程33 移位寄存器設(shè)計過程43.1設(shè)計規(guī)劃43.2 各模塊工作原理及設(shè)計4移位寄存器的工作原理4雙向移位寄存器的設(shè)計4串入串出(SISO)移位寄存器的設(shè)計.63.2.4串入并出(SIPO)移位寄存器的設(shè)計.74 系統(tǒng)仿真.94.1 雙向移位寄存器仿真圖分析.94.2串入串出(SISO)移位寄存器仿真圖分析.94.3串入并出(SIPO)移位寄存器仿真圖分析.10結(jié)束語.11致謝.1

6、2參考文獻.131 引 言隨著社會的發(fā)展,科學(xué)技術(shù)也在不斷的進步。特別是計算機產(chǎn)業(yè),可以說是日新月異,移位寄存器作為計算機的一個重要部件,從先前的只能做簡單的左移或右移功能的寄存器到現(xiàn)在廣泛應(yīng)用的具有寄存代碼、實現(xiàn)數(shù)據(jù)的串行-并行轉(zhuǎn)換、數(shù)據(jù)運算和數(shù)據(jù)處理功能的移位寄存器。移位寄存器正在向著功能強,體積小,重量輕等方向不斷發(fā)展,本設(shè)計主要介紹的是一個基于超高速硬件描述語言VHDL對移位寄存器進行編程實現(xiàn)。近年來,集成電路和計算機應(yīng)用得到了高速發(fā)展,現(xiàn)代電子設(shè)計技術(shù)已邁入一個嶄新的階段,具體表現(xiàn)在:(1)電子器件及其技術(shù)的發(fā)展將更多地趨向于為EDA服務(wù);(2)硬件電路與軟件設(shè)計過程已高度滲透;(3

7、)電子設(shè)計技術(shù)將歸結(jié)為更加標(biāo)準(zhǔn)、規(guī)范的EDA工具和硬件描述語言HDL的運用;(4)數(shù)字系統(tǒng)的芯片化實現(xiàn)手段已成主流。因此利用計算機和大規(guī)模復(fù)雜可編程邏輯器件進行現(xiàn)代電子系統(tǒng)設(shè)計已成為電子工程類技術(shù)人員必不可少的基本技能之一。1.1課程設(shè)計的目的在計算機中常要求寄存器有移位功能。如在進行乘法時,要求將部分積右移;在將并行傳送的數(shù)轉(zhuǎn)換成串行數(shù)時也需要移位。因此,移位寄存器的設(shè)計是必要的。本次設(shè)計的目的就是利用計算機組成原理中移位寄存器的相關(guān)知識,通過課程設(shè)計更加深入的了解移位寄存器的功能。了解EDA技術(shù),并掌握VHDL硬件描述語言的設(shè)計方法和思想,通過學(xué)習(xí)的VHDL語言結(jié)合計算機組成原理中的相關(guān)知

8、識理論聯(lián)系實際,掌握所學(xué)的課程知識。通過對移位寄存器的設(shè)計,鞏固和綜合運用所學(xué)知識,提高對計算機組成原理的理解。1.2課程設(shè)計的內(nèi)容本課程設(shè)計是關(guān)于移位寄存器的設(shè)計,它不僅具有存儲代碼的功能,而且還有左移、右移、并行輸入及保持等功能。本設(shè)計根據(jù)功能的不同,設(shè)計了三種移位寄存器。 ( 1 ) 雙向移位寄存器。 ( 2 ) 串入串出(SISO)移位寄存器。( 3 ) 串入并出(SIPO)移位寄存器。2 EDA、VHDL簡介2.1 EDA簡介EDA是電子設(shè)計自動化(Electronic Design Automation)的縮寫,在20世紀(jì)90年代初從計算機輔助設(shè)計(CAD)、計算機輔助制造(CAM

9、)、計算機輔助測試(CAT)和計算機輔助工程(CAE)的概念發(fā)展而來的。EDA技術(shù)就是以計算機為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言HDL完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可*性,減輕了設(shè)計者的勞動強度。2.2VHDLVHDL的簡介VHDL(Very-High-Speed Integrated Circuit HardwareDescription Language),翻譯成中文就是超高速集成電路硬件描述語言。因此它的應(yīng)用主要是

10、應(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)域得到了廣泛的接受,并逐步取代了原有的非標(biāo)準(zhǔn)的硬件描述語言。1993年,IEEE對VHDL進行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴展VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標(biāo)準(zhǔn)的1076-1993版本,(簡稱93版)。現(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實上的通用硬件描述語言

11、。有專家認(rèn)為,在新的世紀(jì)中,VHDL于Verilog語言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。 VHDL語言的特點(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ā)組共同并行

12、工作才能實現(xiàn)。(4)對于用VHDL完成的一個確定的設(shè)計,可以利用EDA工具進行邏輯綜合和優(yōu)化,并自動的把VHDL描述設(shè)計轉(zhuǎn)變成門級網(wǎng)表。(5)VHDL對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實現(xiàn)的目標(biāo)器件是什么,而進行獨立的設(shè)計。 VHDL的設(shè)計流程1.設(shè)計規(guī)范的定義明確設(shè)計的目的,進行設(shè)計的總體規(guī)劃。分析設(shè)計要求,以及自己要達到的設(shè)計目的和目標(biāo)。2. 采用VHDL進行設(shè)計描述這部分包括設(shè)計規(guī)劃和程序的編寫。設(shè)計規(guī)劃主要包括設(shè)計方式的選擇及是否進行模塊劃分。設(shè)計方式一般包括直接設(shè)計,自頂向下和自底向下設(shè)計。3. VHDL程序仿真對于某些人而言,仿真這一步似乎是可

13、有可無的。但是對于一個可靠的設(shè)計而言,任何設(shè)計最好都進行仿真,以保證設(shè)計的可靠性。另外,對于作為一個獨立的設(shè)計項目而言,仿真文件的提供足可以證明你設(shè)計的完整性。4. 綜合、優(yōu)化和布局布線綜合指的是將設(shè)計描述轉(zhuǎn)化成底層電路的表示形式,其結(jié)果是一個網(wǎng)表或者是一組邏輯方程;優(yōu)化,這個主要是為了提高程序的執(zhí)行效率及減少資源的利用;布局布線,指的是將邏輯關(guān)系轉(zhuǎn)化成電路連接的方式。5仿真這一步主要是為了確定你的設(shè)計在經(jīng)過布局布線之后,是不是還滿足你的設(shè)計要求。3 移位寄存器設(shè)計過程3.1設(shè)計規(guī)劃本設(shè)計是基于VHDL語言設(shè)計的移位寄存器,由于移位寄存器是計算機中非常重要的部件,所以本設(shè)計采用了不同的方法來實

14、現(xiàn)寄存器的移位功能,具體設(shè)計的移位寄存器有:雙向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。由于涉及內(nèi)容比較基礎(chǔ),所以設(shè)計比較簡單。3.2 各模塊工作原理及設(shè)計移位寄存器的工作原理用VHDL語言描述任意分頻數(shù)的分頻器,并實現(xiàn)占空比任意設(shè)置.每當(dāng)系統(tǒng)時鐘上升沿到來時,計數(shù)器就加計數(shù)一位(可任意設(shè)置為N位),當(dāng)計數(shù)值到達預(yù)定值時就對分頻時鐘翻轉(zhuǎn).這樣就會得到一個連續(xù)的時鐘脈沖.當(dāng)移位信號到來時,移位寄存器就對存儲的二進制進行移位操作.移位寄存方式可自行設(shè)置(可左移,右移,一位移,多位移位寄存)。雙向移位寄存器的設(shè)計電路符號:雙向移位寄存器工作原理框圖。如圖3.1所示

15、。 TDIRREGCLK OPLDIN OPRDIR 圖3.1 雙向移位寄存器原理框圖雙向移位寄存器由VHDL程序?qū)崿F(xiàn),下面是其中的一段VHDL代碼:library 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)

16、;end tdirreg;architecture a of tdirreg 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

17、(i); end loop ; end if; end if; end process ; op_l <= q(7); op_r <= q(0);end a;串入串出(SISO)移位寄存器的設(shè)計電路符號:串入串出(SISO)移位寄存器工作原理框圖。如圖3.2所示。 SISODATA_IN DATA_OUTCLK圖3.2 串入串出(SISO)移位寄存器圖元符號串入串出(SISO)移位寄存器由VHDL程序?qū)崿F(xiàn)。下面是其中的部分代碼:library ieee;use ieee.std_logic_1164.all;entity siso is port(data_in : in std_

18、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 process(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(

19、3);end a;3.2.4串入并出(SIPO)移位寄存器的設(shè)計電路符號:串入并出(SIPO)移位寄存器工作原理框圖。如圖3.3所示。 SIPOD_IN D_OUT30CLK圖3.3 串入并出(SIPO)移位寄存器工作框圖串入并出(SIPO)移位寄存器由VHDL程序?qū)崿F(xiàn)。下面是其中的部分代碼:library 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 s

20、td_logic; d_out : out std_logic_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;4

21、系統(tǒng)仿真4.1雙向移位寄存器仿真圖分析雙向移位寄存器的仿真圖,如圖4.1所示。圖 4.1 雙向移位寄存器仿真圖對其仿真圖進行仿真分析: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與上述相反。4.2串入串出(SISO)移位寄存器仿真圖分析串入串出(SISO)移位寄存器的

22、仿真圖,如圖4.2所示。圖4.2串入串出(SISO)移位寄存器的仿真圖對其仿真圖進行仿真分析:clk為時鐘控制信號,data_in為輸入信號,表示要存入的數(shù)據(jù)。data_out為輸出信號,表示輸出的數(shù)據(jù)。如圖所示:當(dāng)data_in串行輸入數(shù)據(jù)時,遇到一個時鐘信號clk,輸入數(shù)據(jù)向右移位,并串行輸出數(shù)據(jù)。4.3串入并出(SIPO)移位寄存器仿真圖分析串入并出(SIPO)移位寄存器的仿真圖,如圖4.3所示。圖4.3 串入并出(SIPO)移位寄存器仿真圖對其仿真圖進行仿真分析:clk為時鐘控制信號,d_in為串行輸入信號,d_out為四位并行輸出信號,串行輸入信號四位為一組,該信號一位一位的按順序存

23、入寄存器。如圖所示:當(dāng)串行輸入四位數(shù)據(jù)時,輸出一次性并行輸出。結(jié)束語經(jīng)過了兩周的學(xué)習(xí)和工作,我終于完成了移位寄存器的設(shè)計和實現(xiàn)及相關(guān)論文。從開始接到課程設(shè)計題目到系統(tǒng)的實現(xiàn),再到論文文章的完成,每走一步對我來說都是新的嘗試與挑戰(zhàn),這也是我在大學(xué)期間獨立完成的一項比較大的項目。在這段時間里,我學(xué)到了很多知識也有很多感受,從課程設(shè)計,EDA,VHDL等相關(guān)知識很不了解的狀態(tài),我開始了獨立的學(xué)習(xí)和試驗,查看相關(guān)的資料和書籍,讓自己頭腦中模糊的概念逐漸清晰,使自己非常稚嫩作品一步步完善起來,每一次改進都是我學(xué)習(xí)的收獲,每一次試驗的成功都會讓我興奮好一段時間。    雖然我

24、的論文作品不是很成熟,還有很多不足之處,但我可以自豪的說,這里面的每一段代碼,都有我的勞動。當(dāng)看著自己的程序,自己成天相伴的系統(tǒng)能夠健康的運行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最終都會化為甜美的甘泉。    這次做論文的經(jīng)歷也會使我受益匪淺,我感受到做論文是要真真正正用心去做的一件事情,是真正的自己學(xué)習(xí)的過程和研究的過程,沒有學(xué)習(xí)就不可能有研究的能力,沒有自己的研究,就不會有所突破,那也就不叫論文了。希望這次的經(jīng)歷能讓我在以后學(xué)習(xí)中激勵我繼續(xù)進步。致 謝本設(shè)計在黃敏老師的悉心指導(dǎo)和嚴(yán)格要求下已完成,從課題選擇、方案論證到具體設(shè)計和調(diào)試,無不凝聚著黃敏老師

25、的心血和汗水。在這次組成原理的課程設(shè)計中,我曾遇到過不少問題和技術(shù)難題,單憑我個人的努力,很難按時完成該課程設(shè)計及報告。在此,我衷心感謝我的指導(dǎo)老師。大家平時沒有養(yǎng)成一個寫報告的良好習(xí)慣,也沒有認(rèn)真對待寫報告這件事情,在格式和內(nèi)容上總是達不到報告的要求,但是黃敏老師一遍又一遍不勝其煩的給我們糾正錯誤,直到所有人的報告都附合要求。黃敏老師認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我獲益非淺。不積跬步何以至千里,本設(shè)計能夠順利的完成,也歸功于黃敏老師的認(rèn)真負(fù)責(zé),使我能夠很好的掌握和運用專業(yè)知識,并在設(shè)計中得以體現(xiàn)。正是有了她的悉心幫助和支持,才使我的課程設(shè)計工作順利完成。參考文獻1潘松

26、.VHDL實用教程M.成都:電子科技大學(xué)出版社,20002 侯伯亨,顧新.VHDL硬件描述語言及數(shù)字邏輯電路設(shè)計.西安:西安電子科技大出版社,20033 甘登岱.EDA培訓(xùn)教程.北京:機械工業(yè)出版社,2005 4 Jayaram.Bhaker.VHDL教程.北京:機械工業(yè)出版社,2006附錄程序名: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_logi

溫馨提示

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

評論

0/150

提交評論