亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        可重構(gòu)RISC微處理器的FPGA實(shí)驗(yàn)方案的研究

        2013-11-30 02:05:02,汪
        關(guān)鍵詞:字段寄存器指令

        楊 斐 ,汪 鵬

        (1.湖北理工學(xué)院 計(jì)算機(jī)學(xué)院,湖北 黃石 435003; 2.中南大學(xué) 軟件學(xué)院,長沙 410083)

        可重構(gòu)RISC微處理器的FPGA實(shí)驗(yàn)方案的研究

        楊 斐1*,汪 鵬2

        (1.湖北理工學(xué)院 計(jì)算機(jī)學(xué)院,湖北 黃石 435003; 2.中南大學(xué) 軟件學(xué)院,長沙 410083)

        利用FPGA的可重構(gòu)特性,設(shè)計(jì)了一個(gè)基于精簡指令系統(tǒng)的微處理器。該處理器采用微程序控制器思想,可完成指令的譯碼、執(zhí)行以及數(shù)據(jù)的加工處理,通過Altera公司的QuartusⅡ9.0軟件并結(jié)合EDA技術(shù)完成了核心電路的設(shè)計(jì),硬件平臺(tái)是型號(hào)為EP2C8Q240C8的FPGA芯片。該實(shí)驗(yàn)方案優(yōu)勢在于開發(fā)成本低、功耗低、可重構(gòu)性,對設(shè)計(jì)成果進(jìn)一步改進(jìn)可適用于大多數(shù)嵌入式系統(tǒng),其硬件可重構(gòu)的特點(diǎn)對于提高信息安全性也有一定的作用。

        可重構(gòu);電子設(shè)計(jì)自動(dòng)化技術(shù);現(xiàn)場可編程門陣列;高速硬件描述語言

        隨著電子技術(shù)的飛速發(fā)展,現(xiàn)代電子產(chǎn)品滲透到了社會(huì)的各個(gè)領(lǐng)域,并有力地推動(dòng)著社會(huì)生產(chǎn)力的發(fā)展和社會(huì)信息化程度的提高。這些產(chǎn)品在性能提高、功能更加強(qiáng)大的同時(shí),成本卻一直呈現(xiàn)逐步下降的趨勢,其主要原因是生產(chǎn)技術(shù)和電子設(shè)計(jì)技術(shù)的發(fā)展。生產(chǎn)技術(shù)以微細(xì)加工為代表,目前已經(jīng)發(fā)展到到深亞微米階段;而電子設(shè)計(jì)技術(shù)的核心是電子設(shè)計(jì)自動(dòng)化技術(shù)(即EDA技術(shù))[1]。

        利用以硬件描述語言為基礎(chǔ)的EDA設(shè)計(jì)方法,用戶可以在可編程芯片(CPLD或FPGA)上自行設(shè)計(jì)面向應(yīng)用的專用CPU核,以構(gòu)建適用的嵌入式系統(tǒng)??紤]到設(shè)計(jì)產(chǎn)品的許多性能指標(biāo)變化太快,為已經(jīng)完成設(shè)計(jì)并投入應(yīng)用的產(chǎn)品保留多次可自由更改的功能是十分必要的,這就是可重構(gòu)的概念。通過CPU加入可以動(dòng)態(tài)重構(gòu)的可編程邏輯,為每一個(gè)不同應(yīng)用加載不同的可編程配置,以優(yōu)化計(jì)算速度,是一種新的模糊軟硬件界限的技術(shù)[2]。這種可重構(gòu)技術(shù)對于提高產(chǎn)品開發(fā)效率、降低成本以及獲得更長的市場生命期、擁有獨(dú)立知識(shí)產(chǎn)權(quán)有重大意義。

        FPGA(現(xiàn)場可編程門陣列)是目前應(yīng)用最廣泛的通用可重構(gòu)器件,從一定程度上講,可重構(gòu)計(jì)算起源于FPGA的發(fā)明[3]。因此本文研究的是RISC微處理器的FPGA實(shí)現(xiàn)方案,使用VHDL(超高速硬件描述語言)和原理圖方法進(jìn)行設(shè)計(jì),通過Altera 公司的QuartusⅡ9.0軟件平臺(tái)完成設(shè)計(jì)的輸入、綜合,并進(jìn)行仿真及調(diào)試。硬件平臺(tái)采用EDA開發(fā)板,該開發(fā)板以Altera公司的CYCLONE II系列的FPGA芯片作為硬件核心,芯片型號(hào)為:EP2C8Q240C8,同時(shí)開發(fā)板包括多種實(shí)用接口,便于開發(fā)者進(jìn)行硬件測試。

        1 總體設(shè)計(jì)思路

        圖1 數(shù)據(jù)通路圖

        微處理器對整個(gè)計(jì)算機(jī)系統(tǒng)的運(yùn)行是極其重要的,雖然各種微處理器在性能指標(biāo)和結(jié)構(gòu)細(xì)節(jié)上有所不同,但所要完成的功能基本相同,整體可分為:運(yùn)算器、控制器、指令譯碼器、通用寄存器、指令寄存器、程序計(jì)數(shù)器、地址寄存器、狀態(tài)寄存器、時(shí)序產(chǎn)生器等[4],各部件利用總線傳遞信息。因此,需要設(shè)計(jì)合理的總線系統(tǒng),以控制各部件的數(shù)據(jù)傳送工作。設(shè)計(jì)好的數(shù)據(jù)通路圖如圖1所示,其中ALU為算術(shù)邏輯單元,其運(yùn)算功能由S0S1S2S3信號(hào)來控制;R0、R1為通用寄存器;LDR0、LDR1是寄存器裝載控制信號(hào);R0_B、R1_B是寄存器輸出三態(tài)門的控制信號(hào);A、B為ALU的2個(gè)暫存器,分別由LDA、LDB信號(hào)來控制數(shù)據(jù)的輸入;AR、PC、IR分別為地址寄存器、程序計(jì)數(shù)器、指令寄存器,這些專用寄存器的工作都受到指定信號(hào)的控制。所有的控制信號(hào)均由控制器根據(jù)指令功能來產(chǎn)生。

        圖2 指令周期流程圖

        2 指令系統(tǒng)的設(shè)計(jì)

        2.1微處理器的機(jī)器指令集

        指令系統(tǒng)是表征系統(tǒng)性能的重要因素之一,它的格式與功能不僅直接影響到機(jī)器的硬件構(gòu)成,而且直接影響到系統(tǒng)軟件的效率和機(jī)器的適用范圍。因此,指令系統(tǒng)的設(shè)計(jì)是很重要的。RISC(精簡指令系統(tǒng)計(jì)算機(jī))具有簡單指令集、配備大量通用寄存器、指令執(zhí)行周期短等特點(diǎn)[5]。因此,筆者設(shè)計(jì)了14條典型的機(jī)器指令,如加法、減法、自增、邏輯與、邏輯或、左移、右移、停機(jī)等,指令長度為16位定長,分別用8位二進(jìn)制位存放指令的操作碼和地址碼。

        例如加法指令:助記符為ADD R0,R1, 指令代碼為00000010-00000001;減法指令:助記符為SUB R0,R1,指令代碼為00000011-00000001。以此類推,可列出所有機(jī)器指令的二進(jìn)制代碼。

        2.2 微程序代碼的設(shè)計(jì)

        采用微程序控制器的思想,使微處理器具有規(guī)整性、靈活性、可維護(hù)性等一系列優(yōu)勢。其思想是將每條機(jī)器指令由若干條微指令組成的序列來實(shí)現(xiàn)的。因此,一條機(jī)器指令對應(yīng)著一個(gè)微程序,微程序的總和便構(gòu)成了整機(jī)的指令系統(tǒng)[6]。

        根據(jù)設(shè)計(jì)好的數(shù)據(jù)通路圖,將每一條機(jī)器指令按功能細(xì)分成若干個(gè)微操作,從而畫出指令周期流程圖,如圖2所示。圖中,將每一條微指令用一個(gè)矩形方框表示。以加法指令A(yù)DD R0,R1為例,介紹其運(yùn)行過程:設(shè)置初始微地址為0001H,該地址存放的微指令功能是將程序計(jì)數(shù)器PC的當(dāng)前值送入地址寄存器AR中,同時(shí)將PC加1;然后執(zhí)行第二條“取指”的微指令,微地址設(shè)置為0003H,用來從內(nèi)存中取出一條機(jī)器指令,并存放到IR中,測試位P(1)對機(jī)器指令的操作碼(即ADD:00000010)進(jìn)行測試,從而得到下一條微指令的地址。所有微指令都存放在控制存儲(chǔ)器中,取出正確的微指令代碼后,控制器就會(huì)產(chǎn)生相應(yīng)的控制信號(hào),從而控制執(zhí)行部件做相應(yīng)工作。當(dāng)微程序進(jìn)行到公操作(即0001地址中的微指令)時(shí),在沒有外圍設(shè)備請求時(shí),就進(jìn)行下一條機(jī)器指令的取指操作。

        232221201918-1514-1211-98-65-0保留WRRDIOMS3-S0字段1字段2字段3MA5?MA0

        圖3微指令格式

        為節(jié)省控存容量,本文采用的是直接和譯碼相混合的水平型微指令格式,共占24位,如圖3所示。其中,高5位用來產(chǎn)生存儲(chǔ)器或I/O設(shè)備的讀寫控制信號(hào),第18~15位產(chǎn)生運(yùn)算器的運(yùn)算控制信號(hào),字段1、字段2、字段3采用的都是字段譯碼方案,以縮短微指令字的長度。字段1用來產(chǎn)生各寄存器的裝載控制信號(hào),字段2產(chǎn)生總線輸出控制信號(hào),字段3包括測試位及保留位。5~0位為M字段,即下地址字段,用來產(chǎn)生下一條微指令的微地址。

        按照設(shè)計(jì)好的微指令格式,可以將圖2中每一個(gè)方框?qū)?yīng)的微指令代碼編寫出來。例如10H微地址中,存放的微指令完成的操作是A+B→R0,其對應(yīng)的24位二進(jìn)制代碼是:000000010011001000000001。

        3 主要模塊的設(shè)計(jì)

        3.1 控制器模塊的設(shè)計(jì)

        控制器是CPU的核心部件,所有執(zhí)行部件都在控制器的控制下有條不紊地完成規(guī)定的操作??刂破靼ㄖ噶罴拇嫫?、地址轉(zhuǎn)移邏輯、控制存儲(chǔ)器、微指令寄存器等部件[7],其基本功能是對指令寄存器中的指令進(jìn)行翻譯,從而產(chǎn)生對應(yīng)的微程序入口,再從控存中取出一條微指令代碼,以微指令代碼中的控制字段向各執(zhí)行部件發(fā)號(hào)命令。其中,地址轉(zhuǎn)移邏輯承擔(dān)自動(dòng)修改微地址的任務(wù),從而控制微程序的正確運(yùn)行,是純組合邏輯電路,因此,可以利用VHDL中的CASE語句進(jìn)行功能描述。

        按照前面設(shè)計(jì)好的指令格式,將機(jī)器指令代碼和微指令代碼分別存入一定容量的RAM和ROM中。這2個(gè)模塊都是通過QUARTUS II中的參數(shù)可設(shè)置模塊LPM來實(shí)現(xiàn)的。要將代碼有效存入,還必須事先編寫MIF格式的初始化文件。例如,控存ROM對應(yīng)的MIF文件部分代碼為:

        WIDTH= 24 ; --字長

        DEPTH= 64; --字?jǐn)?shù)

        ADDRESS_RADIX=HEX;

        DATA_RADIX=HEX;

        CONTENT BEGIN

        00:000001;

        01:006D43;

        03:107070;

        10:013201;

        …….

        3.2 運(yùn)算器模塊的設(shè)計(jì)

        運(yùn)算器由算術(shù)邏輯單元(ALU)、累加器、狀態(tài)寄存器、通用寄存器組等組成。算術(shù)邏輯運(yùn)算單元(ALU)的基本功能是完成操作數(shù)的加工處理。將操作數(shù)存于暫存器A和暫存器B中,控制信號(hào)S3…S0來決定ALU對操作數(shù)進(jìn)行何種運(yùn)算。運(yùn)算結(jié)果送給輸出寄存器Q,結(jié)果將影響到狀態(tài)寄存器中相關(guān)位。

        圖4 頂層設(shè)計(jì)框圖

        利用VHDL語言將ALU的主要功能描述出來,主要代碼如下:

        PROCESS (A,B,S)

        BEGIN

        CASE S IS

        WHEN "0000"=gt;Qlt;=A;

        WHEN "0001"=gt;Qlt;=B;

        WHEN "0010"=gt;Qlt;=A + B;

        WHEN "0011"=gt;Qlt;=A - B;

        WHEN "0100"=gt;Qlt;=A + 1;

        WHEN "0101"=gt;Qlt;=A - 1;

        WHEN "0110"=gt;Qlt;=A AND B;

        WHEN "0111"=gt;Qlt;=A OR B;

        WHEN "1000"=gt;Qlt;= NOT A ;

        ……

        本文安排的運(yùn)算功能雖然簡單,但具有典型性,優(yōu)勢在于其設(shè)計(jì)方法簡單,擴(kuò)展性較強(qiáng),n位控制端可產(chǎn)生2n種運(yùn)算,較傳統(tǒng)電子設(shè)計(jì)方法而言,可大大降低設(shè)計(jì)成本、縮短設(shè)計(jì)周期。

        3.3 寄存器模塊的設(shè)計(jì)

        寄存器是一個(gè)典型的時(shí)序邏輯電路,在特定時(shí)鐘信號(hào)的控制下可以裝載一組二進(jìn)制數(shù)據(jù)并穩(wěn)定存儲(chǔ)[8]。本文的微處理器中用到了多個(gè)16位寄存器如PC、IR、AR以及24位寄存器UIR。充分利用VHDL中不完整的IF語句能產(chǎn)生時(shí)序電路的特點(diǎn),實(shí)現(xiàn)了數(shù)據(jù)的穩(wěn)定存儲(chǔ),不涉及到內(nèi)部觸發(fā)器,設(shè)計(jì)周期更短,效率更高。實(shí)際應(yīng)用中,可根據(jù)設(shè)計(jì)需求隨時(shí)更改寄存器的位寬以及觸發(fā)方式,體現(xiàn)出其可重構(gòu)的特點(diǎn)。

        3.4 各模塊連接框圖

        按照系統(tǒng)總體設(shè)計(jì)思路,并結(jié)合EDA技術(shù)的開發(fā)特性,在QuartusII 9.0中創(chuàng)建新的工程,并利用原理圖方法畫出該系統(tǒng)的頂層設(shè)計(jì)框圖,如圖4所示。

        4 仿真與下載

        圖5 仿真波形圖

        4.1時(shí)序仿真

        在編程下載之前,必須利用EDA工具對設(shè)計(jì)結(jié)果仿真。本文采用仿真精度較高的時(shí)序仿真,總體波形仿真圖如圖5所示,其波形描述了CPU取出加法指令(PC=0000)并執(zhí)行該指令的過程,先后輸入了05H、12H到R0、R1中,DATAOUT顯示運(yùn)行結(jié)果為17H,輸出波形完全正確。同理,運(yùn)行其他機(jī)器指令,觀察輸出波形,從而驗(yàn)證了該系統(tǒng)達(dá)到了預(yù)期的功能需求。

        4.2 硬件下載

        根據(jù)開發(fā)板中FPGA芯片的引腳特性,在QuartusⅡ9.0中,將本系統(tǒng)中最終的CPU模塊進(jìn)行引腳分配后,對目標(biāo)器件進(jìn)行編程操作,成功下載本系統(tǒng)的sof文件后,在開發(fā)板上進(jìn)行硬件調(diào)試,并利用嵌入式邏輯分析儀 SignalTap II 觀察指令的運(yùn)行情況。最終在FPGA上實(shí)現(xiàn)了基于RISC的微處理器。

        5 結(jié)語

        本文實(shí)現(xiàn)了一種具有基本功能的可重構(gòu)微處理器。打破了傳統(tǒng)邏輯電路的設(shè)計(jì)方法,采用了目前主流的EDA技術(shù),可編程器件FPGA為設(shè)計(jì)帶來了極大的靈活性,通過軟件編程對硬件的結(jié)構(gòu)和工作方式進(jìn)行重構(gòu),使得硬件的設(shè)計(jì)可以像軟件設(shè)計(jì)那樣快捷方便。由于高速發(fā)展的FPGA具有串、并行工作方式和高性能、低功耗、可重構(gòu)性的特點(diǎn),由它實(shí)現(xiàn)的微處理器勢必在當(dāng)代電子市場中具有較強(qiáng)的競爭能力。

        實(shí)驗(yàn)證明,本設(shè)計(jì)方案可行、可靠,并可以進(jìn)一步改進(jìn)以適用于大多數(shù)嵌入式系統(tǒng),尤其是信息安全方面的應(yīng)用,其硬件可重構(gòu)的特點(diǎn)對于提高信息安全性有積極作用。

        [1] 常瑞麗,崔國瑋,韓軍.EDA技術(shù)的發(fā)展與電子技術(shù)實(shí)驗(yàn)教學(xué)的改革[J].中國現(xiàn)代教育裝備,2009(11):18-20.

        [2] 潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程:VHDL版[M].北京:科學(xué)出版社,2010.

        [3] BUELL D,EI-GHAZAWI T,GAJ K,et al.High-performance reconfigurable computing[J].IEEE Computer,2007,40(3):23-27.

        [4] 許金綱,王維維.微處理器體系結(jié)構(gòu)[M].北京:科學(xué)出版社,2008.

        [5] 白中英.計(jì)算機(jī)組成原理[M].北京:科學(xué)出版社,2008.

        [6] 王培麟.FPGA架構(gòu)的8位CISC CPU設(shè)計(jì)[J].煤炭技術(shù),2010,29(10):212-214.

        [7] 姜詠江.基于Quartus II的計(jì)算機(jī)核心設(shè)計(jì)[M].北京:清華大學(xué)出版社,2007.

        [8] 盧毅,賴杰.VHDL與數(shù)字電路設(shè)計(jì)[M].北京:科學(xué)出版社,2002.

        [9] 孫康.可重構(gòu)計(jì)算相關(guān)技術(shù)研究[D].杭州:浙江大學(xué),2007.

        [10] 侯慧,曹偉,王健,等.動(dòng)態(tài)可重構(gòu)技術(shù)淺述[J].半導(dǎo)體技術(shù),2008,33(7):553-557.

        [11] BISHOP P,SULLIVAN C.A reconfigurable future[J].Proceedings of IEEE International Conference on Field-Programmable Technology,2003:2-7.

        [12] 馬夢雅.嵌入式軟核CPU的FPGA實(shí)現(xiàn)和比較研究[D].北京:北京工業(yè)大學(xué),2012.

        StudyonFPGAExperimentalSchemeofReconfigurableRISCMicroprocessor

        YANGFei1*,WANGPeng2

        (1.School of Computer Science, Hubei Polytechnic University, Huangshi 435003,China;2.School of Software, Central South University, Changsha 410083,China)

        The paper designs a RISC-based microprocessor using the reconfigurability of FPGA. By using MCU concept, the microprocessor is capable of instruction decoding amp; execution and data processing. Its core circuit is designed by using Altera Company's software QuartusⅡ9.0 and combining EDA technology, and its hardware platform is the FPGA chip of model EP2C8Q240C8. The experimental scheme has the advantages of low cost of development, low power consumption and reconfigurability. After further improvement, the design result is applicable to most embedded systems, and the reconfigurability of hardware contributes to information security to some extent.

        Reconfiguration; EDA technology; FPGA; VHDL

        2013-08-15

        湖北省教育廳科學(xué)技術(shù)研究項(xiàng)目“基于FPGA的可重構(gòu)加密系統(tǒng)的研究”(B2013064);湖北理工學(xué)院實(shí)驗(yàn)室開放基金項(xiàng)目“模型機(jī)實(shí)驗(yàn)系統(tǒng)的EDA設(shè)計(jì)方案”(201301)

        楊斐(1981- ),女(漢族),湖北大冶人,講師,碩士,研究方向:EDA技術(shù)和嵌入式系統(tǒng),通信作者郵箱:33965991@qq.com。

        汪鵬(1989- ),男(漢族),湖北黃岡人,在讀碩士研究生,研究方向:無人車智能控制。

        N33

        A

        2095-5383(2013)04-0037-04

        猜你喜歡
        字段寄存器指令
        聽我指令:大催眠術(shù)
        圖書館中文圖書編目外包數(shù)據(jù)質(zhì)量控制分析
        Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
        ARINC661顯控指令快速驗(yàn)證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        CNMARC304字段和314字段責(zé)任附注方式解析
        無正題名文獻(xiàn)著錄方法評述
        坐標(biāo)系旋轉(zhuǎn)指令數(shù)控編程應(yīng)用
        關(guān)于CNMARC的3--字段改革的必要性與可行性研究
        女人体免费一区二区| 国内精品久久久久影院薰衣草| 中文乱码字慕人妻熟女人妻| 狠狠久久久久综合网| 国内精品九九久久精品小草 | 亚洲无码夜夜操| 久久亚洲一区二区三区四区五 | 女女女女女裸体处开bbb| 國产一二三内射在线看片| 青青草极品视频在线播放| 亚洲一品道一区二区三区| 99久久精品免费观看国产| 人妻在卧室被老板疯狂进入国产| 国内精品九九久久精品小草| 中文字幕色偷偷人妻久久一区| 国产特级毛片aaaaaa视频| yeyecao亚洲性夜夜综合久久| 秋霞国产av一区二区三区| 亚洲熟女少妇精品综合| 成人午夜性a级毛片免费| 中文人成影院| 手机在线中文字幕av| 成年丰满熟妇午夜免费视频| 少妇装睡让我滑了进去| 911国产在线观看精品| 日本乱熟人妻中文字幕乱码69| 欧美国产综合欧美视频| 国产高清在线精品免费| 日本一区二区在线看看| 亚洲男人天堂黄色av| 99久久国产福利自产拍| 国产成人一区二区三区高清| 粉嫩的极品女神尤物在线| 中文无码一区二区三区在线观看| 成人在线激情网| av免费一区在线播放| 成年女人免费v片| 亚洲日本va午夜在线电影| 国产一区二区丁香婷婷| 有坂深雪中文字幕亚洲中文 | 男受被做哭激烈娇喘gv视频|