两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

用于在數(shù)據(jù)傳送中排序事務(wù)處理節(jié)拍的裝置和方法

文檔序號(hào):6560293閱讀:209來源:國知局
專利名稱:用于在數(shù)據(jù)傳送中排序事務(wù)處理節(jié)拍的裝置和方法
技術(shù)領(lǐng)域
本發(fā)明涉及微處理器事務(wù)處理,具體涉及一種用于在數(shù)據(jù)傳送中排序事務(wù)處理節(jié)拍的裝置和方法,它解決了由于非最佳的超高速緩存線讀取排序而導(dǎo)致由微處理器引起的停止周期(stall cycle)的問題。
背景技術(shù)
在諸如x86兼容的微處理器之類的當(dāng)今的微處理器中,在系統(tǒng)總線上完成到存儲(chǔ)器的事務(wù)處理/來自存儲(chǔ)器的事務(wù)處理(即讀取和寫入事務(wù)處理)。這些事務(wù)處理包括請(qǐng)求階段和數(shù)據(jù)(即響應(yīng))階段。在所述請(qǐng)求階段期間,通過地址信號(hào)組來提供事務(wù)處理的地址和事務(wù)處理類型。所述地址信號(hào)組通常包括地址總線、一組對(duì)應(yīng)的地址選通信號(hào)和請(qǐng)求總線。在所述數(shù)據(jù)階段期間,通過數(shù)據(jù)信號(hào)組來傳送對(duì)應(yīng)于事務(wù)處理的數(shù)據(jù)。所述數(shù)據(jù)信號(hào)組通常包括數(shù)據(jù)總線、一組對(duì)應(yīng)的數(shù)據(jù)選通信號(hào)、響應(yīng)總線(指示響應(yīng)的類型)和總線控制信號(hào)。在一個(gè)特定的傳統(tǒng)配置中,所述數(shù)據(jù)信號(hào)組包括大約72個(gè)信號(hào)。許多傳統(tǒng)的配置支持四倍頻(quad-pumped)事務(wù)處理,其中,僅僅在總線或系統(tǒng)時(shí)鐘的幾個(gè)周期(例如兩個(gè)時(shí)鐘周期)中通過總線來傳送整個(gè)高速緩存線(例如對(duì)于64字節(jié)高速緩存線的8個(gè)四倍長字)。在這種傳送類型期間,數(shù)據(jù)選通信號(hào)被提供來指示在數(shù)據(jù)總線上的各個(gè)四倍長字節(jié)拍的有效性,以便在每個(gè)總線時(shí)鐘周期期間傳送幾個(gè)節(jié)拍。
在x86兼容的處理器中,所述請(qǐng)求階段由兩個(gè)子階段組成請(qǐng)求A和請(qǐng)求B。在請(qǐng)求A子階段期間,在所述地址信號(hào)組上放出(put out)事務(wù)處理地址和事務(wù)處理類型。在子階段B期間,在所述地址信號(hào)組上放出與事務(wù)處理相關(guān)聯(lián)的其他數(shù)據(jù),諸如事務(wù)處理(例如向存儲(chǔ)器的寫入組合寫入)的屬性及其長度。
在有負(fù)荷時(shí)(例如數(shù)據(jù)讀取請(qǐng)求),在第一節(jié)拍A期間傳送臨界四倍長字(即在地址信號(hào)組上在請(qǐng)求A階段期間提供其地址的四倍長字),并且按照交錯(cuò)的排序協(xié)議來對(duì)于剩余的節(jié)拍B-H排序剩余的四倍長字。對(duì)于來自存儲(chǔ)器的高速緩存線的傳送,交錯(cuò)排序四倍長字是能夠每隔一個(gè)四倍長字(或按照總線架構(gòu)的任何大小的數(shù)據(jù)實(shí)體——例如雙字)從替代的DRAM庫獲取的較老的存儲(chǔ)器配置方案的人工產(chǎn)物,由此排除了通常與從同一DRAM庫獲取兩個(gè)連續(xù)地址相關(guān)聯(lián)的等待狀態(tài)。雖然通過使用交錯(cuò)排序而在較老的DRAM設(shè)計(jì)中排除了等待狀態(tài),但是DRAM的改進(jìn)已經(jīng)使得系統(tǒng)設(shè)計(jì)者能夠提供其他類型的排序,諸如如下所述的線性排序。
在數(shù)據(jù)總線上的突發(fā)傳送技術(shù)的當(dāng)今狀態(tài)允許僅僅單個(gè)類型的傳送排序。例如,一種處理器配置允許交錯(cuò)排序,而不同的處理器配置允許線性排序。本發(fā)明人已經(jīng)觀察到在大多數(shù)情況下,從數(shù)據(jù)接近性(proximity)來看,線性排序是最佳的。因此,線性排序的系統(tǒng)總線以最小化由于高速緩存線讀取而導(dǎo)致的處理停止的方式來提供數(shù)據(jù)。但是,雖然線性排序在許多情況下可能是最佳的,而在其他情況下,諸如當(dāng)臨界四倍長字是最后的四倍長字而不是第一四倍長字時(shí)是很有害的(即引發(fā)多個(gè)流水線停止),。從數(shù)據(jù)接近性來看,線性排序最大化了停止的數(shù)量,而交錯(cuò)排序可以提供優(yōu)越的性能。
因此,期望提供一種協(xié)議機(jī)制,它允許作為高速緩存線讀取的請(qǐng)求階段的一部分動(dòng)態(tài)地指定數(shù)據(jù)實(shí)體傳送排序。還期望提供能夠動(dòng)態(tài)指定傳送排序,同時(shí)保持與現(xiàn)有和傳統(tǒng)的總線協(xié)議兼容的裝置和方法。而且,期望提供一種用來規(guī)定可以對(duì)于高速緩存線或其他類型的傳送動(dòng)態(tài)指定的定制數(shù)據(jù)實(shí)體傳送協(xié)議的技術(shù)。

