專(zhuān)利名稱:信息處理裝置、微型計(jì)算機(jī)及電子設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種信息處理裝置、微型計(jì)算機(jī)及電子設(shè)備。
背景技術(shù):
想要提高流水線型的CPU的性能,在提高運(yùn)行頻率的同時(shí),削減條件轉(zhuǎn)移時(shí)需要的時(shí)鐘脈沖數(shù)目也非常重要。
不過(guò),在流水線體系結(jié)構(gòu)中,當(dāng)產(chǎn)生轉(zhuǎn)移指令和循環(huán)指令時(shí),必須重新從取轉(zhuǎn)移端(轉(zhuǎn)移目的地)指令開(kāi)始。所以,例如,在“取”“解碼”“執(zhí)行”“存取”“寫(xiě)入”的通常五級(jí)流水線CPU中,因?yàn)橐咚俎D(zhuǎn)移,需要具有加法器,專(zhuān)門(mén)用于在解碼階段對(duì)轉(zhuǎn)移指令進(jìn)行解碼時(shí)對(duì)轉(zhuǎn)移端地址進(jìn)行運(yùn)算。這樣一來(lái),因?yàn)榻獯a完成時(shí)正在計(jì)算轉(zhuǎn)移端地址,所以,接著能夠從轉(zhuǎn)移端開(kāi)始取。
專(zhuān)利文獻(xiàn)特開(kāi)平5-27971號(hào)不過(guò),在條件轉(zhuǎn)移的情況下,由于是在得到了轉(zhuǎn)移指令前的比較指令的執(zhí)行結(jié)果后確定是取轉(zhuǎn)移端指令還是取下一個(gè)(非轉(zhuǎn)移端)指令,所以可以形成關(guān)鍵路徑,在一個(gè)時(shí)鐘脈沖期間進(jìn)行此操作時(shí)每個(gè)時(shí)鐘脈沖的處理時(shí)間變長(zhǎng)。
當(dāng)具有這樣的關(guān)鍵路徑時(shí)運(yùn)行頻率的上限變低,因此,存在不能將運(yùn)行頻率提高至超過(guò)該上限的問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明克服了以上技術(shù)問(wèn)題,其目的在于提供一種信息處理裝置、微型計(jì)算機(jī)及電子設(shè)備,其在采用了流水線體系結(jié)構(gòu)的信息處理裝置中,不必?cái)U(kuò)大電路規(guī)模就能夠提高運(yùn)行頻率,實(shí)現(xiàn)較少的時(shí)鐘脈沖數(shù)目的條件轉(zhuǎn)移。
(1)本發(fā)明涉及一種進(jìn)行流水線控制的信息處理裝置,其特征在于包括第一取提示裝置,用于取非轉(zhuǎn)移端指令;第二取提示裝置,用于取轉(zhuǎn)移端指令;取電路,對(duì)用于取指令碼的取地址進(jìn)行運(yùn)算,取給第一取提示裝置或第二取提示裝置,并將第一取提示裝置或第二取提示裝置的指令輸出到解碼電路;解碼電路,接收并解碼由第一取提示裝置或第二取提示裝置所取的指令碼;以及執(zhí)行電路,根據(jù)解碼結(jié)果執(zhí)行指令,其中,所述取電路包括選擇電路,所述選擇電路根據(jù)比較指令的執(zhí)行結(jié)果,選擇是否將第一取提示裝置或第二取提示裝置中任一個(gè)的指令傳送給解碼電路。
所說(shuō)的比較指令是指先于條件轉(zhuǎn)移指令配置、用于判定后續(xù)的條件轉(zhuǎn)移指令的轉(zhuǎn)移條件的指令。
此外,可以根據(jù)比較指令的執(zhí)行結(jié)果和在流水線控制中表示與比較指令的執(zhí)行平行進(jìn)行解碼的解碼對(duì)象指令是條件轉(zhuǎn)移指令的信息,可以選擇是否將第一取提示裝置或第二取提示裝置中任一個(gè)的指令傳送給解碼電路。
可以將非轉(zhuǎn)移時(shí)的地址順次預(yù)取給第一取提示裝置,并且一旦知道(條件轉(zhuǎn)移指令被解碼或在解碼途中)轉(zhuǎn)移端地址就立刻預(yù)取給第二取提示裝置。
此外,其結(jié)構(gòu)可以在同一時(shí)鐘脈沖內(nèi)既可以進(jìn)行向取非轉(zhuǎn)移端指令的第一取提示裝置的取、又可以進(jìn)行向取轉(zhuǎn)移端指令的第二取提示裝置的取(存儲(chǔ)器也對(duì)應(yīng)為雙通道),也可以在同一時(shí)鐘脈沖內(nèi)只進(jìn)行其中任一個(gè)的指令的取。
根據(jù)本發(fā)明,當(dāng)為非轉(zhuǎn)移指令的時(shí)候,在下一個(gè)指令預(yù)取給第一取提示裝置、條件轉(zhuǎn)移指令到來(lái)時(shí),不涉及轉(zhuǎn)移/非轉(zhuǎn)移而取轉(zhuǎn)移端指令,然后,選擇電路可以根據(jù)比較指令的執(zhí)行結(jié)果,選擇非轉(zhuǎn)移端(第一取提示裝置)或轉(zhuǎn)移端(第二取提示裝置)中任一個(gè)的指令,并將其傳送給解碼電路。
在這里,在選擇是否取轉(zhuǎn)非移端/轉(zhuǎn)移端中的一個(gè)是在知道比較指令的執(zhí)行結(jié)果之后進(jìn)行的情況下,由于確定取轉(zhuǎn)移端還是取下一個(gè)(非轉(zhuǎn)移端)指令是在得到轉(zhuǎn)移指令前的比較指令的執(zhí)行結(jié)果后作出的,所以當(dāng)此操作是在一個(gè)時(shí)鐘脈沖中進(jìn)行時(shí),將形成每一個(gè)時(shí)鐘脈沖的處理時(shí)間都變長(zhǎng)的關(guān)鍵路徑(critical path)。
不過(guò),根據(jù)本發(fā)明,不必在取前參照比較指令的執(zhí)行結(jié)果,取非轉(zhuǎn)移端/轉(zhuǎn)移端兩個(gè)指令,將其傳送給解碼電路,此時(shí)根據(jù)比較指令的執(zhí)行結(jié)果選擇其中一個(gè)指令,因?yàn)槭沁@種結(jié)構(gòu),所以能夠?qū)?yīng)該在一個(gè)時(shí)鐘脈沖內(nèi)進(jìn)行的處理所需的時(shí)間變短,進(jìn)而能夠提高運(yùn)行頻率。
因?yàn)槿√崾狙b置和選擇電路能夠?qū)?yīng)增加,所以設(shè)置轉(zhuǎn)移預(yù)測(cè)電路時(shí)不會(huì)導(dǎo)致電路規(guī)模的增大。
這樣的話,根據(jù)本發(fā)明,不必?cái)U(kuò)大電路規(guī)模就能夠在提高運(yùn)行頻率的同時(shí)實(shí)現(xiàn)較少時(shí)鐘脈沖數(shù)目的條件轉(zhuǎn)移。
(2)在本發(fā)明的信息處理裝置中,所述解碼電路判斷解碼對(duì)象指令是否是轉(zhuǎn)移指令,當(dāng)為轉(zhuǎn)移指令時(shí),向取電路輸出轉(zhuǎn)移指令的轉(zhuǎn)移端地址,所述取電路在解碼對(duì)象指令是轉(zhuǎn)移指令時(shí),根據(jù)已接收的轉(zhuǎn)移端地址,將轉(zhuǎn)移端指令取給第二取提示裝置;在解碼對(duì)象指令不是轉(zhuǎn)移指令時(shí),所述取電路對(duì)非轉(zhuǎn)移端地址進(jìn)行運(yùn)算,并根據(jù)該非轉(zhuǎn)移端地址,將非轉(zhuǎn)移端指令取給第一取提示裝置。
能夠按照諸如指令長(zhǎng)度或讀出單位的位寬來(lái)增量可編程計(jì)數(shù)器,從而求得非轉(zhuǎn)移端地址。
取電路可以根據(jù)諸如是否接收到轉(zhuǎn)移端地址來(lái)判斷解碼對(duì)象指令是否是轉(zhuǎn)移指令,也可以在從解碼電路接收有關(guān)解碼對(duì)象指令是否是轉(zhuǎn)移指令的信息(轉(zhuǎn)移指令發(fā)生信息)之后,根據(jù)上述信息進(jìn)行判斷。
例如當(dāng)解碼對(duì)象指令是轉(zhuǎn)移指令時(shí),可以在下一個(gè)時(shí)鐘脈沖取轉(zhuǎn)移端,當(dāng)解碼對(duì)象指令不是轉(zhuǎn)移指令時(shí),可以在下一個(gè)時(shí)鐘脈沖取非轉(zhuǎn)移端。
這樣一來(lái),即使在一個(gè)時(shí)鐘脈沖中只存取轉(zhuǎn)移指令或非轉(zhuǎn)移指令中的任一個(gè)時(shí),因?yàn)樵诒容^指令的執(zhí)行完成后的時(shí)鐘脈沖中、成為轉(zhuǎn)移端、非轉(zhuǎn)移端兩個(gè)都被取了的狀態(tài),所以在此,選擇電路能夠根據(jù)比較指令的執(zhí)行結(jié)果選擇轉(zhuǎn)移端或非轉(zhuǎn)移端中的任一個(gè),并將其傳送給解碼電路。
(3)在本發(fā)明的信息處理裝置中,在指令解碼完成前,所述解碼電路向取電路輸出轉(zhuǎn)移指令的轉(zhuǎn)移端地址。
根據(jù)本發(fā)明,因?yàn)槟軌蚋斓厝∞D(zhuǎn)移端,所以在一個(gè)時(shí)鐘脈沖內(nèi)應(yīng)該進(jìn)行處理的處理時(shí)間被縮短。
(4)在本發(fā)明的信息處理裝置中,所述取電路從連續(xù)的地址中同時(shí)取兩個(gè)或多于兩個(gè)的指令。
例如就16位指令來(lái)說(shuō),用32位寬存取時(shí)就能夠同時(shí)存取連續(xù)的兩個(gè)指令。
(5)本發(fā)明涉及一種微型計(jì)算機(jī),其包括上述任一所述的信息處理裝置。
(6)本發(fā)明涉及一種電子設(shè)備,其包括上述任一所述的信息處理裝置;接受輸入信息的裝置;以及用于根據(jù)輸入信息輸出已由所述信息處理裝置處理過(guò)的結(jié)果的裝置。
根據(jù)本發(fā)明,因?yàn)閮?nèi)置了以低成本實(shí)現(xiàn)高速運(yùn)行的信息處理裝置,所以能夠提供價(jià)廉且具有高性能的電子設(shè)備。
圖1是對(duì)本實(shí)施例的信息處理裝置的結(jié)構(gòu)進(jìn)行說(shuō)明的功能框圖。
圖2是對(duì)發(fā)生條件轉(zhuǎn)移時(shí)的情況進(jìn)行說(shuō)明的示意圖。
圖3是本實(shí)施例和比較例的具體動(dòng)作比較的示意圖。
圖4是比較例的處理時(shí)間(關(guān)鍵路徑)的示意圖。
圖5是第三個(gè)時(shí)鐘脈沖的本實(shí)施例的處理時(shí)間的示意圖。
圖6是本實(shí)施例的一例微型計(jì)算機(jī)的硬件框圖。
圖7是一例包含微型計(jì)算機(jī)的電子設(shè)備的框圖。
圖8A、圖8B和圖8C是各種電子設(shè)備的實(shí)例外觀圖。
具體實(shí)施例方式
以下,參照附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說(shuō)明。
1.信息處理裝置圖1是對(duì)本發(fā)明的實(shí)施例的信息處理裝置的結(jié)構(gòu)進(jìn)行說(shuō)明的功能框圖。
本實(shí)施例的信息處理裝置1是進(jìn)行流水線控制的信息處理裝置(例如微型計(jì)算機(jī)),其包括CPU(廣義上的處理電路)10;BCU(總線控制單元)100、存儲(chǔ)器110(ROMRead Only Memory)和RAM(Random Access Memory)。
除此之外,信息處理裝置1還可包括MMU(MemoryManagement Unit)、DMAC(Direct Access Memory Controller)、LCD(Liquid Crystal Display)驅(qū)動(dòng)器或者SIO(Serial Input Output)等各種外圍電路。
CPU 10按照ROM和RAM中存儲(chǔ)的程序,在流水線控制中,進(jìn)行指令取、指令解碼、運(yùn)算處理、寫(xiě)入寄存器等。CPU 10可處理32位寬的數(shù)據(jù),處理16位的指令碼。
BCU(總線控制單元)100對(duì)沒(méi)有圖示的32位指令數(shù)據(jù)總線、用于指令數(shù)據(jù)存取的指令地址總線、32位數(shù)據(jù)總線、用于數(shù)據(jù)存取的數(shù)據(jù)地址總線、和用于控制信號(hào)的控制總線等的各種總線進(jìn)行總線控制處理。
而且,該CPU 10通過(guò)該總線從存儲(chǔ)器110中讀取應(yīng)該執(zhí)行的指令。
另外,CPU 10包括取電路20、解碼電路60、執(zhí)行電路70等。
取電路20包括取非轉(zhuǎn)移端指令的第一取提示裝置22-1和22-2;取轉(zhuǎn)移端指令的第二取提示裝置24;取址(取地址)運(yùn)算電路30;以及選擇電路40。
取址運(yùn)算電路30進(jìn)行取地址運(yùn)算以取指令碼,并將其輸出至BCU,其包括非轉(zhuǎn)移地址運(yùn)算電路32、轉(zhuǎn)移端地址保持寄存器34、選擇器36和讀出地址輸出電路38等。
非轉(zhuǎn)移地址運(yùn)算電路32,將按照指令長(zhǎng)度(或者指令長(zhǎng)度的整數(shù)倍,例如按照指令長(zhǎng)度為16位、總線寬度為32位的單位讀出時(shí)選擇32位)增量沒(méi)有圖示的用于取的可編程計(jì)數(shù)器中保持的值而得到的值作為非轉(zhuǎn)移地址進(jìn)行運(yùn)算。
轉(zhuǎn)移端地址保持寄存器34一旦從解碼電路60接受到轉(zhuǎn)移端地址,就將其保持于轉(zhuǎn)移端地址保持寄存器34中。
選擇器36在從解碼電路60接受了轉(zhuǎn)移指令發(fā)生信息64時(shí),選擇轉(zhuǎn)移端地址保持寄存器的值,并輸出到讀出地址輸出電路38,在除此之外的情況下,選擇非轉(zhuǎn)移地址運(yùn)算電路32所運(yùn)算的非轉(zhuǎn)移地址的值,并輸出到讀出地址輸出電路38。
讀出地址輸出電路38將由選擇器36選擇的地址作為來(lái)自存儲(chǔ)器110的讀出地址輸出到BCU 100。
在此,取址運(yùn)算電路30可以不等待確定條件轉(zhuǎn)移指令的轉(zhuǎn)移條件的COMP指令執(zhí)行完,就將該轉(zhuǎn)移端地址作為讀出地址輸出至BCU 100。
選擇電路40根據(jù)比較指令的執(zhí)行結(jié)果(根據(jù)作為條件轉(zhuǎn)移指令的解碼結(jié)果66、及比較指令的比較結(jié)果設(shè)置的標(biāo)志76)選擇第一取提示裝置22-1、22-2或第二取提示裝置24中一個(gè)的指令,并輸出到解碼電路60。輸出的指令通過(guò)觸發(fā)器(FF)電路42輸入到解碼電路60。
這樣,在本實(shí)施例中,在即將將指令碼捕獲到觸發(fā)器(FF)電路42之前設(shè)置MUX(選擇電路40),根據(jù)標(biāo)志76選擇轉(zhuǎn)移端的指令碼(被第二取提示裝置取的指令碼)或非轉(zhuǎn)移端的指令碼(被第二取提示裝置預(yù)取的指令碼),該標(biāo)志是根據(jù)比較指令的執(zhí)行結(jié)果得到的。
解碼電路60是接受選擇電路40所選擇的指令碼并進(jìn)行解碼處理的電路,并將解碼結(jié)果66輸出到特定的寄存器等。而且,在解碼過(guò)程中,當(dāng)識(shí)別出是轉(zhuǎn)移指令時(shí),將轉(zhuǎn)移端地址62輸出到取電路20的轉(zhuǎn)移端地址保持寄存器34。
執(zhí)行電路70包括進(jìn)行數(shù)據(jù)和地址運(yùn)算的運(yùn)算電路(ALU)72,及寄存器堆78等,根據(jù)已由該解碼電路60解碼的指令的操作內(nèi)容進(jìn)行該指令的執(zhí)行,并對(duì)執(zhí)行結(jié)果74和各種標(biāo)志76進(jìn)行設(shè)置。
寄存器堆78可以包括16個(gè)通用寄存器R0-R15、可編程計(jì)數(shù)器(PC)、處理器狀態(tài)寄存器(PSR)、棧指示器(SP)、算術(shù)低寄存器(ALR)、算術(shù)高寄存器(AHR)等的用于CPU的寄存器。
根據(jù)本實(shí)施例,包括取非轉(zhuǎn)移端指令的第一取提示裝置、取轉(zhuǎn)移端指令的第二取提示裝置、以及選擇電路40,該選擇電路40根據(jù)比較指令的執(zhí)行結(jié)果,選擇是否將第一取提示裝置或第二取提示裝置中一個(gè)的指令傳送給解碼器。因此,在為非轉(zhuǎn)移指令的情況下,將下一個(gè)指令預(yù)取給第一取提示裝置,在條件轉(zhuǎn)移指令到來(lái)時(shí),不涉及轉(zhuǎn)移/非轉(zhuǎn)移而取非轉(zhuǎn)移端指令,選擇電路40能夠根據(jù)比較指令的執(zhí)行結(jié)果,選擇非轉(zhuǎn)移端(第一取提示裝置)或轉(zhuǎn)移端(第二取提示裝置)中一個(gè)的指令,并將其傳送給解碼電路60。
此外,取電路20可以從連續(xù)的地址中同時(shí)取兩個(gè)指令或多于兩個(gè)的指令。即,例如對(duì)于16位長(zhǎng)的指令用32位寬的數(shù)據(jù)長(zhǎng)度存取時(shí),能夠通過(guò)一次存取讀出連續(xù)的兩個(gè)指令。因此,可以分別在第一取提示裝置22-1、第二取提示裝置22-2中存儲(chǔ)連續(xù)的兩個(gè)指令。
圖2是對(duì)發(fā)生條件轉(zhuǎn)移時(shí)的情況進(jìn)行說(shuō)明的示意圖。
當(dāng)使用310所示的指令碼以條件轉(zhuǎn)移312轉(zhuǎn)移到轉(zhuǎn)移端312時(shí),條件轉(zhuǎn)移“jpeg L1”312指令的下一個(gè)指令“add”313成為無(wú)用的取而轉(zhuǎn)為nop(空操作)(參考350),可是,隨后,轉(zhuǎn)移端“sub”314可被取,并且轉(zhuǎn)移可用一個(gè)指令(一個(gè)時(shí)鐘脈沖)的開(kāi)銷(xiāo)(オ—バ—ヘツド)來(lái)進(jìn)行。
在此,在比較(或者現(xiàn)有的一般構(gòu)成)例中,因?yàn)樵赾mp指令執(zhí)行時(shí)計(jì)算是否為eq的標(biāo)志,所以在觀察其標(biāo)志信息方面,如果是轉(zhuǎn)移,則開(kāi)始轉(zhuǎn)移端的取。
這樣,在比較例中,在條件轉(zhuǎn)移的情況下,因?yàn)樵诘玫睫D(zhuǎn)移指令前的比較指令的執(zhí)行結(jié)果后確定是取轉(zhuǎn)移端還是取下一個(gè)(非轉(zhuǎn)移端)的指令,所以在一個(gè)時(shí)鐘脈沖內(nèi)進(jìn)行此操作時(shí),形成每一個(gè)時(shí)鐘脈沖的處理時(shí)間變長(zhǎng)的關(guān)鍵路徑。
圖3是本實(shí)施例和比較例的具體操作比較的示意圖。
這里,在各個(gè)時(shí)鐘脈沖中,對(duì)與圖2的指令列表對(duì)應(yīng)的本實(shí)施例和比較例的操作進(jìn)行說(shuō)明。
首先,在第一個(gè)時(shí)鐘脈沖中,在比較例中進(jìn)行“cmp”的取,而在本實(shí)施例中,進(jìn)行“cmp”和“jpeg”這兩個(gè)連續(xù)指令的取。在該日寸鐘脈沖中,比較例和本實(shí)施例之間的處理時(shí)間差別不大。
在接著(第二個(gè))的時(shí)鐘脈沖中,在比較例中,進(jìn)行“cmp”的下一個(gè)“jpeg”的取,同時(shí)還進(jìn)行“cmp”的解碼。在本實(shí)施例中,進(jìn)行“cmp”的解碼(關(guān)于“cmp”的下一個(gè)指令“jpeg”在前面的時(shí)鐘脈沖中已經(jīng)取完畢)。在該時(shí)鐘脈沖中,比較例和本實(shí)施例之間的處理時(shí)間差別不大。
在接著(第三個(gè))的時(shí)鐘脈沖中,在比較例中,進(jìn)行“jpeg”的下一個(gè)“add”的取、“jpeg”的解碼、“cmp”的執(zhí)行,以及根據(jù)“cmp”的執(zhí)行結(jié)果進(jìn)行轉(zhuǎn)移、非轉(zhuǎn)移的判斷(參照370),并根據(jù)判斷結(jié)果輸出轉(zhuǎn)移或非轉(zhuǎn)移的取地址(參照380)。這樣在比較例中,因?yàn)樾枰谝粋€(gè)時(shí)鐘脈沖內(nèi)根據(jù)“cmp”的執(zhí)行結(jié)果進(jìn)行轉(zhuǎn)移、非轉(zhuǎn)移的判斷操作(參照370)和根據(jù)判斷結(jié)果輸出轉(zhuǎn)移或非轉(zhuǎn)移的取地址操作(參照380),所以處理時(shí)間變長(zhǎng)(成為關(guān)鍵路徑)(參照?qǐng)D4)。
與之相對(duì),在本實(shí)施例中,進(jìn)行“add”和“and”這兩個(gè)連續(xù)指令的取、“jpeg”的解碼、“cmp”的執(zhí)行。
在接著(第四個(gè))的時(shí)鐘脈沖中,在比較例中,當(dāng)為轉(zhuǎn)移時(shí),進(jìn)行轉(zhuǎn)移端的“sub”的取、“add”的解碼、以及“jpeg”的執(zhí)行,當(dāng)為非轉(zhuǎn)移時(shí),進(jìn)行“add”的下一個(gè)“and”的取、“add”的解碼、以及“jpeg”的執(zhí)行。與之相對(duì),在本實(shí)施例中,進(jìn)行轉(zhuǎn)移端的“sub”的取、“add”的解碼、以及“jpeg”的執(zhí)行。在該時(shí)鐘脈沖中,比較例和本實(shí)施例之間的處理時(shí)間差別不大。
在接著(第五個(gè))的時(shí)鐘脈沖中,在比較例中,當(dāng)為轉(zhuǎn)移時(shí),進(jìn)行轉(zhuǎn)移端“sub”的下一個(gè)“or”的取、“sub”的解碼、以及“add”的取消執(zhí)行;當(dāng)為非轉(zhuǎn)移時(shí),進(jìn)行“add”的下一個(gè)指令的取、“and”的解碼、以及“add”的執(zhí)行。與之相對(duì),在本實(shí)施例中,當(dāng)為轉(zhuǎn)移時(shí),進(jìn)行已經(jīng)取完畢的“sub”的解碼、“add”的取消執(zhí)行;當(dāng)為非轉(zhuǎn)移時(shí)進(jìn)行“and”的下一個(gè)指令的取、“and”的解碼、以及“add”的執(zhí)行。在該時(shí)鐘脈沖中,比較例和本實(shí)施例之間的處理時(shí)間差別不大。
從上述說(shuō)明可以得知,在第三個(gè)時(shí)鐘脈沖中,比較例因?yàn)樾枰谝粋€(gè)時(shí)鐘脈沖內(nèi)根據(jù)“cmp”的執(zhí)行結(jié)果進(jìn)行轉(zhuǎn)移、非轉(zhuǎn)移的判斷操作(參照370),及根據(jù)判斷結(jié)果輸出轉(zhuǎn)移或非轉(zhuǎn)移的取地址(參照380),所以形成關(guān)鍵路徑,成為提高運(yùn)行頻率的主要障礙。
圖4是第三個(gè)時(shí)鐘脈沖的比較例的處理時(shí)間(關(guān)鍵路徑)的示意圖。
410表示執(zhí)行cmp指令并將結(jié)果存儲(chǔ)在標(biāo)志寄存器中的步驟,需要約8nS(納秒)。
420表示根據(jù)標(biāo)志寄存器的內(nèi)容判斷是取下一個(gè)指令還是取轉(zhuǎn)移端指令,并生成控制信號(hào)的步驟,需要約1nS(納秒)。
430表示根據(jù)控制信號(hào)選擇下一個(gè)指令的地址或轉(zhuǎn)移端指令地址中的一個(gè)作為取地址的步驟,需要約1nS(納秒)。
440表示取地址到達(dá)存儲(chǔ)器(RAM等)的步驟,因?yàn)橥局锌偩€的遲延(延遲)以及通過(guò)高速緩沖、MMU的邏輯電路,所以需要約5nS(納秒)。
這樣,在比較例中,因?yàn)榫哂忻總€(gè)時(shí)鐘脈沖需要15nS(納秒)的關(guān)鍵路徑,所以運(yùn)行頻率的上限為67MHz。
圖5是第三個(gè)時(shí)鐘脈沖的本實(shí)施例的處理時(shí)間的示意圖。
210表示解碼jpeg指令,從解碼電路輸出的轉(zhuǎn)移端地址保持到轉(zhuǎn)移端地址保持寄存器的步驟,需要約4nS(納秒)。
220表示選擇器36從解碼電路60中接受轉(zhuǎn)移指令發(fā)生信息64,并選擇轉(zhuǎn)移端地址保持寄存器中的值的步驟,需要約1nS(納秒)。
230表示取地址到達(dá)存儲(chǔ)器(RAM等)的步驟,因?yàn)橥局锌偩€的遲延以及通過(guò)高速緩沖、MMU的邏輯電路,從而需要約5nS(納秒)。
這樣,在本實(shí)施例中,因?yàn)槊總€(gè)時(shí)鐘脈沖10nS(納秒)就足夠了,所以運(yùn)行頻率可提高到100MHz。
2.微型計(jì)算機(jī)圖6是本實(shí)施例的一例微型計(jì)算機(jī)的硬件框圖。
本微型計(jì)算機(jī)700包括CPU 510,高速緩沖存儲(chǔ)器520,LCD控制器530,復(fù)位電路540,可編程定時(shí)器550,實(shí)時(shí)時(shí)鐘脈沖(RTC)560,DRAM控制器兼總線I/F 570,中斷控制器580,串行接口590,總線控制器600,A/D轉(zhuǎn)換器610,D/A轉(zhuǎn)換器620,輸入端口630,輸出端口640,I/O端口650,時(shí)鐘脈沖發(fā)生裝置660,預(yù)定標(biāo)器670以及將它們連接的通用總線680,專(zhuān)用總線730等,及各種插針690等。
CPU 510具有諸如圖1所示的結(jié)構(gòu)。
3.電子設(shè)備圖7示出了本實(shí)施例的電子設(shè)備的一例框圖。本實(shí)施例的電子設(shè)備800包括微型計(jì)算機(jī)(或者ASIC)810;輸入部820;存儲(chǔ)器830;電源生成部840、LCD 850和聲音輸出部860。
這里,輸入部820用于輸入各種數(shù)據(jù)。微型計(jì)算機(jī)810能夠根據(jù)該輸入部820輸入的數(shù)據(jù)進(jìn)行各種處理。存儲(chǔ)器830作為微型計(jì)算機(jī)810等的作業(yè)區(qū)域。電源生成部840用于生成電子設(shè)備800使用的各種電源。LCD 850用于輸出電子設(shè)備所顯示的各種圖像(字符、圖標(biāo)、圖表等)。聲音輸出部860用于輸出電子設(shè)備800所輸出的各種聲音(聲音、游戲聲音等),其功能通過(guò)揚(yáng)聲器等硬件實(shí)現(xiàn)。
圖8(A)示出了電子設(shè)備之一的移動(dòng)電話950的一例外觀圖。該移動(dòng)電話950包括作為輸入部發(fā)揮作用的撥號(hào)盤(pán)按鈕952;顯示電話號(hào)碼、名字和圖標(biāo)等的LCD 954;以及作為聲音輸出部發(fā)揮作用、并輸出游戲聲音的揚(yáng)聲器956。
圖8(B)示出了電子設(shè)備之一的便攜式游戲裝置960的一例外觀圖。該便攜式游戲裝置960包括作為輸入部發(fā)揮作用的操作按鈕962;十字鍵964;顯示游戲圖像的LCD 966;以及作為聲音輸出部發(fā)揮作用、并輸出游戲聲音的揚(yáng)聲器968。
圖8(C)示出了電子設(shè)備之一的個(gè)人計(jì)算機(jī)970的一例外觀圖。該個(gè)人計(jì)算機(jī)970包括用作輸入部的鍵盤(pán)972;顯示字符、數(shù)據(jù)、圖表等的LCD 974;以及聲音輸出部976。
通過(guò)將本實(shí)施例的微型計(jì)算機(jī)組裝成圖8(A)至圖8(C)的電子設(shè)備,能夠提供價(jià)廉、圖像處理速度快、性價(jià)比良好的電子設(shè)備。
此外,作為可利用本實(shí)施例的電子設(shè)備,除了圖8(A)、圖8(B)和圖8(C)所示的以外,還可以有便攜式信息終端、尋呼機(jī)、電子臺(tái)式計(jì)算器、配有觸摸屏的裝置、投影儀、文字處理器、探視器型或者監(jiān)控直視式帶式錄像機(jī)、使用汽車(chē)駕駛導(dǎo)向系統(tǒng)等的LCD的等各種電子設(shè)備。
并且,本發(fā)明并不僅限于本實(shí)施例,在本發(fā)明的精神和范圍之內(nèi)可以有各種變形例。
盡管本發(fā)明已經(jīng)參照附圖和優(yōu)選實(shí)施例進(jìn)行了說(shuō)明,但是,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。本發(fā)明的各種更改、變化和等同物由權(quán)利要求書(shū)的內(nèi)容涵蓋。
附圖標(biāo)記說(shuō)明1 信息處理裝置 10 CPU20 取電路 22-1、22-2 第一取提示裝置24 第二取提示裝置 30 取址運(yùn)算電路32 非轉(zhuǎn)移地址運(yùn)算電路 34 轉(zhuǎn)移端地址保持電路36 選擇器 38 讀出地址輸出電路40 選擇電路 60 解碼電路62 轉(zhuǎn)移信息設(shè)置電路 70 執(zhí)行電路72 數(shù)據(jù)/地址運(yùn)算電路74 執(zhí)行結(jié)果76 標(biāo)志 78 寄存器堆100 BCU (總線控制單元) 110 存儲(chǔ)器510 CPU 530 LCD控制器540 復(fù)位電路550 可編程定時(shí)器560 實(shí)時(shí)時(shí)鐘脈沖(RTC) 570 DRAM控制器兼總線I/F580 中斷控制器 590 串行接口600 總線控制器 610 A/D轉(zhuǎn)換器620 D/A轉(zhuǎn)換器 630 輸入端口
640 輸出端口650 I/O端口660 時(shí)鐘脈沖發(fā)生裝置(PLL)670 預(yù)定標(biāo)器680 通用總線690 各種插針700 微型計(jì)算機(jī)710 ROM 720 RAM730 MMU 800 電子設(shè)備850 LCD
權(quán)利要求
1.一種進(jìn)行流水線控制的信息處理裝置,其特征在于包括第一取提示裝置,用于取非轉(zhuǎn)移端指令;第二取提示裝置,用于取轉(zhuǎn)移端指令;取電路,對(duì)用于取指令碼的取地址進(jìn)行運(yùn)算,將其取給第一取提示裝置或第二取提示裝置,并將第一取提示裝置或第二取提示裝置的指令輸出到解碼電路;解碼電路,用于接收并解碼由第一取提示裝置或第二取提示裝置所取的指令碼;以及執(zhí)行電路,根據(jù)解碼結(jié)果執(zhí)行指令,其中,所述取電路包括選擇電路,所述選擇電路根據(jù)比較指令的執(zhí)行結(jié)果,選擇是否將第一取提示裝置或第二取提示裝置中任一個(gè)的指令傳送給解碼電路。
2.根據(jù)權(quán)利要求1所述的信息處理裝置,其特征在于所述解碼電路判斷解碼對(duì)象指令是否是轉(zhuǎn)移指令,當(dāng)為轉(zhuǎn)移指令時(shí),向取電路輸出轉(zhuǎn)移指令的轉(zhuǎn)移端地址,在解碼對(duì)象指令是轉(zhuǎn)移指令時(shí),所述取電路根據(jù)已接收的轉(zhuǎn)移端地址,將轉(zhuǎn)移端指令取給第二取提示裝置;在解碼對(duì)象指令不是轉(zhuǎn)移指令時(shí),所述取電路對(duì)非轉(zhuǎn)移端地址進(jìn)行運(yùn)算,并根據(jù)所述非轉(zhuǎn)移端地址,將非轉(zhuǎn)移端指令取給第一取提示裝置。
3.根據(jù)權(quán)利要求1或2所述的信息處理裝置,其特征在于在指令解碼完成前,所述解碼電路向取電路輸出轉(zhuǎn)移指令的轉(zhuǎn)移端地址。
4.根據(jù)權(quán)利要求1至3中任一所述的信息處理裝置,其特征在于所述取電路從連續(xù)的地址中同時(shí)取兩個(gè)指令或多于兩個(gè)指令的指令。
5.一種微型計(jì)算機(jī),其特征在于包括根據(jù)權(quán)利要求1至4中任一所述的信息處理裝置。
6.一種電子設(shè)備,其特征在于包括根據(jù)權(quán)利要求1至4中任一所述的信息處理裝置;接受輸入信息的裝置;以及用于根據(jù)輸入信息輸出由所述信息處理裝置處理過(guò)的結(jié)果的裝置。
全文摘要
本發(fā)明公開(kāi)了一種信息處理裝置,在采用流水線體系結(jié)構(gòu)的裝置中,不必增大電路規(guī)模就可提高運(yùn)行頻率,并實(shí)現(xiàn)較少時(shí)鐘脈沖數(shù)目的條件轉(zhuǎn)移。該裝置(1)包括取非轉(zhuǎn)移端指令的第一取提示裝置(22);取轉(zhuǎn)移端指令的第二取提示裝置(24);取電路(20),對(duì)用于取指令碼的取地址進(jìn)行運(yùn)算,將其取給第一取提示裝置或第二取提示裝置,并將第一取提示裝置或第二取提示裝置的指令輸出給解碼電路;解碼電路(60),接收并解碼第一取提示裝置或第二取提示裝置所取的指令碼;以及根據(jù)解碼結(jié)果執(zhí)行指令的執(zhí)行電路(70),取電路包括選擇電路(40),其根據(jù)比較指令的執(zhí)行結(jié)果,選擇是否將第一取提示裝置或第二取提示裝置中任一個(gè)的指令傳送到解碼電路。
文檔編號(hào)G06F9/00GK1713136SQ20051007222
公開(kāi)日2005年12月28日 申請(qǐng)日期2005年5月23日 優(yōu)先權(quán)日2004年6月15日
發(fā)明者工藤真 申請(qǐng)人:精工愛(ài)普生株式會(huì)社