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

正文內(nèi)容

基于fpga的嵌入式cpu設(shè)計(jì)-免費(fèi)閱讀

2024-12-08 02:54 上一頁面

下一頁面
  

【正文】 entity pcselector is port(nextpc, branchpc, retpc, retipc : in std_logic_vector(15 downto 0)。用時(shí)鐘 clk 對(duì)外部信號(hào)進(jìn)行同步控制。取指段的結(jié)構(gòu)圖如圖 所示。LogicLock方法非常適合進(jìn)行團(tuán)隊(duì)設(shè)計(jì)。倘若設(shè)計(jì)者習(xí)慣于先前使用之MAX+PLUS II 軟件,此項(xiàng)設(shè)定則可允許設(shè)計(jì)者使用熟悉的 MAX+PLUS II布局、指令和基于 FPGA 的嵌入式 CPU 設(shè)計(jì) 16 圖示以便控制 Quartus II 軟件的功能。下面將介紹本次設(shè)計(jì)使用的 Quartus II 。 程序包的結(jié)構(gòu)如下所示: PACKAGE 程序包名 IS [說明語句 ]; 包頭 END 程序包名; PACKAGE BODY 程序包名 IS [說明語句 ]; 包體 END BODY; 5) 配置 (Configuration):一個(gè)實(shí)體可用多個(gè)結(jié)構(gòu)體描述,在具體綜合時(shí)選擇哪一個(gè)結(jié)構(gòu)體 來綜合,則由配置來確定。在 VHDL 語言中可以存在多個(gè)不同的庫,但是庫和庫之間是獨(dú)立的,不能互相 嵌套。 2) 結(jié)構(gòu)體 (Architecture):結(jié)構(gòu)體是 VHDL 設(shè)計(jì)中最主要部分,它具體地指明了該基本設(shè)計(jì)單元的行為、元件及內(nèi)部的連接關(guān)系,也就是 說它定義了設(shè)計(jì)單元具體的功能。 從 ASIC 的設(shè)計(jì)到 PCB 系統(tǒng)的設(shè)計(jì), VHDL 電路描述語言都能派上用場(chǎng)。與其他的硬件描述語言相比, VHDL 描述能力更強(qiáng),從而決定了成為系統(tǒng)設(shè)計(jì)領(lǐng)域最佳的硬件描述語言。VHDL 英文全稱為: Very High Speed Integrated Circuit Description Language [15],即 是超高速集成電路硬件描述語言。區(qū)別在于寫寄存器指向要寫入的存儲(chǔ)器的地址而不是寄存器文件。 RI 型數(shù)據(jù)通路數(shù)據(jù)與 R 型相似,兩個(gè)操作數(shù)分別為來自于指令中指定的寄存器操作數(shù) Reg1 和一個(gè)包含在指令中的立即數(shù)。 表 SI 型指令結(jié)構(gòu) 操作碼 指令 功能描述 功能碼 func 0111 SLL1 R1,R2,data5 按立即數(shù)的值進(jìn)行邏輯左移 0 SRL1 R1,R2,data5 按立即數(shù)的值進(jìn)行邏輯右移 1 1000 SRA1 R1,R2,data5 按立即數(shù)的值進(jìn)行算術(shù)左移 0 ROR1 R1,R2,data5 按立即數(shù)的值進(jìn)行算術(shù)右移 1 數(shù)據(jù)通路設(shè)計(jì) 數(shù)據(jù)通路是描述數(shù)據(jù)的 CPU 的處理流動(dòng)過程。 圖 RI 型指令結(jié)構(gòu) RI 型指令如表 所示。 圖 R 型指 令格式 R 型指令都有 4 位的操作碼 (opcode),以確定執(zhí)行的是算術(shù)運(yùn)算、邏輯移位、端口訪問、跳轉(zhuǎn)返回等指令中的哪一種。指令系統(tǒng)的設(shè)計(jì)直接影響著 CPU 系統(tǒng)的性能和硬件復(fù)雜程度。如此一顆精密的芯片為什么能夠控制一個(gè)龐大而復(fù)雜數(shù)字系統(tǒng),這就是 CPU 中所集成的指令集。所有指令按取出的先后次序通過數(shù)據(jù)路徑。從本質(zhì)上講,流水線技術(shù)是一種時(shí)間并行技術(shù)。對(duì)于非流水線的 CPU 來說,這 5 個(gè)階段在時(shí)間上是分時(shí)進(jìn)行的,即指令的 5 個(gè)階段是在時(shí)間上是順序執(zhí)行的。接著從第一條指令的地址起開始執(zhí)行該程序,得到所需結(jié)果,結(jié)束運(yùn)行。當(dāng)交流電源斷電時(shí),則由 電池進(jìn)行后背供電,保證走時(shí)準(zhǔn)確,但此時(shí) LED 數(shù)碼管顯示器關(guān)閉,以降壓 電池的消耗。 通過鍛煉使用所學(xué)的專業(yè)知識(shí)分析 CPU 設(shè)計(jì)的原理,可以為日后的進(jìn)行相關(guān)的設(shè)計(jì)工作或進(jìn)一步的深造打下很好的基礎(chǔ)?;?FPGA 的嵌入式系統(tǒng)具有設(shè)計(jì)周期短、產(chǎn)品上市速度快、設(shè)計(jì)風(fēng)險(xiǎn)和設(shè)計(jì)成本低、集成度高、靈活性大、維護(hù)和升級(jí)方便、硬件缺陷修復(fù)和排除簡(jiǎn)單等優(yōu) 點(diǎn)。 6) 時(shí)序仿真與驗(yàn)證:將布局布線的時(shí)延信息發(fā)標(biāo)注到 設(shè)計(jì)網(wǎng)表中,所進(jìn)行的仿真就叫時(shí)序仿真或布局布線后仿真,簡(jiǎn)稱后仿真。 3) 綜合優(yōu)化 [5]:綜合優(yōu)化是指將 HDL 語言、原理圖等設(shè)計(jì)輸入翻譯成由與、或、非門, RAM,觸發(fā)器等基本邏輯單元組成的邏輯連接 (網(wǎng)表 ),并根據(jù)目標(biāo)與要求 (約束條件 )優(yōu)化所生成的邏輯連接,輸出 edf 和 edn 等標(biāo)準(zhǔn)格式的網(wǎng)表文件,供 FPGA 廠家的布局布線器進(jìn)行實(shí)現(xiàn)。常用的設(shè)計(jì)輸入方法有硬件描述語言 ( Hardware Description Language )和原理圖設(shè)計(jì)輸入方法等。 2) CPLD: CPLD 是 Complex Programmable Logic Device 的縮寫 , 即復(fù)雜可編程邏輯器件。 3) 在系統(tǒng)硬件設(shè)計(jì)的后期進(jìn)行仿真和調(diào)試。在這個(gè)基礎(chǔ)上,還克服了 CISC的許多缺點(diǎn),從而使計(jì)算機(jī)速度更快,程序運(yùn)行時(shí)間縮短。很快,許多廠商都開發(fā)出了自己的 RISC指令系統(tǒng),除了 IBM 的 Power 和 PowerPC 外,還有 DEC 的 Alpha、 SUN 的 SPARC、 HP的 PARISC、 MIPS 技技術(shù)公司 MIPS、 ARM 公司的 ARM 等。 RISC 即精簡(jiǎn)指令集計(jì)算機(jī) ( Reduced Instruction set Computer )的縮寫, RISC CPU 與一般的 CPU 相比不僅只是簡(jiǎn)化了指令系統(tǒng),而且是通過簡(jiǎn)化指令系統(tǒng)使計(jì)算 機(jī)的結(jié)構(gòu)更加簡(jiǎn)單合理,從而提高了運(yùn)算速度 [2]。正是這種奇妙的設(shè)計(jì)和制造方式使得集成電路為人類社會(huì)的進(jìn)步創(chuàng)造了空前的奇跡,它不僅給人類的生產(chǎn)建設(shè)和科學(xué)研究帶來了巨大便利,而且也徹底改變了人類文明和人們?nèi)粘I畹拿婺?。通過分析可以知道第一種方案可以達(dá)到較高的工作效率和執(zhí)行速度,但實(shí)現(xiàn)起具有一定的難度。 基于 FPGA 的嵌入式系統(tǒng)具有設(shè)計(jì)周期短、產(chǎn)品上市速度快、設(shè)計(jì)風(fēng)險(xiǎn)和成本低、集成度高、靈活性大、維護(hù)和升級(jí)方便、硬件缺陷修復(fù)和排除簡(jiǎn)單等優(yōu)點(diǎn) 。 CPU 的各部件利用 VHDL 語言和 EDA 工具設(shè)計(jì)實(shí)現(xiàn)的,采用自頂向下 的設(shè)計(jì)方法。 現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)不再著重于設(shè)計(jì) 計(jì)算機(jī)中各個(gè)部件 [1],而是 “ 向上 ” 與對(duì)應(yīng)的指令集、編譯碼和操作系統(tǒng)更加緊密地結(jié)合在一起, “ 向下 ” 與更加先進(jìn)的芯片結(jié)構(gòu)設(shè)計(jì)和設(shè)計(jì)方法結(jié)合在一起。如果對(duì)指令系統(tǒng)作相應(yīng)的優(yōu)化,就可以從根本上快速提高處理器的執(zhí)行效率。它排除了那些實(shí)現(xiàn)復(fù)雜功能的復(fù)雜指令,保留了經(jīng)驗(yàn)證的能提高機(jī)器性能的指令。后者是在前者的基礎(chǔ)上,并且利用了當(dāng)今科技最新發(fā)展成果而建立起來的方法。從 廣義上講,可編程邏輯器件是指一切通過軟件手段更改、配置器件內(nèi)部連接結(jié)構(gòu)和邏輯單元,完成既定設(shè)計(jì)功能的數(shù)字集成電路。 FPGA 的基本組成部分有可編程輸入 /輸出單元、基本可編程邏輯單元、嵌入式塊 RAM。波型輸入與狀態(tài)機(jī)輸入 方法是兩種常用的輔助設(shè)計(jì)輸入方法 [5]。 5) 實(shí)現(xiàn)與布局布線 [8]:綜合結(jié)構(gòu)的本質(zhì)是一些由與、或、非門,觸發(fā)器, RAM 等基本邏輯單元組成的邏輯網(wǎng)表,它與芯片實(shí)際的配置情況還有較大差距 [9]。這樣可以較好地分析高速設(shè)計(jì)的信號(hào)完整性、電磁干擾 (EMI)等電路特性。 本文設(shè)計(jì)一個(gè)基于 FPGA 的 CPU,具體設(shè)計(jì) 為 16 位的 RISC CPU,采用哈佛結(jié)構(gòu)。其采用程序動(dòng)態(tài)掃描顯示,這樣與靜態(tài)顯示相比, 可節(jié) 約大量的外部元器件。由于軟件編程的靈活性,實(shí)際上可隨意做出任意進(jìn)制的正計(jì)時(shí)或倒計(jì)時(shí)電子鐘。 3) 執(zhí)行指令:根據(jù)分析指令時(shí)產(chǎn)生的 “ 操作命令 ” 形成相應(yīng)的操作控制信號(hào)序列,通過運(yùn)算器,存儲(chǔ)器及輸入 /輸出設(shè)備的執(zhí)行,實(shí)現(xiàn)每條指令的功能,其中包括對(duì)運(yùn)算結(jié)果的處理以及下條指令地址的形成。 現(xiàn)代處理器是基于流水線技術(shù)的 RISC CPU,采用流水線結(jié)構(gòu)的 CPU 可以改善 CPU的性能,提高 CPU 的工作效率 [14]。 圖 流水線 CPU 的結(jié)構(gòu) 在指令執(zhí)行過程中,指令碼和數(shù)據(jù)碼也是按照順序依次流過這五個(gè)步驟。 第五級(jí) : WB 級(jí),將從 WB 計(jì)算結(jié)果或從存儲(chǔ)器中取出的數(shù)據(jù)寫回寄存器中暫存,作為后讀指令的源操作數(shù)。但是隨著科技的進(jìn)步,計(jì)算機(jī)的功能也越來越強(qiáng)大,計(jì)算機(jī)內(nèi)部的元件也越來越多,而且越來越復(fù)雜, CPU的指令也相應(yīng)的變得十分復(fù)雜,而在使用過程中,并不是每一條指令都要完全被執(zhí)行,在技術(shù)人員的研究過程中發(fā)現(xiàn),約有 80%的程序只用到了 20%的指令,而一些過于冗余的指令嚴(yán)重影響到了計(jì)算機(jī)的工作效率,精簡(jiǎn)指令集 (RISC)的概念就是這樣被提了出來。中間的部分一般為寄存器。本設(shè)計(jì)的主要 R 型指令如表 所示。 表 I 型指令 操作碼 指令 功能描述 功能碼 func 0100 MOVL R1,data8 將立即數(shù)存入 R1 低字節(jié) 0 MOVH R1,data8 將立即數(shù)存入 R1 高字節(jié) 1 0101 BZI R1, data8 為 0 零時(shí),以 PC 作為相對(duì)轉(zhuǎn)移 0 BNZI R1, data8 不為 0 零時(shí),以 PC 作為相對(duì)轉(zhuǎn)移 1 立即移型 (SI 型 )的指令結(jié)構(gòu)的 設(shè)計(jì)如圖 所示。兩個(gè)操作數(shù) Reg1 和 Reg2,是來自于指令中指定的寄存 器中,從寄存器文件中取出數(shù)據(jù)。該指令從存 儲(chǔ)器中取出一個(gè)數(shù)值,然后這個(gè)數(shù)值裝入寄存器文件中。本設(shè)計(jì)的 RISC CPU 將采用 VHDL 語言編寫,并采用 Altera 公司的 QuatusII 。目前,大多數(shù)的 CAD 廠商出品的 EDA 軟件都兼容了這種標(biāo)準(zhǔn) 。設(shè)計(jì)者可以不懂硬件結(jié)構(gòu),可以不管最終設(shè)計(jì)實(shí)現(xiàn)的目標(biāo)器件,而進(jìn)行獨(dú)立的設(shè)計(jì)。如果設(shè)計(jì)分層次,那么在頂層實(shí)體中將包含較低級(jí)別的實(shí)體。 3) 庫 (Library):庫是專門存放預(yù)先編譯好的程序包 (package)的地方。例如: USE ; 基于 FPGA 的嵌入式 CPU 設(shè)計(jì) 15 該語句表示在 VHDL 程序中要使用名為 STD_LOGIC_1164 的程序 包中所有定義或說明項(xiàng)。該軟件界面友好,使用便捷,功能強(qiáng) 大,是一個(gè)完全集成化的可編程邏輯設(shè)計(jì)環(huán)境。它提供了一個(gè)內(nèi)置的 MAX+plus II外觀選項(xiàng)。這樣在設(shè)計(jì)早期階段,就可以進(jìn)行印刷電路電 路板 (PCB)布局。 5 CPU 設(shè)計(jì)與仿真 該流水線 CPU 由取指令 (IF)、指令譯碼 和讀寄存器文件 (ID)、執(zhí)行或計(jì)算地址 (EXE)、存儲(chǔ)器訪問 (MEM)、回寫 (WB)五個(gè)部分組成 [18]。 3) 檢驗(yàn)指令的合法性。 use 。 end entity pcselector。在 Quartus II 環(huán)境下,通過 VHDL 語言設(shè)計(jì) PC 選擇模塊 pcselector,相應(yīng)的程序代碼如下所示: library ieee。根據(jù) Pcselector 的信號(hào)選擇端,來確定從順序執(zhí)行、 branchPC(跳轉(zhuǎn)分支 )、 retiPC(中斷返回 )和 retPC(子程序 )四個(gè)地址轉(zhuǎn)移源中選擇程序計(jì)數(shù)器 PC 的下一個(gè)值。 5) 腳本支持: Quartus II 軟件同時(shí)支持基于 GUI 和基于腳本的設(shè)計(jì)技術(shù)。 Quartus II 設(shè)計(jì)流程 Altera 的 Quartus II是業(yè)內(nèi)領(lǐng)先的 FPGA設(shè)計(jì)軟件,具有最全面的開發(fā)設(shè)計(jì)環(huán)境,實(shí)現(xiàn)無以倫比的性能表現(xiàn),而且效率高,易于使用設(shè)計(jì)流程方法。 Quartus II 給 MAX+plus II用戶帶來的優(yōu)勢(shì)。 QurtusII 開發(fā)系統(tǒng) Altera公司 的 Quartus II是業(yè)內(nèi)領(lǐng)先的 FPGA設(shè)計(jì)軟件,具有最全面的開發(fā)設(shè)計(jì)環(huán)境,實(shí)現(xiàn)無以倫比的性能表現(xiàn)。 4) 程序包 (Package):程序包是用來單純羅列 VHDL 語言中所要用到的信號(hào)定義、常數(shù)定義、數(shù)據(jù)類型、元件語句、函數(shù)定義和過程定義等,它是一個(gè)可編譯的設(shè)計(jì)單元,也是庫結(jié)構(gòu)中的一個(gè)層次。 一個(gè)完整的、能被綜合實(shí)現(xiàn)的 VHDL 設(shè)計(jì)必須有一個(gè)實(shí)體和對(duì)應(yīng)的結(jié)構(gòu)體,一個(gè)實(shí)體可以對(duì)應(yīng)一個(gè)或多個(gè)結(jié)構(gòu)體,由于結(jié)構(gòu)體是對(duì)實(shí)體功能的具體描述,因此它一定要跟在實(shí)體的后面,通常先編譯實(shí)體后才能對(duì)結(jié)構(gòu)體進(jìn)行編譯。 VHDL 的基 本結(jié)構(gòu) 一個(gè)完整的 VHDL 程序包含實(shí)體 (ENTITY)、結(jié)構(gòu)體 (ARCHICTURE)、庫 (LIBRARY)、程序包 (PACKAGE)和配置 (CONFIGURATION)五部分 [17]: 1) 實(shí)體 (Entity):實(shí)體是 VHDL 設(shè)計(jì)中最基本的模塊, VHDL 表達(dá)的所有設(shè)計(jì)均與實(shí)體有關(guān)。而且還支持同步電路、異步電路 和其他電路的設(shè)計(jì)。最初是由美基于 FPGA 的嵌入式 CPU 設(shè)計(jì) 13 國(guó)國(guó)防部開發(fā)出來供美軍用來提高設(shè)計(jì)的可靠性和縮減開發(fā)周期的一種使用范圍較小的設(shè)計(jì)語言,但是由于它在一定程度上滿足了當(dāng)時(shí)的設(shè)計(jì)需求,于是在 1987 年 12 月 VHDL語言成為 ANSI/IEEE 的標(biāo)準(zhǔn)( IEEE STD 10761987)。如果轉(zhuǎn)移類型的內(nèi)容不為零,則裝入下一條程序計(jì)數(shù)器的值,執(zhí)行的指令繼續(xù)流動(dòng)。 3) 裝入字型數(shù)據(jù)通路。數(shù)據(jù)通路的設(shè)計(jì)主要有以下幾種: 1) R 型數(shù)據(jù)通路。本設(shè)計(jì)的主要 I 型指令如表 所示。在所有的 R 型指令中都有 3 位的功能碼,功能碼在指令的最后 3 位。指令的長(zhǎng)度為 16 位,其中的操作碼(opcode)為前 4 位,操作碼的功能是用來確定哪一種類型的指令將被執(zhí)行。 CPU 的指令集從主流的體系結(jié)構(gòu)上分為精簡(jiǎn)指令集和 復(fù)雜指令集。第三級(jí)
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1