Processing unit and an arithmetic processing method

申请号 JP4403397 申请日 1997-02-27 公开(公告)号 JP2856190B2 公开(公告)日 1999-02-10
申请人 日本電気株式会社; 发明人 UEJIMA YOSHUKI;
摘要
权利要求 (57)【特許請求の範囲】
  • 【請求項1】 パラレルデータ形式の送信データをパラレル−シリアル変換した後このシリアルデータ化された送信データがスクランブラでランダム化されて供給されるマルチプレクサと、このマルチプレクサから供給されるデータが任意のビット数n(n≧4の偶数)で区切られたデータ区間であって、2ビットシンボルデータが論理レベルの“10”のときは+(2m+1)(m≧1の整数)をカウントし、“11”のときは+(2m−1)
    をカウントし、“01”のときは−(2m−1)をカウントし、“00”のときは−(2m+1)をカウントする第1のカウンタと、前記データ区間以前の区間内の全てのデータに対して前記2ビットシンボルデータが“1
    0”のときは+(2m+1)をカウントし、“11”のときは+(2m−1)をカウントし、“01”のときは−(2m+1)をカウントし、“00”のときは−(2
    m+1)をカウントする第2のカウンタと、前記第1のカウンタの符号ビットと前記第2のカウンタの符号ビットとを比較する比較手段と、前記比較手段の結果によって前記データ区間のデータの“1”と“0”とを反転させる2つのビット反転回路と、前記データ区間のnビット数分だけデータを遅延させるための2つのn/2ビットシフトレジスタと、これらの2つのn/2ビットシフトレジスタ回路から供給される前記遅延されたウエイト値の2ビットを、前記データ区間分のnビット数毎にデータ列中に挿入して2つの前記ビット反転回路にそれぞれ出力する2つのビットスタッフ回路とを有し、通信装置における送信データの直流バイアスを抑制するために用いられるホワイトナー・エンコーディングを行うことを特徴とする演算処理装置。
  • 【請求項2】 前記スクランブラ化された送信データが前記マルチプレクサにより2ビットシンボルデータとして2ビット毎に上位ビットと下位ビットとに振り分けられ、これら上位ビットデータ列と下位ビットデータ列のそれぞれが前記n/2ビットシフトレジスタ回路とビットスタッフ回路とビット反転回路とを介して2系列状態で送出される請求項1記載の演算処理装置。
  • 【請求項3】 前記上位ビットおよび前記下位ビットのそれぞれのビット幅は、各ビットが前記スクランブラ化されたデータにおける2ビット分のビット幅が割り当てられる請求項2記載の演算処理装置。
  • 【請求項4】 前記比較手段が、前記第1のカウンタの出力端が一方の入力端に、前記第2のカウンタの出力端が他方の入力端にそれぞれ接続されるとともにその出力端が前記ビット反転回路の入力端に接続される排他的論理和回路を用いて構成される請求項1記載の演算処理装置。
  • 【請求項5】 前記比較手段は、前記第1のカウンタの出力端がそれぞれの一方の入力端に、前記第2のカウンタの出力端がそれぞれの他方の入力端にそれぞれ共通接続されるAND回路および第1のNOR回路と、前記A
    ND回路の出力端が一方の入力端に、前記第1のNOR
    回路の出力端が他方の入力端にそれぞれ接続されるとともにその出力端が前記ビット反転回路の入力端に接続される第2のNOR回路とから構成される請求項1記載の演算処理装置。
  • 【請求項6】 パラレルデータ形式の送信データをパラレル−シリアル変換した後このシリアルデータ化された送信データがスクランブラでランダム化されて供給されるマルチプレクサと、このマルチプレクサから供給される2ビットシンボルデータが任意のビット数n(n≧4
    の偶数)で区切られたデータ区間であって、2ビットシンボルデータが論理レベルの“10”のときは+(2m
    +1)(m≧1の整数)をカウントし、“11”のときは+(2m−1)をカウントし、“01”のときは−
    (2m−1)をカウントし、“00”のときは−(2m
    +1)をカウントする第1のカウンタと、前記データ区間以前の区間内の全てのデータに対して前記2ビットシンボルデータが“10”のときは+(2m+1)をカウントし、“11”のときは+(2m−1)をカウントし、“01”のときは−(2m+1)をカウントし、
    “00”のときは−(2m+1)をカウントする第2のカウンタと、前記第1のカウンタの符号ビットと前記第2のカウンタの符号ビットとを比較する比較手段と、前記比較手段の結果によって前記データ区間のデータの“1”と“0”とを反転させる2つのビット反転回路と、前記データ区間のnビット数分だけデータを遅延させるための2つのn/2ビットシフトレジスタと、これらの2つのn/2ビットシフトレジスタ回路から供給される前記遅延されたウエイト値の2ビットを、前記データ区間分のnビット数毎にデータ列中に挿入して2つの前記ビット反転回路にそれぞれ出力する2つのビットスタッフ回路とを用いて、2つの前記n/2ビットシフトレジスタが第1のカウンタでnビットデータ区間分の前記ウエイト値をカウントした後に前記データ区間のデータを送信するために、nビットデータ区間分のビット数を経過してから前記データ区間のデータを送出するステップと、受信側でのホワイトナー・デコーディングで使用させるために、2つの前記ビットスタッフ回路が前記データ区間毎に2ビットのデータを挿入するステップと、前記第1のカウンタのカウント結果により、送出前のnビットデータ区間においてデータの前記ウエイト値が+側か−側かを示すステップと、前記第2のカウンタのカウント結果により、既に送出済みのデータの前記ウエイト値が+側か−側かを示すステップと、前記第1および前記第2のカウンタが、ともに符号ビットである最上位ビットで送信データの前記ウエイト値が+側か−側かを判断するステップと、2つの前記カウンタの最上位ビットを前記比較手段で判定させ、前記第1および前記第2のカウンタの双方とも前記ウエイト値が+側または−側と判断された場合には、送出済みのデータに対して同じ方向に送信データの前記ウエイト値を片寄らないように、前記第1のカウンタでカウントしたデータ区間のデータを2つの前記ビット反転回路でそれぞれ反転させてから送出させるステップと、逆に、前記第1および前記第2のカウンタで、一方の前記ウエイト値が+側でもう一方のウエイト値が−側であると判断された場合には、第1のカウンタでカウントしたデータ区間のデータを2つの前記ビット反転回路で反転せずに送出させるステップとからなる処理アルゴリズムにより、送信データ中の“10”、“11”、“01”、“00”の数を調整し、送信データの前記直流バイアスを抑制する前記ホワイトナー・エンコーディングの演算処理方法。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【発明の属する技術分野】本発明は、演算処理装置及び演算処理方法に係わり、特に無線LAN(Local
    Area Network)における送信データの直流(以下、DCと称す)バイアスを抑制するために用いられるホワイトナー・エンコーダの演算処理装置および演算処理方法に関する。

    【0002】

    【従来の技術】無線LANはIEEE(Institu
    te of Erectricaland Erect
    ronics Engineers)802.11委員会において標準化が進められており、ホワイトナー・エンコーダに関してもそのアルゴリズムが、IEEE
    “Wireless LAN Medium Acce
    ss Control(MAC)and Physic
    al Layer(PHY)Specificatio
    ns”Draft Standard IEEE80
    2.11の25 January 1996(P80
    2.11D3)の第179頁〜第180頁,第183頁〜第184頁,第189頁に記載されている。

    【0003】同誌所載のフレームフォーマットを示した図7を参照しながら、周波数ホッピングのスペクトラム拡散(FH−SS)方式で、伝送速度2Mbpsの無線LANで用いられる送信フレームに関して説明する。

    【0004】同図を参照すると、送信フレームは“1”
    と“0”の繰り返しである80ビットのpreambl
    e(以下、プリアンブルと称す)53に続いて、16ビットのスタートフレームデリミタ54(以下、SFDと称す)を送信し、このあと有効なデータが続くことを受信側に示す。 SFD54に続いて、送信データ長や送信フレームに関する情報を含んだ16ビットのheade
    r(以下、ヘッダーと称す)55が送られた後、実際に送りたい送信データ56を送ることになる。 送信データ56は可変長である。

    【0005】次に、ホワイトナー・エンコーダによって、64ビット毎に2ビットのstuff bit(以下、スタッフビットと称す)52が挿入されて送信される。 送信フレームのDCバイアスを抑制するため、ホワイトナー・エンコーダによって、ある64ビット間のデータは実際の送信data(以下、データと称す)56
    に対して論理レベルのハイレベルの“1”とロウレベルの“0”ビットを反転した送信データ56が送信される。

    【0006】このとき、ビット反転された送信データ5
    6が設定されている64ビット区間の前の区間に挿入されるスタッフビット52は、予め“11”に設定されている。 そのため、受信側では受信した送信フレームのスタッフビット52が“11”のときは、そのあとに続く送信データ56を再度ビット反転する処理を行なうことによって、正しいデータを受信することになる。 送信フレームの最後にはエラーチェック用のCRC57が付加されている。

    【0007】図8は、前述したIEEE802.11に示されているホワイトナー・エンコーディング・アルゴリズムに従って構成された、従来の無線LANにおける演算処理装置の一例を示すブロック図である。 同図および図7を併せて参照しながら動作を説明する。

    【0008】パラレルデータ形式の送信データは、まずPtoS(以下、パラレル−シリアル変換回路と称す)
    11に入される。 パラレル−シリアル変換回路11
    は、送信データをシリアルデータ形式に変換する。 このシリアルデータ化された送信データ56をscramb
    ler(以下、スクランブラと称す)12がランダム化する。

    【0009】スクランブルされたデータは、n−bit
    sift register(以下、64ビット・シフトレジスタ13と称す)に入力される。 64ビット・
    シフトレジスタ13は、送信フレーム51の送信データ56から64ビット毎にデータを取り出す。 この取り出された64ビットのデータに対して、weight(以下、ウエイト回路と称す)36とadder(以下、加算回路Aと称す)は、各ビット毎ごとにウエイトを付けて加算する。

    【0010】これは前述したIEEE802.11のアルゴリズムにおける、(bias next bloc
    k)=Sum{weight(b(32))}を実行することになる。 このアルゴリズムのb(1)からb(3
    2)は64ビット・シフトレジスタ13によって取り出された2ビットシンボルデータであり、データb(0)
    はスタッフビット52である。 このスタッフビット52
    を、2−bit stuff(以下、スタッフビット挿入回路と称す)14cは、フレーム中の64ビット毎に2ビットづつ挿入する。 スタッフビット52の初期値はb(0)=00である。

    【0011】ここで言うウエイト値は、動作説明用タイミングチャートを示した図9およびその次の区間のタイミングチャートを示した図10の最上段に示すように、
    ウエイト回路36により後述する重み付けが2ビット毎に行われたデータである。 すなわち、図中2段目の波形はスクランブラ回路12の出力波形であり、例えばB1
    区間の81hでみると、10000001となっており、このデータに対応するウエイト出力は+3−3−3
    −1になっている。 つまり、送信データ56の2ビットシンボルデータが“10”のとき+3であり、“11”
    のとき+1であり、“01”のとき−1であり、“0
    0”のとき−3である。

    【0012】上述したアルゴリズムによれば、例えば、
    b(1)=10のときは、weight(b(1))=
    +3であり、b(2)=01のときは、weight
    (b(2))=−1であることを示す。

    【0013】加算回路A31は、フレーム送信開始時および64ビット毎に演算を行った後に、リセットされる。 このリセットによって、加算回路A31は内容がクリアされ“0”となる。

    【0014】ここで、加算回路A31によって計算された結果を信号biasとし、加算回路B32によって計算された結果を累積した信号accumとすると、co
    mparater(以下、比較回路と称す)33によって、bias*accum>0かどうかを判定する。 これは前述したアルゴリズムにおける、IF={[(ac
    cum)*(bias next brock)>
    0]}then…を実行することになる。

    【0015】判定結果が(bias)*(accum)
    >0のとき、比較回路33の出力を“0”とし、(bi
    as)*(accum)<0のとき、比較回路33の出力を“1”とする。

    【0016】比較回路33の出力が“0”のとき、bi
    t inversion(以下、ビット反転回路と称す)15によって、biasの演算に用いた64ビット間のデータに対して、各ビットが送出されるときに、ビット反転回路15によってビット反転を行う。 これは前述のアルゴリズムにおける、 Invert{b(0),…,b(N)} を実行することになる。 比較回路33の出力が“1”のときはビットの反転は行わない。

    【0017】また、比較回路33の出力が“0”のとき、inversion(以下、符号反転回路と称す)
    34によって、加算回路A31の出力であるbiasの符号の反転を行う。 これは前述のアルゴリズムにおける、(bias next block)=−(bia
    s next block)を実行することになる。 比較回路33の出力が“1”のときはビットの反転は行わない。

    【0018】以上のように、加算回路A31では、ある64ビット区間ごとに送信データを加算し、加算回路B
    32で加算回路A31で得た結果を加算する。 加算回路B32の結果はレジスタ35に保存され、64ビット区間ごとに加算回路A31とレジスタ35の値が比較回路33によって比較さる。 比較回路33の結果に従って、
    符号反転回路34では、加算回路A31の結果の符号を反転し、ビット反転回路15では送信データの“1”と“0”をビット毎に反転を行うように動作する。

    【0019】次に、図8と動作説明用のタイミングチャートを示した図9および図10とを併せて参照しながら、従来のホワイトナー・エンコーダの動作を説明する。 図9では、スクランブル後の送信データとして、1
    6進数で6Eh、CAh、9Bh、B7h、BFh、D
    Fh、3Eh、EFh、(図9中のA1区間部分)、8
    1h、C3h、3Bh、63h、2Ah、39h、85
    h、89h、(図9中のB1区間部分)、A4h、B2
    h、61h、24h、4Bh、CCh、9Ah、58
    h、(図9および9中のC1区間部分)をLSBから送信する場合の例である。

    【0020】例えば、63hをLSBから送信すると、
    11000110と送信される。 ここで、図9ではA1
    期間のデータが描かれていないが、A2と同様である。

    【0021】A1区間のデータは、64ビット・シフトレジスタ13によって64ビット分シフトされ、送信データとしてはA2区間に送信される。 同様に、B1区間のデータはB2区間に、C1区間のデータはC2区間に送信されることになる。 この様に64ビット分シフトするのは、ある64ビット間のデータをもとに、後述するウエイトの演算方法にしたがってウエイトを計算した後に、そのデータをビット反転するかどうかを判断してから送信しなければならないためである。

    【0022】加算回路A31は64ビット間のデータをウエイトを付けて加算する。 前述したようにデータが“10”のときは+3で、“11”のときは+1、“0
    1”のときは−1、“00”のときは−3である。これを適用すると、例えば、11000110をウエイトを付けて加算すると、(11)+(00)+(01)+
    (10)=+1−3−1+3=0となる。

    【0023】図9のタイミング(1)において、ウエイト回路36および加算回路A31によって、A1区間のウエイト値の総和を計算すると、+1−3−1+1−1
    −1−3+1+1−1+3−1+1+3+1−1+1+
    1+1−1+1+1+3+1−1+1+1−3+1+1
    −1+1=+8という結果が得られる。 A1区間に関しては、加算回路A31の結果がそのままレジスタ35に蓄積される。

    【0024】図10のタイミング(2)において、ウエイト回路36および加算回路A31によって、B1区間のウエイト値の総和を計算すると、+3−3−3−1+
    1−3−3+1+1−1+1−3+1−3−1+3−1
    −1−1−3+3−1+1−3+3+3−3−1+3−
    1−3−1=−16という結果が得られる。

    【0025】また、このタイミングで、加算回路A31
    の結果(−16)とレジスタの値(+8)が比較回路3
    3によって比較され、(加算回路A)*(レジスタ)<
    0という結果になるので、符号反転回路34及びビット反転回路15に対して、データを反転させる信号は出力しない。

    【0026】図9では、比較回路33の出力は“1”である。 つまり、データの反転は行わないので、符号反転回路34の出力は(−16)であり、B2の区間の送信データはB1区間のデータをビット反転せずにそのまま送信する。 加算回路B32では、符号反転回路34の出力(−16)とレジスタの出力(+8)を加算し、(−
    8)という値を得る。 この加算回路B32の結果は、レジスタ35に蓄積される。

    【0027】同様に、図10のタイミング(3)では、
    ウエイト回路36および加算回路A31によって、C1
    区間のウエイト値の総和を計算すると、−3+3−1−
    1−1−3+1−1+3−3−1+3−3+3−1−3
    +1−1−3+3−3+1−1−1+3−1−3−1+
    3+3=−10という結果が得られる。

    【0028】また、このタイミングで、加算回路A31
    の結果(−10)とレジスタ35(−8)の値が比較回路33によって比較され、(加算回路A31)*(レジスタ35)>0という結果になるので、符号反転回路3
    4およびビット反転回路15に対して、データを反転させる信号を出力する。 図10では、比較回路33の出力は“0”である。

    【0029】つまり、データの反転を行うので、符号反転回路34の出力は+10となり、C2の区間の送信データはC1区間のデータをビット反転して送信することになる。 加算回路B32では、符号反転回路34の出力(+10)とレジスタ35の出力(−8)を加算し、+
    2という値を得る。 この加算回路B32の結果は、レジスタ35に蓄積される。

    【0030】送信データがビット反転されている区間は、スタッフビットが“11”となるので、受信側では、スタッフビットを判断して“11”であれば、それに続く64ビットのデータを再度反転して戻すことになる。

    【0031】ホワイトナー・エンコーダによるDCバイアス抑制の効果は、例えば、C2区間を反転しなかった場合には、C2区間が終了した後のレジスタの値は、+
    8(B1区間のレジスタ値)−16(符号反転回路出力)−10(C1区間のウエイト値総和)=−16となり、送信データのウエイト値が(−)側に片寄ってしまう。 そこで、C2区間をビット反転すると、前述のように、レジスタの値は(+8−16+10)=+2となり、逆に(+)側になるが、大きく片寄ることはない。

    【0032】上述の様に処理を実行して、送信データ中の“1”と“0”の数を調整することにより、送信データのDCバイアスを抑制することができる。

    【0033】

    【発明が解決しようとする課題】上述した従来の技術の問題点は、ホワイトナー・エンコーディングを行う演算処理装置の回路構成が大きくなってしまうことである。

    【0034】その理由は、前述したように、従来のホワイトナー・エンコーディングを行う演算処理装置では、
    シフトレジスタ13やビットスタッフ回路14の他に、
    ウエイト演算を行うための2つの加算回路31および3
    2、ウエイト演算結果を反転するための符号反転回路3
    4、過去のウエイト演算結果を保存するためのレジスタ35、送信データを反転するかどうかを判断する比較回路33等で構成されていたからである。

    【0035】本発明の目的は、上述した従来の欠点に鑑みなされたものであり、ホワイトナー・エンコーディングを行う演算方法を変更することにより、回路構成を簡素化することにある。

    【0036】

    【課題を解決するための手段】本発明の演算処理装置の特徴は、パラレルデータ形式の送信データをパラレル−
    シリアル変換した後このシリアルデータ化された送信データがスクランブラでランダム化されて供給されるマルチプレクサと、このマルチプレクサから供給されるデータが任意のビット数n(n≧4の偶数)で区切られたデータ区間であって、2ビットシンボルデータが論理レベルの“10”のときは+(2m+1)(m≧1の整数)
    をカウントし、“11”のときは+(2m−1)をカウントし、“01”のときは−(2m−1)をカウントし、“00”のときは−(2m+1)をカウントする第1のカウンタと、前記データ区間以前の区間内の全てのデータに対して前記2ビットシンボルデータが“10”
    のときは+(2m+1)をカウントし、“11”のときは+(2m−1)をカウントし、“01”のときは−
    (2m+1)をカウントし、“00”のときは−(2m
    +1)をカウントする第2のカウンタと、前記第1のカウンタの符号ビットと前記第2のカウンタの符号ビットとを比較する比較手段と、前記比較手段の結果によって前記データ区間のデータの“1”と“0”とを反転させる2つのビット反転回路と、前記データ区間のnビット数分だけデータを遅延させるための2つのn/2ビットシフトレジスタと、これらの2つのn/2ビットシフトレジスタ回路から供給される前記遅延されたウエイト値の2ビットを、前記データ区間分のnビット数毎にデータ列中に挿入して2つの前記ビット反転回路にそれぞれ出力する2つのビットスタッフ回路とを有し、通信装置における送信データの直流バイアスを抑制するために用いられるホワイトナー・エンコーディングを行うことにある。

    【0037】また、前記スクランブラ化された送信データが前記マルチプレクサにより2ビットシンボルデータとして2ビット毎に上位ビットと下位ビットとに振り分けられ、これら上位ビットデータ列と下位ビットデータ列のそれぞれが前記n/2ビットシフトレジスタ回路とビットスタッフ回路とビット反転回路とを介して2系列状態で送出される。

    【0038】さらに、前記上位ビットおよび前記下位ビットのそれぞれのビット幅は、各ビットが前記スクランブラ化されたデータにおける2ビット分のビット幅が割り当てられる。

    【0039】さらにまた、前記比較手段が、前記第1のカウンタの出力端が一方の入力端に、前記第2のカウンタの出力端が他方の入力端にそれぞれ接続されるとともにその出力端が前記ビット反転回路の入力端に接続される排他的論理和回路を用いて構成することができる。

    【0040】また、前記比較手段は、前記第1のカウンタの出力端がそれぞれの一方の入力端に、前記第2のカウンタの出力端がそれぞれの他方の入力端にそれぞれ共通接続されるAND回路および第1のNOR回路と、前記AND回路の出力端が一方の入力端に、前記第1のN
    OR回路の出力端が他方の入力端にそれぞれ接続されるとともにその出力端が前記ビット反転回路の入力端に接続される第2のNOR回路とから構成されてもよい。

    【0041】本発明の演算処理装置の演算処理方法の特徴は、パラレルデータ形式の送信データをパラレル−シリアル変換した後このシリアルデータ化された送信データがスクランブラでランダム化されて供給されるマルチプレクサと、このマルチプレクサから供給される2ビットシンボルデータが任意のビット数n(n≧4の偶数)
    で区切られたデータ区間であって、2ビットシンボルデータが論理レベルの“10”のときは+(2m+1)
    (m≧1の整数)をカウントし、“11”のときは+
    (2m−1)をカウントし、“01”のときは−(2m
    −1)をカウントし、“00”のときは−(2m+1)
    をカウントする第1のカウンタと、前記データ区間以前の区間内の全てのデータに対して前記2ビットシンボルデータが“10”のときは+(2m+1)をカウントし、“11”のときは+(2m−1)をカウントし、
    “01”のときは−(2m+1)をカウントし、“0
    0”のときは−(2m+1)をカウントする第2のカウンタと、前記第1のカウンタの符号ビットと前記第2のカウンタの符号ビットとを比較する比較手段と、前記比較手段の結果によって前記データ区間のデータの“1”
    と“0”とを反転させる2つのビット反転回路と、前記データ区間のnビット数分だけデータを遅延させるための2つのn/2ビットシフトレジスタと、これらの2つのn/2ビットシフトレジスタ回路から供給される前記遅延されたウエイト値の2ビットを、前記データ区間分のnビット数毎にデータ列中に挿入して2つの前記ビット反転回路にそれぞれ出力する2つのビットスタッフ回路とを用いて、2つの前記n/2ビットシフトレジスタが第1のカウンタでnビットデータ区間分の前記ウエイト値をカウントした後に前記データ区間のデータを送信するために、nビットデータ区間分のビット数を経過してから前記データ区間のデータを送出するステップと、
    受信側でのホワイトナー・デコーディングで使用させるために、2つの前記ビットスタッフ回路が前記データ区間毎に2ビットのデータを挿入するステップと、前記第1のカウンタのカウント結果により、送出前のnビットデータ区間においてデータの前記ウエイト値が+側か−
    側かを示すステップと、前記第2のカウンタのカウント結果により、既に送出済みのデータの前記ウエイト値が+側か−側かを示すステップと、前記第1および前記第2のカウンタが、ともに符号ビットである最上位ビットで送信データの前記ウエイト値が+側か−側かを判断するステップと、2つの前記カウンタの最上位ビットを前記比較手段で判定させ、前記第1および前記第2のカウンタの双方とも前記ウエイト値が+側または−側と判断された場合には、送出済みのデータに対して同じ方向に送信データの前記ウエイト値を片寄らないように、前記第1のカウンタでカウントしたデータ区間のデータを2
    つの前記ビット反転回路でそれぞれ反転させてから送出させるステップと、逆に、前記第1および前記第2のカウンタで、一方の前記ウエイト値が+側でもう一方のウエイト値が−側であると判断された場合には、第1のカウンタでカウントしたデータ区間のデータを2つの前記ビット反転回路で反転せずに送出させるステップとからなる処理アルゴリズムにより、送信データ中の“1
    0”、“11”、“01”、“00”の数を調整し、送信データの前記直流バイアスを抑制することにある。

    【0042】

    【発明の実施の形態】本発明では、ホワイトナー・エンコーダのウエイト演算を2つのカウンタを用いて行なわせる。 第1のカウンタは現在対象としているnビット区間のウエイト演算を、送信データの2ビットシンボルデータが“10”のときはアップカウント(+3)をし、
    “11”のときはアップカウント(+1)をし、“1
    1”のときはダウンカウント(−1)し、“00”のときはダウンカウント(−3)することで行う。第2のカウンタは送出済みのデータに対してウエイト演算を、同様に送信データの2ビットシンボルデータが“10”のときはアップカウント(+3)をし、“11”のときはアップカウント(+1)をし、“11”のときはダウンカウント(−1)し、“00”のときはダウンカウント(−3)することで行う。また、比較回路は、送信データを反転するかどうかの判断を、カウンタの符号ビットである最上位ビットを比較することで行う。

    【0043】まず、本発明の実施の形態を図面を参照しながら詳細に説明する。 図1は本発明の演算処理装置のブロック図であり、図2および図3は動作説明用のタイミングチャートである。 図1を参照すると、本発明のホワイトナー・エンコーディングを行う演算処理装置は、
    送信データをパラレルデータからシリアルデータに変換するパラレル−シリアル変換回路11と、パラレル−シリアル変換回路11から供給される送信データをランダム化するスクランブラ12と、このスクランブラ12から供給されるデータを2ビット毎に上位ビットと下位ビットとに振り分けられ、これら上位ビットデータ列と下位ビットデータ列を出力するマルチプレサ19と、マルチプレサ19から供給されたn/2ビット分のデータ列を順次シフトし出力するn/2ビットシフトレジスタ1
    3aおよび13cと、シフトレジスタ13aおよび13
    cからそれぞれ供給される送信データ中にn/2ビット毎に1ビット挿入するビットスタッフ回路14aおよび14bと、n/2ビットシフトレジスタ13aおよび1
    3bにマルチプレサ19から供給される入力データであって現在対象としているn/2ビット区間の送信データによって+3、+1、−1、−3のアップダウン・カウントを行うカウンタA16と、送出済みの送信データによって+3、+1、−1、−3のアップダウン・カウントを行うカウンタB18と、カウンタA16およびカウンタB18のカウント値の送信データを比較し、反転するかどうかの判断を行う比較回路18と、この比較回路18からの指示に応答して、ビットスタッフ回路14a
    および14bの出力する送信データを1ビット毎に反転させ送信データTX1およびTX2として送出するとともに、カウンタB17へも送信済みのデータとして出力するビット反転回路15aおよび15bとから構成される。

    【0044】それぞれの回路機能についてさらに詳述すると、マルチプレクサ19は、スクランブラ12の出力であるシリアルデータを2ビットシンボルデータとして扱うため、2ビット毎に出力することになる。

    【0045】n/2ビットシフトレジスタ13aおよび13bは、32ビットシフトレジスタとし、32ビット区間毎に、ビットスタッフ回路14aおよび14bによる送信データへの1ビット挿入と、比較回路18での比較を行う。

    【0046】カウンタA16は32ビットごとにリセットされるように設定されているのに対し、カウンタB1
    7は過去に送信したデータによる値を蓄積していくため、1つのフレームの送信が終了するまではリセットされない様に設定されている。

    【0047】さらにカウンタA16は、8ビットのアップダウンカウンタで構成され、送信データ2ビット毎にカウント動作を行う。 2ビットデータが“10”のときは+3だけアップカウントし、“11”のときは+1だけアップカウントし、データが“01”のときは−1だけダウンカウントし、データが“00”のときは−3だけダウンカウントする。 初期値は16進数で80h(2
    進数で10000000b)である。

    【0048】以下、英数字の後のhは16進数を表し、
    bは2進数を表す。 カウンタA16の最上位ビットは符号を表し、最上位ビットが“1”のときは正を示し、最上位ビットが“0”のときは負を示す。

    【0049】同様に、カウンタB17も、8ビットのアップダウンカウンタで構成され、送信データ2ビット毎にカウント動作を行う。 2ビットデータが“10”のときは+3だけアップカウントし、“11”のときは+1
    だけアップカウントし、データが“01”のときは−1
    だけダウンカウントし、データが“00”のときは−3
    だけダウンカウントする。 初期値は16進数で80h
    (2進数で10000000b)である。 カウンタA1
    6の最上位ビットは符号を表し、最上位ビットが“1”
    のときは正を示し、最上位ビットが”0”のときは負を示す。

    【0050】比較回路18は入力データが共に“1”または共に“0”のときは“0”を出力し、入力データの一方が“0”で他方が“1”のときは“1”を出力する。 また、比較回路18は、カウンタA16とカウンタB17の符号ビットである最上位ビットを比較する。 両カウンタの最上位ビットが、共に“0”または”1”のとき、つまり(カウンタA16の符号)*(カウンタB
    17の符号)>0のとき、比較回路18は“0”を出力する。 逆に、両カウンタの最上位ビットが、一方が“0”でもう一方が“1”のとき、つまり(カウンタA
    16の符号)*(カウンタB17の符号)<0のとき、
    比較回路18は“1”を出力する。 比較回路18の出力が“0”のとき、ビット反転回路15で送信データの反転を行う。

    【0051】ビット反転回路15は比較回路18の比較結果の一致出力“0”のときnビット区間の送信データを1ビット毎に反転し、不一致出力“1”のときは送信データの反転は行わない。

    【0052】従来の技術でも前述したように、送信データのDCバイアスを抑制するためには、ビット反転回路15において送信データを反転させて調整するが、データを反転するかどうかは、比較回路18によって、カウンタA16及びカウンタB17の符号ビットである最上位ビットを比較し、両カウンタの符号ビットが等しいときにビット反転回路15を動作させる。

    【0053】次に、上述した構成からなる本発明の実施の形態の動作を図1、図2および図3を併せて参照しながら詳細に説明する。

    【0054】まず理解を容易にするために全体の動作の概要を先に説明すると、パラレルデータ形式の送信データは、パラレル−シリアル変換回路11によって、シリアルデータ形式に変換される。 次に、シリアルデータ形式に変換された送信データはスクランブラ12に入力されると、スクランブラ12によって送信データがランダムデータ化される。

    【0055】ランダムデータ化されたスクランブラ12
    の出力はマルチプレクサ19に出力され、1ビット毎にデータが2つの出力に振り分けられる。 振り分けられたデータは2つのn/2ビットシフトレジスタ13aとn
    /2ビットシフトレジスタ13bにそれぞれ供給される。

    【0056】これら2つのn/2ビットシフトレジスタ13aおよび13bは、nビット間の送信データから演算して、そのnビット間の送信データを反転するかどうかを判断しなくてはならないため、送信データを送信する前にnビット分の送信データの蓄積・遅延を行う。

    【0057】この演算装置にはn/2ビットシフトレジスタが2つ内蔵されるので、nビット分のデータを扱うことになる。 n/2ビットシフトレジスタ13aおよび13bからの出力はそれぞれビットスタッフ回路14a
    および14bに供給され、ビットスタッフ回路14aおよび14bによって、スタッフビットが送信フレーム中のデータフィールドにn/2ビット単位で1ビット挿入される。 つまりnビット区間で考えれば、2ビットのスタッフビットが挿入されることになる。

    【0058】ビットスタッフ回路14aおよび14bの出力は、それぞれビット反転回路15aおよび15bに供給され、比較回路18からの指示に応答して、比較回路18の比較結果の一致出力“0”のときnビット区間の送信データを1ビット毎に反転させ、不一致出力“1”のとき送信データは反転されずに送信される。

    【0059】次に本実施の形態の動作を詳細に説明する。 図2に示すタイミングチャートでは、16進数で6
    Eh、CAh、9Bh、B7h、BFh、DFh、3E
    h、EFh、(図2中のA1部分)、81h、C3h、
    3Bh、63h、2Ah、39h、85h、89h、
    (図2中のB1部分)、A4h、B2h、61h、24
    h、4Bh、CCh、9Ah、58h、(図2中のC1
    部分)というデータを最下位ビット(LSB)から順に送信する場合の例である。 例えば、63h(=0110
    0011)をLSBから送信すると、11000110
    bと送信される。 ただし、図2ではA1部分を一部分しか示してないが、送信データX2に示すA2と同じある。

    【0060】B1区間のデータは、マルチプレクサ19
    によって2ビット単位で出力され、2つの32ビットシフトレジスタ13aおよび13bによってトータルで6
    4ビット分シフトし、送信データとしてはB2区間に送信される。 同様に、C1区間のデータはC2区間に送信されることになる。 64ビット分シフトするのは、ある64ビット間のデータをもとに、後述するウエイトの演算方法にしたがってウエイトを計算し後に、そのデータをビット反転するかどうかを判断してから送信しなければならないためである。

    【0061】カウンタA16は64ビット間のデータのウエイト値をカウントする。 すなわち、マルチプレクサ19の出力する2ビットシンボルデータが、“10”のときは+3をアップカウントをし、“11”のときは+
    1をアップカウントをし、“11”のときは−1をダウンカウントし、“00”のときは−3をダウンカウントする。 カウンタA16は64ビット区間全て“10”または“00”という場合を考えて3*32回カウントするのに必要なビット数として7ビット、さらに符号ビットを1ビット付加して、8ビットカウンタとする。 従って−127〜127までカウントすることが可能である。

    【0062】また、カウンタA16のリセット時の値は80hとし、スタッフビットを送信データ列中に挿入するタイミングでリセットを行う。 例えば、図2のB1区間の最初の部分に示すように、スクランブルデータ81
    hをカウンタA16でカウントすると、スクランブラ1
    2からはLSBファーストで10000001と出力され、マルチプレクサ19の出力は10、00、00、0
    1となり、それぞれのウエイト値は+3、−3、−3、
    −1であるので、カウンタAの値は80h+3=83
    h、83h−3=80h、80h−3=7Dh、7Dh
    −1=7Chと変化する。 ここで、カウンタA16はマルチプレクサ19の出力をカウントしているので、ホワイトナー・エンコーダを通す前のデータに対してカウント動作を行うことになる。

    【0063】一方、カウンタB17はビット反転回路1
    5aおよびbから送信した全てのデータに対するウエイト値をカウントする。 カウントの方法はカウンタA16
    と同様に、マルチプレクサ19の出力する2ビットシンボルデータが、“10”のときは+3をアップカウントをし、“11”のときは+1をアップカウントをし、
    “11”のときは−1をダウンカウントし、“00”のときは−3をダウンカウントする。 カウンタB17も6
    4ビット区間全て“10”または“00”という場合を考えて3*32回カウントするのに必要なビット数として7ビット、さらに符号ビットを1ビット付加して、8
    ビットカウンタとする。

    【0064】従って−127〜127までカウントすることが可能である。 また、カウンタB17のリセット時の値も80hとし、1つの送信フレームの最初のデータに対するウエイト値をカウントするよりも前のタイミングでリセットを行い、1つのフレームが送信完了するまでは再度リセットは行わない。 ここで、カウンタB17
    は、前述したようにビット反転回路15aおよびbから送信した全てのデータに対するウエイト値をカウントしているので、ビット反転が行われた後つまりDCバイアスが抑制された後のデータに対してカウント動作を行うことになる。

    【0065】再び図2を参照すると、カウンタA16によって、B1区間のデータのウエイト値をカウントする。 スタッフビットのタイミングでカウンタA16はリセットされ、カウンタA16の初期値は80hとなる。
    このあとB1区間のデータは100000011100
    0011……であり、マルチプレクサ19の出力は1
    0、00、00、01、11、00、00、11、…
    …、であるので、ウエイト値は+3、−3、−3、−
    1、+1、−3、−3、+1、……、となり、カウンタA16は83h、80h、7Dh、7Ch、7Dh、7
    Ah、77h、78h、……、と変化する。 最終的にタイミング(1)においては、70hという結果が得られる。

    【0066】また、カウンタB17によって、A2区間の送信済みのデータのウエイト値をカウントする。 A2
    区間のデータ送信後のタイミングでカウンタb17はリセットされ、カウンタb17の初期値は80hとなる。
    このあとA2区間のデータは110001100101
    0011……(図示せず)であり、マルチプレクサ19
    出力は11、00、01、10、01、01、00、1
    1……であるので、ウエイト値は+1、−3、−1、+
    3、−1、−1、−3、+1となり、カウンタb17は81h、7Eh、7Dh、7Eh、7Dh、7Ch、7
    9h、7Ah………と変化する。 最終的にタイミング(1)においては、88hという結果が得られる。

    【0067】このタイミング(1)では、カウンタA1
    6の最上位ビットは“0”であり、カウンタB17の最上位ビットは“1”である。 そして、比較回路18のエクスクルーシブORゲートによって、これらの2つの最上位ビットのエクスクルーシブOR論理をとると“1”
    という結果が得られる。 タイミング(1)でエクスクルーシブORゲートの出力が“1”のときは、B1区間のデータを送信するときつまりB2区間のデータは、ビット反転を行わない。 これは、これから送信しようとしているB1区間のウエイト値が−側であり、すでに送信してしまったA2区間のデータウエイト値は+側であるということを示しており、A2区間に続けてB2区間を送信するときに、B1区間のデータはビット反転せずにそのまま送信すれば、ウエイト値が平均化されるわけである。

    【0068】同様に、図3のタイミング(2)では、カウンタA16によってC1区間のデータがカウントされ、76hという結果が得られる。 また、カウンタB1
    7によってA2区間とB2区間のデータがカウントされ、78hという結果が得られる。 ここで、A2区間を送信したときには+側にウエイト値がバイアスされていたのが、B2区間のデータを反転せずに送信することによって、ウエイト値が−側にバイアスされていることがわかる。

    【0069】また、このタイミング(2)では、カウンタA16の出力は01110110であるから最上位ビットは“0”であり、カウンタB17の出力も0111
    1000であるからその最上位ビットも“0”である。
    そして、比較回路18によって、これらの2つの最上位ビットの比較が行われ、いっちするので“0”という結果が得られる。

    【0070】この図2のタイミング(2)で比較回路1
    8の出力が“0”のときは、C1区間のデータを送信するときつまりC2区間のデータは、ビット反転を行う。

    【0071】これは、これから送信しようとしているC
    1区間のデータはウエイト値が−側であり、すでに送信してしまったA2区間+B2区間のデータもウエイト値が−側であるということを示しており、B2区間に続けてC2区間を送信するときに、C1区間のデータはビット反転を行って送信すれば、ウエイト値が平均化され−
    側に片寄ることがなくなるわけである。 実際にC2区間を送り終わった後のカウンタB17の値は8Dhであるので、ウエイト値は+側になっていることが分かる。

    【0072】図3ではC1区間(C2区間)で送信データが終了しているが、更に送信データがある場合には、
    2つのカウンタと比較回路16によって、前述のカウンタ操作とビット反転するかどうかの判断を64ビット毎に繰り返すことになる。

    【0073】送信データがビット反転されている区間は、TX1側とTX2側に各1ビットのスタッフビットがその区間の直前に挿入され、2ビットスタッフ単位では、スタッフビットが”11”となるので、受信側では、スタッフビットを判断して”11”であれば、それに続く32ビットのデータを再度反転して戻すことにより、正しいデータを得ることができる。

    【0074】上述したように、従来のホワイトナー・エンコーダでは、B2区間はデータを反転せずにC2区間でデータの反転していたが、本発明のホワイトナー・エンコーダでも同様に、B2区間はデータを反転せずにC
    2区間でデータを反転するという結果がえられる。

    【0075】従って、送信データ中の“10”、“1
    1”、“01”、“00”の数が調整され、送信データのDCバイアスを抑制することができる。ここで、2ビットシンボルデータの“10”、“11”、“01”、
    “00”という値によって、TX1端子およびTX2端子に接続される無線モデムの変調周波数を変化させることになる。

    【0076】次に、上述した本発明の一実施の形態における比較回路の具体例を含む演算処理装置のブロック図を示した図4を参照すると、比較回路18にはエクスクルーシブORゲートが使用されている。 エクスクルーシブORゲートは周知のように比較する2つのデータが等しければ“0”を、互いに異なるデータであれば“1”
    を出力する。 従って、前述したように、タイミング(1)では、カウンタA16の最上位ビットは“0”であり、カウンタB17の最上位ビットは“1”であるから、比較回路18のエクスクルーシブORゲートによって、これらの2つの最上位ビットのエクスクルーシブO
    R論理をとると“1”という結果が得られる。 このエクスクルーシブORゲートの出力が“1”のときは、B2
    区間のデータは、ビット反転を行わない。

    【0077】同様に、タイミング(2)では、カウンタA16の出力は01110110であるから最上位ビットは“0”であり、カウンタB17の出力も01111
    000であるからその最上位ビットも“0”である。 そして、比較回路18のエクスクルーシブORゲートによって、これらの2つの最上位ビットのエクスクルーシブOR論理をとると“0”という結果が得られる。

    【0078】この図2のタイミング(2)でエクスクルーシブORゲートの出力が“0”のときは、C1区間のデータを送信するときつまりC2区間のデータは、ビット反転を行う。

    【0079】比較回路18の他の具体例を含む演算処理装置のブロック図を示した図5を参照すると、比較回路18は、カウンタA16およびカウンタB17の出力がそれぞれ入力端に供給されるANDゲート181およびNORゲート182と、これらANDゲート181およびNORゲート182の出力が入力端に供給されるとともにその出力端からビット反転回路15aおよび15b
    に比較結果を出力するNORゲート183とから構成される。

    【0080】この比較回路18も、カウンタA16とカウンタB17の2つのカウンタとも最上位ビットが共に”0”または”1”のときは”0”を出力し、2つのカウンタの最上位ビットの一方が”0”でもう一方が”
    1”のときは”1”を出力するので、図4の様に比較回路18にエクスクルーシブORゲートを使用した場合と同等の結果が得られる。

    【0081】上述した演算処理装置の演算処理フローを示した図6を参照すると、2つのn/2ビットシフトレジスタ13aおよび13bが第1のカウンタA16でn
    ビットデータ区間分のウエイト値をカウントした後に、
    データ区間のデータを送信するために、nビットデータ区間分のビット数を経過してからデータ区間のデータを送出するステップS61と、受信側でのホワイトナー・
    デコーディングで使用させるために、2つのビットスタッフ回路14aおよび14bがデータ区間毎に2ビットのデータを挿入するステップS62と、第1のカウンタA16のカウント結果により、送出前のnビットデータ区間においてデータのウエイト値が+側か−側かを示すステップS63と、第2のカウンタB17のカウント結果により、既に送出済みのデータのウエイト値が+側か−側かを示すステップS64と、カウンタA16およびB17が、ともに符号ビットである最上位ビットで送信データのウエイト値が+側か−側かを判断するステップS65と、2つのカウンタA16およびB17の最上位ビットを比較手段で判定させ、カウンタカウンタA16
    およびB17の双方ともウエイト値が+側または−側と判断された場合には、送出済みのデータに対して同じ方向に送信データのウエイト値を片寄らないように、カウンタA16でカウントしたデータ区間のデータを2つのビット反転回路でそれぞれ反転させてから送出させるステップS66と、逆に、前記第1および前記第2のカウンタで、一方の前記ウエイト値が+側でもう一方のウエイト値が−側であると判断された場合には、第1のカウンタでカウントしたデータ区間のデータを2つの前記ビット反転回路で反転せずに送出させるステップS67とからなる処理アルゴリズムにより処理される。

    【0082】上述した本発明の実施の形態を用いることにより、カウンタA16およびカウンタB17は周知の8ビットのアップダウンカウンタで構成され、クロック端子のクロック入力でカウント動作を行う。 アップダウン制御端子入力が1のときにはアップカウントし、0のときにはダウンカウントする。 また、カウント制御端子入力が“1”のときは1をカウントし、“0”のときは3をカウントし、カウント結果は出力端子に得られる機能を有するものとする。 リセット端子入力が“1”のときは、初期値80hにリセットされる。 ウエイト値3を最大32回カウントすることを考慮すると96までカウントできなくてはならないので7ビット必要であり、更に符号ビットを1ビット考慮すると、要求されるカウンタの段数は8ビットであり、約92ゲートである。

    【0083】加算回路Bも周知の回路であり、第1の8
    ビットのデータ入力と第2の8ビットの入力の値を加算して、データ出力端子へ8ビットの加算結果を出力するものである。 その回路規模は約50ゲートである。

    【0084】加算回路Aも周知の回路であり、64ビットのデータ端子からの入力から、2ビットづつ取りだ出して32個のウエイト値を計算し、このウエイト値を全て加算して出力端子へ8ビットで出力する回路である。
    ウエイト値は+3、+1、−1、−3の4種類である。
    加算回路Aの回路規模は約1300ゲートである。

    【0085】回路構成上特に従来例と異なるブロックだけで回路規模を比較することにする。 ここで、本発明を示す図1ではシフトレジスタ、ビットスタッフ回路、ビット反転回路が各2つずつ内蔵されているが、2つの回路ブロックの合計が、図6の回路ブロックと等しいのでここでは比較の対象には含めない。 例えば、シフトレジスタは、図1の場合n/2ビットのシフトレジスタであり、図6の場合nビットのシフトレジスタである、前述した図1の実施の形態では、32ビットシフトレジスタを2つ使用するのに対して、図6の従来例では64ビットシフトレジスタを1つ使用するので回路規模としては同じである。

    【0086】従来の演算処理装置では、加算回路A、加算回路B、レジスタに関して考えると、レジスタは8ビットレジスタが必要であり、1ビットレジスタあたり約6ゲートで構成出来るので、約48ゲートの回路規模と見做してよい。 これらの回路規模の合計は1300+5
    0+48=1398ゲートとなる。 これに対して、本発明の演算処理装置では、カウンタA、カウンタBの回路規模の合計は92+92=184ゲートである。 従って、約1/7以下に回路規模(ゲート数)が小さくなるのが分かる。

    【0087】

    【発明の効果】以上説明したように本発明の演算処理装置及び演算処理方法は、ホワイトナー・エンコーディングを行う演算処理装置を、2つの加算回路、レジスタ、
    符号反転回路、比較回路で構成していた部分を、2つのカウンタとエクスクルーシブORゲートで構成することができるできるということである。 これにより、演算処理装置の回路構成を簡略化するできるようになる。

    【0088】その理由は、送信データを反転するかどうかの判断は、64ビット区間の送信データ中のウエイト値が+側か−側かと、既に送信された送信データ中のウエイト値が+側か−側かによって決まるので、第1の加算回路によって64ビット分の送信データにウエイトを付けて加算した結果を使用しなくても、第1のカウンタによって送信データを2ビット毎にアップダウン・カウントした結果の符号ビットを使用して正負を判断すれば、同等の効果が得られるからである。

    【0089】また、64ビット区間の送信データを第1
    の加算回路で加算した結果を、第2の加算回路で過去に加算した結果に対して更に加算して、レジスタに保存しておかなくても、第2のカウンタで既に送信された送信データを2ビット毎にアップダウン・カウントした結果を使用すれば、同等の効果を得ることができるからである。

    【図面の簡単な説明】

    【図1】本発明の一実施の形態の演算処理装置のブロック図である。

    【図2】本発明の一実施の形態の演算処理装置のタイミングチャートである。

    【図3】図2のタイミングチャートの次の区間のタイミングチャートである。

    【図4】比較回路18の具体例を含む演算処理装置のブロック図である。

    【図5】比較回路18の他の具体例を含む演算処理装置のブロック図である。

    【図6】本発明に演算処理装置の演算処理のフローチャートである。

    【図7】従来のフレームフォーマットを示した図である。

    【図8】従来の演算処理装置の一例のブロック図である。

    【図9】従来の演算処理装置の一例の動作説明用タイミングチャートである。

    【図10】図9のタイミングチャートの次の区間のタイミングチャートである。

    【符号の説明】 11 パラレル−シリアル変換回路 12 スクランブラ 13a,13b シフトレジスタ 14a,14b ビットスタッフ回路 15a,15b ビット反転回路 16 カウンタA 17 カウンタB 18 比較回路 19 マルチプレクサ 31 加算回路A 32 加算回路B 33 比較回路 34 符号反転回路 35 レジスタ 36 ウエイト回路 51 送信フレーム 52 スタッフビット 53 プリアンブル 54 スタートフレームデリミタ(SFD) 55 ヘッダー 56 送信データ 57 CRC

    フロントページの続き (58)調査した分野(Int.Cl. 6 ,DB名) H04L 13/16 H04L 12/28 H04L 12/40,12/44 H04L 29/00 H04L 25/00

    QQ群二维码
    意见反馈