發(fā)明內(nèi)容
按照本發(fā)明的一個(gè)實(shí)施例的微處理器包括高速緩沖存儲(chǔ)器和總線接口邏輯電路。所述總線接口邏輯電路與請(qǐng)求信號(hào)和數(shù)據(jù)信號(hào)連接,并且包括請(qǐng)求接口和響應(yīng)接口。請(qǐng)求接口經(jīng)由對(duì)于數(shù)據(jù)事務(wù)處理的請(qǐng)求信號(hào)而提供請(qǐng)求,其中所述請(qǐng)求指定所選擇的突發(fā)順序。響應(yīng)接口按照所選擇的突發(fā)順序而將經(jīng)由數(shù)據(jù)信號(hào)接收的數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器。
所述請(qǐng)求接口可以通過在數(shù)據(jù)事務(wù)處理的請(qǐng)求階段期間配置請(qǐng)求分組的字段來指定所選擇的突發(fā)順序??梢詮膸讉€(gè)不同的數(shù)據(jù)事務(wù)處理排序中選擇所選擇的突發(fā)順序,所述幾個(gè)不同的數(shù)據(jù)事務(wù)處理排序諸如交錯(cuò)排序、線性排序、半字節(jié)(nibble)線性排序和定制排序。微處理器可以還包括指令邏輯電路,其向總線接口邏輯電路提供指令以指定所選擇的突發(fā)順序。
請(qǐng)求接口可以包括指定所選擇的突發(fā)順序的請(qǐng)求邏輯電路和耦接到請(qǐng)求邏輯電路并且連接請(qǐng)求信號(hào)的多個(gè)請(qǐng)求緩沖器。在一個(gè)實(shí)施例中,所述請(qǐng)求邏輯電路被預(yù)先配置來在初始化期間指定所選擇的突發(fā)順序。在另一個(gè)實(shí)施例中,在初始化期間編程所述請(qǐng)求邏輯電路以指定所選擇的突發(fā)順序。
響應(yīng)接口可以包括與數(shù)據(jù)信號(hào)連接的響應(yīng)緩沖器、與響應(yīng)緩沖器和高速緩沖存儲(chǔ)器耦接的高速緩存總線、和排序邏輯電路。所述排序邏輯電路耦接到高速緩存總線,并且用于按照所選擇的突發(fā)順序?qū)⒔?jīng)由響應(yīng)緩沖器接收的數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器中。所述排序邏輯電路可以包括交錯(cuò)邏輯電路,按照交錯(cuò)排序而將數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器中;線性邏輯電路,按照線性排序而將數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器中;半字節(jié)線性邏輯電路,按照半字節(jié)線性排序而將數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器中;和定制邏輯電路,按照定制排序而將數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器中。
按照本發(fā)明的一個(gè)實(shí)施例的微處理器接口系統(tǒng)包括具有請(qǐng)求總線和數(shù)據(jù)總線的系統(tǒng)總線、微處理器和總線代理。微處理器包括高速緩沖存儲(chǔ)器、請(qǐng)求邏輯電路和響應(yīng)邏輯電路。請(qǐng)求邏輯電路耦接到所述請(qǐng)求總線,在所述請(qǐng)求總線上提供用于數(shù)據(jù)事務(wù)處理的指定對(duì)于所述數(shù)據(jù)事務(wù)處理的所選擇的突發(fā)順序的請(qǐng)求。響應(yīng)邏輯電路連接到高速緩沖存儲(chǔ)器和數(shù)據(jù)總線,并且按照所選擇的突發(fā)順序來將從數(shù)據(jù)總線接收的數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器中。總線代理耦接到系統(tǒng)總線,接收請(qǐng)求,并且按照所選擇的突發(fā)順序來向數(shù)據(jù)總線上提供用于數(shù)據(jù)事務(wù)處理的數(shù)據(jù)。總線代理可以包括總線接口邏輯電路,它被配置來用于動(dòng)態(tài)突發(fā)排序。請(qǐng)求邏輯電路可以被設(shè)計(jì)來配置請(qǐng)求分組的字段以指定所選擇的突發(fā)順序,并且向請(qǐng)求總線上提供請(qǐng)求分組。
按照本發(fā)明的一個(gè)實(shí)施例的一種在數(shù)據(jù)事務(wù)處理中排序數(shù)據(jù)節(jié)拍的方法包括使用所選擇的突發(fā)順序來配置對(duì)于數(shù)據(jù)事務(wù)處理的請(qǐng)求,在請(qǐng)求階段期間將用于數(shù)據(jù)事務(wù)處理的請(qǐng)求提供到系統(tǒng)總線,在數(shù)據(jù)事務(wù)處理的對(duì)應(yīng)的數(shù)據(jù)階段期間從系統(tǒng)總線接收數(shù)據(jù),以及按照所選擇的突發(fā)順序來存儲(chǔ)數(shù)據(jù)。
所述方法可以包括配置請(qǐng)求分組的字段。所述方法可以包括按照交錯(cuò)排序、線性排序、半字節(jié)線性排序和定制排序中所選擇一個(gè)來配置請(qǐng)求。所述方法可以包括提供用于指定所選擇的突發(fā)順序的加載指令。所述方法可以包括使用所選擇的突發(fā)順序來預(yù)先配置請(qǐng)求邏輯電路。所述方法可以包括按照所選擇的突發(fā)順序來在初始化時(shí)編程請(qǐng)求邏輯電路。所述方法可以包括按照交錯(cuò)排序、線性排序、半字節(jié)線性排序和定制排序中的所選擇一個(gè)來存儲(chǔ)數(shù)據(jù)。


參照下面的說明和附圖,本發(fā)明的益處、特點(diǎn)和優(yōu)點(diǎn)將會(huì)變得更清楚,其中圖1是傳統(tǒng)微處理器接口系統(tǒng)的簡化方框圖;圖2是示出在參照?qǐng)D1的傳統(tǒng)微處理器接口系統(tǒng)所述的數(shù)據(jù)信號(hào)組內(nèi)的用于執(zhí)行數(shù)據(jù)事務(wù)處理的數(shù)據(jù)階段的信號(hào)的交互的時(shí)序圖;圖3是圖解用于在圖1的系統(tǒng)總線上突發(fā)傳送8個(gè)數(shù)據(jù)實(shí)體0-7的交錯(cuò)排序協(xié)議的表的圖;圖4是圖解按照支持動(dòng)態(tài)突發(fā)排序的本發(fā)明的一個(gè)示例性實(shí)施例的REQ總線的信號(hào)的幾個(gè)值和對(duì)應(yīng)的請(qǐng)求B分組的四倍長字排序的表;圖5是圖解線性排序協(xié)議的表的圖;圖6是圖解半字節(jié)線性排序協(xié)議的表的圖;圖7是圖解示例性定制排序協(xié)議的表的圖;圖8是按照本發(fā)明的一個(gè)示例性實(shí)施例的包括使得微處理器能夠?qū)崿F(xiàn)動(dòng)態(tài)突發(fā)排序的總線接口的微處理器的方框圖;以及圖9是按照本發(fā)明的一個(gè)示例性實(shí)施例的、使用圖8的微處理器和被配置來支持動(dòng)態(tài)突發(fā)排序的總線代理的微處理器接口系統(tǒng)的簡化方框圖。
具體實(shí)施例方式
下面的說明用于使得本領(lǐng)域內(nèi)的普通技術(shù)人員能夠建立和使用在特定應(yīng)用及其要求的環(huán)境內(nèi)提供的本發(fā)明。但是,對(duì)于優(yōu)選實(shí)施例的各種修改對(duì)于本領(lǐng)域內(nèi)的普通技術(shù)人員是顯然的,并且在此定義的一般原理可以被應(yīng)用到其他實(shí)施例。因此,本發(fā)明不意欲限于在此所示和所述的特定實(shí)施例,而是給予符合與在此公開的原理和新穎特征一致的最寬的范圍。
本發(fā)明人已經(jīng)注意到微處理器的高速緩存線讀取事務(wù)處理的非最佳排序?qū)е碌谋煌V?staller)周期。因此,本發(fā)明人開發(fā)了用于動(dòng)態(tài)地排序在數(shù)據(jù)傳送中的事務(wù)處理節(jié)拍,同時(shí)保持與現(xiàn)有和傳統(tǒng)的總線協(xié)議兼容,并且用于指定對(duì)于高速緩存線或其他類型的傳送可以動(dòng)態(tài)指定的定制數(shù)據(jù)實(shí)體傳送協(xié)議的裝置和方法,這將參照?qǐng)D1-9在下面進(jìn)一步說明。
圖1是傳統(tǒng)微處理器接口系統(tǒng)100的簡化方框圖。所述微處理器接口系統(tǒng)100包括微處理器101和與系統(tǒng)總線105連接的總線代理103。總線代理103表示本領(lǐng)域內(nèi)的技術(shù)人員公知的任何數(shù)量的不同類型的總線代理,諸如存儲(chǔ)器控制器、主機(jī)/PCI(外設(shè)部件互連)橋、芯片組等。所述系統(tǒng)總線105包括用于執(zhí)行數(shù)據(jù)事務(wù)處理的信號(hào),其中包括雙向地址總線A、雙向數(shù)據(jù)總線DATA和多個(gè)控制信號(hào)。在所圖解的實(shí)施例中,A總線具有被示出為A[35:3]的33個(gè)信號(hào),DATA總線具有被示出為DATA[63:0]的64個(gè)信號(hào),但應(yīng)當(dāng)了解的是,根據(jù)具體配置和結(jié)構(gòu)所述地址和數(shù)據(jù)總線可以具有任何適當(dāng)數(shù)量的信號(hào)。本領(lǐng)域內(nèi)的技術(shù)人員可以了解,不需要最低有效地址信號(hào)(A[2:0])以允許傳送具有四倍長字粒度的數(shù)據(jù),這是本領(lǐng)域的當(dāng)前狀態(tài)。
所述控制信號(hào)包括差分時(shí)鐘總線BCLK[1:0];雙向地址選通總線ADSTB[1:0](指示在A總線上的地址的有效性);雙向請(qǐng)求(REQ)總線,它具有指定所請(qǐng)求的事務(wù)處理類型的信號(hào)REQ[4:0](例如,存儲(chǔ)器代碼讀取、存儲(chǔ)器數(shù)據(jù)讀取、存儲(chǔ)器線寫入、具有字節(jié)使能的存儲(chǔ)器四倍長字寫入);一對(duì)數(shù)據(jù)選通總線DSTBP[3:0]和DSTBN[3:0];雙向數(shù)據(jù)總線忙信號(hào)DBSY(由在DATA總線上提供數(shù)據(jù)的實(shí)體認(rèn)定);數(shù)據(jù)就緒信號(hào)DRDY(由在通過DATA總線而傳送數(shù)據(jù)的所有時(shí)鐘周期期間提供數(shù)據(jù)的任何器件認(rèn)定);和響應(yīng)總線RS[2:0],它提供正在DATA總線上完成的事務(wù)處理響應(yīng)的類型(例如無數(shù)據(jù)、正常數(shù)據(jù)、隱含的回寫)。在圖解的實(shí)施例中,RS總線具有被示出為RS[2:0]的3個(gè)信號(hào),并且由總線代理103認(rèn)定。
實(shí)際上在所有當(dāng)今的微處理器中以較小變化提供了被示出的用于傳統(tǒng)微處理器接口系統(tǒng)100的信號(hào)。一些處理器在同一信號(hào)組上復(fù)用地址和數(shù)據(jù),因此提供了指示是否存在數(shù)據(jù)或地址的控制信號(hào)。其他微處理器使用不同的地址或數(shù)據(jù)總線寬度或另外命名的控制信號(hào)。而且,可以在比通過傳統(tǒng)的微處理器接口系統(tǒng)100圖解的那些更小的總線大小上復(fù)用地址和/或數(shù)據(jù)。重要的是注意基本上所有的處理器都提供了與總線代理通信的信號(hào),以指示請(qǐng)求何種類型的事務(wù)處理、那個(gè)事務(wù)處理的參數(shù),并且發(fā)送/接收數(shù)據(jù)。
在包括微處理器101的當(dāng)今的微處理器中,可以按照“四倍頻(quad-pumped)”配置在高速緩存線的基礎(chǔ)上(例如用于64字節(jié)高速緩存線的8個(gè)四倍長字)傳送數(shù)據(jù)。當(dāng)傳送整個(gè)高速緩存線時(shí),使用總線時(shí)鐘信號(hào)BCLK[1:0]的兩個(gè)周期在高速緩存線中傳送8個(gè)相關(guān)聯(lián)的四倍長字。因此,在總線時(shí)鐘BCLK[1:0]的每個(gè)周期期間傳送四個(gè)四倍長字,于是解釋了描述詞“四倍頻”。在這種類型的數(shù)據(jù)傳送期間,提供數(shù)據(jù)選通總線DSTBP[3:0]、DSTBN[3:0]的信號(hào)以指示在數(shù)據(jù)總線上的各個(gè)四倍長字的節(jié)拍的有效性,以便在單個(gè)總線時(shí)鐘期間傳送4個(gè)節(jié)拍(每個(gè)“節(jié)拍”包括DATA總線的64個(gè)比特)。
圖2是示出在參照?qǐng)D1的傳統(tǒng)微處理器接口系統(tǒng)100所述的數(shù)據(jù)信號(hào)組內(nèi)的用于執(zhí)行數(shù)據(jù)事務(wù)處理的數(shù)據(jù)階段的信號(hào)的交互的時(shí)序圖。在許多參考文獻(xiàn)中描述了在x86兼容的微處理器中的這樣的事務(wù)處理的操作和在此命名的對(duì)應(yīng)信號(hào),其中之一是Tom Shanley的書“The Unabridged Pentium4IA32 Processor Genealogy,第一版”。為了清楚起見,控制信號(hào)的認(rèn)定被示出為邏輯低電平,但是本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)了解也可以通過邏輯高電平來指示認(rèn)定。差分總線時(shí)鐘BCLK[1:0]的周期被示出在時(shí)序圖的頂部,其中,使用虛線來示出BCLK[1],并且BCLK[1]以與BCLK
相反的極性轉(zhuǎn)換。
如上所述,本領(lǐng)域的當(dāng)前狀態(tài)提供了64比特的DATA總線,它支持在總線時(shí)鐘BCLK[1:0]的兩個(gè)周期上在64字節(jié)的高速緩存線的數(shù)據(jù)階段期間的傳送。在64比特?cái)?shù)據(jù)總線上的單個(gè)四倍長字(即八個(gè)字節(jié))的傳送被稱為一個(gè)節(jié)拍,并且在總線時(shí)鐘BCLK[1:0]的每個(gè)周期期間傳送4個(gè)節(jié)拍A-D、E-H。在有負(fù)載時(shí)(即數(shù)據(jù)讀取請(qǐng)求時(shí)),在第一節(jié)拍A期間傳送臨界四倍長字(即其地址在地址信號(hào)組上的請(qǐng)求A階段期間被提供的四倍長字),并且按照交錯(cuò)排序協(xié)議而對(duì)于剩余的節(jié)拍B-H排序剩余的四倍長字。
圖3是圖解用于在系統(tǒng)總線105上突發(fā)傳送8個(gè)數(shù)據(jù)實(shí)體0-7的交錯(cuò)排序協(xié)議的表300的圖。用于傳送來自存儲(chǔ)器的高速緩存線的四倍長字的交錯(cuò)排序是能夠從替代的DRAM庫獲取每隔一個(gè)四倍長字(或按照總線結(jié)構(gòu)的任何大小的數(shù)據(jù)實(shí)體——例如雙字)的較老的存儲(chǔ)器配置方案的人為效果,由此排除了與從同一DRAM庫獲取兩個(gè)連續(xù)地址通常相關(guān)聯(lián)的等待狀態(tài)。雖然通過使用交錯(cuò)排序排除了在較老的DRAM設(shè)計(jì)中的等待狀態(tài),但是DRAM改進(jìn)使得系統(tǒng)設(shè)計(jì)者能夠提供其他類型的排序,諸如之后將要描述的線性排序或其他排序。
在數(shù)據(jù)總線上執(zhí)行突發(fā)傳送的傳統(tǒng)系統(tǒng)僅僅允許單個(gè)類型的傳送排序。例如,一種處理器配置允許在表300中圖解的交錯(cuò)排序。本發(fā)明人觀察到在大多數(shù)情況下,從數(shù)據(jù)接近性來看線性排序是最佳的。因此,線性排序的系統(tǒng)總線以最小化由于高速緩存線讀取而導(dǎo)致的處理停止的方式來傳送數(shù)據(jù)。雖然線性排序在許多情況下可能是最佳的,但是在某些情況下是很有害的(即引發(fā)多個(gè)流水線停止)。例如,考慮其中四倍長字7是臨界四倍長字的高速緩存線的傳送。從數(shù)據(jù)接近性來看,線性排序最大化了停止的數(shù)量。對(duì)于這種情況,也許交錯(cuò)排序是更佳的。
因此,期望提供一種協(xié)議機(jī)制,它允許作為用于高速緩存線讀取的請(qǐng)求階段的一部分動(dòng)態(tài)地指定數(shù)據(jù)實(shí)體傳送排序。還期望提供能夠動(dòng)態(tài)指定傳送排序,同時(shí)保持與現(xiàn)有和傳統(tǒng)的總線協(xié)議兼容的裝置和方法。而且,期望提供一種用來規(guī)定可以對(duì)于高速緩存線或其他類型傳送的動(dòng)態(tài)指定的定制數(shù)據(jù)實(shí)體傳送協(xié)議的技術(shù)。按照本發(fā)明的一個(gè)實(shí)施例的總線協(xié)議適合于如上參照?qǐng)D1和2所述的經(jīng)由REQ總線而使用請(qǐng)求A和請(qǐng)求B分組的當(dāng)今的x86-兼容總線結(jié)構(gòu)。而且,按照本發(fā)明的一個(gè)實(shí)施例的協(xié)議通過使用請(qǐng)求B分組的DSZ字段而提供突發(fā)排序的動(dòng)態(tài)指定,其使用了在此所述的REQ[4:3]信號(hào)。
圖4是圖解按照支持動(dòng)態(tài)突發(fā)排序的本發(fā)明的一個(gè)示例性實(shí)施例的REQ總線的REQ[4:3]信號(hào)的幾個(gè)值和對(duì)應(yīng)的請(qǐng)求B分組的四倍長字排序的表400。REQ總線的剩余信號(hào)REQ[2:0]作為“X”值被示出,用于指示它們是未指定的或“無關(guān)的”值。附加到所述值的“B”表示二進(jìn)制值。如表400中所示,將REQ[4:3]信號(hào)設(shè)置為00B請(qǐng)求對(duì)應(yīng)于規(guī)定的讀取傳送的排序是半字節(jié)線性排序,如圖6的表600中所示。將REQ[4:3]信號(hào)設(shè)置為01B請(qǐng)求對(duì)應(yīng)于規(guī)定的讀取傳送的排序是線性排序,如圖5的表500中所示。將REQ[4:3]信號(hào)設(shè)置為11B指定對(duì)應(yīng)于規(guī)定的讀取傳送的排序是交錯(cuò)的,如在表300中所示。和將REQ[4:3]信號(hào)設(shè)置為10B指定對(duì)應(yīng)于規(guī)定的讀取傳送的排序是定制排序,諸如圖7的表700中所示。響應(yīng)于按照本發(fā)明的事務(wù)處理請(qǐng)求,以按照指定的排序方案來傳送數(shù)據(jù)實(shí)體的方式來執(zhí)行讀取事務(wù)處理的剩余階段。
表700圖解了按照本發(fā)明的一個(gè)實(shí)施例的用于在系統(tǒng)總線105上突發(fā)傳送8個(gè)數(shù)據(jù)實(shí)體0-7的示例性定制排序方案。本領(lǐng)域的技術(shù)人員應(yīng)了解,按照本發(fā)明的實(shí)施例的定制排序考慮數(shù)據(jù)實(shí)體的任何可以想象到的排序,以包括特殊目的的傳送,其中少于整條高速緩存線被傳送,并且其中雙倍地傳送一個(gè)或多個(gè)實(shí)體。應(yīng)當(dāng)注意,所述交錯(cuò)、線性和半字節(jié)線性排序采用本領(lǐng)域技術(shù)人員所了解的特定模式。對(duì)于交錯(cuò)排序,在隨后的排序中,交換每個(gè)四倍長字或多對(duì)四倍長字或四個(gè)四倍長字的組合的順序。例如,對(duì)于其中第二四倍長字編號(hào)1是臨界四倍長字的編號(hào)為“1”第二排序,將四倍長字1與四倍長字0交換,將四倍長字3與四倍長字2交換,等等。對(duì)于線性四倍長字排序,所述排序類似于先入先出(FIFO)隊(duì)列,其中,第一個(gè)被重新排序到最后位置。因此,如果四倍長字是臨界四倍長字,則四倍長字0被重新排序到最后的位置(即1-2-3-4-5-6-7-0),并且如果四倍長字2是臨界四倍長字,則將四倍長字1重新排序到最后位置(2-3-4-5-6-7-0-1),等等。半字節(jié)線性排序類似于線性排序,除了以四個(gè)的分組來處理四倍長字。另一方面,定制排序是由設(shè)計(jì)者或由用戶根據(jù)特定的實(shí)現(xiàn)方式而確定的任意排序。
圖8是按照本發(fā)明的一個(gè)示例性實(shí)施例的包括使得微處理器800能夠?qū)崿F(xiàn)動(dòng)態(tài)突發(fā)排序的總線接口邏輯電路801的微處理器800的方框圖??偩€接口邏輯電路801耦接到系統(tǒng)總線105,系統(tǒng)總線105包括DATA總線(信號(hào)D[63:0])和REQ總線(信號(hào)REQ[4:0])。微處理器800包括指令邏輯電路803,用于經(jīng)由指令總線(INS BUS)805向總線接口邏輯電路801提供指令。微處理器800包括數(shù)據(jù)高速緩沖存儲(chǔ)器807,它耦接到高速緩沖存儲(chǔ)器總線809。諸如加載和存儲(chǔ)指令的指令被從指令邏輯電路803提供到總線接口邏輯電路801。總線接口邏輯電路801經(jīng)由REQ總線產(chǎn)生到系統(tǒng)總線105的對(duì)應(yīng)請(qǐng)求,并且經(jīng)由DATA總線而向/從系統(tǒng)總線105傳送數(shù)據(jù)實(shí)體(例如四倍長字)。
在操作中,當(dāng)總線接口邏輯電路801在指令總線805上接收到加載指令時(shí),在所述指令中的字段指定對(duì)應(yīng)的加載操作的突發(fā)順序?;蛘撸诳偩€接口邏輯電路801中的請(qǐng)求邏輯電路811在微處理器800的初始化(例如復(fù)位或加電)期間被配置為總是指定一特定的突發(fā)順序。在另一個(gè)實(shí)施例中,在初始化期間,BIOS指令配置或編程所述請(qǐng)求邏輯電路811。在一個(gè)實(shí)施例中,請(qǐng)求邏輯電路811包括一個(gè)或多個(gè)機(jī)器特定寄存器以構(gòu)建可允許的突發(fā)順序,并且能夠配置定制順序表(例如由定制排序表700所示)。在一個(gè)實(shí)施例中,在系統(tǒng)總線本身上或經(jīng)由諸如I2C總線等的一側(cè)總線(未示出),在系統(tǒng)初始化期間,向系統(tǒng)總線105或其上的總線代理發(fā)送微處理器800的配置和所提供的順序的類型。
其后,按照上述實(shí)施例的任何一個(gè)實(shí)施例,當(dāng)經(jīng)由來自指令邏輯電路803的指令來指定加載操作時(shí),請(qǐng)求邏輯電路811按照指定的突發(fā)順序來配置規(guī)定事務(wù)處理請(qǐng)求的請(qǐng)求B分組的DSZ字段,并且將其提供到與請(qǐng)求邏輯電路811耦接的請(qǐng)求緩沖器813。請(qǐng)求緩沖器813在系統(tǒng)總線105的REQ總線上發(fā)送請(qǐng)求B分組。請(qǐng)求邏輯電路811和請(qǐng)求緩沖器813共同地形成請(qǐng)求接口814,請(qǐng)求接口814提供對(duì)于數(shù)據(jù)事務(wù)處理的請(qǐng)求,其中所述請(qǐng)求指定所選擇的突發(fā)順序。
當(dāng)事務(wù)處理的數(shù)據(jù)階段發(fā)生時(shí),從系統(tǒng)總線105向微處理器800的響應(yīng)緩沖器815提供在突發(fā)傳送中的對(duì)應(yīng)的數(shù)據(jù)實(shí)體,所述微處理器800的響應(yīng)緩沖器815在外部連接DATA總線,并且在內(nèi)部連接高速緩沖存儲(chǔ)器總線809。按照事務(wù)處理類型的突發(fā)排序,四個(gè)示例性順序處理邏輯電路元件之一經(jīng)由高速緩存總線809向數(shù)據(jù)高速緩沖存儲(chǔ)器807正確地提供所接收的數(shù)據(jù)實(shí)體。示例性處理邏輯電路元件包括交錯(cuò)邏輯電路817、線性邏輯電路819、半字節(jié)線性邏輯電路821和定制邏輯電路823,每個(gè)耦接到高速緩沖存儲(chǔ)器總線809。如果指定的順序是交錯(cuò)的,則交錯(cuò)邏輯電路817當(dāng)數(shù)據(jù)實(shí)體到達(dá)數(shù)據(jù)高速緩沖存儲(chǔ)器807時(shí)提供所述數(shù)據(jù)實(shí)體。響應(yīng)緩沖器815和排序邏輯電路817、819、821和823一同形成響應(yīng)接口824,它按照所選擇的突發(fā)順序?qū)⑺邮盏臄?shù)據(jù)存儲(chǔ)到數(shù)據(jù)高速緩沖存儲(chǔ)器807中。如果指定的順序是線性的,則線性邏輯電路819當(dāng)數(shù)據(jù)實(shí)體到達(dá)數(shù)據(jù)高速緩沖存儲(chǔ)器807時(shí)提供所述數(shù)據(jù)實(shí)體。如果指定的順序是半字節(jié)線性的,則半字節(jié)線性邏輯電路821當(dāng)數(shù)據(jù)實(shí)體到達(dá)數(shù)據(jù)高速緩沖存儲(chǔ)器807時(shí)提供所述數(shù)據(jù)實(shí)體。如果指定的順序是定制的,則定制邏輯電路823當(dāng)數(shù)據(jù)實(shí)體到達(dá)數(shù)據(jù)高速緩沖存儲(chǔ)器807時(shí)提供所述數(shù)據(jù)實(shí)體。在一個(gè)實(shí)施例中,在所述四個(gè)接收處理邏輯電路元件的每個(gè)中提供排序表。在另外一個(gè)實(shí)施例中,在總線接口邏輯電路801內(nèi)指定順序。在第三實(shí)施例中,所述順序在機(jī)器特定寄存器(未示出)中在初始化期間被編程,并且被提供到總線接口邏輯電路801。
圖9是按照本發(fā)明的一個(gè)示例性實(shí)施例的微處理器接口系統(tǒng)900的簡化方框圖。所述微處理器接口系統(tǒng)900類似于傳統(tǒng)的微處理器接口系統(tǒng)100,除了將微處理器101替換為微處理器800,并且將總線代理103替換為總線代理900。系統(tǒng)總線105被包括用于將微處理器800與總線代理900相連接。按照本發(fā)明的一個(gè)示例性實(shí)施例,微處理器800包括總線接口邏輯電路801,它使得微處理器800能夠?qū)崿F(xiàn)動(dòng)態(tài)突發(fā)排序。按照本發(fā)明的一個(gè)示例性實(shí)施例,總線代理900包括總線接口邏輯電路901,它使得總線代理900能夠?qū)崿F(xiàn)動(dòng)態(tài)突發(fā)排序??偩€接口邏輯電路901被配置為與總線接口邏輯電路801兼容,以經(jīng)由在前述的REQ總線上提供的請(qǐng)求B分組而提供按照由總線接口邏輯電路801指定的突發(fā)排序而排序的在DATA總線上的四倍長字。
按照本發(fā)明的一個(gè)實(shí)施例的用于在數(shù)據(jù)傳送中排序事務(wù)處理節(jié)拍的裝置和方法特別有益于嵌入應(yīng)用,因?yàn)槎ㄖ仆话l(fā)傳送順序可以被配置并動(dòng)態(tài)地使用來優(yōu)化在嵌入處理器上執(zhí)行的特定應(yīng)用的高速緩存線填充。本發(fā)明還提供了對(duì)于操作系統(tǒng)的優(yōu)點(diǎn),由此可以執(zhí)行特定的公知應(yīng)用,以便以由于高速緩存線傳送而導(dǎo)致的最小停止來執(zhí)行突發(fā)傳送。
雖然已經(jīng)參照一些較佳的特定型式而相當(dāng)詳細(xì)地說明了本發(fā)明,但是其他的型式和變換也是可能和可以考慮的。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)了解,它們可以在不脫離由所附的權(quán)利要求限定的本發(fā)明的精神和范圍的前提下容易地使用所公開的構(gòu)思和具體實(shí)施例來作為設(shè)計(jì)或修改用于執(zhí)行本發(fā)明的相同目的的其他結(jié)構(gòu)的基礎(chǔ)。
本要求2005年7月19日提交的第60/700692號(hào)的美國臨時(shí)申請(qǐng),以及於2006年4月18日提交的第11/379166號(hào)美國正式申請(qǐng)案的權(quán)益,在此將其作為參考而引用。
本申請(qǐng)涉及下面的共同待審的美國專利申請(qǐng),它們都具有共同的受讓者和共同的發(fā)明人。
序號(hào)提交日期發(fā)明名稱11/364704 2/28/2006 用于稀疏線寫入事務(wù)處理的裝置和方法11/363826 2/28/2006 用于使能可變寬度數(shù)據(jù)傳送的微處理器裝置和方法11/369896 3/7/2006用于四倍頻地址總線的裝置和方法11/374663 3/13/2006 靈活寬度數(shù)據(jù)協(xié)議
權(quán)利要求
1.一種微處理器,包括高速緩沖存儲(chǔ)器;以及總線接口邏輯電路,與請(qǐng)求信號(hào)和數(shù)據(jù)信號(hào)連接,包括請(qǐng)求接口,經(jīng)由用于數(shù)據(jù)事務(wù)處理的請(qǐng)求信號(hào)而提供請(qǐng)求,其中所述請(qǐng)求指定所選擇的突發(fā)順序;響應(yīng)接口,耦接到所述高速緩沖存儲(chǔ)器,所述響應(yīng)接口按照所述所選擇的突發(fā)順序而將經(jīng)由所述數(shù)據(jù)信號(hào)接收的數(shù)據(jù)存儲(chǔ)到所述高速緩沖存儲(chǔ)器中。
2.按照權(quán)利要求1的微處理器,其中所述請(qǐng)求接口通過在所述數(shù)據(jù)事務(wù)處理的請(qǐng)求階段期間配置請(qǐng)求分組的字段來指定所述所選擇的突發(fā)順序。
3.按照權(quán)利要求1的微處理器,其中從交錯(cuò)排序、線性排序、半字節(jié)線性排序和定制排序選擇所述所選擇的突發(fā)順序。
4.按照權(quán)利要求1的微處理器,還包括指令邏輯電路,向所述總線接口邏輯電路提供指令以指定所述所選擇的突發(fā)順序。
5.按照權(quán)利要求1的微處理器,其中所述請(qǐng)求接口包括指定所述所選擇的突發(fā)順序的請(qǐng)求邏輯電路和耦接到所述請(qǐng)求邏輯電路并且連接所述請(qǐng)求信號(hào)的請(qǐng)求緩沖器。
6.按照權(quán)利要求5的微處理器,其中包括如下兩者之一所述請(qǐng)求邏輯電路被預(yù)先配置來在初始化期間指定所述所選擇的突發(fā)順序;在初始化期間編程所述請(qǐng)求邏輯電路以指定所述所選擇的突發(fā)順序。
7.按照權(quán)利要求1的微處理器,其中所述響應(yīng)接口包括與所述數(shù)據(jù)信號(hào)連接的響應(yīng)緩沖器;與所述響應(yīng)緩沖器和所述高速緩沖存儲(chǔ)器耦接的高速緩存線;以及排序邏輯電路,耦接到所述高速緩存總線,按照所述所選擇的突發(fā)順序而向所述高速緩沖存儲(chǔ)器中存儲(chǔ)經(jīng)由所述響應(yīng)緩沖器而接收的數(shù)據(jù)。
8.按照權(quán)利要求7的微處理器,其中所述排序邏輯電路包括交錯(cuò)邏輯電路,按照交錯(cuò)排序而將數(shù)據(jù)存儲(chǔ)到所述高速緩沖存儲(chǔ)器中;線性邏輯電路,按照線性排序而將數(shù)據(jù)存儲(chǔ)到所述高速緩沖存儲(chǔ)器中;半字節(jié)線性邏輯電路,按照半字節(jié)線性排序而將數(shù)據(jù)存儲(chǔ)到所述高速緩沖存儲(chǔ)器中;以及定制邏輯電路,按照定制排序而將數(shù)據(jù)存儲(chǔ)到所述高速緩沖存儲(chǔ)器中。
9.一種微處理器接口系統(tǒng),包括系統(tǒng)總線,包括請(qǐng)求總線和數(shù)據(jù)總線;微處理器,包括高速緩沖存儲(chǔ)器;請(qǐng)求邏輯電路,連接到所述請(qǐng)求總線,在所述請(qǐng)求總線上提供用于數(shù)據(jù)事務(wù)處理的指定對(duì)于所述數(shù)據(jù)事務(wù)處理的所選擇的突發(fā)順序的請(qǐng)求;以及響應(yīng)邏輯電路,連接到所述高速緩沖存儲(chǔ)器和所述數(shù)據(jù)總線,按照所述所選擇的突發(fā)順序來將從所述數(shù)據(jù)總線接收的數(shù)據(jù)存儲(chǔ)到所述高速緩沖存儲(chǔ)器中;以及總線代理,耦接到所述系統(tǒng)總線,所述總線代理接收所述請(qǐng)求,按照所述所選擇的突發(fā)順序?qū)⒂糜谒鰯?shù)據(jù)事務(wù)處理的所述數(shù)據(jù)提供到所述數(shù)據(jù)總線上。
10.按照權(quán)利要求9的微處理器接口系統(tǒng),其中所述總線代理包括被配置來用于動(dòng)態(tài)突發(fā)排序的總線接口邏輯電路。
11.按照權(quán)利要求9的微處理器接口系統(tǒng),其中所述請(qǐng)求邏輯電路配置請(qǐng)求分組的字段以指定所述所選擇的突發(fā)順序并將所述請(qǐng)求分組提供到所述請(qǐng)求總線上。
12.按照權(quán)利要求9的微處理器接口系統(tǒng),其中所述所選擇的突發(fā)順序是在交錯(cuò)順序、線性順序、半字節(jié)線性順序和定制順序中選擇的一個(gè)。
13.一種在數(shù)據(jù)事務(wù)處理中排序數(shù)據(jù)節(jié)拍的方法,包括使用所選擇的突發(fā)順序來配置對(duì)于數(shù)據(jù)事務(wù)處理的請(qǐng)求;在請(qǐng)求階段期間將用于數(shù)據(jù)事務(wù)處理的請(qǐng)求提供到系統(tǒng)總線上;在數(shù)據(jù)事務(wù)處理的對(duì)應(yīng)的數(shù)據(jù)階段期間從系統(tǒng)總線接收數(shù)據(jù);以及按照所選擇的突發(fā)順序來存儲(chǔ)數(shù)據(jù)。
14.按照權(quán)利要求13的方法,其中所述使用所選擇的突發(fā)順序來配置用于數(shù)據(jù)事務(wù)處理的請(qǐng)求包括如下兩者之一配置請(qǐng)求分組的字段;按照在交錯(cuò)順序、線性順序、半字節(jié)線性順序和定制順序中選擇的一個(gè)來配置請(qǐng)求。
15.按照權(quán)利要求13的方法,還包括如下三者之一提供加載指令,其指定所選擇的突發(fā)順序;使用所選擇的突發(fā)順序來預(yù)先配置請(qǐng)求邏輯電路;按照所選擇的突發(fā)順序來在初始化時(shí)編程請(qǐng)求邏輯電路。
16.按照權(quán)利要求13的方法,其中所述按照所選擇的突發(fā)順序存儲(chǔ)數(shù)據(jù)包括按照在交錯(cuò)順序、線性順序、半字節(jié)線性順序和定制順序中選擇的一個(gè)來存儲(chǔ)數(shù)據(jù)。
全文摘要
一種微處理器,包括高速緩沖存儲(chǔ)器和總線接口邏輯電路。所述總線接口邏輯電路與請(qǐng)求信號(hào)和數(shù)據(jù)信號(hào)連接,并且包括請(qǐng)求接口和響應(yīng)接口。請(qǐng)求接口經(jīng)由用于數(shù)據(jù)事務(wù)處理的請(qǐng)求信號(hào)而提供請(qǐng)求,其中所述請(qǐng)求指定所選擇的突發(fā)順序。響應(yīng)接口按照所選擇的突發(fā)順序而將經(jīng)由數(shù)據(jù)信號(hào)接收的數(shù)據(jù)存儲(chǔ)到高速緩沖存儲(chǔ)器。所述請(qǐng)求接口可以通過在數(shù)據(jù)事務(wù)處理的請(qǐng)求階段期間配置請(qǐng)求分組的字段來指定所選擇的突發(fā)順序??梢詮膸讉€(gè)不同的數(shù)據(jù)事務(wù)處理排序中選擇所選擇的突發(fā)順序,所述幾個(gè)不同的數(shù)據(jù)事務(wù)處理排序包括交錯(cuò)排序、線性排序、半字節(jié)線性排序和定制排序。所述微處理器可以還包括指令邏輯電路,它向總線接口邏輯電路提供指令以指定所選擇的突發(fā)順序。
文檔編號(hào)G06F13/36GK1892633SQ200610105948
公開日2007年1月10日 申請(qǐng)日期2006年7月19日 優(yōu)先權(quán)日2005年7月19日
發(fā)明者達(dá)賴厄斯·D·嘉斯金斯 申請(qǐng)人:威盛電子股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
四平市| 和龙市| 安新县| 清河县| 贵定县| 凤台县| 峨眉山市| 渝中区| 仁怀市| 呼图壁县| 郓城县| 肥东县| 江西省| 山东| 文成县| 崇左市| 温宿县| 斗六市| 奈曼旗| 商河县| 马公市| 丹寨县| 称多县| 商洛市| 池州市| 苍梧县| 枣阳市| 婺源县| 美姑县| 若羌县| 陆川县| 白玉县| 富顺县| 永康市| 乐昌市| 定边县| 阆中市| 邳州市| 南和县| 宾川县| 丹东市|