[發(fā)明專利]據(jù)物理分頁(yè)指針比較結(jié)果轉(zhuǎn)送數(shù)據(jù)的裝置及方法有效
| 申請(qǐng)?zhí)枺?/td> | 02118552.2 | 申請(qǐng)日: | 2002-04-27 |
| 公開(kāi)(公告)號(hào): | CN1397877A | 公開(kāi)(公告)日: | 2003-02-19 |
| 發(fā)明(設(shè)計(jì))人: | 羅德·胡克;葛蘭·亨利 | 申請(qǐng)(專利權(quán))人: | 智慧第一公司 |
| 主分類號(hào): | G06F9/38 | 分類號(hào): | G06F9/38;G06F12/06;G06F12/08;G06F12/10 |
| 代理公司: | 隆天國(guó)際專利商標(biāo)代理有限公司 | 代理人: | 潘培坤,陳紅 |
| 地址: | 美國(guó)加*** | 國(guó)省代碼: | 暫無(wú)信息 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 物理 分頁(yè) 指針 比較 結(jié)果 轉(zhuǎn)送 數(shù)據(jù) 裝置 方法 | ||
技術(shù)領(lǐng)域
(0001)本發(fā)明涉及一種支持分頁(yè)虛擬內(nèi)存系統(tǒng)并工作于流水線化微處理器中的儲(chǔ)存再轉(zhuǎn)送的裝置及方法。特別是使用比較器用以比較加載數(shù)據(jù)的物理分頁(yè)指針與處于儲(chǔ)存緩沖區(qū)中數(shù)據(jù)的物理分頁(yè)指針以決定是否轉(zhuǎn)送處于儲(chǔ)存執(zhí)行狀態(tài)的數(shù)據(jù)。
背景技術(shù)
(0002)對(duì)現(xiàn)代的微處理器來(lái)說(shuō),在微處理器的不同區(qū)塊或流水線階段(pipeline?stage)內(nèi)同時(shí)處理數(shù)個(gè)指令是很平常的事。Hennessy與Patterson將流水線化(pipelining)定義為“一種多個(gè)指令得以重迭執(zhí)行的實(shí)作技術(shù)。”(引述自Computer?Architecture:A?QuantitativeApproach,2nd?edition,by?John?L.Hennessy?and?David?A.Patterson,Morgan?Kaufmann?Publishers,San?Francisco,CA,1996)作者接著對(duì)流水線化做了下列精彩的說(shuō)明:
(0003)“一個(gè)流水線就像是條裝配線。在汽車的裝配線上,有許多步驟,每個(gè)步驟對(duì)汽車的制造都有所貢獻(xiàn)。每個(gè)步驟與其它步驟同時(shí)并行,然而是在不同的汽車上進(jìn)行。在一計(jì)算機(jī)流水線中,每個(gè)步驟完成一個(gè)指令的部分,就像裝配線,不同的步驟并行地完成不同指令的不同部分。每個(gè)這些步驟稱為一流水階段(或者管道階段)(pipe?stage)或流水區(qū)段(pipe?segment)。這些階段一個(gè)連接著下一個(gè),形成一個(gè)流水——指令從一端進(jìn)入,歷經(jīng)這些階段,然后從另一端出去,就像汽車在裝配線上一樣。”
(0004)因此,當(dāng)指令被提取時(shí),就被導(dǎo)入流水線的一端。指令于微處理器中經(jīng)歷流水線階段,直到執(zhí)行完畢。然而,當(dāng)指令于微處理器中經(jīng)歷流水線階段的處理時(shí),有時(shí),一較早處理(或于較高階層中處理)的指令需要等待另一先前于它的較晚指令(或于較低階層中處理的指令)執(zhí)行完畢的結(jié)果。
(0005)何謂儲(chǔ)存執(zhí)行(Store?hit)狀態(tài)??jī)?chǔ)存執(zhí)行(Store?hit)狀態(tài)意謂在一較高層次流水線(Pipeline)中等待執(zhí)行的指令需等待一較低層次流水線中的指令執(zhí)行完畢后才執(zhí)行的一種狀況。儲(chǔ)存執(zhí)行(Store?hit)狀態(tài)常發(fā)生在流水線(Pipeline)中一加載指令需等待另一加載指令執(zhí)行完畢以標(biāo)示加載數(shù)據(jù)儲(chǔ)存地址后才執(zhí)行的一種狀況。也就是說(shuō),在流水線中,一加載指令執(zhí)行完畢,并標(biāo)示加載數(shù)據(jù)儲(chǔ)存的地址(address)后,另一加載指令根據(jù)其所標(biāo)示的數(shù)據(jù)儲(chǔ)存地址找到前述的地址上所儲(chǔ)存的加載數(shù)據(jù)后再執(zhí)行另一指令的一種狀況,此時(shí),加載數(shù)據(jù)仍然停留于微處理器的流水線中,尚未被更新至微處理器的數(shù)據(jù)高速緩存(Data?Cache)或系統(tǒng)內(nèi)存中。
(0006)在先進(jìn)的微處理器技術(shù)中,特別是在英特爾(Intel)X86微處理器系列中,儲(chǔ)存執(zhí)行(Store?hit)的狀況是經(jīng)常發(fā)生的。這種現(xiàn)象主要?dú)w因于先進(jìn)的X86微處理器的編譯器(Compiler)中的暫存盤(RegisterFile)使用相對(duì)較少的緩存器(Register),另外,X86微處理器內(nèi)建高容量的數(shù)據(jù)高速緩存(Data?Cache),且X86微處理器對(duì)于前述的數(shù)據(jù)高速緩存(Data?Cache)及暫存盤(Register?File)存取的速度幾乎是一樣快,因此,當(dāng)編譯器(Compiler)使用完暫存盤(Register?File)中的緩存器(Register)時(shí),編譯器(Compiler)會(huì)將高容量的數(shù)據(jù)高速緩存(DataCache)當(dāng)作大型的暫存盤(Register?File)使用。特別是當(dāng)以下的情況發(fā)生時(shí),編譯器(Compiler)常會(huì)產(chǎn)生儲(chǔ)存執(zhí)行(Store學(xué)hit)的情形。
(0007)第一,當(dāng)循環(huán)計(jì)數(shù)器(Loop?Counter)變量?jī)?chǔ)存于一內(nèi)存地址時(shí)。第二,當(dāng)一內(nèi)存地址被當(dāng)作一連串?dāng)?shù)學(xué)運(yùn)算的暫存地址時(shí)。第三,當(dāng)一迭堆地址被一串非常短的附程序中的一非常短的指令存取時(shí),也就是說(shuō),當(dāng)一傳回地址(Return?Address)被使用,同時(shí)系統(tǒng)執(zhí)行一附程序中的一小串指令時(shí),儲(chǔ)存執(zhí)行(Store?hit)的情形便會(huì)發(fā)生于傳回地址(Return?Address)上。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于智慧第一公司,未經(jīng)智慧第一公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/02118552.2/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 紙張分頁(yè)裝置
- 一種網(wǎng)頁(yè)分割方法和分頁(yè)服務(wù)器
- 分頁(yè)控件實(shí)現(xiàn)方法及裝置
- 報(bào)表自定義分頁(yè)打印裝置和方法
- 用于爬蟲(chóng)的數(shù)據(jù)處理方法及裝置
- 頁(yè)面內(nèi)容刷新方法、系統(tǒng)及頁(yè)面內(nèi)容同步刷新的管理系統(tǒng)
- 分頁(yè)控件實(shí)現(xiàn)方法、裝置及設(shè)備
- 一種Linux分頁(yè)替換方法及系統(tǒng)
- 數(shù)據(jù)庫(kù)分庫(kù)分表的分頁(yè)查詢方法、裝置和計(jì)算機(jī)設(shè)備
- 列表分頁(yè)快速響應(yīng)系統(tǒng)和方法





