JP2010135918A - 演算装置、復号化装置およびメモリ制御方法ならびにプログラム - Google Patents

演算装置、復号化装置およびメモリ制御方法ならびにプログラム Download PDF

Info

Publication number
JP2010135918A
JP2010135918A JP2008307680A JP2008307680A JP2010135918A JP 2010135918 A JP2010135918 A JP 2010135918A JP 2008307680 A JP2008307680 A JP 2008307680A JP 2008307680 A JP2008307680 A JP 2008307680A JP 2010135918 A JP2010135918 A JP 2010135918A
Authority
JP
Japan
Prior art keywords
data
memory
time point
read
state
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
JP2008307680A
Other languages
English (en)
Other versions
JP5196567B2 (ja
Inventor
Masaichi Shimizu
雅一 清水
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.)
NTT Docomo Inc
NEC Corp
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc, NEC Corp filed Critical NTT Docomo Inc
Priority to JP2008307680A priority Critical patent/JP5196567B2/ja
Publication of JP2010135918A publication Critical patent/JP2010135918A/ja
Application granted granted Critical
Publication of JP5196567B2 publication Critical patent/JP5196567B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

【課題】演算処理に用いるレジスタ群などの記憶領域を削減する。
【解決手段】複数の演算前データが複数の所定の領域にそれぞれ格納されるメモリであるレジスタ群40と、このレジスタ群40から読み出された演算前データを演算処理した演算後データをレジスタ群40の複数の所定の領域にそれぞれ格納する制御手段と、を備える。復号化装置は、ビタビ復号化処理におけるN(Nは0以上の整数)時点の状態を表す複数のデータが複数の所定の領域にそれぞれ格納されるメモリと、このメモリから読み出されたN時点の状態を表す複数のデータに対して所定の演算処理を施したN+1時点またはN−1時点の状態を表す複数のデータをメモリの複数の所定の領域にそれぞれ格納する制御手段と、を備える。
【選択図】図3

Description

