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

正文內(nèi)容

單周期cpu設(shè)計(jì)(存儲(chǔ)版)

2025-09-04 03:37上一頁面

下一頁面
  

【正文】 001 : OUT = 39。 39。b10000010。b1001 : OUT = 39。 39。b10000110。表3 數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)表Address+00+01+10+11000000000000000010000000000000000100000000000000110000000000000100 指令存儲(chǔ)器指令數(shù)據(jù)指令存儲(chǔ)器中存放指令數(shù)據(jù)如表4,在指令存儲(chǔ)器中以二進(jìn)制存在。根據(jù)SUB指令的格式,將寄存器000號中的數(shù)據(jù)(此時(shí)是0002H)和寄存器010號中的數(shù)據(jù)0001H(存儲(chǔ)器取出放至寄存器010中的)相減結(jié)果送入寄存器000號中。確保每個(gè)CPU部件功能都是正確的后,然后需要將所有部件模塊整合在一起,很不幸,編譯沒有通過,于是我們在努力盤查細(xì)節(jié)問題,最終編譯成功。在實(shí)驗(yàn)過程中,我們遇到了各種問題,一開始老師布置下來的CPU任務(wù)的時(shí)候,完全是懵的,因?yàn)镃PU器件和指令運(yùn)算只在課本上學(xué)習(xí),從來沒有真正實(shí)踐過,現(xiàn)在需要自己設(shè)計(jì)CPU的各個(gè)部件,而且要將指令在器件上運(yùn)行,那時(shí)簡直崩潰。根據(jù)J指令的格式,將指令后12位[110]數(shù)據(jù)004H零擴(kuò)展成16位0004H,即跳轉(zhuǎn)至地址為0004H(此處即為下一條指令,這里設(shè)置J指令主要是為了解決加減顯示的時(shí)間不一致性)。圖28 時(shí)鐘計(jì)數(shù)器五、 實(shí)驗(yàn)數(shù)據(jù)實(shí)驗(yàn)數(shù)據(jù)包括兩大部分:數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)初始數(shù)據(jù)、指令存儲(chǔ)器中存儲(chǔ)指令數(shù)據(jù),現(xiàn)分別對兩部分?jǐn)?shù)據(jù)展示。 39。b1011 : OUT = 39。b10000000。 39。b0011 : OUT = 39。b11000000。設(shè)計(jì)的CPU位16位,但是FPGA實(shí)驗(yàn)板的數(shù)碼管每個(gè)數(shù)字有8位,有4個(gè)數(shù)碼管,所以應(yīng)該讓結(jié)果的4位對應(yīng)數(shù)碼管的8位顯示,故需要使用Verilog語言按照引腳對應(yīng)編寫,如下是4位結(jié)果對應(yīng)數(shù)碼管8位顯示。圖18 PC數(shù)據(jù)選擇器圖19 PC數(shù)據(jù)選擇器內(nèi)部實(shí)現(xiàn)l 根據(jù)RegDst信號確定寫入寄存器的地址是來自于指令數(shù)據(jù)的[53]位還是[86]位,如圖20所示。本次設(shè)計(jì)將存儲(chǔ)器分為數(shù)據(jù)存儲(chǔ)器和指令存儲(chǔ)器:數(shù)據(jù)存儲(chǔ)器使用RAM1PORT,可讀可寫,主要用于存放數(shù)據(jù),用于寄存器取數(shù)和存數(shù);指令存儲(chǔ)器使用ROM1PORT,只讀,用于存放16位指令數(shù)據(jù)。主要有3處值得注意:l 因?yàn)槲覀冊O(shè)計(jì)的從寄存器取數(shù)的指令位數(shù)為3位,所以最多可尋8個(gè)寄存器,所以可看到圖中示出了8個(gè)16位D觸發(fā)器的綜合模塊。(5)J指令1010(4位)target(12位)此J指令完成的功能是:將12位地址零擴(kuò)展成16位,作目標(biāo)跳轉(zhuǎn)地址。(3)指令執(zhí)行(EXE):根據(jù)指令譯碼得到的操作控制信號,具體地執(zhí)行指令動(dòng)作,然后轉(zhuǎn)移到結(jié)果寫回狀態(tài)。四、 模塊詳細(xì)設(shè)計(jì) 指令處理流程一般來說,CPU在處理指令時(shí)需要經(jīng)過以下幾個(gè)過程:(1)取指令(IF):根據(jù)程序計(jì)數(shù)器PC中的指令地址,從指令存儲(chǔ)器中取出一條指令,同時(shí)PC根據(jù)指令字長度自動(dòng)遞增產(chǎn)生下一條指令所需要的指令地址,但遇到“地址轉(zhuǎn)移”指令時(shí),則控制器把“轉(zhuǎn)移地址”送入PC,當(dāng)然得到的“地址”需要做些變換才送入PC。考慮到設(shè)計(jì)的方便,否則使用寄存器設(shè)計(jì)存儲(chǔ)器也是可行的。下面我們將對主要的單元進(jìn)行簡要概述。另外指令[110]位作為擴(kuò)展輸入,擴(kuò)展成16位數(shù)據(jù)作為PC計(jì)數(shù)器的選擇器一端。2) 采用模塊化設(shè)計(jì)CPU,通過模擬仿真保證各模塊的正確性,以保證最終CPU功能的正確性,能正確地在FPGA板上完成指令設(shè)計(jì)的效果。此CPU設(shè)計(jì)采用模塊化設(shè)計(jì)方案,首先設(shè)計(jì)指令格式模塊,此模塊決定CPU各個(gè)部件的接口數(shù)據(jù)容量及數(shù)量,再對CPU各個(gè)部件獨(dú)立設(shè)計(jì)實(shí)現(xiàn),主要涉及的部件有:寄存器組、控制器、存儲(chǔ)器、PC計(jì)數(shù)器、數(shù)據(jù)選擇器、ALU單元以及擴(kuò)展單元。 軟件平臺1) 操作系統(tǒng):Win 7;2) 開發(fā)平臺:Quartus II ;3) 編程語言:VerilogHDL硬件描述語言。在此模塊中包括:寄存器組、控制器、存儲(chǔ)器、PC計(jì)數(shù)器、數(shù)據(jù)選擇器、ALU單元這六大主要單元。考慮到指令從寄存器取數(shù)位數(shù)為3位,所以可以設(shè)置8個(gè)寄存器用于保存數(shù)據(jù),如果是寫地址的3位指令通過74138(38譯碼器)譯碼作為寄存器的有效EN使能端輸出數(shù)據(jù);如果是讀地址的3位指令數(shù)據(jù)通過8位擴(kuò)展數(shù)據(jù)選擇器(LPMMUX)選擇數(shù)據(jù)輸出。 PC計(jì)數(shù)器PC計(jì)數(shù)器主要作為執(zhí)行一條指令后,地址自動(dòng)加1到指令存儲(chǔ)器中取16位指令作為此輪操作。(5)結(jié)果寫回(WB):指令執(zhí)行的結(jié)果或者訪問存儲(chǔ)器中得到的數(shù)據(jù)寫回相應(yīng)的目的寄存器中。圖5 CPU綜合模塊示意圖由上面總體設(shè)計(jì)方案中指出,每個(gè)寄存器應(yīng)該由16個(gè)D觸發(fā)器構(gòu)成,為了避免設(shè)計(jì)復(fù)雜,我們采用迭代的設(shè)計(jì)方法,即先由單個(gè)D觸發(fā)器設(shè)計(jì)成包含2個(gè)D觸發(fā)器模塊,圖6示出了由單個(gè)D觸發(fā)器構(gòu)成2個(gè)D觸發(fā)器模塊。圖10 寄存器組詳細(xì)設(shè)計(jì)控制器的設(shè)計(jì)是整個(gè)CPU的命脈,因?yàn)榭刂破鳟a(chǎn)生的控制信號用于整個(gè)CPU運(yùn)作,針對某條功能指令,控制信號要能準(zhǔn)確控制器件的運(yùn)作。圖15 指令存儲(chǔ)器ROM PC計(jì)數(shù)器程序計(jì)數(shù)器是用于當(dāng)每個(gè)時(shí)鐘的上升沿到來后,PC計(jì)數(shù)器就自增1從指令存儲(chǔ)器中取出對應(yīng)增1的地址的指令數(shù)據(jù),作為本輪運(yùn)算的指令。從圖23我們了解ALU模塊的內(nèi)部實(shí)現(xiàn),ALU的實(shí)現(xiàn)主要是應(yīng)用軟件的ALU_ADD_SUB,器件做加或減的操作來自于AL
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1