TWI487351B - 在網路中實行區域中心授權服務所用之系統及方法 - Google Patents

在網路中實行區域中心授權服務所用之系統及方法 Download PDF

Info

Publication number
TWI487351B
TWI487351B TW095102426A TW95102426A TWI487351B TW I487351 B TWI487351 B TW I487351B TW 095102426 A TW095102426 A TW 095102426A TW 95102426 A TW95102426 A TW 95102426A TW I487351 B TWI487351 B TW I487351B
Authority
TW
Taiwan
Prior art keywords
channel
lcas
vcg
data
bit
Prior art date
Application number
TW095102426A
Other languages
English (en)
Other versions
TW200644540A (en
Inventor
Narvaez Paolo
Bog Murat
Original Assignee
Netlogic Microsystems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netlogic Microsystems Inc filed Critical Netlogic Microsystems Inc
Publication of TW200644540A publication Critical patent/TW200644540A/zh
Application granted granted Critical
Publication of TWI487351B publication Critical patent/TWI487351B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/12Arrangements providing for calling or supervisory signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1611Synchronous digital hierarchy [SDH] or SONET
    • H04J3/1617Synchronous digital hierarchy [SDH] or SONET carrying packets or ATM cells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J2203/00Aspects of optical multiplex systems other than those covered by H04J14/05 and H04J14/07
    • H04J2203/0001Provisions for broadband connections in integrated services digital network using frames of the Optical Transport Network [OTN] or using synchronous transfer mode [STM], e.g. SONET, SDH
    • H04J2203/0064Admission Control
    • H04J2203/0067Resource management and allocation
    • H04J2203/0069Channel allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J2203/00Aspects of optical multiplex systems other than those covered by H04J14/05 and H04J14/07
    • H04J2203/0001Provisions for broadband connections in integrated services digital network using frames of the Optical Transport Network [OTN] or using synchronous transfer mode [STM], e.g. SONET, SDH
    • H04J2203/0073Services, e.g. multimedia, GOS, QOS
    • H04J2203/0082Interaction of SDH with non-ATM protocols
    • H04J2203/0085Support of Ethernet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J2203/00Aspects of optical multiplex systems other than those covered by H04J14/05 and H04J14/07
    • H04J2203/0001Provisions for broadband connections in integrated services digital network using frames of the Optical Transport Network [OTN] or using synchronous transfer mode [STM], e.g. SONET, SDH
    • H04J2203/0089Multiplexing, e.g. coding, scrambling, SONET
    • H04J2203/0094Virtual Concatenation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1611Synchronous digital hierarchy [SDH] or SONET

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

在網路中實行區域中心授權服務所用之系統及方法
一種於網路系統中執行區域中心授權服務(LCAS)之系統及方法,該系統具有一資料排列器,其係設置用於依據成員群組,排列輸入資料位元組。該系統包括一LCAS控制管理器,其係設置用於回應來自資料排列器之輸入資料,產生解排序控制指命。該系統進一步包括一解排序器,其係設置用於依據解排序控制指令,解排序來自資料列器之輸入資料,而該排序控制指令係由LCAS控制管理器接收。
本發明係一種於虛擬串聯信號中應用於新穎硬體及軟體之系統、方法、裝置及結構,其係包括新的協定,該協定用於使TDM(Time Division Multiplexed,分時多工)網路具有較好之承載資料流量。
此系統係有關透過同步光纖網路(Synchronous Optical Network,SONET)及同步數位階梯(Synchronous Digital Hierarchy,SDH)有效傳輸資料之服務。TDM之名稱可用於表示SONET及SDH。在T1.105附錄中所述之新的協定係包括寬頻低階(Low Order,LO)及高階(High Order,HO)虛擬串聯(VCAT),且鏈結容量調整機制(LCAS)允許TDM網路具有較好之承載資料流量。國際電信聯盟(ITU)已頒 佈有關LCAS及虛擬串聯信號之標準。ITU-T建議G7042/Y.1305不但定義了在來源及網路鏈結汲取端(sink side)所需之形態且亦定義了控制資訊,該控制資訊係於來源及鏈結汲取端之間交換,可使虛擬串聯信號彈性縮放(resize)。實際資訊欄位係於SDH之ITU-T建議G.707、G783及OTN之ITU建議G709、G798中所定義,該實際資訊欄位係透過傳輸網路用以傳送控制資訊。上述所及係普遍被承認及眾所皆知,並且可於技術中利用這些技能,及參考其技能實現應用之目的,上述所及係已包括一般使用之定義。
虛擬串聯具有提供傳送及接收數個不連續STSs/VCs切段(fragment)作為一單一串流(flow)之能力。該STSs/VCs之群組係稱為虛擬串聯群組(VCG)。與前面章節使用相同範例,如圖6所示,STS-3c負載可轉換為VCAT負載且不連續的映射至三個STS-1s。
用於SONET之VCAT可標記為STS-n-mv,其中n係不連續STS切段的大小,n係用於傳輸完整的VCG。m之數值係n切段的全部數量,m係用於組成全部的VCG。v表示VCAT之負載。故於前面的範例中,VCG可成為一STS-1-3v串流。
三個STS-1s組成一STS-3之全部串流。一STS-12c可被分解為STS-1或STS-3c切段;因此其係可如同STS-1-12v或STS-3c-4v被傳輸。用於SDH 之VCAT可標記為VCn-mv,其中n及m之定義與SONET所使用之定義相同。例如一VC-4-16c負載可被映射至一VC-3-16v或VC-4-4v。
一般的串接,如STS-24c/VC-4-8c,因重新排序及多重訊框之表示係經由H4位元組的路徑額外負載(path overhead)欄位所完成,所以VCAT僅需於路徑終端裝置中執行。路徑額外負載僅用於TDM串流之來源端及目的端。由於VCAT串流係由STS-1/VC-3及STS-3c/VC-4所組成,實際上所有的SONET/SDH裝置皆可支援VCAT串流,而繼承非路徑終端傳輸設備並不需要支援VCAT。因此,如先前之說明,使用增益不需映射迴路至較大的固定串聯,且不需聚集較小的串流至較大的固定串聯,該使用增益係被其餘TDM網路所喜愛的。
不須明確說明其意義,VCAT之附加特性係間接的提供支援STS/VC路徑無碰撞(hitless)縮放之能力。LCAS係一種定義無碰撞縮放之架構。如在串流章節中所述,由於VCAT負載係分解為數個切段,藉由從目前的串流中增加切段或移除切段可用以實現增加或移除頻寬。VCAT並不被指定為一保護架構,但LCAS架構亦可提供保護控制。
最後,對於虛擬輔助(VT)-1.5s(1.544Mbps)及VC-12(2.048Mbps),額外寬頻支援可用於較小的細群(granularity)選擇。此係為低階(LO)VCAT。
改變用戶頻寬設定(profile)總是為重要的問題。要使其正常運作、改變它及不需任何人去注意即可確保再度運作係十分重要的。大部份用戶皆有此要求,且許多用戶會將其寫入服務的契約中。對於增加或減少頻寬最佳案例之方案發生於重新供應期間,舊的及新的路徑有足夠的頻寬可供存。兩個迴路增加後,即執行連結及轉動(bridge-and-roll)以移動用戶至新的迴路。但當兩個串流沒有足夠頻寬可共存時,在新的迴路架設前,舊的迴路必須先移除,而此動作會導致用戶之運作中斷。LCAS之目標係為了使改變頻寬成為簡單且安全之工作。
對於VCG鏈結中”無碰撞”容限之增加或減少,LCAS提供一種控制機構來應付應用所需之頻寬。LCAS亦提供暫時移除已故障成員鏈結之能力。LCAS假設一旦發生容限初始化、增加或減少,修改每一各別VCG成員之端對端(end-to-end)路徑係網路及元素管理系統的職責。LCAS提供一種機構用於頻寬重新供應,但並非為決定何時或為何產生運作之控制機構。
LCAS之特性包括在LCAS切段頻寬、無碰撞頻寬改變、不需移除整個VCG即自動移除故障的VCG切段之情形增加時,可增加及減少VCG容限之能力,且不但利用工作切段動態的取代故障切段,而且LCAS VCG至非LCAS VCG可相互影響 (onterworking);也就是說,LCAS傳送器可轉換為非LCAS之接收器,及具有VCG之單向控制、授予非對稱連結之能力,及許多其它特性。這些特性所提供之好處可大大的改善傳輸網路。LCAS提供在VCG中,不需影響服務或停止VCG,即可彈性的增加及移除寬頻容限。此不但可節省預備時間,亦可消除”維修窗口”期間之工作限制。此外,因工程師僅需找到迴路增加之頻寬,不需針對連結及轉動附加所需之頻寬。
另一重大好處是LCAS可在VCG增加時增加或刪除頻寬。此可允許提供者提供SLAs一較大的範圍。增加至SLA特性列表係LCAS之能力,此可一經要求即增加頻寬。因此,其有助於在用戶要求建立時改變頻寬-對於服務提供者係另一優點。
除了管理的供應及用戶的需求之外,LCAS可連接信號發送協定,用以在網路中動態的改變串流之流量。此可應用於全網路及整體範圍負載之平衡。此外,負載平衡/網路復原可對提供較高金額之用戶提供較好之服務。負載共享還原架構可成為一服務之組件,而當該架構與封包分級優先權及雍塞避免架構合併時,即可建立一新的服務提供型態。
VCAT的彈性亦可利用LCAS增加。此將大大的改善提供者供應彈性之能力及改善SLAs的效率及提供動態TDM路徑還原。
SONET/SDH(同步光纖網路/同步數位階梯)傳輸階層係設計用於提供電信業者一實用工具,利用分時多工用以傳送語音及私人專線服務。在其初始設計中,SONET/SDH維持一具有資料率限制集合(例如:51Mb/s、155Mb/s、622Mb/s、2.5Gb/s、10Gb/s、40Gb/s)之固定階層結構。隨著網際網路及企業資料網路之成長,及流量範圍及型態之擴展,必須使此架構具有更彈性及強大之能力。
下一代SONET/SDH技術集合係由GFP、VCAT及LCAS所組成,採用下一代SONET/SDH技術集合,係將SONET/SDH傳輸網路轉換成為一有彈性且有效率之資料傳送者及語音迴路,只要保留多數之操作及管理功能,並將其建入SONET/SDH標準即可用以執行監視及故障隔離。GFP、VCAT及LCAS係平行的被發展,且當將其合併使用時,其主要優點即可被實現。GFP、VCAT及LCAS可相互搭配,用以提供有效率的使用傳輸資源及彈性的頻寬控制。依此作法,組裝、販售裝備及測試裝備係更加成熟且影響更高階層。上述三個基礎技術中之每一基礎技術對下一代SONET/SDH皆具有唯一貢獻: 通用訊框處理程序-GFP(ITU-T G.7041及G.806)係一種用於任何資料類型之封裝(encapsulation)方法,該方法係提供不同位元流之彈性映射,並轉化為單一位元組-同步通道。該方法提供有效率的固定封 裝,但對每一封包僅增加些許之負載。GFP具有兩種主要類型:訊框基準GFP(GFP-F)係於單一GFP訊框中儲存及轉送完整的用戶端訊框。該方法係大部份封包類型所喜愛之方法。
透明模式GFP(GFP-T)利用傳輸區塊-編碼(block-coded)提供低的潛在因素,其係用於如儲存區域網路,或SANs之應用。
虛擬串聯、VCAT(ITU-T G.707及G.783)係一種反向多路傳輸技術,用於任意的合併SONET/SDH通道以建立單一位元組同步串流。不同於連續串聯,每一網路元素皆需要串聯功能,VCAT僅於路徑終端設備才需要串聯功能。VCAT不需符合標準STS-Nc或VC SPE大小,即可有效率的傳輸負載,其中現存之SONET/SDH NEs係支援該標準。VCAT功能僅於路徑終端元素需要,並非於路徑中之每一NE。VCAT使用較小頻寬容器(container)建立一較大頻寬端對端連線。擁有補償的各別容器可具有不同之路由路徑,該補償係由每一容器間不同之延遲所造成。
容量調整機制,LCAS(ITU-T G.7042,G.806及G.783),係一種信號發送機構,用於動態的及無碰撞的調整容器大小,該容器係於具有VCAT之SONET/SDH中傳輸。LCAS可擴展至VCAT可允許動態的改變使用中SONET/SDH通道之數量,且在頻 帶內載送路徑額外負載位元組。
假設已供應軌跡(Trail),LCAS於用戶終端設備調節頻寬。LCAS亦可包括選擇的備援還原特性。
在SONET/SDH網路邊緣,可存在一種裝置如:多重服務供應平台(MSSP),用於適應乙太網路實體介面以便於SONET/SDH網路中傳輸。移除MAC訊框中先前及訊框啟始所定義之符號,且剩餘之MAC訊框(包括來源端及目的端位址,長度/類型欄位、MAC資料、填塞位元組及訊框檢查序列)係映射至GFP之負載。GFP額外負載之位元組及GFP訊框係被分派至VCAT群組(VCGs),其係可依不同路徑通過網路(應注意的是在OIF世界相互操作展示(World Interoperability Demonstration)中,SONET/SDH網路係包括多個網域及多個業者研究室,其係利用來自不同販賣業者之設備)。LCAS信號發送係被加入或移除VCG鏈結成員,用以調節應用所需之頻寬及對故障作出回應或還原VCG成員鏈結。在網路出口MSPP,由GFP解映射(demap)來自VCGs之負載,接著於時間序列中重新集合,並在乙太網路實體介面上進行多路傳輸及傳送。
OIF世界相互操作示範中服務適應特性之測試集中在四個區域:透過SONET/SDH架構,乙太網路私人專線服務之總處理能力;利用GFP及VCAT,局部速率及全部 速率乙太網路傳輸之調節能力;適應不同網路特性(不同之延遲)之彈性能力;在服務中,增加/減少頻寬要求之反應能力及LCAS網路故障條件之反應能力。
這些測試案例之展示不僅在不同販賣業者間相互影響,亦在GFP-F、VCAT及LCAS之基本特性間相互影響。
因此,在SONET基準系統中,執行LCAS操作的系統及方法需要一種技術,該技術可依一種方法執行LCAS操作,且該操作方法並不會因即時處理之需求而加重負擔,其中該SONET基準系統係於硬體及軟體之網路通訊操作間提供更有效之平衡。以下即可看到,本發明所提供之系統及方法。
本發明係一種新穎的系統及方法之應用,該系統及方法係在網路中實行區域中心授權服務(LCAS),可克服先前技術之缺點。尤其該系統係多方面的,且提供許多特性用於VCAT傳送之系統,但並不會限制提供LCAS之功能。此技術中所需之技能可於下述實施例中了解,該實施例可於任何系統或方法中使用,其所構成之功能及組件係十分有用的。
一新穎系統之實施例係提供唯一的排列結構,在一虛擬串聯程序中進行資料之排序及解排序。該系統及流程可於SONET/SDH傳輸處理器中或相似之設備中使用,但並不限制任何特定之網路協定。實際上, 該系統及程序可於具有虛擬串聯及LCAS功能之高階、低階訊框器及處理器中使用。此技術中所需的技能將了解到本發明之精神及範圍可達到廣泛之應用,且於附錄專利申請範圍中被定義。
本發明另一實施例係提出在此系統中新穎的硬體及軟體功能之平衡,其中累贅之步驟將從程序中移除,並且於操作路徑外執行。此可使該系統依更有效率之方法執行LCAS,且可加速處理過程。本發明係描述執行LCAS系統及方法之內容,該系統及方法係運作於SONET基準之系統,但此技術中所需的技能將可了解本發明實際上具有廣泛之領域,且可延伸任何系統使用,在網路通訊及其它應用時,該系統硬體及軟體間之操作可具有更好之效率平衡。
本發明之一實施例,設置一處理器依有效率之方法來增加及刪除成員,其中額外負載之處理器與傳統硬體基準狀態計算機相似。其結構檢查、命令編譯及裝置程式係具有相似之共通性。然而,LCAS處理器係依據本發明所設置,值得注意的是該LCAS處理器係用於減少處理時間,且低調地向即時處理器請求需求。在一穩定的狀態或正常的運作中係不會造成處理器之負擔,且該處理器僅於結構改變期間才會被請求。因此,本發明提供一種解決方法,該方法可在穩定狀態運作期間,大量減少處理器的負擔用以克服先前技術之缺點。例如,在增加或刪除成員時,對於來 源及匯點端之運作,該系統僅需回應兩個中斷(在增加操作時)或一個中斷(在刪除操作時)。實際上,在該運作模式中每一成員之處理時間可少於1毫秒。定義於ITU標準中全部LCAS協定完成時間係十分短的,且其係可個別的執行(HO:高階,LO:低階),例如:
若故障事件發生時,本發明在100毫秒內提供一中斷回應給故障之成員。對於低階,LCAS中斷故障率每32毫秒需接收8個故障成員狀態訊息,且對於高階,每2毫秒需接收8個故障成員狀態訊息。整體來說,對於執行LCAS協定,處理器執行所花費的時間係相當短暫的。
為了執行LCAS,本發明進一步提供一排列系統,其中於輸入資料之排列通道設置一資料排列器。在本實施例中,該排列器包括一寫入管理器,該寫入管理器被設置用以接收輸入資料,並寫入第一記憶體。該寫入管理器接著由多通道至多通道透明模組(MCT)寫入位元組,其中該MCT係具有第二記憶體。該MCT被設置用於在第二記憶體中儲存輸入資料,其中該輸入資料係由寫入管理器所接收,對於不同通 道保持資料區隔。該排列系統進一步包括一讀取管理器,該讀取管理器被設置用以讀取儲存於第二記憶體中之輸入資料,並且依排列方法轉化至第三記憶體。在一實施例中,該讀取管理器設定用於從通道群組讀取通道資料,其中當由VCG接收所有資料時,該通道群組係組成一虛擬串聯群組(VCG)。在一設定用來執行LCAS類型程序之系統中,一群組之不同的個別虛擬串聯(VC),於不同時間到達傳送的接收端。依據本發明,該讀取管理器允許通道資料填滿MCT的空間,直至所有群組成員皆已到達。同時,通道資料可被讀取出來,傳送到下一個處理程序,如解排序。解排序亦可能為排列程序所執行之一部份。在一更好的實施例中,係由個別通道資料序列之改變來個別的執行排列。
排序及解排序
本發明進一步提供一新穎的系統及方法,用以由VCGs排序通道資料。該系統包括一排序模組,該排序模組係依據VCGs成員通道之已決定的傳送槽次序來設定重新排列資料位元組,及處理動態VCG成員之改變。該系統進一步包括至少兩個緩衝區,此兩個緩衝區設置用以啟動該模組來執行雙緩衝區程序,然後可用於執行VCG成員的變更以支援LCAS。一讀取管理器設定用於由一緩衝區讀取成員的改變,且一寫入管理器設定用於將成員之變更寫入另一緩衝 區,其中兩個緩衝區間該讀取及寫入理器之寫入及讀取功能可交替輪流。在一實施例中,每一緩衝區之位元組容限係等於或大於VCG成員之數量。
當減少有關傳送服務之傳輸成本時,本發明允許處理器啟用系統平台用以傳送這些服務。此外,對於通用用戶存取,藉由使用低價乙太網路介面,依據本發明之硬體及軟體解決方法設定可啟用服務速率及其它SLA屬性。在用戶端之初始提出要求時,這些可輕易被修改,且不需昂貴的交易來回。
符合本發明的高度合併解決方法,由於藉由本發明啟用成本/服務/價值點,系統提供者可享有額外承載容量。當透過服務多路通訊技術減少其OPEX時,服務提供者可啟用進階服務模型以增加其每月的收益機會。用戶端使用者可有選擇更多服務的好處。本發明提供彈性的介面選擇,包括十億位元組乙太網路、10/100乙太網路、受保護的SONET/SDH(光學或MSSP fabric)、PDH延伸匯流排,及達到STS-48頻寬,具有完全的SONET/SDH及封包處理。它可透過現存SONET/SDH架構,利用GFP、虛擬串聯及LCAS有效的進行乙太網路服務之傳輸。對於透過乙太網路業者的網路進行乙太網路服務之傳送,它亦提供傳輸業者階層的解決方法。
依據本發明,一系統啟用高頻寬乙太網路虛擬私人專線(E-Line)、虛擬私人LAN(E-LAN及VPLS)及 虛擬線路(PWE)服務之傳送,該系統允許一廣泛範圍之服務設定檔。其亦啟用虛擬交換,其中許多虛擬交換服務係產生E-LANs多樣的收益,這些的每一頻寬、埠(port),及統計資源係功能的及管理方面的獨立。
本發明之一實施例,該系統包括一LCAS形態機構,該LCAS形態機構設定用於儲存及管理有關LCAS硬體系統形態之形態資料。一虛擬串聯模組設置用於在此系統中執行虛擬及標準串聯程序。VCT模組包括一封包工具介面,該封包工具介面係經由SONET/SDH邏輯埠來傳送、接收或其它具有封包工具之交換封包。該VCT模組進一步包括交叉連接介面,該交叉連接介面設置用於傳送、接收及其它交換SONET/SDH之流量,該流量係具有映射至內部SONET/SDH交叉連接之資料。該系統VCT可設置用於交換(傳送)SONET/SDH流量,該流量係經由SMT-16介面,且具有映射至內部ONET/SDH交叉連接之資料。
HW系統
參考圖1A,其係說明依據本發明一接收通道之硬體系統圖式。
參考圖1A,其係說明LCAS結構接收通道之結構。在運作中,系統200利用排列器204接收資料 202,該排列器係排列資料成員。在一獨立程序中,排序器206係依據MFI資訊記錄VCG成員之排列次序。這所有操作係藉由LCAS控制封包程序208所控制,該控制封包程序與排序器接收相同的資料,且控制解排序程序。其輸出接著傳送至緩衝區210,並且再傳送至多工器212。該多工器亦接收來自封包路徑額外負載(POH)之輸出,該POH係由模組214非VCAT所處理。
依據本發明,在LCAS架構中硬體及軟體係依一種新穎的方法所區隔,以提供最佳之效率。LCAS軟體主要定義於ITU標準中。然而實際上,在應用上僅使用軟體效率太過緩慢。可發現硬體及軟體最佳的合併可提供更好的結果。一般來說,有關控制路徑之資料係由軟體所控制。硬體僅用於如資料路徑傳送時。
依據本發明,大體上額外負載資料所有的功能係由軟體所產生。硬體同時確定發生改變。該程序基本上係置於軟體中非時序相關之步驟,其中硬體提供控制路徑及資料路徑之同步。因此,針對軟體資料之儲入及取出係設置掛鈎(hook)及硬體。
當僅考慮控制路徑時,控制路徑專門由軟體領域控制。為嵌入一控制封包,硬體掛鈎允許軟體嵌入該控制封包。在擷取時,硬體掛鈎允許軟體在資料流中讀取拋棄之控制封包。基本上,當改變必須發生時係由軟體所定義,當改變可能發生及產生改變時係由硬 體所決定。因此,硬體係提供同步化。
在結構之接收端,考慮控制路徑及資料路徑,軟體係設定硬體之資料路徑大小、成員數量,接著在LCAS控制封包中接收額外負載。在傳送端,依然考慮控制路徑及資料路徑,軟體命令硬體改變第一資料路徑大小,且在LCAS控制封包中傳送額外負載。這兩個功能係藉由硬體完成同步化,因此,軟體及硬體係可區隔的。
考慮內部資源之同步化,不同的虛擬串聯群組具有不同的大小。因此,某些緩衝區係針對不同之群組大小改變其大小,且軟體係由控制硬體來設定緩衝區大小。同樣的,資源的配置藉由硬體軟體區隔來執行,其中軟體係定義資源的配置,而硬體則依據軟體回應。在緩衝區交換的同步化中,軟體藉由一特定的VC群組命令硬體來改變緩衝區的使用。硬體係於精確恰當的時間執行改變。
此技術中所需的技能將了解到,軟體可儲存於外部或內部記憶體中,或於內部或外部CPU中執行。其係可於相同之線卡(line care)或不同之線卡中執行。該軟體可置於分離或相同之印模中。因此,本發明並不限制任何特定的結構,其中該結構允許軟體可於內部或外部CPU上,或特定晶片或晶片集合上使用。
參考圖2A-G,該流程圖係說明本發明硬體及軟 體分開使用之實施例。圖2A至3G係說明結構及系統之流程圖,可用以協助描述依據本發明之系統運作。依據本發明,LCAS處理係藉由硬體拆解為一自動操作的序列,該硬體設置用於執行每一自動操作,且其中軟體係負責為每一交易發佈適當自動操作之動作。
參考圖2A,其係說明依據本發明設置之來源/同步LCAS系統。該系統包括第一來源之驅動器302、來源之硬體控制304、同步之硬體控制306及同步之軟體驅動器308。該操作步驟將於下述一連串之步驟中說明且將於本文中描述。
參考圖2B,運作中,當來自NMS的新成員被增加時,該程序即行步驟312,該步驟312係使系統閒置(idle)。當增加新的成員時,此即為操作之狀態。在步驟314中,該控制係設定為增加,一新的成員即被增加,且序列編號係增加1,其中序列編號即等於N加1。在步驟316中,係傳送LCAS控制。在步驟318中,係設定計時器。在步驟30中,該增加序列即被初始化,且該控制係經由序列路徑線326及328其中一條傳送。在步驟328中,執行檢查序列及檢查控制操作。在步驟330中該控制係設定為正常,且序列編號設定為N。在步驟332中,該控制設定為序列終端(EOS),且序列編號等於N加1。在步驟334中,傳送LCAS控制係被初始化,且在步驟336中即傳送 負載。在步驟338中,該負載係被正規化,且傳送至硬體組件304。在硬體系統中,該控制字串產生器/擷取器接收負載資訊,以準備傳送該負載。在步驟340中,負載序列器係建立負載序列、封包342。由來源之增加編號序列中,該控制字串產生器/擷取器產生並且傳送一控制字串至封包342,其係經由路徑344所傳送。在相反方向中,路徑346之控制字串係利用控制字串產生器/擷取器擷取。接著封包經由路徑343被傳送,且在匯點306被接收成為封包348。這些係經由路徑352,利用匯點之控制字串產生器/擷取器350所接收。若該封包經由路徑343傳回來源硬體控制字串產生器/擷取器將產生一控制字串,並且經由路徑354將該控制字串附加至封包。控制字串產生器/擷取器接著傳送由來源硬體所接收之控制字串至軟體驅動器308。首先,來自控制字串產生器/擷取器350之該控制字串係傳送至驅動器308,並透過路徑356傳送至OK355,在OK355確定成員增加係已OK。在步驟366執行檢查序列及檢查控制操作。接著該序列進行至步驟364,RS-ACK正反器(flip)係被初始化。一旦這些操作通過後,該程序即進行步驟362,步驟362係指示一接收負載。若新增一成員359,閒置步驟即被初始化,且該操作工作係反向退回驅動器302。閒置步驟372之後,在步驟370中檢查序列及檢查控制操作係被初始化,且接著在步驟 368中傳送LCAS控制亦被初始化,且將反轉該操作工作。
參考圖2C,其係LCAS增加處理序列更詳盡之描述。在運作中,程序驅動器302及308係與額外負載一起操作,大體上可取代傳統的硬體基準狀態機構。依據本發明,該檢查結構可共用於來源端及匯點端。此外,命令編譯及裝置程序亦可於兩端共用。LCAS狀態機構呈現出低於全部處理時間之20%,且導入不需增加即時處理之需求。此外,在穩定狀態運作中,在正常運作期間是沒有處理步驟或負擔的,且該處理器僅在結構改變時才會被要求。值得注意的是在增加或刪除一成員時,來源端及匯點端皆被減少操作。當增加一成員時,僅需回應兩個中斷。當刪除一成員時,僅需一個中斷。此最少全部LCAS協定完成時間係定義於LCAS標準。結果,關於LCAS協定之執行,該程序的執行時間係十分重要的。依然參考圖2C,其係一說明LCAS增加處理序列之流程圖。在步驟380中,來源端初始化該處理係藉由在新的成員上設定傳送控制封包(增加)。在步驟382中,匯點端在控制中偵測到一改變,並且傳送成員狀態改變(MST),在步驟384中,藉由在新成員上設定控制=EOS來增加一成員,且若有任何成員存在,則在前面最後一個成員上設定控制=NORM。在步驟386中,匯點端在控制中偵測到改變,且觸發器RS-ACK或 RS序列回應確認通知。
對應參考圖2A,參考圖2D係更詳盡說明增加一新成員程序的路徑。在運作中,路徑1於閒置步驟312開始,且經由路徑388進行至控制字串產生器/擷取器324,其中針對封包342產生一控制字串,封包342接著傳送至匯點硬體306,並在匯點306中傳送封包348。該控制字串擷取器接著擷取控制字串,用以增加新的成員,且接著依舊經由路徑388進行至閒置步驟342。
參考圖2E,步驟2說明一種操作,該操作係在控制中匯點偵測改變,並且傳送一命令MST等於OK。該步驟係經由路徑390完成。驅動器308之增加成員372經由路徑390傳送一命令至控制字串產生器及擷取器350,其係傳送控制字串用以產生資料封包348。這些封包係經由路徑390所傳送,並給予封包342。該控制字串擷取器324接著擷取MST等於OK之命令,且隨後傳送給增加操作模組320以完成增加序列。
在圖2F中,由增加序列模組320,該程序經由路徑392進行至步驟328,其中來源端偵測到MST改變,且藉由在新成員上設定控制=EOS來增加一成員,且若已有任何成員存在,則在前面最後一個成員上設定控制=NORM。依舊沿著路徑392往下,該程序同時進行至控制字串產生器/擷取器324及負載序 列器340,並且產生封包342,接著經由路徑392至匯點硬體306。該控制字串產生器/擷取器接著擷取控制字串,控制=EOS,且該程序進行至步驟358,新的成員係已OK。
參考圖2G,最後之步驟,其中匯點在控制中偵測改變,且觸發RS-ACK或回應通知命令,該程序依步驟394往下前進,由檢查序列及檢查控制沿著路徑394前進至控制字串產生器/擷取器350,該控制字串產生器/擷取器350係擷取控制字串、回應通知命令,且經由路徑394將其傳送至資料封包348。在來源硬體304中這些資料封包係被接收成為資料封包342,且該程序接著進行至來源硬體之控制字串產生器/擷取器,用以擷取回應通知命令,該程序接著返回NORM之步驟。
1.1 細部操作 1.2 反相控制資訊
依據本發明,細部操作主要係於軟體中執行,配合硬體回應軟體命令可大大的優化該系統。參考圖2A之匯點303操作,有關於反相控制資訊係位於匯點或LCAS操作之接收端,用以控制這些操作。在LCAS連線之匯點端,Orion具有嵌入反相控制資訊之能力,例如成員狀態(MST)及重新排序回應通知(RS-ACK)。該資訊係由軟體所設定。此外,當該資訊藉由軟體改變時,則所有虛擬串聯群組(VCG)同時 亦發生改變。此改變與新的LCAS控制封包之起始亦需同步化。
在LCAS連線之來源端,來源端係由輸入LCAS控制封包擷取反向控制資訊,例如MST及RS-ACK。來源端亦執行CRC檢查,用以驗證該資料係有效的。若該資訊改變時,則來源端處理器將中斷軟體並允許軟體讀取被接收之新的數值。
1.3 正向控制資訊
有關正向控制資訊,在LCAS連線之來源端,該來源端處理器係嵌入正向控制資訊,例如序列編號(SQ)及控制字串(CTRL)。該資訊係由軟體所設定。當軟體改變此資訊時,則必須於下一個LCAS控制封包中寫入新的控制資料。此外,資料路徑必須與控制路徑的改變同步。藉由新的SQ及CTRL數值定義新的路徑結構,該新的路徑結構在下一個控制封包中,必須精確的在初始之控制封包產生,其中該下一個控制封包係被寫入新的SQ及CTRL數值。
在LCAS連線之匯點端,匯點處理器由輸入之LCAS控制封包擷取正向控制資訊,例如SQ及CTRL。該匯點處理器亦執行CRC檢查,用以驗證該資料。若新的SQ或CTRL數值已到達,該匯點處理器將中斷軟體,並且呈現新的接收數值。若該通道已藉由軟體設定變成「已接收」模式,接著該匯點處理器將由該通道使用新的SQ或CTRL資訊,用以控制 實際資料之擷取。該資料路徑設定之改變係被同步化,以便在下一個控制封包中,於初始之控制封包精確的產生,其中下一個控制封包係具有新的SQ或CTRL數值。
參考圖2B-G,其係說明硬體及軟體區隔之操作範例。
HW/SW區分離格規 2 概要
本說明書係描述硬體及軟體之互動,該互動需要各種LCAS方案,其係依據在LCAS/VCAT登記文件所提供之登記模型。反應LCAS非對稱之性質,軟體操作所需執行之操作係針對匯點端及來源端個別的討論。
在此說明書中,係包括以下方案:
匯點端
。建立VCT
。刪除VCT
。供應新的成員至VCT
。由VCT中止供應(de-provision)成員
。增加VCT頻寬
。減少VCT頻寬
。因故障而減少VCT頻寬
。改變反相控制資訊擷取結構
來源端
。建立VCT
。刪除VCT
。供應新的成員至VCT
。由VCT中止供應成員
。增加VCT頻寬
。減少VCT頻寬
。因故障而減少VCT頻寬
。改變反相控制資訊擷取結構
本說明書並未包含錯誤方案詳細之分析,且假設在處理結構期間沒有發生錯誤。其主要係幫助了解如何使用由Orion所提供之LCAS結構及狀態介面,用以在軟體中實行LCAS協定功能。
3 匯點端方案 3.1 建立VCG
當匯點端需要建立一新的匯點VCG時,NMS係指示匯點節點以下之操作步驟。
接收LPID,其係可用於匯點VCG
VCG之通道類型
若有接收通道之身份,則開始即應被供應成為該匯點VCG之新的成員。
若有每一初始成員通道,不管LCAS反相控制資訊是否由每一初始成員通道中擷取,若是的話則本區來源VCG之傳送LPID將被應用。對於不同的本區來源VCGs,不同的成員通道係有可能載送反相控制 資訊。在某些或全部的初始成員通道,反相控制資訊亦有可能未被擷取。
訂定以下之假設:
接收埠LPID並非於使用中(即設定該接收LPID之RX_SK_SW_CFG_EN位元)。
若有初始成員通道的話,其係應與匯點VCG有相同型態。
若有初始成員通道的話,其係並非為使用中(即設定其RX_CH_SW_CFG_EN位元),且其係由遠端來源節點所產生。
軟體係執行以下結構步驟,用以建立匯點VCG:
1.設定接收LPID之RX_SK_VCAT_EN及RX_SK_LCAS_EN,並指派至匯點VCG。
2.對所有可能之序列數值,設定匯點VCG之TX_SK_LCAS_INS_MST欄位為FAIL(即將該欄位全部設定為1)。
3.藉由清除其SK_SW_CFG_EN位元,使匯點VCG脫離重新設定。
若任何接收通道被指定初始化,並供應成為匯點VCG,則剩下結構步驟係與供應這些接收通道至現有匯點VCG所執行之步驟相同。
3.2 刪除VCG
當匯點端需要刪除一匯點VCG時,NMS係指示匯點節點以下之操作步驟。
接收LPID係分派至匯點VCG
假設在匯點VCG被刪除之前,所有成員皆已中止供應(de-provision)。此案例中,軟體需執行以下操作:
1.藉由設定SK_SE_CFG_EN位元,將接收LPID設定為重新開始(reset)。
3.3 供應新的成員通道成為VCG
當匯點端需要供應新的成員道通至現存之匯點VCG時,NMS係指示以下匯點節點之結構參數:
接收LPID係分派至匯點VCG。
接收通道之身份應被供應成為該匯點VCG之新的成員。
對於每一初始成員通道,不管LCAS反相控制資訊是否由每一初始成員通道中擷取,若是的話則本區來源VCG之傳送LPID將被應用。對於不同的本區來源VCGs,不同的成員通道係有可能載送反相控制資訊。在某些或全部的初始成員通道,反相控制資訊亦有可能未被擷取。
訂定以下之假設:
匯點VCG已啟動;即對於接收LPID之RX_SK_VCAT_EN及RX_SK_LCAS_EN位元係已設定,且接收LPID之RX_SK_SW_CFG_EN並未設定。
新的成員通道與匯點VCG係具有相同型態。
新的成員通道並非於使用中(即設定其 RX_CH_SW_CFG_EN位元),且其係由遠端來源節點所產生。
軟體係執行以下操作,用以供應新的成員通道:
1.檢查不同之延遲可補償這些通道,使其成為成員。此部份之細節係於VCAT方案文件中所討論。
2.以下係設定每一新的成員通道:
設定新的成員通道之RX_CH_LPID欄位至接收LPID,該接收LPID係分派至匯點VCG。
清除新的成員通道之RX_CH_VCAT_ACCEPT位元。
若該通道將用於擷取LCAS反相控制資訊,接著設定其RX_CH_LCAS_REV_EXT_SO_LPID欄位所提供之數值,且設定其RX_CH_LCAS_REV_EXT_EN位元。
藉由清除其RX_CH_SW_CFG_EN位元,使新的成員通道脫離重新設定。由於在交握(handshake)之前新的成員通道並未增加負載,因此,此命令並不是十分重要。
3.一直等待直至匯點VCG與新的成員通道之不同延遲補償完成。
可經由觀察所有(並非僅有新的)成員通道之RX_CH_VCAT_RD_STATE位元來決定。當所有成員通道已設定該位元,則不同的延遲補償通道係已完成。對於此目的,軟體可獲得這些位元或使用其相關 之中斷。
4.接著不同的延遲補償,等候一多重訊框(依據匯點VCG為低階或高階決定等候時間)或更長時間,用以確定所有通道至少處理一LCAS控制封包。
5.讀取所有新的成員通道之RX_CH_LCAS_CTRL、RX_CH_VCAT_SQ及RX_LCAS_CRC_ERR欄位。
在匯點端之前,由於NMS在來源端執行新的成員通道之供應,一旦在匯點端完成不同延遲補償,該匯點端應可於所有新的成員通道上看見IDLE控制字串。這些通道之序列編號可設定為一數值,該數值係大於目前被匯點VCG所使用之最大序列。
然而,其係並未保證正確的結構或NMS或來源端之運作,所以軟體應檢查被接收之IDLE控制字串,且接收的序列編號應高於匯點VCG之目前最大編號。若偵測到任何錯誤,藉由設定所有成員通道成為重新設定(reset)以中止全部之供應處理,且通知NMS為故障。
讀取RX_CH_LCAS_CRC_ERR欄位,用以確定控制字串及序列編號係有效的。在此係假設沒有CRC錯誤,且該控制字串及序列編號係可預期的。
6.藉由將其寫入1,用以清除所有新的成員通道之RX_CH_VCAT_SQ_CHG位元。
因RX_CH_LCAS_CTRL_SQ欄位之重新設定數 值為0,故此步驟係必要的。當Orion在新的成員通道上處理第一控制封包時,該控制封包中之序列編號已非為0,導致RX_CH_VCAT_SQ_CHG位元被設定。
至此,由匯點VCG之觀點,供應處理已成功的完成,且可成功的通知NMS。
3.4 由VCG中止供應成員通道
當匯點節點需要由目前之匯點VCG中止供應新的成員道通時,NMS係指示以下匯點節點之結構參數:
接收LPID係分派至匯點VCG。
接收通道之身份應被中止供應。
訂定以下之假設:
成員通道已供應匯點VCG之成員,但該成員通道目前並未使用(即接收IDLE作為控制字串,其RX_CH_VCAT_ACCEPT位元並未設定)。
軟體執行以下操作,用以中止新的成員通道:
藉由設定新的成員通道之RX_CH_SW_CFG_EN位元,設定新的成員通道成為重新設定。
至此,由匯點VCG之觀點,中止供應處理已成功的完成,且可成功的通知NMS。
3.5 增加VCG之頻寬
在此假設遠端來源可同時增加多個成員通道。因此,對其任何一個傳送MST=OK狀態之前,匯點端 將一直等候,直至在所有新增的成員通道上看見ADD控制字串。依此方法一旦匯點端在所有新增的成員通道上看見NORM/EOS,匯點端將僅觸發RS_ACK。
若遠端來源在同一時間僅有增加一個成員之能力,接著由匯點端之觀點,利用此來源增加多個成員將被分解為許多不同的處理程序。由於此僅係增加多個成員通道之一特殊案例,此並不會對Orion基準匯點產生任何差異。
當匯點端需要增加新的成員至一匯點VCG時,NMS係指示以下匯點節點之結構參數:
接收LPID係分派至本區匯點VCG。
新增成員通道之身份。
訂定以下之假設:
成員通道已供應匯點VCG之成員,但該成員通道目前並未被用於載送負載(即接收IDLE作為控制字串,其RX_CH_VCAT_ACCEPT位元並未設定)。
軟體係執行以下操作,用以增加新的成員通道:
1.等候直至每一新增的成員通道接收到ADD控制字串,或協定錯誤或發生時間超過。
由於在此假設遠端來源節點係同時增加所有成員通道,軟體將等候,用以在傳送其任何之一的MST=OK之前於所有成員通道上接收ADD。
軟體可確定何時所有通道經由觀察新增的成員通道之RX_CH_LCAS_CTRL欄位,以接收ADD控制 字串。對於此目的,軟體可獲得這些欄位或使用其相關之中斷。
若在所有成員通道上看見ADD控制字串,該ADD控制字串被加入之前,發生時間超過,則軟體應中止此處理程序,且回報故障至NMS。
當軟體確定新增的成員通道上之接收控制字串已改變(不管經由獲得或使用RX_CH_LCAS_CTRL_CHG中斷),該軟體應檢查新的數值是否為ADD。同樣的,軟體應讀取其接收的序列編號,以便驗證序列編號之健全性,其中該序列編號係藉由來源節點指派至這些成員通道。其係形成一連續的序列,該序列係由1開始,並大於本區匯點VCG目前使用之最大序列編號。任何協定錯誤應導致處理程序之中止,且回報故障至NMS。
2.對於每一新增之成員通道,設定其RX_CH_VCAT_ACCEPT位元。
3.依據新增的成員通道,在匯點VCG之TX_SK_LCAS_INS_MST欄位中,對序列編號設定陰影(shadow)MST位元為OK。
在此假設其它成員之陰影MST位元保持為1。
4.觸發匯點VCG之TX_SK_LCAS_REV_SEL位元。
5.等候直到TX_SK_LCAS_REV_CHG_DONE位元被設定。
對此,軟體不是用於TX_SK_LCAS_REV_CHG_DONE中斷,就是用以獲得TX_SK_LCAS_REV_CHG_DONE位元。
6.等候直至每一新增的成員通道接收到NORM/EOS控制字串,或協定錯誤或發生時間超過。
由於在此假設遠端來源節點係同時增加所有成員通道,在此可預期來源將同時於新的成員接收通道上之NORM/EOS結尾開始。在觸發RS-ACK之前,軟體將等候,直到在所有新的成員通道上看到NORM/EOS控制字串。
當軟體確定新增的成員通道上之接收控制字串已改變(不管經由獲得或使用RX_CH_LCAS_CTRL_CHG中斷),該軟體應檢查新的數值為NORM或EOS,該數值係依據該通道是否為最大之序列編號。
在時間週期內,若匯點並未於所有成員通道看到NORM/EOS,此新的接收成員通道將接收NORM。其中一個具有最高序列編號之成員通道將接收EOS。其序列編號將與先前保持相同。其亦同樣的應被檢查。
軟體亦應檢查成員接收通道之RX_CH_LCAS_CTRL欄位,該RX_CH_LCAS_CTRL欄位係具有先前之最高序列編號,現在該欄位應設定為NORM。
除了先前最後之編號,在此亦假設現存成員接收通道之序列編號及控制字串(如果有的話)並未改變。
若任何協定在處理期間偵測到錯誤,則VCG即需要重新設定,且NMS通知故障。
7.對本區匯點VCG觸發TX_SK_LCAS_INS_RS_ACK位元之陰影複製。
8.觸發匯點VCG之TX_SK_LCAS_REV_SLE位元。
9.等候,直至TX_SK_LCAS_REV_SEL_CHG_DONE位元被設定。
至此,由本區匯點VCG之觀點,處理程序已成功的完成,且可通知NMS。
3.6減少VCG之頻寬
在此假設匯點端可獨立的對來源端之移除要求(即接收控制字串由NORM/EOS改變為IDLE)做出回應,無須由NMS獲得要求。當來源端由NMS獲得減少頻寬之要求,該來源端即傳送移除之要求。當來源端由匯點獲得適當的回應通知(即在移除成員上接收MST=FAIL及看見RS_ACK觸發)時,該來源端即通知NMS,若有需要的話,接著可要求匯點端中止供應成員。
在此說明書中雖未詳盡的描述,另一方法係NMS可要求匯點端移除一成員通道,即使該通道為NORM/EOS之狀態。(即來源端並未初始化一移除要 求)。此案例中,匯點端可扮演猶如本身已在通道上接收來自來源端之IDLE,但匯點端並不會傳送一RS_ACK信號至來源端。接著若有需要的話,該通道同樣的可中止供應。
在此假設遠端來源可試圖同時移除多個通道,即在相同多重訊框中,多個通道之控制字串可改變為IDLE。匯點端軟體應可處理它。
當軟體在匯點VCG之成員通道上接收RX_CH_LCAS_CTRL_CHG中斷時,其係執行以下操作:
1.等候約2K之核心時脈(core clock),並讀取VCG所有成員之RX_CH_LCAS_CTRL及RX_CH_VCAT_SQ編號。
此允許軟體可確定是否有超過一個成員通道接收到IDLE控制字串。其亦可允許透過檢查,以對抗協定錯誤。
依據被移除通道之序列編號,該序列編號且/或保留成員接收通道之控制字串可能已被改變。例如,若被移除通道成員具有最高序列編號,則具有第二高序列編號之成員接收通道的控制字串應被改變為EOS。
2.對每一接收IDLE控制字串之成員通道,其係依據先前(即在它接收IDLE之前)序列編碼為FAIL之數值來設定匯點VCG之TX_SK_LCAS_INS_MST 欄位的位元。
3.觸發匯點VCG之TX_SK_LCAS_REV_SEL位元。
4.等候直至TX_SK_LCAS_REV_SEL_CHG_DONE位元被設定。
5.對本區匯點VCG觸發TX_SK_LCAS_INS_RS_ACK位元之陰影複製。
6.觸發匯點VCG之RX_SK_LCAS_REV_SEL位元。
7.等候直到TX_SK_LCAS_REV_SEL_CHG_DONE位元被設定。
8.清除被移除成員通道之RX_CH_VCAT_ACCEPT位元。
至此,由匯點VCG之觀點,處理程序已成功的完成,且可通知NMS。
3.7 因故障減少VCG之頻寬
匯點端軟體需回應使用中之成員通道上所偵測到之故障(即在NORM/EOS狀態)。在此利用兩個案例來考慮故障之處理(即LOS、LOF、LOP、OOM),該故障係影響一成員通道,且不管該通道是否已知被保護。
若該通道未被保護,軟體係執行以下操作:
1.清除故障通道之RX_CH_VCAT_ACCEPT位元。
2.依據匯點之VCG之SK_LCAS_INS_MST欄位數值為FAIL,設定陰影MST位元。
3.觸發匯點VCG之X_SK_LCAS_REV_SEL位元。
4.等候直至設定TX_SK_LCAS_REV_SEL_CHG_DONE位元。
若該通道係被保護,軟體應對該被還原之通道等候一個定義的週期。若此未發生,軟體應對未保護之通道執行上述之步驟。
上述通道的還原不管係藉由切換至保護通道或藉由恢愎故障通道,軟體皆應執行以下操作:
1.檢查不同之延遲可補償此通道,使其成為成員。
2.不同延遲補償之後,軟體偵測通道上之控制字串係為DNU。
3.對成員通道設定RX_CH_VCAT_ACCEPT位元。
4.依據匯點VCG之TX_SK_LCAS_INS_MST欄位設定為OK的成員通道來設定陰影MST位元。
5.觸發匯點VCG之SK_LCAS_REV_SEL位元。
6.等候直至設定TX_SK_LCAS_REV_SEL_CHG_DONE位元。
3.8 改變反相控制擷取結構
當匯點端需要改變匯點VCG之成員通道的反相控制擷取結構時,NMS係指示以下匯點節點之結構參數:
該通道身份之反相控制擷取結構需要被改變。
對於每一初始成員通道,不管LCAS反相控制資訊是否由每一初始成員通道中擷取,若是的話則本區來源VCG之傳送LPID將被應用。
訂定以下之假設:
該通道已經為匯點VCGs的供應成員,該匯點VCGs係已啟用LCAS。
軟體係執行以下操作用以改變特定成員通道之反相控制擷取結構。
1.依下述設定每一成員通道:
若該通道將被用於擷取LCAS反相控制資訊,接著設定其;RX_CH_LCAS_REV_SO_LPID欄位提供的數值,且設定其RX_CH_LCAS_REV_EXT_EN位元。否則,清除其RX_CH_LCAS_REV_EXT_EN位元。
4 來源端方案
在此假設來源節點軟體,且並非為NMS管理傳送序列編號之排列,該傳送序列編號係用於傳送VCG之成員傳送通道。
4.1 建立VCG
當來源端需要建立一新的來源VCG時,NMS係 指示匯點節點以下之操作步驟:
該傳送LPID係可用於匯點VCG
VCG之通道類型
若有傳送通道之身份,開始即應被供應成為該來源VCG之新的成員。
若有每一初始成員通道,不管LCAS反相控制資訊是否被嵌入其中,若是的話則本區來源VCG之接收LPID將被應用。對於不同的本區匯點VCGs,不同的成員通道係有可能載送反相控制資訊。在某些或全部的初始成員通道,反相控制資訊亦有可能未被嵌入。
訂定以下之假設:
該傳送埠LPID並非於使用中(即沒有傳送通道設定此LPID,其係並未重新設定)。
若有初始成員通道的話,其係應與來源VCG有相同型態。
若有初始成員通道的話,其係並非為使用中(即設定其TX_CH_SW_CFG_EN位元),且其係由遠端匯點節點所繞徑(route)。
軟體執行以下結構步驟,用以建立來源VCG:
1.設定傳送LPID之TX_SK_VCAT_EN及TX_SK_LCAS_EN,並指派至來源VCG。
若任何傳送通道被指定初始化,並供應成為來源VCG,則剩下構步驟係與供應這些接收通道至現有來 源VCG所執行之步驟相同。
4.2 刪除VCG
假設在來源VCG被刪除之前,所有成員皆已中止供應。由硬體之觀點,來源VCG實際上係被刪除。
4.3 供應新的成員通道至VCG
當來源端需要供應新的成員道通至現存之來源VCG時,NMS係指示以下匯點節點之結構參數:
該傳送LPID係分派至來源VCG。
該傳送通道之身份應被供應成為該來源VCG之新的成員。
對於每一初始成員通道,不管LCAS反相控制資訊是否被嵌入其中,若是的話則本區匯點VCG之接收LPID將被應用。對於不同的本區匯點VCGs,不同的成員通道係有可能載送反相控制資訊。在某些或全部的初始成員通道,反相控制資訊亦有可能未被嵌入。
訂定以下之假設:
已設定該傳送LPID之TX_SO_VCAT_EN及TX_SO_LCAS_EN位元。
新的成員通道與來源VCG係具有相同型態。
新的成員通道並非於使用中(即設定其TX_CH_SW_CFG_EN位元),且其係由遠端匯點節點所繞徑。
軟體係執行以下操作,用以供應新的成員通道:
1.以下係設定每一新的成員通道:
設定新的成員通道之TX_CH_LPID欄位至傳送LPID,該傳送LPID係分派至來源VCG。
若該通道將被用於嵌入LCAS反相控制資訊,接著設定其TX_CH_LCAS_REV_EXT_SO_LPID欄位所提供之數值,且設定其TX_CH_LCAS_REV_EXT_EN位元。
2.藉由清除其TX_CH_SW_CFG_EN位元,使新的成員通道停止重新設定。由於在交握(handshake)之前新的成員通道並未增加負載,因此,此命令並不是十分重要。
值得注意的係由於TX_CH_LCAS_CTRL重新設定數值為IDLE,故不需設定新的成員通道之TX_CH_LCAS_CTRL欄位的陰影複製為IDLE及不需觸發來源VCG之TX_SO_LCAS_FWD_SEL位元。
4.4 由VCG中止供應成員通道
當來源節點需要由現存之來源VCG中止供應新的成員道通時,NMS係指示以下匯點節點之結構參數:
該傳送LPID係分派至來源VCG。
該傳送通道之身份應被中止供應。
訂定以下之假設:
成員通道已被供應為來源VCG之成員,但該成員通道目前並未用於傳送負載或反相控制資訊(即其 TX_CH_LCAS_CTRL欄位之主動複製係設定為IDLE,且其TX_CH_LCAS_REV_INS_EN位元並未設定)。
軟體係執行以下操作,用以中止新的成員通道:
藉由設定新的成員通道之TX_CH_SW_CFG_EN位元,設定新的成員通道成為重新設定。
至此,由來源VCG之觀點,中止供應處理已成功的完成,且可成功的通知NMS。
4.5 增加VCG之頻寬
在此假設遠端匯點可同時增加多個成員通道。依此表示在所有被增加的成員通道上回應增加命令之後,遠端匯點將觸發RS_ACK。當增加多個成員時,來源軟體係將所有被增加的成員通道之控制字串在多重訊框中設定為ADD。
若遠端匯點在同一時間僅有增加一個成員之能力,來源端軟體可分解處理程序,其係將需要增加之多個成員分解為多個單一成員之增加子處理程序。
一般來說係不可能知道遠端匯點是否具有在同一時間增加多個成員之能力。但來源可同時在多個成員上傳送ADD控制字串,試想匯點將同時回應通知,但遠端匯點可能不會同時做出回應。因此來源端軟體應可以處理接收的多個RS_ACK觸發。為了簡化之緣故,此說明書中將不討論此案例。
當來源需要增加新的成員至一來源VCG時, NMS係指示以下匯點節點之結構參數:
該接收LPID係分派至本區匯點VCG。
新增成員通道之身份。
訂定以下之假設:
成員通道已被供應為來源VCG之成員,但該成員通道目前並未被用於載送負載(即傳送IDLE作為控制字串)。
軟體執行以下操作,用以增加新的成員通道:
1.設定所有被增加的成員通道之TX_CH_LCAS_CTRL欄位為ADD。
2.分派序列編號至新增的成員,該序列編號係由1開始,並高於本區來源VCG目前使用之最大序列編號。(或若這次為第一次加入成員,則為0)。
3.設定每一被增加的成員通道之TX_CH_VCAT_PL_SQ及TX_CH_LCAS_OH_SQ,將序列編號分派至其中。
4.觸發來源VCG之TX_SO_VCAT_FWD_SEL位元。
5.等候直至來源VCG之TX_SO_VCAT_FWD_CHG_DONE被設定。
對此,軟體不是用於TX_SO_VCAT_FWD_CHG_DONE中斷,就是用以獲得TX_SO_VCAT_FWD_CHG_DONE位元。
6.等候直至每一新增的成員通道接收到 MST=OK狀態,或發生時間超過。
由於在此假設遠端匯點將對所有增加的成員傳送MST=OK,在觸發RS_ACK之前,軟體將一直等候直至在所有成員通道上看見MST=OK。
軟體可確定何時所有通道可經由觀察來源VCG之RX_SO_LCAS_EXT_MST欄位來接收MST=OK狀態。軟體可獲得此欄位,或使用相關之RX_SO_LCAS_EXT_MST_CHG中斷。對於特定增加的成員通道,此欄位中之用於尋找的位元數值係依據分派至該通道之序列編號。
若在所有增加的成員通道上看見MST=OK之前即發生時間超過,軟體應中止該處理程序,且回報故障至NMS。為中止該處理程序,軟體將設定所有增加的成員通道之控制字串為IDLE,且觸發TX_SO_VCAT_FWD_SEL位元。
7.設定增加的成員通道之TX_CH_LCAS_CTRL欄位為NORM/EOS(對於成員,EOS係具有最高序列編號)。
8.若已存在主動成員,則設定先前具有最高序列之目前成員的TX_CH_LCAS_CTRL欄位為NORM。
9.觸發來源VCG之TX_SO_VCAT_FWD_SEL位元。
10.等候直至來源VCG之 TX_SO_VCAT_FWD_CHG_DONE位元被設定。
11.等候直至本區VCG觸發接收的RX_ACK數值,或RS_ACK期限過期。
至此,由本區來源VCG之觀點,該增加頻寬之處理程序已成功的完成,且可通知NMS成功之訊息。
4.6 減少VCG之頻寬
在此假設遠端匯點可同時移除多個成員通道。依此表示一旦在所有被移除的成員通道上回應移除命令之後,遠端匯點將觸發RS_ACK。當移除多個成員時,來源軟體係將所有被移除的成員通道之控制字串在多重訊框中設定為IDLE。
若遠端匯點在同一時間僅有移除一個成員之能力,來源端軟體可分解處理程序,其係將需要移除之多個成員分解為多個單一成員之移除子處理程序。
一般來說係不可能知道遠端匯點是否具有在同一時間移除多個成員之能力。但來源可同時在多個成員上傳送IDLE控制字串,試想匯點將同時回應通知,但遠端匯點可能不會同時做出回應。因此來源端軟體應可以處理接收的多個RS_ACK觸發。為了簡化之緣故,此說明書中將不討論此案例。
當來源需要增加新的成員至一來源VCG時,NMS係指示以下匯點節點之結構參數:
該接收LPID係分派至本區匯點VCG。
移除成員通道之身份。
訂定以下之假設:
該成員通道已被供應,且負載載送來源VCG之成員(即傳送NORM/EOS作為控制字串)
軟體係執行以下操作,用以增加新的成員通道:
1.設定所有被移除加的成員通道之TX_CH_LCAS_CTRL欄位為IDLE。
2.在此並不一定需要,重新分派序列編號至某些或全部的保留成員通道,以便保留的成員通道可維持一連續之區段,該區段係由0開始。若需要的話,則設定成員之TX_CH_LCAS_OH_SQ及TX_CH_VCAT_PL_SQ欄位為新的序列編號。亦不一定需要,對具有最高序列之保留的成員將其TX_CH_LCAS_CTRL欄位數值由NORM改變為EOS。
3.觸發來源VCG之TX_SO_VCAT_FWD_SEL位元。
4.等候直至來源VCG之TX_SO_VCAT_FWD_CHG_DONE位元被設定。
5.等候直至每一移除的成員通道接收到MST=FAIL狀態,或發生時間超過。
由於在此假設遠端匯點將對所有移除的成員傳送MST=FAIL,在觸發RS_ACK之前,軟體將一直等候直至在所有成員通道上看見MST=FAIL。
軟體可確定何時所有通道可經由觀察來源VCG 之RX_SO_LCAS_EXT_MST欄位來接收MST=FAIL狀態。軟體可獲得此欄位,或使用相關之RX_SO_LCAS_EXT_MST_CHG中斷。對於特定增加的成員通道,此欄位中之用於尋找的位元數值係依據分派至該通道移除之前的序列編號。
6.等候直至本區VCG觸發接收的RX_ACK數值,或RS_ACK期限過期。
至此,由本區來源VCG之觀點,該減少頻寬之處理程序已成功的完成,且可通知NMS成功之訊息。
4.7 因故障減少VCG之頻寬
當一未被保護之成員通道於使用中(即在NORM/EOS狀態)故障,該匯點端將傳送MST=FAIL狀態至來源端。當來源端偵測到應執行以下操作:
1.設定所有故障成員通道之TX_CH_LCAS_CTRL欄位為NDU。
2.若該故障之成員並非為來源VCG的最後一個成員,則以1之數值減少具有較高序列編號的通道之所有成員的TX_CH_VCAT_PL_SQ欄位。
3.觸發來源VCG之TX_SO_VCAT_FWD_SEL位元。
4.等候直至來源VCG之TX_SO_VCAT_FWD_CHG_DONE位元被設定。
當故障成員通道復原,來源端將傳送MST=OK狀態至來源端。當來源端偵測到這訊息,其係執行以 下操作:
1.若此復原之通道係最後一個成員,設定該復原成員通道之TX_CH_LCAS_CTRL欄位為EOS,且具有第二高序列之成員設定為NORM。
否則設定此復原通道的TX_CH_LCAS_CTRL欄位為NORM。
2.若此復原之通道並非為最後一個成員,則以1之數值增加具有較高序列編號的通道之所有成員的TX_CH_VCAT_PL_SQ欄位。
3.觸發來源VCG之TX_SO_VCAT_FWD_SEL位元。
4.等候直至來源VCG之TX_SO_VCAT_FWD_CHG_DONE位元被設定。
4.8 改變反相控制擷取結構
當來源端需要改變來源VCG之成員通道的反相控制擷取結構時,NMS係指示以下來源節點之結構參數:
該通道之身份之反相控制擷取結構需要被改變。
對於每一通道,不管每一通道中是否嵌入LCAS反相控制資訊,若是的話則本區來源VCG之接收LPID將被應用。
訂定以下之假設:
該通道已經為來源VCGs的供應成員,該來源 VCGs係已啟用LCAS。
軟體係執行以下操作用以改變特定成員通道之反相控制擷取結構:
1.依下述設定每一成員通道:
若該通道將被用於嵌入LCAS反相控制資訊,接著設定其;RX_CH_LCAS_REV_SO_LPID欄位提供的數值,且設定其RX_CH_LCAS_REV_EXT_EN位元。否則,清除其RX_CH_LCAS_REV_EXT_EN位元。
排列
參考圖3A至3E,其係依據本發明說明一種用於接收通道設定之硬體系統概觀圖。本實施例係說明LCAS具體功能之接收通道,及各種具體新穎的實施例和本發明之功能。有關本發明之功能在以下通道排列、解排序及其它功能中有進一步詳盡之描述。
參考圖3A,其係依據本發明所設置排列器之說明。系統400在接收通道中包括一高階及低階(HO/LO)多重訊框指示(MFI)分析器,習知的ANA。該ANA傳送資料流至入管理器405,且具有多先進/先出(FIFO)記憶體儲存排列,FIFO-A(406)、FIFO-B(408)、...、FIFO-N(410)。此結構係習知之技術。依據本發明,寫入管理器在每一FIFO中接收VCG之每一成員,且寫入資料至多重通道透通412。在本實施例中,該寫入管理器係設置於一靜態隨機存取記 憶體中(SRAM)。其係為習知之技術,然而,亦可使用不同結構及不同類型之記憶體和儲存組件。依據本發明,該讀取管理器414係設置用以由多重通道透通中讀取資料至記憶儲存器。該讀取管理器與寫入管理器相同的亦設置為先進及先出,-A(416)、-B(418)、...、-N(420)。依據本發明,當一虛擬串聯群組(VCG)之成員完成,且排列於多重通道透通中時,該讀取管理器即由多重通道透通讀取至個別的FIFO儲存器。一旦排列後,該讀取管理器係傳送排列的VCG至解排序器。在本實施例中,該讀取器係設置於一靜態隨機存取記憶體(SRAM)中。可了解的是記憶體結構係彈性的,且亦有可能係其它型態之記憶體類型或結構,並不會背離本發明之精神,其係於附錄中專利所屬範圍中定義。
依據本發明之實施例,參考圖3B之流程圖,其係接收通道操作之說明。在步驟424中,其係接收輸入VCG通道之資料,例如圖3A中之ANA 402。在步驟426中,檢查LCAS封包鑑別(LPID)用以判定該傳輸是否為一VCAT傳輸。若否,接著該傳輸係傳送至POH,於圖3A中之422,且該處理程序返回步驟424。若LPID指示為一VCAT傳輸,該程序前進至步驟430,資料係於寫入管理器中儲存,於圖3A之405,其係可能為SRAM。在步驟432中,該寫入管理器寫入MTC,於圖3A之412,其係可能為DRAM。在步 驟434中,判別VCG之成員是否已排列。若否,接著該程序返回至步驟424,並接收下一筆資料。在步驟434中若已排列,以下有進一步更詳盡之描述。接著在步驟436中,利用讀取管理器讀取VCG之成員。在步驟438中,資料係傳送至解排序器用以進行下一步之處理,且在步驟440中將結果輸出。
參考圖3C,其係一方塊圖用以象徵性的說明群組成員之排列。在步驟448中,接收一輸入資料,其中該資料並未排列,並非為適當之序列。在步驟450中,其係執行排列,其中在此範例中群組之兩個成員相同的群組係被排列。在步驟452中,該序列係被重新排序,以便VCG之成員可依序的排列。
參考圖3D之圖表,其係於接收通道中另一排列程序之實施例,由接收通道之觀點,亦可視為減少排列。在第一個步驟442中,其係在多重通道透通上接收來自寫入管理器之個別通道A、B、C及D。依據本發明之實施例,這些一開始係利用讀取管理器所讀取,其中第一個及時被接收之通道係由讀取器所讀取,且該MFI編碼係設定為GO狀態。在讀取管理器中係有三種狀態。由寫入管理器至MCT,GO狀態係一完全的接收通道,若其它通道完整的接收及排列及亦同樣為GO狀態,可隨時準備好被讀取。排出(Drain)狀態係通道之一種狀態,其係完整的通道資料未完全的在MCT中接收,並且依然需要接收進一步資料來 組成完整的資料。等候(Wait)或失速(Stall)狀態係在初始通道之前已接收一通道,當MFI設定即可準備通過第一個讀取通道,且其狀態係一直設定為等候,直到所有通道皆被排列。
如圖所示,由於通道A係第一個被接收之通道,通道A為出發(GO)狀態。在此MFI編碼已設定。因通道B在時間上較晚接收,且尚本接收完成,故通道設定為排出狀態。相對的,通道B在先前已被接收,其係完整的且設定為等候狀態,用以等候其它通道趕上排列。通道D之案例亦相同,其係設定為等候狀態。MFI亦可能被重新設定,用以消除等候或失速狀態。然而,LCAS之規格需要無碰撞(hitless)操作,而重新設定MFI將導致碰撞。因此,在較佳的實施例中,MFI係於接收群組之第一個通道成員時設定,且群組中隨後到達之成員亦依此設定。
在下一個步驟444中,實際上所有到達之資料皆設定為GO,通道係被重新排列。在步驟446中,所有通道A-D係設定為GO之狀態,其係指示所有通道皆已排列完畢,在GO之狀態中係已準備好由讀取管理器所讀取。
至此,讀取管理器讀取全部之VCG。該VCG接著傳送至排序器用以排列。
依據本發明,不管硬體模組係於單一印模或晶片集合中執行,皆可允許個別的排列來接收資料序列之 接收通道資料。接下來之操作,接收通道之序列係被記錄。其係透過先前技術或得改善,其中這些程序係在單一步驟中完成。結果,資料係平順的到達及存在於迴路之中,沒有抖動(jitter),並導致耦合。操作中,最先完成排列,且一旦所有皆完成排列,其係在時間領域中由記憶體資料多個次序中被讀取。該操作係平順、單調的,每一槽係獲得一時間槽。所有之操作皆事先計劃的。此架構中沒有擁塞、資料的爆滿或不確定性存在。每一通道可獲得一週期時間槽,所以資料可平順的傳遞及流通。
比照先前之操作,當資料輸入時即被儲存,且依相同的次序取出。重新排列或同步依程序塊(chunk)完成可減少擁塞問題,且使用較佳記憶體處理。此架構改變傳遞樣本,且仲裁係十分複雜。依據本發明,此週期之解決方式係較平順,其係可先執行排列,再接著消除任何擁塞或遺失之資料。
參考圖3E,其係依據本發明說明一種用設定MFI編號之系統流程圖。在步驟458中,利用成員通道接收通道資料。在步驟460中,MFI編號係由通道中讀取出來。在步驟462中,其係判斷該通道是否為第一個由群組讀取之通道。若是,接著為該群組設定MFI編號。接著在步驟484中判斷是否已接收所有成員資料,若否,接著返回至步驟458,其中步驟458係進一步將到達之成員通道寫入。在步驟460中,通道之 MFI係被讀取,且若通道不是第一個通道,該程序則由步驟462進行至步驟470,步驟470中,接著接收通道之MFI與第一個通道所建立的集合MFI比對。步驟472中,其係判斷該MFI是否大於集合MFI。若該MFI大於集合MFI,接著在步驟474中則將狀態設定為等候。若否,或該狀態已設定則在步驟476中判斷MFI是否小於集合MFI。若是,假設在先前步驟中其係為已知的,則在步驟478中設定該狀態係為排出,且該程序推進至步驟480,步驟480係判斷該MFI是否等於集合MFI。若該MFI等於集合MFI,則在步驟482中設定狀態為GO,且該程序返回至步驟484,步驟484中係判斷是否已接收所有成員資料。此程序於步驟458及隨後步驟之迴圈中執行,直到所有通道皆已被接收。返回參考圖3D,其係說明如何依圖3E所描述,在接收通道後設定MFI狀態。依舊參考圖3D,該程序係於圖3E中說明當每一通道被接收時如何設定其狀態。如通道A係第一個及時到達之通道,其係設定為GO狀態,並建立第一個MFI。其它通道被接收之後如通道B、C及D,為了設定通道狀態係比對MFI。圖3D中,步驟444表示因通道A為第一個到達之通道,因此將通道A設定為GO狀態。在讀取群組及進行下一步程序之前,所有的通道皆須設定為GO狀態。因通道B並未完全被接收,故通道B設定為排出,且通道C及D依然保持等候或 失速狀態直到通道B完成傳輸。在步驟446中,一旦所有通道皆到達形成通道A、B、C及D,則所有通道皆設定為GO且準備好被讀取管理器讀取。
返回參考圖3A,當所有通道皆設定為GO,讀取管理器係讀取通道資料,其中所有通道係於FIFO 416、418及其它FIFO中接收每一通道。實際上,該讀取管理器可一再的讀取MCT 412直到有通道皆設定為GO狀態。一旦皆為GO狀態,則利用讀取管理器讀取通道全部資料。在操作中,當通道資料由ANA 402到達時,該寫入管理器係接收通道資料,並且將資料儲存於MCT記憶體儲存器中。在此實施例中,該寫入管理器係一SRAM,且該MCT係一DRAM,該讀取管理器亦可能為SRAM。因此,寫入管理器及讀取管理器之大小係小於MCT,該MCT係一DRAM用於儲存大量資料。當寫入管理器接收多個通道之資料時,該寫入管理器不需儲存大量資料,其可將大量資料寫入至MCT。該MCT可儲存資料直到該資料排列完成。一旦排列完成,讀取管理器可利用時間領域多路傳輸之方法,由MCT讀取資料。讀取管理器之輸出係傳送至解排序模組,解排序模組係依此重新排列道資料。
概觀
在實施例中,一接收電路,或VCT_RX區塊之功能係被分配於多個模組之中。一實施例中,該模組 包括一結構(CFG)模組、一日曆/故障/註冊模組、一MFI分析器模組,一排列器寫入管理器(ALIG_WR)、一排列器讀取管理器(ALIG_RD)、一LCAS/VC控制器(LVC)及一負載解排序器(DSQ)。在較佳的實施例中,非VCAT封包流傳輸與VCT傳輸於VCT_RX區塊中係依不同之路徑傳遞。
結構(CFG) 5.1 概觀
CFG模組係維護所有整體結構與狀態參數及所有中斷狀態參數。對執行所有其它設定及狀態註冊之模組,CFG係直接指示CPU需求。該CFG模組可由單一CUP需求中產生多個需求,用以執行註冊,其中該註冊參數係來自多個合併模組。
該CFG執行間接存取方案,該方案係於RX_VCT區塊中由所有其它模組使用。值得注意的係在這些模組中所有結構及狀態參數係用於間接存取,而CFG區塊中之參數係直接的被存取。間接存取方案與在封包區塊中所使用的係相同低,即其係支援自動增加模組。
CFG係負責產生中斷摘要狀態及對Orion中頂級CPU模組產生中斷。
5.2 介面
為了由CPU傳遞結構或狀態讀取/寫入需求,在VCT_RX區塊中,CFG介面至所有其它模組係使用個 別的點對點(point-to-point)匯流排。對於通道狀態上之同位元錯誤,可產生ALIG_WR模組之中斷。其係表示對於ALIG_RD模組同位元錯誤事件,係利用受影響通道毀壞的讀取指標。該ALIG_RD模組由ALIG_WR模組合併同位元錯誤,其中該ALIG_WG係具有其通道階層同位元錯誤事件。由於ALIG_RD及LVC係利用相同日曆所驅動,CFG區塊可排列發生於相同時脈之中斷(沒有來自DSQ之中斷)。
5.3 結構及狀態參數
在實施例中,CFG模組係維護以下參數
所有整體結構參數
所有通道階層中斷啟用結構參數
所有匯點埠中斷啟用結構參數
所有來源埠中斷啟用結構參數
所有整體狀態參數
所有整體中斷狀態參數
所有通道階層中斷狀態參數
所有匯點埠階層中斷狀態參數
所有來源埠階層中斷狀態參數
這些參數係利用以下如反相器、正反器或其它記憶體裝置或結構儲存:
整體參數係利用正反器(flop)執行。
匯點埠階層或來源埠階層中斷啟用及中斷狀態參數係利用正反器(flop)執行。
通道階層中斷啟用及中斷狀態參數係利用記憶體執行。
維持在CFG區塊中,硬體及軟體間參數之碰撞係依據碰撞演算法
來處理,該演算法係將處理程序授權給硬體及軟體。在一實施例中,該程序係如下所述。
對於結構參數,若來自軟體之寫入要求與來自硬體之寫入要求相抵觸,則來自軟體之數值將被硬體所使用。
對於整體狀態或中斷狀態參數,若來自軟體之寫入要求與來自硬體之寫入要求相抵觸,則來自硬體之數值將傳遞至軟體。
5.3.1 整體結構
VCAT DRAM係依據大小及群組大小所設置。這些參數係固定的。當VCT_RX區被未被重新設定(或當任何被啟用之VCAT通道未被重新設定),這些參數係不會改變的。
計數器係設置用於獲得OOM之輸入/輸出及獲得LOM。這些指令係依RX_VCAT_HO_OOM1_IN、RX_VCAT_HO_OOM1_OUT、RX_VCAT_LO_OOM1_IN及RX_VCAT_LO_OOM1_OUT等之格式。這些參數亦係固定的,且當VCT_RX區被未被重新設定(或當任何被啟用之VCAT通道未被重新設定),這些參數係不 會改變的。
其它計數器係用於設定及清除LCAS持續的CRC警報(DCRC)。其係依RX_LCAS_DCRC_N1、RX_LCAS_DCRC_K1等之格式。同樣的,這些參數係固定的,且當VCT_RX區被未被重新設定(或當任何被啟用之VCAT通道未被重新設定),這些參數係不會改變的。
MFI獲得係設置用於獲得每一通道之MFI數值。其指令係依RX_VCAT_MFI_CAP_CHAN1、...RX_VCAT_MFI_CAP_CHAN(n)及RX_VCAT_MFI_CAP_DONE_INT_EN之格式。
群組身份係同樣的被獲得。其指令可能為RX_LCAS_GID_CAP_PORT、RX_LCAS_GID_CAP_DONE_INT_EN等之格式。
依據恰當之臨界點,通道之DRAM FIFO階層量測係於軟體中被設置。其指令可能為RX_VCAT_DRAM_FIFO_LVL_CAP_CHAN、RX_VCAT_DRAM_FIFO_LVL_THSLD、RX_VCAT_DRAM_FIFO_LVL_CAP_DONE_INT_EN、RX_VCAT_DRAM_FIFO_BELOW_THSLD_CHG_INT_EN之格式,或其它相似格式。
中斷摘要啟用係設置於各種環境及應用之間。例如,中斷啟用位元可設置用於在STS階層(48位元暫 存器)之中斷摘要狀態。其係亦可設置用於在埠階層(128位元暫存器)之中斷摘要狀態,及用於所有通道之中斷摘要狀態位元或中斷啟用位元及所有埠之中斷摘要狀態位元。這些技術將可了解中斷結構之種類,用以啟用不同的應用。
DRAM可設置用於讀取要求FIFO溢位(overflow),其係使用一中斷啟用。其指令可變為RX_VCAT_DRAM_RD_REQ_FIFO_OVFL_CNT_CHG_INT_EN之格式。
DRAM亦可設置用於啟用一寫入未準備好的(黏性的)錯誤中斷啟用。其係可能為RX_VCAT_DRAM_WR_NOT_RDY_ERR_INT_EN之格式。同樣的,DRAM可能設置用於讀取未準備好的(黏性的)錯誤中斷啟用,其係可能為RX_VCAT_DRAM_RD_NOT_RDY_ERR_INT_EN之格式。
5.3.2 通道階層中斷啟用結構
通道中斷啟用結構參數可被群組化成為一雙記憶體部份,如1344x12雙埠記憶體。其係可由高階及低階通道所共享。以下表格之實施例顯示了此記憶體中整體之架構。
在一較好實施例中,硬體並不會停止來自通道之中斷,該通道係已於記憶體中登錄,且具有一同位元錯誤。
5.3.3 匯點埠階層中斷啟用結構
以下表格顯示匯點埠中斷啟用結構參數。
值得注意的是,由於所有匯點埠階層結構及狀態 參數係於正反器中執行,所以匯點埠階層中並無結構或控制同位元。
5.3.4 來源埠階層中斷啟用結構
以下表格顯示來源埠中斷啟用結構參數。
值得注意的是,對於來源埠並無結構參數或狀態變數,所以來源埠階層中並無結構或控制同位元。
5.3.5 整體狀態
整體狀態係包括MFI獲得狀態、DRAM-FIFO階層量測狀態、中斷摘要狀態,及包括以下參數,DRAM讀取要求FIFO溢位、DRAM寫入未準備好錯誤及其它狀態資訊。實施例之說明如下。
MFI獲得狀態
○ RX_VCAT_CHAN1_MFI
○ RX_VCAT_CHAN2_MFI
○ RX_VCAT_MFI_CAP_DONE
DRAM-FIFO階層量測狀態
○ RX_VCAT_DRAM_FIFO_LVL
○ RX_VCAT_DRAM_FIFO_LVL_CAP_DONE
○ RX_VCAT_DRAM_FIFO_LVL_BLW_THSLD_CHG
中斷摘要狀態
○ STS階層(於2暫存器中)之中斷摘要狀態位元
○ VT階層(於48暫存器中)之中斷摘要狀態位元
○ 埠階層(於4暫存器中)之中斷摘要狀態位元
○ 所有通道(於STS階層)之中斷摘要狀態位元
○ 所有埠之中斷摘要狀態位元
DRAM讀取要求FIFO溢位
○ RX_VCAT_DRAM_RD_REQ_FIFO_OVFL_CNT
○ RX_VCAT_DRAM_RD_REQ_FIFO_OVFL_CNT_CHG
DRAM寫入未準備好錯誤
RX_VCAT_DRAM_WR_NOT_RDY_ERR
以下整體中斷狀態位元可於一暫存器中被群組化:
●RX_VCAT_MFI_CAP_DONE
●RX_VCAT_DRAM_FIFO_LVL_CAP_DONE
●RX_VCAT_DRAM_FIFO_LVL_BLW_THSLD_CHG
●RX_VCAT_DRAM_RD_REQ_FIFO_OVFL_CNT_CHG
●RX_VCAT_DRAM_WR_NOT_RDY_ERR
●所有通道之中斷摘要狀態位元
●所有埠之中斷摘要狀態位元
5.3.6 通道階層中斷狀態
除了RX_CH_VCAT_FAIL_STICKY之外,所有通道中斷狀態參數可被群組化成為一雙埠1344x12記憶體,其係可由高階及低階通道所共享。以下表格顯示此記憶體結構整體架構的實施例。
當RX_CH_VCAT_MFI_EN設定為0時,這些位元即可選擇性的重新設定。這些參數亦僅對低階通道有效,其中該低階通道係載送延伸信號標籤。當擷取延伸信號標籤時,硬體並未被設置用來檢查V5位元是否指示延伸信號標籤已被使用。也因此該記憶體並未利用同位元保護。
5.3.7 匯點埠階層中斷狀態
以下係匯點埠中斷狀參數態之一實施例,其指令係為RX_SK_VCAT_RBID_CHG_DONE,大小為1位元,且該數值初始化或匯點埠重新之後設定係為0。 若所有匯點埠階層結構及狀態參數於正反器中執行,則匯點埠階層中並無結構或控制同位元。
5.3.8 來源埠階層中斷狀態
來源埠中斷狀態參數之實施例係為RX_SO_LCAS_MST_CH及RX_SO_LCAS_RS_ACK_CHG,每一參數大小為1位元,且初始化後具有0之數值。若來源埠沒有結構參數或狀態變數,則來源埠階層中並無結構或控制同位元錯誤中斷狀態位元。亦即,若來源埠階層沒有重新設定,這些狀態變數必須永遠利用軟體寫入1。
5.4 中斷摘要產生
中斷狀態摘要可於多個階層中執行。例如,有關STS-1可能具有所有中斷狀態參數之摘要。值得注意的是,若STS-1係VT映射,則接著此摘要將覆蓋STS中所有VT通道之中斷狀態參數。該STS中斷摘要位元係保留於48正反器中。
有關VT通道亦可能具有所有中斷狀態參數之摘要。該VT摘要位元係利用STS所組成,且保留於48x28正反器中。若一STS通道並非VT映射,則依據STS該VT通道之摘要狀態位元將被清除。
有關匯點埠亦可能具有所有中斷狀態參數之摘要。值得注意的是,這些中斷參數僅對已啟用VCAT之匯點埠有意義。該匯點埠中斷摘要位元係保留於128正反器中。
此外,有關來源埠亦可能具有所有中斷狀態參數之摘要。值得注意的是,這些中斷參數僅對已啟用VCAT之匯點埠有意義。該來源埠中斷摘要位元係保留於128正反器中。
當一通道重新設定時,CFG即清除該通道之中斷狀態位元。CFG並非直接清除該通道之摘要中斷位元。當匯點埠為重新設定時,CFG即清除該匯點埠之中斷狀態位元。CFG並非直接清除該匯點埠之摘要中斷位元。在此來源埠沒有重新設定用以清除來源埠階層中斷狀態位元。軟體需要將1寫入RX_SO_LCAS_MST_CHG及RX_SOL_LCAS_RS_ACK_CHG用以將其清除。若特定中斷狀態位元之中斷啟用結構位元未被設定,則中斷狀態位元並不會對摘要有貢獻。
5.4.1 通道中斷摘要產生
CFG模組係設置用於處理兩個獨立來源之同步通道中斷,例如,ANA及ALIG_RD/LVC。為處理此問題,對來自ANA及ALIG_RD/LVC之通道階層中斷狀態參數,CFG可設置使用兩個分開之雙埠記憶體。為執行中斷摘要,CFG模組可連續的讀取通道中斷狀態記憶體及匯點與來源埠中斷狀態暫存器。該通道中斷摘要產生程序係與CPU共享雙埠記憶體之埠,且CPU係具有優先存取權。
6.日曆故障註冊模組(CFR) 6.1 概觀
CFR模組可能具有多個功能。例如,CFR模組可能具有以下功能。
首先,儲存所有通道階層結構。對於一通道依據總體DRAM在VCAT之空間配置,計算DRAM空間配置之啟始及結束位址、該通道之類型及DRAM特徵模型。此外,CFR模組可能設置用於產生內部自由運作(free running)日曆(1x、2x、56x及62x),該自由運作日曆係依據通道結構設定用以貫穿VCT_RX區塊。該CFR模組亦可設置用以與日曆資訊一起對其它模組分配通道結構及故障/重新設定狀態。並且該CFR模組亦可設置用於處理VCAT排列故障。日曆之產生、DRAM空間配置及故障處理功能係於VCT_Aligner文件中描述。
6.2 介面
該CFR模組係接合至ANA、ALIG_WR、ALIG_RD及CFG模組。對於介面信號,請參考”vct_rx_cfr”微架構文件。
6.2.1 對ANA之介面
對ANA之介面主要係用於使ANA獲得通道結構資訊。但對於來自ANA構要求之回應係包括一通道故障位元,除了結構參數之外。
ANA模組並不處理來自CRF模組之通道故障指示。該ANA模組僅傳遞此信號至ALIG_WR模組, 該ALIG_WR模組即使用此信號判斷資料是否應寫入相關通道之分級(staging)FIFO,及相關通道之寫入指標是否被損壞。值得注意的是,即使ANA模組沒有在通道上回報一警告,該通道故障條件亦可存在。
CFR係傳遞CH_CFG_PRTY_ERR條件作為部份結構,並回應至ANA。雖然其並非由ANA所要求之功能,但ANA係於狀態記憶體中儲存該位元。當ANA偵測到改變時,即產生一中斷至CFG。
6.2.2 對ALIG_WR之介面
依據1x及2x日曆,CFG對ALIG_WR之介面具有兩個獨立信號群組:
對於CFR,依據2x日曆之信號群組係將目前日曆循環中通道之TID及故障條件傳遞至ALIG_WR,其係使用這些資訊用以移動來自分級FIFO之資料至主要FIFO。
對於CFR,依據62x日曆之信號群組係將目前日曆循環中通道之TID、故障條件及於DRAM中空間配置之起始與結束位址傳遞至ALIG_WR,其係使用這些資訊用以移動來自主要FIFO之資料至DRAM。
6.2.3 對ALIG_RD之介面
在一實施例中,CFG對ALIG_RD之介面具有五個獨立之信號群組。這些信號中之四個可能係依據56x、62x及1x日曆。
對於CFR,依據56x日曆之信號群組係將目前日曆循環中通道之TID、重新設定及故障條件及於DRAM中空間配置之起始與結束位址傳遞至ALIG_RD,其係使用這些資訊用以移動來自DRAM之資料至通道的主要FIFO,以及重新設定通道的主要FIFO。
對於CFR,依據2x日曆之另一信號群組係將目前日曆循環中通道之TID,重新設定及故障條件傳遞至ALIG_RD,其係使用這些資訊用以移動來自FIFO之資料至通道的分級FIFO,以及重新設定通道的分級FIFO。
對於CFR,依據1x日曆之另一信號群組係將目前日曆循環中通道之TID、重新設定及故障條件、結構、類型、成員VCG之重新設定狀態、結構記憶體登錄之同位元狀態,及目前日曆產生之計數器傳遞至ALIG_RD,其係使用這些資訊來移動分級FIFO之資料至LVC,以及重新設定通道及所維護之VCG狀態。
通道結構資料與1x日曆一起傳遞所需之資料不但包括ALIG_RD亦包含下游LVC及DSQ模組。通道類型及日曆產生計數器不但被ALIG_RD使用,亦提供DSQ運用。
對於ALIG_RD,依據1x日曆之另一信號群組係將目前日曆循環中通道之TID、DRAM溢位錯誤或警告偵測狀態傳遞至CFR,其係使用這些資訊來更新通 道及VCG故障狀態。另一信號群組並未以日曆為基準,但被ALIG_RD用以獲得來自CFR通道之故障狀態。
在CFR及CFG間之介面,CFG係存取CFR以讀取及寫入通道結構。CFR係設置用以傳送中斷事件至CFG。
6.3 結構
CFR模組係維護所有每一通道結構參數及STS通道結構設定參數。該CFR模組亦維護所有匯點埠階層結構參數,除了重新排列緩衝區ids(RX_SK_VCAT_RBID0/1)以外。此結構資訊係與1x日曆一起傳送至所需之區塊。
6.3.1 STS通道結構設定
STS通道結構設定暫存器係使用48x9正反器所執行。
附註1:該通道結構設定參數一般係固定的,當任何目前被變更所影響之通道脫離重新設定時,這些參數不應被改變。亦即,VCT_RX區塊中這些參數之改變應與SONET/SDH接收區塊中對應之結構一同協調完成。
6.3.2 通道階層結構
由於ANA模組需同時存取有關自由運作1x日曆之結構資訊,該自由運作1x日曆係由其它模組所驅動,ANA所需之結構資訊係複製於分開的雙埠記憶體中。當軟體更新這些參數時,兩個記憶體將被更新。當軟體讀取記憶體時,記憶體中被1x日曆所使用之數值將被取出。
6.3.2.1 被1x日曆存取的通道結構之記憶體
所有通道階層結構參數係被群組化成為一1344x25之雙埠記憶體,其係由高階及低階通道所共享。以下表格顯示此記憶體中之項次架構。
附註1:這些用於操作之參數並不需要初始數值。然而,對於同位元保護,其係設定為0。
附註2:操作循環期間,若該通道係屬於啟用VCG之LCAS的成員,通道脫離重新設定之前RX_CH_VCAT_ACCEPTED參數應設定為0。
附註3:RX_CH_VCAT_MFI_EN與RX_CH_SW_CFG_EN係各自獨立使用的。請參考7.4節之討論。
6.3.2.2 被ANA存取的通道結構之記憶體
以下ANA所需之結構參數係被群組化成為1344x10之雙埠記憶體,其係由高階及低階通道所共享。以下表格顯示此記憶體中之項次架構。
附註1:這些用於操作之參數並不需要初始數值。然而,對於同位元保護,其係設定為0。
6.3.3 匯點埠階層結構
以下匯點埠結構參數係利用128x4正反器所執行。
附註1:當映射至此埠之通道脫離重新設定完畢時,或RX_SK_SW_CFG_EN未設定時,RX_SK_VC_EN及RX_SK_LCAS_EN結構參數不應被改變。
6.4 狀態(status)
通道結構記憶體中之同位元錯誤係傳遞至ALIG_RD模組,該ALIG_RD模組係於其擁有的通道 狀態記憶體中儲存這些資訊。此可避免在此模組中需要一狀態記憶體。
因RX_CH_VCAT_FAIL_STICKY狀態參數需被CFR區塊中所有三個日曆存取,故該參數係於CFR區塊中利用1344正反器執行。
值得注意的是,RX_CH_VCAT_FAIL_STICKY並非為典型的狀態參數,該參數並非為故障存留狀態。該參數比較相似中斷狀態參數,其係抓住數值,必須使用軟體寫入1來清除該參數。然而,該參數並不完全與其它中斷狀參數相同,其係不會產生及中斷,且因此該參數不具有中斷啟用相關參數。此目的係因為故障之原因將產生一中斷。
6.5 形態(state)
CFR模組使用正反器來維護通道及VCGs之故障形態。CFR模組亦維護每一通道之計數器來清除其故障/重新設定形態,用以確定通道重新設定/故障保持夠久讓所有模組皆可看見。這些計數器係利用1344x7雙埠記憶體(無同位元保護)執行。更細部之內容請參考”vct_rx_cfr”嶶架構文件。
6.6 中斷事件
CFR係產生以下中斷事件至CFG:
●RX_CH_CFG_PRTY_ERR_CHG
6.7 日曆產生
日曆產生係依STS通道結構設定及四個內部計數器為基準。請參考”VCAT_Aligner”架構及”vct_rx_cfr”微架構。
6.8 故障處理
參考”VCAT_Aligner”架構及”vct_rx_cfr”。
7. MFI分析器(ANA) 7.1 概觀
參考圖4,其係說明MFI分析器之實施例。ANA 502係具有與交錯連接(CXC)504、解排序器506、排列寫入器508、輸入訊框模組(IFR)510、結構模組(CFG)512及CFR(514)之連接介面。ANA進一步包括一通道(CH)形態/狀態記憶體及非VCAT通道資料記憶體。本實施例中,ANA係執行以下功能:
●依據儲存於CFR模組之結構,將VCAT封包流量與非VCAT封包流量分開。
●在VCAT通道上,在傳遞封包至ALIG_WR之前,除了用於VCAT/LCAS之H4/K4位元組外,係去除所有額外負載及填塞位元組。
●在非VCAT通道上,於寫入資料至內部資料緩衝區之前,係去除所有額外負載及填塞位元組。
●對於VCAT通道,依據儲存於CFG模組中之整體程式匹配及不匹配數量,實行MFI鎖定形態機構。
●將VCAT通道上之CXC警告與MFI排列遺失合併,用以對ALIG_WR模組指示單一警告條件。
●與資料位元組一起提供目前通道之MFI數值給ALIG_WR模組(當該通道並未於警告條件中時)。
●在每一通道上提供MFI鎖定狀態至軟體。
●當CFG區塊提出要求時,在一對VCAT通道上獲得MFI數值之快照(snapshot)。
●在低階通道上擷取延伸信號標籤。
●於傳送封包至IFR之前,合併來自DSQ之VCAT封包流量及非VCAT封包流量。
7.2 與CFR之介面
對一特定通道,當ANA模組由CXC獲得一有效要求時,該ANA模組即尋問CFR該通道之結構。該通道係利用11位元ana_cfr_tid信號及來自CXC之類型信號來識別,其中該ana_cfr_tid信號係依據通道id所建構。對於該通道,CFR回覆之結構資訊係包括以下;
該通道上,MFI分析是否已啟用(RX_CH_MFI_EN)
於停止的VCT_RX區塊中,該通道是否於重新設定中(RX_CH_SW_CFG_EN)
該通道是否結合已啟用的VCAT邏輯埠
該ana_cfr_tid信號係由CXC信號所衍生,如下所示:
值得注意的是,ana_cfr_tid總係依據cxc_vct_rx_sts_master所設定。對於VC4-Nc連續串聯群組(其中N>=2),此方法係使用單一通道結構項目,其中該VC4-Nc連續串聯群組係載送非VCAT資料。
CFR傳遞CH_CFG_PRTY_ERR條件作為部份結構,其係回應至ANA。雖然其並非由ANA所要求之功能,但ANA係於狀態記憶體中儲存該位元。當ANA偵測到改變時,即產生一中斷至CFG。
7.3 與ALIG_WR之介面
若來自CFR之結構結果指示該通道係屬於一VCG,則ANA將產生一要求至AILG_WR。
Ana_alig_wr_alm係一合併之警告信號,該合併警告信號係本通道來自CXC之ANA Got及通道之OOM1/2狀態。
該Ana_alig_wr_tid信號係由CXC信號所衍生,如下所示:If(cxc_vct_rx_sts_vt){
該Ana_alig_wr_sof係由CXC信號所衍生,如下所示:
ana_alig_wr_ch_ctrl_prty_err及alig_wr_cur_mf係依據目前MFI欄位之數值及索引指示位置的狀態記憶體項目之同位元錯誤位元,其中該位置利用ana_alig_wr_tid信號之數值作為索引。
7.4 通道MFI啟用vs.通道重新設定
通道MFI啟用操作與通道重新設定操作係相互獨立的。通道重新設定並不影響MFI形態機構及ANA 模組之MFI獲取功能。僅由MFI啟用控制這些功能。ANA模組使用通道重新設定,係用以判斷資料應否通過。
若MFI分析已啟用,即使通道係重新設定中,ANA依然處理MFI資訊,且執行MFI獲取功能。此模式係有利於量測不同延遲之改變,該改變係發生於目前之VCG上,發生之原因係由於新的通道增加,但沒有實際影響VCG之資料流。此部份將於7.8節中有更詳盡之討論。
當通道並非於重新設定中,MFI分析可能被停止。此將無法於一般操作下使用。其係有利於在認證期間快速鎖定之操作。在此模式中,由於OOM/LOM狀態位元係設定為預設值(即當MFI啟用未被設定時),ANA將指示ALIG_WR管理器初始的警告條件。對於快速鎖定操作,當工作台偵測到第一個應使用之H4/K4位元組時,該工作台係祕密的寫入RX_CH_MFI_EN之設定。
若該通道係重新設定中,不管RX_VCAT_MFI_EN是否已設定,ANA係不傳送任何要求至ALIG_WR,或寫入任何資料至非VCAT資料緩衝區。
若在通道上偵測到一控制同位元錯誤,應注意的係RX_VCAT_MFI_EN及RX_CH_SW_CFG_EN兩位元皆須被觸發。其係因為同位元錯誤之來源可能係在 ANA之狀態記憶體或其它模組之狀態記憶體中。
7.5 與CFG之介面
ANA模組接合至CFG模組,其係為了以下目的:
為了傳送中斷事件(即OOM1/2、LOM或通道之CFG_PRTY_ERR狀態已改變)
為了獲得整體結構參數,該整體結構參數係被MFI鎖定形態機構所使用
為了對儲存於ANA模組之通道MFI鎖定狀態提供存取
為了接收MFI獲得之要求及傳送獲得之數值
7.5.1 通道狀態
LVC係提供以下通道狀態資料至CFG:
●RX_CH_VCAT_OOM1
●RX_CH_VCAT_OOM2
●RX_CH_VCAT_LOM
●RX_CH_ACC_ESL(僅對低階通道)
●RX_CH_CFG_PRTY_ERR
值得注意的是,即使ANA沒有任何通道階層結構,該ANA係獲得CFR之通道結構記憶體的同位元錯誤條件,且在ANA之形態中及CFR之形態記憶體中儲存該同位元錯誤條件。當改變時,如下所示其亦產生一中斷。
雖然ANA之通道形態記憶體係被保護的,但ANA並不提供控制同位元錯誤狀態或為它產生中 斷。反而,ANA傳遞通道控制同位元錯誤條件至ALIG_WR,該ALIG_WR將傳遞此通道控制同位元錯誤條件至ALIG_RD,接著該ALIG_RD將提供通道控制同位元錯誤狀態及產生一中斷。
7.5.2 中斷
針對以下事件,LVC係產生通道中斷狀態設定要求至CFG:
●RX_CH_VCAT_OOM1_CHG
●RX_CH_VCAT_OOM2_CHG
●RX_CH_VCAT_LOM_CHG
●RX_CH_ACC_ESL_CHG(僅對低階通道)
●RX_CH_CFG_PRTY_ERR_CHG
7.6 與DSQ之介面
ANA模組由DSQ獲得VCAT資料,並在IFR之前將VCAT資料與非VCAT資料合併。來自DSQ之介面包括dsq_ana_tid信號,針對非VCAT通道,ANA使用該信號由內部資料緩衝區拉取資料。此部份於以下7.14節中解釋。
7.7 MFI鎖定形態機構
請參考”vct_mfi_ana_uarch”文件。
值得注意的是,當不在LOM中時,ANA傳遞預估MFI數值至ALIG_WG,且該數值不會接收至H4/K4位元組中。
7.8 MFI獲得 7.8.1 不同延遲量測
在供應期間,必須判斷VCG之徵選成員通道間,不同延遲是否可支援由VCAT所分派之特定的DRAM容限。Orion提供一種機構對兩通道的MFI數值進行快照。利用此操作對所有適當的成員進行雙合併(pair combination),軟體可決定VCG中最大的不同延遲。
當一新的通道新增至一特定的LCAS VCG時,決定最大不同延遲僅需經過VCG,不需再將通道與VCG相合併。此作法可能影響VCG上之資料流(可能造成至少之延遲)。若一未使用之接收邏輯埠可被利用,當通道脫離重新設定時,該通道可第一個映射至此埠來避免上述問題。然而,此作法並非總是可行的。
對此之解決方法係使RX_CH_VCAT_MFI_EN位元與RX_CH_SW_CFG_EN位元相互獨立。對所有MFI分析基本功能(包括延伸信號標籤擷取),ANA係使用RX_CH_VCAT_MFI_EN作為重新設定位元。僅對額外負載/填塞刪除、資料分割及資料合併等功能時,ANA才會使用RX_CH_SW_CFG_EN作為重新設定位元。
利用此方案,當不同延遲量測在一被新增至VCG之通道上產生時,僅有該VCG之RX_CH_VCAT_MFI_EN位元被初始化設定。一旦延遲量測完成,且該通道係OK的新增至VCG,則可清 除RX_CH_SW_CFG_EN位元。
7.8.2 介面及操作
當軟體寫入CFG模組中之整體RX_VCAT_MFI_CAP_CHAN1/2暫存器時,該CFG模組係將MFI獲得之要求與兩通道之身份一起傳送至ANA模組。對於依據CXC要求之兩個通道,ANA讀取本身之形態記憶體中的MFI數值,並且將完成信號與取讀取之數值一起傳送至CFG做為回應。
當ANA回應至CFG模組時,MFI分析器並未檢查該通道是否在MFI鎖定中,其中該回應係將具有兩通道之MFI數值,而該MFI數值係儲存於ANA形態記憶體中。產生獲得要求之前,軟體將檢查兩通道是否在MFI鎖定之中。然而,若利用時間ANA獲得該要求,任何通道脫離MFI鎖定時,則該MFI數值即非有效的。直到軟體定確定在完成獲得之後沒有MFI鎖定遺失。
值得注意的是,MFI分析器未檢查該通道是否啟用MFI,或是否為VCAT通道。若軟體嘗試在此通道上執行一獲得,軟體將獲得垃圾資料。
當前一個正在進行時,軟體係不可能有足夠速度對CFG產生寫入要求,並傳送ANA一獲得要求。因此ANA並不需擔心此種案例。
7.9 延伸信號標籤擷取
在低階通道上,ANA由32位元訊框(依據12位 元MFAS樣本排列)中擷取延伸信號標籤,該訊框係由K4位元組之第一個位元組成。若相同的數值在通道上之一列中接收三次,ANA係將該數值寫入作為該通道之狀態記憶體項目中被接受的延伸信號籤。
在一特定的通道上,顯然的延伸信號標籤擷取係依靠該通道之OOM1形態。當該通道係於OOM1形態中,ANA不會執行擷取。
在IM1形態中,ANA係辨別K4位元組是否有依據MFI1計數器載送一ESL位元(即必須介於11及18之間)。
7.10 結構
ANA模組本身不具有任何結構參數。
7.11 形態(state) 7.11.1 一般形態
當等候CXC日曆到達第二通道時,回應MFI獲得之要求,由通道形態記憶體中讀取之第一個MFI必須被儲存於一般暫存器中。
7.11.2 通道形態
通道形態參數係被群組化成為1344x45雙埠記憶體。對它寫入及讀取存取係由CXC要求所驅動。
某些形態參數僅可應用於低階。因此在通道形態記憶體中的項目具有兩種不同之觀點,其係依靠該項目係高階或低階通道所應用。
儲存於記憶體中之 RX_CH_CFG_PARITY_ERR_COPY位元實際上並非為ANA使用之形態參數。當RX_CH_VCAT_MFI_EN被軟體清除時,同時其它形態位元被重新設定,而且RX_CH_CFG_EN被設定時,該位元係重新設定。
7.11.3 高階通道形態項目之觀點
以下表格顯示此記憶體中項目之結構。
7.11.4 低階通道形態項目之觀點
7.12 狀態(status)
由於有關MFI獲得之狀態參數為整體的參數,故其係保留在CFG區塊中。
通道狀態參數係被群組化成為1344x12雙埠記憶體。
附註1:該參數僅應用於低階通道。亦即,若該通道於OOM1形態中,該數值係為無效的。
7.13 非VCAT通道資資料緩衝區
非VCAT通道資資料緩衝區係利用兩個記憶體所實行。第一個為1344x8雙埠記憶體,其係於低階通道及高階通道間由VC4所共享。第二個係一256x8雙埠記憶體,其係由VC4所使用。
VC4通道係使用一分開之記體,因為此作法對於VC4-Nc之應用可使得執行單一FIFO觀點較為容易。對於VC4-Nc(N>=2)之案例,單一FIFO觀點被要求支援該方案,其中該方案接收的訊框器係設定為4xOC-3/12模式。此案例中,CXC將提供該位元組以插入的方式傳送至VCT_RX區塊,其中該位元組係於不同訊框器上所接收。然而,假設VC4通道猶如在一OC-48線上被插入,在VCT_RX中使用的1x日曆係由ANA拉取非VCAT之資料。對於特定的 VC4-Nc並沒有使用單一FIFO。當CXC在一時間槽期間不提供一位元組,此作法可能造成VC4-Nc資料排列損毀(即一空閒槽)。
VC4通道之記憶體係用於執行16FIFOs,每一16位元組縱深用以處理所有可能VC4-Nc的合併(包括N=1以更建立特殊案例)。
利用CXC要求來寫入兩個記憶體。對於有關VC4通道之高階時間槽(即來自CXX之sts_vt=0、sts_vc4=1),ANA係使用VC4緩衝區記憶體。CXC係指示在VC4-Nc(N>=1)中次要STS之主要STS通道身份(id)。ANA可用此來決定使用哪個VC4 FIFO來寫入資料。
利用DSQ驅動來讀取來自緩衝區記體的資料,其係依序利用1x日曆所驅動。對於有關VC4通道之時間槽,ANA無法由DSQ所提供之TID決定哪個FIFO係在VC4緩衝區中使用。ANA係保留資訊之軌跡來決定,其中該資訊係由CXC所提供。ANA為每一VC4儲存一位元,用以指示該VC4係為VC4-Nc之主要或次要。對於一次要VC4,主要VC4之身份可由這些形態位元來決定。
值得注意的是,在基本SDH接收端上,由該通道帶來重新設定之時間,在至少一日曆循環之後,VCT_RX中VC4通道必須帶來重新設定。此作法係必要的,其係因為在嘗試讀取VC4資料緩衝區之前, ANA所儲存之VC4主要形態位元必須被設定。
對於單一位元組緩衝區讀取及寫入之碰撞,ANA管線(pipeline)應提供旁路管線(bypass)以避免溢位。ANA使用1344正反器以取得每一通道之資料有效位元。當一通道於重新設定中(RX_CH_SW_CFG_EN係設定),該資料有效位元應被清除。
對於16位元組VC4 FIFOs,不需要提供讀取及寫入之旁路管線。
7.14 合併VCAT及非VCAT資料
合併VCAT及非VCAT資料係藉由來自解排序(DSQ)之dsq_ana_tid信號所驅動。ANA讀取非VCAT之資料係符合信號之數值。若dsq_ana_vld未確立,且非VCAT資料緩衝區不為空的,接著來自VCAT緩衝區之資料係傳遞至IFR。若dsq_ana_vld已確立,接著dsq_ana_data係傳遞至IFR。此兩者案例中,其係保留dsq_ana_lpid資料作為LPID。若dsq_ana_vld未確立,且非VCAT緩衝區為空的,則無任何資料傳遞至IFR。
值得注意的是,為了防止非VCAT資料緩衝區溢位,在此必須確定當VCT_RX區塊脫離重新設定時,所有通道係於重新設定中(RX_CH_SW_CFG_EN=1)。
8 LCAS/VC控制器(LVC) 8.1 概觀
參考圖5,其係說明一LVC 602,該LVC係與排 列模組(ALN)604、結構(CFG)608及解排序器606連接。LVC包括一CH形態(state)記憶體、一CH狀態(status)記憶體、一SK形態記憶體、一SK狀態記憶體及SO狀態記憶體。LVC模組係連接至ALIG_RD、DSQ及CFG模組。LVC模組基本功能如下所述:
由H4/K4位元組擷取正向控制資訊(SQ及LCAS中之CTRL)
由H4/K4位元組擷取LCAS反相控制資訊
在LCAS控制封包上執行CRC檢查
對每一LCAS VCG執行Dcrc設定/檢查功能
在LCAS VCGs執行GID檢查
擷取被特定LCAS VCG成員接收的GID數值
傳遞同步控制及資料至DSQ
依據被接收的通道結構,處理LCAS通道重新設定及故障條件
當匯點設定成為LCAS時,偵測非LCAS來源
8.2與ALIG_RD之介面
ALIG_RD在每一時脈循環中提供以下結構及控制資訊,連同通道身份(即TID)一起傳遞至VC,在該循環之通道上,其係不管有效資料(並非僅有負載,亦包含H4/K4)位元組傳遞至LVC是否可利用。
8.2.1 結構資訊
由於所有VCT_RX區塊之結構記憶體係於CFR模組中維護,CFR模組需要透過ALIG_RD輸送該結 構(RX_SHORT_FRAME_EN除外)至LVV,其中該結構係LVC及下游DSQ所需要。對特定通道,傳遞ALIG_RD之每一要求至LVC,LVC需要以下相關該通道之結構參數,以進行操作:
‧RX_CH_STS_VT
‧RX_CH_SK_LPID
‧RX_SK_LCAS_EN
‧RX_CH_NL_VCAT_EXP_SQ
‧RX_CH_VCAT_ACCEPTED
‧RX_CH_LCAS_REV_EXT_EN
‧RX_CH_LCAS_REV_EXT_SO_LPID
以下DSQ緩衝區正反器所要求之日曆資訊亦需提供至LVC,以便將資料輸送至DSQ。LVC僅傳遞這些參數,不需透過任何處理。此並非是說僅須傳遞這些參數至DSQ。
‧RX_WID
‧RX_CH_VC4
‧RX_CH_STS_VTG_TYPE
即使當通道於故障狀態時,上述日曆及結構資訊亦應提供至LVC。
當被接受的成員通道進入故障或重新設定狀態時,DSQ須使目前寫入緩衝區無效。為達到此目的,在成員通道進入重新設定狀態的至少第一個循環中,RX_SK_LPID結構參數須被傳遞至DSQ。當軟體 重新設定一通道,改變該通道之結構之前,該通道必須等一段足夠長之時間,讓DSQ可於通道上看見一通道重新設定。
CFR傳遞非VCAT通道之結構及故障資訊至ALIG_RD,ALIG_RD無法知道該通道是否為一VCAT通道。但值得注意的是,對於此通道,該通道故障條件未曾被設定,其係由於ALIG_WR未曾針對非VCAT通道寫入DRAM,且ALIG_RD亦未曾由DRAM讀取任何資料。ALIG_RD未曾具有這些通道有效之資料來提供至LVC,但它依然輸送日曆及通道結構至LVC。
值得注意的是,對所有成員通道,CFR係轉變VCG故障成為通道故障。通道及VCG重新設定係個別的透過ALIG_RD傳遞至LVC。
8.2.2 控制資訊
在每一時脈循環中,ALIG_RD提供以下控制資訊至ALIG_RD:
‧有效資料
‧通道故障條件
‧通道重新設定條件
‧匯點埠重新設定條件
‧H4/K4位元組指
‧HO/LO MFI
‧SOF
H4/K4位元組指示、HO/LO MFI及SOF僅當資料有效為真,且通道並非在重新設定/故障狀態時才有意義。
HO/LO MFI計數器不僅應在H4/K4位元組時脈循環中提供,亦應該在SOF時脈循環中提供(或一般來說當通道非處於故障時,於所有時脈循環中提供)。
8.2.2.1 H4
當目前通道係一高階通道,且該通道目前位元組係一H4位元組時,ALIG_RD即對VLC設定H4/K4指示位元。高階通道之所有其它位元組係為負載位元組,其係由於在STS-1訊框中TOH、其它HO POH及填塞位元組於寫入其內容至DRAM之前已被消除。
對於一VC4/STS-3c類型VCG,ALIG_RD僅對主要STS-1傳遞H4位元組至LVC。
8.2.2.2 K4
當目前通道係一低階通道,且該通道目前位元組係一K4位元組時,ALIG_RD即對VLC設定H4/K4指示位元。低階通道之所有其它位元組係為負載位元組,其係由於在映射至STS-1訊框的VT中,TOH、其它HO/LO POH及填塞位元組於寫入其內容至DRAM之前已被消除。
8.3 與DSQ之介面
在每一時脈循環中,LVC係提供以下日曆、結構及控制資訊至DSQ,且若有的話連同負載位元組一起 傳遞至DSQ。
8.3.1 日曆及結構資訊
‧RX_CH_STS_VT
‧RX_CH_STS_VTG_TYPE
‧RX_CH_VC4
‧RX_WID(所有轉動之連接位置)
‧RX_CH_SK_LPID
‧RX_SK_VCAT_EN
值得注意的是,LVC並不使用RX_CH_STS_VTG_TYPE、RX_CH_VC4及RX_WID資訊。LVC僅將這些資訊傳遞至DSQ,沒有經過任何處理,為了緩衝正反器DSQ係使用這些資訊。
13位元RX_WID信號之結構如下所示:
8.3.2 控制資訊
‧有效負載資料
‧通道故障條件
‧通道重新設定條件
‧DNU
‧SQ
8.4 與CFG之介面
LVC係產生中斷狀態設定要求傳遞至CFG。CF指示軟體狀態讀取要求(且在來源埠狀態記憶體中寫 入),並傳遞至LVC。
8.4.1 狀態
LVC係提供以下狀態資訊至CFG:
‧RX_CH_LCAS_SQ RX_CH_NL_VCAT_ACC_SQ(不同觀點)
‧RX_CH_LCAS_CTRL
‧RX_CH_LCAS_CRC_ERR
‧RX_CH_NL_VCAT_SQM
‧RS_SK_LCAS_GID_ERR
‧RX_SO_LCAS_MST
‧RX_SO_LCAS_RS_ACK
8.4.2 中斷狀態
針對以下事件,LVC係產生中斷狀態設定要求至CFG:
‧RX_CH_LCAS_SQ_CHG/RX_CH_NL_VCAT_ACC_SQ_CHG
‧RX_CH_LCAS_CTRL_CHG
‧RX_CH_LCAS_ERR_CHG
‧RX_CH_LCAS_NL_SRC_CHG
‧RX_CH_NL_VCAT_SQM_CHG
‧RX_SK_LCAS_GID_ERR_CHG
‧RX_SQ_LCAS_MST_CHG
‧RX_SO_LCAS_RS_ACK_CHG
8.5 形態(state)及狀態(status)參數
所有形態及狀態記憶體皆係雙埠。形態記憶體僅被硬體所存取。
狀態記憶體之一埠用以提供CPU存取。值得注意的是,CPU須寫入來源埠狀態記憶體來將其初始化。若來自軟體之狀態讀取要求與來自硬體之寫入要求相抵觸,則寫入要求之新的數值係傳遞作為讀取結果。
在來源埠狀態記憶體之案例中,若來自軟體之狀態寫入要求與來自硬體之寫入要求相抵觸,則接著軟體之數值應被寫入記憶體。此現象在適當之軟體操作上應不會發生(對該來源埠,軟體應先停止LCAS反相控制資訊),但硬體應準備好處理此碰撞問題。
每16時脈循環,硬體將不會對相同通道形態記憶體項目存取超過一次(對於STS-3c VCGs)。同樣的,每16時脈循環,硬體將不會對相同通道形態記憶體項目寫入過一次。若需要的話,微架構設計可獲得此優點。
通道形態及狀態記憶體項目係具有不同之觀點,其係依靠通道係映射至LCAS或非LCAS VCG。值得注意的是,對於所有案例重新設定數值,如同位元係皆相同的。實際上,為對狀態記憶體達到此目的,多餘位元(dummy bit)係被使用。
針對LCAS,埠階層形態及狀態參數可應用於埠之設定。
這些記憶體如何被硬體使用更詳盡之描述將於以下章節提供。
8.5.1 通道形態
通道形態參數係被群組化成為1344x40雙埠記憶體,其係由高階及低階所共享。以下表格顯示LCAS及非LCAS記憶體中項目之觀點。
8.5.1.1 LCAS通道形態記憶體項目之觀點
附註1:這些用於操作之參數係不需初始數值。然而,用於同位元保護,則必須設定為0。
8.5.1.2 非LCAS通道形態記憶體項目之觀點
附註1:這些用於操作之參數係不需初始數值。然而,用於同位元保護,則必須設定為0。
8.5.2 通道狀態
通道形態參數係被群組化成為1344x15雙埠記憶體,其係由高階及低階所共享。以下表格顯示LCAS及非LCAS記憶體中項目之觀點。
8.5.2.1 LCAS通道狀態記憶體項目之觀點
在LCAS VCGs之案例中,軟體總係由通道狀態記憶體中讀取資料,用以判斷在通道上所接收之序列及控制欄位。由於不同於VCT_TX區塊,LCAS控制資訊之改變並不會於軟體的控制下發生,且軟體很難對特定通道/VCG第一個判斷那一記憶體具有新的正向控制資訊。
8.5.2.2 非LCAS通道狀態記憶體項目之觀點
8.5.3 匯點埠形態
匯點埠形態參數係利用128x3正反器所實行。
8.5.4 匯點埠狀態
匯點埠狀態參數係利用128x1正反器所實行。
8.5.5 來源埠狀態
來源埠狀態參數係被群組化成為128x65雙埠記憶體。下表顯示記意體中項目之結構。
附註1:這些用於操作之參數係不需初始數值。無來源埠重新設定,但軟體可寫入初始數值。
8.6 非VCAT通道之操作
針對非VCAT通道,LAIG_RD未曾具有LVC之有效資料。然而,匯點埠LPID及該通道之被接受的結構將與通道類型及日曆資訊一同傳遞至LVC。
由於沒有有效資料,不管係對於該通道或有關匯點及(多餘)來源埠,LVC將不執行任何狀態或形態更新之操作。
8.7 LCAS之操作
若aln_rd_lv_ch_sk_lcas_en信號於特定時脈循環中確立,即執行LCAS操作。此章節中,在此假設此案例未明確的顯示其更新形狀及狀態資訊條件之部份。
在此劃分LCAS操作之規格,成為以下兩個區域:
‧形態及狀態資訊之更新
‧傳遞控制資訊及負載資料至DSQ
在此亦詳細描述重新設定/故障之處理。
8.7.1 形態及狀態更新 8.7.1.1 高階
表8-1係說明利用高階通道之LVC執行LCAS形態及狀態更新操作。
依據表8-1更新操作之規格,表8-2係針對高階通道之LCAS操作,對更新形態及狀態記憶體總結其記憶體需求。在此應注意,對任何來自ALIG_RD之要求型態,硬體不須為了讀取及寫入而存取狀態記憶體。因此,狀態記憶體之一埠可提供CPU存取使用。若同一時間軟體嘗試於讀取狀態記憶體項目,而硬體嘗試將其更新,則硬體所寫入之數值應傳遞至軟體。
值得注意的是,上述之表格不管係讀取或寫入存取皆發生於特定要求之狀態記憶體,而該特定要求係來自ALIG_RD。利用硬體雙埠狀態記憶體之單一埠來運作之設計係十分恰當的,對特定狀態記憶體之讀取及寫入須於相同管線時期內發生。如此實施例所示。
值得注意的是,該通道形態記憶體係儲存有關已改變的正向或反向資資訊。因此,該通道形態記憶體必須等候直至這些記憶體被讀取始能更新。同一時間,判斷是否寫入狀態記憶體須等候直至形態記憶體被讀取及執行CRC計算。由於對狀態記憶體之讀取及寫入存取需被整隊排列,輸送線中記憶體存取之排列次序須如上表所示。
8.7.1.1.1 CRC檢查
當VCG於初始化之後或由一故障VC復原之後獲得排列,ALIG_RD將傳遞資料至VLC,該VLC係於訊框邊界啟動。然而,該訊框可能與LCAS控制封包起始之訊框不符合(即HO_MFI1為8),或該訊框中之H4位元組被接收之後,該通道可能重新設定。若依此案例,LVC於執行CRC檢查前必須等候LCAS控制封包之初始部份。對於每一通道,CH_LCAS_CRC_ALIGNED形態位元係用於此目的。
若一通道重新設定/故障,其第一H4位元組並非為HO_MF1=8,則在CH_LCAS_CRC_ALIGNED被設定之前,該通道將必須一直等候直至H4位元組為7。但依此觀點依然未擁有一有效之CRC。因此任何已擷取之LCAS控制封包欄位係無法使用。一旦一完整LCAS控制封包被處理完畢,CH_LCAS_CRC_VLD形態變數將被設定。
當LVC初始化,CH_LCAS_CRC_ALIGNED及CH_LCAS_CRC_VLD所有通道之形態位元係被清除。於一般操作期間,當一VCG重新設定或於通道上指示一故障,LVC係清除該通道之CH_LCAS_CRC_ALIGNED及CH_CRC_VLD位元。章節8.7.2係提供更多重新設定及故障處理之資訊。
當一特定通道接收一H4位元組,LVC係讀取該通道之CH_LCAS_CRC形態變數,並且依據接收的H4位元組之高效半位元組(high nibble)計算LCAS_CRC變數之下一個數值。若ALIG_RD指示HO_MFI1數值為15,且CH_LCAS_CRC_ALIGNED已設定,則LVC係檢查更新的LCAS_CRC數值是否為0。若不為0,則表示已發生一CRC錯誤。另一案例中,LVC將CH_LCAS_CRC形態變數設定為0,為下一個LCAS控制封包做準備。
CRC檢查最後部份,於更新CH_LCAS_CRC_ERR狀態位元之前,LVC讀取目前 CH_LCAS_CRC_ERR_COPY形態位元之數值,用以觀察前一個數值之改變。若係如此,CH_LCAS_CRC_ERR_CHG中斷要求係傳送至此通道之CFR。
值得注意的是,於該通道形態記憶體中保留CH_LCAS_CRC_ERR狀態位元之複本,其原因係為了避免必須讀取狀態記憶體以判斷一中斷要求是否應被產生。
LCAS_CRC_ERR狀態變數,及其映射CH_LCAS_CRC_ERR_COPY形態變數係被初始化為0。當一通道進入重新設定/故障條件,這些變數亦被重新設定。
8.7.1.1.2 持續CRC缺點檢查(dCRC)
持續CRC缺點係於VCG階層利用移動視窗所計算。對於所有VCGs,整體的設定/清除視窗之大小及設定/清除之臨界點係固定的。視窗長度係依據多重訊框數量所指定。對於每一VCGs,Orion係計算全部LCAS CRC錯誤之數量,而該LCAS CRC錯誤係於其成員上所偵測。
當LVC初始化,所有埠之SK_LCAS_DCRC狀態位元、SK_LCAS_CRC_CNT及SK_LCAS_DCRC_WDW_CNT欄位係被清除。於一般操作期間,當一匯點埠重新設定,LVC將清除該埠之欄位。
當特定通道上目前控制封包之CRC已檢查,包含LCAS匯點VCG之SK_LCAS_DCRC_WDW_CNT係增加1。若偵測到一CRC錯誤,接著LCAS匯點VCG之CRC計算係增加1。
當SK_LCAS_DRC_WDW_CNT達到RX_LCAS_DCRC_N1數值時,若SK_LCAS_DCRC狀態位元未設定,接著係檢查CRC計算與LCAS_DCRC_K1數值比對。若CRC計算係等於或大於LCAS_DCRC_K1數值,接著設定LCAS_DRCR狀態位元。
當SK_LCAS_DRC_WDW_CNT達到RX_LCAS_DCRC_N2數值時,若SK_LCAS_DCRC狀態位元已設定,接著係檢查CRC計算與LCAS_DCRC_K2數值比對。若SK_LCAS_CRC_CNT等於或大於LCAS_DCRC_K2數值,接著設定LCAS_DRCR狀態位元。
於設定或清除視窗之最後部份,SK_LCAS_DRC_WDW_CNT及SK_LCAS_CRC_CNT係重新設定為0。亦即,若SK_LCAS_DCRC之數值改變,則設定SK_LCAS_DCRC_CHANGED中斷狀態位元。
8.7.1.1.3 於VCG之成員上探索CRC錯誤
LVC可用以指示dCRC缺點於特定VCG上被設定/清除。但除非軟體監看每一多重訊框上所有成員通道之LCAS CRC狀態(此係十分困難的),否則欲判 斷以下條件係不可能的,如一成員是否具有大部份之錯誤,或錯誤是否均勻的分佈於所有成員。計算CRC錯誤於其成員上每次可選擇一匯點VCG。
軟體選擇VCG用以計算成員CRC錯誤或將其埠身份(id)寫入整體LCAS_DCRC_CAP_PORT暫存器。軟體亦可指示視窗(於多重訊框中),其中該視窗之CRC錯誤計算可利用整體LCAS_DCRC_WS暫存器收集。為了初始化該計算,軟體係清除該LCAS_DCRC_CAP_VLD位元。
當計算視窗過期時,Orion係設定LCAS_DCRC_CAP_DONE中斷狀態位元。最多64個成員通道之CRC計算可由LCAS_CRC_CNT暫存器獲得,該LCAS_CRC_CNT暫存器係使用直接記憶體,而該記憶體係使用序列編號位址。
值得注意的是,硬體並不檢查選擇的埠是否脫離重新設定,且若是,其是否為一LCAS設定埠。若軟體執行此步驟發生錯誤,CRC計算獲得程序將無法啟動。軟體可寫入一正常的數值至LCAS_DCRC_CAP_PORT來回復。
若一CRC獲得係進行中(即LCAS_DCRC_CAP_VLD=0),硬體不應寫入LCAS_DCRC_CAP_PORT或LCAS_DCRC_CAP_WS暫存器。
8.7.1.1.4 正向控制資訊更新
硬體係各別的將序列及控制欄位寫入CH_LCAS_NEXT_SQ及CH_LCAS_NEXT_CTRL形態變數中,其中序列及控制欄位係於目前LCAS控制封包中接收。若該控制封包具有一有效CRC,且沒有CRC錯誤,則在下一個LCAS控制封包的訊框之啟始位置上,硬體係個別的複製CH_LCAS_NEXT_SQ及CH_LCAS_NEXT_CTRL參數之數值至CH_LCAS_CUR_SQ及CH_LCAS_CUR_CTRL參數。但若有一CRC錯誤,該狀態參數將無法被更新。
為控制負載位元傳遞至DSQ,LVC係使用CH_LCAS_CUR_SQ及CH_LCAS_CUR_CTRL狀態參數。因此於SOP位元組中,其中該SOP位元組係一負載位元組,為了此目的,LVC並不讀取通道狀態記憶體,反而使用形態記憶體之序列及控制參數。此可確保於SOF循環中該通道狀態記憶體僅有一存取要求。
當LVC接收SQ及CTRL欄位時,其係讀取CH_LCAS_CUR_SQ及CH_LCAS_CUR_CTRL狀態參數,且該狀態參數係與接收的數值相互比對。若具有一差異,LVC係設定CH_LCAS_SQ_CH且/或CH_LCAS_CTRL_CH位元。
於LCAS控制封包最後部份,若具有有效之CRC,且該CRC檢查係OK,且CH_LCAS_SQ_CHG且/或CH_LCAS_CTRL_CHG位元被設定,LVC將產 生一中斷狀態,並對序列且/或控制字串之改變設定要求至CFR。
上述討論所應用之案例,一通道係未處於重新設定/故障形態。若一通道係處理重新設定/故障形態,硬體之操作係於章節8.7.2中描述。
8.7.1.5 反相控制資訊更新
反相控制資訊更新僅於通道之RX_CH_LCAS_REV_EXT_EN參數設定時執行。以下所述係依此案例之假設。
在此並不嘗試檢查通道上接收之MST及RS_Ack數值,其中該通道係載送相同HO_MFI2中相同來源埠之反相資訊。應注意的係任何碰觸至這些欄位之錯誤可能係藉由CRC檢查偵測出來。
上述討論所應用之案例,一通道係未處於重新設定/故障形態。,若一通道係處理重新設定/故障條件,硬體將不會嘗試更新反相控制形態/狀態,且若通道相關來源埠有任何改變,硬體將不會產生中斷。軟體可寫入來源埠狀態記憶體,用以初始化MST及RS_ACK數值。典型地,該MST位元將初始化成為1(MST=Fail)。除了軟體應了解RS_ACK之初始數值外,該RS_ACK之初始數值並非為一麻煩事件。
8.7.1.1.5.1 MST
於特定通道上LCAS控制封包中接收之MST欄位係儲存於該通道之通道形態記憶體項目中。如同特 定通道上接收的MST欄位之低效半位元組(low nibble),該MST欄位之低效半位元組係依據MFI2數值,LVC亦比對其是否與此通道之來源埠狀態中的MST位元相同。若比對指示具有差異,該通道之CH_LCAS_MST_CHG形態位元係被設定。
由於在Orion中在此支援通道之最大數量係限制為64,某些LCAS控制封包未載送任可有用MST資訊。此可依據MFI2判斷。若有來自來源埠狀態記憶體項目之MST,其係將用於比對,且進行以下判斷後將被更新:
//除了不執行MST比對及更新
LCAS控制封包最後部份,若具有有效CRC,且CRC檢查為OK,且若該通道之LCAS反相控制擷取已啟用,LVC係更新該通道上來源埠相關MST欄位中相同的MST位元。若CH_LCAS_MST_CHG位元被設定,LVC亦為有關此通道之來源埠產生一SO_LCAS_MST_CHG中斷。
8.7.1.1.5.2 RC_ACK
於特定通道上LCAS控制封包中接收之RS_ACK位元係儲存於該通道之通道形態記憶體項目中。此時,LVC亦比對其是否與此通道之來源埠狀態中的RS_ACK位元相同。若比對指示具有差異,該通道之CH_LCAS_RS_ACK_CHG形態位元係被設定。
LCAS控制封包最後部份,若具有有效CRC,且CRC檢查為OK,且若該通道之LCAS反相控制擷取已啟用,LVC係更新於該通道上接收之RS_ACK位元相關的來源埠的RS_ACK位元。若CH_LCAS_RS_ACK_CHG位元被設定,LVC亦為有關此通道之來源埠產生一SO_LCAS_RS_ACK_CHG中斷。
8.7.1.1.6 GID檢查
LVC檢查每一被接收的匯點埠成員通道是否已接收相同LCAS控制封包中相同的GID位元(即每一成員接收之最後一個)。若不同通道上GID位元未匹配,則LVC係設定SK_LCAS_GID_ERR狀態位元,且若該狀態位元已被改變數值,則產生一匯點埠GID中斷要求。除此狀態位元之外,LVC係保持以下之匯點埠階層形態位元:
‧SK_LCAS_GID_VLD
‧SK_LCAS_GID
‧SK_LCAS_GID_MFI2_LSB
‧SK_LCAS_GID_ERR_COPY
雖然SK_LCAS_GID_ERR_COPY形態位元係於設計中使用,以避免讀取匯點埠狀態,用以判斷一中斷是否應被產生,但並不一定需要具有它。由於匯點埠狀態位元係於正反器中,當匯點埠形態狀態位元被讀取時,其係可同時被讀取,無須擔心與軟體之讀取相衝突。虛擬碼未顯示SK_LCAS_GID_ERR_COPY之使用。
當GID位元於特定通道上被接收時,該GID位元係儲存於形狀記憶體,其係因LVC無法對其產生作用,直至CRC於LCAS控制封包上被認證。
LCAS控制封包最後部份,若具有有效CRC,且CRC檢查為OK,LCAS首先檢查該通道是否被接受(且其未接收IDLE作為控制字串)。若如此,LVC接著查看匯點階層GID形態。
若SK_LCAS_GID_VLD未設定,意謂著此係第一次於匯點埠執行GID比對。此案例中,LVC係設定SK_LCAS_GID_VLD、複製CH_LCAS_GID至SK_LCAS_GID,及設定SK_LCAS_GID_MFI2_LSB至HO_MFI2[0]。依然未執行錯誤檢查。
若SK_LCAS_GID_VLD已設定,LVC係比對SK_LCAS_GID_MFI2_LSB及HO_MFI2[0]。若其係不相同的,此意謂著必須移動至此匯點埠之一新的LCAS控制封包循環,且目前通道係第一個通道,其 係於LCAS控制封包之最後部份。此案例中,LVC係設定SK_LCAS_GID至CH_LCAS_GID,且設定SK_LCAS_GID_MFI12_LSB至HO_MFI2[0]。同樣的,依然未執行錯誤檢查。
若SK_LCAS_GID_VLD已設定,且SK_LCAS_GID_MFI2_LSB係等於HO_MFI2之LSB,此意謂著目前通道並非為匯點埠中第一個通道,將其接收之GID與匯點埠GID相比對(其係於第一個通道上設定接收之GID)。此案例中,LVC係比對CH_LCAS_GID及SK_LCAS_GID。若其係不相同的,SK_LCAS_GID_ERR及SK_LCAS_GID_ERR_COPY係被設定。但執行此操作之前,LSV係將SK_LCAS_GID_ERR之新的數值與SK_LCAS_GID_ERR_COPY相比對。若其係不相同的,則LVC係產生相關匯點埠之SK_LCAS_GID_ERR_CHG中斷。
8.7.1.1.7 探索VCG之成員的GID數值
於一特定VCG上,當偵測到一GID錯誤時,LVC係提出報告。此階層中欲判斷造成GID錯誤精確的條件係不可能的。例如,若一成員具有與其它成員不同之GID數值,在此係不可能識別該成員。匯點VCG每次可選擇探索其成員之GID數值。硬體對所有選擇的VCG之成員擷取GID位元,及使其可被軟體所利用。
軟體選擇VCG,於該擷取成員上寫入其埠身份至整體LCAS_GID_CAP_PORT暫存器。利用設定LCAS_GID_CAP_VLD位元,該GID獲得係被初始化。
於下一控制封包循環期間,硬體係依據其接收的序列編號將每一成員之接收的GID寫入整體LCAS_GID_CAP狀態暫存器。由於Orion中匯點VCG之最大大小為64,在此係使用兩個32位元暫存器。其後,硬體將清除LCAS_GID_CAP_VLD位元,且設定LCAS_GID_CAP_DONE中斷狀態位元。
值得注意的係,不管選擇的埠是否已脫離重新設定,硬體係不會執行檢查,且若是,其是否為一LCAS設定埠。若軟體執行此步驟發生錯誤,CRC獲得程序將無法啟動。軟體可寫入一正常的數值至LCAS_GID_CAP_PORT來回復。
若具有一GID探索活動(即LCAS_GID_CAP_VLD=0),硬體將不會寫入LCAS_GID_CAP_PORT暫存器。
8.7.1.2 低階
下表係針對低階通道指示LCAS形態及狀態之更新操作,而該更新操作係由LVC執行(在此假設ALIG_RD_STS_VT為真)。
高階及低階通道間之不同為LCAS控制封包每次係接收1位元而非4位元。但由於某些欄位係大於4位元,此並不會增加LO與HO比對之複雜度。
值得注意的是,就執行更新操作而言,高階及低階通道之方法皆相同。對於LO通道係不需要不同的傳輸管線設計。
8.7.2 處理匯點埠重新設定、通道失效及通道重新設定
主要討論VCG重新設定、通道失效及通道重新設定之LVC行為,首先這是有助於重新探討其ALIG_RG及軟體行為。
8.7.2.1 ALIG_RG及軟體行為
以下總結ALIG_RG與軟體共同具有之失效/重新設定行為:
‧於一接受的成員通道上之失效或重新設定會觸發於VCG上之失效,然後觸發所有不論是否有接受的成員通道之失效。
‧於一未被接受的成員通道上之失效或重新設定不會觸發於VCG上之失效。在失效通道之時槽間,其ALIG_RD不會讓有效資料傳至LVC,但於LVC時還是會繼續指向通道失效形態。未接受之通道無法自動地跳離失效。必須透過軟體來清除卡住的失效狀態位元。
‧軟體初始匯點埠重新設定會對所有成員通道觸發通道失效(不重新設定),不論其成員通道是否被接受。注意其ALIG_RD模組們會個別地將匯點埠重新設定條件傳至LVC。
‧對於會影響VCG之重新設定及失效條件(即軟體匯點埠重新設定或接受之通道失效/重新設定),對於該VCG之所有成員通道,肯定其條件之長度將是夠長地足以使所有成員通道可以見到。
‧假使一接受之成員通道進入失效狀態且其通道並非保護的,則軟體會清除該通道之接受位元,且剩餘成員通道資料將傳至LVC及DSQ,(一旦剩餘成員通道資料重新排列)。由於失效通道重新設定為未 接受,所以該通道之失效形態將不會使DSQ造成其緩衝器失效。對於在LCAS上實現DNU機制是必要的。假使失效通道為VCG之主動成員,即來源端正於該通道上傳送NORM/EOS,則當來源端從匯點取得成員通道失效狀態,將開始傳送DNU即控制字串。其匯點明顯地不會看見DNU控制字串,但還是必須操作猶如有看見一樣。如此用意在於要求匯點能夠被擷取來自剩餘成員通道之資料。
‧假使藉由軟體狀態為被保護的而可得知失效之接受成員通道,則軟體將不會清除該通道之接受位元,而且不會傳送失效狀態給來源端。當該保護通道時,其VCG將隨著所有成員及ALIG_RD重新排列,並將開始再次傳送資料至所有成員通道之LVC。此方法之假設係於供應期間,因為交換於系統限制內之保護路徑,軟體可能已經建立差異延遲改變。對於先行計算出的保護路徑之應用,則此假設係成立。
‧一通道於一開始變成LCAS VCG成員之前,需要重新設定其通道。假使這樣的通道已經為LCAS VCG之接受成員,則LCAS協定將使用於一開始時刪除來自該VCG之通道。在此時間點,軟體將在通道設成重新設定前清除該通道之接受位元。注意假使LCAS VCG之接受通道係進入重新設定狀態,則其將造成VCG為進入重新設定狀態之條件。通常此情形不會發生。一接受之通道首先將透過使用其LCAS刪 除程序被移除,然後在接受位元使該通道進入重新設定狀態前,藉由軟體來清除該通道之接受位元。但當偵測出不可回復之VCG級的錯誤時,可以重新設定其接受之通道而不用照著下列這些步驟。然而,在藉由軟體將通道帶離重新設定狀態之前,軟體應該清除其接受位元。
‧來自某些網路失效係不可能可以自動地回復。例如,藉由軟體偵測該差異延遲可能變成過度的情況(典型地,於網路重新設定之後,可能或不可能會藉由保護機制來觸發),或協定錯誤(例如於接受通道上組合無效序列號碼及/或序列號碼)。在這些案例中,其VCG也可能藉由軟體來重新設定(或者所有通道可能進入重新設定狀態)而不照著下列規劃之成員移除程序。注意軟體可能藉由設定VCT TX區塊,仍然於此VCG之所有成員通道上傳送失效狀態。
注意在一假定之時序循環中,有意義之該通道匯點埠重新設定係不在重新設定狀態中。這是因為假如通道於重新設定狀態中,則其RX_CH_SK_LPID參數為無效的。
8.7.2.2 LVC行為
根據通道之接受設定位元,其來自ALIG_RD之該通道的LVC行為,如隨著對通道重新設定/失效指示之反應:
‧當LVC於一通道上(不論是否接受)見到通道失效指示,則分別地設置通道之CH_LCAS_CRC_ALIGNED、CH_LCAS_CRC_VLD及CH_LCAS_CRC狀態變數值為零。
‧當通道為重新設定狀態時,其LVC會重新設定通道形態及狀態變數回初始值。
‧當通道保持於失效或重新設定形態或是伴隨之匯點埠為重新設定形態時,其LVC不會處理該通道之H4/K4位元組,以更新伴隨該通道之形態/狀態變數(通道或埠之等級)。然而,LVC對於該通道係將日曆資訊及結構、通道之重新設定及失效形態傳至時序循環中之DSQ。
‧當匯點埠為重新設定狀態時,其RX_GID_VLD形態位元及RX_SK_GID_ERR狀態位元為重新設定。
其通道失效/重新設定或匯點埠重新設定可能為表示其於訊框中任何點之LVC。在這樣的時序循環期間,取代形態/狀態以執行更新操作係於8.7.1節中討論過,其硬體應該如上述設置形態及狀態變數。
8.7.3 將控制及負載資料傳至DSQ
下列虛擬碼正式地具體說明LVC如何將控制及負載資料傳至DSQ:
如第9節所描述,DSQ模組之讀取/寫入緩衝器瀏覽係依據日曆旋轉,類似於VCT_TX區塊之SQ模組所執行之方法。例如,所有STS-1類型之VCGs每次瀏覽它們的讀取/寫入緩衝器之STS號碼為零,其STS號碼係藉由日曆所產生。這是可能的,因為其ALIG_RD讀取管理器係確定VCG決不會留在日曆旋轉之中間位置。
於接收端及傳送端有個重要的差異,係關於緩衝器快速粗略瀏覽。只有當被CXC所拉出之目前位元組為負載位元組時,則在傳送端緩衝器才執行瀏覽。接收端不能夠使用被CXC所拉出之目前位元組當成負載位元組,如何一條件。這是因為假如一通道於失效狀態,則對於該通道之時槽不能夠歸類為負載或H4位元組時槽。
為了處理此問題,其LVC將要求傳送至每個時序循環之DSQ,不論是否於該循環中含有任何ALIG_RD之有效資料,而且不論其資料是否為負載或H4/K4位元組。然而,其DNU位元係被設置針對所有案例,但不在重新設定/失效形態且不含有CUR_CH_SQ形態變數之接受通道的負載循環,其設為DNU(或者假如SOF為真,則為NEXT_CH_SQ)。
當其DSQ試著設置目前寫入緩衝器位置之DNU位元,此位元係藉由未接受通道之CH_CUR_SQ來表示,可以見到的是其CH_CUR_SQ值可能大於聯合VCG之重排緩衝器的大小。在這樣的案例中,其DSQ會忽略要求資訊。假使這個案例係發生於接受之通道時,這將會成為協定錯誤。見8.7.4節之LCAS協定錯誤處理。
在一接受通道沒有有效資料或任何資料之時槽為H4/K4位元組期間,其LVC設置DNU位元給DSQ。除了於LCAS控制封包開始之訊框的第一個負 載位元組以外(在一接受通道之負載時槽期間,只有當該通道之CH_CUR_CTRL狀態變數值設為DNU時,其LVC才會設定其DNU位元),其LVC都會設定該通道之DNU位元。
注意其LVC會將接受之結構及通道失效條件兩者傳至DSQ。假使通道未被接受,則其DSQ會忽略其失效條件。其DSQ也將不會更新於該時槽之資料緩衝器。如此可以確定的是假如一未接收通道之序列號碼與一接受通道之序列號碼相衝突時,也將不會造成VCG資料流失效。當上述條件於LCAS協定中為不合法時,就會執行上述動作來預防不必要資料之誤傳。注意對於為接受之通道,其DSQ將其日曆及該通道之匯點埠傳至ANA。
8.7.4 LCAS協定錯誤處理
除了CRC及GID錯誤外之所有LCAS協定錯誤都將會被軟體所偵測出。下列為可能之LCAS協定錯誤清單:
‧無效之控制字串(例如不合法或非預期值)
‧超出範圍之序列號碼(例如接受通道之值係大於VCG大小)
‧無效之序列號碼之組合及/或已接受成員之控制字串(例如序列號碼之間隔及重疊、不相容於控制字串之序列號碼等)
8.8 非LCAS之操作 8.8.1 形態及狀態更新
在非LCAS操作中(即當其LVC判定通道所對應的為非LCAS匯點埠時),其LVC不會擷取及處理控制字串、GID、MST及於H4/K4位元組取得之RS_ACK欄位,而且LVC不會執行任何CRC檢查。
其LVC對於非LCAS通道只擷取及處理SQ欄位。然後LVC儲存其擷取出於CH_PREV_SQ形態變數之SQ欄位。當接收一新的SQ值時,在更新其值前,LVC會讀取於該形態變數之上一個值,以比較目前接收的值。
假使兩個數值相同,則LVC會將該通道之CH_NL_VCAT_PREV_SQ_RPT_CNT形態變數加一。假使計數值達到3,則其接收的值即複製給CH_VC_ACC_SQ狀態參數。注意其計數器不會跳超過3。依據CH_VC_ACC_SQ狀態參數是否相同或不同於此通道之預期序列,則LVC會設置或清除CH_VC_SQM狀態變數。假使狀態變數值改變,則LVC將產生一個此通道之CH_VC_SQM_CHG中斷。
假使兩個數值係不相同,則LVC會將CH_NL_VCAT_PREV_SQ_RPT_CNT設為零。當通道處於重新設定/失效形態時,則此計數器也會重新設定。
注意即使對於非LCAS通道其記憶體存取要求並不相同,但其LCAS及非LCAS通道兩者都使用相同 之管線。其非LCAS案例係為LCAS有較少之記憶體存取要求案例之子集合(例如不需要讀取通道狀態記憶體)。
8.8.1.1 高階
下列表格說明利用高階通道之LVC執行非LCAS形態及狀態更新操作。
依據表8-4更新操作之規格,表8-5係針對高階通道之非LCAS VCAT操作,對更新形態及狀態記憶體總結其記憶體存取需求。
8.7.1.2 低階
下表係針對低階通道指示非LCAS VCAT形態及狀態之更新操作,而該更新操作係由LVC執行(在此假設ALIG_RD_STS_VT為真)。
8.8.2 將控制及資料傳至DSQ
對於非LCAS通道,當將資料位元組傳至DSQ時,其LVC會使用設定之預期序列號碼。於CFG區塊中會保持其通道之預期序列號碼,而且其號碼會以管線傳至伴隨該通道之每個時序循環的LVC。
為了保持類似於LCAS及非LCAS VCGs間之資料傳輸設計,其LVC會表現有關將控制及資料傳至 DSQ一樣之方法,除了下列之差異外:
‧將從ALIG_RD接收之預期序列號碼傳至DSQ,如所有負載位元組之序列號碼。
‧只有對於非負載時槽才設置DNU,且對負載時槽絕對不會。
‧所有被當成接受成員之通道(即忽略其alig_rd_lvc_ch_accepted信號)
下列虛擬碼正式地具體說明LVC如何將控制及負載資料傳至DSQ:
8.9 匯點設定如LCAS與非LCAS來源之交互影響
當LCAS通道偵測出其CRC及控制字串為零時,其LCAS通道會設置其RX_CH判定_LCAS_NL_SRC狀態位元。這是情況可能會發生於,因非LCAS來源係伴隨LCAS匯點之網路管理結構錯誤時。在此案例中,軟體可以見到其VCG之所有通道的狀態位元集合。注意這沒有改變任何其他LCAS操作。
軟體則能夠重新設定通道及匯點埠以重新安排如非LCAS VCG。正常地,對於非LCAS VCG之每個號碼,其NMS需要設定預期序列號碼。然而,在此案例中,對於軟體使用其接受之序列號碼可能是令 人滿意的。為了執行,軟體首先可以使其VCG之仿製預期序列號碼分派給其成員通道。軟體然後將透過接受序列號碼狀態參數,以判定出其軟體正使用之實際序列號碼。在這段時間,該通道之接受位元能夠被關掉(或其伴隨之IFR埠能使無效)。最後,根據在上一步之接受狀態變數,軟體將重新配置其通道之預期序列號碼。
9 解排序器(DSQ)
在DSQ輸入資料路徑中,便是其DSQ模組與LVC之介面。在重新排序之後,其之負載資料位元組會跳離DSQ,且在將負載資料位元組傳至IFR之前,與來自非VC通道之負載資料執行多工。
DSQ之功能為重新排序來自VCG之網路的負載位元組,以符合其成員通道之接收的時槽順序,此順序會相同於這些通道之VC序列順序。在LCAS VCGs之案例中,會從H4/K4負載量位元組中擷取被使用於重新排序之VC序列號碼。在非LCAS VCGs之案例中,則使用已設定之序其序列號碼。注意其DSQ模組本身不會知道一VCG係於LCAS或非LCAS模組。
將於VCG成員通道上接收之資料(負載及H4/K4)位元組推至DSQ,係使用於一般結構之固定的1344*1日曆及日曆產生器區塊。其相同之日曆也是使用此方法從其資料位元組中取得重排資料。
在每個分派給VCG成員假定通道之時槽,不論位元組是否可被推動總是還可以執行取得要求。
圖6顯示DSQ模組之介面及其包含之記憶體。解排序器702介面連接LVC 704、ANA多工器706(其輸出至輸入訊框模組(IFR)708)及CFG 710。該DSQ包括重排資料緩衝區記憶體、重排形態(state)記憶體及重排緩衝區選擇設定記憶體。
9.1 連接LVC之介面
其DSQ從每個時序循環之LVC中,接收下列伴隨一負載位元組之日曆、結構及控制資訊,如果有的話。
9.1.1 日曆及結構資訊
‧RX_CH_STS_VT
‧RX_CH_STS_VTG_TYPE
‧RX_CH_VC4
‧RX_WID
‧RX_CH_SK_LPID
9.1.2 控制資訊
‧負載資料有效
‧通道故障條件
‧通道重新設定條件
‧DNU
‧SQ
9.2 連接ANA之介面
其DSQ從每個時序循環之ANA中,接收下列伴隨一負載位元組之日曆、結構及控制資訊,如果有的話。
‧RX_CH_LPID
‧RX_CH_DATA_VLD
9.3 連接CFR之介面
針對下列事件,其DSQ會產生中斷狀態要求給CFR:
‧RX_SK_RBID_CHG_DONE
其DSQ不會保留任何狀態變數。
9.4 連接CFG之介面
對於每個VCG,其DSQ會維持下列結構參數:
‧RX_SK_RBID_0
‧RX_SK_RBID_1
其CFG模組會發出直接讀取及寫入這些參數之要求給DSQ模組。
其DSQ不會有任何狀態參數。
不論是否有產生中斷事件,其DSQ都會將從LVC所接收之匯點埠重新設定信號傳至CFG。注意其DSQ不會使用匯點埠重新設定信號於其擁有之操作上。
9.4.1 中斷事件
其DSQ會產生下列中斷事件給CFG:
‧RX_CH_VCAT_SK_RBID_CHG_DONE
9.5 結構
使用128*20之正反器以實行下列結構參數。
RX_VCAT_SK_RBID_SEL參數。
注意在任何對應至VC可用匯點埠之通道被帶離重新設定狀態前,其該埠之重排緩衝器結構參數應該適當地配置。
注意其DSQ模組對於這些參數會實行主動/非正式之存取計策,以相容於VCT_TX架構。當其中沒有任何停留之改變時,其RX_VCAT_SK_RBID_SEL參數可辨別出初期主動的副本。軟體應該能夠只讀取其主動的副本。軟體能夠讀取或寫入其非正式的副本。軟體可藉由開關RX_VCAT_SK_RBID_SEL參數,以要求交換主動及非正式之副本。當執行其改變時,其DSQ模組將產生一改變完成之中斷。
9.6 形態
使用128*11之正反器以實行下列匯點埠等級之參數。
9.7 重排緩衝器之資料記憶體
除了資料寬度為9位元外,其重排緩衝器記憶體之結構係相同如於VCT_TX區塊之重排緩衝器。使用一位元為DNU位元。
9.8 負載解排序之演算法
DSQ使用此演算法在許多方面係類似於VCT_TX區塊所使用之負載排序演算法,包括其重排緩衝器及緩衝器基於日曆旋轉之正相運作。然而,也有些重要的差異。當正寫入重排緩衝器及保持可以追蹤每個VCG之下一個讀取位置時,其負載解排序演算法係使用通道序列號碼。另外,其DSQ需要處理卡住、通道失效及DNU條件。
其ALIG_RD可能會卡住,不但是因為資料讀取速度比到達快,而且因為當增加一個新的號碼造成比起以存在成員有較長的延遲時,從LCAS VCG之存在成員所流出之資料也可能被卡住。然而,其ALIG_RD設計係保證VCG將不會在中間卡住。換言之,在其符合型態之日曆旋轉期間(及於沒有成員通道失效時),所有VCG之成員將資料傳至LVC/DSQ,或者沒有任何成員傳送資料。這樣會減少保持追蹤寫 入每個VCG的位元組號碼,以及准許使用於緩衝器正相運作的日曆旋轉之需求。
DSQ需要處理於接受通道上之失效。在這樣的案例中,其DSQ將使目前寫入之緩衝器無效。其LVC會遮蓋掉於未接受通道上之失效,除了設置其DNU位元。
如8.7.3節所討論,不論是否有可用的資料、不論是否為負載或H4/K4,或者不論通道是否位於失效/重新設定條件,其LVC於每一個時序都會將資料傳至DSQ。然而,其LVC於所有情形下都會設置DNU位元,除了來自一接受通道之目前控制字串的負載位元組的情形不會設為DNU外。這種方法,其DSQ需要考量寫入之位元組是否真的為有效之負載位元組。
DSQ不會處理資料或更新用於通道之時序循環形態,其通道不是於重新設定狀態就是未被接受。注意非LCAT通道典型地將會把其接受之結構位元設為零。
9.9 重排緩衝器
根據VCG之目前大小,每個VCG會從四堆中的一堆分派到一個重排緩衝器。邏輯地,一重排緩衝器含有兩個緩衝器,兩個緩衝器都會有一個空白位元組,其用於每個VCG之可能成員。當負載位元組寫入一緩衝器中時,如果此負載位元組可用的話,將從 另一個緩衝器中讀取出。一假定VCG之緩衝器於日曆旋轉點時會交換,以符合該VCG之型態。
使用於VCT_TX區塊之相同的重排資料緩衝器核心,係也能夠使用於DSQ,除了為合於DNU位元之9位元資料寬度外。此核心呈現四個單埠記憶體,如一能夠定址之邏輯雙埠記憶體,其係使用一個重排緩衝器之身份識別代號(id)及於特定重排緩衝器中之相對位置。
當一VCG大小需要擴大超過目前被分派之重排緩衝器容量時,其VCG需要分派一個更大之重排緩衝器。如於VCT_TX架構所討論,其池容量係可以切割成任何可能滿足之VCGs組合。
其負載解排序演算法處理重排緩衝器改變之方法,如同使用於VCT_TX區塊之負載排序演算法。首先,在該VCG之下一個日曆旋轉開始時,其寫入處理會交換至新的重排緩衝器,接著在下一輪由讀取處理。
其DSQ區塊會自己同步化重排緩衝器之改變。軟體對於一假定之VCG會配置其重排緩衝器之ids,以及其DSQ應該使用之緩衝器。在一VCG之任何成員通道的時槽內,當DSQ見到目前使用值不同於軟體所配置之新值時,於下一輪開始時其值會開始改變。在該輪結束時,將會執行交換且DSQ將會提供一完成改變之重排緩衝器給CFR區塊。
9.10 基於日曆旋轉之緩衝器正相運作
由於明確地將於RX_WID信號進行編碼之日曆產生器形態提供給DSQ,所以當DSQ見到用於符合的型態之輪子位置(wheel position)變成零時,其DSQ會正相運作假定型態VCGs之緩衝器。
下表係表示用於不同VCG型態之全域緩衝器正相運作條件。
對於每個VCG型態,其DSQ會維持一全域之WR_BUF_SEL形態變數。這些變數會正相運作以符合上述條件。
此外,每個VCG也會維持各自擁有之WR_BUF_SEL形態變數。當VCG之第一個成員通道所見到之WR_BUF_SEL變數,不同於符合之全域形態變數時,則更換其VCG形態變數值為另一個。這將確保在一符合之日曆旋轉期間,只有轉換一次VCG形態變數。
9.11 用於ANA之TID
DSQ模組會產生dsq_ana_tid信號,會根據日曆及通道型態資訊提供給ANA,其資訊接收係從LVC模組,如下:
其”vct_rx_uarch”文件有這些等式之最佳化實現。
不論其通道是否伴隨VCT匯點埠之時槽,以及不論其通道是否正位於失效/重新設定條件下,於每一個時序都會執行產生TID。
注意不論通道是否位於重新設定條件下,都不會影響其通道之結構。其通道之結構資訊係保持於個別之STS等級暫存器。
9.12 虛擬碼
1 概觀 1.1 功能分解模型
圖7顯示虛擬串聯傳送(VCT_TX)區塊之高階元件。該VCT_TX 800介面連接一中央處理單元(CPU)802,並且透過其包含之結構模組804以與CPU執行通訊。此結構模組亦連接負載排序器806(其介面由此連接輸出之OFR 808),以及路徑負載量產生器(path overhead generator)810。其結構模組及路徑負載量產生器(path overhead generator)皆接收來自全域多重訊框計數指示器(MFI)與群組身份證(GID)產生器模組812之輸入資訊。其負載排序器及路徑負載量產生器(path overhead generator)為多工,包括SPE位元組與控制資料兩種,且其輸入為傳送給交叉連接器(CXC)。虛擬串聯傳送(VCT_TX)區塊之資料傳遞路徑完全由來自CXC之要求資訊所驅動,其CXC會產生訊框日曆(包括VT父訊框循環)。
當CXC於一假定之時序循環中遮蓋掉一有效要求時,其CXC會定義其通道id如同訊框位置資訊,例如列與行之號碼。根據此資訊,其TX_VCAT區塊會判斷一來自CXC之要求是否用於負載位元組或負載量位元組,且於稍後的情況中應該會產生定義好之負載量位元組。則將負載要求傳至負載序列區塊,以及將負載量位元組傳至路徑負載量產生器區塊。來自這些區塊所輸出之資料會被與CXC之輸入資料進行同步及多工。
為了支援VCAT之功能,從OFR中所取得之負載位元組會透過負載排序器傳送。由於分派給VCG成員通道之序列號碼可以表示一順序,其順序不同於通道傳輸時槽順序,所以從OFR中取得之負載資料位元組在被傳送至CXC之前,需要先存入緩衝器。選擇其特定之負載排序演算法會被描述於其中。
路徑負載量產生器提供一回應給所有負載量位元組。然而,除了H4/Z7位元組外,會產生零值。路徑負載量產生器使用全域的MFI及GID計數器及每一通道內部形態,以產生其H4/Z7負載量位元組。
為了支援LCAS,會維持兩份儲存VCAT向前控制資訊及LCAS反向控制資訊之結構記憶體副本。當軟體產生要求去改變獨特的LCAS VCG之結構,以修改其成員身份或更新LCAS反向控制資訊時,全域MFI計數器係使用於同步其結構,去改變訊框範圍以符合LCAS控制封包之檔頭。
圖7不顯示非虛擬串聯的攜帶封包資料之通道資料路徑。然而,用於這通道之資料流程序係描述於其中之行為規格。
2 負載排序及解排序演算法
符合本發明之實施例,一種用於實現負載排序演算法之系統及方法,其係為了重排由封包端取得之位元組,以符合VCG成員通道之傳輸槽順序,並且為了合適於那些通道之程式序列順序。此系統及方法也 會配置以處理動態之VCG成員身份改變。
VCT_TX區塊使用負載排序演算法能夠被描述於不同等級。在一等級中,會描述其用於單一VCG之基本重排演算法,其為整個負載序列演算法之核心。其重排演算法係使用雙重緩衝器去處理VCG成員身份之改變以支援LCAS。
本系統及方法應該可以指出其基本重排演算法,其可以重複使用於VCT_RX區塊的解排序器模組之設計。事實上,於這兩個區塊中能夠使用相同之重排核心邏輯。
下一步,我們描述其演算法是如何運作於VCT_TX區塊內容之多個VCGs。其明顯之關鍵在於不同型態之VCGs(即成員通道之型態),有著不同日曆旋轉週期。例如,忽略無效時序循環,STS-1型態之VCG將有48時序之旋轉日曆,反之VT-1.5/YU-11形態之VCG將有1344時序之旋轉日曆。一VCG之日曆旋轉週期符號於VCT_TX區塊中係為重要,因為當交換VCG之重排緩衝器於讀取與寫入處理間時,其負載排序演算法會使用日曆旋轉加以控制。
最後,我們介紹基於最大之VCG大小,其假定的緩衝器成對支援之VCG緩衝器成對池的概念。這是用於減少緩衝器記憶體容量之最佳化技術。因為VCG成員身份之改變,則此技術會要求延伸重排演算法,以用於從不同池中交換成對緩衝器。
2.1 虛擬串聯群組之重排演算法
圖8顯示重排演算法如何針對每個VCG使用一對緩衝器。每個緩衝器之位元容量為e大於等於該VCG成員數。其讀取及寫入處理為輪流於兩個緩衝器間執行。當寫入處理正寫入一緩衝器,則讀取處理正從另一個緩衝器中執行讀取。注意兩種處理皆由CXC要求資訊所驅動。
其寫入處理會維持用於每個VCG之NEXT_WR_POS形態變數。最初,此變數係設為0。當CXC要求用於假定通道之負載位元組時,其寫入處理會使用該通道之TX_PL_LPID結構參數,以從OFR取得一位元組,並且使用NEXT_WR_POS形態變數來得知索引位置,以存入該VCG目前的寫入緩衝器。
VCG之NEXT_WR_POS形態變數每次加一,且寫入其VCG之目前寫入緩衝器。在等於其VCG大小之位元組數量被寫入VCG後,此變數會再次被設為0,且下次寫入此VCG將是發生於緩衝器交換之後。
當CXC要求一用於假定通道之負載位元組時,其讀取處理會先取得符合該通道之配置VCAT序列號碼的位置,再從VCG目前讀取緩衝器中下載一位元組。所以不像寫入處理,成功之讀取處理係不會存取目前讀取緩衝器之連續位置。
當VCG緩衝器於交換讀取與寫入處理間時,其 重排演算法由於不知道VCG之大小,所以不能自我判斷出。假設這是個別地追蹤、將會交換緩衝器,而且於外部代理器之控制下重新設定NEXT_WR_POS變數。於VCT_TX區塊之案例中,由於假定型態之VCG所有成員已經為該形態寫入一日曆旋轉之位元組,所以於能夠交換緩衝器,以及能夠重新設定該型態之所有VCG的NEXT_WR_POS形態變數,其變數係位於型態的日曆旋轉之開頭或結束部分。
注意其重排演算法係假設當寫入處理完成時,則從上一輪所執行之讀取處理也會完成。顯然地對於VCT_TX區塊而言係為真,因為讀取及寫入處理皆由相同日曆所驅動。注意此假設同樣適用於VCT_RX區塊,因為IFR能夠接受每一個時序之新的要求而不會卡住。其VCT_RX區塊需要處理寫入之卡住問題,而且此問題將會於重排演算法外額外處理。
2.1.1 動態成員身份之改變
為了處理動態VCG成員身份之改變,就使用之結構值而言,於寫入處理後其讀取處理會執行一旋轉日曆。結構之改變只能夠影響符合LCAS控制封包開頭之訊框邊界。所以對於假定型態之VCG,於該型態之第一個旋轉日曆係符合一訊框,且符合用於該型態之LCAS控制封包開頭。其寫入處理可以使用新的結構(就通道為此VCG之成員及所要求之資料而言;即通道之控制自串為NORM/EOS),反之其讀取處理 係使用之前的結構(包括此VCG之成員通道、要求資料及他們的序列號碼)。在下一個日曆旋轉時,其讀取處理也將使用新的結構。
在進行VCG之初始化期間,一成員通道被帶離重新設定狀態前,我們假設其軟體將設定用於該通道之控制字串副本為IDLE。因此,於初始化期間,不是讀取就是寫入處理將會存取其重排緩衝器。之後,當一些或全部成員通道之控制字串結構設為NORM/EOS時,其寫入處理首先將會見到結構之改變,並且於讀取處理見到結構改變且開始讀取前,就先開始進行一輪之寫入。
在下一節所提供之範例係說明其演算法於動態結構改變下之操作。簡單地說,在此範例中我們將於STS-3訊框中考慮單一高階之VCG。
2.1.2 重新排序演算法之操作範例
在此節所提供之範例中,我們考慮單一VCG於初始時有兩個成員之情形。其範例顯示,在每個時槽中,其資料從OFR取得且寫入緩衝器、其資料位元組從緩衝器中讀取且傳至CXC以及緩衝器之內容。
表A:初始成員之範例
第一個範例如表A之說明,其表格顯示演算法之操作,從第0輪開始至假設符合高階多重訊框開頭(即STS-1 0之第一個負載位元組)。注意從上一輪(號碼為-1)沒有任何主動之成員(即STS-1 2之最後一個負載位元組),其VCG結構則於這一輪修改為有兩個主 動之成員。
下個範例如表B之說明,當下一個多重訊框之VCG加上新的號碼時,其開始於日曆之第12384輪,其表格顯示演算法之操作。再次注意其結構會改變於多重訊框範圍之末端(即日曆旋轉12383),因為讀取處理會落後於寫入處理一輪。我們假設VCG緩衝器之大小最少為3個位元組以容納附加新的成員。
最後一個範例如表C之說明,當將序列號碼為0之成員從下一個多重訊框之VCG中移除時,其開始於日曆之第24768輪,其表格顯示演算法之操作。
2.1.3 處理LCAS暫時性之成員移除
LCAS協定使用DNU控制字串,以表示一成員之暫時性移除。當通道位於DNU型態時,其通道不能夠攜帶負載資料。因此,於寫入方面,硬體對於該通道之時槽內無法從OFR中取得負載資料。在讀取 方面,其通道應該傳送零值。
然而,當一或多個成員位於DNU形態時,以LCAS控制封包運送之序列號碼不會改變。假使我們使用以LCAS控制封包傳送之序列號碼來控制讀取處理,則當一或多個成員位於DNU形態時,其重排演算法無法正確地運作。因此,硬體使用於負載及負載量之個別序列號碼,以處理暫時性成員移除。
當其成員序列1進入DNU以取代被永久地刪除時,表D顯示其演算法是如何操作。假設符合訊框H4位元組中第一個日曆旋轉之第12384輪,係開始於第一個LCAS控制封包,其封包為對於此成員以表示DNU之用。對於少於一個日曆之16個訊框而言,即第24767輪之前,其負載結構不會改變。於該日曆旋轉時,其負載結構會改變。
注意配置其使用於負載重新排序之序列號碼,稱為TX_VCAT_PL_SQ,猶如當使用於負載量上之序列號碼不改變時,稱為TX_LCAS_OH_SQ,其移除成員之序列號碼。
2.2 考慮多個VCGs之負載排序演算法
圖9顯示負載排序演算法如何以不同類型之四個VCGs來執行。緩衝器A及B表示兩筆複製資料之緩衝器記憶體,使用於支援重排演算法之雙緩衝器計策。假設對於所有通道類型其日曆產生開始於clock 0。
就(有效)時序循環數量而言,這些VCGs之日曆旋轉週期顯示如下表。
因為不同通道型態之日曆旋轉週期間的差異,對於每個VCG型態,我們需要保持追蹤用於寫入之重排緩衝器記憶體副本,以及用於讀取之副本。當假定通道型態之日曆旋轉時,該型態之所有VCGs會交換寫入/讀取重排緩衝器記憶體。圖9係說明以不同型態VCGs之負載排序演算法。注意對於資料緩衝器可 能會藉由排列其讀取與寫入處理管線,以使用單埠記憶體,例如於一假定區塊中只有一個VCG可以從緩衝器記憶體中讀取及寫入。
2.3 重排緩衝器之池
重排緩衝器根據他們的容量組合成下列的池:
‧64位元組之池
‧32位元組之池
‧16位元組之池
‧8位元組之池
軟體會根據一VCG大小從特定池中,分派其VCG給重排緩衝器。例如,假使其VCG最初有10個成員通道,則能夠從16位元組之池中分派VCG給重排緩衝器。假使此VCG之大小於稍後需要成長超過16個成員通道,則其VCG將需要對應至更大的緩衝器。同理地,假使未來VCG之大小減少低於8個,則為了確保16位元組成對緩衝器可備有需要之VCG所使用,此VCG可能會交換給8位元組成對緩衝器。於成對緩衝器間之交換機制於下節中討論。
假設需要虛擬串連的通道之總數量,為了不要對VCG組合上有任何限制,我們可以判斷出每個池所需之成對緩衝器數量。對於1344個通道,我們執行的方法如下:
1.33個成員VCGs之最大數量為40。因為使用於這些VCGs之池為64位元組,所以其64位元組緩衝器池之容量必定為40。
2.17個成員VCGs之最大數量為79。我們對於這些VCGs不是使用64位元組就是32位元組之池。假使我們對於這些VCG使用64位元組池之全部成對緩衝器,則我們將需要79-40=39個成對緩衝器於32位元組池中。
3.9個成員VCGs之最大數量為149。我們對於這些VCGs可以使用64位元組、32位元組或16位元組之池。假使我們對於這些VCG使用64位元組及32位元組池之全部成對緩衝器,則我們將需要149-39-40=70個成對緩衝器於16位元組池中。
1.8個成員VCGs之最大數量為168。我們對於這些VCGs可以使用64位元組、32位元組、16位元組或8位元組之池。假使我們對於這些VCG使用64位元組、32位元組及16位元組池之全部成對緩衝器,則我們將需要168-70-39-40=19個成對緩衝器於8位元組池中。
總結,對於支援1344個通道之每個池所要求的容量如下:
其要求緩衝器池最佳化之緩衝器位元組總數為10160位元組。若不最佳化,即假設每個VCG有64個成員,則其要求之位元組將為32768位元組。忽略於支援緩衝器池之記憶體結構無效率部分,此呈現節省了大約69%。
注意因為重排緩衝器(168)之總數係大於需要支援的VCGs(128)之總數,所以不用擔心對於使用所有VCGs及沒有任何VCG有多於8個成員之情況。
2.3.1 交換重排緩衝器
從重排換衝器之一型態換至另一型態會發生於日曆邊緣部分。因為在訊框邊界其讀取及寫入處理無論如何都會於重排緩衝器之兩個緩衝器間輪流,所以能夠處理從重排換衝器之一型態換至另一型態,以相同於處理動態成員身份改變之方法,即在寫入處理後,可見到結構改變了一日曆則有讀取處理。對於重排緩衝器之交換,其VCG會改變重排緩衝器以對應其結構。
圖10顯示重排緩衝器交換機制是如何被實現。在日曆第N輪之成對緩衝器為VCG目前使用的重排緩衝器。在日曆第N+1輪中,其寫入處理使用新的成對緩衝器,但其讀取處理仍從舊的成對緩衝器中讀取。從第N+2輪開始,其VCG對於讀取及寫入兩者 之處理已換至新的較大之成對緩衝器,且舊的成對緩衝器則回到池中。
軟體需要詳細定義一VCG應該使用之下一個重排緩衝器,而且需要對於影響的VCG應提供一指示給要求改變之硬體。一旦其硬體見到指示,首先將於下一個日曆範圍內,把該VCG之寫入處理換至新的緩衝器。在之後的日曆範圍內,其讀取處理也將會換至新的緩衝器。
圖10說明於成對緩衝器間交換之範例。注意其重排緩衝器交換會發生於任何日曆範圍內,所以發生於多重訊框範圍內之成員結構改變,係能夠被消除耦合現象。例如,在增加VCG之新成員前,首先軟體能夠將VCG換至新的緩衝器或更大容量的緩衝器,然後增加新成員給VCG。當成員被移除時,於移除操作完成後,軟體能夠將VCG換至較小的成對緩衝器。
另一方面,當成員結構改變時,沒有任何理由可以於VCT_TX無法執行重排緩衝器之交換。藉由組合上述做法,使用其相同軟體結構改變機制以使VCAT向前結構改變。我們假設這個案例於結構模式下,其描述於第3節。
2.3.2 重排緩衝器交換範例
表E提供於緩衝器交換時如何使用兩個重排緩衝器之範例。在此範例中,其VCG有著重排緩衝器 1,初始化於日曆第0輪,其緩衝器有兩個位元組之容量。在第2輪開始,其VCG換至重排緩衝器2,其緩衝器有三個位元組之容量。在第4輪結束,完成交換操作以及重排緩衝器係可以被另一個VCG所使用。
3 結構模型
一些結構參數係詳細定義於通道等級,而其他則詳細定義於VCG等級。通道等級參數係以TX_CH放在前頭,且VCG等級參數係以TX_SO或TX_SK放在前頭,分別根據他們所參照之正相或反相方向。
除了TX_CH_SO_LPID參數外,所有結構參數皆 可應用於VCG之成員通道。只提供給LCAS VCGs之參數,其係藉由參數名稱為LCAS來區分。可提供給LCAS及非LCAS VCGs之參數,其係藉由參數名稱為LCAT來區分。
控制傳送邏輯埠負載位元組之結構參數,即TX_SO_VCAT_EN及TX_SO_LCAS_EN參數,感覺上是靜態的,因為當有任何對應於假定邏輯埠之脫離重新設定的傳送通道時,這些用於該邏輯埠之參數值不會改變。
而其他所有參數感覺上是動態的,因為這些參數不需要透過重新設定通道就可以被改變。然而,在TX_CH_SO_LPID參數之情況中,假使一通道目前分派給一VCG(即設定了SO_VCAT_EN),則在改變該通道之TX_CH_SO_LPID參數前,首先應該將該通道之TX_CH_VCAT_CTRL參數改為IDLE(且完成改變)。
軟體能夠獨立地觸發結構改變於四等級中的任一級:
‧VCG等級之VCAT/LCAS向前結構
‧VCG等級之LCAS反相MST及RS_ACK結構
‧通道等級之LCAS反相插入匯點埠及插入可運作結構
‧通道等級之來源埠對應結構
於VCG之向前或反相等級所改變之結構參數要 有份兩副本,以支援動態VCG結構改變去支援LCAS,以及也支援提及輪到之VCG與於非LCAS VCGs情況之關閉。
注意即使一些動態結構參數(例如TX_VCAT_CTRL)係詳細定義於通道等級,但於VCG等級它們仍會改變。這是允許結構改變且同時地影響其多樣的成員通道。
下表提供結構參數、它們的靜態/動態性質及於什麼等級會改變之列表。
注意1:即使其TX_CH_SO_LPID參數為動態的,還是會保證輪到之VCG結構改變,假使一通道 目前分派給一VCG,則在改變該通道之TX_CH_SO_LPID參數前,首先應該將該通道之TX_CH_VCAT_CTRL參數改為IDLE且完成向前之改變。
對於有兩份副本之結構參數,相同型態之結構改變控制機制不是使用於向前就是反相之VCG等級改變。軟體會詳細定義硬體應該使用之結構副本,以使用一選擇位元。硬體同步化其改變以適合訊框範圍,且當由一中斷完成其改變時,能夠注意到軟體。
在從上一個結構換至新的結構期間,當硬體可能正在使用上一個結構時,軟體不應該改變其VCG之上一個結構。其交換時間的多寡係依據向前結構是否改變為反相,且VCG是否為可運作之LCAS。
3.1 結構記憶體
記憶體係用來儲存靜態結構參數及動態結構改變控制參數,其記憶體必定為雙埠運作以支援硬體及軟體同時存取。
儲存動態結構參數之記憶體也為雙埠運作,以減少當上一個改變正在執行時,軟體必須等待執行新的改變(像改為另一個VCG)所需時間。這是因為於結構交換處理期間,對於一低階LCAS VCG則需要將兩種結構資訊副本都提高至32ms以能夠使用。
由於CXC會隨著每個要求提供通道型態結構資訊,所以VCT_TX區塊中不要求通道型態結構。
結構記憶體會使用其同位元以偵測錯誤,在圖中並沒有顯示。
注意用於VCT_TX區塊之全域重新設定位元係保持在該區塊之外部。
3.1.1 全域結構
其FAST_LOCK_EN應用於VCT_TX及VCT_RX兩者上。所以其參數將保持於VCT_TX區塊外部。其TX_MFI_EN及TX_SHORT_FRAME_EN參數只應用於VCT_TX區塊,而且他們也保持於區塊外部。
注意這些全域結構參數係設計用於加速認證。他們不應該包含於資料表格中。
3.1.2 每一通道結構 3.1.2.1 TX_LPID_CFG_MEM
下列結構參數係組合成一1344*9之雙埠記憶體,其記憶體應該可由高階及低階通道共用。
3.1.2.2 TX_CH_VCAT_FWD_CFG_MEM_0/1
下列結構參數係組合成一1344*16之雙埠記憶體,其記憶體應該可由高階及低階通道共用。
有兩份此記憶體之副本以支援動態VCG結構改變。軟體係使用TX_SO_VCAT_FWD_SEL結構參數以執行每一VCG交換要求。硬體係將TX_SO_VCAT_FWD_SEL結構參數與內部TX_SO_VCAT_FWD_COPY型態變數做比較。假使它們是不同的,則此意思為軟體已經要求執行一改變。當交換正在執行時,硬體將會設定其TX_SO_VCAT_FWD_CHG_DONE中斷狀態位元。
3.1.3 每一VCG結構記憶體 3.1.3.1 TX_SO_PL_MEM
下列結構參數係組合成一雙埠之128*2記憶體。
當有通道脫離對應於此埠之重新設定狀態時,這些參數不應該改變。
3.1.3.2 TX_SO_VCAT_RBID_CFG_MEM_0/1
下列結構參數係組合成一雙埠之128*10記憶體。
有兩份此記憶體之副本以支援動態VCG結構改變。軟體係使用TX_SO_VCAT_FWD_SEL結構參數以執行每一VCG交換要求。硬體係將TX_SO_VCAT_FWD_SEL結構參數與內部TX_SO_VCAT_FWD_COPY型態變數做比較。假使它們是不同的,則此意思為軟體已經要求執行一改變。當交換正在執行時,硬體將會設定其TX_SO_VCAT_FWD_CHG_DONE中斷狀態位元。
3.1.3.3 SO_VCAT_FWD_SEL_CFG_MEM
下列結構參數係組合成一雙埠之128*2記憶體:
3.1.3.4 SK_ICAS_REV_SEL_CFG_MEM
下列結構參數係組合成一雙埠之128*2記憶體:
3.1.3.5 SK_LCAS_REV_CFG_MEM_0/1
下列結構參數係組合成一雙埠之128*65記憶體:
有兩份此記憶體之副本以支援動態VCG結構改變。軟體係使用TX_SK_LCAS_REV_SEL結構參數以執行每一VCG交換要求。硬體係將TX_SK_LCAS_REV_SEL結構參數與內部TX_SK_LCAS_REV_COPY型態變數做比較。假使它們是不同的,則此意思為軟體已經要求執行一改變。當交換正在執行時,硬體將會設定其TX_SK_LCAS_REV_CHG_DONE中斷狀態位元。
4 中斷狀態模型 4.1 中斷狀態記憶體
軟體有讀取及寫入去存取其中斷狀態記憶體,以讀取及清除中斷狀態位元。硬體只需要寫入去存取以設定中斷狀態位元。
假使來自軟體之中斷狀態讀取要求與來自硬體之寫入(即設定)要求發生衝突,則來自其寫入要求之新值將以讀取結果傳送。
假使來自軟體之中斷狀態清除要求與來自硬體之設定要求發生衝突,則其中斷狀態將設置。
4.1.1 每一VCG中斷狀態記憶體 4.1.1.1 TX_SO_VCAT_FWD_CHG_DONE_MEM
下列中斷狀態參數係組合成一雙埠之128*1記憶體:
4.1.1.2 TX_SK_LCAS_REV_CHG_DONE_MEM
下列中斷狀態參數係組合成一雙埠之128*1記憶體:
5 形態模型
除可能於診斷模式外,其形態記憶體不需要使軟體可存取。
除了負載排序緩衝器外,於所有形態記憶體中都會使用其同位元以偵測錯誤,在此節中並沒有顯示。
5.1 形態記憶體 5.1.1 每一通道形態記憶體 5.1.1.1 TX_CH_LCAS_STATE_MEM
下列形態變數係組合成一雙埠之1344*12記憶體,其記憶體應該可由高階及低階通道共用。
5.1.2 每一VCG形態記憶體 5.1.2.1 TX_SO_VCAT_STATE_MEM
下列形態變數係組合成一雙埠之128*10記憶體:
雖然上述記憶體假設會為每一VCG保持其寫入緩衝器記憶體選擇形態,但為此仍可能使用一全域變數於每個VCG型態上。
5.1.2.2 TX_SK_LCAS_STATE_MEM
下列形態變數係組合成一雙埠之128*3記憶體:
5.2 全域形態變數
5.3 負載重排緩衝器記憶體 5.3.1 PL_REORDER_BUF_MEM_0/1
有兩份負載排序緩衝器記憶體(或記憶體們)之副本以實現重排演算法所使用之雙重緩稱器計策。藉由排列讀取及寫入處理管線去使用單埠記憶體,這樣一來,只有一個VCG會於一時序內從緩衝器記憶體讀取及寫入,這是可能發生的。
排列器之規格 6 簡介
Orion之VC/LCAS排列區塊係負責導正(de-skewing)或解排序屬於相同虛擬串聯群組之成員通道。其導正(de-skewing)方法係藉由外部DRAM之補償而實行,其補償係為藉由不同通道之網路差異延遲所累加而得。
VCT排列器每一時序循環就從其VCT分析器接收一位元組之資料,其位元組之資料包含控制資訊。 其資料序列係由時間插敘同步光纖網路通道所構成(高階SPEs或低階VT SPEs)。沒有任何訊框或多重訊框排列於不同SPEs。於不同SPEs間之差異延遲係多變的,且需根據外部網路技術。
在通過VCT排列器後,屬於相同VCGs之所有通道的SPEs則成為排列完成的多重訊框。於VCT排列器之輸出時,會使用於每個VCG之連續負載位元組為有效的。對於VCT解排序器,這是足夠於重新排序位元組及回復其VCG負載。
圖11顯示於VCT排列區塊中之多個模組。VCT排列器是由寫入管理器模組及讀取管理器模組所構成。VCT排列器也使用藉由結構、日曆產生器及失效處理邏輯所產生之資訊。寫入管理器會以每一通道先進先出(FIFOs)機制暫時地儲存於所到達之資料,其資料每次為一位元組。在累加一假定通道之足夠的位元組後,再由缺口傳入DRAM。讀取管理器係實行其反相處理。其讀取管理器從DRAM之缺口讀取資料,且於資料被以每次一位元組傳送出去前,透過每一通道之FIFO機制儲存其資料。
其排列處理本身係由讀取管理器所實行。此執行係藉由通道FIFOs機制有選擇地傳出,以便假定VCG之所有FIFO資料可以排列。
整個VCT排列器使用自由執行TDM日曆,以將資料從一階段搬至下一階段。所有日曆會隨著於相同 順序通道之後(透過結構以判斷),但每個日曆仍會根據需要移動之資料多寡,以不同速度旋轉。
再者,一失效處理單元於任何假定時間,都會判斷出通道及VCG哪個為主動的。圖11之系統說明一系統1200含有分析器1202,例如一MFI分析器,以及一包括寫入管理器1206與讀取管理器1208之VCT排列器1204。其系統進一步包括一MCT 1210,其可能會於系統之內部或者於系統之外部。其排列器之輸入係傳至解排序器1212。
7 日曆
於VCT排列器區塊中有五個階段,使用一自由執行日曆以決定哪個通道為下一個。為了此目的(兩個階段共用相同之日曆),總共使用有四個不同之日曆。每個日曆按照透過結構以判斷出之相同順序。然而,每個不同日曆係使用不同速度以傳遞此順序,而導致不同之週期。於VCT排列區塊之四個日曆有下列時序循環週期:1*1344、2*1344、56*1344及62*1344。
圖12顯示其日曆如何由VCT排列器產生。日曆A(其大小為X,在此X為1、2、56或62)有一計數器,係用於五個輪子(wheels)VC-4、VC-3、VC-2、VC-12及VC-11。其VC-4 wheel之大小為16;其VC-3 wheel之大小為3;其VC-2 wheel之大小為7;其VC-12 wheel之大小為3;以及其VC-11 wheel之大小為4。
每一個X核心時序循環,其VC-4之計數器加1。增加至15時,則計數器再回到0。對於每一次VC-4旋轉,其VC-3之計數器加1。同樣地,對於每一次VC-3旋轉,其VC-2之計數器加1。最後,對於每一次VC-2旋轉,其VC-11及VC-12之計數器加1。
除了用於更新第一個wheel(VC-4)之週期可能變更外,其相同機制係實行於其他每一個日曆。
在此方式中,四個不同速度之日曆係由VCT排列區塊所產生。於任何時候,每個日曆係提供目前VC-4、VC-3、VC-2、VC-12及VC-11之計數器。隨著通道化結構之此資訊是足以判斷出下一個處理之通道號碼。
其通道化結構要求48*9位元如表7所示。對於每個日曆,此資訊可能必須複製以避免讀取衝突。
8 DRAM組織及共用形態
VCT排列區塊至/從外部DRAM以64位元組傳送速度寫入及讀取資料。其外部DRAM能夠維持VCAT資料高達64MB。假使僅要求較少的儲存量,則其DRAM也能夠配置為僅維持達16、32或48MB記憶體。注意這是一個對於整個VCT區塊之全域結構設定。
DRAM之VCAT資料於每一通道FIFOs中組成。有高達1344個這樣的FIFOs。每個FIFO之最大規模係根據通道之型態,會和VCAT DRAM之全域規模(16MB-64MB)一樣。在VCT區塊脫離重新設定狀態後,每個FIFO會使用固定DRAM之一固定位置。
判斷出每個FIFO所使用之DRAM位置,係藉由將連續讀取及寫入發佈給不同DRAM記憶區塊(bank)之方法。表F顯示不同VC-4s(sts-3s)於DRAM中如 何組成以便連續存取VC-4s,其將導致記憶區塊(bank)0至3之連續週期內插。
每個FIFO之大小係根據通道型態及VCAT DRAM之總大小。當最大的FIFO符合VCAT DRAM大小為64MB之sts-3c時,其最小的FIFO會符合VCAT DRAM大小為16MB之vt 1.5通道。為了容納這些變數之FIFO大小,我們定義一VCAT記憶體單元(VMU)為基本記憶體大小,且能夠再分配給不同之FIFOs。
一VMU大小為4096或4KB。一VM能夠維持達64個64位元組之從VCT區塊傳送速度。當於16MB模式中時,一vt 1.5通道係分配到3 VMUs之DRAM儲存量,一vt 2則分配到4 VMUs,一sts-1則分配到84 VMUs以及一sts-3c則分配到256 VMUs。假使其VCAT DRAM有超過16MB,則每一通道會等比例地增加。
可以使用一固定公式以計算於假定FIFO所使用之DRAM中位置。該通道之日曆索引,如通道型態, 係使用於其公式之輸入,以計算其FIFO之開始位址。其FIFO之最大規模係僅根據該通道之型態。讓下列變數A、B、C、D及E成為假定通道之日曆索引:
藉由使用日曆索引及通道型態,表10詳細定義了其公式,以使用於計算記憶區塊(bank)號碼、開始位址及於DRAM中每個通道FIFO之最大規模。注意在這些公式中,VMU為4KB,且”S”為全域結構暫存器詳細定義了VCAT所使用之總空間(0-16MB,1-32MB,2-48MB,3-64MB)。
注意每當上述記憶體空間不使用於sts-3c時,其上述記憶體分配計策每1MB就會留一16KB的洞。
於一2位元記憶區塊(bank)號碼之上述計算結果,係和一18位元記憶體位置一樣(於64位元組單元)。
對於每個通道之FIFO,其排列區塊需要攜帶下列形態資訊:
指標係儲存於64位元組單元,且將指標加至通道FIFO基礎位址,以取得實際之DRAM記憶體位置。當寫入管理器儲存新的64位元資料進入DRAM時,則寫入管理器更新其寫入指標。當讀取管理器從DRAM取得新的64位元傳送資料時,則讀取管理器更新其讀取指標。
讀取管理器去取得讀取指標以確保其FIFO不會滿。讀取管理器也會去取得寫入指標為了保證其FIFO不會為空。
當寫入管理器重新設定FIFO時,其首先將設定無效FIFO位元為1,然後將寫入及讀取指標改為0。每當FIFO脫離重新設定狀態時,其寫入管理器首先將把新的有效資料之MFI號碼寫入”Head MFI”欄位。然後將新的64位元組傳送資料寫入DRAM、更新寫入指標以及不設定其無效FIFO位元。
9 重新設定、失效及警告
其排列區塊係支援每一通道及每一VCG之重新設定。軟體藉由寫入其適當的結構暫存器以使兩種重新設定都可執行。當通道於重新設定狀態時,其排列區塊將不會處理該通道,且將清除屬於該FIFO之任何FIFOs。當整個VCG皆於重新設定狀態時,將造成所有成員通道都會於重新設定狀態。
其排列區塊係也支援每一通道及每一VCG之失 效模式。失效模式非常類似於重新設定模式,除了失效模式可直皆由硬體觸發而不用軟體之外。通道於失效狀態中將不會被處理,且會清除其FIFOs。於失效模式之VCG會促使所有成員進入失效模式。不像軟體重新設定會影響於整個RX區塊中之通道及VCGs,其失效模式只會影響於排列區塊中之通道及VCGs。
於排列區塊中也有兩種通道警告之型態。當寫入管理器從分析器接收到警告時,其寫入管理器則會有每一通道警告形態。同樣地,當讀取管理器從MCT接收到警告時,其讀取管理器則會有每一通道警告形態。下一節將描述這些警告如何偵測。
不同的失效場景係根據一假定通道是否已被軟體所”接受”來決定。一接受之成員係為已經或被預料會攜帶有效資料。一未接受之成員係為不會攜帶有效資料(於LCAS閒置形態),但仍會需要和其他剩餘VCG執行排列,以為了能夠處理其LCAS資訊。未接受之成員有不同地對待,係因為其問題在於不應該影響VCG之其他接受成員。
圖13顯示對於接受與未接受成員其重新設定及失效模式如何一起運作。VCG重新設定及通道重新設定皆為結構形態,其結構形態係由軟體執行寫入。另一方面,其每一通道之讀取及寫入警告係為由軟體維持之內部形態。類似地,VCG失效及通道失效也 係為由軟體維持之內部形態。
一邏輯之單一部份(使用任何可用之日曆)係使用重新設定及警告形態以判斷出失效形態。
假使VCG之任何接受通道有其讀取警告集合,則VCG失效位元將會設定。另一方面,假使沒有任何VCG之通道有其寫入警告集合,則其VCG失效位元將清除。為了確保有足夠時間可清除其FIFOs,則需要維持VCG失效形態最少為1344*64核心時序循環時間。
當一VCG於失效或重新設定模式時,則其所有成員(接受及未接受)都將有各自失效位元集合。當其通道於重新設定模式時,也將設定其通道失效位元。假使其通道重新設定、其符合之VCG重新設定及其符合之VCG失效位元被清除時,則將只清除一接受通道失效位元。其進來之資料也必定於訊框之起始處。
對於未接受之成員,警告將不會造成VCG失效。一通道讀取警告(於未接受之成員)反而將造成其成員進入失效模式。假使通道於重新設定模式,則其通道也將進入失效模式。一旦通道於失效模式,其未接受通道將設定一易卡住的失效位元。
對於未接受成員要脫離失效模式,必須沒有寫入警告、沒有重新設定、由軟體清除其易卡住的失效位元以及必須開始接收訊框。
下表係總結被要求去維持警告、重新設定及失效形態之位元。注意於RX結構之專用於重新設定形態之空間、接受位元及易卡住之失效位元。
10 寫入管理器
圖14顯示寫入管理器之另一個圖示觀點。
寫入管理器有1344主要之FIFOs,其中一個係用於每個通道。每個FIFO前面之兩個位元組會進入RAM。在所有主要之FIFOs執行完後,於資料傳送給MCT前,會有一62位元組之RAM用於儲存位元組。
來自CXC正到達之一位元資料係存入符合其通道之兩位元組記憶體。一週期地自由執行之日曆會將2位元組記憶體之內容,全部倒給其符合之主要FIFO。注意,大部分時間,我們將會寫入兩位元組量 之資料,但有時可能只有一位元組或甚至沒有。
主要FIFO之執行會離開單埠記憶體。因此,在這些FIFOs之中或外之讀取與寫入係交錯排序。於每兩個寫入循環間就有一個讀取循環,且反之亦然。其自由執行日曆係以全速執行(沒有任何閒置),以將從2位元組RAM之資料傳送至其符合之FIFO。每兩個時序循環就會執行一新的FIFO,且於該時序循環期間會有高達2位元組資料進入。每1344*2個循環將會重覆其週期。
類似地,一自由執行日曆每62個時序循環就會選擇一主要之FIFO,且將其內容(62位元組或更少)傳至一62位元組之RAM。計算其傳送之資料量。此計數及空的位元組係加到62位元組資料上,以形成64位元組之傳送資料。其負載量也可能會包含一進來通道之信號失效(AIS)位元,如同同位元保護其1位元組之檔頭。表G說明其64位元組之傳送資料傳至MCT。每1344*2個循環將會重覆其週期。這是說明於圖15。
10.1 警告及失效形態
假使一假定通道從分析器區塊接收含有警告信號之資料,則總是會設定為其通道寫入警告形態。當停止接收到警告資料時,將清除其寫入警告形態。
假使通道於寫入警告形態,但不處於失效形態, 則寫入管理器會主動地連續將資料寫入MCT(但非所有資料),隨著於64位元組傳送單元資料之警告位元。其不使用兩位元組資料及主要之FIFOs,但仍不需要被清除(只要通道不位於失效模式)。當一未失效之通道脫離寫入警告時,其寫入管理器會連續將資料寫入MCT。即使此資料為舊的,但仍不會影響將其資料寫入MCT。
如下一節將會見到,設定於64位元組傳送資料之警告位元,最終將造成讀取警告及必然的VCG失效。VCG失效也能夠由VCG重新設定或VCG成員嘗試寫入已滿之FIFO所造成。VCG失效將會於其所有成員上製造出通道失效。
假使一假定通道於失效形態,其寫入管理器將不再將資料寫入MCT。反而,利用該通道之時間間隔以清除其2位元組之FIFO、主要FIFO及DRAM FIFO。丟棄由CXC傳來且用於該通道之資料。照例,藉由讀取其資料以清除其2位元組之FIFO及主要FIFO,而不用將其資料傳送下一階段。其DRAM FIFOs之清除係藉由設定無效FIFO位元,以及藉由重新設定讀取與寫入指標。
當一成員脫離失效形態時(其必須要為訊框之開頭),將其新訊框之MFI寫入Head HFI欄位。其新的資料係傳至MCT,且更新其寫入指標。最後,不設定其FIFO無效位元。
11 讀取管理器
圖16顯示讀取管理器之區塊圖。讀取管理器有1344主要之FIFOs,其中一個係用於每個通道。每個FIFO之大小為120位元組。在每個FIFO執行完後,會有兩個位元組傳入RAM。在主要之FIFOs執行前,於資料寫入主要FIFO時,會接收來自MCT傳送之一62位元組RAM,以用於儲存位元組資料。
一自由執行日曆每56個時序循環就會選擇一主要之FIFO。假使其FIFO等級少於58位元組,對於該FIFO則產生一讀取要求給MCT。當產生一讀取要求時,最終將62位元組(或更少)資料寫入該FIFO。每56*1344個時序循環就會重覆其讀取要求週期。因為每個MCT傳送攜帶至少56位元組,所以只要DRAM中有資料,則保證其FIFO將不會完全為空的。
讀取管理器維持一個FIFO之要求,已產生給MCT但尚未接收資料。當產生一新的要求時,將一新的項目放置於此要求中FIFO之後端。其項目包含其要求之通道ID。當接收來自MCT之新的資料時,於要求中FIFO之前頭取出其項目。於該項目之通道ID可表示該資料所屬之FIFO。
此要求中FIFO之最大規模為16個項目。假使此FIFO曾經滿過,則表示有DRAM頻寬問題。這不算是災難事件。其讀取管理器簡單地略過目前時槽(於該時槽內,不產生新的要求),以及保持正常地操作。 假使此溢位情況只是暫時,則讀取管理器最終將會補足遺失之頻寬。
假使其要求FIFO發生溢位情況太頻繁,其DRAM FIFOs最終將會溢位且其排列處理將會失敗。這是表示其DRAM頻寬為不足的。為了能夠偵測出此情況,其讀取管理器會保持一全域32位元狀態計數器,以記錄偵測出溢位情況或MCT尚未準備好之次數。每當計數器值改變時,經由一(可遮蓋掉)之中斷通知CPU。
其讀取管理器也可能需要高達16個62位元組之緩衝器,以儲存來自MCT之大量資料。假使對於每兩個時序循環,其寫入主要FIFO之速度係快於2位元組,則此緩衝器容量可能要被減少。
主要FIFO之執行會離開單埠記憶體。因此,在這些FIFOs之中或外之讀取與寫入係交錯排序。於每兩個寫入循環間就有一個讀取循環,且反之亦然。
另一個週期地自由執行日曆,係藉由從符合之主要FIFO所傳送的資料,以填入其2位元組記憶體之內容。此每次於每兩個循環執行2位元組(只於讀取循環期間)。於每1344*2個循環會自我重覆其週期。
另一個週期地自由執行日曆,係從2位元組RAM取得資料,再傳送至解排序器。每一時序循環即可以從不同RAM讀取出一位元組資料。於每1344個循環會自我重覆其週期。11.2節會描述其讀取機如何決定 是否讀取1位元組資料。
11.1 警告及失效形態
讀取管理器偵測藉由觀察於64位元組傳送單元之警告位元以讀取警告,其64位元組傳送單元資料係讀取來自MCT中。
假使於一接受通道上偵測到讀取警告,則將會造成整個VCG進入失效形態。然後,將造成該VCG之每一個成員進入失效模式。假使於一未接受通道上偵測到讀取警告,則將只造成該通道進入失效形態。
當一通道於失效模式時,其讀取管理器不會再從MCT讀取資料。於該通道之時間間隔期間,其讀取管理器簡單地清除其符合之主要FIFO及2位元組之FIFO。於連接解排序器之介面上,隨著一警告表示傳送一相同位元組。
當一通道脫離失效模式時,要檢查其DRAM FIFO無效位元是否清除。一旦此位元清除,對於該通道則可以讀取其Head MFI值。而且現在也可以繼續從MCT中進行讀取,並以正常操作來處理。
11.2 讀取形態機
下列形態機描述為了達成一VCG之所有成員排列,藉由讀取管理器實行其操作。對於每個通道,其形態機決定其設置於2位元組FIFO前頭之位元組資料是否要讀取與丟棄,或者讀取與傳送至解排序器。 這3個操作之合適的組合將會排列出同一VCG之所有成員。
表13顯示每個VCG所要求之額外形態。當每一VCG試著自我排列時,其每一VCG形態則會包含描述一假定VCG情況之資訊。排列完成之成員會有自己之MFI,其MFI係鎖定於其VCG之AMFI。其SOF位元表示VCG之排列成員加入計數一訊框之開頭。其DRAIN位元表示此群組至少有一位成員,試著趕尚祈排列完成之成員們(稍後,這是定義於DRAIN形態中)。最後,其STALL位元表示其VCG至少有一位排列完成之成員會有空的FIFO。這個意思為整個VCG需要等待這個成員。
每一VCG形態NSOF、DRAIN及STALL(或等待)有三份副本。圖17說明其3份副本如何使用。於一日曆旋轉週期間,其形態機寫入三份副本中之一份、 讀取從另一份以及清除第三份。在依日曆旋轉後,其寫入副本變成其讀取副本、讀取副本變成其清除副本以及清除副本變成其寫入副本。
注意VCG(VC-4、VC-3、VC-12及VC-11)之每個型態有不同之日曆旋轉週期。其VC-4之日曆為旋轉每16個核心時序循環、其VC-3之日曆為旋轉每48個核心時序循環、其VC-12之日曆為旋轉每1008個核心時序循環以及其VC-11之日曆為旋轉每1344個核心時序循環。因此,對於四種VCG型態,我們需要一指標集合以表示3份副本哪個為寫入、哪個為讀取以及哪個為清除。
表14顯示此形態機所需求之額外每一通道形態。
圖18顯示一讀取管理器使用於實行排列之高級形態圖。當不位於通道失效模式時,每個通道能夠位於四種形態中的一種:INIT、WAIT、DRAIN及GO。
在INIT形態,一通道將等待從HEAD MFI欄位去取得MFI值。一旦取得目前MFI值,則通道可以判斷其值是否遠於排列於MFI(WAIT形態)之前,或 者是否遠於排列於MFI(DRAIN形態)之後。當在DRAIN形態,其FIFO總是將資料全部倒出或丟棄時,則在WAIT形態,其FIFO從不會把資料倒光。當通道MFI相同於排列MFI時,則可以進入其GO形態,其係可以隨著其VCG的其他於GO形態之成員從FIFO中讀取資料。執行排列所有於GO形態之成員。一通道狀態位元(及中斷)將通知不管是否排列之VCG的軟體。
下列虛擬碼會更細節地解釋及讀取管理演算法。其下標符號_write、_read及_clear係用於表示3個VCG形態副本要使用哪一個。
1.檢查通道失效
If channel failure bit is set
Go to step 7
If channel failure bit is released
Set state to INIT
2.初始化及讀取動作
4.寫入動作(在步驟3後,使用更新FIFO等級及 位元組計數)
If(state==DRAIN)
VCG_DRAIN_write=1
If(state==GO)and(SRAM FIFO is empty)
VCG_STALL_write=1
If[(state==GO)and SRAM FIFO head is NOT SOF
VCG_NSOF_write=1
5.更新CMFI(在步驟3後,使用更新FIFO等級及位元組計數)
6.更新AMFI(使用CMFI值於步驟5中計算)
If(state==INIT)and(DRAM FIFO invalid==0)and (AMFI_VALID==0)and(SRAM FIFO is non-empty)
AMFI=CMFI
AMFI_VALID=1
If state=GO
AMFI=max(CMFI,AMFI)
AMFI_VALID=1
7.清除動作
VCG_DRAIN_clear=0
VCG_STALL_clear=0
VCG_NSOF_clear=0
12 最佳化 12.1 寫入主要FIFOs
圖19說明其主要FIFOs如何分配。
202‧‧‧資料
204‧‧‧排列器
206‧‧‧解排序器
208‧‧‧LCAS控制封包程序
210‧‧‧緩衝區
212、814‧‧‧多工器
214‧‧‧非VCAT路徑
216‧‧‧IER
301‧‧‧LCAS來源
302‧‧‧來源驅動器
303‧‧‧LCAS匯點
304‧‧‧傳輸模組來源
306‧‧‧傳輸模組匯點
308‧‧‧匯點驅動器
413‧‧‧固定TDA日曆
412、1210‧‧‧多通道通道透明(MCT)
423‧‧‧差異延遲分析器
402‧‧‧HI/LO MFI(多重訊框指示)分析器(Ana)
405、1206‧‧‧寫入管理器(SRAM)
406、416‧‧‧FIFO-A
408、418‧‧‧FIFO-B
410、420‧‧‧FIFO-N
414、1208‧‧‧讀取管理器(SRAM)
422‧‧‧VCAT群組形態機構
502、706、1202‧‧‧分析器
504、816‧‧‧交錯連接器
506、606、702、1212‧‧‧解排序器
508‧‧‧排列寫入器
510‧‧‧輸入訊框模組
512、608、710、804‧‧‧結構模組
514‧‧‧日曆故障註冊模組
602、704‧‧‧LCAS/VC控制器
604‧‧‧排列模組
802‧‧‧中央處理單元
806‧‧‧負載排序器
808‧‧‧輸出訊框模組
810‧‧‧路徑負載量產生器
812‧‧‧全球多重訊框計數指示器(MFI)與群組身份證(GID)產生器模組
1204‧‧‧虛擬串聯排列器
圖1係依據本發明之系統結構概略圖。
圖2A-G係依據本發明之來源及匯點(Sink)結構說明。
圖3A-E係依據本發明之系統及排列方法說明。
圖4係ANA之說明。
圖5係LVC之說明。
圖6係DSQ之說明。
圖7係VCT_TX之說明。
圖8係緩衝系統之說明。
圖9係依據通道類型對日曆輪(calendar round)系統之說明。
圖10係緩衝系統之說明。
圖11係VCT排列器之說明。
圖12係說明如何利用VCT排列器產生日曆。
圖13係說明針對認可或非認可成員如何使重新設定(reset)及故障模式同時運作。
圖14係主要FIFO之說明。
圖15係64位元組字串之說明。
圖16係接收迴路中主要FIFO之說明。
圖17係說明如何設定狀態。
圖18係LCAS狀態圖之說明。
圖19係說明如何分配FIFO。
202‧‧‧資料
204‧‧‧排列器
206‧‧‧解排序器
208‧‧‧LCAS控制封包程序
210‧‧‧緩衝區
212‧‧‧多工器
214‧‧‧非VCAT路徑
216‧‧‧IER

Claims (11)

  1. 一種於網路系統中執行區域中心授權服務(LCAS)之系統,該系統包括:一資料排列器,其係設置用於依據成員群組,排列輸入資料位元組;一LCAS控制管理器,其係設置用於回應來自資料排列器之輸入資料,產生解排序控制指命;以及一解排序器,其係設置用於依據解排序控制指令,解排序來自資料列器之輸入資料,其中該排序控制指令係由LCAS控制管理器接收。
  2. 如申請專利範圍第1項之系統,其中設置該資料排列器係用於排列輸入資料之通道,該排列器具有:一寫入管理器,其係設置用於接收輸入資料至第一記憶體;一具有第二記憶體之多通道透明模組,其係設置用於儲存由寫入管理器接收之輸入資料,而該寫入管理器係用以寫入輸入資料至第二記憶體;一讀取管理器,其係設置用於讀取儲存於第二記憶體之輸入資料,依排列方法轉化至第三記憶體;一LCAS控制管理器,其係設置用於回應來自讀取管理器之輸入,產生解排序控制指命。
  3. 如申請專利範圍第1項之系統,其中第一及第三記憶體係靜態隨機存取記憶體(SRAM)模組,且第二記憶體係動態隨機存取記憶體(DRAM)模組。
  4. 如申請專利範圍第1項之系統,進一步包括:一LCAS形態機構,其係設置用於儲存及管理有關系統LCAS硬體形態的形態資料;一虛擬串聯(VCT)模組,其係設置用於執行系統中虛擬及標準串聯程序,該VCT模組包括一封包工具介面,該封包工具介面係用於經由SONET/SDH邏輯埠與封包工具交換(傳送)封包資料,及交叉連接介面係用於交換(傳送)SONET/SDH之流量,該流量係具有映射至內部SONET/SDH交叉連接之資料。
  5. 如申請專利範圍第4項之系統,其中設置該VCT係用於經由一內部SMT-16介面交換(傳送)SONET/SDH之流量,該流量係具有映射至內部SONET/SDH交叉連接之資料。
  6. 如申請專利範圍第1項之系統,其中所有正向控制資訊係設置於每一通道基礎上,但於每一VCG基礎上觸發,且其中所有反相控制資訊係設置於每一VCG基礎上,且於每一VCG基礎上被觸發。
  7. 如申請專利範圍第1項之系統,其中該系統係設置於一SONET基礎系統中,該系統進一步包括:一VC/LCAS排列區塊,其係設置用於補償網路不同的延遲,用以自動校正(deskew)相同虛擬串聯群組(VCG)之成員通道,而該網路不同的延遲係由不同通道累積;該排列區塊包括:一寫入管理器,其係設置用於暫時儲存資料,及累積特定通道一預定之資料量後,依一爆滿方式傳送該資料至一儲存裝置;一讀取管理器,其係設置用於依一爆滿方式由儲存裝置讀取資料,且用於儲存每一通道FIFOs之資料,且接著依一種方式選擇性的排出通道FIFOs,該方式係對特定VCG排列其FIFO資料。
  8. 如申請專利範圍第7項之系統,其中該儲存裝置係一種延伸DRAM。
  9. 如申請專利範圍第1項之系統,包括一自由運作日曆,其係設置用於檢查每一FIFOs之內容,及若FIFO資料內容係低於一固定的臨界值,則初始化一讀取要求。
  10. 如申請專利範圍第9項之系統,其中當透過結構判斷,所有日曆係依照通道之相同次序,以及其 中每個日曆能夠以不同速度旋轉,其係根據需要移除之資料量。
  11. 如申請專利範圍第1項之系統,其中讀取管理器之每一通道有一個別之FIFO,以及其中於每一道之FIFOs上每次係到達1位元組之資料。
TW095102426A 2005-01-21 2006-01-23 在網路中實行區域中心授權服務所用之系統及方法 TWI487351B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US64584105P 2005-01-21 2005-01-21

Publications (2)

Publication Number Publication Date
TW200644540A TW200644540A (en) 2006-12-16
TWI487351B true TWI487351B (zh) 2015-06-01

Family

ID=36740962

Family Applications (1)

Application Number Title Priority Date Filing Date
TW095102426A TWI487351B (zh) 2005-01-21 2006-01-23 在網路中實行區域中心授權服務所用之系統及方法

Country Status (6)

Country Link
US (3) US7684426B2 (zh)
EP (1) EP1913599A2 (zh)
JP (1) JP2008538456A (zh)
CN (1) CN101507145B (zh)
TW (1) TWI487351B (zh)
WO (1) WO2006081150A2 (zh)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006081150A2 (en) * 2005-01-21 2006-08-03 Raza Microelectronics, Inc. System and method for performing concatenation of diversely routed channels
US8081665B2 (en) * 2005-03-04 2011-12-20 PMC—Sierra, Inc. Virtual concatenation of PDH signals
US9286198B2 (en) 2005-04-21 2016-03-15 Violin Memory Method and system for storage of data in non-volatile media
US9384818B2 (en) 2005-04-21 2016-07-05 Violin Memory Memory power management
US8200887B2 (en) 2007-03-29 2012-06-12 Violin Memory, Inc. Memory management system and method
US8452929B2 (en) 2005-04-21 2013-05-28 Violin Memory Inc. Method and system for storage of data in non-volatile media
US7564777B2 (en) * 2005-05-13 2009-07-21 Intel Corporation Techniques for group alarm indication signal generation and clearing
US7903662B2 (en) * 2005-07-28 2011-03-08 Cisco Technology, Inc. Virtual concatenation sequence mismatch defect detection
US7672315B2 (en) * 2005-08-23 2010-03-02 Transwitch Corporation Methods and apparatus for deskewing VCAT/LCAS members
US7620752B1 (en) * 2005-09-01 2009-11-17 Xilinx, Inc. Circuit for and method of processing data input to a first-in first-out memory
US8028186B2 (en) 2006-10-23 2011-09-27 Violin Memory, Inc. Skew management in an interconnection system
DE602006005497D1 (de) * 2006-11-22 2009-04-16 Alcatel Lucent Verfahren zum zeitlichen Anordnen von Teilnehmern einer virtuellen zusammengesetzten Gruppe in einem synchronen Übertragungssystem
US7864803B2 (en) * 2006-12-19 2011-01-04 Verizon Patent And Licensing Inc. Congestion avoidance for link capacity adjustment scheme (LCAS)
KR101205590B1 (ko) * 2007-01-08 2012-11-27 에스케이플래닛 주식회사 휴대단말에서 데이터 저장의 안정성 보장 방법 및 장치
US8483241B2 (en) * 2007-02-15 2013-07-09 Alcatel Lucent Method and apparatus for monitoring virtual concatenation group performance
DE602007014317D1 (de) * 2007-03-23 2011-06-16 Alcatel Lucent Usa Inc Verfahren und Vorrichtung für den Transport von Client-Signalen über transparente Netzwerke mittels virtueller Verknüpfung
US11010076B2 (en) 2007-03-29 2021-05-18 Violin Systems Llc Memory system with multiple striping of raid groups and method for performing the same
US9632870B2 (en) * 2007-03-29 2017-04-25 Violin Memory, Inc. Memory system with multiple striping of raid groups and method for performing the same
JP2008306625A (ja) * 2007-06-11 2008-12-18 Nec Corp Vcat伝送システムおよびvcat帯域制御方法
US20090040950A1 (en) * 2007-08-06 2009-02-12 Freeburg Thomas A Time division duplex (TDD)
CN101394335B (zh) * 2007-09-20 2011-01-19 中兴通讯股份有限公司 一种同步数字交叉连接的自路由的方法及系统
US20090219809A1 (en) * 2008-03-03 2009-09-03 Freeburg Thomas A Redundant mux cnfiguration
JP2009267786A (ja) * 2008-04-25 2009-11-12 Nec Corp 通信装置、通信システム、及び通信方法
JP5051000B2 (ja) * 2008-05-23 2012-10-17 富士通株式会社 伝送システム、パス制御方法及び伝送装置
DE102008037651B4 (de) * 2008-08-14 2010-08-19 OCé PRINTING SYSTEMS GMBH Verfahren zur Kommunikation zwischen zwei unveränderbaren Anwendungsprogrammen und Computerprogrammen
JP5227695B2 (ja) * 2008-08-15 2013-07-03 株式会社エヌ・ティ・ティ・ドコモ ハンドオーバ方法及び無線アクセスネットワーク装置
US8107360B2 (en) * 2009-03-23 2012-01-31 International Business Machines Corporation Dynamic addition of redundant network in distributed system communications
US8761207B2 (en) * 2009-04-30 2014-06-24 Centurylink Intellectual Property Llc System and method for advanced adaptive pseudowire
EP2249526B1 (en) * 2009-05-06 2012-07-04 Alcatel Lucent Protection of user data transmission through a transport network
WO2010134088A1 (en) * 2009-05-22 2010-11-25 Tejas Networks Limited A method to transmit multiple data-streams of varying capacity data using virtual concatenation
CN102576330B (zh) 2009-06-12 2015-01-28 提琴存储器公司 具有持久化无用单元收集机制的存储系统
EP2276187B1 (en) * 2009-06-24 2011-09-07 Alcatel Lucent Method of dynamically adjusting transmission capacity of a data transmission connection
US8639113B2 (en) * 2009-08-12 2014-01-28 International Business Machines Corporation Network protection switching
US8396952B2 (en) * 2009-08-12 2013-03-12 International Business Machines Corporation Provisioning and commissioning a communications network with a virtual network operations center and interface
US8488960B2 (en) * 2009-08-12 2013-07-16 International Business Machines Corporation Synchronizing events on a communications network using a virtual command interface
US8504660B2 (en) * 2009-08-12 2013-08-06 International Business Machines Corporation Validation of the configuration of a data communications network using a virtual network operations center
CN102239651B (zh) 2009-09-17 2015-09-09 华为技术有限公司 光传送网中的动态无损调整
US9465756B2 (en) * 2009-12-23 2016-10-11 Violin Memory Inc. Configurable interconnection system
JP5506950B2 (ja) * 2010-01-05 2014-05-28 アルカテル−ルーセント マシン通信のための通信方法およびその機器
US8166183B2 (en) * 2010-03-05 2012-04-24 Ciena Corporation Method and system for fast virtual concatenation setup in a communication network
CN102202247B (zh) * 2010-03-25 2015-07-22 中兴通讯股份有限公司 一种基于g.709的多级复用的信令控制方法和系统
US8335157B2 (en) * 2010-05-17 2012-12-18 Cisco Technology, Inc. Adaptive queue-management
US8612626B2 (en) 2010-12-21 2013-12-17 Cisco Technology, Inc. Group member detection among nodes of a network
US8559431B2 (en) 2010-12-22 2013-10-15 Cisco Technology, Inc. Multiple label based processing of frames
CN102130763B (zh) * 2011-03-18 2014-08-13 中兴通讯股份有限公司 以太网传输的线序调整装置和方法
EP2860907A1 (en) * 2013-10-08 2015-04-15 Alcatel Lucent Planning of optical connections in a WDM optical network
TWI503035B (zh) * 2013-12-20 2015-10-01 Chunghwa Telecom Co Ltd Number of multi - role attributes Portable management procedures Process management methods and systems
WO2016094667A1 (en) * 2014-12-10 2016-06-16 Intelsat Corporation Method of seamless protection switching of packets at the satellite, from two matching streams of packets from two separate uplink sites
CN104796289A (zh) * 2015-04-22 2015-07-22 国家电网公司 一种电力sdh数据业务保护配置方法及数据业务传输方法
US10153861B2 (en) * 2015-07-30 2018-12-11 Infinera Corporation Digital link viewer for data center interconnect nodes
US10303360B2 (en) * 2015-09-30 2019-05-28 International Business Machines Corporation Replicating data in a data storage system
US9600194B1 (en) 2015-11-25 2017-03-21 International Business Machines Corporation Integrating sign extensions for loads
US9742490B1 (en) * 2016-04-05 2017-08-22 Infinera Corporation System and method for automatic bandwidth management
US10180802B2 (en) 2017-05-18 2019-01-15 International Business Machines Corporation Collision detection at multi-node storage sites
CN113489658B (zh) * 2017-10-31 2022-10-28 华为技术有限公司 一种处理灵活以太网的数据的方法及相关设备
US10452502B2 (en) 2018-01-23 2019-10-22 International Business Machines Corporation Handling node failure in multi-node data storage systems
US10884451B2 (en) * 2018-05-01 2021-01-05 DeGirum Corporation System and methods for completing a cascaded clock ring bus
US11403107B2 (en) * 2018-12-05 2022-08-02 Micron Technology, Inc. Protection against timing-based security attacks by randomly adjusting reorder buffer capacity
TWI702540B (zh) * 2019-03-22 2020-08-21 鼎新電腦股份有限公司 負載控制方法
US10750260B1 (en) * 2019-07-29 2020-08-18 Ciena Corporation Subrating and multiplexing non-standard rates in ZR and ZR+ optical interfaces
US11385829B2 (en) * 2019-08-05 2022-07-12 Cypress Semiconductor Corporation Memory controller for non-interfering accesses to nonvolatile memory by different masters, and related systems and methods
CN111221575A (zh) * 2019-12-30 2020-06-02 核芯互联科技(青岛)有限公司 一种乱序高性能处理器的寄存器重命名方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0814580A1 (fr) * 1996-06-19 1997-12-29 France Telecom Sa Multiplexeur hybride
EP0901306A2 (en) * 1997-09-05 1999-03-10 Gpt Limited Data transmission in an sdh network
WO2000046938A1 (en) * 1999-02-05 2000-08-10 Tecore Multi-protocol wireless communication apparatus and method
US20020001308A1 (en) * 2000-05-26 2002-01-03 Alcatel Method of transmitting synchronous transport modules via a synchronous transport network
US6842455B1 (en) * 1999-07-14 2005-01-11 Alcatel Conversion of contiguous concatenation of virtual concatenation in a synchronous digital communication network

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3997729A (en) * 1975-07-25 1976-12-14 Communications Satellite Corporation (Comsat) Pseudo-random sequencing for speech predictive encoding communications system
EP0555267A4 (en) * 1990-09-24 1994-05-18 Transwitch Corp Sonet signal generating apparatus and method
US5577105A (en) * 1994-03-11 1996-11-19 U.S. Robotics, Inc. Telephone call routing and switching techniques for data communications
US6492719B2 (en) * 1999-07-30 2002-12-10 Hitachi, Ltd. Semiconductor device
US7031252B1 (en) * 2000-03-27 2006-04-18 Cisco Technology, Inc. Reflector communications channel for automatic protection switching
GB0031839D0 (en) * 2000-12-29 2001-02-14 Marconi Comm Ltd A multi-service digital cross-connect
US20040062261A1 (en) * 2001-02-07 2004-04-01 Rami Zecharia Multi-service segmentation and reassembly device having integrated scheduler and advanced multi-timing wheel shaper
US7415048B2 (en) * 2001-08-30 2008-08-19 Pmc-Sierra, Inc. Differential delay compensation
US7424036B1 (en) * 2002-08-26 2008-09-09 Pmc-Sierra, Inc. Efficient virtual concatenation datapath for SONET/SDH
ITRM20020493A1 (it) * 2002-10-02 2004-04-03 St Microelectronics Srl Memoria cam non volatile di tipo and.
US7733900B2 (en) * 2002-10-21 2010-06-08 Broadcom Corporation Multi-service ethernet-over-sonet silicon platform
US6965612B2 (en) * 2002-12-18 2005-11-15 Transwitch Corporation Methods and apparatus for the hardware implementation of virtual concatenation and link capacity adjustment over SONET/SDH frames
US7492714B1 (en) * 2003-02-04 2009-02-17 Pmc-Sierra, Inc. Method and apparatus for packet grooming and aggregation
US7489710B2 (en) * 2003-04-22 2009-02-10 Agere Systems Inc. Stall need detection and associated stall mechanism for delay compensation in virtual concatenation applications
US7333714B2 (en) * 2004-02-10 2008-02-19 Broadcom Corporation Method and system for performing reverse play of SD MPEG video
US7720101B2 (en) * 2004-05-25 2010-05-18 Cisco Technology, Inc. Wideband cable modem with narrowband circuitry
US8289859B2 (en) * 2004-05-25 2012-10-16 Alcatel Lucent Link delay determination using virtual concatenation
JP4361427B2 (ja) * 2004-06-21 2009-11-11 富士通株式会社 回線制御装置および回線制御方法
WO2006081150A2 (en) * 2005-01-21 2006-08-03 Raza Microelectronics, Inc. System and method for performing concatenation of diversely routed channels

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0814580A1 (fr) * 1996-06-19 1997-12-29 France Telecom Sa Multiplexeur hybride
EP0901306A2 (en) * 1997-09-05 1999-03-10 Gpt Limited Data transmission in an sdh network
WO2000046938A1 (en) * 1999-02-05 2000-08-10 Tecore Multi-protocol wireless communication apparatus and method
US6842455B1 (en) * 1999-07-14 2005-01-11 Alcatel Conversion of contiguous concatenation of virtual concatenation in a synchronous digital communication network
US20020001308A1 (en) * 2000-05-26 2002-01-03 Alcatel Method of transmitting synchronous transport modules via a synchronous transport network

Also Published As

Publication number Publication date
CN101507145A (zh) 2009-08-12
US20130315258A1 (en) 2013-11-28
JP2008538456A (ja) 2008-10-23
WO2006081150A8 (en) 2007-07-12
US20060187715A1 (en) 2006-08-24
US9461942B2 (en) 2016-10-04
US8503470B2 (en) 2013-08-06
EP1913599A2 (en) 2008-04-23
US20100254709A1 (en) 2010-10-07
WO2006081150A2 (en) 2006-08-03
WO2006081150A9 (en) 2008-01-17
US7684426B2 (en) 2010-03-23
CN101507145B (zh) 2013-05-29
WO2006081150A3 (en) 2009-04-09
TW200644540A (en) 2006-12-16

Similar Documents

Publication Publication Date Title
TWI487351B (zh) 在網路中實行區域中心授權服務所用之系統及方法
US7177314B2 (en) Transmit virtual concatenation processor
WO2019153253A1 (zh) 一种光传送网中业务数据的处理方法及装置
US20060088043A1 (en) Local area network/wide area network switch
JP4685326B2 (ja) トランスペアレントなトランスポート・オーバヘッドのマッピング
WO2005074211A1 (en) Methods and apparatus for implementing lcas (link capacity adjustment scheme) sinking with rate based flow control
JP2004503980A5 (zh)
US8166183B2 (en) Method and system for fast virtual concatenation setup in a communication network
US6738392B1 (en) Method and apparatus of framing high-speed signals
Choy Virtual concatenation tutorial: enhancing SONET/SDH networks for data transport
US7558287B2 (en) Combined hardware and software implementation of link capacity adjustment scheme (LCAS) in SONET (synchronous optical network) virtual concatenation (VCAT)
US6836486B2 (en) Switching of low order data structures using a high order switch
US7630397B2 (en) Efficient scalable implementation of VCAT/LCAS for SDH and PDH signals
EP1936849B1 (en) Method for mapping and demapping data information over the members of a concatenated group
US6735197B1 (en) Concatenation detection across multiple chips
US8270301B2 (en) Delay distributed virtually-concatenated data traffic
US20080225880A1 (en) Systems and methods for providing framing mapping, muxing and data processing
US8014296B1 (en) Method and apparatus for enabling LCAS-like feature through embedded software
US6856629B1 (en) Fixed algorithm for concatenation wiring
Zhang et al. An ASIC for data over SONET/SDH mapping and path protection switching
CN118157809A (zh) 一种时延信息传输方法、时钟恢复方法及装置
WO2013029411A1 (zh) 一种混合粒度虚级联延时补偿的方法及装置
Helvoort et al. Multiplex Structures of the Optical Transport Network
van Helvoort et al. Multiplex Structures of the Optical Transport Network: Evolution: voice to data transport and voice over data transport

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees