亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于在寄存器棧和存儲器資源之間傳送數(shù)據(jù)的方法和設(shè)備的制作方法

文檔序號:6415884閱讀:283來源:國知局
專利名稱:用于在寄存器棧和存儲器資源之間傳送數(shù)據(jù)的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般地涉及微處理器的體系結(jié)構(gòu)狀態(tài)。具體地,本發(fā)明涉及用于在寄存器棧和由微處理器的存儲器定義的后備存儲器之間傳送數(shù)據(jù)的方法和設(shè)備。
寄存器??捎晌⑻幚砥鞯囊恍┩ㄓ眉拇嫫鳂?gòu)成,這些寄存器被指定成用于存儲由該微處理器執(zhí)行的某已存儲的程序的各過程所要求的以及有關(guān)的數(shù)據(jù)。具體地,一旦執(zhí)行某特定過程,就在該寄存器棧內(nèi)建立一個和該過程相關(guān)的棧幀。棧幀包括保留的寄存器組(含有有關(guān)過程的本地變量)、賦活記錄和幀標記。當某過程調(diào)用另一個過程時,被調(diào)用的幀接著在該調(diào)用過程的棧式幀的頂上建立另一個棧式幀。從而,對于其中要執(zhí)行一些嵌套過程的程序,寄存器棧可包括對應(yīng)數(shù)量的棧幀。
從而寄存器棧通過在單片上的寄存器組中堆棧多個相關(guān)的棧幀能使多個過程有效地共享一個大的寄存器文件。程序的典型調(diào)用/返回模式呈現(xiàn)出高頻的調(diào)用/返回但其范圍較小。寄存器棧明顯地減少過程調(diào)用點處的存儲數(shù)量(即寄存器節(jié)約)并且明顯地減少過程返回點處的裝入(即寄存器恢復),從而提供對和嵌套過程有關(guān)的信息的“高速緩存”。隨著處理器運行頻率的加快快于對存儲器資源(例如RAM)的存取時間的縮短,減少由于過程調(diào)用和返回所造成的由程序進行的存儲器存取次數(shù),在性能上可提供好處。從模塊化的流行、面向?qū)ο蟮某绦蛟O(shè)計以及采用動態(tài)鏈接庫的角度來看,該優(yōu)點變得更為突出。
由于寄存器棧長度有限,可以理解在深嵌套過程調(diào)用序列下,寄存器棧的容量可能被超出,造成所謂的“信息漏失”。在這樣的情況下,必須從寄存器棧把某些前面的棧幀的寄存器傳送到后備存儲器中,以便創(chuàng)造寄存器棧內(nèi)的容量。類似地,由于過程回送而使寄存器棧變空,需要把已存儲到后備存儲器中的前棧幀的寄存器恢復到寄存器棧中。當寄存器棧的寄存器中所包含的位數(shù)不是后備存儲器所駐留的存儲器資源定址所采用的定址模式的倍數(shù)的情況下,寄存器棧和后備存儲器之間的棧幀傳送可能是有問題的。
依據(jù)本發(fā)明提供一種用于從寄存器幀向存儲器資源或存儲部件傳送數(shù)據(jù)的設(shè)備。該設(shè)備包括一個臨時存儲器和傳送邏輯。該傳送邏輯把寄存器棧里的第一寄存器內(nèi)容中的N位傳送到存儲器資源中的第一單元,并且還把第一寄存器內(nèi)容中的M位傳送到臨時存儲器中的第一單元。當已經(jīng)在寄存器棧和存儲器資源之間出現(xiàn)預定數(shù)量的數(shù)據(jù)傳送時,該傳送邏輯把臨時存儲器的累積內(nèi)容傳送到存儲器資源中的第二單元。
從附圖以及下面的詳細說明,本發(fā)明的其它特征將會清楚。
本發(fā)明是通過示例的方式示出的并且不受各附圖的限制,其中用相同的標號表示類似的部件,附圖是

