專利名稱:適用于高速緩存的讀訪問(wèn)和存儲(chǔ)電路讀分配的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總的來(lái)說(shuō)涉及存儲(chǔ)電路讀分配,尤其涉及適用于高速緩存的存儲(chǔ)電路讀分配。
背景技術(shù):
在現(xiàn)有技術(shù)的數(shù)據(jù)處理系統(tǒng)中,在高速緩存中未命中的讀訪問(wèn)會(huì)導(dǎo)致根據(jù)高速緩存的讀置換算法來(lái)分配該高速緩存中的高速緩存線。在高速緩存的正常操作中,這通常是期望的行為。然而,在某些情況下,這種行為可能是有問(wèn)題的。
借助(但不限于)附圖的實(shí)例來(lái)說(shuō)明本發(fā)明,在附圖中,相同的參考標(biāo)記表示相同的元件,其中圖1以框圖形式示出根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)處理系統(tǒng);圖2以流程圖形式示出根據(jù)本發(fā)明一個(gè)實(shí)施例的高速緩存的讀訪問(wèn);圖3以流程圖形式示出要求根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)存儲(chǔ)電路讀訪問(wèn)的調(diào)試操作。
本領(lǐng)域技術(shù)人員會(huì)認(rèn)識(shí)到,圖中的元件僅為了簡(jiǎn)明和清楚而示出,不必按比例繪制。例如,圖中一些元件的尺寸可能相對(duì)于其他元件被夸大了,以有助于理解本發(fā)明的實(shí)施例。
具體實(shí)施例方式
在現(xiàn)有技術(shù)的數(shù)據(jù)處理系統(tǒng)中,由調(diào)試器進(jìn)行的在L2高速緩存中未命中的讀訪問(wèn)會(huì)導(dǎo)致L2高速緩存中的高速緩存線被分配,潛在地置換當(dāng)前有效的、且被潛在修正的高速緩存線。如果調(diào)試器是通過(guò)要執(zhí)行的一系列指令來(lái)單步執(zhí)行的,這可能是希望的結(jié)果。然而,如果調(diào)試器正在僅為了可見(jiàn)性(visibility)目的而讀取高速緩存中的內(nèi)容,這可能會(huì)造成問(wèn)題。本發(fā)明解決了該問(wèn)題、以及與讀訪問(wèn)和存儲(chǔ)電路讀分配相關(guān)的眾多其他問(wèn)題。
圖1示出根據(jù)本發(fā)明一個(gè)實(shí)施例的數(shù)據(jù)處理系統(tǒng)10。在一個(gè)實(shí)施例中,數(shù)據(jù)處理系統(tǒng)10包括調(diào)試電路12,該調(diào)試電路12通過(guò)信號(hào)36與交換電路20雙向耦合,并向交換電路20提供讀分配信號(hào)30。在一個(gè)實(shí)施例中,數(shù)據(jù)處理系統(tǒng)10還包括處理器14,處理器14通過(guò)信號(hào)38與交換電路20雙向耦合,并向交換電路20提供讀分配信號(hào)31。在一個(gè)實(shí)施例中,數(shù)據(jù)處理系統(tǒng)10還包括直接存儲(chǔ)器訪問(wèn)(DMA)16,DMA 16通過(guò)信號(hào)40與交換電路20雙向耦合,并向交換電路20提供讀分配信號(hào)32。在一個(gè)實(shí)施例中,數(shù)據(jù)處理系統(tǒng)10還包括總線主控器18,總線主控器18通過(guò)信號(hào)42與交換電路20雙向耦合,并向交換電路20提供讀分配信號(hào)33。在一個(gè)實(shí)施例中,數(shù)據(jù)處理系統(tǒng)10還包括L2高速緩存22,L2高速緩存22通過(guò)信號(hào)44與交換電路20雙向耦合,并從交換電路20接收讀分配信號(hào)34。在一個(gè)實(shí)施例中,數(shù)據(jù)處理系統(tǒng)10還包括外圍設(shè)備24,外圍設(shè)備24通過(guò)信號(hào)46與交換電路20雙向耦合,并從交換電路20接收讀分配信號(hào)35。
注意,在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)12、14、16或18中哪一個(gè)發(fā)起了對(duì)L2高速緩存22的讀訪問(wèn),來(lái)通過(guò)交換電路20將讀分配信號(hào)30-33中的一個(gè)提供作為讀分配信號(hào)34。注意,在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)12、14、16或18中哪一個(gè)發(fā)起了對(duì)外圍設(shè)備24的讀訪問(wèn),來(lái)通過(guò)交換電路20將讀分配信號(hào)30-33中的一個(gè)提供作為讀分配信號(hào)35。
在本發(fā)明的一個(gè)實(shí)施例中,處理器14包括耦合到處理器14的L1高速緩存15。盡管示出L1高速緩存15比L2高速緩存22更直接地耦合到處理器14,但本發(fā)明的替代實(shí)施例可以具有任何數(shù)量的高速緩存,它們以各種所希望的方式耦合到處理器14。在本發(fā)明的替代實(shí)施例中,L1高速緩存15和L2高速緩存22不必是高速緩存,而可以是具有讀分配能力的任何類型的存儲(chǔ)電路。在本發(fā)明的一個(gè)實(shí)施例中,L2高速緩存22通過(guò)導(dǎo)體48耦合到系統(tǒng)存儲(chǔ)器26。
在本發(fā)明的一個(gè)實(shí)施例中,讀分配信號(hào)30和信號(hào)36是總線60的一部分;讀分配信號(hào)31和信號(hào)38是總線61的一部分;讀分配信號(hào)32和信號(hào)40是總線62的一部分;讀分配信號(hào)33和信號(hào)42是總線63的一部分;讀分配信號(hào)34和信號(hào)44是總線64的一部分;讀分配信號(hào)35和信號(hào)46是總線65的一部分??偩€60-65可以是相同的總線,或者可以是具有公共總線協(xié)議的公共總線的一個(gè)或多個(gè)子集。作為替換,總線60-65中的不同總線可以使用相同的總線協(xié)議或不同的總線協(xié)議。在本發(fā)明的替代實(shí)施例中,互連電路50可以不使用任何總線結(jié)構(gòu)或總線協(xié)議。在本發(fā)明的一個(gè)實(shí)施例中,互連電路50包括交換電路20和總線60-65;然而,互連電路50以按任何方式實(shí)現(xiàn)。如這里所使用的,術(shù)語(yǔ)“總線”用來(lái)表示多個(gè)信號(hào)或?qū)w,它們可用來(lái)傳送一個(gè)或多個(gè)不同類型的信息,例如數(shù)據(jù)、地址、控制或狀態(tài)。
在本發(fā)明的一個(gè)實(shí)施例中,L2高速緩存22包括讀分配電路70和寫(xiě)分配電路74,它們都與存儲(chǔ)元件72向耦合。存儲(chǔ)元件72可以用來(lái)存儲(chǔ)信息,例如已經(jīng)高速緩存的數(shù)據(jù)或指令,以及用于本發(fā)明一些實(shí)施例的歷史比特和高速緩存標(biāo)記。在本發(fā)明的替代實(shí)施例中,存儲(chǔ)元件72可以按任何所希望的方式實(shí)現(xiàn),并可以存儲(chǔ)任何所希望的信息。
在圖1示出的本發(fā)明的實(shí)施例中,調(diào)試電路12、處理器14、直接存儲(chǔ)器訪問(wèn)(DMA)16和總線主控器18每個(gè)都可以是訪問(wèn)發(fā)起者,該發(fā)起者發(fā)起對(duì)L2高速緩存22的讀訪問(wèn)。本發(fā)明的替代實(shí)施例可以使用不同的配置。例如,本發(fā)明的替代實(shí)施例可以具有比12、14、16和16更少、更多或不同的電路框,它們發(fā)起對(duì)L2高速緩存22的讀訪問(wèn)。總線主控器18可以是能夠通過(guò)總線63和64發(fā)起對(duì)L2高速緩存22的讀訪問(wèn)的任何類型的電路。如果互連電路50不使用具有總線協(xié)議的總線,則電路18可以不是總線主控器,而是能夠發(fā)起對(duì)L2高速緩存22的讀訪問(wèn)的任何類型的電路。
圖2以流程圖形式示出了根據(jù)本發(fā)明一個(gè)實(shí)施例對(duì)L2高速緩存22(見(jiàn)圖1)的讀訪問(wèn)。該流程在橢圓開(kāi)始框100開(kāi)始。然后,流程繼續(xù)步驟101,在此發(fā)起讀訪問(wèn)。流程繼續(xù)步驟102,在此提供與讀訪問(wèn)對(duì)應(yīng)的讀分配信號(hào)。參考圖1,電路12、14、16或18中的任何一個(gè)都可以發(fā)起讀訪問(wèn),并且隨后將提供讀分配信號(hào)。然后,流程繼續(xù)菱形判定框103,在此詢問(wèn)“讀訪問(wèn)是禁止高速緩存的讀訪問(wèn)嗎?”。如果對(duì)菱形判定框103的答案為是,則流程繼續(xù)步驟104,在此完成禁止高速緩存的讀訪問(wèn)。從步驟104,流程在橢圓結(jié)束框110結(jié)束。如果對(duì)菱形判定框103的答案為否,則流程繼續(xù)菱形判定框105,在此詢問(wèn)“讀分配信號(hào)指示沒(méi)有讀分配要執(zhí)行嗎?”。如果對(duì)菱形判定框105的答案為否,則流程繼續(xù)步驟106,在此完成可高速緩存的讀訪問(wèn),同時(shí)允許修改高速緩存的內(nèi)容和讀分配電路的狀態(tài)。從步驟106,流程在橢圓結(jié)束框110結(jié)束。如果對(duì)菱形判定框105的答案為是,則流程繼續(xù)菱形判定框107,在此詢問(wèn)“讀訪問(wèn)導(dǎo)致高速緩存未命中嗎?”。如果對(duì)菱形判定框107的答案為否,則流程繼續(xù)步驟108,在此完成可高速緩存的讀訪問(wèn),而不修改讀分配電路的狀態(tài)。如果對(duì)菱形判定框107的答案為是,則流程繼續(xù)步驟109,在此,完成可高速緩存的讀訪問(wèn),而不修改高速緩存的內(nèi)容,并且不修改讀分配電路的狀態(tài)。在本發(fā)明的替代實(shí)施例中,菱形判定框103是可選的。如果不使用菱形判定框103,則流程從步驟102繼續(xù)到菱形判定框105。
圖3以流程圖形式示出了一種調(diào)試操作,其要求根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)存儲(chǔ)電路的讀訪問(wèn)。在本發(fā)明的一個(gè)實(shí)施例中,圖1的調(diào)試電路12可用來(lái)發(fā)起并執(zhí)行調(diào)試操作。該流程在橢圓開(kāi)始框200開(kāi)始。然后,流程繼續(xù)步驟201,在此發(fā)起要求讀訪問(wèn)的調(diào)試操作。流程繼續(xù)到菱形判定框202,在此詢問(wèn)“調(diào)試操作是單步操作嗎?”。如果對(duì)菱形判定框202的答案為是,則流程繼續(xù)步驟203,在此提供與讀訪問(wèn)對(duì)應(yīng)的讀分配信號(hào),以指示要執(zhí)行讀分配。從步驟203,流程繼續(xù)到步驟204,在此執(zhí)行帶有讀分配的讀訪問(wèn)。從步驟204,流程繼續(xù)到步驟205,在此完成調(diào)試操作。從步驟205,流程在橢圓結(jié)束框206結(jié)束。如果對(duì)菱形判定框202的答案為否,則流程繼續(xù)到步驟207,在此提供與讀訪問(wèn)對(duì)應(yīng)的讀分配信號(hào),以指示沒(méi)有讀分配要執(zhí)行。從步驟207,流程繼續(xù)到布驟208,在此執(zhí)行不帶讀分配的讀訪問(wèn)。從步驟208,流程繼續(xù)到步驟205,在此完成調(diào)試操作。從步驟205,流程在橢圓結(jié)束框206結(jié)束。
存在一些應(yīng)用,例如某些類型的調(diào)試操作,在這些應(yīng)用中有利的是,對(duì)系統(tǒng)存儲(chǔ)器26執(zhí)行的讀訪問(wèn)對(duì)于高速緩存中的一個(gè)或多個(gè)(例如L2高速緩存22)而言是不唐突的。這要求在執(zhí)行讀訪問(wèn)時(shí)不應(yīng)該發(fā)生高速緩存狀態(tài)和/或內(nèi)容的修改。這是很重要的,因?yàn)槿绻薷牧烁咚倬彺鏍顟B(tài)和/或內(nèi)容,數(shù)據(jù)處理系統(tǒng)的調(diào)試可能導(dǎo)致其他不希望的副作用。另外,副作用可能導(dǎo)致該問(wèn)題被調(diào)試以致改變特性,或者沒(méi)有被暴露出來(lái),這將阻止調(diào)試成功。另一方面,存在一些應(yīng)用,例如其他調(diào)試操作(例如通過(guò)用戶應(yīng)用程序指令單步執(zhí)行的),在這些應(yīng)用中有利的是,對(duì)系統(tǒng)存儲(chǔ)器26執(zhí)行的讀訪問(wèn)導(dǎo)致對(duì)高速緩存中的一個(gè)或多個(gè)(例如L2高速緩存22)作出與在正常操作中可能發(fā)生的相同的修改。因此,能夠根據(jù)調(diào)試操作類型在高速緩存或其他存儲(chǔ)電路中選擇性地執(zhí)行讀分配是非常有用的。
在本發(fā)明的一個(gè)實(shí)施例中,將讀分配信號(hào)(例如30、31、32或33)用作讀分配指示符,以指示是否要執(zhí)行讀分配(例如在高速緩存22中)。如果沒(méi)有發(fā)生讀分配,則執(zhí)行讀訪問(wèn),而不修改高速緩存22的信息內(nèi)容,并且/或者不修改高速緩存22的讀分配狀態(tài)。本發(fā)明的一些實(shí)施例阻止高速緩存22的信息內(nèi)容的修改,本發(fā)明的一些實(shí)施例阻止高速緩存22的讀分配狀態(tài)的修改,而本發(fā)明的一些實(shí)施例既阻止高速緩存22的信息內(nèi)容的修改,又阻止高速緩存22的讀分配狀態(tài)的修改。高速緩存22的內(nèi)容是存儲(chǔ)在存儲(chǔ)元件72(見(jiàn)圖1)中的信息。讀分配電路70用來(lái)執(zhí)行在高速緩存22中使用的讀置換算法。讀置換算法是用來(lái)確定當(dāng)高速緩存在讀訪問(wèn)上未命中時(shí)接下來(lái)要替換掉哪一個(gè)高速緩存線的規(guī)則或規(guī)則組。本發(fā)明可與任何所希望的讀置換算法一起使用。因此,由讀分配電路70執(zhí)行的讀置換算法可以是任何希望的置換算法。每次發(fā)生高速緩存未命中時(shí),置換算法單步調(diào)試一系列狀態(tài),以便總具有更新值,該更新值是為了在讀訪問(wèn)上的下一次高速緩存未命中而應(yīng)當(dāng)填充入高速緩存線中的更新值。
對(duì)于本發(fā)明的一些實(shí)施例(例如使用一種或多種所選擇類型的調(diào)試操作),阻止高速緩存的信息內(nèi)容的修改是不夠的;還必須不影響讀分配電路70的讀置換算法的當(dāng)前狀態(tài)(例如讀分配狀態(tài))。注意,本發(fā)明的一些實(shí)施例可選地具有寫(xiě)分配電路74,其為寫(xiě)訪問(wèn)確定高速緩存22的行為。本發(fā)明的替代實(shí)施例甚至可以不具有寫(xiě)分配電路74。在本發(fā)明的一些實(shí)施例中,讀分配電路70的操作和置換算法是完全與寫(xiě)分配電路74的操作和置換算法無(wú)關(guān)的。本發(fā)明的一些實(shí)施例可以對(duì)讀和寫(xiě)高速緩存未命中具有共同的置換算法。在這種實(shí)施例中,讀分配電路70和寫(xiě)分配電路74可以合并為單個(gè)和/或共同電路,不過(guò)注意到以下一點(diǎn)是很重要的,即讀分配和寫(xiě)分配對(duì)數(shù)據(jù)處理系統(tǒng)10的用戶或調(diào)試程序呈現(xiàn)完全不同的問(wèn)題。
盡管在使用高速緩存22的特定實(shí)施例的情況中描述了本發(fā)明,但本發(fā)明的替代實(shí)施例可以使用具有讀分配能力的任何類型的存儲(chǔ)電路。本發(fā)明不限于高速緩存應(yīng)用。此外,盡管本發(fā)明對(duì)調(diào)試操作是有用的,但本發(fā)明可用于任何希望的目的,而不限于在調(diào)試操作中使用。作為不同應(yīng)用的一個(gè)可能例子,處理器14可以選擇性地確定由于讀訪問(wèn)中的數(shù)據(jù)不大可能再次使用,因此不在一個(gè)或多個(gè)高速緩存中執(zhí)行讀分配,從而可有利地阻止讀訪問(wèn)導(dǎo)致在高速緩存中已獲得的潛在更有用信息被置換。
注意,本發(fā)明還可與L1高速緩存15一起使用。對(duì)于該實(shí)施例,可以從處理器14向L1高速緩存15提供讀分配信號(hào)(未示出)。該讀分配信號(hào)(未示出)可按與讀分配信號(hào)30-35相同或相似的方式起作用。此外,本發(fā)明還可與外圍設(shè)備24一起使用。讀分配信號(hào)35可按與提供給L2高速緩存22的讀分配信號(hào)34相同或相似的方式起作用。
在前面的說(shuō)明書(shū)中,參考特定實(shí)施例描述了本發(fā)明。然而,本領(lǐng)域技術(shù)人員應(yīng)該認(rèn)識(shí)到,可以作出各種修改和變化,而不脫離在權(quán)利要求中提出的本發(fā)明的范圍。因此,說(shuō)明書(shū)和附圖應(yīng)該看作示例性的,而不是限制性的,并且所有這種修改都應(yīng)包括在本發(fā)明的范圍內(nèi)。
上面針對(duì)特定實(shí)施例描述了益處、優(yōu)勢(shì)和問(wèn)題的解決方法。然而,可以使任何益處、優(yōu)勢(shì)或方法出現(xiàn)或變得更加顯著的益處、優(yōu)勢(shì)、解決問(wèn)題的方法和任何部件不應(yīng)推論為任何或所有權(quán)利要求的關(guān)鍵的、必須的或主要的特征或部件。如此處所使用的,術(shù)語(yǔ)“包括”、“包含”或其任何其它變化想要覆蓋不排除的包含物,使得包括一列部件的工藝、方法、物品或設(shè)備不僅包括那些部件,而且還可以包括未明確列出的或這種工藝、方法、物品或設(shè)備固有的其他部件。
附加文本1.一種裝置,其包括存儲(chǔ)電路;和耦合到所述存儲(chǔ)電路的訪問(wèn)發(fā)起電路,所述訪問(wèn)發(fā)起電路發(fā)起對(duì)所述存儲(chǔ)電路的讀訪問(wèn),并向所述存儲(chǔ)電路提供與所述讀訪問(wèn)對(duì)應(yīng)的讀分配指示符。
2.如權(quán)利要求1所述的裝置,其中,根據(jù)所述讀分配指示符,在所述讀訪問(wèn)期間選擇性地執(zhí)行讀分配。
3.如權(quán)利要求2所述的裝置,其中,當(dāng)所述讀分配指示符具有第一值時(shí),在具有讀分配的情況下執(zhí)行所述讀訪問(wèn),當(dāng)所述讀分配指示符具有第二值時(shí),在沒(méi)有讀分配的情況下執(zhí)行所述讀訪問(wèn)。
4.如權(quán)利要求1所述的裝置,其中,所述存儲(chǔ)電路經(jīng)互連電路耦合到所述訪問(wèn)發(fā)起電路。
5.如權(quán)利要求4所述的裝置,其中,所述互連電路包括耦合到所述存儲(chǔ)電路和訪問(wèn)發(fā)起電路的系統(tǒng)總線,并且經(jīng)所述系統(tǒng)總線提供所述讀分配指示符。
6.如權(quán)利要求4所述的裝置,其中,所述存儲(chǔ)電路包括高速緩存,所述訪問(wèn)發(fā)起電路包括調(diào)試電路,其中所述讀訪問(wèn)是調(diào)試操作的一部分。
7.如權(quán)利要求1所述的裝置,其中,所述存儲(chǔ)電路包括高速緩存器。
8.如權(quán)利要求7所述的裝置,其中,所述訪問(wèn)發(fā)起電路包括處理器。
9.如權(quán)利要求8所述的裝置,其中,所述處理器包括高速緩存器。
10.如權(quán)利要求1所述的裝置,其中,所述訪問(wèn)發(fā)起電路包括直接存儲(chǔ)器訪問(wèn)(DMA)。
11.如權(quán)利要求1所述的裝置,其中,所述訪問(wèn)發(fā)起電路包括調(diào)試電路,所述讀訪問(wèn)是調(diào)試操作的一部分。
12.一種執(zhí)行讀訪問(wèn)的方法,其包括發(fā)起讀訪問(wèn);提供對(duì)應(yīng)所述讀訪問(wèn)的讀分配指示符;以及在所述讀訪問(wèn)期間,至少根據(jù)所述讀分配指示符,選擇性地執(zhí)行讀分配。
13.如權(quán)利要求12所述的方法,其中,所述讀訪問(wèn)是對(duì)高速緩存的可高速緩存的讀訪問(wèn),并且該方法還包括確定所述可高速緩存的讀訪問(wèn)是導(dǎo)致高速緩存命中還是高速緩存未命中;以及當(dāng)所述可高速緩存的讀訪問(wèn)導(dǎo)致高速緩存未命中時(shí),在不修改所述高速緩存的內(nèi)容的情況下完成所述可高速緩存的讀訪問(wèn)。
14.如權(quán)利要求13所述的方法,還包括當(dāng)所述可高速緩存的讀訪問(wèn)導(dǎo)致高速緩存未命中時(shí),在不修改所述高速緩存的分配狀態(tài)的情況下完成所述可高速緩存的讀訪問(wèn)。
15.如權(quán)利要求13所述的方法,還包括當(dāng)所述可高速緩存的讀訪問(wèn)導(dǎo)致高速緩存命中時(shí),在不修改所述高速緩存的分配狀態(tài)的情況下完成所述可高速緩存的讀訪問(wèn)。
16.如權(quán)利要求12所述的方法,還包括確定所述讀訪問(wèn)是可高速緩存的讀訪問(wèn)還是禁止高速緩存的讀訪問(wèn)。
17.如權(quán)利要求12所述的方法,其中,所述讀訪問(wèn)是對(duì)高速緩存的可高速緩存的讀訪問(wèn),并且在對(duì)所述高速緩存的寫(xiě)訪問(wèn)期間,所述高速緩存能夠執(zhí)行寫(xiě)分配。
18.如權(quán)利要求12所述的方法,其中,所述讀訪問(wèn)是在調(diào)試操作之內(nèi),并且至少根據(jù)所述讀分配指示符和所述調(diào)試操作來(lái)選擇性地執(zhí)行讀分配。
19.如權(quán)利要求18所述的方法,其中,在單步調(diào)試操作期間執(zhí)行讀分配。
20.一種裝置,其包括用于存儲(chǔ)信息的存儲(chǔ)元件;和耦合到所述存儲(chǔ)元件的讀分配電路,其中,所述讀分配電路對(duì)讀分配指示符作出響應(yīng),其中,根據(jù)所述讀分配指示符,所述讀分配電路在對(duì)所述存儲(chǔ)元件的讀訪問(wèn)期間選擇性地執(zhí)行讀分配。
21.如權(quán)利要求20所述的裝置,還包括高速緩存,其中,所述高速緩存包括所述存儲(chǔ)元件。
22.如權(quán)利要求21所述的裝置,其中,根據(jù)所述讀分配指示符,當(dāng)對(duì)所述存儲(chǔ)元件的讀訪問(wèn)導(dǎo)致高速緩存未命中時(shí),所述讀分配電路選擇性地阻止所述存儲(chǔ)元件中存儲(chǔ)的信息的修改。
23.如權(quán)利要求21所述的裝置,其中,所述讀分配電路存儲(chǔ)所述高速緩存的讀分配狀態(tài),并且其中,根據(jù)所述讀分配指示符,所述讀分配電路選擇性地阻止所述高速緩存的讀分配狀態(tài)的修改。
24.如權(quán)利要求23所述的裝置,其中,根據(jù)所述讀分配指示符,當(dāng)對(duì)所述存儲(chǔ)元件的讀訪問(wèn)導(dǎo)致高速緩存命中時(shí),所述讀分配電路選擇性地阻止所述高速緩存的讀分配狀態(tài)的修改。
25.如權(quán)利要求20所述的裝置,其中,所述讀分配電路還包括輸入,其中經(jīng)由所述輸入提供所述讀分配指示符。
26.如權(quán)利要求25所述的裝置,其中,經(jīng)由所述輸入,所述讀分配指示符被提供用作總線信號(hào)。
27.一種執(zhí)行讀訪問(wèn)的方法,其包括發(fā)起調(diào)試操作,所述調(diào)試操作要求對(duì)高速緩存的讀訪問(wèn)并具有調(diào)試操作類型;以及至少根據(jù)所述調(diào)試操作類型,在所述讀訪問(wèn)期間選擇性地執(zhí)行讀分配。
28.如權(quán)利要求27所述的方法,其中,所述讀分配包括修改所述高速緩存的內(nèi)容和修改所述高速緩存的讀分配狀態(tài)中的至少一種。
29.如權(quán)利要求28所述的方法,其中,當(dāng)所述調(diào)試操作類型是第一類型時(shí),在所述讀訪問(wèn)期間執(zhí)行讀分配,當(dāng)所述調(diào)試操作類型是第二類型時(shí),在所述讀訪問(wèn)期間不執(zhí)行讀分配。
30.如權(quán)利要求28所述的方法,其中,當(dāng)所述調(diào)試操作類型是第一類型時(shí),向所述高速緩存提供對(duì)應(yīng)所述讀訪問(wèn)的讀分配指示符,以指示要對(duì)所述讀訪問(wèn)執(zhí)行讀分配,當(dāng)所述調(diào)試操作類型是第二類型時(shí),向所述高速緩存提供對(duì)應(yīng)所述讀訪問(wèn)的讀分配指示符,以指示不對(duì)所述讀訪問(wèn)執(zhí)行讀分配。
31.一種裝置,其包括高速緩存;耦合到所述高速緩存的互連電路;和調(diào)試電路,耦合到所述互連電路,所述調(diào)試電路發(fā)起要求對(duì)所述高速緩存進(jìn)行讀訪問(wèn)的調(diào)試操作,并經(jīng)所述互連電路向所述高速緩存提供對(duì)應(yīng)所述讀訪問(wèn)的讀分配指示符。
32.如權(quán)利要求31所述的裝置,其中,所述高速緩存響應(yīng)所述讀分配指示符,在所述讀訪問(wèn)期間選擇性地執(zhí)行讀分配。
33.如權(quán)利要求32所述的裝置,其中,所述高速緩存響應(yīng)所述讀分配指示符并根據(jù)所述調(diào)試操作,在所述讀訪問(wèn)期間選擇性地執(zhí)行讀分配。
34.如權(quán)利要求31所述的裝置,其中,當(dāng)所述讀分配指示符具有第一值時(shí),在具有讀分配的情況下執(zhí)行所述讀訪問(wèn),當(dāng)所述讀分配指示符具有第二值時(shí),在沒(méi)有讀分配的情況下執(zhí)行所述讀訪問(wèn)。
35.如權(quán)利要求31所述的裝置,其中,所述互連電路包括交換電路,以從所述調(diào)試電路向所述高速緩存?zhèn)鬟f所述讀分配指示符。
36.如權(quán)利要求31所述的裝置,其中,所述互連電路包括系統(tǒng)總線,所述系統(tǒng)總線耦合到所述調(diào)試電路和所述高速緩存,并且其中經(jīng)所述系統(tǒng)總線提供所述讀分配指示符。
權(quán)利要求
1.一種裝置,其包括存儲(chǔ)電路;和耦合到所述存儲(chǔ)電路的訪問(wèn)發(fā)起電路,所述訪問(wèn)發(fā)起電路發(fā)起對(duì)所述存儲(chǔ)電路的讀訪問(wèn),并向所述存儲(chǔ)電路提供與所述讀訪問(wèn)對(duì)應(yīng)的讀分配指示符。
2.如權(quán)利要求1所述的裝置,其中,當(dāng)所述讀分配指示符具有第一值時(shí),在具有讀分配的情況下執(zhí)行所述讀訪問(wèn),當(dāng)所述讀分配指示符具有第二值時(shí),在沒(méi)有讀分配的情況下執(zhí)行所述讀訪問(wèn)。
3.如權(quán)利要求1所述的裝置,其中,所述存儲(chǔ)電路包括高速緩存,所述訪問(wèn)發(fā)起電路包括調(diào)試電路,其中所述讀訪問(wèn)是調(diào)試操作的一部分。
4.如權(quán)利要求1所述的裝置,其中,所述訪問(wèn)發(fā)起電路包括處理器。
5.一種執(zhí)行讀訪問(wèn)的方法,其包括發(fā)起讀訪問(wèn);提供對(duì)應(yīng)所述讀訪問(wèn)的讀分配指示符;以及在所述讀訪問(wèn)期間,至少根據(jù)所述讀分配指示符,選擇性地執(zhí)行讀分配。
6.如權(quán)利要求5所述的方法,其中,所述讀訪問(wèn)是對(duì)高速緩存的可高速緩存的讀訪問(wèn),并且該方法還包括確定所述可高速緩存的讀訪問(wèn)是導(dǎo)致高速緩存命中還是高速緩存未命中;以及當(dāng)所述可高速緩存的讀訪問(wèn)導(dǎo)致高速緩存未命中時(shí),在不修改所述高速緩存的內(nèi)容的情況下完成所述可高速緩存的讀訪問(wèn)。
7.一種裝置,其包括用于存儲(chǔ)信息的存儲(chǔ)元件;和耦合到所述存儲(chǔ)元件的讀分配電路,其中,所述讀分配電路對(duì)讀分配指示符作出響應(yīng),其中,根據(jù)所述讀分配指示符,所述讀分配電路在對(duì)所述存儲(chǔ)元件的讀訪問(wèn)期間選擇性地執(zhí)行讀分配。
8.如權(quán)利要求7所述的裝置,還包括高速緩存,其中,所述高速緩存包括存儲(chǔ)元件,并且,根據(jù)所述讀分配指示符,當(dāng)對(duì)所述存儲(chǔ)元件的讀訪問(wèn)導(dǎo)致高速緩存未命中時(shí),所述讀分配電路選擇性地阻止所述存儲(chǔ)元件中存儲(chǔ)的信息的修改。
9.一種執(zhí)行讀訪問(wèn)的方法,其包括發(fā)起調(diào)試操作,所述調(diào)試操作要求對(duì)高速緩存的讀訪問(wèn)并具有調(diào)試操作類型;以及至少根據(jù)所述調(diào)試操作類型,在所述讀訪問(wèn)期間選擇性地執(zhí)行讀分配。
10.一種裝置,其包括高速緩存;耦合到所述高速緩存的互連電路;和調(diào)試電路,耦合到所述互連電路,所述調(diào)試電路發(fā)起要求對(duì)所述高速緩存的讀訪問(wèn)的調(diào)試操作,并經(jīng)所述互連電路向所述高速緩存提供對(duì)應(yīng)所述讀訪問(wèn)的讀分配指示符。
全文摘要
向存儲(chǔ)電路(例如高速緩存22)提供讀分配指示符(例如讀分配信號(hào)30),以選擇性地確定是否對(duì)讀訪問(wèn)執(zhí)行讀分配。讀分配可以包括高速緩存(22)的信息內(nèi)容的修改和/或由高速緩存(22)中的讀分配電路(70)執(zhí)行的讀讀置換算法狀態(tài)。對(duì)于特定類型的調(diào)試操作,提供讀分配指示符,確保在讀訪問(wèn)期間不對(duì)存儲(chǔ)電路進(jìn)行不希望的修改,這是非常重要的。其他類型的調(diào)試操作可能希望當(dāng)發(fā)生讀訪問(wèn)時(shí)以標(biāo)準(zhǔn)方式修改存儲(chǔ)電路。
文檔編號(hào)G06F13/00GK1791865SQ200480013704
公開(kāi)日2006年6月21日 申請(qǐng)日期2004年4月30日 優(yōu)先權(quán)日2003年5月21日
發(fā)明者威廉·C·莫耶 申請(qǐng)人:飛思卡爾半導(dǎo)體公司