亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

存儲(chǔ)器的尋址的制作方法

文檔序號(hào):6599033閱讀:294來(lái)源:國(guó)知局
專利名稱:存儲(chǔ)器的尋址的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及與存儲(chǔ)器協(xié)作的數(shù)據(jù)處理并涉及為此目的的對(duì)該存儲(chǔ)器的尋址。本發(fā)明可用于例如MPEG解碼器(MPEG是動(dòng)畫專家組的縮寫)。
處理器能通過(guò)存儲(chǔ)器接口訪問存儲(chǔ)器,以便讀出要被處理的數(shù)據(jù)或?qū)懭胍呀?jīng)處理過(guò)的數(shù)據(jù)。處理器能向存儲(chǔ)器接口傳送內(nèi)部地址。存儲(chǔ)器接口通過(guò)這個(gè)內(nèi)部地址為存儲(chǔ)器生成適當(dāng)?shù)目刂菩盘?hào)。這些控制信號(hào)激活與內(nèi)部地址對(duì)應(yīng)的特定存儲(chǔ)單元。
舉例來(lái)說(shuō),假設(shè)內(nèi)部地址18位A[170]。對(duì)于DRAM-FPM類型的存儲(chǔ)器,存儲(chǔ)器接口由9個(gè)較高有效位A[179]生成頁(yè)號(hào),由9個(gè)較低有效位A[80]生成列號(hào)。對(duì)于SRAM類型的存儲(chǔ)器,存儲(chǔ)器接口由最低有效位后的第5位A[5]生成存儲(chǔ)體選擇(bank selection),由6個(gè)較高有效位A[1712]和最低有效位后的第6位A[6]生成頁(yè)號(hào),由最低有效位后的第7位A[7]生成奇/偶選擇,由5個(gè)最低有效位A[40]生成64位字選擇。
由于以上所述的存儲(chǔ)器接口,處理器總是用相同的通信方式、內(nèi)部地址,而不管所用的存儲(chǔ)器的類型是DRAM-FPM還是SDRAM。這種與存儲(chǔ)器合作的數(shù)據(jù)處理已經(jīng)在公開號(hào)為0793390的歐洲專利申請(qǐng)(律師文件號(hào)PHF96517)中披露過(guò)。
本發(fā)明的一個(gè)目的是方便用于與存儲(chǔ)器合作的數(shù)據(jù)處理設(shè)備的設(shè)計(jì)。
本發(fā)明考慮了下列方面。方便設(shè)計(jì)的一個(gè)方法是保證設(shè)備能使用一個(gè)或多個(gè)已經(jīng)被設(shè)計(jì)用于一個(gè)或多個(gè)其它設(shè)備的處理器。設(shè)備例如從在它們包含相同類型的處理器的同時(shí)使用不同的存儲(chǔ)器的意義上來(lái)說(shuō)可以是不同的。假設(shè)設(shè)備具有按照以上所述現(xiàn)行技術(shù)的體系結(jié)構(gòu)。在該情況下原則上足以設(shè)計(jì)能在內(nèi)部地址的基礎(chǔ)上為所需存儲(chǔ)器生成適當(dāng)控制信號(hào)的存儲(chǔ)器接口。所以,原則上該設(shè)計(jì)應(yīng)當(dāng)僅涉及存儲(chǔ)器接口。
然而,當(dāng)在已經(jīng)是為其它設(shè)備設(shè)計(jì)的處理器的基礎(chǔ)上設(shè)計(jì)設(shè)備時(shí)會(huì)出現(xiàn)下列問題。要設(shè)計(jì)的設(shè)備最好采用不同于其它設(shè)備的數(shù)據(jù)存儲(chǔ)方案。不同的存儲(chǔ)方案可以由于不同原因而是更可取的。例如,要設(shè)計(jì)的設(shè)備可能涉及一組結(jié)構(gòu)不同于其它設(shè)備的結(jié)構(gòu)的處理器。建議避免兩個(gè)處理器使用同一個(gè)存儲(chǔ)區(qū)或者一個(gè)或多個(gè)存儲(chǔ)區(qū)不用。要設(shè)計(jì)的設(shè)備與其它設(shè)備之間在操作參數(shù)方面的不同可能是不同存儲(chǔ)方案更可取的另一個(gè)原因。例如,假設(shè)設(shè)備是MPEG解碼器。有不同的MPEG解碼的類型,每個(gè)類型有其自己的參數(shù)和操作方式。
按照現(xiàn)行技術(shù),不同的存儲(chǔ)方案意味著內(nèi)部地址的不同生成。這只能通過(guò)修改處理器才能實(shí)現(xiàn)。所以,按照現(xiàn)行技術(shù),在已經(jīng)是為其它設(shè)備設(shè)計(jì)的處理器的基礎(chǔ)上的設(shè)備的設(shè)計(jì),如果希望要設(shè)計(jì)的設(shè)備采用的存儲(chǔ)方案與其它設(shè)備采用的存儲(chǔ)方案不同時(shí),就需要修改這些處理器。
按照本發(fā)明的與存儲(chǔ)器合作的數(shù)據(jù)的處理具有以下特點(diǎn)。處理器生成邏輯請(qǐng)求。邏輯請(qǐng)求定義一組數(shù)據(jù)的至少一個(gè)共同特征。尋址電路在邏輯請(qǐng)求的基礎(chǔ)上生成物理請(qǐng)求。物理請(qǐng)求定義有關(guān)該組數(shù)據(jù)的存儲(chǔ)器地址。存儲(chǔ)器接口響應(yīng)物理請(qǐng)求而實(shí)現(xiàn)該組數(shù)據(jù)在存儲(chǔ)器與處理器之間的傳輸。
所以,按照本發(fā)明,處理器借助數(shù)據(jù)的一個(gè)或多個(gè)共同特征來(lái)指出某組數(shù)據(jù)。例如,按照本發(fā)明,圖象處理設(shè)備的處理器指出“請(qǐng)將當(dāng)前圖象第10行的色度樣本提供給我”。尋址電路將這個(gè)邏輯請(qǐng)求轉(zhuǎn)換成定義存儲(chǔ)器存儲(chǔ)這些樣本的位置的地址的物理請(qǐng)求。所以處理器不需要指出存儲(chǔ)器在哪里存儲(chǔ)和如何存儲(chǔ)這些樣本。按照本發(fā)明,處理器不受存儲(chǔ)方案的影響,不需要為了使其能被用于采用不同存儲(chǔ)方案的不同處理設(shè)備而被修改。本發(fā)明因此方便了設(shè)計(jì)。
現(xiàn)在將結(jié)合附圖來(lái)更詳細(xì)地說(shuō)明本發(fā)明。


