JP2003347927A - 再構成可能なハードウェアにおけるデータ処理回路およびその方法 - Google Patents

再構成可能なハードウェアにおけるデータ処理回路およびその方法

Info

Publication number
JP2003347927A
JP2003347927A JP2002152847A JP2002152847A JP2003347927A JP 2003347927 A JP2003347927 A JP 2003347927A JP 2002152847 A JP2002152847 A JP 2002152847A JP 2002152847 A JP2002152847 A JP 2002152847A JP 2003347927 A JP2003347927 A JP 2003347927A
Authority
JP
Japan
Prior art keywords
data
circuit
data processing
compressor
decompressor
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.)
Pending
Application number
JP2002152847A
Other languages
English (en)
Inventor
Hideyuki Tsuboi
秀幸 坪井
Tsunemichi Shiozawa
恒道 塩澤
Minoru Inamori
稔 稲森
Yoshiki Nakane
良樹 中根
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2002152847A priority Critical patent/JP2003347927A/ja
Publication of JP2003347927A publication Critical patent/JP2003347927A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Logic Circuits (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】 【課題】入出力データの容量抑制が可能であり、高速な
入出力動作を行うことが可能であり、圧縮・伸長器など
が必要な位置に自在に実現でき、ハードウェア・リソー
スを有効に活用できるデータ処理回路を提供する。 【解決手段】回路の構成情報1を矢印(データの流れ)
に従って圧縮器2へ入れる。この圧縮器2を介して圧縮
したデータの量は少ない容量になる。コンパクトにでき
た圧縮データは、その次の矢印に示すデータの流れに従
って圧縮データ3をして格納される。一方、圧縮器2の
代りに伸張器を置き換えると、矢印を逆に向けた流れと
なり、内部の圧縮データ3が伸張器により回路の構成情
報1に復元され、さらに次の処理を行うことができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ハードウェアによ
り様々なデータ処理を行う回路に関し、特に入出力デー
タの容量抑制、高速な入出力動作をするデータ処理回路
の実現が可能な再構成可能なハードウェアにおけるデー
タ処理回路に関する。なお、回路の構成情報を処理する
データにする場合には、再構成可能なハードウェア(R
H: Reconfigurable Hardware )というタイプの集積
回路に適用することもできる。RHには、FPGA( F
ield Programmable Gate Array ),CPLD( Comple
x Programmable Logic Device ),PCA( Plastic C
ell Architecture )などがある。また、本技術を一般
的なデータの処理に対して用いるようにすれば、汎用的
な/信号処理プロセッサ(MPU: Micro ProcessingU
nit/DSP: Digital Signal Processor )をはじ
め、特定の機能を持つ集積回路(ASIC: Applicati
on Specific Integrated Circuit )にも適用できる。
【0002】
【従来の技術】まず、従来のRHの利用例について述べ
る。図7は、RHにユーザが回路を再構成する従来例1
を示した図である。図7を従来例1としてRHの回路プ
ログラムについて述べる。まず、ユーザは外部から最初
の構成情報Da’を再構成可能なハードウェア(以下、
RH)に入力する。構成情報Da’はデータの流れ
(1)に従い、1つ目の回路A’9が実現される。ある
間に、この実現された回路A’9が動作して信号の処理
が行われる。その後、別の動作の信号処理が必要になる
と、次にユーザは構成情報Db’をRHに入力し,デー
タの流れ(2)に従い、回路B’9が実現される。さら
に別の機能が必要になれば、上記のような手続を繰返し
たり、元の回路A’に戻すにも同様にRHの外部から構
成情報Da’を入力したりする必要がある。
【0003】図8は、従来のRHの利用例(複製機能)
である従来例2を示した図である。図8では、RHの一
部に既に再構成された回路C’10などがあり、これを
別の場所に同じ回路D’11を実現する例である。RH
での回路複製機能について述べる。回路C’10から回
路の構成情報が図中の矢印に示すデータの流れのように
回路D’の位置へ運ばれ、回路D’11が実現されるこ
とを示している。この従来例2のRHの一例として、P
CAの上で回路を複製する機能に関しては、特開平11
−167556号公報(特願平9−332737号)
“論理回路の動的な構成方法”にも述べられている。
【0004】また、下記に挙げる(イ)(ロ)の参考文
献にも取り上げられており、さらに(ハ)の参考文献
(研究会資料)においては詳細な説明がされている。 (イ) 中田 広 , 伊藤 秀之 , 小西 隆介 : "
完全非同期回路によるPCA ハードウェアの設計・評価
," NTT R&D, Vol. 49, No. 9, pp. 518-526, Sep. 20
00. (ロ) 塩澤 恒道 , 永見 康一 , Norbert Imlig
, 小西 隆介 : " PCA アプリケーションと設計環境
," NTT R&D, Vol. 49, No. 9, pp. 527-536, Sep. 20
00. (ハ) 小西 隆介 , 伊藤 秀之 , 中田 広 ,
塩澤 恒道 , 稲森稔 , 名古屋 彰 : " 非同期式
動的再構成可能 LSI による自己複製回路 ,"電子情報通
信学会技術研究報告 , VLD2000-79, ICD2000-136, FTS
2000-44, pp.59-64, Nov. 2000.
【0005】なお、回路構成情報を圧縮する機構を持つ
FPGAと圧縮方法としては、例えば、特開2001-
28536公報“プログラマブル論理回路装置,情報処
理システム,プログラマブル論理回路装置への回路の再
構成方法,プログラマブル論理回路装置用の回路情報圧
縮方法”(以下、従来例3)に記載されている。上記公
報には、プログラマブル論理回路装置に、回路情報記憶
手段と、この記憶手段に記憶された回路情報を用いて指
定された回路の回路情報を生成する回路情報編集手段と
を設け、回路情報記憶手段には、複数個の回路の回路情
報を圧縮した状態で格納するものである。
【0006】
【発明が解決しようとする課題】従来の技術では、必要
な時には態々RHの外部から構成情報を入力する必要が
あった(従来例1)。あるいは、従来例2に示したよう
にRHの内部に回路C’10を保持しておき、その回路
C’10を複製するなどの処理をしなければならなかっ
た。外部からの構成情報などのデータを入力する場合
(あるいは、出力する場合も同じである)においては、
通常、集積回路等の内部処理速度に比較すると遅いとい
うような不利な点があるとされている。また一方で、あ
る回路10を内部に保持した従来例2は、処理速度の面
では有利であるものの、回路C’の保持に必要となる余
分な面積的な容量,領域的に十分なオーバヘッドを見込
んでおくことが必要となる。
【0007】上記従来例3では、論理回路を実現するプ
ログラム論理回路部と回路情報入力制御部とが別々の機
構であり、また回路情報入力制御部に圧縮する機構が含
まれている。さらに、回路記憶部という専用の格納エリ
アも具備している。従って、固定的なそれぞれ個別部分
には、これを利用する際に制限を受けるとともに、柔軟
性に欠ける、という問題点がある。また、別の用途に利
用することもできないという問題点もある。
【0008】そこで、本発明の目的は、これら従来の課
題を解決し、入出力データの容量抑制が可能であり、高
速な入出力動作を行うことが可能であり、圧縮・伸長器
などが必要な位置に自在に実現でき、ハードウェア・リ
ソースを有効に活用できるデータ処理回路を提供するこ
とにある。
【0009】
【課題を解決するための手段】上記目的を達成するた
め、本願の第1の発明は、RHの内部に圧縮(符号)器
を持たせるものである。内部の圧縮(符号)器により、
RH上に実現する回路の構成情報を圧縮(符号)器でコ
ンパクトにして、その圧縮(符号)データを保持し、ま
た取り扱う。図1は、圧縮器2を用いて回路の構成情報
1をコンパクトにした圧縮データ3を格納する状態を示
している。すなわち、図1のデータ処理回路は、様々な
データの処理に介在する圧縮器2あるいは符号器を、上
記データ処理回路内に内包して具備するものである。回
路1は、レジスタ、論理ゲート、スイッチ等で構成され
た回路であって、任意の論理回路が想定される。(請求
項1,4,6,12に対応)
【0010】回路の構成情報1を、最初の矢印に示すデ
ータの流れに従い圧縮器2へ入れる。この圧縮器2を介
して圧縮したデータの量は少ない容量になる。このコン
パクトにできた圧縮データは、その次の矢印に示すデー
タの流れに従い圧縮データ3として格納される。これに
より、RHの上では、回路よりも面積的に小さな領域に
圧縮データ3が収められる。このために、様々な回路を
次々に動的に再構成しながらデータ処理を行う用途にお
いて、RHの限られたリソース全体をより有効に活用す
ることが可能になる。圧縮器2から圧縮データ3へのデ
ータの流れは、回路1から圧縮器2へのデータの流れよ
りも低速である。この速度に差がある性質を効果的に活
用すれば、外部に圧縮データ3を取り出す場合には、内
部の処理速度を高速に保持して出力(インタフェース)
処理速度を抑制できる。
【0011】第2の発明は、RHの内部に伸張(解凍/
復号)器4を持たせるものである。この伸張(解凍/復
号)器4により、上記の圧縮(符号)器2で処理された
り、外部から入力されたりした圧縮(符号)データ3を
処理する回路を実現する。図2においては、回路構成情
報の伸張は、圧縮データ3から伸張器4を介して回路1
を実現する状況を示している。
【0012】図1で格納された圧縮データ3を、矢印の
データの流れに従い伸張器4へ入力する。この伸張器4
を介して圧縮データは回路の構成情報1に戻り、この構
成情報は次の矢印で示すデータの流れに従い、回路1が
実現(復元)される。この様に、回路が占める領域より
も狭い領域に格納された圧縮データ3と伸張器4を用い
ることで、必要な時に回路1を実現(復元)させること
ができ、RHの面積的に限られた領域をこれまでよりも
有効に使用することができる。また、圧縮とは逆の伸張
の過程では、圧縮データ3から伸張器4までのデータの
流れは、その伸張器4から回路の構成情報を送る流れに
おける速度に比べ相対的に低速となる。従って、外部か
ら圧縮データをRHに入力して、RHの内部の伸張器4
を介して回路1を実現する場合、外部入力の速度が低速
な状況でも、回路1は高速に実現できる、というメリッ
トが生まれる。(請求項2,5,7,8,13に対応)
【0013】本願の第3の発明は、圧縮(符号)と伸張
(解凍/復号)と、さらに必要ならばこれらに関連する
圧縮(符号)データとを、RHに内包して具備する。こ
の第3の発明により、RHに限られたリソース内で、必
要に応じて自在かつ柔軟に次々と異なる回路をRHに実
現できる。この手法による回路実現の形態は、従来のR
Hに比べて外部とのやり取りに掛かる速度の課題を軽減
したり、解消したりすることができると同時に、RHの
領域的な面積の利用効率も高くすることができ、RHシ
ステム全体のサイズを小さく抑える効果も生じる。(請
求項3,9,10,11に対応)なお、第1、第2、第
3の発明においては、圧縮器や伸張器なその他の回路自
体をプログラムして実現するものであり、従って、圧縮
や伸張やその他の回路を任意の位置に移したり、不要な
時には消去して、別の機能を上書きするなど、自在に扱
うことが可能である。
【0014】
【発明の実施の形態】以下、本発明の実施形態ならびに
実施例を、図面により詳細に説明する。 (第1の実施形態)図3は、本発明の第1の実施形態を
示す圧縮の利用例(外部退避)の説明図である。図3で
は、まず、RH上で、回路A1からデータの流れ(1)
の矢印に従い圧縮器2へ、回路の構成情報が入力され
る。次にその回路A1の構成情報は圧縮器2によって圧
縮データDaに変換される。このとき、圧縮データはデ
ータの流れ(2)の矢印に従い、圧縮器2からRHの外
部へ圧縮データDaが出力される。図3において、2つ
のデータの流れ(1)と(2)のデータ量およびその速
度を比較すると、データの流れ(1)のデータ量は回路
A1の構成情報そのままであるため多量かつ高速であ
る。一方、同じ回路A1のデータの流れ(1)に対し
て、データの流れ(2)のデータ量は回路A1の構成情
報が圧縮され、その圧縮データDaは少量でかつ低速で
扱われる。このことから、外部出力インタフェースが低
速で圧縮データDaを扱う時も、内部の圧縮処理は高速
に動作しており、結果的に回路A1の構成情報を高速に
外部退避させることができる。
【0015】(第2の実施形態)図4は、本発明の第2
の実施形態を示す伸張の利用例(プログラム)の説明図
である。第1の実施形態の圧縮器2の代わりに伸張器4
をRHの内部に持つ第2の実施形態は、図4に示すよう
に伸張の利用例(プログラム)を示している。第1の実
施形態において、外部に退避した圧縮データDa,また
はソフトウェアにより意図的に同じデータを作成しても
良いが、そのデータDa(回路A1の構成情報に変わ
る)をRHに入力する。RHの内部の伸張器4へ、圧縮
データDaが矢印で示すデータの流れ(1)に従って入
力する。この伸張器4では、圧縮データDaが伸張さ
れ、回路A1の構成情報に変換される。変換された構成
情報は、その次の(右側の)矢印で示すデータの流れ
(2)に従い回路A1の位置で実現される。
【0016】ここまで述べた中の2つのデータの流れ
(1)と(2)の関係は、前記第1の実施例とは逆に、
データの流れ(1)に比べて、データの流れ(2)では
データ量は多く、かつ高速である。従って、圧縮データ
Daを入力する所のインタフェースが低速な処理しか扱
えなくとも、RH内部に伸張器4を持つならば、この伸
張器4を介することで、回路A1を高速に実現できる。
【0017】(第3の実施形態)図5は、本発明の第3
の実施形態を示す異なる回路伸張の利用例の説明図であ
る。第2の実施形態のように、伸張器4をRHの内部に
持つ場合でも、これにさらに加えて複数の圧縮データ
7,8を内部に持つ別のケースとなる第3の実施形態を
図5に示している。図5では、1つの伸張器4と、圧縮
データDa7と圧縮データDa8の2つの異なる圧縮デ
ータがRH内にある。これは、第2の実施例の外部に位
置した圧縮データDaがRH内にあると考えればよい。
2つの異なる圧縮データ7,8があるが、順番に圧縮デ
ータDaは伸張器4を介して、データの流れ(a)に従
い、回路A5が実現(復元)される。また、圧縮データ
Dbも同じ伸張器4を介し、データの流れ(b)に従
い、回路B5が実現される。
【0018】ここで回路A5と回路B5は、RHの同じ
位置の領域(全く同じ領域である必然性はなく、回路A
とBで占める領域の一部分が一致しても良い)を使用で
きる。つまり、実現する時間を異にすることで、RHの
同じリソースを回路AとBは共有し、有効に利用でき
る。また、回路Aを復元する処理速度は、これまで説明
したように、外部とのインタフェースを一切介さないた
め、第2の実施例の圧縮データDaをRHの外部から入
力する場合よりもさらに高速にできる。
【0019】さらに、回路Aに外部入力信号,外部出力
信号,内部入出力信号の全部またはどれか部分的にでも
あるとき、これらの経路を当然のことであるが回路Aは
使用していることになる。一方で、回路Bが圧縮データ
Dbから実現されたときに、回路Aで使われていた外部
入力信号,外部出力信号,内部入出力信号の全部または
どれか部分的でも経路を全部または一部をそのまま使え
る。逆に、回路Bも、外部入力信号,外部出力信号,内
部入出力信号の全部或はどれか部分的にある。これらの
経路が存在するので、圧縮データDaから実現された回
路Aが、残存する経路を全部または一部をそのまま使う
ことができる。
【0020】つまり、回路Aと回路Bは、互いにRHの
同じ位置の領域を共有しているだけでなく、外部入力信
号,外部出力信号,内部入出力信号の経路も全部あるい
は一部を共有することができる。従って、回路Aと回路
Bの外部入力信号,外部出力信号,内部入出力信号の経
路を別にする必要もないし、予め回路の設計段階からそ
れらの経路も検討することはない。むしろ、この第3の
実施形態において、回路Aと一致する外部入力信号,外
部出力信号,内部入出力信号の経路を、回路Bが積極的
に活用できると考えられる。
【0021】図5では、2つの圧縮データを示した。す
なわち、圧縮データDaとDb(回路A,B)は説明の
都合により用いる順番に触れた。利用の必要に応じて、
この順番を逆にすることも可能である。また、図5で圧
縮データの数“2”も、さらに多数(複数)の圧縮デー
タを持つ場合も、RHのリソースの許す範囲内で考えら
れる。この場合には、必要に応じてそれらの圧縮データ
(復元する回路)を選択し利用することができる。
【0022】(第4の実施形態)図6は、本発明の第4
の実施形態を示す回路圧縮・伸張の利用例の説明図であ
る。図6では、第1の実施形態の圧縮器2と、第2の実
施形態の伸張器4と、さらに第3の実施形態の圧縮デー
タ7,8とを、全てRHの内部に持つ場合の実施形態で
ある回路圧縮・伸張の利用例を示している。図6には、
大きく3つのデータの流れ(1),(2),(3)が関
与している。説明が簡単な順に、図1と同様で、圧縮で
説明したデータの流れ(1)は、回路Aが圧縮器2を介
して圧縮データDa7へ格納する過程を示す。また、第
3の実施例である図5と同じ過程では、圧縮データDa
7からデータの流れ(3)に従い、順に伸張器4により
データが伸張され、回路A5になる。
【0023】さらに、上記従来例1の図7で説明した過
程のように、外部の回路構成情報Dcをデータの流れ
(2)に従いRHに入力して回路C5を実現させる。ち
なみに、上記データの流れ(1)は、データの流れ
(3)の過程とは逆になる。この3種類の過程を持つこ
とにより、回路A5を一時的にRH内に圧縮データとし
て格納し、回路C5を再構成して実現し、割り込ませる
ような形態の処理を実施し、再び回路A5を復元させる
ことが、限られたRHのリソースで高速に実行できる。
【0024】加えて、回路A5に外部入力信号,外部出
力信号,内部入出力信号の全部またはどれか部分的にで
もあるとき、これらの経路を当然のことながら回路A5
は使用することになる。一方で、外部の圧縮データDc
をRHに入力して回路C5が実現されたときに、回路A
5で使われていた外部入力信号,外部出力信号,内部入
出力信号の全部あるいはどれか部分的でも、回路C5の
経路としてそのまま使用できる。更に、回路C5を実現
した領域に、回路A5を再度実現する際にも、各入出力
信号の全部またはどれか部分的にあり、これらの経路が
あるので、圧縮データDa7から実現された回路A5
が、それらの経路の全部または一部をそのまま使用でき
る。
【0025】すなわち、回路A5と回路C5は互いにR
Hの同じ位置の領域を共有し、さらに、外部入力信号,
外部出力信号,内部入出力信号の経路も全部あるいは一
部を共有できる。従って、回路A5と回路C5の外部入
力信号,外部出力信号,内部入出力信号の経路を態々別
に設ける必要もないし、予め回路の設計段階から別の経
路設計も不要である。この第4の実施例では、積極的に
回路Aと一致できる外部入力信号,外部出力信号,内部
入出力信号の経路を回路Cが活用できる。
【0026】また、データの流れ(2)による再構成で
実現した回路C5をデータの流れ(1)と(3)に従
い、圧縮データDa7/回路A5に置換えて、圧縮デー
タDc/回路Cというように操作・制御することも自在
に実施できる。このようにすれば、次々と別の回路を一
時的にRH内部に格納しておき、必要な時には高速に回
路を復元させることも可能となる。さらに、データの流
れ(2)に伸張器(別に設けなくとも内在している同じ
伸張器を共有し利用することも可能である)4を介在さ
せれば、第2の実施形態の図4で述べたように、外部か
ら圧縮データによる回路Cの実現を高速にさせることも
できる。
【0027】あるいは、図6で、圧縮データDa7の所
に、外部から直に圧縮データDcをデータの流れ(4)に
従い、書き込むことで、回路A5が動作時でも、この書
き込みは同時並行的に実現できる。このように書き込み
をした場合には、その後にデータの流れ(1)と(3)
に従い、圧縮データDcから回路C5を再構成すること
は、RH内部のみの処理に当たることから、より高速な
実現が可能となる。
【0028】(PCAでのシミュレーション)次に、前
述の第1〜4の実施形態で用いられる圧縮器、伸張器に
関し、RHとしてPCAの場合について、その圧縮器、
伸張器の単純な原理・構成の一例を挙げ、シミュレーシ
ョンでそれらの基本的動作を説明する。なお、PCAに
ついては、下記文献で概要から詳細まで述べられてい
る。(ニ)名古屋 彰、小栗 清:‘プラスティックセ
ルアーキテキチャ(PCA)技術の概要’NTT R&D、Vol.4
9,No.9,pp.513-517,Sep.2000.(ホ)小栗 清:‘布線論
理による新しい汎用情報処理アーキテクチャPCA(1,2,
完)’bit,Vol.32,No.1,pp.27-35,Jan.,No.3,pp.54-62,M
ar.,No.7,pp.51-59,Jul.2000.
【0029】そこで、PCAは、任意の回路や情報を格
納するメモリなどオブジェクトを実現する可変部(P
P:Plastic Part)と、複数のオブジェクト間や外部と
オブジェクト間の情報を通信する組込部(BP:Built-
in Part)がある。本発明では、圧縮に関する元回路や圧
縮器・伸張器はPPでオブジェクトとして実現される。
以下、PCA上の圧縮・伸張に関し、簡単にその実現と
動作を説明する。
【0030】図17は、PCAに実現した圧縮器の画面
図であり、図18は、PCAに実現した伸張器の画面図
である。図17および図18により、データ処理に用い
るため、連長圧縮アルゴリズムをPCAに実現した圧縮
器および伸張器について、その構成を説明する。まず、
圧縮器は、組込部(BP)と可変部(PP)間のデータ
幅に従って、入力値を保持する部分、連続して同じ入力
をカウントする部分とを持ち、異なる値の入力で、保持
した値とカウントした値を出力する間の出力状態保持部
を有することを特徴としている。また、伸張器は、組込
部と可変部間のデータ幅に従って、連続する2回の入力
で最初の値を保持する部分、次の値をセットするカウン
タ、とを持ち、それぞれ1回の入力毎に入力状態を切り
替える入力状態保持部を有し、そのカウントした値を減
少させながら、保持した値を出力することを特徴として
いる。
【0031】すなわち、圧縮器および伸張器は、とも
に、まずPCAのBPとPP間でやり取りするデータの
幅に従い、連長圧縮における「コード」および「連長
数」を設定している。本願実施例に示す圧縮器および伸
張器は、前述した参考文献、特に(ニ),(イ)で取り
上げているように、試作したPCAのプロトタイプLS
IであるPCA−1で実現した。図17のPCAに実現
した圧縮器および図18のPCAに実現した伸張器につ
いて、さらに説明する。このPCA−1で圧縮器および
伸張器を実現した場合、そのBP−PP間のデータ幅は
入力・出力ともに4bitである。このような扱うデー
タの条件に従い、PCAに実現した連長圧縮における
「コード」は‘0’〜‘FF(16進数表示)’,連長
数は最大‘31’とする。また、「コード」および「連
長数」の設定に加え、一方の圧縮器については、入力値
が時間的に直前の入力値と一致する時は、出力をせず内
部カウンタを‘+1’と増加させる。直前と異なる値が
入力された時は、出力状態保持部が出力状態に切り替わ
る。そして、直前まで入力されていた値(コード)と、
内部カウンタの値(連長数)を続けて出力する。その後
は、内部カウンタをリセットし、また出力状態保持部が
入力状態に戻し、最初から同じ手続きで動作を繰り返し
ていく構成としている。
【0032】この圧縮器の内部構成で、入力値を保持す
る部分は、組込部と可変部間のデータ幅に合わせた4b
itであり、‘0’〜‘FF’(16進数表示)‘’を
保持できる。また、内部カウンタは、同じ4bitで
‘0’〜‘31’をカウントできる。他方、伸張器につ
いては、入力を連続して2回取り入れる。最初の値をバ
ッファに保持し、入力状態保持部が最初から次の状態に
切り替わる。次の値は、カウンタにセットする。この状
態のまま、このカウンタを‘−1’と減少させながら、
バッファの値を繰り返し出力する。カウンタの値が
‘0’となったならば、入力状態保持部を最初の状態に
戻し、最初から同じ手順を繰り返して動作する構成とし
ている。この伸張器の内部構成は、圧縮器と同じよう
に、最初の入力値を保持する部分が、4bitバッファ
で‘0’〜‘FF’(16進数表示)‘’を保持でき
る。また、次の値をセットする4bitカウンタも
‘0’〜‘31’をカウントできる。なお、PCAのP
Pに設計された回路の論理素子などの表記に関する説明
(例えば、分岐、andゲート、orゲート、xorゲ
ート、交差、インバータ、norゲート、セレクタな
ど)は、例えば、第6回パルテノン研究会 発表(2)
‘PCAの実現を支援するソフトウェア’小西隆介他著
を参照されたい。
【0033】(第1、第4の実施形態に関係する実施例
1)図9は、本発明の実施例1を示す圧縮器と動作の状
況の画面およびその説明図である。図9には、上記PP
の状況を示しており、PCAに実現される様々な回路の
動作をシミュレーションする画面で、ある時間が経過し
た所で回路が圧縮動作している状況である。この画面の
左上隅に1ブロック(PCAでは、このブロックをPC
Acellと名付けている)分の領域を占める回路X1
がある。その回路1の下方向に接するように4ブロック
(2×2PCAcells)分の領域に圧縮器2を配置
している。回路X1の構成情報を圧縮したデータ15
(単に、圧縮データと呼ぶこととする)は、その圧縮器
2の右隣にメモリとして置き換えられている。なお、説
明を分かり易くするため、シミュレータの画面上にまだ
回路などオブジェクトが存在していない領域に、位置の
目安となる点線で四角の枠を幾つか表示している。
【0034】さて、ここに例示した回路X1は、簡単な
圧縮動作の説明のために、ここでは僅かに1PCAce
ll分の領域を占める回路を取り扱っている。しかし、
実際には、多数のブロック分(M×NPCAcell
s,M,N:任意の数)の領域を占める回路を圧縮する
ことが有効である。また、ここで挙げている圧縮器のア
ルゴリズムは、原理・構成が単純な連長圧縮法(Run
Length Encoding)である。連長圧縮法
は、連続したデータを「コード」と「連続数」に変換す
る。この連続圧縮法に多少の工夫を加えて、様々な処理
に適用する事例が多い。この連長圧縮法を応用して画像
処理へ適用する事例については、例えば、特開2000-125
111「画像処理装置およびその方法」がある。
【0035】特に、この連長圧縮法は、ディジタル動画
像圧縮の中でも可変長符号化(Variable-Length Coding)
として最も多くの適用検討がなされている。(特許庁ホ
ームページ、技術分野別特許マップ、電気14ディジタル
動画像圧縮技術第1章特許からみた技術開発の動向1.3
ディジタル動画像圧縮技術の開発動向1.3.5 符号割り当
て(1)可変長符号化http://www.jpo.go.jp/ryutu/map/de
nki14/1/1-3-5-1.htm)ここで説明に用いる連長圧縮法の
圧縮器では、4bit幅のデータ列を扱う。従って、前
記実施例のような適用には、さらに幅の広いデータ列を
扱うようにしたり、あるいはアルゴリズムもより圧縮効
率の高い圧縮器を使うようにしたりすることも考えられ
る。
【0036】ちなみに、nbit幅のデータ列で連長圧
縮法を用いた場合の、論理的な最大圧縮率を述べる。同
じデータ(コード)が連続して2回続き入力される
と、出力が「コード」のnbitと「連続長」のnbi
tとなる。この入力と出力のサイズは、それぞれ2×
nbit,nbit+nbitであるから、最大圧縮率
は、1/2n−1(=2n/2・n)となる。つま
り、この説明に用いた圧縮器では4bit幅までしか扱
えないので、データの圧縮限界は1/8であるが、扱う
データの幅を8bitへ単に拡張することのみにより、
この圧縮率が1/128にもよくすることができる。従
って、連長圧縮法においては入力されるデータ列の各デ
ータ幅を少しでも広くすると圧縮率を急激に高く改善で
きる可能性がある。さらに、圧縮のアルゴリズムを連長
圧縮法から別の圧縮法(例えば、一般的なものには、ハ
フマン符号、算術符号化、Lempel−Ziv(L
Z)などがある。)に代えれば、一般的に連長圧縮法に
比べて圧縮率は高いと言われている。
【0037】図9は、回路の詳細な画像を示している
が、これに対応する大まかな可変部(PP)のようすを
示したものが、図10である。
【0038】図10は、圧縮動作の概略を示す画面およ
び説明図である。図10は、図9と同様に、左上隅から
順に回路1、この下に接して圧縮器2、さらに右隣に圧
縮データ15となっている。圧縮データ15は、回路X
1(この領域は1ブロック分、すなわち、1PCAce
ll)の構成情報を圧縮したものであり、ここでは回路
X1と圧縮器2の場合には、シミュレータ画面のほぼ中
央に点線で示す小さな四角よりも小さな領域に収まって
いる。以上、図9と図10では、回路の構成情報を圧縮
する動作を途中の状況で、PCAのPPを説明した。
【0039】図11は、圧縮データの流れを示す画面お
よび説明図である。この図11はPCAのBPを示して
おり、同じ圧縮動作を行っているシミュレータの画面で
ある。PPの各ブロックに対応するBPでの同じ場所を
分かるように、シミュレータ画面上に四角の枠を描いて
いる。実線の四角の枠で左上隅は、回路X1がPPに実
現されている対応したBPの位置を示している。その下
側に接する実線の大きな四角の枠は、PPにある圧縮器
に位置および領域が対応しているBPである。この右隣
に点線の四角に圧縮データが書き込まれるPPに対応す
るBPを示す。なお、以降で、伸張の説明に関するオブ
ジェクトがPPに作られる領域に対応するBPにも幾つ
かの点線の四角の枠を描いてある。
【0040】図11に示すPCAのBPでは、圧縮デー
タの流れ16を確認することができる。回路X1の部分
では、自身の回路の構成情報が可変部(PP)から読み
出され、下側の圧縮器2のあるBPへの経路に沿って回
路の構成情報が一連のデータ列となって流れている。こ
の画面では、丁度、回路X1と圧縮器2の間となるBP
の経路上に一連の回路構成情報の一端となるデータ
‘8’(16進数で表示されている)が示されている。
そして、圧縮器2のあるPPへ一旦入り、圧縮されたデ
ータがPPからBPへ出てきて、次に右隣となる圧縮デ
ータ15を書き込む領域まで圧縮されたデータが流れて
いる。丁度、画面には圧縮器2と圧縮データ15が書き
込まれる領域間となるBPの経路上に一連の圧縮された
データの一部となるデータの‘c’(これも16進数で
表示)が示してある。
【0041】これらPPの回路から読み出される構成情
報と、圧縮器により圧縮された後のデータの流れについ
て、両者のデータ量と速度の比較をする。前者(回路か
ら読み出される構成情報)のデータ量は正に1PCAc
ell分(4bit×1024words)であり、後
者(圧縮された後のデータ)は圧縮されているので、そ
のデータ量は1PCAcell分に満たない。このた
め、前者は後者に比べてデータ量は多い。そして、両者
は、圧縮処理の開始と終了の間に異なるデータ量の入力
と出力として同じ圧縮器で扱われるので、速度に関して
前者は後者よりも高速である。以上で、PCA上で簡単
な圧縮の実現の事例を説明した。このような圧縮器をさ
らに効率的な圧縮能力のある回路を採用して発展的に応
用することで、図1の手法適用や図3のような第1の実
施形態(外部退避)を可能にできる。
【0042】発展的な応用例を具体的に述べると、PC
AはBPに設定する経路を通じて外部端子ともデータの
入出力を行う。従って、このPCAでの説明では、圧縮
(符号)器の出力が、この圧縮(符号)器の隣にあるP
Pの領域をメモリとして格納されている。このメモリに
当たる箇所を、単に外部端子に置き換えて、PCAのB
Pに設定する経路を通じ外部端子からデータを入力する
ことで、図3に示すような第1の実施形態(外部退避)
が実現されるのである。つまり、単純に圧縮(符号)器
をPCAの外部端子に隣接させて設けたり、あるいは圧
縮(符号)器の出力からPCAの外部端子までの経路を
長く伸ばすなどしてBPに設定したりすれば良いのであ
る。
【0043】(第2、第3、第4の実施形態に関係する
実施例2)図12は、本発明の実施例2を示すPCA上
の伸張前の準備の画面および説明図である。圧縮したデ
ータから回路1と同じ回路を復元する伸張について述べ
る前に、圧縮データを格納している領域が1PCAce
llに満たないため、正に1PCAcellにして伸張
の段階で扱い易いように残る領域に無意味な書き込みを
行う。また、この圧縮データを格納する1PCAcel
lで残りの領域へは既にBP上に圧縮器からの経路が設
定されたままになっている。そこで、一旦圧縮器のBP
とPPとの入出力に当たる位置に通過器18を置く。こ
の通過器18は、入力されたデータを何も変化させずに
そのまま出力する回路である。
【0044】図12のデータ補充動作では、外部から無
意味なデータを注入17し、通過器18を介して圧縮デ
ータの格納している1PCAcellの残る領域へ補充
している様子19を示している。図12に示すPCAの
BPのシミュレータ画面には、左端の最上段に位置する
外部入力から通過器18までの間に、BPの経路が設定
され、その経路上に無意味なデータとなる一端の‘6’
(16進数表示されたデータ)が外部から注入されてい
る。また、通過器18から圧縮データを格納する領域へ
のデータの補充については、通過器18からその圧縮デ
ータを格納している領域までの間のBPの経路上に、通
過器18を介して送られているデータ、つまり圧縮デー
タの格納で残る領域を補充するデータ19が確認でき
る。このデータ19は、図12では通過器18と圧縮デ
ータの格納する領域とのBP上の経路にある‘7’(こ
れも16進数表示)である。
【0045】このように、通過器18を介して外部から
無意味なデータ「コード」を任意の量(領域の残りの分
のデータ列の長さ)を注入することにより、この後に説
明する伸張のための圧縮データの活用が(1PCAce
ll単位の読み出し操作で済ませることで可能となり)
簡便にできる。なお、ここで説明した伸張前の準備は、
シミュレータ画面上にブロックで示される領域、つまり
1PCAcell単位の部分的な書き込みと読み出しが
実現できれば、必要はない。さらに、圧縮器と伸張器に
データ列の終わりを識別して、圧縮動作にはデータ列の
終了後には経路消去と、伸張側で圧縮されたデータが書
き込まれていない領域を読むとスキップする機能を付加
することでも、このような準備のための操作を行わなく
ても済む。
【0046】図13は、本発明の実施例2を示す圧縮デ
ータと伸張器の画面および説明図である。図13には、
圧縮したデータから、元の回路を復元する伸張、つまり
第2の実施例をPCAに適用した場合の説明に移る。ま
ず、PCAのPPに伸張器4を設ける。図13のPCA
のPPのシミュレータ画面は左上隅から順に回路X1、
この下側に接して通過器18、この通過器18は以前圧
縮器のあった領域の一部(左上1/4の範囲)に上書き
してプログラムされたものである。また、この右隣に圧
縮データを格納した領域があり、この領域は外部から無
意味なデータを補充して丁度1つのブロック(1PCA
cell)分としている。そのまた右隣のPPに伸張器
4を配置する。
【0047】ここで用いる伸張器4は、PCAのPPで
4ブロック(2×2PCAcells)の領域を占めて
おり、圧縮器と同じサイズである。ただし、圧縮器と伸
張器の内部の回路構造を細かく確認すると、圧縮器より
も伸張器が比較的小スペースであり、この伸張器の回路
設計へ更に手を加えれば、圧縮器以上にコンパクトにで
きる。ちなみに、原理的な裏付けからも、一般的に圧縮
器より伸張器の構成は単純になると言われる。図13に
示すPCAのPPであるシミュレータ画面の様子では、
伸張器4の上側に接して点線の四角の枠を描いている。
これが伸張後の回路Yが実現される領域となり、その領
域の目印に四角を置いている。
【0048】図14は、伸張動作の概略を示す画面およ
び説明図である。図14の伸張動作の概略は、前に説明
した図13のPCAのPPの状況を概略的に示してい
る。また、図14は、伸張動作を開始して、その伸張動
作の途中の段階である。従って、伸張データ42が既に
PCAのPPで回路Yの一部となり現れている。その部
分が伸張器4の上側に接する領域である。
【0049】図15は、伸張データの流れを示す画面お
よび説明図である。伸張動作の同時刻におけるPCAの
BPでの状況を説明する。図15の伸張データの流れ
が、PCAのBPでその伸張動作をシミュレーションし
ている画面である。PPに実現されている圧縮・伸張に
関する回路と、データを書き込んだ場所などに対応する
BPの位置・領域を、点線・破線・実線の四角で描いて
目印に示している。図15のシミュレーション画面で、
ほぼ真ん中に描かれている実線の小さな四角は、圧縮デ
ータ15(と補充データ)をPPに書き込んである領域
に対応したBPである。この場所でPPからBPはその
データを読み出し、右隣の伸張器4の入力位置に対応す
るBPまで経路を設定してある。この経路に沿って圧縮
データから読み出されたデータが伸張器のある側のBP
へ運ばれている様子が見て取れる。つまり、この図15
では、‘6(16進数表示のデータ)’が経路上にあ
る。
【0050】また、図15に示すPCAのBPでのシミ
ュレータ画面において、最も右側に位置する実線で描か
れた大きな四角が、PPに伸張器4が実現されている所
に対応するBPである。この四角の左上がPPの伸張器
4の入力と出力が位置するBPである。この位置から上
に接した場所へ伸張データ42が送られるために設定さ
れた経路がBPに確認できる。これら圧縮データ15か
ら読み出されたデータと、伸張器4により伸張(復元)
された後のデータの流れ16について、両者のデータ量
と速度の比較をする。前者(圧縮データ15から読み出
されたデータ)のデータ量は、後者(伸張された後のデ
ータ42)のデータ量(復元された回路の構成情報に当
たるので丁度1PCAcell分−4bit×1024
words)に比べてデータ量は少ない。ここで、圧縮
データが1PCAcell分のデータ量を満たさないた
めに、この伸張処理を前にして圧縮データに加えられた
補充データは、伸張に対して無意味である。そして、両
者は、伸張処理の開始と終了の間に異なるデータ量の入
力と出力として同じ伸張器4で扱われるので、速度に関
して前者は後者よりも低速である。
【0051】なお、図15で、左端に接している破線で
四角を描いたブロックで、黒丸の点‘.’が中央に印さ
れている所は、通過器18がPPに存在するBPの領域
を示している。この場所のBP、つまり通過器4の伸張
前の準備操作として利用し終えた後のこの場所には、P
PとBPの間の接続を切り離していない(この位置のP
Pの回路、通過器4を停止する命令をわざわざ発行して
いないので、回路が動作している状態にある)ために、
このブロック中央に黒丸の点‘.’の印が残ったままと
なっている。また、点線で描かれた四角の領域は、先の
圧縮に関係した回路のPPに対応したBPを印している
ものである。
【0052】図16は、圧縮・伸張で回路復元を行う画
面および説明図である。最後に、圧縮されたデータを伸
張することで、回路Yが生成されたPCAのPPの状況
を、図16の圧縮・伸張で回路の復元を行う。図16
は、前述の図14と同じで、シミュレータ画面のほぼ中
央の1ブロック(1PCAcell)分の領域が圧縮デ
ータ(と補充データ)を書き込んだ所である。そして、
画面の最も新側に位置する4ブロック(2×2PCAc
ells)分の範囲が伸張器4である。さらに、伸張器
4の上に接している1ブロック(1PCAcell)分
の領域が、最終的に圧縮データを伸張したデータ41を
書き込んだ場所であり、圧縮データを復元して構成した
回路Yになっている。また、図16に示すPCAのPP
において、左上隅に当る箇所が圧縮する前の元回路X1
である。この元回路X1と、圧縮データを復元した回路
Y(元回路X1から右へ3ブロック、下へ1ブロック移
動した箇所に該当する)とを比べると、回路内部の構造
が同じであることが、図16のシミュレータ画面により
確認できる。
【0053】以上で、RHとしてPCAの場合で、回路
の構成情報を圧縮し(第1の実施形態をPCAに適
用)、また、その圧縮したデータを伸張して(第2の実
施形態をPCAに適用)、元の回路と同じ構造の回路Y
を生成した。しかも、全てPCAの上でこれらの伸張動
作が実現できること(圧縮と伸張それぞれを組合せた第
3の実施形態をPCAに適用)を示した。ここで説明し
た圧縮と伸張は単純なものであるが、この伸張動作のみ
や、これらの圧縮と伸張の両方の動作を併せて発展的に
応用することで、先に挙げた図2に示す手法や、図4、
図5、図6をそれぞれに用いて説明した第2の実施形態
(外部プログラム)、第3の実施形態(異なる回路伸
張)、第4の実施形態(回路圧縮・伸張)を実現するこ
とができる。
【0054】発展的な応用について具体的な事項として
は、上述の説明で元回路X1と回路YのPCAのPPの
位置を一致させた場合が、図6に示す第4の実施形態
(回路圧縮・伸張)である。PCAのPP上で元回路X
1と回路Yの位置を一致させるためには、圧縮器や伸張
器の配置や入出力データの経路を変更することで、容易
に実現できる。ただし、回路圧縮・伸張では、図6に示
すように、元回路Aと入力回路Cの位置をわざわざ一致
させる必要性が必ずしもあるのでは無く、前記PCAで
の圧縮・伸張の説明のように位置が異なっていても構わ
ないケースもある。
【0055】また、図5に示す第3の実施形態(異なる
回路伸張)は、複数の圧縮データ(Da,Db)がある
点が、今回の説明と異なる。しかし、これらの圧縮デー
タは複数の回路から、それらの構成情報を圧縮したもの
に過ぎず、その圧縮の処理は今回のPCA上の圧縮と同
じである。だだ、この圧縮データを予め外部で同じ圧縮
アルゴリズムのプログラムを用いて準備することもあり
得る。いずれにせよ、圧縮データを複数準備しておけ
ば、その後の伸張は全く同じである。
【0056】さらに、図4に示す第2の実施形態(外部
プログラム)は、このPCA上の伸張動作で圧縮データ
をBPの経路に沿って伸張器へ流す箇所を、外部端子か
らBPに経路を設定することに代えて実現できる。実施
例1におけるPCA上の圧縮で、図3のような第1の実
施形態(外部退避)への応用に関して、BPにより外部
端子への出力データが扱えると説明した。図4に示す第
2の実施形態(外部プログラム)は、正に図3のような
第1の実施形態(外部退避)とは逆の形態に該当する。
つまり、第2の実施形態(外部プログラム)では、BP
により外部端子からの入力データを扱うのである。単純
にPCAの外部端子に隣接させて伸張(復号)器を設け
たり、あるいは、PCAの外部端子から伸張(復号器の
入力までの経路を長く伸ばしたりするなど)して、BP
に設定する。外部端子からBPへデータが入力した後、
伸張器のデータ処理は全く違いがなく、第2の実施形態
は容易に実現できる。
【0057】実施例1(PCA上の圧縮)の最後で述べ
たように、圧縮器だけでなく伸張器も併せて、さらに効
率的な圧縮・伸張能力のある回路を採用して応用する
(拡張した幅のデータに対応させたり、圧縮と伸張のア
ルゴリズム自体より良いものを選択して適用したりす
る)ことも検討する範囲である。
【0058】(従来例3との相違点)なお、本発明にお
ける従来例3との相違点について述べる。従来例3で
は、論理回路を実現するプログラム論理回路部と回路情
報入力制御部とが別々の機構であるのに対して、本発明
では、上記のような区別を設けないので、任意の回路を
実現する所と回路の圧縮や伸張する所を自由に設定でき
る点で全く異なる。また、従来例3では、回路情報入力
制御部に圧縮する機構を含んでいるのに対して、本発明
では、圧縮や伸張の機構そのものもプログラムして実現
する点で、全く異なっている。このため、圧縮や伸張す
る回路を任意の位置に移したり、不要な時には消去(別
の機能を上書き)したり、自在に扱うことができる。特
に、圧縮のためのアルゴリズムについても、用途に合わ
せて、その都度、プログラム変更し対応することができ
る。
【0059】また、従来例3では、回路記憶部という専
用の格納エリアを持っているのに対して、本発明では、
回路記憶部という格納の専用エリアを設けず、任意の位
置に一時的にでも回路構成情報やその圧縮データまたそ
の他のデータも格納することができる点で、全く異なっ
ている。また、従来例3では、回路情報を外部から回路
情報入力制御部に入力し、ここで入力された情報のコマ
ンド(3種類)を識別して、それに従って圧縮したり、
あるいはしないで、プログラマブル論理回路部内のコン
フィグレーションメモリに格納している。これに対し
て、本発明では、回路情報を入力してRH領域内に生成
された回路に格納され、その回路からのデータがRH領
域内の圧縮器で変換されて、圧縮データになり、RH内
に生成されたメモリに格納される。従って、従来例3で
は、必ずリピートフレーム(圧縮形)ノーマルフレーム
(伸張形)、リファレンスフレーム(通常形)の3種類
のデータを識別できるコマンドとともに入力されるのに
対して、本発明では、種類はなく、コマンドも不要であ
り、回路情報のみを入力すればよい。
【0060】また、従来例3では、全てハードウェアで
構成され、回路情報入力制御部、回路情報編集部、コン
フィグレーションメモリと回路素子を含むプログラマブ
ル論理回路部とを設ける必要があるのに対して、本発明
では、回路と、圧縮器と、伸張器と、メモリが、いずれ
もソフトウゥアで必要に応じて任意に生成できる。さら
に、従来例3では、データを入力してプログラマブル論
理回路装置で回路を再構成し、データを出力しないのに
対して、本発明では、圧縮器で変換された圧縮データを
外部に退避させることができる。すなわち、外部への出
力機能を有している。そして、従来例3の発明の目的
は、プログラマブル論理回路装置の再構成時間を短縮す
ることであるのに対して、本発明の目的は、入出力デー
タの容量抑制と、高速な入出力動作を可能にして、圧縮
器と伸張器を任意に実現し、ハードウェアリソースの有
効活用を図ることであり、両者は目的が異なっている。
【0061】
【発明の効果】以上説明したように、本発明によれば、
入出力データには圧縮(符号化)したデータをデータ処
理回路の内部で伸張(復号化)すること、と圧縮(符号
化)も内部ですること、そしてこれら組み合わせ(第4
の実施形態)と、様々な形態が適用できる。その結果、
入出力データの容量抑制,高速な入出力動作をするデー
タ処理回路の実現が可能になること、および、これを再
構成可能なハードウェアで回路の構成情報に当てはめる
と、回路の構成情報の読み出しや書き込み処理をこれま
でよりも小容量のデータで素早く実行できること、など
の顕著な効果を奏する。
【0062】また、発展的な適用として、特にPCAの
ように自律的かつ動的な再構成可能なハードウェアRH
内部での圧縮・伸張器は、それ自体も再構成可能な回路
として必要な時、必要な位置に自在に実現できるので、
より柔軟な応用が可能となる。また、圧縮した回路の構
成情報は、回路それ自体よりも小規模な領域に格納で
き、回路が動作する必要な時だけ伸張して復元させれば
よい。先に使用した圧縮データを消去さえしなければ、
回路が停止または待機する時には、特に改めて回路の構
成情報を圧縮させる手順をせずに済む。
【0063】さらに、本発明の適用は、単にRHの容量
(領域)の有効な活用という利点に止まらない。これま
で動作に係らず必要とされたデータを回路に入出力する
経路を、同じ領域に異なる回路を順に復元する場合、そ
のまま再利用することも可能となる。つまり、この経路
に必要なハードウェア・リソースが削減され、いままで
回路設計と同時に必要とされた入出力経路の設計も不要
にできる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態を示す回路構成情報の
圧縮の説明図である。
【図2】本発明の第2の実施形態を示す回路構成情報の
伸張の説明図である。
【図3】本発明の第1の実施形態を示す圧縮の利用例
(外部退避)の説明図である。
【図4】本発明の第2の実施形態を示す伸張の利用例
(プログラム)の説明図である。
【図5】本発明の第3の実施形態を示す異なる回路伸張
の利用例の説明図である。
【図6】本発明の第4の実施形態を示す回路圧縮・伸張
の利用例の説明図である。
【図7】従来におけるRH利用例1(プログラム)の説
明図である。
【図8】従来におけるRHの利用例2(複製機能)の説
明図である。
【図9】本発明の実施例1を示す圧縮器と動作の状況の
画面およびその説明図である。
【図10】本発明における圧縮の動作の概略原理を示す
画面およびその説明図である。
【図11】本発明における圧縮データの流れを示す画面
およびその説明図である。
【図12】本発明の実施例2を示すデータの補充動作の
画面およびその説明図である。
【図13】本発明の実施例2を示す圧縮データと伸張器
の画面およびその説明図である。
【図14】本発明における伸張動作の概略を示す画面お
よびその説明図である。
【図15】本発明における伸張データの流れを示す画面
およびその説明図である。
【図16】本発明における圧縮・伸張で回路復元を行う
画面およびその説明図である。
【図17】本発明の実施例1を示すPCAに実現した連
長圧縮器の画面図である。
【図18】本発明の実施例2を示すPCAに実現した連
長伸張器の画面図である。
【符号の説明】
1…回路(回路の構成情報)、2…圧縮器、3…圧縮デ
ータ、3…圧縮データ、4…伸張器、5…回路A/回路
B、回路A/回路C、7,8…圧縮データ(Da)(D
b)、9…回路A’/回路B’、10…回路C’、11
…回路D’、15…圧縮データ、16…データの流れ、
17…外部から補充データの注入、41…伸張データ
(回路Y)、42…伸張データ(回路Yの一部)。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 稲森 稔 東京都千代田区大手町二丁目3番1号 日 本電信電話株式会社内 (72)発明者 中根 良樹 東京都千代田区大手町二丁目3番1号 日 本電信電話株式会社内 Fターム(参考) 5J042 BA01 BA08 BA11 DA01 DA04

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 再構成可能なハードウェアにより様々な
    データの処理を行うデータ処理回路において、 上記様々なデータの処理に介在する圧縮器あるいは符号
    器を、上記データ処理回路内に内包して具備することを
    特徴とする再構成可能なハードウェアにおけるデータ処
    理回路。
  2. 【請求項2】 再構成可能なハードウェアにより様々な
    データの処理を行うデータ処理回路において、 上記様々なデータの処理に介在する伸張器、解凍器また
    は復号器を、上記データ処理回路内に内包して具備する
    ことを特徴とする再構成可能なハードウェアにおけるデ
    ータ処理回路。
  3. 【請求項3】 再構成可能なハードウェアにより様々な
    データの処理を行うデータ処理回路において、 上記様々なデータの処理には複数のデータの処理が組み
    合わさって実行され、上記各データの処理の少なくとも
    1箇所に介在する圧縮器あるいは符号器と、 かつまた、上記各データの処理の少なくとも別の1箇所
    に介在する伸張器あるいは解凍器または復号器とを、上
    記データ処理回路内に内包して具備することを特徴とす
    る再構成可能なハードウェアにおけるデータ処理回路。
  4. 【請求項4】 再構成可能なハードウェアにより様々な
    データの処理を行うデータ処理方法において、 上記再構成可能なハードウェア内の回路の構成情報を多
    量かつ高速転送により該ハードウェア内の圧縮器に入力
    し、入力された情報を該圧縮器により圧縮データに変換
    し、該変換された圧縮データを該圧縮器から少量かつ低
    速転送により外部に出力して、退避させることを特徴と
    するデータ処理方法。
  5. 【請求項5】 再構成可能なハードウェアにより様々な
    データの処理を行うデータ処理方法において、 外部に退避した圧縮データ、またはソフトウェアにより
    作成された同一データを、上記再構成可能なハードウェ
    ア内の伸張器に入力し、入力された圧縮データを該伸張
    器により伸張し、回路の構成情報に変換することを特徴
    とするデータ処理方法。
  6. 【請求項6】 再構成可能なハードウェアにより様々な
    データ処理を行うデータ処理方法において、 上記再構成可能なハードウェア内の回路の構成情報を該
    ハードウェア内の圧縮器に入力し、入力された情報を該
    圧縮器により圧縮データに変換し、該変換された圧縮デ
    ータを該ハードウェア内のメモリに格納することを特徴
    とするデータ処理方法。
  7. 【請求項7】 再構成可能なハードウェアにより様々な
    データ処理を行うデータ処理方法において、 上記再構成可能なハードウェア内のメモリに格納された
    圧縮データを、該ハードウェア内の伸張器により伸張
    し、回路の構成情報に復元することを特徴とするデータ
    処理方法。
  8. 【請求項8】 再構成可能なハードウェアにより様々な
    データ処理を行うデータ処理方法において、 上記再構成可能なハードウェア内の1つ以上のメモリに
    格納された複数の圧縮データを、1つの伸張器に任意の
    順番で転送し、該伸張器により順次回路の構成情報に復
    元することを特徴とするデータ処理方法。
  9. 【請求項9】 再構成可能なハードウェアにより様々な
    データ処理を行うデータ処理方法において、 外部に退避した圧縮データまたは外部からの回路構成情
    報を、上記再構成可能なハードウェアの回路またはメモ
    リに入力し、該回路の回路構成情報を該ハードウェア内
    の圧縮器で圧縮データに変換し、一方、該メモリ内の圧
    縮データを該ハードウェア内の伸張器で伸張して回路構
    成情報に復元することを特徴とするデータ処理方法。
  10. 【請求項10】 請求項1,2または3に記載の再構成
    可能なハードウェアによるデータ処理回路、または請求
    項4に記載のデータ処理方法において、 前記圧縮器、符号器、伸張器、復号器、または解凍器
    は、いずれもプログラムにより実現され、ハードウェア
    内の任意の位置に移され、あるいは消去されることが可
    能であることを特徴とする再構成可能なハードウェアに
    よるデータ処理回路。
  11. 【請求項11】 請求項5〜9のいずれかに記載のデー
    タ処理方法において、 前記圧縮器、伸張器またはメモリは、いずれもプログラ
    ムにより実現され、ハードウェア内の任意の位置に移さ
    れ、あるいは消去されることが可能であり、該メモリは
    専用の格納エリアを設けることなく、任意の位置に圧縮
    データまたはその他のデータを格納することが可能であ
    ることを特徴とするデータ処理方法。
  12. 【請求項12】 再構成可能なハードウェアにより様々
    なデータの処理を行うデータ処理回路において、 連長圧縮アルゴリズムをPCAに実現した圧縮器を具備
    し、 該圧縮器は、組込部と可変部間のデータ幅に従って、入
    力値を保持する部分、連続して同じ入力をカウントする
    部分とを持ち、異なる値の入力で、保持した値とカウン
    トした値を出力する間の出力状態保持部を有することを
    特徴とする再構成可能なハードウェアによるデータ処理
    回路。
  13. 【請求項13】 再構成可能なハードウェアにより様々
    なデータの処理を行うデータ処理回路において、 連長圧縮アルゴリズムをPCAに実現した伸張器を具備
    し、 該伸張器は、組込部と可変部間のデータ幅に従って、連
    続する2回の入力で最初の値を保持する部分、次の値を
    セットするカウンタとを持ち、それぞれ1回の入力毎に
    入力状態を切り替える入力状態保持部を有し、 該カウンタがカウントした値を減少させながら、該入力
    状態保持部は保持した値を出力することを特徴とする再
    構成可能なハードウェアによるデータ処理回路。
JP2002152847A 2002-05-27 2002-05-27 再構成可能なハードウェアにおけるデータ処理回路およびその方法 Pending JP2003347927A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002152847A JP2003347927A (ja) 2002-05-27 2002-05-27 再構成可能なハードウェアにおけるデータ処理回路およびその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002152847A JP2003347927A (ja) 2002-05-27 2002-05-27 再構成可能なハードウェアにおけるデータ処理回路およびその方法

Publications (1)

Publication Number Publication Date
JP2003347927A true JP2003347927A (ja) 2003-12-05

Family

ID=29770083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002152847A Pending JP2003347927A (ja) 2002-05-27 2002-05-27 再構成可能なハードウェアにおけるデータ処理回路およびその方法

Country Status (1)

Country Link
JP (1) JP2003347927A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005088840A1 (ja) * 2004-03-12 2005-09-22 Matsushita Electric Industrial Co., Ltd. 可変長符号復号装置
US8032853B2 (en) 2008-02-21 2011-10-04 Nec Corporation Configuration information writing apparatus, configuration information writing method and computer program product
US10192152B2 (en) 2016-01-07 2019-01-29 Fuji Xerox Co., Ltd. Data processing apparatus, data processing method, and non-transitory computer readable medium
CN112380799A (zh) * 2020-11-03 2021-02-19 上海安路信息科技有限公司 基于siou的微总线型dsp电路架构
CN112905324A (zh) * 2021-02-10 2021-06-04 山东英信计算机技术有限公司 一种基于电路状态的解压缩方法、系统及介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005088840A1 (ja) * 2004-03-12 2005-09-22 Matsushita Electric Industrial Co., Ltd. 可変長符号復号装置
JPWO2005088840A1 (ja) * 2004-03-12 2008-01-31 松下電器産業株式会社 可変長符号復号装置
US7683807B2 (en) 2004-03-12 2010-03-23 Panasonic Corporation Variable-length-code decoding device
JP4516068B2 (ja) * 2004-03-12 2010-08-04 パナソニック株式会社 可変長符号復号装置
US8032853B2 (en) 2008-02-21 2011-10-04 Nec Corporation Configuration information writing apparatus, configuration information writing method and computer program product
US10192152B2 (en) 2016-01-07 2019-01-29 Fuji Xerox Co., Ltd. Data processing apparatus, data processing method, and non-transitory computer readable medium
CN112380799A (zh) * 2020-11-03 2021-02-19 上海安路信息科技有限公司 基于siou的微总线型dsp电路架构
CN112905324A (zh) * 2021-02-10 2021-06-04 山东英信计算机技术有限公司 一种基于电路状态的解压缩方法、系统及介质
CN112905324B (zh) * 2021-02-10 2023-01-10 山东英信计算机技术有限公司 一种基于电路状态的解压缩方法、系统及介质

Similar Documents

Publication Publication Date Title
Li et al. Configuration compression for virtex FPGAs
JP3309028B2 (ja) 連想記憶メモリ内の複数辞書管理を改良したlempel−zivデータ圧縮のための装置、及び方法
JP3303225B2 (ja) Lempel−Zivタイプ・アルゴリズムを用いたデータ圧縮装置
US5488364A (en) Recursive data compression
US5870036A (en) Adaptive multiple dictionary data compression
US6842854B2 (en) Method programmable logic device, information processing system and method of reconfiguring circuit for sequentially processing data in blocks and temporarily storing data processed until next configuration
US6819271B2 (en) Parallel compression and decompression system and method having multiple parallel compression and decompression engines
JP3294026B2 (ja) 高速可変長復号化装置
US20020101367A1 (en) System and method for generating optimally compressed data from a plurality of data compression/decompression engines implementing different data compression algorithms
JPH0795093A (ja) 順次データ圧縮アルゴリズムを実行する装置及び方法
CN108886367A (zh) 用于压缩和解压缩数据的方法、设备和系统
JP2003347927A (ja) 再構成可能なハードウェアにおけるデータ処理回路およびその方法
JPH1027127A (ja) データ圧縮記憶演算装置
Lei et al. VLSI implementation of an entropy coder and decoder for advanced TV applications
JP2006333496A (ja) プログラマブル論理回路装置および情報処理システム
Kagawa et al. Throughput-Optimal Hardware Implementation of LZW Decompression on the FPGA
JP2004258863A (ja) コンピュータシステム及びプログラマブル論理回路並びに回路データの書き込み方法並びにデータ作成プログラム
US5745603A (en) Two dimensional context model obtained without a line buffer for arithmetic coding
CN111083475B (zh) 量化变换系数管理装置及适用于hevc标准的编码器
JP4152491B2 (ja) データ整列装置及び圧縮装置
JP3171510B2 (ja) 辞書ベースのメモリ内のデータを圧縮および圧縮解除する方法
JPH03179562A (ja) データ記録装置及びデータ編集方法
Chen et al. High-speed VLSI design of the LZ-based data compression
JP2795100B2 (ja) 画像圧縮回路並びに画像伸長回路
Reif et al. REAL-TIME DYNAMIC COMPRESSION OF VIDEO ON A GRID-CONNECTED PAR-ALLEL COMPUTER

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060627

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060810

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060905