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

        ?

        基于微程序控制器的雙CPU系統(tǒng)的設(shè)計(jì)

        2012-05-11 00:45:24章鳴嬛葉有祥
        微型電腦應(yīng)用 2012年5期
        關(guān)鍵詞:指令實(shí)驗(yàn)系統(tǒng)

        章鳴嬛,葉有祥

        0 引言

        隨著微電子技術(shù)和計(jì)算機(jī)技術(shù)的迅猛發(fā)展,尤其是大規(guī)??删幊唐骷绗F(xiàn)場(chǎng)可編程邏輯陣列FPGA(Field Programmable Gate Array)的出現(xiàn),在苛刻的實(shí)時(shí)處理系統(tǒng)的要求下,出現(xiàn)了一種新穎靈活的技術(shù)——可重構(gòu)技術(shù)。它采用實(shí)時(shí)電路重構(gòu)技術(shù)[1],在運(yùn)行時(shí)根據(jù)需要,動(dòng)態(tài)改變系統(tǒng)的電路結(jié)構(gòu),主要通過(guò)對(duì)系統(tǒng)中的可編程器件進(jìn)行重配置或部分重配置,從而使系統(tǒng)既有硬件優(yōu)化所能達(dá)到的高速度和高效率,又能像軟件那樣靈活可變,易于升級(jí)??芍貥?gòu)體系結(jié)構(gòu)[2]能夠跟據(jù)不同的應(yīng)用需求,靈活、快速地改變自身的結(jié)構(gòu),以便能為每個(gè)特定的應(yīng)用提供與之相匹配的體系結(jié)構(gòu)。

        1 32位微處理器系統(tǒng)(實(shí)驗(yàn)CPU)的邏輯設(shè)計(jì)

        1.1 “實(shí)驗(yàn)CPU”的邏輯結(jié)構(gòu)

        1.1.1 “實(shí)驗(yàn)CPU”的總體結(jié)構(gòu)框圖

        控制器是CPU及整個(gè)處理器系統(tǒng)的核心,它負(fù)責(zé)指揮控制協(xié)調(diào)處理器系統(tǒng)的所有工作。根據(jù)微操作控制信號(hào)產(chǎn)生方法的不同,控制器可分為常規(guī)邏輯控制器和微程序控制器兩種。

        “實(shí)驗(yàn)CPU”采用微程序控制器的方式,其總體邏輯結(jié)構(gòu),如圖1所示:

        圖1 實(shí)驗(yàn)CPU的總體邏輯框圖

        1.1.2 系統(tǒng)主要模塊概述

        總線:本系統(tǒng)采用單總線,即微處理器的內(nèi)部總線和外部總線均為一條總線。采用16位地址總線;結(jié)合實(shí)驗(yàn)平臺(tái)要求,采用兩條數(shù)據(jù)總線,一條是入32位CPU的數(shù)據(jù)總線DBin,另外一條是出32位CPU的數(shù)據(jù)總線DBout。需要讀內(nèi)存時(shí),連至DBin,要寫內(nèi)存時(shí),連至DBout。

        寄存器組:寄存器模塊寄存器組中共包括R0至R31共32個(gè)寄存器。

        運(yùn)算器部件ALU:ALU包括含累加器A和A2、暫存器ACT、狀態(tài)寄存器等,可完成各種算術(shù)、邏輯運(yùn)算功能,如加減、與、或及移位等。

        指令部件:指令部件模塊包括指令寄存器、程序計(jì)數(shù)器(PC)及其控制電路等。

        微程序控制部件:微程序控制摸塊包括微指令寄存器、微程序計(jì)數(shù)器及它的控制電路(加 1、接數(shù)等)、微指令寄存器、時(shí)序控制電路、微操作信號(hào)發(fā)生電路等。

        存儲(chǔ)器:存儲(chǔ)器為外接的RAM存儲(chǔ)器,容量為32K*8b。

        外設(shè):為了實(shí)現(xiàn)外部輸入信息的處理,系統(tǒng)中使用4*4鍵盤作為外設(shè)。對(duì)存儲(chǔ)器和外設(shè)分別設(shè)置獨(dú)立的讀/寫信號(hào)。

        1.2 “實(shí)驗(yàn)CPU”的指令集設(shè)計(jì)

        本系統(tǒng)指令集共設(shè)計(jì)26條常用指令,包括傳送、運(yùn)算、存取及跳轉(zhuǎn)、棧操作、移位、子程序調(diào)用等類型,尋址方式包括立即尋址、直接尋址,間接尋址及相對(duì)尋址等。

        1.2.1 指令執(zhí)行流程

        分別對(duì)傳送及加法指令在系統(tǒng)邏輯框圖中的執(zhí)行流程進(jìn)行列舉,如表1所示:

        表1 指令集舉例及指令執(zhí)行流程

        1.2.2 指令編碼

        對(duì)表1中列舉的指令進(jìn)行指令編碼,如表2所示:

        表2 指令編碼

        1.3 “實(shí)驗(yàn)CPU”的控制器設(shè)計(jì)

        “實(shí)驗(yàn)CPU”采用微程序控制器。將微程序控制信號(hào)以微碼的形式構(gòu)成微指令,編成多微指令的微程序,存于存儲(chǔ)器中。

        1.3.1 微指令編碼及微程序編碼

        設(shè)計(jì)微處理器的微指令寬度為32位。微操作數(shù)少于32個(gè),可采用直接表示法每一個(gè)微操作信號(hào)都由微指令相應(yīng)的某一位來(lái)控制。

        根據(jù)各指令在系統(tǒng)邏輯框圖中的執(zhí)行流程和微指令編碼中信號(hào)的有效性,得到微程序編碼[3]。以表1中的傳送指令:“MOV A,Ri”為例,說(shuō)明如下:

        為了執(zhí)行該條指令,首先必須根據(jù)表1中的指令執(zhí)行流程,得到在指令執(zhí)行的過(guò)程中,需要用到哪些控制信號(hào),而后根據(jù)這些控制信號(hào)的有效與否,對(duì)控制信號(hào)進(jìn)行取值。

        該指令為單字節(jié)指令,因此,共需要兩條微指令來(lái)執(zhí)行,前條執(zhí)行本條指令的功能,后條為“取指微指令”。即:

        001,0111,1110,1000,1110,0011,1010,1101 17E8E3AE

        001,1100,1110,1000,1101,0011,1010,0001 1CE8D3A1

        1.3.2 時(shí)鐘發(fā)生選擇器及時(shí)鐘分頻器的設(shè)計(jì)

        時(shí)鐘發(fā)生選擇器的存在是由于需要產(chǎn)生不同的波形,“實(shí)驗(yàn)CPU”連續(xù)運(yùn)行時(shí)是連續(xù)的方波,單步運(yùn)行時(shí)是兩個(gè)脈沖,還需要產(chǎn)生持續(xù)的低電平用來(lái)暫停CPU。

        時(shí)鐘分頻器的存在是由于ARM9實(shí)驗(yàn)平臺(tái)上提供的時(shí)鐘較快,加入該時(shí)鐘分頻器保證了在每次內(nèi)存操作完成之后,實(shí)驗(yàn)CPU才進(jìn)入下半個(gè)時(shí)鐘周期。本系統(tǒng)中分頻倍率為16777216倍,可以將60MHz的晶振頻率降到0.25-0.5Hz。

        2 實(shí)驗(yàn)CPU的邏輯綜合及下載

        為了利用可重構(gòu)技術(shù)及可編程資源在物理上實(shí)現(xiàn)“實(shí)驗(yàn)CPU”,需要將實(shí)驗(yàn)CPU系統(tǒng)進(jìn)行VHDL(Very high speed integrated circuit Hardware Description Language,VHDL)描述,形成可綜合的代碼[4]。

        例如,微程序控制器模塊功能的部分VHDL描述如下[5]:

        --MCLK,MPCK,MICK

        process(CLK,RESET,RUN)

        begin

        if(RESET='0')then MCLK<='0';

        elsif falling_edge(CLK)then

        if(RUN='1')then MCLK<=not MCLK;

        end if;

        end if;

        end process;

        --MCLR

        process(MCLK,RESET)

        begin

        if(RESET='0')then MCLR<='0';

        elsif rising_edge(MCLK)then MCLR<='1';

        end if;

        end process;

        3 雙CPU監(jiān)控系統(tǒng)的硬件實(shí)現(xiàn)

        本開發(fā)中所用的綜合工具為Synplicity,它是VHDL/VerilogHDL綜合軟件,生成“.edf”文件后可調(diào)入任何PLD開發(fā)平臺(tái)進(jìn)行布線、仿真和下載。

        將經(jīng)過(guò)綜合而生成網(wǎng)表文件cpu_32.edf文件,下載到目標(biāo)板的可編程資源FPGA中,從而構(gòu)成可重構(gòu)的“實(shí)驗(yàn)CPU”。

        4 雙CPU監(jiān)控系統(tǒng)的工作方式研究及結(jié)果展示

        論文涉及的雙CPU監(jiān)控系統(tǒng),兩個(gè)處理器內(nèi)核均可正常運(yùn)行指令、執(zhí)行任務(wù);利用ARM9實(shí)驗(yàn)板平臺(tái)的ARMCPU來(lái)監(jiān)視用“實(shí)驗(yàn)CPU”的工作情況,并模擬實(shí)驗(yàn)CPU的內(nèi)存,以實(shí)現(xiàn)機(jī)器碼運(yùn)行;通過(guò)串行口發(fā)送的指令來(lái)完成單步、運(yùn)行、停止、實(shí)驗(yàn)CPU指令文件傳送、實(shí)驗(yàn)CPU內(nèi)存修改、內(nèi)存察看等工作。本系統(tǒng)利用一個(gè)已知的CPU來(lái)監(jiān)控可重構(gòu)的另一CPU,研究雙CPU監(jiān)控系統(tǒng),嘗試對(duì)新的體系結(jié)構(gòu)的研究。

        4.1 數(shù)據(jù)監(jiān)控的狀態(tài)口及控制口

        為了實(shí)現(xiàn)數(shù)據(jù)監(jiān)控,例如地址線、微指令地址線、數(shù)據(jù)線的工作狀態(tài),及微指令數(shù)據(jù)線數(shù)值的讀取,需要在對(duì)應(yīng)的輸出部件連上了狀態(tài)寄存器(狀態(tài)口),從而在程序設(shè)計(jì)中提供了查看接口;而對(duì)于“實(shí)驗(yàn)CPU”的“運(yùn)行”與“重啟”接口,進(jìn)行了接上命令寄存器(控制口)的連接,從而可以控制“實(shí)驗(yàn)CPU”的運(yùn)行與初始化。

        4.2 雙CPU監(jiān)控系統(tǒng)的通信狀態(tài)分析

        雙CPU監(jiān)控系統(tǒng)的工作內(nèi)容可以分為兩部分。一部分是初始化工作,其中涉及到中斷服務(wù)程序的初始化、對(duì)通信口的初始化,對(duì)模擬內(nèi)存的初始化等工作;另一部分是狀態(tài)機(jī),主要由4種不同的大狀態(tài)組成,分別是:STOP(START),RUNNING,STEP,COM。狀態(tài)之間的關(guān)系,如圖4所示:

        圖4 雙CPU監(jiān)控系統(tǒng)的工作狀態(tài)轉(zhuǎn)換

        (1)START狀態(tài)下,32位“實(shí)驗(yàn)CPU”未處于運(yùn)行狀態(tài)。因此相關(guān)的狀態(tài)是設(shè)置CPU的“重啟”及“運(yùn)行”均為無(wú)效狀態(tài)(低電平0)。

        (2)RUNNING(連續(xù)運(yùn)行)狀態(tài)下,32位“實(shí)驗(yàn)CPU”全速運(yùn)行,CPU的“重啟”及運(yùn)行均處于有效狀態(tài)。時(shí)鐘發(fā)生選擇器需要產(chǎn)生連續(xù)的方波。系統(tǒng)還特別設(shè)置了直接進(jìn)入STOP(START)狀態(tài)的快捷鍵。

        (3)STEP(單步運(yùn)行)狀態(tài)下,32位“實(shí)驗(yàn)CPU”單步運(yùn)行,時(shí)鐘發(fā)生選擇器產(chǎn)生兩個(gè)脈沖。之后每按一次“單步運(yùn)行”快捷鍵T,“實(shí)驗(yàn)CPU“完成一個(gè)工作周期,并打印出幾個(gè)監(jiān)控接口的觀察值。在STEP中的工作狀態(tài),如圖5所示:

        圖5 系統(tǒng)進(jìn)入STEP模式

        (4)COM狀態(tài)下,將有3個(gè)功能菜單可供選擇:0選擇文件(機(jī)器指令文件,即S19文件)傳輸,1、選擇模擬內(nèi)存修改,2、選擇模擬內(nèi)存察看,3、選擇退回到執(zhí)行(START)模式。在這個(gè)狀態(tài)下,文件傳輸就是將機(jī)器指令文件通過(guò)串行口傳至ARM CPU,解碼后放在指定內(nèi)存地址中,然后可以退回到執(zhí)行模式下運(yùn)行即可;內(nèi)存察看的方法是,選擇2即可輸入地址,按回車可以查看;內(nèi)存修改則輸入地址和需要修改的內(nèi)容即可。如圖6所示:

        圖6 COM模式下內(nèi)存查看

        5 實(shí)驗(yàn)結(jié)果分析

        5.1 雙CPU監(jiān)控系統(tǒng)的特點(diǎn)分析

        通過(guò)上述分析,可以看出雙CPU監(jiān)控系統(tǒng)具有以下特點(diǎn):

        (1)該系統(tǒng)在工作時(shí)能夠正常穩(wěn)定的運(yùn)行指令和執(zhí)行任務(wù),可實(shí)現(xiàn)處理器資源的并行處理,提高處理器的實(shí)時(shí)工作性能。

        (2)在工作時(shí),ARM-CPU能夠監(jiān)視“實(shí)驗(yàn)CPU”的工作狀態(tài),提高實(shí)驗(yàn)CPU工作的穩(wěn)定性。

        (3)本系統(tǒng)采用可重構(gòu)資源實(shí)現(xiàn),實(shí)現(xiàn)硬件系統(tǒng)的軟件化,便于系統(tǒng)升級(jí)。

        5.2 與其他設(shè)計(jì)方式的對(duì)比分析

        本系統(tǒng)的另一特點(diǎn)是,32位的“實(shí)驗(yàn)CPU”具有較快的系統(tǒng)時(shí)鐘,大約僅需要0.01秒即可完成一個(gè)周期,有較高的工作效率,并引入了鍵盤作為外設(shè),進(jìn)行內(nèi)存與外設(shè)的交互。

        為了節(jié)省可重構(gòu)的資源,也采用了模擬內(nèi)存的方式,但結(jié)果顯示,速度立刻會(huì)下降。這是因?yàn)閮?nèi)存是模擬的,因此很多操作就會(huì)占用時(shí)間。以內(nèi)存讀取為例,首先,由于地址是通過(guò)放在內(nèi)存中的一個(gè)變量實(shí)現(xiàn)的,對(duì)其讀取意味著是對(duì)內(nèi)存操作;其次,要讀取指定地址的模擬內(nèi)存的值,這又需要一次內(nèi)存操作;最后將結(jié)果放置于數(shù)據(jù)總線DBin上,這也是一次內(nèi)存操作。綜合多方面的因素,大約需要4秒鐘才能完成一個(gè)工作周期。

        6 總結(jié)

        本文論述采用可重構(gòu)技術(shù),利用實(shí)驗(yàn)平臺(tái)的可編程資源,設(shè)計(jì)出簡(jiǎn)單靈活的微處理器系統(tǒng),該微處理器擁有指令集和控制單元,能夠正確執(zhí)行所有指令;并利用該平臺(tái)上的另一處理器ARM-CPU,可與已有的微處理器構(gòu)成雙CPU監(jiān)控系統(tǒng),從而獲得更高可靠性和實(shí)用性系統(tǒng)。并可以根據(jù)根據(jù)需要添加適當(dāng)?shù)耐獠吭O(shè)備,如在擴(kuò)展實(shí)驗(yàn)中,本研究還將外部的模擬信號(hào)引入并進(jìn)行數(shù)模轉(zhuǎn)換,再對(duì)得到的數(shù)字信號(hào)分析處理。

        [1]章鳴嬛.基于可重構(gòu)技術(shù)的雙核微處理器系統(tǒng)的設(shè)計(jì)[J].微型電腦應(yīng)用,2011,27(7):12-14.

        [2]徐佳慶,鄔貴明,竇勇.二維DCT在粗粒度可重構(gòu)處理器上的實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2008,34(20):257.

        [3]徐允文,蔡敏.基于微程序技術(shù)的存儲(chǔ)控制器的研究和設(shè)計(jì)[J].半導(dǎo)體技術(shù),2007,32(11):997.

        [4]黃潔.可編程邏輯器件及其應(yīng)用前景[J].中國(guó)科技信息,2005,13:38.

        [5]陳耀和.VHDL語(yǔ)言設(shè)計(jì)技術(shù)[M].北京:電子工業(yè)出版社,2004:7-8.

        猜你喜歡
        指令實(shí)驗(yàn)系統(tǒng)
        聽我指令:大催眠術(shù)
        記一次有趣的實(shí)驗(yàn)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無(wú)人機(jī)系統(tǒng)
        ZC系列無(wú)人機(jī)遙感系統(tǒng)
        做個(gè)怪怪長(zhǎng)實(shí)驗(yàn)
        ARINC661顯控指令快速驗(yàn)證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        NO與NO2相互轉(zhuǎn)化實(shí)驗(yàn)的改進(jìn)
        国产无吗一区二区三区在线欢| 日韩中文字幕乱码在线| 中文字幕人妻中文| 女同av免费在线播放| 91三级在线观看免费| 亚洲黄色天堂网站在线观看禁18| 久久久久波多野结衣高潮| 免费视频一区二区| 杨幂二区三区免费视频| 中文字幕一区二区中文| 插b内射18免费视频| 亚洲av无码男人的天堂在线| 欧美中文字幕在线| 精品人伦一区二区三区蜜桃麻豆| 国产精品爽爽VA吃奶在线观看| 日本在线一区二区三区四区| 国产白浆在线免费观看| 亚洲日韩中文字幕无码一区| 亚洲av无码电影网| 丝袜人妻无码中文字幕综合网| 亚洲精品国产二区在线观看| 成人性生交大片免费5| 夜夜爽妓女8888888视频| 国产精品99久久免费| 国产主播一区二区在线观看| 白白色日韩免费在线观看| 成人无码av免费网站| 中文字幕人妻少妇引诱隔壁| 欧洲日本一线二线三线区本庄铃| 国产午夜激无码AV毛片不卡| av网站不卡的av在线| 日本另类αv欧美另类aⅴ| 大地资源网更新免费播放视频| 一区二区三区福利在线视频| 国产又大大紧一区二区三区| 97人人模人人爽人人喊网| 美女扒开内裤让男生桶| 国产女奸网站在线观看| 国产精品国产三级国产专区51区| 日本久久精品视频免费| 欧美乱妇高清无乱码在线观看|