JP2002057586A - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JP2002057586A
JP2002057586A JP2000243774A JP2000243774A JP2002057586A JP 2002057586 A JP2002057586 A JP 2002057586A JP 2000243774 A JP2000243774 A JP 2000243774A JP 2000243774 A JP2000243774 A JP 2000243774A JP 2002057586 A JP2002057586 A JP 2002057586A
Authority
JP
Japan
Prior art keywords
equation
bits
arithmetic processing
symbols
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.)
Withdrawn
Application number
JP2000243774A
Other languages
English (en)
Inventor
Takayuki Sugawara
孝幸 菅原
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.)
Alps Alpine Co Ltd
Original Assignee
Alps Electric Co Ltd
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 Alps Electric Co Ltd filed Critical Alps Electric Co Ltd
Priority to JP2000243774A priority Critical patent/JP2002057586A/ja
Priority to CN01123720A priority patent/CN1338677A/zh
Priority to US09/924,707 priority patent/US20020042803A1/en
Publication of JP2002057586A publication Critical patent/JP2002057586A/ja
Withdrawn 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
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

(57)【要約】 【課題】 記録媒体にデータをエンコードしまたデコー
ドする場合のシンボルの演算は、ガロア体の原理多項式
の元であるαをべき乗算しなくてはならないため、16
ビットや32ビットのアクセス幅の場合、参照すべきテ
ーブルの容量が大きくなりすぎる。 【解決手段】 前記αにおいて、αiの演算を行うた
め、iビットのシフト演算部と2iの数の参照テーブル
を設けた。これにより、小容量のメモリで参照テーブル
を実現でき、高速演算が可能となる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ガロア体上の元を
高速に乗算できる演算処理装置に係り、特にデータの消
失訂正を汎用の計算機を行うような場合に適した演算処
理装置に関する。
【0002】
【従来の技術】記録媒体へのデータの記録および再生の
際などに行われるエラー訂正処理では、検査シンボルE
0,E1,E2,…が付加コードとして記録媒体にエンコ
ードされ、再生時にはデータ(ユーザシンボル)に前記
検査シンボルE0,E1,E2,…の排他的論理和をとっ
たシンボルS0,S1,S2,…が求められる。そしてこ
のシンボルを演算することにより、エラーの大きさが算
出される。
【0003】前記シンボルE0とS0は、単純な排他的論
理和により計算が可能であるが、E 1,S1以降では、α
のべき乗算の計算を行う必要がある。ここで、ガロア体
上の原始多項式G(x)が0となるときの元がαであ
る。
【0004】記録再生装置などでは、ガロア体の専用演
算部を持てないために、ルックアップテーブルを用いて
前記検査シンボルEやデコード時のシンボルSを求めて
いる。
【0005】
【発明が解決しようとする課題】従来は、前記ルックア
ップテーブルとして8ビット(256)×8ビット(2
56)=64kバイトのテーブルを用いている。よって
8ビットずつのデータに対しては、検査シンボルEやデ
コード時のシンボルSを求めることが可能である。しか
し、現在では計算機のアクセス幅が16ビットや32ビ
ット単位となっているため、16ビット単位や32ビッ
ト単位でシンボルの演算を行うことが好ましい。
【0006】しかし、16ビット単位の演算では、16
ビット(64kバイト)×16ビット(64kバイト)
=4Gバイトとなり、前記のようなルックアップテーブ
ルを構築することは実質的に不可能である。
【0007】またべき乗表現の変換テーブルを使用する
ことも考えられるが、この場合も16ビット単位で数百
kバイトオーダのテーブルが必要になる。
【0008】本発明は上記従来の課題を解決するもので
あり、ユーザシンボルが何ビットであっても、ガロア体
の元αを用いたべき乗計算を高速に行え、例えば消失訂
正を高速に実現できるようにした演算処理装置を提供す
ることを目的としている。
【0009】
【課題を解決するための手段】本発明は、前記数1で表
されるガロア体上の原始多項式G(x)のG(x)=0
の元をαとしたときに、αiを乗算する演算処理装置で
あって、乗算前の元をiビットシフトするシフト演算部
と、αの乗数をiとしたときに2i個の要素のルックア
ップテーブルを参照する参照部とを有することを特徴と
するものである。
【0010】また本発明は、前記数1で表されるガロア
体上の原始多項式G(x)のG(x)=0の元をαとし
たときに、前記数2で示されるガロア体上の元Uを基に
U・αiを演算する演算処理装置であって、前記Uの元
をiビットシフトするシフト演算部と、Uの最下位のi
ビットに応じて、前記ルックアップテーブル参照結果と
の排他的論理和をとることを特徴するものである。
【0011】また、データ(ユーザシンボル)をD1
2,…,Dkとしたときに前記数3で示されるエラー検
査シンボルE0,E1,E2,…,En-k-1が演算される。
【0012】および/または、データ(ユーザシンボ
ル)をデコードしたときに、以下の数4の演算を行って
シンボルS0,S1,S2,…,Sn-k-1を得ることができ
る。
【0013】また、前記シンボルS0,S1,S2,…,
n-k-1を用いてエラーの大きさを求める際、次の逆元
参照テーブルを設けて、これを参照して前記エラーの大
きさを求めることが可能である。
【0014】a)α1、α2、…、αk、 b)1+α1、1+α2、…、1+αk
【0015】
【発明の実施の形態】本発明は、計算機のアクセス幅
(例えば16ビットや32ビットなど)に一致する次元
のガロア体上の原始多項式G(x)=0の元をαとした
ときに、高速なαiの乗算を行えるようにするものであ
る。本発明の演算処理装置では、計算機のアクセス幅が
大きくても高速な乗算が可能であり、従来のように8ビ
ット単位でしかエラー訂正ができなかったという問題を
解消することができる。
【0016】以下の表1は、磁気ディスクなどに記録さ
れるデータの1ブロック単位のフォーマットを示してい
る。
【0017】
【表1】
【0018】上記表1の縦方向はPacket Noであり、0
〜63までが、ユーザブロックであり、ここにはデータ
(ユーザシンボル)が含まれる。Packet Noの64と6
5がエラー訂正のための検査シンボルE0とE1が含まれ
る。この検査シンボルE0とE1がエラー訂正のためのコ
ードである。
【0019】Packet Noの0から63までのデータは3
2ビット(4バイト)のDouble Word単位で、Packet
Noの0から63にかけて演算が施され、各Double Word
単位で検査シンボルE0が演算されて、Packet No64
内に記録される。また各Double Word単位で検査シンボ
ルE1が演算されて、Packet No65内に記録される。
【0020】記録媒体に表1で示すフォーマットでデー
タを記録する際に、各Double Word単位で検査シンボル
0が演算される。この演算の一般式を以下の数5に示
す。以下の数5において、D1,D2,D3,…,Dkは、
各Double Word単位でのPacket Noの0から63までの
例えばそれぞれ32ビットのユーザシンボルである。な
お表1の場合、前記シンボル数kは63である。
【0021】E0,E1,E2,…,En-k-1は検査シンボ
ルであり、検査シンボル数はn−kである。なお、表1
は検査シンボル数が2の場合を示している。
【0022】
【数5】
【0023】次に、記録媒体からデータをデコードする
ときには、以下の数6の演算が行われる。この演算によ
るシンボルS0,S1,S2,…,Sn-k-1により後に示す
ように、データのエラーの大きさが求められる。
【0024】
【数6】
【0025】エンコードとデコード時での前記数5と数
6は、シンボル数マイナス1までのαi乗算器があれば
演算可能である。なおiは0,1,2,3,…,kであ
る。なお、前記数1以下の各式における「+」は排他的
論理和(ExOR)である。
【0026】まず、前記数5と数6における検査シンボ
ルE0とS0は排他的論理和により単純に計算可能である
が、E1とS1以降の計算は、べき乗算が必要である。図
1はこの計算を行う演算回路の一例を示す。図1に示す
ように、レジスタ内にD1,D2,D3,…,Dkを格納し
ておき、それぞれにα,α2,…,αn-k-1をべき乗算し
ていくことにより、E1,E2,…,En-k-1およびS1
2,…,Sn-k-1の演算が可能である。
【0027】そこでこのべき乗算を高速化する本発明の
計算方法および演算処理装置について説明する。
【0028】ガロア体GF(2)の原始多項式を以下の
数7とする。
【0029】
【数7】
【0030】この演算処理装置の原理を簡単に説明でき
るように、ここではガロア体の原始多項式を以下の数8
を例として説明する。
【0031】
【数8】
【0032】また、数4と数5において、ユーザシンボ
ルD1,D2,D3,…,Dkに対応するシンボルを8ビッ
トのu7,u6,u5,u4,u3,u2,u1,u0とする
と、U(u7,u6,u5,u4,u3,u2,u1,u0
は、以下の数9となる。
【0033】
【数9】
【0034】またα・Uは以下の数10のようになる。
【0035】
【数10】
【0036】上記数10に示されるα・Uは、数9のU
の元においてu7,u6,u5,u4,u3,u2,u1,u0
を1ビットシフトさせて、以下の数11の通りとし、こ
れに数8の原理多項式から得られた数12を加算(排他
的論理和)したものに等しい。
【0037】
【数11】
【0038】
【数12】
【0039】よってUからα・Uへの演算では、Uの最
下位ビットu7が「1」の場合と「0」の場合におい
て、2通りのルックアップテーブル(参照部,表2)
を、シフト演算部と共に設けることで、前記演算を高速
に行うことができる。
【0040】
【表2】
【0041】次に、α2・Uは以下の数13の通りであ
る。
【0042】
【数13】
【0043】これは、前記数9のUの元を2ビットシフ
トさせ、以下の数14を足した(排他的論理和)ものに
等しい。
【0044】すなわち、Uの元の下位2ビット値に応じ
た22=4通りのルックアップテーブル(表3)を用意
しておき、Uの2ビットシフト演算との排他的論理和を
とれば良い。
【0045】
【表3】
【0046】
【数14】
【0047】シフト演算は、CPOに一般的に備わって
おり、またルックアップテーブルを小容量のメモリで実
現できるから、汎用かつ高速な演算方法である。
【0048】以上はα3・U,α4・Uにおいても同じで
ある。すなわちαiのためには、 1)iビットのシフト演算部 2)2iの数のルックアップテーブル(参照部) を設けることにより高速演算が可能である。
【0049】次に、前記シンボルS0,S1,S2,…,
n-k-1によるエラー訂正について説明する。
【0050】前記記録媒体から再生したデータにエラー
が無い場合には、数6においてシンボルS0,S1
2,…,Sn-k-1は全て0になる。またユーザシンボル
中にエラーが生じた場合、エラーが生じている箇所が予
め分かっている消失訂正においては以下のような演算で
エラーの大きさを算出できる。
【0051】例えばユーザシンボル中のエラーが、後ろ
からiのポジションとjのポジションで生じているとす
ると、エラーの大きさをei、ejとすると、これとシン
ボルS0、S1との関係は以下の数15のようになる。
【0052】
【数15】
【0053】上記数15からei、ejを求めると以下の
数16のようになるが、これは2元連立方程式として解
くことができる。
【0054】
【数16】
【0055】次に、検査シンボルE0に誤りejがあった
とすると、以下の数17のようになり、エラーの大きさ
iは1次方程式で解くことができる。
【0056】
【数17】
【0057】同様にユーザシンボルに3箇所のエラーe
i,ej,ekがあったときには、数18に示す3元連立
方程式を解くことによりエラーの大きさei(数19)
を求めることができる。
【0058】
【数18】
【0059】
【数19】
【0060】同様にしてej,ekを演算できる。上記の
演算において、原始多項式の次数が高くなるにしたがっ
て逆元の計算が膨大なものになる。よって予め決まった
値以内になるように変形しておいてテーブルルックアッ
プ方式で逆元を参照することが速度的に有利である。こ
の逆元に関しては、次の2種類のテーブル(参照部)を
持てば十分である。
【0061】 a)α1、α2、…、αk(kはユーザーシンボル数) b)1+α1、1+α2、…、1+αk(kはユーザーシ
ンボル数)
【0062】
【発明の効果】以上のように本発明では、ガロア体の原
始多項式を用いたエラー訂正用の演算を高速で行えるよ
うに成る。
【図面の簡単な説明】
【図1】α乗算回路の一例を示すブロック図
【図2】α乗算回路の一例を示すブロック図
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11B 20/18 572 G11B 20/18 572F

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 数1で表されるガロア体上の原始多項式
    G(x)のG(x)=0の元をαとしたときに、αi
    乗算する演算処理装置であって、 【数1】 乗算前の元をiビットシフトするシフト演算部と、αの
    乗数をiとしたときに2i個の要素のルックアップテー
    ブルを参照する参照部とを有することを特徴とする演算
    処理装置。
  2. 【請求項2】 前記数1で表されるガロア体上の原始多
    項式G(x)のG(x)=0の元をαとしたときに、以
    下の数2で示されるガロア体上の元Uを基にU・αi
    演算する演算処理装置であって、 【数2】 前記Uの元をiビットシフトするシフト演算部と、Uの
    最下位のiビットに応じて、2i個の要素のルックアッ
    プテーブルを参照する参照部との排他的論理和をとるこ
    とを特徴する演算処理装置。
  3. 【請求項3】 データをD1,D2,…,Dkとしたとき
    に以下の数3で示されるエラー検査シンボルE0,E1
    2,…,En-k-1が演算される請求項2記載の演算処理
    装置。 【数3】
  4. 【請求項4】 データをデコードしたときに、以下の数
    4の演算を行ってシンボルS0,S1,S2,…,Sn-k-1
    を得る請求項3記載の演算処理装置。 【数4】
  5. 【請求項5】 前記シンボルS0,S1,S2,…,S
    n-k-1を用いてエラーの大きさを求める際、次の逆元参
    照テーブルを設けて、これを参照して前記エラーの大き
    さを求める請求項4記載の演算処理装置。 a)α1、α2、…、αk、 b)1+α1、1+α2、…、1+αk
JP2000243774A 2000-08-11 2000-08-11 演算処理装置 Withdrawn JP2002057586A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2000243774A JP2002057586A (ja) 2000-08-11 2000-08-11 演算処理装置
CN01123720A CN1338677A (zh) 2000-08-11 2001-07-30 运算处理装置
US09/924,707 US20020042803A1 (en) 2000-08-11 2001-08-08 Arithmetic operation unit suitable for correcting lost data by general-purpose computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000243774A JP2002057586A (ja) 2000-08-11 2000-08-11 演算処理装置

Publications (1)

Publication Number Publication Date
JP2002057586A true JP2002057586A (ja) 2002-02-22

Family

ID=18734575

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000243774A Withdrawn JP2002057586A (ja) 2000-08-11 2000-08-11 演算処理装置

Country Status (3)

Country Link
US (1) US20020042803A1 (ja)
JP (1) JP2002057586A (ja)
CN (1) CN1338677A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009140142A1 (en) * 2008-05-12 2009-11-19 Sandbridge Technologies, Inc. Implementation of arbitrary galois field arithmetic on a programmable processor
CN104407837B (zh) * 2014-12-16 2017-09-19 中国电子科技集团公司第三十八研究所 一种实现伽罗瓦域乘法的装置及其应用方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4875211A (en) * 1986-12-10 1989-10-17 Matsushita Electric Industrial Co., Ltd. Galois field arithmetic logic unit
US6366941B1 (en) * 1998-02-03 2002-04-02 Texas Instruments Incorporated Multi-dimensional Galois field multiplier
JP3351413B2 (ja) * 2000-03-01 2002-11-25 日本電気株式会社 並列処理リードソロモン符号化回路及びそれに用いる並列処理リードソロモン符号化方法

Also Published As

Publication number Publication date
US20020042803A1 (en) 2002-04-11
CN1338677A (zh) 2002-03-06

Similar Documents

Publication Publication Date Title
EP0096109B1 (en) Error correcting system
US4975867A (en) Apparatus for dividing elements of a Galois Field GF (2QM)
US6141786A (en) Method and apparatus for performing arithmetic operations on Galois fields and their extensions
KR930005427B1 (ko) 실시간 bch 에러 정정 코드 디코딩 메카니즘
US6725416B2 (en) Forward error correction apparatus and methods
KR950002304B1 (ko) 다중 오류정정 방법
JP2009501380A (ja) フラッシュエラー訂正
KR20030016410A (ko) 일부가 사전에 알려진 정보의 코딩 및 디코딩
US6199088B1 (en) Circuit for determining multiplicative inverses in certain galois fields
WO1985003371A1 (en) Circuit for calculating finite fields
JPH10145239A (ja) エラー訂正方法及び装置
JP2004227761A (ja) ソフト復調方法及びソフト復調装置
JP2002057586A (ja) 演算処理装置
JP3810765B2 (ja) 複雑度を減らしたコードテーブルを使用する復調装置及びその方法
JP3343857B2 (ja) 復号装置、演算装置およびこれらの方法
TWI273775B (en) Method for generating syndrome value and related syndrome generator
JP2008146828A (ja) 光ディスク装置のエンコードデータ符号回路
JP4135497B2 (ja) データ再生方法及びデータ再生装置
US6446233B1 (en) Forward error correction apparatus and methods
KR920010184B1 (ko) 유한체(有限體)의 연산회로
JP3255130B2 (ja) データ検査方法及び装置並びに記録媒体
US6789226B2 (en) Decoder and method of decoding block codes
JP2714128B2 (ja) 符号伝送方法
AU613701B2 (en) Apparatus for computing multiplicative inverses in data encoding decoding devices
KR910009094B1 (ko) 갈로이계 연산장치

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050401

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050412

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20050523