圖1示意表示可在其中實現(xiàn)和運用本發(fā)明的一種計算機系統(tǒng)。
圖2示意表示可在其中實現(xiàn)和運用本發(fā)明的一種處理機。
圖3示意表示一種依據(jù)本發(fā)明的一種實施例的設(shè)備,其用于在寄存器和存儲器資源之間傳送數(shù)據(jù)。
圖4是一個流程圖,表示一種依據(jù)本發(fā)明的用于把寄存器中的內(nèi)容存儲到存儲器資源中的方法。
圖5是一個流程圖,表示一種依據(jù)本發(fā)明從存儲器資源中恢復寄存器的內(nèi)容的方法。
圖6示意表示依據(jù)本發(fā)明的在主存儲器中構(gòu)建出的后備存儲器。
說明一種在集成電路內(nèi)的用于在寄存器和存儲器資源之間傳送數(shù)據(jù)的方法和設(shè)備。在下述說明中,出于解釋的目的,為了對本發(fā)明提供完整的理解,陳述了許多具體細節(jié)。然而對于業(yè)內(nèi)人士,很明顯,可以不在這些具體細節(jié)下實現(xiàn)本發(fā)明。計算機系統(tǒng)和微處理器概述參見圖1,圖1以方塊圖的形式示出計算機系統(tǒng)10的概況,該系統(tǒng)可和所說明的任一本發(fā)明的實施例一起使用。請理解,雖然圖1用于提供一種計算機系統(tǒng)的總描述,但未示出該系統(tǒng)的某些細節(jié)。如公開本發(fā)明所需的那樣,參照本說明書所提供的其它附圖描述其它細節(jié)。此外,本發(fā)明是通過示范實施例說明的。在本發(fā)明的范圍內(nèi)業(yè)內(nèi)人士可設(shè)想替代實施例。如圖1中所示,計算機系統(tǒng)10包括一條用于在處理器14和總線橋路16之間傳遞信息的處理器總線12。處理器14還通過一條專用總線和二級(L2)高速緩存器18連接。處理器14通過總線橋路16和計算機系統(tǒng)10的其余部分通信,和總線橋路16連接的有三級(L3)高速緩存器20以及典型地為隨機存取存儲器(RAM)的主存儲器22。為了便利一些外圍設(shè)備、處理器14和主存儲器22之間的通信,系統(tǒng)總線24還和總線橋路16連接。在系統(tǒng)總線24和相關(guān)的外圍設(shè)備之間連接著一些專用輸入/輸出(I/O)端口26。外圍設(shè)備包括顯示器28(例如陰極射線管(CRT)或液晶顯示器(LCD))、字母數(shù)字輸入部件30(例如鍵盤)、光標控制部件32(例如鼠標或其它指點器)、硬拷貝部件34(例如打印機或提供計算機圖象的可視表示的繪圖儀)以及信號生成部件36(例如麥克風或揚聲器)。計算機系統(tǒng)10還包括一個海量存儲部件38,例如磁盤以及相關(guān)的經(jīng)專用I/O端口26連接于系統(tǒng)總線24的驅(qū)動器。
現(xiàn)參照圖2,圖中以方塊圖的形式更詳細地說明圖1的處理器14。處理器14包括一個總線接口單元40,后者提供微處理器14和系統(tǒng)總線12之間的接口??偩€接口單元40連接成允許預取器42通過指令高速緩存器44訪問計算機系統(tǒng)10的主存儲器22。預取器42經(jīng)總線接口單元40從指令高速緩存器44或從主存儲器22檢索由指令指針定址的指令。轉(zhuǎn)移預測單元46為預取器42檢索的轉(zhuǎn)移指令提供推測性預測,并且還根據(jù)是否發(fā)生預測的轉(zhuǎn)移輸出對順序存儲器地址或目標存儲器地址定址的指令指針。在復雜指令集計算(CISC)體系結(jié)構(gòu)下,預取器42把指令傳送到譯碼器48,以便譯碼成一組供下游處理的微操作。受控只讀存儲器(ROM)50和譯碼器48連接并從譯碼器48接收入口點。譯碼器48和受控ROM50向控制單元52提供微操作??梢岳斫?,在精簡指令集計算(RISC)實施方式下,可以從處理器體系結(jié)構(gòu)中省略指令譯碼器48和受控ROM50。
控制單元52分別向整數(shù)執(zhí)行單元54和浮點執(zhí)行單元56提供供執(zhí)行用的整數(shù)指令或浮點指令。整數(shù)執(zhí)行單元54及浮點執(zhí)行單元56在執(zhí)行指令時訪問數(shù)據(jù)高速緩存器58。還從控制單元52向地址生成單元60提供微操作,而地址生成單元60生成和翻譯地址信息。
圖3示意表示根據(jù)本發(fā)明的一種示范實施例的一組通用寄存器80、主存儲器82和傳送設(shè)備84,傳送設(shè)備84用于便利通用寄存器組80和主存儲器82之間的信息傳送。寄存器棧和后備存儲器通用寄存器組中的一個子集指定成充當寄存器棧86。例如,可把128個通用寄存器中的96個指定為構(gòu)成寄存器棧86。在程序執(zhí)行時,可向每個過程分配寄存器棧中的一定數(shù)量的寄存器作為本地棧幀。參照圖3,寄存器棧86相應(yīng)地包括分別和過程A、B、C相關(guān)的棧幀88、90和92。每個棧幀88、90和92包括預定數(shù)量的具有特定位長的寄存器。在圖3中示出的實施例中,寄存器棧中的每個寄存器具有65位的位長。
當調(diào)用另一個過程時自動地保留每個棧幀。例如,當過程A調(diào)用過程B時保留用于過程A的棧幀88。類似地,當過程B調(diào)用過程C時在寄存器棧中保留用于過程B的棧幀90。當出現(xiàn)過程的返回時,則從寄存器幀中去掉有關(guān)的棧幀。例如,當從過程C返回到過程B時,就從寄存器棧86去掉棧幀92。
可理解寄存器棧86的容量是固定的并且有限。在具有大量相繼被調(diào)用過程的情況下,寄存器棧86可能不具有能容納所有被調(diào)用過程的棧幀的容量,從而寄存器??赡芤绯龌颉靶畔⒙┦А?。在這種情況下,必須把一些較老的棧幀保存到主存儲器82中被指定成后備存儲器94的部分中。在寄存器棧86中的過程調(diào)用棧變?yōu)檫^深的情況下,必須如圖3中所示把棧幀88、90和92中的一部分保存到后備存儲器94中。
類似地,當從寄存器棧86去掉用于過程A、B、C后面的過程的棧幀時,則重新需要使棧幀88、90和92駐留到寄存器棧86中。從而,當在寄存器棧86中有可使用的容量時,則可以重新逐漸地把各棧幀88、90、92部分從后備寄存器94傳送到寄存器棧86。屬性信息在先進的處理器體系結(jié)構(gòu)中,需要把屬性信息和某些數(shù)據(jù)關(guān)聯(lián)起來。例如,在能推測指令執(zhí)行的處理器中,有可能推遲由這種推測性指令產(chǎn)生的異常,直至相關(guān)指令變成非推測性的。為了實現(xiàn)對由推測執(zhí)行的指令生成的異常的推遲的處理,圖3中示出的本發(fā)明的該實施例提出對每個64位通用寄存器80添增稱為屬性位的第65位。從而示出一個示范性的寄存器96,其包括64個數(shù)據(jù)位98和單個屬性位100。屬性位100用于指示以該相關(guān)寄存器為目標的一系列推測性裝入操作是成功還是失敗。若對某具體存儲器地址的裝入指令會產(chǎn)生故障,則和該目標寄存器相關(guān)的推測性裝入指令將把屬性位100置為邏輯-(1)。以這種方式,推遲對該故障的處理,直至某程序(如果有過的話)企圖使用該裝入指令的結(jié)果。這樣,編譯器可以在實際上有可能之前更早地發(fā)出裝入指令。
建立具有65位長的通用寄存器,盡管從異常處理角度是有利的,但在把數(shù)據(jù)從寄存器棧86保存到后備寄存器94中可能會造成一定的低效率。由于主存儲器82是以8位字節(jié)定址的,一種把寄存器的內(nèi)容存儲到后備存儲器94中的方法提議利用9個字節(jié)存儲每個通用寄存器。但是,由于最高有效位(MSB)是向主存儲器82傳送的最后的第9字節(jié)中唯一的一位,這對每個寄存器造成7個位的浪費。當用16位的字節(jié)定址存儲器時這種低效會惡化。
現(xiàn)具體參照圖3,傳送設(shè)備84包括寄存器棧引擎102、一對地址寄存器104和106以及一對集合寄存器108和110。寄存器棧引擎102負責從寄存器棧86向后備存儲器94傳送各棧幀(溢出),并且負責從后備存儲器94向寄存器棧86回傳各棧幀(回填)。寄存器棧引擎102在無程序的直接干預下與指令的執(zhí)行并發(fā)地以及異步地溢出和回填寄存器棧86。這允許寄存器棧引擎102利用未使用的存儲器帶寬以占先方式動態(tài)地執(zhí)行寄存器溢出和回填。例如,在預計可能出現(xiàn)寄存器棧溢出時,寄存器棧引擎102可通過向后備存儲器94傳送棧幀先占寄存器棧86溢出。類似地,寄存器棧引擎102可以在實際上需要棧幀之前占先地從后備寄存器94向寄存器棧86傳送棧幀。通過以異步方式進行這些溢出操作和回填操作并使用空間的存儲器周期,處理器性能得到提高。
寄存器棧引擎102和存儲地址寄存器104及裝入地址寄存器106連接。存儲地址寄存器104是一個64位的寄存器,并且含有后備存儲器94中的單元地址,從寄存器棧86檢索出的下一個64位值將保存在該單元中。在保存通用寄存器時寄存器棧引擎102使用存儲地址寄存器104,并且可能要求其中所包含的該地址是8字節(jié)排列的。類似地,裝入地址寄存器106是一個64位寄存器,并且包含后備寄存器94中的單元地址(比8字節(jié)更深),從該單元可檢索要傳回到寄存器棧86的下一個64位值。該地址可能類似地要求是8字節(jié)排列的。
當和屬性位100相關(guān)的數(shù)據(jù)在寄存器棧86和后備存儲器94之間傳送時,存儲集合寄存器108和裝入集合寄存器110專用于臨時存儲這些屬性位100。后面會參照圖4和圖5說明這些存儲寄存器108、110的操作。集合寄存器108、110各為64位的寄存器。存儲集合寄存器108最多可包含后備存儲器94中最近保留的63個寄存器的屬性位100。類似地,裝入集合寄存器110最多可包含要接著恢復的63個寄存器的屬性位100。方法現(xiàn)參照圖4和圖5中示出的流程圖說明由傳送設(shè)備84執(zhí)行的在寄存器棧86和后備存儲器94之間傳送數(shù)據(jù)的方法。圖4中示出依據(jù)本發(fā)明的一種典型實施例的把通用寄存器96的內(nèi)容存儲到后備存儲器94中的指定單元上的方法。
總的來說,示范性方法120提議以63個寄存器為一組把通用寄存器(的內(nèi)容)保存到后備存儲器94中,并且同時把每個寄存器的屬性性100收集到存儲集合寄存器108中。請理解本發(fā)明不限制于以63個寄存器為一組,而是可傳送任何大小的寄存器組。在把每一個63個通用寄存器傳送到后備存儲器94后,方法120接著提議把目前包含在寄存器108中的屬性位100的集合按64位的雙字保留在后備存儲器94中。更準確地說,方法120從判定框126開始,其中判定集合寄存器108是否達到預定的最大容量。在所示的實施例中,判定集合寄存器108是否包含63個屬性位。若集合寄存器108未達到預定容量,則對寄存器棧86中相繼的下一個通用寄存器執(zhí)行步驟122和124。具體地,步驟122請求把通用寄存器N的各個位〔630〕(即數(shù)據(jù)位組98)保存到后備存儲器94中下一個可使用的64位單元中。在步驟124,通用寄存器N的位〔64〕(即屬性位100)被保存到存儲集合寄存器108中的下一個可用的位置上。若集合寄存器108的最大容量已被到達,則方法120替代地進入步驟128,并且把存儲集合寄存器108的內(nèi)容保存到后備存儲器94中的下一個可使用的64位單元里。現(xiàn)在存儲集合寄存器108中的內(nèi)容已排空,接著對寄存器棧86中的下一組63個通用寄存器重復方法120。
可以以許多不同的方式進行步驟126中的存儲集合寄存器108是否包含預定數(shù)量的屬性位100的判定。在一種實施例中,可設(shè)置一個簡單的計數(shù)器(未示出),其保持寄存器棧86和后備存儲器94之間的寄存器傳送次數(shù)的計數(shù)。在另一種實施例中,寄存器棧引擎102可以簡單地檢查存儲地址寄存器104中包含的專用的地址序列位組。在所示出的實施例中,存儲地址寄存器104的位組〔83〕提供從寄存器棧86到后備存儲器94的寄存器傳送次數(shù)的計數(shù)。從而,若存儲器地址寄存器104中的位組〔83〕不是都為1(1’s),則表示存儲收集寄存器108尚未達到其預定容量,從而應(yīng)對下一個相繼的通用寄存器執(zhí)行步驟122和124。另一方面,若存儲地址寄存器104的位組〔83〕全為1(1’s),則表示已把63個屬性位100保存到存儲集合寄存器108中,并應(yīng)接著執(zhí)行步驟128。
圖6更詳細地示出后備存儲器94,并提供一個如何把批數(shù)據(jù)130存儲到主存儲器82中的示例。每個批數(shù)據(jù)示成由一組63個通用寄存器的內(nèi)容和相隨的一個匯集的屬性位集合132所構(gòu)成,該屬性位集合由和前面的通用寄存器內(nèi)容相關(guān)的屬性位組成。
現(xiàn)參照圖5,圖中的流程圖示出一種依據(jù)本發(fā)明的一種實施例的從主存儲器82里的后備存儲器94恢復一組通用寄存器86的內(nèi)容的方法140。實質(zhì)上,方法140包括從后備存儲器94中的某單元把具有64位位長的屬性位集合132裝入到裝入集合寄存器110中。然后,把63個通用寄存器中每個寄存器的內(nèi)容和目前包含在裝入集合寄存器110中的一個相關(guān)的屬性位配對,并把產(chǎn)生的65位的數(shù)據(jù)及屬性組合傳送到寄存器棧86中的下一個可使用的通用寄存器96中。對于63個通用寄存器內(nèi)容中的每條內(nèi)容及裝入集合寄存器110中存儲的相關(guān)的屬性位進行這種處理。在完成63個通用寄存器的內(nèi)容的傳送時,向裝入集合寄存器110裝入用于下一批63個寄存器的屬性位組,并且重復上述處理。現(xiàn)具體地參照圖5,方法140從判定框146開始,在其中判定裝入集合寄存器110中的所有屬性位是否已經(jīng)保存到適當?shù)耐ㄓ眉拇嫫髦小H魶]有,則該方法進入步驟142,并從后備存儲器94和裝入集合寄存器110恢復下一個相繼的寄存器的內(nèi)容。具體地,步驟142請求把后備存儲器入口(N)的位組〔630〕存儲到下一個65位通用寄存器96的位組〔630〕中。在步驟144,把位(N)(即和位組〔630〕相關(guān)的屬性位)保存到在步驟142進行保存工作的同一個通用寄存器96的位〔64〕中。從而,如上面所說明在某個通用寄存器中重新裝配64個數(shù)據(jù)位98以及單個屬性位100。另一方面,若在判定框146確定裝入集合寄存器110已排空,則在步驟148用下次63個要恢復的通用寄存器的屬性位集合132再次填充寄存器110。
可以通過查看一個簡單的保持后備存儲器和寄存器棧之間的傳送次數(shù)的計數(shù)的計數(shù)器在判定框146確定裝入集合寄存器是否排空。在圖3中示出的本發(fā)明的該實施例中,裝入地址寄存器106的位組〔83〕提供從后備存儲器到寄存器棧的已發(fā)生的傳送次數(shù)的計數(shù)。從而,通過查看這些位組〔83〕,寄存器棧引擎102能夠判定裝入集合寄存器110是否已經(jīng)排空。具體地,若裝入集合寄存器106的位組〔83〕不是全都為1(1’s),則表明裝入集合寄存器110尚未排空。替代地,若位組〔83〕全為1(1’s),則從后備存儲器94把由裝入地址寄存器106中的地址所規(guī)定的單元處的雙字(即,64位的屬性集合132)裝入到裝入集合寄存器110中。以這種方式,在寄存器110中可得到下一組要恢復的63個寄存器的各屬性位。
還應(yīng)注意,在一種實施例中,用來判定屬性集合寄存器是否滿的同一機制還用于判定屬性集合寄存器的哪一位添加到恢復寄存器的N個數(shù)據(jù)位組上。
這樣,對在寄存器和存儲器資源之間傳送數(shù)據(jù)的一種方法和設(shè)備作了說明。盡管參照一些具體的示范實施例說明了本發(fā)明,但很明顯,在不背離本發(fā)明的更廣闊的實質(zhì)和范圍下可對這些實施例做出各種修改和改變。從而,本發(fā)明書及各附圖只是當成示意性的而不具有限制性的含意。
權(quán)利要求
1.一種把寄存器的內(nèi)容存儲到存儲器資源中的方法,該方法包括步驟把第一寄存器的內(nèi)容中的N位存儲到該存儲器資源的第一單元中;把第一寄存器的內(nèi)容中的M位存儲到集合存儲器中;判定該集合存儲器是否含有預定位數(shù)的要存儲的信息;以及若該集合存儲器含有預定位數(shù)的要存儲的信息,則把該集合存儲器的內(nèi)容存儲到該存儲器資源的第二存儲器單元中。
2.權(quán)利要求1的方法,其中若該集合存儲器不含有預定位數(shù)的要存儲的信息,則把第二寄存器的內(nèi)容中的N位存儲到該存儲器資源中的第二單元中,并把第二寄存器的內(nèi)容中的M位存儲到該集合存儲器中。
3.權(quán)利要求1的方法,其中第一和第二存儲器單元是該存儲器資源中的相繼的存儲器單元。
4.權(quán)利要求1的方法,其中第一寄存器具有N+M位的容量,該存儲器資源中的第一單元具有N位的容量,并且該預定位數(shù)的要存儲的信息包括N位。
5.權(quán)利要求1的方法,其中第一寄存器包括寄存器棧的一個通用寄存器,而該存儲器資源包括隨機存取存儲器(RAM)。
6.權(quán)利要求1的方法,其中集合存儲器包括寄存器。
7.權(quán)利要求1的方法,其中N+M不是存儲器資源所采用的總線寬度的整數(shù)倍數(shù)。
8.權(quán)利要求1的方法,其中該M個位包括和該N個位有關(guān)的屬性信息。
9.權(quán)利要求1的方法,其中屬性信息表示由該N位組成的數(shù)據(jù)是否有效。
10.一種從存儲器資源恢復寄存器的內(nèi)容的方法,該方法包括步驟把來自該存儲器資源的第一單元的N個位存儲到第一寄存器中;把來自一個臨時存儲器的M個位存儲到第一寄存器中;判定在寄存器中是否已存儲來自該臨時存儲器的預定位數(shù)的信息;以及若是,則把該存儲器資源的第二存儲器單元的內(nèi)容存儲到該臨時存儲器中。
11.權(quán)利要求10的方法,其中,若寄存器中尚未存儲來自該臨時存儲器的預定位數(shù)的信息,則把該存儲器資源里第二單元的內(nèi)容中的M位存儲到第二寄存器中,并且把來自臨時存儲器的M個位存儲到第二寄存器中。
12.權(quán)利要求10的方法,其中第一寄存器具有N+M個位的容量,該存儲器資源中的第一單元具有N位的容量,并且該預定位數(shù)的信息由N位組成。
13.權(quán)利要求10的方法,其中第一和第二存儲器單元是存儲器資源中的相繼單元。
14.權(quán)利要求10的方法,其中第一寄存器包括寄存器棧的一個通用寄存器,而存儲器資源包括集成電路主存儲器。
15.權(quán)利要求10的方法,其中該M個位包括和該N個位有關(guān)的屬性信息。
16.一種用于從寄存器棧向存儲器資源傳送數(shù)據(jù)的設(shè)備,該設(shè)備包括一個臨時存儲器;以及傳送邏輯(電路),其配置成把該寄存器棧第一寄存器的內(nèi)容中的N位傳送到該存儲器資源中的第一單元,把第一寄存器的內(nèi)容中的M位傳送到該臨時存儲器中的第一單元,以及在該寄存器棧和該存儲器資源之間傳送預定數(shù)量的數(shù)據(jù)后把該臨時存儲器的內(nèi)容傳送到該存儲器資源中的第二單元。
17.權(quán)利要求16的設(shè)備包括一個計數(shù)器,用于保持從該寄存器棧到該存儲器資源的數(shù)據(jù)傳送數(shù)量的計數(shù)。
18.權(quán)利要求17的設(shè)備,其中該計數(shù)器包括一個對存儲器資源的單元定址的地址寄存器。
19.權(quán)利要求16的設(shè)備,其中該寄存器棧中的第一寄存器具有N+M個位的位長度并且該存儲器資源中的第一單元具有N個位的位長度。
20.權(quán)利要求16的設(shè)備,其中N+M不是存儲器資源所采用的總線寬度的整數(shù)倍數(shù)。
21.權(quán)利要求16的設(shè)備,其中若在寄存器棧和存儲器資源之間尚未出現(xiàn)傳送預定數(shù)量的數(shù)據(jù),則把該傳送邏輯電路配置成把來自該寄存器棧內(nèi)的第二寄存器的內(nèi)容中的N個位傳送到該存儲器資源中的第二單元,把第二寄存器的內(nèi)容中的M個位傳送到該臨時存儲器內(nèi)的第二單元。
22.權(quán)利要求16的設(shè)備,其中該存儲器資源中的第一和第二存儲單元是相繼的存儲單元。
23.權(quán)利要求16的設(shè)備,其中該M個位包括和該N個位有關(guān)的屬性信息。
24.一種用于從存儲器資源向寄存器棧傳送數(shù)據(jù)的設(shè)備,該設(shè)備包括一個臨時存儲器;以及傳送邏輯電路,其配置成把來自該存儲器資源的第一單元的N個位和來自該臨時存儲器的第一單元的M個位傳送到該寄存器棧中的第一寄存器,以及在該寄存器棧和該存儲器資源之間傳送預定數(shù)量的數(shù)據(jù)后把該存儲器資源內(nèi)第二單元的內(nèi)容傳送到該臨時存儲寄存器。
25.權(quán)利要求24的設(shè)備包括一個計數(shù)器,用于保持該寄存器棧和該存儲器資源之間的傳送數(shù)量的計數(shù)。
26.權(quán)利要求25的設(shè)備,其中該計數(shù)器包括一個對存儲器資源的單元定址的地址寄存器。
27.權(quán)利要求24的設(shè)備,其中該寄存器棧中的第一寄存器具有N+M個位的位長度并且該存儲器資源中的第一單元具有N個位的位長度。
28.權(quán)利要求24的設(shè)備,其中N+M不是存儲器資源所采用的總線寬度的整數(shù)倍數(shù)。
29.權(quán)利要求24的設(shè)備,其中若在寄存器棧和存儲器資源之間尚未出現(xiàn)傳送預定數(shù)量的數(shù)據(jù),則把該傳送邏輯電路配置成把來自該存儲器資源內(nèi)的第二單元的N個位以及來自該臨時存儲器內(nèi)的第二單元的M個位傳送到該寄存器棧內(nèi)的第二寄存器。
全文摘要
一種計算機實現(xiàn)的用于把寄存器棧(86)里的某通用寄存器(80)的內(nèi)容傳送到主存儲器(82)里的后備存儲器(94)中的單元上的方法和設(shè)備。當向后備存儲器里的單元傳送通用寄存器的內(nèi)容時,本發(fā)明推薦在一個臨時集合寄存器(108或110)中收集寄存器預定組中每個通用寄存器所包含的屬性位。一旦填滿該臨時集合寄存器,就把該寄存器中的內(nèi)容寫到后備存儲器里的下一個可用的單元上。類似地,在從后備存儲器恢復各寄存器時,把后備寄存器中保存的屬性位的集合發(fā)送到臨時集合寄存器。然后,把每個屬性位和相關(guān)的數(shù)據(jù)一起保持到通用寄存器中,從而恢復每個通用寄存器以前的內(nèi)容。
文檔編號G06F9/30GK1278344SQ98810765
公開日2000年12月27日 申請日期1998年9月30日 優(yōu)先權(quán)日1997年9月30日
發(fā)明者約那森·K·羅斯, 凱利·A·考坦特, 卡羅爾·L·桑普森, 阿徹姆德·R·扎赫 申請人:艾迪爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1