[其他]多個地址空間的尋址方法無效
| 申請?zhí)枺?/td> | 86103710 | 申請日: | 1986-06-02 |
| 公開(公告)號: | CN86103710A | 公開(公告)日: | 1986-12-24 |
| 發(fā)明(設(shè)計)人: | 小威廉·S·沃利;特雷斯·C·米勒;史蒂文·S·馬奇尼克 | 申請(專利權(quán))人: | 惠普公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02 |
| 代理公司: | 中國專利代理有限公司 | 代理人: | 匡少波,黃向陽 |
| 地址: | 美國加利福尼亞*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 地址 空間 尋址 方法 | ||
增加計算機(jī)虛擬存儲器的容量可用增加可存取的地址空間數(shù)量的辦法解決。32位的計算機(jī)可用32位的地址碼對給定的存儲空間內(nèi)的232個虛擬存儲單元進(jìn)行存取。對264個可尋址虛擬存儲單元來說,232個地址空間的每個含有232個存儲單元,若增加一個32位的地址空間識別碼,32位計算機(jī)可對任一地址空間內(nèi)的任一存儲單元進(jìn)行存取。遺憾的是,長達(dá)64位的地址指針難以處理,用它對數(shù)目眾多的地址空間進(jìn)行存取,使硬件和軟件復(fù)雜化,而這些硬件和軟件是轉(zhuǎn)換虛擬地址到物理地址所不可缺少的。
按照本發(fā)明提出的實(shí)施方案,計算機(jī)既可在需要時使用長地址指針,也可在僅需存取少量的地址空間時-多數(shù)計算機(jī)程序都是這種情況,使用短地址指針存取4個地址空間。每一存儲基準(zhǔn)指令包含一個兩位的空間標(biāo)識碼和一個基地址段,基地址段用來指定存放基地址的基地址寄存器。使用長地址指針時,1、2或3空間標(biāo)識碼,分別指定與之對應(yīng)的空間寄存器。空間寄存器中32位的空間識別碼是長地址指針的一部分。若使用短地址指針時,則空間標(biāo)識碼0,表示應(yīng)按基地址的高二位選擇空間寄存器4~7中的一個,空間識別碼則存于其中。由于使用基地址的高二位表示地址空間,所以4~7的各空間僅有1/4可以直接存取,從而形成了一個由4個空間中每個空間的1/4構(gòu)成的偽空間。
圖1表示一個計算機(jī)系統(tǒng),它可用于按照本發(fā)明提出的實(shí)施例。
圖2表示可用于圖1系統(tǒng)中的存儲基準(zhǔn)指令的位分配圖。
圖3A~3B是存取圖1所示存儲單元執(zhí)行步驟的流程圖。
圖4A~4B表示圖3A~B的流程圖中各種地址空間的存取。
圖1表示可按照本發(fā)明提出的實(shí)施例使用的32位計算機(jī)系統(tǒng)。處理機(jī)1通過高速緩沖存儲器(未表示出)可以接收來自存儲器的數(shù)據(jù)和指令。該系統(tǒng)包括若干通用寄存器5(包括基地址寄存器9和通用寄存器11,13)和被定義為SR-0至SR-7的8個空間寄存器7。
圖2表示一個32位存儲器基準(zhǔn)指令21(例如LOAD或STORE)。該指令可用于圖1所示的系統(tǒng)中,使用64位的長地址指針或短地址指針,可對若干地址空間中的一個地址空間,存取其中指定的存儲單元。六位的操作碼段11用以標(biāo)識指令。五位基地址段13確定含有基地址的基地址寄存器9。目標(biāo)或源字段15識別一個含有目標(biāo)或源地址的寄存器,目標(biāo)或源地址的使用在題為“指令流內(nèi)嵌入數(shù)據(jù)之方法”(METHOD????FOR????EMBEDDING????DATE????IN????AN????INSTRUCTION????STRAM)的共同未決申請中有比較完整的敘述,該申請于1985年7月28日由Worley等人提出,在此作為參考材料。一個兩位的空間標(biāo)識碼17(短指針)用于存取指定的地址空間,后面將敘述。一個14位偏移量字段19用以修改某個地址,詳見上面列出的美國專利申請。
圖3A~3B組成了各步驟的流程圖,在指令21執(zhí)行期間由圖1所示計算機(jī)系統(tǒng)完成這些步驟。第31步是讀出存儲器基準(zhǔn)指令21,第33步是修改地址(即基地址寄存器9中的基地址),在上面所提到的Worley等人的專利申請中已有說明。在第35步檢查長為兩位的空間標(biāo)識碼17。若SS不為零執(zhí)行圖3A所示步驟,若SS等于零則執(zhí)行圖3B所示步驟。
圖3A和4A描繪了SS不為零和使用長地址指針情況下的流程圖。空間寄存器SR-1,SR-2及SR-3的內(nèi)容可用非特權(quán)程序改變,以裝入各地址空間的空間識別碼。SS值為01,10和11時,表示SR-1,SR-2和SR-3的內(nèi)容為長地址指針的空間識別碼部分,用以存取圖4A中所示的三個空間B,C和D。
使用長指針時,執(zhí)行存儲基準(zhǔn)指令,除存貯基準(zhǔn)指令本身外,尚需兩條MOVE指令。例如圖4A中,欲將一個數(shù)據(jù)字從源寄存器S取出并送入指定地址空間B中的存儲單元,LOAD操作需要:
MOVE????date,SR-1
MOVE????date,GR-9
LOAD????(SS=01,b=GR-9),S
第一個MOVE指令把32位空間識別碼從存儲器或從指令流送入空間寄存器SR-1。第二個MOVE指令把基地址從寄存器或從指令流傳送進(jìn)通用寄存器GR-9。然后用SR-1(SS=01)中存放的空間識別碼和GR-9中存放的基地址組成長地址指針,可執(zhí)行LOAD指令。在字段15提供執(zhí)行指令所需的源地址S。這樣,使用長地址指針時,存儲基準(zhǔn)指令的執(zhí)行共需三條指令。此外,在存儲基準(zhǔn)指令執(zhí)行前,必須把一個正確的長地址指針空間識別碼部分傳送給一個空間寄存器。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于惠普公司,未經(jīng)惠普公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/86103710/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