本発明は、演算装置、復号化装置およびメモリ制御方法ならびにプログラムに関する。
デジタル通信システムでは、伝送路において生じる誤りを訂正する誤り訂正符号が用いられている。特に、移動通信システムでは、フェージングの影響により電波強度が激しく変動して誤りが生じ易い。このため、誤り訂正符号には高い訂正能力が要求される。
そのような誤り訂正符号の一つであるビタビ(Viterbi)復号化は畳み込み符号に対する復号法であり、最も一般的な誤り訂正方法の一つとして知られている。ビタビ復号は最尤系列推定(Maximum Likelihood Sequence Estimation)復号法であり、尤もらしい状態の遷移を辿ること(トレースバック)で復号結果を得る。なお、最尤系列推定を使用した場合、シンボル系列が長くなると演算量が膨大となるため、ビタビ復号化では、Dynamic Programing(動的計画法)を応用することで演算量をシンボル長に比例するように工夫している。復号化結果が正しいか否かの判定はCRC(Cyclic Redundancy Check)などの誤り検出方法を用いる。これにより、判定結果が誤りであれば通信システムはデータの再送を要求する。
このように、通信システムにおいては、誤り訂正符号化と誤り検出法とは一対として使用されている。例えば、第3世代の移動通信方式であるW−CDMA(Wideband Code Division Multiple Access)やCDMA−2000で誤り訂正符号化と誤り検出が使用されている。
また、3GPP(Third Generation
Partnership Project)−LTE(Long Time Evolution)では、繰り返し復号化により訂正能力が向上するTail−biting方式の畳み込み符号が採用されている(非特許文献1参照)。この方式は、繰り返し回数が性能に影響を与えるため、全体の復号化処理時間においては、繰り返し処理に要する処理時間の短縮が必要となっている。
繰り返し処理とは、主にパスメトリックを計算するACS(Add-Compare-Select:加算−比較−選択)演算処理である。ビタビ復号では受信したデータ順にACS演算処理が行われ、その後、トレースバック処理、復号化データのCRC演算処理が順番に行われている。なお、ACS演算処理の各時点で仮定される送信データと受信データとの相関距離をブランチメトリックという。また、ある時点の符号化器の記憶素子の状態(ステート)から異なる時点のあるステートに至るブランチメトリックの和をパスメトリックという。さらにパスメトリックの尤度からブランチを選択することによって得られる経路の情報をパス選択情報という。
例えば、特許文献1による提案では、ビタビ復号化のACS演算処理において、パスメトリックメモリを2面用意している。すなわち、パスメトリックの読出側と書込側としてそれぞれのメモリを1時点ずつ交互に使用している。また、特許文献1による提案では、1時点分のパスメトリックの演算処理を64サイクルかけて行っている。一方、ターボ復号化回路などでは1時点で処理すべきパスメトリック演算処理数が少ないため、パスメトリックの格納にレジスタを用いた1サイクルで1時点分のパスメトリックを求めていくものもある。
特許第3677257号 3GPP TS 36.212 V8.3.0 pp.11−12
Tail−biting方式の畳み込み符号のように復号化におけるACS演算処理の繰り返し処理回数が性能に大きく影響する場合は、従来のビタビ復号化回路のように1時点分の演算処理に多くの処理サイクルがかかると十分な性能を出すことができない。そのため、ACS演算処理の並列数を増やし、1時点分の演算処理を高速化する必要がある。また、この場合には、1サイクルで多数のパスメトリック結果が算出されるため、その保持領域としてはメモリではなくレジスタが必要となる。
しかし、非特許文献1の畳み込み符号化を例にとれば、ビタビ復号化における状態数は64である。もし、ターボ復号化回路と同様に1時点分の演算処理を1サイクルで行うとすると64状態分のパスメトリック演算処理を行わなければならない。このため、多くの演算器が必要となってしまう。そのため、回路規模や処理時間が許容できる範囲で1時点分の演算処理を2サイクル以上に分けて行うことが考えられる。
上述したように、1時点分のパスメトリック演算処理を2サイクル以上に分けて行う場合において、1サイクルで2状態の演算を行う場合を考える。この場合には、例えば、N時点の状態1のパスメトリックはN+1時点の状態2の演算処理に必要である。よって、N+1時点の状態1のパスメトリック演算処理の結果をそのままN時点の状態1が保持されている領域に上書きすると、N+1時点の状態2の演算処理が行えなくなる。そのため、各状態のパスメトリックを保持するレジスタ群が2つ必要になる。
この問題点を図16〜図22を参照して分り易く説明する。図16に示すように、初期状態では、読出側レジスタ群100にN時点におけるグループA、Bを表すデータ0〜7、8〜15が格納されている。また、演算開始前の初期状態では、N+1時点におけるグループC、Dを表すデータが格納される予定の書込側レジスタ群101には何も格納されていない。なお、図中のBMCは、ブランチメトリック演算器102であり、PMCは、パスメトリック演算器103である。
また、個々のデータ0〜7、8〜15は16個の状態のパスメトリック値を表している。これに対し、図中のグループA、Bは、説明の便宜上、これらのデータ0〜7、8〜15の8ずつの状態をまとめて称したものである。また、後述するグループC、Dについても同様である。なお、レジスタ群100、101の内部の数字のうち「♯」が付与されている数字は、パスメトリック演算処理済みのデータを表している。また、「♯」が付与されていない数字は、パスメトリック演算処理前のデータを表している。
ここで、図16に示す状況を説明すると、ブランチメトリックについては、ブランチメトリック演算器102によって、既に演算処理が完了している。そして、ブランチメトリック演算器102は、ブランチメトリックの演算結果をパスメトリック演算器103に伝達している。また、N時点目のパスメトリックのデータは、読出側レジスタ群100に格納されている。これからパスメトリック演算器103によってN+1時点の状態に至るブランチメトリックの和であるパスメトリックが演算される。
次に、図17に示すように、1サイクル目のステップS10で、グループAの一部のデータ“0”、“2”、“4”、“6”、グループBの一部のデータ“8”、“10”、“12”、“14”がそれぞれ読出側レジスタ群100から読み出される。
次に、図18に示すように、1サイクル目のステップS11で、パスメトリック演算器103によりパスメトリック演算処理が行われる。
次に、図19に示すように、1サイクル目のステップS12で、パスメトリック演算器103によりパスメトリック演算処理が行われた演算後のグループCの一部のデータ“♯0”、“♯1”、“♯4”、“♯5”、グループDの一部のデータ“♯8”、“♯9”、“♯12”、“♯13”が書込側レジスタ群101にそれぞれ格納される。
次に、図20に示すように、2サイクル目のステップS13で、グループAの残りのデータ“1”、“3”、“5”、“7”、グループBの残りのデータ“9”、“11”、“13”、“15”がそれぞれ読出側レジスタ群100から読み出される。
次に、図21に示すように、2サイクル目のステップS14で、パスメトリック演算器103によりパスメトリック演算処理が行われる。
次に、図22に示すように、2サイクル目のステップS15で、パスメトリック演算器103によりパスメトリック演算処理が行われた演算後のグループCの残りのデータ“♯2”、“♯3”、“♯6”、“♯7”、グループDの残りのデータ“♯10”、“♯11”、“♯14”、“♯15”が書込側レジスタ群101にそれぞれ格納される。
さらに、図22に示すように、書込側レジスタ群101にデータが揃ったことで、読出側レジスタと書込側レジスタとを切替えることにより、ブランチメトリック演算器102、パスメトリック演算器103は、続いて、N+2時点の状態E、F(不図示)の演算を行うことができる。
このように、従来は、書込側レジスタ群101にデータを取得した後、読出側と書込側とを切り替えて使用していたため、必ず2つ以上のレジスタ群が必要である。
本発明は、このような背景の下に行われたものであって、演算処理に用いるレジスタなどの記憶領域を削減することができる演算装置、復号化装置およびメモリ制御方法ならびにプログラムを提供することを目的とする。
本発明の演算装置は、複数の演算前データが複数の所定の領域にそれぞれ格納されるメモリと、このメモリから読み出された演算前データを演算処理した演算後データをメモリの複数の所定の領域にそれぞれ格納する制御手段と、を備えるものである。
本発明の復号化装置は、ビタビ復号化処理におけるN(Nは0以上の整数)時点の状態を表す複数のデータが複数の所定の領域にそれぞれ格納されるメモリと、このメモリから読み出されたN時点の状態を表す複数のデータに対して所定の演算処理を施したN+1時点またはN−1時点の状態を表す複数のデータをメモリの複数の所定の領域にそれぞれ格納する制御手段と、を備えるものである。
本発明のメモリ制御方法は、演算装置が行うメモリ制御方法において、複数の演算前データがそれぞれ複数の所定の領域に格納されるメモリから読み出された演算前データを演算処理した演算後データを、メモリの複数の所定の領域にそれぞれ格納するステップを有するものである。
本発明のプログラムは、情報処理装置にインストールすることにより、その情報処理装置に、本発明の演算装置の機能を実現するものである。
本発明によれば、演算処理に用いるレジスタなどの記憶領域を削減することができる。
(本発明の実施の形態に係る復号化装置の構成の説明)
本発明の実施の形態に係る符号化装置および復号化装置を、図を参照しながら説明すると共に、それぞれ基地局1およびユーザ端末2として説明する。まず、基地局1およびユーザ端末2の構成について図1を参照しながら説明する。図1は、基地局1およびユーザ端末2の構成図である。なお、ユーザ端末2が演算装置となる。
基地局1は、符号化部10、変調部11、D/A変換部12、送信アンテナ13などにより構成される。ユーザ端末2は、受信アンテナ20、A/D変換部21、復調部22、復号化部23などにより構成される。
基地局1では、例えば、まず基地局1のCPU(Central Processing Unit)(不図示)が送信したいデータを情報ビットとして符号化部10に入力する。符号化部10は、入力された情報ビットに対し、CRC付加や畳み込み符号化を施す。変調部11は、入力された符号化データを変調し、変調後のデータである送信データをD/A変換部12に出力する。D/A変換部12は、変調部11が出力した送信データをデジタル信号からアナログ信号に変換する。そしてアナログ信号に変換された送信データは、送信アンテナ13を介して送信される。
ユーザ端末2は、受信アンテナ20を介して送信アンテナ13から送信されたデータを受信する。ただし、受信アンテナ20が受信したデータは、送信アンテナ13から出力された後、空間を伝播する際のノイズの影響を受けていることに留意する必要がある。
受信アンテナ20が受信したデータはA/D変換部21に入力される。A/D変換部21は、入力されたデータをアナログ信号からデジタル信号に変換する。A/D変換部21は、変換後のデジタル信号を復調部22に出力する。そして、復調部22は、A/D変換部21が出力したデータを復調する。
復調部22は、復調して得た受信データを復号化部23に出力する。復号化部23は、入力された受信データに対して誤り訂正復号化を行う。その結果得られる復号化データを使用して後段のCPU(不図示)などの処理回路が所定の処理を実施する。
図2は復号化部23を図示したものである。復号化部23は受信データを格納する受信データメモリ30、ACS演算処理を行うための制御手段であるACS演算部31、パス情報から復号化データを取得するトレース部32、復号化データからCRC演算を行い、復号化データの誤り検出を行うCRC演算部33、ACS演算部31のパスメトリックを格納するパスメトリック格納メモリ34、ACS演算部31のパス選択情報を格納するパス情報格納メモリ35、CRC演算部33による誤り訂正が完了した復号化データを格納する復号化データ格納メモリ36を有する。この復号化部23の各部の制御は、復号化部23の図示しない制御部またはユーザ端末2内の図示しない制御部が行う。
なお、メモリとして記載してあるブロックを別の記憶媒体、例えば、フリップフロップ等で代用してもよい。パスメトリック格納メモリ34は各ステート(各状態)の1時点分のパスメトリックを保持できる。パス情報格納メモリ35は各ステートのN時点分のパス選択情報を保持できる。また、復号化データ格納メモリ36もNビットの復号化データを保持できる。
ACS演算部31は、ACS演算処理を時系列的にデータの順方向から行う。トレース部32は、ACS演算部31のACS演算処理の結果得られるパス情報を時系列的に逆方向に読み出すトレースバック処理を行う。さらに、CRC演算部33は、トレース部32のトレースバック処理が完了したら復号化データのCRC演算処理を行う。
図3はACS演算部31の構成をきわめて簡略化して示す図である。ACS演算部31は、図3に示すように、ACS演算処理を行うためのブランチメトリック演算器50およびパスメトリック演算器51により構成される。図3の例では、レジスタ群40は、パスメトリック格納メモリ34に相当し、N時点におけるグループAを表すデータ0〜7、グループBを表すデータ8〜15が格納されている。
(復号化部23の動作の説明)
次に、図2の復号化部23の動作について図3〜図12を参照して説明する。前提としてビタビ復号化ではNビットのデータに対してN時点分の計算を行い、復号化データを出力するものとする。
まず、受信した合計N時点分、すなわち0時点からN−1時点までのデータが受信データメモリ30に格納される。これを受けて復号化部23はパスメトリック格納メモリ34を初期化してACS演算部31を起動する。ACS演算部31は受信データを0時点目から読み出し、ブランチメトリックを演算すると共に、パスメトリック格納メモリ34からパスメトリックを読み出してACS演算処理を行う。ACS演算処理の結果、0時点でのパスメトリックとパス選択情報が得られ、それぞれパスメトリック格納メモリ34とパス情報格納メモリ35に格納される。
続いて、ACS演算部31は1時点目の受信データを読み出しブランチメトリックを演算すると共に、0時点目のパスメトリックを読み出し、ACS演算処理を行う。そして得られた1時点目でのパスメトリックとパス選択情報を格納する。このとき0時点目のパスメトリックは1時点目のパスメトリックで上書きされる。同様の処理をN−1時点まで行うことで、合計N時点分のパス選択情報が生成される。
ここで、図3に示す演算開始前の状況を説明すると、ブランチメトリックについては、ブランチメトリック演算器50によって、既に演算処理が完了している。そして、ブランチメトリック演算器50は、ブランチメトリックの演算結果をパスメトリック演算器51に伝達している。また、レジスタ群40(図2のパスメトリック格納メモリ34に相当)にはN時点目のパスメトリックのデータが格納されている。これからパスメトリック演算器51によってN+1時点の状態に至るブランチメトリックの和であるパスメトリックが演算される。
次に、図4に示すように、1サイクル目のステップS1で、グループAの一部のデータ“0”、“2”、“4”、“6”、グループBの一部のデータ“8”、“10”、“12”、“14”がそれぞれレジスタ群40から読み出される。
次に、図5に示すように、1サイクル目のステップS2で、パスメトリック演算器51によりパスメトリック演算処理が行われる。これにより、図6に示すように、1サイクル目のステップS3で、パスメトリック演算器51からはN+1時点におけるグループC、Dの一部のデータ“♯0”、“♯1”、“♯4”、“♯5”、“♯8”、“♯9”、“♯12”、“♯13”が出力される。
次に、図7に示すように、1サイクル目のステップS4で、レジスタ群40においてデータが読み出されて空となった領域に、N+1時点におけるグループCの一部のデータ“♯0”、“♯1”、“♯4”、“♯5”、“♯8”、“♯9”、“♯12”、“♯13”を順次格納する。なお、これらのデータは、レジスタ群40において格納されるべき所定の位置が予め決められている。しかしながら、この時点(ステップS4)においては、これらのデータが格納されるべき所定の位置は無視して格納することとする。
次に、図8に示すように、2サイクル目のステップS5で、グループAの残りのデータ“1”、“3”、“5”、“7”、グループBの残りのデータ“9”、“11”、“13”、“15”がそれぞれレジスタ群40から読み出される。
次に、図9に示すように、2サイクル目のステップS6で、パスメトリック演算器51によりパスメトリック演算処理が行われる。これにより、図10に示すように、2サイクル目のステップS7で、パスメトリック演算器51からはN+1時点におけるグループC、Dの残りのデータ“♯2”、“♯3”、“♯6”、“♯7”、“♯10”、“♯11”、“♯14”、“♯15”が出力される。
次に、図11に示すように、2サイクル目のステップS8で、レジスタ群40においてデータが読み出されて空となった領域に、先ほど所定の位置を無視して格納してあるデータ“♯0”、“♯1”、“♯4”、“♯5”、“♯8”、“♯9”、“♯12”、“♯13”を所定の位置になるように再配置する。図11の例では、データ♯1、♯5、♯9、♯13がそれぞれ1つずつ図面の上方向にシフトしている。また、これにより、次に格納されるデータの所定の位置を確保することができる。なお、ステップS8の処理は、ステップS7の処理と並列に行われてもよい。
次に、図12に示すように、2サイクル目のステップS9で、レジスタ群40においてデータが読み出されて空となると共に、1サイクル目のデータの再配置によってできた領域に、N+1時点におけるグループC、Dの残りのデータ“♯2”、“♯3”、“♯6”、“♯7”、“♯10”、“♯11”、“♯14”、“♯15”を順次格納する。なお、ステップS9の処理は、ステップS7、S8の処理と並列に行われてもよい。
このようにして、1つのレジスタ群40を用いているにも関わらず、N時点のグループA、BのデータとN+1時点のグループC、Dのデータを時分割的に共に格納することができる。
以上のようにして、合計N時点分のパス選択情報が生成されると、ACS演算部31は、パスメトリック格納メモリ35の中で最も尤度の高いパスメトリックを持つN−1時点目のステートを選択する。続いて、復号化部23は、トレース部32を起動する。トレース部32は、初期ステートの下位1ビットを復号化されたデータとして取得し、復号化データ格納メモリ36にそのデータを格納すると共に、パス情報格納メモリ35からN−1時点目のパス選択情報を取得する。
続いて、トレース部32は、初期ステートの最上位ビットにパス選択情報を連結し、1ビット右シフトしたものを次ステートとする。N−2時点でも同様にステートの下位1ビットを復号化されたデータとして取得し、復号化データ格納メモリ36にそのデータを格納すると共に、パス情報格納メモリ35からN−2時点目のパス選択情報を取得する。同様の処理を0時点まで行う。全時点分のデータを取得した後、CRC演算部33は、取得された復号化データを入力としてCRC演算を開始する。CRC演算部33は、情報ビット分のデータが入力された時点でCRC演算を終了する。
以上の動作によりNビットの復号化データと演算されたCRC、復号化されたCRCが得られる。演算されたCRCと復号化されたCRCの排他的論理和をとった結果がオールゼロであれば比較結果が一致したとして復号化完了となる。また、もし、演算されたCRCと復号化されたCRCの排他的論理和をとった結果がオールゼロとならなかった場合は復号化未了として、現在のパスメトリックを引き継いでACS演算処理、トレースバック処理、CRC演算処理を繰り返し行う。
なお、前述したように、トレース部32、CRC演算部33が処理を実行している間もACS演算部31はパスメトリック格納メモリ34に格納されているパスメトリックと受信データを用いて再度0時点のものからACS演算処理を行い、パス情報を更新してもよい。
(復号化部23の実態構成の説明)
次に、復号化部23の実態構成を図13を参照して説明する。図13には、2系統のブランチメトリック演算器50A、パスメトリック演算器51Aが図示されている。これは説明を分り易くするためであり、実際には、ブランチメトリック演算器50A、パスメトリック演算器51Aはそれぞれ1系統ずつしかない。また、レジスタ群40A(左)、40A(中)、40A(右)が複数図示されている。これも説明を分り易くするためであり、実際には、レジスタ群40Aは1系統しかない。また、説明を分り易くするために架空のレジスタ群60を図示した。
基地局1の符号化部10における畳み込み符号化器は、非特許文献1に記載の回路を採用している。また、1サイクルに32状態のパスメトリックを計算するものと仮定している。すなわち、64状態の計算には2サイクルを要する。ブランチメトリック演算器50Aは、各時点の入力からブランチメトリックを算出する。パスメトリック演算器51Aは、ACS(加算・比較・選択)処理によって次時点のパスメトリックを算出する。レジスタ群40Aは、64状態分の領域を有する。また、レジスタ群40の内部の数字のうち「♯」が付与されている数字は、パスメトリック演算処理済みのデータを表している。また、「♯」が付与されていない数字は、パスメトリック演算処理前のデータを表している。なお、本例では、1時点分の演算を2サイクルに分けたが、1サイクルで計算する状態が2の累乗であれば、同様の構成により、レジスタ群の数を削減することができる。
(復号化部23の実態構成における動作の説明)
次に、復号化部23の実態構成における動作を図13を参照して説明する。なお、処理は図面の左から右に流れるように描画してある。図13の構成では、ACS演算部31は、1サイクルで32状態のパスメトリックを計算する。1サイクル目ではレジスタ群40A(左)において実線矢印が付された領域からデータを読み出してパスメトリックを計算する。すなわち、1サイクル目においてレジスタ群40A(左)から読み出されるデータは、0、2、4、6、8、10、12、14、17、19、21、23、25、27、29、31、32、34、36、38、40、42、44、46、49、51、53、55、57、59、61、63である。また、2サイクル目ではレジスタ群40A(中)において点線矢印が付された領域からデータを読み出してパスメトリックを計算する。すなわち、2サイクル目においてレジスタ群40A(中)から読み出されるデータは、1、3、5、7、9、11、13、15、16、18、20、22、24、26、28、30、33、35、37、39、41、43、45、47、50、52、54、56、58、60、62である。
まず、1サイクル目ではレジスタ群40A(左)の実線矢印が付された領域からデータが読み出され、そこから算出できる各状態のパスメトリックがパスメトリック演算器51Aによって計算される。パスメトリック演算器51Aによって計算されたパスメトリックは、本来、架空のレジスタ群60の所定の領域に格納されるべきデータである。しかし、例えば、架空のレジスタ群60の上から2番目の領域に格納されているデータ♯1を実際のレジスタ群40A(左)に格納しようとすると、そこには、未だ読み出されていないデータ1が存在する。よって、架空のレジスタ群60の上から2番目の領域に格納されているデータ♯1を実際のレジスタ群40A(左)の上から2番目に格納することはできない。
ACS演算部31では、このようなときに、1サイクル目でデータが読み出されたレジスタ群40A(左)の空領域にパスメトリック演算器51Aから出力されるデータを格納する。この状態がレジスタ群40A(中)に描かれた状態である。
続いて、ACS演算部31は、2サイクル目で残りの32状態のパスメトリックを計算する。2サイクル目ではレジスタ群40A(中)において点線矢印が付された領域からデータが読み出され、そこから算出できる各状態のパスメトリックがパスメトリック演算器51Aによって計算される。この処理と並行して、または、この処理の後に、ACS演算部31は、レジスタ群40A(中)において、2サイクル目で読み出されたデータの格納領域が空となったことを受けて1サイクル目にパスメトリック演算器51Aによって出力されたデータの再配置を行う。
すなわち、1サイクル目にパスメトリック演算器51Aから出力されたデータは、その本来の所定の格納位置を無視してレジスタ群40A(中)に格納されている。そこで、ACS演算部31は、2サイクル目にレジスタ群40A(中)からデータが読み出されることによって空きとなった領域に対し、1サイクル目にパスメトリック演算器51Aから出力されたデータの再配置を行う。これにより、1サイクル目にパスメトリック演算器51Aから出力されたデータはレジスタ群40A(右)に示すように、本来の所定の格納位置に格納される。
また、このように、ACS演算部31が1サイクル目にパスメトリック演算器51Aから出力されたデータの再配置を行うことにより、ACS演算部31は、レジスタ群40A(右)において、2サイクル目にパスメトリック演算器51Aから出力されるデータの所定の格納位置を確保することにもなる。
(復号化部23の他の構成例(復号化部23A)の説明)
次に、図1に示す復号化部23の他の構成例を復号化部23Aとして図14を参照しながら説明する。図13の例は、順方向のACS演算処理を例として挙げ、その場合のパスメトリックの更新方法について説明した。その他に、逆方向のACS演算処理においても同様に構成することができる。
逆方向のACS演算処理を実現するためには、図14に示すように、図2に示す構成におけるACS演算部31を逆ACS演算部31Aに置き換える。また、図2におけるトレース部32もトレース方向が逆になる逆トレース部32Aに置き換える。これにより、図2の例では、トレース部32から復号化データ格納メモリ36に向かっていたデータの流れを示す矢印が、図14の例では、逆トレース部32AからCRC演算部33に向かっている。
(復号化部23Aの実態構成における動作の説明)
次に、復号化部23Aの実態構成における動作を図15を参照して説明する。図15は、逆方向のACS演算処理の場合の各時点のパスメトリック保持の様子を示すものである。動作は、図13の例と同様であるが各サイクルで計算される状態の組合せが異なる。
前記の前提と同様にビタビ復号化ではNビットのデータに対してN時点分の計算を行い、復号化データを出力するものとする。まず、受信した合計N時点分、すなわち0時点からN−1時点までのデータが受信データメモリ30に格納される。これを受けて復号化部23Aはパスメトリック格納メモリ34を初期化して逆ACS演算部31Aを起動する。逆ACS演算部31Aは受信データをN−1時点目(最終時点目)から読み出し、ブランチメトリックを演算すると共に、パスメトリック格納メモリ34からパスメトリックを読み出して逆ACS演算処理を行う。逆ACS演算処理の結果、N−1時点でのパスメトリックとパス選択情報が得られ、それぞれパスメトリック格納メモリ34とパス情報格納メモリ35に格納される。
続いて、逆ACS演算部31AはN−2時点目の受信データを読み出しブランチメトリックを演算すると共に、N−1時点目のパスメトリックを読み出し、逆ACS演算処理を行う。そして得られたN−2時点でのパスメトリックとパス選択情報を格納する。このときN−1時点目のパスメトリックはN−2時点目のパスメトリックで上書きされる。同様の処理を0時点まで行うことで、合計N時点分のパス選択情報が生成される。
合計N時点分のパス選択情報が生成されると、逆ACS演算部31Aは、パスメトリック格納メモリ35の中で最も尤度の高いパスメトリックを持つ0時点目のステートを選択する。続いて、復号化部23Aは、逆トレース部32AおよびCRC演算部33を起動する。なお、トレース部32がトレースバックを行うのに対し、逆トレース部32Aは、トレースフォワードを行う。逆トレース部32Aはパス情報格納メモリ35から0時点目のパス選択情報を取得し、0時点目における選択された最も尤度の高いパスメトリックを持つステートを始点とする経路(0時点から1時点までの経路)の情報を復号化データとして取得する。CRC演算部33は取得されたデータを入力としてCRC演算処理を開始すると共に復号化データを復号化データ格納メモリ36に格納する。
続いて、逆トレース部32Aは、0時点目の最尤ステートと0時点目の復号化データから1時点目におけるステートを算出し、1時点目のそのステートのパス情報を復号化データとして取得する。CRC演算部33も同様にデータをCRC演算部33の入力としてCRC演算処理を進める。同様の処理をN−1時点まで行う。すなわち、合計N回の経路選択を行う。ただし、CRC演算部33は情報ビット分のデータが入力された時点でCRC演算処理を終了する。また、以降の入力データはCRCの部分であるため、別に保持しておき、演算処理は行わない。以上の動作によりNビットの復号化データと演算されたCRC、復号化されたCRCが得られる。演算されたCRCと復号化されたCRCの排他的論理和をとった結果がオールゼロであれば比較結果が一致したとして復号化完了となる。また、もし、演算されたCRCと復号化されたCRCの排他的論理和をとった結果がオールゼロとならなかった場合は復号化未了として、現在のパスメトリックを引き継いで逆ACS演算処理、トレースフォワード処理、CRC演算処理を繰り返し行う。
なお、前述したように、逆トレース部32A、CRC演算部33が処理を実行している間も逆ACS演算部31Aはパスメトリック格納メモリ34に格納されているパスメトリックと受信データを用いて再度N−1時点のものから逆ACS演算処理を行い、パス情報を更新してもよい。
このような逆ACS演算処理の場合には、図15に示すように、図13と比べて処理の方向が逆方向になる。すなわち、逆ACS演算部31Aは、1サイクルで32状態のパスメトリックを計算する。1サイクル目ではレジスタ群40B(左)において実線矢印が付された領域からデータを読み出してパスメトリックを計算する。すなわち、1サイクル目においてレジスタ群40B(左)から読み出されるデータは、0、1、4、5、8、9、12、13、16、17、20、21、24、25、28、29、34、35、38、39、42、43、46、47、50、51、54、55、58、59、62、63である。また、2サイクル目ではレジスタ群40B(中)において点線矢印が付された領域からデータを読み出してパスメトリックを計算する。すなわち、2サイクル目においてレジスタ群40B(中)から読み出されるデータは、2、3、6、7、10、11、14、15、18、19、22、23、26、27、30、31、32、33、36、37、40、41、44、45、48、49、52、53、56、57、60、61である。
まず、1サイクル目ではレジスタ群40B(左)の実線矢印が付された領域からデータが読み出され、そこから算出できる各状態のパスメトリックがパスメトリック演算器51Bによって計算される。パスメトリック演算器51Bによって計算されたパスメトリックは、本来、架空のレジスタ群60Aの所定の領域に格納されるべきデータである。しかし、例えば、架空のレジスタ群60Aの上から3番目の領域に格納されているデータ♯2を実際のレジスタ群40B(左)に格納しようとすると、そこには、未だ読み出されていないデータ2が存在する。よって、架空のレジスタ群60Aの上から3番目の領域に格納されているデータ♯2を実際のレジスタ群40B(左)の上から3番目に格納することはできない。
逆ACS演算部31Aでは、このようなときに、レジスタ群40B(左)において、1サイクル目でデータが読み出された空領域にパスメトリック演算器51Bから出力されるデータを格納する。この状態がレジスタ群40B(中)に描かれた状態である。
続いて、逆ACS演算部31Aは、2サイクル目で残りの32状態のパスメトリックを計算する。2サイクル目ではレジスタ群40B(中)において点線矢印が付された領域からデータが読み出され、そこから算出できる各状態のパスメトリックがパスメトリック演算器51Bによって計算される。この処理と並行して、または、この処理の後に、逆ACS演算部31Aは、レジスタ群40B(中)において、2サイクル目で読み出されたデータの格納領域が空となったことを受けて1サイクル目にパスメトリック演算器51Bによって出力されたデータの再配置を行う。
すなわち、1サイクル目にパスメトリック演算器51Bから出力されたデータは、その本来の所定の格納位置を無視してレジスタ群40B(中)に格納されている。そこで、逆ACS演算部31Aが2サイクル目にレジスタ群40B(中)からデータが読み出されることによって空きとなった領域に対し、逆ACS演算部31Aは、1サイクル目にパスメトリック演算器51Bから出力されたデータの再配置を行う。これにより、1サイクル目にパスメトリック演算器51Bから出力されたデータはレジスタ群40B(右)に示すように、本来の所定の格納位置に格納される。
また、このように、1サイクル目にパスメトリック演算器51Bから出力されたデータの再配置を行うことにより、逆ACS演算部31Aは、レジスタ群40B(右)において、2サイクル目にパスメトリック演算器51Bから出力されるデータの所定の格納位置を確保することにもなる。
(プログラムの実施の形態)
次に、情報処理装置にインストールすることにより、その情報処理装置に、本発明の実施の形態のユーザ端末2(復号化装置)の復号化部23、23Aとしての機能を実現するプログラムの実施の形態を説明する。ここで、情報処理装置とは、例えば、汎用のコンピュータ装置であり、CPUやDSP(Digital Signal Processor)あるいはマイクロプロセッサ(マイクロコンピュータ)などが含まれる。
本実施の形態のプログラムは記録媒体に記録されることにより、情報処理装置は、この記録媒体を用いて本実施の形態のプログラムをインストールすることができる。あるいは、本実施の形態のプログラムを保持するサーバからネットワークを介して直接、情報処理装置に本実施の形態のプログラムをインストールすることもできる。
これにより、情報処理装置を用いて、ユーザ端末2の復号化部23、23Aの機能(ACS演算部31、逆ACS演算部31A、トレース部32、逆トレース部32A、CRC演算部33など)を実現することができる。なお、これ以外の機能についてもソフトウェアによって実現可能な機能については、本実施の形態のプログラムによって実現してもよい。
なお、本実施の形態のプログラムは、情報処理装置によって直接実行可能なものだけでなく、ハードディスクなどにインストールすることによって実行可能となるものも含む。また、圧縮されたり、暗号化されたりしたものも含む。
さらに、基地局1およびユーザ端末2の各部は、所定のソフトウェアにより動作する汎用のコンピュータ装置(CPU、DSP、マイクロプロセッサ(マイクロコンピュータ)など)などによって構成されてもよい。例えば、マイクロプロセッサは、メモリ、CPU、入出力ポートなどを有する。マイクロプロセッサのCPUは、メモリなどから所定のプログラムとして制御プログラムを読み込んで実行する。これにより、マイクロプロセッサには、基地局1の符号化部10、変調部11、D/A変換部12、ユーザ端末2のA/D変換部21、復調部22、復号化部23などが実現される。
なお、マイクロプロセッサが実行する制御プログラムは、基地局1またはユーザ端末2の出荷前に、マイクロプロセッサのメモリなどに記憶されたものであっても、基地局1またはユーザ端末2の出荷後に、マイクロプロセッサのメモリなどに記憶されたものであってもよい。また、制御プログラムの一部が、基地局1またはユーザ端末2の出荷後に、マイクロプロセッサのメモリなどに記憶されたものであってもよい。基地局1またはユーザ端末2の出荷後に、マイクロプロセッサのメモリなどに記憶される制御プログラムは、例えば、CD−ROMなどのコンピュータ読取可能な記録媒体に記憶されているものをインストールしたものであっても、インターネットなどの伝送媒体を介してダウンロードしたものをインストールしたものであってもよい。
(本発明の実施の形態の効果の説明)
ACS演算部31、逆ACS演算部31Aによれば、演算処理に用いるレジスタ群40、40A、40Bなどの記憶領域を削減することができる。さらに、メモリが読出側と書込側とに分かれていないことにより、読出側と書込側とを切替える必要がないため制御が簡易になる。
(変形例)
本発明の実施の形態は、その要旨を逸脱しない範囲で様々に変更が可能である。例えば、図1では、基地局1とユーザ端末2とを例示し、その間を無線回線によって接続した。しかしながら図1の無線回線を有線回線に置き換えても本発明の実施の形態の要旨を逸脱しない。さらに、基地局1とユーザ端末2とを例示したが、基地局1をあらゆる種類の符号化装置に置き換え、ユーザ端末2をあらゆる種類の復号化装置に置き換えてもよい。
また、3GPP−LTEの符号化方式および復号化方式を例として説明したが、符号化方式や復号化方式については様々な方式が適用できる。
また、メモリの例としてレジスタを説明したが、メモリの種類は、あらゆる種類とすることができる。
また、本発明の実施の形態では、復号化装置においてビタビ復号化を行うためのレジスタの構成方法および制御方法を前提として説明した。しかしながら、1つのメモリを用いて、演算前のデータと演算後のデータを時分割的に格納する手法については、復号化装置の分野に限らずに、あらゆる分野に適用可能である。例えば、一般的なコンピュータ装置(演算装置)において、1つのメモリから一部の計算処理前のデータを読み出して計算を行い、その計算結果のデータを再びメモリの空領域に格納する。そして、残りの計算処理前のデータを読み出して計算を行い、メモリに既に格納されているデータの再配置を行い、残りの計算結果のデータを再びメモリに戻すといったことにも利用できる。
本発明の実施の形態に係る復号化装置としてのユーザ端末の構成を示す図であり、併せて符号化装置としての基地局を示す図である。 図1に示すユーザ端末内の復号化部のブロック構成図である。 図2に示す復号化部内のACS演算部の簡略化された要部構成図である。 図2に示す復号化部内のACS演算部の動作においてステップS1を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS2を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS3を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS4を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS5を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS6を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS7を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS8を示す図である。 図2に示す復号化部内のACS演算部の動作においてステップS9を示す図である。 図2に示す復号化部内のACS演算部の実態構成およびその動作を説明するための図である。 図1に示すユーザ端末内の復号化部の他の構成例を示すブロック構成図である。 図14に示す復号化部内の逆ACS演算部の実態構成およびその動作を説明するための図である。 従来の復号化部の要部構成図である。 従来の復号化部の動作においてステップS10を示す図である。 従来の復号化部の動作においてステップS11を示す図である。 従来の復号化部の動作においてステップS12を示す図である。 従来の復号化部の動作においてステップS13を示す図である。 従来の復号化部の動作においてステップS14を示す図である。 従来の復号化部の動作においてステップS15を示す図である。
符号の説明
1…基地局、2…ユーザ端末(演算装置)、10…符号化部、11…変調部、12…D/A変換部、13…送信アンテナ、20…受信アンテナ、21…A/D変換部、22…復調部、23、23A…復号化部(メモリ、制御手段)、30…受信データメモリ、31…ACS演算部(制御手段)、31A…逆ACS演算部(制御手段)、32…トレース部、32A…逆トレース部、33…CRC演算部、34…パスメトリック格納メモリ、35…パス情報格納メモリ、36…復号化データ格納メモリ、40、40A、40B…レジスタ群(メモリ)、50、50A、50B、102…ブランチメトリック演算器、51、51A、51B、103…パスメトリック演算器、60、60A…架空のレジスタ群、100…読出側レジスタ群、101…書込側レジスタ群

