欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

處理器的制作方法

文檔序號(hào):6657152閱讀:297來(lái)源:國(guó)知局
專利名稱:處理器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種可在高動(dòng)作頻率下動(dòng)作的處理器,尤其是涉及可提高動(dòng)作頻率的處理器。
背景技術(shù)
現(xiàn)在具有一種處理器,在執(zhí)行加載指令時(shí),根據(jù)由該加載指令確定的數(shù)據(jù)的屬性,在對(duì)從存儲(chǔ)器輸出的數(shù)據(jù)執(zhí)行了配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)變換后,將其存儲(chǔ)在寄存器文件中(例如參照專利文獻(xiàn)1)。
圖1是表示現(xiàn)有的處理器構(gòu)成的圖。
如圖所示,處理器10具備指令譯碼電路11、存儲(chǔ)器讀出控制電路12、存儲(chǔ)器寫(xiě)入控制電路13、存儲(chǔ)器14、運(yùn)算器15、數(shù)據(jù)轉(zhuǎn)換電路20及寄存器文件30。并且,寄存器文件30具備多個(gè)僅由數(shù)據(jù)字段31構(gòu)成的寄存器。另外,使用寄存器序號(hào)(Reg#0~Reg#N)管理數(shù)據(jù)字段31。
指令譯碼電路11根據(jù)譯碼的指令輸出信號(hào)。例如,(a)在譯碼的指令是加載指令時(shí),生成由該加載指令附加了特征的信號(hào)(以下稱為加載指令譯碼信號(hào)。),并輸出到存儲(chǔ)器讀出控制電路12和數(shù)據(jù)轉(zhuǎn)換電路20。(b)在譯碼的指令是運(yùn)算指令時(shí),生成由該運(yùn)算指令附加了特征的信號(hào)(以下稱為運(yùn)算指令譯碼信號(hào)。),并輸出到運(yùn)算器1 5和數(shù)據(jù)轉(zhuǎn)換電路20。(c)在譯碼的指令是存儲(chǔ)指令時(shí),生成由該存儲(chǔ)指令附加了特征的信號(hào)(以下稱為存儲(chǔ)指令譯碼信號(hào)。),并輸出到存儲(chǔ)器寫(xiě)入控制電路13。
所謂的「加載指令」是指從存儲(chǔ)器加載數(shù)據(jù)的指令。
所謂的「存儲(chǔ)指令」是指向存儲(chǔ)器存儲(chǔ)數(shù)據(jù)的指令。
所謂的「運(yùn)算指令」是指執(zhí)行運(yùn)算處理的指令。
在加載指令譯碼信號(hào)中包含訪問(wèn)存儲(chǔ)器14并讀出數(shù)據(jù)所需的地址、數(shù)據(jù)大小、及數(shù)據(jù)類型等信息。
在運(yùn)算指令譯碼信號(hào)中包含確定運(yùn)算處理內(nèi)容的信息。
在存儲(chǔ)指令譯碼信號(hào)中包含訪問(wèn)存儲(chǔ)器14并寫(xiě)入數(shù)據(jù)所需的地址、數(shù)據(jù)大小、及數(shù)據(jù)類型等信息。
存儲(chǔ)器讀出控制電路12根據(jù)從指令譯碼電路11輸出的加載指令譯碼信號(hào),將由該加載指令譯碼信號(hào)附加了特征的信號(hào)(以下稱為存儲(chǔ)器讀出控制信號(hào)。)輸出到存儲(chǔ)器14。
存儲(chǔ)器寫(xiě)入控制電路13根據(jù)從指令譯碼電路11輸出的存儲(chǔ)指令譯碼信號(hào),將由該存儲(chǔ)指令譯碼信號(hào)附加了特征的信號(hào)(以下稱為存儲(chǔ)器寫(xiě)入控制信號(hào)。)輸出到存儲(chǔ)器14。
存儲(chǔ)器14根據(jù)從存儲(chǔ)器讀出控制電路12輸出的存儲(chǔ)器讀出控制信號(hào),將由該存儲(chǔ)器讀出控制信號(hào)確定的數(shù)據(jù)存儲(chǔ)到寄存器文件30。另外,根據(jù)從存儲(chǔ)器寫(xiě)入控制電路13輸出的存儲(chǔ)器寫(xiě)入控制信號(hào),從寄存器文件30中讀出由該存儲(chǔ)器寫(xiě)入控制信號(hào)確定的數(shù)據(jù)。
另外,從存儲(chǔ)器14讀出的數(shù)據(jù),在數(shù)據(jù)轉(zhuǎn)換電路20中被執(zhí)行了配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)變換后,被存儲(chǔ)在寄存器文件30中。
運(yùn)算器15根據(jù)從指令譯碼電路11輸出的運(yùn)算指令譯碼信號(hào),從寄存器文件30中讀出由該運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù),并對(duì)該數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理。然后,將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)到寄存器文件30。
圖2是表示數(shù)據(jù)變換電路的構(gòu)成的圖。
如圖所示,這里,作為一例,數(shù)據(jù)變換電路20具備排序部21、零擴(kuò)展部22、代碼擴(kuò)展部23、選擇器24等。
排序部21對(duì)從存儲(chǔ)器14輸出的數(shù)據(jù)施行排序處理,并將處理后的數(shù)據(jù)輸出到零擴(kuò)展部22和代碼擴(kuò)展部23。
所謂「排序處理」是指,使M(M為自然數(shù)。)位數(shù)據(jù)的部分位串與最低位的位一致地排列并輸出。例如,在輸入32位數(shù)據(jù)的第8位到第15位的部分位串時(shí),輸出從第0位排列至第7位的位串。
零擴(kuò)展部22對(duì)從排序部21輸出的數(shù)據(jù)施行零擴(kuò)展處理,并將處理后的數(shù)據(jù)輸出到選擇器24。
所謂「零擴(kuò)展處理」是指,在將M(M是自然數(shù)。)位的數(shù)據(jù)擴(kuò)展到N(N是比M大的自然數(shù)。)位的數(shù)據(jù)時(shí),使從第M-1位到最高位的位為「0」并輸出。
代碼擴(kuò)展部23對(duì)從排序部21輸出的數(shù)據(jù)施行代碼擴(kuò)展處理,并將處理后的數(shù)據(jù)輸出到選擇器24。
所謂「代碼擴(kuò)展處理」是指,在將M(M是自然數(shù)。)位的數(shù)據(jù)擴(kuò)展到N(N是比M大的自然數(shù)。)位的數(shù)據(jù)時(shí),使從第M-1位到最高位的位為「M位數(shù)據(jù)的代碼位的值」并輸出。
選擇器24根據(jù)從指令譯碼電路11輸出的加載指令譯碼信號(hào),選擇從存儲(chǔ)器14輸出的數(shù)據(jù)、從零擴(kuò)展部22輸出的數(shù)據(jù)、從代碼擴(kuò)展部23輸出的數(shù)據(jù)之一,并輸出到寄存器文件30。
專利文獻(xiàn)1特開(kāi)平9-269895號(hào)公報(bào)但是,在所述的現(xiàn)有的技術(shù)中,存在如下問(wèn)題當(dāng)從存儲(chǔ)器14將數(shù)據(jù)輸出到寄存器文件30時(shí),因需要通過(guò)數(shù)據(jù)轉(zhuǎn)換電路20,所以在存儲(chǔ)器14和寄存器文件30之間產(chǎn)生的延遲增加,在進(jìn)行以高動(dòng)作頻率動(dòng)作的處理器的開(kāi)發(fā)上,該延遲成為弊病。

發(fā)明內(nèi)容
因此,本發(fā)明是鑒于上述問(wèn)題而進(jìn)行的,其目的在于提供一種處理器,削減在存儲(chǔ)器和寄存器文件之間產(chǎn)生的延遲,可以高動(dòng)作頻率動(dòng)作。
為了實(shí)現(xiàn)所述目的,本發(fā)明的處理器,具備(a)具有多個(gè)寄存器的寄存器文件;(b)生成表示數(shù)據(jù)屬性的標(biāo)記值的生成單元,(c)所述各寄存器具有保持?jǐn)?shù)據(jù)的數(shù)據(jù)字段和保持所述標(biāo)記值的標(biāo)記字段,(d)所述生成單元在執(zhí)行從存儲(chǔ)器加載到寄存器的加載指令時(shí),根據(jù)所述加載指令生成所述標(biāo)記值,并存儲(chǔ)在所述標(biāo)記字段中。
由此,存儲(chǔ)在數(shù)據(jù)字段中的數(shù)據(jù),在執(zhí)行進(jìn)行運(yùn)算處理的指令、從寄存器文件將數(shù)據(jù)存儲(chǔ)到存儲(chǔ)器的存儲(chǔ)指令時(shí),可根據(jù)表示數(shù)據(jù)屬性的標(biāo)記值執(zhí)行數(shù)據(jù)轉(zhuǎn)換,不必在存儲(chǔ)器和寄存器文件之間執(zhí)行配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)轉(zhuǎn)換。
另外,本發(fā)明不只是作為處理器被實(shí)現(xiàn),也可以作為控制處理器的方法(以下稱為控制方法)等來(lái)實(shí)現(xiàn)。另外,也可以作為組裝了由處理器提供的功能(以下稱為處理器功能。)的LSI、在FPGA、CPLD等可編程邏輯器件中形成處理器功能的IP核心程序(以下稱為處理器核心程序。)、及記錄了處理器核心程序的記錄媒體等來(lái)實(shí)現(xiàn)。
發(fā)明效果如上所述,根據(jù)本發(fā)明的處理器,能夠提供一種處理器,在從存儲(chǔ)器將數(shù)據(jù)輸出到寄存器文件時(shí),因不需要通過(guò)數(shù)據(jù)轉(zhuǎn)換電路,所以削減在存儲(chǔ)器和寄存器文件之間產(chǎn)生的延遲,可以高動(dòng)作頻率動(dòng)作。
另外,還提供一種處理器,由于可容易處理比分配給一個(gè)寄存器序號(hào)的寄存器的大小大的數(shù)據(jù),所以可提高數(shù)據(jù)處理能力。


