存儲控制裝置以及大規模集成電路的製作方法
2023-09-10 03:17:20 1
專利名稱:存儲控制裝置以及大規模集成電路的製作方法
技術領域:
本發明涉及一種用於控制存儲存取的存儲控制裝置,具體地說,涉及一種用於控制從LSI中的多個電路對連接到該LSI的外部存儲器的存取的、安裝在該LSI(大規模集成電路)中的存儲控制裝置。
相關的
背景技術:
近年來,多媒體信息日益普及。在這種背景以及其它因素的情況下,包含一個或多個DSP(數位訊號處理器)和MPU(微處理器)的LSI不斷發展。
此外,複雜的高性能LSI也不斷地發展,其中,除MPU外,這種LSI還包括獨立的電路,諸如AV(視聽)解碼器和硬碟控制器。
包含在這種複雜的LSI中的電路是獨立的電路,它們能夠執行算術運算及其它操作,以便採用獨立的本機存儲器來執行其相應的功能。這裡,通過構造LSI使所述電路共享相同的存儲器以便執行算術運算及其它操作,來執行其相應的功能,從而實現組件成本的降低及其它作用。
要滿足這一目的,就需要在LSI中提供存儲控制裝置,以便仲裁對電路間共享存儲器進行存取的爭用。
存儲控制裝置對來自諸如DSP和MPU的多個電路(以下稱作「總線主控器」)的存取請求進行仲裁,即對存儲器總線的使用的總線請求,以便一次只允許一個總線主控器來存取共享的存儲器。也就是說,存儲控制裝置一次只準許一個總線主控器有權使用存儲器總線。
另一方面,當需要存取存儲器時,每個總線主控器均向存儲控制裝置發出總線請求,並在獲準總線使用權時向存儲器或從存儲器進行數據傳輸。
當有數據要連續處理,以便例如實時地重放圖像和/或聲音時,要求某些總線主控器以固定的傳輸速率來傳輸數據。
這種要求以固定傳輸速率來傳輸數據的總線主控器對要保持傳輸速率的時間間隔具有固有的請求。時間間隔根據所包含的輸入/輸出緩衝器的大小、所用數據處理的類型以及其它因素來確定。例如,對於某些總線主控器,要求其每2ms(毫秒)保持500Kb/ms(每毫秒千比特)的傳輸速率。對於另外一些總線主控器,要求其每1ms保持500Kb/ms的傳輸速率,這為保證傳輸速率提供較短的時間餘量。
只要以獨佔方式使用存儲器,總線主控器主要以應保持傳輸速率的時間間隔來反覆發出總線請求。在下文中,這種應保持傳輸速率的時間間隔稱作總線請求周期。
為了設計包括多個要求以固定傳輸速率來進行數據傳輸的總線主控器以及存儲控制裝置的LSI,由於每個總線主控器所要求的傳輸速率和總線請求周期,需要在存儲控制裝置中構建仲裁機制。
通過適當的仲裁,每個總線主控器均被允許以所請求的傳輸速率來傳輸數據。然而,在不適當的仲裁情況下,可能會出現問題,也就是一個或多個總線主控器不能在其總線請求周期內以所請求的傳輸速率來傳輸數據。
傳統的存儲控制裝置通常包括採用優先級方案的仲裁機制,其中優先級是根據先來先服務的原則給出的,或者根據各總線主控器所指配的優先級來對其進行仲裁。
下面將說明與這種傳統存儲控制裝置有關的問題。
這裡考慮這樣一種情況存儲器總線的帶寬約為800KB/ms,並且LSI包括兩個總線主控器A和B。當有數據要連續處理時,要求總線A在2ms的總線請求周期中傳輸1000KB的數據,同時要求總線B在1ms的總線請求周期中傳輸100KB的數據,與總線主控器A的總線請求周期相比,這僅允許一半的時間餘量。此外,假定採用先來先服務的優先級方案,並且總線主控器A先發出總線請求。另一方面,假定根據優先級來執行仲裁,並且總線主控器A具有較高的優先級。
在這兩種情況下,當總線主控器A向傳統的存儲控制裝置發出總線請求時,存儲控制裝置將總線使用權給予總線主控器A,以允許數據傳輸。在響應中,總線主控器A傳輸1000KB的數據,這需要用1ms或更長的時間。結果,存儲控制裝置無法對總線主控器B每1ms所發出的總線請求立即作出響應。
在這種情況下,總線主控器B必須忍受大於1ms的等待時間才能存取存儲器。因此,總線主控器B無法在每個1ms的周期內向存儲器或從存儲器均勻地傳輸100KB的數據,這引起不一致的數據傳輸。換句話說,在每個總線請求周期內,無法保持總線主控器B所要求的傳輸速率。
如上所述,從長期地看,具有根據先來先服務原則或根據指配優先級的仲裁機制的傳統存儲控制裝置可設法保證每個總線主控器所要求的傳輸速率。但是短期地看,這樣的傳統存儲控制裝置不能保證傳輸速率,這是一個問題。
為了解決上述問題,需要設計一種存儲控制裝置,預先考慮到每個總線主控器要求的傳輸速率以及需要保證該傳輸速率的時間間隔。
但是,根據LSI所在裝置的不同,要求每個總線主控執行的處理也不同。因此,每個總線主控器所要求的傳輸速率和總線請求周期也不同。在這些情況下,很難設計一種存儲控制裝置,其中預先考慮了將要求各總線主控器執行的特定處理。
另外,LSI逐年得到改進。考慮到將來在LSI中加入新電路的發展所引起的成本下降,就需要開發和設計通用的存儲控制裝置,它能夠保證加入到LSI中的任何電路的數據傳輸速率。這樣的通用存儲控制裝置將實現設計資源的長期使用。
發明概述本發明是在考慮了上述這種需求的情況下作出的,目的是提供一種通用的存儲控制裝置,這種存儲控制裝置對存儲器存取的爭用進行仲裁,同時在各總線主控器所要求的時限(time period)中保證各總線主控器所要求的傳輸速率。本發明的目的還在於提供包含這樣的存儲控制裝置和總線主控器的LSI。
要實現上述目的,通過有選擇地將允許使用存儲器總線的總線使用權一次給予多個總線主控器的其中一個總線主控器,本發明的存儲控制裝置用來對共享存儲器的多個總線主控器之間的存儲器存取的爭用進行仲裁,所述存儲控制裝置包括保持單元,用於保持與多個總線主控器的其中每一個有關的傳輸速率信息,該傳輸速率信息表示(i)相應的總線主控器向存儲器或從存儲器進行數據傳輸的傳輸速率以及(ii)保證時限,在此時限內保證以所述傳輸速率進行的數據傳輸;參考期(reference period)計算單元,用於確定作為參考時限的時限,該時限等於或小於所有保證時限中的最小保證時限;總線使用許可時限計算單元,用於計算總線使用許可時限,每個總線使用許可時限都是總線主控器獲得用來利用存儲器總線的總線帶寬傳輸數據量V的時限,其中V表示相應的總線主控器在參考時限內能以相應傳輸速率傳輸的數據量;以及使用權給予單元,用於在周期性重複的各參考時限內把總線使用權給予各總線主控器長達相應的總線使用許可時限之久。另一方面,通過有選擇地把允許使用存儲器總線的總線使用權一次給予多個總線主控器的其中一個總線主控器,本發明的存儲控制裝置用來對存取存儲器中不同存儲區的多個總線主控器之間的存儲器存取的爭用進行仲裁,所述存儲控制裝置包括保持單元,用於保持與多個總線主控器的其中每一個有關的傳輸速率信息,該傳輸速率信息表示(i)相應的總線主控器向存儲器或從存儲器進行數據傳輸的傳輸速率以及(ii)保證時限,在此時限內保證以所述傳輸速率進行的數據傳輸;參考期計算單元,用於確定作為參考時限的時限,該時限等於或小於所有保證時限中的最小保證時限;總線使用許可時限計算單元,用於計算總線使用許可時限,每個總線使用許可時限都是總線主控器獲得用來利用存儲器總線的總線帶寬傳輸數據量V的時限,其中V表示相應的總線主控器在參考時限內能以相應的傳輸速率傳輸的數據量;以及使用權給予單元,用於在周期性重複的各參考時限內把總線使用權給予各總線主控器長達相應的總線使用許可時限之久。
採用這些構造,即使對於各總線主控器沒有有關所需傳輸速率的一致條件,也以某種方式來調整傳輸速率,以滿足允許與具有最小時間餘量的總線主控器相關的傳輸速率條件長達傳輸等待時間之久。結果,允許各總線主控器在所需時間餘量內保持以所需傳輸速率來執行數據傳輸。
此外,採用這種存儲控制裝置,即使與各總線主控器的傳輸速率有關的條件需要改變時,所需要的只是更新儲存的傳輸速率信息,然後,各總線主控器再以新要求的傳輸速率向存儲器或從存儲器進行數據傳輸。這就是說,存儲控制裝置是可使用的,而不管可能進行的總線更換,這是存儲器存取爭用控制的主題。
這裡,存儲控制裝置可以包括檢測單元,用於檢測來自各總線主控器的總線請求,其中,對於總線請求在當前參考時限開始之前已經被檢測單元檢測到的各總線主控器,使用權給予單元把當前參考時限的總線使用權給予所述各總線主控器。
採用這種構造,允許把總線使用權給予共享存儲器的各總線主控器,因而,所述總線主控器通過在需要傳輸數據時發出總線請求,以所需的傳輸速率來執行數據傳輸。注意,構成該存儲控制裝置的電路與構成採用某種方案來檢測總線請求並在檢測到總線主控器發出的總線請求時在相同的參考間隔內給予總線使用權的存儲控制裝置的電路相比,其結構可以被簡化。
此外,總線主控器可以被分為(i)規則類型總線主控器和(ii)不規則類型總線主控器,要求各規則類型總線主控器以固定的傳輸速率向存儲器或從存儲器進行數據傳輸,不規則類型總線主控器是除規則類型總線主控器以外的總線主控器,保持單元可以保持與各規則類型總線主控器有關的傳輸速率信息,總線使用許可時限計算單元可以計算各規則類型總線主控器的總線使用許可時限,以及使用權給予單元可以將各參考時限的總線使用權給予(i)在當前參考時限開始之前總線請求已被檢測到的各規則類型總線主控器,給予總線使用權長達相應的總線使用許可時限之久;以及(ii)各不規則類型總線主控器,給予總線使用權最大長達從參考時限中減去對總線請求已被檢測到的各規則類型總線主控器所計算的總線使用許可時限總量之後所剩餘的時限之久。
採用這種構造,即使在有(1)要求以固定傳輸速率傳輸數據的規則類型總線主控器和(2)除共享存儲器的規則類型以外的不規則類型總線主控器這兩種類型的總線主控器的情況下,規則類型總線主控器也被允許以所需的時間間隔按所需的傳輸速率執行數據傳輸。
此外,在將總線使用權給予規則類型總線主控器的時間內,當檢測單元檢測到來自不規則類型總線主控器的總線請求時,使用權給予單元可以在結束給予規則類型總線主控器的總線使用權之後立即將各參考時限的總線使用權給予不規則類型總線主控器。
採用這種構造,允許不規則類型總線主控器在出現數據傳輸的需要之後立即執行數據傳輸。
另外,保持單元可以從存儲控制裝置外部的源獲取傳輸速率信息,並保存所獲取的傳輸速率信息。
採用這種構造,即使在傳輸速率由於例如各總線主控器功能改變而需要改變的情況下,從外部源提供適當的傳輸速率信息。結果,總線主控器之間存儲器存取的爭用被適當地仲裁。
另外,保持單元可以將存儲控制裝置內的傳輸速率信息保存在可由外部裝置重寫的存儲區中。
採用這種構造,即使在各總線主控器的傳輸速率或其它條件需要改變的情況下,必要時從外部源重新寫入傳輸速率信息。結果,總線主控器之間存儲器存取的爭用被適當地仲裁。
此外,存儲控制裝置可以通過用於給予總線使用權的信號線而連接到各總線主控器,並且使用權給予單元可以將總線使用權給予各總線主控器,其方式是通過使連接到總線主控器的信號線進入有效狀態長達相應的總線使用許可時限之久。
採用這種構造,利用單信號線來給予總線使用權長達限定時限之久。
另外,參考時限計算單元可以確定所有保證時限中的最小保證時限,作為參考時限。
採用這種構造,具有傳輸等待時間所允許的最小時間餘量的總線主控器被用作參考,使各總線主控器所要求的傳輸速率比較易於調整。
此外,符合本發明的LSI包括(i)共享存儲器的多個電路和(ii)存儲控制裝置,所述存儲控制裝置用於通過有選擇地把允許使用存儲器總線的總線使用權一次給予多個電路的其中一個電路,對存儲器存取的爭用進行仲裁,要求各電路以固定傳輸速率向存儲器或從存儲器進行數據傳輸,並且所述存儲控制裝置包括保持單元,用於保持與多個電路的其中每一個有關的傳輸速率信息,該傳輸速率信息表示(i)相應的電路向存儲器或從存儲器進行數據傳輸的傳輸速率以及(ii)保證時限,在此時限內保證以所述傳輸速率進行的數據傳輸;參考期計算單元,用於確定作為參考時限的時限,該時限等於或小於所有保證時限中的最小保證時限;總線使用許可時限計算單元,用於計算總線使用許可時限,每個總線使用許可時限都是電路獲得用來利用存儲器總線的總線帶寬傳輸數據量V的時限,其中V表示相應的電路在參考時限內能以相應傳輸速率傳輸的數據量;以及使用權給予單元,用於在周期性重複的各參考時限內把總線使用權給予各電路長達相應的總線使用許可時限之久。
採用這種構造,允許包含在LSI中的多個內部電路在所要求的時間餘量內保持以所需傳輸速率向彼此共享的存儲器或從該存儲器進行數據傳輸。
附圖簡述從以下結合說明本發明特定實施例的附圖所進行的說明中,本發明的這些目的及其它目的、優點及特點將變得明顯。
附圖中
圖1是包括符合本發明實施例1的存儲控制裝置的LSI 100的方框圖;圖2的視圖示出從外部裝置提供的、儲存在傳輸速率信息存儲單元111中的傳輸速率信息的數據結構及內容示例;圖3的視圖示出由定時信息發生器單元112生成的、儲存在定時信息存儲單元113中的定時信息的數據結構及內容示例;圖4是流程圖,說明定時信息發生器單元112的操作;圖5是流程圖,說明仲裁器單元114執行的仲裁處理;圖6是時間圖,說明總線主控器A至C所發出的總線請求以及由存儲控制單元110給予的總線使用權隨時間的變化;圖7的視圖示出包括符合本發明實施例2的存儲控制裝置的LSI500的構造;圖8的流程圖示出仲裁器單元514執行的仲裁處理;圖9是時間圖,說明來自總線主控器A至D的總線請求以及由存儲控制單元510給予的總線使用權隨時間的變化;
圖10是流程圖,說明仲裁器單元514執行的仲裁處理的修改示例;以及圖11是時間圖,說明在仲裁器單元514執行修改的仲裁處理的條件下,總線主控器A至D發出的總線請求以及由存儲控制單元510給予的總線使用權隨時間的變化。
最佳實施例說明下面將對包括多個總線主控器和符合本發明最佳實施例的存儲控制裝置的LSI進行說明。
實施例1
構造
圖1的視圖示出包括符合本發明實施例1的存儲控制裝置的LSI100的構造。注意,在圖1中,除LSI 100外,還示出了統一存儲器(unified memory)200。
LSI 100是要結合到家用信息裝置或其它裝置中的LSI,它包括存儲控制單元110、總線主控器A 121、總線主控器B 122、總線主控器C 123和時鐘發生器190。LSI 100被連接到統一存儲器200以及其它外部裝置,圖1中未示出這樣的外部裝置。
這裡,時鐘發生器190是向存儲控制單元110、總線主控器A至C和統一存儲器200提供時鐘信號的電路。
例如,總線主控器A 121、B 122以及C 123是採用統一存儲器200作為主存儲器的MPU或用於將諸如圖像數據的數據儲存在統一存儲器200中的DSP,並且獨立地存取統一存儲器200來進行數據傳輸。也就是說,當需要進行數據傳輸時,總線主控器A至C的其中每一個通過相應的REQ信號線向存儲控制單元110單獨發出總線請求,並通過相應的GNT信號線從存儲控制單元110獲取總線使用權。在給予總線使用權的一段時間內,根據由來自時鐘發生器190的時鐘信號所提供的定時,總線主控器與包含在存儲控制單元110中的仲裁器單元114同步進行數據傳輸。
在圖1中,來自總線主控器的總線請求分別表示為REQ-A、REQ-B及REQ-C,而對總線主控器的總線使用權的給予則分別表示為GNT-A、GNT-B及GNT-C。
注意,通過以下步驟(1)存儲器尋址和(2)向統一存儲器寫入數據或從統一存儲器中讀取數據來進行數據傳輸,從而使地址和數據均通過存儲器總線進行傳輸。各總線主控器向統一存儲器200或從統一存儲器200傳輸的數據可以是圖像數據,該圖像數據是總線主控器根據從外部裝置輸入的數據所生成的並將輸出給顯示裝置的。
各總線主控獨立地進行數據傳輸,並被要求以固定的傳輸速率向統一存儲器或從統一存儲器傳輸數據,例如使圖像無中斷地輸出給顯示裝置。可是應該指出,總線主控器可能不總是連續向統一存儲器或從統一存儲器進行數據傳輸。例如,在外部裝置連續向總線主控器輸入數據以及要發送的數據因此被產生並積累在總線主控器期間,總線主控器向統一存儲器連續進行數據傳輸。另一方面,在沒有積累要傳輸的數據期間,總線主控器不向統一存儲器進行數據傳輸。
此外,根據外部裝置提供的傳輸速率信息,存儲控制單元110對總線主控器向統一存儲器200進行的存取進行仲裁,存儲控制單元110還包括傳輸速率信息存儲單元111、定時信息發生器單元112、定時信息存儲單元113及仲裁器單元114。
在這裡,傳輸速率信息存儲單元111是用於儲存從外部裝置提供的傳輸速率信息的存儲區。注意,稍後將詳細描述傳輸速率信息。
定時信息發生器單元112具有以下功能生成與儲存在傳輸速率信息存儲單元111中的傳輸速率信息有關的定時信息,並將這樣生成的定時信息儲存在定時信息存儲單元113中。注意,稍後將詳細描述定時信息。
定時信息存儲單元113是用於儲存定時信息的存儲區。
仲裁器單元114具有以下功能參考儲存在定時信息存儲單元113中的定時信息;在由來自時鐘發生器190的時鐘信號所提供的預定定時,檢查是否存在任何總線主控器發出的總線請求;以及順序地並有選擇地將總線使用權給予發出總線請求的總線主控器。各總線主控器通過使REQ信號線進入有效狀態來向仲裁器單元114發出總線請求,仲裁器單元114則把總線使用權給予總線主控器的其中之一,其方式是使相應的GNT信號線進入有效狀態。注意,在需要進行數據傳輸時,各總線主控器將REQ信號線保持在有效狀態。
數據
圖2的視圖示出從外部裝置提供的、然後再儲存在傳輸速率信息存儲單元111中的傳輸速率信息的數據結構及內容示例。
如圖所示,傳輸速率信息300是由若干對信息項組成的信息,所述信息項是與各總線主控器A至C有關的請求周期302和每次傳輸的數據量303。在LSI中的各總線主控器開始進行處理之前設置傳輸速率信息,其中所述處理包括對統一存儲器200的存取,以及隨之發生的由例如外部裝置進行的數據傳輸,這種外部裝置布置在LSI的外部,具有存儲器和CPU,並對LSI 100進行控制。
在這裡,請求周期302是當有要連續處理的數據時保持各總線主控器所要求的傳輸速率的時間間隔。注意,當有要連續處理的數據時,各總線主控器基本上以相應的請求周期302或以更短的周期發出總線請求。
此外,每次傳輸的數據量303是各總線主控器在相應的請求周期302內需要傳輸的數據量。
圖中所示的實施例表明,當有要連續傳輸的數據時,總線主控器A需要在每2000μs傳輸1000KB的數據,總線主控B需要在每1000μs傳輸100KB的數據,總線主控器C需要在每4000μs傳輸400KB的數據。
換句話說,圖中的傳輸速率信息300表明了以下情況。要求總線主控器A在2000μs的時限內以500KB/ms的傳輸速率進行數據傳輸,要求總線B在1000μs的時限內以100KB/ms的傳輸速率進行數據傳輸,以及要求總線主控器C在4000μs的時限內以100KB/ms的傳輸速率進行數據傳輸。關於總線主控器A至C,總線主控器B具有保證傳輸速率所允許的最小時間餘量,而總線主控器C則具有保證傳輸速率所允許的最大時間餘量。
注意,包含CPU等的外部裝置可以向存儲控制單元110輸入傳輸速率信息300,由各總線主控器的規格來決定。同樣地,存儲控制單元110的構造允許外部輸入傳輸速率信息300,該傳輸速率信息確定要執行什麼控制。這種構造為存儲控制單元110提供了通用性。
圖3的視圖示出由定時信息發生器單元112所產生的、儲存在定時信息存儲單元113中的定時信息的數據結構及內容示例。
如圖所示,定時信息400包括每個總線主控器的請求檢測周期401和周期內總線使用許可時限(in-cycle bus use permission timeperiod)402。
在這裡,請求檢測周期401是表示某個時限的信息,該時限是定時信息發生器單元112確定為仲裁器單元114檢測來自總線主控器A至C的總線請求的間隔。
另外,周期內總線使用許可時限402是表示某個時限的信息,在該時限期間,各總線主控器可以使用存儲器總線,以便在請求檢測周期401內,也就是在給予總線使用權的時限內,進行所要求的數據傳輸。注意,本實施例中的統一存儲器200具有帶寬為800KB/ms的存儲器總線。
注意,定時信息中的各時限實際上例如由時鐘發生器190產生的時鐘信號的計數來表示。
操作
下面對具有上述構造的存儲控制單元110的操作進行說明。
在傳輸速率信息存儲單元111儲存從外部裝置所提供的傳輸速率信息的情況下,定時信息發生器單元112執行如圖4所示的操作。
圖4是流程圖,說明定時信息發生器單元112的操作。
參照傳輸速率信息表示的各總線主控器的請求周期,定時信息發生器單元112將最小的請求周期確定為要包含在定時信息中的請求檢測周期(步驟S11)。
然後,利用在步驟S11中所確定的傳輸速率信息和請求檢測周期,關於各總線主控器,定時信息發生器單元112獲取各總線主控器在各請求檢測周期內傳輸的數據傳輸量(步驟S12)。定時信息發生器單元112則將這樣獲取的數據傳輸量除以存儲器總線的總線帶寬,關於各個總線主控器,由此得到的要包含在定時信息中的周期內總線使用許可時限(步驟S13)。注意,定時信息發生器單元112將有關存儲器總線帶寬的數據儲存在例如LSI的內部存儲器中,並利用所儲存的帶寬數據來執行步驟S13中的運算操作。
定時信息發生器單元112把通過上述方法得到的定時信息儲存在定時信息存儲單元113中。假定定時信息發生器單元112的這種操作是在開始向LSI提供電流之後的相對短時限內執行的。
注意,例如當定時信息發生器單元112根據圖2中示例所示的傳輸速率信息產生定時信息時,所產生的定時信息如圖3所示。
接下來,將對仲裁器單元114在已經產生定時信息之後所執行的仲裁處理進行描述。
圖5是流程圖,說明仲裁器單元114所執行的仲裁處理。
參照定時信息以及由時鐘發生器190以固定時間間隔提供的時鐘信號,仲裁器單元114等待每個請求檢測周期來到的定時(下文中,該定時稱作「請求檢測定時」)。當請求檢測定時來到時,仲裁器單元114檢查是否存在從任何一個總線主控器發出的總線請求(步驟S21)。
仲裁器單元114判斷來自任何一個總線主控器的總線請求是否已在步驟S21中的檢查時間檢測到(步驟S22)。當沒有檢測到來自任何一個總線主控器的總線請求時,仲裁器單元114返回到步驟S21,並等待下一個請求檢測定時到來。
當步驟S22中的判斷結果為已檢測到總線請求時,仲裁器單元114把總線使用權給予發出總線請求的一個總線主控器(步驟S23)。
在將總線使用權給予總線主控器之後,仲裁器單元114對時鐘信號進行計數,以便在對應於該總線主控器的周期內總線使用許可時限到期時結束所給予的總線使用權(步驟S24)。也就是,在步驟S23和S24,在相應的周期內總線使用許可時限期間,總線主控器其中之一的GNT信號線進入有效狀態,然後再回到無效狀態。
接著步驟S24,仲裁器單元114判斷是否在最近執行的步驟S21中檢測到另一個來自除給予總線使用權的總線主控器之外的總線主控器的總線請求(步驟25)。當沒有檢測到這樣的請求時,仲裁器單元114返回到步驟S21,並等待下一個請求檢測定時到來。
步驟S25中的判斷結果為檢測到另一個來自除已給予總線使用權的總線主控器之外的總線主控器的總線請求,仲裁器單元114回到步驟S23的處理。
從而,當時間推移表示為一系列請求檢測周期時,在各請求檢測周期內,仲裁器單元114把總線使用權給予在當前請求檢測周期之前發出了總線請求的各總線主控器長達相應的周期內總線使用許可時限之久。
圖6是時間圖,說明總線主控器A至C所發出的總線請求以及由存儲控制單元110所給予的總線使用權隨時間的變化。
時間圖說明一個結果存儲控制單元110根據圖2中示例所示傳輸速率信息300來對總線主控器之間存儲器存取的爭用進行仲裁。
圖中清楚地表明,請求檢測周期被設置為1000μs,以便符合具有最小請求檢測周期的總線主控器B,並且分別把總線使用權順序地給予總線A、B以及C,時長分別為625μs、125μs以及125μs。由於存儲器總線的帶寬為800KB/ms,所以總線主控器A、總線主控器B以及總線主控器C在一個請求檢測周期內分別傳輸500KB、100KB以及100KB數據。
因此,總線主控器A在2000ms的時限內傳輸1000KB數據,總線主控器B在1000ms的時限內傳輸100KB數據,以及總線主控器C在4000ms的時限內傳輸400KB數據。這意味著,各總線主控器在其所要求的時間餘量內以其所要求的傳輸速率成功地傳輸數據。
實施例2
下面將對符合本發明最佳實施例2的存儲控制裝置進行說明。在實施例1中描述的存儲控制單元110具有對總線主控器A至C之間存儲器存取的爭用進行仲裁的功能,其中要求這些總線主控器其中的每一個均以固定速率向存儲器或從存儲器進行數據傳輸。符合實施例2的存儲控制裝置110具有對總線主控器A至D之間存儲器存取的爭用進行仲裁的功能。注意,不要求總線主控器D以固定傳輸速率來進行數據傳輸,而是不規則地進行數據傳輸。
構造
圖7的視圖示出LSI 500的構造,包括符合本發明實施例2的存儲控制裝置。注意,在圖7中,除LSI 500外,還示出統一存儲器200。
LSI 500包括存儲控制單元510、總線主控器A 121、總線主控器B 122、總線主控器C 123、總線主控器D 124以及時鐘發生器190。LSI 500連接到統一存儲器200以及其它外部裝置,圖7中沒有示出這樣的外部裝置。
注意,在圖7中,對於構成LSI 500的組件,與實施例1中描述的構成LSI 100的組件基本相同的組件,均用與圖1相同的標號來表示,並且在此不對其進行詳細說明。
這裡,時鐘發生器190是向存儲控制單元510、總線主控器A至D以及統一存儲器200提供時鐘信號的電路。
總線主控器D 124存取統一存儲器200,以便獨立於總線主控器A至C來進行數據傳輸。也就是,總線主控器D在需要進行數據傳輸時,向存儲控制單元510發出總線請求,並從存儲控制單元510獲取總線使用權。在給予總線使用權的一段時間內,總線主控器D根據由來自時鐘發生器190的時鐘信號所提供的定時,與包含在存儲控制單元510中的仲裁器單元514同步進行數據傳輸。
注意,總線主控器A至C要求以固定傳輸速率進行數據傳輸,也就是,規則地發出總線請求(下文中,這種類型的總線主控器稱作「規則類型」),總線主控器D則不同,它不規則地發出總線請求(下文中,這種類型的總線主控器稱作「不規則類型」)。不規則類型總線主控器的示例包括MPU,這些MPU在接收外部中斷時執行處理,其中外部中斷是對用戶在安裝LSI的裝置上進行的輸入作出響應而產生的。
在圖7中,來自總線主控器的總線請求分別表示為REQ-A、REQ-B、REQ C及REQ-D,而對總線主控器的總線使用權的給予則分別表示為GNT-A、GNT-B、GNT-C及GNT-D。
此外,存儲控制單元510根據外部裝置所提供的傳輸速率信息來對總線主控器向統一存儲器200進行的存取進行仲裁,存儲控制單元510還包括傳輸速率信息存儲單元111、定時信息發生器單元112、定時信息存儲單元113、仲裁器單元514及不規則主控器信息存儲單元515。
不規則主控器信息存儲單元515是預先儲存表示不規則類型總線主控器的不規則主控器信息的存儲區。不規則主控器信息是仲裁器單元514認出哪個總線主控器具有不規則類型所必需的信息。
參照儲存在不規則主控器信息存儲單元515中的不規則主控器信息及儲存在定時信息存儲單元113中的定時信息,仲裁器單元514在由來自時鐘發生器190的時鐘信號所提供的預定定時,檢查是否存在來自除不規則類型總線主控器之外的任何總線主控器的總線請求,即來自規則類型總線主控器A至C其中任何一個的總線請求。仲裁器單元514隨後順序地並有選擇地把總線使用權給予發出總線請求的總線主控器。在當前請求檢測周期內存在未把總線使用權給予任何規則類型總線主控器A至C的剩餘時限時,只要不規則類型總線主控D發出了總線請求,仲裁器單元514就把總線使用權給予不規則類型總線主控器D。
操作
接下來對具有上述構造的存儲控制單元510的操作進行描述。
定時信息發生器單元112執行與實施例1描述的操作相同的操作(參見圖4)。
圖8是流程圖,說明仲裁器單元514執行的仲裁處理。
參照從時鐘發生器190以固定時間間隔提供的定時信息和時鐘信號,仲裁器單元514等待請求檢測定時到來。當請求檢測定時到來時,仲裁器單元514檢查是否存在除不規則類型總線主控器之外的任何總線主控器發出的總線請求,即來自任何規則類型總線主控器的總線請求(步驟S31)。
仲裁器單元514判斷在步驟S31中的檢查時間是否檢測到來自任何一個規則類型總線主控器的總線請求(步驟S32)。
當步驟S32中的判斷結果為已檢測到總線請求時,仲裁器單元514將總線使用權給予發出了總線請求的規則類型總線主控器其中之一(步驟S33)。仲裁器單元514於是對時鐘信號進行計數,以便在對應於該總線主控器的周期內總線使用許可時限到期時,結束所給予的總線使用權(步驟S34)。也就是,在步驟S33和S34,規則類型總線主控器其中之一的GNT信號線進入有效狀態長達相應的周期內總線使用許可時限之久,然後再回到無效狀態。
接著步驟S34,仲裁器單元514判斷在步驟S31中是否已檢測到另一個來自除已給予總線使用權的總線主控器之外的規則類型總線主控器的總線請求(步驟S35)。
當步驟S35中的判斷結果為檢測到另一個來自除已給予總線使用權的總線主控器之外的規則類型總線主控器的總線請求,仲裁器單元514回到步驟S33的處理。否則,仲裁器單元514判斷下一個請求檢測定時是否已到來(步驟S36)。當判定下一個請求檢測定時已到來時,仲裁器單元514執行步驟S31中的處理。
此外,在步驟S32中沒有檢測到來自任何總線主控器的總線請求時,仲裁器單元514跳過步驟S33-S35中的處理,並執行步驟S36中的判斷處理。
在步驟36中,當判定下一個請求檢測定時還沒有來到時,仲裁器單元514檢查是否存在從不規則類型總線主控器D發出的總線請求(步驟S37)。當檢測到這樣的總線請求時,仲裁器單元514把總線使用權給予不規則類型總線主控器D(步驟S38),並在來自不規則類型總線主控器的總線請求被終止時,或者在下一個請求檢測定時已來到時,終止所給予的總線使用權(步驟S39),然後回到步驟S36中的判斷處理。
注意,在步驟S37中沒有檢測到來自不規則類型總線主控器的總線請求時,仲裁器單元514也回到步驟S36中的判斷處理。
從而,當時間推移表示為一系列請求檢測周期時,在各請求檢測周期內,仲裁器單元514首先把總線使用權給予各規則類型總線主控器長達相應的周期內總線使用許可時限之久,其中所述各規則類型總線主控器是在當前請求檢測周期前的一個周期發出了總線請求的規則類型總線主控器。隨後,只要不規則類型總線主控器D發出了總線請求,仲裁器單元514在各請求檢測周期剩餘的時限內,把總線使用權給予所述總線主控器D。
圖9是時間圖,說明來自總線主控器A至D的總線請求及由存儲控制單元510所給予的總線使用權隨時間的變化。
如圖所示,只要不規則總線主控器已經發出了總線請求,仲裁器單元514在把總線使用權給予規則類型總線主控器A至C之後的各請求檢測周期剩餘的時限內,把總線使用權給予該不規則類型總線主控器。
注意,在從緊接地在前的請求檢測定時開始的一個請求檢測周期內把總線使用權給予總線主控器D時,並在下一個請求定時於總線主控器D終止發出總線請求之前已到來時,給予總線主控器D的總線使用權被終止。此外,如果有規則類型總線主控器在總線請求定時的時候還未發出總線請求,則可把總線使用權給予不規則類型總線主控器的時限會更長。
仲裁處理的修改示例
下面對仲裁器單元514所執行的上述仲裁處理的修改示例進行說明。根據本修改,在較早階段把總線使用權給予不規則類型總線主控器。
圖10是流程圖,說明仲裁器單元514執行的仲裁處理的修改示例。
首先,在請求檢測定時到來時,仲裁器單元514檢查是否從任何規則類型總線主控器發出總線請求,並計算與發出了被檢測的總線請求的總線主控器對應的所有周期內總線使用許可時限的總量。仲裁器單元514隨後從請求檢測周期中減去該總量,以便得到額外時間(步驟S51)。這裡,額外時間是請求檢測周期內的某個時限,在該時限中,總線使用權可以給予不規則類型總線主控器。
接著,仲裁器單元514判斷是否已在步驟S31中的檢查時間檢測到來自任何規則類型總線主控器的總線請求(步驟S52)。
當步驟S52中的判斷結果為已檢測到這樣的總線請求時,仲裁器單元514將總線使用權給予發出了總線請求的規則類型總線主控器其中之一(步驟S53)。仲裁器單元514對時鐘信號進行計數,以便在對應於該總線主控器的周期內總線使用許可時限到期時,結束總線使用權的給予(步驟S54)。也就是,在步驟S53和S54,使規則類型總線主控器其中之一的GNT信號線進入有效狀態長達周期內總線使用許可時限之久,然後進入無效狀態。
此外,在步驟S52中判定沒有檢測到總線請求時,仲裁器單元514跳過步驟S53和S54中的處理,並執行步驟S55中的判斷處理。
接著步驟S54,仲裁器單元514判斷下一個檢測定時是否已來到(步驟S55)。當判定下一個請求檢測定時已來到時,仲裁器單元514回到步驟S51中的處理,否則,判斷額外時間是否等於零(步驟S56)。
當步驟56中的判斷結果為額外時間不等於零,就是說剩有額外時間時,仲裁器單元514檢查是否存在從不規則類型總主控器D發出的總線請求(步驟S57)。當檢測到這樣的總線請求時,仲裁器單元514將總線使用權給予不規則類型總線主控器D,並在提供總線使用權期間,對額外時間進行降值計數(步驟S58)。當來自不規則類型總線主控器的總線請求被終止時,或者當額外時間達到零時,仲裁器單元514終止所給予的總線使用權(步驟S59),並再回到步驟S56中的判斷處理。
注意,在步驟S51中所確定的額外時間按某個量進行降值計數,該量與步驟S58中將總線使用權給予不規則類型總線主控器的時限相對應。但額外時間的降值計數在額外時間達到零時停止。
如果在步驟S56中判定額外時間等於零,或者如果在步驟S57中沒有檢測到來自任何不規則類型總線主控器的總線請求,仲裁器單元514則判斷是否在步驟S51中已檢測到另一個來自除已給予總線使用權的總線主控器之外的規則類型總線主控器的總線請求(步驟S60)。當沒有檢測到這樣的請求時,仲裁器單元514回到步驟S55中的處理,否則,回到步驟S53中的處理。
此外,當步驟S55中的判斷結果為下一個請求檢測定時已來到時,仲裁器單元514回到步驟S51中的處理,來檢查來自任何規則類型總線主控器的總線請求。
通過上述修改的仲裁處理,在規則類型總線主控器正進行數據傳輸期間不規則類型總線主控器發出總線請求的情況下,仲裁器單元514在由於周期內總線使用許可時限到期而終止給予規則類型總線主控器的總線使用權時,立即將總線使用權給予所述不規則類型總線主控器。這就是說,不規則類型總線主控器可以在出現數據傳輸的需要之後立即開始數據傳輸。換句話說,通過上述修改的仲裁處理,仲裁器單元設法減少不規則類型總線主控器存取存儲器的存取等待時間。
圖11是時間圖,說明總線主控器A至D所發出的總線請求及由存儲控制單元510所給予的總線使用權隨時間的變化。
如圖所示,在將總線使用權給予規則類型總線主控器A期間從不規則類型總線主控器D發出總線請求時,仲裁器單元514在將總線使用權給予總線主控器A之後再給予總線主控器D,然後順序地給予規則類型總線主控器B和C。在下一個請求檢測周期中,仲裁器單元514將總線使用權順序地給予規則類型總線主控器A和B,在將總線使用權給予總線主控器B的期間從不規則類型總線主控器D發出總線請求時,仲裁器單元514在將總線使用權給予總線主控器B之後再給予總線主控器D,然後再將總線使用權給予規則類型總線主控器C。
補充
至止,通過實施例1和2對符合本發明的存儲控制裝置進行了描述。然而,不用說,本發明不限於這些特定的實施例。更具體地說(1)在兩個實施例中採用的總線主控器可有任意數量,只要有多個總線主控器。此外,不規則類型總線主控器的數量不限於一個,可以採用任意數量的不規則類型總線主控器。然而,需要為LSI提供與所有規則類型總線主控器有關的傳輸速率信息的輸入,所述信息表示傳輸速率以及應保持該傳輸速率的時間間隔。另外,當採用了一個或多個不規則類型總線主控器時,需要不規則主控器信息存儲單元515儲存不規則主控器信息,所述信息用來標識所有不規則類型總線主控器。
注意,LSI可以連接到多個統一存儲器。在這種情況下,存儲控制單元可以被構造成以實施例1或2中說明的方式,單獨對每個統一存儲器的存取爭用進行仲裁。
(2)實施例1中說明的存儲控制單元110及實施例2中說明的存儲控制單元510可以完全構造成硬體電路,或者包括MPU和存儲器,以便通過由MPU執行儲存在存儲器中的程序來實現仲裁功能。
(3)在以上兩種實施例中,傳輸速率信息由信息項對組成,一項與請求周期有關,另一項與每次傳輸的數據量有關。但是,傳輸速率信息可以由信息項的任意組合來組成,只要該傳輸速率信息表示傳輸速率和應保持傳輸速率的最小時間間隔。
(4)兩種實施例中描述的傳輸速率信息是從外部裝置輸入的。但是,其初始值可以預先儲存。
另外,傳輸信息可以在任何時間輸入。每次輸入傳輸信息時,定時信息存儲單元112可以根據新輸入的傳輸速率信息來產生定時信息,並將這樣產生的定時信息儲存在定時信息存儲單元113中。由於仲裁器單元114和仲裁器單元514根據定時信息來確定給予總線使用權的時限,因此實現了動態仲裁控制。
注意,在實施例2中,總線主控器分為規則類型和不規則類型。這種分類是基於在進行數據傳輸時各總線主控器是否要求固定傳輸速率。因此,根據從外部源輸入到LSI的傳輸速率信息,同一個總線主控器在某些情況下可以是規則類型的,而在另一些情況下則是不規則類型的。
(5)兩個實施例說明了定時信息發生器單元112參照的存儲器總線的總線帶寬。可以進行某種配置,使所述總線帶寬可以從外部源輸入到LSI中。
(6)實施例1中描述的存儲控制單元110和實施例2中描述的存儲控制單元510可以被構造成為各總線提供信息,諸如請求檢測周期,用於指定請求檢測定時。這裡,各總線主控器可以被構造成接收信息,並根據所指定的請求檢測定時來發出總線請求。
(7)在兩個實施例中,通過使GNT信號線進入有效狀態來把總線使用權給予總線主控器,並通過使GNT信號線進入無效狀態來終止所給予的總線使用權。但是,本發明並不限於這些特定的方式,給予及終止總線使用權可以按照任何方式來實現,只要把總線使用的給予和禁止提供給各總線主控器。
例如,可以通過瞬時激活一條信號線,把總線使用權的給予通知總線主控器,通過瞬時激活另一條信號線,將總線使用權的終止通知總線主控器。
此外,在兩個實施例中,把各規則類型總線主控器描述為只要需要進行數據傳輸就連續保持REQ信號線在有效狀態。但是,總線請求的發出不限於這種方式。例如,根據傳輸速率信息,存儲控制單元110和存儲控制單元510可以將可再在一個請求檢測周期內傳輸的數據量通知各總線主控器。這裡,當需要傳輸所通知的數據量時,各總線主控器可以瞬時激活REQ信號線。
(8)兩個實施例中描述的統一存儲器200不限於具有特定存儲器體系結構的存儲器,任何存儲均是可行的。
此外,連接各總線主控器和統一存儲器的各存儲器總線可以由地址總線和數據總線的獨立信號線來構成,或者由一公共信號線構成。當各總線主控器由一公共信號線構成時,地址信息和數據通過時間共享在總線主控器和統一存儲器之間進行傳輸。此外,連接總線主控器和統一存儲器的總線可以經包含在存儲控制單元中的接口單元進行連接,使諸如地址解碼的處理可以由接口單元來進行。
(9)在各實施例描述的LSI的情況下,各總線主控器主要存取一個統一存儲器中不同的存儲區。但是,各總線主控器可以存取由不同總線主控器共同存取的存儲區。
(10)在實施例2中,定時信息發生器單元112根據傳輸速率信息來確定規則類型總線主控器的請求周期中的最小請求周期,並且在每個請求檢測周期把總線使用權給予發出總線請求的各規則類型總線主控器。該請求檢測周期可以等於或小於規則類型總線主控器的請求周期中的最小請求周期。
例如,所有規則類型總線主控器的請求周期中的最小請求周期的一半可以被確定為請求檢測周期。對於存儲控制裝置在接收來自總線主控器的總線請求之後把總線使用權給予不規則類型總線主控器方面,較小的請求檢測周期需要較短的時間。
注意,可以進行某種配置來允許信息的外部輸入,該信息是關於所有規則類型總線主控器的請求周期中最小請求周期的什麼樣的比例將被確定為請求檢測時間。這裡,請求檢測時間可以根據該信息來確定。
雖然通過參考附圖的示例對本發明進行了全面的說明,但應當注意,對本領域技術人員來說,各種改變和修改是明顯的。因此,除非這樣的改變和修改脫離了本發明的範圍,不然它們應被解釋為包含在本發明的範圍中。
權利要求
1.一種存儲控制裝置,用於通過有選擇地把允許使用存儲器總線的總線使用權一次給予多個總線主控器的其中一個,對共享存儲器的所述多個總線主控器之間的存儲器存取爭用進行仲裁,所述存儲控制裝置包括保持單元,用於保持與所述多個總線主控器的其中每一個有關的傳輸速率信息,所述傳輸速率信息表示(i)相應的總線主控器向所述存儲器或從所述存儲器進行數據傳輸的傳輸速率和(ii)確保以所述傳輸速率進行數據傳輸的保證時限(ensuring time period);參考期計算單元,用於確定作為參考時限的時限,該時限等於或小於所有所述保證時限中的最小保證時限;總線使用許可時限計算單元,用於計算總線使用許可時限,各所述總線使用許可時限都是總線主控器獲得用來利用所述存儲器總線的總線帶寬傳輸數據量V的時限,其中V表示相應的總線主控器在所述參考時限內能以相應的傳輸速率傳輸的數據量;以及使用權給予單元,用於在周期性重複的各參考時限內把所述總線使用權給予各總線主控器長達相應的總線使用許可時限之久。
2.如權利要求1所述的存儲控制裝置,其特徵在於包括檢測單元,用於檢測來自各總線主控器的總線請求,其中對於總線請求在當前參考時限開始之前已經被所述檢測單元檢測到的各總線主控器,所述使用權給予單元把所述當前參考時限的總線使用權給予所述各總線主控器。
3.如權利要求2所述的存儲控制裝置,其特徵在於所述總線主控器被分為(i)規則類型總線主控器和(ii)不規則類型總線主控器,要求各所述規則類型總線主控器以固定的傳輸速率向存儲器或從存儲器進行數據傳輸,所述不規則類型總線主控器是除所述規則類型總線主控器以外的總線主控器;所述保持單元保持與各規則類型總線主控器有關的所述傳輸速率信息;所述總線使用許可時限計算單元計算各規則類型總線主控器的所述總線使用許可時限;以及所述使用權給予單元將各參考時限的所述總線使用權給予(i)在所述當前參考時限開始之前總線請求已被檢測到的各規則類型總線主控器,給予所述總線使用權長達相應的總線使用許可時限之久;以及(ii)各不規則類型總線主控器,給予所述總線使用權最大長達從參考時限中減去對總線請求已被檢測到的各規則類型總線主控器所計算的總線使用許可時限總量之後所剩餘的時限之久。
4.如權利要求3所述的存儲控制裝置,其特徵在於在將總線使用權給予規則類型總線主控器的時間內,當所述檢測單元檢測到來自不規則類型總線主控器的總線請求時,所述使用權給予單元在結束給予所述規則類型總線主控器的所述總線使用權之後立即將各參考時限的總線使用權給予所述不規則類型總線主控器。
5.如權利要求4所述的存儲控制裝置,其特徵在於所述保持單元從所述存儲控制裝置外部的源獲取所述傳輸速率信息,並保存所述獲取的傳輸速率信息。
6.如權利要求4所述的存儲控制裝置,其特徵在於所述保持單元將所述存儲控制裝置內的傳輸速率信息保存在可由外部裝置重寫的存儲區中。
7.如權利要求4所述的存儲控制裝置,其特徵在於所述存儲控制裝置通過用於給予所述總線使用權的信號線連接到各總線主控器,以及所述使用權給予單元通過使連接到所述總線主控器的信號線進入有效狀態長達相應的總線使用許可時限之久,來把所述總線使用權給予各總線主控器。
8.如權利要求1所述的存儲控制裝置,其特徵在於所述參考時限計算單元確定所有所述保證時限中的所述最小保證時限作為所述參考時限。
9.如權利要求1所述的存儲控制裝置,其特徵在於所述保持單元從所述存儲控制裝置外部的源獲取所述傳輸速率信息,並保存所述獲取的傳輸速率信息。
10.一種存儲控制器,用於通過有選擇地把允許使用存儲器總線的總線使用權一次給予多個總線主控器的其中一個,對存取存儲器中不同存儲區的所述多個總線主控器之間的存儲器存取爭用進行仲裁,所述存儲控制裝置包括保持單元,用於保持與所述多個總線主控器的其中每一個有關的傳輸速率信息,所述傳輸速率信息表示(i)相應的總線主控器向所述存儲器或從所述存儲器進行數據傳輸的傳輸速率和(ii)確保以所述傳輸速率進行數據傳輸的保證時限;參考期計算單元,用於確定作為參考時限的時限,該時限等於或小於所有所述保證時限中的最小保證時限;總線使用許可時限計算單元,用於計算總線使用許可時限,各所述總線使用許可時限都是總線主控器獲得用來利用所述存儲器總線的總線帶寬傳輸數據量V的時限,其中V表示相應的總線主控器在所述參考時限內能以相應的傳輸速率傳輸的數據量;以及使用權給予單元,用於在周期性重複的各參考時限內把所述總線使用權給予各總線主控器長達相應的總線使用許可時限之久。
11.如權利要求10所述的存儲控制裝置,其特徵在於檢測單元,用於檢測來自各總線主控器的總線請求,其中對於總線請求在當前參考時限開始之前已經被所述檢測單元檢測到的各總線主控器,所述使用權給予單元把所述當前參考時限的總線使用權給予所述各總線主控器。
12.如權利要求11所述的存儲控制裝置,其特徵在於所述總線主控器被分為(i)規則類型總線主控器和(ii)不規則類型總線主控器,要求各所述規則類型總線主控器以固定的傳輸速率向存儲器或從存儲器進行數據傳輸,所述不規則類型總線主控器是除所述規則類型總線主控器以外的總線主控器;所述保持單元保持與各規則類型總線主控器有關的所述傳輸速率信息;所述總線使用許可時限計算單元計算各規則類型總線主控器的所述總線使用許可時限;以及所述使用權給予單元將各參考時限的所述總線使用權給予(i)在所述當前參考時限開始之前總線請求已被檢測到的各規則類型總線主控器,給予所述總線使用權長達相應的總線使用許可時限之久;以及(ii)各不規則類型總線主控器,給予所述總線使用權最大長達從參考時限中減去對總線請求已被檢測到的各規則類型總線主控器所計算的總線使用許可時限總量之後所剩餘的時限之久。
13.如權利要求12所述的存儲控制裝置,其特徵在於在將總線使用權給予規則類型總線主控器的時間內,當所述檢測單元檢測到來自不規則類型總線主控器的總線請求時,所述使用權給予單元在結束給予所述規則類型總線主控器的所述總線使用權之後立即將各參考時限的總線使用權給予所述不規則類型總線主控器。
14.一種LSI,它包括(i)共享存儲器的多個電路和(ii)存儲控制裝置,所述存儲控制裝置用於通過有選擇地把允許使用存儲器總線的總線使用權一次給予所述多個電路的其中一個,對存儲器存取爭用進行仲裁,要求每個電路以固定傳輸速率向所述存儲器或從所述存儲器進行數據傳輸,所述存儲控制裝置包括保持單元,用於保持與所述多個電路的其中每一個有關的傳輸速率信息,所述傳輸速率信息表示(i)相應的電路向所述存儲器或從所述存儲器進行數據傳輸的傳輸速率和(ii)確保以所述傳輸速率進行數據傳輸的保證時限;參考期計算單元,用於確定作為參考時限的時限,該時限等於或小於所有所述保證時限中的最小保證時限;總線使用許可時限計算單元,用於計算總線使用許可時限,各所述總線使用許可時限都是電路獲得用來利用所述存儲器總線的總線帶寬傳輸數據量V的時限,其中V表示相應的電路在所述參考時限內能以相應的傳輸速率傳輸的數據量;以及使用權給予單元,用於在周期性重複的各參考時限內把所述總線使用權給予各電路長達相應的總線使用許可時限之久。
15.如權利要求14所述的LSI,其特徵在於各電路向所述存儲器中不同存儲區的其中之一或從所述存儲器中不同存儲區的其中之一進行數據傳輸。
16.如權利要求14所述的LSI,其特徵在於所述存儲控制裝置包括檢測單元,用於檢測來自各電路的總線請求,其中對於總線請求在當前參考時限開始之前已經被所述檢測單元檢測到的各電路,所述使用權給予單元把所述當前參考時限的總線使用權給予所述各電路。
17.如權利要求16所述的LSI,其特徵在於所述電路被分為(i)規則類型總線主控器和(ii)不規則類型總線主控器,要求各所述規則類型總線主控器以固定的傳輸速率向存儲器或從存儲器進行數據傳輸,所述不規則類型總線主控器是除所述規則類型總線主控器以外的電路;所述保持單元保持與各規則類型總線主控器有關的所述傳輸速率信息;所述總線使用許可時限計算單元計算各規則類型總線主控器的所述總線使用許可時限;以及所述使用權給予單元將各參考時限的所述總線使用權給予(i)在所述當前參考時限開始之前總線請求已被檢測到的各規則類型總線主控器,給予所述總線使用權長達相應的總線使用許可時限之久;以及(ii)各不規則類型總線主控器,給予所述總線使用權最大長達從參考時限中減去對總線請求已被檢測到的各規則類型總線主控器所計算的總線使用許可時限總量之後所剩餘的時限之久。
18.如權利要求17所述的LSI,其特徵在於在將總線使用權給予規則類型總線主控器的時間內,當所述檢測單元檢測到來自不規則類型總線主控器的總線請求時,所述使用權給予單元在結束給予所述規則類型總線主控器的所述總線使用權之後立即將各參考時限的總線使用權給予所述不規則類型總線主控器。
19.如權利要求14所述的LSI,其特徵在於所述保持單元從所述存儲控制裝置外部的源獲取所述傳輸速率信息,並保存所述獲取的傳輸速率信息。
全文摘要
一種存儲控制裝置,用於對總線主控器之間存儲器存取爭用進行仲裁,同時,關於各總線主控器,在所要求的時間餘量內保證所要求的傳輸速率。LSI 100外部的裝置把傳輸速率信息寫入傳輸速率信息存儲單元111中,所述傳輸速率信息表示傳輸速率和保證所述傳輸速率的時限。作為響應,定時信息發生器單元112把最小時限確定為周期,並且關於各總線主控器,還根據存儲器總線帶寬把用來保證所要求的傳輸速率的時間確定為總線使用許可時限。隨著時間推移,仲裁器單元114將總線使用權順序地給予發出總線請求的各總線主控器長達相應的總線使用許可時限之久。
文檔編號G06F13/16GK1383066SQ0211858
公開日2002年12月4日 申請日期2002年4月25日 優先權日2001年4月25日
發明者神崎英之, 尾坂匡隆 申請人:松下電器產業株式會社