JP2003157168A - 符号変換システム及びその変換方法並びに変換プログラム - Google Patents

符号変換システム及びその変換方法並びに変換プログラム

Info

Publication number
JP2003157168A
JP2003157168A JP2001355449A JP2001355449A JP2003157168A JP 2003157168 A JP2003157168 A JP 2003157168A JP 2001355449 A JP2001355449 A JP 2001355449A JP 2001355449 A JP2001355449 A JP 2001355449A JP 2003157168 A JP2003157168 A JP 2003157168A
Authority
JP
Japan
Prior art keywords
code
type
block
codes
conversion
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
JP2001355449A
Other languages
English (en)
Other versions
JP3747839B2 (ja
Inventor
Kiyohisa Ichino
清久 市野
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2001355449A priority Critical patent/JP3747839B2/ja
Priority to CA002412236A priority patent/CA2412236C/en
Priority to US10/299,906 priority patent/US6714146B2/en
Publication of JP2003157168A publication Critical patent/JP2003157168A/ja
Application granted granted Critical
Publication of JP3747839B2 publication Critical patent/JP3747839B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof
    • 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

Abstract

(57)【要約】 【課題】 冗長な演算を省略し、これにより少ないハ−
ドウエア資源で64B/65B変換及びその逆変換を実現する
ことが可能な符号変換システムを提供する。 【解決手段】 データ/制御フラグ61が1のとき制御
符号変換部41は8ビットデータ60を4ビット制御符
号62に変換して制御符号レジスタ43に順次格納し、
符号カウンタ45が示すそのデータ60の位置が制御符
号位置レジスタ44に順次格納される。データ/制御フ
ラグ61が0のとき8ビットデータ60がデータ符号レ
ジスタ42に順次格納される。65B ブロック生成部47
は制御符号レジスタ43と制御符号位置レジスタ44と
から順次出力される符号を結合して新たな制御符号を生
成し、データ符号レジスタ42から順次データ符号を出
力する。そしてその制御符号を先頭に、次にデータ符号
を配置して65B ブロックを生成する。制御符号、データ
符号は時系列に配置される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は符号変換システム及
びその変換方法並びに変換プログラムに関し、特に8B/1
0Bブロック符号を65ビットのブロックに変換する64B/
65B 変換及びその逆変換に用いられる符号変換システム
及びその変換方法並びに変換プログラムに関する。
【0002】
【従来の技術】現在、Generic Framing Procedure(以
後、GFP と称す) 規格の標準化が、 ANSI T1X1.5にて進
められている(GFP仕様のドラフトの文書番号は、T1X1.5
/2001-158)。 GFPとは、イーサネット(登録商標)又は
Ethernet(登録商標)、PPP (point-to-point protoco
l) 等のフレームをカプセル化(あるプロトコルで扱う
データをその上位層または下位層プロトコルのフレーム
構造に詰め込むこと)し、 SONET(synchronous optical
network) /SDH(synchronous digital hierachy)上で伝
送するための技術である。
【0003】又、GFP には、8B/10Bブロック符号化され
たストリームデータ(stream data;必要な分だけを列の
先頭から取り出せるようにしたデータ列) を、フレーム
にカプセル化する規格も存在する。8B/10Bブロック符号
化は、ギガビットイーサネット(登録商標)や、ストレ
ージエリアネットワークで用いられるファイバチャネ
ル、デジタルビデオ信号インタフェース規格であるDVB-
ASI 等の、多くのリンク層プロトコルに採用されてい
る。 GFPでは、8B/10B符号をフレームにカプセル化する
際に、8つの8B/10B符号を65ビットのブロックに変換
する処理が行われる。この変換処理は、64B/65B 変換と
呼ばれている。
【0004】次に、64B/65B 変換について具体例を交え
ながら詳細に説明する。64B/65B 変換とは、8つの復号
済みの8B/10B符号を、65ビットのブロックに変換する
手法である。変換後の65ビットのブロックを65B ブロ
ックと呼ぶ。
【0005】8B/10B符号は、ビットシリアル伝送に用い
られる10ビットの等長符号であり、優れた情報伝達特
性を有する。8B/10B符号には、256種類のデータ符号
と、12種類の制御符号( スペシャル符号とも呼ばれ
る) が定義されている。
【0006】次に、65B ブロックの構造について説明す
る。図8は65B ブロックの構成図である。同図を参照す
ると、65B ブロックの第1ビットはフラグビット(F)
であり、入力された8つの8B/10B符号の全てがデータ符
号であるときに限り0になる。65B ブロックの第2ビッ
トから第65ビットまでの64ビットの領域は、8つの
バイトに分割される。便宜上、65B ブロックの第2ビッ
トから第9ビットまでの8ビットを第1バイト、第10
ビットから第17ビットまでを第2バイト、…、として
参照する。それぞれのバイトに、入力された8つの8B/1
0B符号が1つずつ格納される。この際、制御符号は、第
1バイトから順に格納される。
【0007】ここで、8B/10B符号の格納順序に関する例
を示す。8つの8B/10B符号が入力順に、 D1、D2、D3、K1、D4、D5、D6、K2 ( Dはデータ符号、Kは制御符号の意) であるとき、65
B ブロックの第1バイト〜第8バイトは順に、 K1、K2、D1、D2、D3、D4、D5、D6 となる。
【0008】このように、入力された8つの8B/10B符号
の順序と、65B ブロック内のバイトの順序が一致すると
は限らない。ただし、データ符号のみ、又は制御符号の
みに着目すると、順序は常に保存される。即ち、上記の
例において、65B ブロックの第1バイト〜第8バイト
が、 K2、K1、D3、D2、D1、D4、D5、D6 等になることはない。
【0009】データ符号が格納されるバイトには、その
データ符号から復号された8ビットデータが代入され
る。
【0010】一方、制御符号が格納されるバイトは、さ
らに3つの領域に分割される。1つ目の領域はLCC ( La
st Control Character) であり、バイトの第1ビットに
位置する。LCC は、次のバイトにも制御符号が格納され
るときに1をとる。一方、次のバイトにデータ符号が格
納されるとき、あるいは、現在のバイトが最終バイト(
第8バイト) であるとき、0をとる。2つ目の領域はCC
L ( Control Character Locator)であり、バイトの第2
ビットから第4ビットまでの3ビットに割り当てられて
いる。CCL は、このバイトに格納される制御符号の、元
の位置を示す。元の位置は、入力された8つの8B/10B符
号における、時系列順に0から始まる数値で表現され
る。例えば、CCL が6のとき、変換前の制御符号は、8
つの8B/10B符号の7番目に存在していたことになる。3
つ目の領域はCCI ( Control Character Indicator)であ
り、バイトの第5ビットから第8ビットまでの4ビット
に割り当てられている。CCI には、制御符号を4ビット
で表現したコードが収容される。
【0011】制御符号の4ビット表現の一例を図9に示
す。同図はGFP 仕様のドラフト( 文書番号:T1X1.5/200
1-158)の表8−1から引用されたものである。同図は8
ビット制御符号と4ビット制御符号と符号の意味との対
応を示したものである。なお、制御符号と4ビット表現
が1対1に対応してさえいれば、同図以外の関係でも良
い。
【0012】以降、フラグビットをFとおく。又、(i+
1)番目のバイト(0≦i ≦7)にデータ符号が収容される場
合、そのバイトをDV[i] で表す。さらに、(i+1)番目
のバイト(0≦i ≦7)に制御符号が収容される場合、その
バイトのLast Control CharacterをLCC[i] 、 Contr
ol Character LocatorをCCL[i] 、 Control Charact
er IndicatorをCCI[i] とおく。
【0013】F、DV[i] 、LCC[i] 、CCL[i] 、
CCI[i] (0≦i ≦7)を用いて65Bブロックを表現す
ると、図8のようになる。入力された8つの8B/10B符号
に含まれる制御符号の数が決まれば、F及びLCC[i]
が一意に定まることが分かる。
【0014】
【発明が解決しようとする課題】しかし、この64B/65B
変換に要する演算は複雑であり、多くのハ−ドウエア資
源を要するという欠点があった。
【0015】そこで本発明の目的は、冗長な演算を省略
し、これにより少ないハ−ドウエア資源で64B/65B 変換
及びその逆変換を実現することが可能な符号変換システ
ム及びその変換方法並びに変換プログラムを提供するこ
とにある。
【0016】
【課題を解決するための手段】前記課題を解決するため
に本発明による符号変換システムは、時系列に任意の順
序で入力される2種類の符号を、第1種の符号を時系列
符号として一括して先頭に配置し、第2種の符号を時系
列符号として一括して前記第1種の符号の次に配置する
ことにより1個のブロックに変換する符号変換システム
であって、前記入力される符号の各々が第1種であるか
第2種であるかを示す識別符号が前記符号とともに入力
され、前記識別符号に基づき前記入力される符号が第1
種であるか第2種であるかを識別し、入力される符号が
第1種である場合はその符号を時系列符号として一括し
て先頭に配置し、残りの第2種の符号を時系列符号とし
て一括して前記第1種の符号の次に配置することにより
前記1個のブロックに変換する符号変換手段を含むこと
を特徴とする。
【0017】又、本発明による他の符号変換システム
は、時系列に任意の順序で入力される2種類の符号を、
第1種の符号を時系列符号として一括して先頭に配置
し、第2種の符号を時系列符号として一括して前記第1
種の符号の次に配置することにより1個のブロックに変
換された情報を逆変換する符号変換システムであって、
少なくとも前記1個のブロックに前記第1種の符号が含
まれるか否かを示す識別符号が前記1個のブロックの先
頭に配置され、かつ前記1個のブロックに含まれる第1
種の符号の各々に前記第1種の符号であることを示す最
終制御符号及び前記1個のブロックに変換される前の符
号の位置を示す位置符号が付与されており、前記識別符
号、最終制御符号及び位置符号に基づき前記1個のブロ
ックに含まれる前記第1種の符号を元の位置に整列さ
せ、前記1個のブロックに含まれる前記第2種の符号を
残りの位置に時系列に整列させる符号逆変換手段を含む
ことを特徴とする。
【0018】又、本発明による符号変換方法は、時系列
に任意の順序で入力される2種類の符号を、第1種の符
号を時系列符号として一括して先頭に配置し、第2種の
符号を時系列符号として一括して前記第1種の符号の次
に配置することにより1個のブロックに変換する符号変
換方法であって、前記入力される符号の各々が第1種で
あるか第2種であるかを示す識別符号が前記符号ととも
に入力され、前記識別符号に基づき前記入力される符号
が第1種であるか第2種であるかを識別し、入力される
符号が第1種である場合はその符号を時系列符号として
一括して先頭に配置し、残りの第2種の符号を時系列符
号として一括して前記第1種の符号の次に配置すること
により前記1個のブロックに変換する符号変換ステップ
を含むことを特徴とする。
【0019】又、本発明による他の符号変換方法は、時
系列に任意の順序で入力される2種類の符号を、第1種
の符号を時系列符号として一括して先頭に配置し、第2
種の符号を時系列符号として一括して前記第1種の符号
の次に配置することにより1個のブロックに変換された
情報を逆変換する符号変換方法であって、少なくとも前
記1個のブロックに前記第1種の符号が含まれるか否か
を示す識別符号が前記1個のブロックの先頭に配置さ
れ、かつ前記1個のブロックに含まれる第1種の符号の
各々に前記第1種の符号であることを示す最終制御符号
及び前記1個のブロックに変換される前の符号の位置を
示す位置符号が付与されており、前記識別符号、最終制
御符号及び位置符号に基づき前記1個のブロックに含ま
れる前記第1種の符号を元の位置に整列させ、前記1個
のブロックに含まれる前記第2種の符号を残りの位置に
時系列に整列させる符号逆変換ステップを含むことを特
徴とする。
【0020】又、本発明による変換プログラムは、時系
列に任意の順序で入力される2種類の符号を、第1種の
符号を時系列符号として一括して先頭に配置し、第2種
の符号を時系列符号として一括して前記第1種の符号の
次に配置することにより1個のブロックに変換する符号
変換方法をコンピュ−タに実行させるための変換プログ
ラムであって、前記入力される符号の各々が第1種であ
るか第2種であるかを示す識別符号が前記符号とともに
入力され、前記識別符号に基づき前記入力される符号が
第1種であるか第2種であるかを識別し、入力される符
号が第1種である場合はその符号を時系列符号として一
括して先頭に配置し、残りの第2種の符号を時系列符号
として一括して前記第1種の符号の次に配置することに
より前記1個のブロックに変換する符号変換ステップを
コンピュ−タに実行させるための変換プログラムである
ことを特徴とする。
【0021】又、本発明による他の変換プログラムは、
時系列に任意の順序で入力される2種類の符号を、第1
種の符号を時系列符号として一括して先頭に配置し、第
2種の符号を時系列符号として一括して前記第1種の符
号の次に配置することにより1個のブロックに変換され
た情報を逆変換する符号変換方法をコンピュ−タに実行
させるための変換プログラムであって、少なくとも前記
1個のブロックに前記第1種の符号が含まれるか否かを
示す識別符号が前記1個のブロックの先頭に配置され、
かつ前記1個のブロックに含まれる第1種の符号の各々
に前記第1種の符号であることを示す最終制御符号及び
前記1個のブロックに変換される前の符号の位置を示す
位置符号が付与されており、前記識別符号、最終制御符
号及び位置符号に基づき前記1個のブロックに含まれる
前記第1種の符号を元の位置に整列させ、前記1個のブ
ロックに含まれる前記第2種の符号を残りの位置に時系
列に整列させる符号逆変換ステップをコンピュ−タに実
行させるための変換プログラムであることを特徴とす
る。
【0022】本発明によれば、上記構成により冗長な演
算を省略し、これにより少ないハ−ドウエア資源で64B/
65B 変換及びその逆変換を実現することが可能となる。
【0023】本発明は、64B/65B 変換及び逆変換を、少
ない演算量で実現する方法及び回路を提供するものであ
る。 64B/65B変換には、図10の64B/65B 変換の一例を
示す図のように、データ符号のみ、又は制御符号のみに
着目すると、変換の前後で符号の順序が保たれるという
性質がある。この性質を利用することで、符号の並び替
えに要する演算を削減することができる。
【0024】次に、64B/65B 変換の具体例を示す。本例
では、8つの8B/10B符号の時系列: D21.4、D21.5、D21.5、K28.5、D
21.4、D10.2、D10.2、K28.5 を65Bブロックに変換する過程を解説する( なお、D
21.4、D21.5、D10.2はデータ符号、K2
8.5は制御符号である) 。
【0025】64B/65B 変換は、復号済みの8B/10B符号を
入力とするので、64B/65B 変換の前段で8B/10B復号を行
う必要がある。そこで、8つの8B/10B符号のそれぞれ
を、8ビットデータに復号すると、( 第1の8B/10B符
号) D21.4=10010101 (2進数) 、( 第2の8B/10B
符号) D21.5=10110101 (2進数) 、( 第3の8B/1
0B符号) D21.5=10110101 (2進数) 、( 第4の8B
/10B符号) K28.5=10111100 (2進数) 、( 第5の
8B/10B符号) D21.4=10010101 (2進数) 、( 第6
の8B/10B符号) D10.2=01001010 (2進数) 、( 第
7の8B/10B符号) D10.2=01001010 (2進数) 、(
第8の8B/10B符号) K28.5=10111100 (2進数)
となる。
【0026】ただし、これらのみではデータ符号か制御
符号かを識別できないため、( 第1の8B/10B符号) =デ
ータ符号、( 第2の8B/10B符号) =データ符号、( 第3
の8B/10B符号) =データ符号、( 第4の8B/10B符号) =
制御符号、( 第5の8B/10B符号) =データ符号、( 第6
の8B/10B符号) =データ符号、( 第7の8B/10B符号)=
データ符号、( 第8の8B/10B符号) =制御符号 という
情報も作成しておく。
【0027】始めに、F(フラグビット)及びLCC(
Last Control Character) を決定する。F及びLCC
は、前述のように、8つの8B/10B符号に含まれる制御符
号の数で決まる。
【0028】即ち、図8を参照すると、8つの8B/10B符
号に含まれる制御符号の数が0個の場合はF=0であ
り、制御符号の数が1個の場合はF=1かつLCC[0]
=1であり、制御符号の数が2個の場合はF=1、LC
C[0] =1かつLCC[1] =0であり、制御符号の数が
3個の場合はF=1、LCC[0] =1、LCC[1] =1
かつLCC[2] =0であり、制御符号の数が4個以上の
場合も同様である。
【0029】本例では制御符号が2つ存在するから、図
8の制御符号の数=2個の欄を参照すると、F=1 、L
CC[0] =1 、LCC[1] =0 を得る。次に、制御符号
をCCL及びCCIで表現し、それらを順に、65B ブロ
ックの第1バイト、第2バイト、…に代入する。
【0030】第1の制御符号は、8つの8B/10B符号中の
4番目に位置するから、 CCL[0] =011 ( 2進数) となる。又、第1の制御符号から復号された8ビットデ
ータは、 10111100 ( 2進数) であり、これを図9に従
って4ビット表現すると(図9のK28.5 の欄参照)、01
01 (2進数) となるから、 CCI[0] =0101 (2進数) である。
【0031】第2の制御符号は、8つの8B/10B符号中の
8番目に位置するから、 CCL[1] =111 ( 2進数) となる。又、第2の制御符号は、第1の制御符号と等し
いから、 CCI[1] =0101 (2進数) である。
【0032】最後に、データ符号から復号された8ビッ
トデータを、65B ブロックの各バイトに代入する。第
1、第2バイトには、既に制御符号が収容されているた
め、第3バイトから代入を開始する。順次、DV[2] 、
DV[3] 、…、DV[7] に代入すると、DV[2] =1001
0101 (2進数) 、DV[3] =10110101 (2進数) 、DV
[4] =10110101 (2進数) 、DV[5] =10010101 (2進
数) 、DV[6] =01001010 (2進数) 、DV[7] =0100
1010 (2進数)
となる。即ち、デ−タ符号の数値は変換前と変わらな
い。
【0033】以上で、65B ブロックへの変換は完了し、
最終的に、 1 10110101 01110101 10010101 10110101 10110101 100
10101 0100101001001010 ( 2進数) が得られる。
【0034】即ち、図10を参照すると、8つの8B/10B
符号のうちの第1符号は65B ブロック変換後の第3バイ
トとなり、以下第2符号は第4バイト、第3符号は第5
バイト、第4符号は第1バイト、第5符号は第6バイ
ト、第6符号は第7バイト、第7符号は第8バイト、第
8符号は第2バイトとなる。なお、65B ブロックの先頭
(第1ビット)にはFビットが設けられる。
【0035】
【発明の実施の形態】以下、本発明の実施の形態につい
て添付図面を参照しながら説明する。図1は本発明によ
る64B/65B 変換回路の一例の構成図である。又、図2は
本発明による64B/65B 逆変換回路の一例の構成図であ
る。
【0036】まず、図1を参照して、64B/65B 変換回路
40の構成を詳細に説明する。64B/65B 変換回路40
は、制御符号変換部41と、データ符号レジスタ42−
1〜42−8と、制御符号レジスタ43−1〜43−8
と、制御符号位置レジスタ44−1〜44−8と、符号
カウンタ45と、制御符号カウンタ46と、65B ブロッ
ク生成部47とを含んで構成される。
【0037】64B/65B 変換回路40の入力は、復号済み
の8B/10B符号であり、8ビットデータ60及びデータ/
制御フラグ61の2つの信号で表される。データ/制御
フラグ61は、8ビットデータ60がデータ符号を表す
とき0を、制御符号を表すとき1をとるフラグである。
64B/65B 変換回路40の出力は、65B ブロック63であ
る。
【0038】制御符号変換部41は、データ/制御フラ
グ61が1のとき( 即ち、制御符号のとき) 、8ビット
データ60を図3に従って変換し、4ビット制御符号6
2を出力する。
【0039】データ符号レジスタ42−1〜42−8
は、それぞれ8ビット幅のレジスタである。データ/制
御フラグ61が0のとき( 即ち、データ符号のとき) 、
データ符号レジスタ42−8に8ビットデータ60を代
入し、データ符号レジスタ42−1〜42−7を8ビッ
トシフトする。
【0040】制御符号レジスタ43−1〜43−8は、
それぞれ4ビット幅のレジスタである。データ/制御フ
ラグ61が1のとき、制御符号レジスタ43−Nに4ビ
ット制御符号62を代入する。ここでNの値は、制御符
号カウンタ46の出力値に1を加えた数に等しい。
【0041】制御符号位置レジスタ44−1〜44−8
は、それぞれ3ビット幅のレジスタである。データ/制
御フラグ61が1のとき、制御符号位置レジスタ44−
Nに、符号カウンタ45の出力値を代入する。ここでN
の値は、制御符号カウンタ46の出力値に1を加えた数
に等しい。
【0042】符号カウンタ45は、入力された符号の個
数を計数する8進カウンタである。取り得る値は、0以
上7以下である。
【0043】制御符号カウンタ46は、入力された制御
符号の個数を計数する8進カウンタであり、データ/制
御フラグ61が1のとき、1だけカウントアップする。
取り得る値は、0以上7以下である。
【0044】65B ブロック生成部47は、制御符号カウ
ンタ46の出力値から、出力する65B ブロック63の構
造を決定し、データ符号レジスタ42−1〜42−8、
制御符号レジスタ43−1〜43−8、制御符号位置レ
ジスタ44−1〜44−8の出力値を、65B ブロック6
3の各領域に転送する。65B ブロック生成部47の出力
は、65B ブロック63である。
【0045】次に、図2を参照して、64B/65B 逆変換回
路80の構成を詳細に説明する。64B/65B 逆変換回路8
0は、制御バイト判定部81と、データ/制御判定部8
2と、制御符号整列部83と、制御符号復元部84と、
データ転送元決定部85と、データ符号整列部86と、
データ/制御選択部87と、順序エラー判定部88とを
含んで構成される。
【0046】64B/65B 逆変換回路80の入力は、65ビ
ットの65B ブロック63である。説明の都合上、65B ブ
ロック63の各領域に別名を与える。フラグ100
(F)は、65B ブロック63の第1ビットの別名であ
る。データ値101−N( 1≦N≦8)は65B ブロック
63の第Nバイトの別名である。最終制御符号102−
N(1≦N≦8) (LCC)は、65B ブロック63の第
Nバイトの第1ビットの別名である。制御符号位置10
3−N( 1≦N≦8) (CCL)は、65B ブロック63
の第Nバイトの第2ビット〜第4ビットの別名である。
制御符号識別子104−N( 1≦N≦8) (CCI)
は、65B ブロック63の第Nバイトの第5ビット〜第8
ビットの別名である。
【0047】64B/65B 逆変換回路80の出力は、8つの
復号済みの8B/10B符号、及び順序エラー112である。
8つの復号済み8B/10B符号は、8ビットデータ111−
1〜111−8とデータ/制御フラグ106−1〜10
6−8で表現される。データ/制御フラグ106−N(
1≦N≦8) は、対応する8ビットデータ111−N
が、制御符号を表すときに1をとるフラグである。順序
エラー112は、65B ブロック63の構造的なエラーの
有無を示す。
【0048】制御バイト判定部81は、フラグ100及
び最終制御符号102−1〜102−7から、制御バイ
トフラグ105−1〜105−8を求める。制御バイト
フラグ105−N( 1≦N≦8) は、65B ブロック63
の第Nバイトが制御符号を表すときに1をとるフラグで
ある。
【0049】データ/制御判定部82は、制御バイトフ
ラグ105−1〜105−8及び制御符号位置103−
1〜103−8から、データ/制御フラグ106−1〜
106−8を求める。
【0050】制御符号整列部83は、制御バイトフラグ
105−1〜105−8及び制御符号位置103−1〜
103−8に基づいて、制御符号識別子104−1〜1
04−8を8B/10B符号の並び順に整列させる。又、整列
後の制御符号を、4ビット制御符号107−1〜107
−8として出力する。4ビット制御符号107−N(1
≦N≦8) は、対応するデータ/制御フラグ106−N
が1のとき( 即ち、8ビットデータ111−Nが制御符
号のとき) に限り、意味を持つ。
【0051】制御符号復元部84は、4ビット制御符号
107−1〜107−8のそれぞれを、図9に従って元
の8ビットデータに復元し、8ビット制御符号108−
1〜108−8として出力する。8ビット制御符号10
8−N( 1≦N≦8) は、対応するデータ/制御フラグ
106−Nが1のときに限り、意味を持つ。
【0052】データ転送元決定部85は、データ/制御
フラグ106−1〜106−8から、データ転送元10
9−1〜109−8を定める。データ転送元109−1
〜109−8は、それぞれ8ビットの信号であり、デー
タ値101−1〜101−8と、8ビットデータ111
−1〜111−8との対応関係を表す。8ビットデータ
111−N( 1≦N≦8) がデータ値101−M( 1≦
M≦8) に対応するとき、データ転送元109−Nの第
Mビットが1になる。なお、データ転送元109−N(
1≦N≦8) は、対応するデータ/制御フラグ106−
Nが0のときに限り、意味を持つ。
【0053】データ符号整列部86は、データ転送元1
09−1〜109−8に基づいて、データ値101−1
〜101−8を8B/10B符号の並び順に整列させる。又、
整列後のデータ符号を、データ符号110−1〜110
−8として出力する。データ符号110−N( 1≦N≦
8) は、対応するデータ/制御フラグ106−Nが0の
ときに限り、意味を持つ。
【0054】データ/制御選択部87は、データ/制御
フラグ106−1〜106−8を参照して、データ符号
110−1〜110−8と8ビット制御符号108−1
〜108−8を切り替え、8ビットデータ111−1〜
111−8として出力する。
【0055】順序エラー判定部88は、制御バイトフラ
グ105−1〜105−8、最終制御符号102−1〜
102−8及び制御符号位置103−1〜103−8を
解析し、制御符号の順序関係に矛盾が生じているか否か
を判定する。矛盾が検出されると、順序エラー112を
1にする。
【0056】次に、本実施例の動作について詳細に説明
する。図3は64B/65B 変換回路40の動作を示すフロ−
チャ−トである。同図を参照して、64B/65B 変換回路4
0の動作を説明する。同図中の変数・演算子・ビット順
序の定義を、それぞれ以下に示す。
【0057】Dは8ビットデータ60、DCはデータ/
制御フラグ61、Control は4ビット制御符号62、D
V[i](0 ≦i ≦7)はデータ符号レジスタ42−(i+1)、
CCI[i](0 ≦i ≦7)は制御符号レジスタ43−(i+
1)、CCL[i](0 ≦i ≦7)は制御符号位置レジスタ44
−(i+1)、NumCode は符号カウンタ45、NumContr
olは制御符号カウンタ46、+は算術和を表している。
【0058】又、Nビット信号の第1ビットは、その信
号の最上位(Most Significant)ビットを表し、Nビット
信号の第Nビットは、その信号の最下位(Least Signifi
cant) ビットを表す。
【0059】まず、ステップS100から開始し、符号
カウンタ45及び制御符号カウンタ46をゼロクリアす
る。その後、8ビットデータ60とデータ/制御フラグ
61が入力されるのを待つ( ステップS101) 。そし
て、入力されていれば、データ/制御フラグ61が1で
あるか判定する( ステップS102) 。1であれば(即
ち、入力が制御符号であれば) 、8ビットデータ60を
図3に従って4ビット制御符号62に変換する( ステッ
プS103) 。さらに、ステップS104において、4
ビット制御符号62を制御符号レジスタ43−Nに代入
し、符号カウンタ45の出力値を制御符号位置レジスタ
44−Nに代入する。ここでNの値は、制御符号カウン
タ46の出力値に1を加えた数に等しい。その後、制御
符号カウンタ46を1だけカウントアップし、ステップ
S106へ進む。
【0060】一方、ステップS102において、データ
/制御フラグ61が0であったとき( 即ち、入力がデー
タ符号のとき) 、データ符号レジスタ42−1〜42−
7を8ビットシフトし、データ符号レジスタ42−8に
8ビットデータ60を代入する( ステップS105) 。
その後、ステップS106へ進む。ステップS106で
は、符号カウンタ45の出力値が7であるか判定され
る。7以外であれば、符号カウンタ45を1だけカウン
トアップし( ステップS107) 、ステップS101へ
戻る。一方、7であれば、図1を参照して65Bブロッ
ク63の生成と出力を行い( ステップS108) 、ステ
ップS100へ戻る。
【0061】65B ブロック63の構造は、制御符号カウ
ンタ46の出力値( 図8における「8つの8B/10B符号に
含まれる制御符号の数」と同義) によって決定される。
例えば、制御符号カウンタ46の出力値が2のとき、65
B ブロック63は以下のようになる: 第1ビット=1 第2ビット=1 第3ビット〜第5ビット=制御符号位置レジスタ44−
1の出力値 第6ビット〜第9ビット=制御符号レジスタ43−1の
出力値 第10ビット=0 第11ビット〜第13ビット=制御符号位置レジスタ4
4−2の出力値 第14ビット〜第17ビット=制御符号レジスタ43−
2の出力値 第18ビット〜第25ビット=データ符号レジスタ42
−3の出力値 第26ビット〜第33ビット=データ符号レジスタ42
−4の出力値 第34ビット〜第41ビット=データ符号レジスタ42
−5の出力値 第42ビット〜第49ビット=データ符号レジスタ42
−6の出力値 第50ビット〜第57ビット=データ符号レジスタ42
−7の出力値 第58ビット〜第65ビット=データ符号レジスタ42
−8の出力値である。
【0062】図4及び図5は64B/65B 逆変換回路80の
動作を示すフロ−チャ−トである。同図を参照して、64
B/65B 逆変換回路80の動作を説明する。本説明で用い
る、変数・演算子・関数・ビット順序の定義を、それぞ
れ以下に示す。Fはフラグ100、DV[i](0 ≦i ≦7)
はデータ値101−(i+1)、LCC[i](0 ≦i ≦7)は最
終制御符号102−(i+1)、CCL[i](0 ≦i ≦7)は制
御符号位置103−(i+1)、CCI[i](0 ≦i ≦7)は制
御符号識別子104−(i+1)、IsControl[i](0≦i ≦7)
は制御バイトフラグ105−(i+1)、ShortControl[i]
(0 ≦i ≦7)は4ビット制御符号107−(i+1)、LongC
ontrol[i](0≦i ≦7)は8ビット制御符号108−(i+
1)、DataSource[i](0 ≦i ≦7)はデータ転送元109−
(i+1)、Data[i](0 ≦i ≦7)はデータ符号110−(i+
1)、D[i](0 ≦i ≦7)は8ビットデータ111−(i+
1)、DC[i](0 ≦i ≦7)はデータ/制御フラグ106−
(i+1)、ERR は順序エラー112を表す。
【0063】又、+は算術和、−は算術差、×は算術
積、orは論理和、and は論理積を表す。EQUAL(a, b) は
a=b のとき1、それ以外のとき0を返す。GREATER_EQ
UAL(a,b) は a≧b のとき1、それ以外のとき0を返
す。SELECT(c, a, b) は c が非ゼロのとき a を、ゼ
ロのとき bを返す。
【0064】又、Nビット信号の第1ビットは、その信
号の最上位(Most Significant)ビットを表す。Nビット
信号の第Nビットは、その信号の最下位(Least Signifi
cant) ビットを表す。
【0065】まず、ステップS200から開始し、65B
ブロック63が入力されるのを待つ。入力されていれ
ば、ステップS201へ進む。
【0066】ステップS201の処理を説明する。フラ
グ100及び最終制御符号102−1〜102−7か
ら、制御バイトフラグ105−1〜105−8を決定す
る。始めに、制御バイトフラグ105−1を求める。65
B ブロック63の第1バイトに制御符号が格納される条
件は、フラグ100が1であることである。従って、制
御バイトフラグ105−1は、フラグ100に等しい。
次に、制御バイトフラグ105−2を求める。65B ブロ
ック63の第2バイトに制御符号が格納される条件は、
フラグ100が1、かつ、最終制御符号102−1が
1、であることである。よって、制御バイトフラグ10
5−2は、フラグ100と最終制御符号102−1の論
理積に等しい。以上を繰り返すと、下式が得られる。 IsControl[0]=F IsControl[1]=F and LCC[0] IsControl[2]=F and LCC[0] and LCC[1] IsControl[3]=F and LCC[0] and LCC[1] and LCC[2] IsControl[4]=F and LCC[0] and LCC[1] and LCC[2] a
nd LCC[3] IsControl[5]=F and LCC[0] and LCC[1] and LCC[2] a
nd LCC[3] and LCC[4] IsControl[6]=F and LCC[0] and LCC[1] and LCC[2] a
nd LCC[3] and LCC[4]and LCC[5] IsControl[7]=F and LCC[0] and LCC[1] and LCC[2] a
nd LCC[3] and LCC[4]and LCC[5] and LCC[6] これらを再帰的に表現すると、図4のステップS201
の式が得られる。
【0067】次に、ステップS202へ進む。ステップ
S202の処理を説明する。制御バイトフラグ105−
1〜105−8及び制御符号位置103−1〜103−
8から、データ/制御フラグ106−1〜106−8を
決定する。始めに、データ/制御フラグ106−N( 1
≦N≦8) が1になるための条件を求める。これは、換
言すれば、N番目の8B/10B符号が制御符号になる条件で
あるから、制御符号位置103−1〜103−8のいず
れかの値が、( N−1) であれば良い。ただし、制御符
号位置103−1〜103−8が意味を持つためには、
対応する制御バイトフラグ105−1〜105−8が1
でなければならない。従って、データ/制御フラグ10
6−Nが1になるためには、制御バイトフラグ105−
Mが1であって、かつ、制御符号位置103−Mの値が
( N−1) であるような、M( 1≦M≦8) が存在する
必要がある。この条件を満たすMの個数は、次式で求め
られる: Σ0 ≦i ≦7 {IsControl[i] and EQUAL(CCL[i], N
−1)} この式の値が0のとき、データ/制御フラグ106−N
を0にし、1のとき、データ/制御フラグ106−Nを
1にする。この式の値が2以上になることは通常あり得
ないが、65Bブロック63にビットエラーが混入して
いた場合は、その限りでない。ただし、そのようなエラ
ーは順序エラー判定部88によって検出可能であるた
め、エラー発生時にデータ/制御フラグ106−1〜1
06−8が不定になっても良い。よって、上式の算術和
は論理和に置き換えられ、データ/制御フラグ106−
N( 1≦N≦8) は、 DC[N−1]={IsControl[0] and EQUAL(CCL[0], N −1)}
or {IsControl[1] and EQUAL(CCL[1], N −1)} or …{IsControl[6] and EQUAL(CCL[6], N −1)} or {IsControl[7] and EQUAL(CCL[7], N −1)} のように表
される。
【0068】次に、上式を簡単化するため、i +1 ≦j
≦7 を満たす、任意の i、j について、 {IsControl[j]
and EQUAL(CCL[j], i)}=0 が成立することを証明す
る。
【0069】[証明] 前述の64B/65B 変換の説明にお
いて、入力された8つの8B/10B符号の順序と、65B ブロ
ック内のバイト順序の関係について述べた。その中で、
制御符号のみに着目すれば、順序が常に保存されること
を示した。この順序保存の性質を、数式で表すと、 0 ≦CCL[0] <CCL[1] <…<CCL[n -1]
となる。ここで nは、65B ブロック63に存在する制御
符号の数である。
【0070】上式より、CCL[0] ≧0 、CCL[1] ≧
1 、…、CCL[n -1] ≧n −1 が導かれる。これら
をまとめると、CCL[i] ≧i(0 ≦i <n)を得る。
【0071】よって、i +1 ≦j <n を満たす jについ
て、CCL[j] ≧i +1 が成立する。すなわち、i +1
≦j <n を満たす jについて、EQUAL(CCL(j), i) =
0 である。さらに、IsControl[i]=0 for n ≦i ≦7 な
る関係を利用すると、i +1 ≦j ≦7 を満たす jについ
て、{IsControl[j] and EQUAL(CCL[j], i)} =0 が成り
立つ。[証明終]。
【0072】この証明の結果を用いると、データ/制御
フラグ106−1〜106−8を求める式は、図4のス
テップS202の式に簡単化される。次に、ステップS
203へ進む。
【0073】ステップS203の処理を説明する。制御
バイトフラグ105−1〜105−8及び制御符号位置
103−1〜103−8に基づいて、制御符号識別子1
04−1〜104−8を8B/10B符号の並び順に整列さ
せ、4ビット制御符号107−1〜107−8として出
力する。4ビット制御符号107−N( 1≦N≦8) が
定まるためには、制御バイトフラグ105−Mが1であ
って、かつ、制御符号位置103−Mが( N−1) であ
るような、M( 1≦M≦8) が存在する必要がある。こ
の条件を満たすMの個数が0のとき、データ/制御フラ
グ106−Nは0になるから、4ビット制御符号107
−Nは不定であって良い。又、条件を満たすMの個数が
2以上のとき、65Bブロックにエラーが生じているた
め、4ビット制御符号107−Nは不定で良い。従っ
て、Mの個数を1と仮定しても差し支えない。そこで、
4ビット制御符号107−N( 1≦N≦8) は、次式で
求められる: ShortControl[N−1]=CCI[0]×{IsControl[0] and EQUA
L(CCL[0], N −1)} or CCI[1]×{IsControl[1] and EQUAL(CCL[1], N −1)} or … CCI[6]×{IsControl[6] and EQUAL(CCL[6], N −1)} or CCI[7]×{IsControl[7] and EQUAL(CCL[7], N −1)} ここで、ステップS202で証明した、i +1 ≦j ≦7
を満たす jについて、{IsControl[j] and EQUAL(CCL
[j], i)}=0 となる関係を用いて、上式を簡単化すると、図4のステ
ップS203の式が得られる。次に、ステップS204
へ進む。
【0074】ステップS204の処理を説明する。4ビ
ット制御符号107−1〜107−8のそれぞれを、元
の8ビットデータに変換し、8ビット制御符号108−
1〜108−8として出力する。この変換は、図9に従
って行われる。次に、ステップS205へ進む。
【0075】ステップS205の処理を説明する。デー
タ/制御フラグ106−1〜106−Nから、データ転
送元109−1〜109−8を求める。まず、8ビット
データ111−1〜111−8と、データ値101−1
〜101−8との対応関係に、制約が存在することを示
す。図6の65B ブロックから8B/10B符号へ変換する際の
制約を示す図のように、8ビットデータ111−8が、
データ値101−7に対応すると仮定してみる。このと
き、64B/65B 変換の前後でデータ符号の順序が保存され
る性質を考慮すると、データ値101−8に8ビットデ
ータを割り当てられなくなる。従って、8ビットデータ
111−8がデータ値101−7に対応することは、あ
り得ない。これを一般化すると、8ビットデータ111
−N( 2≦N≦8) が、データ値101−M( 1≦M<
N) に対応することはない、という制約が得られる。次
に、データ転送元109−8について考える。上記の制
約により、8ビットデータ111−8は必ず、データ値
101−8のみに対応する。よって、データ転送元10
9−8は常に、00000001 (2進数) になる。ここで、デ
ータ/制御フラグ106−8が1のとき( 即ち、8番目
の8B/10B符号が制御符号であるとき) 、データ転送元1
09−8は定義より、意味を持たず、64B/65B 逆変換回
路80の出力に影響を及ぼさない。ただし、データ転送
元109−8は、データ転送元109−7の算出に必要
であるので、データ/制御フラグ106−8が1であっ
ても、値が代入される。次に、データ転送元109−7
を求める。上記の制約により、8ビットデータ111−
7は、データ値101−7又は101−8のいずれかに
対応する。よって、データ転送元109−7が取り得る
値は、 00000001 ( 2進数) 又は 00000010 ( 2進数)
である。どちらの値になるかは、データ/制御フラグ1
06−8の値で決定される。データ/制御フラグ106
−8が0のとき、データ転送元109−8は有効であ
り、その値 00000001 ( 2進数) を再利用できない。そ
のため、データ転送元109−7は 00000010 ( 2進
数) になる。一方、データ/制御フラグ106−8が1
のとき、データ転送元109−8は無効であるから、デ
ータ転送元109−7を 00000001 ( 2進数) にする。
以上より、図4のステップS205の式が得られる。具
体例として、図10の65Bブロックについてデータ転
送元109−1〜109−8を求めた結果を、図7に示
す。図7はデータ/制御フラグDC[i] が1である第4
及び第8符号のDataSource[i] は無効であることを示し
ており、これに対しデータ/制御フラグDC[i] が0で
ある第1〜第3並びに第5〜第7符号のDataSource[i]
は有効であることを示している。そして、第7符号D1
0.2は65Bブロックの第8バイトであることを示
し、同様に第6符号D10.2は65Bブロックの第7
バイト、第5符号D21.4は65Bブロックの第6バ
イト、第3符号D21.5は65Bブロックの第5バイ
ト、第2符号D21.5は65Bブロックの第4バイ
ト、第1符号D21.4は65Bブロックの第3バイト
であることを示している。次に、ステップS206へ進
む。
【0076】ステップS206の処理を説明する。デー
タ転送元109−1〜109−8に基づいて、データ値
101−1〜101−8を8B/10B符号の並び順に
整列させ、データ符号110−1〜110−8として出
力する。データ符号110−N( 1≦N≦8) は、デー
タ転送元109−1〜109−8の定義より、次式で求
められる: Data[N−1]={(DataSource[N−1]の第1ビット) ×DV
[0]} or {(DataSource[N−1]の第2ビット) ×DV[1]} or {(DataSource[N−1]の第3ビット) ×DV[2]} or {(DataSource[N−1]の第4ビット) ×DV[3]} or {(DataSource[N−1]の第5ビット) ×DV[4]} or {(DataSource[N−1]の第6ビット) ×DV[5]} or {(DataSource[N−1]の第7ビット) ×DV[6]} or {(DataSource[N−1]の第8ビット) ×DV[7]}。
【0077】ステップS205で示したように、データ
転送元109−2〜109−8が取り得る値には、以下
の制約がある。 DataSource[7] は、常に 00000001 ( 2進数) 。 DataSource[6] の第1ビット〜第6ビットは、常に0。 DataSource[5] の第1ビット〜第5ビットは、常に0。 DataSource[4] の第1ビット〜第4ビットは、常に0。 DataSource[3] の第1ビット〜第3ビットは、常に0。 DataSource[2] の第1ビット〜第2ビットは、常に0。 DataSource[1] の第1ビットは、常に0。 この制約を利用して上式を簡単化すると、図5のステッ
プS206の式が得られる。次に、ステップS207へ
進む。
【0078】ステップS207の処理を説明する。デー
タ/制御フラグ106−N( 1≦N≦8) が1のとき、
8ビット制御符号108−Nを8ビットデータ111−
Nに代入し、0のとき、データ符号110−Nを8ビッ
トデータ111−Nに代入する。次に、ステップS20
8へ進む。
【0079】ステップS208の処理を説明する。制御
バイトフラグ105−1〜105−8及び最終制御符号
102−8、制御符号位置103−1〜103−8か
ら、順序エラー112の有無を判定する。64B/65
B変換の前後で制御符号の順序は不変であるから、65
Bブロック63にエラーが生じていなければ、次の関係
式が成立する: IsControl[1]=1 のとき、CCL[0]<CCL[1] IsControl[2]=1 のとき、CCL[1]<CCL[2] IsControl[3]=1 のとき、CCL[2]<CCL[3] IsControl[4]=1 のとき、CCL[3]<CCL[4] IsControl[5]=1 のとき、CCL[4]<CCL[5] IsControl[6]=1 のとき、CCL[5]<CCL[6] IsControl[7]=1 のとき、CCL[6]<CCL[7] 又、65Bブロック63の第8バイトが制御符号であれ
ば、最終制御符号102−8は必ず0になる。この関係
を式で表すと、 IsControl[7]=1 のとき、LCC[7]=0 となる。
【0080】これら8つの関係式の中で、1つでも成立
しないものがあれば、順序エラー112を1にする。次
に、ステップS209へ進む。
【0081】ステップS209では、8ビットデータ1
11−1〜111−8及びデータ/制御フラグ106−
1〜106−8、順序エラー112を出力する。その
後、ステップS200へ戻る。
【0082】次に、この符号変換方法及び符号逆変換方
法をコンピュ−タに実行させるための変換プログラムに
ついて説明する。図3にフローチャ−トで示す変換プロ
グラムを変換回路40内部の記憶装置(不図示)に格納
しておく。変換回路40内部には各部41〜47を制御
する制御部(不図示)も設けておく。そして、制御部は
記憶装置から変換プログラムを読出し、その変換プログ
ラムに従って各部41〜47を制御する。一方、図4及
び図5にフローチャ−トで示す逆変換プログラムを逆変
換回路80内部の記憶装置(不図示)に格納しておく。
逆変換回路80内部には各部81〜88を制御する制御
部(不図示)も設けておく。そして、制御部は記憶装置
から逆変換プログラムを読出し、その逆変換プログラム
に従って各部81〜88を制御する。
【0083】なお、上記本発明では制御符号が2個の場
合について説明したが、これに限定されるものではな
く、制御符号が0個から8個の場合のいずれにも適応が
可能なことは、例えば図8を参照すれば明白である。
【0084】
【発明の効果】本発明による符号変換システムによれ
ば、時系列に任意の順序で入力される2種類の符号を、
第1種の符号を時系列符号として一括して先頭に配置
し、第2種の符号を時系列符号として一括して前記第1
種の符号の次に配置することにより1個のブロックに変
換する符号変換システムであって、前記入力される符号
の各々が第1種であるか第2種であるかを示す識別符号
が前記符号とともに入力され、前記識別符号に基づき前
記入力される符号が第1種であるか第2種であるかを識
別し、入力される符号が第1種である場合はその符号を
時系列符号として一括して先頭に配置し、残りの第2種
の符号を時系列符号として一括して前記第1種の符号の
次に配置することにより前記1個のブロックに変換する
符号変換手段を含むため、冗長な演算を省略し、これに
より少ないハ−ドウエア資源で64B/65B変換及びその逆
変換を実現することが可能となる。
【0085】又、本発明による他の符号変換システム、
符号変換方法、他の符号変換方法、変換プログラム及び
他の変換プログラムも上記符号変換システムと同様の効
果を奏する。
【図面の簡単な説明】
【図1】本発明による64B/65B 変換回路の一例の構成図
である。
【図2】本発明による64B/65B 逆変換回路の一例の構成
図である。
【図3】64B/65B 変換回路40の動作を示すフロ−チャ
−トである。
【図4】64B/65B 逆変換回路80の動作を示すフロ−チ
ャ−トである。
【図5】64B/65B 逆変換回路80の動作を示すフロ−チ
ャ−トである。
【図6】65B ブロックから8B/10B符号へ変換する際の制
約を示す図である。
【図7】65Bブロックについてデータ転送元を求めた
結果を示す図である。
【図8】65B ブロックの構成図である。
【図9】制御符号の4ビット表現の一例を示す図であ
る。
【図10】64B/65B 変換の一例を示す図である。
【符号の説明】
40 64B/65B 変換回路 41 制御符号変換部 42 データ符号レジスタ 43 制御符号レジスタ 44 制御符号位置レジスタ 45 符号カウンタ 46 制御符号カウンタ 47 65B ブロック生成部 80 64B/65B 逆変換回路 81 制御バイト判定部 82 データ/制御判定部 83 制御符号整列部 84 制御符号復元部 85 データ転送元決定部 86 データ符号整列部 87 データ/制御選択部 88 順序エラー判定部

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】 時系列に任意の順序で入力される2種類
    の符号を、第1種の符号を時系列符号として一括して先
    頭に配置し、第2種の符号を時系列符号として一括して
    前記第1種の符号の次に配置することにより1個のブロ
    ックに変換する符号変換システムであって、 前記入力される符号の各々が第1種であるか第2種であ
    るかを示す識別符号が前記符号とともに入力され、 前記識別符号に基づき前記入力される符号が第1種であ
    るか第2種であるかを識別し、入力される符号が第1種
    である場合はその符号を時系列符号として一括して先頭
    に配置し、残りの第2種の符号を時系列符号として一括
    して前記第1種の符号の次に配置することにより前記1
    個のブロックに変換する符号変換手段を含むことを特徴
    とする符号変換システム。
  2. 【請求項2】 前記符号変換手段には、前記先頭に配置
    された第1種符号の各々に前記入力時におけるその符号
    の位置を示す位置符号を付与する位置符号付与手段が含
    まれることを特徴とする請求項1記載の符号変換システ
    ム。
  3. 【請求項3】 前記符号変換手段には、前記入力時にお
    ける前記第1種符号を他の符号に変換する第1種符号変
    換手段が含まれることを特徴とする請求項1又は2記載
    の符号変換システム。
  4. 【請求項4】 前記符号変換手段は、前記時系列に入力
    される符号に前記第1種の符号が含まれるか否かを示す
    第2の識別符号を、前記1個のブロックの先頭に配置す
    ることを特徴とする請求項1から3いずれか記載の符号
    変換システム。
  5. 【請求項5】 前記第1種の符号は制御符号であり、前
    記第2種の符号はデータ符号であることを特徴とする請
    求項1から4いずれか記載の符号変換システム。
  6. 【請求項6】 時系列に任意の順序で入力される2種類
    の符号を、第1種の符号を時系列符号として一括して先
    頭に配置し、第2種の符号を時系列符号として一括して
    前記第1種の符号の次に配置することにより1個のブロ
    ックに変換された情報を逆変換する符号変換システムで
    あって、 少なくとも前記1個のブロックに前記第1種の符号が含
    まれるか否かを示す識別符号が前記1個のブロックの先
    頭に配置され、かつ前記1個のブロックに含まれる第1
    種の符号の各々に前記第1種の符号であることを示す最
    終制御符号及び前記1個のブロックに変換される前の符
    号の位置を示す位置符号が付与されており、 前記識別符号、最終制御符号及び位置符号に基づき前記
    1個のブロックに含まれる前記第1種の符号を元の位置
    に整列させ、前記1個のブロックに含まれる前記第2種
    の符号を残りの位置に時系列に整列させる符号逆変換手
    段を含むことを特徴とする符号変換システム。
  7. 【請求項7】 前記符号逆変換手段には、前記1個のブ
    ロックに含まれる第1種の符号を元の符号に復元する第
    1種符号復元手段が含まれることを特徴とする請求項6
    記載の符号変換システム。
  8. 【請求項8】 前記第1種の符号は制御符号であり、前
    記第2種の符号はデータ符号であることを特徴とする請
    求項6又は7記載の符号変換システム。
  9. 【請求項9】 時系列に任意の順序で入力される2種類
    の符号を、第1種の符号を時系列符号として一括して先
    頭に配置し、第2種の符号を時系列符号として一括して
    前記第1種の符号の次に配置することにより1個のブロ
    ックに変換する符号変換方法であって、 前記入力される符号の各々が第1種であるか第2種であ
    るかを示す識別符号が前記符号とともに入力され、 前記識別符号に基づき前記入力される符号が第1種であ
    るか第2種であるかを識別し、入力される符号が第1種
    である場合はその符号を時系列符号として一括して先頭
    に配置し、残りの第2種の符号を時系列符号として一括
    して前記第1種の符号の次に配置することにより前記1
    個のブロックに変換する符号変換ステップを含むことを
    特徴とする符号変換方法。
  10. 【請求項10】 前記符号変換ステップには、前記先頭
    に配置された第1種符号の各々に前記入力時におけるそ
    の符号の位置を示す位置符号を付与するステップが含ま
    れることを特徴とする請求項9記載の符号変換方法。
  11. 【請求項11】 前記符号変換ステップには、前記入力
    時における前記第1種符号を他の符号に変換するステッ
    プが含まれることを特徴とする請求項9又は10記載の
    符号変換方法。
  12. 【請求項12】 前記符号変換ステップは、前記時系列
    に入力される符号に前記第1種の符号が含まれるか否か
    を示す第2の識別符号を、前記1個のブロックの先頭に
    配置することを特徴とする請求項9から11いずれか記
    載の符号変換方法。
  13. 【請求項13】 前記第1種の符号は制御符号であり、
    前記第2種の符号はデータ符号であることを特徴とする
    請求項9から12いずれか記載の符号変換方法。
  14. 【請求項14】 時系列に任意の順序で入力される2種
    類の符号を、第1種の符号を時系列符号として一括して
    先頭に配置し、第2種の符号を時系列符号として一括し
    て前記第1種の符号の次に配置することにより1個のブ
    ロックに変換された情報を逆変換する符号変換方法であ
    って、 少なくとも前記1個のブロックに前記第1種の符号が含
    まれるか否かを示す識別符号が前記1個のブロックの先
    頭に配置され、かつ前記1個のブロックに含まれる第1
    種の符号の各々に前記第1種の符号であることを示す最
    終制御符号及び前記1個のブロックに変換される前の符
    号の位置を示す位置符号が付与されており、 前記識別符号、最終制御符号及び位置符号に基づき前記
    1個のブロックに含まれる前記第1種の符号を元の位置
    に整列させ、前記1個のブロックに含まれる前記第2種
    の符号を残りの位置に時系列に整列させる符号逆変換ス
    テップを含むことを特徴とする符号変換方法。
  15. 【請求項15】 前記符号逆変換ステップには、前記1
    個のブロックに含まれる第1種の符号を元の符号に復元
    するステップが含まれることを特徴とする請求項14記
    載の符号変換方法。
  16. 【請求項16】 前記第1種の符号は制御符号であり、
    前記第2種の符号はデータ符号であることを特徴とする
    請求項14又は15記載の符号変換方法。
  17. 【請求項17】 時系列に任意の順序で入力される2種
    類の符号を、第1種の符号を時系列符号として一括して
    先頭に配置し、第2種の符号を時系列符号として一括し
    て前記第1種の符号の次に配置することにより1個のブ
    ロックに変換する符号変換方法をコンピュ−タに実行さ
    せるための変換プログラムであって、 前記入力される符号の各々が第1種であるか第2種であ
    るかを示す識別符号が前記符号とともに入力され、 前記識別符号に基づき前記入力される符号が第1種であ
    るか第2種であるかを識別し、入力される符号が第1種
    である場合はその符号を時系列符号として一括して先頭
    に配置し、残りの第2種の符号を時系列符号として一括
    して前記第1種の符号の次に配置することにより前記1
    個のブロックに変換する符号変換ステップをコンピュ−
    タに実行させるための変換プログラム。
  18. 【請求項18】 前記符号変換ステップには、前記先頭
    に配置された第1種符号の各々に前記入力時におけるそ
    の符号の位置を示す位置符号を付与するステップが含ま
    れることを特徴とする請求項17記載の変換プログラ
    ム。
  19. 【請求項19】 前記符号変換ステップには、前記入力
    時における前記第1種符号を他の符号に変換するステッ
    プが含まれることを特徴とする請求項17又は18記載
    の変換プログラム。
  20. 【請求項20】 前記符号変換ステップは、前記時系列
    に入力される符号に前記第1種の符号が含まれるか否か
    を示す第2の識別符号を、前記1個のブロックの先頭に
    配置することを特徴とする請求項17から19いずれか
    記載の変換プログラム。
  21. 【請求項21】 前記第1種の符号は制御符号であり、
    前記第2種の符号はデータ符号であることを特徴とする
    請求項17から20いずれか記載の変換プログラム。
  22. 【請求項22】 時系列に任意の順序で入力される2種
    類の符号を、第1種の符号を時系列符号として一括して
    先頭に配置し、第2種の符号を時系列符号として一括し
    て前記第1種の符号の次に配置することにより1個のブ
    ロックに変換された情報を逆変換する符号変換方法をコ
    ンピュ−タに実行させるための変換プログラムであっ
    て、 少なくとも前記1個のブロックに前記第1種の符号が含
    まれるか否かを示す識別符号が前記1個のブロックの先
    頭に配置され、かつ前記1個のブロックに含まれる第1
    種の符号の各々に前記第1種の符号であることを示す最
    終制御符号及び前記1個のブロックに変換される前の符
    号の位置を示す位置符号が付与されており、 前記識別符号、最終制御符号及び位置符号に基づき前記
    1個のブロックに含まれる前記第1種の符号を元の位置
    に整列させ、前記1個のブロックに含まれる前記第2種
    の符号を残りの位置に時系列に整列させる符号逆変換ス
    テップをコンピュ−タに実行させるための変換プログラ
    ム。
  23. 【請求項23】 前記符号逆変換ステップには、前記1
    個のブロックに含まれる第1種の符号を元の符号に復元
    するステップが含まれることを特徴とする請求項22記
    載の変換プログラム。
  24. 【請求項24】 前記第1種の符号は制御符号であり、
    前記第2種の符号はデータ符号であることを特徴とする
    請求項22又は23記載の変換プログラム。
JP2001355449A 2001-11-21 2001-11-21 符号変換システム及びその変換方法並びに変換プログラム Expired - Fee Related JP3747839B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001355449A JP3747839B2 (ja) 2001-11-21 2001-11-21 符号変換システム及びその変換方法並びに変換プログラム
CA002412236A CA2412236C (en) 2001-11-21 2002-11-20 Code converter and method of code conversion
US10/299,906 US6714146B2 (en) 2001-11-21 2002-11-20 Code converter and method of code conversion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001355449A JP3747839B2 (ja) 2001-11-21 2001-11-21 符号変換システム及びその変換方法並びに変換プログラム

Publications (2)

Publication Number Publication Date
JP2003157168A true JP2003157168A (ja) 2003-05-30
JP3747839B2 JP3747839B2 (ja) 2006-02-22

Family

ID=19167146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001355449A Expired - Fee Related JP3747839B2 (ja) 2001-11-21 2001-11-21 符号変換システム及びその変換方法並びに変換プログラム

Country Status (3)

Country Link
US (1) US6714146B2 (ja)
JP (1) JP3747839B2 (ja)
CA (1) CA2412236C (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017005415A (ja) * 2015-06-08 2017-01-05 富士機械製造株式会社 通信装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3879836B2 (ja) * 2002-03-28 2007-02-14 日本電気株式会社 多重変換装置、逆多重変換装置および多重伝送システム
US7809021B2 (en) * 2002-07-10 2010-10-05 Solarflare Communications, Inc. Communication system and encoding method having low overhead
EP2267605B1 (en) * 2002-09-03 2013-10-23 InterDigital Technology Corporation Method for transferring a communication session from a first to a second terminal, and terminal
US7356044B1 (en) * 2002-12-20 2008-04-08 Cypress Semiconductor Corporation Method and apparatus for the deletion of bytes when performing byte rate adaptation
US7929471B2 (en) 2004-09-20 2011-04-19 Lantiq Deutschland Gmbh Data packet encapsulation protocol
US8718067B2 (en) * 2004-11-24 2014-05-06 Lantiq Deutschland Gmbh Pre-emption mechanism for packet transport
US20060271886A1 (en) * 2005-05-25 2006-11-30 Wenstrand John S Character entry system and method for electronic devices
WO2010019250A2 (en) 2008-08-11 2010-02-18 Solarflare Communications, Inc. Method of synchronization for low power idle
US8461848B2 (en) 2008-12-10 2013-06-11 Marvell International Ltd. Cable diagnostics for Base-T systems

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5255265A (en) * 1992-05-05 1993-10-19 At&T Bell Laboratories Controller for input-queued packet switch
US5473346A (en) * 1993-04-12 1995-12-05 Pollack; Jordan Data input device and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017005415A (ja) * 2015-06-08 2017-01-05 富士機械製造株式会社 通信装置

Also Published As

Publication number Publication date
JP3747839B2 (ja) 2006-02-22
CA2412236A1 (en) 2003-05-21
US20030095054A1 (en) 2003-05-22
CA2412236C (en) 2006-04-11
US6714146B2 (en) 2004-03-30

Similar Documents

Publication Publication Date Title
Ziv et al. Compression of individual sequences via variable-rate coding
JP3747839B2 (ja) 符号変換システム及びその変換方法並びに変換プログラム
Gray Time-invariant trellis encoding of ergodic discrete-time sources with a fidelity criterion
KR910010945A (ko) 데이타 표시 및 프로토콜
US9529932B2 (en) XML node labeling and querying using logical operators
JPH0683206B2 (ja) データ通信方法及びネットワーク
CN1639982A (zh) 副比特流与主比特流的复用
US6263353B1 (en) Method and apparatus for converting between different digital data representation formats
JP2940948B2 (ja) データ圧縮方式
CA2179296C (en) Device for establishing cell boundaries in a bit stream and crc calculation
JP2006211331A (ja) データ符号化装置、データ復号装置及びデータ符号化/復号システム
US7447787B2 (en) Protocol executing system and protocol PDU common data structure converting method for processing protocol PDUS
US7508800B1 (en) Block code mapping system and method
Kimura Equivalence relations in the approximations for the M/G/s/s+ r queue
KR102297290B1 (ko) 네트워크 트래픽의 양자화 분석 장치 및 방법
Wang et al. Chaotic synchronization with limited information
Memon et al. Differential lossless encoding of images using non-linear predictive techniques
KR100361489B1 (ko) 티엠엔 기반의 큐3 인터페이스에서의 관리 시스템을 위한 데이터 표기방법
CA2537631A1 (en) Method and apparatus for data encoding
SU1429322A1 (ru) Преобразователь двоичного кода в код по модулю К
Westphal et al. Interfacing parallel computers to fiber-optic communication links for plant automation
CN116866004A (zh) 一种基于二分同步的多智能体系统文字加解密方法
CN1489343A (zh) 一种异步传输模式业务的自动配置方法
JPH0420153A (ja) 通信制御方式
JPH05216799A (ja) 名前管理方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050214

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: 20051108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051121

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101209

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101209

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111209

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111209

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121209

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121209

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131209

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees