專利名稱:總線系統的制作方法
技術領域:
本發明涉及總線系統,尤其涉及通過調整存取指令的執行和時間點的次序以及傳送到每個從器件的存取指令的執行次序來提高數據總線的效率的總線系統。
判優器(arbiter)用于判優對總線的存取。在傳統總線系統中,判優器從多個主器件接收對總線存取的請求,根據特定判優算法對總線訪問請求進行判優,并根據判優結果來賦予主器件對總線的控制。一旦已經許可主器件的請求,主器件便可以接管總線的控制,直到主器件已經完成它與相應從器件的數據傳輸。這里,總線可以包括地址/控制總線和數據總線。
當前使用的總線系統采用諸如同步DRAM(SDRAM,同步動態隨機存取存儲器)的高速存儲器作為從器件。在諸如SDRAM之類的高速存儲器的情況下,它不能與數據總線同時對存取/控制總線進行存取。也就是說,如果諸如地址或讀/寫標志之類的地址/控制信號輸入到SDRAM,則在經過了預定等待時間之后才輸出或輸入數據。因此,主器件實際上在比預期時間短的時段內接管了對地址/控制總線或數據總線的控制。根據傳統判優系統,其中在預定時間內同時地賦予對地址/控制總線或數據總線的存取或控制,存在著大量地址/控制總線和數據總線的空閑時鐘周期(cycle),這降低了總線存取的效率。
采用固定優先級方案的判優器易于設計,但如果在總線系統操作期間所指定的優先級需要修改,則不能應用這種判優器。必要時,根據優先級指定方案的判優在支持經常通過總線發送和接收數據的主器件方面是有利的。
然而,優先級指定方案的問題在于,與固定優先級方案或賦予每個主器件相等的存取或控制總線的機會的周期算法(round robin algorithm)相比,硬件又大又復雜。更具體地說,將總線請求從每個主器件輸入到每個輸入端口,通過比較每個輸入端口進行優先級指定,以查找優先級最高的輸入端口。因此,例如,如果輸入端口數是3或4,則需要3至6個比較器。也就是說,對于N個輸入端口,需要nC2個比較器。隨著主器件數的增加,比較器數顯著增加,這將導致極大的判優器電路和緩慢的判優速度。因此,為了獲得適當尺寸的判優器電路和高的判優速度,必須限制主器件的數量。
為了解決上面問題,本發明的目的是提供一種通過減少數據總線的空閑時鐘周期數提高了數據傳輸效率的總線系統。
本發明的另一個目的是提供一種無需限制主器件數就能提供優先級指定方案的判優器和利用這種判優器的總線系統。
因此,為了達到上述目的,本發明提供了包括多個主器件和多個從器件的總線系統,其中至少一個從器件存在等待時間。該總線系統包括判優器,用于接收從多個主器件輸出的存取指令,并以根據預定判優算法的次序輸出存取指令;執行調度器,用于接收從判優器輸出的存取指令,并以相應的從器件的執行準備完成的次序來輸出存取指令;分別與至少一個從器件相對應提供的多個指令執行控制器,每個指令執行控制器存儲兩個或更多個從執行調度器輸入的存取指令,從存儲的存取指令中提取執行所需的存取信息,根據提取的存取信息與有關當前正被執行的指令的存取信息的比較結果來控制存取指令的輸出次序,以使所存儲指令的總執行時間短于根據輸入指令的次序的總執行時間;和分別與至少一個從器件相對應提供的多個偽延遲器,每個偽延遲器延遲從指令執行控制器接收的存取指令并將其輸出到相應的從器件,以便使相應的從器件的等待時間可以等于多個從器件中最長的等待時間。
判優器包括總線請求接收器,與多個主器件相連接,用于從主器件接收總線請求輸入;優先級提取器,用于如果通過總線請求接收器輸入總線請求則輸出表示與主器件相對應的預定優先級的優先級信號,并根據輸出的優先級信號產生表示各總線請求的所有優先級的優先級和信號;優先級輸出單元,用于根據優先級提取器產生的優先級和信號以優先級遞降的次序輸出優先級;包括標識符輸出單元的優先級映射器,該標識符輸出單元根據優先級信號輸出提出總線請求的主器件的標識符;和判優電路,用于將總線存取賦予(grant)具有從優先級映射器輸出的標識符的主器件,以便使賦予總線存取的主器件總線輸出存取指令。
最好,總線請求接收器包括多個與該多個主器件相連接的輸入端口,用于從主器件接收總線請求輸入;和多個配置在輸入端口中的寄存器,用于存儲在輸入端口上指定的優先級。
最好,利用與優先級相同的位數來表示優先級信號。優先級輸出單元對一個或多個優先級信號逐位進行OR(或)運算,并產生以與優先級信號相同位數表示的優先級和信號。
最好,主器件標識符輸出單元包括標識符提取器,用于通過提取包括位的位列來產生標識符信號,所述位表示向由優先級信號構成的矩陣所請求的優先級,并根據產生的標識符信號提取相應的主器件標識符;和標識符輸出單元,用于輸出在由標識符提取器的所提取的標識符中具有從優先級輸出單元輸出的優先級的主器件的標識符。標識符提取器包括解碼器,用于接收輸入標識符信號,并提取相應的主器件標識符。
最好,執行調度器包括存取指令分配器,用于接收從判優器輸出的存取指令,并向相應的指令執行控制器發送存取指令;和執行調度單元,用于向指令執行控制器發出發送的存取指令的執行開始信號,所述指令執行控制器與已經從存取指令分配器接收了存取指令的偽延遲器中已經接收了執行準備完成信號的一個偽延遲器相對應。
最好,執行調度單元包括標識符存儲隊列,含有一個或多個存儲元件作為標識符存儲單元,用于存儲通過存取指令分配器接收存取指令的相應從器件的標識符,和標識符存儲隊列控制器,用于控制標識符存儲隊列;比較器,所述比較器的每一個是與每個存儲元件相對應地配置的,用于確定存儲在存儲元件中的標識符是否與發送執行準備完成信號的從器件的標識符相同;和解碼器,用于如果由比較器確定兩個標識符是相同的,向已經接收了執行準備完成信號的偽延遲器發送執行開始信號。
最好,存取指令分配器包括指令存儲隊列,用于存儲從判優器接收的存取指令;和指令存儲隊列控制器,用于控制指令存儲隊列。
每個指令執行控制器包括指令保持器,用于存儲兩個或多個從存取指令分配器接收的存取指令;存取信息提取器,用于從存儲在指令存儲單元中的存取指令提取用于執行的存取指令;執行存取信息存儲單元,用于存儲有關當前正由從器件執行的存取指令的存取信息;比較單元,用于將由存取信息提取器提取的存取信息與存儲在執行存取信息存儲單元中的存取信息相比較;和輸出次序控制器,用于根據來自比較單元的比較結果控制存儲在指令保持器中的存取指令的輸出次序,以便所存儲指令的總執行時間短于按照存儲指令的次序的總執行時間,并按照被控制的輸出次序將存取指令輸出到偽延遲器。
最好,指令保持器包括指令存儲隊列,含有多個存儲元件,用于存儲存取指令;并且存取信息提取器包括多個信息提取器,用于提取存取信息,所述信息提取器的每一個是與每個存儲元件相對應地配置的。執行存取信息存儲單元包括寄存器,用于存儲有關當前正被執行的存取指令的存取信息;和比較單元包括多個比較器,用于將存取信息提取器提取的存取信息與存儲在寄存器中的存取信息相比較,所述比較器的每一個是與每個存取信息提取器相對應地配置的。輸出次序控制器包括輸出次序控制電路,用于根據由來自比較器的比較結果賦予的優先級來控制輸出次序;和多路復用器,用于按照來自輸出次序控制電路的輸出次序來輸出存儲在指令存儲單元中的存取指令。
最好,存取信息包括組地址和行地址,和比較單元將每個信息提取器提取的組地址和行地址與存儲在寄存器中的組地址和行地址相比較。輸出次序控制電路向作為比較結果其組地址和行地址與存儲在寄存器中的組地址和行地址相同的存取指令賦予第一優先級,而向作為比較結果其組地址與存儲在寄存器中的組地址不同的存取指令賦予第二優先級。存取信息還包括突發(burst)長度,突發長度的含義是突發發送數據的位長度。
最好,每個偽延遲器包括存儲單元,用于存儲與最長等待時間與每個從器件的等待時間之間的差值相對應的延遲時鐘周期數,從相應指令執行控制器接收存取指令,并在經過了與存儲在存儲單元中的數目相對應的延遲時鐘周期數之后將存取指令發送到相應的從器件。
本發明還提供了包括多個主器件和多個從器件的總線系統,其中至少一個從器件存在等待時間。該總線系統包括判優器,用于接收從多個主器件輸出的存取指令,并以根據預定判優算法的次序輸出存取指令;執行調度器,用于從判優器接收存取指令,并以相應的從器件的執行準備完成的次序來輸出存取指令;多個與該多個從器件相對應地提供的指令存儲單元,每個指令存儲單元存儲一個或多個從執行調度器接收的存取指令,并以輸入指令的次序輸出存取指令;和多個分別與至少一個從器件相對應提供的偽延遲器,每個偽延遲器延遲從指令存儲單元接收的存取指令并將其輸出到相應的從器件,以便使相應的從器件的等待時間可以等于該多個從器件中最長的等待時間。
判優器包括總線請求接收器,與多個主器件相連接,用于從主器件接收總線請求輸入;優先級提取器,用于如果通過總線請求接收器輸入總線請求則輸出表示與主器件相對應的預定優先級的優先級信號,并根據輸出的優先級信號產生表示各總線請求的所有優先級的優先級和信號;優先級輸出單元,用于根據優先級提取器產生的優先級和信號以優先級遞降的次序輸出優先級;包括標識符輸出單元的優先級映射器,該標識符輸出單元根據優先級信號來輸出提出總線請求的主器件的標識符;和判優電路,用于將總線存取賦予具有從優先級映射器輸出的標識符的主器件,以便使賦予總線存取的主器件輸出存取命令。
最好,總線請求接收器包括多個與該多個主器件相連接的輸入端口,用于從主器件接收總線請求輸入;和多個配置在輸入端口中的寄存器,用于存儲在輸入端口指定的優先級。優先級信號用與優先級相同的位數表示。
最好,優先級輸出單元對一個或多個優先級信號逐位進行OR(或)運算,并產生以與優先級信號相同位數表示的優先級和信號。主器件標識符輸出單元包括標識符提取器,用于通過提取包括位的位列來產生標識符信號,所述位表示由優先級信號構成的矩陣所請求的優先級,并根據產生的標識符信號提取相應的主器件標識符;和標識符輸出單元,用于輸出在由標識符提取器的所提取的標識符中具有從優先級輸出單元輸出的優先級的主器件的標識符。標識符提取器包括解碼器,用于接收輸入標識符信號,并提取相應的主器件標識符。
最好,執行調度器包括存取指令分配器,用于接收從判優器輸出的存取指令,并向相應的指令存儲單元發送存取指令;和執行調度單元,用于向指令存儲單元發出發送的存取指令的執行開始信號,所述指令存儲單元與已經從存取指令分配器接收了存取指令的偽延遲器中已經接收了執行準備完成信號的一個偽延遲器相對應。
最好,執行調度單元包括標識符存儲隊列,含有一個或多個存儲元件作為標識符存儲單元,用于存儲通過存取指令分配器接收存取指令的相應從器件的標識符;和標識符存儲隊列控制器,用于控制標識符存儲隊列;比較器,所述比較器的每一個是與每個存儲元件相對應地配置的,用于確定存儲在存儲元件中的標識符是否與發送執行準備完成信號的從器件的標識符相同;和解碼器,用于如果由比較器確定兩個標識符是相同的,向已經接收了執行準備完成信號的偽延遲器發送執行開始信號。
最好,存取指令分配器包括指令存儲隊列,用于存儲從判優器接收的存取指令;和指令存儲隊列控制器,用于控制指令存儲隊列。每個指令存儲單元包括執行指令存儲隊列,用于存儲存取指令;和執行指令存儲隊列控制器,用于控制執行指令存儲隊列。
最好,每個偽延遲器包括存儲單元,用于存儲與最長等待時間與每個從器件的等待時間之間的差值相對應的延遲時鐘周期數;從相應指令存儲單元接收存取指令;并在經過了與存儲在存儲單元中的數目相對應的延遲時鐘周期數之后將存取指令發送到相應的從器件。
通過結合附圖對本發明的優選實施例進行如下詳細描述,本發明的上述目的和優點將更加清楚,在附圖中,
圖1是顯示根據本發明優選實施例的總線系統的示意圖;圖2是圖1的從器件的詳細方塊圖;圖3是圖1的判優器的方塊圖;圖4是圖3的優先級映射器的方塊圖;圖5是用于說明執行調度器4、指令執行控制器和偽延遲器60之間的相互關系的方塊圖;圖6是圖5的執行調度器的詳細方塊圖;圖7是圖5的指令執行控制器的詳細方塊圖;圖8是圖1的指令存儲單元的詳細方塊圖;和圖9是用于說明根據本發明的數據傳輸的時序圖。
參照圖1,根據本發明優選實施例的總線系統包括多個主器件10-17、多個從器件20-24、判優器3、執行調度器4、多個指令執行控制器50、51和52、指令存儲單元53和54、和多個偽延遲器60-64。多個主器件10-17和多個從器件20-24通過圖中未示出的公用數據總線相互連接。數據總線包括主數據總線和本地數據總線,它們以不同的傳輸速度工作。
主器件10-17通常指處理器或直接存儲器存取(DMA)器件,從器件20-24指諸如RAM(隨機存取存儲器)、ROM(只讀存儲器)、SDRAM(同步動態隨機存取存儲器)和RDRAM(R動態隨機存取存儲器)之類的存儲器、I/O(輸入/輸出)器件、或其它外圍器件。在本實施例中,從器件20、21、和22是允許高速數據傳輸的SDRM(同步動態隨機存儲器),其余的從器件23和24沒有用于數據傳輸的等待時間。沒有等待時間的器件的代表性例子是ROM。
判優器3根據優先級指定方案提出總線請求的主設備10-17中優先級最高的主設備10、11、…、或17被賦予對地址/控制總線50和數據總線51的存取,這能夠改變主設備10、11、…、或17每一個的優先級。執行調度器4將從判優器3發送的存取指令發給相應的指令執行控制器50、51、或52或指令存儲單元53或54,然后使從設備21、22、23、24、或25以完成執行準備的次序執行存取指令。在這種情況下,存取指令包括諸如地址之類數據傳輸所需要的存取信息、相應主設備的標識符和表示突發發送數據的位長度的突發長度。存取指令的執行意味著已經完成了要由存取指令執行的數據傳輸。
指令執行控制器50、51和52分別與從器件20、21和228相對應地設置。指令執行控制器50、51和52分別從執行調度器4接收存取指令,控制接收的存取指令的執行次序,并將存取指令輸出到偽延遲器60、61和62。與從器件23和24相對應設置的指令存儲單元53和54以從執行調度器4接收各存取指令的次序,分別將各存取指令輸出到偽延遲器63和64。
偽延遲器60-64與從器件20-24相對應,在已經經過預定時鐘周期數之后,偽延遲器60-64的每一個將從指令執行控制器50、51和52或指令存儲單元53和54接收的存取指令發送到相應的從器件20、21、22、23或24。
同時,偽延遲器60-64的每一個根據存取指令,在作為真正完成數據傳輸之前與預定等待時間相對應的時鐘周期數的時間點上,將通知存取指令的執行已經完成、即數據傳輸已經完成的偽執行完成信號發送到執行調度器。數據傳輸的真正完成可以由包含在指令中的突發長度確定。
圖2是圖1的從器件20的詳細方塊圖。從器件21和22具有與從器件20相同的結構。參照圖2,從器件20包括SDRAM控制器20a和SDRAM 20b。SDRAM 20b包括,其中的每一個包括多個存儲元件的存儲器組A201和存儲器組B202;和用于控制存儲器組A201和存儲器組B202的外圍電路200。存儲器組A201和存儲器組B202利用未示出的公用端口向外界發送數據和從外界接收數據。
與SDRAM 20b耦合的SDRAM控制器20a從SDRAM 20a接收各種控制信號。SDRAM控制器20a從相應的偽延遲器60接收存取指令,并根據接收的存取指令發送存取存儲器組A201或存儲器組B202所需要的SDRAM 20b信號,以執行該存取指令。發送的信號包括片選信號CS#、行地址選通RAS#、列地址選通CAS#、數據地址AD(行地址和列地址)、存儲器組地址BA、讀/寫選擇信號W#和數據輸出/輸入使能信號。為了簡便起見,只表示了關于RAS、CAST和數據地址ADR和線。
根據本發明的優選實施例,SDRAM控制器20a與相應的偽延遲器60耦合。偽延遲器60從指令執行控制器50接收存取指令,控制接收的存取指令的執行次序,并根據受控制的存取指令的執行次序,向SDRAM控制器20a輸出存取指令。
圖3是圖1的判優器3的方決圖。參照圖3,判優器3包括優先級映射器31和判優電路32。如果從一個或多個主器件10-17輸入總線請求,則優先級映射器31根據預定優先級輸出標識輸入總線請求中具有最高優先級的總線請求的主器件10、11、…、或17的標識符。判優電路32將總線賦予具有從優先級映射器31輸出的標識符的主器件10、11、…、或17。
圖4是圖3的優先級映射器的方塊圖。參照圖4,優先級映射器31包括總線請求接收器300、優先級提取器301、優先級輸出單元302、標識符提取器303和標識符輸出單元304。總線請求接收器300包括多個分別與主器件10-17相連接的輸入端口,能夠給它們指定優先級,它們從主器件10-17接收總線請求。此外,如果一個或多個總線請求通過這些輸入端口輸入,總線請求接收器300輸出表示在輸入總線請求的相應輸入端口上指定的優先級的優先級信號。為相應輸入端口指定的優先級存儲在相應的寄存器中。優先級提取器301根據從總線請求接收器300輸出的優先級信號,輸出表示輸入總線請求的各輸入端口的所有優先級的優先級和信號。
由于根據本實施例的總線系統包括8個主器件10-17,因此在總線請求接收器300中配置8個輸入端口和8個寄存器0-7。此外,根據本實施例的優先級分類成16個優先級,用16位表示一個優先級信號,并且,在優先級提取器301中配置16個OR運算器0-15,以便對優先級信號的每個位進行OR運算。
優先級輸出單元302根據從優先級提取器301輸出的優先級信號,以優先級遞減的次序輸出優先級。根據從總線請求接收器300輸出的優先級信號,標識符提取器303產生表示主器件標識符的標識符信號,此主器件標識符與優先級信號中表示的優先級相對應,并解碼產生的標識符信號,以提取相應的主器件標識符。每一個都與優先級相對應的16個解碼器0-15配置在標識符提取器303中,以便解碼標識符信號。標識符輸出單元302輸出在由標識符提取器303提取的主器件標識符中具有由優先級輸出單元302輸出的優先級的主器件標識符。
例如,如果主器件10的優先級是4,和主器件11的優先級是6,則從總線請求接收器300輸出的優先級信號分別是1110111111111111和1111101111111111。因此,由優先級提取器301對兩個優先級信號逐位進行OR運算,輸出1110101111111111的優先級和信號F1ag0、…、Flag15。當從最高有效位(MSB)開始數時,第4和第6位是“0”,這意味著作出了優先級為4和6的總線請求。如果隨著優先級降低這些總線請求有更高的優先級,則輸入優先級和信號的優先級輸出單元302先輸出4,再輸出6。8*16矩陣按照下列方式生成,作為優先級信號的行矢量1110111111111111與主器件10相對應,作為優先級信號的行矢量1111101111111111與主器件11相對應,和行矢量1111111111111111與未提出總線請求的其余主器件12-17相對應。該矩陣表示如下111 1111111111111 1111111111111 1111111111111 1111111111111 1111111111111 1111111111111 1111111111111 1111111111
在該矩陣中總線請求的優先級是4和6,因此,標識符提取器303產生標識符信號01111111和10111111,由處在與相應優先級相同的位置上的列位組成,分別由解碼器4和解碼器6解碼產生的標識符信號,并提取相應的主器件標識符。標識符信號用8位表示,每一位以從MSB開始的次序對應于主器件10-17之一。因此,可以看出,具有優先級4和6的總線請求分別由主器件10和主器件11提出。然后,標識符提取器303提取主器件10和主器件11的標識符,并將提取的標識符輸出到標識符輸出單元304。在從標識符提取器303輸入的主器件10和主器件11的兩個標識符中,標識符輸出單元304根據從優先級輸出單元302輸出的優先級的次序,先輸出主器件11的標識符,再輸出主器件11的標識符。
更一般地,以下用C-語言編寫的表達式來描述。首先,主器件10可以具有其范圍從0到15的、存儲在寄存器中的優先級,因此,priority levelsignal0(優先級信號0)可以是下列16種情況中的一種。
Case(priority0)0priority level signal0=0b1111111111111110;1priority level signal0=0b1111111111111101;2priority level signal0=0b1111111111111011;3priority level signal0=0b1111111111110111;4priority level signal0=0b1111111111101111;5priority level signal0=0b1111111111011111;6priority level signal0=0b1111111110111111;7priority level signal0=0b1111111101111111;8priority level signal0=0b1111111011111111;9priority level signal0=0b1111110111111111;10priority level signal0=0b1111101111111111;11priority level signal0=0b1111011111111111;12priority level signal0=0b1110111111111111;13priority level signal0=0b1101111111111111;14priority level signal0=0b1011111111111111;15priority level signal0=0b0111111111111111;endcase此處0b表示二進制位。
這也可以在主器件11-17中以相同方式表達。優先級和信號表示總線請求具有什么優先級,組成優先級和信號的Flag0、…、Flagl5按如下構成Flag0=priority level signal0
or priority level signal1
or priority level signal2
or priority level signal3
or priority level signal4
or priority level signal5
or priority level signal6
or priority level signal7
or priority level signal8
or priority level signal9
or priority level signal10
or priority level signal11
or priority level signal12
or priority level signal13
or priority level signal14
or priority level signal15
Identifier signal 0-7(標識符信號0-7)通過提取優先級信號的每個位,并將提取的位重排成位串產生。
Case(identifier signal0)0bddddddd0ld0<=0;0bdddddd01ld0<=1;0bddddd011ld0<=2;0bdddd0111ld0<=3;0bddd01111ld0<=4;0bdd011111ld0<=5;0bd0111111ld0<=6;0b01111111ld0<=7;endcase此處,d表示“don’t care(不管)”。其余的identifier signal1-7按相同的方式構成。
圖5是用于說明執行調度器4、指令執行控制器50和偽延遲器60之間的相互關系的方塊圖。其余的指令執行控制器51和52、和偽延遲器61和62也分別具有與指令執行控制器50和偽延遲器60相同的結構。
參照圖5,執行調度器4包括存取指令分配器41,用于將從判優器3輸出的存取指令發送到相應的指令執行控制器50;和執行調度單元46,用于將存取指令的執行開始信號發送到在存取指令分配器41發送存取指令到其中的偽延遲器60-64中發出了執行準備完成信號的一個偽延遲器60。
指令執行控制器50包括指令保持器31、存取信息提取器32、比較單元34、執行存取信息存儲單元33和輸出次序控制電路35。指令保持器31存儲兩個或多個從存取指令分配器41發送的指令。存取信息提取器32從存儲在指令保持器31中的指令中提取用于執行的存取信息。執行存取信息存儲單元33存儲有關當前正在相應的從器件20中執行的存取指令的存取信息。比較單元34將由存取信息提取器32提取的存取信息與存儲在執行存取信息存儲單元33中的存取信息相比較。輸出次序控制電路35根據比較單元34的比較結果控制存儲在指令保持器31中的指令的輸出次序,以便所存儲指令的總執行時間可以短于根據在指令保持器31中存儲指令的次序的執行時間,并將指令輸出到相應的偽延遲器60。
偽延遲器60包括存儲單元611,其中存儲著與從器件20相對應的延遲時鐘周期數。偽延遲器60在經過了與存儲在存儲單元611中的延遲時鐘周期數相對應的延遲時鐘周期數之后,將從指令執行控制器50接收的存取指令傳送到相應的從器件20。這里,存儲單元611可以用寄存器來實現。偽延遲器60根據輸出到相應從器件20的存取指令,在真正執行完成一數據傳輸的真正完成時間之前的作為預定時鐘周期的時間點上,將偽執行完成信號通知給已經輸出了發送到偽延遲器60的存取指令的主器件10、11、12、13、14、15、16或17。
圖6是圖5的執行調度器的詳細方塊圖。執行調度器4的存取指令分配器41包括指令存儲隊列410和用于控制指令存儲隊列410的指令存儲隊列控制器411,指令存儲隊列410作為指令存儲單元用于存儲從判優器3接收的存取指令。執行調度器4的執行調度單元46包括標識符存儲隊列460、標識符存儲隊列控制器461、比較器462和解碼器463,該標識符存儲隊列460作為標識符輸出單元用于存儲從器件20-24的標識符。
標識符存儲隊列460包括一個或多個存儲元件,用于存儲包含在通過存取指令分配器41發送的存取指令中的從器件標識符;標識符存儲隊列控制器461控制標識符存儲隊列460的輸入和輸出。為每個存儲元件配置的每個比較器462確定存儲在每個存儲元件中的標識符是否與發送了執行準備完成信號的偽延遲器60的標識符相同。如果比較器462確定兩個標識符相同,那么,解碼器463向已經發送了執行準備完成信號的偽延遲器60發送執行開始信號。在這種情況下,比較器462和解碼器463是邏輯意義上的名稱,可以用各種各樣的電路結構來實現它們。
圖7是圖5的指令執行控制器50的詳細方塊圖。下面結合圖2作為SDRAM的從器件20對指令執行控制器50加以描述。這是因為對含有等待時間的從器件的描述要借助于對指令執行控制器50的理解。參照圖7,指令保持器31由指令存儲隊列31來實現,指令存儲隊列31包括5個用于存儲指令的存儲元件。這里,存儲指令的存儲元件的數目取決于特定應用的類型。存取信息存儲提取器32由與各存儲元件相對應地配置的多個信息提取器320實現。存取信息指當存儲在相應存儲元件中的指令存取存儲器組A201或存儲器組B202時所需要的信息。要根據本發明優選實施例提取的詳細存取信息包括存儲器組地址和要發送用于讀/寫的數據的行地址。該指令由各種類型信息記錄在上面的數據字段構成。通常,行地址、組地址和列地址以從高位到低位的次序分配在數據字段上。用于標識主器件10-17的標識符包含在指令中。這里,結構、排列和與數據字段相關地分配的位數可以依系統的特征或特定應用作適當調整。
執行存取信息存儲單元33由寄存器33實現,用于存儲從SDRAM控制器20a接收到的、存儲器組地址和當前在存儲器組A201或存儲器組B202中執行的指令的行地址。比較單元34包括多個比較器340,分別用于將由信息提取器320提取的存儲器組地址和行地址與存儲在寄存器33中的存儲器組地址和行地址相比較。在這種情況下,比較器340是邏輯意義上的名稱,并且可以用各種各樣的電路結構實現它們。
輸出次序控制電路35由輸出次序控制電路351和多路復用器352和353實現,如下所述的輸出次序控制電路351用于執行輸出次序控制算法,與指令存儲隊列31相連的多路復用器351和352用于根據來自輸出次序控制電路351和控制結果來輸出存儲在每個存儲元件中的指令。如果作為相應比較器340的比較結果,由信息提取器320提取的存儲器組地址和行地址兩者與存儲在寄存器中的存儲器組地址和行地址兩者相同,則給該指令賦予第一優先級。如果存儲器組地址彼此不同,則輸出次序控制電路351賦予該指令第二優先級。將第一優先級賦予其存儲器組地址和指令的行地址兩者與存儲在寄存器33中的存儲器組地址和行地址兩者的指令歸因于SDRAM21的結構特征。SDRAM21參照輸入的組地址和行地址選擇組,將存儲在所選組的行地址中的所有數據傳輸到緩沖器(存儲器組啟動或存儲器組打開),并參照列地址讀或寫所需地址。因此,如果存儲器組地址和指令的行地址與存儲在寄存器33中的存儲器組地址和行地址相同,則無需關閉當前存儲器組(完成預充電)和重新打開存儲器組。
現在描述根據賦予的優先級對輸出次序的控制。首先輸出保存在存儲元件中的指令中被賦予第一優先級的指令,然后輸出被賦予第二優先級的指令。其余的指令以它們輸入的次序輸出。如果具有相同優先級的指令彼此競爭,則按照與輸入它們的相同次序輸出指令。控制輸出次序的結果發送到多路復用器352和353,它們又根據受控制的輸出次序來輸出存儲在指令存儲隊列31中的指令。
現在根據相同的配置描述發送和執行存取指令的過程。首先,參照圖4,描述判優器3從主器件10-17接收存取指令的過程。判優器3的優先級映射器31通過總線請求接收器300從主器件10-17接收總線請求。接著,根據分配給在總線請求接收器300中設置的相應輸入端口的優先級產生各優先級信號。然后,優先級提取器301對產生的各優先級信號逐位進行OR運算。優先級輸出單元302根據從優先級提取器301輸入的優先級和信號以遞減優先級次序輸出優先級。
同時,標識符提取器303從生成的優先級信號中產生標識符信號,解碼產生的標識符信號,并提取提出總線請求的主器件10-17的標識符。然后,標識符輸出單元304輸出具有從優先級輸出單元302提供的優先級的主器件的標識符。判優電路32將總線賦予輸出的主器件標識符。判優電路32將總線賦予信號發送給具有該輸出標識符的主器件10、11、12、13、14、15、16、或17。已經接收了總線賦予信號的主器件10、11、12、13、14、15、16、或17輸出存取指令,然后判優器3將接收的存取指令發送到執行調度器4。
接著,現在參考圖6描述在執行調度器4中發送存取指令的過程。一旦從預定偽延遲器60、61、62、63、或64接收到執行完成信號,執行調度單元46就檢驗設置在標識符存儲隊列中的每個存儲元件是否是空的,以便檢驗是否存在要執行的存取指令。如果存取指令標識符存儲在標識符存儲隊列460中,則執行調度單元46等待執行準備完成信號從偽延遲器60、61、62、63、或64到達。如果執行準備完成信號從與存儲的存取指令標識符的任何一個相對應的偽延遲器60、61、62、63、或64到達,則由設置在每個存儲元件中的比較器462檢驗存儲在相應存儲元件中的標識符是否與執行準備完成信號從其中到達的偽延遲器60、61、62、63、或64相對應的從器件20、21、22、23或24的標識符相同。如果兩者相同,比較器462將結果發送到標識符存儲隊列控制器461,它使存儲在相應存儲元件中的從器件20、21、22、23或24的標識符從標識符存儲隊列460輸出到解碼器463。解碼器463解碼從標識符存儲隊列460輸出的標識符,然后將執行開始信號發送到相應的指令執行控制器50、51、或52,或指令存儲單元53或54。
接下來,參照圖7描述在指令執行控制器50中發送存取指令的過程。在本實施例中的指令執行控制器50與圖2的從器件20的SDRAM相關。指令執行控制器50以指令輸入到指令存儲隊列31的次序來保持各輸入指令,對于每個存儲元件為一個指令。信息提取器從存儲在每個存儲元件中的命令中提取存儲器組地址和行地址作為存取信息。比較器340將提取的存儲器組地址和行地址與存儲在寄存器33中的存儲器組地址和行地址相比較。作為比較結果,如果存儲器組地址和行地址兩者與存儲在寄存器33中的存儲器組地址和行地址相同,則賦予該指令第一優先級。如果存儲器組地址彼此不同,則賦予該指令第二優先級。
輸出次序控制電路351根據上面賦予的優先級來控制輸出次序。也就是說,首先輸出在存儲在存儲元件中的指令中具有最高優先級的指令。如果指令沒有優先級,則按輸入它們的次序輸出指令。多路復用器60根據由輸出次序控制電路351控制的輸出次序將指令輸出到偽延遲器。
現在詳細描述在輸出次序控制電路351中控制輸出次序的過程。比較器340將組地址與行地址相比較,然后輸出用兩位表示的結果值。如果比較結果相同,則結果值為“0”,如果比較結果不同,則結果值為“1”。行地址和組地址的比較結果分別作為高位和低位輸出。
輸出次序控制電路351從比較器340收集結果值,以便使與較低存儲元件的指令的比較值可以作為相應低位定位,并從較低位開始以兩位為單位搜索所收集的10位的結果值。在這種情況下,首先輸出其中找到“00”的區間的號碼,然后輸出其中找到“01”、“11”的區間的號碼。多路復用器352和353以輸出號碼的次序輸出相應的指令。例如,如果與存儲在元件(0)、(1)、(2)、(3)和(4)中的指令的比較值分別是“10”、“01”、“10”、“00”和“10”,則集中起來的比較結果是“1000100110”。輸出次序控制電路351按每兩位將比較結果“1000100110”劃分成5個區間,并以從LSB開始的次序搜索“00”所在的區間。作為這個搜索的結果,其中找到“00”的區間對應于存儲元件(3)。賦予存儲在存儲元件(3)中的指令第一優先級,因為它具有與當前正在執行的組地址和行地址相同的組地址和行地址。此外,其中找到“01”或“11”的區間對應于存儲元件(1)。賦予存儲在存儲元件(1)中的指令第二優先級,因為它具有與當前正在執行的組地址不同的組地址。結果,指令的輸出次序是存儲元件(3)存儲元件(1)存儲元件(0)存儲元件(2)存儲元件(4)。
同時,現在參考圖8中指令存儲單元54的方塊圖描述在指令存儲單元54中發送存取指令的過程。在指令存儲單元53中的發送過程也是相同的。指令存儲單元54包括用于存儲存取指令的執行指令存儲隊列541和用于控制執行指令存儲隊列541的輸入/輸出的執行指令存儲隊列控制器540。執行指令存儲隊列控制器540存儲從執行調度器4發送的存取指令,并以輸入它們的次序將存取指令輸出到相應的偽延遲器64。
接著,現在參考圖5描述在偽延遲器60中發送存取指令的過程。偽延遲器60包括與從器件20相對應的延遲時鐘周期數存儲在其中的存儲單元611。在經過與存儲在存儲單元611中的延遲時鐘周期數相對應的延遲時鐘周期數之后,偽延遲器60將從指令執行控制器50接收的存取指令發送到相應的從器件20。
從器件20接收存取指令,并準備數據傳輸。當數據傳輸準備已完成時,將數據傳輸指示信號和相應主器件10、11、12、13、14、15、16或17的標識符輸出到執行調度器4,已經接收到數據傳輸指示信號的執行調度器4將數據傳輸指示信號發送到相應的主器件10、11、12、13、14、15、16或17。然后,數據在從器件20與相應主器件10、11、12、13、14、15、16或17之間傳輸。
執行調度器4在真正完成對輸出到相應的從器件20的存取指令的執行(完成數據傳輸)之前作為預定時鐘周期的時刻將偽執行完成信號發送到相應的從器件20。
延遲時鐘周期數是由從器件21、22、或23的等待時間確定的。例如,如果相應的等待時間是5、6、和4個時鐘周期,則延遲時鐘周期數分別是1、0、2個時鐘周期。也就是說,延遲時鐘周期數等于與最長等待時間的差。這樣,偽延遲器60用于使所有從器件20-24的等待時間在6個時鐘周期上相同。在如上所述的例子中,存儲在存儲單元611中的延遲時鐘周期數是1。
同時,如果突發長度是“4”,這意味著連續發送長度為“4”的數據,則偽延遲器60在真正完成數據傳輸之前作為與6個時鐘周期相對應的等待時間的時刻將偽執行完成信號通知給執行調度器4。已經得到偽執行完成通知的執行調度器4將存取指令的執行開始信號發送到另一個偽延遲器61、62、63或64,最后,偽延遲器61、62、63或64盡早開始準備在相應的從器件21、22、23或24中的數據傳輸,從而降低了數據總線的空閑時鐘周期數。
圖9是用于說明根據本發明的數據傳輸的時序圖。參照圖9,將第一指令發送到從器件20,和將第二指令發送到從器件21。偽延遲器60和61在真正完成SDRAM的數據傳輸之前作為與SDRAM控制器等待時間加上SDRAM等待時間相對應的等待時間的時間點上將偽執行完成通知給從器件21。此外,偽延遲器60和61將存取指令發送到相應的從器件20和21,將其延遲所需的延遲時鐘周期數,以便使從器件20和21的等待時間相同。因此,連接“主執行周期1”和“數據傳輸1”的直線的斜率“a”與連接“主執行周期2”和“數據傳輸2”的直線的斜率“b”相同。也就是說,根據本發明,從器件20的數據傳輸(數據傳輸1)和從器件21的數據傳輸(數據傳輸2)是連續進行的,沒有空閑時鐘周期。
同時,無論是只有圖2所示的兩個從器件20和21,還是有三個或更多個從器件,偽延遲器都延遲和發送存取指令,使所有的從器件看起來好像有相同的等待時間。統一等待時間使連接從器件10-17的指令輸出和數據總線上的數據傳輸的直線的斜率相等,從而使數據沒有空閑時鐘周期地連續得到傳輸,提高了整個系統的效率。
由于根據本發明的判優器3將在輸入端口上指定的優先級存儲在相應的寄存器中,因此,可以通過改變存儲在寄存器中的值動態地指定優先級。
此外,盡管針對主器件10-17是8個和優先級為16的情況已經對本發明的此實施例作了描述,但可以對主器件數或優先級數作各種改變。
如上所述,本發明提供了用不使用比較器的簡單結構的電路實現的優先級指定方案的判優器,和采用這種判優器的總線系統。因此,本發明能實現可以不受主器件數限制地設計的系統、用簡單電路結構的高速判優、和可變的優先級指定。
此外,與主器件直接接管對相應的從器件的控制的傳統總線系統不同,該總線系統允許主器件只發送存取指令,從而提供了簡單得多的總線接口結構。
本發明控制指令執行次序,使得首先完成執行準備的從器件可以首先存取數據總線,從而提供了整體數據傳輸速度提高了的總線系統及其存取指令執行調度方法。尤其是,根據本發明,如果從器件連接到以比主數據總線低的速度傳輸數據的本地數據總線,則該從器件可以有效地存取本地數據總線,從而減少了主數據總線的空閑時鐘周期,并提高了整個系統的處理速度。
此外,本發明使從器件的等待時間相等,因此可以減少了由不同等待時間引起的數據總線的空閑時鐘周期,并防止數據總線上數據的沖突。尤其是,如果從器件是諸如SDRAM之類支持流水線(pipeline)傳輸和進行頻繁突發發送的存儲器,空閑時鐘周期數可以得到顯著減少,從而提高了總線系統的效率。并且,甚至在不支持流水線傳輸的ROM的情況下,根據本發明的偽延遲器也允許數據傳輸類似于流水線傳輸。也就是說,可以通過通知偽執行完成,在數據傳輸實際沒有完成的時刻執行另一個從器件。
權利要求
1.一種包括多個主器件和多個從器件的總線系統,其中至少一個從器件存在等待時間,該總線系統包括判優器,用于接收從多個主器件輸出的存取指令,并以根據預定判優算法的次序輸出存取指令;執行調度器,用于從所述判優器接收存取指令,并以相應的從器件完成執行準備的次序來輸出存取指令;分別與至少一個從器件相對應提供的多個指令執行控制器,每個所述指令執行控制器存儲兩個或更多個從所述執行調度器輸入的存取指令,從存儲的存取指令中提取執行所需的存取信息,根據將所提取的存取信息與有關當前正被執行的指令的存取信息相比較的結果來控制存取指令的輸出次序,以便使所存儲指令的總執行時間短于根據輸入各指令的次序的總執行時間;和分別與至少一個從器件相對應提供的多個偽延遲器,每個所述偽延遲器延遲從所述指令執行控制器接收的存取指令并將其輸出到相應的從器件,以便使相應的從器件的等待時間可以等于多個從器件中最長的等待時間。
2.如權利要求1所述的總線系統,其中所述判優器包括總線請求接收器,與數個主器件相連接,用于從主器件接收總線請求輸入;優先級提取器,用于如果通過所述總線請求接收器輸入總線請求則輸出表示與主器件相對應的預定優先級的優先級信號,并根據輸出的優先級信號產生表示各總線請求的所有優先級的優先級和信號;優先級輸出單元,用于根據所述優先級提取器產生的優先級和信號以優先級遞降的次序輸出優先級;包括標識符輸出單元的優先級映射器,所述標識符輸出單元根據優先級信號輸出提出總線請求的主器件的標識符;和判優電路,用于將總線存取賦予具有從所述優先級映射器輸出的標識符的主器件,以便使賦予總線存取的主器件輸出存取指令。
3.如權利要求2所述的總線系統,其中所述總線請求接收器包括多個與該多個主器件相連接的輸入端口,用于從主器件接收總線請求輸入;和多個配置在輸入端口中的寄存器,用于存儲在輸入端口上指定的優先級。
4.如權利要求3所述的總線系統,其中利用與優先級相同的位數表示優先級信號。
5.如權利要求4所述的總線系統,其中所述優先級輸出單元對一個或多個優先級信號逐位進行OR(或)運算,并產生以與優先級信號相同的位數表示的優先級和信號。
6.如權利要求2所述的總線系統,其中所述主器件標識符輸出單元包括標識符提取器,用于通過提取包括位的位列來產生標識符信號,所述位表示向由優先級信號構成的矩陣所請求的優先級,并根據產生的標識符信號提取相應的主器件標識符;和標識符輸出單元,用于輸出在由標識符提取器所提取的標識符中具有從所述優先級輸出單元輸出的優先級的主器件的標識符。
7.如權利要求6所述的總線系統,其中所述標識符提取器包括解碼器,用于接收輸入標識符信號,并提取相應的主器件標識符。
8.如權利要求1所述的總線系統,其中所述執行調度器包括存取指令分配器,用于接收從所述判優器輸出的存取指令,并向相應的指令執行控制器發送存取指令;和執行調度單元,用于將發送的存取指令的執行開始信號發向所述指令執行控制器,所述指令執行控制器與已經從所述存取指令分配器接收了存取指令的所述偽延遲器中已經接收了執行準備完成信號的一個偽延遲器相對應。
9.如權利要求8所述的總線系統,其中所述執行調度單元包括標識符存儲隊列,含有一個或多個存儲元件作為標識符存儲單元,用于存儲通過所述存取指令分配器接收存取指令的相應從器件的標識符;和標識符存儲隊列控制器,用于控制標識符存儲隊列;比較器,所述比較器的每一個是與每個存儲元件相對應地配置的,用于確定存儲在存儲元件中的標識符是否與發送執行準備完成信號的從器件的標識符相同;和解碼器,用于如果由所述比較器確定兩個標識符是相同的,則向已經接收了執行準備完成信號的所述偽延遲器發送執行開始信號。
10.如權利要求9所述的總線系統,其中所述存取指令分配器包括指令存儲隊列,用于存儲從判優器接收的存取指令;和指令存儲隊列控制器,用于控制指令存儲隊列。
11.如權利要求8所述的總線系統,其中每個所述指令執行控制器包括指令保持器,用于存儲兩個或多個從所述存取指令分配器接收的存取指令;存取信息提取器,用于從存儲在指令存儲單元中的存取指令提取用于執行的存取指令;執行存取信息存儲單元,用于存儲有關當前正由從器件執行的存取指令的存取信息;比較單元,用于將由所述存取信息提取器提取的存取信息與存儲在所述執行存取信息存儲單元中的存取信息相比較;和輸出次序控制器,用于根據來自所述比較單元的比較結果控制存儲在所述指令保持器中的存取指令的輸出次序,以便所存儲指令的總執行時間短于按照存儲指令的次序的總執行時間,并按照被控制的輸出次序將存取指令輸出到所述偽延遲器。
12.如權利要求11所述的總線系統,其中所述指令保持器包括指令存儲隊列,含有多個存儲元件,用于存儲存取指令,其中所述存取信息提取器包括多個信息提取器,用于提取存取信息,所述信息提取器的每一個是與每個存儲元件相對應地配置的,其中所述執行存取信息存儲單元包括寄存器,用于存儲有關當前被執行的存取指令的存取信息,其中所述比較單元包括多個比較器,用于將所述存取信息提取器提取的存取信息與存儲在所述寄存器中的存取信息相比較,所述比較器的每一個是與每個所述存取信息提取器相對應地配置的,和其中所述輸出次序控制器包括輸出次序控制電路,用于根據由來自比較器的比較結果賦予的優先級來控制輸出次序;和多路復用器,用于按照來自所述輸出次序控制電路的輸出次序來輸出存儲在所述指令存儲單元中的存取指令。
13.如權利要求12所述的總線系統,其中所述存取信息包括組地址和行地址,和其中所述比較單元將每個所述信息提取器提取的組地址和行地址與存儲在所述寄存器中的組地址和行地址相比較。
14.如權利要求13所述的總線系統,其中所述輸出次序控制電路向作為比較結果其組地址和行地址與存儲在所述寄存器中的組地址和行地址相同的存取指令賦予第一優先級。
15.如權利要求14所述的總線系統,其中所述輸出次序控制電路向作為比較結果其組地址和行地址與存儲在所述寄存器中的組地址和行地址不同的存取指令賦予第二優先級。
16.如權利要求11所述的總線系統,其中存取信息還包括突發長度,所述突發長度的含義是突發發送數據的位長度。
17.如權利要求1所述的總線系統,其中每個所述偽延遲器包括存儲單元,用于存儲與最長等待時間與每個從器件的等待時間之間的差值相對應的延遲時鐘周期數,從相應指令執行控制器接收存取指令,并在經過了與存儲在所述存儲單元中的數目相對應的延遲時鐘周期數之后將存取指令發送到相應的從器件。
18.一種包括多個主器件和數個從器件的總線系統,其中至少一個從器件存在等待時間,該總線系統包括判優器,用于接收從多個主器件輸出的存取指令,并以根據預定判優算法的次序輸出存取指令;執行調度器,用于從所述判優器接收存取指令,并以相應的從器件完成執行準備的次序來輸出存取指令;多個與該多個從器件相對應提供的指令存儲單元,每個所述指令存儲單元存儲一個或多個從執行調度器接收的存取指令,并以輸入指令的次序輸出存取指令;和多個分別與至少一個從器件相對應提供的偽延遲器,每個所述偽延遲器延遲從所述指令存儲單元接收的存取指令并將其輸出到相應的從器件,以便使相應的從器件的等待時間可以等于該多個從器件中最長的等待時間。
19.如權利要求18所述的總線系統,其中判優器包括總線請求接收器,與多個主器件相連接,用于從主器件接收總線請求輸入;優先級提取器,用于如果通過所述總線請求接收器輸入總線請求,則輸出表示與主器件相對應的預定優先級的優先級信號,并根據輸出的優先級信號產生表示各總線請求的所有優先級的優先級和信號;優先級輸出單元,用于根據所述優先級提取器產生的優先級和信號以優先級遞降的次序輸出優先級;包括標識符輸出單元的優先級映射器,所述標識符輸出單元根據優先級信號來輸出提出總線請求的主器件的標識符;和判優電路,用于將總線存取賦予具有從所述優先級映射器輸出的標識符的主器件,以便使賦予總線存取的主器件輸出存取指令。
20.如權利要求18所述的總線系統,其中所述總線請求接收器包括多個與該多個主器件相連接的輸入端口,用于從主器件接收總線請求輸入;和多個配置在輸入端口中的寄存器,用于存儲在輸入端口指定的優先級。
21.如權利要求20所述的總線系統,其中優先級信號用與優先級相同的位數表示。
22.如權利要求21所述的總線系統,其中所述優先級輸出單元對一個或多個優先級信號逐位進行OR(或)運算,并產生以與優先級信號相同位數表示的優先級和信號。
23.如權利要求19所述的總線系統,其中所述主器件標識符輸出單元包括標識符提取器,用于通過提取包括位的位列來產生標識符信號,所述位表示由優先級信號構成的矩陣所請求的優先級,并根據產生的標識符信號提取相應的主器件標識符;和標識符輸出單元,用于輸出在由所述標識符提取器的所提取的標識符中具有從所述優先級輸出單元輸出的優先級的主器件的標識符。
24.如權利要求23所述的總線系統,其中所述標識符提取器包括解碼器,用于接收輸入標識符信號,并提取相應的主器件標識符。
25.如權利要求24所述的總線系統,其中所述執行調度器包括存取指令分配器,用于接收從所述判優器輸出的存取指令,并向相應的指令存儲單元發送存取指令;和執行調度單元,用于將發送的存取指令的執行開始信號發給所述指令存儲單元,所述指令存儲單元與已經從所述存取指令分配器接收了存取指令的所述偽延遲器中已經接收了執行準備完成信號的一個偽延遲器相對應。
26.如權利要求25所述的總線系統,其中所述執行調度單元包括標識符存儲隊列,含有一個或多個存儲元件作為標識符存儲單元,用于存儲通過所述存取指令分配器接收存取指令的相應從器件的標識符;和標識符存儲隊列控制器,用于控制標識符存儲隊列;比較器,所述比較器的每一個是與每個存儲元件相對應配置的,用于確定存儲在存儲元件中的標識符是否與發送執行準備完成信號的從器件的標識符相同;和解碼器,用于如果由所述比較器確定兩個標識符是相同的,則向已經接收了執行準備完成信號的所述偽延遲器發送執行開始信號。
27.如權利要求26所述的總線系統,其中所述存取指令分配器包括指令存儲隊列,用于存儲從所述判優器接收的存取指令;和指令存儲隊列控制器,用于所述控制指令存儲隊列。
28.如權利要求18所述的總線系統,其中每個所述指令存儲單元包括執行指令存儲隊列,用于存儲存取指令;和執行指令存儲隊列控制器,用于控制所述執行指令存儲隊列。
29.如權利要求18所述的總線系統,其中每個所述偽延遲器包括存儲單元,用于存儲與最長等待時間與每個從器件的等待時間之間的差值相對應的延遲時鐘周期數,從相應指令存儲單元接收存取指令,并在經過了與存儲在存儲單元中的數目相對應的延遲時鐘周期數之后將存取指令發送到相應的從器件。
全文摘要
一種總線系統,包括:判優器,接收從多個主器件輸出的存取指令,并輸出判優的存取指令;執行調度器,接收從判優器輸出的存取指令,并以相應從器件執行準備完成的次序來輸出存取指令;與至少一從器件相對應提供的多個指令執行控制器,控制存取指令的輸出次序,以便存儲指令的總執行時間短于按照輸入指令的次序的總執行時間;和多個偽延遲器,延遲從指令執行控制器接收的存取指令并輸出到相應的從器件,使相應從器件的等待時間可等于多個從器件中最長的等待時間。提高整個系統效率。
文檔編號G06F13/362GK1337628SQ0110830
公開日2002年2月27日 申請日期2001年2月27日 優先權日2000年8月11日
發明者金鎮守 申請人:三星電子株式會社