JP2007234009A - 組込み自己試験及びデバッグ機能を有する同時コードチェッカー及びハードウエア効率的高速i/o - Google Patents

組込み自己試験及びデバッグ機能を有する同時コードチェッカー及びハードウエア効率的高速i/o Download PDF

Info

Publication number
JP2007234009A
JP2007234009A JP2007037099A JP2007037099A JP2007234009A JP 2007234009 A JP2007234009 A JP 2007234009A JP 2007037099 A JP2007037099 A JP 2007037099A JP 2007037099 A JP2007037099 A JP 2007037099A JP 2007234009 A JP2007234009 A JP 2007234009A
Authority
JP
Japan
Prior art keywords
data packet
test
logic
value
error
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.)
Granted
Application number
JP2007037099A
Other languages
English (en)
Other versions
JP5174357B2 (ja
JP2007234009A5 (ja
Inventor
Chinsong Sul
スル チンソン
Hoon Choi
チョイ フーン
Gijung Ahn
アーン ギジュン
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.)
Silicon Image Inc
Original Assignee
Silicon Image Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/476,457 external-priority patent/US7840861B2/en
Application filed by Silicon Image Inc filed Critical Silicon Image Inc
Publication of JP2007234009A publication Critical patent/JP2007234009A/ja
Publication of JP2007234009A5 publication Critical patent/JP2007234009A5/ja
Application granted granted Critical
Publication of JP5174357B2 publication Critical patent/JP5174357B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4906Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
    • H04L25/4908Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB codes
    • H04L25/491Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB codes using 1B2B codes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • G11B2020/14388 to 10 modulation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/33Synchronisation based on error coding or decoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Dc Digital Transmission (AREA)

Abstract

【課題】高速データ伝送エラーに関して試験するためのシステム、装置、及び方法を提供する。
【解決手段】高速入出力システムにおけるエラーを試験する方法、装置、及びシステム。システム及び装置は、データパケットの静的特性及びパケットを含むデータストリームの動的特性を通じて符号化済みデータパケット内のエラーを検査するための同時コードチェッカーを含むことができる。方法は、データパケットの静的特性及びパケットを含むデータストリームの動的特性を用いて無効符号化済みパケットを検出する段階を伴う場合がある。同時コードチェッカー論理の設計を最適化する方法は、無指定条件を用い、同時コードチェッカー回路は、論理素子及び半導体面積要件が低減される。
【選択図】図1

Description

関連出願への相互参照
本出願は、Chinsong Sul、Hoon Choi、及びGijung Ahnにより2006年1月20日出願の「同時コードチェッカー」という名称の米国特許仮出願第60/760,601号の「35 U.S.C §119」の下での恩典を請求するものであり、この出願は、引用によって組み込まれている。
本出願はまた、発明者Chinsong Sulの名において2006年6月27日出願の「プログラマブル試験クロックコントローラを用いて電子回路を走査ベースで試験するための設定可能な試験クロックを発生させる試験クロック制御構造」という名称の米国一般特許出願第11/476,457号に対する「35 U.S.C §120」の下での恩典を請求するものであり、この出願は、引用によって組み込まれている。
本発明は、一般的に高速データ伝送エラーに関して試験するためのシステム、装置、及び方法に関し、より具体的には、同時コードチェッカーを用いてエラーに関してデータストリームを検査するためのシステム、装置、及び方法、並びに同時コードチェッカー論理回路の最適化に関する。
関連技術の上述の例及びそれらに関連する制限は例示的であり、排他的ではないことを意図している。関連技術の他の制限は、明細書の読解及び図面の考察によって当業者には明らかになるであろう。
「高速入出力(HSIO)」のための最も一般的な組込み試験は、2つの同一「擬似乱数バイナリシーケンス(PRBS)」発生器を用いており、一方は送信機(TX)に設けられ、他方は受信機(RX)に設けられる。両方のPRBSは、同期させる必要があり、それによってTXが発生させるものをRXが正確に複製することを可能にする。RXは、受信データ伝送を予想したものと比較し、受信データ伝送と試験データセットにおいて発生させた伝送との間に差異がある場合は失敗を識別する。PRBSによって発生させた又は検査されたテストパターンは、用いるLFSR多項式によって制限される。PRBSで用いられるLFSRは、通常は擬似乱数パターンの単一シーケンスを供給することができる。付加的なパターンが必要な場合は、それらは、余分なハードウエアを追加することによって実施することができる。
多くの「高速入出力(HSIO)」システムはまた、10ビットDC均衡クロック埋め込み符号化手法などを用いて伝送に向けてデータを符号化する。IBMの8B/10B符号化手法は、そのような手法の一例であり、8ビット値を10ビットのコードワードに符号化する。各8ビット値は、2つの割り当てコードワードを有し、データストリーム内の1と0の個数の均衡を取ることが可能になる。何らかの特定数のコードワードにわたって1と0の個数が同じか又は実質的に同じ場合には、信号は、その特定数のコードワードにわたって均衡したDC電圧レベルを一定にする。1と0の間の個数の差異は、不均衡又はDC値として定義することができる。DC均衡化は、符号間干渉(ISI)問題を低減し、AC結合をより適用可能にするためのものである。例えば、コードワードシーケンス内の1と0の個数が1(又は0)にバイアスされると、チャンネルのバイアス状態に打ち勝つためにより大きなエネルギを必要とするので、0(又は1)の伝送は困難である。従って、伝送された反対の状態の符号は、エラー状態で復元されるであろう。例えば、3つの連続するコードワード(0000000000、0000000010、0000000000)がチャンネルを通じて伝送された場合には、符号は、ISI問題によって失われると考えられる。多くの「高速I/O(HSIO)」システムは、電源及び接地から来る低周波数の電圧ノイズを遮断するために送信器と受信機の間にコンデンサを用いるAC結合を使用する。例えば、上述のような低周波数データストリームは遮断される場合があり、その結果、受信信号電圧の歪み及びエラーを生じるであろう。受信データエラーを特定の目標値以内に保持するために、コードワードの最大許容不均衡が、伝送において指定される。伝送コードワードにおいて許容される最大不均衡は、DC均衡として定義される。IBMの8B/10B符号化手法は、当業技術で公知であり、A.X.Widmer及びP.A.Franaszek著「DC均衡、分割ブロック、8B/10B伝送コード」、「IBM J.Res.Develop.」、第27巻、第5号、440〜451頁、1983年9月による論文に説明されており、この論文は、引用によって本明細書に組み込まれている。
米国特許仮出願第60/760,601号 米国一般特許出願第11/476,457号 A.X.Widmer及びP.A.Franaszek著「DC均衡、分割ブロック、8B/10B伝送コード」、「IBM J.Res.Develop.」、第27巻、第5号、440〜451頁、1983年9月 M.Abramovici,M.Breuer,及びA.Friedman著「デジタルシステムの試験及び試験可能な設計」、Wiley−IEEEプレス、1994年 K.Girmsrud及びM.Smith著「直列ATA記憶装置アーキテクチャ及び用途」、Intelプレス、2003年(130頁)
従来のPRBS発生器、システム、及び方法の1つの欠点は、それらが、多くの場合にオンライン及び/又はオフライン試験、及び/又はチップのデバッグのようなシリコンチップを試験するための機能を欠くことである。オンライン及びオフラインデバッグ又は試験は、それぞれ、現場使用及び試験中に実施される試験を意味する。通常モードは、通常の使用状況下でチップを用いることを意味し、一方、試験モードは、試験環境においてチップを用いることを意味する。オンライン及びオフラインの両方を有することは、通信チャンネルの品質を現場において試験及び判断することができるので有利であると考えられる。
従来のPRBSシステム及び方法の付加的な欠点は、既知の送信試験データの適正な比較を受信データと比較していかなるエラー又は失敗も識別することができるように、TXのPRBSとRXのPRBSを同期する必要があるという要件である。TXのPRBS及びRXのPRBSのシステムを用いている時に、試験中に伝送エラーが発生して同期失敗を引き起こした場合には、システムは回復することができない。そのような同期失敗の後の試験結果は、有意義なものではないであろう。
従って、従来のPRBSの問題及び制限を克服するためのシステム及び方法に対する必要性が残っている。
一態様では、本発明は、組込み自己試験及びデバッグ機能を有する同時コードチェッカー及びハードウエア効率的高速「入出力」を提供する。
別の態様では、本発明は、到着直列化及び符号化済みデータを符号化済みデータパケットに非直列化するように構成された並列化機構と、データパケットが無効であるか否かを判断するように構成されたコードブックと、データパケットが無効であり、データパケットを符号化するために用いられる符号化手法の仕様に反しているかを検査するように構成された仕様論理と、符号化済みデータパケットが無効である場合に、作動時に伝送エラーを登録するためのデータパケットエラー論理とを含む受信機を提供する。
別の態様では、本発明は、データ保全性を検証する方法を提供し、本方法は、到着直列化及び符号化済みデータパケットを受信する段階、到着直列化及び符号化済みデータパケットを非直列化する段階、データパケットが有効であることを検査する段階、符号化済みデータパケットのDC(又はRD)値を導出する段階、DC(又はRD)値が有効又は無効DC(又はRD)値であるかを判断する段階、及びDC(又はRD)値が無効であった場合に、到着非直列化及び符号化済みデータパケットに失敗のフラグを立てる段階を含む。
更に別の態様では、本発明は、データストリーム内の符号化済みデータパケットのDC値を判断するように構成された同時コードチェッカー(C3)論理と、データストリームの状態を追跡するように構成された有限状態機械(FSM)とを含むエラー検出回路を提供し、C3論理は、作動時に、符号化済みデータパケットのDC値をFSMに送信し、このFSMは、DC値を用いてデータストリームの現在の状態が与えられた上でエラーが発生したかを判断する。
更に別の実施形態では、本発明は、コンピュータ可読媒体上に記憶されてコンピュータ装置の作動を制御するための命令を含むコンピュータプログラムを提供し、この命令は、到着直列化及び符号化済みデータパケットを受信する段階と、到着直列化及び符号化済みデータパケットを非直列化する段階と、データパケットの有効性を検査する段階と、符号化済みデータパケットのDC(又はRD)値を導出する段階と、DC(又はRD)値が有効又は無効DC(又はRD)値であるかを判断する段階と、非直列化及び符号化済みデータパケットが有効DC(又はRD)値を持たない場合に、到着非直列化及び符号化済みデータパケットに失敗のフラグを立てる段階とを実行することによってコンピュータ装置にデータの保全性を検証させるための命令を含む。これらのDC及び/又はRD値は、DC値及びRD値の両方が例示的な試験応答であるので、総称して試験応答と呼ぶことができる。
更に別の実施形態では、本発明は、システム内でデータストリームを用いて同時コードチェッカー(C3)論理の機能を試験する方法を提供し、本方法は、システムを試験モードに設定するように同時コードチェッカー(C3)論理内の少なくとも1つのレジスタをプログラムする段階と、コードワードをモニタし、検出した有効コードワードの個数を判断する段階と、所定数の有効コードワードを検出した場合には、CDDの試験制御回路が、移動不均衡有限状態機械(RD FSM)を使用可能にしてデータストリームの有効性を検査する段階と、「RD FSM」が使用可能にされた時に、「RD FSM」を用いてデータストリームをモニタし、データストリームに対して適正に同期化する段階と、同期後に、C3が試験仕様を完了するまで継続して追跡する段階と、試験が完了した時に、C3論理を使用不可にする段階とを含む。
更に別の実施形態では、本発明は、論理的真理値表定義内でより多くの無指定条件を識別して指定することによって同時コードチェッカーを実施するための論理素子の数を低減するようにハードウエア回路設計を最適化する方法を提供する。更に別の態様では、本発明は、半導体素子として実施された時に論理回路要素が低減されてより小さな面積を有する回路及び装置を提供する。
本発明のこれら及び他の態様は、添付の説明及び図面に照らして明らかになるであろう。
本発明の実施形態は、図に示されている。しかし、実施形態及び図は、限定ではなく例示的なものであり、それらは、本発明の実施例を提供するものである。
下記の説明では、本発明の様々な態様の完全な理解を提供するために本発明のいくつかの特定的な実施形態を説明する。しかし、当業者は、本明細書に提供する説明を考察することによって本発明がそれらの特定の詳細又は特徴のうちの1つ又はそれよりも多くを用いずに又は他の構成要素などとの組合せで実施することができることを認識するであろう。他の事例においては、公知の実施、作動、又は回路要素は、本発明の様々な実施形態の態様の不明瞭化を避けるために詳細な図示又は説明を行わない。
例示的な実施形態は、高速I/Oシステムを含む。データ伝送は直列化され、符号化済みデータパケットの状態で受信機に送信される。受信機は、データパケットを非直列化し、符号化済みパケット及びデータストリームを無効性に関して検査するために論理式及びDC/RD仕様のコードブックを含む同時コードチェッカーを用いる。一部の例示的な実施形態では、符号化済みデータパケットの静的特性及びデータストリームの動的特性が用いられる。一部の例示的な実施形態では、動的特性は、有限状態機械を用いて追跡することができる。
集積回路(IC)は、絶えずコスト及びサイズの圧力下にある。「高速入出力(HSIO)」装置は、HSIO装置の試験がより困難であり、専用の高性能自動試験機器(ATE)を必要とする可能性があるために特に問題になる可能性がある。
少なくとも一部の実施形態では、オンライン試験モードにおいて本発明の試験が実施される。オンライン試験は、システムが通常機能モードで作動している間に有利に実施される。通常機能モード環境により近い状態で試験が行われるように、通常、これは、現場でシステムの他の構成要素が同時に作動している状態で実施される。従来のPRBS「組込み自己試験(BIST)」は、オンライン試験を実施することができないことが認められるであろう。従来のPRBSのBISTは、試験中にのみ使用可能にすることができ、機能モードではそうすることができない。利点の1つは、現場でBERを測定することによってチャンネル品質を測定することができる点である。試験の作動条件は実際の用途の作動条件と少なくともある程度異なる可能性があるために、現場でのこのBER測定は、試験において測定されるものよりも実際的であろう。すなわち、試験は、様々な用途の全てにおける試験下の装置又はシステムの性能を同様に模倣することは恐らくできないと考えられる。現場でのBER測定は、考慮中の用途のチャンネル品質に関するより正確な測定とすることができ、又は少なくとも試験が可能な限りほぼ同一の条件下で実施されたというある程度の信頼性をもたらすことができる。
提案するシステム、方法、及び装置は、利点の中でもとりわけ、「集積回路(IC)」生産の改善及びHSIO装置における試験コストの低減をもたらす。これは、他の方法に比較して効率的かつ強力な方式で達成することができる。有利な態様においては、提案するシステム、方法、及び装置は、符号化済みデータストリームの有効性を検査する。本発明のこれら及び他の利点は、いくつかの図面を含む添付の詳細説明を読解することによって当業者には明らかになるであろう。
図1は、符号化済みデータを伝送エラーに関して検査するように構成された「高速入出力」又はI/O(HSIO)装置の一例を示している。一般的に、エラーは、起こっていれば、送信(TX)側、伝送中、又は受信(RX)側、又は場所の組合せにおいて発生している可能性がある。1つの非限定的な実施形態では、受信機100は、並列化機構102、同時コードチェッカー(C3)104、及び復号器106を含む。一部の非限定的な例示的実施形態では、例えば、図1に示すようなHSIO装置は、任意的にではあるが有利な態様においては、試験下の装置(DUT)に組込み試験機能をもたらすために同一のチップ上に実施することができる。
並列化機構102は、直列化及び符号化高速データ伝送を受信するように構成されている。並列化機構は、復号器106及びC3(104)に連結される。並列化機構102は、受信した直列データパケットを非直列化し、結果として生じる非直列化データを復号器106及びC3(104)に転送するように構成されている。並列化機構102と復号器106、及び並列化機構102とC3(104)の間を連結する方式は、公知の又は便利なあらゆる方式で達成することができる。例えば、並列化機構及び復号器は、データバスシステムを用いて連結することができる。
復号器106は、連結された並列化機構102から受信する符号化済みデータパケットを復号化するように構成されている。復号器106は、公知の又は便利なあらゆる装置及び/又はシステムに復号化済みデータを送信することができる。符号化済みデータパケットは、公知の又は便利なあらゆる方式で符号化することができる。
一部の例示的な実施形態では、符号化済みデータパケットは、送信される1と0の個数の均衡を取るような方式で符号化されることになる。一部の実施形態と共に用いることができるデータパケット符号化手法の非限定的な例は、当業技術で公知のIBMの8B/10B、5B/6B、4B/6B、及び/又は公知か又は今後開発される可能性がある他の符号化手法を含む。一部の例示的な実施形態では、伝送データは、DC均衡が取られたクロック埋め込みの10ビット符号化手法を用いて符号化することができる。
同時コードチェッカー(C3)204は、コードブック212及びDC/RD仕様214を含む。コードブック212は、組合せ論理回路又は読取専用メモリ(ROM)として、又は他の方法で実施することができる。DC及び/又はRD仕様は、例えば有限状態機械として、又は公知又は便利な他の方法で実施することができる。C3(204)は、連結された並列化機構202から符号化済みデータパケットを受信する。次に、符号化済みデータパケットは、コードブック212内の論理式及びDC/RD仕様214を用いて符号化状態のままで有効性又は無効性に関して検査することができる。
コードワードを入力とし、出力として有効又は無効を考えてコードブック内に含まれる有効コードワードを合成することによって得ることができるコードブック212内の論理式は、通常は、用いる符号化手法に依存するであろう。一部の例示的な実施形態では、コードブックは、異なる符号化の状態値を組み込むか又は含むことになる。例えば、1つの非限定的な例示的実施形態では、コードブックは、各非符号化済みデータパケットに対してRD−及びRD+の両方の符号化済みデータ値を含むことができる。RD−の符号化済みデータ値は、例えば、0よりも多くの1を有するバイナリデータ値とすることができる。同様に、RD+の符号化済みデータ値は、1よりも多くの0を有するバイナリデータ値とすることができる。一部の例示的な実施形態では、コードブックは、符号化手法で用いられるコードワードから導出されるDC値を符号化済みデータパケットに割り当てることができる。DC値は、無効な(又は有効な)データパケットを識別するためにコードブックを用いることができる。本明細書で提供する説明から、標準の考えは、エラー又は失敗条件の指標を与えるために無効データを識別することであることが認められるであろう。代替的に、全ての有効データを識別してもよいが、僅かのエラーしか予測されない場合に全ての有効データを識別することは、予想される僅かの無効データエラー又は失敗条件を識別することよりも非効率である場合があるので、これは非効率と考えられる。従って、本説明は、有効データ識別という反対の手法を用いることができることを理解した上で無効データの識別に焦点を置く。
一部の例示的な実施形態では、C3は、データストリーム内の符号化済みデータパケットの無効性に関する検査と同様に個々の符号化済みデータパケットを無効性に関して検査することができる。一部の例示的な実施形態では、C3は、無効データパケット又はデータパケット内の無効ビットが発生する率を収集するように構成されたビット誤り率(BER)システムに連結される。一部の例示的な実施形態では、C3は、ビット誤りを引き起こす欠陥を検出するための装置及び/又はシステムで用いられる。この装置及び/又はシステムは、ソフトエラー及び/又はハードエラーを検出するように設定することができる。
一部の例示的な実施形態では、C3は、無効コードワード及び/又は伝送エラーを検出するためにデータストリーム内の0と1の均衡を検査することによって作動する。一部の例示的な実施形態では、同じ個数の1と0を有するDC均衡が取られたコードワードとしてデータを符号化する符号化手法が用いられるために、C3は、符号化済みデータパケットが無効であるか否かを判断することができる。しかし、一部の例示的な実施形態では、有効コードワード内の1と0の個数の均衡が正確に取られることにはならず、ある一定のDC値に制限されることになり、C3がこの制限内で有効性に対してパケットを検査することを可能にする。制限範囲は、パケットのDC値によって判断することができ、DC(ci)=N1−N0で与えられるパケット内のコードワードciのDC値に関する表現を評価することによって判断することができ、ここで、N1は1の個数であり、N0は0の個数である。
IBMの8B/10B符号化手法を用いる非限定的な例示的実施形態に対するDC仕様において、コードワードciのDC値は、DC(ci)∈{−2,0,2}とすることができる。パケットの他のDC値は、このDC仕様に反することになる。しかし、符号化手法のDC仕様に反しない全てのコードワードが必ずしも有効なコードワードではない。多くの符号化手法におけるDC仕様は、無効性に対する十分条件ではあるが、必要条件ではない。例えば、IBMの8B/10Bの非限定的な例では、442個の有効コードワード及び582個の無効コードワードが存在するが、無効コードワードのうちの230個は、DC仕様を満たすことになる。試験においてエラーを検出するためにDC仕様が用いられるならば、試験機能を増大させるための試験刺激としてDC仕様を満たす未使用のコードワードを用いることができる。
一部の例示的な実施形態では、符号化手法がコードワードのデータストリームのDC均衡を取ることにより、C3は、データストリーム内のエラーを検出する。一部の例示的な実施形態では、データストリームのDC均衡は、データストリームの移動不均衡(RD)を追跡することによって確認することができる。移動不均衡(RD)は、データストリーム内でそれまでに過度の0又は1が伝送されたか否かを追跡する。伝送データストリーム内の余剰の0又は1は、データストリームの移動不均衡と呼ばれる。一部の例示的な実施形態では、データストリーム内で過度の0又は1が受信機に伝送されたか否かを追跡するためにRDが用いられ、それによって伝送エラーが発生したことを示すことになる。例えば、データストリーム内で過度の1が伝送された場合には、RDは正になり、過度の0は、負のRDを作り出す。データストリーム内の個々のデータパケットが受信されると、データパケットの値は、データストリームの現在のRDを変更することができる。例えば、0よりも多くの1を有するデータパケットは、RDを正の値に向けて変更することになり、等しい個数の0及び1の均衡の取れたデータパケットは、RDを未変更のままに残す。
一部の例示的な実施形態では、C3は、PRBS多項式から独立させることができるが、基本的な符号化手法から導出されるので、C3は、全ての有効コードワード及び試験仕様(DC又はRD仕様等)を満たす一部の無効コードワードを受け入れることができる。C3ハードウエアは、従来のPRBSの50%とすることができ(SIMGの実験)、試験中により多くのテストパターンを処理することができる。更に、PRBSは、C3が処理することができる多くのシーケンスから1つの擬似乱数パターンを発生させることができる。
IBMの8B/10B符号化手法の非限定的な例では、DC均衡が取れたデータストリームを作り出すためにC-2及びC+2型のコードワードがデータストリームsi内にインターリーブされ、これは、データストリームのDC(試験)仕様と呼ばれる。ここで、型C-2及びC+2のコードワードは、1よりも2個多い0及び0よりも2個多い1をそれぞれ伴うコードワードを意味する。IBMの8B/10B符号化手法は、制限範囲が定義され、あらゆる有効コードワード内で等しい個数の1と0、1よりも2個多い0、0よりも2個多い1を必要とする。IBMの8B/10Bの例では、伝送されるべき各可能な8ビット値は、2個の可能な10ビットコードワード、正の10ビットコードワード値(0に等しい個数又は0よりも多い個数の1)及び負の10ビットコードワード値(1に等しい個数又は1よりも多い個数の0)の両方を割り当てることができる。IBMの8B/10B符号化手法は、データストリームのDCが所定の時間において正確に均衡が取られるのではなく、DC値に制限範囲を定義することを必要とする。
一部の例示的な実施形態では、移動不均衡(RD)の値は、同時コードチェッカー(C3)によって追跡される。C3は、データを有限状態機械としてモデル化することによって符号化済みパケットのデータストリームを追跡することができ、データストリームを無効性に関して検査することが可能になる。IBMの8B/10B符号化手法の非限定的な例では、2つの有効RD状態、負の移動不均衡又は「RD−」、並びに正の移動不均衡又は「RD+」が存在する。IBMの8B/10B符号化手法において符号化された各8ビット値は、2個の可能な10ビットコードワードを有するために、データストリームは、実質的にDC均衡が取られた状態で維持することができ、このために無効RD値は、C3によって検出することができるエラーを示している。例えば、IBMの8B/10B符号化手法において、負のC-2型の2個のコードワードが正のC+2型によってインターリーブされずに伝送された場合には、伝送データストリームは、1よりも許容外に多くの個数の0を有することになり、符号化手法に反することになる。
一部の例示的な実施形態では、コードワード内のビット誤りの奇数番目は、コードワード値を無効コードワードに変化させることになる。ビット変化は、コードエラーチェッカー(CEC)によって特定のコードワードのDC値又はデータストリームのRD値を通じて検出することができる。一部の例示的な実施形態では、ビット誤りの偶数番目は、データストリームのDC値及びコードワードの長いストリームの変化によって検出することができる。インターリーブ検出可能エラーを反復的に多くの場合に伴わない検出不能エラーの可能性は比較的低い。一部の例示的な実施形態では、エラー検出は、ソースが考慮中の試験仕様に対して有効なコードワードストリームを発生させるという仮定に基づいている。一部の例示的な実施形態では、試験仕様は、RD仕様又はDC仕様になる。一部の実施形態では、試験仕様は、RD仕様及びDC仕様、又はこの2つの何らかの他の組合せとすることができる。同様に「試験応答」は、DC値、RD値、並びに「無効」及びRD型のような他の応答又は条件に対する総称的な名称として用いることができる。
一般的に、コードブック112は、無効性に対してデータパケットを検査するために符号化済みデータパケットに適用することができる論理式の中に有効コードワードを合成することにより実施することができる。一部の例示的な実施形態では、論理式は用いられる符号化手法に依存することになる。一部の例示的な実施形態では、DC均衡が取られたクロック埋め込みの10ビット符号化手法を用いることができる。IBMの8B/10B符号化手法を用いる非限定的な例では、コードブックは、11個の論理式の組を用いてデータストリームの無効性及び/又は伝送エラーに関して検査することができる。これらの11個の式の1つの例示的な組は、引用によって本明細書に組み込まれて下記に示すA.X.Widmer及びP.A.Franazekの文献(「DC均衡、分割ブロック、8B/10B伝送コード」、「IBM J.Res.Develop.」、第27巻、第5号、440〜451頁、1983年9月)に説明されている。このコードセットは、ここでは特定の適用可能性を有するが、本発明は、この特定のコードセットだけに限定されないことが認められるであろう。更に、本発明又は本発明の特定的な実施形態のいずれも、11個の式、又はこの特定の組、又はこれらの式の公式化のいずれにも限定されず、これらの式は、均等な数学的及び/又は論理的な組に作り直すことができ、そのような修正形式で用いるか又は実施することができることが認められるであろう。一方、本発明の少なくとも1つの実施形態は、8B/10Bとの使用のために本明細書に示す形式と同じ形式で例示的な11個の式を有利に用いることができる。
例示的な実施形態では、下記の式のいずれかが真である時に無効コードワードが生じる。ここでは、10ビットのコードワードにおいて、ビット9=j,ビット8=h,ビット7=g,ビット6=f,ビット5=I,ビット4=e,ビット3=d,ビット2=c,ビット1=b,ビット0=aである。P13は、4ビットのabcdのうちの3個が「0」であり、他の1つが「1」、すなわち、0001であることを示している。P31は、4ビットのabcdのうちの3個が「1」であり、他の1つが「0」、すなわち、1110であることを示している。表1は、IBMの8B/10B符号化手法における使用のための例示的な式を示している。
表1に示す例示的な式はIBM8/10コードブックを実施するために用いられる。これらの式は、論理ゲートネットワーク内に実施することができ、コードエラーチェッカー(CEC)回路ブロックを形成する。CEC回路は、入力として10ビットコードワードを受け取り、コードワードがコードブック内に含まれているか否かを判断する。考慮中のコードワードがコードブック内に存在しない場合には、CEC回路は、無効(invalCW=1)のフラグを立て、コードワードは、無効コードワードであることを示している。
本明細書に提供する説明に鑑みて、異なる個数及び/又は組の式を例えばIBMの5B/6B、4B/6Bのような異なる符号化手法、又は他の符号化手法と共に用いることができることが認められるであろう。
Figure 2007234009
一部の例示的な実施形態では、同時コードチェッカー(C3)は、BERカウンタ及び/又は多重入力署名レジスタ(MISR)に連結することができる。C3は、データストリーム内にエラーが発生すると、BERカウンタを増分する。BERカウンタの値は、データストリーム内のエラー率を判断するために用いることができる。一部の例示的な実施形態では、MISRは、データストリームを圧縮することができ、試験の終了時に署名を与えることができる。署名は、データストリーム内の可能なエラーを示すことができる。従来の「周期的冗長検査(CRC)」ベースのチェックサム法に比較して、MISRは、より少ないハードウエアによって実施することができ、著しく単純な同期機構を用いることができる。多重入力署名レジスタ(MISR)の例示的説明は、下記の書籍に見出すことができ、引用によって本明細書に組み込まれている:M.Abramovici、M.Breuer、及びA.Friedman著「デジタルシステムの試験及び試験可能な設計」、Wiley−IEEEプレス、1994年。
周期的冗長検査(CRC)は、ネットワークトラフィックのパケット又はコンピュータファイルのブロックのようなデータブロックに対してチェックサム(通常は、小さな固定ビット数)を生成するために用いられるハッシュ関数型とすることができる。チェックサムは、伝送又は記憶の後にエラーを検出するために用いることができる。CRCは、伝送又は記憶の前に計算又は付加され、伝播において変更が発生しなかったことを確認するためにその後受信機によって検証される。CRCはバイナリハードウエアにおける実施が単純であり、数学的な解析が容易であり、更に、伝送チャンネル内のノイズによって生じる一般的なエラーの検出に優れているために一般的である。しかし、従来のCRCベースのチェックサム法は、データ及びチェックサムの境界を識別するためのフォーマット設定及びフレーム設定を必要とする点で高度に構造化されている。PRBSと同様に、チェックサムは、TX及びRXの両方で計算する必要があり、TX及びRXにおけるチェックサム間は同期させる必要があり、柔軟性が制限される。CRCベースのチェックサムでは、エラー検出は瞬時のものではない。エラー検出の時間は、CRCの計算時間に依存する。しかし、MISRは、あらゆるデータストリームを圧縮し、その終りに署名を生成する。MISRにおけるエラー検出は瞬時であり、署名(又は試験結果)は、随時アンロードすることができる。
一部の例示的な実施形態では、C3は、任意的に試験クロック制御構造(TCCS)に連結することができる。TCCSは、制御クロックを停止するために用いることができ、デバッグを可能にする。一部の例示的な実施形態では、TCCSは、受信機回路上のデータバスを調節する制御クロックを停止する。一部の例示的な実施形態では、TCCSは、データストリーム伝送を調節する制御クロックを停止する。一部の例示的な実施形態では、C3は、エラーが発生した時に受信機の作動を停止するように設定することができ、例えば、レジスタの内部値を調べることによってエラーデバッグの進行を可能にする。2006年6月27日にChinsong Sulの名前で出願された「プログラマブル試験クロックコントローラを用いて電子回路を走査ベースで試験するための設定可能な試験クロックを発生させる試験クロック制御構造」という名称の米国特許出願第11/476,457号は、本発明と共に用いることができる特定の試験クロック制御構造に関する付加的な情報を提供しており、この出願は、引用によって組み込まれている。
図2は、符号化済みデータを伝送エラーに関して検査するように構成された同時コードチェッカー(C3)を含む例示的HSIO回路を示している。HSIO回路200は、並列化機構202及び同時コードチェッカー(C3)204を含む。
並列化機構202は、直列化データ伝送を受信するように構成されている。並列化機構202は、C3(204)に連結され、受信したデータパケットをC3(204)に送信する。並列化機構202とC3(204)の連結は、公知又は便利なあらゆる方式におけるものとすることができる。1つの非限定的な実施形態では、連結又は接続は、データバスとして実施される。
C3(204)は、コードブック212及びDC/RD仕様214を含む。一部の例示的な実施形態では、C3は、組合せ論理又は読取専用メモリ(ROM)のような回路を用いて実施することができる。C3(204)は、並列化機構202からデータパケットを受信する。パケットは、符号化される間に無効性に関して検査することができ、無効性は、コードブック212内の論理式を用いて判断することができる。1つの非限定的な実施形態では、コードブック212内の論理式を用いるこの判断は、データパケットのバイナリデータ値をハードウエア内に実施された論理式に適用することによって達成され、結果として生じる値は、無効なデータパケットが用いられたか否かを示している。一部の例示的な実施形態では、コードブックは、データパケットのDC値を生成する。DC/RD仕様214は、コードワード及びデータストリーム内のコードワードとしてのDC及びRDの規則であり、及び/又は符号化手法が満たす条件である。
一部の例示的な実施形態では、DC/RD仕様又はスペックは、符号化手法から導出され、エラーモデルに関連するものとすることができる。一部の例示的な実施形態では、DC仕様は、(DC(ck)∈{−2,0,2})∧(−2≦DC(si)≦2)とすることができ、ここで、データストリームsiのDCは、i>0に対して、DC(si)=DC(si-1)+DC(ci)と定義され、ここで、DC(s0)∈{−2,0,2}である。
一部の例示的な実施形態では、コードワード及びデータストリームの静的及び動的特性は、組合せ論理及び有限状態機械(FSM)を用いてそれぞれ実施される。一部の例示的な実施形態では、有効コードワードのDC値の検査は、5ビット加算器のような組合せ回路を用いて実施される。一部の例示的な実施形態では、有効データストリームのRD態様は、論理式を用いて判断することができ、一部の例示的な実施形態では、このデータストリームがRD仕様を満たすか否かを検査する有限状態機械を用いて実施される。
同時コードチェッカーは、無効データパケット又はデータパケット内の無効ビットが検出された時に増分されるビット誤り率(BER)カウンタ206に連結することができる。BERカウンタ206は、公知又は便利なあらゆる手段によって実施することができる。一部の例示的な実施形態では、エラー情報を収集するために、BERカウンタに加えて又はその代わりとして、多重入力署名レジスタ(MISR)を用いることができる。一部の例示的な実施形態では、MISRは、複数の同時コードチェッカー(C3)の出力を同時に観測するようになっており、オーバーフローせずに大量のエラー(これらが発生したとすれば)を取り込むように設定することができる。
任意的な試験クロック制御構造(TCCS)208は、エラー又は失敗の原因を追求するために、内部レジスタの調査を目的としてクロックを停止するために用いることができる。TCCS208は、公知又は便利なあらゆる方法で実施することができる。一部の例示的な実施形態では、TCCSは、データバスクロックを制御するように構成されている。
図3は、例示的コードブック内の値のサンプル表現を示している。第1列は、10ビットコードワードの中に符号化することができる8ビットワードサンプルを示している。第2列は、8ビットワード及び符号化された負の移動不均衡又はRD−に対応するコードワードサンプルを示している。第3列は、8ビットワード及び符号化された正の移動不均衡RD+に対応するコードワードサンプルを示している。一部の例示的な実施形態では、RD−及びRD+値は、型として解釈することができる。例示的な実施形態におけるコードワードのあらゆるDC値は、関係:DC(ci)∈{0,2}及びDC(ci)∈{−2,0}をそれぞれ満たさなければならない。DC仕様を精緻化し、より大量の伝送エラーの識別を可能にするために、RDに基づくデータパケット及びデータストリームの分割を任意的に用いることができる。
一部の例示的な実施形態では、コードワード及びデータストリームのRD機能を更に定義することができる。RDu=RD-∪RD+、RD0=RD-∩RD+、RD’-=RD-−RD0、及びRD’+=RD+−RD0であるとする。ci∈RD’-及びRD’+ならば、コードワードciのRD型(RDT)機能は、それぞれRDT(ci)=−1及び1と定義することができる。また、コードワードci∈RD0のRD型は、RDT(ci)=0、無効のRD型は、RDT(ci)=Fと定義することができる。すなわち、一部の例示的な実施形態では、有効コードワードciは、仕様RDT(ci)∈{−1,0,1}を満たさなければならない。IBMの8B/10B符号化手法を用いる一部の非限定的な例示的実施形態では、所定のコードワードが無効か否かを検査するために、11個の論理式の組を用いることができる。他の符号化手法も用いることができ、これらは、異なる個数又は型の論理式を必要とする。
一部の例示的な実施形態では、集合RD’-及びRD’+は、有効コードワードのDC値に対して更に分割することができる。分割は、検出した無効性又はエラーに基づいてコードワードを集合に分割することを意味する。dc∈{0,2}に対して、RD-dc=RD’∩Cdc及びRD+dc=RD’+∩C-dcであるとする。RD+dc⊆C-dc及びRD-dc⊆C+dcであることに注意されたい。同様に、一部の例示的な実施形態では、ストリームsiのRD機能は、RD(si)=RD(si-1)+DC(ci)と定義することができ、ここで、RD(s0)∈{−1,1}である。RD機能は、有効コードワードのDCがRDにどのように関連しているかということを示している。すなわち、有効コードワードのDCは、DC(ci)=RD(si)−RD(si-1)のようにデータストリームのRDの項で表現することができる。ストリームのRD機能を用いると、有効コードワードストリームのDCは、i≧0に対してDC(si)=RD(si)+RD(s0)と書くことができる。
便宜上仕様1と呼ぶことができる一部の例示的な実施形態では、RD(試験)仕様は、ci∈RD-2∪RD+2に対して、RD(ci^si-1)=−RD(si-1)と同様に定義することができる。一部の例示的な実施形態では、データストリームは、DC仕様の対応物に等しくなり、有効コードワードのRD仕様である差異は、DC仕様を満たす未使用のコードワードを除外することができる。
一部の例示的な実施形態では、便宜上仕様2と呼ぶことができるデータストリームのRD(試験)仕様は、P1∨P2と定義することができ、ここで、k>0に対して、P1={(RD(ci^si-1)=RD(si-1))∧(ci∈RDu∩C0)}及びP2={(RD(ci^si-1)=−RD(si-1))∧(ci∈RDu∩Cdc)}であり、^は、データストリームの連結を意味し、dc=−2RD(si-1)である。一部の例示的な実施形態では、P2は、RD仕様1を含む。一部の例示的な実施形態では、RD仕様1及び2は、DC仕様を精緻化するために用いられ、より大量のエラーの検出が可能になる。
図4は、同時コードチェッカー400の例の内部構造を示している。同時コードチェッカー400は、コード区切り文字検出器(CDD)402、同時コードチェッカー(C3)論理404、移動不均衡有限状態機械(RD FSM)406、MISR/カウンタ408、及びクロック停止回路410を含む。
C3論理404は、入力として到着コードワードを受信する。C3は、無効性に対してコードワードを検査することができ、DC/RDのFSM406に渡されるコードワードに関するDC及び/又はRD値を生成する。一部の例示的な実施形態では、入力データストリームの開始を同期させるために、C3論理は、コードワード有効性及びDC値をCDD402に供給することができる。一部の例示的な実施形態では、DC/RD同期を追跡するために、C3論理は、DC及び/又はRD値をDC/RDのFSMに供給することができる。一部の例示的な実施形態では、CDDが有効コードワード境界を検出する時に、CDDは、DC/RDのFSM、BERカウンタ、及び/又はクロック停止回路を使用可能にすることができる。
CDD402は、有効コードワード境界を同期させるために特別の制御文字及びC3(404)からの有効信号を用いることができる。一部の非限定的な例示的実施形態では、K28.3制御文字のような制御文字を用いることができる。K28.3制御文字は、当業技術で公知であり、K.Girmsrud及びM.Smith著「直列ATA記憶装置アーキテクチャ及び用途」、Intelプレス、2003年(130頁)において説明されており、これは、本明細書に引用によって組み込まれている。CDD402は、制御文字を検出した上でDC/RD検査を開始するために使用可能な信号を発生させる。一部の例示的な実施形態では、制御フリップフロップのロードは、望ましい同期手法が使用可能になることを可能にする。一部の例示的な実施形態では、CDDは、有効信号を発生させることができ、あらゆる特別な文字検出回路の除去を可能にする。一部の例示的な実施形態では、システムは、CDDを既に含むことになるために、システムからのCDDを再使用することができ、回路からの専用CDDの取り外しが可能になるために、CDDは任意的である。一部の例示的な実施形態では、1つ又は1つよりも多い有効コードワードを受信する場合は、DC/RDのFSMは、データストリームの有効性を検査するために使用可能にすることができ、一部の例示的な実施形態では、有効(又は無効)コードワード信号又はDC値による同期が可能になる。
コードワード境界が検出された場合は、RDのFSM406を使用可能にすることができ、RDのFSM406は、DC/RDの正しいシーケンスに関して検査する。コードワードのDC及び/又はRD値は、C3論理404によって計算され、コードワードの有効性を判断するために、C3論理404は、結果として生じる値をDC/RDに供給することができる。一部の例示的な実施形態では、RD型に連結したDCは、RDの計算に対して適用することができる。一部の例示的な実施形態では、RDのFSMは、自己同期FSMである。一部の例示的な実施形態では、コードエラーチェッカー(CEC)によって生成された無効性信号は、自己同期のために用いることができる。有効コードワード又は多数の連続有効コードワードが検出された場合には、試験制御ユニット504は、エラー検出を開始するためにDC/RDのFSMを使用可能にすることができる。DC/RDのFSMは、状態Sで開始することができ、データストリームのDC又はRDの状態を判断することができるコードワードに遭遇するとDC又はRD状態へと遷移を行う。例えば、C+2又はRD-0型のコードワードに遭遇した場合には、DC/RDのFSMは、データストリームのDC又はRD値を追跡するためにコードワードの位置を用いることができる。すなわち、望ましい同期が確立される。データパケットがエラーによって制御文字に変更された場合には、制御文字がエラーを登録した後に同期を回復することができる。
C3論理404は、導出されたDC/RD仕様に基づいて実施される。C3論理404は、有効コードワード及びデータストリームのDC/RD仕様を考慮するものである。データストリームのDC値は、C3論理404によってRDのFSM406に供給される。コードワードのDC値が無効であった場合には、C3論理は、RDのFSM406に無効信号を供給することができ、RDのFSM406は、無効信号をアサートする。一部の例示的な実施形態では、C3論理ブロックを実施するために5ビット加算器及び1つ又はそれよりも多くのDCマッピング回路を用いることによってC3論理を実施することができる。
Dフリップフロップ412は、クロック停止信号をアクティブ化及び非アクティブ化することができる制御フリップフロップを表している。一部の例示的な実施形態では、制御フリップフロップは、「IC間」バス(I2C)を通じて外部からアクセス可能であり、又は内部で制御することができる。
図5は、例示的なコード区切り文字検出器(CDD)500の内部構造の例示的な実施形態を示している。CDD500は、K28.3検出器502、試験制御回路504、有効DC検出器506、及びC3論理からの有効コードワード信号(val_cw)を含む。K28.3検出器502は、K28.3制御文字を検出することができ、DC/RD検査を開始する。有効DC506は、有効DC値を検出し、有効DC値が検出された場合は、有効DC(valDC=1)を出力する。K28.3が検出された場合には、試験制御回路は、DC/RDのFSMを使用可能にし、コードワード及びデータストリームの有効性を検査する。一部の例示的な実施形態では、データストリームの開始を検出するために、有効コードワード(val_cw)又は有効DC(valDC)が用いられる。一部の例示的な実施形態では、1つ又は所定数の有効コードワード又はDC値に遭遇した場合は、試験制御装置は、C3を使用可能にする。試験制御装置504を使用不可にするために、代替的な使用不可信号を供給することができ、この試験制御装置504は、それが使用可能にするDC/RDのFSM及び他の回路を使用不可にするものである。これか又は均等な機能を実行する他の代替的な検出器を利用することができる。一部の例示的な実施形態では、CDDは、C3を同期させるために用いられる。
図6aは、DC仕様に関する例示的自己同期DCチェッカーのための例示的有限状態機械(FSM)600を示している。FSM600は、コードワードが有効であると判断した後にコードワードのDCを生成する。図示の例示的有限状態機械は、コードワードが有効である場合及び無効コードワードが検出されシステムを失敗状態に転移させる場合の両方の場合の状態を例示している。表2は、DC値及び対応2ビット表現の例を示している。表3は、RD値及び対応2ビット表現の例を示している。
一部の例示的な実施形態では、FSM600は、無効DC値及び無効RD値の部分集合の判断を可能にする。無効値に到達した場合、FSM600は、「失敗」状態に入る。「同期」状態は、FSM600の状態を示し、新しいデータストリームを受信する時又はFSMがエラー(失敗)状態から回復している時に、正しいDC又はRD状態へと同期化するための待機状態として用いられる。
図6bは、例示的RD仕様を実施するために用いられる自己同期有限状態機械(FSM)650の例を示している。RDのFSMが使用可能信号を受信すると、RDのFSMは、RD追跡のための開始点を同期させるために適正RD型を待つ。図6bのFSMの実施により、入力が「失敗」状態に遷移した場合に、RDのFSMがRD-0及びRD+0型に関連するエラーを検出することが可能になる。一部の例示的な実施形態では、データストリーム内の大量の見込みエラーに関して検査を行うために、第1の有限状態機械FSM600と共に第2のFSMFSM650が用いられる。FSM650がFSM600と共に用いられる場合には、いずれのFSMにおける「失敗」状態への到達もエラーを示すことになる。RDTがマスクされた場合は(すなわち、RDT=0)、FSM650は、FSM600に一致する。
図7は、エラー検出回路700の実施例を示している。エラー検出回路は、C3論理702及びDCのFSM704を含む。C3論理702は、出力であり、DCのFSM704に渡され、又はそうでなければ通信され、状態を更新するためにDCのFSM704によって用いられるDC値を生成する。表4は、10ビットコードワードが用いられ、C3論理によって2ビット出力にマップされる例示的な実施形態を示している。
Figure 2007234009
Figure 2007234009
Figure 2007234009
Figure 2007234009
図8は、同時コードチェッカー(C3)論理800の実施の例示的な実施形態を示している。C3論理は、加算器802及びDCマッパー804を含む。加算器802は、用いる符号化手法に向けた公知の又は便利なあらゆる加算器として実施することができる。例えば、IBMの8B/10B符号化手法を用いる非限定的な実施形態では、C3論理ブロックを実施するために5ビット加算器を用いることができる。
DCマッパー804は、DC値をマップ済みDC値へとマップする。IBMの8B/10B符号化手法を用いる非限定的な実施形態では、DCマッパーは、DC値を対応2ビット符号化DC値、DC[1:0]にマップする。表5は、5ビット加算器の値がDC[1:0]にマップされる例示的な実施形態を示している。一部の例示的な実施形態では、未使用のコードワードは、真理値表内に有効として入力することができる。例えば、IBMの8B/10B符号化の非限定的な実施例における未使用のコードワードは、−2及び2の有効DC値を有することができる。有効DC値を有するIBMの8B/10B符号化における未使用の無効コードワードは、コードワード4160、5051、及び4061であり、ここで、「M1N0」又は「N0M1」は、M個の1とN個の0から成る10ビットコードワードを意味する。
一部の例示的な実施形態では、DC仕様を満たす未使用コードワードを検出するために有効コードワードのRD仕様を用いることができる。殆どの状況では、RD仕様を実施するためには完全なコードブックを実施すべきである。IBMの8B/10B符号化手法を用いる非限定的な例示的実施形態では、無効コードワードから有効コードワードを分離するために、11個の論理式を用いるIBMの8B/10B符号化手法に対してコードエラーチェッカーが利用可能である。
図9は、コードワード及びデータストリームの有効性を検証するように構成されたDC/RD論理900の例示的実施を示している。DC/RD論理900は、C3論理902及びFSM904を含む。
図10は、例示的C3論理1000を示す図である。C3論理1000は、コードエラーチェッカー(CEC)1002及びDC計算論理1004を含む。
一部の例示的な実施形態では、図10に示すC3論理1000は、図9のC3論理902として用いることができる。コードエラーチェッカー(CEC)1002は、FSM904に渡されるコードワードを確認し、すなわち、FSM904が有効入力コードワードのみを受信することになるという仮定の下で作動することを可能にする。一部の例示的な実施形態では、コードワード内でエラーが発生する可能性があるが、修正コードワードは、データストリームコンテキストがなければ依然として技術的には有効であると考えることができ、コードワードがデータストリームコンテキストにおいて無効であるか否かを判断するためにエラーチェッカーによって確認され、FSMに送信されることになる。例示的な実施形態では、コードワードが無効の時には、コードエラーチェッカー1002は、「無効」信号をアサートし、FSM904を失敗又はエラー状態へと強制移行させる。すなわち、特定的な実施形態では、コードエラーチェッカー信号が無効信号をアサートする場合は、DC又はRD計算回路の出力は「無指定」状態にある。ある一定の例示的な実施形態では、無効コードワードに遭遇した場合にDC/RD計算回路において論理回路(又はハードウエア)を最小にするために無指定信号の使用を利用することができる。一部の例示的な実施形態では、DC計算回路、RD計算回路、及び/又は他の何らかのDC/RDの組合せ計算回路が有効出力を生成すべきである要求状態の個数を減少することによって縮小が可能である。
図11は、コードワードのDC仕様及びデータストリームのRD仕様を検証するDC/RD論理1100の例示的実施を示している。DC/RD論理1100は、C3論理1102及びFSM1104を含む。
FSM1104は、用いる符号化手法に従って1つ又はそれよりも多くの有限状態機械を用いてデータストリームの状態をモデル化する。例えば、データストリームのRDは、IBMの8B/10B符号化手法に従って図6a及び6bにおいて上述したFSMモデルのようにモデル化することができる。FSM1104の状態は、C3論理1102から受信する値によって更新される。検査されるべきDC仕様又はRD仕様の選択を与えるために、制御信号DC/RDを加えることができる。一部の例示的な実施形態では、コードエラーチェッカーを使用可能又は使用不可にするために、制御信号CEC_enを加えることができる。表6は、可能な制御信号の一部の例示的な実施形態を提供している。
図12は、同時コードチェッカー(C3)論理1200の実施の例示的な実施形態を示している。C3論理1200は、コードエラーチェッカー(CEC)1202、RD型(RDT)論理1204、及びDC論理1206を含む。一部の例示的な実施形態では、図12に示しているものは、図11のC3論理1102として用いることができる。
Figure 2007234009
CEC1202は、無効コードワードを受信した時に「無効」信号を出力するように設定することができる。一部の例示的な実施形態では、CEC1202はまた、補足信号(すなわち、「有効」)を出力するように設定することができる。一部の例示的な実施形態では、コードワードは、データバスから受信することになる。一部の例示的な実施形態では、無効信号は、望ましい実施に依存して高電圧信号(バイナリ1)又は低電圧信号(バイナリ0)とすることができる。CEC1202は、論理回路又は読取専用メモリ(ROM)のような公知の又は便利なあらゆる方式で実施することができる。
RD型論理1204は、RD型が、FSMに適用されてデータストリームのRDをモデル化すると考えられるので、コードワードの「RD型」を判断するように設定することができる。コードワードのRD型は、実施で用いられる符号化手法に依存する。IBMの8B/10Bを用いる例に対しては、上述の仕様2の定義を参照されたい。
DC論理1206は、コードワードのDC値を判断するように設定することができる。例えば、コードワードが1よりも2個多い0を有する場合は、DC値は−2である。DC論理1206及びRD型論理1204は、マッピング論理1208と連結することができる。マッピング論理1208は、DC論理1206及びRD型論理1204によって生成された値をマップすることができ、FSMによる使用のためにその結果をバイナリ値にマップすることができ、データストリームの状態をモデル化するものである。
一部の例示的な実施形態では、試験が、未使用コードワードをテストパターンに含めて他のものにおいて有効と考えることを要求する時には、C31200は、DC仕様及びRD仕様の両方を有利に実施することができるように設定することができる。C3を設定するために、2つの制御信号、CEC使用可能(CEC_en)制御信号、及びDC/RD制御信号を用いてRD仕様を実施することができる。CECが試験に含まれるか否かを判断するためにCEC使用可能制御信号を用いることができ、DC仕様又はRD仕様を選択するためにDC/RD制御信号を用いることができる。一部の例示的な実施形態では、CEC制御が使用可能又は使用不可にされている状態で、マッピング回路によってDC、RD仕様1及び2を実施することができ、従ってDC/RDをプログラムする。一部の例示的な実施形態では、CECの出力は、必要に応じて外部から又は内部で供給することができるCEC使用可能信号によって条件付きで使用可能にすることができる。一部の例示的な実施形態では、無効信号をマスク又はフィルタリングするためにCEC使用可能信号を用いることができ、試験又は使用中により多様化したコードワード(又は試験入力)を用いることが可能になる。
一部の例示的な実施形態では、C3論理は、読取専用メモリ(ROM)を用いて実施することができる。RD及びDC値を含む一部の実施形態におけるコードワードの有効性は、ROMの各ロケーションの中にプログラムすることができ、コードワードは、ROMへのアドレス入力として用いることができる。ROMは、対応する符号化手法におけるコードワードの実際の有効性によらずに試験下のあらゆるコードワードに対して無効又は有効状態を実施することができ、それによってより広範な試験オプションを可能にする。
図13は、データのテストパターンにおけるエラー検出回路又は論理1300のための例示的回路を示している。エラー検出のための回路1300は、第1の並列化機構1302、同時コードチェッカー(C3)1304、MISR/カウンタ1306、試験クロック制御構造(TCCS)1308,位相固定ループ(PLL)1310、例えばFIFO1312のような先入れ先出し(FIFO)バッファ、第2の並列化機構1314,第1のDレジスタ1316、及び第2のDレジスタ1318を含む。
エラー検出回路1300は、C3論理1304を共有することができ、かつあらゆる非直列化バスを観測するように設定することができる方法を示している。Dレジスタ1316及び1318をプログラムすることによって異なるプログラムを実施することができる。一部の例示的な実施形態では、特別仕様のテストパターン又はデータセットを、エラーを誘発するターゲット欠陥に適用することができる。一部の例示的な実施形態では、通常機能又は作動モード中に望ましいロケーション上の又はそこからのトラフィックをモニタするためにC3を使用可能にすることができる。一部の例示的な実施形態では、データのテストパターンは、擬似乱数バイナリシーケンス(PRBS)によって生成されることになる。一部の例示的な実施形態では、第1及び第2のDレジスタ1316及び1318は、回路又は関連回路によって内部で又は外部からの両方で制御することができる制御フリップフロップとすることができる。
図14は、データのテストパターンにおけるエラー検出のための代替的な例示的回路1400を示している。エラー検出のための回路1400は、自動試験機器(ATE)1402、送信器/PRBS1404、第1の並列化機構1406、第2の並列化機構1408、第1の同時コードチェッカー(C3)1410,第2の同時コードチェッカー1412,BERカウンタ1414,第1のFIFO1416,第2のFIFO1418、及びMISR1420を含む。
第1の並列化機構1406及び第2の並列化機構1408は、データストリームを同時に受信するように設定することができる。第1及び第2の並列化機構1406及び1408は、第1及び第2のFIFO1420及び1422にそれぞれ連結される。第1及び第2のFIFO1420及び1422は、更に、第1及び第2の同時コードチェッカー(C3)1410及び1412に連結される。C3(1410及び1412)は、伝送エラーが発生したか否かを判断するためにそれぞれの連結されたFIFOから送信され、受信するデータパケットを有効性に関して検査する。一部の例示的な実施形態では、C3は、個々の受信パケットの有効性をこのデータパケットがその一部をなすそれぞれのデータストリームコンテキストにおいて検証することになる。BERカウンタ1414は、第1のC3(1410)及び第2のC3(1412)の両方に連結することができ、第1のC3(1410)又は第2のC3(1412)のいずれかが伝送エラーに遭遇した場合に、内部カウンタ値を増分するように設定することができる。
エラー検出のための回路1400は、BERカウンタ及びTCCSのような周辺ハードウエアを共有することができる方法を明らかにしている。一部の例示的な実施形態では、異なるテストパターンソースを第1及び第2の並列化機構1406及び1408に同時に適用することができ、それによって試験データではなく現実のデータを受信するために受信機が用いられる場合がある時のような現場における機能的作動の模倣により近づくものである。一部の例示的な実施形態では、複数のC3からビット誤り率(BER)を収集するために、通常の機能中にビット誤り率(BER)カウンタを同様に使用可能にすることができる。一部の例示的な実施形態では、データのテストパターンは、PRBSによって生成されることになる。一部の例示的な実施形態では、FIFO1416及び/又はFIFO1418において弾性FIFOを用いることができる。
一部の例示的な実施形態では、図11及び図12のそれぞれにおけるC3(1102)及びC3(1200)は、図9及び図10のC3(902)及びC3(1000)の上位集合であり、これらは、図7及び図8のC3(702)及びC3(800)の上位集合とすることができる。一部の例示的な実施形態では、図12のRDTが使用不可にされる場合は(RDT=0の出力)、回路1200は、図9及び図10のC3と同等にすることができる。一部の例示的な実施形態では、CEC及びRDTの両方が使用不可にされる場合には、回路1200は、図7及び図8に同等にすることができる。
図15は、符号化済みデータのエラー検査方法の例示的な実施形態の流れ図1500を示している。本方法は、到着直列化及び符号化済みデータパケットを受信する段階1502、直列化された到着データパケットを非直列化する段階1504、データパケットの有効性を検査する段階、非直列化及び符号化済みデータパケットのDC値を導出する段階1506、DC又はRD値が無効であるか否かを判断する段階1508、及び非直列化及び符号化済みデータパケットが有効DC又はRD値を有しない場合に、到着データに失敗のフラグを立てる段階1510を含む。
本発明の更に別の実施形態に注意を向けると、本発明は、システム内でデータストリームを用いて同時コードチェッカー(C3)論理の機能を試験する方法の実施形態を含むことが認められるであろう。一実施形態では、本方法は、システムを試験モードに設定するために同時コードチェッカー(C3)内の少なくとも1つのレジスタをプログラムする段階を含む。また、本方法は、コードワードをモニタし、モニタ中に検出した有効コードワードの個数を判断する段階を含むことができる。本方法は、有効コードワードの所定数が検出されたか否かを判断し、コード区切り文字検出器CDD内の試験制御回路が移動不均衡有限状態機械(RD FSM)を使用可能にし、データストリームの有効性を検査させる段階を更に含むことができる。本方法は、RDのFSMが使用可能にされた場合に、RDのPSMを用いてデータストリームをモニタし、このデータストリームを適正に同期化する段階を更に含むことができる。本方法の実施形態は、同期後にC3が試験仕様を完了するまで継続して追跡する段階を更に含むことができる。また、本方法の実施形態は、試験が完了した時に同時コードチェッカー(C3)論理を使用不可にする段階を含むことができる。
システム内でデータストリームを用いて同時コードチェッカー(C3)論理の機能を試験する方法の少なくとも1つの実施形態は、システムの試験モードへの設定段階がシステムをオンライン試験モードに設定する段階を含むように更に規定することができる。一実施形態では、オンライン試験モードは、コード区切り文字検出器(CDD)において有効コードワード(valCW)を使用可能にし、データストリームの開始を同期させる段階、及び利用可能試験仕様から試験仕様を選択するためにCEC及びDC/RD制御信号(DC又はRD仕様検査)を使用可能にするようにコードエラーチェッカー制御信号(CEC_en)を設定する段階を更に含むことができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、利用可能試験仕様が、DC仕様、RD仕様、及びDC及びRD仕様の組合せを含むことを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、方法が、最初に通常システムを開始する段階、及びその後このシステムをオンライン試験モードに設定する段階を更に含むことを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、システムが作動中に、システムを試験モードに設定するためにC3論理内で「IC間」バス(I2C)レジスタをプログラムする段階を提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、試験モードがオンライン試験モードを含むことを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、少なくとも1つのレジスタが少なくとも1つの「IC間」バス(I2C)レジスタを含むことを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、少なくとも1つのレジスタが複数の「IC間」バス(I2C)レジスタを含むことを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、C3を使用不可にする段階が試験制御ユニットを使用不可にすることによって達成されることを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、試験制御ユニットの使用不可段階が、I2Cを通じて使用不可信号をプログラムすることによって達成されることを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、同期後に完了するまで試験仕様を継続して追跡する段階が、エラーに遭遇した場合にビット誤り率(BER)カウンタを増分する段階を更に含むことを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、方法が、エラー数を現場におけるチャンネル品質の指標として判断するために、BERカウンタの内容又は計数値を観測する段階を更に含むことを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、試験仕様が、DC試験仕様、RD試験仕様、及びこれらの組合せを含む試験仕様の集合から選択されることを提供することができる。
同時コードチェッカー(C3)論理の機能を試験する方法の別の実施形態では、本方法は、システムが作動中にプログラムする段階が実施されることを提供することができる。
本発明の実施形態はまた、回路の論理最適化を提供する。ハードウエアを低減するための論理最適化は、多くの場合に市販の「電子設計自動化(EDA)」論理合成ツールによって実施される。論理回路又は論理回路のアレイ又は組に対して真理値表内に指定される条件がより無指定になるに連れて、その論理回路又は論理回路の組又はアレイを実施するハードウエアはより単純でコンパクトにすることができることは事実である。例えば、実際の物理的ANDゲート論理回路への論理入力を指定するものから論理的真理値表を指定することによってもたらすことができる回路は、これらの論理的真理値表の状態が「無指定」状態として指定される場合は配線又は接続へと単純化することができ、例えば、無指定状態は、論理「0」又は論理「1」のいずれか又はこれらの対応する信号電圧値とすることができる。すなわち、提案する手法では、無指定は、コードワードエラーチェッカーの既存の無効出力信号及び/又はコードワード型に基づいて作り出されたものである。
図16は、例示的な論理的真理値表1600である。左列1602は、真理値表(10ビットコード「コード[9:0]」)の入力を識別し、一方、右列は、合成すべき出力機能を識別する。目標とする出力機能は、コードワードのDC値1608、無効コードワード(invalCW)1610、及びコードワードciのRD型(RDT)機能1612である。RDT(ci)∈{−1,0,1}及びDC(ci)∈{−2,0,2}であるという本明細書の他の箇所の説明を思い起こされたい。表内の符号「X」は、無指定条件を特定している。一部の例示的な実施形態では、必要とされる無効コードワード(invalCW)機能を実施するために、無効コードワードを検出する11個の論理式を用いることができる。必要とされる無効コードワード(invalCW)機能を実施するために、他の実施形態はまた、異なる論理式又は数式、又は異なる個数の式を用いることができる。
コードワードが無効(invalCW)である場合には、この条件は、本明細書の他の箇所に説明する式の組を用いて実施されるinvalCW出力機能によって識別することができる。invalCWに関する式は、大きな半導体面積を消費しない単純な論理で実施することができる。既存のinvalCW出力機能及びRDT機能内に組み込まれたコードワード型の利用は、必要な又は指定の入力数を著しく低減し、DC及びRDT出力機能に関する真理値表内で同数の出力無指定を増加させる。一部の実施形態では、無指定数の増加を利用することによって得られる論理及び対応する回路面積の低減は、本発明の無指定最適化を利用しない論理回路に比較して少なくとも50%とすることができる。他の実施形態では、論理回路及び面積の低減は、少なくとも60%とすることができ、他では少なくとも70%、更に他では少なくとも80%又はそれよりも多いとすることができる。これは、ここで説明する特定実施例に鑑みてより容易に認められるであろう。
有効DC値を有するIBMの8B/10B符号化における例示的な未使用無効コードワードは、コードワード4160、5051、及び4061であることを思い出されたい。ここで、コードワード「M1N0」又は「N0M1」は、M個の1及びN個の0から成る10ビットコードワードを意味する。RD2及びRD2型のコードワードは、1621及び1626行だけに示されているDC値によって識別することができるために、RDTは、全ての4160及び4061コードワードに対して無指定とすることができる。DC値から推測することができるRD型は、全部で234個(2掛ける117)の無指定を導入することができる。無指定手法の使用により、結果として括弧「(117)」によって示している個数のように、列1606の行1621及び1626におけるRDT出力機能の117個の特定入力の除去がもたらされる。
DC値及びRD型は、invalCW出力機能を実施するコードワードエラーチェッカーによって検出することができるために、無効コードワードに対して考慮する必要はないであろう。従って、DC及びRDTの出力は、行1624、1627、及び1628において無指定とすることができ、44、186、及び352個の無指定をそれぞれ導入する。
C3回路に適用する本発明で提案する無指定手法の結果、RDT及びDC出力機能のそれぞれに対して、合計1024個から816(117+44+117+186+352)個の出力無指定及び582(44+186+352)個の出力無指定が生じる。従って、この提案手法は、RDT機能に対して816/1024=0.7968又はほぼ80%、DC出力機能に対してほぼ57%だけ特定入力個数を低減している。これらは、特定の例示的設計に関する個数であり、多少異なる個数の合計無指定数が代替的な設計に対する合計数を表すことができることは認められるであろう。いかなる場合にも、結果として生まれる論理及び半導体実施における対応する半導体面積の低減は、有意であるとすることができる。
本明細書で用いる場合、用語「実施形態」は、限定ではなく一例として示す役割を有する実施形態を意味する。
上述の実施例及び実施形態は、例示的なものであり、本発明の範囲を限定するものではないことを当業者は認めるであろう。本明細書を読解して図面の考察が行われると当業者に明らかであるこれらに対する全ての置換、強化、均等物、及び改善は、本発明の真の精神及び範囲に含まれるものとする。従って、特許請求の範囲は、全てのそのような修正、置換、及び均等物が本発明の真の精神及び範囲に該当するように意図されたものである。
伝送エラーに対して符号化済みデータを検査するように構成された「高速入出力(HSIO)」装置の例示的な実施形態を示す図である。 伝送エラーに対して符号化済みデータを検査するように構成された同時コードチェッカーを含むHSIO回路の例示的な実施形態を示す図である。 コードブックの例示的な実施形態における内部値のサンプル表現を示す図である。 同時コードチェッカーの例示的な実施形態の内部構造を示す図である。 コード区切り文字検出器(CDD)の例示的な実施形態の内部構造を示す図である。 DC仕様に関する自己同期DCチェッカーの例示的な実施形態で用いられる例示的な有限状態機械を示す図である。 RD仕様に関する自己同期移動不均衡(RD)チェッカーの例示的な実施形態で用いられる有限状態機械の例示的な実施形態を示す図である。 エラー検出回路の実施の例示的な実施形態を示す図である。 同時コードチェッカー論理の実施の例示的な実施形態を示す図である。 コードワードのDC仕様及びデータストリームのDC仕様を検証するDC論理の実施の例示的な実施形態を示す図である。 同時コードチェッカー論理の実施の例示的な実施形態を示す図である。 コードワード及びデータストリームのDC及びRD仕様を検証するDC/RD論理の実施の例示的な実施形態を示す図である。 同時コードチェッカー論理の実施の例示的な実施形態を示す図である。 データのテストパターンにおけるエラー検出のための回路の例示的な実施形態を示す図である。 データのテストパターンにおけるエラー検出のための回路の代替的な例示的実施形態を示す図である。 エラーを検査する符号化済みデータのための手順の例示的な実施形態の流れ図を示す図である。 同時コードチェッカー回路の論理及び半導体面積を低減するために無指定信号条件を用いる設計最適化に関連する例示的な表を示す図である。
符号の説明
100 受信機
102 並列化機構
104 同時コードチェッカー(C3)
106 復号器

Claims (64)

  1. 到着直列化及び符号化済みデータを符号化済みデータパケットに非直列化するように構成された並列化機構と、
    前記データパケットが無効であるか否かを判断するように構成されたコードブックと、
    前記データパケットが無効であって、該データパケットを符号化するのに用いられる符号化手法の仕様に反しているかを検査するように構成された仕様論理と、
    作動時に、前記符号化済みデータパケットが無効である場合に伝送エラーを登録するためのデータパケットエラー論理と、
    を含むことを特徴とする受信機。
  2. 作動時に、仕様論理が、前記データパケットの静的特性及び該データパケットを含むデータのストリームの動的特性を用いて無効性に関して該データパケットを検査することを特徴とする請求項1に記載の受信機。
  3. 前記データパケットは、DC均衡したクロック埋め込み符号化手法を用いて符号化された10ビットコードワードであることを特徴とする請求項1に記載の受信機。
  4. 前記コードブックは、前記10ビットコードワードが前記データパケットの符号化に用いられた前記符号化手法に適合しているか否かを判断するのに用いることができる複数の値を含むことを特徴とする請求項1に記載の受信機。
  5. 前記仕様論理は、前記10ビットコードワードが無効であるか否かを判断するのに用いることができる11個の論理式を含むことを特徴とする請求項1に記載の受信機。
  6. 前記到着データは、10ビットコードワードのストリームであり、
    作動時に、前記仕様論理は、1と0の個数が前記10ビットコードワードストリーム内で均衡しているか否かを判断する、
    ことを特徴とする請求項1に記載の受信機。
  7. 前記到着データは、10ビットコードワードのストリームであり、
    作動時に、前記仕様論理は、前記10ビットコードワードストリームの移動不均衡(RD)が前記符号化手法に反しているか否かを判断する、
    ことを特徴とする請求項1に記載の受信機。
  8. 前記仕様論理は、前記10ビットコードワードが無効であるか否かを判断するのに用いることができる11個の論理式を含むことを特徴とする請求項7に記載の受信機。
  9. 前記データパケットが無効である場合に増分されるビット誤り率カウンタを更に含むことを特徴とする請求項1に記載の受信機。
  10. 作動時に前記データパケットが無効の場合にエラーを登録する多重入力署名レジスタ(MISR)を更に含むことを特徴とする請求項1に記載の受信機。
  11. 前記データパケットが無効である場合に内部レジスタを調べるためにクロックを停止する試験クロック制御構造を更に含むことを特徴とする請求項1に記載の受信機。
  12. 前記仕様論理は、4つの状態を有する有限状態機械(FSM)を含み、
    作動時に、前記FSMは、前記データパケットが一部を成すデータストリームを追跡する、
    ことを特徴とする請求項1に記載の受信機。
  13. 前記FSMは、前記データストリームから開始点を抽出することによって自己同期することを特徴とする請求項12に記載の受信機。
  14. 作動時に、前記FSMは、ビット誤り率(BER)の連続測定を中断なしに実施することができるようにエラーから回復するように構成されていることを特徴とする請求項12に記載の受信機。
  15. 自己同期するように構成された多重入力署名レジスタ(MISR)を更に含むことを特徴とする請求項1に記載の受信機。
  16. 作動時に、前記MISRは、使用する符号化手法から独立していることを特徴とする請求項15に記載の受信機。
  17. 前記仕様論理は、複数の有限状態機械(FSM)を含み、
    作動時に、第1のFSMは、前記符号化済みデータパケットを含むデータストリームのDC均衡を追跡し、第2のFSMは、該データストリームの移動不均衡(RD)値を追跡する、
    ことを特徴とする請求項1に記載の受信機。
  18. 前記コードブックは、読取専用メモリを用いて実施され、作動時に、符号化済みデータパケットに対してカスタマイズ可能RD値を許すことによって設定可能な試験を可能にすることを特徴とする請求項1に記載の受信機。
  19. 前記仕様論理は、
    エラー検出回路、
    を含み、
    前記エラー検出回路は、
    データストリーム内の符号化済みデータパケットのDC値を判断するように構成された同時コードチェッカー(C3)と、
    前記データストリームの状態を追跡するように構成された有限状態機械(FSM)と、
    を含み、
    作動時に、前記C3の論理は、前記FSMに前記符号化済みデータパケットの前記DC値を送信し、該FSMは、該DC値を用いて前記データストリームの現在の状態が与えられた上でエラーが発生したかを判断する、
    ことを特徴とする請求項1に記載の受信機。
  20. データの保全性を検証する方法であって、
    到着直列化及び符号化済みデータパケットを受信する段階と、
    前記到着直列化及び符号化済みデータパケットを非直列化する段階と、
    データパケットの有効性を検査する段階と、
    前記符号化済みデータパケットの試験応答値を導出する段階と、
    前記試験応答値が有効又は無効試験応答値であるかを判断する段階と、
    前記試験応答値が無効であった場合に、前記到着非直列化及び符号化済みデータパケットに失敗のフラグを立てる段階と、
    を含むことを特徴とする方法。
  21. 前記試験応答値は、DC値を含むことを特徴とする請求項20に記載の方法。
  22. 前記試験応答値は、移動不均衡(RD)値を含むことを特徴とする請求項20に記載の方法。
  23. 前記試験応答値は、直流(DC)値、移動不均衡(RD)値、又は該DC及びRD値の両方の組合せを含むことを特徴とする請求項20に記載の方法。
  24. 前記到着データパケットは、DC均衡したクロック埋め込み符号化手法を用いて符号化された10ビットコードワードであることを特徴とする請求項20に記載の方法。
  25. 非直列化及び符号化済みデータパケットの前記DC値の判断が、前記10ビットコードワード内の1及び0の比率を伴っていることを特徴とする請求項24に記載の方法。
  26. 前記試験応答値が無効であるか否かを前記判断する段階は、前記符号化済みデータパケットを含むデータストリームのRD値をモデル化する有限状態機械を用いることを特徴とする請求項20に記載の方法。
  27. 前記データパケットに失敗のフラグが立てられた場合にビット誤り率カウンタを増分する段階、
    を更に含むことを特徴とする請求項20に記載の方法。
  28. 多重入力署名レジスタ(MISR)を用いてエラーを登録する段階、
    を更に含むことを特徴とする請求項20に記載の方法。
  29. 前記データパケットに失敗のフラグが立てられた場合にクロックを停止する段階と、
    前記エラーがどこで発生したかを判断するために内部レジスタを調べる段階と、
    を更に含むことを特徴とする請求項20に記載の方法。
  30. データストリーム内の符号化済みデータパケットのDC値を判断するように構成された同時コードチェッカー(C3)論理と、
    前記データストリームの状態を追跡するように構成された有限状態機械(FSM)と、
    を含み、
    作動時に、前記C3論理は、前記FSMに前記符号化済みデータパケットの前記DC値を送信し、該FSMは、該DC値を用いて前記データストリームの現在の状態が与えられた上でエラーが発生したかを判断する、
    ことを特徴とするエラー検出回路。
  31. 前記FSMは、前記データストリームのDC状態を追跡してエラーが発生したかを判断することを特徴とする請求項30に記載のエラー検出回路。
  32. 前記FSMは、前記データストリームの移動不均衡(RD)状態を追跡してエラーが発生したかを判断することを特徴とする請求項30に記載のエラー検出回路。
  33. 前記FSMは、前記データストリームのDC状態及びRD状態を追跡してエラーが発生したかを判断することを特徴とする請求項30に記載のエラー検出回路。
  34. 前記C3論理は、加算器及びDCマッパーを含むことを特徴とする請求項30に記載のエラー検出回路。
  35. 前記C3論理は、コードエラーチェッカー(CEC)及びDC計算器を含むことを特徴とする請求項30に記載のエラー検出回路。
  36. 前記CECは、前記データパケットが該データパケットを符号化する際の符号化手法に対して有効なコードワードであるかを判断するように構成されていることを特徴とする請求項35に記載のエラー検出回路。
  37. 前記DC計算器は、前記符号化済みデータパケットの前記DC値に対応する信号をアサートするように構成され、
    作動時に、前記アサート信号は、エラーが発生したことを判断するために前記FSMによって用いられる、
    ことを特徴とする請求項35に記載のエラー検出回路。
  38. 前記C3論理は、コードエラーチェッカー(CEC)、RD型回路、及びDC回路を含むことを特徴とする請求項30に記載のエラー検出回路。
  39. 前記RD型回路は、前記符号化済みパケットのRD型から導出された信号をアサートするように構成され、前記DC回路は、該パケットにDC値を割り当てるように構成され、マッピング回路が、該割り当てたDC値をマップ信号としてアサートするように構成されており、
    作動時に、前記RD型信号及び前記マップ信号は、エラーが発生したか否かを判断するために前記FSMによって用いられる、
    ことを特徴とする請求項38に記載のエラー検出回路。
  40. 前記CECは、無効コードワードが供給された時に無効信号を生成し、
    作動時に、前記無効信号は、DC/RD計算の出力信号に優先し、正確な出力が要求される状態の個数を低減することによって前記FSM及び該DC/RD計算の回路の最適化を可能にする、
    ことを特徴とする請求項35に記載のエラー検出回路。
  41. コンピュータ可読媒体上に記憶され、コンピュータ装置の作動を制御するための命令を含むコンピュータプログラムであって、
    命令が、コンピュータ装置に、
    到着直列化及び符号化済みデータパケットを受信する段階と、
    前記到着直列化及び符号化済みデータパケットを非直列化する段階と、
    データパケットの有効性を検査する段階と、
    前記符号化済みデータパケットの試験応答値を導出する段階と、
    前記試験応答値が有効又は無効(包括的)値であるかを判断する段階と、
    前記試験応答値が無効である場合に、前記到着非直列化及び符号化済みデータパケットに失敗のフラグを立てる段階と、
    を実行することによってデータの保全性を検証させるための命令を含む、
    ことを特徴とするコンピュータプログラム。
  42. 前記試験応答値は、DC値を含むことを特徴とする請求項41に記載のコンピュータプログラム。
  43. 前記試験応答値は、移動不均衡(RD)値を含むことを特徴とする請求項41に記載のコンピュータプログラム。
  44. 前記試験応答値は、直流(DC)値、移動不均衡(RD)値、又は該2つのDC及びRD値の組合せを含むことを特徴とする請求項41に記載のコンピュータプログラム。
  45. システム内でデータストリームを用いて同時コードチェッカー(C3)の機能を試験する方法であって、
    同時コードチェッカー(C3)論理内の少なくとも1つのレジスタをプログラムしてシステムを試験モードに設定する段階と、
    コードワードをモニタし、検出した有効コードワードの個数を判断する段階と、
    所定数の有効コードワードを検出した場合には、コード区切り文字検出器(CDD)内の試験制御回路が、移動不均衡有限状態機械(RD FSM)を使用可能にしてデータストリームの有効性を検査する段階と、
    前記「RD FSM」が使用可能にされた時に、該「RD FSM」を用いて前記データストリームをモニタし、該データストリームに対して適正に同期化する段階と、
    同期後に、前記C3が、試験仕様を完了まで継続的に追跡する段階と、
    試験が完了した時に、前記C3論理を使用不可にする段階と、
    を含むことを特徴とする方法。
  46. 前記システムを試験モードに前記設定する段階は、該システムをオンライン試験モードに設定する段階を含み、
    前記オンライン試験モードは、
    前記コード区切り文字検出器(CDD)内の有効コードワード(valCW)を使用可能にして、データストリームの開始を同期化する段階と、
    利用可能な試験仕様から試験仕様を選択するために、CEC及びDC/RD制御信号(DC又はRD仕様検査)を使用可能にするようにコードエラーチェッカー制御信号(CEC_en)を設定する段階と、
    を更に含む、
    ことを特徴とする請求項45に記載の方法。
  47. 前記利用可能な試験仕様は、DC仕様、RD仕様、及び該DC及びRD仕様の組合せを含むことを特徴とする請求項46に記載の方法。
  48. 最初に通常のシステム作動を開始する段階、及び次に該システムをオンライン試験モードに設定する段階を更に含むことを特徴とする請求項45に記載の試験する方法。
  49. 前記システムが作動中に、前記C3論理内の「IC間」バス(I2C)レジスタをプログラムして該システムを試験モードに設定する段階を更に含むことを特徴とする請求項48に記載の試験する方法。
  50. 前記試験モードは、オンライン試験モードを含むことを特徴とする請求項49に記載の試験する方法。
  51. 前記少なくとも1つのレジスタは、少なくとも1つの「IC間」バス(I2C)レジスタを含むことを特徴とする請求項45に記載の方法。
  52. 前記少なくとも1つレジスタは、複数の「IC間」バス(I2C)レジスタを含むことを特徴とする請求項45に記載の方法。
  53. 前記C3を前記使用不可にする段階は、前記試験制御ユニットを使用不可にすることによって達成されることを特徴とする請求項45に記載の方法。
  54. 前記試験制御ユニットを前記使用不可にする段階は、前記I2Cを通じて使用不可信号をプログラムすることによって達成されることを特徴とする請求項53に記載の方法。
  55. 同期後に前記試験仕様を完了まで前記継続的に追跡する段階は、エラーに遭遇した場合に「ビット誤り率(BER)」カウンタを増分する段階を更に含むことを特徴とする請求項45に記載の方法。
  56. 前記BERカウンタの内容又は計数を観測して、現場でのチャンネル品質の指示としてエラーの個数を判断する段階、
    を更に含むことを特徴とする請求項55に記載の方法。
  57. 前記試験仕様は、DC試験仕様、RD試験仕様、及びこれらの組合せを含む試験仕様の組から選択されることを特徴とする請求項45に記載の方法。
  58. 前記プログラムする段階は、前記システムの作動中に実行されることを特徴とする請求項45に記載の方法。
  59. ハードウエア装置内で同時コードチェッカーを実施するのに必要な論理素子の個数及び半導体面積を低減するために同時コードチェッカー論理回路を最適化する方法であって、
    コードワードエラーチェッカーの既存の無効出力信号及び/又はコードワード型に基づいて無指定論理レベル入力条件を表す真理値表入力を識別する段階と、
    前記真理値表入力に対応する合成される出力機能を表す真理値表出力を識別する段階と、
    前記識別された無指定真理値表入力及び前記識別された真理値表出力を有する真理値表を用いて同時コードチェッカー論理回路のための設計を行う段階と、
    を含むことを特徴とする方法。
  60. 前記真理値表内の前記無指定は、同時コードチェッカーのDC出力機能、RDT出力機能、又はDC出力機能とRDT出力機能の組合せに対する無指定であることを特徴とする請求項59に記載の方法。
  61. 前記真理値表は、10ビットコードワードに適用されることを特徴とする請求項59に記載の方法。
  62. 前記無指定入力を識別しない設計に比較して少なくとも70パーセントだけ指定入力の個数を低減することを特徴とする請求項59に記載の方法。
  63. 前記最適化された設計を用いて半導体材料に前記同時コードチェッカー論理回路を組み立てる段階を更に含むことを特徴とする請求項59に記載の方法。
  64. 請求項59に記載の方法によって組み立てられたことを特徴とする同時コードチェッカー論理回路。
JP2007037099A 2006-01-20 2007-01-19 組込み自己試験及びデバッグ機能を有する同時コードチェッカー及びハードウエア効率的高速i/o Expired - Fee Related JP5174357B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US76060106P 2006-01-20 2006-01-20
US60/760,601 2006-01-20
US11/476,457 US7840861B2 (en) 2006-06-27 2006-06-27 Scan-based testing of devices implementing a test clock control structure (“TCCS”)
US11/476,457 2006-06-27

Publications (3)

Publication Number Publication Date
JP2007234009A true JP2007234009A (ja) 2007-09-13
JP2007234009A5 JP2007234009A5 (ja) 2010-03-04
JP5174357B2 JP5174357B2 (ja) 2013-04-03

Family

ID=37898261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007037099A Expired - Fee Related JP5174357B2 (ja) 2006-01-20 2007-01-19 組込み自己試験及びデバッグ機能を有する同時コードチェッカー及びハードウエア効率的高速i/o

Country Status (5)

Country Link
EP (1) EP1814234B1 (ja)
JP (1) JP5174357B2 (ja)
KR (1) KR101423328B1 (ja)
DE (1) DE602007011840D1 (ja)
TW (1) TWI455489B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8816885B2 (en) 2012-06-29 2014-08-26 Intel Corporation Data interface alignment
CN106788446A (zh) * 2016-11-25 2017-05-31 电子科技大学 一种新的8b/10b编码实现方法
CN108120917B (zh) * 2016-11-29 2020-05-05 深圳市中兴微电子技术有限公司 测试时钟电路确定方法及装置
KR20190099930A (ko) 2018-02-20 2019-08-28 삼성전자주식회사 완전 연결 네트워크의 데이터 입력 및 출력을 제어하는 방법 및 장치
US11528102B1 (en) 2021-08-18 2022-12-13 International Business Machines Corporation Built-in-self-test and characterization of a high speed serial link receiver
US11662381B2 (en) 2021-08-18 2023-05-30 International Business Machines Corporation Self-contained built-in self-test circuit with phase-shifting abilities for high-speed receivers

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53138316A (en) * 1977-05-09 1978-12-02 Fujitsu Ltd Modulating system
JPS5910056A (ja) * 1982-06-30 1984-01-19 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン コ−ド生成方法
JPS6349947A (ja) * 1986-08-20 1988-03-02 Hitachi Cable Ltd パリテイチエツク方法
JPH11352188A (ja) * 1998-06-11 1999-12-24 Mitsubishi Electric Corp 半導体装置
JP2005024359A (ja) * 2003-07-01 2005-01-27 Hitachi Ltd 自己診断型論理回路及びその動的故障テスト方法
JP2005229446A (ja) * 2004-02-13 2005-08-25 Aica Kogyo Co Ltd シリアルデータ通信方法
JP2005286831A (ja) * 2004-03-30 2005-10-13 Nec Corp エラー測定装置およびエラー測定方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06343069A (ja) * 1991-02-07 1994-12-13 Nec Corp ディジタルネットワークにおけるキャリアリレー信号用回線品質監視方式
US5387911A (en) * 1992-02-21 1995-02-07 Gleichert; Marc C. Method and apparatus for transmitting and receiving both 8B/10B code and 10B/12B code in a switchable 8B/10B transmitter and receiver
KR950008490B1 (ko) * 1993-03-23 1995-07-31 대우전자주식회사 8/11 복호기의 오류플래그 발생장치
KR960009900B1 (ko) * 1993-06-11 1996-07-24 박성규 오비육비 블록코드를 이용한 코딩/디코딩 장치
US6195764B1 (en) 1997-01-30 2001-02-27 Fujitsu Network Communications, Inc. Data encoder/decoder for a high speed serial link
US5841790A (en) * 1997-04-08 1998-11-24 International Business Machines Corporation Apparatus for testing an adapter card ASIC with reconfigurable logic
US6442722B1 (en) * 1999-10-29 2002-08-27 Logicvision, Inc. Method and apparatus for testing circuits with multiple clocks
US7007213B2 (en) * 2001-02-15 2006-02-28 Syntest Technologies, Inc. Multiple-capture DFT system for detecting or locating crossing clock-domain faults during self-test or scan-test
US6614369B1 (en) * 2002-03-05 2003-09-02 International Business Machines Corporation DC balanced 7B/8B, 9B/10B, and partitioned DC balanced 12B/14B, 17B/20B, and 16B/18B transmission codes
US7131081B2 (en) * 2003-02-14 2006-10-31 Nec Laboratories America, Inc. Scalable scan-path test point insertion technique
US7155651B2 (en) * 2004-04-22 2006-12-26 Logicvision, Inc. Clock controller for at-speed testing of scan circuits
CN100395557C (zh) * 2005-03-04 2008-06-18 清华大学 采用加权扫描选通信号的基于扫描的自测试结构的自测试方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53138316A (en) * 1977-05-09 1978-12-02 Fujitsu Ltd Modulating system
JPS5910056A (ja) * 1982-06-30 1984-01-19 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン コ−ド生成方法
JPS6349947A (ja) * 1986-08-20 1988-03-02 Hitachi Cable Ltd パリテイチエツク方法
JPH11352188A (ja) * 1998-06-11 1999-12-24 Mitsubishi Electric Corp 半導体装置
JP2005024359A (ja) * 2003-07-01 2005-01-27 Hitachi Ltd 自己診断型論理回路及びその動的故障テスト方法
JP2005229446A (ja) * 2004-02-13 2005-08-25 Aica Kogyo Co Ltd シリアルデータ通信方法
JP2005286831A (ja) * 2004-03-30 2005-10-13 Nec Corp エラー測定装置およびエラー測定方法

Also Published As

Publication number Publication date
EP1814234B1 (en) 2011-01-12
KR20070077141A (ko) 2007-07-25
JP5174357B2 (ja) 2013-04-03
TWI455489B (zh) 2014-10-01
TW200737739A (en) 2007-10-01
EP1814234A3 (en) 2007-08-08
DE602007011840D1 (de) 2011-02-24
EP1814234A2 (en) 2007-08-01
KR101423328B1 (ko) 2014-07-24

Similar Documents

Publication Publication Date Title
US7984369B2 (en) Concurrent code checker and hardware efficient high-speed I/O having built-in self-test and debug features
JP5651171B2 (ja) コンピュータメモリテスト構造
US7461312B2 (en) Digital signature generation for hardware functional test
JP5697833B2 (ja) インタフェース試験回路及び方法
US20060168483A1 (en) On-chip circuitry for bus validation
EP0663092B1 (en) Robust delay fault built-in self-testing method and apparatus
JP5174357B2 (ja) 組込み自己試験及びデバッグ機能を有する同時コードチェッカー及びハードウエア効率的高速i/o
US10884847B1 (en) Fast parallel CRC determination to support SSD testing
JP2000137061A (ja) システムオンチップにおける埋込コアの試験方法及び構成
US7047458B2 (en) Testing methodology and apparatus for interconnects
US11829241B2 (en) Serializing and deserializing stage testing
US9043662B2 (en) Double data rate memory physical interface high speed testing using self checking loopback
JP2007234009A5 (ja)
EP2965100B1 (en) Self-testing integrated circuits
CN116324439A (zh) 基于高速功能协议的测试和调试
Nejedlo IBIST/spl trade/(interconnect built-in-self-test) architecture and methodology for PCI Express
US20050283693A1 (en) Multi-chip digital system signal identification method and apparatus
US7421637B1 (en) Generating test input for a circuit
US20040193986A1 (en) On-die pattern generator for high speed serial interconnect built-in self test
Chakraborty et al. A practical approach to comprehensive system test & debug using boundary scan based test architecture
KR101917165B1 (ko) 반도체 메모리 장치
US8539327B2 (en) Semiconductor integrated circuit for testing logic circuit
KR101124282B1 (ko) 메모리 장치의 병렬 압축 테스트 장치
Sivaranjani et al. Design and Analysis of UART Protocol with Sec-Ded and Implementation on FPGA
KR101556290B1 (ko) 저속 테스터에 급속 기능 테스트를 적용하기 위한 장치 및 방법

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120227

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120528

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120531

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120627

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120702

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120827

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121228

R150 Certificate of patent or registration of utility model

Ref document number: 5174357

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees