[發明專利]檢測載入-儲存沖突的方法及其裝置有效
| 申請號: | 201010183399.3 | 申請日: | 2010-05-20 |
| 公開(公告)號: | CN101853188A | 公開(公告)日: | 2010-10-06 |
| 發明(設計)人: | 羅德尼·E·虎克;柯林·艾迪 | 申請(專利權)人: | 威盛電子股份有限公司 |
| 主分類號: | G06F11/00 | 分類號: | G06F11/00;G06F9/38 |
| 代理公司: | 北京市柳沈律師事務所 11105 | 代理人: | 錢大勇 |
| 地址: | 中國臺*** | 國省代碼: | 中國臺灣;71 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 檢測 載入 儲存 沖突 方法 及其 裝置 | ||
技術領域
本發明是有關于微處理器,特別是有關于微處理器的載入-儲存沖突(load-store?collision)的檢測。
背景技術
于管線化微處理器設計上,通常會發生載入(load)操作與先前的儲存(store)操作在存儲器上重疊的情況。換言之,由儲存操作所預定(destine)的存儲器位置的一或多個字節,亦包含于由載入操作所指定(specify)的來源存儲器位置(source?memory?location)內。圖1是顯示程序序列中,對存儲器位置0x1234的32位(雙字,dword)儲存操作,及其后起始于存儲器位置0x1236的16位(半字,halfword)載入操作。由于載入操作所指定的來源存儲器位置的至少一字節,是與儲存操作所指定的目的存儲器位置(destination?memory?location)相同,故兩操作指定的地址重疊。
于某些情況下,微處理器可將儲存數據直接轉送至載入,此被稱為儲存轉送(store?forwar?ding)操作,且通常有助于效能提升。然而,于其它情況下,載入操作必須等待儲存操作提交(commit)至存儲器后,才能讀取數據,此被稱為一種載入-儲存沖突情況。舉例來講,載入操作與儲存操作并非同時具有寫回可高速緩存特性(write-back?cacheable?memory?trait)的存儲器區域,或者,載入操作無法接收所有來自儲存操作或儲存操做與快取所組合的數據。載入-儲存沖突通常不利于效能,因此必須被檢測出來。
發明內容
一方面,本發明提供一種檢測裝置,用以檢測一微處理器內一載入操作與一先前儲存操作之間,均存取同一快取列數據的一載入-儲存沖突。該檢測裝置包括:一載入字節屏蔽,用以于該快取列內,指定含有該載入操作所指定數據的起始字組;一儲存字節屏蔽,用以于該快取列內,指定含有該儲存操作所指定數據的起始字組;以及一載入操作快取列字組屏蔽,用以于該快取列內,指定含有該載入操作所指定數據的字組;一儲存操作快取列字組屏蔽,用以于該快取列內,指定含有該儲存操作所指定數據的字組。該檢測裝置亦包括一組合邏輯電路,用以檢測該載入-儲存沖突,若該載入與儲存操作所指定數據起始于該快取列的同一字組,被配置使用該載入字節屏蔽與儲存字節屏蔽來檢測該載入-儲存沖突,以及若該載入與儲存操作所指定數據并非起始于該快取列的同一字組,被配置使用該載入操作快取列字組屏蔽與儲存操作快取列字組屏蔽來檢測該載入-儲存沖突。
另一方面,本發明提供一種檢測方法,用以檢測一微處理器內一載入操作與一先前儲存操作之間,均存取同一快取列數據的一載入-儲存沖突。該檢測方法包括判斷由一載入字節屏蔽所指定的含有該載入操作所指定數據的起始字與由一儲存字節屏蔽所指定的含有該儲存操作所指定數據的起始字組是否起始于該快取列的同一字組,其中,一字組包括多個的字節。若該載入操作所指定數據與該儲存操作所指定數據起始于該快取列的同一字組,利用該載入字節屏蔽與該儲存字節屏蔽檢測該載入-儲存沖突。若該載入操作所指定數據與該儲存操作所指定數據并非起始于該快取列的同一字組,利用一于該快取列內指定含有該載入操作所指定數據的字組的載入操作快取列字屏蔽與一于該快取列指定含有該儲存操作所指定數據的字組的儲存操作快取列字組屏蔽檢測該載入-儲存沖突。
為使本發明的上述目的、特征和優點能更明顯易懂,下文特舉實施例,并配合所附圖式,詳細說明如下。
附圖說明
圖1是顯示一載入-儲存沖突的范例方塊圖。
圖2為一方塊圖,是顯示一快取列內的雙字與一雙字內的字節。
圖3是顯示依據本發明實施例,利用載入-儲存檢測單元的微處理器方塊圖。
圖4是顯示依據本發明圖3的載入-儲存檢測沖突單元所使用的一存儲器操作向量方塊圖。
圖5是顯示依據本發明實施例圖3的載入-儲存沖突檢測單元方塊圖。
圖6是顯示依據本發明圖5的載入-儲存沖突檢測單元的操作流程圖。
[主要元件標號說明]
202~64字節快取列的16個雙字;??????????204~雙字的4個字節;
300~微處理器;????????????????????????302~指令快取;
304~存儲器子系統;????????????????????306~數據快取;
308~載入-儲存沖突檢測單元;
312~指令轉譯器;??????????????????????316~暫存器別名表;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于威盛電子股份有限公司,未經威盛電子股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010183399.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:無卡金融交易系統
- 下一篇:用于半導體制造的先進工藝控制方法和系統





