JP2008538456A - ネットワークシステム及び中央認証サービスの実行方法 - Google Patents

ネットワークシステム及び中央認証サービスの実行方法 Download PDF

Info

Publication number
JP2008538456A
JP2008538456A JP2007552302A JP2007552302A JP2008538456A JP 2008538456 A JP2008538456 A JP 2008538456A JP 2007552302 A JP2007552302 A JP 2007552302A JP 2007552302 A JP2007552302 A JP 2007552302A JP 2008538456 A JP2008538456 A JP 2008538456A
Authority
JP
Japan
Prior art keywords
channel
lcas
data
vcg
status
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2007552302A
Other languages
English (en)
Inventor
パオロ ナバエズ,
ムラト ボグ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of JP2008538456A publication Critical patent/JP2008538456A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • 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)

Abstract

【課題】先行技術の欠点を克服するネットワークシステムにおける中央認証サービス(LCAS)を実行するための新しいシステム及び方法を提供する。
【解決手段】ネットワークシステムにて中央認証サービス(LCAS)を実施するためのシステムと方法であって、前記システムは、メンバグループに従って入力データのバイトを配列するために構成されるデータ配列器を有する。また、前記システムは、前記データ配列器からのデータ入力に応答して連鎖解除制御命令を発生するために構成されるLCAS制御管理手段を含む。更に、前記システムは、前記LCAS制御管理手段から受信した連鎖解除制御命令に従って前記データ配列器から入力される前記入力データを連鎖解除するために構成される連鎖解除器を含む。
【選択図】図1

Description