圖1表示按照本發(fā)明的信號(hào)處理設(shè)備;圖2表示該設(shè)備的存儲(chǔ)器接口的操作;圖3表示該設(shè)備的信號(hào)處理單元;圖4表示該設(shè)備的存儲(chǔ)器接口;圖5表示由某單元進(jìn)行的讀訪問;圖6A和6B表示為對(duì)公共存儲(chǔ)器訪問的仲裁;
圖7表示存儲(chǔ)器接口的存取接口;圖8表示存儲(chǔ)器接口的緩沖存儲(chǔ)器;圖9表示讀緩沖存儲(chǔ)器(read buffer memory device);圖10表示如權(quán)利要求1所定義的本發(fā)明的基本特征。
以下說(shuō)明涉及標(biāo)注符。在所有附圖中類同的部件具有相同的標(biāo)注字母。在一個(gè)附圖中可能出現(xiàn)若干個(gè)類同的部件。在該情況下將數(shù)字后綴到標(biāo)注字母,以區(qū)分類同的部件。為方便計(jì)可以省略數(shù)字或后綴。這適用于說(shuō)明書和權(quán)利要求二者。
圖1表示一個(gè)信號(hào)處理設(shè)備。該設(shè)備包含公共存儲(chǔ)器SDRAM、存儲(chǔ)器接口INT和三個(gè)信號(hào)處理單元B1、B2和B3。以下將稱這些信號(hào)處理單元為“單元”。每個(gè)單元B通過(guò)專用讀總線BBR和專用寫總線BBW與存儲(chǔ)器接口INT相連。每個(gè)專用讀總線BBR和每個(gè)專用寫總線BBW都專用于給定單元B。存儲(chǔ)器接口INT通過(guò)公共總線BM與公共存儲(chǔ)器SDRAM相連。
信號(hào)處理設(shè)備的一般操作如下。單元B應(yīng)請(qǐng)求接收要被處理并在公共存儲(chǔ)器SDRAM中存儲(chǔ)的數(shù)據(jù)。處理過(guò)數(shù)據(jù)后,單元B將處理過(guò)的數(shù)據(jù)通過(guò)存儲(chǔ)器接口NT施加到公共存儲(chǔ)器SDRAM。存儲(chǔ)器接口INT控制由各種單元B對(duì)公共存儲(chǔ)器SDRAM的存取。
存儲(chǔ)器接口INT有兩個(gè)基本功能。第一,它在對(duì)公共存儲(chǔ)器SDRAM的存取的層次在各種單元B之間進(jìn)行仲裁(arbitration)。單一的單元B能訪問公共存儲(chǔ)器SDRAM,要么讀一次要么寫一次。這意味著單元B只能以成組方式(burst mode)訪問存儲(chǔ)器。第二,就讀而言,存儲(chǔ)器接口INT將來(lái)自公共存儲(chǔ)器SDRAM的、去往給定單元B的數(shù)據(jù)組串(data bursts)轉(zhuǎn)換成基本穩(wěn)定的數(shù)據(jù)流。該數(shù)據(jù)流就是這樣通過(guò)相應(yīng)的專用讀總線BBR被傳輸?shù)絾卧狟的。就寫而言,存儲(chǔ)器接口INT將來(lái)自給定單元B的基本穩(wěn)定的數(shù)據(jù)流轉(zhuǎn)換成要寫入公共存儲(chǔ)器SDRAM的數(shù)據(jù)組串。
圖2表示存儲(chǔ)器接口INT的操作。T(BM)代表公共存儲(chǔ)器SDRAM與存儲(chǔ)器接口INT之間通過(guò)公共總線BM的數(shù)據(jù)傳輸。T(BBR1)、T(BBR2)和T(BBR3)代表存儲(chǔ)器接口INT與單元B1、B2和B3之間分別通過(guò)相應(yīng)的專用讀總線BBR1、BBR2和BBR3的數(shù)據(jù)傳輸。T(BBW1)、T(BBW2)和T(BBW3)代表存儲(chǔ)器接口INT與單元B1、B2和B3之間分別通過(guò)相應(yīng)的專用寫總線BBW1、BBW2和BBW3的數(shù)據(jù)傳輸。
數(shù)據(jù)傳輸T(BM)由數(shù)據(jù)組串DB組成。每個(gè)數(shù)據(jù)組串DB對(duì)應(yīng)于由單元B或者以讀方式或者以寫方式對(duì)公共存儲(chǔ)器SDRAM進(jìn)行的一個(gè)存取操作。DB后括號(hào)內(nèi)的標(biāo)注,指出組串(burst)中的數(shù)據(jù)屬于哪個(gè)單元B,也指出存取的類型是寫(W)還是讀(R)。例如DB1(B1/R)指出數(shù)據(jù)組串DB1涉及B1以讀方式對(duì)公共存儲(chǔ)器SDRAM的存取。
圖2顯示,存儲(chǔ)器接口INT對(duì)來(lái)自公共存儲(chǔ)器SDRAM的、屬于某單元B的數(shù)據(jù)組串進(jìn)行“平滑”(smoothing)。相反地,該圖也顯示存儲(chǔ)器接口INT對(duì)從單元B接收的數(shù)據(jù)進(jìn)行時(shí)間集中(timeconcentration),以便將數(shù)據(jù)以組串的形式寫入公共存儲(chǔ)器SDRAM(數(shù)據(jù)壓縮)。這樣就實(shí)現(xiàn)以較低的速率通過(guò)專用讀總線BBR和專用寫總線進(jìn)行數(shù)據(jù)的傳輸。因此這就使得專用讀總線BBR和專用寫總線BBW有可能具有相對(duì)較窄的傳輸(bands),因而具有較小的寬度。對(duì)此要注意的是,總線的大小不必非要相應(yīng)于由該總線傳輸?shù)臄?shù)據(jù)的位數(shù)。例如,可以將16位的字分裂成4位的字。這樣,該數(shù)據(jù)就能以4個(gè)字的序列的形式通過(guò)4位的總線傳輸。
圖3表示單元B。單元B包含處理器P和通用尋址電路AGA。處理器P發(fā)出邏輯請(qǐng)求LRQ。假設(shè)單元B處理視頻數(shù)據(jù),在這種情況下邏輯請(qǐng)求LRQ例如可以是請(qǐng)求當(dāng)前圖象的給定行中的像素。通用尋址電路AGA將邏輯請(qǐng)求LRQ轉(zhuǎn)換成物理請(qǐng)求PRQ。物理請(qǐng)求PRQ定義被請(qǐng)求數(shù)據(jù)被存儲(chǔ)在公共存儲(chǔ)器SDRAM中的位置的物理地址。物理請(qǐng)求PRQ可以有下列形式起始地址、從所述地址開始要被檢索的地址的數(shù)目以及-適合的話-在數(shù)據(jù)檢索期間要采用的方案。該方案可以以下列形式定義要讀取的連續(xù)地址的數(shù)目,要被跳過(guò)的地址的數(shù)目和“讀并跳過(guò)”循環(huán)的次數(shù)。AGA可以以用翻譯參數(shù)定義邏輯請(qǐng)求LRQ向物理請(qǐng)求PRQ的翻譯的方式可編程。這就能實(shí)現(xiàn)在公共存儲(chǔ)器SDRAM中數(shù)據(jù)存儲(chǔ)的靈活性。
圖4表示存儲(chǔ)器接口INT。存儲(chǔ)器接口INT包含仲裁器(arbiter)ARB,存取接口SIF、緩沖存儲(chǔ)器BUF和尋址與宏命令電路AGB。每個(gè)單元B有個(gè)對(duì)應(yīng)的尋址與宏命令電路AGB。
總的來(lái)說(shuō),存儲(chǔ)器接口INT的操作如下。每個(gè)尋址與宏命令電路AGB將來(lái)自其相關(guān)單元B的物理請(qǐng)求劃分成宏命令。一個(gè)宏命令代表一個(gè)訪問存儲(chǔ)器中給定行的請(qǐng)求。宏命令被提交給仲裁器ARB之前,尋址與宏命令電路AGB查驗(yàn)緩沖存儲(chǔ)器BUF是否有足夠的空間。為此,它首先將宏命令施加到緩沖存儲(chǔ)器BUF。如果緩沖存儲(chǔ)器BUF確認(rèn)有空間用于存儲(chǔ)由宏命令所定義的數(shù)據(jù)的數(shù)量,尋址與宏命令電路AGB就將宏命令提交給仲裁器ARB。仲裁器ARB接收來(lái)自各種尋址與宏命令電路AGB的宏命令并選擇一個(gè)要被施加到存取接口SIF的宏命令。這種選擇是按照以下所述的仲裁方案作出的。存取接口SIF按接收順序處理從仲裁器ARB接收的宏命令。然后,存取接口SIF提供對(duì)公共存儲(chǔ)器SDRAM的存取,存取操作是由被處理的宏命令定義的。
宏命令使X組地址能被訪問,其中每組包含Y個(gè)地址,各地址組由Z個(gè)字分隔,X、Y和Z為整數(shù)。所以,宏命令含有下列信息-要被訪問的首地址;-在一組地址中的首地址后要被訪問的地址的數(shù)目(Y-1);-要在兩組連續(xù)地址之間跳過(guò)的地址的數(shù)目(Z);-除第一組外還要訪問的地址組的數(shù)目(X-1);-存取類型讀或?qū)憽?br> 一個(gè)在位層次的宏命令的例子如下。假設(shè)在公共存儲(chǔ)器SDRAM中存儲(chǔ)的數(shù)據(jù)的寬度是32位,公共存儲(chǔ)器SDRAM的最大存儲(chǔ)容量是256兆位。這意味著地址是以23位表達(dá)的。進(jìn)一步假設(shè)存取操作被限制在大小最多16個(gè)地址。鑒于延遲,這種限制是可取的。所以X-1和Y-1最大為15,因此能用4個(gè)位編碼。最后,按照公共存儲(chǔ)器SDRAM的配置,一行含有最多512個(gè)地址。所以,要被跳過(guò)的地址的數(shù)目不可超過(guò)511,因此這個(gè)數(shù)目可以用9個(gè)位編碼。因此,宏命令的大小為23+2*4+9+1=41位。地址可以在位40至18中編碼,存取類型在位17中編碼,要被讀取的字的數(shù)目(Y-1)在位16至13中編碼,要被跳過(guò)的字的數(shù)目(Z)在位12至4中編碼,字組的數(shù)目(X-1)在位3至0中編碼。
圖5表示由給定單元B以讀方式對(duì)公共存儲(chǔ)器SDRAM的存取的過(guò)程。橫向代表時(shí)間。圖中的縱向代表涉及的不同功能部件。圖中含有箭頭。這些箭頭代表在對(duì)接口存儲(chǔ)器SRRAM的存取的過(guò)程中的各種步驟S。
S1=有關(guān)單元B的處理器P向通用尋址電路AGA提交邏輯請(qǐng)求LRQ。該邏輯請(qǐng)求規(guī)定一個(gè)數(shù)據(jù)子集,例如待處理數(shù)據(jù)的集合(例如圖象)中某行的亮度像素(luminance pixels)。
S2=通用尋址電路AGA將邏輯請(qǐng)求LRQ轉(zhuǎn)換成物理請(qǐng)求PRQ。
S3=通用尋址電路AGA向宏命令尋址電路AGB提交物理請(qǐng)求PRQ。
S4=宏命令尋址電路AGB將物理請(qǐng)求PRQ轉(zhuǎn)換成宏命令S5=宏命令尋址電路AGB將從物理請(qǐng)求PRQ導(dǎo)出的第一個(gè)宏命令提交給緩沖存儲(chǔ)器BUF。
S6=緩沖存儲(chǔ)器BUF檢驗(yàn)是否有足夠的空間用于存儲(chǔ)由宏命令所定義的數(shù)據(jù)的數(shù)量。
S7=緩沖存儲(chǔ)器BUF向宏命令尋址電路AGB發(fā)送表示有空間的應(yīng)答。
S8=代表一定的延遲。
S9=宏命令尋址電路AGB將宏命令提交給仲裁器ARB。
S10=仲裁器ARB按照適用于任何由單元(以讀方式和寫方式)進(jìn)行的對(duì)公共存儲(chǔ)器SDRAM的存取的仲裁方案來(lái)處理請(qǐng)求存取公共存儲(chǔ)器SDRAM的宏命令。
S11=仲裁器ARB將宏命令提交給存取接口SIF。
S11a=仲裁器ARB向緩沖存儲(chǔ)器BUF發(fā)送表示已經(jīng)將宏命令提交給存取接口SIF的應(yīng)答。
S12=宏命令在存取接口SIF中排隊(duì),存取接口SIF先處理以前收到的宏命令。
S13=存取接口SIF根據(jù)該宏命令為公共存儲(chǔ)器SDRAM生成控制信號(hào)。這些控制信號(hào)導(dǎo)致位于由宏命令指定地址的數(shù)據(jù)被連續(xù)讀出。
S14=從公共存儲(chǔ)器SDRAM連續(xù)讀出的數(shù)據(jù)被傳送到緩沖存儲(chǔ)器BUF。
S15=緩沖存儲(chǔ)器BUF暫時(shí)存儲(chǔ)數(shù)據(jù)。
S16=緩沖存儲(chǔ)器BUF以基本穩(wěn)定的方式將數(shù)據(jù)傳送到處理器P。
對(duì)于步驟S1中提出的邏輯請(qǐng)求以后的每個(gè)宏命令,重復(fù)步驟S5-S15。
下一步在圖5中沒有表示。在執(zhí)行步驟S1時(shí),通用尋址電路AGA向處理器P發(fā)送一個(gè)應(yīng)答信號(hào),該信號(hào)指出邏輯請(qǐng)求LRQ已經(jīng)被接受,將要被處理。處理器P響應(yīng)該應(yīng)答信號(hào),提出新的邏輯請(qǐng)求并保持它,直到進(jìn)一步通知。當(dāng)宏命令尋址電路AGB應(yīng)邏輯請(qǐng)求LRQ提交最后一個(gè)宏命令時(shí),邏輯請(qǐng)求LRQ的處理就結(jié)束。在這種情況下宏命令尋址電路AGB向通用尋址電路AGA發(fā)送一個(gè)應(yīng)答,向后者指出對(duì)邏輯請(qǐng)求LRQ的處理已經(jīng)完成。據(jù)此,通用尋址電路AGA以與步驟1中啟動(dòng)的對(duì)邏輯請(qǐng)求LRQ的處理的類似方式開始處理新的邏輯請(qǐng)求LRQ。換言之,重復(fù)該過(guò)程。
圖6a和6b表示仲裁器ARB的一個(gè)仲裁方案。圖6a中以圓圈的形式表示8個(gè)狀態(tài)ST1-ST8。這些狀態(tài)ST以循環(huán)的方式一個(gè)接著另一個(gè)發(fā)生。每個(gè)狀態(tài)ST代表向存取接口發(fā)送宏命令的一個(gè)可能。所以,每個(gè)狀態(tài)代表訪問存儲(chǔ)器的一個(gè)可能。每個(gè)狀態(tài)對(duì)應(yīng)于一定的處理器P。某狀態(tài)對(duì)應(yīng)的處理器P在代表該狀態(tài)的圓圈中確定。
圖6b表示與圖6a對(duì)應(yīng)的仲裁過(guò)程。這個(gè)過(guò)程包含多個(gè)步驟SA1-SA4,對(duì)圖6a中的每個(gè)狀態(tài)而執(zhí)行。步驟SA1是狀態(tài)跳轉(zhuǎn)之后執(zhí)行的第一個(gè)步驟。在步驟SA1中,仲裁器ARB查驗(yàn)是否有由宏命令尋址電路AGB提交的、緊接著來(lái)自狀態(tài)S[i]對(duì)應(yīng)的處理器P[j]的邏輯請(qǐng)求LRQ的宏命令在等待執(zhí)行。如果有這種宏命令在等待執(zhí)行,則在步驟SA1后進(jìn)行步驟SA2。在步驟SA2中,仲裁器ARB將有關(guān)宏命令發(fā)送給存取接口SIF。這個(gè)步驟的作用是,在一定的延遲后,公共存儲(chǔ)器SDRAM將被該宏命令所確定的有關(guān)處理器P存取。在宏命令已經(jīng)被發(fā)送后,仲裁器跳轉(zhuǎn)到下一個(gè)狀態(tài),這意味著重復(fù)圖6b中所表示的過(guò)程。然而,如果在步驟SA1中仲裁器ARB檢測(cè)到?jīng)]有與狀態(tài)S[i]對(duì)應(yīng)的處理器P相關(guān)的等待執(zhí)行的宏命令,則在步驟SA1后進(jìn)行步驟SA3。在步驟SA3中,仲裁器ARB檢驗(yàn)是否有其它宏命令在等待。如果沒有其它宏命令在等待,仲裁器ARB就跳轉(zhuǎn)到下一個(gè)狀態(tài),重復(fù)圖6b中所表示的過(guò)程。如果有其它宏命令在等待,仲裁器ARB就執(zhí)行步驟SA4,在步驟SA4中,仲裁器ARB按優(yōu)先順序選擇一個(gè)宏命令。每個(gè)宏命令都有一定的優(yōu)先級(jí)。優(yōu)先級(jí)是由該宏命令來(lái)自的處理器P確定的。仲裁器ARB于是選擇具有最高優(yōu)先級(jí)的宏命令并將這個(gè)宏命令發(fā)送給存取接口SIF。發(fā)送宏命令后,ARB跳轉(zhuǎn)到下一個(gè)狀態(tài),這意味著重復(fù)圖6b中所表示的過(guò)程。
關(guān)于圖6a和6b要注意的是,沒有必要每個(gè)狀態(tài)對(duì)應(yīng)一個(gè)處理器P。引入一個(gè)或多個(gè)不與任何處理器P對(duì)應(yīng)的狀態(tài)是可能的,這意味著引入自由狀態(tài)是可能的。就自由狀態(tài)的情況來(lái)說(shuō),仲裁器ARB僅僅根據(jù)優(yōu)先級(jí)順序來(lái)選擇宏命令。在信號(hào)處理設(shè)備包含一個(gè)在存取公共存儲(chǔ)器SDRAM的層次上對(duì)延遲時(shí)間和傳送頻帶(pass band)的約束比較適中的處理器P的情況中,這種自由狀態(tài)可以是有用的。所以,為了避免這種處理器P不被賦予足夠的訪問權(quán)(access),可以引入自由狀態(tài)。處理器P利用這些自由狀態(tài)來(lái)訪問公共存儲(chǔ)器SDRAM。
圖7表示一例存取接口SIF。存取接口SIF包含宏命令緩沖存儲(chǔ)器FIFO MC、列發(fā)生器CAGU、命令發(fā)生器CGU、控制信號(hào)發(fā)生器IF_SDRAM、數(shù)據(jù)緩沖存儲(chǔ)器IF_D。
存取接口SIF一般操作如下。宏命令緩沖存儲(chǔ)器FIFO_MC從仲裁器ARB接收宏命令。該存儲(chǔ)器暫時(shí)存儲(chǔ)這些宏命令并按它們的到達(dá)順序?qū)⑺鼈儼l(fā)送給列發(fā)生器CAGU。如果宏命令緩沖存儲(chǔ)器FIFO_MC已滿,因此不能接受新的宏命令,它就向仲裁器ARB報(bào)告這個(gè)情況。由于來(lái)自存取接口SIF的這個(gè)指出其“FIFO已滿”的信號(hào),仲裁器ARB就推遲傳送當(dāng)前選擇的宏命令,直到宏命令緩沖存儲(chǔ)器FIFO_MC報(bào)告它能接受新的宏命令。實(shí)際上,來(lái)自存取接口SIF的“FIFO已滿”的信號(hào)“凍結(jié)”仲裁器ARB一定的時(shí)間。
列發(fā)生器CAGU在根據(jù)前一個(gè)宏命令進(jìn)行的存儲(chǔ)器存取操作已經(jīng)被執(zhí)行后從宏命令緩沖存儲(chǔ)器FIFO_MC請(qǐng)求一個(gè)新的宏命令。事實(shí)上,列發(fā)生器CAGU配合命令發(fā)生器CGU將宏命令翻譯成一系列地址。公共存儲(chǔ)器SDRAM的地址是由公共存儲(chǔ)器SDRAM的存儲(chǔ)體號(hào)、行號(hào)和列號(hào)定義的。本文已經(jīng)指出宏命令涉及對(duì)接口存儲(chǔ)器SRAM的單一行的存取,這自然意味著存取發(fā)生在單一的存儲(chǔ)體中。因此,為根據(jù)宏命令而定義一系列地址,列發(fā)生器CAGU根據(jù)宏命令生成一系列的列就足夠了。列發(fā)生器CAGU的一個(gè)實(shí)現(xiàn)例如可包含一些計(jì)數(shù)器和一些邏輯電路。在這種實(shí)現(xiàn)中,宏命令的內(nèi)容的作用是編程設(shè)置各計(jì)數(shù)器。
命令發(fā)生器CGU連續(xù)接收公共存儲(chǔ)器SDRAM的另一個(gè)列號(hào)。命令發(fā)生器CGU另外從宏命令緩沖存儲(chǔ)器FIFO_MC接收由宏命令所定義的存儲(chǔ)體號(hào)和行號(hào)。該信息使列發(fā)生器CAGU能定義一系列用于存取公共存儲(chǔ)器SDRAM的命令,其中每個(gè)命令定義一個(gè)地址。此外,命令發(fā)生器CGU還生成將公共存儲(chǔ)器SDRAM設(shè)置成允許宏命令所定義的存取操作的正確狀態(tài)而必需的命令。這些命令涉及公共存儲(chǔ)器SDRAM的適當(dāng)過(guò)程,諸如預(yù)加載和啟動(dòng)。此外,命令發(fā)生器CGU還確保公共存儲(chǔ)器SDRAM每隔一定時(shí)間就被刷新并生成進(jìn)行這種刷新操作所必需的命令。
控制信號(hào)發(fā)生器IF_SDRAM根據(jù)從命令發(fā)生器CGU接收的命令生成控制信號(hào)。例如,控制信號(hào)發(fā)生器成IF_SDRAM生成縮寫名為RAS、CAS的信號(hào)。控制信號(hào)發(fā)生器IF_SDRAM保證,在一系列控制信號(hào)中,遵守公共存儲(chǔ)器SDRAM的一定等待時(shí)間。這些等待時(shí)間可能因所使用SDRAM的類型而不同。所以,控制信號(hào)發(fā)生器IF_SDRAM是特定于所使用的公共存儲(chǔ)器SDRAM的類型的。如果要使用另一種類型的公共存儲(chǔ)器SDRAM,只要修改-即重新編程設(shè)置-控制信號(hào)發(fā)生器IF_SDRAM就足夠了。原則上,存取接口的其它部件不需要作任何修改。
數(shù)據(jù)緩沖存儲(chǔ)器IF_D的作用,就讀數(shù)據(jù)而言,是從公共存儲(chǔ)器SDRAM向如圖4所示的緩沖存儲(chǔ)器傳送數(shù)據(jù);就寫數(shù)據(jù)而言,是從緩沖存儲(chǔ)器BUF向公共存儲(chǔ)器SDRAM傳送數(shù)據(jù)。為此,數(shù)據(jù)緩沖存儲(chǔ)器IF_D將公共存儲(chǔ)器SDRAM提供的數(shù)據(jù)(讀)或向公共存儲(chǔ)器SDRAM的施加的數(shù)據(jù)(寫)同步。此外,數(shù)據(jù)緩沖存儲(chǔ)器IF_D構(gòu)成了一個(gè)具有單位深度的FIFO。這意味著,如果一定的時(shí)鐘脈沖導(dǎo)致從公共存儲(chǔ)器SDRAM讀取數(shù)據(jù),該數(shù)據(jù)將在下一個(gè)時(shí)鐘脈沖被傳送到緩沖存儲(chǔ)器BUF。就寫操作而言,次序相反。
圖8表示構(gòu)成圖4中所示存儲(chǔ)器接口INT的一部分的緩沖存儲(chǔ)器BUF的例子。緩沖存儲(chǔ)器BUF包含讀緩沖存儲(chǔ)器BUFR及寫緩沖存儲(chǔ)器BUFW和應(yīng)答信號(hào)緩沖存儲(chǔ)器FIFO_ACK。如圖1中所示,讀緩沖存儲(chǔ)器BUFR和寫緩沖存儲(chǔ)器BUFW通過(guò)存取接口SIF和公共總線BM與公共存儲(chǔ)器SDRAM相連。讀緩沖存儲(chǔ)器BUFR分別通過(guò)專用讀總線BBR1、BBR2和BBR3與單元B1、B2和B3相連。寫緩沖存儲(chǔ)器BUFW分別通過(guò)專用寫總線BBW1、BBW2和BBW3與單元B1、B2和B3相連。應(yīng)答信號(hào)緩沖存儲(chǔ)器FIFO_ACK與仲裁器ARB相連。
緩沖存儲(chǔ)器BUF的一般操作如下。讀緩沖存儲(chǔ)器BUFR暫時(shí)存儲(chǔ)從公共存儲(chǔ)器SDRAM接收的數(shù)據(jù),而寫緩沖存儲(chǔ)器BUFW則存儲(chǔ)從不同單元B接收的、要被寫入公共存儲(chǔ)器SDRAM的數(shù)據(jù)。應(yīng)答信號(hào)緩沖存儲(chǔ)器FIFO_ACK接收來(lái)自仲裁器ARB的應(yīng)答信號(hào),這種應(yīng)答信號(hào)指出仲裁器已經(jīng)將宏命令施加到存取接口INF。
應(yīng)答信號(hào)緩沖存儲(chǔ)器FIFO_ACK與圖7中所示的存取接口SIF的宏命令緩沖存儲(chǔ)器FIFO_MC有相同的深度。所以,當(dāng)宏命令離開宏命令緩沖存儲(chǔ)器FIFO_MC時(shí),其結(jié)果是,按照宏命令啟動(dòng)存儲(chǔ)器訪問,對(duì)應(yīng)這個(gè)宏命令的應(yīng)答信號(hào)離開應(yīng)答信號(hào)緩沖存儲(chǔ)器FIFO_ACK。該信號(hào)指示有關(guān)存取操作是讀訪問還是寫訪問。在前一種情況中,讀緩沖存儲(chǔ)器BUFR被激活,以便接收來(lái)自公共存儲(chǔ)器SDRAM的數(shù)據(jù),而在后一種情況中,寫緩沖存儲(chǔ)器BUFW被激活,以便向公共存儲(chǔ)器SDRAM發(fā)送數(shù)據(jù)。由應(yīng)答信號(hào)緩沖存儲(chǔ)器FIFO_ACK提供的應(yīng)答信號(hào)進(jìn)一步指示宏命令所定義的、存取操作中涉及的數(shù)據(jù)的數(shù)量。該指示由緩沖存儲(chǔ)器BUF分別在讀或?qū)懙那闆r中用于“在哪里存儲(chǔ)數(shù)據(jù)或從哪里提取數(shù)據(jù)“的內(nèi)部管理。
圖9表示一例讀緩沖存儲(chǔ)器BUFR。讀緩沖存儲(chǔ)器BUFR包含一個(gè)輸入緩沖存儲(chǔ)器IB、一個(gè)接口存儲(chǔ)器SRAM、一個(gè)包含多個(gè)輸出緩沖存儲(chǔ)器OB的裝置,一個(gè)控制電路CON的裝置,以及一個(gè)接口存儲(chǔ)器存取仲裁器ARBBR。輸入緩沖存儲(chǔ)器IB通過(guò)已經(jīng)在圖4中表示過(guò)的存取接口SIF與公共存儲(chǔ)器SDRAM相連。輸出緩沖存儲(chǔ)器OB1、OB2和OB3分別通過(guò)專用讀總線BBR1、BBR2和BBR3與處理器P1、P2和P3相連,其中各專用讀總線在圖2和3中表示??刂齐娐稢ON1、CON2和CON3分別連接到宏命令尋址電路AGB1、宏命令尋址電路AGB2和宏命令尋址電路AGB3,也連接到存取接口SIF。
讀緩沖存儲(chǔ)器BUFR以如下方式操作。從公共存儲(chǔ)器SDRAM接收的數(shù)據(jù)寬度為N位(N是整數(shù)),以頻率F到達(dá)。接口存儲(chǔ)器SRAM的寬度為2N位(這意味著一個(gè)地址可含有2N個(gè)位)并以頻率F操作。輸入緩沖存儲(chǔ)器IB將來(lái)自公共存儲(chǔ)器SDRAM的數(shù)據(jù)組成一對(duì)對(duì)的兩個(gè)連續(xù)數(shù)據(jù),然后這些數(shù)據(jù)對(duì)裝入接口存儲(chǔ)器SRAM。組成一對(duì)要花費(fèi)兩個(gè)時(shí)鐘周期。如果假設(shè)能將從公共存儲(chǔ)器SDRAM接收的所有連續(xù)數(shù)據(jù)組成數(shù)據(jù)對(duì),則每?jī)蓚€(gè)時(shí)鐘周期啟動(dòng)一次對(duì)接口存儲(chǔ)器SRAM的寫訪問。訪問一個(gè)地址只要求一個(gè)時(shí)鐘周期。所以,在兩個(gè)寫訪問操作之間有一個(gè)時(shí)鐘周期可用來(lái)訪問接口存儲(chǔ)器SRAM,進(jìn)行讀數(shù)據(jù),以便將從公共存儲(chǔ)器SDRAM讀取的數(shù)據(jù)傳送到單元B。所以,原則上,對(duì)接口存儲(chǔ)器SRAM的寫訪問和讀訪問可以交替地、一個(gè)接著另一個(gè)地啟動(dòng)。以下將更詳細(xì)地說(shuō)明對(duì)接口存儲(chǔ)器SRAM的存取。
接口存儲(chǔ)器SRAM實(shí)際上被劃分成三個(gè)存儲(chǔ)區(qū)Z1、Z2和Z3。存儲(chǔ)區(qū)Z1、Z2和Z3分別含有要用于處理器P1、P2和P3的數(shù)據(jù)。來(lái)自公共存儲(chǔ)器SDRAM的數(shù)據(jù),是根據(jù)發(fā)生當(dāng)前宏命令的處理器P而通過(guò)IB被寫入存儲(chǔ)區(qū)Z1、Z2或Z3的。存儲(chǔ)區(qū)Z1、Z2和Z3中出現(xiàn)的數(shù)據(jù)是以基本穩(wěn)定的方式和按照基本固定的方案分別被傳送到輸出緩沖存儲(chǔ)器OB1、OB2和OB3的。輸出緩沖存儲(chǔ)器OB實(shí)際上將數(shù)據(jù)分離成若干部分并一部分一部分地將有關(guān)數(shù)據(jù)施加到相應(yīng)的處理器P。例如,輸出緩沖存儲(chǔ)器OB可以將16位的數(shù)據(jù)分離成4位的各部分。這樣,就不用在一個(gè)時(shí)鐘周期傳送該數(shù)據(jù)(這需要16位的總線),而是在4個(gè)時(shí)鐘周期中一部分一部分地傳送該數(shù)據(jù),這只需要4位的總線。
控制電路CON1、CON2和CON3分別控制存儲(chǔ)區(qū)Z1、Z2和Z3。為此每個(gè)控制電路CON控制一組參數(shù)。這些參數(shù)包括一個(gè)寫指針、一個(gè)讀指針和一個(gè)存儲(chǔ)區(qū)占用值(occupancy value)。寫指針定義來(lái)自公共存儲(chǔ)器SDRAM的數(shù)據(jù)要被寫入的地址。讀指針定義要向有關(guān)輸出緩沖存儲(chǔ)器OB傳送的數(shù)據(jù)的地址。占用值指示仍然可用于存儲(chǔ)從公共存儲(chǔ)器SDRAM接收的數(shù)據(jù)的地址的數(shù)量??刂齐娐稢ON1、CON2和CON3分別控制輸出緩沖存儲(chǔ)器OB1、OB2和OB3。為此,每個(gè)控制電路CON控制一個(gè)表示相應(yīng)輸出緩沖存儲(chǔ)器OB的占用狀態(tài)的參數(shù)。
現(xiàn)在將說(shuō)明由控制電路CON進(jìn)行的控制過(guò)程-假設(shè)公共存儲(chǔ)器SDRAM是以圖5所示的方式被訪問的。在步驟S5中,宏命令尋址電路AGB向緩沖存儲(chǔ)器BUF提交宏命令。該宏命令被對(duì)應(yīng)于發(fā)生該宏命令的處理器P的控制電路CON處理??刂齐娐稢ON將宏命令所定義的數(shù)據(jù)的數(shù)目與占用值作比較。這樣,控制電路CON查驗(yàn)有關(guān)存儲(chǔ)區(qū)Z中是否有足夠的空間用于存儲(chǔ)所需的數(shù)據(jù)。如果有足夠的空間,控制電路CON就將這個(gè)情況報(bào)告給宏命令尋址電路AGB,此外還更新占用參數(shù)。這意味著,它將該數(shù)據(jù)視為已經(jīng)存儲(chǔ)在有關(guān)存儲(chǔ)區(qū)-盡管數(shù)據(jù)尚待存入。所以,可以將對(duì)占用參數(shù)的更新看作是在相關(guān)存儲(chǔ)區(qū)中的預(yù)定。
現(xiàn)在將描述在圖5中所示的步驟S12期間發(fā)生什么事情。步驟S12代表按照有關(guān)宏命令進(jìn)行公共存儲(chǔ)器SDRAM的讀出。已經(jīng)解釋過(guò),在存取接口SIF開始處理宏命令并因此啟動(dòng)該讀出的時(shí)刻,該有關(guān)宏命令相關(guān)的應(yīng)答信號(hào)離開圖7中所示的應(yīng)答信號(hào)緩沖存儲(chǔ)器FIFO_ACK。該應(yīng)答信號(hào)指出該訪問是個(gè)寫操作,此外,該信號(hào)還指明宏命令來(lái)自的處理器P。這樣,與該處理器P相應(yīng)的控制電路CON就知道它應(yīng)當(dāng)提供數(shù)據(jù)應(yīng)當(dāng)在公共存儲(chǔ)器SDRAM中存儲(chǔ)的位置的地址。此外,控制電路CON還接收關(guān)于根據(jù)該宏命令在該存取操作中涉及的數(shù)據(jù)的數(shù)量的標(biāo)志,該標(biāo)志構(gòu)成應(yīng)答信號(hào)的一部分。
來(lái)自公共存儲(chǔ)器SDRAM的一個(gè)數(shù)據(jù)對(duì)每次被寫入有關(guān)存儲(chǔ)區(qū)Z時(shí),控制電路CON就遞增寫指針。此外,它還更新占用值??刂齐娐稢ON繼續(xù)這樣的操作,一直到由宏命令所定義的對(duì)公共存儲(chǔ)器SDRAM的讀訪問已經(jīng)完成??刂齐娐稢ON借助存取操作中所涉及數(shù)據(jù)的數(shù)量(該數(shù)量由應(yīng)答信號(hào)指示)和對(duì)寫入接口存儲(chǔ)器SRAM的數(shù)據(jù)的計(jì)數(shù)來(lái)檢測(cè)存取操作的完成。
每從一定的存儲(chǔ)區(qū)Z讀出一個(gè)數(shù)據(jù)對(duì)后,控制該存儲(chǔ)區(qū)的控制電路CON就遞增讀指針。此外,它還更新占用值。
接口存儲(chǔ)器存取仲裁器ARBBR控制對(duì)接口存儲(chǔ)器SRAM的存取。有不同存取類型(1)由存取接口SIF將來(lái)自公共存儲(chǔ)器SDRAM的數(shù)據(jù)寫入接口存儲(chǔ)器SRAM的存取,(2)由輸出緩沖存儲(chǔ)器OB1進(jìn)行的存取操作,(3)由輸出緩沖存儲(chǔ)器OB2進(jìn)行的存取操作,(4)由輸出緩沖存儲(chǔ)器OB3進(jìn)行的存取操作。后三種存取操作的作用分別將接口存儲(chǔ)器SRAM中含有的數(shù)據(jù)傳送到處理器P1、P2和P3。
任何對(duì)接口存儲(chǔ)器SRAM的存取,都是響應(yīng)向接口存儲(chǔ)器存取仲裁器ARBBR提交的請(qǐng)求而啟動(dòng)的。接口存儲(chǔ)器存取仲裁器ARBBR從當(dāng)前的各請(qǐng)求中選擇具有最高優(yōu)先級(jí)的請(qǐng)求。寫訪問請(qǐng)求(通過(guò)存取接口SIF的訪問)具有最高的優(yōu)先級(jí)。由于數(shù)據(jù)是成對(duì)被寫的,所以-正如前文所解釋的那樣,這種請(qǐng)求一般每?jī)蓚€(gè)時(shí)鐘周期只發(fā)生一次。寫操作只需要一個(gè)時(shí)鐘周期。因此在讀方式中將足夠的機(jī)會(huì)來(lái)訪問接口存儲(chǔ)器SRAM,以便向各種處理器P傳送數(shù)據(jù)。
讀訪問請(qǐng)求是由一定的輸出緩沖存儲(chǔ)器OB視輸出緩沖存儲(chǔ)器OB與單元B之間的專用讀總線的大小情況而作出的。例如假設(shè)總線的大小是N/2位。這意味著在每個(gè)時(shí)鐘周期能從輸出緩沖存儲(chǔ)器OB向單元B傳送N/2位的部分。接口存儲(chǔ)器SRAM的讀是按數(shù)據(jù)對(duì)進(jìn)行的。一個(gè)數(shù)據(jù)對(duì)包含2N個(gè)位。因此,要向單元B發(fā)送一個(gè)數(shù)據(jù)對(duì)就需要4個(gè)時(shí)鐘周期。傳送一個(gè)數(shù)據(jù)對(duì)涉及以讀方式訪問接口存儲(chǔ)器SRAM的請(qǐng)求。所以在本例中,輸出緩沖存儲(chǔ)器OB將每四個(gè)時(shí)鐘周期提交一個(gè)訪問請(qǐng)求。本例說(shuō)明,與單元B相連的總線的大小,決定了各種輸出緩沖存儲(chǔ)器OB的訪問請(qǐng)求的頻率。如果專用讀總線BBR是N/4位的,將每隔8個(gè)時(shí)鐘周期有一個(gè)訪問請(qǐng)求。
以下說(shuō)明涉及一例對(duì)訪問接口存儲(chǔ)器SRAM的仲裁。假設(shè)專用讀總線BBR1的大小是N/2位的,專用讀總線BBR2和專用讀總線BBR3的大小是N/4位的。存取接口SIF的存取操作具有最高優(yōu)先級(jí),按照優(yōu)先級(jí)的順序,接著依次為輸出緩沖存儲(chǔ)器OB1、OB2和OB3的存取操作。最后,假設(shè)所有類型的存取(SIF、OB1、OB2、OB3)的請(qǐng)求都是在第一時(shí)鐘周期同時(shí)提交的。
周期1所有請(qǐng)求同時(shí)被提出;等待處理的請(qǐng)求存取接口SIF、輸出緩沖存儲(chǔ)器OB1、OB2和OB3。
周期2具有最高優(yōu)先級(jí)的接口存取SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB1、OB2和OB3維持它們的請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB1、OB2和OB3。
周期3具有第二最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB1在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF、輸出緩沖存儲(chǔ)器OB2和OB3。
周期4具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB2和OB3維持它們的請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB2和OB3。
周期5具有第三最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB2在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF和輸出緩沖存儲(chǔ)器OB3。
周期6具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB1用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求存取接口SIF、輸出緩沖存儲(chǔ)器OB1和OB3。
周期7具有第二最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB1在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF、輸出緩沖存儲(chǔ)器OB3。
周期8具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB3維持其請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB3。
周期9具有第四最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB3在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期10具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB1用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB1。
周期11具有第二最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB1在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期12具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB2用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB2。
周期13具有第三最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB2在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期14具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB1用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB1。
周期15具有第二最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB1在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期16具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB3用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB3。
周期17具有第四最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB3在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期18具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB1用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB1。
周期19具有第二最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB1在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期20具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB2用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB2。
周期21具有第三最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB2在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期22具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB1用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB1。
周期23具有第二最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB1在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口SIF。
周期24具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB3用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB3。
周期25具有第四最高優(yōu)先級(jí)的輸出緩沖存儲(chǔ)器OB3在首位,于是投入其請(qǐng)求;存取接口SIF提交新請(qǐng)求;等待處理的請(qǐng)求存取接口STF。
周期26具有最高優(yōu)先級(jí)的存取接口SIF在首位,于是投入其請(qǐng)求;輸出緩沖存儲(chǔ)器OB1用光緩沖器的容量,于是再次提出請(qǐng)求;等待處理的請(qǐng)求輸出緩沖存儲(chǔ)器OB1。
如此等等。
以上所述的存取操作具有8個(gè)時(shí)鐘周期的周期性。仲裁就像是由一個(gè)有8個(gè)狀態(tài)的循環(huán)機(jī)(cyclic machine)進(jìn)行的一樣。這是由于在本例中假設(shè)所有單元B都按一定規(guī)律處理它們的數(shù)據(jù)。
此外,還假設(shè)由存取接口SIF進(jìn)行的存取請(qǐng)求是有規(guī)律地每隔兩個(gè)時(shí)鐘周期提交一次的。實(shí)際中,這些假設(shè)未必正確。由于這個(gè)原因,借助仲裁器并按優(yōu)先級(jí)順序而不是借助循環(huán)機(jī)來(lái)控制對(duì)接口存儲(chǔ)器SRAM的訪問,是可取的。仲裁器對(duì)于對(duì)接口存儲(chǔ)器SRAM的訪問有一定程度的靈活性,因此它便于更好地利用可用帶寬來(lái)進(jìn)行數(shù)據(jù)傳送。
下面是規(guī)則的一個(gè)例外的例子,這個(gè)例外是,每?jī)蓚€(gè)時(shí)鐘周期只有一個(gè)對(duì)接口存儲(chǔ)器SRAM的寫訪問(=由存取接口SIF進(jìn)行的訪問)。當(dāng)根據(jù)涉及奇數(shù)個(gè)數(shù)據(jù)的宏命令對(duì)公共存儲(chǔ)器SDRAM進(jìn)行存取時(shí),這個(gè)例外發(fā)生。這種存取中所涉及的所有數(shù)據(jù),除最后一個(gè)數(shù)據(jù)單元外,都有一個(gè)相配的數(shù)據(jù)單元并由此形成要被寫入接口存儲(chǔ)器SRAM的數(shù)據(jù)對(duì)。最后一個(gè)數(shù)據(jù)單元沒有相配的數(shù)據(jù)單元。不可能用下一個(gè)數(shù)據(jù)單元來(lái)構(gòu)成數(shù)據(jù)對(duì),這是因?yàn)?,下一個(gè)數(shù)據(jù)單元是另一個(gè)存取操作的第一個(gè)數(shù)據(jù)單元,因此是要用于另一個(gè)處理器P的。所以應(yīng)當(dāng)將另一個(gè)存取操作的第一個(gè)數(shù)據(jù)單元存儲(chǔ)在接口存儲(chǔ)器SRAM的另一個(gè)存儲(chǔ)區(qū)中。這樣,當(dāng)涉及奇數(shù)個(gè)數(shù)據(jù)單元的訪問的最后一個(gè)數(shù)據(jù)單元到達(dá)IB中時(shí),該數(shù)據(jù)在緊接對(duì)該存取操作中所包含的最后的數(shù)據(jù)對(duì)的寫操作之后的一個(gè)時(shí)鐘周期中被裝入接口存儲(chǔ)器SRAM,而沒有與之相配的數(shù)據(jù)單元。所以,將會(huì)有不中斷一個(gè)時(shí)鐘周期的連續(xù)兩個(gè)寫訪問操作,這一個(gè)時(shí)鐘周期否則會(huì)使得能在兩個(gè)寫訪問操作之間進(jìn)行一次讀訪問。
圖5和9涉及存儲(chǔ)器接口INT在讀方式中的操作。寫方式中的操作基本上是對(duì)稱的。這意味著寫緩沖存儲(chǔ)器BUFW是與以上所述的讀緩沖存儲(chǔ)器BUFR類似的。所以,寫緩沖存儲(chǔ)器BUFW包含一個(gè)被劃分成各存儲(chǔ)區(qū)的接口存儲(chǔ)器,每個(gè)存儲(chǔ)區(qū)與不同的單元B相關(guān)聯(lián)。各單元B能在指示應(yīng)當(dāng)在何處存儲(chǔ)這一數(shù)據(jù)的宏命令之前或之后提供要被寫入公共存儲(chǔ)器的數(shù)據(jù)。實(shí)際上,存儲(chǔ)區(qū)的對(duì)應(yīng)單元B一提供要在公共存儲(chǔ)器中存儲(chǔ)的數(shù)據(jù),該存儲(chǔ)區(qū)就將被填入數(shù)據(jù)。這種填入例如會(huì)一直繼續(xù)到存儲(chǔ)區(qū)完全充滿數(shù)據(jù)。在這種情況下,存儲(chǔ)器接口INT將向有關(guān)單元B指出不再有任何空間用于存儲(chǔ)新的數(shù)據(jù)。這將阻止單元B提供新的數(shù)據(jù),直到有關(guān)存儲(chǔ)區(qū)中開始有空間可用。從存儲(chǔ)區(qū)Z向公共存儲(chǔ)器的數(shù)據(jù)傳送,導(dǎo)致騰出可用的空間。只有當(dāng)宏命令被仲裁器ARB接收并被存取接口SIF,這種轉(zhuǎn)儲(chǔ)就可能立即發(fā)生。同樣也可能在有關(guān)單元B提供該數(shù)據(jù)之前就發(fā)出宏命令。在任何情況下,只要寫緩沖存儲(chǔ)器BUFW不指出有關(guān)存儲(chǔ)區(qū)的足夠填充水平,就不向仲裁器ARB施加宏命令。
圖10表示如“發(fā)明綜述”一節(jié)中所概括的本發(fā)明的基本特點(diǎn)。處理器P生成邏輯請(qǐng)求LRQ。邏輯請(qǐng)求LRQ定義一組數(shù)據(jù)FRP的至少一個(gè)公共特征CAR。尋址電路AGA根據(jù)邏輯請(qǐng)求LRQ生成物理請(qǐng)求PRQ。物理請(qǐng)求PRQ定義與數(shù)據(jù)組GRP相關(guān)的、存儲(chǔ)器MEM的地址A。存儲(chǔ)器接口INT應(yīng)物理請(qǐng)求PRQ而啟動(dòng)在存儲(chǔ)器MEM與處理器P之間對(duì)數(shù)據(jù)組GRP的傳送TRNSFR。
圖10中所示的特點(diǎn)可用于例如視頻處理設(shè)備中。在這種情況下,邏輯請(qǐng)求LRQ例如可定義一行亮度像素。這種請(qǐng)求例如可以由為顯示而執(zhí)行處理操作的處理器提出。邏輯請(qǐng)求一般將被改編得適合其來(lái)自的處理器。因此邏輯請(qǐng)求具有一定的輪廓特征(profile),一個(gè)處理器與另一個(gè)處理器的這種輪廓特征差別很大。然而,有可能標(biāo)準(zhǔn)化例如一個(gè)用于交換參數(shù)(諸如行號(hào)和像素類型亮度或色度)的協(xié)議。尋址電路AGA具有的任務(wù)一般將是存儲(chǔ)存儲(chǔ)參數(shù)、存儲(chǔ)器類型、數(shù)據(jù)存儲(chǔ)開始位置的一個(gè)或多個(gè)地址。這種存儲(chǔ)可以與中央處理單元(CPU)協(xié)作實(shí)現(xiàn)。
以上附圖和它們的說(shuō)明具體解釋而不是限制了本發(fā)明。很顯然在后附的權(quán)利要求的范圍內(nèi)顯然有許多另外的形式或方案。最后,就此指出幾點(diǎn)。
各功能單位或功能可以以許多不同方式分配。對(duì)此,要注意的是,各附圖是高度示意性的,每個(gè)附圖只表示本發(fā)明的一個(gè)實(shí)施例。所以,盡管某附圖以單獨(dú)的方框的形式來(lái)表示不同的功能實(shí)體,這并不排除以一個(gè)物理實(shí)體的形式來(lái)表達(dá)若干個(gè)功能實(shí)體。
最后,在權(quán)項(xiàng)中的括號(hào)中給出的任何標(biāo)注符不應(yīng)被解釋為是對(duì)該權(quán)項(xiàng)的限制。動(dòng)詞“包含”的使用,并不排除出現(xiàn)權(quán)項(xiàng)中所定義之外的部件或步驟的存在。部件或步驟前的不定冠詞“a”的使用,并不排除出現(xiàn)若干個(gè)這些部件或步驟的存在。
權(quán)利要求
1.一種用于與存儲(chǔ)器(MEM)協(xié)作處理數(shù)據(jù)的設(shè)備,特征在于該設(shè)備包含被設(shè)置成生成定義一組數(shù)據(jù)(GRP)的至少一個(gè)公共特征(CAR)的邏輯請(qǐng)求(LRQ)的處理器(P)。根據(jù)該邏輯請(qǐng)求(LRQ)生成物理請(qǐng)求(PRQ)的尋址電路(AGA),該物理請(qǐng)求定義與數(shù)據(jù)組(GRP)相關(guān)的存儲(chǔ)器(MEM)的地址(A);根據(jù)該物理請(qǐng)求(PRQ)而啟動(dòng)在存儲(chǔ)器(MEM)與處理器(P)之間對(duì)所述數(shù)據(jù)組(GRP)的傳送(TRNSFR)的存儲(chǔ)器接口(INT)。
2.如權(quán)利要求1中所要求的設(shè)備,該設(shè)備包含若干個(gè)處理器和尋址電路,特征在于該存儲(chǔ)器接口(INT)包含用于根據(jù)物理請(qǐng)求(PRQ)生成宏命令的另外一個(gè)尋址電路(AGB),宏命令指定該存儲(chǔ)器的一部分和該部分中的與該有關(guān)數(shù)據(jù)組相關(guān)的地址;用于接收與各處理器相關(guān)的宏命令和用于按照仲裁方案逐個(gè)地選擇所述宏命令的仲裁器(ARB);用于按仲裁器所選擇的順序處理該宏命令的存取接口(SIF),被處理的宏命令建立對(duì)由該宏命令所指定的存儲(chǔ)器部分和地址的訪問。
全文摘要
與存儲(chǔ)器(MEM)協(xié)作的數(shù)據(jù)的處理,例如 MPEG解碼,具有下列特點(diǎn)。處理器(P)生成邏輯請(qǐng)求(LRQ)。邏輯請(qǐng)求(LRQ)定義一組數(shù)據(jù)(GRP)的至少一個(gè)公共特征(CAR)。尋址電路(AGA)根據(jù)邏輯請(qǐng)求(LRQ)生成物理請(qǐng)求(PRQ)。邏輯請(qǐng)求(LRQ)定義與數(shù)據(jù)組(GRP)相關(guān)的、存儲(chǔ)器(MEM)的地址(A)。存儲(chǔ)器接口(INT)根據(jù)物理請(qǐng)求(PRQ)而啟動(dòng)在存儲(chǔ)器(MEM)與處理器(P)之間對(duì)數(shù)據(jù)組(GRP)的傳送(TRNSFR)。這樣,處理器不必知道待處理或處理過(guò)的數(shù)據(jù)在存儲(chǔ)器中的存儲(chǔ)方式和位置。這就便于數(shù)據(jù)處理設(shè)備—特別是一組這種設(shè)備的設(shè)計(jì)。
文檔編號(hào)G06F13/16GK1286433SQ0012608
公開日2001年3月7日 申請(qǐng)日期2000年8月28日 優(yōu)先權(quán)日1999年8月31日
發(fā)明者H·德佩圖伊斯, T·諾維特 申請(qǐng)人:皇家菲利浦電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1