freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于fpga的微處理器設(shè)計(jì)畢業(yè)設(shè)計(jì)論文-在線瀏覽

2024-08-02 15:55本頁面
  

【正文】 便地建立電子系統(tǒng)模型。(3) 具有獨(dú)立于器件和工藝設(shè)計(jì)的能力VHDL獨(dú)立于器件的特點(diǎn)可以使設(shè)計(jì)人員集中精力來進(jìn)行電子系統(tǒng)的設(shè)計(jì)和性能優(yōu)化,而不需要考慮其他問題。VHDL的可移植性源于它是一種標(biāo)準(zhǔn)化得硬件語言,因此同一個(gè)設(shè)計(jì)描述可以被不同的工具所支持。2. CISC指令集和RISC指令集CISC是一種為了便于編程和提高內(nèi)存訪問效率的芯片設(shè)計(jì)體系。它的設(shè)計(jì)目的是要用最少的機(jī)器語言指令來完成所需的計(jì)算任務(wù)。內(nèi)容的不斷擴(kuò)充和兼容性的考慮,導(dǎo)致龐大的CISC指令系統(tǒng)形成了。CISC 體系結(jié)構(gòu)幾乎沒有考慮流水線的因素,使得指令執(zhí)行起來耗時(shí)而且尋址復(fù)雜。典型的RISC處理器具有以下特點(diǎn):(1) 指令功能簡單,各指令的復(fù)雜度分布均衡,有利于形成流水線;(2) 控制電路簡單,多采用硬連線方式來實(shí)現(xiàn)。這樣字段固定,使操作碼得譯碼與操作數(shù)的存取可以同時(shí)執(zhí)行,使得控制單元的設(shè)計(jì)簡單化;(4) ALU指令和訪存指令分開,并且訪存種類很少。寄存器對寄存器的運(yùn)算有助于減少對存儲(chǔ)器的訪問次數(shù),提高數(shù)據(jù)的存取速度[78]。各章節(jié)內(nèi)容安排如下:第一章 緒論。研究了CPU的整體設(shè)計(jì),指令系統(tǒng)和時(shí)序分析以及流水線的實(shí)現(xiàn)。詳細(xì)介紹了通路模塊中的程序計(jì)數(shù)器、指令寄存器、程序存儲(chǔ)器等的具體設(shè)計(jì)和功能實(shí)現(xiàn)。詳細(xì)介紹了控制單元中的控制器和狀態(tài)機(jī)的設(shè)計(jì)和功能實(shí)現(xiàn)。驗(yàn)證CPU的部分功能。第二章 微處理器體系結(jié)構(gòu) CPU的功能和構(gòu)成CPU是計(jì)算機(jī)的核心組成部分。(1) 將數(shù)據(jù)和程序(即指令序列)輸入到計(jì)算機(jī)的存儲(chǔ)器中;(2) 從第一條指令的地址開始執(zhí)行該程序,得到所需的結(jié)果,結(jié)束運(yùn)行。分析指令:即指令譯碼,既對當(dāng)前所取的指令進(jìn)行分析,指出它要求什么操作,并產(chǎn)生相應(yīng)的操作所需要的控制命令。將CPU的功能進(jìn)一步細(xì)化,可以概括如下。盡管各種CPU的性能指標(biāo)和結(jié)構(gòu)細(xì)節(jié)各不相同,但它們所能完成的基本功能相同,簡化CPU內(nèi)部結(jié)構(gòu)如圖21所示。指令格式、尋址方式和指令系統(tǒng)是指令系統(tǒng)結(jié)構(gòu)的重要方面。它是在同一個(gè)存儲(chǔ)空間取指令和數(shù)據(jù),采用單地址總線結(jié)構(gòu),即程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器共用一條地址總線,限制了工作帶寬,使得控制電路復(fù)雜,功耗較大[1011]。結(jié)構(gòu)如圖23所示。這對現(xiàn)代微控制器應(yīng)用十分重要,因?yàn)闉榱耸沟綦? 后數(shù)據(jù)表不丟失,就要將它放在程序存儲(chǔ)器中,RISC架構(gòu)很好地解 決了這個(gè)問題。基于以上兩種體系結(jié)構(gòu)特點(diǎn)的比較,本文設(shè)計(jì)的微處理器器采用了哈佛結(jié)構(gòu)的體系結(jié)構(gòu)。其次,該微處理器實(shí)現(xiàn)了兩級指令流水線,采用哈佛結(jié)構(gòu)可使流水實(shí)現(xiàn)的難度大為降低,在采用流水線后,能夠有效地提高指令的執(zhí)行速度。 指令系統(tǒng)本文設(shè)計(jì)的微控制器采用兩級流水線、指令長固定、指令密度適中、控制單元簡單的類似RISC指令集,本文自定義指令集,該指令集僅有20條指令,尋址方式簡單。 指令集表1 是本文所涉及的CPU所有指令的一個(gè)集合指令名稱指令操作影響標(biāo)志位周期算術(shù)與邏輯類指令A(yù)DD R1,R2Add Two RegisterC1SUB R1,R2Sub Two RegisterZ1AND R1,R2And Two RegisterZ1OR R1,R2Or Two RegisterZ1位操作指令LSL R1Logical Shift LeftNone1LSR R1Logical Shift RightNone1數(shù)據(jù)傳送類指令MOV R1,IIMove Between RegisterNone1LD R1Load Immediate from RegisterNone1SD R1Store Result to RegisterNone1停機(jī)指令SLEEPSleep(Wait for )NoneAny尋址方式本文指令系統(tǒng)的尋址方式為下面兩種直接尋址方式:(1) 單一寄存器尋址。操作數(shù)分別在目的寄存器和源操作寄存器中。對設(shè)計(jì)的微處理,每個(gè)指令都是固定的16位長度,其中操作碼占用16 位指令字的高4 位。對兩個(gè)寄存器的指令,d選擇目的寄存器,:r選擇源寄存器,4位可以尋址16個(gè)寄存器,這種指令格式包括ADD,SUB,AND,OR。這種指令格式包括LD,LSL,LSR指令。這種指令格式包括MOV,SD。指令編碼結(jié)果如表2所示。在取指階段,指令機(jī)器碼被取到指令寄存器,控制單元通過譯碼知道這是個(gè)什么樣的指令,需要執(zhí)行什么樣的操作,需要什么操作數(shù);在執(zhí)行階段當(dāng)前指令以及取指完畢,上一條指令被執(zhí)行。為了解決這個(gè)問題,本次設(shè)計(jì)中引入了流水線(pipeline)操作。RISC架構(gòu)的處理器,每條指令有固定的長度,指令格式只有簡單的幾種,指令功能不交叉,尋址方式也簡單,所以更加有利于實(shí)現(xiàn)流水結(jié)構(gòu)。這樣,很顯然也能降低執(zhí)行指令所需的時(shí)鐘數(shù),取指、執(zhí)行只用了一個(gè)時(shí)鐘。 程序計(jì)數(shù)器與流水線程序計(jì)數(shù)器(PC)是程序中尋址取得指令的特殊單元。同時(shí),程序計(jì)數(shù)器也是和流水線密切相關(guān)的單元。由于指令通常是順序執(zhí)行的,所以修改的過程通常只是簡單的PC加1。這樣可以得到結(jié)論:如果當(dāng)前CPU正在執(zhí)行的是第N條指令,那么指令寄存器正在讀取的是N+1條指令,此時(shí)PC的值應(yīng)該是N+2。 CPU的外部引腳規(guī)劃從CPU外部看整個(gè)輸入輸出如圖25圖25 CPU外部引腳信號該CPU有5個(gè)輸入引腳,1個(gè)結(jié)果輸出端口以及一個(gè)運(yùn)算溢出信號。WR信號是系統(tǒng)的異步指令輸入信號,高電平有效。 CPU的整體框圖系統(tǒng)的頂層結(jié)構(gòu)模塊圖如圖26圖26 系統(tǒng)的頂層結(jié)構(gòu)模塊圖圖中的一個(gè)一個(gè)的模塊代表了各個(gè)功能模塊,將在下面的章節(jié)中分別做詳細(xì)的設(shè)計(jì)說明。有些模塊是比較簡單的像指令寄存器(IR),有些模塊則是比較難的像ALU模塊和控制單元模塊。微處理器中有兩種不同的邏輯元件:(1) ALU、MUX、CONCROL單元的元件都是組合邏輯電路。時(shí)鐘用來決定狀態(tài)何時(shí)被寫入,一個(gè)狀態(tài)可以在任意時(shí)刻讀取。整個(gè)系統(tǒng)可以分為兩個(gè)單元:取指單元,執(zhí)行單元。取指單元和執(zhí)行單元共同構(gòu)成了CPU的微控制單元。控制模塊是對從指令寄存器(IR)送出指令進(jìn)行譯碼從而發(fā)出適當(dāng)?shù)目刂菩盘枅?zhí)行程序的。微處理器的功能就是體現(xiàn)在這些這些數(shù)據(jù)是如何傳遞的,在傳遞前的處理是如何處理的,所有這一系列寄存器數(shù)據(jù)之間的遷移轉(zhuǎn)換就組成了微處理器。子系統(tǒng)的劃分過程就是把總體任務(wù)劃分程若干分任務(wù)的過程。這種劃分將CPU的運(yùn)算、執(zhí)行單元與控制部件分離開,是非常合理、自然的。具體的模塊功能實(shí)現(xiàn)將在下面兩章中詳細(xì)介紹。通過上一章對CPU的結(jié)構(gòu)劃分,已經(jīng)知道CPU的整個(gè)設(shè)計(jì)分為兩個(gè)部分:數(shù)據(jù)通路和控制單元。在整個(gè)CPU的結(jié)構(gòu)框圖中,除了控制單元部分,其余部分都是數(shù)據(jù)通路部分,包括程序計(jì)數(shù)器PC、程序存儲(chǔ)器PC_RAM、指令寄存器IR、寄存器堆TRAM、數(shù)據(jù)選擇器ALUMUX和算術(shù)與邏輯單元ALU。第一種是在所有需要傳送數(shù)據(jù)的部件創(chuàng)建一條直接通路,采用多路選擇器或者緩沖器為那些有多個(gè)數(shù)據(jù)源的寄存器從多個(gè)可能的輸入中選擇一個(gè),這種方案適用于規(guī)模比較小的微處理器設(shè)計(jì)。本設(shè)計(jì)采用的是第一種方案的設(shè)計(jì)方法。 程序計(jì)數(shù)器模塊PC程序計(jì)數(shù)器(PC)作為指向指令地址“指針”,決定著下一條要執(zhí)行的指令。程序計(jì)數(shù)器PC中存放指令存儲(chǔ)器的地址,當(dāng)一條指令被執(zhí)行時(shí),程序計(jì)數(shù)器存放下一條指令的地址。圖31 PC模塊外部接口信號圖31所示是從外部看的PC模塊的接口。PC_OUT地址輸出信號是直接與程序存儲(chǔ)器PCRAM相連的。EN信號是程序計(jì)數(shù)器PC的使能控制信號,只有當(dāng)該信號有效時(shí)PC的相應(yīng)才能操作才能執(zhí)行。圖32顯示了程序存儲(chǔ)器的結(jié)構(gòu)圖。因?yàn)槌绦蛴?jì)數(shù)器可以尋址到256條指令,所以程序存儲(chǔ)器也必需可以至少存放 128 條16 位的指令,這樣只需申請一個(gè)變量 Ram,有256個(gè)元素,每個(gè)元素16 位即可。程序存儲(chǔ)器是一個(gè)可讀可寫的模塊,其輸入端口接入外圍程序和地址輸入端口,由 WR 異步控制其讀寫狀態(tài),WR 高電平有效。這樣就可以通過存貯器數(shù)組元素和輸入地址間的相互賦值實(shí)現(xiàn)“讀存儲(chǔ)器”,“寫存儲(chǔ)器”,既簡單又容易實(shí)現(xiàn)。 指令寄存器模塊指令寄存器在時(shí)鐘上升沿鎖入從程序存儲(chǔ)器PC_RAM中讀取的指令,并保持到時(shí)鐘的下一個(gè)上升沿,一條指令的執(zhí)行從指令寄存器鎖入指令開始。通過上一章的流水線分析部分、指令時(shí)序分析部分和程序存儲(chǔ)器模塊分析部分可以得到,在指令寄存器模塊中,當(dāng)前存放的并不是CPU正在執(zhí)行的指令,而是下一條指令。這是由兩級流水線的架構(gòu)決定的,在兩級流水線中,CPU在執(zhí)行當(dāng)前指令的同時(shí)指令寄存器取到下一條指令,并且控制器將下一條指令進(jìn)行譯碼。指令寄存器外部輸入控制信號en是來自控制單元的輸入信號,En高電平有效,與PC模塊的使能en信號功能上基本一致,它控制著指令寄存器是否可以從程序存儲(chǔ)器中加載指令。 時(shí)鐘發(fā)生器模塊時(shí)鐘發(fā)生器TIME_CTRL利用時(shí)鐘信號CLK生成從時(shí)鐘信號CLKR,并送往CPU的寄存器堆TRAM中,作為其進(jìn)行讀寫操作的時(shí)鐘信號。時(shí)鐘發(fā)生器的外部接口如圖35。在本次CPU設(shè)計(jì)中TRAM模塊用以完成以下幾個(gè)操作: 將立即數(shù)寫入指定寄存器中。 將指定源操作寄存器地址中的數(shù)據(jù)讀出。在CPU時(shí)鐘的前半周期,控制器進(jìn)行譯碼并發(fā)出控制信號,為操作的施行鋪好路,在時(shí)鐘的后半周期,也就是從時(shí)鐘信號fclkr的上升沿,TRAM在控制信號ram _ctrl、load、store的控制下進(jìn)行讀寫操作。 toreg_rd=ram(conv_integer(fromrd))。 // 存儲(chǔ)立即數(shù)到目的寄存器從這段代碼可以看出,當(dāng)控制信號store有效時(shí),TRAM可以完成將運(yùn)算器的結(jié)果寫入目的操作寄存器中,若無效,則判斷控制信號ram_ctrl的值,根據(jù)不同的控制值可以將寄存器的儲(chǔ)存值分別寫入目的操作寄存器和源操作寄存器中,可以將立即數(shù)寫入目的操作寄存器中,可以讀出指定寄存器的值并輸出。在ALU中還可以細(xì)化成兩個(gè)功能單元:取操作數(shù)單元、執(zhí)行運(yùn)算單元。ALU整體框圖如圖3—7所示。取操作數(shù)單元在數(shù)據(jù)選擇的控制信號控制下,可以選取一個(gè)或者兩個(gè)操作數(shù)輸入執(zhí)行單元。4 位算術(shù)控制輸入信號alu_ctrl決定兩個(gè)輸入數(shù)據(jù)的算術(shù)操作類型,可以有16 種不同的功能組合。在ALU的設(shè)計(jì)中主要還是根據(jù)指令來的,ALU所能執(zhí)行的指令是很多的,基本的指令可以分為4類,即ADD,SUB,LOGIC,LSL、LSR。LOGIC指令組分為或和與的邏輯操作。 LSR指令組分為帶進(jìn)位的循環(huán)左移和不帶進(jìn)位的算術(shù)左移操作。Process (a1, b1, fromalu_ctrl , fromlogic) Begin case fromalu_ctrl is …… end case。end process。039。 elsif fload =39。 then R=r1(7 downto 0)。 由這段代碼可以看出ALU模塊是雙進(jìn)程模塊,操作數(shù)運(yùn)算是不受時(shí)鐘控制的,由控制信號直接控制并計(jì)算。ALU模塊外部接口如圖39所示。因此這個(gè)模塊在整個(gè)CPU的設(shè)計(jì)中是最關(guān)鍵的也是最難精準(zhǔn)實(shí)現(xiàn)的模塊。控制單元的作用就是對指令譯碼,在不同的狀態(tài)發(fā)出不同的控制信號來處理流水線過程,另一方面在合適的時(shí)間對數(shù)據(jù)通路發(fā)出正確的控制信號來控制指令的正確執(zhí)行。 控制器Control模塊控制器則是一個(gè)微處理器的核心部件之一,在每一個(gè)時(shí)鐘周期的上升沿,指令寄存器IR 從內(nèi)存中讀取指令字后,送入控制器中,控制器能夠根據(jù)輸入的4位操作碼進(jìn)行譯碼,為其他每個(gè)功能單元產(chǎn)生相應(yīng)的主控制信號,并發(fā)出信號狀態(tài)信號控制狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)換,最終實(shí)現(xiàn)對CPU各個(gè)功能單元的控制,實(shí)現(xiàn)指令的順利執(zhí)行。 有限狀態(tài)機(jī)FSM模塊 有限狀態(tài)機(jī)狀態(tài)機(jī)是CPU的又一個(gè)控制核心部件,是實(shí)現(xiàn)高效率高可靠邏輯控制的重要途徑,用于產(chǎn)生一系列的控制信號,啟動(dòng)或停止某些部件。狀態(tài)機(jī)FSM的當(dāng)前狀態(tài),由變量state記錄。從輸出時(shí)序上看,前者屬于同步狀態(tài)機(jī),而后者屬于異步狀態(tài)機(jī)。Moore型狀態(tài)機(jī)的輸出則僅由當(dāng)前狀態(tài)控制,這類狀態(tài)機(jī)在輸入發(fā)生變化還必須等待時(shí)鐘的到來,時(shí)鐘使?fàn)顟B(tài)發(fā)生變化時(shí)才導(dǎo)致輸出變化。在整個(gè)CPU的狀態(tài)機(jī)中共設(shè)計(jì)了3個(gè)狀態(tài):執(zhí)行(exe),待機(jī)(sp),停機(jī)(tj)。圖42 狀態(tài)轉(zhuǎn)移圖 利用的VHDL語言進(jìn)行狀態(tài)機(jī)描述本次設(shè)計(jì)采用2個(gè)進(jìn)程模塊,一個(gè)模塊用同步時(shí)序描述狀態(tài)轉(zhuǎn)移;另一個(gè)模塊用組合邏輯判斷狀態(tài)的邏輯輸出,其VHDL代碼如下:process (clk,wr,input,start) begin //第一個(gè)進(jìn)程模塊用同步時(shí)序描述狀態(tài)轉(zhuǎn)移 if wr = 39。 then state = sp。139。 else state = exe。 //通過ifthenelse語句指定相應(yīng)次態(tài) when sp = when tj = end case。 end process。 end process。在構(gòu)建頂層文件的方法有語言描述和原理圖法。在本次設(shè)計(jì)中由于各個(gè)模塊的互連信號比較多,所以將采用硬件語言描述的方法將各個(gè)模塊連接起來,即用VHDL語言將各個(gè)模塊組合起來從而形成一個(gè)最頂層的模塊。 fromnrst : IN STD_LOGIC 。 pcout : out unsigned(7 downto 0) ) 。對程序計(jì)數(shù)器模塊的聲明后再對該模塊的引用,引用時(shí)用的關(guān)鍵詞是 PORT MAP,通過如下程序段完成模塊引用: U1:
點(diǎn)擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1