圖1是表示現(xiàn)有的處理器的構(gòu)成的圖。
圖2是表示數(shù)據(jù)轉(zhuǎn)換電路的構(gòu)成的圖。
圖3是表示實(shí)施方式1的處理器的構(gòu)成的圖。
圖4是表示作為一例、實(shí)施方式1的寄存器文件的構(gòu)成的圖。
圖5是表示作為一例、實(shí)施方式1的寄存器的數(shù)據(jù)結(jié)構(gòu)的圖。
圖6A是表示在實(shí)施方式1的數(shù)據(jù)轉(zhuǎn)換電路中數(shù)據(jù)轉(zhuǎn)換的實(shí)例的第1圖。
圖6B是表示在實(shí)施方式1的數(shù)據(jù)轉(zhuǎn)換電路中數(shù)據(jù)轉(zhuǎn)換的實(shí)例的第2圖。
圖6C是表示在實(shí)施方式1的數(shù)據(jù)轉(zhuǎn)換電路中數(shù)據(jù)轉(zhuǎn)換的實(shí)例的第3圖。
圖7是表示實(shí)施方式1的處理器動(dòng)作的第1圖。
圖8A是表示實(shí)施方式1的處理器動(dòng)作的第2圖。
圖8B是表示實(shí)施方式1的處理器動(dòng)作的第3圖。
圖8C是表示實(shí)施方式1的處理器動(dòng)作的第4圖。
圖9是表示實(shí)施方式2的處理器的構(gòu)成的圖。
圖10是表示作為一例、實(shí)施方式2的寄存器文件的構(gòu)成的圖。
圖11是表示實(shí)施方式2的處理器動(dòng)作的第1圖。
圖12A是表示實(shí)施方式2的處理器動(dòng)作的第2圖。
圖12B是表示實(shí)施方式2的處理器動(dòng)作的第3圖。
圖13是表示實(shí)施方式3的處理器的構(gòu)成的圖。
圖14是表示作為一例、實(shí)施方式3的運(yùn)算器的構(gòu)成的圖。
圖15A是表示實(shí)施方式3的處理器的動(dòng)作的圖。
圖15B是表示實(shí)施方式3的處理器的動(dòng)作的圖。
圖16是表示實(shí)施方式4的處理器的構(gòu)成的圖。
圖17是表示作為一例、實(shí)施方式4的運(yùn)算器的構(gòu)成的圖。
圖18是表示實(shí)施方式4的處理器動(dòng)作的第1圖。
圖19是表示實(shí)施方式4的處理器動(dòng)作的第2圖。
圖20是表示實(shí)施方式5的處理器的構(gòu)成的圖。
圖21是表示作為一例、實(shí)施方式5的運(yùn)算器的構(gòu)成的圖。
圖22是表示作為一例、實(shí)施方式5的寄存器的數(shù)據(jù)結(jié)構(gòu)的圖。
圖23是表示實(shí)施方式5的處理器動(dòng)作的第1圖。
圖24是表示實(shí)施方式5的處理器動(dòng)作的第2圖。
圖25是表示實(shí)施方式5的處理器動(dòng)作的第3圖。
圖26是表示實(shí)施方式6的處理器的構(gòu)成的圖。
圖27是表示作為一例、實(shí)施方式6的運(yùn)算器的構(gòu)成的圖。
圖28是表示實(shí)施方式6的處理器動(dòng)作的第1圖。
圖29是表示實(shí)施方式6的處理器動(dòng)作的第2圖。
符號(hào)說(shuō)明10處理器11指令譯碼電路12存儲(chǔ)器讀出控制電路13存儲(chǔ)器寫(xiě)入控制電路14存儲(chǔ)器15運(yùn)算器20數(shù)據(jù)轉(zhuǎn)換電路
21排序部22零擴(kuò)展部23代碼擴(kuò)展部24選擇器30寄存器文件31數(shù)據(jù)字段Reg#0~Reg#N寄存器100,200處理器101指令譯碼電路102標(biāo)記值生成電路110,210寄存器文件111,211標(biāo)記字段112,212數(shù)據(jù)字段113,213數(shù)據(jù)屬性判斷電路114,214數(shù)據(jù)轉(zhuǎn)換電路121,221排序部122,222零擴(kuò)展部123,223代碼擴(kuò)展部124,224選擇器300,400處理器310,410寄存器文件311,411標(biāo)記字段312,412數(shù)據(jù)字段320,420運(yùn)算器321,421數(shù)據(jù)屬性判斷電路322,422運(yùn)算處理電路330存儲(chǔ)器寫(xiě)入控制電路331數(shù)據(jù)屬性判斷電路332數(shù)據(jù)轉(zhuǎn)換電路
341,441排序部342,442零擴(kuò)展部343,443代碼擴(kuò)展部344,444選擇器345,445加法器401指令譯碼電路402標(biāo)記值生成電路500,600處理器510,610寄存器文件520,620運(yùn)算器530存儲(chǔ)器寫(xiě)入控制電路531數(shù)據(jù)屬性判斷電路532數(shù)據(jù)轉(zhuǎn)換電路541,641選擇器542,642加法器543,643選擇器具體實(shí)施方式
(實(shí)施方式1)下面,參照

