專利名稱:信息處理裝置以及電子設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種信息處理裝置以及電子設(shè)備。
背景技術(shù):
在流水線的體系結(jié)構(gòu)中,當(dāng)轉(zhuǎn)移發(fā)生指令和循環(huán)指令時(shí),必須重新從讀取開(kāi)始執(zhí)行轉(zhuǎn)向指令。所以,例如,在“讀取”“譯碼”“執(zhí)行”“寫入”的流水線體系結(jié)構(gòu)中,每當(dāng)轉(zhuǎn)移發(fā)生(也包括基于循環(huán)的轉(zhuǎn)移)時(shí),都會(huì)損耗3個(gè)時(shí)鐘脈沖。
為了防止這樣的損耗,要在微型計(jì)算機(jī)上設(shè)置轉(zhuǎn)移預(yù)測(cè)電路。但是,為實(shí)現(xiàn)轉(zhuǎn)移預(yù)測(cè)電路,要需要幾萬(wàn)個(gè)門,從而導(dǎo)致電路規(guī)模增大以及成本提高的問(wèn)題出現(xiàn)。
發(fā)明內(nèi)容
(1)本發(fā)明的一個(gè)實(shí)施例是一種進(jìn)行流水線控制的信息處理裝置,其特征在于包括指令隊(duì)列,其可讀取多個(gè)指令碼;讀取地址運(yùn)算電路,其對(duì)讀取地址進(jìn)行運(yùn)算,用于將指令碼讀取到該指令隊(duì)列;
讀取電路,其根據(jù)該讀取地址,將讀出的指令碼讀取到指令隊(duì)列;以及轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)向發(fā)生地址時(shí),為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)轉(zhuǎn)移設(shè)定指令進(jìn)行譯碼,并將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址存儲(chǔ)到轉(zhuǎn)向地址保持寄存器,該讀取地址運(yùn)算電路,其將前一次讀取地址或者預(yù)讀取地址的某一個(gè)和轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值進(jìn)行比較,根據(jù)比較結(jié)果,決定是否將轉(zhuǎn)向地址保持寄存器中存儲(chǔ)的值作為下次的讀取地址輸出。
(2)另一個(gè)實(shí)施例是一種進(jìn)行流水線控制的信息處理裝置,其特征在于包括指令隊(duì)列,其可讀取多個(gè)指令碼;讀取地址運(yùn)算電路,其對(duì)讀取地址進(jìn)行運(yùn)算,用于將指令碼讀取到該指令隊(duì)列;讀取電路,其根據(jù)該讀取地址將讀出的指令碼讀取到指令隊(duì)列;以及轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址,為了向轉(zhuǎn)移地址轉(zhuǎn)移,其對(duì)轉(zhuǎn)移設(shè)定指令進(jìn)行譯碼,并將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址寄存儲(chǔ)到轉(zhuǎn)移地址保持寄存器,該讀取地址運(yùn)算電路,其將保持在讀取用的程序計(jì)數(shù)器的值增量指令長(zhǎng)度后得到的本次預(yù)讀取的預(yù)讀取地址和存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器的值進(jìn)行比較,一致時(shí),將存儲(chǔ)在轉(zhuǎn)向地址保持寄存器的值作為下次的讀取地址來(lái)輸出,不一致時(shí),將該預(yù)讀取地址作為下次的讀取地址來(lái)輸出。
(3)其他實(shí)施例是一種電子設(shè)備,其特征在于包括上述任意所述的信息處理裝置;接收輸入信息的裝置;以及根據(jù)輸入信息輸出信息處理裝置處理結(jié)果的裝置。
圖1A和圖1B是對(duì)現(xiàn)有的流水控制的微型計(jì)算機(jī)(廣義上指信息處理裝置)轉(zhuǎn)移發(fā)生時(shí)的情況進(jìn)行說(shuō)明的示意圖。
圖2是對(duì)本實(shí)施例的微型計(jì)算機(jī)(廣義上指信息處理裝置)的構(gòu)成進(jìn)行說(shuō)明的功能模塊圖。
圖3A、圖3B和圖3C是對(duì)本實(shí)施例的轉(zhuǎn)移設(shè)定指令的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
圖4是對(duì)讀取地址運(yùn)算電路的構(gòu)成的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
圖5A、圖5B和圖5C是就本實(shí)施例的循環(huán)指令的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
圖6是就與本實(shí)施例的循環(huán)指令相對(duì)應(yīng)的讀取地址運(yùn)算電路的構(gòu)成的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
圖7A、圖7B和圖7C是對(duì)本實(shí)施例的其他的循環(huán)指令進(jìn)行說(shuō)明的示意圖。其他的循環(huán)指令是指,轉(zhuǎn)向地址作為循環(huán)指令的下一個(gè)指令的類型循環(huán)指令。
圖8A、圖8B和圖9C是含有微型計(jì)算機(jī)的電子設(shè)備的一個(gè)實(shí)例框圖。
圖9A、圖9B和圖9C是各種電子設(shè)備的實(shí)例外觀圖。
具體實(shí)施例方式
以下,就本實(shí)施例進(jìn)行說(shuō)明。
另外,以下說(shuō)明的本實(shí)施例,并不是對(duì)權(quán)利要求書中描述的本發(fā)明的內(nèi)容的限定。而且,本實(shí)施例中所描述的全部構(gòu)件,不一定是本發(fā)明所必須的構(gòu)成要件。
(1)本實(shí)施例是一種進(jìn)行流水控制的信息處理裝置,其特征在于包括指令隊(duì)列,其可讀取多個(gè)指令碼;讀取地址運(yùn)算電路,其對(duì)讀取地址進(jìn)行運(yùn)算,用于將指令碼讀取到該指令隊(duì)列;讀取電路,其根據(jù)該讀取地址,將讀出的指令碼讀取到指令隊(duì)列;以及轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),其對(duì)轉(zhuǎn)移設(shè)定指令進(jìn)行譯碼,用于向轉(zhuǎn)向地址轉(zhuǎn)移,并將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址存儲(chǔ)到轉(zhuǎn)向地址保持寄存器,
該讀取地址運(yùn)算電路,將該讀取地址或者預(yù)讀取地址中的任一個(gè),和轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值進(jìn)行比較后,根據(jù)比較結(jié)果,決定是否將轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值,作為下次的讀取地址輸出。
轉(zhuǎn)移設(shè)定指令,例如,其操作數(shù)顯示或隱含轉(zhuǎn)移發(fā)生地址特定信息、轉(zhuǎn)向地址特定信息。
轉(zhuǎn)移發(fā)生地址特定信息,既可以將轉(zhuǎn)移發(fā)生的地方作為特定值,又可以是例如轉(zhuǎn)移發(fā)生的指令地址。另外,還可以是從轉(zhuǎn)移設(shè)定指令到轉(zhuǎn)移發(fā)生地址的相對(duì)地址,也可以是轉(zhuǎn)移設(shè)定指令和轉(zhuǎn)移發(fā)生地址之間的指令數(shù)(轉(zhuǎn)移發(fā)生地址是從轉(zhuǎn)移設(shè)定指令起的第幾個(gè)指令?)。另外,又可以是存儲(chǔ)上述任一個(gè)的通用寄存器的值。
同樣,轉(zhuǎn)向地址特定信息,既可以把轉(zhuǎn)向作為特定值,又可以是例如發(fā)生轉(zhuǎn)向的指令地址。另外,還可以是從轉(zhuǎn)移設(shè)定指令到轉(zhuǎn)向發(fā)生地址的相對(duì)地址,也可以是轉(zhuǎn)移設(shè)定指令和轉(zhuǎn)向發(fā)生地址間的指令數(shù)(轉(zhuǎn)向是從轉(zhuǎn)移設(shè)定指令起的第幾個(gè)指令轉(zhuǎn)向?)。另外又可以是存儲(chǔ)上述任一個(gè)的通用寄存器的值。
前一次讀取地址,例如,是讀取用的程序計(jì)數(shù)器中保持的前一次讀取地址,預(yù)讀取地址是根據(jù)前一次讀取地址,計(jì)算出的本次讀取地址。將其中的某一個(gè)值和轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值進(jìn)行比較,一致時(shí),將轉(zhuǎn)向地址保持寄存器中存儲(chǔ)的值,作為下次的讀取地址輸出,不一致時(shí),也可以對(duì)讀取用的程序計(jì)數(shù)器的值增量1個(gè)指令的長(zhǎng)度,并將該增量過(guò)的值作為下次的讀取地址輸出。
這里,將讀取用的程序計(jì)數(shù)器中保持的前一次的讀取地址或者根據(jù)前一次的讀取地址計(jì)算出的本次讀取地址的某一個(gè)值,和轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值進(jìn)行比較,在值一致時(shí)之前,由轉(zhuǎn)移設(shè)定指令指定的轉(zhuǎn)移發(fā)生地址,同在轉(zhuǎn)移發(fā)生地址保持寄存器中設(shè)定的那樣,當(dāng)指定轉(zhuǎn)移發(fā)生地址時(shí),在流水線控制中,當(dāng)轉(zhuǎn)移發(fā)生時(shí),不會(huì)發(fā)生損耗,就可讀取轉(zhuǎn)向指令。
根據(jù)本實(shí)施例,只需增加讀取地址運(yùn)算電路以及轉(zhuǎn)移信息設(shè)定電路,就可實(shí)現(xiàn)指令系統(tǒng)中包含轉(zhuǎn)移設(shè)定指令的體系結(jié)構(gòu),在采用流水線體系結(jié)構(gòu)的信息處理裝置中,不會(huì)導(dǎo)致電路規(guī)模增大,從而可提供一種可減少因轉(zhuǎn)移發(fā)生造成的耗時(shí)、價(jià)格性能比良好的信息處理裝置。
(2)本實(shí)施例是一種進(jìn)行流水線控制的信息處理裝置,其特征在于,包括指令隊(duì)列,其可讀取多個(gè)指令碼;讀取地址運(yùn)算電路,其對(duì)讀取地址進(jìn)行計(jì)算,用于將指令碼讀取到該指令隊(duì)列;讀取電路,其根據(jù)該讀取地址,將讀出的指令碼讀取到指令隊(duì)列;以及轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),其對(duì)轉(zhuǎn)移設(shè)定指令進(jìn)行譯碼,用于向轉(zhuǎn)向地址轉(zhuǎn)移,并將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址存儲(chǔ)到轉(zhuǎn)向地址保持寄存器,該讀取地址運(yùn)算電路包括這樣的電路其用指令長(zhǎng)度對(duì)讀取用的程序計(jì)數(shù)器中保持的值進(jìn)行增量后,把所得到的本次預(yù)讀取的預(yù)讀取地址,和轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值進(jìn)行比較,一致時(shí),將轉(zhuǎn)向地址保持寄存器中存儲(chǔ)的值,作為下次的讀取地址輸出,不一致時(shí),將該預(yù)讀取地址作為下次的讀取地址輸出。
轉(zhuǎn)移設(shè)定指令,例如,在其操作數(shù)上,顯示或隱含轉(zhuǎn)移發(fā)生地址特定信息、轉(zhuǎn)向地址特定信息。
轉(zhuǎn)移發(fā)生地址特定信息,可以把轉(zhuǎn)移發(fā)生的地方的值作為特定值,也可以是例如轉(zhuǎn)移發(fā)生的指令地址。另外,還可以是從轉(zhuǎn)移設(shè)定指令到轉(zhuǎn)移發(fā)生地址的相對(duì)地址,也可以是轉(zhuǎn)移設(shè)定指令和轉(zhuǎn)移發(fā)生地址之間的指令數(shù)(轉(zhuǎn)移發(fā)生地址是從轉(zhuǎn)移設(shè)定指令的第幾個(gè)指令開(kāi)始?)。另外又可以是存儲(chǔ)上述任一個(gè)的通用寄存器的值。
同樣,轉(zhuǎn)向地址特定信息,既可以把轉(zhuǎn)向作為特定值,又可以是例如轉(zhuǎn)向的指令地址。另外,還可以是從轉(zhuǎn)移設(shè)定指令到轉(zhuǎn)向地址的相對(duì)地址,也可以是轉(zhuǎn)移設(shè)定指令和轉(zhuǎn)移地址之間的指令數(shù)(轉(zhuǎn)向是從轉(zhuǎn)移設(shè)定指令的第幾個(gè)指令轉(zhuǎn)向?)。另外,又可以是存儲(chǔ)上述任一個(gè)的通用寄存器的值。
這里,用指令長(zhǎng)度對(duì)讀取用的程序計(jì)數(shù)器中保持的值進(jìn)行增量后,所獲得的本次預(yù)讀取的預(yù)讀取地址和轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值進(jìn)行比較,在值一致時(shí)之前,用轉(zhuǎn)移設(shè)定指令指定的轉(zhuǎn)移發(fā)生地址,同在轉(zhuǎn)移發(fā)生地址保持寄存器中設(shè)定的那樣,當(dāng)指定轉(zhuǎn)移發(fā)生地址時(shí),在流水線控制中,在轉(zhuǎn)移發(fā)生時(shí),可以不產(chǎn)生損耗,取出轉(zhuǎn)向指令。
根據(jù)本實(shí)施例,只要增加讀取地址運(yùn)算電路以及轉(zhuǎn)移信息設(shè)定電路,就可實(shí)現(xiàn)指令系統(tǒng)中包含轉(zhuǎn)移設(shè)定指令的體系結(jié)構(gòu),在流水線體系結(jié)構(gòu)的信息處理裝置中,不會(huì)導(dǎo)致電路規(guī)模增大,且可以減少因轉(zhuǎn)移發(fā)生而造成的耗時(shí),可提供一種價(jià)格性能比良好的信息處理裝置。
(3)本實(shí)施例的信息處理裝置,其特征在于,包括該轉(zhuǎn)移設(shè)定指令,包括可指定循環(huán)次數(shù)的循環(huán)指令,
該轉(zhuǎn)移信息設(shè)定電路,為了當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),就向轉(zhuǎn)向地址轉(zhuǎn)移,而對(duì)循環(huán)指令進(jìn)行譯碼,取出由循環(huán)指令指定的循環(huán)次數(shù),直到達(dá)到循環(huán)次數(shù)。
該讀取地址運(yùn)算電路,將轉(zhuǎn)向地址保持寄存器中存儲(chǔ)的值,作為下次的讀取地址輸出,直到該轉(zhuǎn)向地址轉(zhuǎn)移的次數(shù)達(dá)到循環(huán)次數(shù)。
例如,也可以設(shè)置成把根據(jù)循環(huán)指令設(shè)定的循環(huán)次數(shù)設(shè)定為循環(huán)計(jì)數(shù)器,每次在向轉(zhuǎn)向地址轉(zhuǎn)移時(shí),都對(duì)循環(huán)計(jì)數(shù)器進(jìn)行減量。而且還可以設(shè)置成當(dāng)循環(huán)計(jì)數(shù)器的值為0時(shí),結(jié)束向轉(zhuǎn)向地址轉(zhuǎn)移。
根據(jù)本實(shí)施例,循環(huán)指令執(zhí)行以后,作為讀取地址,可以輸出轉(zhuǎn)向地址,因此,在流水線控制中,當(dāng)發(fā)生循環(huán)處理轉(zhuǎn)移時(shí),不會(huì)產(chǎn)生損耗,就可將轉(zhuǎn)向指令取出。
而且,因?yàn)椴皇褂迷撗h(huán)指令,所以,在實(shí)現(xiàn)循環(huán)處理時(shí)所需要的循環(huán)計(jì)數(shù)器減量用的SUB指令也就不需要,因此,可以提高其執(zhí)行速度。
根據(jù)本實(shí)施例,只要增加讀取地址運(yùn)算電路以及轉(zhuǎn)移信息設(shè)定電路,就可實(shí)現(xiàn)指令系統(tǒng)中包含循環(huán)指令的體系結(jié)構(gòu),在采用流水線結(jié)構(gòu)的信息處理裝置中,不會(huì)導(dǎo)致電路規(guī)模增大,可減少發(fā)生循環(huán)造成的耗時(shí),可以提供一種價(jià)格性能比良好的信息處理裝置。
(4)本實(shí)施例的信息處理裝置,其特征在于包括該特定的轉(zhuǎn)移設(shè)定指令包括可以指定循環(huán)次數(shù)的循環(huán)指令;
該轉(zhuǎn)移信息設(shè)定電路,為了當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址,就向轉(zhuǎn)向地址轉(zhuǎn)移,而對(duì)循環(huán)指令進(jìn)行譯碼,將由循環(huán)指令指定的循環(huán)次數(shù),設(shè)定為循環(huán)計(jì)數(shù)器,直至達(dá)到循環(huán)次數(shù);該讀取地址運(yùn)算電路,每次發(fā)生向轉(zhuǎn)向地址轉(zhuǎn)移時(shí),都對(duì)該循環(huán)計(jì)數(shù)器中設(shè)定的值進(jìn)行減量,當(dāng)循環(huán)計(jì)數(shù)器的值成為0時(shí),就對(duì)轉(zhuǎn)移發(fā)生地址增量指令長(zhǎng)度,并將該已增量的值,作為下次的讀取地址輸出。
根據(jù)本實(shí)施例,循環(huán)指令執(zhí)行以后,作為讀取地址,可以輸出轉(zhuǎn)向地址,因此,在流水線控制中,當(dāng)發(fā)生因循環(huán)處理產(chǎn)生的轉(zhuǎn)移時(shí),不會(huì)產(chǎn)生損耗,可以取出轉(zhuǎn)向指令。
而且,因?yàn)椴皇褂迷撗h(huán)指令,所以在實(shí)現(xiàn)循環(huán)處理時(shí)所需要的循環(huán)計(jì)數(shù)器減量用的SUB指令也就不需要了,因此,可以提高其執(zhí)行速度。
根據(jù)本實(shí)施例,只要增加讀取地址運(yùn)算電路以及轉(zhuǎn)移信息設(shè)定電路,就可實(shí)現(xiàn)指令系統(tǒng)中包含循環(huán)指令的體系結(jié)構(gòu),在采用流水線結(jié)構(gòu)的信息處理裝置中,不會(huì)導(dǎo)致電路規(guī)模增大,可減少因發(fā)生循環(huán)而產(chǎn)生的耗時(shí),可以提供一種價(jià)格性能比良好的信息處理裝置。
(5)本實(shí)施例信息處理裝置,其特征在于包括該循環(huán)指令,其構(gòu)成是轉(zhuǎn)向地址對(duì)于循環(huán)指令是相對(duì)固定的,轉(zhuǎn)向地址信息不需要在操作數(shù)中指定;該轉(zhuǎn)移信息設(shè)定電路,
其將對(duì)于循環(huán)指令相對(duì)固定的值進(jìn)行運(yùn)算后,存儲(chǔ)到轉(zhuǎn)向地址保持寄存器。
所說(shuō)的對(duì)于循環(huán)指令是相對(duì)固定的,是指距離循環(huán)指令的相對(duì)的距離是唯一的。
例如,相對(duì)于循環(huán)指令的下一個(gè)指令可以固定轉(zhuǎn)向地址。
根據(jù)本實(shí)施例,因?yàn)榭梢詼p少循環(huán)指令的操作數(shù)的指定,所以,用短的指令碼的長(zhǎng)度達(dá)到了必須描述循環(huán)指令時(shí)的效果。
(6)本實(shí)施例是一種電子設(shè)備,其特征包括上述任一所述的信息處理裝置;接收輸入信息的裝置;以及用于輸出的裝置,其根據(jù)輸入信息輸出該信息處理裝置處理的結(jié)果。
根據(jù)本實(shí)施例,由于內(nèi)裝了低成本、可以高速執(zhí)行的信息處理裝置,所以,可提供一種廉價(jià)而具有高性能的電子設(shè)備。
以下,參照附圖就本發(fā)明的優(yōu)選實(shí)施例作詳細(xì)說(shuō)明。
1.信息處理裝置(1)信息處理裝置的構(gòu)成圖1A和圖1B是對(duì)現(xiàn)有的流水線控制的微型計(jì)算機(jī)(廣義上指信息處理裝置)轉(zhuǎn)移發(fā)生時(shí)的情況進(jìn)行說(shuō)明的示意圖。
圖1A表示的是轉(zhuǎn)移發(fā)生的指令系統(tǒng)的一個(gè)例子。
圖1B表示的是在進(jìn)行Fetch(F)、Decode(D)、Execute(E)、Access(A)、Write(W)5個(gè)步驟的流水線控制的微型計(jì)算機(jī)中,處理(I)~(III)指令的時(shí)間表。
一般情況下,在流水線控制Fetch(F)階段的讀取地址,是由“本次的讀取地址=前一次讀取地址+前一次讀取的指令的大小”設(shè)定的。所以,當(dāng)轉(zhuǎn)移指令發(fā)生時(shí),讀取隊(duì)列中轉(zhuǎn)向指令沒(méi)有被讀取。
在這里,圖1B的(II)bme為轉(zhuǎn)移指令,(III)為轉(zhuǎn)向指令。這樣,執(zhí)行轉(zhuǎn)移指令之后,由于必須再次讀取轉(zhuǎn)向指令,所以,如210所示,產(chǎn)生了2個(gè)時(shí)鐘脈沖的延遲。
另外,例如,當(dāng)使用轉(zhuǎn)移指令進(jìn)行循環(huán)處理時(shí),由于需要計(jì)數(shù)用的(I)SUB指令,所以還需要1個(gè)時(shí)鐘脈沖。
圖2是對(duì)本實(shí)施例的微型計(jì)算機(jī)(廣義上指信息處理裝置)的構(gòu)成進(jìn)行說(shuō)明的功能模塊圖。
本實(shí)施例的微型計(jì)算機(jī)100,包括CPU(廣義上是處理電路)10和BCU(總線控制單元)100。并且,微型計(jì)算機(jī)100除此之外還可包括ROM(Read Only Memory)、RAM(RandomAccessMemory)、MMU(Memory Management Unit)、DMAC(Direct AccessMemory Controller)、LCD(Liquid Crystal Display)驅(qū)動(dòng)器或者SIO(Serial Input Output)等各種外圍電路。
CPU 10按照ROM和RAM中記憶的程序,通過(guò)流水線控制,進(jìn)行指令讀取、指令譯碼、運(yùn)算處理、寫入寄存器等。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ò)該各種總線與外部進(jìn)行信號(hào)通信。
另外,CPU 10是由讀取電路20、讀取地址運(yùn)算電路40、譯碼電路60、執(zhí)行電路70、寄存器文件80(通用寄存器82、特殊寄存器84)、指令地址生成器90等構(gòu)成。
讀取電路20,將多個(gè)指令的指令碼預(yù)讀取到指令隊(duì)列(例如預(yù)讀取隊(duì)列)30-0、30-1……。
讀取地址運(yùn)算電路40是用于將指令碼讀取到指令隊(duì)列的運(yùn)算讀取地址的電路。包括轉(zhuǎn)移發(fā)生地址保持寄存器42和轉(zhuǎn)向地址保持寄存器44,將前一次讀取地址或者預(yù)讀取地址當(dāng)中的某一個(gè)和存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器的值進(jìn)行比較,根據(jù)比較結(jié)果,將轉(zhuǎn)向地址保持寄存器中存儲(chǔ)的值,作為下次的讀取地址輸出。
另外,對(duì)保持在讀取用的程序計(jì)數(shù)器的值增量指令長(zhǎng)度,把所獲得的本次預(yù)讀取的預(yù)讀取地址和存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器的值進(jìn)行比較,一致時(shí),將存儲(chǔ)到轉(zhuǎn)向地址保持寄存器的值,作為下次的讀取地址輸出,不一致時(shí),也可以對(duì)讀取用的程序計(jì)數(shù)器增量1個(gè)指令,并將該值作為下次的讀取地址輸出。
另外,根據(jù)該比較結(jié)果,將存儲(chǔ)在轉(zhuǎn)向地址保持寄存器42的值,作為下次的讀取地址輸出,直到向該轉(zhuǎn)向地址轉(zhuǎn)移的次數(shù)達(dá)到循環(huán)次數(shù)。
例如,也可以設(shè)置循環(huán)計(jì)數(shù)器電路46,其將循環(huán)指令設(shè)定的循環(huán)次數(shù)設(shè)定為沒(méi)有圖示的循環(huán)計(jì)數(shù)器,每次向轉(zhuǎn)向地址轉(zhuǎn)移時(shí),就對(duì)循環(huán)計(jì)數(shù)器作一次減量。
譯碼電路60,其通過(guò)信號(hào)線連接到指令隊(duì)列,輸入被讀取到指令隊(duì)列的指令碼,進(jìn)行譯碼處理,包括轉(zhuǎn)移信息設(shè)定電路62。
另外,該轉(zhuǎn)移信息設(shè)定電路62通過(guò)信號(hào)線連接到轉(zhuǎn)移發(fā)生地址保持寄存器42和轉(zhuǎn)向地址保持寄存器44,對(duì)到達(dá)轉(zhuǎn)移發(fā)生地址就向轉(zhuǎn)向地址轉(zhuǎn)移的轉(zhuǎn)移設(shè)定指令,進(jìn)行譯碼,將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址存到轉(zhuǎn)向地址保持寄存器。
另外,該轉(zhuǎn)移信息設(shè)定電路62,也可以是,通過(guò)信號(hào)線連接到設(shè)在循環(huán)計(jì)數(shù)器電路46的沒(méi)有圖示的循環(huán)次數(shù)設(shè)定寄存器,為了當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí)向轉(zhuǎn)向地址轉(zhuǎn)移,對(duì)循環(huán)指令進(jìn)行譯碼,取出循環(huán)指令設(shè)定的循環(huán)次數(shù),直到達(dá)到循環(huán)次數(shù),并在循環(huán)次數(shù)設(shè)定寄存器中設(shè)定。
執(zhí)行電路70根據(jù)該譯碼電路60譯碼的指令的操作內(nèi)容,執(zhí)行該指令。執(zhí)行電路70包括進(jìn)行數(shù)據(jù)運(yùn)算的數(shù)據(jù)運(yùn)算電路72和進(jìn)行地址運(yùn)算的地址運(yùn)算電路74,根據(jù)需要,訪問(wèn)通用寄存器84和存儲(chǔ)器(RAM等)后,執(zhí)行已被譯碼電路60譯碼的指令功能。
寄存器文件90,具有通用寄存器R0~R15共16個(gè)通用寄存器、程序計(jì)數(shù)器(PC)、處理器狀態(tài)寄存器(PSR)、堆棧指針(SP)、算術(shù)低級(jí)寄存器(ALR)、算術(shù)高級(jí)寄存器(AHR)等CPU使用的寄存器。
(2)轉(zhuǎn)移設(shè)定指令圖3A、圖3B和圖3C是對(duì)本實(shí)施例的轉(zhuǎn)移設(shè)定指令的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
圖3A表示的是轉(zhuǎn)移設(shè)定指令的指令碼的一個(gè)例子,圖3B表示的是轉(zhuǎn)移設(shè)定指令的指令碼的位字段圖。轉(zhuǎn)移設(shè)定指令的指令碼310,具有從位15到位8共8位操作碼指定區(qū)域312、從位7到位4共4位轉(zhuǎn)移發(fā)生地址指定區(qū)域314、和從位3到位0共4位轉(zhuǎn)向地址指定區(qū)域316。
操作碼指定區(qū)域312中存儲(chǔ)的操作碼為轉(zhuǎn)移設(shè)定指令。
在轉(zhuǎn)移發(fā)生地址指定區(qū)域314以及轉(zhuǎn)向地址指定區(qū)域316中,也可以指定從轉(zhuǎn)移設(shè)定指令跳過(guò)幾個(gè)指令的值。例如,從轉(zhuǎn)移設(shè)定指令跳過(guò)幾個(gè)指令的值由當(dāng)即值“imm4”指定時(shí),轉(zhuǎn)向地址,由“PC(程序計(jì)數(shù)器)+指令長(zhǎng)度+imm4×指令長(zhǎng)度”設(shè)定。另外,還可以作為來(lái)自轉(zhuǎn)移設(shè)定指令的相對(duì)地址來(lái)指定,亦可以由絕對(duì)地址來(lái)指定。另外,又可以由存儲(chǔ)這些個(gè)值的通用寄存器的值來(lái)指定。
圖3C是包括轉(zhuǎn)移設(shè)定指令的程序表。320當(dāng)設(shè)置了轉(zhuǎn)移設(shè)定指令“jppr x,y”時(shí),在自該指令開(kāi)始的x指令后(參照330)的P1(轉(zhuǎn)移發(fā)生地址)轉(zhuǎn)移發(fā)生,自轉(zhuǎn)移設(shè)定指令開(kāi)始的y指令后(參照340)的P2(轉(zhuǎn)向地址)轉(zhuǎn)移。
圖4是對(duì)讀取地址運(yùn)算電路的構(gòu)成的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
讀取地址運(yùn)算電路40包括讀取程序計(jì)數(shù)器(PPC)41;轉(zhuǎn)向發(fā)生地址寄存器42和轉(zhuǎn)向地址寄存器44等。讀取程序計(jì)數(shù)器(FPC)41是存儲(chǔ)讀取的指令地址的程序計(jì)數(shù)器,每次讀取時(shí),都會(huì)被下一個(gè)讀取地址更新。
轉(zhuǎn)移發(fā)生地址寄存器42保持有轉(zhuǎn)移設(shè)定指令指定的轉(zhuǎn)移發(fā)生地址。
轉(zhuǎn)向地址寄存器44保持有轉(zhuǎn)移設(shè)定指令指定的轉(zhuǎn)向地址。
現(xiàn)在保持在讀取程序計(jì)數(shù)器(FPC)41的,根據(jù)讀取地址向讀取隊(duì)列讀取指令碼,則地址運(yùn)算器43,根據(jù)該讀取地址53以及指令碼長(zhǎng)度54,將讀取地址計(jì)數(shù)器的增量值信號(hào)55,向多路轉(zhuǎn)換器47以及比較器45輸出。
另外,比較器45輸入讀取地址計(jì)數(shù)器的增量值55以及轉(zhuǎn)移發(fā)生地址寄存器42中存儲(chǔ)的轉(zhuǎn)移發(fā)生地址,當(dāng)這些內(nèi)容一致時(shí),將向多路轉(zhuǎn)換器47輸出的轉(zhuǎn)移發(fā)生信號(hào)46置于ON(例如設(shè)為“H”電位)。
轉(zhuǎn)向地址寄存器44向多路轉(zhuǎn)換器47輸出轉(zhuǎn)向地址信號(hào)56。
另外,ALU 48對(duì)由于例如通常的轉(zhuǎn)移指令(本實(shí)施例的轉(zhuǎn)移設(shè)定指令除外)等發(fā)生的轉(zhuǎn)向地址進(jìn)行運(yùn)算,將通常轉(zhuǎn)移地址信號(hào)57,向多路轉(zhuǎn)換器47輸出。通常轉(zhuǎn)移發(fā)生信號(hào)49是一種通知信號(hào),通知通常的轉(zhuǎn)移指令(本實(shí)施例轉(zhuǎn)移設(shè)定指令除外)等發(fā)生的事情。
多路轉(zhuǎn)換器47,在轉(zhuǎn)移發(fā)生信號(hào)46為ON時(shí)(例如為“H”電平),選擇轉(zhuǎn)向地址信號(hào)56,作為下次的讀取地址信號(hào)52,向讀取程序計(jì)數(shù)器(FPC)41輸出。另外,通常轉(zhuǎn)移發(fā)生信號(hào)49為ON的情況(例如是“H”電平),選擇通常轉(zhuǎn)移地址信號(hào)57,作為下次的讀取地址信號(hào)52,向讀取程序計(jì)數(shù)器(FPC)41輸出。另外轉(zhuǎn)移發(fā)生信號(hào)46或通常轉(zhuǎn)移發(fā)生信號(hào)49均為OFF時(shí)(例如是“L”電位),選擇讀取地址計(jì)數(shù)器的增量值信號(hào)55,作為下次的讀取地址信號(hào)52,向讀取程序計(jì)數(shù)器(FPC)41輸出。
(3)循環(huán)指令圖5A、圖5B和圖5C是對(duì)本實(shí)施例的循環(huán)指令的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
圖5A表示的是循環(huán)指令的指令碼的一個(gè)例子,圖5B表示的是循環(huán)指令的指令碼的位字段圖。循環(huán)指令的指令碼410具有從位15到位9共7位操作碼指定區(qū)域412、從位8到位6共3位轉(zhuǎn)移發(fā)生地址指定區(qū)域414、從位5到位3共3位轉(zhuǎn)向地址指定區(qū)域416,和從位2到位0共3位循環(huán)次數(shù)指定區(qū)域418。
操作碼指定區(qū)域412中存儲(chǔ)的操作碼表示的是循環(huán)指令。
對(duì)于轉(zhuǎn)移發(fā)生地址指定區(qū)域414以及轉(zhuǎn)向地址指定區(qū)域416,可以指定從轉(zhuǎn)移設(shè)定指令跳過(guò)幾個(gè)指令的值。例如,從轉(zhuǎn)移設(shè)定指令跳過(guò)幾個(gè)指令的值是用即值“imm3”指定時(shí),轉(zhuǎn)向地址用“PC(程序計(jì)數(shù)器)+指令長(zhǎng)度+imm3×指令長(zhǎng)度”設(shè)定。另外,也可以作為來(lái)自轉(zhuǎn)移設(shè)定指令的相對(duì)地址指定,還可以用絕對(duì)地址指定。另外,又可以由存儲(chǔ)這些個(gè)值的通用寄存器的值來(lái)指定。
另外,循環(huán)次數(shù)指定區(qū)域418中,循環(huán)次數(shù)可以由即值指定,同時(shí)還可以指定已設(shè)定循環(huán)次數(shù)的通用寄存器的值。
圖5C是包含循環(huán)指令的程序表。420如果置入循環(huán)指令“l(fā)oopx,y,z”,則在自該指令的x指令后(參照430)的P1(轉(zhuǎn)移發(fā)生地址)轉(zhuǎn)移發(fā)生,在自循環(huán)指令的y指令后(參照440)的P2(轉(zhuǎn)向地址)進(jìn)行轉(zhuǎn)移處理,反復(fù)僅循環(huán)次數(shù)z次。而且在僅循環(huán)z次轉(zhuǎn)移后,執(zhí)行轉(zhuǎn)移發(fā)生地址的下一個(gè)指令470。
圖6是就對(duì)應(yīng)循環(huán)指令的讀取地址運(yùn)算電路的構(gòu)成的一個(gè)例子進(jìn)行說(shuō)明的示意圖。
圖6的讀取地址運(yùn)算電路40’包括圖4的讀取地址運(yùn)算電路40,此外還包括循環(huán)計(jì)數(shù)器電路60。
循環(huán)計(jì)數(shù)器電路60包括循環(huán)計(jì)數(shù)器62、運(yùn)算器64和比較器66。循環(huán)計(jì)數(shù)器62保持有最初用的循環(huán)指令指定的循環(huán)次數(shù)。
運(yùn)算器64輸入循環(huán)計(jì)數(shù)器中保持的值以及從比較器45輸出的轉(zhuǎn)移發(fā)生信號(hào)46,當(dāng)轉(zhuǎn)移發(fā)生信號(hào)46是表示轉(zhuǎn)移發(fā)生的時(shí)(ON時(shí)是指例如“H”電平),對(duì)循環(huán)計(jì)數(shù)器減量(將循環(huán)計(jì)數(shù)器的值只減“1”),將減量值信號(hào)65向循環(huán)計(jì)數(shù)器62以及比較器66輸出。接受該信號(hào),循環(huán)計(jì)數(shù)器62的值被減量。
另外,比較器66,在減量值信號(hào)65為“0”時(shí),僅循環(huán)指定的次數(shù),就轉(zhuǎn)移發(fā)生,將循環(huán)結(jié)束信號(hào)68置成“ON”,向多路轉(zhuǎn)換器47輸出。循環(huán)結(jié)束信號(hào)68,是通知循環(huán)指令指定的循環(huán)次數(shù)結(jié)束時(shí)的信號(hào),例如“H”電平信號(hào)被輸出時(shí),循環(huán)結(jié)束信號(hào)68也可以為“ON”。
多路轉(zhuǎn)換器47,是在循環(huán)結(jié)束信號(hào)68不是“ON”,進(jìn)行圖4說(shuō)明的動(dòng)作,當(dāng)循環(huán)結(jié)束信號(hào)68為“O”,轉(zhuǎn)移發(fā)生信號(hào)46即使為ON,也不選擇轉(zhuǎn)向地址信號(hào)56,而選擇讀取地址計(jì)數(shù)器的增量值信號(hào)55,作為下一個(gè)讀取地址信號(hào)52,向讀取程序計(jì)數(shù)器(FPC)41輸出。
圖7A、圖7B和圖7C是對(duì)本實(shí)施例的其他循環(huán)指令進(jìn)行說(shuō)明的示意圖。其他循環(huán)指令是指,轉(zhuǎn)向地址作為循環(huán)指令的下一個(gè)指令的類型循環(huán)指令。
圖7A表示的是其他的循環(huán)指令(循環(huán)指令2)的指令碼的一個(gè)例子,圖7B表示的是循環(huán)指令2的指令碼的位字段圖。循環(huán)指令2的指令碼510具有從位1 5到位8共8位操作碼指定區(qū)域512、從位7到位4共4位轉(zhuǎn)移發(fā)生地址指定區(qū)域514,和從位3到位0共4位循環(huán)次數(shù)指定區(qū)域518。循環(huán)指令2,由于轉(zhuǎn)向固定,不必用操作數(shù)指定轉(zhuǎn)向地址。
操作碼指定區(qū)域512中存儲(chǔ)的操作碼表示的是轉(zhuǎn)向地址作為循環(huán)指令的下一個(gè)指令的類型循環(huán)指令。
對(duì)于轉(zhuǎn)移發(fā)生地址指定區(qū)域514,可以指定從轉(zhuǎn)移設(shè)定指令跳過(guò)幾個(gè)指令的值。例如,從轉(zhuǎn)移設(shè)定指令跳過(guò)幾個(gè)指令的值,若用即值“imm4”指定時(shí),轉(zhuǎn)向地址由“PC(程序計(jì)數(shù)器)+指令長(zhǎng)度+imm×指令長(zhǎng)度”設(shè)定。另外,還可以指定為來(lái)自轉(zhuǎn)移設(shè)定指令的相對(duì)地址,也可以用絕對(duì)地址來(lái)指定。另外又可以用這些個(gè)值存儲(chǔ)的通用寄存器的值來(lái)指定。
另外,對(duì)于循環(huán)次數(shù)指定區(qū)域518,循環(huán)次數(shù)可以用即值指定,也可以指定設(shè)定循環(huán)次數(shù)的通用寄存器的值。
圖7C是包括循環(huán)指令的程序表。當(dāng)在520置入循環(huán)指令2“l(fā)oopx,z”時(shí),在自該指令的x指令后面(參照530)的P1(轉(zhuǎn)移發(fā)生地址)轉(zhuǎn)移發(fā)生,向循環(huán)指令2的下一個(gè)指令的開(kāi)頭P2(轉(zhuǎn)向地址)進(jìn)行轉(zhuǎn)移處理,反復(fù)僅循環(huán)z次。而且在僅循環(huán)z次轉(zhuǎn)移之后,執(zhí)行轉(zhuǎn)移發(fā)生地址的下一個(gè)指令570。
這樣,當(dāng)轉(zhuǎn)向是固定的情況時(shí),在圖6中,可以對(duì)轉(zhuǎn)向地址寄存器44中固定的轉(zhuǎn)向地址進(jìn)行設(shè)定。
并且,這里是以轉(zhuǎn)向?qū)ρh(huán)指令的下一個(gè)指令是固定的情況為例進(jìn)行說(shuō)明的,但并不局限于此。也可以在其他位置固定的情況下轉(zhuǎn)向。
2.電子設(shè)備接下來(lái),就包括上述信息處理電路(例如微型計(jì)算機(jī))的電子設(shè)備做出說(shuō)明。
例如圖8A中,表示的是電子設(shè)備之一的汽車導(dǎo)航系統(tǒng)的內(nèi)部方框圖,圖9A表示的是其外觀圖。汽車導(dǎo)航系統(tǒng)的操作通過(guò)遙控器710進(jìn)行,根據(jù)來(lái)自GPS和陀螺儀的信息,位置檢測(cè)部分720檢測(cè)出車的位置。地圖等的信息存儲(chǔ)在CDROM 730(信息存儲(chǔ)介質(zhì))。存儲(chǔ)器740是圖像處理和聲音處理時(shí)的作業(yè)區(qū)域的存儲(chǔ)器,生成的圖像,通過(guò)圖像輸出部分750顯示給駕駛?cè)藛T。另外,生成的汽車導(dǎo)航用的導(dǎo)向聲音通過(guò)聲音輸出部分735輸出給駕駛?cè)藛T。微型計(jì)算機(jī)700,輸入來(lái)自遙控器710、位置檢測(cè)部分720、CDROM 730等的信息輸入源的信息,進(jìn)行各種處理,并將處理后信息通過(guò)圖像輸出部分750、聲音輸出部分735等輸出裝置輸出。
圖8B表示的是電子設(shè)備之一的游戲機(jī)的內(nèi)部方框圖,圖9B是其外觀圖。該游戲機(jī)根據(jù)游戲控制器760操作人員的操作信息、CDROM 770的游戲程序,IC卡780操作人員的的信息等,將存儲(chǔ)器790作為作業(yè)區(qū)域,生成游戲圖像和游戲聲音,通過(guò)圖像輸出部分810、聲音輸出部分800輸出。
圖8C是表示電子設(shè)備之一的打印機(jī)內(nèi)部方框圖,圖9C是其外觀圖。該打印機(jī),根據(jù)來(lái)自操作面板820的操作信息、代碼存儲(chǔ)器830以及數(shù)字圖形聚點(diǎn)式存儲(chǔ)器840的字符信息,將位變換存儲(chǔ)器850作為作業(yè)區(qū)域,生成印刷圖像,并通過(guò)印刷輸出部分860輸出。另外,打印機(jī)的狀態(tài)和模式,使用顯示面板870傳達(dá)給用戶。
此外,作為可配置在微型計(jì)算機(jī)上的電子設(shè)備,除了上文提到的以外,例如,還可以有便攜式電話(蜂窩電話),PHS、尋呼機(jī)、便攜式信息終端、數(shù)碼相機(jī)、硬盤裝置、光磁盤(CD、DVD)裝置、光磁磁盤(MO)裝置、音響設(shè)備、電子記事本、電子臺(tái)式計(jì)算機(jī)、POS終端、配有觸摸屏的裝置、投影儀、文字處理器、個(gè)人電腦、電視機(jī)、反光鏡型,或者監(jiān)控直視式帶式錄音機(jī)等各種產(chǎn)品。
并且,本發(fā)明并不僅限于本實(shí)施例,在本發(fā)明的主題范圍之內(nèi)可以采取各種實(shí)施例。
另外,本發(fā)明的電子設(shè)備的構(gòu)成,也并不僅限于圖8A~圖8C、圖9A~圖9C說(shuō)明的內(nèi)容,可以采用各種變形方式。
盡管本發(fā)明已經(jīng)參照附圖和優(yōu)選實(shí)施例進(jìn)行了說(shuō)明,但是,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。本發(fā)明的各種更改、變化和等同物由權(quán)利要求書的內(nèi)容涵蓋。
權(quán)利要求
1.一種進(jìn)行流水線控制的信息處理裝置,其特征在于包括指令隊(duì)列,其可讀取多個(gè)指令碼;讀取地址運(yùn)算電路,其對(duì)讀取地址進(jìn)行運(yùn)算,用于將指令碼讀取到所述指令隊(duì)列;讀取電路,其根據(jù)該讀取地址,將讀出的指令碼讀取到指令隊(duì)列;以及轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)向發(fā)生地址時(shí),為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)轉(zhuǎn)移設(shè)定指令進(jìn)行譯碼,并將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址存儲(chǔ)到轉(zhuǎn)向地址保持寄存器,所述讀取地址運(yùn)算電路,其將前一次讀取地址或者預(yù)讀取地址的某一個(gè)和轉(zhuǎn)移發(fā)生地址保持寄存器中存儲(chǔ)的值進(jìn)行比較,根據(jù)比較結(jié)果,決定是否將轉(zhuǎn)向地址保持寄存器中存儲(chǔ)的值作為下次的讀取地址輸出。
2.一種進(jìn)行流水線控制的信息處理裝置,其特征在于包括指令隊(duì)列,其可讀取多個(gè)指令碼;讀取地址運(yùn)算電路,其對(duì)讀取地址進(jìn)行運(yùn)算,用于將指令碼讀取到所述指令隊(duì)列;讀取電路,其根據(jù)所述讀取地址將讀出的指令碼讀取到指令隊(duì)列;以及轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址,為了向轉(zhuǎn)移地址轉(zhuǎn)移,其對(duì)轉(zhuǎn)移設(shè)定指令進(jìn)行譯碼,并將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址寄存儲(chǔ)到轉(zhuǎn)移地址保持寄存器,所述讀取地址運(yùn)算電路,其將保持在讀取用的程序計(jì)數(shù)器的值增量指令長(zhǎng)度后得到的本次預(yù)讀取的預(yù)讀取地址和存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器的值進(jìn)行比較,一致時(shí),將存儲(chǔ)在轉(zhuǎn)向地址保持寄存器的值作為下次的讀取地址來(lái)輸出,不一致時(shí),將所述預(yù)讀取地址作為下次的讀取地址來(lái)輸出。
3.根據(jù)權(quán)利要求1中所述的信息處理裝置,其特征在于包括所述轉(zhuǎn)移設(shè)定指令,其包括可指定循環(huán)次數(shù)的循環(huán)指令;所述轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)循環(huán)指令進(jìn)行譯碼,取出由循環(huán)指令指定的循環(huán)次數(shù),直到達(dá)到循環(huán)次數(shù);所述讀取地址運(yùn)算電路,其將存儲(chǔ)在轉(zhuǎn)向地址保持寄存器的值作為下次的讀取地址輸出,直到向所述轉(zhuǎn)向地址轉(zhuǎn)移的次數(shù)達(dá)到循環(huán)次數(shù)。
4.根據(jù)權(quán)利要求2所述的信息處理裝置,其特征在于包括所述轉(zhuǎn)移設(shè)定指令,其包括可指定循環(huán)次數(shù)的循環(huán)指令;所述轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)循環(huán)指令進(jìn)行譯碼,取出由循環(huán)指令指定的循環(huán)次數(shù),直至達(dá)到循環(huán)次數(shù);所述讀取地址運(yùn)算電路,其將存儲(chǔ)在轉(zhuǎn)向地址保持寄存器的值作為下次的讀取地址來(lái)輸出,直到向所述轉(zhuǎn)向地址轉(zhuǎn)移的次數(shù)達(dá)到循環(huán)次數(shù)。
5.根據(jù)權(quán)利要求1所述的信息處理裝置,其特征在于包括所述轉(zhuǎn)移設(shè)定指令,其包括可指定循環(huán)次數(shù)的循環(huán)指令;所述轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)循環(huán)指令進(jìn)行譯碼,并將由循環(huán)指令指定的循環(huán)次數(shù)設(shè)定為循環(huán)計(jì)數(shù)器,直到達(dá)到循環(huán)次數(shù);所述讀取地址運(yùn)算電路,每當(dāng)發(fā)生向轉(zhuǎn)向地址轉(zhuǎn)移時(shí),其就對(duì)所述循環(huán)計(jì)數(shù)器中設(shè)定的值進(jìn)行減量,當(dāng)循環(huán)計(jì)數(shù)器的值變成0時(shí),對(duì)轉(zhuǎn)移發(fā)生地址增量指令長(zhǎng)度,并將已增量的值作為下次的讀取地址輸出。
6.根據(jù)權(quán)利要求2所述的信息處理裝置,其特征在于包括所述特定的轉(zhuǎn)移設(shè)定指令,其包括可以指定循環(huán)次數(shù)的循環(huán)指令;所述轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)循環(huán)指令進(jìn)行譯碼,并將由循環(huán)指令指定的循環(huán)次數(shù)設(shè)定為循環(huán)計(jì)數(shù)器,直到達(dá)到循環(huán)次數(shù);所述讀取地址運(yùn)算電路,每當(dāng)發(fā)生向轉(zhuǎn)向地址轉(zhuǎn)移時(shí),其就對(duì)所述循環(huán)計(jì)數(shù)器中設(shè)定的值進(jìn)行減量,當(dāng)循環(huán)計(jì)數(shù)器值變成0時(shí),對(duì)轉(zhuǎn)移發(fā)生地址增量指令長(zhǎng)度,并將已增量的值作為下次的讀取地址輸出。
7.根據(jù)權(quán)利要求3所述的信息處理裝置,其特征在于包括所述特定的轉(zhuǎn)移設(shè)定指令,其包括可以指定循環(huán)次數(shù)的循環(huán)指令;所述轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址,為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)循環(huán)指令進(jìn)行譯碼,并將由循環(huán)指令指定的循環(huán)次數(shù)設(shè)定為循環(huán)計(jì)數(shù)器,直到達(dá)到循環(huán)次數(shù);所述讀取地址運(yùn)算電路,每當(dāng)發(fā)生向轉(zhuǎn)向地址轉(zhuǎn)移時(shí),其就對(duì)所述循環(huán)計(jì)數(shù)器中設(shè)定的值進(jìn)行減量,當(dāng)循環(huán)計(jì)數(shù)器值變成0時(shí),對(duì)轉(zhuǎn)移發(fā)生地址增量指令長(zhǎng)度,將已增量的值作為下次的讀取地址輸出。
8.根據(jù)權(quán)利要求4所述的信息處理裝置,其特征在于包括所述特定的轉(zhuǎn)移設(shè)定指令,其包括可以指定循環(huán)次數(shù)的循環(huán)指令;所述轉(zhuǎn)移信息設(shè)定電路,當(dāng)?shù)竭_(dá)轉(zhuǎn)移發(fā)生地址時(shí),為了向轉(zhuǎn)向地址轉(zhuǎn)移,其對(duì)循環(huán)指令進(jìn)行譯碼,并將由循環(huán)指令指定的循環(huán)次數(shù)設(shè)定為循環(huán)計(jì)數(shù)器,直到達(dá)到循環(huán)次數(shù);所述讀取地址運(yùn)算電路,每當(dāng)發(fā)生向轉(zhuǎn)向地址轉(zhuǎn)移時(shí),其就對(duì)所述循環(huán)計(jì)數(shù)器中設(shè)定的值進(jìn)行減量,當(dāng)循環(huán)計(jì)數(shù)器的值變成0時(shí),對(duì)轉(zhuǎn)移發(fā)生地址增量指令長(zhǎng)度,將已增量的值作為下次的讀取地址輸出。
9.根據(jù)權(quán)利要求3所述的信息處理裝置,其特征在于包括所述循環(huán)指令的構(gòu)成是,轉(zhuǎn)向地址對(duì)于循環(huán)指令是相對(duì)固定的,轉(zhuǎn)向地址信息不需要在操作數(shù)中指定;所述轉(zhuǎn)移信息設(shè)定電路,其對(duì)相對(duì)于循環(huán)指令相對(duì)固定的值進(jìn)行運(yùn)算后,存儲(chǔ)到轉(zhuǎn)向地址保持寄存器。
10.根據(jù)權(quán)利要求4所述的信息處理裝置,其特征在于包括所述循環(huán)指令的構(gòu)成是,轉(zhuǎn)向地址對(duì)于循環(huán)指令是相對(duì)固定的,轉(zhuǎn)向地址信息不需要在操作數(shù)中指定,所述轉(zhuǎn)移信息設(shè)定電路,其對(duì)相對(duì)于循環(huán)相對(duì)固定的值進(jìn)行運(yùn)算后,存儲(chǔ)到轉(zhuǎn)向地址保持寄存器。
11.根據(jù)權(quán)利要求5中所述的信息處理裝置,其特征在于包括所述循環(huán)指令的構(gòu)成是,轉(zhuǎn)向地址對(duì)于循環(huán)指令是相對(duì)固定的,轉(zhuǎn)向地址信息不需要在操作數(shù)中指定,所述轉(zhuǎn)移信息設(shè)定電路,其對(duì)相對(duì)于循環(huán)指令相對(duì)固定的值進(jìn)行運(yùn)算后,存儲(chǔ)到轉(zhuǎn)向地址保持寄存器。
12.根據(jù)權(quán)利要求6中所述的信息處理裝置,其特征在于包括所述循環(huán)指令的構(gòu)成是,轉(zhuǎn)向地址對(duì)于循環(huán)指令是相對(duì)固定的,轉(zhuǎn)向地址信息不需要在操作數(shù)中指定;所述轉(zhuǎn)移信息設(shè)定電路,其對(duì)相對(duì)于循環(huán)指令相對(duì)固定的值進(jìn)行運(yùn)算后,存儲(chǔ)到轉(zhuǎn)向地址保持寄存器。
13.一種電子設(shè)備,其特征在于包括權(quán)利要求1所述的信息處理裝置;接收輸入信息的裝置;以及根據(jù)輸入信息,輸出所述信息處理裝置處理結(jié)果的裝置。
14.一種電子設(shè)備,其特征在于包括權(quán)利要求2所述的信息處理裝置;接收輸入信息的裝置;以及根據(jù)輸入信息輸出所述信息處理裝置處理結(jié)果的裝置。
15.一種電子設(shè)備,其特征在于包括權(quán)利要求3所述的信息處理裝置;接收輸入信息的裝置;以及根據(jù)輸入信息輸出所述信息處理裝置處理結(jié)果的裝置。
16.一種電子設(shè)備,其特征在于包括權(quán)利要求4所述的信息處理裝置;接收輸入信息的裝置;以及根據(jù)輸入信息輸出所述信息處理裝置處理結(jié)果的裝置。
17.一種電子設(shè)備,其特征在于包括權(quán)利要求5所述的信息處理裝置;接收輸入信息的裝置;以及根據(jù)輸入信息輸出所述信息處理裝置處理結(jié)果的裝置。
18.一種電子設(shè)備,其特征在于包括權(quán)利要求6所述的信息處理裝置;接收輸入信息裝置;以及根據(jù)輸入信息輸出所述信息處理裝置處理結(jié)果的裝置。
全文摘要
本發(fā)明提供了一種進(jìn)行流水線控制的信息處理裝置,在采用流水線體系結(jié)構(gòu)的信息處理裝置中,不會(huì)導(dǎo)致電路規(guī)模增大,并可減少轉(zhuǎn)移發(fā)生造成的耗時(shí)。該裝置包括指令隊(duì)列(30),其可以讀取多個(gè)指令碼;讀取地址運(yùn)算電路(40),其對(duì)讀取地址進(jìn)行運(yùn)算;讀取電路(20),其根據(jù)該讀取地址,把指令碼讀取到指令隊(duì)列;以及轉(zhuǎn)移信息設(shè)定電路(62),其對(duì)轉(zhuǎn)移設(shè)定指令進(jìn)行譯碼,并將轉(zhuǎn)移發(fā)生地址存儲(chǔ)到轉(zhuǎn)移發(fā)生地址保持寄存器,將轉(zhuǎn)向地址存儲(chǔ)到轉(zhuǎn)向地址保持寄存器,該讀取地址運(yùn)算電路(40),其判斷前一次讀取地址或者預(yù)讀取地址和轉(zhuǎn)移發(fā)生地址保持寄存器(42)中存儲(chǔ)的值是否相同,根據(jù)判斷結(jié)果,決定下面的讀取地址。
文檔編號(hào)G09G5/00GK1485741SQ03147
公開(kāi)日2004年3月31日 申請(qǐng)日期2003年6月23日 優(yōu)先權(quán)日2002年6月25日
發(fā)明者工藤真 申請(qǐng)人:精工愛(ài)普生株式會(huì)社