專利名稱:高存取效率的接口電路及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計算機系統(tǒng)的總線仲裁,特別涉及一種高存取效率的存儲器接口電路及方法。
背景技術(shù):
存儲器控制器是設(shè)計用以代表一或多個請求者(例如,處理器、外圍裝置等)介接各種型式的存儲器。典型上,存儲器控制器用于提供某些潛時(latency)及頻帶特性。通常需要對存儲器提供低潛時及高頻帶的存取。然而,降低潛時的最佳化,可能會降低頻帶。同樣地,提升頻帶的最佳化,可能會導(dǎo)致潛時增加。因此,存儲器控制器的設(shè)計者通常必需在低潛時及高頻帶兩特征間作取舍。
可預(yù)先選定存儲器控制器的潛時及頻帶特性。舉例而言,存儲器控制器可能基于該存儲器控制器的預(yù)期工作負載被最佳化以符合處理器的存取,而潛時通常是主要的特性。其它工作負載則可能偏重頻帶而非潛時。例如,在網(wǎng)絡(luò)環(huán)境下,大量數(shù)據(jù)包可能被寫入存儲器或從存儲器讀出。當(dāng)然前述存取需要低潛時,但具有高頻帶可能比低潛時更重要,以確保數(shù)據(jù)包能夠及時被寫入或讀出存儲器,而不會漏失數(shù)據(jù)包、或不必因使用流量控制而降低網(wǎng)絡(luò)數(shù)據(jù)包傳輸速率。
圖1是在一系統(tǒng)總線上的多個裝置以現(xiàn)有技術(shù)方式而與外部存儲器聯(lián)系的方塊圖。為簡單起見、及較佳地圖標(biāo)本案的發(fā)明特征(請參照其后的一發(fā)明實施例的比較圖標(biāo)),對于特定元件的標(biāo)記及符號可被推廣。例如圖1中,圖示耦接至“外部存儲器”12的一“外部接口”10。該外部接口10可以是一存儲器控制器、或其它用以介接前述存儲器12的裝置或一特殊化設(shè)計的電路。
系統(tǒng)總線20可用來連接許多裝置,包括多個主控裝置22、24及26。在此種情況下,主控裝置一般是指一個能取得該系統(tǒng)總線20的驅(qū)動控制權(quán)的裝置。亦即,在任何時間能夠取得該系統(tǒng)總線上通信的“主控權(quán)”的裝置。舉例而言,系統(tǒng)總線20可耦接至多個裝置,包括多重處理器、獨立處理器、直接存儲器存取(DMA)控制器、打印機服務(wù)器,以及其它裝置。在任意時間,任一個前述裝置可能負責(zé)控制放置于系統(tǒng)總線20上的信息。未顯示于圖中的仲裁邏輯電路以仲裁總線20上的控制,使得在任何時間,僅有一裝置具有主控權(quán)或者說是該系統(tǒng)總線的控制權(quán)。此一觀念及其操作乃為現(xiàn)有,故無需在此陳述。
各主控裝置22、24及26時時可能與外部存儲器12聯(lián)絡(luò)信息。以電路與門/或門的邏輯電路型態(tài)所實作的總線接口30用以介接該系統(tǒng)總線20與外部存儲器12,或如圖1所示,介接該系統(tǒng)總線20與該外部接口10。因此,從主控裝置26傳送至外部存儲器12的信息,首先經(jīng)由總線接口30,再經(jīng)可以是一存儲器控制器的外部接口10到達外部存儲器12。
總線接口30與外部存儲器間的通信可更通過緩沖器40和45的作用而得以提升,緩沖器40和45插置于總線接口30及外部存儲器12(或如實施例圖所示者,插置于總線30及外部接口10)之間。在已知的系統(tǒng)中,某些緩沖器40作為讀取緩沖器。當(dāng)從外部存儲器12送出數(shù)據(jù)至一請求主控裝置時,數(shù)據(jù)被放置于讀取緩沖器40內(nèi)。接著,當(dāng)一主控裝置發(fā)出一請求要從外部存儲器“讀取”數(shù)據(jù)時,該數(shù)據(jù)經(jīng)過讀取緩沖器40而從外部存儲器12傳輸至總線接口30。同樣地,當(dāng)一主控裝置發(fā)出一“寫入”指令,以從系統(tǒng)總線20寫入數(shù)據(jù)至外部存儲器12時,該數(shù)據(jù)首先仍經(jīng)過寫入緩沖器45而進行傳輸。當(dāng)有多個數(shù)據(jù)項需要實時連續(xù)地被讀取或?qū)懭氲那樾蜗拢褂镁彌_器40和45可以提升上述作業(yè)及數(shù)據(jù)流的速度。
舉例而言,考慮主控設(shè)置22發(fā)出三個連續(xù)寫入指令以寫入數(shù)據(jù)至外部存儲器12的情形。在沒有緩沖器的情形下,第一數(shù)據(jù)項會通過總線30、外部接口10、最后被寫入至外部存儲器12。在數(shù)據(jù)被寫入至外部存儲器12之后,一確認指示會送回至該主控裝置22,在接到該確認指示之后,該主控裝置接著初始化下一數(shù)據(jù)項的寫入。對照使用寫入緩沖器45的系統(tǒng)中,主控裝置22可將所有的三個數(shù)據(jù)項,幾乎實時連續(xù)地一次寫入緩沖器45。之后,該外部接口10及存儲器12將接收所述數(shù)據(jù)項。以此種方式寫入數(shù)據(jù)可以大量地擴張數(shù)據(jù)流,且允許主控裝置22提早交出系統(tǒng)總線20,使得對于耦接至系統(tǒng)總線20的其它主控裝置22來說,系統(tǒng)總線20具有更高的可進入性及可利用性。通過使用讀取緩沖器40亦可獲得相同的效率。由于此種系統(tǒng)亦為現(xiàn)有,故在此不給予詳細說明。
雖然前述電路提供某些效能表現(xiàn)及操作上的提升,卻仍有許多缺點。例如,考慮主控裝置22發(fā)出三個連續(xù)寫入命令以寫入各種數(shù)據(jù)項至外部存儲器的情形。在發(fā)出所述命令之后,主控裝置22交出總線20。另假設(shè)主控裝置24發(fā)出一數(shù)據(jù)讀取請求,所請求數(shù)據(jù)的地址對應(yīng)于剛被主控裝置22寫入的三個數(shù)據(jù)項其中之一的地址。特別地,假設(shè)系統(tǒng)判斷主控裝置24所請求的數(shù)據(jù)目前是置于一寫入緩沖器45內(nèi)。地址檢查邏輯電路50用以進行此一判斷,并經(jīng)過總線30發(fā)出信號,命令主控裝置24要等候此數(shù)據(jù)(因其尚未備妥)。主控裝置24必須等到該數(shù)據(jù)從相對應(yīng)的寫入緩沖器45通過外部接口10寫入外部存儲器,亦即在該數(shù)據(jù)能“有效”被讀取前,主控裝置24必須等候,因此存取效率實屬不佳。
前述者僅是一特定情形的一例示,對現(xiàn)有系統(tǒng)而言仍需要進一步的效能表現(xiàn)提升。因此,需要對此現(xiàn)有系統(tǒng)做出前述及其它效能表現(xiàn)的提升。
發(fā)明內(nèi)容
本發(fā)明的某些目的、優(yōu)點及新穎特征將在以下描述中會被提出,本發(fā)明對于熟悉相關(guān)技藝的人士在檢視下文后,將會是明白無誤、也可學(xué)習(xí)到本發(fā)明的實施。通過附加的申請專利范圍所特別指出的手段及結(jié)合本發(fā)明的目的及優(yōu)點可被實現(xiàn)及獲得。
為達到既定利益及新穎特征,本發(fā)明主要指向一種高存取效率的接口電路及方法。該接口電路包括多個雙向緩沖器及邏輯電路,響應(yīng)來自一系統(tǒng)零元件的一讀取請求,配置成用以確認被請求的數(shù)據(jù)目前是否放置在所述雙向緩沖器中及被指定從所述雙向緩沖器寫入至一外部存儲器,其中,該邏輯電路更配置成用以從該雙向緩沖器提供該數(shù)據(jù)至該請求系統(tǒng)零元件,無需等到該數(shù)據(jù)被寫入至該外部存儲器,進而提升對存儲器的數(shù)據(jù)存取效率。
為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉較佳實施例,并配合附圖,作詳細說明如下。
圖1顯示一現(xiàn)有系統(tǒng)的某些零元件的方塊圖。
圖2,可相較于圖1的系統(tǒng),是顯示依據(jù)本發(fā)明實施例的一系統(tǒng)的某些零元件的方塊圖。
圖3顯示本發(fā)明一實施例的某些零元件的方塊圖。
圖4顯示本發(fā)明一實施例的某些零元件的方塊圖。
圖5顯示本發(fā)明一實施例的高階操作的流程圖。
具體實施例方式
在摘要本發(fā)明的各種特征后,現(xiàn)請參照如圖例所示的本發(fā)明的詳細描述。本發(fā)明將會參照所述相關(guān)圖例以進行說明,但并非用以將本發(fā)明限制到該說明所揭露的實施例。相反地,修改及等效事物若均是含括在所附加的申請專利范圍所定義的發(fā)明的精神及范圍內(nèi),則亦為本發(fā)明所涵蓋。
需注意的是,在此所列的附圖用于圖示本發(fā)明實施例的某些特征及面向。從在此所提供的描述可察知多種替換性的實施例及實施都可被實現(xiàn),并與本發(fā)明的范圍及精神相符合。
參照圖2,其顯示本發(fā)明一實施例的方塊圖。圖2特別地圖標(biāo)一系統(tǒng)的零元件,相較于圖1的系統(tǒng),該系統(tǒng)可以更突顯本發(fā)明實施例的特征及面向。像圖1的外部接口10和系統(tǒng)總線20,圖2的實施例包括一外部接口110及系統(tǒng)總線120。多個系統(tǒng)零元件,例如主控裝置122、124及126,可耦接至系統(tǒng)總線120。一總線接口130亦被圖標(biāo)。
由前述討論可知,依本發(fā)明的實施例,該總線接口130的高階功能性操作與圖1的總線接口30類似,總線接口130的內(nèi)部零元件及邏輯電路可以包括某些額外或不同的特征。本發(fā)明實施例的中心思想在于引入雙向緩沖器160。在這一點上,圖2實施例包括多個雙向緩沖器160,用以容納總線接口130與外部接口110兩者間的雙向通信。
從高階操作的觀點視之,雙向緩沖器160以類似圖1實施例的讀取緩沖器40及寫入緩沖器45的方式,充分地提供讀取及寫入操作。亦即,當(dāng)從一主控裝置經(jīng)由總線接口130而寫入信息至外部存儲器(經(jīng)由外部接口110)時,該信息被寫入(或寄存于)所述雙向緩沖器160。然而,圖2實施例的一重大改進是,系統(tǒng)總線120上的裝置能夠?qū)崟r讀取目前位于所述緩沖器160其中之一的數(shù)據(jù)(亦即可在寫入至外部存儲器的過程中進行讀取)。在這一點上,地址檢查邏輯電路200被耦接至雙向緩沖器160及總線接口130。
為圖標(biāo)此種操作,考慮主控裝置122送出要寫入至外部存儲器的三個連續(xù)數(shù)據(jù)項的例子。所述數(shù)據(jù)項通過總線接口130被寫入三個雙向緩沖器160。更考慮主控裝置122交出系統(tǒng)總線122之后,主控裝置124發(fā)出從一存儲器讀取的請求,且該讀取地址對應(yīng)于一第一地址,該第一地址指向該主控裝置122所寫入三個數(shù)據(jù)項所要寫入的地址之一。地址檢查邏輯電路200從外部存儲器地址判斷所請求的數(shù)據(jù)是位于所述緩沖器160其中之一。與現(xiàn)有技術(shù)不同,本實施例并不會擱置(suspend)主控裝置124的讀取動作,直到該數(shù)據(jù)被首先寫入外部存儲器,地址檢查邏輯電路200能配置恰當(dāng)?shù)碾p向緩沖器160,以允許數(shù)據(jù)實時地被總線接口130所擷取,并轉(zhuǎn)給請求的主控裝置124。這使得總線接口130實質(zhì)上實時滿足主控制裝置124的讀取請求,主控制裝置124無須等到外部存儲器中的數(shù)據(jù)成為有效,即可滿足其讀取請求。除了實時滿足讀取請求(藉以允許主控裝置124繼續(xù)其處理操作)以外,在數(shù)據(jù)被寫入外部存儲器之后,本發(fā)明也消除與主控裝置24溝通所需的管理操作與相關(guān)于系統(tǒng)總線120的進一步仲裁。
前已說明本發(fā)明一實施例的高階結(jié)構(gòu)及操作,更詳細的實施范例將在此描述。如所知者,大部分的系統(tǒng)同步是利用一或多個時鐘而達成。以圖2所示系統(tǒng)為例,一系統(tǒng)時鐘172用以同步系統(tǒng)總線側(cè)的通信,而一存儲器時鐘174用以同步與外部存儲器及外部接口110的通信。因此,雙向緩沖器160需要被適當(dāng)?shù)臅r鐘信號同步。在此實施例中,時鐘選擇邏輯電路180用以確保適當(dāng)?shù)臅r鐘信號被耦接至適當(dāng)?shù)碾p向緩沖器160。因此,在一實施例中,時鐘選擇邏輯電路180包括系統(tǒng)時鐘172及存儲器時鐘174,作為輸入。該時鐘選擇邏輯電路180的輸出,被耦接至各個緩沖器160。依據(jù)本發(fā)明的實施例一致的精神,該時鐘選擇邏輯電路180可以多種方式來實施。
在如圖2所示的一實施例中,時鐘選擇邏輯電路180可利用多個多路復(fù)用器來實施。特別地,多個多路復(fù)用器182在此實施例中,是與雙向緩沖器160一對一地配置,以使每一多路復(fù)用器182的輸出直接地連接(或耦接)至所述雙向緩沖器160的一時鐘輸入。系統(tǒng)時鐘172及存儲器時鐘174的信號可直接連接(或耦接)至所述多路復(fù)用器182的各別輸入。多路復(fù)用器選擇輸入184被設(shè)置用于控制那一時鐘信號(系統(tǒng)時鐘172或存儲器時鐘174)被所述多路復(fù)用器182所選擇。在所圖示的實施例中,單一多路復(fù)用器選擇輸入184被連接至每一所述多路復(fù)用器182的多路復(fù)用器選擇輸入。
在另一實施例中(并未特別圖示),可獨立地為每一獨立多路復(fù)用器而產(chǎn)生多路復(fù)用器選擇信號。此一實施例允許某些緩沖器160和外部接口110之間、以及其它緩沖器160和總線接口130之間的同時通信。因此,為了一緩沖器160和外部接口110之間的通信,該多路復(fù)用器選擇信號線184用以選擇該存儲器時鐘174的信號,以作為相關(guān)緩沖器160的同步時鐘。同樣地,為了一緩沖器160和總線接口130之間的通信,該多任務(wù)選擇信號184使該相關(guān)多路復(fù)用器182選擇系統(tǒng)時鐘172作為各別緩沖器160的時鐘信號。
在圖標(biāo)的實施例中,緩沖器管理邏輯電路300是繪示成該總線接口130的一部分。對于熟習(xí)相關(guān)技術(shù)者可知,該緩沖器管理邏輯電路300可與該緩沖器接口130分開。就功能性廣泛而言,該緩沖器管理邏輯電路300用于管理所述雙向緩沖器160的某些操作特征。所述操作特征將會與相關(guān)的圖4作詳細的說明。然而,緩沖器管理邏輯電路300的諸等操作特征之一包括多路復(fù)用器選擇信號184的產(chǎn)生,該多路復(fù)用器選擇信號184用于控制所述多路復(fù)用器182的多路復(fù)用器選擇輸入。相同地,在包括時鐘選擇邏輯電路180(未合并多路復(fù)用器182)的實施例中,緩沖器管理邏輯電路300可包括用以執(zhí)行一操作功能相似的相關(guān)邏輯電路。亦即,此實施例中不會產(chǎn)生多路復(fù)用器選擇信號,但是可產(chǎn)生其它信號以控制或配合該時鐘選擇邏輯電路180,以確保緩沖器160和系統(tǒng)及存儲器時鐘的同步。
在描述完本發(fā)明一實施例的高階結(jié)構(gòu)及功能操作后,請參照圖3,其顯示相關(guān)于本發(fā)明實施例的地址檢查邏輯電路200特征的方塊圖。如相關(guān)于圖2的描述,該地址檢查邏輯電路200配置用于執(zhí)行多種操作,包括檢查目前存于雙向緩沖器中的數(shù)據(jù),以判斷被讀出或?qū)懭氲臄?shù)據(jù)目前是否存在于所述緩沖器160中。在圖2所述的例子中,一主控裝置發(fā)出一讀取要求,地址檢查邏輯電路200判斷所述緩沖器160是否包含預(yù)定寫入被請求的存儲器位置的數(shù)據(jù)。此情形下,地址檢查邏輯電路200與緩沖器管理邏輯電路300一起操作,以立即從恰當(dāng)?shù)臄?shù)據(jù)緩沖器160將數(shù)據(jù)導(dǎo)引至總線接口130。當(dāng)然該數(shù)據(jù)會留在緩沖器160內(nèi),最終被寫入至該數(shù)據(jù)被指定的外部存儲器位置。同樣地,在讀取請求之外,一主控裝置發(fā)出一寫入請求給一外部存儲器位置以及具有被指定至該存儲器地址的數(shù)據(jù)的所述緩沖器160之一,接著該地址檢查邏輯電路200,再與該緩沖管理邏輯電路300合作,而對發(fā)出緩沖器160中的現(xiàn)有值進行覆寫操作。如此可消除對相同外部存儲器位置的連續(xù)寫入。
與圖3的描述一致,地址檢查邏輯電路200可包括邏輯電路210,配置成用以通信或介接該緩沖管理邏輯電路300。此類型的通信或接口的圖例已經(jīng)被描述,在此不再予以贅述。此外,基于設(shè)計目標(biāo)及本發(fā)明實施例的各種實作,熟悉相關(guān)技藝的人士可認出此接口的其它特特征及面向。與前述例子一致,該地址檢查邏輯電路200亦可包括一寫入管理邏輯電路220以管理寫入操作(亦即一主控裝置寫入數(shù)據(jù)至一外部存儲器位置的操作)。同樣地,該地址檢查邏輯電路200可包括一讀取管理邏輯電路230以管理讀取操作(亦即由主控裝置請求要從外部存儲器讀出數(shù)據(jù))。在寫入操作中,該寫入管理邏輯電路220可具有一第二判斷邏輯電路222,用以判斷一緩沖器160目前是否包含一指向該存儲器地址的數(shù)據(jù),該存儲器地址是在該寫入指令中被確認。若為否,該寫入管理邏輯電路220可包括一寫入邏輯電路224,用以將目前數(shù)據(jù)寫入至一可用緩沖器中。否則,若一緩沖器160目前具有指定給一確認地址的數(shù)據(jù),該寫入管理邏輯電路220可具有一覆寫邏輯電路226以使用目前的數(shù)據(jù)覆寫該緩沖器的內(nèi)容,藉此使所需的緩沖器數(shù)目、及所述緩沖器160與外部接口110間的通信減少至最低。
同樣地,在讀取操作中,該地址檢查邏輯電路200可包括一第一判斷邏輯電路232、一讀取邏輯電路234及一擷取邏輯電路236。該第一判斷邏輯電路232判斷一緩沖器160目前是否具有被預(yù)定給將要被讀取的存儲器地址的數(shù)據(jù)。若是,該讀取邏輯電路234用以配置適當(dāng)?shù)木彌_器以直接提供數(shù)據(jù)至總線接口130(有效地允許數(shù)據(jù)直接從發(fā)出的緩沖器被讀取,而無需先被寫入外部存儲器)。否則,若無緩沖器目前具有被預(yù)定給所請求存儲器地址的數(shù)據(jù),該擷取邏輯電路236可用以從外部存儲器120擷取數(shù)據(jù),例如該讀取操作可被隊列,以便從外部存儲器通過一或多個雙向緩沖器160來讀取數(shù)據(jù)。
在描述該地址檢查邏輯電路200某些高階特征后,請參照至圖4,其顯示本發(fā)明一實施例的緩沖器管理邏輯電路300的某些高階特征的方塊圖。如同該地址檢查邏輯電路200包括與該緩沖器管理邏輯電路通信的邏輯電路,該緩沖器管理邏輯電路300同樣地包括一第二通信/接口邏輯電路310,用以與該地址檢查邏輯電路通信或接口(聯(lián)系)。取決于特別的實作,此邏輯電路可以是硬件或軟件的型式、或兩者的結(jié)合,熟悉相關(guān)技藝的人士,當(dāng)可以領(lǐng)會各種合適的實作,因此不在此贅述。在圖示的實施例中,該緩沖器管理邏輯電路300亦可包括一檢測邏輯電路320,用以檢測一主控裝置何時發(fā)出指定給外部存儲器的一讀取請求或一寫入請求。任一對外部存儲器的操作不是讀取就是寫入,意味著無論如何都會使用所述緩沖器160,因此可利用該緩沖器管理邏輯電路300及/或地址檢查邏輯電路200加速其它操作。所述操作之一僅僅是所述緩沖器160與適當(dāng)系統(tǒng)或信號時鐘的同步。如相關(guān)于圖2的所述,該緩沖器管理邏輯電路300可包括一產(chǎn)生邏輯電路330用以產(chǎn)生一適當(dāng)控制信號供至?xí)r鐘選擇電路。在一實施例中,這一時鐘選擇邏輯電路利用多個多路復(fù)用器,該產(chǎn)生邏輯電路330可產(chǎn)生適當(dāng)?shù)亩鄠€多路復(fù)用器選擇信號。
此外,緩沖器管理邏輯電路300包括一管理邏輯電路340,配置成用以指定及委派各種緩沖器160。無論如何,上述的管理包括委派各別緩沖器160的數(shù)據(jù)方向為發(fā)出或收入(亦即,根據(jù)給定的情況以讀出或?qū)懭刖彌_器)。例如,當(dāng)總線接口130傳送數(shù)據(jù)至一或多個緩沖器160以寫入外部存儲器時,所述緩沖器160會被委派成為「寫入緩沖器」。反之,當(dāng)數(shù)據(jù)從外部接口110被回傳及被寫入緩沖器160時,所述緩沖器160會被委派成為「讀取緩沖器」。可被察知的是,有多種方式可將此特征及操作實施于該緩沖器管理邏輯電路300內(nèi)。其中,一種方式是通過翻譯表345的實施,該翻譯表345的項目或信息包括一緩沖器數(shù)目、一存儲器地址或地址范圍、指示目前對該存儲器地址進行讀取操作或?qū)懭氩僮鞯囊恢笜?biāo)或標(biāo)記。關(guān)于緩沖器數(shù)目,在一實施例中例如包括八個32字節(jié)(byte)的緩沖器,其緩沖器數(shù)目可以是一至八,以便指定特定的緩沖器??杀徊熘氖牵摰刂窓z查緩沖邏輯電路200可接口聯(lián)系該翻譯表345,判斷目前被請求的地址是否現(xiàn)在被包含于所述緩沖器的配置內(nèi)。為更進一步說明,考慮一裝置將數(shù)據(jù)從系統(tǒng)總線寫入至外部存儲器的例子。在數(shù)據(jù)被寫入外部存儲器之前,假設(shè)數(shù)據(jù)被寫入第二緩沖器。翻譯表345中適當(dāng)?shù)捻椖靠赡馨ㄒ痪哂械诙彌_器的代表數(shù)字2的線,對應(yīng)于該第二緩沖器的相關(guān)外部存儲器地址,以及在讀/寫欄中指出該緩沖器目前作為寫入緩沖器的一指示或標(biāo)記。若是接下來總線接口130初始化讀取請求以從存儲器地址請求信息,該地址檢查邏輯電路200可從該翻譯表345判斷被請求的該存儲器地址是否含括在該翻譯表中?;诒容^,該地址檢查邏輯電路200能控制相對的緩沖器代表數(shù)字,以立即從該緩沖器讀取數(shù)據(jù)至該總線接口130,進而傳送數(shù)據(jù)至該請求的裝置。
應(yīng)知悉前文所述者,是僅呈現(xiàn)實施本發(fā)明的概念及特征的多種實施例。再者,本發(fā)明的一廣泛特征在于雙向緩沖器(或可被配置成進行讀取或?qū)懭敕较虿僮鞯木彌_器)的實施,以及其伴有的邏輯電路,其允許所指定將被寫至外部存儲器的現(xiàn)存在于一緩沖器中的數(shù)據(jù),立即地從該緩沖器被讀取至該總線接口130。本案也提出相對應(yīng)的創(chuàng)造性方法。
就此點而言,參照圖5,其顯示本發(fā)明一實施例的高階操作流程圖。根據(jù)此一實施例,其提供一方法用以介接一系統(tǒng)至一存儲器。該方法包括根據(jù)指令寫入數(shù)據(jù)至設(shè)置在一接口內(nèi)的一雙向緩沖器,該指令指示耦接至該系統(tǒng)總線的裝置寫入數(shù)據(jù)至該存儲器(步驟402)。之后,該方法接收耦接該系統(tǒng)總線的一裝置的請求,從存儲器擷取數(shù)據(jù)(步驟404)。該方法然后判斷被請求的數(shù)據(jù)目前是否被存儲或被包含在該雙向緩沖器內(nèi),并等待與該存儲器的通信(步驟406)。最后,該方法從該雙向緩沖器擷取被請求的數(shù)據(jù),以傳送所擷取的數(shù)據(jù)至該請求裝置,而無需先等待該數(shù)據(jù)被寫入該存儲器(步驟408)。
前面所述并非用以將本發(fā)明完全限制至所揭示的刻板形式。按照以上的教示,是有可能對本發(fā)明進行明顯的修改或變化的。此外,所揭露的實施例被選擇或描述,以提供本發(fā)明的原理的最佳圖例,其實際應(yīng)用因而使得熟悉相關(guān)技術(shù)藝的人士可利用本發(fā)明于各種實施例上,以及可進行多種變化以適用于所預(yù)想特定使用上。所有諸如此類的修改或變化含括在由本發(fā)明申請專利范圍所界定的范圍內(nèi),并以該申請專利范圍依法律所正當(dāng)解讀的廣度為準(zhǔn)。
權(quán)利要求
1.一種高存取效率的接口電路,包括多個雙向緩沖器,每一所述雙向緩沖器具有一時鐘輸入;多個多路復(fù)用器電路,其中,所述多路復(fù)用器電路被設(shè)置成為與所述雙向緩沖器之間有一對一的對應(yīng)關(guān)系,使得每一所述多路復(fù)用器電路的一輸出耦接至該對應(yīng)雙向緩沖器的該時鐘輸入,每一所述多路復(fù)用器電路的一第一輸入耦接至一存儲器時鐘信號,每一所述多路復(fù)用器電路的一第二輸入耦接至一系統(tǒng)時鐘信號;以及緩沖器管理邏輯電路,被設(shè)置成用以產(chǎn)生控制信號給所述多路復(fù)用器電路,控制信號獨立地控制每一所述多路復(fù)用器電路以選擇該存儲器時鐘信號或該系統(tǒng)時鐘信號輸出至每一對應(yīng)的所述雙向緩沖器。
2.如權(quán)利要求1所述的高存取效率的接口電路,其中,該緩沖器管理邏輯電路被設(shè)置成用以產(chǎn)生該控制信號給所述多路復(fù)用器電路,使得所述多路復(fù)用器電路被設(shè)置成當(dāng)所述雙向緩沖器與一外部存儲器的接口通信時,選擇該存儲器時鐘信號,以及所述多路復(fù)用器電路被設(shè)置成用以當(dāng)所述雙向緩沖器與一系統(tǒng)總線接口通信時,選擇該系統(tǒng)體時鐘信號。
3.如權(quán)利要求1所述的高存取效率的接口電路,更包括地址檢查邏輯電路,響應(yīng)來自一系統(tǒng)元件的讀取請求,該地址檢查邏輯電路被設(shè)置成用以確認被請求的數(shù)據(jù)目前是否位于所述雙向緩沖器中及是否被指定要從所述雙向緩沖器被寫入一外部存儲器,其中,該地址檢查邏輯電路包括一第一判斷邏輯電路,判斷所述雙向緩沖器其中之一目前是否具有被指定至一存儲器地址的數(shù)據(jù)要被讀?。蛔x取邏輯電路,被設(shè)置成一相稱雙向緩沖器以提供該數(shù)據(jù)直接至一總線接口,藉此有效地允許該數(shù)據(jù)被直接讀取,而無需被先寫入至該外部存儲器;以及擷取邏輯電路,當(dāng)目前無緩沖器具有被指定給所請求存儲器位置的數(shù)據(jù)時,用以從該外部存儲器擷取數(shù)據(jù)。
4.如權(quán)利要求3所述的高存取效率的接口電路,其中,該地址檢查邏輯電路更被設(shè)置成用以控制所述雙向緩沖器,以提供被請求的數(shù)據(jù)給發(fā)出讀取請求的該系統(tǒng)元件,無需先將該數(shù)據(jù)寫入該外部存儲器,其中,該地址檢查邏輯電路包括寫入管理邏輯電路用以管理寫入操作,其中,在該電路的寫入操作中,該系統(tǒng)元件寫入數(shù)據(jù)至該外部存儲器,該寫入管理邏輯電路包括一第二判斷邏輯電路,判斷所述雙向緩沖器目前是否包含有指定給已在一寫入指令中確認的一存儲器地址的數(shù)據(jù);寫入邏輯電路,當(dāng)該第二判斷邏輯電路判斷目前無數(shù)據(jù)含括在所述雙向緩沖器之一時,用以寫入一當(dāng)前數(shù)據(jù)至一可用緩沖器;以及覆寫邏輯電路,當(dāng)所述雙向緩沖器的一目前具有指定至該確認地址的數(shù)據(jù)時,用以使用該當(dāng)前數(shù)據(jù)覆寫所述雙向緩沖器的內(nèi)容。
5.如權(quán)利要求3所述的高存取效率的接口電路,其中,該緩沖器管理邏輯電路包括一第二通信接口邏輯電路,用以介接該地址檢查邏輯電路;檢測邏輯電路,用以檢測下列該系統(tǒng)元件發(fā)出的各種信息的任意組合該讀取請求;以及一指定至外部存儲器的寫入指令;產(chǎn)生邏輯電路,用以產(chǎn)生所述控制信號;以及管理邏輯電路,被設(shè)置成包括一翻譯表,以管理多種緩沖器的指定及委派,該翻譯表包括一緩沖數(shù)目、一存儲器地址或地址范圍、表示該存儲器地址的當(dāng)前操作是否為一讀取操作或一寫入操作的一標(biāo)示,其中,該地址檢查邏輯電路介接該翻譯表,判斷一當(dāng)前被請求地址目前是否被含括在所述緩沖器內(nèi)。
6.一種高存取效率的接口電路,包括多個雙向緩沖器,每一所述雙向緩沖器具有一時鐘輸入;一存儲器時鐘信號線,搭載一存儲器時鐘信號,以同步所述雙向緩沖器與一外部存儲器接口之間的通信;一系統(tǒng)時鐘信號線,搭載一系統(tǒng)時鐘信號,以同步所述雙向緩沖器與一系統(tǒng)總線接口之間的通信;以及時鐘選擇邏輯電路,被設(shè)置成用以控制將搭載于該存儲器時鐘信號線及該系統(tǒng)時鐘信號線的所述信號耦接至所述雙向緩沖器,使得該時鐘選擇邏輯電路當(dāng)所述雙向緩沖器與該外部存儲器接口之間發(fā)生通信時,控制搭載于該存儲器時鐘信號線的該存儲器時鐘信號耦接至所述雙向緩沖器,以及使得該時鐘選擇邏輯電路當(dāng)所述雙向緩沖器與該系統(tǒng)總線接口之間有發(fā)生通信時,控制搭載于系統(tǒng)時鐘信號線的該系統(tǒng)時鐘信號耦接至所述雙向緩沖器。
7.一種高存取效率的接口電路,包括多個雙向緩沖器,被插置在一系統(tǒng)總線及外部存儲器之間;時鐘選擇邏輯電路,被設(shè)置成用以控制通過所述雙向緩沖器的數(shù)據(jù)通信,該邏輯電路被設(shè)置成用以選擇一時鐘信號供每一所述雙向緩沖器,其中,該被選擇的時鐘信號是一系統(tǒng)時鐘及一存儲器時鐘其中之一;以及地址檢查邏輯電路,響應(yīng)來自一系統(tǒng)元件的一讀取請求,被設(shè)置成用以確認為被請求的數(shù)據(jù)目前是否位于所述雙向緩沖器中以及被指定從所述雙向緩沖器被寫入至一外部存儲器。
8.一種高存取效率的接口電路,包括多個雙向緩沖器;邏輯電路,響應(yīng)來自一系統(tǒng)元件的一讀取請求,該邏輯電路被設(shè)置成用以確認被請求的數(shù)據(jù)目前是否位于所述雙向緩沖器中以及是否被指定從所述雙向緩沖器寫入至一外部存儲器,其中該邏輯電路更被設(shè)置成用以從所述雙向緩沖器供應(yīng)該數(shù)據(jù)至該請求系統(tǒng)元件,無需先將該數(shù)據(jù)寫入至該外部存儲器。
9.如權(quán)利要求8所述的高存取效率的接口電路,更包括一存儲器時鐘信號線,用以搭載一存儲器時鐘信號以同步所述雙向緩沖器與一外部存儲器接口的通信;一系統(tǒng)時鐘信號線,用以搭載一系統(tǒng)時鐘信號以同步所述雙向緩沖器與一系統(tǒng)總線接口的通信;以及時鐘選擇邏輯電路,被設(shè)置成用以控制性地將搭載于該存儲器時鐘信號線及該是時鐘信號線的所述信號耦接至所述雙向緩沖器,使得該時鐘選擇邏輯電路,在所述雙向緩沖器與該外部存儲器接口之間有發(fā)生通信時,控制性地將搭載于該存儲器時鐘信號線的該信號耦接至所述雙向緩沖器,以及使得該時鐘選擇邏輯電路,在所述雙向緩沖器與該系統(tǒng)總線接口之間有發(fā)生通信時,控制性地將搭載于系統(tǒng)時鐘信號線的該信號耦接至所述雙向緩沖器。
10.一種高存取效率的接口方法,適用于一系統(tǒng)總線與一存儲器之間的通信,包括寫入數(shù)據(jù)至設(shè)在一接口內(nèi)的一雙向緩沖器,以響應(yīng)從該系統(tǒng)總線將數(shù)據(jù)寫入該存儲器的指令;接收在該系統(tǒng)總線上的一裝置所發(fā)出的請求,以從該存儲器中擷取數(shù)據(jù);判斷數(shù)據(jù)目前是否被存儲在該雙向緩沖器中,及等待與該存儲器的通信;以及從該雙向緩沖器擷取該被請求的數(shù)據(jù),以與該請求裝置通信,無需先等待該數(shù)據(jù)被寫入該存儲器。
全文摘要
本發(fā)明揭露一種高存取效率的接口電路及方法,該接口電路包括多個雙向緩沖器及邏輯電路,響應(yīng)來自一系統(tǒng)元件的一讀取請求,被設(shè)置成用以確認被請求的數(shù)據(jù)目前是否位于所述雙向緩沖器中及被指定要從所述雙向緩沖器寫入至一外部存儲器,其中該邏輯電路更被設(shè)置成用以從所述雙向緩沖器供應(yīng)該數(shù)據(jù)至該請求系統(tǒng)元件,而無需先將該數(shù)據(jù)寫入該外部存儲器,進而提高對存儲器的數(shù)據(jù)存取效率。
文檔編號G06F13/16GK101067778SQ20071011035
公開日2007年11月7日 申請日期2007年6月13日 優(yōu)先權(quán)日2006年7月18日
發(fā)明者查理斯·雪洛 申請人:威盛電子股份有限公司