JP5816383B2 - インターリーバーインデックス生成装置及び方法 - Google Patents
インターリーバーインデックス生成装置及び方法 Download PDFInfo
- Publication number
- JP5816383B2 JP5816383B2 JP2014555464A JP2014555464A JP5816383B2 JP 5816383 B2 JP5816383 B2 JP 5816383B2 JP 2014555464 A JP2014555464 A JP 2014555464A JP 2014555464 A JP2014555464 A JP 2014555464A JP 5816383 B2 JP5816383 B2 JP 5816383B2
- Authority
- JP
- Japan
- Prior art keywords
- addition
- index
- result
- input
- interleaver
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/2771—Internal interleaver for turbo codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/2739—Permutation polynomial interleaver, e.g. quadratic permutation polynomial [QPP] interleaver and quadratic congruence interleaver
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/276—Interleaving address generation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6561—Parallelized implementations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/395—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using a collapsed trellis, e.g. M-step algorithm, radix-n architectures with n>2
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
Description
図1を参照すると、従来のターボエンコーダの内部インターリーバーインデックスを生成するための装置100は、第1乗算器110、加算器120、第2乗算器130、除算器140を含むように構成される。
加算器120は、上記第1乗算器110を通じて出力されたf2*iとiの入力を受けてf2*i+f1値を出力する。
第2乗算器130は、上記加算器120を通じて出力されたf2*i+f1とiの入力を受けて(f2*i+f1)*iの値を出力する。
除算器140は(f2*i+f1)*iとKの入力を受けて{(f2*i+f1)*i}/Kを行って、余りに該当する{(f2*i+f1)*i}mod Kを出力する。
また、本発明は、一定ビットに対して計算されたインデックスを用いて、乗算器と除算器を使用せずに以後のビットに対するインデックスを計算することで、ハードウェア具現時の資源の効率性及び性能の向上を図る効果がある。
インターリーバーインデックスは、入力データから導出されるf1、f2及びビットの順によるi値を用いて下記式を満足するΠ(i)である。
本発明の好ましい一実施例によれば、上位プロセッサ210は、インデックス値の差を用いて入力データの一定ビットに対するインデックスを計算する。
本発明の他の実施例に係るインターリーバーインデックス生成装置500は下記式を用いてΠ(i)を導出する。
Π(i+1)−Π(i)={f1*(i+1)+f2*(i+1)2−(f1*i+f2*i2)} mod K
={f1*i+f1+f2*i2+2*f2*i+f2−(f1*i+f2*i2)}mod K
=(f1+f2+2*f2*i)mod K
1.Kiは全て8の倍数である。
2.最初インデックスは常に0である。
3.生成されたインデックスを8で割った余りは8個ずつ繰り返される形で表れる。
4.最初8個のインデックスと2番目の8個のインデックスが生成されると、これを用いて3番目以後の全てのインデックスを8個単位で生成することができる。
Π(i+8)={f1*(i+8)+f2*(i+8)2}mod K
={f1*i+8*f1+f2*i2+16*f2*i+64*f2}mod K
Π(i+8)={f1*i+8*f1+f2*i2+16*f2*i+64*f+(f1*i+f2*i2)−(f1*i+f2*i2)}mod K
={f1*i+f1*i+f2*i2+f2*i2+8*f1+16*f2*i+64*f2−(f1*i+f2*i2)}mod K
={2*(f1*i+f2*i2)−(f1*i-8*f1)−(f2*i2−16*f2*i−64*f2}mod K
Π(i+8)={2*(f1*i+f2*i2)+128*f2−128*f2−(f1*i−8*f1)−(f2*i2−16*f2*i−64*f2}mod K
={2*(f1*i+f2*i2)−(f1*i−8*f1)−(f2*i2−16*f2*i+64*f2)+128*f2}mod K
={2*(f1*i+f2*i2)−f1*(i−8)−f2*(i−8)2+128*f2}mod K
={2*Π(i)−Π(i−8)+128*f2}mod K
S720ステップでは、インデックス生成装置はS710ステップで計算したK、f1、f2を用いて入力データの一定ビットに対するインデックスを計算する。
本発明の好ましい一実施例によれば、S730では、インデックス生成装置は下記式(ここで、jは0≦j≦7)数式を用いてi+16番目ビット以後のビットに対するインデックスを計算する。
210:上位プロセッサ
220:インデックス演算部
221:第1保存装置
222:第2保存装置
223:次のインデックス生成器
Claims (10)
- 入力データに対するインターリーバーインデックス生成装置において、
前記データのそれぞれのビットに対するインデックスを計算する上位プロセッサと、
前記上位プロセッサから計算されたインデックスを受けて前記それぞれのビット以後のビットに対するインデックスを並列に計算して複数のインデックスを導出するインデックス演算部と、を含み、
前記上位プロセッサは、前記データのi番目からi+15番目までのビット(ここで、iは0以上の整数)に対するインデックスを計算し、
前記インデックス演算部は、(i+j)番目と(i+j)+8番目ビットに対するインデックス値の差を用いて(i+j)+16番目ビット(ここで、jは0≦j≦7)に対するインデックスを計算することを特徴とするインターリーバーインデックス生成装置。 - インデックスは、モジュラ(mod)演算によって計算され、
前記モジュラ(mod)演算は、加算とマルチプレクサを用いて行われるようにすることを特徴とする請求項1に記載のインターリーバーインデックス生成装置。 - 前記加算は、前記モジュラ演算の被除数と符号反転された除数の加算であり、
前記マルチプレクサは、前記加算の結果及び前記被除数の入力を受けて、前記加算の結果が負数であれば前記被除数が出力され、正数であれば前記加算の結果が出力されるようにすることを特徴とする請求項2に記載のインターリーバーインデックス生成装置。 - インデックスは、モジュラ(mod)演算によって計算され、
前記モジュラ(mod)演算は、第1入力、第2入力及び除数K(但し、Kは入力データの大きさである)の入力を受けて第1加算、第2加算及びマルチプレクサを用いて行われるようにすることを特徴とする請求項1に記載のインターリーバーインデックス生成装置。 - 前記第1加算は前記第1入力の値と符号反転された前記第2入力の値の加算であり、
前記第2加算は前記第1加算の結果と前記除数Kの加算であり、
前記マルチプレクサは、前記第1加算の結果と前記第2加算の結果の入力を受けて、前記第1加算の結果が負数であれば前記第2加算の結果を出力し、正数であれば前記第1加算の結果を出力することを特徴とする請求項5に記載のインターリーバーインデックス生成装置。 - 入力データに対するインターリーバーインデックスを生成する方法において、
前記データのそれぞれのビットに対するインデックスを計算する第1ステップと、
前記計算されたインデックスを用いて前記それぞれのビット以後のビットに対するインデックスを並列に計算する第2ステップと、を含み、
前記第1ステップは、前記データのi番目からi+15番目までのビット(ここで、iは0以上の整数)に対するインデックスを計算し、
前記第2ステップは、(i+j)番目と(i+j)+8番目ビットに対するインデックス値の差を用いて(i+j)+16番目ビット(ここで、jは0≦j≦7)に対するインデックスを計算することを特徴とするインターリーバーインデックス生成方法。 - インデックスは、モジュラ(mod)演算によって計算され、
前記モジュラ(mod)演算は、加算とマルチプレクサを用いて行われるが、
前記加算は、前記モジュラ演算の被除数と符号反転された除数の加算であり、
前記マルチプレクサは、前記加算の結果及び前記被除数の入力を受けて、前記加算の結果が負数であれば前記被除数が出力され、正数であれば前記加算の結果が出力されるようにすることを特徴とする請求項7に記載のインターリーバーインデックス生成方法。 - 前記数2のモジュラ(mod)演算は、第1入力、第2入力及び除数Kの入力を受けて第1加算、第2加算及びマルチプレクサを用いて行われるようにするが、
前記第1加算は、前記第1入力の値と符号反転された前記第2入力の値の加算であり、
前記第2加算は、前記第1加算の結果と前記除数Kの加算であり、
前記マルチプレクサは、前記第1加算の結果と前記第2加算の結果の入力を受けて、前記第1加算の結果が負数であれば前記第2加算の結果を出力し、正数であれば前記1加算の結果を出力することを特徴とする請求項9に記載のインターリーバーインデックス生成方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2012-0010658 | 2012-02-02 | ||
KR1020120010658A KR101286021B1 (ko) | 2012-02-02 | 2012-02-02 | 인터리버 인덱스 생성장치 및 방법 |
PCT/KR2012/001441 WO2013115429A1 (en) | 2012-02-02 | 2012-02-24 | Apparatus and method for generating interleaver index |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015505655A JP2015505655A (ja) | 2015-02-23 |
JP5816383B2 true JP5816383B2 (ja) | 2015-11-18 |
Family
ID=48905444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014555464A Active JP5816383B2 (ja) | 2012-02-02 | 2012-02-24 | インターリーバーインデックス生成装置及び方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9344118B2 (ja) |
EP (1) | EP2810372B1 (ja) |
JP (1) | JP5816383B2 (ja) |
KR (1) | KR101286021B1 (ja) |
IL (1) | IL233798B (ja) |
WO (1) | WO2013115429A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6193051B2 (ja) * | 2013-08-15 | 2017-09-06 | Necプラットフォームズ株式会社 | アドレス生成回路及びアドレス生成方法 |
US10122495B2 (en) * | 2015-11-25 | 2018-11-06 | National Instruments Corporation | Flexible polynomial-based interleaver |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01267713A (ja) * | 1988-04-20 | 1989-10-25 | Hitachi Ltd | デイジタル周期波発生器 |
JP2728818B2 (ja) * | 1991-11-22 | 1998-03-18 | 三菱電機株式会社 | 可変長復号化器 |
US6088800A (en) * | 1998-02-27 | 2000-07-11 | Mosaid Technologies, Incorporated | Encryption processor with shared memory interconnect |
DE10030407B4 (de) * | 1999-07-14 | 2011-09-01 | Lg Electronics Inc. | Verfahren zur optimalen Ratenanpassung in einem Mobilkommunikationssystem |
KR100943612B1 (ko) | 2002-09-25 | 2010-02-24 | 삼성전자주식회사 | 터보코드를 사용하는 이동통신시스템의 터보 인터리버장치 및 방법 |
US7529307B2 (en) * | 2005-03-30 | 2009-05-05 | Intel Corporation | Interleaver |
KR20070080921A (ko) * | 2006-02-09 | 2007-08-14 | 삼성전자주식회사 | 통신시스템에서 인터리빙 장치 및 방법 |
US7925956B2 (en) * | 2006-10-03 | 2011-04-12 | Motorola Mobility, Inc. | Method and apparatus for encoding and decoding data |
US8239711B2 (en) * | 2006-11-10 | 2012-08-07 | Telefonaktiebolaget Lm Ericsson (Publ) | QPP interleaver/de-interleaver for turbo codes |
US7949926B2 (en) * | 2006-11-30 | 2011-05-24 | Motorola Mobility, Inc. | Method and apparatus for encoding and decoding data |
KR101133907B1 (ko) * | 2007-07-06 | 2012-04-12 | 주식회사 코아로직 | 디인터리브 장치와 방법 및 인터리빙 인덱스 산출장치 및방법과 그 기록매체 |
US8140932B2 (en) * | 2007-11-26 | 2012-03-20 | Motorola Mobility, Inc. | Data interleaving circuit and method for vectorized turbo decoder |
WO2010008165A2 (ko) * | 2008-07-13 | 2010-01-21 | 엘지전자 주식회사 | 이동통신 시스템에서 ctc(convolutional turbo code) 인코더를 이용하여 데이터를 전송하기 위한 장치 및 그 방법. |
CN101931419B (zh) * | 2009-06-24 | 2013-04-03 | 中兴通讯股份有限公司 | 一种turbo码内交织器的计算方法及装置 |
TWI381653B (zh) * | 2009-09-11 | 2013-01-01 | Ind Tech Res Inst | 二階重排多項式交織器位址產生裝置與方法 |
US8913478B2 (en) * | 2009-11-18 | 2014-12-16 | Wi-Lan, Inc. | Methods and apparatus for interleaving in OFDM/OFDMA systems |
-
2012
- 2012-02-02 KR KR1020120010658A patent/KR101286021B1/ko active IP Right Grant
- 2012-02-24 US US14/370,571 patent/US9344118B2/en active Active
- 2012-02-24 EP EP12867539.4A patent/EP2810372B1/en active Active
- 2012-02-24 WO PCT/KR2012/001441 patent/WO2013115429A1/en active Application Filing
- 2012-02-24 JP JP2014555464A patent/JP5816383B2/ja active Active
-
2014
- 2014-07-24 IL IL233798A patent/IL233798B/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
US9344118B2 (en) | 2016-05-17 |
EP2810372A4 (en) | 2015-09-09 |
US20150026535A1 (en) | 2015-01-22 |
JP2015505655A (ja) | 2015-02-23 |
WO2013115429A1 (en) | 2013-08-08 |
KR101286021B1 (ko) | 2013-07-19 |
IL233798B (en) | 2019-02-28 |
EP2810372A1 (en) | 2014-12-10 |
EP2810372B1 (en) | 2019-04-03 |
IL233798A0 (en) | 2014-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101992270B1 (ko) | 디지털 서명 생성 방법 및 장치 | |
Chung et al. | A high-performance elliptic curve cryptographic processor over GF (p) with SPA resistance | |
US8498411B1 (en) | Using multiples above two with running totals and reference values other than 0 and 2 (window size) in elliptic curve cryptography scalar multiplication acceleration tables | |
US10999056B2 (en) | Apparatus and method for performing operation being secure against side channel attack | |
Shah et al. | A high‐speed RSD‐based flexible ECC processor for arbitrary curves over general prime field | |
JP5816383B2 (ja) | インターリーバーインデックス生成装置及び方法 | |
CN108512665B (zh) | 在椭圆曲线密码系统中生成椭圆曲线点 | |
US10833868B2 (en) | Direct anonymous attestation-based apparatus and method | |
CN104506316A (zh) | 一种基于sm2基点的点乘运算方法 | |
CN106371803B (zh) | 用于蒙哥马利域的计算方法和计算装置 | |
US10659224B2 (en) | Apparatus and method for performing operation being secure against side channel attack | |
US10812260B2 (en) | Apparatus and method for performing operation being secure against side channel attack | |
Dong et al. | An efficient FPGA implementation of ECC modular inversion over F256 | |
Reyes et al. | A performance comparison of elliptic curve scalar multiplication algorithms on smartphones | |
RU2392736C1 (ru) | Способ генерации и проверки подлинности электронной цифровой подписи, заверяющей электронный документ | |
Rao | An open source software package for primality testing of numbers of the form p2^ n+ 1, with no constraints on the relative sizes of p and 2^ n | |
Paryasto et al. | Composite field multiplier based on look-up table for elliptic curve cryptography implementation | |
Mohammadi et al. | Efficient design of Elliptic curve point multiplication based on fast Montgomery modular multiplication | |
Brar et al. | Design and implementation of block method for computing NAF | |
KR101626743B1 (ko) | 유한체상의 몽고메리 알고리즘을 이용한 곱셉기 및 곱셈 방법 | |
US8605895B2 (en) | Computing the eth root of a number using a variant of the RSA algorithm (for even e's) | |
KR101423947B1 (ko) | 확장된 nist 소수를 이용한 모듈러 곱셈 및 모듈러 지수승 방법 | |
Элиас et al. | FPGA cores for fast multiplicative inverse calculation in Galois Fields | |
Rezai et al. | An Efficient Scalar Multiplication Algorithm for Elliptic Curve Cryptography Using a New Signed-Digit Representation | |
Kodali et al. | FPGA implementation of energy efficient multiplication over GF (2 m) for ECC |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140918 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150611 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150616 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150813 |
|
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: 20150915 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150925 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5816383 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |