一種精簡(jiǎn)的微處理器ip核的制作方法
【專利摘要】本發(fā)明公開了一種精簡(jiǎn)的微處理器IP核,對(duì)傳統(tǒng)的處理器進(jìn)行指令系統(tǒng)和存儲(chǔ)模式的精簡(jiǎn)、優(yōu)化,該處理器核具有常規(guī)的算術(shù)運(yùn)算能力、能實(shí)現(xiàn)數(shù)據(jù)解析、流程控制等常規(guī)嵌入式系統(tǒng)中應(yīng)用中的主要功能。本發(fā)明具有以下有益效果:本發(fā)明提供的處理器IP核具備了常規(guī)處理器的算術(shù)運(yùn)算和邏輯控制能力,內(nèi)部的12個(gè)通用寄存器可滿足臨時(shí)數(shù)據(jù)和過程數(shù)據(jù)量不多的應(yīng)用要求,達(dá)到無需擴(kuò)展讀寫存儲(chǔ)器的要求;對(duì)于數(shù)據(jù)量較大的應(yīng)用要求也可擴(kuò)展讀寫訪問存儲(chǔ)器實(shí)現(xiàn),具有較高的可擴(kuò)展性;本發(fā)明提供的處理器IP核滿足了非計(jì)算性嵌入式系統(tǒng)的信息處理要求,也可作為復(fù)雜系統(tǒng)中的協(xié)控制運(yùn)算部件集成。
【專利說明】—種精簡(jiǎn)的微處理器IP核
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)處理器設(shè)計(jì)【技術(shù)領(lǐng)域】,具體涉及一種精簡(jiǎn)的微處理器IP核。
【背景技術(shù)】
[0002]隨著芯片工藝能力的提升,現(xiàn)代處理器已經(jīng)采用了 65ns甚至42ns技術(shù)。通過減小布線寬度實(shí)現(xiàn)對(duì)處理器速度和性能的提升。現(xiàn)代處理器的發(fā)展在通過流水線技術(shù),高速SerDes總線的應(yīng)用實(shí)現(xiàn)了處理器在運(yùn)算和總線通訊性能上的提升。已應(yīng)用于個(gè)人計(jì)算機(jī),移動(dòng)終端設(shè)備,服務(wù)運(yùn)算系統(tǒng)等高性能運(yùn)算要求的應(yīng)用領(lǐng)域?,F(xiàn)代嵌入式終端處理器的應(yīng)用主要有ARM,MIPS, PowerPC, x86。對(duì)于該類處理器在處理器的構(gòu)建上都具有了完整的指令系統(tǒng),具有定浮點(diǎn)運(yùn)算解決方案,因此具有較廣的應(yīng)用范圍。MIPS和x86處理器具有更好的計(jì)算性能,PowerPC處理器利用并行計(jì)算方法,通過專用流媒體,網(wǎng)絡(luò)協(xié)處理器等構(gòu)建方式,實(shí)現(xiàn)對(duì)應(yīng)用數(shù)據(jù)的有效處理,因此PowerPC處理器多用于網(wǎng)絡(luò)數(shù)據(jù)計(jì)算和網(wǎng)絡(luò)服務(wù)器等應(yīng)用設(shè)備。ARM指令系統(tǒng)通過精簡(jiǎn)指令模型和存儲(chǔ)模型實(shí)現(xiàn)了較好的功耗特性,因此廣泛應(yīng)用于民用設(shè)備和消費(fèi)電子領(lǐng)域。
[0003]嵌入式系統(tǒng)更多的是面向應(yīng)用服務(wù)的電子設(shè)備,在設(shè)備的研制上具有更多的成本、能耗和集成度設(shè)計(jì)要求。對(duì)于具有高復(fù)雜度的算法解算,數(shù)字信號(hào)處理等應(yīng)用也受處理器運(yùn)行方式和存儲(chǔ)資源訪問方式的限制。隨著SOC片上系統(tǒng)設(shè)計(jì)技術(shù)的發(fā)展,利用可編程邏輯器件邏輯加工并發(fā)執(zhí)行的特性,在數(shù)值計(jì)算,信號(hào)處理,接口控制方式上都具有明顯的優(yōu)勢(shì)。采用處理器核集成設(shè)計(jì)方法已成為嵌入式系統(tǒng)應(yīng)用中新型的解決方案??删幊踢壿嬈骷S商如Xilinx公司,altera公司,actel公司等均提供了相應(yīng)的解決方案。
[0004]目前,可編程邏輯器件廠商Xilinx公司提供的MicroBlaze處理器核,altera公司提供的nios處理器核均是通過精簡(jiǎn)指令系統(tǒng),簡(jiǎn)化存儲(chǔ)模型和接口電路定制的方式實(shí)現(xiàn)。在設(shè)計(jì)上并沒有相應(yīng)的針對(duì)性,因此處理器核具有較廣的應(yīng)用面,同時(shí)也造成了處理器核規(guī)模大,對(duì)目標(biāo)載體具有規(guī)模、資源結(jié)構(gòu)的要求。在實(shí)際工程應(yīng)用中包括工業(yè)、軍事應(yīng)用的測(cè)量控制設(shè)備中,仍存在較多的低端控制設(shè)備應(yīng)用需求,該類設(shè)備主要用于信息采集和指令驅(qū)動(dòng),具有計(jì)算性能要求不高,設(shè)備功能以數(shù)據(jù)通訊,接口驅(qū)動(dòng)控制為主的特點(diǎn)。在實(shí)際應(yīng)用中如核電、航空、航天等領(lǐng)域,對(duì)該類設(shè)備原材料和元器件的選用因設(shè)備工作環(huán)境要求而限制選用范圍,現(xiàn)有的微處理器不宜直接適用于該類設(shè)備,且目前國內(nèi)外均未有針對(duì)該類設(shè)備處理器的研制經(jīng)歷。因此,有必要針對(duì)該類非計(jì)算性嵌入式產(chǎn)品的處理器應(yīng)用,設(shè)計(jì)了一種精簡(jiǎn)的微小處理器IP核。
【發(fā)明內(nèi)容】
[0005]為了克服現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明提供一種精簡(jiǎn)的微處理器IP核,對(duì)傳統(tǒng)的處理器進(jìn)行指令系統(tǒng)和存儲(chǔ)模式的精簡(jiǎn)、優(yōu)化,該處理器核具有常規(guī)的算術(shù)運(yùn)算能力、能實(shí)現(xiàn)數(shù)據(jù)解析、流程控制等常規(guī)嵌入式系統(tǒng)中應(yīng)用中的主要功能。具體的技術(shù)方案如下:
[0006]—種精簡(jiǎn)的微處理器IP核,包括:[0007]微控制單元,用于實(shí)現(xiàn)微處理器的流程控制、系統(tǒng)寄存器維護(hù)、系統(tǒng)狀態(tài)標(biāo)志維護(hù)、處理器計(jì)數(shù)器指針的維護(hù);
[0008]運(yùn)算邏輯單元,用于執(zhí)行數(shù)值計(jì)算或邏輯運(yùn)算;
[0009]指令譯碼器,用于對(duì)處理器指令中的操作碼進(jìn)行譯碼解析,并根據(jù)譯碼解析結(jié)果選擇運(yùn)算邏輯單元執(zhí)行對(duì)應(yīng)的運(yùn)算或選擇微控制單元進(jìn)行程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移;
[0010]以及,寄存器單元,包括系統(tǒng)寄存器以及12個(gè)通用寄存器;系統(tǒng)寄存器包括程序計(jì)數(shù)器和處理器狀態(tài)寄存器;
[0011]處理器指令的字長為16位;處理器指令的種類包括:運(yùn)算指令、存儲(chǔ)訪問指令以及程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移指令;
[0012]微處理器IP核的尋址方式包括:立即數(shù)尋址、寄存器尋址、直接尋址、寄存器間接尋址以及寄存器基址變址尋址;
[0013]微控制單元采用絕對(duì)轉(zhuǎn)移跳轉(zhuǎn)的方式實(shí)現(xiàn)程序跳轉(zhuǎn)或邏輯狀態(tài)轉(zhuǎn)移;微處理器IP核采用基址變址尋址的方式實(shí)現(xiàn)程序的地址尋址。
[0014]作為優(yōu)化方案,12個(gè)通用寄存器分別為RO至RlI,其中,寄存器R2作為數(shù)據(jù)訪問尋址時(shí)的基址寄存器,寄存器R6作為程序轉(zhuǎn)移時(shí)的基址寄存器。
[0015]作為優(yōu)化方案,運(yùn)算指令包括無符號(hào)加法指令、有符號(hào)加法指令、左移指令、邏輯右移、算術(shù)右移、邏輯與指令、邏輯異或指令、邏輯或指令、比較指令以及空指令;
[0016]存儲(chǔ)訪問指令包括寄存器操作指令、內(nèi)存讀訪問指令以及內(nèi)存寫訪問指令;
[0017]程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移指令包括無條件跳轉(zhuǎn)指令、大于條件跳轉(zhuǎn)指令、等于條件跳轉(zhuǎn)指令以及小于條件的跳轉(zhuǎn)指令。
[0018]作為優(yōu)化方案,處理器指令的最高兩位為擴(kuò)展標(biāo)志位;其中,擴(kuò)展標(biāo)志包括“00”、“01”和“ 10”,擴(kuò)展標(biāo)志“00”表示寄存器尋址、寄存器間接尋址或寄存器基址變址尋址相關(guān)指令,擴(kuò)展標(biāo)志“01”表示立即數(shù)尋址中的移位操作指令,擴(kuò)展標(biāo)志“ 10”表示存儲(chǔ)訪問控制指令。
[0019]作為優(yōu)化方案,擴(kuò)展標(biāo)志還包括“ 11 ”,擴(kuò)展標(biāo)志“11”表示非法指令。
[0020]作為優(yōu)化方案,當(dāng)擴(kuò)展標(biāo)志為“00”時(shí),處理器指令的指令格式由低位至高位依次為:4位寄存器1、4位寄存器0、1位基址寄存器、5位操作碼以及2位擴(kuò)展標(biāo)志;
[0021]當(dāng)擴(kuò)展標(biāo)志為“01”時(shí),處理器指令的指令格式由低位至高位依次為:4位操作數(shù)、4位寄存器、I位基址寄存器、5位操作碼以及2位擴(kuò)展標(biāo)志;
[0022]當(dāng)擴(kuò)展標(biāo)志為“10”時(shí),處理器指令的指令格式由低位至高位依次為:8位操作數(shù)、4位寄存器、2位操作碼以及2位擴(kuò)展標(biāo)志。
[0023]作為優(yōu)化方案,當(dāng)擴(kuò)展標(biāo)志為“11”時(shí),處理器指令的指令格式由低位至高位依次為:14位未定義字以及2位擴(kuò)展標(biāo)志。
[0024]作為優(yōu)化方案,微處理器IP核還包括擴(kuò)展存儲(chǔ)控制單元,用于擴(kuò)展連接外部的存儲(chǔ)單元;存儲(chǔ)單元包括用于程序訪問和數(shù)據(jù)緩存的SRAM,以及用于程序固化空間的ROM或EEPROM。
[0025]作為優(yōu)化方案,擴(kuò)展存儲(chǔ)控制單元包括如下功能接口:地址線接口、數(shù)據(jù)線接口、片選信號(hào)接口、地址有效信號(hào)接口、數(shù)據(jù)有效信號(hào)接口、寫信號(hào)接口以及輸出有效信號(hào)接□。[0026]作為優(yōu)化方案,地址線為16根,數(shù)據(jù)線為8位。
[0027]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:
[0028](I)本發(fā)明提供的處理器IP核具備了常規(guī)處理器的算術(shù)運(yùn)算和邏輯控制能力,內(nèi)部的12個(gè)通用寄存器可滿足臨時(shí)數(shù)據(jù)和過程數(shù)據(jù)量不多的應(yīng)用要求,達(dá)到無需擴(kuò)展讀寫存儲(chǔ)器的要求;
[0029](2)對(duì)于數(shù)據(jù)量較大的應(yīng)用要求也可擴(kuò)展讀寫訪問存儲(chǔ)器實(shí)現(xiàn),具有較高的可擴(kuò)展性;
[0030](3)本發(fā)明提供的處理器IP核滿足了非計(jì)算性嵌入式系統(tǒng)的信息處理要求,也可作為復(fù)雜系統(tǒng)中的協(xié)控制運(yùn)算部件集成。
【專利附圖】
【附圖說明】
[0031]圖1為實(shí)施例1提供的微處理器IP核的結(jié)構(gòu)框圖;
[0032]圖2為微處理器IP核的處理器指令的指令格式示意圖;
[0033]圖3為實(shí)施例2提供的微處理器IP核的結(jié)構(gòu)框圖;
[0034]圖4是實(shí)施例2的寫訪問時(shí)序圖(O個(gè)等待周期);
[0035]圖5是實(shí)施例2的讀訪問時(shí)序圖(O個(gè)等待周期);
[0036]圖6是實(shí)施例2的寫訪問時(shí)序圖(2個(gè)等待周期);
[0037]圖7是實(shí)施例2的讀訪問時(shí)序圖(2個(gè)等待周期)。
[0038]上圖中序號(hào)為:1_微控制單元、2-運(yùn)算邏輯單元、3-指令譯碼器、4-寄存器單元、5-擴(kuò)展存儲(chǔ)控制單元、6-存儲(chǔ)單元。
【具體實(shí)施方式】
[0039]下面結(jié)合附圖以實(shí)施例的方式詳細(xì)描述本發(fā)明。
[0040]實(shí)施例1:
[0041]如圖1所示,一種精簡(jiǎn)的微處理器IP核,包括:
[0042]微控制單元1,用于實(shí)現(xiàn)微處理器的流程控制、系統(tǒng)寄存器維護(hù)、系統(tǒng)狀態(tài)標(biāo)志維護(hù)、處理器計(jì)數(shù)器指針的維護(hù)。
[0043]運(yùn)算邏輯單元2,用于執(zhí)行數(shù)值計(jì)算或邏輯運(yùn)算。
[0044]指令譯碼器3,用于對(duì)處理器指令中的操作碼進(jìn)行譯碼解析,并根據(jù)譯碼解析結(jié)果選擇運(yùn)算邏輯單元執(zhí)行對(duì)應(yīng)的運(yùn)算或選擇微控制單元進(jìn)行程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移。
[0045]以及,寄存器單元4,寄存器單元包括系統(tǒng)寄存器以及12個(gè)通用寄存器;系統(tǒng)寄存器包括程序計(jì)數(shù)器和處理器狀態(tài)寄存器。在本實(shí)施例中,12個(gè)通用寄存器分別為RO至R11,其中,寄存器R2作為數(shù)據(jù)訪問尋址時(shí)的基址寄存器,寄存器R6作為程序轉(zhuǎn)移時(shí)的基址寄存器。
[0046]本實(shí)施例對(duì)傳統(tǒng)處理器的指令系統(tǒng)進(jìn)行了精簡(jiǎn)和優(yōu)化,具體的改進(jìn)如下:
[0047]首先,對(duì)處理器指令的字長進(jìn)行了定義,將處理器指令的字長設(shè)計(jì)為16位。
[0048]其次,對(duì)處理器指令的種類進(jìn)行了定義。在本實(shí)施例中,處理器指令的種類包括:運(yùn)算指令、存儲(chǔ)訪問指令以及程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移指令。
[0049]具體的,運(yùn)算指令包括無符號(hào)加法指令、有符號(hào)加法指令、左移指令、邏輯右移、算術(shù)右移、邏輯與指令、邏輯異或指令、邏輯或指令、比較指令以及空指令,共10種。
[0050]存儲(chǔ)訪問指令包括寄存器操作指令、內(nèi)存讀訪問指令以及內(nèi)存寫訪問指令,共3種。
[0051]程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移指令包括無條件跳轉(zhuǎn)指令、大于條件跳轉(zhuǎn)指令、等于條件跳轉(zhuǎn)指令以及小于條件的跳轉(zhuǎn)指令,共4種。
[0052]具體的指令定義表如表1所示:
[0053]表1微處理器IP核的處理器指令定義表
[0054]
【權(quán)利要求】
1.一種精簡(jiǎn)的微處理器IP核,包括: 微控制單元,用于實(shí)現(xiàn)微處理器的流程控制、系統(tǒng)寄存器維護(hù)、系統(tǒng)狀態(tài)標(biāo)志維護(hù)、處理器計(jì)數(shù)器指針的維護(hù); 運(yùn)算邏輯單元,用于執(zhí)行數(shù)值計(jì)算或邏輯運(yùn)算; 以及,指令譯碼器,用于對(duì)處理器指令中的操作碼進(jìn)行譯碼解析,并根據(jù)譯碼解析結(jié)果選擇運(yùn)算邏輯單元執(zhí)行對(duì)應(yīng)的運(yùn)算或選擇微控制單元進(jìn)行程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移; 其特征在于: 還包括寄存器單元,所述寄存器單元包括系統(tǒng)寄存器以及12個(gè)通用寄存器;所述系統(tǒng)寄存器包括程序計(jì)數(shù)器和處理器狀態(tài)寄存器; 所述處理器指令的字長為16位;所述處理器指令的種類包括:運(yùn)算指令、存儲(chǔ)訪問指令以及程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移指令; 所述微處理器IP核的尋址方式包括:立即數(shù)尋址、寄存器尋址、直接尋址、寄存器間接尋址以及寄存器基址變址尋址; 所述微控制單元采用絕對(duì)轉(zhuǎn)移跳轉(zhuǎn)的方式實(shí)現(xiàn)程序跳轉(zhuǎn)或邏輯狀態(tài)轉(zhuǎn)移;所述微處理器IP核采用基址變址尋址的方式實(shí)現(xiàn)程序的地址尋址。
2.根據(jù)權(quán)利要求 1所述的一種精簡(jiǎn)的微處理器IP核,其特征在于,所述12個(gè)通用寄存器分別為RO至R11,其中,寄存器R2作為數(shù)據(jù)訪問尋址時(shí)的基址寄存器,寄存器R6作為程序轉(zhuǎn)移時(shí)的基址寄存器。
3.根據(jù)權(quán)利要求1所述的一種精簡(jiǎn)的微處理器IP核,其特征在于: 所述運(yùn)算指令包括無符號(hào)加法指令、有符號(hào)加法指令、左移指令、邏輯右移、算術(shù)右移、邏輯與指令、邏輯異或指令、邏輯或指令、比較指令以及空指令; 所述存儲(chǔ)訪問指令包括寄存器操作指令、內(nèi)存讀訪問指令以及內(nèi)存寫訪問指令; 所述程序跳轉(zhuǎn)或狀態(tài)轉(zhuǎn)移指令包括無條件跳轉(zhuǎn)指令、大于條件跳轉(zhuǎn)指令、等于條件跳轉(zhuǎn)指令以及小于條件的跳轉(zhuǎn)指令。
4.根據(jù)權(quán)利要求1所述的一種精簡(jiǎn)的微處理器IP核,其特征在于,所述處理器指令的最高兩位為擴(kuò)展標(biāo)志位;其中,擴(kuò)展標(biāo)志包括“00”、“01”和“10”,擴(kuò)展標(biāo)志“00”表示寄存器尋址、寄存器間接尋址或寄存器基址變址尋址相關(guān)指令,擴(kuò)展標(biāo)志“01”表示立即數(shù)尋址中的移位操作指令,擴(kuò)展標(biāo)志“10”表示存儲(chǔ)訪問控制指令。
5.根據(jù)權(quán)利要求4所述的一種精簡(jiǎn)的微處理器IP核,其特征在于,擴(kuò)展標(biāo)志還包括“ 11 ”,擴(kuò)展標(biāo)志“11”表示非法指令。
6.根據(jù)權(quán)利要求4所述的一種精簡(jiǎn)的微處理器IP核,其特征在于, 當(dāng)擴(kuò)展標(biāo)志為“00”時(shí),處理器指令的指令格式由低位至高位依次為:4位寄存器1、4位寄存器0、1位基址寄存器、5位操作碼以及2位擴(kuò)展標(biāo)志; 當(dāng)擴(kuò)展標(biāo)志為“01”時(shí),處理器指令的指令格式由低位至高位依次為:4位操作數(shù)、4位寄存器、I位基址寄存器、5位操作碼以及2位擴(kuò)展標(biāo)志; 當(dāng)擴(kuò)展標(biāo)志為“10”時(shí),處理器指令的指令格式由低位至高位依次為:8位操作數(shù)、4位寄存器、2位操作碼以及2位擴(kuò)展標(biāo)志。
7.根據(jù)權(quán)利要求5所述的一種精簡(jiǎn)的微處理器IP核,其特征在于, 當(dāng)擴(kuò)展標(biāo)志為“11”時(shí),處理器指令的指令格式由低位至高位依次為:14位未定義字以及2位擴(kuò)展標(biāo)志。
8.根據(jù)權(quán)利要求1所述的一種精簡(jiǎn)的微處理器IP核,其特征在于,還包括擴(kuò)展存儲(chǔ)控制單元,用于擴(kuò)展連接外部的存儲(chǔ)單元;所述存儲(chǔ)單元包括用于程序訪問和數(shù)據(jù)緩存的SRAM,以及用于程序固化空間的ROM或EEPR0M。
9.根據(jù)權(quán)利要求8所述的一種精簡(jiǎn)的微處理器IP核,其特征在于,所述擴(kuò)展存儲(chǔ)控制單元包括如下功能接口:地址線接口、數(shù)據(jù)線接口、片選信號(hào)接口、地址有效信號(hào)接口、數(shù)據(jù)有效信號(hào)接口、寫信號(hào)接口以及輸出有效信號(hào)接口。
10.根據(jù)權(quán)利要求9所述的一種精簡(jiǎn)的微處理器IP核,其特征在于,所述地址線為16根,所述數(shù)據(jù)線為8位。
【文檔編號(hào)】G06F9/305GK103970508SQ201410243580
【公開日】2014年8月6日 申請(qǐng)日期:2014年6月4日 優(yōu)先權(quán)日:2014年6月4日
【發(fā)明者】陳曉強(qiáng) 申請(qǐng)人:上海航天電子通訊設(shè)備研究所