本発明は、より良くデータトラフィックを収容するためのTDM(時分割多重)ネットワークを可能にするために利用される新プロトコルを含む仮想連結信号において、目新しいハードウェアとソフトウェアシステム、方法、装置及び構成に関する。
VCAT
TDMネットワークシステムにおいて、同期光ネットワーク(SONET)及び同期デジタル階層(SDH)に渡るデータサービスの能率的なものについて説明する。TDMは、SONET及びSDHを表現するために使用できる。T1.105付録及びG.7042リンク容量調整スキーム(LCAS)で指定された広帯域低位(LO)及び高位(HO)仮想連結(VCAT)を含む新プロトコルは、TDMネットワークがより良くデータトラフィックを収容することを可能にする。国際通信連合(ITU)はLCASに関する及び仮想連結用の標準を公表した。ITU−T推奨G7042/Y.1305は、仮想連結信号の柔軟なサイズ変更を可能にするためリンクのソース機器(以下単にソースと呼ぶ)とシンク機器(以下単にシンクと呼ぶ)側双方の間で交換された制御信号と同様にネットワークリンクのソースとシンク側で要求された状態を定義する。伝送ネットワークを通して制御信号を運ぶために用いる実際の情報分野はSDH用のITU−T推奨G.707、G783及びOTN用のITU−T推奨G.709及びG798に定義される。これら全ては一般に認識され、公知であり、当該技術者に利用可能であり、そしてここに含まれる共通利用の定義を含むこの応用の目的のために基準として取り入れられる。[ITU−T基準参照。]
仮想連結は単一のフロー(fLOw)として数個の非連続のSTS/VC断片を送信・受信するための能力を提供する。STS/VCのこのグルーピングは仮想連結グループ(VCG)と呼ばれる。前の章にある同じサンプルを用いることで、図7に示すように、STS−3cペイロードをVCATペイロードに変換でき、3個のSTS−1に非連続で地図化(写像)される。
SONET用のVCAT表記法はSTS−n−mvである、ここでnは、全てのVCGを運ぶことに使われる非連続STS断片の大きさ(サイズ)である。mの値は、それが全体のVCGを作るために取るn個の断片の総数である。「v」はこれがVCATペイロードであることを示す。それで、前の例においてVCGがSTS−1−3vフローである。
3個のSTS−1はSTS−3の全体フローを作る。STS−12cはSTS−1又はSTS−3cに分解でき、これによりSTS−1−12v又はSTS−3c−4vとして伝送することができる。SDH用のVCAT表記法はVCn−mvである、ここでn及びmの定義はSONET用に使われたものと同じである。例えば、VC4−16cペイロードをVC−3−16v又はVC4−4vに地図化できる。
STS−24c/VC4−8cのような異常連結と異なり、マルチ・フレーミング(multiframing)の再配置及び表示をH4バイト、経路オーバーヘッド(PatHOverhead)・フィールド、を介して実行されるので、VCATのみが経路遮断装置での実行に必要である。経路オーバーヘッドはTDMフローの元と到着先で利用されるのみである。VCATストリーム(stream)は仮想全SONET/SDH装置によりサポートされるSTS−1/VC−3及びSTS−3/VC4、旧式の無経路遮断伝送装置、から構成されるので、装置はVCATをサポートする必要はない。従って、先に説明した様により大きな固定連結に回路を地図化する必要なしで及びより小さなフローを纏めてより大きな固定連結にする必要なしに、残りのTDMネットワークによって利用利得を楽しむことができる。
VCATが間接的にサポートする追加の特徴は、手段を特定しないが、STS/VC経路のヒットレス・サイズ調整を提供するための能力である。LCASはヒットレス・サイズ調整を定義するひとつのスキーム(sCHeme)である。VCATのペイロードは数個の断片に分解されるので、次の章で述べるように存在するフローからそれらに断片を加えるか取り除くことにより帯域幅を加算又は取り除くことを達成することができる。またVCATは保護スキームを特定しないがLCASスキームはまた保護制御を提供できる。
最後に、仮想支流(VT)−1.5s(1.544Mbps)及びVC−12(2.048Mbps)用の追加広帯域サポートがよりわずかな細切れセクションにさえ利用可能である。これは低位(LO)VCATである。
LCAS
顧客の帯域幅プロファイルを変えることは常に問題である。働く何かを取って、それを変化し、誰にも気付くことなしにそれが再び働くことを確認することが重要である。ほとんどの顧客がこれを要求し、多くが彼らのサービス契約の中にそれを書き込む。再提供の間に同時に共存するために新旧双方の経路に対して十分な帯域幅があるとき、帯域幅の加算又は減少に対する最高条件のシナリオが生じる。2個の回路が立ち上がった後、顧客を新しい回路に移動するためにブリッジ・アンド・ロールが実行される。しかしながら、共存するために2個のフロー用の帯域幅が十分でないとき、新回路が設定できる前に旧回路を取り除く必要がある、その結果、顧客停止をもたらす。LCASの目的は、変化する帯域幅をより簡単でより安全なタスクで作ることである。
LCASはアプリケーションの帯域幅需要を満たすためにVCGリンク内で容量を増加・減少する「ヒットレス」用の制御の機構(メカニズム)を提供する。またそれは障害を経験したメンバリンクを一時的に取り除くための容量を提供する。LCASは、容量初期化、増加又は減少の場合に、各個別のVCGメンバの端から端までの経路の変更がネットワーク及び要素管理システムの責任であることを仮定する。それはLCASが再提供する帯域幅に対する機構を提供するが、いつ・何故運用がなされるかを決定する制御の機構ではないことである。
LCASの特徴は、その断片化された帯域幅の増分においてVCG容量を増加・減少させる能力、全VCGを取り除くことなく失敗したVCG断片の自動除去、同様に動作する断片で失敗した断片の動的置き換え、非・LCAS VCGへLCAS VCGのオンター動作;それはLCAS送信機が非・LCAS受信機に移ることができる。そしてその逆もまた、VCGの一方向制御、非対称接続を有する能力及び多くの他の特徴を有する。これらの特徴は伝送ネットワークを大いに改善することができる便益リストを提供する。LCASはサービスに影響を与えず、又はVCGを落とすことなくVCG内で帯域幅容量を加えるか除去する柔軟性を提供する。これは提供時間を節約するだけでなく「保守期間」の間の動作の制約を除く。更に、技術者はブリッジ・アンド・ロール用に要求される追加帯域幅よりも回路用の増分帯域幅のみを見いだせばよいので、より少しの計画しか必要としない。
別の重要な便益はLCASがVCGにおいて帯域幅を加算及び削除することである。これは提供者(プロバイダー)により大きな範囲のSLAを提供することを可能にする。また、SLA特徴リストに加えることは、オンデマンドで帯域幅を加算するLCASの能力である。従って、それは顧客を基準としたオンデマンド帯域幅変更(サービス提供者用の他の利益)の作成を助ける。
管理の提供及び顧客の要請に加えて、LCASはネットワークのトラフィックのフローを動的に変えるために信号化プロトコルに関連して働くことができる。これ用の1つの応用はネットワーク幅又は期間基づいた負荷バランスである。更に、負荷バランス/ネットワーク回復をより高い利用性に支払うそれら顧客に向けて偏向させることができる。負荷分担復旧スキームは潜在的に、パケット段階での優先順位及び混雑回避スキームが組み合わされたとき新しい形式の高度なサービス商品を生み出すサービスの要素であり得る。
また、VCAT柔軟性をLCASで強調することが可能である。これは、動的TDM経路復旧を提供すると共に提供の柔軟性と能率的SLAへの提供者の能力を大いに改善する。
SONET/SDH(「同期光ネットワーク/同期デジタル階層」)伝送階層が通信事業者に時分割多重化を用いる音声と専用回線サービスを運搬する実務的手段を提供するために設計された。その初期設計において、SONET/SDHは、(例えば、51Mb/s、155Mb/s、622Mb/s、2.5Gb/s、10Gb/s、40Gb/s)のデータ・レートの制限集合を有する固定の階層構造を維持した。インターネット及び事業データ・ネットワークの成長で、トラフィックの範囲と形式が拡大したとき、この構造をより柔軟にパワフルにする必要がある。
GFP、VCAT及びLCASから成る次世代SONET/SDH技術の集合の導入は、性能監視と故障分離のためにSONET/SDH標準に機能的に組み入れられた優れた運用及び管理を保ちながら、SONET/SDH伝送ネットワークを音声回路と共にデータの柔軟で能率的な通信手段(キャリア)に変形する。GFP、VCAT及びLCASは並列に開発され、それらの主な便益はそれらが組み合わせて用いられるときに実現される。それらは、伝送資源と弾力性の帯域幅制御の能率的利用を提供するために互いに補完する。これらに基づいた部品、装置供給事業者(ベンダー)の装置及び試験装置は成熟し高度に相互作用する。上述の3つの土台技術のそれぞれは次世代SONET/SDHに独特な貢献を持っている。
包括的なフレーム化手順―GFP(ITU−T、G.7041及びG.806)は、異なるビット・ストリーム形式の柔軟な地図化を単一バイト同期チャンネル内に提供するあらゆるデータ形式に対して、軽量のカプセル化方法である。それは、固定であるが1パケットにつきわずかなオーバーヘッドを有する能率的なカプセル化を提供する。2つの主な形式のGFPがある。
フレームに基づいたGPF(GFP−F)は全てのクライアント・フレームを単一GFPフレームに記憶し転送する。これは、ほとんどのパケット形式に対して好ましい方法である。
透過GPF(GFP−T)は、記憶領域ネットワーク又はSANのような応用に対してブロック暗号信号を伝送することにより、短い待ち時間を提供する。
仮想連結、VCAT(ITU-T、G.707及びG.783)は、単一バイト同期ストリームを作るために随意のSONET/SDHチャンネルを組み合わせるための逆多重技術である。各ネトワーク要素で連結機能を必要としている連続連結と異なり、VCATは経路終端装置で連結機能のみを必要とする。VCATは、存在するSONET/SDH NEsによって通常サポートされた標準STS―Nc又はVC SPEサイズに能率的に一致しないペイロードを伝送することができる。VCAT機能は、経路の各NEではなく、経路終端要素のみで必要とされる。VCATは、より大きい帯域幅の端から端の接続を構築するためにより小さい帯域幅容器を用いる。個別の容器は、各容器間の差分遅延に対して補償をもうけて、様々な経路で送ることができる。
リンク容量調整スキーム、LCAS(ITU-T、G.7042、G.806及びG.783)は、VCATを有するSONET/SDHネットワークに伝送された容器のサイズを動的にヒットレスに調整するための信号化の仕組みである。それは、動的変化を使用のSONET/SDHチャンネルの数に許可するVCATへの拡張であり、経路オーバーヘッド・バイトの帯域内(イン・バンド)で運ばれる。
小経路(Trail)がすでに準備されたとすると、LCASは終端点で帯域幅調整を調整する。また、それは任意のフェイルオーバ(FAILover)回復特徴を含む。
SONET/SDHネットワークの端で、マルチ・サービス準備プラットフォーム(MSPP)は、SONET/SDHネットワーク内で伝送するためにイーサネット(登録商標)物理インターフェースに適合させるために存在し得る。MACフレームのフレーム・分離器(デリミッター)の前置部及び開始部は取り除かれ、MACフレーム(送信元及び送信先アドレス、長さ/形式フィールド、MACデータ、埋め込みバイト及びフレーム検査の連鎖(シーケンス))がGFPペイロードに地図化される。GFPオーバーヘッド・バイトが付加される、そしてGFPフレームは、ネットワークにまたがる様々な経路をとるVCATグループ(VCGs)に割り当てられる。(註:OIF世界相互運用デモンストレーションにおいて、SONET/SDHは、異なる供給事業者からの装置を用いる複数の領域(ドメイン)と複数の通信事業者の研究所で構成される。)LCAS信号化は、応用の帯域幅要求への調整及びVCGメンバリンクの障害又は復旧への応答のためにVCGリンクのメンバを追加又は取り除くように意図される。ネットワークシンクMSPPで、VCGsからのペイロードはGFPから復元(デマップ)され、時間連鎖に再構築され、多重されそしてイーサネット物理インターフェースで送信される。
OIF世界相互運用デモンストレーションでのサービス適合特徴に対する試験は、以下の4つの領域に焦点があてられた:
SONET/SDHの基盤に対するイーサネット専用回線サービスの効率
GFP及びVCATによる部分レート及び全レートのイーサネット伝送の適応
異なるネットワーク特性への適合の弾力(差分遅延)
増加/減少帯域幅要求へ及びLCASでのネットワーク障害状態へのサービス中の反応
これらのテストケースは、異なる装置供給事業者間の相互動作だけでなく、GFP-F、VCAT及びLCASの基本的特徴間の相互動作もまた明示した。
VCAT及びLCASの応用の例として、LCASを用いるVCATシステムによって提供できるイーサネットサービスの例示を図1から図4に示す。図1は、VCAT及びLCASによって提供されたサービスを有するイーサネットシステムを例示する。ノード(ノード)A及びノードZ間のリンクは、3メンバの仮想連結グループを用いるイーサネットフレームを伝送し、そしていかなる数のメンバでも可能である。3個の個別のLCASプロトコルは、ノードRのLCASとノードZのLCAS、b(R)のLCASとb(Z)のLCAS、・・・n(R)のLCASとn(Z)のLCASの通話などを含んで、絶えず各ピア位置を監視する。LCASプロトコルは状態機械及びそのようなシステム用のかなりの構成パラメータを確立するが、それは特別なノードでLCAS機能を実行するための構成要素の特別な実装を指定しない。通信のために、各ノードは、例えばCP1及びCP2から送受信データ用の送受信構成要素を必要とする、そして複数ノードは可能である。
CP1は、パケットを持つイーサネット信号を包括的なフレーム化手順(GFP)に従ってイーサネットパケットが処理されるデータトラフィックに適合するノードRに送る。そして、フレームはVCATプロセスに従って分離される。
歴史的に、パケット適応型、IP又はイーサネットのような統計多重技術は、連続連結によって提供された細切れ帯域にうまく合致しない。VCATは、帯域幅の細切れ増分及びVC−nユニットを可能にする逆多重技術である。ソースノードで、VCATはXかけるVC−nに等価の連続ペイロードを作成する。X容器の集合は仮想容器グループ(VCG)として知られる、そして各個別のVCはVCGの数である。低位仮想連結(LO-VCAT)は、XかけるVC11、VC12、又はVC2容器(VC11/12/2−X v X=1・・・64)を用いた。高位仮想連結(HO-VCAT)は、XかけるVC3又はVC4容器(VC3A−X v、X=1・・・256)を用いる、Xかける48、384又は149、760Kbit/sのペイロード容量を提供する。
図1を参照して、仮想連結運用、特にVCAT/LCASによって提供されたイーサネットサービスを説明する。プロセッサCP1は、イーサネットプロトコルによってフローが実行されるイーサネット接続に接続される。新プロトコルによれば、ノードRは、仮想連結運用によるペイロード分離に従うトラフィック適応のための包括的フレーム化手順のイーサネット信号を受信する。トラフィック制御は、ノードRが交換機(クロスバースイッチ)を介してデータを輸出する前にLCASプロトコルによって実行される、ここでは旧STHとして示される。イーサネットフレームは、例示のようにVCATメンバ情報に添付され、そして旧STHを介してノードZに伝送される。ノードRと同様に構成されるノードZは、LCAS運用プロトコルを介してデータを受信するために構成される、そしてペイロード集合がイーサネット信号を受信する制御器CP2によって使用のデータを再構成するために実行される。フロー制御は、同様にイーサネットプロトコルのフロー制御を介して運用あるいは実行される。通信用に、各ノードはイーサネット信号を送受信する能力を有する。仮想連結で、旧STHは、その帯域幅及びトラフィック制御を実行するLCAS運用での効率を増やす能力を有する。
図2を参照して、仮想連結を図的に説明する、そこでは例えば連続的なペイロードVC3/4は、各断片が複数連鎖及び連合したMFI数を有するX個の断片に分離される。各断片はVC3のX倍の各断片が特別なMFI数及び連鎖に対応する仮想連結グループを有する。図からわかるように、仮想連結グループ(VCG)は個別に送信される。
図3を参照して、LCASにより管理されたVCATチャンネルを説明する。
ノードA及びノードB間で、信号が伝送される、TX、及びVCG、パイプライン方法の仮想連結グループを介して受信(RX)される。各ノードはソース及びシンクを有し、また各々は対応するLCAS構成を有する。LCASは、ネットワーク運用者が能率的にVCATサイトで確立されたNG SDH接続を制御することを助ける。LCASの利用は強制ではないが、VCAT管理を改善する。図からわかるように、ソースとシンク間のメンバ状態は、4/アイドル(IDLE)、加算(ADD)/失敗(FAIL)、正常(NORM)/OK、DNU/失敗(FAIL)及び除去(REMOVE)/OKに対応する。図からわかるように、送信チャンネルA、B、C及びDは伝送モードのチャンネルとして示される、そして対応チャンネルH、I、J及びKはソースからシンクに送信するチャンネルとして例示される。ノードBからノードAに。
図4を参照して、K4マルチ・フレーム(VCAT及びLCAS法典化)を説明する。低位経路オーバーへッド(LO-PO)をK4マルチ・フレーム内の17から20の位置で示す。また、MFI数、連鎖数、制御数、制御ビット、RS−ACK、MST数及びCRC−3はマルチ・フレーム内にある。また、K4スーパーフレームが対応するMFI数、連鎖数、制御及びCRC−3数で例示される。(VCG[0・・・・・31]のSQ連鎖表示器)。MFI:マルチ・フレーム計数表示器[0・・・・・31]。K4スーパーフレームは、512msの時間長を有する。K4は、LO-POオーバーヘッドの一部であり、500ミリ秒毎に繰り返される。32ビットが、16ミリ秒で繰り返される(500x32=16ms)完全マルチ・フレームに送られる。ビット―2スーパーフレームが32マルチ・フレームで作られ、512msで繰り返される。高位側について、図5を参照してH4マルチ・フレームをVACTとLCAS法典化で例示する。H4は、HO―PO(高位オーバーヘッド)の一部である。H4は、125ms毎に繰り返される。1から6バイトマルチ・フレームは16ms要する。4096バイトの完全マルチ・フレームは、繰り返しに512msかかる(125x4096=512ms)。
柔軟かつパワフルである構造を達成する多くの試みが試みられたが、今まで従来システムでのハードウェアとソフトウェア間の機能の分割は不公平であった。特に、動作中のサイズ及びメンバ資格の変更などの、あるプロセスが要求されたとき、プロセス内の運用はメンバ資格活動と結びつける。
例えば、音に基盤を置いたシステムにおいて、V―4を更新した空間G707内のITUは、仮想連結を要求する。例えば、7メガビット・チャンネルが要求されれば、希望する結果は7−1メガビット・チャンネルであり得る。結果として、LCAS加算を実行する必要がある。標準要件によって動作中のグループのサイズ及びメンバ資格の変更する必要がある。従来システムにおいて、このプロセスは非常に長く、プロセッサに非常に高い要求を必要とする。要求されているプロセスは、例えば、検査構成、中断、要求、障害、リセット及び他の操作である。新標準要件を与えると、システムはリアルタイムプロセス要件によって負担がかけられる。
仮想連結(VCAT)は、随意の配置内でSONET/SDHが多重されることを許すことにより様々なデータペイロードに対して、伝送パイプを「正しいサイズ」にすることを可能にする。VCATはデータパケットを分解し、それらをTDMフレームの基本ユニット内に地図化する。例えば、SONET用STS―1(51Mb/s)及びSDH用AU4(155MB/s)。そして、このデータは、利用可能なSONET/SDHパイプ容量に合致させるために最適サイズ化されたより大きな集合ペイロードを作るために、可変サイズの複数データフローにグループ化される。VCATは、旧伝送ネットワークを介して独立に送信されることに使われる各チャンネルを許可する接続の終端点で適用される。データは、通常GFPを用いてカプセル化される。VCAT(ITU―T G.707で定義される)は、より大きな仮想を形成するために小さなSDH/SONET仮想・容器(VC)ペイロードの相当数を組み合わせる。
連結グループ(VCG)。8Mbit/sデータフローが例えば4つのVC―12で出来るように−−約2Mbit/sを提供するVC―12、約50Mbit/sのVC―3及び約150Mbit/sのVC4で−−VCは3つの異なるサイズに入る。可変容量のこれら細かく調整されたSDH/SONETパイプを作ることは、同様にサービス品質(QoS)及び顧客サービス・レベル同意を制御しながら、データ扱いの拡張性及び効率を改善する。VCGは、独立VCsのグループとして取り扱われる、これは各VCGが端から端までの経路に渡って全ての利用可能な時間スロットを利用でき、そしてVCGは他の端で再形成されることを意味する。例えば、上述の8Mbit/sペイロードは、全体のSDH/SONET信号内の何処でも4つのVC―12に渡って分けることが出来る。
SDH/SONET上のデータ伝送の柔軟性に対する同等の重要は、ITU―T G.7042に記載されたリンク容量調整スキーム(LCAS)である、それは個別のVCを加えるか又は除去することにより調整されるVCGのペイロードを可能にする。LCAS推奨は、ペイロード容量が調整されるとき、パケット損失なく2個の終端点間の要求変化を信号化するための機構を提供する。
リンク容量調整スキーム(LCAS ITU―T G.7042)と組み合わせる、VCATは、存在する光伝送ネットワークにかぶせるデータサービスを可能にする費用効果が高い弾力的機構である。これらの標準は、通信事業者がすでに存在している展開したテクノロジを使いながら収入を最大化することを可能にする。サービス提供者が複数配達機構を用いる同じ(又は増加の)サービスを配達することに挑戦させられるとき、1つの伝送基盤上のイーサネット及び従来の音声とデータサービスを組み合わせるこの標準に基づくアプローチは益々一般化している。これらの要求は、都市型パケットネットワークで従来的に包括されるそれらの外側のサービスエリアに対して特に重要である。
参照:http://www.halIPLex.com.au/multis1600.html
これは従来のシステムに重大な問題を引き起こす。そのようなシステムでは、ハードウェアとソフトウェア間のプロセス機能の分割は不公平である。音声データのみを送信、受信又は交換するためのみにそのようなシステムが設定されたので、データの更なる近代的伝送に要求される効率は実現されなかった。ネットワークシステムでは、異種のメンバ資格接続の解決を含むメンバリンク活動の速やかな管理が効率よく働きすぎるシステムに対して必要である。例えば、メンバが7メガバイトチャンネルを要求したが、7個の1メガバイトチャンネル受信するのであれば、そのときLCAS加算はグループのサイズ及びメンバ資格変更のために実行される必要がある。これはITU−T G7042に提示されている。新しいITU標準要件によると、これは動作中に継ぎ目なく実行されるべきである。しかしながら、その標準はこれをどのようになすべきかを正確に提示していない。これはプロセッサに大きい負担を与え、そこでは構成の検査を必要とし、命令の解釈を必要とし、及びプログラムは、効果的効率的にリンクを作り、新標準に要求されるVCATを提供するために強力でなければならない。簡略化されたLCASソース及びシンク状態機械を図6に例示する。
従って、ネットワーク通信でのハードウェアとソフトウェア運用間のより効率的なバランスを提供し、リアルタイム処理要求によって負担のかからないやり方でLCAS運用を実行できるSONET基盤のシステムの背景にLCAS運用実行システムと方法のための技術の必要性が存在する。見られるように、本発明はそのようなシステムと方法を洗練されたやり方で提供する。
本発明は、先行技術の欠点を克服するネットワークシステムにおける中央認証サービス(LCAS)を実行するための新しいシステム及び方法である。システムは、複数局面化され、VCAT伝送用のシステムに特に多くの特徴を提供するが、これら提供機能に限定されるわけではない。当該技術者は、以下の実施の形態の例を基本的機能及び構成要素が役に立ち得る全てのシステム及び方法にて用いることが出来ることを理解するだろう。
本発明は、中央認証サービスを実行するためのネットワークシステムであって、
前記ネットワークのグループのメンバに基いて入力データのバイトを配列するデータ配列手段と、
前記データ配列手段からの入力データに応答して連鎖解除制御命令を発生する中央認証サービスコントロールマネージャと、
前記中央認証サービスコントロールマネージャから受信される連鎖解除制御命令によって前記データ配列手段から入力される前記入力データを連鎖解除するために構成される連鎖解除手段と
から成ることを特徴とするネットワークシステムとしたものである。
新システムの一実施の形態の例は、仮想連結プロセス内のデータの配列、連鎖及び連鎖解除の独特な構成を提供する。そのようなシステムとプロセスはSONET/SDH伝送プロセッサ又はその他内で利用できるが、全ての特別なネットワークに限定されない。特に、システムとプロセスは高位及び低位フレーマ及び仮想連結とLCAS機能を持つプロセッサで用いることができる。当該技術者は、発明の精神と範囲が広範囲の応用に適応し、付属の請求項とそれらの同等物で定義されることを理解するだろう。
本発明の他の実施の形態の例は、そのようなシステム内のハードウェアとソフトウェア機能間の新しいバランスを提供し、ここで負担となるプロセスはプロセスから取り除かれ、運用経路の外で実行される。これは、システムがより効率的なやり方でLCASを実行することを可能にし、一般的にプロセスの速度をあげる。本発明は、SONET基盤のシステムの背景内のLCAS運用実行システム及び方法の背景内で記述されるが、当該技術者は本発明が実際的に広範囲であり、ネットワーク通信及び他の応用におけるハードウェアとソフトウェア機能間のより効率的なバランスから利益を得る全てのシステムに拡張されることを理解するであろう。
本発明の一実施の形態の例では、プロセッサは効率的なやり方でメンバを加算及び削除するために構成され、ここで、プロセッサ・オーバーヘッドは従来のハードウェア基盤状態機械と同様である。共通性は同様の構成チェック、命令解釈、及び装置プログラミングである。しかしながら、本発明によると、本発明に従って構成されるLCASプロセッサは著しく減らされた処理時間で動作し、重要でないリアルタイムプロセッサ要件を要求しない。安定状態又は正常運用で、プロセッサ・ローディングはない。それゆえ、本発明は、安定状態運用の間にプロセッサの負担を大いに減らすことにより先行技術の欠点を克服する解決を提供する。例えば、メンバを加え又は削除することで、運用のソース及びシンク側の両方に対して、システムは、2個の割り込み(加算運用で)又は1個の割り込み(削除運用)に応答することを必要とするだけである。また、実際上、そのような運用でのメンバごとの処理時間を1ms以下にできる。ITU標準によって定義されるような合計のLCASプロトコル完了時間は最小である、そしてこれは特別な実行(HO:高位、LO:低位)から独立して行われる、例えば
最良ケース 最悪ケース
HO 8ms + 4XProp遅れ 70ms + 4XProp遅れ
LO 128ms + 4XProp遅れ 352ms + 4XProp遅れ
障害事件が発生した場合、本発明は障害メンバに対して100ミリ秒以内に割り込みへの応答を提供する。割り込みのためのLCAS障害レートを、LOに対して、8障害メンバ状態メッセージ受信まで32ms毎、そしてHOに対して、8障害メンバ状態メッセージ受信まで2ms毎にできる。全体として、プロセッサ実行時間はLCASプロトコル実行に関して実質的に重要ではない。
配列
更に、本発明は、LCASを実行するために配列システムを提供する、そこでデータ配列器が入力データのチャンネルを配列するために構成される。一実施の形態の例では、データ配列器は、第一のメモリに入力データを受信するための書き込み管理手段を含む。そして、書き込み管理手段はマルチ・チャンネルからのバイトを、第二メモリを持つマルチ・チャンネル透過モジュール(MCT)に書き込む。そのMCTは、書き込み管理手段からの受信入力データを記憶するために構成され、第二メモリで、別々のチャネルのためにデータを別々に保持する。配列システムは、更に、1列の配列方法で第二メモリに記憶される入力データを第三のメモリに読み出すために構成される読み出し管理手段を含む。一実施の形態の例では、読み出し管理手段が、VCGから全データを受信するとき仮想連結グループ(VCG)を作るチャンネルグループからのチャンネルデータを読み出すために構成される。LCAS型処理を実行するために構成されるシステムでは、異なる個別の仮想連結チャンネルグループが異なる時間で伝送の受信終了で到着する。本発明によれば、読み出し管理手段は、チャンネルデータが、全グループメンバデータが到着するまでMCT内の空間を充填することを可能にする。その時点で、それらは読み出し準備され、そして引き続く連鎖解除のような処理に送られる。また、配列処理の一部として連鎖解除を実行することも可能である。好ましい実施の形態の例では、配列は、個別チャンネルデータの連鎖の変更から分離して実行される。
連鎖と連鎖解除
更に、本発明はVCGからチャンネルデータを連鎖するための新しいシステムと方法を提供する。そのシステムは、VCGのメンバチャンネルの所定の伝送スロット順に従ってデータバイトを再整理し、動的メンバ資格変更を処理するために構成される連鎖モジュールを含む。そのシステムは、更に、LCASをサポートするためにVCGメンバ資格変更を実行するダブル・バッファプロセスを実行するモジュールを可能にするために構成される少なくとも2個のバッファを含む。読み出し管理手段は、1個のバッファからメンバ資格変更データを読み出すために構成され、そして書き込み管理手段は、別のバッファにメンバ資格変更データを書き込むために構成される、ここで読み出し及び書き込み管理手段の書き込み及び読み出し機能は2個のバッファ間で交互に入れ替わる。1実施の形態の例では、各バッファのバイト容量は、VCGメンバの数に等しいかより大きい。
個別に又は組み合わせて用いることができる異なる実施の形態の例の本発明に従って構成されるシステムは、多くの方法に大いなる便益を与える。システムは以下を提供できる、高度に統合された音声/データ可能な低価格次世代固定形式、SONET/SDH可能な顧客前提(CPE)システム、次世代用の高度に統合された進化したイーサネットサービス配送解決法、SONET/SDH可能なMSPPラインカード、イーサネットからSONET(EOS)をサポートするネットワーク要素、パケットからSONET(POS)及びTDMサービス、SONET/SDHへのデータトラフィックの高度な(非)集合用のサービスカード/ラインカード、データ及び/又は回路整容システム、高められたイーサネットE-ラインのサポート、E―LAN/VPLS、PWEデータサービス、及び旧型、TDMサービス及び多くの他の応用。
本発明は、プロセッサがサービス配達に関する伝送コストを減らす間にこれらのサービスを配達するためのシステムプラットフォームを可能にすることを許す。その上、全般のクライアントアクセス用の低価格イーサネット・インターフェースを用いることにより、本発明に従って構成されるハードウェアとソフトウェア解決は、サービスレートと他のSLA特徴を可能にできる。これらは、高価なトラックロールなしでクライアントの加入で自主的に要求あり次第容易に修正できる。
本発明の高度に統合された解決法で、システム提供者は、発明によって可能になるコスト/サービス/価値ポイントにより追加配送量を甘受できる。サービス提供者は、サービス多重技術を通じてそれらOPEXを減らす間にかれらの毎月の収入機会(可能である毎月の割り増しとほぼ同じであるCAPEX支出で)を増やす進んだサービスモデルを可能にすることができる。エンドユーザは、より多くのサービスオプションの利益を得ることができる。本発明は、ギガビット・イーサネット、10/100イーサネット、保護されたSONET/SDH(光又はMSPPファブリック)、PDH拡張バス及びSTS―48帯域幅を有する柔軟なインターフェースオプションを全SONET/SDH及びパケットで提供する。それは、GFP1仮想連結及びLCASを利用する存在するSONET/SDH基盤上でイーサネットサービスの伝送を最適化する。また、それはイーサネット通信ネットワーク上でイーサネットサービスの配達のために通信事業者クラスの解決法を提供する。
本発明に従って構成されるシステムは、広範囲のサービス・プロフィールを可能にする高帯域幅イーサネット仮想専用ライン(Eライン)、仮想専用LAN(E―LAN及びVPLS)及び擬似ワイヤ(PWE)サービスの配達を可能にする。また、それは仮想スイッチングを可能にする、そこでは多くの仮想スイッチサービスの複数の歳入がE―LANを生み、それらの帯域幅、ポート及び統計資源のそれぞれが機能上そして管理の面で隔離される。
本発明の一実施の形態の例では、システムはシステムLCASハードウェアの状態に関する状態日付の記憶と管理のために構成されるLCAS状態機械を含む。仮想連結(VCT)モジュールは、特にそのようなプロセスを呼び出すITU標準に従って、システム内で仮想及び標準連結プロセスを実行するために構成される。VCTモジュールは、SONET/SDH論理ポートを介してパケットエンジンでパケット・データを送信、受信又は交換するために構成されるパケットエンジン・インターフェースを含む。更に、VCTモジュールは、そこに内部SONET/SDH交差接続を有して地図化されたデータを有するSONET/SDHトラフィックを送信、受信又は交換するために構成される交差接続インターフェースを含む。システムVCTは、そこに内部SMT-16インターフェースを介して内部SONET/SDH交差接続を有して地図化されたデータを有するSONET/SDHトラフィックを交換(送信)するために構成され得る。
ハードウェアシステム
図7を参照して、本発明に従って構成される受信チャンネル用のハードウェアシステムの構成図を例示する。
図7を参照して、LCAS構成の受信チャンネルの構成を例示する。運用において、データ202は、データメンバを配列するシステム200内の配列器204により受信される。別々のプロセスで、連鎖器206はMFI情報に従ってVCGのメンバの連鎖を再整理する。これはすべて、連鎖器と同じデータを受信し、連鎖解除プロセスを制御するLCAS制御パケット処理208により制御される。そして、出力はバッファ(緩衝器)210に送られ、そして多重装置(MUX)212に送られる。また、多重装置への受信はモジュール214からの非・NCAT伝送用のパケット経路オーバーヘッド(POH)処理からの出力である。
本発明によれば、LCAS構成のハードウェアとソフトウェアは最適効率を可能にする新しいやり方に分割される。LCASは、ソフトウェアにおいて主にITU標準内で定義される。しかしながら、実際上、応用におけるソフトウェアの排他的利用は遅すぎることが見出された。ハードウェアとソフトウェアのより良い組み合わせが良好な結果を提供することが発見された。一般的に、制御経路に関係するデータはソフトウェアにより制御される。ハードウェアは、データ経路伝送内のような、必要時のみ用いられる。本発明によれば、オーバーヘッドデータの全ての機能は実質的にソフトウェアにより生成される。ハードウェアは、変化が同時に起きることを確認する。プロセスは、基本的にソフトウェア内の全の非・タイミング重要ステップを並べ、そこでハードウェアは制御経路及びデータ経路の同期を提供する。これにより、フックとハードウェアはデータを入れて、データを出すためのソフトウェア用に構成される。
制御経路を単独で考える場合、制御経路の制御は排他的にソフトウェアの領域である。制御パケットに挿入することに対して、ハードウェア・フックはソフトウェアが制御パケットを挿入することを可能にする。抽出では、ハードウェア・フックはソフトウェアがデータストリーム内の除け者制御パケットを読み取ることを可能にする。本質的に、ソフトウェアは変化が起きるべき時に定義する、そしてハードウェアはいつ変化が起きそして変化させることができるかを決定する。これにより、ハードウェアは共時性を提供する。
制御経路及びデータ経路を考えると、構成の受信側では、ソフトウェアは、データ経路サイズ、メンバ数、がLCAS制御パケット内の受信済みオーバーヘッドに続くようにハードウェアを構成する。伝送側では、制御とデータ経路を考えると、ソフトウェアはLCAS制御パケット内のデータ経路サイズと伝送オーバーヘッドをまず変更するためにハードウェアを指揮する。これら2つの機能は、ソフトウェア及びハードウェア分離ゆえ、ハードウェアにより同時に起きるようになされる。
内部の資源同期化を考えると、異なる仮想連結グループは異なるサイズを有する。従って、いくつかのバッファが異なるグループサイズにサイズ別に分けられる、そしてソフトウェアはバッファサイズを設定するためにハードウェアを制御する。同様に、資源配分はこのソフトウェア及びハードウェア分離を用いることにより実行できる、ここでソフトウェアは資源配分を定義し、そしてハードウェアはそれに応じて応答する。バッファ交換同期において、ソフトウェアは特別なVCグループによって用いられるバッファを変更するためにハードウェアを指揮する。ハードウェアは正確に適切な時間で変更を実行する。
当該技術者は、ソフトウェアをメモリの外部又は内部にあるようにでき、又はCPUの外部又は内部にあるようにできることを理解する。それは、同一ラインカード上で又は異なるラインカード上で実行されることができる。また、ソフトウェアは別々の又は類似の基盤に設けることができる。従って、本発明は、ソフトウェアがCPU上又は特別なチップ上又はチップセット上で内部的又は外部的に用いられるいかなる特別な構成にも限定されない。
図8から図12を参照して、本発明の第1の実施の形態の例に利用するハードウェアとソフトウェア分離を例示する図表のフロー図が例示される。図8から図12の構造及びシステムフロー図は、本発明によるシステム運用記述の助けのために例示される。本発明によれば、LCAS業務が、各自動運用を遂行するために構成されるハードウェアで操作の連鎖に分解される、そしてそこでソフトウェアは各業務用の適切な自動操作を発行することに責任がある。
図8を参照して、本発明に従って構成されるソース/シンクLCASシステムを例示する。そのシステムはソースの第一ドライバ、ソースのハードウェア制御304、シンクのハードウェア制御306及びシンクのソフトウェア・ドライバ308を含む。操作ステップは、逐次連鎖ステップ内で例示され、ここに記述される。
図9を参照して、運用において、NMSから新メンバ310が加えられるとき、プロセスはステップ312に進む、ここでシステムはIDLEである。これは、新メンバ310が加えられるときの運用状態である。ステップ314で、制御が設定・加算される、ここでは新メンバが加えられる、そして連鎖番号が1個増やされる、ここでは連鎖番号はN+1に等しい。ステップ316で、LCAS制御が送られる。ステップ318で、タイマが設定される。ステップ320で、加算連鎖が初期化される、そして制御がそれぞれライン連鎖経路326及び326を介して送られる。ステップ328で、検査シーケンス及び検査制御操作が実行される。ステップ330で、制御がNORMに設定され、そして連鎖数はNに設定される。ステップ332で、制御は連鎖の終了(EOS)に設定される、そして連鎖番号はN+1に等しい。ステップ334で、LCAS制御を送るための操作が初期化されるそしてステップ336で、ペイロードが送られる。ステップ338で、ペイロードが標準化され、そしてハードウェア構成要素304に送られる。ハードウェアシステムでは、制御ワード発生器/抽出器はペイロードを送信するための用意のペイロード情報を受信する。ステップ340で、ペイロード連鎖器はペイロードの連鎖、パケット342を確立する。制御ワード発生器/抽出器は、ソースからの加算数連鎖で、発生し、そして制御ワードを、伝送用経路344を介してパケット342に送る。逆方向では、経路346、制御ワードが制御ワード発生器/抽出器324により抽出される。そしてパケットは経路343を介して送信される、そしてシンク306でパケット348として受信される。これらパケットは、経路352を介してシンクの制御ワードが制御ワード発生器/抽出器350によって受信される。パケットが経路343を介してソースハードウェアに送り返される場合、制御ワード発生器/抽出器は制御ワードを生成し、それを経路354を介してパケットに添付する。そして、制御ワード発生器/抽出器は、ソースハードウェアから受信される制御ワードをソフトウェア・ドライバ308に送る。最初に、制御ワード発生器/抽出器350からの制御ワードは、ドライバ308に、355でメンバ資格追加が合格であるかを決定するために経路356のOK355に送る。検査シーケンスと検査制御操作が、ステップ366で実行される。そして、シーケンスはステップ364に進む、ここでRS―ACKフリップを初期化する。一度これら操作が終わると、手順は受信済みペイロードを表示するステップ362に進む。メンバ311を加算する場合、IDLEステップ372は初期化され、そして操作はドライバ302に逆向きに働く。IDLEステップ372の後、検査シーケンスと検査制御操作がステップ370で初期化される、そして送信LCAS制御は続いてステップ368で初期化され、操作は逆に働く。
図10を参照して、LCAS加算業務連鎖のより詳しい記述が例示される。運用において、プロセス・ドライバ302及び308は、実質的に従来型のハードウェア基盤の状態機械を置き換えるオーバーヘッドで動作する。本発明によれば、構成検査は、ソースとシンクの双方で共通にできる。更に、命令解釈とデバイスプログラミングは双方に対して同様に共通である。LCAS状態機械は合計処理時間の20%以下であり、追加の重要な処理のリアルタイム要件を必要としない。安定状態では、正常状態の間のプロセス又は負荷はない、更に、プロセッサは構成変更の間のみに必要とされる。メンバの追加又は削除では、ソースとシンクの双方で著しく操作を減らす。メンバを追加する場合、それに応答するために2つの割り込みしか必要としない。メンバを削除する場合、1つの割り込みしか要求されない。最終解析では、メンバあたり1ミリ秒未満の合計処理時間が要求される。これは、LCAS標準により定義される最小の総合LCASプロトコル完了時間である。結果として、プロセス実行時間はLCASプロトコル実行への多大な敬意である。引き続き図10を参照して、LCAS加算業務連鎖の例を説明するフロー図を例示する。ステップ380で、ソースは、新メンバ追加のために制御パケット(ADD)を設定送出することにより業務を初期化する。ステップ382で、シンクは制御の変化を検出し、そしてメンバ状態変更(MST)を送出する、そしてステップ384で、新メンバ上で制御=EOS設定によりメンバを追加する、そして、もし全て存在すれば、前の最後のメンバ上で制御=NORMとする。ステップ386で、シンクは制御の変化を検出し、そしてRS−ACK又はRSシーケンス受領通知をトグル切換え(トグル)する。
図11を参照して、新メンバプロセスの追加に関連する通路を、図9を参照してさらに詳細に例示する。運用において、通路1はIDLEステップ312で始まり経路388を介して制御ワード発生器/抽出器324、ここでパケット342に対する制御ワードを発生する、に進む、そしてシンク306内にパケット348を配達するシンクハードウェア306に送信する。そして、制御ワード抽出器は制御ワードを抽出し、新メンバを追加する、そしてまた経路388を介してIDLEステップ372に進む。
図12を参照して、ステップ2は、シンクが制御内の変更を検出し、MST=OK命令を送る操作を例示する。これは経路390を介して行われる。ドライバ308の加算数382は、経路390を介して命令を生成されたデータパケット348に制御ワードを送る制御ワード発生器/抽出器350に送る。これらのパケットは、パケット342を与えるために経路390を介して送信される。そして、制御ワード抽出器324はMST=OK命令を抽出し、そして加算シーケンスを完了するためにそれを加算操作モジュール320に送信する。
図13を参照して、ステップ3では、加算シーケンスモジュール320から、プロセスはステップ328に進み、そして経路392を介して進む、ここで、いかなるものでも存在すれば、ソースはMST変更を検出し、そして新メンバ上で制御=EOS及び以前のメンバ上で制御=NORMに設定することにより数を加算する。更に経路392を下って、プロセスは、パケット342生成のために同時に制御ワード発生器/抽出器324とペイロード連鎖器340に進む、引き続き経路392を介してシンクハードウェア306に進む。そして、制御ワード発生器/抽出器が制御ワード、制御=EOS、を抽出する、そしてプロセスはステップ355に進む、ここで新メンバがOKとされる。
図14を参照して、最終ステップでは、シンクが制御内の変更を検知し、RS-ACK又は受領通知命令のON/OFFを繰り返す、このプロセスは、下り経路394を進む、検査シーケンス及び検査制御で始まり、下り経路394を制御ワード発生器/抽出器350に進み、制御ワード、受領通知命令を抽出し、それをデータパケット348として経路394を介して送る。これらのデータパケットは、ソースハードウェア304内でデータパケット342として受信される、そしてプロセスは、受領通知命令を抽出するためにソースハードウェアの制御ワード発生器/抽出器に進む、そしてプロセスはNORMプロセスに戻る。
1.1 アトミック操作
1.2 逆方向制御情報
本発明によれば、アトミック操作は本来、システムを大いに最適化するソフトウェア命令に応答するハードウェアと共に、ソフトウェアで実行される。逆方向制御情報に関して、図8を参照して、シンク303操作は、LCAS運用のシンク又は受信側に置かれ、これら操作を統括する。LCAS接続のシンクで、オリオンは、メンバ状態(MST)及び再シーケンス通知(RS-ACK)などの逆方向制御情報の能力を有する。この情報はソフトウェアによって構成される。更に、この情報がソフトウェアによって変更されるとき、変更は、仮想連結グループ(VCG)の全メンバに同時に起きる。変更は、また新LCAS制御パケットの始めに同期される。
LCAS接続のソースで、ソースはMST及びRS-ACKのような逆方向制御情報を到来LCAS制御パケットから抽出する。また、ソースはこのデータの有効性を確認するためにCRC検査を実行する。この情報が変わる場合、ソースプロセッサはソフトウェアに割り込み、ソフトウェアが受信された新しい値を読み取ることを可能にする。
1.3 順方向制御情報
順方向制御情報に関して、LCAS接続のソースで、ソースプロセッサは連鎖番号(SQ)及び制御ワード(CTRL)のような順方向制御情報を挿入する。この情報はソフトウェアによって構成される。ソフトウェアがこの情報を変更する場合、新しい制御データが次のLCAS制御パケットに書き込まれなければならない。更に、データ経路変更は制御経路変更に同期されなければならない。新SQ及びCTRL値によって定義される新データ経路構成は、新SQ及びCTRL値が書き込まれる制御パケットに続く制御パケットの始めで正確に生じなければならない。
LCAS接続のシンクで、シンクプロセッサーはSQ及びCTRLのような順方向制御情報を到来LCAS制御パケットから抽出する。また、シンクプロセッサーはこのデータの有効性を確認するためにCRC検査を実行する。新SQ又はCTRL値が到達する場合、シンクプロセッサーはソフトウェアに割り込み、新しい受信済み値を提示する。チャンネルが「受け入れ」モードにソフトウェアによって構成されていれば、それからシンクプロセッサーは、実際データの抽出を制御するためにそのチャンネルから新SQ又はCTRL情報を用いる。データ経路構成変更は、それが新SQ及びCTRL値が書き込まれる制御パケットに続く制御パケットの始めで正確に位置づけられるように同期される。
図9から図14を参照して、ハードウェアとソフトウェア分離を例示する例が示される。
ハードウェア/ソフトウェア区分仕様
2 概要
この文書はLCAS/VCAT登録文書で提供される登録モデルを基礎とした様々なLCASシナリオに対して要求されるハードウェアとソフトウェア対話を記述する。LCASの非対称特性を反映して、ソフトウェアが遂行する必要がある操作がそれぞれシンク(シンク)及びソース(ソース)側で別々に議論される。
以下のシナリオがこの文章に含まれる。
・ シンク側
o VCG作成
o VCG削除
o VCGへ新メンバ供給
o VCGからメンバ供給解除
o VCG帯域幅増加
o VCG帯域幅減少
o 故障によるVCG帯域幅減少
o 逆方向制御情報抽出構成変更
・ ソース側
o VCG作成
o VCG削除
o VCGへ新メンバ供給
o VCGからメンバ供給解除
o VCG帯域幅増加
o VCG帯域幅減少
o 故障によるVCG帯域幅減少
o 逆方向制御情報挿入構成変更
この文章は、エラーの詳細な解析を含まない、そして業務に関する構成中にエラーはないと仮定する。ソフトウェアにLCASプロトコル機能を実装するためにオリオンによって提供されるLCAS構成及びステータス・インターフェースをいかに用いるかの理解に役立てることが意図される。
3 シンク側シナリオ
3.1 VCG作成
NMSは、それが新シンクVCGを作りたい場合次の操作をシンクノードに指定する。
・ このシンクVCGに用いる受信LPID
・ VCGのチャンネル形式
・ 受信チャンネルの識別、もしあれば、それはこのシンクVCGのメンバとして最初に供給される
・ 各初期メンバチャンネルに対して、もしあれば、LCAS逆方向制御情報をそれから抽出するかどうか、そしてもしそうなら、ローカルソースVCGの送信LPIDにそれが適合する。異なるメンバチャンネルが、異なるローカルソースVCGsに対して逆方向制御情報を運ぶことは可能である。また、逆方向制御情報は複数又は全ての職メンバチャンネルで抽出されなくすることは可能である。
次の仮定がなされる。
・ 受信ポートLPIDは使われない。(つまり、この受信LPID用のRX_SK_SW_CFG_ENビットを設定)そしてそれらは遠隔ソースノードから始まる
・ 初期メンバチャンネル、もしそうなら、シンクVCGと同じ形式である
・ 初期メンバチャンネル、もしそうなら、使用されない(つまり、それらRX_CH_SW_CFG_ENビットを設定)及びそれらは遠隔シンクVCGから始まる
ソフトウェアはシンクVCGを作るために次の構成ステップを実行する。
1. シンクVCGに割り当てる受信LPID用にRX_SK_VCAT_ENとRX_SK_LCAS_ENビットを設定
2. 全ての可能な連鎖値に対してシンクVCGのTX_SK_LCAS_INS_MSTフィールドをFAILに設定する(つまり、このフィールドを全てのものに設定)
3. そのSK_SW_CFG_ENビットをクリアすることにより、リセットVCGからシンクVCGを取り出す。全ての受信チャンネルが、シンクVCGに最初に供給されるべきと指定されれば、残りの構成ステップはこれら受信チャンネルを存在するシンクVCGに供給するときに実行されるそれらと同じである。
3.2 VCGの削除
NMSは、それがシンクVCGを削除したい場合シンクノードに次の操作を指定する。
・ このシンクVCGに割り当てる受信LPID
我々は、シンクVCGが削除される前に、そのメンバの全ては供給解除されると仮定する。この場合、ソフトウェアは次の操作を実行する必要がある。
1. そのSK_SW_CFG_ENビットを設定することにより受信LPIDをリセットに入れる。
3.3 新メンバチャンネルをVCGに供給
NMSは、それが新メンバチャンネルを存在するシンクVCGに供給したい場合、シンクノードに次の構成パラメータを指定する。
・ このシンクVCGに割り当てる受信LPID
・ このシンク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_LPDDフィールドをシンクVCGの割り当てる受信LPIDに設定する
・ そのRX_CH_VCAT_ACCEPTビットをクリアする
・ もしチャンネルが、LCAS逆方向制御情報を抽出するために使われていたなら、そのRX_CH_LCAS_REV_EXT_SO_LPIDフィールドを提供される値に設定する、そしてRX_CH_LCAS_REV_EXT_ENビットを設定
3. それらのRX_CH_SW_CFG_ENビットをクリアすることにより新メンバチャンネルをリセットから取り出す。握手の前にそれらの1つもそれらのペイロードを持っていないので、これに対する指示は重要ではない。
4. 含まれる新メンバチャンネルでシンクVCGに差分遅延補償がなされるまで待機する。これは全(新規のものだけではない)メンバチャンネルのRX_CH_VCAT_RD_STATEビットの観察を介して決定されることができる。全メンバチャンネルがこのビットセットを持つとき、差分遅延補償がなされる。ソフトウェアはこれらのビットを検索でき、又はこの目的のためにそれらの合同割り込みを用いることができる。
5. 差分遅延補償に従う、1マルチ・フレームを待つ(シンクVCGが低又は高位の場合に依存する期間)又は少なくとも1LCAS制御パケットで処理されたチャンネルの全てが確実であるより長く。
6. 全新メンバチャンネルのRX_CH_LCAS_CTRL、RX_CH_VCAT_SQとRX_CH_LCAS_CRC_ERRフィールドを読み出す
NMSは、シンク側の前にソース側で新メンバチャンネルの供給を実行するので、一度差分遅延補償がシンク側で達成されれば、シンク側は新メンバチャンネルの全てでIDLE制御ワードを見る。これらのチャンネルの連鎖番号はシンクVCGによって使用される現在の最大連鎖より大きい値で設定されるべきである。
しかしながら、NMS又はソース側の正しい構成又は行動は保証されていない、それゆえソフトウェアは、IDLEが制御ワードとして受信され、受信連鎖番号がシンクVCGの現在の最大より大きいかを検査すべきである。もし、何らかのエラーが検出されれば、全メンバチャンネルをリセットに入れて全ての供給業務は取り消される、そしてNMSに障害が通知される。
RX_CH_LCAS_CRC_ERRは、制御ワード及び連鎖番号フィールド読み出しが有効であることを確認するために読み出されるべきである。CRCエラーがなく、制御ワード及び連鎖番号は期待通りと仮定する。
7. 1をそれらに書き込むことにより全新メンバチャンネルのRX_CH_VCAT_SQ_CHGビットをクリアする
RX_CH_LCAS_CTRL_SQフィールドのリセット値がゼロであるのでこのステップは必要である。オリオンが新メンバチャンネルで最初の制御パケットを処理したとき、制御パケット内の連鎖番号はゼロでない異なるものを有し、設定すべきRX_CH_VCAT_SQ_CHGビットを生じさせる。
この時点で、供給業務はシンクVCGの観点から成功裏に完了する、そしてNMSに成功を通知することができる。
3.4 VCGからの供給解除メンバチャンネル
NMSは、それが存在するシンクVCGからメンバチャンネルを供給解除したい場合、シンクノードに次の構成パラメータを指定する。
・ このシンクVCGに割り当てる受信LPID
・ 供給解除されるべき受信チャンネルの識別
次の仮定がなされる。
・ メンバチャンネルはすでにシンクVCGの供給済みメンバであるが、現在使われていない(つまり、それらのRX_CH_VCAT_ACCEPTビットが設定されていない制御ワードとしてIDLEを受信)
ソフトウェアは新メンバチャンネルを供給解除するため次の操作を実行する。
1. RX_CH_SW_CFG_ENビットを設定することにより新メンバチャンネルをリセットに入れる。
この時点で、供給解除業務はシンクVCGの観点から成功裏に完了する、そしてNMSに成功を通知することができる。
3.5 VCGの帯域幅増加
遠隔ソースは複数メンバチャンネルを追加できると仮定する。したがって、シンク側は、それがそれらのいずれかに対してMST=OKステータスを送る前に加算されるべき全てのメンバチャンネルでADD制御ワードを見るまで待機する。シンク側のこの方法は、加算された全メンバチャンネルでNORM/EOSを見た後に、RS ACKを一度だけトグル切換えする。
遠隔ソースが一度に1メンバのみを追加する能力があるとすれば、そのようなソースで複数メンバの加算は、シンクノード展望から多くの別個の業務に分解されるべきである。これは複数メンバの加算の単なる特別な場合であるので、これはオリオン基盤のシンクにいかなる差異も作らない。
NMSは、シンクノードに次の構成パラメータを指定する。
それがシンクVCGに新メンバを加えたい時。
・ ローカルシンクVCGに割り当てる受信LPED
・ 加えるべきメンバチャンネルの識別
次の仮定がなされる。
・ メンバチャンネルはすでにシンクVCGの供給済みメンバであるが、ペイロード運搬用には現在使われていない(つまり、それらのRX_CH_VCAT_ACCEPTビットが設定されていない制御ワードとしてIDLEを受信)
ソフトウェアはメンバチャンネルを追加するために次の操作を実行する。
1. 加算すべき各メンバチャンネルはADD制御ワードを受信するか又はタイムアウトが起きるまで待機。
遠隔ソースノードはメンバチャンネルの全てを同時に加えると仮定したので、ソフトウェアは、それらのいずれかにMST=OKを送る前に全てのメンバチャンネルでADDを受信するために待機する。
ソフトウェアは、全チャンネルが加えられるメンバチャンネルのRX_CH_LCAS_CTRLフィールドの観察を介してADD制御を受信するときを判断することができる。ソフトウェアは、それらのフィールドを検索し、この目的用にそれらの合同割り込みを利用できる。
ADD制御ワードが加算すべき全メンバチャンネルで見られる前にタイムアウトが起きれば、ソフトウェアは、業務を取り消し、NMSへ障害を報告する。
受信済み制御ワードが加算すべきメンバチャンネルで変わった(検索(ポーリング)又はRX_CH_LCAS_CTRL_CHG割り込みのいずれかを介して)とソフトウェアが判断するとき、それは新しい値がADDであることを検査する。また、ソフトウェアは、ソースノードによりこれらメンバチャンネルに割り当てられた連鎖番号の正しさが確証されるようにその受信済み連鎖番号を読み取る。それらは、現在ローカルシンクVCGで利用される最大の連鎖番号より大きい1つから始まる連続連鎖(シーケンス)を形成する。のプロトコル・エラーは業務の取り消しをもたらし、NMSに障害を報告する。
2. 加えるべき各メンバチャンネルに対して、そのRX_CH_VCAT_ACCEPTビットを設定する
3. シンクVCGのTX_SK_LCAS_INS_MSTフィールドに加えるべきメンバチャンネルに応じた連鎖番号用にシャドウMSTビットをOKに設定する。
他のメンバ用のシャドウMSTビットは能動的なものと同じく残る。
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を見なければ、業務は取り消される必要がある。そのようにするために、ソフトウェアは、加えられるべきメンバチャンネルの全てのRX_CH_VCAT_ACCEPTビットをクリアする。
最も大きい連鎖番号を有する1つを除いて、新受信メンバチャンネルは現在NORMを受信している。最も大きい連鎖番号を有する1つは現在EOSを受信している。それらの連鎖番号は以前のように残る。同様にこれは検査されるべきである。
また、ソフトウェアは前に最も大きい連鎖番号を有するメンバ受信チャンネルのRX_CH_LCAS_CTRLフィールドを検査する。
前の最後の番号以外で、同様に存在する受信チャンネル(もしあれば)に対して連鎖番号と制御ワードが変化しないと仮定する。
業務中に何らかのプロトコル・エラーを検出すれば、VCGはリセットされる必要がある、そしてNMSに障害が通知される。
7. ローカルシンクVCG用のTX_SK_LCAS_INS_RS_ACKビットのシャドウ・コピーをトグル切換えする。
8. シンクVCGのTX_SK_LCAS_REV_SELビットをトグル切換えする。
9. TX_SK_LCAS_REV_SEL_CHG_DONEビットが設定されるまで待機する。
この時点で、業務はシンクVCGの観点から成功裏に完了する、そしてNMSに通知することができる。
3.6 VCGの帯域幅減少
シンク側は、自律的にNMSからの要請を得ずにソース側(つまり、NORM/EOSからIDLEに変更する受信済み制御ワード)から要求を取り除くために応答する。ソース側は、それがNMSから減少帯域幅要求を得るとき、取り除き要求を送る。ソース側がシンクから適切な通知を得るとき(つまり、取り除いたメンバのMST=FAILを受信し、そしてRS_ACKトグル切換えを見る)、そしてそれはNMSに報告し、そしてもし望めばメンバの供給解除のためにシンク側に頼むことができる。
明瞭にこの文書に記述されないが、選択肢は、たとえチャンネルがNORM/EOS状態(つまり、ソース側が取り除き要求を開始していない)にあってもメンバチャンネルを取り除くためにNMSがシンク側に頼めることである。この場合、あたかもソース側からそのチャネルのIDLEを受け取ったかのようにシンク側は作用するが、それはRS_ACK信号をソース側に送らない。そして、同様に望めば、チャンネルを供給解除できる。
遠隔ソースは、同時に複数チャンネルを取り除こうと試みる、つまり、複数チャンネルの制御ワードは同じマルチ・フレームのIDLEに変化し得る。シンク側ソフトウェアはそれを取り扱うことができる。
ソフトウェアがシンクVCGのメンバチャンネルでRX_CH_LCAS_CTRL_CHG割り込みを受信するとき、それは次の操作を実行する。
1. 約2Kコアクロックを待ち、そしてVCGの全メンバのRX_CHJLCAS_CTRLとRX_CH_VCAT-SQ1数を読み取る。
これは、ソフトウェアが複数のメンバチャンネルがIDLE制御ワードを受信しているかどうかを判断することを可能にする。また、それはプロトコル・エラーに対する検査を可能にする。
取り除かれるチャンネルの連鎖番号に依存して、残留メンバ受信チャンネルの連鎖番号及び/又は制御ワードは変化し得る。例えば、取り除かれるチャンネルメンバが最も高い連鎖番号を有していれば、次に高い連鎖番号を有するメンバ受信チャンネルの制御ワードは、EOSに変わる。
2. IDLE制御ワードを受信する各メンバチャンネルに対して、メンバの前の(つまり、それがIDLEを受信し始める前)連鎖番号に対応するシンクVCGのTX_SK_LCAS_INS_MSTフィールド内のビットをFAILに設定する。
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のTX_SK_LCAS_REV_SELビットをトグル切換えする。
7. TX_SK_LCAS_REV_SEL_CHG_DONEビットを設定するまで待機。
8. 取り除くメンバチャンネルのRX_CH_VCAT_ACCEPTビットをクリアする。
この時点で、業務はシンクVCGの観点から成功裏に完了する、そしてNMSに通知することができる。
3.6 故障によるVCGの帯域幅減少
シンク側ソフトウェアは使用中のメンバチャンネルで検出される障害に応答する必要がある(つまり、NORM7EOS状態内)。チャンネルがプロテクト(保護付き)であるかどうかに依存してメンバチャンネルに影響する故障(例えば、LOS、LOF、LOP、OOM)の扱いに考えるべき2つの場合がある。
もしチャンネルがプロテクトでなければ、ソフトウェアは次の操作を実行する。
1. 障害チャンネルのRX_CH_VCAT_ACCEPTビットをクリアする
2. シンクVCGのSK_LCAS_INS_MSTフィールド内の障害メンバに対応するシャドウMSTビットをFAILに設定する。
3. シンクVCGのTX_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フィールド内のメンバチャンネルに対応するシャドウMSTビットをOKに設定する。
5. シンクVCGのSK_LCAS_REV_SELビットをトグル切換えする。
6. TX_SK_LCAS_REV_SEL_CHG_DONEビットを設定するまで待機する。
3.8 逆方向制御抽出構成変更
シンクVCGのメンバチャンネルの逆方向制御抽出構成を変えたいとき、NMSはシンクノードに次の構成パラメータを指定する
・ 逆方向制御抽出構成を変更する必要のあるチャンネルの識別
・ 各そのようなチャンネルに対して、LCAS逆方向制御情報がそれから抽出されたかどうか、そしてもしそうなら、ローカルソースの送信LPIDにそれが適用する。
次の仮定がなされる。
・ チャンネルは、すでにシンクVSGsを可能にするLCASの供給メンバである
指定メンバチャンネルの逆方向制御抽出構成を変更するために次の操作を実行する。
1. 各新メンバチャンネルを次のように構成する。
・ もしチャンネルをLCAS逆方向制御情報を抽出するために利用するならば、そのRX_CH_LCAS_REV_EXT_SO_LPIDフィールドを提供される値に設定する、そしてそのRX_CH_LCAS_REV_EXT_ENビットを設定する。それ以外、そのRX_CH_LCAS_REV_EXT_ENビットをクリアする。
4 ソース側シナリオ
ソースノードソフトウェア及びメンバへの送信連鎖番号の非NMS管理手段割り当ては、送信VCGのチャンネルを送信すると仮定する。
4.1 VCG作成
NMSは、新規ソースVCGを作りたい時、ソースノードに次の操作を指定する。
・ このソースVCGに用いられる送信LPID
・ VCGのチャンネル形式
・ もしあれば、このソースVCGのメンバとして最初に供給される送信チャンネルの識別
・ もしあれば、初期メンバチャンネルに対して、LCAS逆方向制御情報がそれに挿入されるかどうか、そしてもしそうであれば、ローカルシンクVCGの受信LPIDにそれを適用する。異なるメンバチャンネルが、異なるローカルシンクVCGs用の逆方向制御情報を運ぶことが可能である。逆方向制御情報が初期メンバチャンネルのいくつかに又は全てに挿入されないこともまた可能である。
次の仮定がなされる。
・ 送信ポートLPEDは使用されていない(つまり、リセットにない非送信チャンネルはこのLPIDへのそのTX_CH_LPIDフィールド・セットを有する)
・ もしあれば、初期メンバチャンネルはソースVCGと同じ形式である
・ もしあれば、初期メンバチャンネルは利用されていない(つまり、それらTX_CH_SW_CFG_ENビットが設定されている)、そしてそれらは遠隔シンクノードに一定の経路で送られる
ソフトウェアは、ソースVCG作成のために次の構成ステップを実行する。
1. ソースVCGに割り当てられる送信LPID用のTX_SO_VCAT_EN及びTX_SO_LCAS_ENビットを設定する
もし、どの送信チャンネルもソースVCGに最初に供給されるために指定されるならば、残りの構成ステップは、これら受信チャンネルを存在するソースVCGに供給するとき実行されるそれらと同じである。
4.2 VCG削除
我々は、ソースVCGが削除される前に、そのメンバの全てが供給解除されると仮定する。ソースVCGは実際的にその点でハードウェア展望から削除される。
4.3 VCGに入る供給新メンバチャンネル
NMSは、存在するソースVCGに新メンバチャンネルを供給したい時、次の構成パラメータをソースノードに指定する。
・ このソースVCGに割り当てられる送信LPID
・ このソースVCGの新メンバとして供給されるべき送信チャンネルの識別
・ 各新メンバチャンネルに対して、LCAS逆方向制御情報がそれに挿入されるかどうか、そしてもしそうであれば、ローカルシンクVCGの受信LPIDにそれを適用する。異なるメンバチャンネルが、異なるローカルシンクVCGs用の逆方向制御情報を運ぶことが可能である。逆方向制御情報が新メンバチャンネルのいくつかに又は全てに挿入されないこともまた可能である。
次の仮定がなされる。
・ 送信LPEDのTX_SO_VCAT_ENとTX_SO_LCAS_ENビットはすでに設定されている
・ 新メンバチャンネルはソースVCGと同じ形式である
・ 新メンバチャンネルは利用されていない(つまり、それらのTX_CH_SW_CFG_ENビットが設定されている)、そしてそれらは遠隔シンクノードに一定の経路で送られる
ソフトウェアは、新メンバチャンネルを供給するために次の操作を実行する。
1. 次のように各新メンバチャンネルを構成する
・ そのTX_CH_LPIDフィールドをソースVCGに割り当てられる伝送LPIDに設定する
・ もしチャンネルがLCAS逆方向制御情報を挿入するために用いられるなら、そのとき、そのTX_CH_LCAS_REV_INS_SK_LPIDフィールドを用意される値に設定し、そのTX_CH_LCAS_REV_INS_ENビットを設定する
2. それらTX_CH_SW_CFG_ENビットをクリアすることにより、リセットから新メンバチャンネルを外す。握手の前に加えられるそれらのペイロードをそれらのどれも有していないので、これのための順序は重要ではない。
尚、TX_CH_LCAS_CTRLのリセット値がIDLEであるので、新メンバチャンネルのTX_CH_LCAS_CTRLフィールドのシャドウ・コピーをIDLEに設定し、ソースVCGのTX_SO_LCAS_FWD_SELビットをトグル切換えする必要はない。
4.4 VCGから供給解除メンバチャンネル
NMSは、存在するソースVCGからメンバチャンネルを供給解除したい時、次の構成パラメータをソースノードに指定する。
・ このソースVCGに割り当てられる送信LPID
・ 供給解除されるべき送信チャンネルの識別
次の仮定がなされる。
・ メンバチャンネルはすでにソースVCGのメンバに供給されているが、それらは現在ペイロードや逆方向制御情報を送信するために使われていない(つまり、それらTX_CH_LCAS_CTRLフィールドの能動的コピーがIDLEに設定され、それらTX_CH_LCAS_REV_INS_ENビットが設定されていない)
ソフトウェアは、新メンバチャンネルを供給解除するために次の操作を実行する。
1. それらのTX_CH_SW_CFG_ENビットを設定することにより、新メンバチャンネルをリセットに入れる。
この時点で、供給解除業務は、ソースVCGの観点から成功裏に完了する、そしてNMSは成功が通知される。
4.5 VCGの増加帯域幅
遠隔シンクが同時に複数メンバを加算できると仮定する。これにより、我々は、それが加えられる全のメンバチャネルの加算命令であると認めた後、遠隔シンクはRS_ACKを一度トグル切換えすることを意味する。複数メンバを加えるとき、ソースソフトウェアは、加えられる全のメンバチャンネルの制御ワードを同じマルチ・フレームのADDに設定する。
もし遠隔シンクが一度に1メンバのみを加える能力があれば、ソース側ソフトウェアは複数メンバを加える必要がある業務を複数の単一メンバ加算副・業務に分解できる。
一般的に、遠隔シンクが一度に複数のメンバを加算できるかどうかを知ることは可能ではない。シンクは一緒にそれらを認めるが遠隔シンクはそうはしないだろうことを考慮すると、ソースがADD制御ワードを複数のメンバに同時に送ることは可能である。それで、ソース側ソフトウェアは複数RS_ACKトグル切換えの受信を扱うことができるべきである。容易さのために、この文章内ではそのような場合を議論しない。
NMSは、それがソースVCGに新しいメンバを加えたい時、次の構成パラメータをソースノードへ指定する。
・ ローカルシンクVCGに割り当てられた受信LPID
・ 加えるべきメンバチャンネルの識別
次の仮定がなされる。
・ メンバチャンネルはすでにソースVCGのメンバを供給したが、それらは現在ペイロード(つまり、制御ワードとしてIDLEを送る)を運ぶために用いられていない
ソフトウェアはメンバチャンネルを加えるために次の操作を実行する。
1. 加えるべき全のメンバチャンネルのTX_CH_LCAS_CTRLフィールドをADDに設定する
2. ソースVCGに使用される現在の最も大きい連鎖番号(又はゼロ、もしこれがメンバを加える初回の番号であれば)より1つ大きいから始まる、加えるべきメンバに割り当てる連鎖番号
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ステータスを受信又はタイムアウトが起きるまで待機する
RS_ACKをトグル切換えする前に加える全てのメンバのために遠隔シンクがMST=OKを送ると我々は仮定したので、ソフトウェアは、それが全てのメンバチャンネルで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用の受信されたRS_ACK値がトグル切換えする、又はRS_ACKタイマが切れるまで待機する。
この時点で、増加帯域幅業務はソースVCGの観点から成功裏に完了し、そしてNMSは成功を知らされることが出きる。
4.6 VCGの減少帯域幅
遠隔シンクが複数メンバを同時に取り除くことができると仮定する。これにより、我々は、それが取り除かれる全てのメンバチャンネルの除去命令を認めた後に、遠隔シンクがRS_ACKを一度トグル切換えすることを意味する。複数のメンバを取り除くとき、ソースソフトウェアは、取り除く全てのメンバチャンネルの制御ワードを同じマルチ・フレーム内でIDLEに設定する。
もし、遠隔シンクが一度に1メンバチャンネルのみを取り除くことができるならば、ソース側ソフトウェアは、複数メンバを取り除く必要がある業務を複数の単一メンバ除去副・業務に分解できる。
一般的に、遠隔シンクが一度に複数のメンバを除去できるかどうかを知ることは可能ではない。シンクは一緒にそれらを認めるが遠隔シンクはそうはしないだろうことを考慮すると、ソースがIDLE制御ワードを複数のメンバに同時に送ることは可能である。それで、ソース側ソフトウェアは複数RS_ACKトグル切換えの受信を扱うことができるべきである。容易さのために、この文章内ではそのような場合を議論しない。
NMSは、ソースVCGに新メンバを加えたいとき、ソースノードに次の構成パラメータを指定する。
・ ローカルシンクVCGに割り当てる受信LPID
・ 取り除かれるメンバチャンネルの識別
次の仮定がなされる。
・ メンバチャンネルはすでに供給され、ペイロードはソースVCGのメンバを運んでいる(つまり、制御ワードとしてNORM/EOSを送っている)
ソフトウェアは、メンバチャンネルを加えるために次の操作を実行する。
1. 取り除かれる全てのメンバチャンネルのTX_CH_LCAS_CTRLフィールドをIDLEに設定する
2. それらがゼロから始まる連続断片を維持するように残りのメンバのいくつか又は全てに連鎖番号を再割り当てする必要はない。もしそうなら、そしてそのようなメンバの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ステータスを受信する又はタイムアウトが起きるまで待機する
RS_ACKをトグル切換えする前に取り除く全てのメンバのために遠隔シンクがMST=OKを送ると我々は仮定したので、ソフトウェアは、それが全てのメンバチャンネルでMST=FALLを見るまで待機する。
ソフトウェアは、いつ全チャンネルがソースVCGのRX_SO_LCAS_EXT_MSTフィールドの観察を介してMST=FALLを受信するかを判断できる。ソフトウェアは、このフィールドを検索でき、又は連合RX_SO_LCAS_EXT_MST_CHG割り込みを利用できる。加えられる与えられたチャンネル用のそのフィールド内で捜すべきビットは、除去が影響する前のそのチャンネルに割り当てられた連鎖番号に基づく。
ローカルVCG用の受信されたRS_ACK値がトグル切換えする、又はRS_ACKタイマが切れるまで待機する。
この時点で、減少帯域幅業務はソースVCGの観点から成功裏に完了し、そしてNMSは成功を知らされることが出きる。
4.7 故障によるVCGの減少帯域幅
使用中(つまり、NORM/EOS状態にある)の保護なしメンバチャンネルが失敗する時、シンク側は、MST=FAILステータスをソース側に送る。ソース側はこれを検出する時、それは次の操作を実行する。
1. 全ての失敗メンバチャンねるのTX_CH_LCAS_CTRLフィールドをDNUに設定する
2. もし、失敗したチャネルがソースVCGの最後のメンバでなかったら、失敗したチャンネルそのより高い連鎖番号を持った全てのメンバのTX_CH_VCAT_PL_SQ フィールドを1減らす。
もし、失敗したチャンネルがソースVCGの最後のメンバであれば、次に高い連鎖順を持つTX_CH_LCAS_CTRLフィールドをEOSに設定する。
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. もし、回復したチャンネルが最後のメンバでなければ、そのチャンネルでより高い連鎖番号を持った全てのメンバのTX_CH_VCAT_PL_SQフィールドを1増やす。
3. ソースVCGのTX_SO_VCAT_FWD_SELビットをトグル切換えする
4. ソースVCGのTX_SO_VCAT_FWD_CHG_DONEビットを設定するまで待機する
4.8 逆方向制御挿入構成変更
NMSは、それがソースVCGのメンバチャンネルの逆方向制御挿入構成を変更したい時、次の構成パラメータをソースノードに指定する。
・ その逆方向制御抽出構成が変更される必要があるチャンネルの識別
・ それぞれのその様なチャンネルに対して、LCAS逆方向制御情報をそれに挿入されるかどうか、そしてもしそうであれば、ローカルシンクVCGの逆方向LPBDにそれを適用する。
次の仮定がなされる。
・ チャンネルはすでにソースVCGsを可能とするLCASの供給メンバである
ソフトウェアは、指定されたメンバチャンネルのLCAS逆方向制御抽出構成を変更するために次の操作を実行する。
2. 次のように各新メンバを構成する。
・ もし、チャンネルが逆方向制御情報を挿入するために利用されるならば、そのとき、そのTX_CH_LCAS_REV_INS_SK_LPIDフィールドを提供する値に設定し、そしてそのTX_CH_LCAS_REV_INS_ENビットを設定する。それ以外は、そのTX_CH_LCAS_REV_INS_ENビットをクリアする。
配列
図15から図19を参照して、本発明に従って構成される受信チャンネル用のハードウェアシステムの図式図を例示する。これら実施の形態の例は、LCAS機能を例示し、本発明の様々な目新しい実施の形態の例及び機能を例示する受信チャンネルを例示する。これら機能は、本発明に付随するチャンネルの配列、連鎖解除及び他の機能に関連して以下に更に詳細に記述される。
図15を参照して、本発明によって構成される配列器を例示する。システム400は、受信チャンネル内の高位及び低位(HO/LO)、集合的にANAとして知られるマルチ・フレーム表示器(MFI)分析器を含む。ANAは、データストリームを書き込み管理手段405に送信し、複数の先入れ/先出し(ファースト・イン/ファースト・アウト:FIFO)メモリ記憶配列、FIFO-A(406)、FIFO−B(408)、FIFO−N(410)を有する。その様な構成は、当該技術者に良く知られている。本発明によれば、書き込み管理手段は各FIFO内のVCGの各メンバを受信し、データをマルチ・チャンネル透過412に書き込む。実施の形態の例では、書き込み管理手段は静的ランダム・アクセス・メモリ(SRAM)により構成される、そしてマルチ・チャンネル透過は動的ランダム・アクセス・メモリ(DRAM)により構成される。当該技術者によって知られている、しかしながら、異なる構成及び異なる形式のメモリ及び記憶構成要素を使用することができる。本発明によれば、読み出し管理手段414は、マルチ・チャンネル透過からメモリ記憶に読み出すために構成される。書き込み管理手段同様に、読み出し管理手段は先入れ/先出しA(416),B(418),...,N(420)で構成される。本発明によれば、仮想連結グループ(VCG)のメンバが全部そろい、マルチ・チャンネル透過412内で配列される時、読み出し管理手段はマルチ・チャンネル透過からそのそれぞれのFIFO記憶に読み出す。一度それらが配列されれば、読み出し管理手段は配列済みVCGを連鎖解除器に送信する。実施の形態の例では、読み出し管理手段は静的ランダム・アクセス・メモリ(SRAM)により構成される。当該技術者は、メモリ構成は柔軟であり、メモリ形式又は構成の他の形式が、添付の請求範囲及び等価物で定義される本発明の精神と範囲から逸脱しないで可能であることを理解する。
図16を参照して、フローチャートが、本発明の実施の形態の例による受信済みチャンネルの1つの操作の説明を示す。ステップ424で、入力VCGチャンネルデータを受信する、例えば、図15のANA402で実行される。ステップ426で、伝送がVCAT伝送かどうかを見るためにLCASパケット識別(LPBD)を検査する。もしそうでなければ、伝送はPOH,図15の422に送られる、そしてプロセスはステップ424に戻る。もし、LPIDがVCAT伝送であることを表せば、プロセスはステップ430に進む。ここでデータは書き込み管理手段、SRAMであり得る図15の405に記憶される。ステップ432で、書き込み管理手段はMTC,DRAMであり得る図15の412を書き込む。ステップ434で、それは、VCGのメンバが配列されているかどうかを判断する。もしそれらがそうでなければ、プロセスは、更にデータを受信するためにステップ424に戻る。一度ステップ434でそれらは配列する。より詳細な具体例は、更に以下で記述される。そして、ステップ436で、VCGの数が読み出し管理手段により読み出される。ステップ438で、データは、連鎖処理用の連鎖解除器に送られ、出力がステップ440で出力される。
図17を参照して、グループのメンバが配列される方法を象徴的に示すブロック図を例示する。ステップ448で、データ入力が配列されていない又は適切な連鎖でない入力を受信する。ステップ450で、対応するグループを配列する配列を実行する、例えば、この例では1グループ2メンバである。ステップ452で、VCGのメンバが配列され、連鎖順であるように連鎖が並べ替えされる。
図18を参照して、またそれぞれ受信チャンネルから考察されたときの連鎖解除として考察される、受信チャンネルの配列プロセスの別の例が図式やり方で示される。最初のステップ442で、個別のチャンネルA、B、C及びDが書き込み管理手段からマルチ・チャンネル透過で受信される。これらは当初読み出し管理手段により読み出される、本発明の実施の形態の例に従えば、間に合って受信される最初のチャンネルは読み出し管理手段により読み出される、そしてMFI番号はGO状態に設定される。読み出し管理手段には3状態がある。いったん他のチャネルが完全に受信され配列されるとGO状態は、書き込み管理手段から読み出し準備されるMCTへの完全受信済みチャンネルであり、これより同様にGO状態にある。排出(DRAIN)状態は、チャネルデータの全体がMCTで全部受信されていない及びいまだ完了であるための更なる情報を受信する必要があるチャンネルの状態である。待機(WAIT)又は停滞(STALL)状態は、初期チャンネルに先んじて受信されるが、MFIが設定されたとき最初の読み出しチャネルを通り過ぎて準備し、そしてチャンネルの全てが配列されるまで待つために設定されるチャンネルである。
見ることができるように、それが受信される最初のチャンネルであるので、チャンネルAはGO状態にある。ここで、MFIで番号が設定される。チャンネルBは排出状態に設定される、なぜならそれは間に合って後に受信され、完了していないゆえ。対照的に、チャンネルCは事前に受信される、そこでそれは完了し、配列されるべき追い付く他のチャネルを待つための待機状態に設定される。チャンネルDの場合は同様に、それはまた待機状態に設定される。MFIは待機又は停滞状態を不要にするためにリセットすることが可能である。しかしながら、LCAS仕様はヒットレス操作を必要とし、そしてMFIをリセットすることはヒットを引き起こす。従って、好ましい実施の形態の例では、いったんグループの最初のチャンネルが受信されればMFIが設定され、そしてグループ内から到来する引き続くメンバはそれにより設定される。
次のステップ444で、チャンネルは、それらの全てのデータが到着しGOに設定される事実により再配列される。ステップ446で、全てのチャンネルAからDはGO状態に設定され、それらが上に配列され、GO状態に入りそして読み出し管理手段から読み出し準備される。この時点で、読み出し管理手段はその全体内のVCGを読み出す。VCGは、そして連鎖化用の連鎖器に送る。
本発明によれば、単一の基盤で又はチップセットで実装されるハードウェアのモジュラシステムは、受信済みデータの連鎖から独立して受信済みチャネルデータの配列を可能にする。引き続く操作では、受信済みデータの連鎖を並べ替えされる。これは先願に対する改善である、ここでこれらプロセスは1個の単一ステップでなされる。結果として、データは到着し、ジッターなく滑らかに受信回路を出て行く、それは分離をもたらす。操作では、配列が最初になされ、そしてそれらは一度すべて配列される、それは時間領域多重順序でメモリ日付から読み出される。操作はより滑らかで、単調基盤で各スロットがタイムスロット(時間枠)を得る。操作の全ては前もって計画される。バースチネス、過度のバースト又は不確定さは構成に存在しない。各チャンネルは周期的タイムスロットを得、それでデータは滑らかに移動し、流れる。
これは、同一順序で入って引き出されるようにデータが記憶される先の操作とは対照的である。並べ替え又は同期は塊(chunk)でなされ、問題あるバースチネスをもたらす、そしてメモリの良い扱いを利用する。その様な構成は移動パターンを変え、調停が非常に複雑である。本発明によれば、周期的な解決は滑らかであり、配列が最初に実行され、実質的にいかなるバースチネス又はデータ欠損を取り除く。
図19を参照して、本発明によるMFI番号を設定するためのフローチャートを例示する。ステップ458で、チャンネルデータをメンバチャンネルにより受信する。ステップ460で、MFI番号をチャンネルから読み出す。ステップ462で、それは、チャンネルがグループから読み出された最初のチャンネルであるかどうかを判断する。もしそうであれば、MFI番号をグループ用に設定する。そして、もし全メンバデータを受信したならばそれは484で判断される、もしそうでなければ、プロセスはステップ458に戻る、ここで更なるメンバチャンネルをそれらが着くように書き込む。ステップ460で、チャンネルからのMFIが読みだす、そしてもしそれが最初のチャンネルでなければ、プロセスはステップ462からステップ470に進む、ここで引き続いて受信したチャンネルのMFIを最初のチャンネル確立により設定される設定MFIと比較する。ステップ472で、それはMFIが設定MFIより大きいかを判断する。もしそれが設定MFIより大きければ、状態はステップ474で待機に設定される。もしそうでなければ、又は状態が設定された後、ステップ476でMFIが設定MFIより小さいかどうかが判断される。もし答えがYESであれば、前のステップで知られただろうと仮定する、状態はステップ478で排出に設定され、プロセスはそれが設定MFIに等しいかどうかを判断するためにステップ480に進む。もしそれが設定MFIに等しければ、プロセスはステップ482においてGOで状態を設定し、プロセスは全の番号データが受信されたかどうかを判断するためにステップ484に戻る。このプロセスは、全チャンネルを受信するまでステップ458及び次のステップとループする。図18に戻って、これは、チャンネルが受信された後、図19に記述されるようにMFIが状態を設定する方法を例示する。まだ図18を参照して、プロセスは図19で例示され記述される、各チャンネルを受信するように状態を設定する方法を例示する。チャンネルAが最初に時間内に到着するように、それはGO状態に設定し、最初のMFIを確立する。他のチャンネルを受信した後、そのようなチャンネルB、C及びD、MFIをそれらの状態を設定するために比較する。図18で、ステップ444は、チャンネルAをGOに設定することを示す、なぜならそれが最初に到着するからである。チャンネルの全ては、グループを読み出し更に処理することができる前に、GO状態に進まなければならない。チャンネルBを排出(DRAIN)に設定する、なせならそれはいまだ完全に受信されてないからである、チャンネルCとBはチャンネルBがその伝送を完了するまで待機又は停滞状態にとどまる。ステップ446で、一度全チャンネルデータが、全チャンネル、A、B、C及びDから到着すれば、それらは全てGOに設定され、読み出し管理手段により読み出し準備ができる。
図15に戻って、全てがFIFO416、418及び他のFIFOの各チャンネルデータを受信するGOに設定されるとき、読み出し管理手段はチャンネルデータを読み出す。実際上、読み出し管理手段は、全てがGO状態になるまで繰り返しMCT412の指定位置を繰り返し読み出す。一度GO状態に入れば、読み出し管理手段により全てがそれらの全部で読み出される。操作で、書き込み管理手段はチャンネルデータを受信し、それをMCTメモリ記憶に記憶する、チャンネルデータはANA402から到着する。実施の形態の例では、書き込み管理手段はSRAMであり、MCTはDRAMである、読み出し管理手段はまたSRAMであり得る。これにより、書き込み管理手段と読み出し管理手段は、大きな量の記憶用のDRAMであり得るMCTに比較して小さくできる。書き込み管理手段は、複数チャンネルのデータを受信する間記憶の大きな取り扱いなしで、MCTに大量のデータを書き込むことができる。MCTは、それが配列されるまでデータを記憶することができる。一度配列されれば、読み出し管理手段は時間領域多重方法でMCTから読み出すことができる。読み出し管理手段からの出力は、それによりチャンネルデータが並べ替えをされる連鎖解除モジュールに送られる。
5 概要
実施の形態の例では、受信回路、又はVCT_RXブロックの機能は複数のモジュールに分散される。実施の形態の例では、モジュールは構成(CFG)モジュール、カレンダ/障害/レジスタ(CFR)モジュール、MFI分析器(ANA)モジュール、配列器書き込み管理手段(ALIG_WR)、配列器読み出し管理手段(ALIG_RD)、LCAS/VC制御器(LVC)及びペイロード連鎖解除器(DSQ)を含む。好ましい実施の形態の例では、非・VCATパケット・トラフィックは、VCATトラフィックよりVCT_RXブロック内の異なる経路に続く。
構成(CFG)
5.1 概要
CFGモジュールは全ての総括構成及びステータス・パラメータ及び全ての割り込みステータス・パラメータを維持する。それは全ての他の構成及びそれに実装されるモジュールへのステータスレジスタ用のCPU要求を指揮する。CFGモジュールは、複数モジュールからのパラメータを組み合わせるレジスタを実行するために単一CPU要求から複数の要求を発生する。
CFGモジュールは、RX_VCTモジュール内で他の全てのモジュールによって用いられる間接アクセス・スキームを実行する。尚、これらモジュール内の全ての構成とステータス・パラメータは間接アクセスを利用する、それに対してCFGブロックのパラメータは直接的にアクセスされる。間接アクセス・スキームは、パケットブロックで用いたものと同じである、つまりそれは自動増加モデルをサポートする。
CFGモジュールは、割り込み要約ステータスを発生し、オリオンのトップレベルCPUモジュールへの割り込みを発生するために責任がある。
5.2 インターフェース
CFGモジュールは、CPUからの構成又はステータス読み出し/書き込み要求を通過させるための別々のポイントからポイントバスを用いるVCT_RXブロックのすべての他のモジュールにインターフェースする。尚、CFGモジュールそれ自体はいくつかの構成及び全ての割り込みステータス・パラメータを含むステータス・パラメータを維持する。
ALIG_WRモジュールを除く全てのモジュールは、割り込みイベントをCFGモジュールに示すために別々のポイントからポイント割り込みバスを利用する。ALIG_WRモジュールが生成できる割り込みのみがチャンネル状態メモリのパリティエラーのためのものである。それはパリティエラーイベントを、影響を受けたチャネルの読み出しポインタをだめにすることによってALIG_RDモジュールに示す。ALIG_RDモジュールは、ALIG_WRからのパリティエラーとそれ自身のチャンネル・レベルパリティエラーイベントを組み合わせる。ALIG_RDとLVCモジュールは同じカレンダで駆動されるので、CFGブロックはそれらからの同じクロックで起きる割り込みを一列にすることができる。
5.3 構成及びステータス・パラメータ
実施の形態の例では、CFGモジュールは次のパラメータを維持する。
・ 全総括構成パラメータ
・ 全チャンネル・レベル割り込み可能構成パラメータ
・ 全シンクポート・レベル割り込み可能構成パラメータ
・ 全ソースポート・レベル割り込み可能構成パラメータ
・ 全総括ステータス・パラメータ
・ 全総括割り込みステータス・パラメータ
・ 全チャンネル・レベル割り込みステータス・パラメータ
・ 全シンクポート・レベル割り込みステータス・パラメータ
・ 全ソースポート・レベル割り込みステータス・パラメータ
これらパラメータは、次のようにフロップ、フリップ・フロップ、又は他のメモリ装置又は構成のような記憶装置を用いて実行される。
・ 総括パラメータはフロップを用いて実行される。
・ シンクポート又はソースポート・レベル割り込み可能及び割り込みステータス・パラメータは、フロップを用いて実行される。
・ チャンネル・レベル割り込み可能及び割り込みステータス・パラメータはメモリを用いて実行される。
CFGブロック内で維持されるパラメータへのハードウェアとソフトウェア間の衝突は、プロセスをハードウェアとソフトウェアに派遣する衝突アルゴリズムよって取り扱われる。1実施の形態の例では、プロセスは次のようである。
・ もし構成パラメータためのソフトウェアからの書き込み要求がハードウェアからの読み出し要求と衝突するならば、ソフトウェアからの値はハードウェアにより用いられる。
・ もし総括ステータスためのソフトウェアからの書き込み要求、又は割り込みステータス・パラメータがハードウェアからの読み出し要求と衝突するならば、ハードウェアからの値はソフトウェアに渡される。
5.3.1 総括構成
VCAT DRAMは、サイズ及びグループサイズに従って構成される。これらパラメータは静的である。VCT_RXブロックがリセットにない間(又はどんなVCAT可能チャネルもリセットにない時)それらは変更されるべきではない。
カウンタ(計数器)は、OOMに入る/出るために及びLOMに入るために構成される。命令は、RX_VCAT_HO_OOM1_IN、RX_VCAT_H0_00Ml_0UT、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可能チャネルもリセットにない時)変更されるべきではない。
MH捕捉は、各チャンネル用のMFI値を捕捉するために構成される。命令は、RX_VCAT_MH_CAP_CHANL、... RX_VCAT_MH_CAP_CHAN(n)及びRX_VCAT_MFI_CAP_DONE_INT_ENの形である
グループ識別は、同様に捕捉される。命令は、RX-LCAS-GID−CAP−PORT、RX_LCAS_GID_CAP_DO]SIE_INT_ENなどの形であり得る。
DRAMFIFOレベル測定は、適切な閾値によってチャンネルに対してソフトウェア内で構成される。命令は、RX_VCAT_DRAM_FIFO_LVL_CAP_CHAN、RX-VCAT-DRAMFIFO-LVL−THSLD、RX-VCAT-DRAMFIFO−LVL−CAP−DONE-INT−EN、RX-VCAT-DRAMFIFO-BELOW−THSLD−CHG−INT−EN又は他の似た形であり得る。
割り込み要約可能は、様々な環境及び応用の間で構成される。例えば、割り込み可能ビットは、STSレベル(48ビットレジスタ)で割り込み要約ステータス・ビットのために構成される。それらは、またVTレベル(48x28ビットレジスタ)で割り込み要約ステータス・ビットのためであり得る。それらは、またポート・レベル(128ビットレジスタ)で割り込み要約ステータス・ビットのために、全チャンネルの割り込み要約ステータス・ビット又は/及び割り込み可能ビット、全ポートの割り込み要約ステータス・ビットのために、構成され得る。当該技術者は、異なる応用を可能にする様々な割り込み構成を理解する。
DRAMは、割り込み可能を用いる読みさぢ要求FIFOオーバーフローに対して構成され得る。命令は、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 2重ポートメモリのようなメモリの2重部分にグループ化される。これは、高位及び低位チャンネルによって共有され得る。1例は、このメモリ内の参入の構造を示す次の表である。
Figure 2008538456
好ましい実施の形態の例では、ハードウェアは、このメモリに参入を持ち、パリティエラーを持つチャンネルからの割り込みを不能にしない。
5.3.3 シンクポート・レベル割り込み可能構成 次の表は、シンクポート・レベル割り込み可能構成パラメータを示す。
Figure 2008538456
尚、全てのシンクポート・レベル構成及び状態パラメータは、フロップで実行される、シンクポート・レベルには構成又は制御パリティはない。
5.3.4 ソースポート・レベル割り込み可能構成
次の表は、ソースポート・レベル割り込み可能構成パラメータを示す。
Figure 2008538456
尚、ソースポートに対する構成パラメータ又は状態変数はないので、ソースポート・レベルでは構成又は制御パリティ割り込み可能はない。
5.3.5 総括ステータス
総括ステータスは、MH捕捉ステータス、DRAMFIFOレベル測定ステータス、割り込み要約ステータスを含み、次のパラメータ、DRAM読み出し要求FIFOオーバーフロー、DRAM書き込み未準備エラー及び他のステータス情報を含む。いくつかの例は次のようである。
MFI捕捉ステータス
o RX_VCAT_CHAN1_MFI
o RX_VCAT_CHAN2_MFI
o RX_VCAT_MFI_CAP_DONE
DRAMFIFOレベル測定ステータス
o RX_VCAT_DRAM_FIFO_LVL
o _VCAT_DRAM_FIFO_LVL_CAP_DONE
o RX_VCAT_DRAM_FIFO_LVL_BLW_THSLD_CHG
割り込み要約ステータス
o 割り込み要約ステータス・ビット、STSレベル(2レジスタ内)で
o 割り込み要約ステータス・ビット、VTレベル(48レジスタ内)で
o 割り込み要約ステータス・ビット、ポート・レベル(4レジスタ内)で
o 全チャンネルの割り込み要約ステータス・ビット(STSレベルで)
o 全ポートの割り込み要約ステータス・ビット
DRAM読み出し要求FIFOオーバーフロー
o RX_VCAT_DRAM_RD_REQ_F1FO_OVFL_CNT
o RX_VCAT_DRAM_RD_REQ_FIFO_OVFL_CNT_CHG
DRAM書き込み未準備エラー
o RX_VCAT_DRAM_WR_NOT_RDY_ERR
次の総括割り込みステータス・ビットは、1レジスタ内にグループ化され得る。
・ RX_VCAT_MFI_CAP_DONE
・ RX_VCAT_DRAM_HFO_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を除く全チャンネル割り込みステータス・パラメータは、高位及び低位チャンネルによって共有される2重ポート1344x12メモリにグループ化され得る。次の表は、その様なメモリ構成に参入の構造の例を示す。
Figure 2008538456
これらのビットは、RX_CH_VCAT_MFI_ENがゼロに設定され時、交互にリセットされ得る。
また、このパラメータは、拡張信号ラベルを運ぶ低位チャンネルのみに有効であり得る。ハードウェアは、拡張信号ラベルを抽出する時、拡張信号ラベルを表すV5ビットが用いられるかどうかを検査するために構成されえない。また、その様なメモリはパリティによって保護され得ない。
5.3.7 シンクポート・レベル割り込みステータス
次は、シンクポート割り込みステータス・パラメータの例である、ここで命令はRX_SK_VCAT_RBID_CHG_DONEである、サイズは1ビット、及び初期化又はシンクポートリセット後の値はゼロである。もし全シンクポート・レベル構成及び状態パラメータがフロップで実行されるならば、シンクポート・レベルでは構成又は制御パリティはない。
5.3.8 ソースポート・レベル割り込みステータス
ソースポート割り込みステータス・パラメータの例は、RX_SO_LCAS_MST_CHG及びRX_SO_LCAS_RS_ACK_CHGである、ここで、それぞれは1ビットのサイズであり、初期化後、値ゼロを持つ。もしソースポート用の構成パラメータ又は状態変数がなければ、ソースポート・レベルで構成又は制御パリティエラー割り込みステータス・ビットはない。また、もしソースポート・レベルリセットがないなら、これらステータス変数はいつもクリアされるためにソフトウェアにより1を書き込まなければならない。
5.4 割り込み要約発生
割り込みステータス要約は、複数のレベルで実行され得る。例えば、STS−1に関係する全の割り込みステータス・パラメータの要約があり得る。尚、もしSTS−1がVT地図化されれば、この要約はそのSTS内に全てのVTチャンネルの割り込みステータス・パラメータを含む。STS割り込み要約ビットは48フロップで保持される。
また、VTチャンネルに関係する全の割り込みステータス・パラメータの要約があり得る。VT要約ビットはSTSで編成され、48x28フロップで保持される。STSがVT地図化されなければ、STSに対応するVTチャンネルの要約ステータス・ビットはクリアされる。
また、シンクポートに関係する全の割り込みステータス・パラメータの要約があり得る。尚、これらの割り込みパラメータは、シンクポートがVCAT可能である場合のみ意味がある。シンクポート割り込み要約ビットは128フロップで保持される。
更に、ソースポートに関係する全の割り込みステータス・パラメータの要約があり得る。尚、これらの割り込みパラメータは、シンクポートがVCAT可能である場合のみ意味がある。シンクポート割り込み要約ビットは128フロップで保持される。ソースポート割り込み要約ビットは128フロップで保持される。
チャンネルがリセットされる時、CFGはそのチャンネルの割り込みステータス・スビットをクリアする。それはそのチャンネルに関係する要約割り込みビットを直接クリアしない。シンクポートがリセットされる時、CFGはそのシンクポートの割り込みステータス・スビットをクリアする。それはそのシンクポートに関係する要約割り込みビットを直接クリアしない。ソースポート・レベル割り込みステータス・ビットをクリアするソースポートリセットはない。ソフトウェアは、それらをクリアするためにRX_SO_LCAS_MST_CHGとRX_SOL_LCAS_RS_ACK_CHG割り込みステータス・ビットの両方に1を書き込む必要がある。もし特別割り込みステータス・ビットの割り込み可能構成ビットを設定しなければ、その割り込みビットは要約に寄与しない。
5.4.1 チャンネル割り込み要約発生
CFGモジュールは、2個の別々ののソースから同時にチャンネル割り込みを取り扱うために構成される、例えば、ANA及びALIG_RD/LVCである。これを取り扱うために、CFGは、ANA及びALIG_RD/LVCから新しく作るチャンネル・レベル割り込みステータス・パラメータ用の2個の別々の2重ポートメモリを用いるために構成され得る。割り込み要約を実行するために、CFGモジュールは、チャンネル割り込みステータス・メモリ及びシンクとソースポート割り込みステータスレジスタを連続して読み出す。チャンネル割り込み要約発生プロセス及びCPUは、CPUアクセスに優先権を与えて、2重ポートメモリのポートを共有する。
6 カレンダ失敗レジスタモジュール(CFR)
6.1 概要
CFRモジュールは複数の機能を持ち得る。例えば、それは次の機能を持ち得る。最初に、全てのチャンネル・レベル構成を記憶すること。また、VCATに割り当てられた全部のDRAMスペースに基づいたチャンネルに割り当てられたDRAMスペースの始まりと終わりのアドレスを計算すること、チャネルの形式とDRAM診断モード。更に、それは、チャンネル構造構成に基づいたVCT_RXブロックのすみからすみまでを用いる内部自由動作カレンダ(1倍、2倍、56倍及び62倍)を発生するために構成され得る。また、それはチャンネル構成及び失敗/リセット状態をカレンダ情報と共に他のモジュールに配分するために構成し得る。そして、それはまたVCAT配列障害取り扱いのために構成され得る。カレンダ発生、DRAMスペース割り当て及び障害取り扱い機能が「VCAT配列器」文章で記述される。
6.2 インターフェース
CFRモジュールは、ANA、ALIG_WR、ALIG_RD及びCFGモジュールにインターフェースする。インターフェース信号用の「vct_rx_CFR」マイクロ構築文書参照。
ANAへのインターフェースは、チャンネル構成情報を得るために元来ANAのためのものである。しかし、ANAからの構成要求への応答は、構成パラメータに加えてチャンネル失敗ビットを含んでいる。
ANAモジュールはCFRモジュールからのチャンネル失敗表示を処理しない。それは、この信号をデータが連合チャンネルの段階化FIFOに書き込まれるべきかどうか及び連合チャンネルの書き込みポインタが壊れていないかどうかを判断するためにそれを用いるALIG_WRモジュールにただ送るだけである。尚、チャンネル失敗状態は、たとえANAモジュールがチャンネルの警報を報告しなくても存在できる。
CERは、ANAへの構成応答の部分としてCH_CFG_PRTY_ERR状態を渡す。これはANAによって機能するように要求されないが、ANAはこのビットをその状態メモリに記憶する。変更を検出する時、それはCFGへの割り込みを生成する。
6.2.2 ALIG_WRへのインターフェース
ALIG_WRへのCFRインターフェースは、1倍、2倍可能なカレンダに基づいた信号の2つの独立したグループを有する。
・ 現在のカレンダ周期でチャンネルのTID及びその失敗状態をALIG_WRに渡すためのCFR用の2倍カレンダに基づいた信号グループ、それは、段階的FIFOから及び主FIFOにデータを移動するためにそれらを用いる。
・ 現在のカレンダ周期でチャンネルのTDD、その失敗状態及びDRAMのそれに割り当てられるスペースの始めと終わりのアドレスをALIG_WRに渡すためのCFR用の62倍カレンダに基づいた信号グループ、それは、段階的FIFOから及び主FIFOにデータを移動するためにそれらを用いる。
6.2.3 ALIG_RDへのインターフェース
実施の形態の例では、ALIG_RDへのCFRインターフェースは5つの独立した信号グループを有する。4つのこれらの信号は、56倍、62倍及び1倍カレンダに基づき得る。
現在のカレンダ周期のチャンネルのTID、そのリセット及び失敗状態及びDRAMのそれに割り当てられるスペースの始めと終わりのアドレスをALIG_RDに渡すためのCFR用の56倍カレンダに基づいた1信号グループ、それは、データをDRAMからチャンネルの主FIFOに動かしそしてチャンネルの主FIFOをリセットするためにそれらを用いる。
現在のカレンダ周期のチャンネルのTID、そのリセット及び失敗状態をALIG_RDに渡すCFR用の2倍カレンダに基づいた別の信号グループ、それは、データをチャンネルの主FIFOからチャンネルの段階的FIFOに移動するために及びチャンネルの段階的FIFOをリセットするためにそれらを用いる。
現在のカレンダ周期のチャンネルのTED、そのリセット及び失敗状態、その構成、その形式、メンバであるVCGのリセット状態、その構成メモリ参入のパリティステータス及び現在のカレンダ発生カウンタをALIG_RDに渡すためのCFR用の1倍カレンダに基づいた別の信号グループ、それは、データをチャンネルの段階的FIFOからVLCに動かしチャンネル及びそれが維持するVCG状態をリセットするためにそれらを用いる。
1倍カレンダで渡されるチャンネル構成データは、ALIG_RDによってのみでなく下流のLVC及びDSQモジュールによってもまた必要とされるデータを含む。チャンネル形式及びカレンダ発生カウンタはDSQと同様にALIG_RDにより用いられる。
別の信号グループは、現在のカレンダ周期のチャンネルのTID、そのDRAMオーバーフロー・エラー又は警報検出ステータスをCFRに渡すためにALIG_RD用の1倍カレンダに基づき得る、それは、チャンネル及びVCG失敗状態を更新するためにそれらを用いる。他の信号グループはカレンダに基づかれ得ないがCFRからチャンネルの失敗ステータスを得るためにALIG_RDによって用いられる。
CFRとCFG間でのインターフェースで、CFGはチャンネル構成を読み出し及び書き込むためにCFRにアクセスする。CFRは、割り込みイベントをCFGに送るために構成される。
6.3 構成
CFRモジュールは全チャンネル毎の構成パラメータ及びSTSチャンネル構造構成パラメータを維持する。それはまた、並べ替えバッファids(RX_SK_VCAT_RBIDO/1)を除く全シンクポート・レベル構成パラメータを維持する。構成情報は、1倍カレンダと共にそれを必要とするブロックに送られる。
6.3.1 STSチャンネル構造構成
STSチャンネル構造構成レジスタは48x9フロップを用いて実行される。
Figure 2008538456
註1:チャンネル構造構成パラメータは、変更により影響される全ての現在のチャンネルがリセットから出る間、それらが変更されるべきでない感覚で、静的である。また、VCT_RXブロックのこれらパラメータの変更は、SONET/SDH受信ブロック内で対応する構成と連携してなされる。
6.3.2 チャンネル・レベル構成
ANAモジュールが、他のモジュールを駆動する自由動作1倍カレンダに関して同期して構成情報をアクセスする必要があるので、ANAにより要求される構成情報は、個別の2重ポートメモリ内で複写される。ソフトウェアがこれらのパラメータを更新する時、両方のメモリは更新される。ソフトウェアがそれらを読み出す時、1倍カレンダを用いたメモリ内の値は取ってこられる。
6.3.2.1 1倍カレンダによりアクセスされたチャンネル構成用メモリ
全てのチャンネル・レベル構成パラメータは1344x25 2重ポートメモリ内にグループ化され、高位及び低位チャンネルによって共有される。次の表はこのメモリの参入構造を示す。
Figure 2008538456
註1:これらパラメータは操作目的用の初期値を持つ必要はない。しかしながら、それらはゼロに設定される。
註2:操作周期の間、RX_CH_VCAT_ACCEPTEDパラメータは、チャンネルがLCAS可能VCGに所属するのであればチャンネルがリセットから出る前に、ゼロに設定されるべきである。
註3:RX_CH_VCAT_MH_ENは、RX_CH_SW_CFG_ENに独立して用いられる。7.4章の議論を参照
6.3.2.2 ANAによりアクセスされたチャンネル構成用メモリ
ANAにより要求された次の構成パラメータは1344x10 2重ポートメモリ内にグループ化され、高位及び低位チャンネルによって共有される。次の表はこのメモリの参入の構造を示す。
Figure 2008538456
註1:このパラメータは操作目的用の初期値を持つ必要はない。しかしながら、パリティ保護に対して、それらはゼロに設定される。
6.3.3 シンクポート・レベル構成
次のシンクポート構成パラメータは、128x4フロップを用いて実行される。
Figure 2008538456
註1:このポートに地図化されるリセット外のチャンネルがある間又はRX_SK_SW_CFG_ENが設定されない間、RX_SK_VC_ENとRX_SK_LCAS_EN構成パラメータは変更されるべきでない。
6.4 ステータス
チャンネル構成メモリ内のパリティエラーはALIG_RDモジュールに渡され、それらをその自身のチャンネル・ステータス・メモリに記憶する。これはこのモジュール内のステータス・メモリを持つ必要を避ける。
RX_CH_VCAT_FAIL_STICKYステータス・パラメータは、それらがCFRブロック内で3個全てのカレンダによりアクセスされる必要があるので、1344フロップを用いてCFRブロック内で実行される。
Figure 2008538456
尚、RX_CH_VCAT_FAIL_STICKYは、障害の生きたステータスではない感覚で普通のステータス・パラメータではない。それは鍵のかかった値であるがまたソフトウェアはそれをクリアするためにそれに1を書き込む必要があるという感覚で、それは割り込みステータス・パラメータにより似ている。しかしながら、それが発生及び割り込みしない、だから連合割り込み可能パラメータを持たない他の割り込みステータス・パラメータに、それは必ずしも似ていない。障害の根底にある原因が割り込みを生成するので、これは意図的である。
6.5 状態
CFRモジュールは、チャンネル及びVCGsの障害状態を維持するためにフロップを用いる。また、CFRモジュールは、その障害/リセット状態をクリアし、チャンネル・リセット/障害がそれを見るために全てのモジュールに対して十分に長く保持することを確実にするためにカウンタを維持する。これらのカウンタは1344x7 2重ポートメモリを用いて実行される(パリティ保護なしで)。より詳細に対しては、「VCT_RX_CFR」マイクロ構築文章参照。
6.6 割り込みイベント
CFRは、CFGへの次の割り込みイベントを生成する。
・ RX_CH_CFG_PRTY_ERR_CHG
6.7 カレンダ発生
カレンダ発生は、STSチャンネル構造構成及び4個の内部カウンタに基づく。「VCT配列器」構築及び「VCT_RX_CFR」参照。
6.8 障害取り扱い
「VCT配列器」構築及び「VCT_RX_CFR」参照。
7 MFI分析器(ANA)
図20を参照して、MFI分析器の実施の形態の例を説明する。ANA502は、交差接続(CXC)504、連鎖解除器506、配列読み出し器508、入力フレームモジュール(IFR)510、構成モジュール(CFG)512及びCFR(514)とインターフェースする。ANAは、更にチャンネル(CH)状態/ステータス・メモリ及び非・VCAT CHデータメモリを含む。実施の形態の例では、ANAは次の機能を実行する。
・ CFRモジュールに記憶される構成に基づいた非・VCATパケット・トラフィックからVCATパケット・トラフィックを分離する
・ VCATチャンネルで、それらをALIG_WRに渡す前にVCAT/LCAS用に用いられるH4/K4バイトを除いて全てのオーバーヘッド及びスタッフバイトを裸にする
・ 非・VCATパケットチャンネルで、それらを内部データ・バッファに書き込む前に全てのオーバーヘッド及びスタッフバイトを裸にする
・ VCATチャンネルに対して、CFGモジュールに記憶される総括的にプログラムされた一致及び不一致カウンタに基づいたMFIロック状態機械を実行
・ ALIG_WRモジュールへの単一警報状態を表示するためにVCATチャンネル上で表示されるCXC警報と配列のMFI損失とを組み合わせる
・ チャンネルの現在MFI値をデータバイトと共にALIG_WRモジュールに提供する
・ 各チャンネルのMFIロック・ステータスをソフトウェアに提供する
・ CGFブロックによって要求された時VCATチャンネル対のMFI値のスナップショットを捕捉する
・ 低位チャンネルの拡張信号ラベルを抽出する
・ それらをIFRに配達する前にDSQからのVCATパケット・トラフィックと非・VCATパケット・トラフィックを合併させる
7.2 CFRへのインターフェース
ANAモジュールが与えられたチャンネル用のCXCから有効要求を得る時、それはCFRにそのチャンネルの構成を求める。チャンネルは、CXCからのチャンネルid及び形式信号に基づいて構築された11ビットANA_CFR_TID信号によって確認される。チャンネル用のCFRにより戻される構成情報は次を含む。
・ MFI分析は、このチャンネルで可能かどうか(RX_CH_MH_EN)
・ チャンネルは、VCT_ブロックの残り内でリセットにあるかどうか(RX_CH_SW_CFG_EN)
・ チャンネルは、VCAT可能論理ポートと連合するかどうか
ana_cfr_TID信号はCXC信号から次のように獲得される。
もし(CXC_vct_rx_STS_vt)であれば、{ana_ALIG_wr_TID=CXC_vct_rx_STS*28+CXC_vct_rx_grp*4+CXC_vct_rx_VT}
その他{ana_cfr_TID=CXC_vct_rx_STS_master*28}
尚、ana_CFR_TIDは、CXC_vct_rx_STS_masterに基づいていつも設定される。非・VCATデータを運ぶVC4-Nc連続連結グループ用のこの方法(ここで、N>=2)、単一チャンネル構成参入が用いられる。
CFRは、CH_CFG_PRTY_ERR状態を構成応答の一部としてANAに渡す。これは機能するためにANAにより要求されないが、ANAはこのビットをその状態メモリに記憶する。それが変更を検出する時、それはCFGへの割り込みを発生する。
7.3 ALIG_WRへのインターフェース
もしCFRからの構成結果が、チャンネルがVCGに属することを表せば、ANAはALIG_WRへの要求を発生する。
ANA_ALIG_wr_almは、ANAがこのチャンネル及びそのチャンネルのOOM1/2ステータスのためにCXCからANAが得た警報信号の組み合わせである。
ana_ALIG_wr_TID信号は、CXC信号から次のように獲得される。
もし(CXC_vct_rx_STS_vt)であれば、{ana_ALIG_wr_TID=CXC_vct_rx_STS*28+CXC_vct_rx_grp*4+CXC_vct_rx_vt}
その他 もし(! CXC_vct_rx_STS_au4)であれば、{ana_ALIG_wr_TID=CXC_VCT_RX_STS*28}
その他 {ana_ALIG_wr_TID=(CXC_vct_rx_STS%16)*28}
ana_ALIG_wr_SOF信号は、CXC信号から次のように獲得される。
もし(CXC_vct_rx_STS_vt)であれば、{ana_ALIG_wr_SOF = CXC_vct_rx_vt_SOF}
その他 {ana_ALIG_wr_SOF=(CXC_vct_rx_row==0)&&(CXC_vct_rx_col==0)}
ana_ALIG_wr_ch_ctrlprty_errとana_ALIG_wr_CUR_mfi信号は、ana_ALIG_wr_TID信号の値により索引付けされた場所で状態メモリ参入のそれぞれ現在MFIフィールドの値とパリティ・エラービットに基づく。
7.4 チャンネルMFI可能対チャンネル・リセット
チャンネルMFI可能操作は、チャンネル・リセット操作と独立している。チャンネル・リセットはANAモジュールのMFI状態機械とMFI捕捉機能に影響しない。MFI可能のみがそれら機能を制御する。ANAモジュールは、全てのデータを通過させるべきかどうかを判断するためにチャンネル・リセットを用いる。
たとえチャンネルがリセットにある時もMFI分析が可能であるならば、ANAはMFI情報を処理し、MFI捕捉機能を実行する。このモードは、そのVCGのデータフローを実際に衝突させないで新しいチャンネル加算により存在するVCGを起こすことができる差分遅延変更を測定するために役に立つ。これは7.8章でより詳しく論議される。
MFI分析は、チャンネルがリセットにない時、不能にされ得る。これは、通常操作下で利用されない。確認の間、速いロック操作に対して役立つ。このモードでは、ANAは、00M/L0Mステータス・ビットがデフォルトにより設定されているので(つまり、MFI可能が設定されていないとき)、最初に警報状態をALIG_WR管理手段に表示している。速いロック操作に対して、ベンチが最初に使われるべきH4/K4バイトを検出した時、それは裏口書き込みでRX_CH_MFI_ENを設定する。
もしチャンネルがリセットされれば、ANAは全ての要求をALIG_WRに送らない、又は全てのデータをRX_VCAT_MFI_ENがされるかどうかによらず非・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が全てのチャンネル・レベル構成を有していなくても、それはCFRのチャンネル構成メモリに対してパリティエラー状態を獲得し、CFRのためそれをにその状態及び状態メモリに記憶する。以下に示すように、それはまた、変更があるときに割り込みを生成する。
ANAのチャンネル状態メモリは保護されているが、ANAは制御パリティエラー・ステータスを提供しないし、それ用の割り込みを生成しない。代わりに、それはチャンネル制御パリティエラー状態をALIG_WRに送り、それは、それを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モジュールは、IFRの前にそれを非・VCATデータと合わせるためにDSQからVCATデータを獲得する。DSQからのインターフェースは、ANAが非・VCATチャンネル用にその内部データ・バッファからデータを引き出すために用いるDSQ_ana_TID信号を含む。これは以下の7.14章で説明される。
7.7 MFIロック状態機械
「VCT_MFI_ANA_UARCH」文章参照
尚、LOMにない間、ANAは期待値をALIG_WR送る、そしてそれはH4/K4バイトで受信される値ではない。
7.8 MFI捕捉
7.8.1 差分遅延測定
供給している間、VCGの候補メンバチャンネル間の差分遅延がVCATに配分したDRAM容量を考え支持されることができるかどうかを判断する必要がある。オリオンは2チャンネルのMFI値のスナップショットを取る機構を提供する。全ての適切なメンバ対組み合わせに対してこれをすることにより、ソフトウェアはVCGの最大差分遅延を決定することができる。
与えられたLCAS VCGに加えられる新チャンネルである時、実際にチャンネルをそのVCGと関連づけずにVCGの経験される最大差分遅延を決定することが望ましい。そうすることはそのVCGの上のデータフローに衝撃を与えることができる(潜在的に、少なくとも停滞を引き起こす)。もし用いてない受信論理ポートが利用可能であれば、それがこの問題を避けるためにリセットから持ち出す時、このチャンネルは最初にその様なポートに地図化される。しかしながら、これはいつも可能ではない。
このための解決策はRX_CH_SW_CFG_ENビットに独立してRX_CH_VCAT_MEI_ENビットを作ることである。ANAは、機能(拡張信号ラベル抽出を含む)に基づいた全てのMFI分析に対してリセット・ビットとしてRX_CH_VCAT_MH_ENを用いる。それは、オーバーヘッド/スタッフ刈り込み、データ分離及びデータ併合機能に対してのみリセット・ビットとしてRX_CH_SW_CFG_ENビットを用いる。
このスキームで、差分遅延測定がVCGに加えられるべきであるチャンネルでなされるべきであるとき、そのVCGのRX_CH_VCAT_MFI_ENビットのみが初期に設定される。一度遅延測定がなされ、このチャンネルを実際のVCGに加えることがOKであれば、RX_CH_VCAT_SW_CFG_ENビットをクリアできる。
7.8.2 インターフェース及び操作
ソフトウェアがCFGモジュールの総括RX_VCAT_MFI_CAP_CHANL/2レジスタに書き込む時、CFGモジュールは、2チャンネルの識別と共にANAモジュールにMFI舗装要求を送る。応答で、ANAは、CXC要求に基づいたこれら2チャンネルに対してそれがその状態メモリ内に持つMFI値を読み出し、それが読み出す値と共に完了信号をCFGに送る。
MFI分析器は、それがその状態メモリに記憶される2チャンネルのMFI値でCGFモジュールに応答する時チャンネルがMFIロックにあるかどうかを検査しない。ソフトウェアは、捕捉要求を生成する前に両チャンネルがMFIロックにあることを検査する。しかしながら、もしいずれかのチャンネルが、ANAが要求を獲得する時間までにMFIロックから出れば、MFI値は有効ではないかもしれない。捕捉がなされた後にロックのMFI損出がないことを確実にすることはソフトウェア次第である。
尚、MFI分析器は、チャンネルがMFI可能又はそれらがVCATチャンネルであるかどうかを検査しない。もしソフトウェアがそのようなチャンネルで捕捉を実行しようとすれば、それはがらくたデータを取りもどす。
前の1つが進行中であった間にANA捕捉要求を送るためにCFGに対して十分早く書き込み要求を生成することはソフトウェアにとって可能ではない。それゆえ、ANAはこのケースに関して心配する必要はない。
7.9 拡張信号ラベル抽出
低位チャンネルで、ANAは拡張信号ラベルをK4バイトの最初のビットから形成された32ビットフレーム(12ビットMFASパターンに基づいて配列された)から抽出する。もし同じ値がチャンネルの列で3回受信されれば、ANAは、受理拡張信号ラベルとしてその値をそのチャンネルのステータス・メモリ参入に書き込む。
与えられたチャンネル上の拡張信号ラベル抽出は、明らかにそのチャンネルのOOMl状態に依存する。チャンネルがOOMl状態にある間、ANAは抽出を実行しない。
IMl状態にある時、ANAはMFI1カウンター(つまり、11及び18間にあるべき)に基づいてK4バイトがESLビットを運んでいるかどうかを知っている。
7.10 構成
ANAモジュールは、それ自身のいかなる構成パラメータも持っていない。
7.11 状態
7.11.1 共通状態
MFI捕捉要求に応答してチャンネル状態メモリから読み出された最初のMH値は、2番目のチャンネルをヒットするためにCXCカレンダを待つ間、共通のレジスタに書き込む必要がある。
7.11.2 チャンネル状態
チャンネル状態パラメータは、1344x45 2重ポートメモリにグループ化される。それへの書き込みと読み出しアクセス両方は、CXC要求により駆動される。
いつかの状態パラメータは低位にのみ適用できる。ゆえに、参入が高位又は低位チャンネルに対するかどうかに依存するチャンネル状態メモリに参入の2つの異なる意図がある。
このメモリに記憶されるRX_CH_CFG_PARITY_ERR_COPYビットは、ANAが使用する本当の状態パラメータではない。RX_CH_VCAT_MFI_ENがソフトウェアによりクリアされる時全ての他の状態ビットがリセットされる間、このビットはRX_CH_SW_CFG_ENが設定されるときにリセットされる。
7.11.3 チャンネル状態メモリ参入の高位意図
次の表はこのメモリの参入構造を示す。
Figure 2008538456
7.11.4 チャンネル状態メモリ参入の低位意図
Figure 2008538456
7.12 ステータス
MFI捕捉に関するステータス・パラメータは、それらが総括なのでCFGブロック内で保持される。
チャンネル・ステータス・パラメータは1344x12 2重ポートメモリにグループ化される。
Figure 2008538456
註1:このパラメータは低位チャンネルにのみ適用できる。また、もしチャンネルがOOMl状態ならば、その値は有効ではない。
7.13 非・VCATチャンネル・データ・バッファ
非・VCATチャンネル・データ・バッファは2個のメモリを用いて実行される。1番目は、VC4を除いて低位チャンネル及び高位チャンネル間で共有される1344x8 2重ポートメモリである。2番目はVC4チャンネル用いられる256x8 2重ポートメモリである。
それがVC4‐Nc応用のための単一FIFO意図を実行することをより簡単にするので、個別のメモリは、VC4チャンネル用に用いられる。単一FIFO意図は、4xOC−3/12モジュール内で受信フレームが構成されるシナリオをサポートするために、VC4−Nc(N>=2)場合に要求される。このケースで、CXCは、インターリーブのやり方のVCT_RXブロックへの異なるフレームで受信されるバイトを提供する。しかしながら、ANAから非・VCATデータを引くためにVCT_RX内で用いられる1倍カレンダは、VC4チャンネルがOC-48ライン上であたかもインターリーブされると予想する。与えられたVC4-Ncに対して単一FIFOの使用なしで、そのVC4-Nc用のタイムスロット(つまり、アイドル・スロット)の間CXCがバイトを提供しない時、これはデータ整列を壊させることができる。
全ての可能なVC4-Nc組み合わせ(特別なケースを作らないためにN=1を含む)を取り扱うために、VC4チャンネル用のメモリは16個のFIFO、各16バイト深さ、を実行するために用いられる。
両方のメモリへの書き込みはCXC要求により駆動される。VC4チャンネルに連合する高位タイムスロットに対して(つまり、CXCからのSTS_vt=O、STS_VC4=l)、ANAはVC4バッファメモリを用いる。CXCは、VC4-Nc(n>=1)内のスレーブSTSのマスターSTSチャンネルidを表示する。ANAは、どのVC4 FIFOにデータを書き込むかを決定するためにこれを用いることができる。
バッファメモリからの読み出しは、1倍カレンダによって順番に駆動されるDSQにより駆動される。VC4チャンネルと連合するタイムスロットに対して、ANAはDSQにより提供されるTIDからのVC4バッファメモリにどのFIFOを利用するかを決定することはできない。ANAは、これを決定するためにCXCにより提供される情報の道を保持する。ANAは、VC4がVC4-Ncのスレーブかマスターであるかを示すために各VC4に対して1ビットを記憶する。スレーブVC4に対して、マスターVC4のidをこれら状態ビットから決定できる。
尚、VCT_RXのVC4チャンネルは、チャンネルが基礎SDH受信側上でリセットから出される時間から少なくとも1カレンダ回転後にリセットから出されなければならない。これは、我々がVC4データ・バッファから読み出しを試みる前に、ANA記憶するVC4マスター状態ビットは設定されなければならないゆえに必要である。
ANAパイプラインは、オーバーフローを避けるために単一バイトに対して読み出し及び書き込み衝突に対するバイパスを提供する。ANAは、チャンネル毎にデータ有効ビットを持つために1344フロップを用いる。チャンネルがリセットされる時(RX_CH_SW_CFG_ENを設定)、そのデータ有効ビットはクリアされる。
16バイトVC4 FIFOに対する読み出し及び書き込みバイパスを提供する必要はない。
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に渡される。両方の場合で、データはLPIDとしてDSQ_ana_lpidを用いて適格化される。もしDSQ_ana_VLDが主張されず非・VCATデータ・バッファが空ならば、データはIFRに渡されない。
尚、非・VCATデータ・バッファのオーバーフローを防ぐために、我々は、VCT_RXブロックがリセットから出る時、全てのチャンネルは初期的リセットにある(RX_CH_SW_CFG_EN=1)ことを確実にする。
8 LCAS/VC制御器(LVC)
8.1 概要
図21を参照して、LVC602を例示し、それは配列モジュール(ALN)、構成(CFG)及び連鎖解除器606とインターフェースする。LVCは、CH状態メモリ、CHステータス・メモリ、SK状態メモリ、SKステータス・メモリ及びSOステータス・メモリを含む。LVCモジュールは、ALIG_RD、DSQ及びCFGモジュールとインターフェースする。LVCモジュールの基本機能は次のようである。
・ 順方向制御情報を抽出する(LCAS場合のSQとCTRL)
・ H4/K4バイトからLCAS逆方向制御情報を抽出する
・ LCAS制御パケットのCRC検査を実行する
・ 各LCAS VCGのためにDCRC設定/クリア機能を実行する
・ LCAS VCGsのGID検査の実行
・ 与えられたLCAS VCGのメンバによって受信されるGID値を捕捉する
・ 制御(つまり、連鎖)尾呼びDSQへ渡されるデータを同期化する
・ チャンネルの受理構成に基づいたLCASチャンネル・リセット及び失敗状態を取り扱う
・ シンクがLCASとして構成される間、非・LCASソースの検出
LVCモジュール
8.2 ALIG_RDへのインターフェース
ALIG_RDは次の構成と制御情報を各クロック周期のLVCにチャンネルidと共に提供する(つまり、TID)、有効データ(ペイロードだけでなくH4/K4も)バイトがその周期のそのチャンネルでLVCに渡すことができるかどうか。
8.2.1 構成情報
VCT_RXブロックの全ての構成メモリはCFRモジュール内で維持されるので、CFRモジュールは、LVC及び下流DSQがALIG_RDを介してLVVに必要である構成(RX_SHORT_FRAME_ENの例外で)に送る必要がある。与えられたチャンネルに対する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バッファ・フリッピングによってだけ必要とされる次のカレンダ情報は、それがそれらをDSQに送ることができるようにLVCに提供される必要がある。VLCは単にこれらのパラメータをなんの処理もしないで渡す。これは、これらがDSQに渡されるパラメータのみであるとはいえない。
・ RX_WID
・ RX_CH_VC4
・ RX_CH_STS_VTG_TYPE
上記カレンダ及び構成情報は、チャンネルが失敗状態にある時もLVCに提供される。
DSQは、受理メンバチャンネルが失敗又はリセット状態に入る時、現在の書き込みバッファを無効にする必要がある。そのようにするために、RX_SK_LPID構成パラメータは、少なくともメンバチャンネルがリセット状態に入る最初クロック周期内でDSQに渡される必要がある。ソフトウェアがチャンネルをリセットする時、そのチャンネルの構成を変更する前に、それはそのチャンネルのチャンネル・リセットを見るためにDSQを十分に長く待つべきである。
CFRは非・VCATチャンネル用の構成と失敗情報をALIG-RDに渡す、それはチャンネルがVCATチャンネルかどうか知らない。しかし、ALIG_WRは非・VCATチャンネル用のDRAMに決して書き込むことはないし、ALIG−RDはDRAMからどんなデータも決して読み出さないので、チャンネル失敗状態はそのようなチャンネルに決して設定されないことに留意。LVCに提供するためにこれらチャンネルに対してALIG_RDは単純に決して有効なデータを持たないが、それはまだカレンダ及びチャンネル構成を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
ALIG_RDは、現在のチャンネルが高位チャンネルであり、現在のバイトがそのチャンネル用のH4バイトであるときH4/K4表示ビットをVLCに設定する。高位チャンネル用の全ての他のバイトは、そのコンテンツをDRAMに書き込む前にSTS-1フレームのTOH、その他HO POH及びスタッフバイトがはぎ取られるので、ペイロードバイトである。
VC4/STS-3c形式VCGに対して、ALIG-RDはマスターSTS-1に対するH4バイトのみをLVCに渡す。
8.2.2.2 K4
ALIG_RDは、現在のチャンネルが低位チャンネルであり、現在のバイトがそのチャンネル用のK4バイトであるときH4/K4表示ビットをVLCに設定する。低位チャンネル用の全ての他のバイトは、そのコンテンツをDRAMに書き込む前にSTS-1フレームを地図化したVTのTOH、その他HO/LO POH及びスタッフバイトがはぎ取られるので、ペイロードバイトである。
8.3 DSQへのインターフェース
もしあれば、LVCは次のカレンダ、構成及び制御情報をペイロードバイトと共に各クロックの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
LCVは、RX_CH_STS_VTG_TYPE、RX_CH_VC4及びRX_WID情報を使用しないことに留意。それは、なんらの処理なしでそれらをDSQに単に渡す、それはそれらをバッファ・フリッピングに用いる。
13ビットRX_WID信号の構造は次のようである。
Figure 2008538456
8.3.2 制御情報
・ ペイロードデータ有効
・ チャンネル失敗状態
・ チャンネル・リセット状態
・ DNU
・ SQ
8.4 CFGへのインターフェース
LVCは、割り込みステータス設定要求をCFGに生成する。CFGは、ソフトウェアステータス読み出し(及びソースポート・ステータス・メモリの場合では書き込み)要求を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_GΓD_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_SO_LCAS_MST_CHG
・ RX_SO_LCAS_RS_ACK_CHG
8.5 状態及びステータス・パラメータ
全ての状態とステータス・メモリは2重ポート化されている。状態メモリはハードウェアのみによりアクセスされる。
ステータス・メモリの1ポートはCPUアクセス用に専用化される。尚、CPUはそれを初期化するためにソースポート・ステータス・メモリに書き込む必要がある。もしソフトウェアからのステータス読み出し要求がハードウェアからの書き込み要求と衝突すれば、書き込み要求から新しい値が読み出し結果として渡される。
ソースポート・ステータス・メモリの場合、もしソフトウェアからのステータス書き込みがハードウェアからのステータス書き込み要求と衝突すれば、ソフトウェア値はメモリに書き込まれるべきである。これは適切なソフトウェア行動で起きるべきではないが、ハードウェアが衝突を扱う準備ができているべきである。
ハードウェアは、16クロック周期毎に1度以上の同じチャンネル状態メモリ参入をアクセスしない。同様に、ハードウェアは、16クロック周期毎に1度以上の同じチャンネル状態メモリ参入に書き込みをしない。マイクロ構築設計は、必要であれば、この利点を取ることができる。
チャンネル・ステータス及びステータス・メモリ参入は、チャンネルがLCAS又は非・LCAS VCGに地図化されるかどうかに依存して異なる意図を有する。尚、リセット値は、パリティが両方の場合で同じであるようにである。実際に、ステータス・メモリに対してこのようにするために、ダミービットが用いられる。
ポート・レベル状態及びステータス・パラメータはLCASのみのために構成されるポートに適用できる。
これらのメモリがハードウェアにより用いられる方法についての詳細な記述が次の章で提供される。
8.5.1 チャンネル・ステータス
チャンネル・ステータス・パラメータは、1344x40 2重ポートメモリにグループ化され、高位及び低位チャンネルにより共有される。次の表はこのメモリの参入のLCAS及び非・LCASを示す。
8.5.1.1 チャンネル状態メモリ参入のLCAS意図
Figure 2008538456
註1:これらのパラメータは操作目的用の初期値を持つ必要がない。しかしながら、パリティ保護に対して、それらはゼロに設定される。
8.5.1.1 チャンネル状態メモリ参入の非・LCAS意図
Figure 2008538456
註1:これらのパラメータは操作目的用の初期値を持つ必要がない。しかしながら、パリティ保護に対して、それらはゼロに設定される。
8.5.2 チャンネル・ステータス
チャンネル・ステータス・パラメータは、1344x15 2重ポートメモリにグループ化され、高位及び低位チャンネルにより共有される。次の表はこのメモリの参入のLCAS及び非・LCASを示す。
8.5.2.1 チャンネル状態メモリ参入のLCAS意図
Figure 2008538456
LCAS VCGsの場合に、ソフトウェアはいつも、チャンネルで受信される連鎖及び制御フィールドを決定するためにチャンネル・ステータスから読み出す。これは、VCT_TXブロックと異なりLCAS制御情報変更はソフトウェアの制御下で起きないし、それはソフトウェアにはどのメモリが与えられたチャンネル/VCG用の新しい順方向制御情報をもっているかを最初に決定することが難しいので重要である。
8.5.2.2 チャンネル状態メモリ参入の非・LCAS意図
Figure 2008538456
8.5.3 シンクポート状態
シンクポート状態パラメータは128x3フロップを用いて実行される。
8.5.4 シンクポートステータス
Figure 2008538456
8.5.4 シンクポート状態
シンクポート・ステータス・パラメータは128x1フロップを用いて実行される。
Figure 2008538456
8.5.5 ソースポート状態
シンクポート・ステータス・パラメータは128x65 2重ポートメモリ内にグループ化される。以下の表がこのメモリの参入の構造を示す。
Figure 2008538456
註1:これらのパラメータは操作目的に対して初期値を持つ必要はない。ソースポートリセットはないがソフトウェアは初期値を書くことができる。
8.6 非・VCATチャンネル用の操作
非・VCATチャンネルのために、ALIG_RDはLVC用に有効データを決して持たない。しかしながら、シンクポートLPIDとチャンネルの受理構成は、チャンネル形式とカレンダ情報と共にLVCに渡される。
有効データがないので、LVCは、全てのステータス又はチャンネル又は連合したシンクポート及び(ダミー)ソースポートに対する状態更新操作を実行しない。
8.7 LCAS操作
aln_RD_lv_CH_SK_LCAS_EN信号が与えられたクロック周期で主張されるならば、LCAS操作は実行される。この章では、我々は、これが場合であり、状態及びステータス情報を更新するために状態の一部としてそれを明示的に示さないと仮定する。
我々は、LCAS操作の仕様を次の2つの領域に分割する。
・ 状態及びステータス情報の更新
・ 制御情報及びDSQへのペイロードデータの通過
我々はまたリセット/障害の取り扱いを詳細に記述する。
8.7.1 状態及ぶステータス更新
8.7.1.1 高位
表21−27は、高位チャンネル(我々は、ALIG_RD_STS_VTが間違いであると仮定する)用のLVCにより実行されるLCAS状態とステータス更新操作を指定する。
表21−27:LCAS状態/HOチャンネルのステータス更新操作
「以下表において、read:読み出し、write:書き込み、if:もし・・・であれば、and:及び、を意味する」
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
表21−27の更新操作仕様に基づいて、表28−30は高位チャンネルに対するLCAS操作に対する状態及びステータス・メモリを更新するためにメモリアクセス要求を要約する。尚、ALIG-RDからのあらゆる形式の要求に対して、ハードウェアは読み出しと書き込み両方に対してステータス・メモリをアクセスする必要はない。従って、ステータス・メモリの1ポートはCPUアクセス用に占有されることができる。ハードウェアがそれを更新しようと試みると同時にソフトウェアがステータス・メモり参入の読み出しを試みるならば、ハードウェアによって書き込まれる大略の値はハードウェアに渡されるべきである。
表28−30:LCAS状態/HOチャンネルのステータス更新操作用のメモリアクセスパターン
Figure 2008538456
Figure 2008538456
Figure 2008538456
尚、上記表は読み出し又は書き込みアクセスのいずれかがALIG_RDからの与えられた要求に対してステータス・メモリに起きることを示す。2重メモリの単一ポートを用いて設計がハードウェアで働くために、与えられたステータス・メモりへの読み出し又は書き込みアクセスは同じパイプライン段で起きる必要がある。エラー!基準ソース発見されず、はこの例を示す。
表31:LVCパイプライン例
Figure 2008538456
尚、チャンネル状態メモリは順方向又は逆方向情報が変化したかどうかについての情報を記憶している。従って、その更新はこれらのメモリが読み出されるまで待たなければならない。同時に、ステータス・メモリへの書き込むかどうかの決定は、状態メモリが読み出されCRC計算が実行されるまで待たなければならない。ステータス・メモリへの読み出しと書き込みアクセスは1列に並べられる必要があるので、それはパイプライン内のメモリアクセスの順序が上記のようでなければならないことを見ることができる。
8.7.1.1.1 CRC検査
VCGが初期化後又はVC障害からの回復後に配列されるとき、ALIG_RDはデータをいつもフレーム境界で開始しているVLCに渡す。しかしながら、そのフレームはLCAS制御パケットが始まる(つまり、HO_MFI1が8)又はH4バイトがそのフレームで受信された後にチャンネルがリセットから出るフレームに対応しない。もしそれがその場合なら、VLCはCRCを実行する前にLCAS制御パケットの開始を待つ必要がある。各チャンネルに対して、CH_LCAS_CRC_ALIGNED状態ビットはこの目的用に持ちいられる。
もしチャンネルが、それが見つかった最初のH4バイトがHO_MFI1=8ではなかったようなリセット/障害から出たならば、そのときチャンネルは、CH_ LCAS_CRC_ALIGNEDビットが設定される前にH4バイトがHO_MFI1=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バイトの高い部分に基づいてLCAS_CRC変数の次の値を計算する。もしALIG_RDが15のHO_MFI1値を示し、CH_LCAS_CRC_ALIGNEDがすでに設定されていれば、そのときLVCは更新済みLCAS_CRC値がゼロに等しいかどうかを見ることを検査する。もしそうでないなら、これはCRCエラーが起きたことを示す。どの場合でも、LVCは次のLCAS制御パケット用に用意するためにCH_LCAS_CRC状態変数をゼロに設定する。
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状態変数はゼロに初期化される。チャンネルがリセット/失敗状態に入るとき、これらの変数はうまくリセットされる。
8.7.1.1.2 強固なCRC検出検査(dCRC)
強固なCRC検出は動く窓(ウインドウ)を用いてVCGレベルでカウントされる。設定/クリア窓のサイズ及び設定/クリア閾値は全VCGs用に総括的に固定される。窓の長さはマルチ・フレームの数の点で指定される。各VCGに対して、オリオンはあらゆるそのメンバ上で検出される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_DCRCステータス・ビットが、SK_LCAS_DRC_WDW_CNTがRX_LCAS_DCRC_N1値に達した時設定されていなければ、そのときCRCカウントはLCAS_DCRC_K1値に対して検査される。もしCRCカウントが等しいか大きければ、そのときLCAS_DRCRステータス・ビットは設定される。
もしSK_LCAS_DCRCステータス・ビットが、SK_LCAS_DCRC_WDW_CNTがLCAS_DCRC_N2値に達した時設定されていれば、そのときSK_LCAS_CRC_CNTはLCAS_DCRC_K2値に対して検査される。もしSK_LCAS_CRC_CNTが等しいか大きければ、そのときLCAS_DRCRステータス・ビットは設定される。設定又はクリア窓のいずれかの終わりで、SK_LCAS_DRC_WDW_CNTとSK_LCAS_CRC_CNTはゼロにリセットされる。また、もしSK_LCAS_DCRCの値変わったならば、そのときSK_LCAS_DCRC_CHANGED割り込みステータス・ビットは設定される。
8.7.1.1.3 VCGのメンバのCRCエラー探査
LVCは、特別なVCGでdCRCが設定/クリアされることを示すことができる。しかしソフトウェアが全てのマルチ・フレームで全てのメンバチャネルのLCAS CRCステータスを見ない限り(そうすることは困難)、1人のメンバがエラーのほとんどを持っていた場合、又はエラーが一様に全メンバに配布された場合のような根底状態を判断することは不可能である。一度に1シンクVCGが、詳細に全部のそのメンバのCRCエラーをカウントするために選択され得る。
ソフトウェアは、メンバCRCエラーをカウントするため、又はそのポートidを総括LCAS_DCRC_CAP_PORTレジスタに書き込むことによりVCGを選択する。ソフトウェアはまたCRCエラーカウントが総括LCAS_DCRC_WSレジスタを用いて集められる窓(マルチ・フレームの)を指定する。カウントを始めるために、ソフトウェアはLCAS_DCRC_CAP_VLDビットをクリアする。
窓の期限切れをカウントするとき、オリオンはLCAS_DCRC_CAP_DONE割り込みステータス・ビットを設定する。64メンバチャンネルまでのCRCカウントは、連鎖番号を用いるアドレスである間接メモリを用いるLCAS_CRC_CNTレジスタから可能である。
尚、ハードウェアは、選択済みポートがリセット外かどうか、もしそうであれば、それがLCAS構成済みポートかどうかを検査しない。間違いでもしソフトウェアがこれを行えば、CRSカウント捕捉プロセスは開始しない。ソフトウェアは、回復のためにまともな値をLCAS_DCRC_CAP_PORTに書き込むことができる。
ハードウェアは、もしCRC捕捉能動的であれば(つまり、LCAS_DCRC_CAP_VLD=0)、LCAS_DCRC_CAP_PORT又はLCAS_DCRC_CAP_WSレジスタに書き込むべきでない。
8.7.1.1.4 順方向制御情報更新
ハードウェアは、現在のLCAS制御パケットに受信した連鎖と制御フィールドをそれぞれ_LCAS_NEXT_SQとCH_LCAS_NEXT_CTRL状態変数に書き込む。もしこの制御パケットが有効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ステータス・パラメータを用いる。従って、ペイロードバイトであるSOGバイトでは、LVCはチャンネル・ステータス・メモリを読み出さないが、代わりにそれは連鎖及び制御パラメータをこの目的用に状態メモリから使うために用いる。これは、SOF周期でチャンネル・ステータス・メモリに1アクセスしか要求しないことを確実にする。
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.1.5 逆方向制御情報更新
逆方向制御情報更新はRX_CH_LCAS_REV_EXT_ENパラメータが設定される場合のみ実行される。以下の記述では、我々はこれが場合であると仮定する。
同じHO_MFI2の同じソースポートに対する逆方向情報を運んでいるチャンネルで受信したMSTとRS_ACK値が全て同じであることを検査するいかなる試みもなされない。尚、このフィールドをヒットするいかなるエラーもCRC検査により検出されることが見込まれる。
この章の論議はチャンネルがリセット/失敗状態にない場合に適用する。もしチャンネルがリセット/失敗状態にあれば、ハードウェアは逆方向制御状態/ステータスを更新することを試みない、そしてもしあれば、それはチャンネルの連合ソースポートの変更に対して割り込みを生成しない。
ソフトウェアは、MSTとRS_ACK値を初期化するために入り口ポート・ステータス・メモリに書き込むことができる。通常、MSTビットはオールワン(MST=失敗)に初期化される。RS_ACKの初期値は、ソフトウェアはそれが何かを知るべきであることを除いて、重要ではない。
8.7.1.1.5.1 MST
与えられたチャンネルのLCAS制御パケットで受信されるMSTフィールドはそのチャンネル用のチャンネル状態メモリ参入に保存される。MSTフィールドの低い部分は、MFI2値に依存して、与えられたチャンネルで受信される、LVCはまたそれをこのチャンネルに連合するソースポートステータス内の対応するMSTビットと比較する。もし比較が相違を示せば、チャンネル用のCH_LCAS_MST_CHG状態ビットを設定する。
我々がサポートするチャンネルの最大数は、オリオンでは64に限定されるので、いくつかのLCAS制御パケットはどんな有用な情報をも運搬しない。これはMFI2に基づいて決定される。もしあれば、比較用に用いられる、後に更新されるソースポート・ステータス・メモリ参入からのMSTの塊(chunk)は次のように決定される。
If (ALIG_RD_LVC_MFI[8:7]==0){
MST_chunk_LSB_Pos={ALIG_RD_LVC_MFI[6:4],3b`0}
MST_chunk_MSB_Pos=MST_chunk_LSB_Position+7
MST_chunk=SO_LCAS_MST[MST_chunk_MSB_Pos:MST_chunk_LSB_Pos]}
//その他(Else)はMST比較と更新を実行する
LCAS制御パケットの終わりで、もし有効CRCがあり、CRCがOKでそして逆方向制御抽出がこのチャンネルで可能であるならば、LVCはこのチャンネルで受信されるMSTフィールドと連合したソースポートステータスの対応MSTビットを更新する。もしCH_LCAS_MST_CHGビットが設定されれば、LVCはまた、このチャンネルに連合するソースポートに対してSO_LCAS_MST_CHG割り込みを生成する。
8.7.1.1.5.2 RS_ACK
与えられたチャンネルでLCAS制御パケットに受信されるRS_ACKビットはそのチャンネル用のチャンネル状態メモリ参入で保存される。そのとき、LVCはまたそれをこのチャンネルと連合するソースポートステータスでRS_ACKビットと比較する。もし比較が相違を示すならば、チャンネル用のCH_ LCAS_RS_ACK_CHG状態ビットが設定される。
LCAS制御パケットの終わりで、もし有効CRCがあり、CRCがOKでそして逆方向制御抽出がこのチャンネルで可能であるならば、LVCはこのチャンネルで受信されるRS_ACKビットと連合したソースポートステータスのRS_ACKビットを更新する。もしLCAS_RS_ACK_CHGビットが設定されれば、LVCはまた、このチャンネルに連合するソースポートに対してSO_LCAS_RS_ACK_CHG割り込みを生成する。
8.7.1.1.6 GID検査
LVCが、シンクポートの全ての受理メンバチャンネルが同じLCAS制御パケットの同じGIDビットを受信したかどうかを検査する(つまり、各メンバが受信した最後の1つ)。異なるチャンネル上のGIDビットが一致しなければ、そのときLVCはSK_LCAS_GID_ERRステータス・スビットを設定し、もしステータス・ビットが値をかえればシンクポートGBD割り込み要求を生成する。このステータス・スビットに加えて、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ビットが受信されるとき、LVCはCRCがLCAS制御パケットで確認されるまでそれの上で動作できないので、それはチャンネル状態メモリに記憶される。
LCAS制御パケットの終わりで、もし有効CRCがあり、CRCがOKであるならば、LVCは最初にチャンネル受理されるかどうか(そしてまた、それは制御ワードとしてちょうどIDLEを受信しなかったか)を見るために検査する。もしそうであれば、そのときLVCはシンクレベルGID状態を見る。
もしSK_LCAS_GID_VLDが設定されていなければ、これはGID比較がこのシンクポートで実行されている最初であることをそれは意味する。その場合では、LVCはSK_LCAS_GID_VLD、コピーCH_LCAS_GIDをSK_LCAS_GIDに設定する、そしてSK_LCAS_GID_MFI2_LSBをH0_MFI2[0]に設定する。エラー検査はまだ実行されることができない。
もしSK_LCAS_GID_VLDが設定されれば、LVCはSK_LCAS_GID_MH2_LSBとHO_MF12[0]を比較する。それらが相違すれば、それは、我々がこのシンクポート用の新しいLCA制御パケット周期に移動した、そして現在のチャンネルがLCAS制御パケットの終わりである最初のチャンネルであることを意味する。この場合、LVCはSK_LCAS_GIDをCH_LCAS_GIDに設定し、SK_LCAS_GID_MFI2_LSBをH0_MFI2[0]に設定する。再び、エラー検査はまだ実行されることができない。
もしSK_LCAS_GID_VLDが設定され、SK_LCAS_GID_MFI2_LSBがHO_MFI2のLSBに等しいならば、それは、現在のチャンネルが、それが受信したGDIとシンクポートGDI(最初のチャンネルで受信する設定GID)を比較するシンクポートの最初のチャンネルでないことを意味する。この場合、LVCはCH_LCAS_GIDとSK_LCAS_GIDを比較する。もしそれらが異なれば、SK_LCAS_GID_ERRとSK_LCAS_GID_ERR_COPYは設定される。しかし、そうする前に、LVCはSK_LCAS_GID_ERRの新しい値とSK_LCAS_GID_ERR_COPYを比較する。もしそれらが異なれば、そのときLVCは連合シンクポート用のSK_LCAS_GID_ERR_CHG割り込みを生成する。
8.7.1.1.7 VCGのメンバのGID値の探査
LVCは、GIDエラーが特別なVCGで検出されるときを報告する。このレベルで、GIDエラーを起こす正確な状態を決定することは可能ではない。例えば、もし1メンバが他と異なる値を持っていたならば、それはそのメンバを確認することは可能ではない。一度に1シンクVCGは詳しくそのメンバのGID値を探索するために選択され得る。ハードウェアは、選択済みVCGの全メンバ用のGIDビットを捕捉し、それをソフトウェアに利用可能にする。
ソフトウェアは、捕捉メンバがそのポートidを総括LCAS_GID_CAP_PORTレジスタに書き込むVCGを選択する。GID捕捉は、総括LCAS_GID_CAP_VLDビットを設定することにより開始される。
次の制御パケット周期の間、ハードウェアは各メンバの受信済みGID値をその受信済み連鎖番号に基づいた総括LCAS_GID_CAPステータスレジスタに書き込む。オリオンではシンクVCGの最大サイズが64なので、2個の32ビットレジスタはこの目的のために用いられる。この後、ハードウェアはLCAS_GID_CAP_VLDビットをクリアし、LCAS_GID_CAP_DONE割り込みステータス・ビットを設定する。
尚、ハードウェアは、選択済みポートがリセット外であるか、もしそうであれば、それがLCAS構成済みポートであるかどうかを検査しない。もしソフトウェアが間違いでこれを行えば、GID捕捉プロセスは開始しない。ソフトウェアは、回復のためにまっとうな値をLCAS_GID_CAP_PORTに書き込むことができる。
ハードウェアは、GID探査能動的であれば(つまり、LCAS_GID_CAP_VLD=0)、LCAS_GBD_CAP_PORTレジスタに書き込む。
8.7.1.2 低位
以下の表はLCAS状態と低位チャンネル用のLVCによるステータス更新操作を指定する(我々はALIG_RD_STS_VTが真であると仮定する)。
表32−38:LOチャンネルのLCAS状態/ステータス更新操作
「以下表において、read:読み出し、 write:書き込み、if:もし…であれば、and:及び、を意味する」
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
Figure 2008538456
高位と低位チャンネル間の相違は、一度に4ビットの代わりに一度に1ビットLCAS制御パケットを受信することである。しかし、フィールドのいくつかが4ビット以上であるので、これはHOと比較してLO用に追加の複雑さを引き起こさない。
尚、アプローチは、更新操作が実行されるときの点で高位と低位チャンネルの双方に対して同じである。また、異なるパイプライン設計はLOチャンネルに必要ではない。
8.7.2 シンクポートリセット、チャンネル障害及びチャンネル・リセットの取り扱い
VCGリセット、チャンネル障害とチャンネル・リセットに対するLVC行動を議論することで、ALIG-RDとソフトウェア行動を見直すことに役立つ。
8.7.2.1 ALIG_RD及びソフトウェア行動
以下は、ソフトウェアと連携するALIG-RDの障害/リセットを要約する。
・ 受理メンバチャンネルの障害又はリセットはVCGに障害に引き起こし、そしてそれらが受理されるかどうかによらず全てのメンバに障害を引き起こす。
・ 非・受理メンバチャンネルの障害又はリセットは、VCGに障害に引き起こさない。失敗チャンネルのタイムスロットの間、ALIG_RDは有効データをLVCに渡さないがLVCにチャンネル失敗状態を示し続ける。非受理チャンネルは、自動的に障害から出ない。ソフトウェアは、厄介な障害ステータス・ビットをクリアしなければならない。
・ シンクポートリセットを開始するソフトウェアは、それらが受理されたかどうかによらず全てのチャンネルでチャンネル失敗(リセットではない)を引き起こす。尚、ALIG-RDモジュールは、シンクリセット状態を独立にLVCに渡す。
・ VCGに影響を与えるリセット及び障害状態の両方(つまり、ソフトウェアシンクポートリセット又は受理チャンネル障害/リセット)に対して、状態がそれを見るためにVCGの全メンバチャンネルに対して十分長く主張することを(CFRの障害取り扱い手段により)保証される。
・ もし受理メンバチャンネルが障害に入り、チャンネルが保護されなくなれば、ソフトウェアはそのチャンネルの受理ビットをクリアする、それで残りのメンバからのデータ、一度それらは再配列される、は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行動
チャンネルの受理構成ビットに依存して、LVCはALIG_RDからのそのチャンネルのリセット/障害表示に応答して次のように行動する。
・ LVCがチャンネル(受理又は非受理)のチャンネル障害表示を見るとき、それはチャンネルのCH_LCAS_CRC_ALIGNED、CH_LCAS_CRC_VLD and CH_LCAS_CRC状態変数をそれぞれゼロに設定する。
・ チャンネルをリセットするとき、LVCはチャンネルの状態及び状態変数をそれらの初期値にリセットする。
・ チャンネルが失敗又はリセット状態に残る又は連合シンクポートがリセット状態にある間、LVCはそのチャンネルと連合する状態/ステータス変数を更新するためにそのチャンネルのH4/K4バイトを処理しない。しかしながら、LVCはカレンダ情報、構成、チャンネルのリセット及び失敗状態をそのチャンネル用のクロック周期でDSQに渡す。
・ シンクポートがリセットされるとき、RX_SK_GID_VLD状態ビットとRX_SK_GID_ERRステータス・ビットはリセットされる。
チャンネル障害/リセット又はポートリセットはフレーム内の全てのポイントでLVCに示され得る。そのようなクロック周期の間、8.7.1章で論議される状態/ステータス更新操作の代わりに、ハードウェアは状態及びステータス変数を上述のように設定する。
8.7.3 制御及びペイロードデータをDSQに渡す
次の擬似コードは正式に制御及びペイロードデータをDSQに渡す方法を指定する。
If (〜ALIG_RD_LVC_CH_RST){
(ALIG_RD_LVC_CH_ACCEPTED){
If(〜ALIG_RD_LVC_DATA_VLD|ALIG_RD_LVC_H4_K4) {
LVC_DSQ_DNU=1}
その他{
If ((ALIG_RD_LVC_SOF==1)&&
((〜ALIG_RD_LVC_STS_VT&&(ALIG_RD_LVC_MFI[3:0]==8))

(ALIG_RD_LVC_STS)&&(ALIG_RD_LVC_MFI[4:0]==0))){
If (CCH_LCAS_NEXT_CTRL==NORM)|(CH_LCAS_NEXT_CTRL==EOS)){LVC_DSQ_DNU=0}
その他{
LVC_DSQ_DNU=1}
LVC_DSQ_CH_SQ=CH_LCAS_NEXT_SQ}
その他{
((CH_LCAS_CUR_CTRL==NORM)|(CH_LCAS_CUR_CTRL==EOS)){
LVC_DSQ_DNU=0}
その他{
LVC_DSQ_DNU=1}
LVC_DSQ_CH_SQ=CH_CUR_LCAS_SQ}}}}
その他{LVC_DSQ_DNU=1//ダミー、チャンネルがリセット内ゆえ
LVC_DSQ_CH_SQ=0//ダミー、チャンネルがリセット内ゆえ}
LVC_DSQ_CH_DATA=ALIG_RD_LVC_CH_DATA
LVC_,DSQ_CH_FAIL=ALIG_RD_LVC_CH_FAIL
LVC_DSCL-CH_RST=ALIG_RD_LVC_CH_RST
LVC_DSQ_SICRST=ALIG_RD_LVC_SK_RST
LVC_DSQ_CH_ACCEPTED=ALIG_RD_LVC_CH_ACCEPTED
LVC_DSQ_SK_LPID=ALIG_RD_LVC_SK_LPID
LVC_DSQ_WID=ALIG_RD_LVC_WID
LVC_DSQ_CH_STS_VT=ALIG_RD_LVC_CH_STS_VT
LVC_DSQ_CH_STS_VC4=ALIG_RD_LVC_CH_STS_VC4
LVC_DSQ_CH_STS_VTG_TYPE=ALIG_RD_LVC_CH_STS_VTG_TYPE
9章に記載のように、DSQモジュールの読み出し/書き込みバッファ・フリッピングはカレンダ回転に基づく、VCT_TXボックスのSQモジュールでもそれがなされる方法は同様。例えば、全てのSTS-1形式VCGsはカレンダがゼロによって生成されるSTS番号毎にそれらの読み出し/書き込みバッファをフリップする。これは、ALIG_RD読み出し管理手段はVCGがカレンダ回転の半ばで決して立ち止まらないことを確実にするので可能である。
しかし、バッファ・フリッピングに関して受信側と送信側間に1つの重要な相違がある。送信側バッファ・フリッピングについてはCXCによって引かれる現在のバイトがペイロードバイトであるときのみ行われる。受信側は状態としてペイロードバイトであるALIG_RDによって押される現在のバイトを使うことができない。これは、もしチャンネルが障害にあるならばそのチャンネル用のタイムスロットはペイロード又はH4バイトタイムスロットとして分類されることはできないからである。
この問題を扱うために、その周期のALIG_RDからの有効データであるかどうか、もしそうであればデータがペイロード又はH4/KバイトであるかどうかによらずLVCは要求を全てのクロック周期でDSQに送る。しかしながら、DNUビットは全ての場合に対して設定されるが、リセット/失敗にない及びそれらがCUR_CH_SQ状態変数を持たない受理チャンネル用のペイロード周期がDNUに設定する(又は、もしSOFが真であればNEXT_CH_SQ)。
DSQが非受理チャンネル用のCH_CUR_SQによって示される現在の書き込みバッファ位置のDNUビットを設定することを試みるとき、それはCH_CUR_SQの値が連合VCGの並べ替えブッファーのサイズより大きいことを見るかもしれない。そのような場合、DSQは静かに要求を無視する。もしこれが受理チャンネルに対して起きれば、これはプロトコル・エラーである。プロトコル・エラー取り扱いに対しては8.7.4章参照。
受理チャンネルが有効データを持たない又はデータがH4/K4バイトであるタイムスロットの間、LVCはDNUビットをDSQに設定する。LCAS制御パケットが始まるフレームの最初のペイロードバイトを除いて、受理チャンネルのペイロード・タイムスロットの間、LVCは、DNUに設定されるチャンネルがそのCH_CUR_CTRLステータス変数を持つときのみDNUビットを設定する、LVCはそのチャンネル用にDNUビットを設定する。
尚、LVCは受理構成とチャンネル失敗状態の両方をDSQに渡す。もしチャンネルが受理されないならば、そのときDSQは失敗状態を無視する。また、それはそのタイムスロット内のデータ・バッファを更新しない。これは、非受理チャンネルが受理チャンネルのそれと衝突する連鎖番号を持てば、これはVCGデータフローを失敗させないことを確実にする。上記状態がLCASプロトコルで合法的でない間、そうすることは不必要なデータの破壊を防ぐ。尚、非受理チャンネルに対して、DSQはカレンダ及びチャンネルのシンクポートをANAに渡す。
8.7.4 LCASプロトコル・エラー取り扱い
全LCASプロトコル・エラーその上CRCとGIDエラーはソフトウェアにより検出される。次が可能なLCASプロトコル・エラーの一覧である。
・ 無効制御ワード(例えば、非合法又は期待されない値)
・ 連鎖番号の範囲外(例えば、VCGサイズより大きい受理チャンネル)
・ 受理メンバの連鎖番号及び/又は制御ワードの無効な組み合わせ(例えば、連鎖番号の抜け又は重複、制御ワードと互換性のない連鎖番号、など)
8.8 非・LCAS操作
8.8.1 状態及びステータス更新
非・LCAS操作、つまりチャンネルが非・LCASシンクポートに地図化されることをLVCが決定するときには、LVCはH4/K4バイトで受信される制御ワード、GBD、MST及びRS_ACKフィールドを抽出し、処理する、それはいかなるCRC検査も実行しない。
LVCは、非・LCASチャンネル用のSQフィールドのみを抽出し、処理する。LVCはCH_PREV_SQ状態変数に抽出済みSQを記憶する。新しいSQ値が受信される時それを更新する前に、LVCは受信済み値とそれを比較するためにその状態変数の前の値を読み出す。
もし2個が同じであれば、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割り込みを生成する。
もし2個が異なれば、そのときLVCはCH_NL_VCAT_PREV_SQ_RPT_CNTをゼロに設定する。このカウンタは、またチャンネルがリセット/失敗状態にある時リセットされる。
尚、メモリアクセス要求は非・LCASチャンネルに同じではないが、同じパイプラインはLCASと非・LCASチャンネルに対して用いられる。非・LCASケースはLCASケースのサブセットである。それはそれほどメモリアクセスを要求しない(例えば、チャンネル・ステータス・メモリを読み出す必要はない)。
8.8.1.1 高位
以下の表は、高位チャンネル用LVCにより実行される非・LCAS状態及びステータス更新操作を指定する。
表40−42:高位チャンネルの非・LCAS VCAT状態/ステータス更新操作
「以下表において、read:読み出し、write:書き込み、if:もし…であれば、and:及び、を意味する」
Figure 2008538456
Figure 2008538456
Figure 2008538456
表40−42の更新操作仕様に基づいて、以下の表43−44は高位チャンネル用の非・LCAS VCAT操作のために状態及びステータス・メモリを更新するためのメモリアクセス要求を要約する。
表43−44:非・LCAS VCAT HOチャンネルの状態/ステータス更新用のメモリアクセスパターン
Figure 2008538456
Figure 2008538456
8.8.1.2 低位
以下の表は、低位チャンネル用LVCにより実行される非・LCAS VCAT状態及びステータス更新操作を指定する。
表45−47:低位チャンネルの非・LCAS VCAT状態/ステータス更新操作
「以下表において、read:読み出し、write:書き込み、if:もし…であれば、and:及び、を意味する」
Figure 2008538456
Figure 2008538456
Figure 2008538456
8.8.2 制御及びデータをDSQに渡す
非・LCASに対して、LVCはデータバイトをDSQに渡すとき構成期待連鎖番号を用いる。その様なチャンネルの期待連鎖番号はCFGブロックに保持され、そのチャンネルと連合する各クロック周期のLVCに送られる。
LCASと非・LCAS VCGs間のできる限り似せてデータ渡し設計を保つために、LVCは次の相違を除いて制御データとデータをDSQに渡すことに関して同じ方法で行動する。
・ ALIG_RDから受信される期待連鎖番号は、全ペイロードバイト用の連鎖番号としてDSQに渡される
・ DNUは非ペイロード・タイムスロット用のみに設定される、決してペイロード・タイムスロットの為ではない
・ 全チャンネルは受理メンバとして取り扱われる(つまり、ALIG_RD_LVC_CH_ACCEPTED信号は無視される)
次の擬似コードは正式にLVCが制御及びペイロードデータをDSQに渡す。
If(〜ALIG_RD_LVC_CH_RST){
If(〜ALIG_RD_LVC_DATA_VLD||ALIG_RD_LVC_H4_K4){
LVC_DSQ_DNU=1}
その他{
LVC_DSQ_DNU=0}
LVC_DSQ_CH_SQ=CH_NL_VCAT_EXP_SQ LVC_DSQ_CH_ACCEPTED=1}
その他{
LVC_DSQ_CH_SQ=0//ダミー リセット中チャンネル故
LVC_DSQ_DNU=1//ダミー リセット中チャンネル故
LVC_DSQ_CH_ACCEPTED=0//ダミー リセット中チャンネル故}
LVC_DSQ_CH_FAIL=ALIG_RD_LVC_CH_FAIL
LVC_DSQ_CH_RST=ALIG_RD_LVC_CH_RST
LVC_DSQ_SK_RST=ALIG_RD_LVC_SK_RST
LVC_DSQ_CH_DATA=ALIG_RD_LVC_CH_DATA
LVC_DSQ_SK_LPID=ALIG_RD_LVC_SK_LPID
LVC_DSQ_WID=ALIG_RD_LVC_WID
LVC_DSQ_CH_STS_VT=ALIG_RD_LVC_CH_STS_VT
LVC_DSQ_CH_STS_VC4=ALIG_RD_LVC_CH_STS_VC4
LVC_DSQ_CH_STS_VTG_TYPE=ALIG_RD_LVC_CH_STS_VTG_TYPE
8.9 非・LCASソースと相互動作するLCASとしてのシンク構成
LCASチャンネルがCRCと制御ワードがゼロであることを検出するとき、それはRX_CH_LCAS_NL_SRCステータス・ビットを設定する。これは非・LCASソースがLCASシンクと連合するネットワーク管理構成エラーにより起きることが見込まれる。この場合、ソフトウェアはVCGの全チャンネルでこのステータス・ビットセットを見るべきである。尚、これはいかなる他のLCAS操作も変更しない。
そして、ソフトウェアは非・LCASとしてそれらを再構成するためにチャンネルとシンクポートをリセットする。通常、非・LCAS VCGの各メンバに対して、期待連鎖番号はNMSにより構成される必要がある。しかしながら、この場合、それは受信済み連鎖番号を用いるためにソフトウェアに望まれる。そうするために、ソフトウェアは最初にメンバチャンネルに割り当てられるダミー期待連鎖番号を持つVCGを可能にする。そして、ソフトウェアは、ソフトウェアが受理連鎖番号ステータス・パラメータを介して用いている実際の連鎖番号を決定する。この時間の間、チャンネルの受理ビットはOFFすることができる(又は、連合IERポートを不能にする)。最後に、ソフトウェアは、前のステップの受理ステータス変数に基づいてチャンネルの期待連鎖番号を再構成する。
9 連鎖解除器(DSQ)
その入力データ経路で、DSQモジュールはLVCにインターフェースする。並べ替え後のDSQから出るペイロードデータバイトは、それらをIFRに渡す前に非・VCチャンネルからのペイロードデータで多重される。
DSQの機能は、それらのチャンネルのVC連鎖順序と一致するためにそのメンバチャンネルの受信スロット順序に従ってVCG用のネットワークから到着するペイロードバイトを並び替えることである。LCAS VCGsの場合では、並べ替えに使うVC連鎖番号がH4/K4オーバーヘッド・バイトから抽出される。非・LCAS VCGSの場合では、構成済み期待連鎖番号が用いられる。尚、DSQモジュールそれ自身は、VCGがLCASか非・LCASモードかどうか知らない。
VCGのメンバであるチャンネルで受信されるデータ(ペイロードとH4/K4の両方)バイトは、共通構成及びカレンダ発生器ブロックの固定1344x1カレンダを用いてDSQに押し込まれる。同じカレンダがまたそれから並べ替え済みデータを引き出すために用いられる。
VCGのメンバである与えられたチャンネルに割り当てられる全てのタイムスロットでは、引き出し要求が、バイトが押し込まれるかどうかにかかわらず常になされる。ペイロードバイトがDSQに押し込まれるとき、DSQはパケット側に渡す利用可能なバイトを持っていない。逆も同様に真である。
図22はDSQモジュールのインターフェースとその中に含まれるメモリを示す。連鎖解除器702は、LVC704、ANA多重装置706(入力フレーム(IFR)708を出力する)及びCFR710とインターフェースする。DSQは、並べ替えデータ・バッファメモリ、並べ替え状態メモリ及び並べ替えバッファ選択構成メモリを含む。
9.1 LVCへのインターフェース
DSQは、もしあれば、ペイロードバイトと共に各クロック周期のLVCから次のカレンダ、構成及び制御情報を受信する。
9.1.1 カレンダ及び構成情報
・ RX_CH_STS_VT
・ _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 CPRへのインターフェース
DSQは、次のイベントのためにCFRに割り込みステータス設定要求を生成する。
・ RX_SK_RBID_CHG_DONE
DSQに保持されるステータス変数はない。
9.4 CFGへのインターフェース
DSQは、各VCG用の次の構成パラメータを維持する。
・ RX_SK_RBBD_0
・ RX_SK_RBID_1
CFGモジュールは、DSQモジュールへのこれらパラメータ用の読み出しと書き込み要求を指揮する。
DSQは、いかなるステータス・パラメータも持っていない。
DSQは、それが割り込みをそれに生成する時はいつでも、それがLVCから受信するシンクポートリセット信号をCGFに渡す。尚、DSQはそれ自身の操作のためにシンクポートリセットを利用しない。
9.4.1 割り込みイベント
DSQは、CFGに次の割り込みイベントを生成する。
・ RX_CH_VCAT_SK_RBID_CHG_DONE
9.5 構成
次の構成パラメータが128x20フロップを用いて実行される。
RX_VCAT_SK_RBID_SELパラメータ。
Figure 2008538456
尚、VC可能シンクポートに地図化されるあらゆるチャンネルがリセットから出る前に、そのポート用の並べ替えバッファ構成パラメータは適切に構成される。
尚、DSQモジュールは、VCT_TX構築と互換性を持って留まるために、これらパラメータに対して能動的/シャドウ・アクセス・スキームを実行する。伴われる保留中の変更がない間、RX_VCAT_SK_RBID_SELパラメータは能動的コピーを確認する。ソフトウェアは能動的コピーのみを読み出すことができるべきである。ソフトウェアはシャドウ・コピーから読み出すことができ、又はシャドウ・コピーに書き込むことができる。変更がなされたとき、DSQモジュールは変更完了割り込みを生成する。
9.6 状態
次のシンクポート・レベル・パラメーターが128x11プロップを用いて実行される。
Figure 2008538456
9.7 並べ替えバッファ・データ・メモリ
並べ替えバッファメモリの構造は、データ幅が9ビットであるものを除いてVCT_TXブロックの並べ替えバッファメモリと同じである。1ビットはDNUビットとして用いられる。
9.8 ペイロード連鎖解除アルゴリズム
DSQにより用いられるアルゴリズムは、並べ替えバッファとカレンダ回転に基づくバッファ・フリッピングを含む、多局面のVCT_TXブロックに用いられるペイロード連鎖化アルゴリズムに似ている。しかしながら、同様にいくかの重要な相違がある。ペイロード連鎖化アルゴリズムは、並べ替えバッファへの書き込む及び各VCG用の次の読み出し位置の道筋を保持するとき、チャンネル連鎖番号を用いる。更に、DSQは、停滞(stall)、チャンネル障害及びDNU状態を取り扱う必要がある。
ALIG_RDは、データが到着するより早く読み込まれる理由だけでなく、存在するメンバより長い遅れを有する新規メンバを加える時存在するLCAS VCGのメンバからのデータフローが停滞させられる理由で停滞する。しかしながら、ALIG_RD設計はVCGが半ばで停滞しないことを保証する。言い換えれば、対応する形式(及びメンバチャンネル障害の不在の)のカレンダ回転の間、全てのVCGのメンバはデータをLVC/DSQを渡し、又は誰もデータを渡さない。これは、各VCGに書き込まれる多くのバイトの道筋を維持する必要性を軽減し、カレンダ回転がバッファ・フリッピングに用いられることを可能にする。
受理チャンネルの障害はDSQにより取り扱われる必要がある。そのような場合、DSQは、現在の書き込みバッファを無効化する。LVCは、非受理チャンネルの障害を隠すが、DNUビットを設定する。
8.7.3章で論議したように、LVCは、利用可能データがあるか、ペイロード又はH4/K4があるか又はチャンネルが失敗/リセット状態にあるかないかによらず全てのクロックのDSQにデータを渡す。しかしながら、その現在制御ワードがDNUに設定されない受理チャンネルからの有効ペイロードバイトである1つを除いて、LVCは全ての場合でDNUビットを設定する。この方法では、DSQはそれに書き込まれるバイトが本当に有効ペイロードバイトか否かを気に留める必要はない。
DSQはデータを処理しない又はリセット中又は非受理のいずれかであるチャンネル用のクロック周期のその状態を更新しない。尚、非・VCATチャンネルは、通常ゼロに設定されたそれらの受理構成ビットを有する。
9.9 並べ替えバッファ
各VCGは、VCGの現在サイズに基づいて4個のプールの1つから並べ替えバッファを割り当てられる。論理的に、並べ替えバッファは2個のバッファを含み、両方は各可能なVCG数用の1バイトスペースを有する。ペイロードバイトが1つのバッファに書き込まれる間、ペイロードバイト、もしどれか利用可能なら、他のバッファから読み出される。与えられたVCGのバッファはそのVCGの形式に対応するカレンダ回転ポイントで交換される。
VCT_TXブロックに用いられる同じ並べ替えデータバッファコアは、データ幅がDNUビットを収容するために9ビットであることを除いてDSQで使われることができる。このコアは、並べ替えバッファidと指定済み並べ替えバッファ内の相対位置を用いてアドレスされることができる論理2重ポートメモリとして4個の単一ポートメモリを提供する。
VCGのサイズがそれに割り当てられる現在の並べ替えバッファの容量を超えて増やす必要があるとき、VCGはより大きな並べ替えバッファに割り当てられる必要がある。VCT_TX構築の論議のように、プール容量はVCGsのあらゆる組み合わせを収容できるように必要な大きさにされる。
ペイロード連鎖解除アルゴリズムは、VCT_TXブロックで用いられるペイロード連鎖アルゴリズムであるように並べ替えバッファ変更を取り扱う。最初に、書き込みプロセスは、次の回の読み出しプロセスにより続く、VCG用の次のカレンダ回転の最初で新しい並べ替えバッファに切り替わる。
DSQブロックはそれ自身により並べ替えバッファ変更に同期する。ソフトウェアは並べ替えバッファidsを構成し、それらの1つをDSQは与えられたVCG用に用いる。VCGのどのメンバチャンネルのタイムスロットにおいても、それが利用されている現在の1つがソフトウェアにより構成される新しい値より異なることをDSQが見るとき、それは次の回のはじめで変更を開始する。その回の最後で、切換えがなされ、DSQは並べ替えバッファ完了変更シグナルをCFRブロックに提供する。
9.10 カレンダ回転に基づくバッファ・フリッピング
RX_WID信号のカレンダ発生器状態符号化は明示的にDSQに提供される、DSQは、それが対応する形式用のホイール位置がゼロになるのを見るとき、与えられた形式のVCGsのバッファをフリップする。
次の表は、異なるVCG形式用の総括バッファ・フリッピング状態を示す。
Figure 2008538456
各VCG形式に対して、DSQは総括WR_BUF_SEL状態変数を維持する。これら変数は上記状態に従ってフリップされる。
更に、各VCGはそれ自身のWR_BUF_SEL状態変数を維持する。VCGの最初のメンバチャンネルそれが対応する総括状態変数より異なるそのVCGのWR_BUF_SEL変数を見るとき、VCG状態変数がトグル切換えされる。これは、VCG状態変数が対応カレンダ回転間に1度のみトグル切換えされることを確実にする。
9.11 ANA用のTBD
DSQモジュールはDSQ_ANA_TID信号を生成する、それはカレンダ及びチャンネル形式情報に基づいてANAに供給する、それは次のようにLVCモジュールから受信する。
If (LVC_DSQ_STS_VC4){
LVC_DSQ_TID=ALIG_RD_LVC_wid[12:9]*84}
その他 If (〜LVC_DSQ__STS_vt){
DSQ_ANA_TID=1 vc_DSQ_wid[12:9]*84+LVC_DSQ_wid[8:7]*28}
その他 If (LVC_DSQ_STS_vtg_type){//vc−11
DSQ_ANA_rid=LVC_DSQ_wid[12:9]*84+LVC_DSQ_wid[8:7]*28+
LVC_DSQ_wid[6:4]*4+LVC_DSQ_wid[l:0]}
その他 {//VC−12
DSQ_ANA_TID=LVC_DSQ_wid[12:9]*84+LVC_DSQ_wid[8:7]*28+
LVC_DSQ_wid[6:4]*4 +1vc_DSQ_wid[3:2]}
DSQ_ANA_TID=LVC_DSQ_wid[12:9]*84+LVC_DSQ_wid[8:7]*28+LVC_DSQ_wid[6:4]*4+1vc_DSQ_wid[3:2]}
「vct_rx_uarch」文章は、これら式の最適化された実施を有する。
そのタイムスロットと連合するチャンネルがVCATシンクポートと連合するかどうか、及びチャンネルが失敗/リセット状態にあるかどうかによらずTED生成は全てのクロック周期でなされる。
尚、チャンネルが失敗/リセット状態にあるかどうかはチャンネル構造に影響を与えない。チャンネル構造情報は別々のSTSレベルレジスタ内に保持される。
9.12 擬似コード
// 総括書き込みバッファ選択更新検査
If (〜LVC_DSQ_CH_STS_VT){
If (LVC_DSQ_CH_VC4){
If (LVC_DSQ_wid[13:10]==0){
RX_VCAT_VC4_WR_BUF_SEL=〜RX_VCAT_VC4_WR_BUF_SEL}}
その他{
If (LVC_DSQ_wid[13:10]==−0){
RX_VCAT_VC3_WR_BUF_SEL=〜RX_VCAT_VC3_WR_BUF_SEL}}}
その他 {
If (LVC_DSQ_CH_vtg_type=0){//VT12
If (LVC_DSQ_wid[13:2]==0){
RX_VCAT_VC12_WR_BUF_SEL=〜RX_VCAT_VCl2_WR_BUF_SEL}}
その他{
If ((LVC_DSQ_wid[13:4]==0)&&(LVC_DSQ_wid[l:0]==0)){
_VCAT_VCll_WR_BUF_SEL=〜RX_VCAT_VCll_WR_BUF_SEL}}}
// リセット・チャンネルに対して又は受理されないものは
// データ及び更新状態を処理しない
If (~LVC_DSQ_CH_RSt&&LVC_CH_ACCEPTED) {
// このVCG用の構成メモリ参入を読み出す
{RbidO,Rbidl,Rbid_SEL}=DSQ_CFG_MEM[LVC_DSQ_CH_SK_LPID]
// このVCG用の構成メモリ参入を読み出す
{Wr_Buf_SEL
Buf0_VLD,
Buf1_VLD,
NEXT_RD_Pos,
Rbid_Wr_copy,
Rbid_RD_Copy}=DSQ_STATE_MEM[LVC_DSQ_CH_SK_LPID]
//我々がこのチャンネルのVCGをフリッピングしているかどうかを判定
フリップ=0
If (〜LVC_DSQ_CH_STS_VT){
If (LVC_DSQ_CH_VC4){
If (LVC_DSQ_wid[13:10]==0) {
フリップ=(RX_VCAT__VC4_WR_BUF_SEL!=Wr_Buf_SEL)}}
その他 {
If (LVC_DSQ_wid[13:10]==0){
フリップ=(RX_VCAT_VC3_WR_BUF_SEL !=Wr_Buf_SEL)}}}
その他{
If (LVC_.DSQ_CH_vtg_type==0){//VT12
If CLVC_DSQ_wid[13:2]==0){
= (RX_VCAT_VC12_WR_BUF_SEL!=Wr_Buf_SEL)}}
その他 {
If ((LVC_DSQ_wid[13:4]==0)&&(LVC_DSQ_wid[l:0]==0)){
フリップ=(RX_VCAT_VC1L_WR_BUF_SEL!=Wr_Buf_SEL)}}}
If (フリップ){
//バッファをフリップ
wr_Buf_SEL=〜wr_Buf_SEL
//最初バッファは有効
Wr_Buf_VLD=1
//次の読み出し位置はカレンダ回転の最初のゼロで
// 開始する
NEXT_RD_Pos=0
//書き込みと読み出し側により使用されるバッファコピーを更新
//もし変更が要求され割り込みが発生すれば、変更が
//なされるとき
If (Rbid_SEL!=Rbid_Wr_Copy){
Rbid_Wr_Copy=Rbid_SEL}
その他 If (Rbid_SEL!=Rbid_RD_copy){
Rbid_RD_Copy=Rbid_SEL
RX_SK_RBID_CHG_DONE割り込み生成
1vc_DSQ_CH_SK_LPID用に}}
//この周期で用いるために読み出しと書き込みバッファidsを決定
If (Rbid_wr_copy){
wr_Rbid=Rbidl}
その他 {
wr_Rbid=Rbid0}
If(Rbid_RD_copy){
RD_Rbid=Rbidl}
その他{
RD_Rbid=RbidO}
//受理チャンネルの失敗状態は現在の
//書き込みバッファを無効にさせる
If (LVC_DSQ_CH_FAIL){
wr_Buf_VLD−0}
//書き込みせよ
If (LVC_DSQ_CH_SQ<=GET_RB_CAPACITY(Wr_Rbid)){
WRITE_TO_RB(Wr_Rbid,
wr_Buf_SEL,
LVC_DSQ__CH_SQ,
LVC_DSQ_CH_DNU,
LVC_DSQ_CH_data)}
//読み出し
{RD_Data,RD__DNU}=READ_FROM__RB(RD_Rbid,
〜Wr_Buf_SEL,
NEXT_RD_Pos)
NEXT_RD_Pos++
//ANAへデータ及びデータ有効信号を生成
If (RD_Buf_VLD&&〜RD_DNU){
//送り出すために有効ペイロードデータを獲得
DSQ_ANA_data_VLD=1
DSQ_ANA_data=RD_Data}
その他{
DSQ_ANA_data_VLD=0}
//VCG状態を更新
If (Wr_Buf_SEL){
Buf1_VLD=Wr_Buf_VLD}
その他{
Buf0_VLD=Wr_Buf_VLD}
DSQ_STATE_MEM[LVC_DSQ_CH-_SK_LPID]={Wr_Buf_SEL,
Buf0_VLD,
Buf1_VLD,
NEXT_RD_Pos,
Rbid_wr_copy,
Rbid_RD_copy}}
その他{//チャンネル、リセット又は受理されていない
DSQ_ANA_data_VLD=0
DSQ_ANA_data=0//ダミー}
//非・VCATチャンネルに対してLPIDは渡される
DSQ_ANA_LPID=LVC__DSQ_CH_SK_LPID
//非・VCATチャンネル用のANAに対してTIDを生成
If (LVC_DSQ_STS_VT){
If (LVC_DSQ_STS_vtg_type){//VC−Il
DSQ_ANA_TID=LVC_DSQ_wid[12:9]*84+
LVC_DSQ_wid[8:7]*28+
LVC_DSQ_wid[6:4]*4+
LVC_DSQ_wid[l:0]}
その他{//VC−12
SQ_ANA_TID=1vc_DSQ_wid[12:9]*84+
1vc_DSQ_wid[8:7]*28+
1vc_DSQ_wid[6:4]*4+
1vc_DSQ_wid[3:2]}}
その他 If (1vc_DSQ_STS_VC4){
LVC_DSQ_TID=ALIG_RD_LVC_wid[12:9]*84}
その他{DSQ_ANA_TID=LVC_DSQ_wid[12:9]*84+LVC_DSQ_wid[8:7]*28}
概要
1.1 機能分解モデル
図23は、仮想連結送信(VCT_TX)ブロックの高レベル構成要素を示す。VCT_TX800はCPU802とインターフェースする、そしてCPUと通信するために構成モジュール804を含む。構成モジュールはまたペイロード連鎖器806(これは出力OFR808とインターフェースする)と通信する、そしてまた経路オーバーヘッド発生器810と通信する。構成モジュールと経路オーバーヘッド発生器の両方が総括マルチ・フレーム表示器(MFI)とグループ識別(GID)発生器モジュール812からの入力を受信する。ペイロード連鎖器と経路オーバーヘッド発生器は多重され、SPEバイト及び制御データの双方、そして出力は交差接続(CXC)に送られる。VCT_TXブロックのデータ経路は、CXCからの要求によって完全に駆動され、それはフレームカレンダーを発生する(VTスーパーフレーム周期を含む)。
CXCが与えられたクロック周期で有効な要求を作るとき、それは、行と列数のようなフレーム位置と同じくチャンネルidを指定する。この情報に基づいて、TX_VCATブロックは、CXCからの要求がペイロードバイト又はオーバーヘッド・バイトに対するかどうかを判断する、そして後の場合、特別なオーバーヘッド・バイトが生成される。ペイロード要求は経路オーバーヘッド発生器ブロックに送られる。これらのブロックからのデータ出力は、CXCのデータ入力に同期され、多重される。
VCAT機能をサポートするために、OFRから引き抜かれるペイロードバイトはペイロード連鎖器を介して通される。VCGのメンバチャンネルに割り当てられる連鎖番号が、チャンネルの伝送スロット順序と異なる順序を表すことができるので、OERから引き抜かれるペイロードデータバイトは、CXCに送る前に、バッファされる必要がある。選ばれる特別なペイロード連鎖化アルゴリズムは、ここに記述される。
経路オーバーヘッド発生器は、全の経路オーバーヘッド・バイトに対して応答を提供する。しかしながら、H4/Z7バイトを除いて、ゼロを発生する。経路オーバーヘッド発生器は、H4/Z7オーバーヘッド・バイトを発生するために総括MFI及びGIDカウンタ及びチャンネルごとの内部状態を用いる。
LCASをサポートするために、VCAT順方向制御情報及びLCAS逆方向制御情報を蓄積するメモリの2コピーが維持される。そのメンバ資格を修正する又はLCAS逆方向制御情報を更新するためにソフトウェアが特別のLCAS VCGの構成を変更する要求を作ったとき、総括MFIカウンタは、構成変更をLCAS制御パケットの開始に対応しているフレーム境界に同期させるために用いられる。
エラー!基準ソース発見されず、はパケット・データを運ぶが仮想連結されていないチャンネル用データ経路を示さない。しかしながら、そのようなチャンネルのデータ・フロー・プロセスは、行動仕様に記述される。
2 ペイロード連鎖化及び連鎖解除化アルゴリズム
本発明の実施の形態の例によれば、ペイロード連鎖化アルゴリズムの実行のためのシステムと方法は、VCGのメンバチャンネルの伝送スロット順序に従ってパケット側から引き抜かれたバイトの再並び替えをすることである。また、それは動的VCGメンバ資格変更を取り扱うために構成される。VCT_TXブロックにより使用されるペイロード連鎖化アルゴリズム異なるレベルで記述される。1つのレベルで、単一VCG用の基本基本並び替えアルゴリズムが記述される。並び替えアルゴリズムはLCASサポートのためにVCGメンバ資格変更を取り扱うためにダブル・バッファを用いる。
基本基本並び替えアルゴリズムは、VCT_RXブロックの連鎖解除器モジュールの設計に再利用でき、それはこれらの2ブロックの同じ並び替えコア論理に用いることが可能であることを指摘しておく。
次に、我々は、アルゴリズムがVCT_TXブロックの背景の複数VCGsに対していかに働くかを記述する。ここで、重要な観察は、異なる形式(つまり、メンバチャンネルの形式)のVCGsが異なるカレンダ回転周期を持つことである。例えば、無効クロック周期を無視すること、STS-1形式VCGが48クロックの回転カレンダを持つているのに対してVT−1.5/TU−11形式VCGは1344クロックの回転カレンダを持つている。VCGの並び替えバッファが読み出しと書き込みプロセスで取り替えられるとき、ペイロード連鎖化アルゴリズムが制御のためにカレンダ回転を用いるので、VCGのカレンダ回転周期の概念はVCT_TXブロック内で重要である。
最後に、我々は、与えられたバッファ対(ペア)をサポートする最大VCGサイズを基にするVCGバッファ対プールの概念を導入する。これは、バッファメモリの量を減らすための最適化技術である。それは、VCGメンバ資格変更により異なるプールからバッファ対の間を切り替えるために、並び替えアルゴリズムへの拡張を必要とする。
2.1 仮想連結グループ(VCG)用の並べ替えアルゴリズム
エラー!基準ソース発見されず。図24は、並び替えアルゴリズムがどのように各VCGに対してバッファ対を用いるかを示す。バッファのそれぞれのバイト容量は、VCGのメンバ数に等しいか又は大きい。読み出しと書き込みプロセスは、これら2個のバッファで交互に入れ替わる。書き込みプロセスが1個のバッファに書き込んでいる間、読み出しプロセスは他のバッファから読み出している。尚、両プロセッスはCXC要求により駆動される。
書き込みプロセスは、各VCGのためにNEXT_WR_POS状態変数を維持する。最初に、この変数はゼロに設定される。CXCが与えられたチャンネルに対してペイロードバイトを要求するとき、書き込みプロセスは、チャンネルのTX_PL_LPIDパラメータを用いるOFRからバイトを抜き出し、それを、NEXT_WR_POS状態変数を利用する索引をつけた場所でそのVCGの現在の書き込みバッファに記憶する。
VCGの次のNEXT_WR_POS状態変数は、バイトがVCGの現在の書き込みバッファに書き込まれるごとに1増加する。VCGに書き込まれたバイト数がVCGのサイズと同じになった後、この変数は再びゼロに設定され、そしてバッファが交換された後これへの次の書き込みが起きる。
CXCが与えられたチャンネルにペイロードバイトを要求するとき、読み出しプロセスは、そのチャンネルの構成済みVCAT連鎖番号に対応する場所でVCGの現在の読み出しバッファからバイトを荷積みする。書き込みと大いに異なり、連続読み出しは現在の読み出しバッファ内の連続した場所をアクセスしない。
並べ替えアルゴリズムはNCGのサイズを知らない、それゆえ読み出し及び書き込みプロセス間のVCGバッファを交換するときそれ自身によって判断できない。これは別々に追跡され、そしてバッファは交換され、そしてNEXT_WR_POS変数は外部エージェントの制御下でリセットされると仮定する。VCT_TXブロックの場合、与えられた形式のVCGの全メンバがその形式用に1カレンダ回転に1バイトを書き込むので、バッファは交換でき、そして全VCGsのNEXT_WR_POS状態変数は、その形式のためにカレンダ回転の最初か最後のいずれかでリセットできる。
尚、並べ替えアルゴリズムは、書き込みが終了した時間によって、前の回からの読み出しが同様に終わると仮定する。読み出しと書き込みの双方が同じカレンダから駆動されるので、これはVCT_TXブロックに対して明らかに真である。尚、IERは止まらずにクロック毎に新しい要求を受け取るので、この仮定はVCT_RXブロックに対してもまた保持される。VCT_RXブロックは、書き込みの停止の扱いを必要とするが、これは並べ替えアルゴリズムの外で取り扱われる。
2.1.1 動的メンバ資格変更
動的VCGメンバ資格変更を取り扱うために、それが使用する構成値に関する書き込みプロセスの後ろで、読み出しプロセスは1回転カレンダを動かす。構成変更は、LCAS制御パケットの始まりに対応するフレーム境界でただ影響を取ることができる。それで、与えられた形式のVCGに対して、その形式用のLCAS制御パケットの始めと一致するフレーム内で一致するその形式の最初の回転カレンダないで、書き込みプロセスは新しい構成を使用し得る(どのチャンネルがこのVCGのメンバであるか、そして要求しているデータであるかに関して;つまりチャンネルの制御ワードがNORM/EOSである)それに反して、読み出しプロセスは前の構成を使用する(どのチャンネルがこのVCGのメンバであるか、そして要求しているデータであるか、そしてそれらの連鎖番号)。次のカレンダ回転で、読み出しプロセスは同様に新しい構成を使用する。
VCGの初期化の間、メンバチャンネルがリセットから持ち出される前に、我々はソフトウェアがそのチャンネル用の制御ワードの両方のコピーをIDLEに設定すると仮定する。従って、初期化の間読み出し及び書き込みプロセスのいずれも並べ替えバッファをアクセスしない。その後、いくつか又は全のメンバチャンネルの制御ワード構成がNORM/EOSに設定されるとき、書き込みプロセスは最初に構成変更を見て書き込み始める、1回前に読み出しプロセスは構成変更を見て読み出しを始める。
次の章で提供される例が、動的構成変更下でのアルゴリズム操作を例示する。簡略化のために、我々は、例中のSTS-3フレーム内の単一高位VCGを考察する。
2.1.2 並べ替えアルゴリズム操作例
この章で提供される例では、我々は最初2メンバを有する単一VCGを考慮する。例は、各タイムスロットで、データバイトOERから抜き出しバッファに書き込む、データバイトはバッファから読み出しCXCに送る、及びバッファの内容を示す。
表51−52:初期メンバ例
Figure 2008538456
表52:メンバ追加例
Figure 2008538456
エラー!基準ソース発見されず、にて例示される最初の例は高位マルチ・フレーム(つまり、STS-1 0の最初のペイロードバイト)の始まりに対応するために予想される0回から始まるアルゴリズム操作を示す。尚、VCG構成は、−1と数字が付けられる前の回(つまり、STS-1 2の最後のペイロードバイト)に能動的メンバがいないところから2人の能動的メンバを持つように修正される。
表53で提供される次の例は、新規メンバがカレンダ回転12,384で始まる次のマルチ・フレームでVCGに加算されるときのアルゴリズム操作を示す。尚、読み出しプロセスは書き込みプロセスの後ろで1回遅れるので、構成はマルチ・フレーム境界(つまり、カレンダー回転12,384)の終わりで変更される。我々は、新しいメンバ追加を収容するためにVCGバッファのサイズが少なくとも3バイトであると仮定する。
表53で提供する最後の例は、連鎖番号0のメンバがカレンダ回転24,768で始まる次のマルチ・フレームでVCGから取り除かれる時のアルゴリズム操作を示す。
表53:メンバ除去例
Figure 2008538456
2.1.3 LCAS一時メンバ除去取り扱い
LCASプロトコルは、メンバが一時的に取り除かれることを示すためにDNU制御ワードを用いる。チャンネルがDSU状態にあるとき、それはペイロードデータを運送しない。書き込み側で、従ってハードウェアはそのチャンネルに対するOFRからペイロードデータを抜き取らない。読み出し側で、それはゼロを送る。
しかしながら、1又は複数のメンバがDNU状態にある時LCAS制御パケットで運ばれる連鎖番号は変わらない。もし、我々が読み出しプロセスを制御するためにLCAS制御パケット内に送られるべき連鎖番号を用いたとすれば、VCGの1又は複数のメンバがDNU状態にある時、並べ替えアルゴリズムは正しく動作しない。従って、ハードウェアは、一時メンバ削除を取り扱うためにペイロード及びオーバーヘッド用の別の連鎖番号を用いる。
表54は、永久に削除する代わりに連鎖1のメンバがDNUに行くとき、アルゴリズムがどのように操作するかを示す。12,384回が、このメンバ用のDNUを示す最初のLCAS制御パケットをそのH4バイトが始めるフレーム内の最初のカレンダ回転に対応することを仮定する。1カレンダ少ない16フレームに対して、つまり、24,767回まで、ペイロード構成は変化しない。そのカレンダ回転で、ペイロード構成は変化する。
表54:一時メンバ除去例
Figure 2008538456
尚、ペイロード並べ替えに用いる連鎖番号、TX_VCAT_PL_SQと呼ぶ、はあたかもメンバが取り除かれたように構成される、それに対してオーバーヘッド内で用いる連鎖番号、TX_LCAS_OH_SQと呼ぶ、は変化しない。
2.2 複数VCGsを考慮するペイロード連鎖アルゴリズム
エラー!基準ソース発見されず、は、どのようにペイロード連鎖アルゴリズムが異なる形式の4VCGsで動作するかを示す。バッファAとBは並べ替えアルゴリズムのダブル・バッファ化スキームをサポートするために用いる2コピーデータ・バッファメモリを表現する。それは、全てのチャンネル形式に対するカレンダ発生はクロック0で始まったと仮定する。
クロック周期の数(有効)に関してこれらVCGsのカレンダ回転周期は、以下の表に示される。
Figure 2008538456
異なるチャンネル形式のカレンダ回転周期間の差異のために、各VCG形式に対して我々は、どの並び替えバッファメモリが書き込みに使われるべきか及びどのコピーが読み出し用か、の跡をつける必要がある。カレンダが与えられたチャンネル形式に対して回転する時、その形式の全てのVCGsはそれらの並び替えバッファメモリの書き込み/読み出し図を切り替える。図25は、異なる形式のVCGsを有するペイロード連鎖アルゴリズムを例示する。
尚、1個のVCGのみが与えられたクロック内でバッファメモリから読み出し及び書き込みするように読み出し及び書き込みプロセス・パイプラインを配列することによって、データ・バッファ用の単一ポートメモリを使うことが可能である。
2.3 並び替えバッファ・プール
並び替えバッファは、それらの容量に基づいた次のプールにグループ化される。
64バイト・プール
32バイト・プール
16バイト・プール
8バイト・プール
ソフトウェアによってVCGをそのVCGのサイズに基づいた特別のプールから並べ替えバッファに割り当てる。例えば、もし後でこのVCGのサイズが16メンバ以上増やす必要があれば、そのとき、VCGは、VCGはより大きなバッファに地図化する必要がある。そのうえ、もしVCGのサイズが将来8以下に減じられるならば、VCGは、それを必要とする他のVCGに利用可能な16バイトバッファ対を作るために8バイトバッファ対に切り替えられる。バッファ対の間の切換え機構は次の章で議論される。
仮想連結する必要のあるチャンネルの総数を与えれば、我々は、各プールがVCG組み合わせに制限を与えないために持つ必要があるバッファ対の数を決定できる。1344チャンネルに対して、我々がこれをする方法は次のようである。
1. 33メンバVCGsの最大数は40である。これらVCGsに利用できるプールは64バイトプールであるので、64バイトバッファ・プールの容量は40でなければならない。
2. 17メンバVCGsの最大数は79である。我々は、それらに対して64バイト又は32バイトプールのいずれかを使うことができる。もし、我々がそれらに対して64バイトプール内で全てのバッファ対を使ったとすれば、我々は64バイトプール内で79−40=39バッファ対を必要とする。
3. 9メンバVCGsの最大数は149である。それらに対して64バイト、32バイト又は16バイトプールを使うことができる。もし、我々がそれらに対して64バイト、32バイト又は16バイトプール内で全てのバッファ対を使ったとすれば、我々は16バイトプール内で149−39=70バッファ対を必要とする。
4. 8メンバVCGsの最大数は168である。それらに対して64バイト、32バイト又は16バイトプールを使うことができる。もし、我々がそれらに対して64バイト、32バイト又は16バイトプール内で全てのバッファ対を使ったとすれば、我々は16バイトプール内で168−70−39−40=19バッファ対を必要とする。
要約、1344チャンネルをサポートするための各プールの要求容量は次のようである。
Figure 2008538456
バッファ・プール最適化で要求されるバッファバイトの総数は、10160バイトである。この最適化なしで、つまり、各VCGが64メンバを有することができると仮定すると、要求バイトは32768バイトである。バッファプールサポートに含まれるメモリ構造的非能率を無視して、これは約69%の節約を表現する。
尚、並べ替えバッファ(168)の総数は、サポートするに必要である(128)VCGsの数より大きい、全てのVCGsが利用され、それらの1つも8メンバ以上を持たない場合に対しては関係がない。
2.3.1 並べ替えバッファ切換え
並べ替えバッファの1形式から他への切換えは、カレンダ境界で発生する。読み出しと書き込みプロセスは、とにかくフレーム境界で並べ替えバッファの2個のバッファ間で交互に切り替わるので、並べ替えバッファの1形式から他への切換えは、動的メンバ変更が取り扱われると同じ方法で取り扱われることができる;つまり、読み出しを見ることにより、書き込みプロセス後構成が1カレンダ変更。並べ替えバッファ切換えに対して、変更するものはバッファ地図化構成を並べ替えるためのVCGである。
エラー!基準ソース発見されず、は、並べ替えバッファ切換えがどのように達成されるかを示す。カレンダN回のより小さいバッファ対はVCGによって用いられる現在並べ替えバッファである。N+1回で、書き込みプロセスは新しいバッファ対を用いるが、読み出しプロセスは旧バッファ対から読み出す。N+2回から始まって、VCGは、読み出し及び書き込みプロセス双方に対して新しいより大きいバッファ対に切り替える、そして旧バッファ対はプールに戻されることができる。
ソフトウェアは、VCGによって利用されるべき並べ替えバッファを指定する必要がある、そして影響を受けたVCGに対する要求された変更のハードウェアへの表示を提供する。一度ハードウェアが表示を見ると、それは、最初に次のカレンダ境界でVCG用の書き込みプロセスを新バッファに切り替える。次のカレンダ境界で、同様に読み出しプロセスは新バッファに切り替える。
図26は、バッファ対間の切換えの例を例示する。尚、並べ替えバッファ切換えは全てのカレンダ境界で生じることができる、それゆえそれはマルチ・フレーム境界で生じるメンバ資格構成変更から分離することができる。例えば、VCGに新メンバを追加する前に、ソフトウェアは最初にVCGを新しいバッファ又はより大きい容量に切り替えることができ、そして新メンバをVCGに加えることができる。メンバが取り除かれる時、取り除き操作が完了した後、ソフトウェアはVCGをより小さなバッファ対に切換え得る。
一方、メンバ資格変更がなされるのと同じ時間で、並べ替えバッファ切換えがVCT_TXブロックでなされないという理由はない。それらを組み合わせることにより、VCAT順方向構成を作るために用いられる同じソフトウェア構成変更機構が変化する。我々は、これは3章に記述する構成モデルの場合であると予想する。
2.3.2 並べ替えバッファ切換え例
表57は、バッファ切り替え中に2個の並べ替えバッファがどのように使われるかの例を提供する。この例では、VCGは2バイト容量を持つ並べ替えバッファ1でカレンダ0回内で初期化される。2回目の開始で、VCGは3バイト容量を持つ並べ替えバッファ2に切り替わる。4回目の終わりで、切換え操作は完了し、並べ替えバッファ1は別のVCGによって利用可能になる。
表57:より大きいバッファ対に切り替える例
Figure 2008538456
3 構成モデル
いくつかの構成パラメータはチャンネル・レベルで指定される、それに対して他はVCGレベルで指定される。チャンネル・レベル・パラメータはTX_CHを前に付ける、そしてVCGレベル・パラメーターは、それらが順方向又は逆方向を参照するかに依存してそれぞれTX_SO又はTX_SKを前に付ける。
TX_CH_SO_LPIDパラメータを除いて、全ての構成パラメータはVCGのメンバであるチャンネルに応用可能である。これらパラメータのいくつかはLCAS VCGsにのみ適用される、それに対して他のパラメータは非・LCAS及びLCAS VCGsの双方に適用する。LCAS VCGsにのみ適用されるパラメータは、パラメータ名のLCASを用いることにより区別される。LCAS及び非・LCAS VCGsの双方に適用するパラメータは、パラメータ名のVCATを用いることにより区別される。
送信論理ポートのペイロード形式を制御する構成パラメータ、つまり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に変更されるべきである(そして変更は完了)。
ソフトウェアは、独自に4レベルの1つで構成変更を引き起こすことができる。
・ VCGレベルVCAT/LCAS順方向構成
・ VCGレベルLCAS逆方向MST及びRS_ACK構成
・ チャンネル・レベルLCAS逆方向挿入シンクポート及び挿入可能構成
・ チャンネル・レベルソースポート地図化構成
VCG順方向又は逆方向レベルでの構成パラメータ・マット変更は、LCASをサポートするために動的VCG構成をサポートしそしてまた非・LCAS VCGsの場合に順序良くVCGを持ち上げ及びシャットダウンするために、2個のコピーを必要とする。
尚、たとえいつかの動的構成パラメータ(例えば、TX_VCAT_CTRL)がチャンネル・レベルで指定されるとしても、それらはVCGレベルで変更される。これは、複数メンバチャンネルに伴う構成変更が同時に影響を取ることを可能にする。
次の表は、構成パラメータの一覧、それらの静的/動的特性及びどのレベルでそれらが変更されるかを提供する。
Figure 2008538456
註1:順序良くVCG構成変更を保証するために、たとえTX_CH_SO_LPIDパラメータが動的である場合でも、もし現在、チャンネルがVCGに割り当てられているならば、そのとき、そのチャンネルのTX_CH_VCAT_CTRLパラメータは最初にIDLEに変更され、そして順方向変更はそのTX_CH_SO_LPIDパラメータを変更する前に完了する。
2個のコピーを有する構成パラメータに対して、同じ形式の構成変更制御機構が、順方向又は逆方向VCGレベル変更のいずれかに用いられる。ソフトウェアは、ハードウェアが利用する構成のコピーが選択ビットを用いるかどうかを指定する。ハードウェアは、変更を適切なフレーム境界に同期し、割り込みにより変更が完了した時ソフトウェアに通知することができる。
前の構成から新しい構成に切り替わる間、ソフトウェアは、ハードウェアが前の構成を使っているとして、VCGの前の構成を変更すべきでない。逆方向又は順方向構成が変更されているか及びVCGが可能にされるLCASかどうかであるかどうかに切換え時間量は依存する。
3.1 構成メモリ
静的構成パラメータ及び動的構成変更制御パラメータを記憶するメモリは、同時にハードウェアとソフトウェア・アクセスをサポートするために2重ポートでなければならない。
また、動的構成パラメータを記憶するメモリは、ソフトウェアが前の変更が進行中である間に新しい変更を作るために待機すべき時間量を減らすために2重ポートでなければならない。これは、構成切換えプロセスの期間、構成情報の両コピーが低位LCAS VCGに対して32msまで利用可能である必要がある理由からである。
チャンネル形式構成は、CXCが各要求を有するこの情報を提供するので、VCT_TXブロックで要求されない。
構成メモリのエラー検出に用いられるパリティ・ビットは示されていない。
尚、VCT_TXブロック用の総括リセット・ビットは、VCT_TXブロックの外側で保持される。
3.1.1 総括構成
Figure 2008538456
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
次の構成パラメータが、高及び低位チャンネルによって共有される1344x9 2重ポートメモリにグループ化される。
Figure 2008538456
3.1.2.2 TX_CH_VCAT_FWD_CFG_MEM_0/1
次の構成パラメータが、高及び低位チャンネルによって共有される1344x16 2重ポートメモリにグループ化される。
Figure 2008538456
動的VCG構成変更をサポートするためにこのメモリの2個のコピーがある。ソフトウェアは、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_TYPE_CFG_MEM
次の構成パラメータが、2重ポート128x2メモリにグループ化される。
Figure 2008538456
このポートに地図化されるリセット外のチャンネルがある間、これらパラメータは変更されない。
3.1.3.2 TX_SO_VCAT_RBID_CFG_MEM_0/1
次の構成パラメータが、2重ポート128x10メモリにグループ化される。
Figure 2008538456
動的VCG構成変更をサポートするためにこのメモリの2個のコピーがある。ソフトウェアは、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
次の構成パラメータが、2重ポート128x2メモリにグループ化される。
Figure 2008538456
3.1.3.3 SK_LCAS_REV_SEL _CFG_MEM
次の構成パラメータ、2重ポート128x2メモリにグループ化される。
Figure 2008538456
3.1.3.3 SK_LCAS_REV_CFG_MEM_0/1
次の構成パラメータが、2重ポート128x65メモリにグループ化される。
Figure 2008538456
動的VCG構成変更をサポートするためにこのメモリの2個のコピーがある。ソフトウェアは、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
次の構成パラメータが、2重ポート128x1メモリにグループ化される。
Figure 2008538456
4.1.1.2 TX_SK_LCAS_REV_CHG_DONE_MEM
次の構成パラメータが、2重ポート128x1メモリにグループ化される。
Figure 2008538456
5 状態モデル
診断モードの可能性を除外すると、ステータス・メモリはソフトウェアによってアクセスできることを必要としない。
ペイロード連鎖バッファを除く全てのステートメモリのエラー検出用のパリティ・ビットは、この章においては示されない。
5.1 状態メモリ
5.1.1 チャンネル毎の状態メモリ
5.1.1.1 TX_CH_LCAS_STATE_MEM
次の構成パラメータが、高位及び低位チャンネルによって共有される2重ポート1344x12メモリにグループ化される
Figure 2008538456
5.1.2 VCG毎の状態メモリ
5.1.2.1 TX_SO_VCAT_STATE_MEM
次の構成パラメータが、2重ポート128x10メモリにグループ化される。
Figure 2008538456
上述のメモリはVCG毎の書き込みバッファメモリ選択状態がVCG毎に保持されると仮定するが、この目的に対して各VCG形式用の総括変数を用いることが可能である。
5.1.2.2 TX_SK_LCAS_STATE_MEM
次の構成パラメータが、2重ポート128x3メモリにグループ化される。
Figure 2008538456
5.2 総括状態変数
Figure 2008538456
5.3 ペイロード並べ替えバッファメモリ
5.3.1 PL_REORDER_BUF_MEM_0/1
並べ替えアルゴリズムにより用いられるダブルバッファリングスキームを実行するためにペイロード並べ替えバッファメモリ(又は複数メモリ)の2個のコピーがある。1個だけのVCが1クロック内のバッファメモリから読み出し及び書き込みするように読み出しと書き込みプロセス・パイプラインを配列することにより、単一ポートメモリを利用することが可能である。
配列器用仕様
6 導入
オリオンのVC/LCAS配列ブロックは、同じ仮想連結グループ(VCG)に属するメンバチャンネルを復元又は連鎖解除するために責任がある。復元は、異なるチャンネルによって外部DRAMで累積されるネットワーク差分遅延を補償することにより実行される。
VCT配列器は、そのバイト用の制御情報と共にVCT分析器からクロック周期毎に1バイトデータを受信する。異なるSPEs間にフレーム、マルチ・フレーム配列はない。それらの間の差分遅延は、外部ネットワークトポロジー上で任意で、独立していない。
VCT配列器を通過した後、同じVCGsに所属する全てのチャンネルのSPEsはマルチ・フレーム配列される。VCT配列器の出力で、各VCG(異なる)用の連続ペイロードバイトが利用可能にされます。これは、バイトを並び替え、VCGペイロードを再生するためにVCT連鎖解除器に対して十分である。
図27はVCT配列ブロック内の様々なモジュールを示す。VCT配列器は、書き込み管理手段モジュール及び読み出し管理者モジュールから成る。それはまた、構成、カレンダ発生及び障害取り扱い論理によって発生される情報を用いる。書き込み管理手段は、チャンネル毎のFIFOsに1度に1バイト到来するデータを一時的に記憶する。与えられたチャンネル用に十分なバイトが累積された後、それらはバーストでDRAMに送られる。読み出し管理手段は逆方向プロセスを実行する。それは、バーストでDRAMからデータを読み出し、1度に1バイトを送出する前にチャンネル毎のFIFOsにデータを記憶する。
配列プロセスそれ自身は、読み出し管理手段により実行される。これは、与えられたVCGに対して全FIFOデータが1列になるように、チャンネルFIFOsを選択的に排出することによりなされる。
全てのVCT配列器は、データを1段階から次に移動するために自由動作TDMカレンダの過酷な使用をする。全てのカレンダはチャンネルの同じ順序(構成を介して決定される)に続くが、各カレンダは、動かす必要があるデータ量に依存して異なる速度で回転し得る。
また、障害取り扱いユニットはチャンネルとVCGsが与えられた時間で能動的かどうかを判断する、図27のシステムはMFI分析器のような分析器1202を有するシステム1200、書き込み管理手段1206及び読み出し管理手段1208を含むVCT配列器1204を例示する。更に、システムは、システムへの内部又は外部であり得るMCT1210を含む。出力は連鎖解除器1212に送られる。
7 カレンダ
どのチャンネルが次にサービスされるかを決定するために自由動作カレンダが用いられるVCT配列ブロック内に5段階ある。この目的で利用される4個の異なるカレンダがある(段階の2つは同じカレンダを共有する)。各カレンダは、構成を介して決定される同じ順序に続く。しかしながら、各異なるカレンダは異なる速度を用いるこの順序で進む、結果として異なる周期をもたらす。VCT配列ブロックの4個のカレンダは、次のクロック周期を有する:1x1344、2x1344、56x1344及び62x1344。
図28は、どのようにVCT配列器によりカレンダが発生するかを示す。カレンダA(サイズXの、ここで、Xは、1、2、56又は62)は、5個のホイールVC4、VC−3、VC−2、VC−12及びVC−11のそれぞれに対してカウンタを有する。VC4ホイールはサイズ16;VC−3ホイールはサイズ3;VC−2ホイールはサイズ7;VC−12ホイールはサイズ3及びVC−11ホイールはサイズ4である。
Xコアクロック周期毎に、VC4カウンタは1増加する。15で、カウンタは0に戻る。VC4の回転毎に、VC−3カウンタは1増加する。同じように、VC−3の回転毎に、VC−2カウンタは1増加する。最後に、VC−2の回転毎に、VC−11及びVC−12カウンタは1増加する。
最初のホイール(VC4)を更新するための期間が変化し得ることを除いて、同じ機構が他のカレンダ毎に実行される。
このやり方で、VCT配列ブロックにより異なる速度の4個のカレンダを発生させる。いつでも、各カレンダは、現在のVC4、VC−3、VC−2、VC−12及びVC−11カウンタを提供する。チャンネル化構成と共にこの情報は、次に処理されるチャンネル番号を決定するに十分である。
チャンネル化構成は、表74に示すように48x9ビットを要求する。この情報は、読み出し対立を避けるために各カレンダに対して複製されなければならない。
表73:VCT配列ブロックに要求されるチャンネル化情報
Figure 2008538456
8 DRAM編成及び共有状態
VCT配列ブロックは、データを64バイト伝送で外部DRAMに/から書き込み及び読み出す。外部DRAMはVCATデータの64MBまで保持できる。もし、より少ない記憶が必要であれば、外部DRAMはまたメモリの16、32又は48MBのみまで保持するために構成されることができる。尚、これは全VCTブロック用の総括構成設定である。
表74:DRAMサイズ構成
Figure 2008538456
DRAM内のVCATデータは、チャンネル毎のFIFOsで編成される。1344までのそのようなFIFOがある。各FIFOの最大サイズは、VCAT DRAM(16MB−64MB)の総括サイズと同様にチャンネルのサイズに依存する。各FIFOは、VCTブロックがリセットから出た後に固定されるDRAM内の固定位置を用いる。
各FIFOによって利用されるDRAMの場所は、連続読み出しと書き込みが異なるDRAMバンクに発行されるような方法で決定される。表76は、VC4sへの連続アクセスがバンク0から3までの連続周期インターリーブをもたらすように、異なるVC4s(STS-3s)がどのようにDRAMで編成されるかを示す。
表75:VCAT FIFOsのDRAMバンク・インターリーブ
Figure 2008538456
各FIFOのサイズはチャンネル形式と合計VCAT DRAMサイズに依存する。 最小FIFOはサイズ16MBのVCAT DRAMのvt1.5チャンネルに対応する、一方最大FIFOはサイズ64MBのVCAT DRAMのSTS-3cに対応する。これら可変FIFOサイズを収容するために、我々は、異なるFIFOsに再割り当てできる基本メモリ・サイズであるVCATメモリ・ユニット(VMU)を定義する。
VMUは、4096又は4KBのサイズである。VMUは64まで保持できる、VCTブロックからの64バイト伝送。16MBモードの時、vt1.5チャンネルはDRAMの3VMUs記憶を割り当てられる、vt2チャンネルは4VMUsを割り当てられる、STS-1は84VMUsを割り当てられる及びSTS-3cは256VMUsを割り当てられる。VCAT DRAMが16MB以上を持てば、チャンネル毎の記憶は比例して増やされる。
固定の式が、与えられたFIFOによって用いられるDRAMの位置を計算するために用いられる。そのチャンネルのカレンダ指標は、チャンネル形式と同様に、FIFOの開始アドレスを計算するための式に対する入力として用いられる。FIFOの最大サイズはチャンネル形式のみに依存する。次の変数A、B、C、D及びEを与えられたチャンネル用のカレンダ指標としよう。
表76:与えられたチャンネルのためのカレンダ指標
Figure 2008538456
カレンダ指標及びチャンネル形式を用いることにより、表77は、バンク番号、開始アドレス及びDRAMの各チャンネルFIFOの最大サイズを計算するための式を指定する。尚、これら式では、VMUは4Kであり、「S」はVCAT(0−16MB、1−32MB、2−48MB、3−64MB)により用いられる合計スペースを指定する統合構成レジスタである。
表77:VCAT用DRAMの配分
Figure 2008538456
尚、そのスペースがSTS-3cに用いられないときいつでも、上記メモリ配分スキームは1MBごとに16KBの穴を残す。
上記計算結果は、18ビットメモリ・アドレス(64バイトユニットで)と同様に2ビットバンク番号をもたらす。
各チャンネルFIFOに対して、配列ブロックは次の状態情報を運ぶ必要がある。
表78:DRAMFIFOsのための共有状態
Figure 2008538456
ポインタは64バイトユニットに記憶され、実際のDRAMメモリ配分を得るためにチャンネルFIFO基盤のアドレスに加えられる。書き込みポインタは、新64バイトの塊をDRAMに記憶するように書き込み管理手段により更新される。読み出しポインタは、それがDRAMからの新64バイト伝送を得るように読み出し管理手段により更新される。
読み出しポインタは、FIFOが満杯でないことを確認するために書き込み管理手段により読み出される。また、書き込みポインタは、FIFOが空でないことを確認するために読み出し管理手段により読み出される。
FIFOは書き込み管理手段によりリセットされ、それは最初に無効FIFOビットを1に設定する、そして書き込みと読み出しポインタの双方に0を書き込む。FIFOがリセットから出る時はいつでも、書き込み管理手段は最初に新有効データのMFI番号を「ヘッドMFI」フィールドに書き込む。そして、それはDRAMに新64バイト伝送を書き込み、書き込みポインタを更新しそして無効FIFOビットを設定解除する。
9 リセット、障害及び警報
配列ブロックは、VCG毎のリセットと同様にチャンネル毎をサポートする。両リセットは適切なRX構成レジスタに書き込むことによりソフトウェアにより可能にされる。チャンネルがリセットにある時、配列ブロックはそのチャンネルを処理しないそしてそのFIFOに所属する全てのFIFOsを一度に消す。全てのVCGがリセットにある時、それは全てのメンバチャンネルをリセットにあるようにする。
また、配列ブロックはチャンネル毎及びVCG毎の障害モードをサポートする。障害モードは、モードがソフトウェアよりむしろハードウェアにより直接引き起こすことができることを除いて、リセット・モードに非常に類似している。障害モードのチャンネルは処理されない、そしてそのFIFOsは一度に消される。障害モードのVCGは、そのメンバの全てを強制的に障害モードにする。全てのRXブロックのチャンネルとVCGsに影響するソフトウェアリセットと異なり、障害モードは配列ブロックのチャンネル及ぶVCGsに影響するだけである。
配列ブロックに2形式のチャンネル毎の警報がある。書き込み管理手段は、それが分析器からの警報を受信する時、チャンネル毎の警報状態を有する。同様に、読み出し管理手段は、それがMCTからの警報を受信する時、チャンネル毎の警報状態を有する。次の章は、どのようにこれら警報が検出されるかを記述する。
障害シナリオは、与えられたチャンネルがソフトウェアによって受理されたかどうかに依存して異なる。受理メンバは有効なデータを運ぶか運ぶと期待するものである。非受理メンバは有効なデータを運ばないものであるが(LCASアイドル状態にある)、そのLCASを処理するためにVCGの残りを配列する必要がある。それらを持つ問題がVCGの他の受理メンバに影響を及ぼさないので、非受理メンバは異なって扱われる。
エラー!基準ソース発見されず。図29は、どのようにリセット及び受理と非受理メンバに対して障害モードが一緒に動作するかを示す。VCGリセットとチャンネル・リセットは、ソフトウェアにより書き込まれる構成状態である。一方、チャンネル毎の読み出し及び書き込み警報は、ハードウェアにより維持される内部状態である。同様に、VCG障害とチャンネル障害はまたハードウェアにより維持される内部状態である。
利用可能なカレンダのいずれかを利用する1個の論理は、障害状態を判断するためのリセと及び警報状態を利用する。
もしVCGの受理メンバのいずれかがその読み出し警報セットを持つならば、そのときVCG障害ビットは設定される。一方、もしチャンネルのいずれもその書き込み警報設定を持たないならば、そのときVCG障害ビットはクリアされる。FIFOsを一度に消すための十分な時間を確実にするために、VCG障害状態は、1344x64コアクロック周期の最小時間量に対して主張する必要がある。
VCGが障害又はリセット・モードにある時、そのメンバ(受理及び非受理)の全てがそれらの障害ビットセットを有する。チャンネル障害ビットはまた、チャンネルがリセット・モードにある時、設定される。もしチャンネル・リセット、対応するVCGリセット及び対応するVCG障害ビットがクリアされれば、受理チャンネル障害ビットはただクリアされるだけである。到来データはまたフレームの開始でなければいけない。
非受理メンバに対して、警報はVCG障害を引き起こさない。代わりに、チャンネル読み出し警報(非受理メンバの)がメンバを障害モードに入らせる。もしそれがリセットにある場合、チャンネルはまた障害モードに入る。いったん障害モードにあれば、非受理チャンネルは厄介な故障ビットを設定する。
障害モードから出るために非受理メンバに対して、それは書き込み警報、リセットを持つべきではない、厄介なビットはソフトウェアによりクリアされなければならない、そしてそれはフレームの開始を受信しなければならない。
次の表は、警報、リセット及び障害状態を維持するために要求されるビットを要約する。尚、リセット状態、リセット状態、受理ビット及び障害厄介ビットに専念するスペースは、RX構成内にある。
表79:配列ブロック警報、リセット及び障害状態
Figure 2008538456
10 書き込み管理手段
図30は、オーバーフロー段の別の図を示す。
書き込み管理手段は、各チャンネルに1個の1344主FIFOsを有する。各FIFOに先行して、2バイトの段階化RAMがある。全ての主FIFOs後、それらがMCTへの単一伝送として送られる前にバイトを記憶するために用いられる単一62バイトRAMがある。
CXCから到着するバイトは、そのチャンネルに対応する2バイトメモリに記憶される。自由動作カレンダは周期的に、対応する主FIFOの中への2バイトのメモリのコンテンツを吐き出す。尚、ほとんどの時間、我々は2バイト価値データ書き込むが、しばしば1バイトのみか又は無いこともある。
主FIFOは単一のポートメモリで作られる。従って、これらFIFOsの内外での読み出しと書き込みはインターリーブされる。2回書き込み周期毎の間の読み出し周期である、逆も同様。データを2バイトRAMからその対応FIFOに伝送する自由動作カレンダは全速(アイドル無し)で動作する。新FIFOは2クロック周期毎に訪問し、そしてそのクロック周期中2バイトまで挿入される。期間は1344x2周期毎に繰り返す。
同様に、自由動作カレンダは62クロック周期毎に主FIFOを選択し、そのコンテンツ(62バイト又は以下)RAMに排出する。送られるデータ量はカウントされる。このカウントとヌルバイトは、64バイト伝送を形成するために62バイトデータの前に付加される。またオーバーヘッドは、1バイト・ヘッダーを保護するパリティ・ビット同様に到来チャンネルの障害(AIS)を信号化するビットを含む。表80は、MCTに送られる64バイト伝送を例示する。期間は、1344x62周期毎に繰り返される。これは、図31に例示される。
10.1 警報及び障害状態
もし与えられたチャンネルが分析器ブロックから警報信号を持つデータを受信すれば、それはいつもチャンネル書き込み警報状態を設定する。それが警報データ受信を止めるとき、それは書き込み警報状態をクリアする。
もしチャンネルが書き込み警報状態にあるが障害状態でないならば、書き込み管理手段はMCTにデータを書き続けるが、能動的である64バイト伝送ユニットの警報ビットと共にこのデータは全てものから成る。2バイトと主FIFOsは使用されないが、消す必要はない(チャンネルが障害モードにない限り)。失敗のないチャンネルが書き込み警報を出す時、書き込み管理手段はMCTに書き込み続ける。たとえこのデータが失効であっても、それはMCTにそれを書き込むことに害はない。
次の章で見られるように、64バイト伝送ユニットに警報ビットを設定することは、結局読み出し警報をそして結果的にVCG障害を引き起こす。VCG障害はまた、VCGリセット又は全部のFIFOに書き込みを試みるVCGのメンバにより引き起こされることができる。そして、VCG障害はそのメンバ全てにチャンネル障害を作る。
もし与えられたチャンネルが障害状態にあれば、書き込み管理手段はもはやデータをMCTに書き込まない。代わりに、そのチャネルに専念する時間間隔は、DRAMFIFO同様に、2バイトFIFO、主FIFOを消すために用いられる。そのチャネル用のCXCによって押し込まれるデータが捨てられる。2バイトFIFO及び主FIFOは、それを次のステージに渡さずにいつものようにデータを読み出すことによって消される。DRAMFIFOsは、無効FIFOビットの設定により及び読み出しと書き込みポインタを再設定することにより消される。
メンバが障害状態から出た時(それはフレームの始まりでなければならない)、新フレーム用のMFIはヘッドMFIフィールドに書き込まれる。新データ伝送はMCTに送られ、書き込みポインタは更新される。最後に、FIFO無効ビットは設定解除される。
11 読み出し管理手段
図32は、読み出し管理手段のブロック図を示す。読み出し管理手段は各チャンネルに1個1344主FIFOsを有する。各FIFOは120バイトのサイズを有する。各FIFOの後に2バイト段階化RAMがある。主FIFOsの前に、これらバイトが主FIFOsに書き込む間に単一MCT伝送から受信したバイトを記憶するために用いられる単一62バイトRAMがある。
自由動作カレンダは56クロック周期毎に主FIFOを選択する。もしFIFOレベルが58バイト以下であれば、そのとき、読み出し要求はそのFIFO用のMCTに作られる。読み出し要求が作られるとき、62バイト(又は以下)は結局そのFIFOに書き込まれる。読み出し要求期間は、56x1344クロック周期毎に繰り返される。各MCT伝送が少なくとも56バイトを運ぶので、これはデータがDRAMにある限りFIFOは完全に空でないことを保証する。
読み出し管理手段は、それがデータをいまだ受信していないMCTにした要求のFIFOを維持する。新要求が作られる時、新規参入がこの動作中の要求FIFOのテール(一番後ろ)に置かれる。参入は要求のチャンネルIDを含む。新しい1個のデータをMCTから受信する時、動作中の要求FIFOのヘッドで参入が検索される。その参入のチャンネルIDは、そのデータが属するFIFO示す。
この動作中の要求FIFOの最大サイズは16参入である。もしこのFIFOが常に一杯であれば、それはDRAM帯域幅問題を表す。これは破滅的なイベント事件ではない。読み出し管理手段は簡単に現在のタイムスロットを飛ばし(そのタイムスロットに新しい要求を作らない)、そして操作を正常に保つ。もしこのオーバーフロー状態が単に一時的であれば、読み出し管理手段は結局失った帯域幅を埋め合わせる。
もし要求FIFOオーバーフロー状態があまり頻繁に起きるならば、DRAMFIFOsは結局オーバーフローし、そして配列プロセスは失敗する。これはDRAM帯域幅が不十分であることを表す。この状態を検出することができるために、読み出し管理手段は、オーバーフロー状態が検出されたか又はMCTの準備ができていないことの検出の回数を記録する総括32ビットステータス・カウンタを保持する。CPUは、カウンタ値が変わるたびに(マスク可能な)割り込みを介して通知される。
読み出し管理手段は、MCTから来るバーストデータを記憶するために、また16 62バイトバッファまで必要とする。もし主FTFOに書き込むことが2周期に2バイトより早ければ、このバッファリングは潜在的に減少されることができる。
主FTFOが単一のポートメモリで作られる。従って、これらFIFOsの内外で読み出し及び書き込みはインターリーブされる。2回書き込み周期毎の間の読み出し周期である、逆も同様。
別の自由動作カレンダは、対応する主FIFOからデータを転送することにより2バイトメモリのコンテンツを周期的に満たす。これは、2周期毎の時間(読み出し周期中のみ)で、2バイトで構成される。期間は、それ自身1344x2周期毎に繰り返す。
別の自由動作カレンダは、連鎖解除器に送るために2バイト段階化RAMからデータを引く。1バイトは、異なるRAMからクロック周期毎に読み出され得る。周期はそれ自身1344周期毎に繰り返す。11.2章は、書き込み状態機械がバイトを読み出すかどうかを決定する方法を記述する。
11.1 警報及び障害状態
読み出し管理手段は、MCTから読み出される64バイト伝送ユニットの警報ビットを観察することにより読み出し警報を検出する。
もし、読み出し警報が受理チャンネルで検出されるならば、それは全てのVCGを障害状態に入らせる。そして、これはマットVCGの全てのメンバを障害モードに入らせる。もし、読み出し警報が非受理チャンネルで検出されるならば、それはそのチャンネルのみを障害状態に入らせる。
チャンネルが障害モードにある間、読み出し管理手段はMCTからデータを読み出さない。そのチャネルに専念する時間間隔の間に、読み出し管理手段は簡単に対応する主FIFO及び2バイトFIFOを消す。連鎖解除へのインターフェースで、それは警報表示と共にオールワン・バイトを送る。
チャンネルが障害モードから出るとき、それはDRAMFIFO無効ビットがクリアされたかを見るための検査をする。一度このビットがクリアされると、それは、そのチャンネル用のヘッドMFI値を読み出す。今、それはMCTから連続して読み続けることができる、そして通常の操作を続ける。
11.2 読み出し状態機械
次の状態機械は、VCGの全メンバの配列を達成するために読み出し管理手段によって実行される操作を記述する。状態機械は、各チャンネルに対して、2バイトFIFOのヘッドにいるバイトがそこで保持されるべきかどうか、読み出し及び捨てるかどうか、又は読み出し及び連鎖解除器に送るかどうかを決定する。これら3操作の適切な組み合わせは、同じVCGの全メンバをバイト・配列する。
表81は、各VCGに要求される追加の状態を示す。VCG毎の状態は、それ自身を配列しようとするように与えられたVCGの状態を記述する情報を含む。配列MFI(AMFI)は、全VCGがそれ自身を配列しようとする目標MFIである。配列済みメンバは、VCGのAMFIに固定される彼ら自身のMFIを有する。SOFビットは、VCGの配列されたメンバがフレームの開始に遭遇していることを表す。DRAINビットは、配列済みメンバへ行き着こうとしているグループの少なくとも1メンバがいることを表す(後で、これは排出状態にあるとして定義される)。最後に、STALLビットは、VCGの少なくとも1の配列済みメンバが空のFIFOを持っていることを表す。これは、全VCGがこの1メンバを待つ必要があることを意味する。
表80:読み出し管理手段状態による追加のVCG毎の状態要求
Figure 2008538456
VCG毎の状態NSOF、DRAIN(排出)及びSTALL(又は待機)の3コピーがある。図33は3コピーの利用方法を例示する。1カレンダ回転期間中、状態機械はコピーの1つに書き込む、他の1つから読み出すそして3番目のコピーをクリアする。カレンダか移転後、書き込みコピーは読み出しコピーになる、読み出しコピーはクリアコピーになる、そしてクリアコピーは書き込みコピーになる。
尚、VCG(VC4、VC−3、VC−12及びVC−11)の各形式は異なるカレンダー回転期間を有する。VC4カレンダは16コアクロック周期毎に回転する、VC−3カレンダーは48コアクロック周期毎に回転する、VC−12カレンダーは1008周期毎に回転する、そしてVC−11カレンダーは1344周期毎に回転する。従って、4個のVCG形式のそれぞれに対して、我々は3個のコピーのいずれかが書き込み、読み出し又はクリアであることを表す1組のポインタを必要とする。
表81は、この状態機械によって要求するチャンネルごとの加算を示す。
表81:読み出し管理手段状態機械によるチャンネルごとの加算
Figure 2008538456
図34は配列を実行するための読み出し管理手段によって用いられるアルゴリズムの高レベル状態図を示す。チャンネル障害モードでない時、各チャンネルは4状態:INIT(初期)、WAIT(待機)、DRAIN(排出)、及びGOの1つにあることができる。
初期(INIT)状態では、チャンネルはヘッドMFIフィールドからMFI値を得るために待機している。一度現在のMFI値が得られたら、チャンネルは配列MFIのはるか前方であるかどうか(待機状態)、又は配列MFIのはるか後方であるかどうかを判断する(排出状態)。待機状態ではFIFOは決して排出されない、一方排出状態ではFIFOが常時排出されそしてデータが廃棄される。チャンネルMFIが配列MFIと同じであるとき、それはGO状態のVCGの他のメンバと共にFIFOからデータを読み出しているGO状態に入る。GO状態の全メンバは配列される。チャンネルごとのステータス・ビット(及び割り込み)は与えられたチャンネルが配列されているかどうかをソフトウェアに通知する。
次の擬似コードはより詳細に読み出し管理手段アルゴリズムを説明する。下付の_write(書き込み)、_read(読み出し)及び_clear(クリア)が表示に使用され、VCG状態ごとに3コピーのいずれかが使われている。
1. チャンネル障害用の検査
もしチャンネル障害ビットが設定されれば
ステップ7へ
もしチャンネル障害ビットが放出されれば、
状態をINITに設定する
2. 初期化と読み出し動作
もし(状態==INIT)であれば
もし(DRAMFIFO 無効==1)又は(SRAMFIFOが空である)であれば
INITに留まる
ほか
Head MFIフィールドからCMFI獲得
もし(AMFI_VALID==0)であれば
INITに留まる
ほか もし(CMFI<=AMFI)であれば
状態をDRAINに設定
ほか もし(CMFI>AMFI)であれば
状態をWAITに設定
もし(状態==DRAIN)であれば
もし(CMFI==AMFI)及び(VCG_NSOF_read==0)及び(チャンネルがSOFにある)であれば
状態をGOに設定
ほか もし(SRAMFIFOが空でない)及び(VCG_STALL_read==0)であれば
読み出しFIFOからバイトを読み出しそしてそれを捨てる
もし(状態==WAIT)であれば
もし(CMFI==AMFI)及び(VCG_NSOF_read==0)であれば
もし(VCG_STALL_read==0)及び(VCG_DRAIN_read==0)であれば
読み出しFIFOからバイトを読み出しそしてそれを連鎖解除器に送る
状態をGOに設定
もし(状態==GO)であれば
もし(VCG_STALL_read==0)及び[(VCG_NSOF_read==1)又は(VCG_DRAIN_read==O)]であれば
読み出しFIFOからバイトを読み出しそしてそれを連鎖解除器に送る
もし(状態==IDLE)であれば
“失敗/リセット”を連鎖解除器に送信する
4. 書き込み動作(FIFOレベルを用い、ステップ3の後更新されるバイトカウント)
もし(状態==DRAIN)であれば
VCG_DRAIN_write=1
もし(状態==GO)及び(SRAMFIFOが空である)であれば
VCG_STALL_write=1
もし(状態==GO)及び(SRAMFIFOヘッドがNOT SOFである)であれば
VCG_NSOF_write=1
5. CWlFI更新(FIFOレベルを用い、ステップ3の後更新されるバイトカウント)
6. AWIFI更新(ステップ5で計算されるCMFI値を用いる)
もし(状態==Init)及び(DRAMFIFO無効=0)及び(AMFI_VALlD==0)及び(SRAMFIFOが空でない)であれば
AMFI=CMFI
AMFI_VALID=1
もし状態=GOであれば
AMFI=最大(CMFI、AMFI)
AMFI_VALID=1
7. クリア動作
VCG_DRAIN_clear=0
VCG_STALL_clear=0
VCG_NSOF_clear=0
12 最適化
12.1 主FIFOsに書き込み
図35はいかに主FIFOsが分配されるかを例示する。
本発明は上記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
LCASの例示であり、バックグラウンドのネットワークに関連付けられる。 LCASの例示であり、バックグラウンドのネットワークに関連付けられる。 LCASの例示であり、バックグラウンドのネットワークに関連付けられる。 LCASの例示であり、バックグラウンドのネットワークに関連付けられる。 LCASの例示であり、バックグラウンドのネットワークに関連付けられる。 LCASの例示であり、バックグラウンドのネットワークに関連付けられる。 本発明によるシステム構成の図表である。 本発明によるソース及びシンク構成の例示である。 本発明によるソース及びシンク構成の例示である。 本発明によるソース及びシンク構成の例示である。 本発明によるソース及びシンク構成の例示である。 本発明によるソース及びシンク構成の例示である。 本発明によるソース及びシンク構成の例示である。 本発明によるソース及びシンク構成の例示である。 本発明によるシステムと位置合わせの方法の例示である。 本発明によるシステムと位置合わせの方法の例示である。 本発明によるシステムと位置合わせの方法の例示である。 本発明によるシステムと位置合わせの方法の例示である。 本発明によるシステムと位置合わせの方法の例示である。 ANAの例示である。 LVCの例示である。 DSQの例示である。 VCT_TXの例示である。 バッファシステムの例示である。 チャンネル型を基盤とするカレンダ回転用システムの例示である。 バッファシステムの例示である。 配列器ごとのVCTの例示である。 どのようにVCT配列器によってカレンダが発生するかの例示である。 受理及び非受理メンバに対してリセットと障害モードがどのように一緒に作動するかの例示である。 主FIFOの例示である。 64バイトワードの例示である。 受信回路における主FIFOの例示である。 どのように状態をリセットするかの例示である。 LCAS用の状態図の例示である。 主FIFOsがどのように分布されるかの例示である。
符号の説明
302…ソースドライバ、304…ソースハードウェア、306…シンクハードウェア、308…シンクドライバ、324、350…制御ワード発生器/抽出器、339、361…ペイロード連鎖解除機、400…システム、405…書き込み管理手段、412…マルチ/チャンネル投下、802…CPU、804…構成、806…ペイロード連鎖解除機、810…経路オーバーヘッド発生器、812…総括MFI&GDI発生器、1200…システム、1202…分析機、1204…VCT配列器、1206…書き込み管理手段、1208…読み出し管理手段、1204…VCT配列器、1210…MCT、1212…連鎖解除器

Claims (20)

  1. 中央認証サービスを実行するためのネットワークシステムであって、
    前記ネットワークのグループのメンバに基いて入力データのバイトを配列するデータ配列手段と、
    前記データ配列手段からの入力データに応答して連鎖解除制御命令を発生する中央認証サービスコントロールマネージャと、
    前記中央認証サービスコントロールマネージャから受信される連鎖解除制御命令によって前記データ配列手段から入力される前記入力データを連鎖解除するために構成される連鎖解除手段と
    から成ることを特徴とするネットワークシステム。
  2. 前記データ配列手段は入力データのチャンネルを配列するために構成され、
    前記データ配列手段は、
    第一メモリに入力データを受信するために構成される書き込み管理手段と、
    第二メモリに前記入力データを書き込む前記書き込み管理手段から受信される入力データを記憶するために構成される第二メモリを有するマルチ・チャンネル透過モジュールと、
    1列の配列方法で前記第二メモリに記憶される入力データを第三メモリに読み出す読み出し管理手段と、
    前記読み出し管理手段からの入力に応答して連鎖解除制御命令を生成する中央認証サービス制御管理手段と
    前記中央認証サービス制御管理手段から受信する連鎖解除制御命令に従って前記データを連鎖解除する連鎖解除手段と
    から成ることを特徴とする請求項1に記載のネットワークシステム。
  3. 前記第一及び第三のメモリは静的ランダムアクセスメモリモジュールであり、第二メモリは動的ランダムアクセスメモリモジュールである
    ことを特徴とする請求項1に記載のネットワークシステム。
  4. 中央認証サービスを実行するためのネットワークシステムであって、
    入力データのバイトを配列する配列手段から成り、
    前記配列手段は、
    第一メモリに入力データを受信する書き込み管理手段と、
    第二メモリに前記入力データを書き込む前記書き込み管理手段から受信される入力データを記憶する第二メモリと、
    1列の配列で前記第二メモリに記憶される入力データを第三メモリに読み出す読み出し管理手段と、
    前記読み出し管理手段からの入力に応答して連鎖解除制御命令を生成する中央認証サービス制御管理手段と、
    前記中央認証サービス制御管理手段から受信される連鎖解除制御命令に従って前記データを連鎖解除する連鎖解除手段から成る、
    ことを特徴とする中央認証サービスを実行するためのネットワークシステム。
  5. ネットワーク上で中央認証サービスを実行する中央認証サービスの実行方法であって、
    ネットワーク上のグループの複数のメンバからメンバデータを受信するステップと、
    前記ネットワーク上の各メンバにIDを割り当てるステップと、
    第一の記憶場所にメンバデータを書き込むステップと、
    第二の記憶場所にメンバデータを読み出すステップと、
    メンバデータを連鎖解除するステップと
    から成ることを特徴とする中央認証サービスの実行方法。
  6. 更に、中央認証サービスを実行するハードウェアの状態に関して状態データを記憶し管理する中央認証サービス状態管理部と、
    仮想及び標準連結プロセスを実行する仮想連結モジュールとを備え、
    前記仮想連結モジュールは、所定のロジック・ポートを介してパケット・エンジンでパケット・データを交換するパケット・エンジン・インターフェースと、内部の交差接続に関して地図化されたデータを有するトラフィックを交換又は送信する交差接続インターフェースから成る
    ことを特徴とする請求項1に記載のネットワークシステム。
  7. 更に、中央認証サービスを実行するハードウェアの状態に関する状態データを記憶し管理する中央認証サービス状態管理部と、
    仮想及び標準連結プロセスを実行する仮想連結モジュールであるキー・モジュールとを備え、
    前記仮想連結モジュールは、所定の論理ポートを介してパケット・エンジンでパケット・データを交換するパケット・エンジン・インターフェースと、内部の交差接続に関して地図化されたデータを有するトラフィックを交換又は送信する交差接続インターフェースから成る、
    ことを特徴とする請求項1に記載のネットワークシステム。
  8. 前記仮想連結モジュールは、内部インターフェースを介して内部接続に関して地図化されたデータを有するトラフィックを交換又は送信するために構成される
    ことを特徴とする請求項6に記載のネットワークシステム。
  9. ハードウェアは各アトミック操作を実行するために構成され、そこでソフトウェアは各業務用の適切なアトミック操作を発行することに責任がある、中央認証サービス業務をアトミック操作の連鎖に分解するためのネットワークシステムであって、
    順方向・逆方向制御情報構成のシャドウ・コピーを維持するために構成されるシャドウ・コピー・モジュールから成り、
    アトミック操作が開始されるとき新制御情報がシャドウ・コピーに書かれ、全ての書き込みが完了したとき仮想連結グループ毎の構成ビットは、同時にハードウェアで実行されるアトミック操作内で全て変化させるために、その仮想連結グループの全てのメンバに構成メモリ・データを切り替えさせるために、トグル切換えされる
    ことを特徴とする中央認証サービス業務をアトミック操作の連鎖に分解するためのネットワークシステム。
  10. 全ての順方向制御情報は、チャンネル毎の基準で構成され、仮想連結グループ毎の基準で切り替えられると共に、
    全ての逆方向制御情報は、仮想連結グループ毎の基準で構成され、仮想連結グループ毎の基準で切り替えられる
    ことを特徴とする請求項9に記載のネットワークシステム。
  11. 所定の方式のネットワークを基盤とするネットワークシステムであって、
    更に、同じ仮想連結グループに所属するメンバチャンネルを斜め補正するための異なるチャンネルによって累積されるネットワーク差分遅延に対する補正のために構成される中央認証サービス配列ブロックを備え、
    前記中央認証サービス配列ブロックは、
    一時的にデータを記憶するための書き込み管理手段と、
    その後与えられたチャンネル用に所定の量のデータを累積し、バースト処理で前記データを記憶装置に送信する手段と、
    バースト処理で前記記憶装置からデータを読み出し、チャンネルFIFO毎にデータを記憶するために構成される読み出し管理手段と、
    与えられた仮想連結グループ用にFIFOデータを配列して、チャンネルFIFOを選択的に排出する手段とから成る
    ことを特徴とする請求項1に記載のネットワークシステム。
  12. 前記記憶装置は外部DRAMであることを特徴とする請求項11に記載のネットワークシステム。
  13. 各FIFOのコンテンツを検査し、FIFOデータ・コンテンツが閾値より低い場合、読み出し要求を開始する自由動作カレンダから成ることを特徴とする請求項11に記載のネットワークシステム。
  14. 全てのカレンダは、チャンネルの同じ順序で作動すると共に、各カレンダは移動させる必要があるデータ量に依存して異なる速度で回転できることを特徴とする請求項13に記載のネットワークシステム。
  15. 前記読み出し管理手段の各チャンネルは、個々のFIFOを有し、そして前記データは各チャンネル毎のFIFOの時間で1バイト到着することを特徴とする請求項11に記載のネットワークシステム。
  16. 外部メモリから記憶又は取り出す前記書き込み及び読み出し管理手段において仮想連結グループの各メンバのためにフレームを処理し、
    前記書き込み管理手段は各チャンネルに対して1個のFIFOを有し、
    自由動作カレンダは周期的に前記FIFOのコンテンツを前記RAMに転送し、
    前記読み出し管理手段は各チャンネルに対して1個のFIFOを有し、
    自由動作カレンダは前記FIFOのコンテンツを検査し、前記FIFOのコンテンツが固定の閾値より低い場合、読み出し要求を開始することを特徴とする請求項13に記載のネットワークシステム。
  17. 連鎖モジュールを処理するためのネットワークシステムであって、
    仮想連結グループのメンバチャンネルの所定伝送スロット順序によってデータ・バイトを再要求し、動的仮想連結グループメンバ変更を処理するために構成され、
    中央認証サービスをサポートするために仮想連結グループメンバ資格変更を実行するためにダブルバッファリングを利用する少なくとも2個のバッファと、
    1個のバッファから仮想連結グループメンバ資格変更データを読み出す読み出し管理手段及び他の1個のバッファから仮想連結グループメンバ資格変更データを書き込むために構成される書き込み管理手段とから成り、
    前記書き込み管理手段及び読み出し管理手段の読み出し及び書き込み機能は前記2個のバッファ間で交互に起きる
    ことを特徴とする連鎖モジュールを処理するためのネットワークシステム。
  18. 前記バッファのそれぞれのバイト容量は前記仮想連結グループのメンバ数と同じ又は大であることを特徴とする請求項17に記載のネットワークシステム。
  19. 前記読み出し及び書き込み機能はCXC要求に従って実行されることを特徴とする請求項17に記載のネットワークシステム。
  20. 前記再要求は再要求アルゴリズムに従って実行されることを特徴とする請求項17に記載のネットワークシステム。
JP2007552302A 2005-01-21 2006-01-20 ネットワークシステム及び中央認証サービスの実行方法 Pending JP2008538456A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US64584105P 2005-01-21 2005-01-21
PCT/US2006/002144 WO2006081150A2 (en) 2005-01-21 2006-01-20 System and method for performing concatenation of diversely routed channels

Publications (1)

Publication Number Publication Date
JP2008538456A true JP2008538456A (ja) 2008-10-23

Family

ID=36740962

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007552302A Pending JP2008538456A (ja) 2005-01-21 2006-01-20 ネットワークシステム及び中央認証サービスの実行方法

Country Status (6)

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

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101507145B (zh) 2005-01-21 2013-05-29 Rmi公司 执行不同路由信道级联的系统和方法
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
US8200887B2 (en) 2007-03-29 2012-06-12 Violin Memory, Inc. Memory management system and method
US9384818B2 (en) 2005-04-21 2016-07-05 Violin Memory Memory power management
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
EP1926256B1 (en) * 2006-11-22 2009-03-04 Alcatel Lucent Method of time aligning the members of a virtual concatenated group in a synchronous transmission system
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
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
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
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
KR101324688B1 (ko) 2009-06-12 2013-11-04 바이올린 메모리 인코포레이티드 영구 가비지 컬렉션을 갖는 메모리 시스템
ATE523977T1 (de) * 2009-06-24 2011-09-15 Alcatel Lucent Verfahren zur dynamischen einstellung der übertragungskapazität einer datenübertragungsverbindung
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
US8639113B2 (en) * 2009-08-12 2014-01-28 International Business Machines Corporation Network protection switching
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
EP3322111B1 (en) * 2009-09-17 2019-06-26 Huawei Technologies Co., Ltd. Dynamic hitless resizing in optical transport networks
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
CN109729025B (zh) * 2017-10-31 2021-04-20 华为技术有限公司 一种处理灵活以太网的数据的方法及相关设备
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 核芯互联科技(青岛)有限公司 一种乱序高性能处理器的寄存器重命名方法及系统

Family Cites Families (24)

* 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
CA2092291A1 (en) * 1990-09-24 1992-03-25 Steven G. Morton 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
FR2750277B1 (fr) * 1996-06-19 1998-08-21 Le Meur Jean Paul Multiplexeur hybride
US6492719B2 (en) * 1999-07-30 2002-12-10 Hitachi, Ltd. Semiconductor device
GB9718831D0 (en) * 1997-09-05 1997-11-12 Plessey Telecomm Data transmission in an sdh network
US6912230B1 (en) * 1999-02-05 2005-06-28 Tecore Multi-protocol wireless communication apparatus and method
DE19932739A1 (de) * 1999-07-14 2001-01-18 Alcatel Sa Umwandlung von nahtloser Verkettung zu virtueller Verkettung in einem synchronen digitalen Nachrichtenübertragungsnetz
US7031252B1 (en) * 2000-03-27 2006-04-18 Cisco Technology, Inc. Reflector communications channel for automatic protection switching
ATE253791T1 (de) * 2000-05-26 2003-11-15 Cit Alcatel Verfahren zum übertragen von synchronen transportmodulen über ein synchrones transportnetz
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
US8289859B2 (en) * 2004-05-25 2012-10-16 Alcatel Lucent Link delay determination using virtual concatenation
US7720101B2 (en) * 2004-05-25 2010-05-18 Cisco Technology, Inc. Wideband cable modem with narrowband circuitry
JP4361427B2 (ja) * 2004-06-21 2009-11-11 富士通株式会社 回線制御装置および回線制御方法
CN101507145B (zh) * 2005-01-21 2013-05-29 Rmi公司 执行不同路由信道级联的系统和方法

Also Published As

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

Similar Documents

Publication Publication Date Title
JP2008538456A (ja) ネットワークシステム及び中央認証サービスの実行方法
JP3522252B2 (ja) 光回線データを広域/都市域リンクに伝送するためのフレキシブルなマルチプレクサ/デマルチプレクサ及び方法
US7177314B2 (en) Transmit virtual concatenation processor
EP1305883B1 (en) Transparent transport overhead mapping
US20030227943A1 (en) Communicating synchronous TDM signals across a packet-oriented network
US20040047367A1 (en) Method and system for optimizing the size of a variable buffer
WO2004062201A1 (en) Method and apparatus for the hardware implementation of virtual concatenation and link capacity adjustment over sonet/sdh frames
WO2005074211A1 (en) Methods and apparatus for implementing lcas (link capacity adjustment scheme) sinking with rate based flow control
JP2004503980A5 (ja)
US8166183B2 (en) Method and system for fast virtual concatenation setup in a communication network
US6738392B1 (en) Method and apparatus of framing high-speed signals
US7558287B2 (en) Combined hardware and software implementation of link capacity adjustment scheme (LCAS) in SONET (synchronous optical network) virtual concatenation (VCAT)
JP2002280991A (ja) データマッパおよびデータマッピング方法
DE112022001975T5 (de) System und verfahren zur durchführung einer ratenanpassung und multiplexing von client-daten mit konstanter bitrate (cbr) zur übertragung über ein metro-transportnetzwerk (mtn)
DE112022001195T5 (de) System und verfahren zum durchführen einer ratenanpassung von client-daten mit konstanter bitrate (cbr) mit einer festen anzahl von leerblöcken zur übertragung über ein metro-transportnetzwerk (mtn)
US6836486B2 (en) Switching of low order data structures using a high order switch
US7068663B1 (en) Path routing and provisioning method and apparatus
EP1936849B1 (en) Method for mapping and demapping data information over the members of a concatenated group
DE69931160T2 (de) Gerät zur Verarbeitung von SONET oder SDH Rahmen auf einem PCI-Bus
JP2004112264A (ja) 伝送装置
EP1598969A1 (en) Optimized link capacity adjustment scheme
Zhang et al. An ASIC for data over SONET/SDH mapping and path protection switching
JP2010507991A (ja) 6つの8メガビット/秒の信号のsonetフレームへのマッピング

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110315

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110816