本發(fā)明的實(shí)施方式1。
實(shí)施方式1的處理器的特征在于,在從寄存器文件將數(shù)據(jù)輸出到運(yùn)算器之前執(zhí)行配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)轉(zhuǎn)換,代替在存儲(chǔ)器和寄存器文件之間執(zhí)行。
根據(jù)以上的觀點(diǎn),說(shuō)明本發(fā)明實(shí)施方式1的處理器。
圖3是表示實(shí)施方式1的處理器的構(gòu)成的圖。
如圖所示,處理器100具備存儲(chǔ)器讀出控制電路12、存儲(chǔ)器寫(xiě)入控制電路13、存儲(chǔ)器14、運(yùn)算器15。并且,具備指令譯碼電路101、標(biāo)記值生成電路102、寄存器文件110。
指令譯碼電路110根據(jù)譯碼的指令輸出信號(hào)。例如,(a)在譯碼的指令是加載指令時(shí),生成由該加載指令附加了特征的信號(hào)(下面稱為加載指令譯碼信號(hào)。),并輸出到存儲(chǔ)器讀出控制電路12和標(biāo)記值生成電路102。(b)在譯碼的指令是運(yùn)算指令時(shí),生成由該運(yùn)算指令附加了特征的信號(hào)(下面稱為運(yùn)算指令譯碼信號(hào)。),并輸出到運(yùn)算器15和標(biāo)記值生成電路102。(c)在譯碼的指令是存儲(chǔ)指令時(shí),生成由該存儲(chǔ)指令附加了特征的信號(hào)(下面稱為存儲(chǔ)指令譯碼信號(hào)),并輸出到存儲(chǔ)器寫(xiě)入控制電路13。
所謂「加載指令」是指從存儲(chǔ)器加載數(shù)據(jù)的指令。
所謂「存儲(chǔ)指令」是指向存儲(chǔ)器存儲(chǔ)數(shù)據(jù)的指令。
所謂「運(yùn)算指令」是指執(zhí)行運(yùn)算處理的指令。
在加載指令譯碼信號(hào)中包含訪問(wèn)存儲(chǔ)器14并讀出數(shù)據(jù)所需的地址、數(shù)據(jù)大小、及數(shù)據(jù)類型等的信息。
在運(yùn)算指令譯碼信號(hào)中包含確定運(yùn)算處理的內(nèi)容的信息。
在存儲(chǔ)指令譯碼信號(hào)中包含訪問(wèn)存儲(chǔ)器14并寫(xiě)入數(shù)據(jù)所需的地址、數(shù)據(jù)大小、及數(shù)據(jù)類型等的信息。
標(biāo)記值生成電路102根據(jù)從指令譯碼電路101輸出的加載指令譯碼信號(hào),生成表示由該加載指令譯碼信號(hào)存儲(chǔ)在寄存器文件110中的數(shù)據(jù)的屬性的標(biāo)記值,并將生成的標(biāo)記值與該數(shù)據(jù)對(duì)應(yīng)地存儲(chǔ)在寄存器文件110中。另外,根據(jù)從指令譯碼電路101輸出的運(yùn)算指令譯碼信號(hào),生成表示由該運(yùn)算指令譯碼信號(hào)存儲(chǔ)在寄存器文件110中的數(shù)據(jù)的屬性的標(biāo)記值,并將生成的標(biāo)記值與該數(shù)據(jù)對(duì)應(yīng)地存儲(chǔ)在寄存器文件110中。
另外,標(biāo)記值顯示與該標(biāo)記值對(duì)應(yīng)的數(shù)據(jù)的屬性。另外,在屬性中包含數(shù)據(jù)大小、數(shù)據(jù)類型、構(gòu)成數(shù)據(jù)的各位的有效或無(wú)效的信息。
寄存器文件110具備多個(gè)由標(biāo)記字段111和數(shù)據(jù)字段112構(gòu)成的寄存器。并且,具備數(shù)據(jù)屬性判斷電路113和數(shù)據(jù)轉(zhuǎn)換電路114。
在標(biāo)記字段111中存儲(chǔ)標(biāo)記值,在數(shù)據(jù)字段112中存儲(chǔ)與該標(biāo)記值對(duì)應(yīng)的數(shù)據(jù)。
另外,數(shù)據(jù)字段112和標(biāo)記字段111具有1對(duì)1的對(duì)應(yīng)關(guān)系,并通過(guò)寄存器序號(hào)(Reg#0~Reg#N)管理。
數(shù)據(jù)屬性判斷電路113在從數(shù)據(jù)字段112讀出數(shù)據(jù)時(shí),從標(biāo)記字段111讀出與該數(shù)據(jù)對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。然后,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到數(shù)據(jù)轉(zhuǎn)換電路114。
數(shù)據(jù)轉(zhuǎn)換電路114在從數(shù)據(jù)字段112讀出數(shù)據(jù)時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換該數(shù)據(jù)。在判斷的結(jié)果為轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換讀出的數(shù)據(jù),并輸出轉(zhuǎn)換后的數(shù)據(jù)。在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換讀出的數(shù)據(jù)地直接輸出。
存儲(chǔ)器讀出控制電路12根據(jù)從指令譯碼電路101輸出的加載指令譯碼信號(hào),將由該加載指令譯碼信號(hào)附加了特征的信號(hào)(以下稱為存儲(chǔ)器讀出控制信號(hào)。)輸出到存儲(chǔ)器14。
存儲(chǔ)器寫(xiě)入控制電路13根據(jù)從指令譯碼電路101輸出的存儲(chǔ)指令譯碼信號(hào),將由該存儲(chǔ)指令譯碼信號(hào)附加了特征的信號(hào)(以下稱為存儲(chǔ)器寫(xiě)入控制信號(hào)。)輸出到存儲(chǔ)器14。
存儲(chǔ)器14根據(jù)從存儲(chǔ)器讀出控制電路12輸出的存儲(chǔ)器讀出控制信號(hào),將由該存儲(chǔ)器讀出控制信號(hào)確定的數(shù)據(jù)存儲(chǔ)到寄存器文件110。另外,根據(jù)從存儲(chǔ)器寫(xiě)入控制電路13輸出的存儲(chǔ)器寫(xiě)入控制信號(hào),從寄存器文件110中讀出由該存儲(chǔ)器寫(xiě)入控制信號(hào)確定的數(shù)據(jù)。
另外,從存儲(chǔ)器14讀出的數(shù)據(jù),不執(zhí)行配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)轉(zhuǎn)換地存儲(chǔ)到寄存器文件110。
運(yùn)算器15根據(jù)從指令譯碼電路101輸出的運(yùn)算指令譯碼信號(hào),從寄存器文件110讀出由該運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù),并對(duì)該數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理。然后將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)到寄存器文件110。
下面,作為一例,說(shuō)明實(shí)施方式1的寄存器文件的構(gòu)成。
這里,以如下情況為例進(jìn)行說(shuō)明對(duì)從寄存器(Reg#0)讀出的數(shù)據(jù)執(zhí)行運(yùn)算處理,并將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)、即運(yùn)算結(jié)果存儲(chǔ)到寄存器(Reg#1)。
圖4是表示作為一例、實(shí)施方式1的寄存器文件的構(gòu)成的圖。
如圖所示,數(shù)據(jù)屬性判斷電路113從寄存器(Reg#0)的標(biāo)記字段111讀出標(biāo)記值,并根據(jù)讀出的標(biāo)記值,判斷從寄存器(Reg#0)的數(shù)據(jù)字段112讀出的數(shù)據(jù)屬性。然后,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到選擇器124等。
與此相對(duì),排序部121對(duì)從寄存器(Reg#0)的數(shù)據(jù)字段112輸出的數(shù)據(jù)施行排序處理,并將處理后的數(shù)據(jù)輸出到零擴(kuò)展部122和代碼擴(kuò)展部123。
所謂「排序處理」是指,使M(M是自然數(shù)。)位的數(shù)據(jù)的部分位串與最低位的位一致地排列并輸出的處理。例如,在輸入32位數(shù)據(jù)的第8位到第15位的部分位串時(shí),輸出從第0位排列至第7位的位串。
零擴(kuò)展部122對(duì)從排序部121輸出的數(shù)據(jù)施行零擴(kuò)展處理,并將處理后的數(shù)據(jù)輸出到選擇器124。
所謂「零擴(kuò)展處理」是指,在將M(M是自然數(shù)。)位的數(shù)據(jù)擴(kuò)展到N(N是比M大的自然數(shù)。)位的數(shù)據(jù)時(shí),使從第M-1位到最高位的位為「0」并輸出的處理。
代碼擴(kuò)展部123對(duì)從排序部121輸出的數(shù)據(jù)施行代碼擴(kuò)展處理,并將處理后的數(shù)據(jù)輸出到選擇器124。
所謂「代碼擴(kuò)展處理」是指,在將M(M是自然數(shù)。)位的數(shù)據(jù)擴(kuò)展到N(N是比M大的自然數(shù)。)位的數(shù)據(jù)時(shí),使從第M-1位到最高位的位為「M位數(shù)據(jù)的代碼位的值」并輸出的處理。
選擇器124根據(jù)從數(shù)據(jù)屬性判斷電路113輸出的數(shù)據(jù)屬性判斷信號(hào),選擇從寄存器(Reg#0)的數(shù)據(jù)字段112輸出的數(shù)據(jù)、從零擴(kuò)展部122輸出的數(shù)據(jù)、從代碼擴(kuò)展部123輸出的數(shù)據(jù)之一,并輸出到運(yùn)算器15。
然后,運(yùn)算器15對(duì)從選擇器124輸出的數(shù)據(jù)執(zhí)行運(yùn)算處理,并將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)、即運(yùn)算結(jié)果存儲(chǔ)到寄存器(Reg#1)的數(shù)據(jù)字段112。
下面,作為一例,說(shuō)明實(shí)施方式1的寄存器的數(shù)據(jù)結(jié)構(gòu)。
圖5是表示作為一例、實(shí)施方式1的寄存器的數(shù)據(jù)結(jié)構(gòu)的圖。
如圖所示,寄存器由8位的標(biāo)記字段151和32位的數(shù)據(jù)字段構(gòu)成。
標(biāo)記字段151的第0位至第3位的低位4位表示有效位、即從數(shù)據(jù)字段152的何處開(kāi)始存儲(chǔ)有數(shù)據(jù)。例如,(a)在為「1000」時(shí),表示從第3位串(第31位)開(kāi)始存儲(chǔ)。(b)在為「0100」時(shí),表示從第2位串(第23位)開(kāi)始存儲(chǔ)。(c)在為「0010」時(shí),表示從第1位串(第15位)開(kāi)始存儲(chǔ)。(d)在為「0001」時(shí),表示從第0位串(第7位)開(kāi)始存儲(chǔ)。
標(biāo)記字段151的第4位至第5位的2位表示存儲(chǔ)在數(shù)據(jù)字段152中的數(shù)據(jù)的大小。例如,(a)在為「00」時(shí)表示32位,(b)在為「01」時(shí)表示16位,(c)在為「10」時(shí)表示8位。另外,「11」為空。
標(biāo)記字段151的第6位表示存儲(chǔ)在數(shù)據(jù)字段152中的數(shù)據(jù)是否是有代碼的數(shù)據(jù)。例如,(a)在為「0」時(shí),表示是無(wú)代碼的數(shù)據(jù),(b)在為「1」時(shí),表示是有代碼的數(shù)據(jù)。
標(biāo)記字段151的第7位表示存儲(chǔ)在數(shù)據(jù)字段152中的數(shù)據(jù)是否是執(zhí)行了配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)轉(zhuǎn)換的數(shù)據(jù)。例如,(a)在為「0」時(shí),表示是轉(zhuǎn)換結(jié)束、即是轉(zhuǎn)換后的數(shù)據(jù),(b)在為「1」時(shí),表示是轉(zhuǎn)換未結(jié)束、即是轉(zhuǎn)換前的數(shù)據(jù)。
下面,說(shuō)明在實(shí)施方式1的數(shù)據(jù)轉(zhuǎn)換電路中數(shù)據(jù)轉(zhuǎn)換的實(shí)例。
圖6A~圖6C是表示在實(shí)施方式1的數(shù)據(jù)轉(zhuǎn)換電路中數(shù)據(jù)轉(zhuǎn)換的實(shí)例的圖。
如圖所示,數(shù)據(jù)轉(zhuǎn)換電路114根據(jù)下述(1)~(3)的情況不同,數(shù)據(jù)轉(zhuǎn)換的內(nèi)容不同。
(1)在執(zhí)行指令161a(mov Reg,Mem)、并從存儲(chǔ)器162b讀出了32位的數(shù)據(jù)時(shí),數(shù)據(jù)轉(zhuǎn)換電路114不轉(zhuǎn)換。即,將32位的數(shù)據(jù)存儲(chǔ)到32位的寄存器163b中。(參照?qǐng)D6A。)。
(2)在執(zhí)行指令161b(movb Reg,Mem)、并從存儲(chǔ)器162b中讀出了32位中從第1位串開(kāi)始有效的8位數(shù)據(jù)時(shí),數(shù)據(jù)轉(zhuǎn)換電路114將其轉(zhuǎn)換為與最低位的位一致地排列并進(jìn)行了零擴(kuò)展的數(shù)據(jù)。然后,將轉(zhuǎn)換后的數(shù)據(jù)存儲(chǔ)在32位的寄存器163b中。(參照?qǐng)D6B。)。
(3)在執(zhí)行指令161c(movbex Reg,Mem)、并從存儲(chǔ)器162b中讀出了32位中從第1位串開(kāi)始有效的8位數(shù)據(jù)時(shí),數(shù)據(jù)轉(zhuǎn)換電路114將其轉(zhuǎn)換成與最低位的位一致地排列并進(jìn)行了代碼擴(kuò)展的數(shù)據(jù)。然后,將轉(zhuǎn)換后的數(shù)據(jù)存儲(chǔ)在32位的寄存器163c中。(參照?qǐng)D6C。)。
下面,說(shuō)明實(shí)施方式1的處理器的動(dòng)作。
圖7、圖8A~圖8C是表示實(shí)施方式1的處理器的動(dòng)作的圖。
如圖7所示,指令譯碼電路101根據(jù)譯碼的指令,執(zhí)行下述(1)~(3)之一(步驟S101)。
(1)指令譯碼電路101在譯碼的指令是加載指令時(shí),將加載指令譯碼信號(hào)輸出到存儲(chǔ)器讀出控制電路12和標(biāo)記值生成電路102(步驟S111)。
與之對(duì)應(yīng),存儲(chǔ)器讀出控制電路12將存儲(chǔ)器讀出控制信號(hào)輸出到存儲(chǔ)器14(步驟S112)。存儲(chǔ)器14將由存儲(chǔ)器讀出控制信號(hào)確定的數(shù)據(jù)存儲(chǔ)到寄存器文件110(步驟S113)。另一方面,標(biāo)記值生成電路102將表示由加載指令譯碼信號(hào)存儲(chǔ)在寄存器文件110中的數(shù)據(jù)的屬性的標(biāo)記值,與該數(shù)據(jù)相對(duì)應(yīng)地存儲(chǔ)到寄存器文件110(步驟S114)。
這時(shí),如圖8所示,寄存器文件110將由加載指令譯碼信號(hào)確定的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)字段112(步驟S121),并將與該數(shù)據(jù)對(duì)應(yīng)的標(biāo)記值存儲(chǔ)到標(biāo)記字段111(步驟S122)。
(2)指令譯碼電路101在譯碼的指令是運(yùn)算指令時(shí),將運(yùn)算指令譯碼信號(hào)輸出到運(yùn)算器15和標(biāo)記值生成電路102(步驟S131)。
與之對(duì)應(yīng),運(yùn)算器15從寄存器文件110讀出由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)(步驟S132),并對(duì)讀出的數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理(步驟S133)。然后,將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)到寄存器文件110(步驟S134)。另一方面,標(biāo)記值生成電路102將表示由運(yùn)算指令譯碼信號(hào)存儲(chǔ)在寄存器文件110中的數(shù)據(jù)的屬性的標(biāo)記值,與執(zhí)行運(yùn)算處理得到的數(shù)據(jù)相對(duì)應(yīng)地存儲(chǔ)到寄存器文件110(步驟S135)。
這時(shí),如圖8B所示,寄存器文件110在數(shù)據(jù)屬性判斷電路113中,根據(jù)與由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,判斷該數(shù)據(jù)的屬性(步驟S141),并將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到數(shù)據(jù)轉(zhuǎn)換電路114(步驟S142)。然后,在數(shù)據(jù)轉(zhuǎn)換電路114中根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換該數(shù)據(jù)(步驟S143)。在判斷的結(jié)果為轉(zhuǎn)換時(shí)(步驟S143是),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換該數(shù)據(jù)(步驟S144),并將轉(zhuǎn)換后的數(shù)據(jù)輸出到運(yùn)算器15(步驟S145)。
另外,在為不轉(zhuǎn)換時(shí)(步驟S143否),不轉(zhuǎn)換由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)地直接輸出到運(yùn)算器15。
(3)指令譯碼電路101在譯碼的指令是存儲(chǔ)指令時(shí),將存儲(chǔ)指令譯碼信號(hào)輸出到存儲(chǔ)器寫(xiě)入控制電路13(步驟S151)。
與之對(duì)應(yīng),存儲(chǔ)器寫(xiě)入控制電路13將存儲(chǔ)器寫(xiě)入控制信號(hào)輸出到存儲(chǔ)器14(步驟S152)。存儲(chǔ)器14從寄存器文件110讀出由存儲(chǔ)器寫(xiě)入控制信號(hào)確定的數(shù)據(jù)(步驟S153)。
這時(shí),如圖8C所示,寄存器文件110在數(shù)據(jù)屬性判斷電路113中,根據(jù)與由存儲(chǔ)指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,判斷該數(shù)據(jù)的屬性(步驟S161),并將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到數(shù)據(jù)變換電路114(步驟S162)。然后,在數(shù)據(jù)轉(zhuǎn)換電路114中,根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換該數(shù)據(jù)(步驟S163)。在判斷的結(jié)果為轉(zhuǎn)換時(shí)(步驟S163是),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換該數(shù)據(jù)(步驟S164),并將轉(zhuǎn)換后的數(shù)據(jù)輸出到存儲(chǔ)器14(步驟S165)。
另外,在為不轉(zhuǎn)換時(shí)(步驟S163否),不轉(zhuǎn)換由存儲(chǔ)器寫(xiě)入控制信號(hào)確定的數(shù)據(jù)地輸出到存儲(chǔ)器14。
根據(jù)如上所述的實(shí)施方式1的處理器100,在寄存器文件110中具備標(biāo)記字段111、數(shù)據(jù)字段112、數(shù)據(jù)屬性判斷電路113及數(shù)據(jù)轉(zhuǎn)換電路114。
由此,可在將數(shù)據(jù)從寄存器文件110輸出到運(yùn)算器15之前,進(jìn)行配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)變換,代替在存儲(chǔ)器14和寄存器文件110之間執(zhí)行,并可削減在存儲(chǔ)器14和寄存器文件110之間產(chǎn)生的延遲。并且,由于運(yùn)算器15能夠通用現(xiàn)有的運(yùn)算器,所以設(shè)計(jì)也容易。
(實(shí)施方式2)下面,參照

本發(fā)明的實(shí)施方式2。
實(shí)施方式2的處理器的特征在于,在將數(shù)據(jù)從寄存器文件輸出到運(yùn)算器之前,在寄存器文件的內(nèi)部進(jìn)行配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)轉(zhuǎn)換,代替在存儲(chǔ)器和寄存器文件之間進(jìn)行。
根據(jù)以上的觀點(diǎn),說(shuō)明實(shí)施方式2的處理器。
另外,對(duì)與實(shí)施方式1相同的構(gòu)成要素附加相同符號(hào),并省略說(shuō)明。
圖9是表示實(shí)施方式2的處理器的構(gòu)成的圖。
如圖所示,處理器200與實(shí)施方式1的處理器100相比,不同之處在于具備寄存器文件210代替寄存器文件110(參照?qǐng)D3。)。
寄存器文件210與寄存器文件110相比,不同之處在于具備標(biāo)記字段211、數(shù)據(jù)字段212、數(shù)據(jù)屬性判斷電路213、數(shù)據(jù)轉(zhuǎn)換電路214,代替標(biāo)記字段111、數(shù)據(jù)字段112、數(shù)據(jù)屬性判斷電路113、數(shù)據(jù)轉(zhuǎn)換電路114。
數(shù)據(jù)屬性判斷電路213,當(dāng)重新將數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)字段212時(shí),從標(biāo)記字段211中讀出與該數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。然后,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到數(shù)據(jù)轉(zhuǎn)換電路214。并且,根據(jù)該判斷結(jié)果判斷是否轉(zhuǎn)換該標(biāo)記值。在判斷的結(jié)果為轉(zhuǎn)換時(shí),根據(jù)該判斷結(jié)果轉(zhuǎn)換該標(biāo)記值,并將轉(zhuǎn)換后的標(biāo)記值存儲(chǔ)到寄存器文件210,以將轉(zhuǎn)換前的標(biāo)記值置換為轉(zhuǎn)換后的標(biāo)記值。
數(shù)據(jù)轉(zhuǎn)換電路214,當(dāng)重新將數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)字段212時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換該數(shù)據(jù)。在判斷的結(jié)果為轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換該數(shù)據(jù),并將轉(zhuǎn)換后的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)字段212。在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換該數(shù)據(jù)。
下面,作為一例,說(shuō)明實(shí)施方式2的寄存器文件的構(gòu)成。
這里,以對(duì)從存儲(chǔ)器(Reg#0)讀出的數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,并將轉(zhuǎn)換后的數(shù)據(jù)存儲(chǔ)到寄存器(Reg#0)的情況為例進(jìn)行說(shuō)明。
圖10是表示作為一例、實(shí)施方式2的寄存器文件的構(gòu)成的圖。
如圖所示,數(shù)據(jù)屬性判斷電路213從寄存器(Reg#0)的標(biāo)記字段211讀出標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷從寄存器(Reg#0)的數(shù)據(jù)字段212讀出的數(shù)據(jù)的屬性。然后,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到選擇器224。
與此相對(duì),排序部221對(duì)從寄存器(Reg#0)的數(shù)據(jù)字段212輸出的數(shù)據(jù)施行排序處理,并將處理后的數(shù)據(jù)輸出到零擴(kuò)展部222和代碼擴(kuò)展部223。
另外,由于零擴(kuò)展部222和代碼擴(kuò)展部223與實(shí)施方式1的零擴(kuò)展部122和代碼擴(kuò)展部123構(gòu)成相同,所以省略說(shuō)明。
選擇器224根據(jù)從數(shù)據(jù)屬性判斷電路213輸出的數(shù)據(jù)屬性判斷信號(hào),選擇從寄存器(Reg#0)的數(shù)據(jù)字段212輸出的數(shù)據(jù)、從零擴(kuò)展部222輸出的數(shù)據(jù)、從代碼擴(kuò)展部223輸出的數(shù)據(jù)之一,并存儲(chǔ)到寄存器(Reg#0)的數(shù)據(jù)字段112。
并且,數(shù)據(jù)屬性判斷電路213轉(zhuǎn)換讀出的標(biāo)記值,并將轉(zhuǎn)換后的標(biāo)記值存儲(chǔ)到寄存器(Reg#0)的標(biāo)記字段212。
然后,運(yùn)算器15對(duì)從寄存器(Reg#0)的數(shù)據(jù)字段212輸出的轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行運(yùn)算處理,并將進(jìn)行運(yùn)算處理得到的數(shù)據(jù)、即運(yùn)算結(jié)果存儲(chǔ)到寄存器(Reg#1)等的數(shù)據(jù)字段212。
下面說(shuō)明實(shí)施方式2的處理器200的動(dòng)作。
圖11、圖12A、圖12B是表示實(shí)施方式2的處理器的動(dòng)作的圖。
如圖11、圖12A、圖12B所示,處理器200與實(shí)施方式1的處理器100相比,存在下述(1)~(3)的不同點(diǎn)。
(1)關(guān)于在加載指令實(shí)行時(shí)的動(dòng)作,與實(shí)施方式1的動(dòng)作(步驟S111~S114、S121~S122)相比,存在下述的不同點(diǎn)(參照?qǐng)D8A、圖11。)。
當(dāng)代替實(shí)施方式1的寄存器文件110的動(dòng)作(步驟S121~S122),寄存器文件210執(zhí)行加載指令,將數(shù)據(jù)重新存儲(chǔ)到數(shù)據(jù)字段212時(shí)(步驟S221),在數(shù)據(jù)屬性判斷電路213中,根據(jù)與該數(shù)據(jù)對(duì)應(yīng)的標(biāo)記值判斷該數(shù)據(jù)的屬性(步驟S222),并將判斷結(jié)果作為數(shù)據(jù)屬性信號(hào)輸出到數(shù)據(jù)轉(zhuǎn)換電路213(步驟S223)。并且,根據(jù)該判斷結(jié)果判斷是否轉(zhuǎn)換該標(biāo)記值(步驟S224)。在判斷的結(jié)果為轉(zhuǎn)換時(shí)(步驟S224是),根據(jù)該判斷結(jié)果轉(zhuǎn)換該標(biāo)記值(步驟S225),并將轉(zhuǎn)換后的標(biāo)記值存儲(chǔ)到標(biāo)記字段211,以將轉(zhuǎn)換前的標(biāo)記值置換為轉(zhuǎn)換后的標(biāo)記值(步驟S226)。然后,在數(shù)據(jù)轉(zhuǎn)換電路213中根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換該數(shù)據(jù)(步驟S227)。在判斷的結(jié)果為轉(zhuǎn)換時(shí)(步驟S227是),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換該數(shù)據(jù)(步驟S228),并將轉(zhuǎn)換后的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)字段212,以將轉(zhuǎn)換前的數(shù)據(jù)置換為轉(zhuǎn)換后的數(shù)據(jù)(步驟S229)。
(2)關(guān)于運(yùn)算指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式1的動(dòng)作(步驟S131~S135、S141~S144)相比,存在下述的不同點(diǎn)(參照?qǐng)D8B、圖12A。)。
當(dāng)寄存器文件210替代實(shí)施方式1的寄存器文件110的動(dòng)作(步驟S141~S144)執(zhí)行運(yùn)算指令時(shí),從數(shù)據(jù)字段212中讀出數(shù)據(jù)(步驟S241)。
(3)關(guān)于存儲(chǔ)指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式1的動(dòng)作(步驟S151~S153、S161~S164)相比,存在下述的不同點(diǎn)(參照?qǐng)D8C、圖12B。)。
當(dāng)替代實(shí)施方式1的寄存器文件110的動(dòng)作(步驟S161~S164),寄存器文件210執(zhí)行存儲(chǔ)指令時(shí),將存儲(chǔ)在數(shù)據(jù)字段212中的數(shù)據(jù)輸出到存儲(chǔ)器14(步驟S261)。
根據(jù)如上所述的實(shí)施方式2的處理器200,在寄存器文件210中具備標(biāo)記字段211、數(shù)據(jù)字段212、數(shù)據(jù)屬性判斷電路213及數(shù)據(jù)轉(zhuǎn)換電路214。
由此,可在將數(shù)據(jù)從寄存器文件210輸出到運(yùn)算器15之前,在寄存器文件210的內(nèi)部進(jìn)行配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)轉(zhuǎn)換,代替在存儲(chǔ)器14和寄存器文件210之間進(jìn)行,并可以削減在存儲(chǔ)器14和寄存器文件210之間產(chǎn)生的延遲。另外,因?yàn)樵诩拇嫫魑募?10的內(nèi)部進(jìn)行數(shù)據(jù)轉(zhuǎn)換,所以對(duì)寄存器文件210和運(yùn)算器15之間、寄存器文件210和存儲(chǔ)器14之間不產(chǎn)生延遲增加的影響。并且,由于運(yùn)算器15可通用現(xiàn)有的運(yùn)算器所以設(shè)計(jì)容易。
(實(shí)施方式3)下面,參照

