JP2842947B2 - ガロアフィールド多項式乗算/除算回路およびそれを組込むディジタル信号プロセッサ - Google Patents

ガロアフィールド多項式乗算/除算回路およびそれを組込むディジタル信号プロセッサ

Info

Publication number
JP2842947B2
JP2842947B2 JP9510608A JP51060897A JP2842947B2 JP 2842947 B2 JP2842947 B2 JP 2842947B2 JP 9510608 A JP9510608 A JP 9510608A JP 51060897 A JP51060897 A JP 51060897A JP 2842947 B2 JP2842947 B2 JP 2842947B2
Authority
JP
Japan
Prior art keywords
binary signals
signal
circuit
accumulator
binary
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.)
Ceased
Application number
JP9510608A
Other languages
English (en)
Other versions
JPH10503311A (ja
Inventor
フェットバイス,ゲルハルト・ペー
ツーリギアン,ミーラン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ATOMERU CORP
Original Assignee
ATOMERU 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 ATOMERU CORP filed Critical ATOMERU CORP
Publication of JPH10503311A publication Critical patent/JPH10503311A/ja
Application granted granted Critical
Publication of JP2842947B2 publication Critical patent/JP2842947B2/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • 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/65Purpose and implementation aspects
    • H03M13/6569Implementation on processors, e.g. DSPs, or software implementations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • G06F7/726Inversion; Reciprocal calculation; Division of elements of a finite field
    • 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/033Theoretical methods to calculate these checking codes
    • 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/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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)
  • Logic Circuits (AREA)

Description

【発明の詳細な説明】 技術分野 この発明は、ガロアフィールド多項式乗算/除算回路
であって、第1の複数の2進信号を第2の複数の2進信
号によって乗算または除算することができるものに関す
る。この発明はさらに、このような回路を含むディジタ
ル信号プロセッサに関する。
発明の背景 ガロアフィールド多項式乗算/除算回路は技術分野に
おいてよく知られている。このような回路において、第
1の複数の2進信号を第2の複数の2進信号によって乗
算または除算することが所望される。ガロアフィールド
乗算/除算回路は通信におけるCRC(サイクリックリダ
ンダンシチェック)ビット信号およびコンボルーション
エンコーディング信号を計算するための用途などに用い
られる。
典型的な先行技術のガロアフィールド乗算/除算回路
においては、動作を行なうためにシフトレジスタが用い
られる。典型的な先行技術のガロアフィールド乗算回路
においては、動作を行なうために、加算器および乗算器
を備えた複数のシフトレジスタが用いられる。先行技術
のガロアフィールド乗算回路においては、第1の複数の
2進信号の各ビットがシフトレジスタへシフトされ、複
数の第2の2進信号によって乗算され、加算されるとい
うように続く。したがって、乗算動作を行なうために少
なくともN+1個の数のクロックサイクルが必要である
という点で、動作は性質的に「連続的」である。ただし
ここでNは第1の複数の2進信号のビット数である。
同様に、典型的な先行技術のガロアフィールド除算回
路においては、動作を行なうためにシフトレジスタと加
算器と乗算器とが用いられる。動作を行なうために必要
なシフトまたはサイクルの数は、多項式のデータに1を
足したものの数に等しい。ここでもまた、先行技術のガ
ロアフィールド乗算回路と同じように、先行技術のガロ
アフィールド除算回路は性質的に「連続的」である。
先行技術の除算回路の一例についてはたとえば米国特
許第5,341,322号を、さらに先行技術の乗算/除算回路
の一例については米国特許第5,270,962号を参照された
い。
発明の概要 この発明において、乗算/除算回路は第1の複数の2
進信号と第2の複数の2進信号とを受取り、制御信号に
応答して、その乗算または除算を行なう。乗算/除算回
路は、第1および第2の複数の2進信号を受取り、かつ
それらに応答して第3の複数の2進信号を発生するため
の手段を有する。第3の複数の2進信号は前記第1およ
び第2の複数の2進信号の排他的ORであり、かつ最上位
ビット(MSB)を有する。第1のマルチプレクサ手段は
第3の複数の2進信号と第2の複数の2進信号とを受取
り、第1のマルチプレクス信号に応答して第4の複数の
2進信号を発生する。第4の複数の2進信号もまたMSB
を有する。第1のアキュムレータ手段は第4の複数の2
進信号を受取り、かつそれらをストアする。第1のシフ
ト手段は第1のアキュムレータ手段にストアされた第4
の複数の2進信号を受取り、第2の複数の2進信号を発
生し、さらに第2の複数の2進信号を受取手段に与え
る。第2の複数の2進信号は、第4の複数の2進信号を
2で乗算したものを表わす1つの2進桁信号だけシフト
された第4の複数の2進信号である。第1のインバータ
手段は第3の複数の2進信号のMSBを受取り、第1のビ
ット信号を発生する。第2のマルチプレクサ手段は、第
1のビット信号と第4の複数の2進信号のMSBと制御信
号とを受取り、制御信号に応答して第2のビット信号を
発生する。第2のアキュムレータ手段は複数のビット信
号をストアし、かつ最下位ビット(LSB)とMSBとを有す
る。第2のアキュムレータ手段はLSBとしての第2のビ
ット信号を受取り、ストアされた第2のビット信号をMS
B位置に1桁分シフトする。第2のインバータ手段は第
2のアキュムレータ手段にストアされたMSBを受取り、
それに応答して第4のビット信号を発生する。第3のマ
ルチプレクサ手段は第4のビット信号と第3の複数の2
進信号のMSBと制御信号とを受取り、制御信号に応答し
て第5のビット信号を発生する。第5のビット信号は、
第1のマルチプレクス信号として第1のマルチプレクサ
手段に与えられる。乗算を行なうよう制御信号が乗算/
除算回路を制御する場合、乗算動作の結果は第1のアキ
ュムレータ手段にストアされる。除算を行なうよう制御
信号が乗算/除算回路を制御する場合、除算動作の結果
は第1および第2のアキュムレータ手段にストアされ
る。
この発明はまた、乗算のみを行なうことのできる前述
の乗算/除算回路および除算のみを行なうことのできる
前述の乗算/除算回路に関する。さらにこの発明は、前
述の乗算/除算回路を組込むディジタル信号プロセッサ
に関する。
図面の簡単な説明 図1は、メモリと相互作用するこの発明のディジタル
信号プロセッサ(DSP)の概略的なブロックレベル図で
ある。
図2は、この発明の乗算/除算回路の概略的なブロッ
クレベル図である。
図3は、この発明の除算回路の概略的なブロックレベ
ル図である。
図4は、この発明の乗算回路の概略的なブロックレベ
ル図である。
図面の詳細な説明 図1を参照して、この発明のディジタル信号プロセッ
サ(DSP)10のブロックレベル図が示される。この発明
のDSP10はアドレスバス14およびデータバス16を通して
メモリモジュール12と相互作用する。技術分野において
は周知であるように、アドレス信号はアドレスバス14に
沿ってメモリ12のアドレス部分に与えられてそこからデ
ータ信号を取出してそれらをデータバス16に与えさらに
DSP10の中に与えるか、またはDSP10からのデータバス16
上のデータ信号を、アドレスバス14によって選択された
アドレスの中に書込む。
この発明のDSP10は通信動作に特に適する。技術分野
において周知であるように、特に通信においては、コン
ボルーションエンコーディング信号およびサイクリック
リダンダンシチェック(CRC)信号を計算する必要はな
い。
図2を参照して、概略的なブロックレベル図には、こ
の発明の乗算/除算回路20を組込むこの発明のDSP10の
一部分が示されている。技術分野においては周知である
ように、DSP10は命令デコーダ(図示せず)およびメモ
リアドレスレジスタ(図示せず)などといった他の機能
回路を有し得る。この発明の乗算/除算回路20にはDSP1
0の一部分しか含まれていない。
先に述べたように、DSP10はアドレスバス14に与えら
れたアドレス場所のメモリ12から、データバス16を介し
てデータ信号を受取る。データ信号をDSP10に与えるデ
ータバス16はMビットのバス幅を有する。DSP10は第1
のアキュムレータ22を含む。第1のアキュムレータ22は
Nビットをストアすることができる。データバス16から
のMビットおよび第1のアキュムレータ22からのNビッ
トは第1のマルチプレクサ24に与えられる。Mビットま
たはNビットのいずれかを含む第1のマルチプレクサ24
の出力は第1のシフタ26に与えられる。好ましい実施例
において、データバス16からのMビットは16に等しい。
第1のアキュムレータ22からのNビットは40に等しい。
第1のシフタ26はさらに40ビットをストアすることがで
きる。したがって、データバス16に沿ってメモリ12から
データが与えられる場合、第1のシフタ26を完全に満た
すためには3つのメモリフェッチ動作が必要である。第
1のアキュムレータ22からデータが与えられる場合は、
第1のシフタ26は、第1のアキュムレータ22からのデー
タすべてを単一ロードサイクルにおいて保持することが
できる。除算/除算回路20は第1のシフタ26からデータ
信号を受取る。したがって、第1のシフタ26は始めは、
乗算/除算回路20による動作に必要な第1の複数の2進
信号および第2の複数の2進信号の両方をストアするこ
とができる。
好ましい実施例における乗算/除算回路20は演算論理
ユニット(ALU)30を含む。しかしながら、見られるよ
うに、乗算/除算回路20の動作には、ALU30の機能的能
力のうち一部分しか用いられない。乗算/除算回路20が
DSP10に用いられるため、ALUもまた用いられる。しかし
ながら、見られるように乗算/除算回路20はDSPに用い
られる必要がないため、乗算/除算回路20の動作に用い
られる、ALU30の機能のみを設ける必要がある。この機
能は排他的OR回路32を含む。排他的OR回路32は第1のシ
フタ26からの第1の複数の2進信号27および(その機能
および動作を後により詳細に説明することとなる)第2
のシフタ34からの第2の複数の2進信号を受取る。排他
的OR回路32の出力は第3の複数の2進信号36である。第
3の複数の2進信号36は、第1の複数の2進信号27およ
び第2の複数の2進信号33の、対応する位置にある2進
信号の排他的OR結果である。もし第1のシフタ26からの
第1の複数の2進信号27が下記のビットストリームを含
み、 abcde かつ第2のシフタ34からの第2の複数の2進信号33が
下記のビットストリームを含むならば、 tuvwx 第3の複数の2進信号36である、排他的OR回路32の出
力は下記のものを含むこととなる。
第3の複数の2進信号36は単一ビットを含み、最上位
ビット(MSB)を有し得る。第2の複数の2進信号33お
よび第3の複数の2進信号36は第2のマルチプレクサ40
に与えられる。第2のマルチプレクサ40は第1のマルチ
プレクサ信号42に応答して、その出力として第4の複数
の2進信号44を与える。第4の複数の2進信号44は第2
のアキュムレータ46に与えられてストアされる。さら
に、第4の複数の2進信号44もまた最上位ビット(MS
B)を有する。
第5の複数の2進信号48は第2のアキュムレータ46の
出力を含む。第5の複数の2進信号48は第2のシフタ34
に与えられる。第2のシフタ34は第5の複数の2進信号
48を受取って、それを、1つの2進桁分左に、または第
5の複数の2進信号48を2で乗算したものを表わす最上
位位置にシフトする。第2のシフタ34の出力は第2の複
数の信号33であり、これは、先に述べたように排他的OR
回路32に与えられる。
第3の複数の2進信号のMSBは第1のインバータ50に
よって反転され、この第1のインバータ50はその出力と
して第1のビット信号52を発生する。第4の複数の2進
信号44のMSBおよび第1のビット信号52は第3のマルチ
プレクサ54に与えられる。第3のマルチプレクサ54は乗
算/除算制御信号56であって、乗算の機能または除算の
機能のうちいずれかを行なうよう乗算/除算回路20にコ
マンドするものによって制御される。それに応答して、
第3のマルチプレクサ54の出力は第2のビット信号58で
ある。第2のビット信号58は第3のアキュムレータ60の
最下位ビット(LSB)位置に与えられる。LSBまたは最下
位ビット位置は一般的に最右ビット位置である。第3の
アキュムレータ60はさらに、2進信号のNビットをスト
アすることができる。第3のアキュムレータ60のNビッ
トはN,N−1,N−2…1を含む。第3のアキュムレータ60
はその出力として、N−1,N−2…1の位置にストアさ
れた2進信号をとり、それらの2進信号を、N,N−1,N−
2…2の位置において第3のアキュムレータ60の中にロ
ードして戻す。この、第3のアキュムレータ60の出力を
それ自身へロードして戻すことは、第2のビット信号58
をLSB位置にロードして戻す度に、その後に起こる。し
たがって、この動作により、第2のビット信号58を第3
のアキュムレータ60のLSB位置にロードして、その後第
3のアキュムレータ60からのN−1ビットをそれ自身上
にロードして戻すことにより、LSB位置にロードされた
第2のビット信号58がMSB位置の方に1つの2進位置分
だけシフトされる。
第3のアキュムレータ60のMSB信号は第3のビット信
号62として第2のインバータ64に与えられ、このインバ
ータ64はその出力として第4のビット信号66を発生す
る。第4のビット信号66および第3の複数の2進信号36
のMSBは第4のマルチプレクサ68に与えられる。第4の
マルチプレクサ68は、第3のマルチプレクサ54を制御す
るものと同じ乗算/除算制御信号56によって制御され
る。第4のマルチプレクサ68の出力は第1のマルチプレ
クス信号42であり、これは、第2のマルチプレクサ40を
制御するのに用いられる 乗算/除算回路20を制御して乗算モードまたは除算動
作のいずれかで動作する際の乗算/除算制御信号56の機
能は、図3および図4を参照して最もよく理解できる。
図3は、専用除算回路120を示す。機能的には、除算回
路120は、乗算/除算制御信号56が除算動作モードに設
定されるときには乗算/除算回路20と同じように動作す
る。
図2において説明されかつ示された乗算/除算回路20
と同様に、図3に示される除算回路120はDSP10の一部分
として用いることができる。この点に関連して、DSP10
は、メモリ12または第1のアキュムレータ22のいずれか
から与えられ、かつ第1のマルチプレクサ24を通して第
1のシフタ26の中にシフトされた第1の複数の2進信号
および第2の複数の2進信号を受取ることとなる。第1
のシフタ26からの第1の複数の2進信号27は、排他的OR
回路32を含むALU30に与えられる。排他的OR回路32はそ
の入力として第2のシフタ34からの第2の複数の2進信
号33を受取る。排他的OR回路32の出力は第3の複数の2
進信号36である。
第3の複数の2進信号36はMSB信号を有する。第2の
複数の2進信号33および第3の複数の2進信号36は第2
のマルチプレクサ40に与えられ、この第2のマルチプレ
クサ40は第3の複数の2進信号36のMSB2進信号によって
制御される。第2のマルチプレクサ40の出力は第4の複
数の2進信号44であり、この第4の複数の2進信号44は
第2のアキュムレータ46に与えられてストアされる。第
5の複数の2進信号は第2のアキュムレータ46の出力か
らのものであり、かつ第2のシフタ34に与えられる。第
2のシフタ34は第5の複数の2進信号48を受取り、かつ
それを1つの2進位置分だけ左に、または最上位位置に
シフトし、それにより第5の2進信号を2で乗算する。
第2のシフタ34の結果は、第2の複数の2進信号33であ
り、この第2の複数の2進信号33はALU30の排他的OR回
路32に与えられる。
第3の複数の2進信号36のMSB2進信号は第1のインバ
ータ50に与えられ、この第1のインバータ50はその出力
として第1のビット信号52を発生する。第1のビット信
号52は第3のアキュムレータ60の最下位ビット位置に与
えられる。第3のアキュムレータ60からの、位置N−1,
N−2…1にストアされた2進信号は、N,N−1…2の位
置において第3のアキュムレータ60に戻され、それによ
り第3のアキュムレータ60の最下位ビット位置にストア
された第2のビット信号を1だけMSB位置にシフトす
る。
除算動作の結果は、第3のアキュムレータ60にストア
された商および第2のアキュムレータ46にストアされた
剰余である。
同様に、除算/除算回路20に乗算動作を行なわせるよ
う乗算/除算制御信号56が設定される場合、結果として
生じる専用乗算回路が図4に示される。専用乗算回路22
0はスタンドアロンモードにおいて用いられるか、また
はDSP10の一部として用いることができる。乗算回路220
は、乗算回路220がDSP10の一部分として用いられる場合
にはALU30を含む。ALU30は、第1のシフタ26からの第1
の複数の2進信号27および第2のシフタ34からの第2の
複数の2進信号33を受取る。ALU30は排他的OR回路32を
含み、この排他的OR回路32は第1の複数の2進信号27お
よび第2の複数の2進信号33を受取り、かつその出力と
して第3の複数の2進信号36を発生し、この第3の複数
の2進信号36は第1の複数の2進信号27および第2の複
数の2進信号33における、対応するビット信号の排他的
ORである。第2の複数の2進信号33および第3の複数の
2進信号36は第2のマルチプレクサ40に与えられる。第
2のマルチプレクサ40は第1のマルチプレクス信号42に
よって制御され、かつその出力として第4の複数の2進
信号44を発生する。第4の複数の2進信号44は、それと
関連したMSB2進信号を有する。
第4の複数の2進信号44は第2のアキュムレータ46に
与えられてストアされる。第5の複数の2進信号48は第
2のアキュムレータ46の出力である。第5の複数の2進
信号48は第2のシフタ34に与えられ、この第2のシフタ
34は第5の複数の2進信号48を1つの2進ビット位置だ
けMSB位置にシフトし、それにより2の乗算を行なう。
第2のシフタ34の出力は第2の複数の2進信号33であ
り、この第2の複数の2進信号33はALU30に与えられ
る。
第4の複数の2進信号44のMSB2進信号は、第3のアキ
ュムレータ60の最下位ビット位置に与えられる。第3の
アキュムレータ60の位置N−1,N−2…1からの、N−
1の2進信号は第3のアキュムレータ60に戻されて、第
3のアキュムレータ60の2進位置N,N−1…2にストア
される。これにより、最下位ビット位置にストアされた
信号が1だけ左に、またはMSB位置にシフトされる。第
3のアキュムレータ60のMSB2進信号は、第2のインバー
タ64に与えられ、この第2のインバータ64はその出力と
して第1のマルチプレクス信号42を発生し、この第1の
マルチプレクス信号42は第2のマルチプレクサ40を制御
するために用いられる。
乗算動作の結果は、第3のアキュムレータ60にストア
される。
この発明の動作の理論は以下のとおりである。図2に
示される乗算/除算回路20が乗算モードで動作する場合
には、乗算/除算制御信号56が第3のマルチプレクサ54
および第4のマルチプレクサ68に送られて、その信号の
流れを制御して、図4に示される機能または回路が得ら
れるようにする。第1の多項式2進信号がメモリ12か、
または第1のアキュムレータ22かのいずれかから取出さ
れ、排他的OR回路32を通して与えられ、第2のアキュム
レータ46にストアされる。次に、第2のアキュムレータ
46からの第1の多項式2進信号が第2のシフタ34によっ
て1ビット分シフトされ、第2の複数の2進信号33とし
て排他的OR回路32に与えられる。第2の多項式2進信号
がメモリ12または第1のアキュムレータ22からさらに取
出され、第1のシフタ26を通して与えられて第1の複数
の2進信号27として排他的OR回路32に与えられる。第1
の複数の2進信号27および第2の複数の2進信号33の排
他的ORの動作の結果は第3の複数の2進信号36であり、
この第3の複数の2進信号36のMSBビットは第3のアキ
ュムレータ60のLSB位置にロードされる。第3の複数の
2進信号36のMSB信号の各々が排他的OR回路32によって
発生すると、第3のアキュムレータ60のLSB位置に、新
しいMSB信号の各々が与えられる。N+1動作の後、第
3のアキュムレータ60にストアされた結果は、以下の理
論的根拠に従って、第1の複数の2進信号27および第2
の複数の2進信号33を乗算したものである。
多項式の乗算 多項式の乗算は一般的な乗算とほぼ同じであるが、係
数の加算が排他的OR動作によって行なわれるという点で
異なる。
この例#2において、実数の乗算とは異なり、2つの
「X」項または2つの「1」項は除去される。
乗算モードで動作しているときの乗算/除算回路20
は、第2の複数の2進信号33によってコンボルーション
エンコードされた第1の複数の2進信号27のコンボルー
ションエンコーディング動作を行なうことが所望される
ときには、通信分野における特定的な用途に用いられ
る。
除算モードにおいて乗算/除算回路20を動作するのが
所望されるときには、乗算/除算制御信号56が第3のマ
ルチプレクサ54および第4のマルチプレクサ68に与えら
れ、それにより、結果として生じたハードウェア回路
が、図3に示される実施例に実質的に従って機能するよ
うにする。この実施例において、第2の複数の2進信号
または除数がメモリ12またはアキュムレータ22から取出
されて、第2のアキュムレータ46にストアされる。第2
の複数の2進信号は第2のシフタ34に与えられて第2の
複数の2進信号33を発生する。第1の複数の2進信号も
またメモリ12またはアキュムレータ22から取出されて、
除数としての第1の複数の2進信号27として、排他的OR
回路32に与えられる。第1の複数の2進信号27によって
除算された第2の複数の2進信号33の動作の結果は、商
として第3のアキュムレータ60にストアされた複数の2
進信号であり、剰余は第2のアキュムレータ46にストア
されている。動作の原理は以下のとおりである。
多項式の除算 多項式の除算は一般的な除算とほぼ同じであるが、係
数の加算が排他的OR動作によって行なわれるという点で
異なる。
乗算/除算回路20がテレコミュニケーションの用途に
用いられる場合には、除算回路220は、COC信号は第2の
アキュムレータ46にストアされる状態で第1の複数の2
進信号27によってチェックされ第2の複数の2進信号33
のCRCを計算するに際して特定的な用途を見い出す。こ
の場合、第3のアキュムレータ60にストアされた商の結
果は用いられない。
以上のことからわかるように、乗算/除算回路は小型
であり、DSPにおいてALUとともに用いられる場合には、
テレコミュニケーション分野において特定的な用途を有
する。
フロントページの続き (56)参考文献 特開 昭55−66038(JP,A) 特開 昭60−223333(JP,A) 特開 昭63−229531(JP,A) 特開 昭62−122333(JP,A) 特開 昭62−159922(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 11/10 G06F 7/60 H03M 13/00

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】第1の複数の2進信号および第2の複数の
    2進信号を受取り、かつ制御信号に応答してその乗算ま
    たは除算を行なうための乗算/除算回路であって、前記
    装置は、 前記第1および第2の複数の2進信号を受取り、かつそ
    れに応答して第3の複数の2進信号を発生するための手
    段を含み、前記第3の複数の2進信号は前記第1および
    第2の複数の2進信号の排他的ORであり、前記第3の複
    数の2進信号は最上位ビット(MSB)を有し、さらに、 前記第3の複数の2進信号および前記第2の複数の2進
    信号を受取り、かつ第1のマルチプレクス信号に応答し
    て第4の複数の2進信号を発生するための第1のマルチ
    プレクサ手段を含み、前記第4の複数の2進信号はMSB
    を有し、さらに、 前記第4の複数の2進信号を受取り、かつストアするた
    めの第1のアキュムレータ手段と、 前記第1のアキュムレータ手段にストアされた前記第4
    の複数の2進信号を受取り、前記第2の複数の2進信号
    を発生し、かつ前記受取手段に前記第2の複数の2進信
    号を与えるための第1のシフト手段とを含み、前記第2
    の複数の2進信号は、前記第4の複数の2進信号を2で
    乗算したものを表わす1つの2進数字信号によってシフ
    トされた前記第4の複数の2進信号であり、さらに、 前記第3の複数の2進信号の前記MSBを受取り、かつ第
    1のビット信号を発生するための第1のインバータ手段
    と、 前記第1のビット信号と前記第4の複数の2進信号の前
    記MSBと前記制御信号とを受取り、かつ前記制御信号に
    応答して第2のビット信号を発生するための第2のマル
    チプレクサ手段と、 複数のビット信号をストアし、最下位ビット(LSB)とM
    SBとを有し、かつ前記LSBとしての前記第2のビット信
    号を受取って前記ストアされた第2のビット信号を1桁
    分前記MSBにシフトするための第2のアキュムレータ手
    段と、 前記第2のアキュムレータ手段にストアされた前記MSB
    を受取り、かつそれに応答して第4のビット信号を発生
    するための第2のインバータ手段と、 前記第4のビット信号と前記第3の複数の2進信号の前
    記MSBと前記制御信号とを受取り、かつ前記制御信号に
    応答して第5のビット信号を発生するための第3のマル
    チプレクサ手段と、 前記第1のマルチプレクス信号として前記第1のマルチ
    プレクサ手段に前記第5のビット信号を与えるための手
    段とを含み、 前記乗算動作の結果が前記第1のアキュムレータ手段に
    ストアされ、かつ前記除算動作の結果が前記第1および
    第2のアキュムレータ手段にストアされる、乗算/除算
    回路。
  2. 【請求項2】前記回路が、除算動作を行なわせる前記制
    御信号に応答してガロアフィールド除算動作を行なう、
    請求項1に記載の回路。
  3. 【請求項3】前記除算回路の商の結果が前記第2のアキ
    ュムレータ手段にストアされ、かつ前記除算回路の剰余
    の結果が、前記第3のアキュムレータ手段にストアされ
    る、請求項2に記載の回路。
  4. 【請求項4】前記回路がCRC計算を行ない、前記CRC計算
    の結果が前記第1のアキュムレータ手段にストアされ
    る、請求項2に記載の回路。
  5. 【請求項5】前記回路が、乗算動作を行なわせる前記制
    御信号に応答してガロアフィールド乗算を行なう、請求
    項1に記載の回路。
  6. 【請求項6】前記回路が、前記第1のアキュムレータ手
    段にストアされた前記エンコーディング動作の結果によ
    ってコンボルーションエンコーディング動作を行なう、
    請求項5に記載の回路。
JP9510608A 1995-08-29 1996-08-27 ガロアフィールド多項式乗算/除算回路およびそれを組込むディジタル信号プロセッサ Ceased JP2842947B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/521,112 1995-08-29
US521,112 1995-08-29
US08/521,112 US5602767A (en) 1995-08-29 1995-08-29 Galois field polynomial multiply/divide circuit and a digital signal processor incorporating same

Publications (2)

Publication Number Publication Date
JPH10503311A JPH10503311A (ja) 1998-03-24
JP2842947B2 true JP2842947B2 (ja) 1999-01-06

Family

ID=24075410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9510608A Ceased JP2842947B2 (ja) 1995-08-29 1996-08-27 ガロアフィールド多項式乗算/除算回路およびそれを組込むディジタル信号プロセッサ

Country Status (8)

Country Link
US (1) US5602767A (ja)
EP (1) EP0788629B1 (ja)
JP (1) JP2842947B2 (ja)
KR (1) KR100431576B1 (ja)
AU (1) AU6908496A (ja)
DE (1) DE69625035T2 (ja)
TW (1) TW312774B (ja)
WO (1) WO1997008613A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2724741B1 (fr) * 1994-09-21 1996-12-20 Sgs Thomson Microelectronics Circuit electronique de calcul modulaire dans un corps fini
US6038581A (en) * 1997-01-29 2000-03-14 Nippon Telegraph And Telephone Corporation Scheme for arithmetic operations in finite field and group operations over elliptic curves realizing improved computational speed
JP4484002B2 (ja) * 1999-10-04 2010-06-16 ネッツエスアイ東洋株式会社 演算プロセッサ
US6760742B1 (en) * 2000-02-18 2004-07-06 Texas Instruments Incorporated Multi-dimensional galois field multiplier
FR2853424B1 (fr) * 2003-04-04 2005-10-21 Atmel Corp Architecture de multiplicateurs polynomial et naturel combines
US7519644B2 (en) * 2004-05-27 2009-04-14 King Fahd University Of Petroleum And Minerals Finite field serial-serial multiplication/reduction structure and method
GB2458665B (en) * 2008-03-26 2012-03-07 Advanced Risc Mach Ltd Polynomial data processing operation
KR101770122B1 (ko) 2010-12-30 2017-08-23 삼성전자주식회사 Simd 프로세서를 이용하는 갈로아 필드 이진 다항식 제산 장치 및 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1588511A (ja) * 1968-07-05 1970-04-17
JPS58219648A (ja) * 1982-06-15 1983-12-21 Toshiba Corp ガロア体における除算装置
FR2604270B1 (fr) * 1986-09-22 1991-10-18 Jutand Francis Additionneur binaire comportant un operande fixe, et multiplieur binaire parallele-serie comprenant un tel additionneur
EP0281303A3 (en) * 1987-03-04 1990-08-29 Cylink Corporation Modulo arithmetic processor chip
EP0309348B1 (fr) * 1987-09-23 1993-04-21 France Telecom Dispositif d'addition et de multiplication binaire
US4939687A (en) * 1988-11-01 1990-07-03 General Electric Company Serial-parallel multipliers using serial as well as parallel addition of partial products
US4970676A (en) * 1989-04-04 1990-11-13 Rca Licensing Corporation Digital word-serial multiplier circuitry
JPH04211547A (ja) * 1990-03-20 1992-08-03 Fujitsu Ltd 同期回路
US5341322A (en) * 1992-05-11 1994-08-23 Teknekron Communications Systems, Inc. Bit level pipeline divide circuit and method therefor
US5270962A (en) * 1992-05-11 1993-12-14 Teknekron Communications Systems, Inc. Multiply and divide circuit
KR950015182B1 (ko) * 1993-11-20 1995-12-23 엘지전자주식회사 갈로아 필드 곱셈회로

Also Published As

Publication number Publication date
AU6908496A (en) 1997-03-19
JPH10503311A (ja) 1998-03-24
EP0788629A4 (en) 1999-11-17
DE69625035D1 (de) 2003-01-09
WO1997008613A1 (en) 1997-03-06
KR970707487A (ko) 1997-12-01
TW312774B (ja) 1997-08-11
US5602767A (en) 1997-02-11
DE69625035T2 (de) 2003-07-24
KR100431576B1 (ko) 2004-08-25
EP0788629B1 (en) 2002-11-27
EP0788629A1 (en) 1997-08-13

Similar Documents

Publication Publication Date Title
US6049815A (en) Method and apparatus for finite field multiplication
JP3479438B2 (ja) 乗算回路
US5764554A (en) Method for the implementation of modular reduction according to the Montgomery method
US6209017B1 (en) High speed digital signal processor
JP4955182B2 (ja) 整数の計算フィールド範囲の拡張
JP3256504B2 (ja) ソフトシンボル確信レベルの生成方法
JPH0680491B2 (ja) 有限体の演算回路
JP2842947B2 (ja) ガロアフィールド多項式乗算/除算回路およびそれを組込むディジタル信号プロセッサ
US7627114B2 (en) Efficient modular reduction and modular multiplication
JP2000172520A (ja) ガロア体演算プロセッサ
US20010054053A1 (en) Method and apparatus for finite field multiplication
JPH082014B2 (ja) 多段デジタル・フィルタ
JPH0850578A (ja) 算術論理演算装置及び制御方法
JP2597775B2 (ja) 除算方法および除算装置
US7296049B2 (en) Fast multiplication circuits
JP3537378B2 (ja) 加算器および集積回路
JP2000207387A (ja) 演算装置及び暗号処理装置
JP3913921B2 (ja) 有限フィールドでの任意要素の逆数具現回路
CN113485751A (zh) 执行伽罗瓦域乘法的方法、运算单元和电子装置
JP3252954B2 (ja) 乗算方法および乗算回路
WO2000067125A1 (fr) Processeur
JP3210420B2 (ja) 整数上の乗算回路
WO2001075635A2 (en) Dsp execution unit for efficient alternate modes of operation
JP3413940B2 (ja) 演算回路
JP2864598B2 (ja) ディジタル演算回路

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060627

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060926

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070911

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20071210

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080121

A313 Final decision of rejection without a dissenting response from the applicant

Free format text: JAPANESE INTERMEDIATE CODE: A313

Effective date: 20080508

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080624