Claims (7)

  1. 複数の演算前データが複数の所定の領域にそれぞれ格納されるメモリと、
    このメモリから読み出された上記演算前データを演算処理した演算後データを上記メモリの複数の所定の領域にそれぞれ格納する制御手段と、
    を備えることを特徴とする演算装置。
  2. 請求項1記載の演算装置において、
    前記制御手段は、
    前記メモリから前記演算前データの一部を読み出す処理と、
    前記メモリから読み出した前記演算前データの一部に対して演算処理を施した前記演算後データの一部を、前記メモリにおいて前記演算前データの一部が読み出されて空き状態となった領域に、当該演算後データの本来の格納位置に関わらず格納する処理と、
    前記メモリから前記演算前データの残りを読み出す処理と、
    前記演算前データの残りが読み出されて空き状態となった領域に対し、前記演算後データの一部がその本来の格納位置となるように移動する処理と、
    前記メモリから読み出した前記演算前データの残りに対して演算処理した演算後データの残りを、前記メモリにおける当該演算後データの本来の格納位置に格納する処理と、
    を実行する、
    ことを特徴とする演算装置。
  3. ビタビ復号化処理におけるN(Nは0以上の整数)時点の状態を表す複数のデータが複数の所定の領域にそれぞれ格納されるメモリと、
    このメモリから読み出された上記N時点の状態を表す複数のデータに対して所定の演算処理を施したN+1時点またはN−1時点の状態を表す複数のデータを上記メモリの複数の所定の領域にそれぞれ格納する制御手段と、
    を備えることを特徴とする復号化装置。
  4. 請求項3記載の復号化装置において、
    前記制御手段は、
    前記メモリから前記N時点の状態を表す複数のデータの一部を読み出す処理と、
    前記メモリから読み出した前記N時点の状態を表す複数のデータの一部に対して前記所定の演算処理を施したN+1時点またはN−1時点の状態を表す複数のデータの一部を、前記メモリにおいて前記N時点の状態を表す複数のデータの一部が読み出されて空き状態となった領域に、当該N+1時点またはN−1時点の状態を表す複数のデータの本来の格納位置に関わらず格納する処理と、
    前記メモリから前記N時点の状態を表す複数のデータの残りを読み出す処理と、
    前記N時点の状態を表す複数のデータの残りが読み出されて空き状態となった領域に対し、前記N+1時点またはN−1時点の状態を表す複数のデータの一部がその本来の格納位置となるように移動する処理と、
    前記メモリから読み出した前記N時点の状態を表す複数のデータの残りに対して前記所定の演算処理を施した前記N+1時点またはN−1時点の状態を表す複数のデータの残りを、前記メモリにおける当該N+1時点またはN−1時点の状態を表す複数のデータの本来の格納位置に格納する処理と、
    を実行する、
    ことを特徴とする復号化装置。
  5. 演算装置が行うメモリ制御方法において、
    複数の演算前データがそれぞれ複数の所定の領域に格納されるメモリから読み出された上記演算前データを演算処理した演算後データを、上記メモリの複数の所定の領域にそれぞれ格納するステップを有する、
    ことを特徴とするメモリ制御方法。
  6. 請求項5記載のメモリ制御方法において、
    前記メモリから前記演算前データの一部を読み出すステップと、
    前記メモリから読み出した前記演算前データの一部に対して演算処理した演算後データの一部を、前記メモリにおいて前記演算前データの一部が読み出されて空き状態となった領域に、当該演算後データの本来の格納位置に関わらず格納するステップと、
    前記メモリから前記演算前データの残りを読み出すステップと、
    前記演算前データの残りが読み出されて空き状態となった領域に対し、前記演算後データの一部がその本来の格納位置となるように移動するステップと、
    前記メモリから読み出した前記演算前データの残りに対して演算処理した演算後データの残りを、前記メモリにおける当該演算後データの本来の格納位置に格納するステップと、
    を有する、
    ことを特徴とするメモリ制御方法。
  7. 情報処理装置にインストールすることにより、その情報処理装置に、請求項1または2記載の演算装置の機能を実現することを特徴とするプログラム。
JP2008307680A 2008-12-02 2008-12-02 演算装置、復号化装置およびメモリ制御方法ならびにプログラム Expired - Fee Related JP5196567B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008307680A JP5196567B2 (ja) 2008-12-02 2008-12-02 演算装置、復号化装置およびメモリ制御方法ならびにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008307680A JP5196567B2 (ja) 2008-12-02 2008-12-02 演算装置、復号化装置およびメモリ制御方法ならびにプログラム

Publications (2)

Publication Number Publication Date
JP2010135918A true JP2010135918A (ja) 2010-06-17
JP5196567B2 JP5196567B2 (ja) 2013-05-15

Family

ID=42346783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008307680A Expired - Fee Related JP5196567B2 (ja) 2008-12-02 2008-12-02 演算装置、復号化装置およびメモリ制御方法ならびにプログラム

Country Status (1)

Country Link
JP (1) JP5196567B2 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07221655A (ja) * 1993-12-22 1995-08-18 At & T Corp 通信システムおよび情報処理方法
JPH07336240A (ja) * 1994-06-07 1995-12-22 Japan Radio Co Ltd ビタビ復号器
JPH0951278A (ja) * 1995-08-08 1997-02-18 Toshiba Corp ビタビ復号器
JP2001243021A (ja) * 2000-02-29 2001-09-07 Toshiba Corp ランダムディスクライトに好適なディスク制御機構
JP2001313572A (ja) * 2000-03-02 2001-11-09 Infineon Technologies Ag Viterbiデコーダにおけるパス・メトリックの記憶方法
JP2005503058A (ja) * 2001-09-06 2005-01-27 インターディジタル テクノロジー コーポレイション 最大事後確率(map)復号器のためのパイプラインアーキテクチャ
JP2008182442A (ja) * 2007-01-24 2008-08-07 Sony Corp 復号装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07221655A (ja) * 1993-12-22 1995-08-18 At & T Corp 通信システムおよび情報処理方法
JPH07336240A (ja) * 1994-06-07 1995-12-22 Japan Radio Co Ltd ビタビ復号器
JPH0951278A (ja) * 1995-08-08 1997-02-18 Toshiba Corp ビタビ復号器
JP2001243021A (ja) * 2000-02-29 2001-09-07 Toshiba Corp ランダムディスクライトに好適なディスク制御機構
JP2001313572A (ja) * 2000-03-02 2001-11-09 Infineon Technologies Ag Viterbiデコーダにおけるパス・メトリックの記憶方法
JP2005503058A (ja) * 2001-09-06 2005-01-27 インターディジタル テクノロジー コーポレイション 最大事後確率(map)復号器のためのパイプラインアーキテクチャ
JP2008182442A (ja) * 2007-01-24 2008-08-07 Sony Corp 復号装置