本發(fā)明的實(shí)施方式3。
實(shí)施方式3的處理器的特征在于,在運(yùn)算器和存儲(chǔ)器寫(xiě)入控制電路的各自的內(nèi)部進(jìn)行配置變更、代碼擴(kuò)展、零擴(kuò)展等的數(shù)據(jù)轉(zhuǎn)換,代替在存儲(chǔ)器和寄存器文件之間進(jìn)行。
根據(jù)以上的觀點(diǎn),說(shuō)明實(shí)施方式3的處理器。
另外,對(duì)與實(shí)施方式1相同的構(gòu)成要素附加相同符號(hào),并省略說(shuō)明。
圖13是表示實(shí)施方式3的處理器的構(gòu)成的圖。
如圖所示,處理器300與實(shí)施方式1的處理器100相比,存在下述(1)~(3)的不同點(diǎn)(參照?qǐng)D3。)。
(1)具備寄存器文件310,來(lái)替代寄存器文件110。
寄存器文件310與寄存器文件110相比,不同之處在于不具備數(shù)據(jù)屬性判斷電路113和數(shù)據(jù)轉(zhuǎn)換電路114。
(2)具備運(yùn)算器320來(lái)替代運(yùn)算器15。
運(yùn)算器320與運(yùn)算器15相比,不同之處在于新具備數(shù)據(jù)屬性判斷電路321和運(yùn)算處理電路322。
數(shù)據(jù)屬性判斷電路321從寄存器文件310讀出與由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。然后,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到運(yùn)算處理電路322。
運(yùn)算處理電路322從寄存器文件310讀出由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)。根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換讀出的數(shù)據(jù)。在判斷的結(jié)果為轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換讀出的數(shù)據(jù),并對(duì)轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行運(yùn)算處理。然后,將進(jìn)行運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)到寄存器文件310的數(shù)據(jù)字段311。
另外,在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換讀出的數(shù)據(jù)地直接進(jìn)行運(yùn)算處理。
(3)具備存儲(chǔ)器寫(xiě)入控制電路330,來(lái)替代存儲(chǔ)器寫(xiě)入控制電路13。
存儲(chǔ)器寫(xiě)入控制電路330與存儲(chǔ)器寫(xiě)入控制電路13相比,不同之處在于新具備數(shù)據(jù)屬性判斷電路331和數(shù)據(jù)轉(zhuǎn)換電路332。
數(shù)據(jù)屬性判斷電路331從寄存器文件310讀出與由存儲(chǔ)指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。然后,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到數(shù)據(jù)轉(zhuǎn)換電路332。并且,生成根據(jù)存儲(chǔ)指令譯碼信號(hào)和標(biāo)記值的存儲(chǔ)器寫(xiě)入控制信號(hào),并輸出到存儲(chǔ)器14。
數(shù)據(jù)轉(zhuǎn)換電路332從寄存器文件310讀出由存儲(chǔ)指令譯碼信號(hào)確定的數(shù)據(jù),并根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換讀出的數(shù)據(jù)。在判斷的結(jié)果為轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換讀出的數(shù)據(jù),并將轉(zhuǎn)換后的數(shù)據(jù)輸出到存儲(chǔ)器14。
另外,在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換讀出的數(shù)據(jù)地直接輸出到存儲(chǔ)器14。
下面,作為一例,說(shuō)明實(shí)施方式3的運(yùn)算器的構(gòu)成。
這里,以對(duì)從寄存器(Reg#0)讀出的數(shù)據(jù)進(jìn)行加法處理,并將進(jìn)行加法處理得到的數(shù)據(jù)、即加法的結(jié)果存儲(chǔ)到寄存器(Reg#1)的情況為例進(jìn)行說(shuō)明。
圖14是表示作為一例、實(shí)施方式3的運(yùn)算器的構(gòu)成的圖。
如圖所示,數(shù)據(jù)屬性判斷電路321從寄存器(Reg#0)的標(biāo)記字段311讀出標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷從寄存器(Reg#0)的數(shù)據(jù)字段312讀出的數(shù)據(jù)的屬性。然后,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到選擇器344。
與此相對(duì),排序部341對(duì)從寄存器(Reg#0)的數(shù)據(jù)字段312輸出的數(shù)據(jù)實(shí)施排序處理,并將處理后的數(shù)據(jù)輸出到零擴(kuò)展部342和代碼擴(kuò)展部343。
零擴(kuò)展部342對(duì)從排序部341輸出的數(shù)據(jù)實(shí)施零擴(kuò)展處理,并將處理后的數(shù)據(jù)輸出到選擇器344。
代碼擴(kuò)展部343對(duì)從排序部341輸出的數(shù)據(jù)實(shí)施代碼擴(kuò)展處理,并將處理后的數(shù)據(jù)輸出到選擇器344。
選擇器344根據(jù)從數(shù)據(jù)屬性判斷電路321輸出的數(shù)據(jù)屬性判斷信號(hào),選擇從寄存器(Reg#0)的數(shù)據(jù)字段312輸出的數(shù)據(jù)、從零擴(kuò)展部342輸出的數(shù)據(jù)、從代碼擴(kuò)展部343輸出的數(shù)據(jù)之一,并輸出到加法器345。
加法器345對(duì)從選擇器344輸出的數(shù)據(jù)執(zhí)行加法處理,并將執(zhí)行加法處理得到的數(shù)據(jù)、即運(yùn)算結(jié)果存儲(chǔ)在寄存器(Reg#1)的數(shù)據(jù)字段312中。
接著,說(shuō)明實(shí)施方式3的處理器300的動(dòng)作。
圖15A、圖15B是表示實(shí)施方式3的處理器的動(dòng)作的圖。
如圖所示,處理器300與實(shí)施方式的處理器100相比,存在下述不同點(diǎn)。
(1)關(guān)于加載指令執(zhí)行時(shí)的動(dòng)作,因與實(shí)施方式1的動(dòng)作(步驟S111~S114、S121~S122)相同而省略說(shuō)明。
(2)關(guān)于運(yùn)算指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式1的動(dòng)作(步驟S131~S135、S141~S145)相比,存在下述不同點(diǎn)(參照?qǐng)D8B、圖15A)。
當(dāng)代替實(shí)施方式1的寄存器文件110的動(dòng)作(步驟S141~S144),運(yùn)算器320執(zhí)行運(yùn)算指令時(shí),在數(shù)據(jù)屬性判斷電路321中根據(jù)與由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,判斷該數(shù)據(jù)的屬性(步驟S341),并將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到運(yùn)算處理電路322(步驟S342)。而且,在運(yùn)算處理電路322中根據(jù)數(shù)據(jù)屬性判斷信號(hào),判斷是否轉(zhuǎn)換該數(shù)據(jù)(步驟S343)。在判斷的結(jié)果是轉(zhuǎn)換時(shí)(步驟S343是),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換該數(shù)據(jù)(步驟S344),并對(duì)轉(zhuǎn)換后的數(shù)據(jù)執(zhí)行運(yùn)算處理(步驟S345)。將執(zhí)行該運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)在寄存器文件310的數(shù)據(jù)字段312中(步驟S346)。
另外,在為不轉(zhuǎn)換時(shí)(步驟S343否),不轉(zhuǎn)換由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)地直接執(zhí)行運(yùn)算處理。
(3)關(guān)于存儲(chǔ)指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式1的動(dòng)作(步驟S151~S153、S161~S165)相比,存在下述不同點(diǎn)(參照?qǐng)D8C、圖15B)。
當(dāng)代替實(shí)施方式1的寄存器文件110的動(dòng)作(步驟S161~S164),存儲(chǔ)器寫(xiě)入控制電路330執(zhí)行存儲(chǔ)指令時(shí),在數(shù)據(jù)屬性判斷電路331中根據(jù)與由存儲(chǔ)器寫(xiě)入控制信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,判斷該數(shù)據(jù)的屬性(步驟S361),并將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到數(shù)據(jù)轉(zhuǎn)換電路332(步驟S362)。而且,在數(shù)據(jù)轉(zhuǎn)換電路332中根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換該數(shù)據(jù)(步驟S363)。在判斷的結(jié)果是轉(zhuǎn)換時(shí)(步驟S363是),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換該數(shù)據(jù)(步驟S364),并將轉(zhuǎn)換后的數(shù)據(jù)輸出到存儲(chǔ)器(步驟S365)。
另外,在為不轉(zhuǎn)換時(shí)(步驟S363否),不轉(zhuǎn)換由存儲(chǔ)器寫(xiě)入控制信號(hào)確定的數(shù)據(jù)地直接輸出到存儲(chǔ)器14。
根據(jù)如上所述的實(shí)施方式3的處理器300,在寄存器文件310中具備標(biāo)記字段311和數(shù)據(jù)字段312,在運(yùn)算器320中具備數(shù)據(jù)屬性判斷電路321和運(yùn)算處理電路322,在存儲(chǔ)器寫(xiě)入控制部330中具備數(shù)據(jù)屬性判斷電路331和數(shù)據(jù)轉(zhuǎn)換電路332。
由此,可在運(yùn)算器320和存儲(chǔ)器寫(xiě)入控制電路330各自的內(nèi)部進(jìn)行配置變更、代碼擴(kuò)展、零擴(kuò)展等數(shù)據(jù)轉(zhuǎn)換,來(lái)代替在存儲(chǔ)器14和寄存器文件310之間進(jìn)行,并可削減在存儲(chǔ)器14和寄存器文件310之間產(chǎn)生的延遲。
(實(shí)施方式4)下面,參照

本發(fā)明的實(shí)施方式4。
實(shí)施方式4的處理器的特征在于,在運(yùn)算器和存儲(chǔ)器寫(xiě)入控制電路各自的內(nèi)部進(jìn)行配置變更、代碼擴(kuò)展、零擴(kuò)展等數(shù)據(jù)轉(zhuǎn)換,來(lái)代替在存儲(chǔ)器和寄存存儲(chǔ)器之間進(jìn)行。
根據(jù)上述方面,說(shuō)明實(shí)施方式4的處理器。
另外,對(duì)與實(shí)施方式3相同的構(gòu)成要素附加相同的符號(hào),并省略說(shuō)明。
圖16是表示實(shí)施方式4的處理器的結(jié)構(gòu)的圖。
如圖所示,處理器400與實(shí)施方式3的處理器300相比,存在下述(1)~(3)的不同點(diǎn)(參照?qǐng)D5。)。
(1)具備指令譯碼電路401,來(lái)代替指令譯碼電路101。
指令譯碼電路401與指令譯碼電路101相比,不同之處在于在執(zhí)行運(yùn)算指令時(shí),不將運(yùn)算指令譯碼信號(hào)輸出到標(biāo)記值生成電路402。
(2)具備標(biāo)記值生成電路402,來(lái)代替標(biāo)記值生成電路102。
標(biāo)記值生成電路402與標(biāo)記值生成電路102相比,不同之處在于不生成表示執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理得到的數(shù)據(jù)的屬性的標(biāo)記值。
(3)具備運(yùn)算器420,來(lái)代替運(yùn)算器320。
運(yùn)算器420與運(yùn)算器320相比,不同之處在于具備數(shù)據(jù)屬性判斷電路421和運(yùn)算處理電路422,來(lái)代替數(shù)據(jù)屬性判斷電路321和運(yùn)算處理電路322。
數(shù)據(jù)屬性判斷電路421從寄存器文件410讀出與由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。而且,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到運(yùn)算處理電路422。并且,生成表示執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理得到的數(shù)據(jù)的屬性的標(biāo)記值,并將生成的標(biāo)記值與執(zhí)行運(yùn)算處理得到的數(shù)據(jù)相對(duì)應(yīng)地存儲(chǔ)到寄存器文件410。
運(yùn)算處理電路422從寄存器文件410讀出由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù),并根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換讀出的數(shù)據(jù)。在判斷的結(jié)果是轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換讀出的數(shù)據(jù),并對(duì)轉(zhuǎn)換后的數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理。而且,將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)在寄存器文件410中。
另外,在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換讀出的數(shù)據(jù)地直接執(zhí)行運(yùn)算處理。
接著,作為一實(shí)例,說(shuō)明實(shí)施方式4的運(yùn)算器的構(gòu)成。
這里,以對(duì)從寄存器(Reg#0)讀出的數(shù)據(jù)執(zhí)行運(yùn)算處理,并將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)、即運(yùn)算的結(jié)果存儲(chǔ)在寄存器(Reg#1)中的情況為例進(jìn)行說(shuō)明。
圖17是表示作為一例、實(shí)施方式4的運(yùn)算器的構(gòu)成的圖。
如圖所示,數(shù)據(jù)屬性判斷電路421從寄存器(Reg#0)的標(biāo)記字段411讀出標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷從寄存器(Reg#0)的數(shù)據(jù)字段412讀出的數(shù)據(jù)的屬性。而且,將判斷結(jié)果作為屬性判斷信號(hào)輸出到選擇器444等。
與此相對(duì),排序部441對(duì)從寄存器(Reg#0)的數(shù)據(jù)字段412輸出的數(shù)據(jù)實(shí)施排序處理,并將處理后的數(shù)據(jù)輸出到零擴(kuò)展部442和代碼擴(kuò)展部443。
選擇器444根據(jù)從數(shù)據(jù)屬性判斷電路421輸出的數(shù)據(jù)屬性判斷信號(hào),選擇從寄存器(Reg#0)的數(shù)據(jù)字段412輸出的數(shù)據(jù)、從零擴(kuò)展部442輸出的數(shù)據(jù)、從代碼擴(kuò)展部443輸出的數(shù)據(jù)之一,并輸出到加法器445。
加法器445對(duì)從選擇器444輸出的數(shù)據(jù)執(zhí)行加法處理,并將執(zhí)行加法處理得到的數(shù)據(jù)、即運(yùn)算結(jié)果存儲(chǔ)在寄存器(Reg#1)的數(shù)據(jù)字段412中。
并且,數(shù)據(jù)屬性判斷電路421生成關(guān)于在加法器445中執(zhí)行加法處理得到的數(shù)據(jù)、即運(yùn)算結(jié)果的標(biāo)記值,并將生成的標(biāo)記值存儲(chǔ)在寄存器(Reg#1)的標(biāo)記字段411中。
另外,零擴(kuò)展部442和代碼擴(kuò)展部443的構(gòu)成與實(shí)施方式3的零擴(kuò)展部342和代碼擴(kuò)展部343相同,省略說(shuō)明。
接著,說(shuō)明實(shí)施方式4的動(dòng)作。
圖18、圖19是表示實(shí)施方式4的處理器的動(dòng)作的圖。
如圖18、圖19所示,處理器400與實(shí)施方式3的處理器300相比,存在下述(2)的不同點(diǎn)。
(1)關(guān)于加載指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式3的動(dòng)作(步驟S111~S114、S121~S122)相同,因此省略說(shuō)明。
(2)關(guān)于運(yùn)算指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式3的動(dòng)作相比,存在下述的不同點(diǎn)(參照?qǐng)D7、圖15A、圖18、圖19)。
代替實(shí)施方式3的指令譯碼電路101的動(dòng)作(步驟S131),指令譯碼電路401,在譯碼的指令是運(yùn)算指令時(shí),將運(yùn)算指令譯碼信號(hào)輸出到運(yùn)算器420(步驟S431)。
另外,代替實(shí)施方式3的標(biāo)記值生成電路102的動(dòng)作(步驟S135),運(yùn)算器420在數(shù)據(jù)屬性判斷電路421中,將表示由運(yùn)算指令譯碼信號(hào)存儲(chǔ)在寄存器文件410中的數(shù)據(jù)的屬性的標(biāo)記值,與該數(shù)據(jù)相對(duì)應(yīng)地存儲(chǔ)在寄存器文件410的標(biāo)記字段411中(步驟S441)。
(3)關(guān)于存儲(chǔ)指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式3的動(dòng)作(步驟S151~S153、S361~S365)相同,因此省略說(shuō)明。
根據(jù)如上所述的實(shí)施方式4的處理器400,在寄存器文件410中具備標(biāo)記字段411和數(shù)據(jù)字段412,在運(yùn)算器420中具備數(shù)據(jù)屬性判斷電路421和運(yùn)算處理電路422,在存儲(chǔ)器寫(xiě)入控制部430中具備數(shù)據(jù)屬性判斷電路431和數(shù)據(jù)轉(zhuǎn)換電路432。
由此,可在運(yùn)算器420和存儲(chǔ)器寫(xiě)入控制電路330各自的內(nèi)部執(zhí)行配置變更、代碼擴(kuò)展、零擴(kuò)展等數(shù)據(jù)轉(zhuǎn)換,來(lái)代替在存儲(chǔ)器14和寄存器文件410之間進(jìn)行,可削減在存儲(chǔ)器14和寄存器文件410之間產(chǎn)生的延遲。另外,由于將表示該數(shù)據(jù)的屬性的標(biāo)記值附加在執(zhí)行運(yùn)算處理得到的數(shù)據(jù)上,所以不必對(duì)執(zhí)行運(yùn)算處理的指令指定數(shù)據(jù)的屬性,可實(shí)現(xiàn)指令數(shù)的削減、指令譯碼電路401的簡(jiǎn)化。
(實(shí)施方式5)
下面,參照

本發(fā)明的實(shí)施方式5。
實(shí)施方式5的處理器的特征在于,跨多個(gè)寄存器存儲(chǔ)大小比數(shù)據(jù)字段大的數(shù)據(jù)。并且,從跨多個(gè)寄存器存儲(chǔ)的數(shù)據(jù)還原數(shù)據(jù),并對(duì)還原后的數(shù)據(jù)執(zhí)行運(yùn)算處理。
根據(jù)上述方面,說(shuō)明實(shí)施方式5的處理器。
另外,對(duì)與實(shí)施方式3相同的構(gòu)成要素附加相同符號(hào),并省略說(shuō)明。
圖20是表示實(shí)施方式5中的處理器的構(gòu)成的圖。
如圖所示,處理器500與實(shí)施方式3中的處理器300相同,存在下述(1)~(3)的不同點(diǎn)(參照?qǐng)D5。)。
(1)具備寄存器文件510,來(lái)代替寄存器文件310。
寄存器文件510與寄存器文件310相比,不同之處在于在存儲(chǔ)大小比數(shù)據(jù)字段512大的數(shù)據(jù)時(shí),跨多個(gè)寄存器存儲(chǔ)該數(shù)據(jù)。
(2)具備運(yùn)算器520,來(lái)代替運(yùn)算器320。
運(yùn)算器520與運(yùn)算器320相比,不同之處在于具備數(shù)據(jù)屬性判斷電路521和運(yùn)算處理電路522,來(lái)代替數(shù)據(jù)屬性判斷電路321和運(yùn)算處理電路322。
數(shù)據(jù)屬性判斷電路521從寄存器文件510讀出與由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。而且,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到運(yùn)算處理電路522。并且,生成表示執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理得到的數(shù)據(jù)的屬性的標(biāo)記值,并將生成的標(biāo)記值與執(zhí)行運(yùn)算處理得到的數(shù)據(jù)相對(duì)應(yīng)地存儲(chǔ)在寄存器文件中。
運(yùn)算處理電路522從寄存器文件510讀出由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù),并根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換讀出的數(shù)據(jù)。在判斷的結(jié)果是轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換讀出的數(shù)據(jù)。對(duì)轉(zhuǎn)換后的數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理。而且,將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)在寄存器文件中。
另外,在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換讀出的數(shù)據(jù)地直接執(zhí)行運(yùn)算處理。
另外,運(yùn)算處理電路522,在數(shù)據(jù)跨多個(gè)寄存器存儲(chǔ)在寄存器中時(shí),根據(jù)從這些寄存器讀出的數(shù)據(jù)還原數(shù)據(jù),并對(duì)還原后的數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理。而且,將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)跨多個(gè)寄存器存儲(chǔ)在寄存器文件510中。
(3)具備存儲(chǔ)器寫(xiě)入控制電路530,來(lái)代替存儲(chǔ)器寫(xiě)入控制電路330。
存儲(chǔ)器寫(xiě)入控制電路530與存儲(chǔ)器寫(xiě)入控制電路330相比,不同之處在于具備數(shù)據(jù)屬性判斷電路531和數(shù)據(jù)轉(zhuǎn)換電路532,來(lái)代替數(shù)據(jù)屬性判斷電路331和數(shù)據(jù)轉(zhuǎn)換電路332。
數(shù)據(jù)屬性判斷電路531從寄存器文件510讀出與由存儲(chǔ)指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。而且,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到數(shù)據(jù)轉(zhuǎn)換電路530。并且,將根據(jù)存儲(chǔ)指令譯碼信號(hào)和標(biāo)記值的存儲(chǔ)器寫(xiě)入控制信號(hào)輸出到存儲(chǔ)器。
數(shù)據(jù)轉(zhuǎn)換電路532從寄存器文件510讀出由存儲(chǔ)指令譯碼信號(hào)確定的數(shù)據(jù),并根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換讀出的數(shù)據(jù)。在判斷的結(jié)果是轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換讀出的數(shù)據(jù),并將轉(zhuǎn)換后的數(shù)據(jù)輸出到存儲(chǔ)器。
另外,在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換讀出的數(shù)據(jù)地直接輸出到存儲(chǔ)器14。
另外,數(shù)據(jù)轉(zhuǎn)換電路532,在數(shù)據(jù)跨多個(gè)寄存器存儲(chǔ)在寄存器文件510中時(shí),根據(jù)從這些寄存器讀出的數(shù)據(jù)還原數(shù)據(jù),并將還原后的數(shù)據(jù)輸出到存儲(chǔ)器14。
接著,作為一實(shí)例,說(shuō)明實(shí)施方式5中的運(yùn)算器的構(gòu)成。
這里,以對(duì)跨寄存器(Reg#0)和寄存器(Reg#1)存儲(chǔ)的數(shù)據(jù)執(zhí)行加法處理,并將執(zhí)行加法處理得到的數(shù)據(jù)、即相加的結(jié)果分割地存儲(chǔ)在寄存器(Reg#2)和寄存器(Reg#3)中的情況為例來(lái)說(shuō)明。
圖21是表示作為一實(shí)例、實(shí)施方式5的運(yùn)算器的構(gòu)成的圖。
如圖所示,數(shù)據(jù)屬性判斷電路521從寄存器(Reg#0)的標(biāo)記字段511讀出標(biāo)記值,并根據(jù)讀出的標(biāo)記值,判斷與讀出的標(biāo)記值相對(duì)應(yīng)的數(shù)據(jù)是否是跨寄存器(Reg#0)和寄存器(Reg#1)存儲(chǔ)的數(shù)據(jù)。而且,將表示是跨寄存器(Reg#0)和寄存器(Reg#1)存儲(chǔ)的數(shù)據(jù)這一情況的數(shù)據(jù)屬性判斷信號(hào),輸出到選擇器541、加法器542、選擇器543。
與此相對(duì),選擇器541在從寄存器(Reg#0)的數(shù)據(jù)字段512輸出的數(shù)據(jù)、和從寄存器(Reg#1)的數(shù)據(jù)字段512輸出的數(shù)據(jù)中,選擇從寄存器(Reg#1)的數(shù)據(jù)字段512輸出的數(shù)據(jù)并輸出到加法器542。
并且,加法器542使從寄存器(Reg#0)的數(shù)據(jù)字段512輸出的數(shù)據(jù)為高位部分,使從選擇器541輸出的數(shù)據(jù)、即從寄存器(Reg#1)的數(shù)據(jù)字段512輸出的數(shù)據(jù)為低位部分,并結(jié)合高位部分和低位部分,還原數(shù)據(jù)。而且,對(duì)還原后的數(shù)據(jù)執(zhí)行加法處理,將執(zhí)行加法處理得到的數(shù)據(jù)、即相加的結(jié)果分割為高位部分和低位部分,并分別輸出到選擇器543。另外,將低位部分存儲(chǔ)在寄存器(Reg#3)的數(shù)據(jù)字段中。
而且,選擇器543在從加法器542輸出的高位部分和低位部分中,選擇高位部分并存儲(chǔ)在寄存器(Reg#2)的數(shù)據(jù)字段512中。
接著,作為一實(shí)例,說(shuō)明實(shí)施方式5的寄存器的數(shù)據(jù)結(jié)構(gòu)。
圖22是表示作為一實(shí)例、實(shí)施方式5的寄存器的數(shù)據(jù)結(jié)構(gòu)的圖。
如圖所示,實(shí)施方式5的寄存器與實(shí)施方式1的寄存器存在下述(2)的不同點(diǎn)。
(1)標(biāo)記字段551的第0位至第3位的低位4位,與標(biāo)記字段151的第0位至第3位的低位4位相同,因此省略說(shuō)明。
(2)標(biāo)記字段551的第4位至第5位的2位,與標(biāo)記字段151的第4位至第5位的2位相比,(d)在為「11」時(shí),在是64位這一點(diǎn)上不同。這時(shí),數(shù)據(jù)字段的大小保持32位,分配多個(gè)寄存器的數(shù)據(jù)字段553。
(3)標(biāo)記字段551的第6位至第7位的2位,與標(biāo)記字段151的第6位至第7位的2位相同,因此省略說(shuō)明。
接著,說(shuō)明實(shí)施方式5中的處理器的動(dòng)作。
圖23~圖25是表示實(shí)施方式5的處理器的動(dòng)作的圖。
如圖23~圖25所示,處理器500與實(shí)施方式3的處理器300相比,存在下述(1)~(3)的不同點(diǎn)。
(1)關(guān)于加載指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式3的動(dòng)作(步驟S111~S114、S121~S122)相比,存在下述不同點(diǎn)(參照?qǐng)D8A、圖23。)。
寄存器文件510,在由存儲(chǔ)器讀出控制信號(hào)確定的數(shù)據(jù)比數(shù)據(jù)字段的大小大時(shí)(步驟S521否),跨多個(gè)寄存器存儲(chǔ)該數(shù)據(jù)(步驟S522)。
(2)關(guān)于運(yùn)算指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式3中的動(dòng)作(步驟S131~S135、S341~S346)相比,存在下述的不同點(diǎn)(參照?qǐng)D15A、圖24。)。
運(yùn)算器520,在跨多個(gè)寄存器存儲(chǔ)由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)時(shí)(步驟S541否),根據(jù)從這些寄存器讀出的數(shù)據(jù)還原該數(shù)據(jù)(步驟S254),并對(duì)還原后的數(shù)據(jù)執(zhí)行運(yùn)算處理(步驟S543)。將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)跨多個(gè)寄存器存儲(chǔ)在寄存器文件510中(步驟S544)。
(3)關(guān)于存儲(chǔ)指令執(zhí)行時(shí)的動(dòng)作,實(shí)施方式3中的動(dòng)作(步驟S151~S153、S361~S365)相比,存在下述的不同點(diǎn)(參照?qǐng)D15A、圖25)。
存儲(chǔ)器寫(xiě)入控制電路530,在跨多個(gè)寄存器存儲(chǔ)由存儲(chǔ)器寫(xiě)入控制信號(hào)確定的數(shù)據(jù)時(shí)(步驟561否),根據(jù)從這些寄存器讀出的數(shù)據(jù)還原數(shù)據(jù)(步驟S562),并將還原后的數(shù)據(jù)輸出到存儲(chǔ)器14(步驟S365)。
根據(jù)如上所述的實(shí)施方式5的處理器,在寄存器文件510中具備標(biāo)記字段511和數(shù)據(jù)字段512,在運(yùn)算器520中具備數(shù)據(jù)屬性判斷電路521和運(yùn)算處理電路522,在存儲(chǔ)器寫(xiě)入控制部530中具備數(shù)據(jù)屬性判斷電路531和數(shù)據(jù)轉(zhuǎn)換電路532。
由此,可容易地處理大小比數(shù)據(jù)字段512大的數(shù)據(jù)。
(實(shí)施方式6)下面,參照

本發(fā)明的實(shí)施方式6。
實(shí)施方式6的處理器的特征在于,跨多個(gè)寄存器存儲(chǔ)大小比數(shù)據(jù)字段大的數(shù)據(jù)。并且,根據(jù)跨多個(gè)寄存器存儲(chǔ)的數(shù)據(jù)還原數(shù)據(jù),并對(duì)還原后的數(shù)據(jù)執(zhí)行運(yùn)算處理。
根據(jù)上述方面,說(shuō)明實(shí)施方式6中的處理器。
另外,對(duì)與實(shí)施方式5相同的構(gòu)成要素附加相同符號(hào),并省略說(shuō)明。
圖26是表示實(shí)施方式6的處理器的構(gòu)成的圖。
如圖所示,處理器600與實(shí)施方式5中的處理器500相比,存在下述(1)~(3)的不同點(diǎn)(參照?qǐng)D7。)。
(1)具備指令譯碼電路601,來(lái)代替指令譯碼電路101。
指令譯碼電路601與指令譯碼電路101相比,不同之處在于在執(zhí)行運(yùn)算指令時(shí),不將運(yùn)算指令譯碼信號(hào)輸出到標(biāo)記值生成電路602。
(2)具備標(biāo)記值生成電路602,來(lái)代替標(biāo)記值生成電路102。
標(biāo)記值生成電路602與標(biāo)記值生成電路102相比,不同之處在于不生成表示執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理得到的數(shù)據(jù)屬性的標(biāo)記值。
(3)具備運(yùn)算器620,來(lái)代替運(yùn)算器520。
運(yùn)算器620與運(yùn)算器520相比,不同之處在于具備數(shù)據(jù)屬性判斷電路621和運(yùn)算處理電路622,來(lái)代替數(shù)據(jù)屬性判斷電路521和運(yùn)算處理電路522。
數(shù)據(jù)屬性判斷電路621從寄存器文件610讀出與由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù)相對(duì)應(yīng)的標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷該數(shù)據(jù)的屬性。而且,將判斷結(jié)果作為數(shù)據(jù)屬性判斷信號(hào)輸出到運(yùn)算處理電路622。并且,生成表示執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理得到的數(shù)據(jù)的屬性的標(biāo)記值,并將生成的標(biāo)記值與執(zhí)行運(yùn)算處理得到的數(shù)據(jù)相對(duì)應(yīng)地存儲(chǔ)到寄存器文件610。
運(yùn)算處理電路622從寄存器文件610讀出由運(yùn)算指令譯碼信號(hào)確定的數(shù)據(jù),并根據(jù)數(shù)據(jù)屬性判斷信號(hào)判斷是否轉(zhuǎn)換讀出的數(shù)據(jù)。在判斷的結(jié)果是轉(zhuǎn)換時(shí),根據(jù)數(shù)據(jù)屬性判斷信號(hào)轉(zhuǎn)換讀出的數(shù)據(jù),并對(duì)轉(zhuǎn)換后的數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理。而且,將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)存儲(chǔ)在寄存器文件610中。
另外,在為不轉(zhuǎn)換時(shí),不轉(zhuǎn)換讀出的數(shù)據(jù)地直接執(zhí)行運(yùn)算處理。
另外,運(yùn)算處理電路622,在數(shù)據(jù)跨多個(gè)寄存器存儲(chǔ)在寄存器文件610中時(shí),根據(jù)從這些寄存器讀出的數(shù)據(jù)還原數(shù)據(jù),并對(duì)還原后的數(shù)據(jù)執(zhí)行由運(yùn)算指令譯碼信號(hào)確定的運(yùn)算處理。而且,將執(zhí)行運(yùn)算處理得到的數(shù)據(jù)跨多個(gè)寄存器存儲(chǔ)在寄存器文件610中。
接著,作為一實(shí)例,說(shuō)明實(shí)施方式6中的運(yùn)算器的構(gòu)成。
這里,以對(duì)跨寄存器(Reg#0)和寄存器(Reg#1)存儲(chǔ)的數(shù)據(jù)執(zhí)行加法處理,并對(duì)執(zhí)行加法處理得到的數(shù)據(jù)、即相加的結(jié)果進(jìn)行分割,并存儲(chǔ)在寄存器(Reg#2)和寄存器(Reg#3)中的情況為例來(lái)進(jìn)行說(shuō)明。
圖27是表示作為一實(shí)例、實(shí)施方式6中的運(yùn)算器的構(gòu)成的圖。
如圖所示,數(shù)據(jù)屬性判斷電路621從寄存器(Reg#0)的標(biāo)記字段611讀出標(biāo)記值,并根據(jù)讀出的標(biāo)記值判斷與讀出的標(biāo)記值相對(duì)應(yīng)的數(shù)據(jù)是否是跨寄存器(Reg#0)和寄存器(Reg#1)存儲(chǔ)的數(shù)據(jù)。而且,將表示是跨寄存器(Reg#0)和寄存器(Reg#1)存儲(chǔ)的數(shù)據(jù)這一情況的數(shù)據(jù)屬性判斷信號(hào),輸出到選擇器641、加法器642、選擇器643等。
與此相對(duì),選擇器641在從寄存器(Reg#0)的數(shù)據(jù)字段612輸出的數(shù)據(jù)、和從寄存器(Reg#1)的數(shù)據(jù)字段612輸出的數(shù)據(jù)中,選擇從寄存器(Reg#1)的數(shù)據(jù)字段612輸出的數(shù)據(jù),并輸出到加法器642。
并且,加法器642使從寄存器(Reg#0)的數(shù)據(jù)字段612輸出的數(shù)據(jù)為高位部分,使從選擇器641輸出的數(shù)據(jù)、即從寄存器(Reg#1)的數(shù)據(jù)字段612輸出的數(shù)據(jù)為低位部分,并結(jié)合高位部分和低位部分,還原數(shù)據(jù)。而且,對(duì)還原后的數(shù)據(jù)執(zhí)行加法處理,將執(zhí)行加法處理得到的數(shù)據(jù)、即相加的結(jié)果分割為高位部分和低位部分,并分別輸出到選擇器643。另外,將低位部分存儲(chǔ)在寄存器(Reg#3)的數(shù)據(jù)字段中。
而且,選擇器643在從加法器642輸出的高位部分和低位部分中,選擇高位部分并存儲(chǔ)在寄存器(Reg#2)的數(shù)據(jù)字段612中。
并且,數(shù)據(jù)屬性判斷電路621生成關(guān)于在加法器642中相加的結(jié)果的標(biāo)記值、即表示是跨寄存器(Reg#2)和寄存器(Reg#3)存儲(chǔ)的數(shù)據(jù)這一情況的標(biāo)記值,并將生成的標(biāo)記值存儲(chǔ)在寄存器(Reg#2)的標(biāo)記字段611中。
接著,說(shuō)明實(shí)施方式6中的處理器600的動(dòng)作。
圖28、圖29是表示實(shí)施方式6的處理器的動(dòng)作的圖。
如圖28、圖29所示,處理器600與實(shí)施方式5中的處理器相比,存在下述(2)的不同點(diǎn)。
(1)關(guān)于加載指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式5的動(dòng)作(步驟S111~S114、S121~S122、S521~S522)相同,因此省略說(shuō)明。
(2)關(guān)于運(yùn)算指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式5的動(dòng)作(步驟S131~S135、S341~S346、S541~S544)相比,存在下述的不同點(diǎn)(參照?qǐng)D7、圖24、圖28、圖29。)。
代替實(shí)施方式5的指令譯碼電路101的動(dòng)作(步驟S131),指令譯碼電路601,在譯碼的指令是運(yùn)算指令時(shí),將運(yùn)算指令譯碼信號(hào)輸出到運(yùn)算器620(步驟S631)。
另外,代替實(shí)施方式5的標(biāo)記值生成電路102的動(dòng)作(步驟S135),運(yùn)算器620,在數(shù)據(jù)屬性判斷電路621中將表示進(jìn)行運(yùn)算處理得到的數(shù)據(jù)的屬性的標(biāo)記值,與該數(shù)據(jù)相對(duì)應(yīng)地存儲(chǔ)在寄存器文件610的標(biāo)記字段611中(步驟S641)。
(3)關(guān)于存儲(chǔ)指令執(zhí)行時(shí)的動(dòng)作,與實(shí)施方式5的動(dòng)作(步驟S151~S153、S361~S365、S561~S562)相同,因此省略說(shuō)明。
根據(jù)如上所述的實(shí)施方式6的處理器600,在寄存器文件610中具備標(biāo)記字段611和數(shù)據(jù)字段612,在運(yùn)算器620中具備數(shù)據(jù)屬性判斷電路621和運(yùn)算處理電路622,在存儲(chǔ)器寫(xiě)入控制部530中具備數(shù)據(jù)屬性判斷電路531和數(shù)據(jù)轉(zhuǎn)換電路532。
由此,可容易地處理大小比數(shù)據(jù)字段大的數(shù)據(jù)。另外,由于在執(zhí)行運(yùn)算處理得到的數(shù)據(jù)上附加表示該數(shù)據(jù)的屬性的標(biāo)記值,所以不必對(duì)執(zhí)行運(yùn)算處理的指令指定數(shù)據(jù)的屬性,可實(shí)現(xiàn)指令數(shù)的削減、指令譯碼電路的簡(jiǎn)化。
(其他)另外,標(biāo)記值生成電路,在跨多個(gè)寄存器存儲(chǔ)從存儲(chǔ)器讀出的數(shù)據(jù)時(shí),也可生成包含該數(shù)據(jù)所跨越存儲(chǔ)的寄存器的數(shù)量、即數(shù)據(jù)的分割數(shù)的標(biāo)記值,并存儲(chǔ)在標(biāo)記字段中。
另外,處理器也可通過(guò)全定制(full custom)LSI(Large Scale Integration)來(lái)實(shí)現(xiàn)。另外,也可通過(guò)如ASIC(Application Specific Integrated Circuit)等的半定制(semi-custom)LSI來(lái)實(shí)現(xiàn)。另外,也可通過(guò)如FPGA(Fild Programmable GateArray)、CPLD(Complex Programmable Logic Device)等的可編程邏輯器件來(lái)實(shí)現(xiàn)。另外,也可實(shí)現(xiàn)為電路結(jié)構(gòu)可動(dòng)態(tài)地改寫(xiě)的動(dòng)態(tài)重構(gòu)器件。
并且,在這些LSI中形成構(gòu)成處理器的1個(gè)至2個(gè)以上的功能的設(shè)計(jì)數(shù)據(jù),也可是由如VHDL(Very high speed integrated circuit Hardware DesciptionLanguage)、Verilog-HDL、SystemC等的硬件記述語(yǔ)言記述的程序(下面稱為HDL程序)。另外,也可為邏輯合成HDL程序得到的門(mén)級(jí)(gate level)的網(wǎng)表(netlist)。另外,也可為在門(mén)級(jí)的網(wǎng)表中附加了配置信息、處理?xiàng)l件等的宏單元(macrocell)信息。另外,也可為規(guī)定了大小、定時(shí)等的掩碼(mask)數(shù)據(jù)。
并且,設(shè)計(jì)數(shù)據(jù)也可預(yù)先記錄在光學(xué)記錄媒體(例如,CD-ROM等。)、磁記錄媒體(例如,硬盤(pán)等。)、光磁記錄媒體(例如,MO等。)、半導(dǎo)體存儲(chǔ)器(例如,RAM等。)等那樣的計(jì)算機(jī)可讀取的記錄媒體中,以便可由計(jì)算機(jī)系統(tǒng)、內(nèi)部系統(tǒng)等硬件系統(tǒng)讀出。而且,經(jīng)記錄媒體被其他硬件系統(tǒng)讀取的設(shè)計(jì)數(shù)據(jù),也可經(jīng)下載電纜下載到可編程邏輯器件。
或者,設(shè)計(jì)數(shù)據(jù)也可預(yù)先保持在傳送路徑上的硬件系統(tǒng)中,以便可經(jīng)由網(wǎng)絡(luò)等傳送路徑并由其他硬件系統(tǒng)取得。并且,從硬件系統(tǒng)經(jīng)傳送路徑被其他硬件系統(tǒng)取得的設(shè)計(jì)數(shù)據(jù),也可經(jīng)下載電纜下載到可編程邏輯器件。
或者,邏輯合成、配置、布線的設(shè)計(jì)數(shù)據(jù)也可預(yù)先記錄在串行ROM中,以便可在通電時(shí)傳送到FPGA。而且,記錄在串行ROM中的設(shè)計(jì)數(shù)據(jù)也可在通電時(shí)直接下載到FPGA。
產(chǎn)業(yè)上的可利用性本發(fā)明可利用為處理數(shù)據(jù)的處理器等,尤其是執(zhí)行需要進(jìn)行高速、龐大的運(yùn)算處理的聲音、圖像處理等媒體處理的處理器。
權(quán)利要求
1.一種處理器,其特征在于,具備具有多個(gè)寄存器的寄存器文件;和生成表示數(shù)據(jù)屬性的標(biāo)記值的生成單元,所述各寄存器具有保持?jǐn)?shù)據(jù)的數(shù)據(jù)字段和保持所述標(biāo)記值的標(biāo)記字段,在執(zhí)行從存儲(chǔ)器加載到寄存器的加載指令時(shí),所述生成單元根據(jù)所述加載指令生成所述標(biāo)記值,并存儲(chǔ)到所述標(biāo)記字段。
2.根據(jù)權(quán)利要求1所述的處理器,其特征在于通過(guò)執(zhí)行將數(shù)據(jù)從所述存儲(chǔ)器加載到所述寄存器的加載指令,所述數(shù)據(jù)字段原樣保持從所述存儲(chǔ)器輸出的數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的處理器,其特征在于所述生成單元根據(jù)由所述加載指令指定的地址、數(shù)據(jù)大小和數(shù)據(jù)類型,生成所述標(biāo)記值,所述數(shù)據(jù)類型表示應(yīng)傳送的數(shù)據(jù)是帶有代碼的數(shù)據(jù)或是無(wú)代碼的數(shù)據(jù)。
4.根據(jù)權(quán)利要求3所述的處理器,其特征在于所述處理器還具備轉(zhuǎn)換單元,根據(jù)所述標(biāo)記值轉(zhuǎn)換保持在所述寄存器的數(shù)據(jù)字段中的數(shù)據(jù)。
5.根據(jù)權(quán)利要求4所述的處理器,其特征在于所述轉(zhuǎn)換單元根據(jù)所述標(biāo)記值,對(duì)保持在所述寄存器的數(shù)據(jù)字段中的數(shù)據(jù)執(zhí)行零擴(kuò)展或代碼擴(kuò)展。
6.根據(jù)權(quán)利要求5所述的處理器,其特征在于在執(zhí)行讀出寄存器的指令時(shí),所述轉(zhuǎn)換單元執(zhí)行所述轉(zhuǎn)換。
7.根據(jù)權(quán)利要求5所述的處理器,其特征在于所述轉(zhuǎn)換單元,在未發(fā)生按照指令的寄存器讀寫(xiě)的空閑周期中執(zhí)行所述轉(zhuǎn)換,并根據(jù)轉(zhuǎn)換結(jié)果更新標(biāo)記字段及數(shù)據(jù)字段。
8.根據(jù)權(quán)利要求4所述的處理器,其特征在于在執(zhí)行將保持在所述寄存器的數(shù)據(jù)字段中的數(shù)據(jù)存儲(chǔ)到存儲(chǔ)器中的存儲(chǔ)指令時(shí),所述轉(zhuǎn)換單元執(zhí)行轉(zhuǎn)換。
9.根據(jù)權(quán)利要求8所述的處理器,其特征在于所述處理器還具有寫(xiě)入處理部,通過(guò)對(duì)應(yīng)于所述標(biāo)記值的寫(xiě)入處理,將由所述轉(zhuǎn)換單元轉(zhuǎn)換的數(shù)據(jù)寫(xiě)入存儲(chǔ)器。
10.根據(jù)權(quán)利要求2所述的處理器,其特征在于所述處理器在執(zhí)行從存儲(chǔ)器讀出大小比所述數(shù)據(jù)字段大的數(shù)據(jù)的加載指令時(shí),分割從存儲(chǔ)器讀出的數(shù)據(jù),并將分割的數(shù)據(jù)存儲(chǔ)在2個(gè)以上數(shù)據(jù)字段中。
11.根據(jù)權(quán)利要求10所述的處理器,其特征在于所述生成單元將包含所述分割的數(shù)據(jù)的分割數(shù)的標(biāo)記值存儲(chǔ)在標(biāo)記字段中。
12.根據(jù)權(quán)利要求11所述的處理器,其特征在于所述處理器具備運(yùn)算處理部,在執(zhí)行讀出存儲(chǔ)在所述寄存器的數(shù)據(jù)字段中的數(shù)據(jù)、并執(zhí)行進(jìn)行運(yùn)算處理的運(yùn)算指令時(shí),根據(jù)所述分割數(shù),結(jié)合存儲(chǔ)在2個(gè)以上數(shù)據(jù)字段中的數(shù)據(jù),還原數(shù)據(jù),并對(duì)還原后的數(shù)據(jù)執(zhí)行運(yùn)算處理。
13.根據(jù)權(quán)利要求12所述的處理器,其特征在于所述運(yùn)算處理部,在運(yùn)算處理結(jié)果的大小比數(shù)據(jù)字段大時(shí),跨2個(gè)以上數(shù)據(jù)字段來(lái)存儲(chǔ)運(yùn)算處理結(jié)果,并將表示跨2個(gè)以上數(shù)據(jù)字段存儲(chǔ)所述運(yùn)算結(jié)果的標(biāo)記值,與所述運(yùn)算處理結(jié)果相對(duì)應(yīng),存儲(chǔ)在所述標(biāo)記字段中。
14.根據(jù)權(quán)利要求11所述的處理器,其特征在于所述處理器在執(zhí)行將大小比所述數(shù)據(jù)字段大的數(shù)據(jù)寫(xiě)入存儲(chǔ)器的存儲(chǔ)指令時(shí),還原跨2個(gè)以上數(shù)據(jù)字段存儲(chǔ)的數(shù)據(jù),并將還原后的數(shù)據(jù)寫(xiě)入存儲(chǔ)器。
全文摘要
提供一種削減在存儲(chǔ)器和寄存器文件之間產(chǎn)生的延遲,可在高動(dòng)作頻率下動(dòng)作的處理器。處理器(100)具備具有多個(gè)寄存器的寄存器文件(110);和生成表示數(shù)據(jù)的屬性的標(biāo)記值的標(biāo)記值生成電路(102),各寄存器具有保持?jǐn)?shù)據(jù)的數(shù)據(jù)字段(112)、和保持標(biāo)記值的標(biāo)記字段(111),標(biāo)記值生成電路(102)在執(zhí)行將數(shù)據(jù)從存儲(chǔ)器(14)加載到寄存器文件(110)的寄存器的加載指令時(shí),根據(jù)該加載指令生成標(biāo)記值并存儲(chǔ)到標(biāo)記字段(111)中。
文檔編號(hào)G06F9/34GK101044450SQ20058003583
公開(kāi)日2007年9月26日 申請(qǐng)日期2005年3月1日 優(yōu)先權(quán)日2004年10月19日
發(fā)明者深井慎一郎 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
平昌县| 泸溪县| 车致| 南郑县| 玛多县| 扶余县| 台江县| 库伦旗| 榆林市| 永吉县| 集贤县| 铁岭市| 华坪县| 磐安县| 分宜县| 循化| 麻阳| 随州市| 镇远县| 咸宁市| 郧西县| 海南省| 包头市| 望奎县| 大洼县| 宜宾市| 池州市| 托里县| 于田县| 太康县| 灵武市| 天祝| 威宁| 台东县| 纳雍县| 建宁县| 乌苏市| 龙海市| 绵竹市| 秦安县| 高安市|