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

正文內(nèi)容

基于fpga的嵌入式cpu設(shè)計(存儲版)

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

下一頁面
  

【正文】 :EXE 級,這一級根據(jù)功級輸入的數(shù)據(jù)完成算術(shù)邏輯的運算。該流水線CPU 由取指令 (IF)、指令譯碼和讀寄存器文件 (ID)、執(zhí)行或計算地址 (EXE)、存儲器訪問(MEM)、回寫 (WB)五個部分組成。這種非流水線結(jié)構(gòu)的 CPU 實現(xiàn)起來相對簡單,但控制器執(zhí)行指令的速度慢,只有當上一條指令執(zhí)行完之后,才能開始下一條指令的執(zhí)行;并且功能部件利用率低,在某一時間內(nèi),只有其中的一個部件在工作,其他部件則是空閑著。 2) 分析指令:即指令譯碼。當 sec滿 60時(此時時間為 60s),使 min加 1,同時清除 sec。 按鍵輸入電路負責輸入單片機中一系列工作參數(shù)及功能設(shè)定,如進行走時設(shè)置,定時設(shè)置等。其中,通過 IP 軟核授權(quán)的方案能讓廠商加快產(chǎn)品上市時程,但同時會引起成本的上升,并且廠商要獲得這些IP 核不是件容易的事。布局布線后仿真的主要目的在于發(fā)現(xiàn)時序違規(guī) (Timing Violation),即不滿足時序約柬條件或者器件固有時序規(guī)則 (建立時間、保持時間等 )的情況。綜合后仿真雖然比功能仿真精確一些,但是只能估計門延時,不能估計線延時,仿真結(jié)果與布線后的實際情況還有一定的差距,并不十分準確 [7]。目前進行大型工程設(shè)計時,最常用的方法是 HDL 設(shè)計輸入法,其中影響最為廣泛的 HDL 語言是 VHDL 和 Verilog HDL。FPGA 是在 CPLD 的基礎(chǔ)上發(fā)展起來的新型高性能可編程邏輯器件,它一般采用 SRAM 工藝,也有一些專用器件采用 Flash 工藝或反熔絲 (AntiFuse)工藝等。但是,隨著計算機技術(shù)、大規(guī) 模集成電路技術(shù)的發(fā)展這種傳統(tǒng)的設(shè)計方法己大大落后于當今技術(shù)的發(fā)展。一是傳統(tǒng)設(shè)計方法,二是利用可編程邏輯器件的硬件電路設(shè)計方法。 RISC 的設(shè)計原則是使系統(tǒng)設(shè)計達到最高的有效速度 [4]。RISC 有一套優(yōu)化過的指令架構(gòu),它是根據(jù)著名的 80/20 法則所確立 [3]。 CPU 從最初發(fā)展至今已經(jīng)有幾十年的歷史了,這期間,按照其處理信息的字長, CPU 可以分為:四位微處理器、八位微處理器、十六位微處理器、三十二位微處理器以及六十四位微處理器。這個 CPU 具有 16 位的地址總線和數(shù)據(jù)總線,并且采用了 5 級流水線來提高 CPU 的工作效率?;?FPGA 的嵌入式 CPU 設(shè)計 I 摘 要 隨著 EDA 技術(shù)的快速發(fā)展,基于 FPGA 的嵌入式微處器的應(yīng)用越來越廣泛。因此,設(shè)計采用流水線技術(shù)設(shè)計。 CPU 作為集成電路的高端產(chǎn)品,隨著半導(dǎo)體工藝水平的發(fā)展,遵守摩爾定律發(fā)展規(guī)律 ,CPU 性能每過 18 個月就會翻一番。 所謂硬布線邏輯也就是用觸發(fā)器和邏輯門直接連線所構(gòu)成的狀態(tài)機和組合邏輯,故產(chǎn)生控制序列的速度比用微程序控制方式快得多,因為這樣做省去了讀取微指令的時間。 RISC 處理器可以說既簡單又復(fù)雜:簡單之處在于,相比于復(fù)雜指令集 CISC( plex Instruction Set Computer,復(fù)雜指令系統(tǒng)計算機 ),這種處理器的指令和變量非常少,正如它的英文字母縮寫 RSIC 所代表的 “ 精簡指令集 ” 的含義一樣;說 RSIC 復(fù)雜,是因為它們?nèi)菀讓崿F(xiàn)更高的并行性,而這個特點只有與設(shè)計得很好的編譯器結(jié)合起來,才能顯現(xiàn)出其優(yōu)越性。集成電路的設(shè)計方法主要經(jīng)歷了兩個時代。 傳統(tǒng)的硬件電路設(shè)計方法已經(jīng)沿用幾十年,是目前廣大電子工程師所熟悉和掌握的一種方法。 基于 FPGA 的嵌入式 CPU 設(shè)計 3 3) FPGA: FPGA 是 Field Programmable Gate Array 的縮寫,即現(xiàn)場可編程邏輯陣列。它雖然直觀、便于理解,但它的維護性較差,不利于模塊構(gòu)造與重用。在仿真時,把綜合生成的標準延時文件反標注到綜合仿真模型中去,可估計門延時帶來的影響 [6]。一般來說,布線后仿真步驟必須進行,通過布局布線后仿真能檢查設(shè)計時序與 FPGA 實際運行情況是否一致,確保設(shè)計的可靠性和穩(wěn)定性。但針對的不同的應(yīng)用層所選用的 CPU 會有很大的差異,因此在的嵌入式系統(tǒng)的設(shè)計過程中對效能、功耗與成本等變量進行應(yīng)進行多方考慮。 工業(yè)生產(chǎn)節(jié)能時控器 系統(tǒng)的結(jié)構(gòu) 單片機是整個系統(tǒng)的核心,整個系統(tǒng)的所有運行均由單片機完成,如生產(chǎn)精確時鐘及計時, LED 數(shù)碼管顯示器輸出掃描顯示,輸出驅(qū)動繼電器,驅(qū)動蜂鳴器,掃描按鍵輸入等。另外,還需建立幾個軟件計數(shù)器單元(如 deda,sec,min等),使 sec加 1,同時清除 deda。 因此它必須具有以下基本功能: 1) 取指令:當程序已在存儲器中時,首先根據(jù)程序入口地址取出一條程序,為此要發(fā)出指令地址及控制信號。 在串行執(zhí)行方式中,如果指令取指、譯碼、執(zhí)行、存儲器操作、寫回寄存器等 5 階段完成的時間相等,若每段時間都等于 t,則執(zhí)行 n 條指令的 時間為: T= 3 n t 。 基于提高指令執(zhí)行速度的目的,本文的設(shè)計采用流水線結(jié)構(gòu)的 RISC CPU。第二級 : ID 級,對指令進行譯碼,根據(jù)譯碼的結(jié)果訪問寄存器堆,取出相應(yīng)的寄存器單元中的數(shù)據(jù)或 者對立即數(shù)進行擴展作為下一級運算單元的輸入。而指令集的先進與否,也關(guān)系到 CPU 的性能發(fā)揮,它也是 CPU 性能體現(xiàn)的一個重要標志。本設(shè)計采用的指令集主要有四種形式,即寄存器型 (R 型 )、寄存器立即數(shù)型 (RI 型 )、立即數(shù)型 (I 型 )、立即數(shù)移位型 (SI 型 )。在一條 R 型指令中,第一個 3 位寄存器指的的寫入數(shù)據(jù)的寄存器,后面兩個寄存器是指令中將要用到的兩個讀出數(shù)據(jù)的寄存器。 I 型指令格式由 4 位操作碼、一個 3 位寄存器值、一個 8 位的立即數(shù)和一個 1 位的功能碼組成。這幾種型數(shù)據(jù)通路組合起來就形成 CPU 的總的型數(shù)據(jù)通路。 ALU 執(zhí)行由指令的操作,然后將 ALU 輸出的結(jié)果寫回寄存器文件中。寄存器轉(zhuǎn)移通路中,一個寄存器與零比較,如果轉(zhuǎn)移類型的內(nèi)容為零轉(zhuǎn)移并且寄存器的內(nèi)容為零,則將第二個寄存器的內(nèi)容裝入程序計數(shù)器。 VHDL的起源 VHDL 語言是一種用于電路設(shè)計的高級語言,它在 80 年代的后期出現(xiàn)。 VHDL 技術(shù)完備,具有豐富的仿真語句的庫函數(shù)。目前, VHDL 語言也已成為 FPGA/CPLD編程最常用有工具。不同的描述方式,只體現(xiàn)在描述語句上,而結(jié)構(gòu)體的結(jié)構(gòu)是完全一樣的。用戶自建的庫即為設(shè)計文件所在目錄,庫名與目錄名的對應(yīng)關(guān)系可在編譯軟件中指定。配置被看作是設(shè)計的零件清單,它描述對每個實體用哪一種行為,它非常象一個描述設(shè)計每部分用哪一種零件的清單。 Quartus II軟件和 Quartus II網(wǎng)絡(luò)版還提供了和業(yè)界領(lǐng)先和第三方綜合和仿真工具的無縫集成。 圖 Customize對話視窗 用于 MAX 3000A, MAX 7000AE, MAX 7000B和 MAX 7000S設(shè)計, Quartus II 比 MAX+plus軟件 ,設(shè)計性能平均快 15%,對于給定設(shè)計平均減少 5%的器件資源優(yōu)勢。存儲器編譯器動態(tài)生成基于用戶參數(shù)的存儲器結(jié)構(gòu)運行波形顯示,支持假設(shè)分析。根據(jù)程序計數(shù)器 PC 的值從指令存儲器中取出指令,并將指令送到取指 IF 段的鎖存單元中 2) 指令地址的計算。 PC 選擇模塊的設(shè)計 PC 選擇模塊是下一條指令地址的選擇單元,在輸入端根據(jù) sel[3..0]的值選擇四個源nextpc[15..0]、 branchpc[15..0]、 retPC[15..0]、 retiPC[15..0]中的一個,作為執(zhí)行下一個指令的地址送到程序計數(shù)器 progc 中。 newpc : out std_logic_vector(15 downto 0))。 PC PC+1 ROM IF/ID流水線寄存器 基于 FPGA 的嵌入式 CPU 設(shè)計 19 use 。檢驗指令的操作碼和功能碼是否符合指令集設(shè)計中的定義,如果指令不正確,則返回一個異常。通過這幾個模塊設(shè)計,最后綜合出整個完整的基于流水線技術(shù)的 RISC CPU。 2) Quartus II集成和綜合以及第三方綜合的支持 : Quartus II軟件包括了全面的集成綜合方案 , 以及對來自 Mentor Graphics、 Synopsys和 Synplicity的主要第三方綜合軟件的高級集成。設(shè)計者可以依據(jù)個人偏好,自行設(shè)定 Quartus II軟件的布局、功能表、指令和圖示。該軟件具有開放性、與結(jié)構(gòu)無關(guān)、多平臺、完全集成化、豐富的設(shè)計庫、模塊化工具、支持各種 HDL語言、有多種高級編程語言接口等特點,可以很方便地與以往的 MAX+plus II設(shè)計環(huán)境相互切換。一個程序包由兩大部分組成:包頭( Header)和包體( Package Body),其中包體是一個可選項,也就是說,程序包可以只由包頭構(gòu)成。在 VHDL 語言中,庫的說明總是放在設(shè)計單元的最前面: LIBRARY 庫名; 這樣,在設(shè)計單元內(nèi)的語句就可以使用庫中的數(shù)據(jù)。實體中定義了該設(shè)計所需的輸入 /輸出信號,信號的輸入 /輸出類型被稱為端口模式,同時實體中還定義他們的數(shù)據(jù)類型。 VHDL 支持廣泛,目前大多數(shù) EDA 工具幾乎都在不同程度上支持 VHDL。 VHDL特點 VHDL 主要用于描述復(fù)雜數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。 VHDL 語言概述 硬件描述語言 (HDL)是電子系統(tǒng)硬件行為描述、結(jié)構(gòu)描述、數(shù)據(jù)流描述的語言。 4) 存儲字型數(shù)據(jù)通路。ALU 執(zhí)行由指令指定的操作,然后將 ALU 輸出的結(jié)果寫回寄存器文件中。 SI 型指令用于移位指令,該指令由一個 4 位操作碼 opcode、一個 3 位目標寄存器 R一個 5 位立即數(shù)和一個功能碼構(gòu)成。 表 R 型指令 操作 碼 指令 功能描述 功能碼 func 0000 NOP 無操作 000 ADD R1,R2,R3 有符號加法( R1=R2+R3) 010 ADDu R1,R2,R3 無符號加法( R1=R2+R3) 001 SUB R1,R2,R3 有符號減法( R1=R2R3) 011 SUBu R1,R2,R3 無符號減法( R1=R2R3) 100 SLT R1,R2,R3 有符號比較,小于時置位 101 SLTu R1,R2,R3 無符號比較,小于時置位 110 0001 NOT R1,R2 邏輯非( R1=NOT R2) AND R1,R2,R3 邏輯與 000 OR R1,R2 邏輯或 001 XOR R1,R2,R3 邏輯異或 010 NOR R1,R2,R3 邏輯或非 011 0010 IN R1 端口輸入 000 OUT R1 端口輸出 001 opcode 16 位 R1 R2 R3 func 基于 FPGA 的嵌入式 CPU 設(shè)計 10 0011 JAL R1,R2 跳轉(zhuǎn) 000 RET 子程序返回 001 寄存器立即數(shù)型 (RI 型 ),與 R 型有所類似,但指令的后 6 位是用于表示一個即數(shù)。 指令系統(tǒng) 指令系統(tǒng)中最常用的指令是寄存器型 (R 型 )。 RISC CPU 的最大的特點是簡單且結(jié)構(gòu)相似的指令集在流 水線中高效并行執(zhí)行。 為保證指令在流水線中可靠的執(zhí)行,需要在流水的各級之間安排一組寄存器,用以保存當前時鐘周期運算的結(jié)果,以便為下一個周期使用,即流水線寄存 器。流水線的五個部分是被流水線寄存器分開的,這幾個流水線寄存器分別為 IF/ID 流水線寄存器、 ID/EXE流水線寄存器、 EXM/MEM 流水線寄存器、 MEM/WB 流水線寄存器。計算機中的流水線是把一個重復(fù)的過程分解為若干個子過程,每個子過程與其他子過程并行進行。 流水線設(shè) 計 100ms 單 元 (ded) 加 1 Sec 單元 加 1 Sec=60? ded=10? min 單元 加 1 min=60? 數(shù)碼管顯示器 N N N T0 定時器100ms 定時中 斷 Hour 單元 加 1 基于 FPGA 的嵌入式 CPU 設(shè)計 7 對于一條指令的從執(zhí)行到完成的過程中,更加合理的劃分方式是將其劃分為取指、譯碼、執(zhí)行、存儲器操作、寫回寄存器等 5 階段。如圖 3 為單片機構(gòu)成電子鐘的原理圖。 電源部分負責對整個系統(tǒng)供電。采用自頂向下的設(shè)計方法,數(shù)據(jù)總線和地址總線均為 16 位。 本文的目的和意義 隨著大規(guī)模集成電路技術(shù)日益成熟,通信技術(shù)、計算機技術(shù)、網(wǎng)絡(luò)技術(shù)及家用電器產(chǎn)業(yè)飛速發(fā)展,嵌入式微處器的應(yīng)用越來越廣泛。此時應(yīng)該使用FPGA/CPLD 廠商提供的軟件工 具,根據(jù)所選芯片的型號,將綜合輸出的邏輯網(wǎng)表適配到具體的 FPGA/CPLD 器件上,這個過程就叫實現(xiàn)過程在實現(xiàn)過程中最主要的過程是布局布線 (PAR, Place And Route):所謂布局 (Place)是指將邏輯網(wǎng)表中的硬件原語或者地層單元合理地適配到 FPGA 內(nèi)部的固有硬件結(jié)構(gòu)上,布局的優(yōu)劣對設(shè)計的最終實現(xiàn)結(jié)果 (在速度和面基于 FPGA 的嵌入式 CPU 設(shè)計 4 積兩個方面 )影響很大 。 2) 功能仿真:電路設(shè)計完成后,要用專用的仿真工具對設(shè)計進行仿真,驗證電路功能是否符合要
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1