Also Published As

Publication number Publication date
JP5196567B2 (ja) 2013-05-15

Similar Documents

Publication Publication Date Title
JP3604955B2 (ja) 畳込み復号装置
KR101175826B1 (ko) 소프트웨어 정의 무선 시스템에서 비터비 복호 장치 및 방법
KR100963463B1 (ko) 낮은 프레임 에러 레이트를 위한 개선된 터보 코드인터리버
JP2005045727A (ja) ビタビ復号器
KR20030036845A (ko) 트렐리스에 기초한 채널 부호화를 위한 복호기
ES2225647T3 (es) Turbo descodificador con comparacion de codigo de firma para redundancia circular.
US8055986B2 (en) Viterbi decoder and method thereof
US11063614B1 (en) Polar decoder processor
JP2008118327A (ja) ビタビ復号方法
JP5169771B2 (ja) 復号器および復号方法
JP4815228B2 (ja) ビタビ復号回路および無線機
CA2198194A1 (en) Viterbi decoding method and viterbi decoding circuit
JP2009246474A (ja) ターボデコーダ
JP5196567B2 (ja) 演算装置、復号化装置およびメモリ制御方法ならびにプログラム
US6324504B1 (en) System and method for bit interleaving of full-rate speech data
CN1787386A (zh) 一种维特比译码器路径度量存储的方法
US8644432B2 (en) Viterbi decoder for decoding convolutionally encoded data stream
CN110022158B (zh) 一种译码方法及装置
JP5177882B2 (ja) 復号化装置および復号化方法ならびにプログラム
JP3628013B2 (ja) 信号送信装置および符号化装置
JP4116554B2 (ja) 無線通信のためのターボ復号方法および装置
FI112711B (fi) Menetelmä ja laite muistinhallintaan digitaalisessa tiedonsiirrossa
KR19990016432A (ko) 비터비 알고리즘을 적용하는 복호 과정에서의 생존 경로 역추적 방법 및 그 장치
JPH10209882A (ja) ビタビ復号方法
JPWO2018163369A1 (ja) 復号装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121203

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130201

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

Free format text: PAYMENT UNTIL: 20160215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees