專利名稱:用存儲器尋址方案進行處理以避免在地址分散點發(fā)生延遲的虛擬級聯(lián)接收器的制作方法
技術(shù)領域:
本發(fā)明一般而言涉及數(shù)據(jù)處理,尤其涉及在數(shù)據(jù)處理過程中的存儲器使用。
背景技術(shù):
SONET/SDH是一種經(jīng)由長距離和短距離網(wǎng)絡二者光學傳輸有效負荷的公知標準。幀結(jié)構(gòu)和多任務技術(shù)適合于語音和TDM應用中之主流的恒速流量類型。虛擬級聯(lián)(virtual concatenation,VC)是一種用來以路徑級將一連續(xù)有效負荷打斷變成較小同步有效負荷包封(SPEs)的公知技術(shù)。SPEs被當成個別獨立實體經(jīng)由網(wǎng)絡發(fā)送。在接收端,這些獨立實體被集結(jié)并重組成一連續(xù)有效負荷。一虛擬級聯(lián)鏈路舉例來說得為一群STS1’s及/或STS3’s,其被排列成使其各自的SPEs之組合會形成一連續(xù)有效負荷。
與虛擬級聯(lián)有關的分割和重組要求在傳輸端及接收端兩處都有相對較復雜的邏輯電路。舉例來說,接收端必須有能力從每一SPE之路徑開銷(path overhead,POH)部分內(nèi)的H4字節(jié)信息偵測出幀之時間次序并且偵測出一幀內(nèi)之STS1s/STS3s的時間次序。為了支持一10Gb 0C192鏈路之一例如12ms的跳動(jitter),在任何時間可能會有大約100個幀突出于傳輸端與接收端之間。在公知系統(tǒng)中,接收端將幀存儲在存儲器內(nèi),且最終依相同次序從存儲器讀取這些幀且具備與這些幀原本在傳輸端發(fā)出之數(shù)據(jù)排列相同的數(shù)據(jù)排列。
一SONET系統(tǒng)中之一標準STS1單元系由9行與90列所組成。這90列當中有3列是分割-排齊開銷(section and line overhead),其并不參與路徑級級聯(lián)。剩下的9行乘87列實體是同步有效負荷包封或SPE。在傳輸端組合之一典型SONET幀可能包含192個STS1 SPEs,如圖1之STS1-1、STS1-2、...STS1-192所示。這192個SPEs之每一者通常被稱為一子列(subcolumn)。因此,圖1之幀可被視為具有192個子列,每一子列包含87列。每一子列之第一列是路徑開銷POH列。專屬于這192個子列之分割-排齊開銷的9行乘576列部分在圖1中被標視為TOH(傳輸開銷)。
比較圖1之傳輸母版實體幀與圖2之收受幀,可看出個別幀得以任何次序到達接收器。(此次序一旦建立即會在重新建立之前一直保持固定。)此外,以個別子列等級進行的公知指針處理能夠使每一個別子列相移,使得子列可橫跨2個原版實體幀。圖2所示6個子列每一者橫跨2個原版實體幀,因為每一子列“滿溢”到下個原版實體幀內(nèi)。影線部分代表來自與前一個原版實體幀有關之子列的數(shù)據(jù)。
如上所述,公知系統(tǒng)將收受幀的子列存儲在存儲器內(nèi),且最終依幀被傳輸之相同次序讀出這些幀,且每一幀之子列被依其在傳輸端封裝于幀內(nèi)的相同次序排列。儲存新進數(shù)據(jù)之一公知方式是依據(jù)下式為收到的每一字節(jié)計算一存儲器字節(jié)地址存儲器字節(jié)地址=150336×幀編號+行編號×16704+子列編號×87+列編號(方程式1)假設對于欲支持之一已知最大跳動時間來說,網(wǎng)絡內(nèi)在任何時間可有X個幀突出于傳輸端與接收端之間,則在上述存儲器字節(jié)地址計算中,幀編號從0橫跨到X-1。又在上述范例存儲器字節(jié)地址計算中,行從0橫跨到8,子列從0橫跨到191,且列從0橫跨到86。
設想一公知64兆位×32存儲器,其被組織成4個512K的庫(bank)×32,每一庫被組織成2048行乘256列乘32位。有一些公知的VC接收器使用二個此種存儲器以便提供必要的儲存容量。在此一排列中,每一庫內(nèi)的每一列保持8個字節(jié)。由于每一庫內(nèi)有256列,且利用前述存儲器字節(jié)地址計算,一行會在每2048個字節(jié)(256×8字節(jié))被穿越一次。因此,只要就相繼存儲的字節(jié)算出之相應存儲器字節(jié)地址相互間相差達2048,一行必須在庫內(nèi)被穿越。在公知DRAM架構(gòu)中,同一庫內(nèi)之任何行穿越遭致一已為人知的行穿越懲罰(row-crossing penalty),其不利地延遲進行中的數(shù)據(jù)儲存程序。因此,在DRAM之任何單一庫內(nèi),只要是將下一個字節(jié)存儲在存儲器字節(jié)地址與前一字節(jié)存儲所在存儲器字節(jié)地址相差約2048或更多之一存儲器位置,即會遭致一行穿越懲罰。
再次參照圖2,當范例行R之字節(jié)被依序地由左至右取得并寫入存儲器內(nèi),計算所得存儲器字節(jié)地址可能每87個字節(jié)、亦即在相鄰子列間之邊界處相當急遽地變化(此變化在本說明書中亦稱為“地址分散”)。更明確地說,每87個字節(jié),子列可改變多達191,行可改變多達8,且就一12ms跳動參數(shù)來說,幀編號可改變多達99。此時明顯可知在子列邊界處會有很高的可能性發(fā)生目前算出的存儲器字節(jié)地址與其前一個存儲器字節(jié)地址相差2048或更多。因此,可想見會在子列邊界之多處遭致上述行穿越延遲。
如前所述,每一子列之POH列內(nèi)的H4字節(jié)傳統(tǒng)上是被用來特有地識別該子列以及在發(fā)射器處封裝于該子列內(nèi)的幀。但是,每一H4字節(jié)被定位在此子列之第四行內(nèi),所以要在收到該H4字節(jié)(因此是收到幀之大約一半)之后方能就一已知子列之任一字節(jié)執(zhí)行上述存儲器字節(jié)地址計算。此時該H4字節(jié)可經(jīng)查驗以決定用于該存儲器字節(jié)地址計算的幀編號和子列之值。有一些公知VC接收器因此緩沖暫存(buffer)此等子列直到其H4字節(jié)變成可取得的,此時方能開始存儲器儲存作業(yè)。
有鑒于以上所述,期望以減低發(fā)生行穿越懲罰之危險并且無須在存儲數(shù)據(jù)之前先緩沖暫存該數(shù)據(jù)的方式接收及存儲虛擬級聯(lián)幀。
發(fā)明內(nèi)容
依據(jù)本發(fā)明之范例實施例,存儲器寫入地址可經(jīng)適當控制以強迫庫在發(fā)生地址分散之處進行切換。利用被指派給抵達幀和子列的任意識別符代替H4信息以計算存儲器寫入地址。
圖1示出一運用虛擬級聯(lián)技術(shù)之SONET幀的傳輸側(cè)實例。
圖2示出一圖1傳輸側(cè)幀可如何到達接收器的實例。
圖3示意地示出一依據(jù)本發(fā)明之虛擬級聯(lián)接收器的范例實施例。
圖4示意地示出一依據(jù)本發(fā)明可用于圖3存儲器接口內(nèi)之寫入地址輸入產(chǎn)生器的范例實施例。
圖5示意地示出依據(jù)本發(fā)明之范例實施例可如何利用圖4寫入地址輸入值驅(qū)動圖3存儲器接口內(nèi)之一地址計算器和存儲器控制器。
圖6示出可由圖4寫入地址輸入產(chǎn)生器進行的范例作業(yè)。
圖7示意地示出一依據(jù)本發(fā)明可用于圖3存儲器接口內(nèi)用來驅(qū)動圖5地址計算器和存儲器控制器之地址輸入控制器的范例實施例。
圖8示意地示出圖4寫入地址輸入值可如何依據(jù)本發(fā)明之范例實施例利用以強迫庫在地址分散點切換。
圖9示意地示出依據(jù)本發(fā)明之圖3存儲器接口的其它范例實施例。
具體實施例方式
本發(fā)明的范例實施例運用有一些DRAM架構(gòu)會在有關聯(lián)的行處于DRAM架構(gòu)之不同庫內(nèi)的情況許可行穿越而沒有前述懲罰。依據(jù)本發(fā)明之范例實施例,寫入地址經(jīng)適當控制以強迫一庫在發(fā)生地址分散之處(例如在子列邊界處)進行切換。再次參照圖2之行R,行R之前頭87個字節(jié)可被存儲在一第一庫內(nèi),行R之下87個字節(jié)可被存儲在一第二庫而非該第一庫內(nèi),且行R之下87個字節(jié)可被存儲在該第二庫以外之一庫內(nèi),依此類推。藉由強迫一庫在每一子列邊界處切換,本發(fā)明之范例實施例可避免原本會因為前述可能發(fā)生在子列邊界處之地址分散而發(fā)生的行穿越懲罰。
更進一步依據(jù)本發(fā)明之范例實施例,可將任意識別符指派給抵達的幀和子列,且此等任意識別符可被立即用于計算新進數(shù)據(jù)的存儲器字節(jié)地址,藉此許可新進數(shù)據(jù)被立即存儲而不需要等候?qū)嶋H識別符的中間緩沖暫存。當相關H4字節(jié)到達使得實際幀和子列識別符可用之時,使此等實際識別符與已經(jīng)指派之對應任意識別符建立關聯(lián),藉此許可從實際識別符轉(zhuǎn)譯成任意識別符然后從存儲器讀回該數(shù)據(jù)。
圖3示意地示出一依據(jù)本發(fā)明之VC接收器的范例實施例。圖3之VC接收器包含一存儲器接口31,其在33處接收來自網(wǎng)絡的新進VC幀(舉例來說參見圖2)。存儲器接口31將新進數(shù)據(jù)寫入一多庫存儲器35內(nèi),在此之后從存儲器35讀出該數(shù)據(jù)。這些存儲器寫入和讀取作業(yè)實現(xiàn)收受數(shù)據(jù)之一重組作用,致使存儲器接口31在37處提供與原始傳輸?shù)膸?舉例來說參見圖1)相同之重組幀。存儲器接口31與存儲器35之間的數(shù)據(jù)傳輸路徑在32處示意地表示,且存儲器35之控制和地址信號在34處示意地表示。多庫存儲器35舉例來說得為當有關聯(lián)的不同行位居該存儲器之相應不同庫內(nèi)時不會有一行穿越懲罰的任何公知DRAM架構(gòu)。在一些實施例中,存儲器接口31被提供在一集成電路芯片上,且多庫存儲器35被提供在芯片外離開存儲器接口31。
圖4示意地示出一可被提供在圖3存儲器接口31內(nèi)之寫入地址輸入產(chǎn)生器41的范例實施例。該寫入地址輸入產(chǎn)生器在42處接收公知可從TOH處理獲得的信息。此種公知TOH處理信息指出圖3之輸入數(shù)據(jù)總線33(例如一公知16字節(jié)總線)何時會有一新原版實體幀之開頭的數(shù)據(jù),并且指出子列之相應J1字節(jié)會在何時及何處出現(xiàn)在33處的輸入數(shù)據(jù)總線上。每一J1字節(jié)是其相關子列的第一個字節(jié)(行0,列0),且如本領域普通技術(shù)人員所知,一已知子列的所有字節(jié)可被相對于該子列之對應J1字節(jié)的已知位置予以定位及識別。
寫入地址輸入產(chǎn)生器41利用公知可得的TOH處理信息42將任意識別符指派給新進幀和子列。在一些范例實施例中,任意識別符被指派給幀和子列使得其指出該等幀和子列到達接收器的時間次序。因此,第一個到達的幀可被指派一時間幀編號1,依此類推。然后可利用在圖4中整體標示為TFRAME的每一時間幀編號計算用于存儲其相關幀之字節(jié)的存儲器字節(jié)地址。相似地,在一已知幀內(nèi),寫入地址輸入產(chǎn)生器41可將一時間子列編號0指派給第一個到達的子列,將一時間子列編號1指派給第二個到達的子列,依此類推。然后可利用在圖4中標示為TSUBCOL的每一時間子列編號計算用于存儲該特定子列之字節(jié)的存儲器字節(jié)地址。寫入地址輸入產(chǎn)生器41亦產(chǎn)生一行編號和一列編號,二者在圖4中分別標示為ROW和COL。ROW和COL的值亦被用在存儲器字節(jié)地址計算中(見方程式1)。一已知新進數(shù)據(jù)字節(jié)的ROW和COL的值得為單純地對應于該數(shù)據(jù)字節(jié)在其子列內(nèi)的行和列位置。
圖5示意地示出可用在圖3存儲器接口31內(nèi)之一地址計算器和存儲器控制器。圖4寫入地址輸入產(chǎn)生器41所產(chǎn)生的寫入地址輸入被提供給圖5之地址計算器51。地址計算器51可利用公知技術(shù)施行上述方程式1的存儲器字節(jié)地址計算。特定言之,圖4產(chǎn)生器41所產(chǎn)生的時間子列編號TSUBCOL被用在地址計算中做為子列編號,且圖4之時間幀編號TFRAME被用在地址計算中當作幀編號。圖4之ROW和COL的值被用在地址計算中做為行編號和列編號。地址計算器51把從寫入地址輸入產(chǎn)生器41收到的輸入安插到方程式1內(nèi)以在53處產(chǎn)生存儲器字節(jié)地址。此存儲器字節(jié)地址被輸入給一存儲器控制器52,該控制器可以公知方式作出反應以經(jīng)由尋址控制線34(亦見于圖3)控制多庫存儲器35之存取。
圖6示出可由圖4寫入地址輸入產(chǎn)生器41進行以產(chǎn)生圖5地址計算器51之輸入值的范例作業(yè)。在一些實施例中,COL從0增量到86并繞回0,ROW從0增量到8并繞回0,TSUBCOL從0增量到191并繞回0,且NTFRAME從0增量到99并繞回0。
在61處初始化變量之后,在62處(從TOH處理信息)判斷是否有一新的實體幀到達。若是,則在63處使目前時間幀編號TFRAME變成舊時間幀編號OTFRAME。同樣在63處,使TFRAME增量以產(chǎn)生新的時間幀編號NTFRAME,且使分別對應于子列的復數(shù)個舊/新旗標(標示為O/N)清除。此外在63處,使一計數(shù)變量“COLUMN”清除為0。此計數(shù)變量“COLUMN”系用來在實體幀之一已知行之字節(jié)被接收并存儲于存儲器內(nèi)時追蹤子列邊界。因此,變量“COLUMN”從0增量到86并繞回0。在63之后,或者是在62處未偵測到新的實體幀時,在64處判斷一J1字節(jié)是否已到達。若是,則由于J1字節(jié)位在其相關子列之行0列0,故在65處將ROW和COL的值設定為0,且設定與目前TSUBCOL值相關的舊/新旗標。若在64處判斷J1字節(jié)尚未到達,則在66處從存儲器讀取與目前TSUBCOL值相關的舊/新旗標及ROW和COL值。
整體而言,63處之所有舊/新旗標清除代表一初始假設,所有新進子列數(shù)據(jù)系與前一個(舊)幀(見圖2之影線部分)而非在62處偵測到之新幀有關聯(lián)。但是,如果在64處偵測到一J1字節(jié),則目前子列即是新幀的一部分,故在65處設定其O/N旗標做指示,且在65處清除ROW和COL以對應于J1之既定行0列0位置。如果在64處未偵測到J1字節(jié),則必須繼續(xù)進行先前中斷的目前子列處理。所以,在66處,從儲存內(nèi)容檢索目前子列的有關行和列(亦即對應于TSUBCOL之目前值)。
在已在65或66選取并執(zhí)行適當處理之后,在67處檢視舊/新旗標。若其值為0,則目前子列是前一幀的一部分,所以在68處TFRAME采用OTFRAME的值。否則,若舊/新旗標值是1,則目前子列是最新抵達的幀的一部分,所以TFRAME在69處采用NTFRAME的值。在已于68或69處決定適當TFRAME值之后,在600處輸出TSUBCOL和TFRAME(亦見于圖4)。然后在601處,使變量COL和“COLUMN”增量,且重復600和601處的作業(yè)直到“COLUMN”的值從86繞回0,如602處所示。此種“COLUMN”繞回指出在實體幀內(nèi)已經(jīng)到一子列邊界。這意味著對應于目前TSUBCOL值的舊/新旗標和ROW和COL值必須被暫時存儲(直到目前子列在幀內(nèi)是下一個會被碰到的)。因此,如果606處之COL≠0,則在604處進行存儲作業(yè)。若在606處之COL=0,則在604處的存儲作業(yè)之前在603處使ROW增量。在605處,于存儲作業(yè)604之后,使TSUBCOL增量,然后作業(yè)回到62。
在一些實施例中,如果在任何時間可有X個幀于發(fā)射器與接收器之間突出,則NTFRAME可從0增量到X-1+J且繞回0。額外的J值提供額外的時間幀識別符,其可有助于避免混淆并且可提供報告跳動違反的空間。
圖7示意地示出一依據(jù)本發(fā)明可用于存儲器接口31內(nèi)用來驅(qū)動圖5地址計算器和存儲器控制器之地址輸入控制器的范例實施例。在存儲器寫入作業(yè)期間,讀取/寫入信號R/W控制選擇器71、72和73使得圖4寫入地址輸入產(chǎn)生器41之輸出被施加至圖5地址計算器51。同樣在存儲器寫入作業(yè)期間,選擇器74受R/W信號控制使得目前正在寫入之子列之H4字節(jié)所含有的實際子列識別信息可被輸入到一翻譯器76內(nèi)。翻譯器76亦從寫入地址輸入產(chǎn)生器41接收時間子列識別符TSUBCOL,且在寫入作業(yè)期間受R/W信號控制使得來自H4字節(jié)的實際子列識別符例如在一適當查找表或其它關聯(lián)性數(shù)據(jù)結(jié)構(gòu)內(nèi)與時間子列識別符TSUBCOL建立關聯(lián)。同樣在存儲器寫入作業(yè)期間,一翻譯器77執(zhí)行來自H4字節(jié)之實際幀識別符(經(jīng)由選擇器75接收)與從寫入地址輸入產(chǎn)生器41收到的時間幀識別符TFRAME間之一類似關聯(lián)作業(yè)。因此,在存儲器寫入作業(yè)期間,翻譯器76和77維持相應數(shù)據(jù)結(jié)構(gòu),其使時間子列識別符和時間幀識別符與其由公知H4字節(jié)處理決定的對應實際子列識別符和實際幀識別符建立關聯(lián)。
在存儲器讀取作業(yè)期間,選擇器74和75受R/W信號控制使得例如由一公知讀取地址輸入產(chǎn)生器產(chǎn)生的實際子列和幀識別符被輸入至相應翻譯器76和77。響應于實際子列識別符,翻譯器76輸出對應的時間子列識別符,其經(jīng)由選擇器71送交地址計算器51。相似地,響應于實際幀識別符,翻譯器77輸出對應的時間幀識別符,其經(jīng)由選擇器72送交地址計算器51。同樣在存儲器讀取作業(yè)期間,選擇器73可向地址計算器51傳輸由一公知讀取地址輸入產(chǎn)生器產(chǎn)生的ROW和COL值。因此,圖7之排行可從一公知讀取地址輸入產(chǎn)生器接收公知會被施加至一公知VC接收器內(nèi)之圖5地址計算器51的實際子列識別符和實際幀識別符,且可將這些實際子列識別符和實際幀識別符轉(zhuǎn)譯成會由寫入地址輸入產(chǎn)生器41指派給對應子列和幀的對應時間子列識別符和時間幀識別符。依此方式,存儲器讀取作業(yè)會依公知讀取地址輸入產(chǎn)生器定義的次序產(chǎn)生幀和子列。
圖8與圖5相似,但示意地示出可如何利用由圖4寫入地址輸入產(chǎn)生器41(或是圖7翻譯器76和77)產(chǎn)生的寫入地址輸入以一會在每一子列邊界強迫發(fā)生庫切換之方式驅(qū)動公知地址計算器51。如前所述,在圖2之行R的字節(jié)被寫入存儲器內(nèi)時,可能在子列邊界發(fā)生明顯的存儲器地址分散。由于時間子列識別符TSUBCOL可直接指示出子列已被接收的次序,TSUBCOL之最低有效位能直接指出在行R內(nèi)何時到一子列邊界。以圖3之存儲器35的實例繼續(xù)說明,為了利用該存儲器之四個庫的每一者,可如圖8所示利用時間子列識別符TSUBCOL之二個最低有效位做為庫選擇位。將這二個最低有效位用于庫選擇意味著第一個、第五個、第九個等收到的子列(對應于TSUBCOL=0、4、8等)會被寫入到庫0,且第二個、第六個、第十個等收到的子列(對應于TSUBCOL=1、5、9等)會被寫入到庫1,第三個、第七個、第十一個等收到的子列(對應于TSUBCOL=2、6、10等)會被寫入到庫2,且第四個、第八個、第十二個等收到的子列(對應于TSUBCOL=3、7、11等)會被寫入到庫3(亦見圖3)。圖8排行有異于公知庫選擇控制之處在于,就一4庫存儲器來說,使用字節(jié)地址之二個最有效位做為庫選擇位,這是圖5之實例的情況。但在圖8中,庫選擇位系由時間子列識別符TSUBCOL之二個最低有效位直接驅(qū)動。又,由于TSUBCOL之二個最低有效位已被剝離以供做為庫選擇位,地址計算器51之子列編號輸入被一右移兩次版本的TUSBCOL驅(qū)動。
此以數(shù)學方式表示為存儲器字節(jié)地址=150336×幀編號+行編號×16704+(子列編號>>2)×87+列編號(方程式2)藉由使用此明確尋址方案,分散尋址的可預測性得到運用而且?guī)毂粡娖惹袚Q,藉此盡可能地掩蓋行穿越懲罰。
在譬如像圖8所示的實施例,其中強迫在子列邊界進行庫切換,有可能使收受幀之子列以一會因圖7翻譯器76產(chǎn)生之TSUBCOL之二個相繼數(shù)值而導致對于存儲器35之一單一庫之兩次對應讀取存取的方式排序。因為前文提到的理由,此種對于單一庫的相繼存儲器存取經(jīng)常會遭致一行穿越懲罰。試舉一例,若發(fā)射幀之第二子列以收受幀之第五的子列到達,則圖7翻譯器76與圖8存儲器地址計算器一起進行的作業(yè)會導致對于圖3存儲器35之存儲器庫0的兩次相繼讀取存取。如果發(fā)射幀之第二子列以收受幀之第九個、第十三個、第十七個等子列到達,則會得到相同結(jié)果。
因此,在存儲器寫入作業(yè)中,本發(fā)明之范例實施例利用由公知讀取地址輸入產(chǎn)生器產(chǎn)生的實際子列識別符以計算一收受幀之一整行之字節(jié)的讀取地址。也就是說,在圖8中利用由讀取地址輸入產(chǎn)生器產(chǎn)生的實際子列識別符以計算存儲器讀取地址。圖9示意地示出用來避免當收受幀之子列被以前述特定方式排序時很可能發(fā)生之前述類型行穿越懲罰的存儲器接口31的范例實施例。
圖9與圖7大致相似,差別在于翻譯器76之輸出被耦接至一指針FIFO 95,且選擇器74之輸出與寫入地址輸入產(chǎn)生器41之TSUBCOL輸出一起被耦接至選擇器71之一輸入。在此組態(tài)中,在圖8中利用由公知讀取地址輸入產(chǎn)生器產(chǎn)生的實際子列識別符以計算數(shù)據(jù)字節(jié)的讀取地址。類似于圖7之實施例,使用實際子列識別符之二個LSB s在圖8中做為庫選擇位。目前尋址行的數(shù)據(jù)字節(jié)被從存儲器35讀取并且存儲到一數(shù)據(jù)緩沖器94內(nèi)。在一些實施例中,該數(shù)據(jù)緩沖器約有18千字節(jié)容量以便容納目前尋址行的所有字節(jié)(192×87字節(jié))。同樣在讀取作業(yè)期間,使由翻譯器76產(chǎn)生的TSUBCOL值序行輸入到指針FIFO95。因此,一旦目前尋址行已被利用由讀取地址輸入產(chǎn)生器產(chǎn)生之實際子列識別符讀入數(shù)據(jù)緩沖器94內(nèi),隨后可用被存儲在指針FIFO 95內(nèi)的TSUBCOL值當作指針依序地施加至數(shù)據(jù)緩沖器94內(nèi)以便確保對應于每一子列的87字節(jié)片段被依正確順序從數(shù)據(jù)緩沖器94讀出。
本領域普通技術(shù)人員應理解到圖3-9之虛擬級聯(lián)接收器實施例舉例來說得藉由對公知虛擬級聯(lián)接收器之軟件、硬件、或軟件和硬件二者作適當修改及/或增添的方式立即實施。
雖說以上已詳細說明本發(fā)明之范例實施例,其并不局限本發(fā)明的范圍,本發(fā)明的范圍可以眾多實施例實行。
權(quán)利要求
1.一種處理一收受虛擬級聯(lián)幀的方法,包括對該幀指派一與該幀所含幀識別信息無關的幀識別符;利用該幀識別符計算該幀所含個別數(shù)據(jù)單元的存儲器寫入地址;且將該等數(shù)據(jù)單元依該等個別對應存儲器寫入地址寫入存儲器內(nèi)。
2.如權(quán)利要求1的方法,包含接收復數(shù)個虛擬級聯(lián)幀,且對該等幀之每一者指派一與幀所含幀識別信息無關的個別對應幀識別符,且指派該等幀識別符代表該等幀被接收的一時間次序。
3.如權(quán)利要求1的方法,包含對該幀內(nèi)之一子列(subcolumn)指派一與該子列所含子列識別信息無關的子列識別符,且利用該子列識別符計算該等存儲器寫入地址。
4.如權(quán)利要求3的方法,包含從存儲器讀取該等數(shù)據(jù)單元,該讀取步驟包含將該幀識別信息轉(zhuǎn)譯成該幀識別符且將該子列識別信息轉(zhuǎn)譯成該子列識別符,且利用該幀識別符和該子列識別符計算個別數(shù)據(jù)單元的存儲器讀取地址。
5.如權(quán)利要求1的方法,包含從存儲器讀取該等數(shù)據(jù)單元,該讀取步驟包含將該幀識別信息轉(zhuǎn)譯成該幀識別符且利用該幀識別符計算個別數(shù)據(jù)單元的存儲器讀取地址。
6.如權(quán)利要求1的方法,其中該等數(shù)據(jù)單元是字節(jié)。
7.一種處理一收受虛擬級聯(lián)幀內(nèi)之一子列的方法,包括對該子列指派一與該子列所含子列識別信息無關的子列識別符;利用該子列識別符計算該子列所含個別數(shù)據(jù)單元的存儲器寫入地址;且將該等數(shù)據(jù)單元依該等個別對應存儲器寫入地址寫入存儲器內(nèi)。
8.如權(quán)利要求7的方法,包含接收一虛擬級聯(lián)幀內(nèi)的復數(shù)個子列,且對該等子列之每一者指派一與子列所含子列識別信息無關的個別對應子列識別符,且指派該等子列識別符代表該等子列被接收的一時間次序。
9.如權(quán)利要求8的方法,包含接收復數(shù)個虛擬級聯(lián)幀,對該等幀之每一者指派一與幀所含幀識別信息無關的個別對應幀識別符,且指派該等幀識別符代表該等幀被接收的一時間次序。
10.如權(quán)利要求7的方法,包含從存儲器讀取該等數(shù)據(jù)單元,該讀取步驟包含利用該子列識別信息計算個別數(shù)據(jù)單元的存儲器讀取地址,暫時地存儲該等數(shù)據(jù)單元,將該子列識別信息轉(zhuǎn)譯成該子列識別符,且利用該子列識別符檢索該等被暫時地存儲的數(shù)據(jù)單元。
11.一種處理一收受虛擬級聯(lián)幀的方法,包括產(chǎn)生被包容在該幀之一行內(nèi)之個別數(shù)據(jù)單元的存儲器寫入地址;將該等數(shù)據(jù)單元依該等個別對應存儲器寫入地址寫入存儲器內(nèi);識別該行之分別具有相互相差至少一預定量之對應第一和第二存儲器寫入地址的第一和第二相鄰數(shù)據(jù)單元;且該第一和第二存儲器寫入地址致使該第一和第二數(shù)據(jù)單元分別被寫入存儲器之第一和第二庫。
12.如權(quán)利要求11的方法,其中該第一和第二數(shù)據(jù)單元被分別容納在該幀內(nèi)之相鄰第一和第二子列內(nèi)。
13.如權(quán)利要求12的方法,其中該寫入步驟包含將該第一子列之所有數(shù)據(jù)單元寫入該第一存儲器庫且將該第二子列之所有數(shù)據(jù)單元寫入該第二存儲器庫。
14.如權(quán)利要求12的方法,其中該產(chǎn)生步驟包含對該第一和第二子列指派分別與該第一和第二子列各自所含子列識別信息無關的相應子列識別符,且分別利用該第一和第二子列識別符產(chǎn)生該第一和第二存儲器寫入地址。
15.如權(quán)利要求14的方法,其中該第一和第二子列識別符指示出該第一和第二子列在一子列時間序行中占據(jù)的相應位置。
16.如權(quán)利要求14的方法,其中該寫入步驟包含該第一和第二子列識別符致使該第一和第二數(shù)據(jù)單元分別被寫入存儲器之該第一和第二庫。
17.如權(quán)利要求16的方法,其中該產(chǎn)生步驟包含提供該第一和第二子列識別符之個別部分做為該第一和第二存儲器寫入地址之相應庫選擇部分。
18.如權(quán)利要求16的方法,其中該第一和第二子列識別符是連續(xù)的整數(shù)。
19.如權(quán)利要求14的方法,其中該識別步驟包含利用該第一和第二子列識別符識別該第一和第二數(shù)據(jù)單元。
20.如權(quán)利要求11的方法,其中該寫入步驟包含將該第一數(shù)據(jù)單元寫入存儲器且隨后將該第二數(shù)據(jù)單元寫入存儲器,且其中該預定量足以在寫入該第一和第二數(shù)據(jù)單元的該等步驟之間需要該存儲器內(nèi)發(fā)生行穿越(row crossing)。
21.如權(quán)利要求11的方法,其中該識別步驟包含計數(shù)該行內(nèi)的數(shù)據(jù)單元。
22.一種虛擬級聯(lián)接收器裝置,包括一輸入,其用于接收一虛擬級聯(lián)幀;一存儲器,其耦接至該輸入用于存儲該幀所含數(shù)據(jù)單元;一寫入地址輸入產(chǎn)生器,其對該幀指派一與該幀所含幀識別信息無關的幀識別符;及一地址計算器,其耦接至該寫入地址輸入產(chǎn)生器用于利用該幀識別符計算存儲器寫入地址以用于將該等數(shù)據(jù)單元存儲于該存儲器內(nèi)。
23.如權(quán)利要求22的裝置,其中該輸入系用于接收復數(shù)個虛擬級聯(lián)幀,該寫入地址輸入產(chǎn)生器用于對該等幀之每一者指派一與幀所含幀識別信息無關的個別對應幀識別符,且該寫入地址輸入產(chǎn)生器更用于指派該等幀識別符代表該等幀被接收的一時間次序。
24.如權(quán)利要求22的裝置,包含一具有用于接收該幀識別信息之一輸入的翻譯器,該翻譯器用于將該幀識別信息轉(zhuǎn)譯成該幀識別符,該地址計算器耦接至該翻譯器用于利用該幀識別符計算存儲器讀取地址以用于從該存儲器讀取該等個別數(shù)據(jù)單元。
25.如權(quán)利要求22的裝置,其中該寫入地址輸入產(chǎn)生器更用于對該幀內(nèi)之一子列指派一與該子列所含子列識別信息無關的子列識別符,該地址計算器更用于利用該子列識別符計算該等存儲器寫入地址。
26.如權(quán)利要求25的裝置,包含一具有用于接收該幀識別信息和該子列識別信息之一輸入的翻譯器,該翻譯器用于將該幀識別信息和該子列識別信息分別轉(zhuǎn)譯成該幀識別符和該子列識別符,該地址計算器耦接至該翻譯器之一輸出且耦接至該翻譯器輸入用于利用該幀識別符和該子列識別信息計算存儲器讀取地址以用于從該存儲器讀取該等個別數(shù)據(jù)單元。
27.如權(quán)利要求22的裝置,其中該虛擬級聯(lián)幀是一SONET虛擬級聯(lián)幀和一SDH虛擬級聯(lián)幀其中一者。
28.一種虛擬級聯(lián)接收器裝置,包括一輸入,其用于接收一虛擬級聯(lián)幀;一存儲器,其具有復數(shù)個庫,該存儲器耦接至該輸入用于存儲該幀所含數(shù)據(jù)單元;一地址計算器,其用于產(chǎn)生存儲器寫入地址以用于將被包容在該幀之一行內(nèi)的個別數(shù)據(jù)單元存儲于該存儲器內(nèi);一寫入地址輸入產(chǎn)生器,其用于識別該行之分別具有相互相差至少一預定量之對應第一和第二存儲器寫入地址的第一和第二相鄰數(shù)據(jù)單元,該地址計算器耦接至該寫入地址輸入產(chǎn)生器且響應該識別用于產(chǎn)生該第一和第二存儲器入地址,致使該第一和第二數(shù)據(jù)單元被分別寫入該存儲器之第一和第二庫。
29.如權(quán)利要求28的裝置,其中該第一和第二數(shù)據(jù)單元被分別容納在該幀內(nèi)之相鄰第一和第二子列內(nèi)。
30.如權(quán)利要求29的裝置,其中該寫入地址輸入產(chǎn)生器系用于對該第一和第二子列指派分別與該第一和第二子列各自所含子列識別信息無關的相應子列識別符,該地址計算器用于分別利用該第一和第二子列識別符產(chǎn)生該第一和第二存儲器寫入地址。
31.如權(quán)利要求30的裝置,其中該第一和第二子列識別符指示出該第一和第二子列在一子列時間序行中占據(jù)的相應位置。
32.如權(quán)利要求30的裝置,其中該地址計算器系用于提供該第一和第二子列識別符之個別部分做為該第一和第二存儲器寫入地址之相應庫選擇部分。
33.如權(quán)利要求32的裝置,其中該第一和第二子列識別符是連續(xù)的整數(shù)。
34.如權(quán)利要求28的裝置,其中該預定量足以在一對于該第一存儲器寫入地址的第一寫入作業(yè)與一對于該第二存儲器寫入地址的第二存儲器作業(yè)之間需要該存儲器內(nèi)發(fā)生行穿越。
35.如權(quán)利要求28的裝置,其中該等存儲器庫包含DRAM庫。
36.一種虛擬級聯(lián)接收器裝置,包括一輸入,其用于接收一虛擬級聯(lián)幀之一子列;一存儲器,其耦接至該輸入用于存儲該子列所含數(shù)據(jù)單元;一寫入地址輸入產(chǎn)生器,其用于對該子列指派一與該子列所含子列識別信息無關的子列識別符;及一地址計算器,其耦接至該寫入地址輸入產(chǎn)生器用于利用該子列識別符計算存儲器寫入地址以用于將該等數(shù)據(jù)單元存儲于該存儲器內(nèi)。
37.如權(quán)利要求36的裝置,其中該輸入系用于接收復數(shù)個該子列,且該寫入地址輸入產(chǎn)生器用于對該等子列之每一者指派一與子列所含子列識別信息無關的個別對應子列識別符,該寫入地址輸入產(chǎn)生器更用于指派該等子列識別符代表該等子列被接收的一時間次序。
38.如權(quán)利要求37的裝置,其中該輸入系用于接收復數(shù)個虛擬級聯(lián)幀,該寫入地址輸入產(chǎn)生器用于對該等幀之每一者指派一與幀所含幀識別信息無關的個別對應幀識別符,該寫入地址輸入產(chǎn)生器更用于指派該等幀識別符代表該等幀被接收的一時間次序。
39.如權(quán)利要求36的裝置,包含一具有用于接收該子列識別信息之一輸入的翻譯器,該翻譯器用于將該子列識別信息轉(zhuǎn)譯成該子列識別符,該地址計算器耦接至該翻譯器輸入用于利用該子列識別信息計算存儲器讀取地址以用于從該存儲器讀取該等數(shù)據(jù)單元。
40.如權(quán)利要求36的裝置,其中該虛擬級聯(lián)幀是一SONET虛擬級聯(lián)幀和一SDH虛擬級聯(lián)幀其中一者。
41.一種用于處理一收受虛擬級聯(lián)幀的裝置,包括用于對該幀指派一與該幀所含幀識別信息無關之幀識別符的裝置;用于利用該幀識別符計算該幀所含個別數(shù)據(jù)單元之存儲器寫入地址的裝置;及用于將該等數(shù)據(jù)單元依該等個別對應存儲器寫入地址寫入存儲器內(nèi)的裝置。
42.一種用于處理一收受虛擬級聯(lián)幀內(nèi)之一子列的裝置,包括用于對該子列指派一與該子列所含子列識別信息無關之子列識別符的裝置;用于利用該子列識別符計算該子列所含個別數(shù)據(jù)單元之存儲器寫入地址的裝置;及用于將該等數(shù)據(jù)單元依該等個別對應存儲器寫入地址寫入存儲器內(nèi)的裝置。
43.一種用于處理一收受虛擬級聯(lián)幀的裝置,包括用于產(chǎn)生被包容在該幀之一行內(nèi)之個別數(shù)據(jù)單元之存儲器寫入地址的裝置;用于將該等數(shù)據(jù)單元依該等個別對應存儲器寫入地址寫入存儲器內(nèi)的裝置;用于識別該行之分別具有相互相差至少一預定量之對應第一和第二存儲器寫入地址之第一和第二相鄰數(shù)據(jù)單元的裝置;及響應該識別用于產(chǎn)生該第一和第二存儲器寫入地址致使該第一和第二數(shù)據(jù)單元分別被寫入存儲器之第一和第二庫內(nèi)的裝置。
全文摘要
在處理收受虛擬級聯(lián)幀當中,存儲器寫入地址可經(jīng)適當控制以強迫庫(bank)在發(fā)生地址分散之處進列切換。利用被指派給抵達幀及其子列(subcolumns)的任意識別符(identifiers)代替H4信息以計算存儲器寫入地址。
文檔編號H04J3/06GK1723646SQ200480001779
公開日2006年1月18日 申請日期2004年10月27日 優(yōu)先權(quán)日2003年10月30日
發(fā)明者S·布哈德瓦 申請人:因芬尼昂技術(shù)股份公司