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

正文內(nèi)容

基于fpga的微處理器設(shè)計(jì)畢業(yè)設(shè)計(jì)論文-閱讀頁(yè)

2025-07-07 15:55本頁(yè)面
  

【正文】 pc PORT MAP (clk = clk,fen = en,fromnrst = nrst,frompc_inc = pc_inc, pcout = pc_out)。SIGNAL en, nrst ,clkr: STD_LOGIC。將所有的功能模塊組合連接起來(lái)就成為一個(gè)整體,作為整個(gè)仿真的頂層模塊。用QUARTUSII對(duì)設(shè)計(jì)模塊進(jìn)行編譯及綜合后生成的RTL綜合電路圖如圖5—1示。各模塊的輸出信號(hào)說(shuō)明如表4所示。驗(yàn)證的工作是給它一個(gè)特定的程序,從軟件仿真看它的運(yùn)行結(jié)果是否符合設(shè)計(jì)的原來(lái)設(shè)計(jì)。 0111010000100001 MOV R2, 129。 0001000000010010END 。通過(guò)仿真可以看出,流水線使一條指令的執(zhí)行只需要一個(gè)時(shí)鐘周期的時(shí)間,且PC的值是當(dāng)前執(zhí)行指令地址加2,驗(yàn)證了前面提到的流水時(shí)序。算術(shù)運(yùn)算指令后8位分別是源操作數(shù)地址和目的操作數(shù)地址,將操作數(shù)136和129取出送入運(yùn)算器中進(jìn)行加法運(yùn)算,最后結(jié)果輸出165。狀態(tài)轉(zhuǎn)換按待機(jī)→執(zhí)行→停機(jī)的順序進(jìn)行轉(zhuǎn)換。 0100000000010010圖53 或運(yùn)算仿真仿真結(jié)果如圖52所示,邏輯算術(shù)指令將操作數(shù)送入運(yùn)算器中進(jìn)行或操作,最后結(jié)果輸出10100101。 0101000000000010圖54 左移操作仿真仿真結(jié)果如圖53所示,移位算術(shù)指令將目的操作地址R2的值10000001送入運(yùn)算器中進(jìn)行左移操作,最后結(jié)果輸出00000010。 0001000000010010LD R2; 1010000000000010圖55 輸出R2的數(shù)據(jù)仿真仿真結(jié)果如圖54所示,數(shù)據(jù)指令將目的操作地址R2的值10000001送出并輸出,中進(jìn)行左移操作,最后結(jié)果輸出00000010。 0001000000010010ST R2; 1001000000000010圖56 存儲(chǔ)運(yùn)算結(jié)果仿真仿真結(jié)果如圖所示,算術(shù)加法指令將兩個(gè)操作數(shù)36和129執(zhí)行加法運(yùn)算后,得到結(jié)果165,下一條指令時(shí)運(yùn)算結(jié)果存儲(chǔ)指令,將上條指令得到的結(jié)果存到指定寄存器中,圖中R2內(nèi)的值改變?yōu)?65,說(shuō)明數(shù)據(jù)存儲(chǔ)成功。移位類(lèi)指令可以完成目的寄存器內(nèi)8位操作數(shù)的左移(LSL)和右移(LSR)操作并輸出結(jié)果。數(shù)據(jù)輸出指令(LD)可以完成讀出并輸出目的寄存器數(shù)據(jù)的操作。經(jīng)過(guò)對(duì)全部指令的簡(jiǎn)單仿真測(cè)試,測(cè)試結(jié)果顯示,本設(shè)計(jì)能夠很好的執(zhí)行指令的預(yù)期功能,指令的時(shí)序和流水線操作與設(shè)計(jì)一致,正確地實(shí)現(xiàn)了CPU的功能。在整個(gè)設(shè)計(jì)過(guò)程中,我首先確定CPU的模塊功能,然后細(xì)化每個(gè)功能模塊,根據(jù)每個(gè)模塊完成的功能確定模塊結(jié)構(gòu),最后利用硬件描述語(yǔ)言VHDL將每個(gè)元件模塊例化,并將其連線組合構(gòu)成一個(gè)CPU整體。整個(gè)論文的完成過(guò)程中,我查閱的資料和學(xué)習(xí)了很多東西,總結(jié)起來(lái)主要有以下收獲: 熟悉CPU設(shè)計(jì)思路,通過(guò)對(duì)RISC指令集的學(xué)習(xí)和理解自定義指令集。 完成了CPU的各個(gè)模塊的代碼編寫(xiě)及調(diào)試過(guò)程。本次設(shè)計(jì)的CPU可以完成基本操作,但是依舊有很多不足之處,比如在算術(shù)和邏輯運(yùn)算中沒(méi)有考慮進(jìn)位,而且運(yùn)算結(jié)果只能利用另一條指令ST存儲(chǔ),不能在當(dāng)前指令執(zhí)行中進(jìn)行。為了更深入的研究CPU的設(shè)計(jì)就需要我更多的掌握知識(shí),不斷學(xué)習(xí)才能更好的實(shí)現(xiàn)CPU的功能。[2],2002,11(3):31—32.[3]陸重陽(yáng),盧東華,2002,9(8):20—23)。北京。USE 。PACKAGE cpu_ps ISCOMPONENT pc IS PORT ( clk ,fen: IN STD_LOGIC 。 frompc_inc : IN STD_LOGIC 。 END COMPONENT pc。 fromnrst : IN STD_LOGIC 。 waddr : in unsigned(7 downto 0)。 wr : in std_logic 。END COMPONENT pc_ram。 fromen : IN STD_LOGIC 。 toir : out std_logic_vector(3 downto 0)。 torr : out std_logic_vector(3 downto 0)。END COMPONENT ir_ram。 fR0 : in unsigned(7 downto 0)。 fromrd : in std_logic_vector(3 downto 0)。 fromram_ctrl : in std_logic_vector(1 downto 0) 。END COMPONENT Tram。 fromabsel : in std_logic_vector(1 downto 0)。END COMPONENT alumux。 fromA,fromB: in unsigned(7 downto 0)。 fouten,fload :in std_logic。 tR0 : out unsigned(7 downto 0)。 c4 : out std_logic )。COMPONENT Fsm PORT( clk,wr,start:IN STD_LOGIC。 tonrst,toen,topc_inc:OUT STD_LOGIC)。COMPONENT control PORT( fromir: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 touten:OUT STD_LOGIC。 toram_ctrl:OUT STD_LOGIC_vector(1 downto 0)。END COMPONENT control。 tclkr:OUT STD_LOGIC )。END cpu_ps。USE 。use 。ENTITY cpu_add IS PORT(clk: IN STD_LOGIC。 wdata : in std_logic_vector(15 downto 0)。 R: BUFFER UNSIGNED(7 DOWNTO 0)。 END ENTITY cpu_add。 SIGNAL pc_inc: STD_LOGIC。 SIGNAL ram_ctrl,logic: STD_LOGIC_vector(1 downto 0)。 SIGNAL absel: STD_LOGIC_vector(1 downto 0)。 SIGNAL pc_out,addr: unsigned(7 DOWNTO 0)。 SIGNAL rd,rr,data,ir: STD_LOGIC_VECTOR(3 DOWNTO 0)。 SIGNAL A,B ,R0: unsigned(7 downto 0)。 U2: pc_ram PORT MAP(clk = clk,fromnrst = nrst,pc_in = pc_out,waddr = waddr,wdata = wdata,wr = wr, toinstruction = instruction)。 U4: Tram PORT MAP(fclkr = clkr,fR0 =R0,fromrr = rr,fromrd = rd,fromdata = data,fromram_ctrl = ram_ctrl,fstore =store,fload = load,toreg_rr = reg_rr,toreg_rd = reg_rd)。 U6: alu PORT MAP(clk = clk,fromA = A,fromB = B,fromalu_ctrl = alu_ctrl,fload = load,fouten = outen,fromlogic = logic,R = R,c4= c4,tR0 = R0)。 U8: time_ctrl PORT MAP(clk = clk ,tclkr = clkr)。 END ARCHITECTURE RTL。USE 。use 。 fromnrst : IN STD_LOGIC 。 pcout : out unsigned(7 downto 0) ) 。 ARCHITECTURE RTL OF pc IS BEGIN process (clk,frompc_inc,fromnrst,fen) variable cq: unsigned(7 downto 0)。139。 ELSIF clk39。139。139。139。 end if。 end if。 end process。PC_RAM程序存儲(chǔ)器LIBRARY IEEE。Use 。entity pc_ram is port ( clk : in std_logic。 fromnrst :in std_logic。 wdata : in std_logic_vector(15 downto 0)。 toinstruction : out std_logic_vector(15 downto 0) )。architecture rtl of pc_ram is subtype word_t is std_logic_vector(15 downto 0)。 signal ram : memory_t。139。 elsif fromnrst=39。 then toinstruction = 0000000000000000。 end if。 end process。指令寄存器IRLIBRARY IEEE。USE 。ENTITY ir_ram IS PORT ( clk : IN STD_LOGIC 。 fromins : in std_logic_vector(15 downto 0)。 tord : out std_logic_vector(3 downto 0)。 todata :out std_logic_vector(3 downto 0) ) 。 ARCHITECTURE RTL OF ir_ram IS BEGIN process (clk,fromen,fromins) VARIABLE torra : std_logic_vector(3 downto 0)。 VARIABLE todataa : std_logic_vector(3 downto 0)。 BEGIN torda := fromins(3 downto 0)。 todataa := fromins(11 downto 8)。 IF fromen =39。 THEN if clk39。139。 tord = torda。 toir = toira。 end if。 end process。寄存器堆TRAMlibrary ieee。Use 。entity Tram is port ( fclkr,fstore,fload : in std_logic。 fromrr : in std_logic_vector(3 downto 0)。 fromdata: in std_logic_vector(3 downto 0)。 toaddr : out unsigned(7 downto 0)。 architecture rtl of Tram is subtype word_t is unsigned(7 downto 0)。 signal ram : memory_t。 VARIABLE value2 : unsigned(7 downto 0)。 fromdata。 if(rising_edge(fclkr)) then if (fstore = 39。) then case fromrd is when 0001 = ram(1) = fR0。 when others = null。 elsif (fromram_ctrl = 11) then case fromrd is when 0001 = toreg_rd=ram(1)。 when others = null。 case fromrr is when 0001 = toreg_rr=ram(1)。 when others = null。 elsif (fromram
點(diǎn)擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1