(57)【特許請求の範囲】
【請求項１】
アドレスとデータとを組とし、少なくとも１組を備えた構成情報を入力し圧縮する情報圧縮器とこの情報圧縮器の動作を制御する圧縮制御装置を備える情報圧縮装置であって、
前記情報圧縮器は、
前記構成情報のアドレスとデータとを分離する入力バッファと、
前記分離されたアドレスを入力し、処理中のアドレスと直前に処理したアドレスの差を演算して、算出した差分アドレスを出力するアドレス差分器と、
前記分離されたデータを入力し、前記データは、繰り返し構成を持つ再構成可能デバイスの設定情報となるため１６ビットを単位として、分割して、その分割データを出力するデータ分割器と、
前記差分アドレスを圧縮するアドレス圧縮器と、
前記分割データを圧縮するデータ圧縮器と、
前記アドレス圧縮器で圧縮されたアドレスと前記データ圧縮器で圧縮されたデータとを統合して圧縮構成情報として出力する出力バッファと、
を有することを特徴とする情報圧縮装置。
【請求項２】
請求項１に記載の情報圧縮装置において、
前記アドレス圧縮器及び前記データ圧縮器は、前記分離されたアドレスとデータの特性に合わせた圧縮規則に基づいて各々独立して圧縮処理を実行するものであることを特徴とする情報圧縮装置。
【請求項３】
請求項２に記載の情報圧縮装置において、
前記圧縮規則は、圧縮規則の種類を示す符号語を先頭に圧縮後のデータを付随することを特徴とする情報圧縮装置。
【請求項４】
アドレスとデータとを組とし、少なくとも１組を備えた構成情報を入力し圧縮する情報圧縮器とこの情報圧縮器の動作を制御する圧縮制御装置を備える情報圧縮装置と、
圧縮されたアドレス情報と圧縮されたデータ情報とを組とする、少なくとも１組が統合された圧縮構成情報を入力し解凍する情報解凍器とこの情報解凍器の動作を制御する復元制御装置を備える情報解凍装置と、
を有する情報処理システムであって、
前記情報圧縮器は、
前記構成情報のアドレスとデータとを分離する入力バッファと、
前記分離されたアドレスを入力し、処理中のアドレスと直前に処理したアドレスの差を演算して、算出した差分アドレスを出力するアドレス差分器と、
前記分離されたデータを入力し、前記データは、繰り返し構成を持つ再構成可能デバイスの設定情報となるため１６ビットを単位として、分割して、その分割データを出力するデータ分割器と、
前記差分アドレスを圧縮するアドレス圧縮器と、
前記分割データを圧縮するデータ圧縮器と、
前記アドレス圧縮器で圧縮されたアドレスと前記データ圧縮器で圧縮されたデータとを統合して圧縮構成情報として出力する出力バッファとを有し、
前記情報解凍器は、
前記圧縮構成情報を、前記圧縮されたアドレスと前記圧縮されたデータとに再分離する入力バッファと、
前記再分離され圧縮されたアドレスに対して解凍処理を行って圧縮前のアドレスを復元するアドレス解凍器と、
前記再分離され圧縮されたデータに対して解凍処理を行って圧縮前のデータを復元するデータ解凍器と、
前記アドレス解凍器から得られる現在の差分アドレスと直前の差分アドレスとを加算して元のアドレスを復元するアドレス加算器と、
前記データ解凍器から得られる複数の分割データを結合して分割前のデータに復元するデータ結合器と、
前記アドレス解凍器で解凍されたアドレスと前記データ解凍器で解凍されたデータとを再統合して構成情報として出力する出力バッファとを有することを特徴とする情報処理システム。
【請求項５】
アドレスとデータとを組とし、少なくとも１組を備えた構成情報を入力し圧縮する情報圧縮器及びこの情報圧縮器の動作を制御する圧縮制御装置を備えた情報圧縮装置と、
前記圧縮されたアドレス情報及びデータ情報とを組とする、少なくとも１組が統合されて成る圧縮構成情報を入力し解凍する情報解凍器とこの情報解凍器の動作を制御する復元制御装置とを備えた情報解凍装置と、
を備える情報処理システムの前記圧縮及び解凍にかかる情報処理方法であって、
入力される前記構成情報のアドレスとデータとを前記情報圧縮器の入力バッファにより分離し、
前記分離されたアドレスを入力し、現在処理中のアドレスと直前に処理したアドレスの差を演算して算出した差分アドレスを出力し、
前記分離されたデータを入力し、前記データは、繰り返し構成を持つ再構成可能デバイスの設定情報となるため１６ビットを単位として、分割して、その分割データを出力し、
その後、差分処理された前記アドレスは前記情報圧縮器のアドレス圧縮器にて、分割処理された前記データは前記情報圧縮器のデータ圧縮器にて、それぞれ異なる圧縮処理を行い、
前記情報圧縮器の出力バッファにて前記圧縮処理されたアドレスとデータとを統合して圧縮構成情報を生成し、
前記統合された前記圧縮構成情報を、前記情報解凍器の入力バッファにより前記圧縮されたアドレスと前記圧縮されたデータとに分離し、
前記分離され圧縮されたアドレスは前記情報解凍器のアドレス解凍器にて、前記分離され圧縮されたデータは前記情報解凍器のデータ解凍器にて、それぞれ異なる解凍処理を行い、
前記アドレス解凍器から得られる現在の差分アドレスと直前の差分アドレスとを前記情報解凍器のアドレス加算器にて加算して元のアドレスを復元し、
前記データ解凍器から得られる複数の分割データを前記情報解凍器のデータ結合器にて結合して分割前のデータに復元し、
その後、前記情報解凍器の出力バッファにより前記解凍されたアドレスとデータとを再統合して構成情報として出力することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム等に係り、特にアドレスとデータとを含む構成情報を対象とした圧縮率の効率化を図ってなる情報処理システム、情報圧縮装置、情報復元装置、情報処    理方法及びそのプログラムに関する。
【背景技術】
【０００２】
コンピュータ・システムに代表される情報処理システムが広く普及している。一般に、これらの情報処理システムは、ＣＰＵ（Central Processing Unit ）などの高性能のＬＳＩによって情報を処理している。近年、ＣＰＵ以外のＬＳＩについてもその性能は飛躍的な進歩を遂げてきている。
例えば、ＦＰＧＡ（Field Programmable Gate Array ）やＣＰＬＤ（Complex Programmable Logic Device ）などの再構成可能（リコンフィギュラブル）デバイスは、ユーザが設計した論理回路を現場で構築できるので、特定用途仕様のデバイスであるＡＳＩＣよりも開発コストの低減及び開発時間の短縮を実現できるので注目を集めている。【０００３】
高性能の再構成可能デバイスの開発によって、そのデバイス内に読み込み可能な構成情報も次第に増加する傾向になってきている。その一方で、例えば、再構成可能デバイスの試験などにおいては膨大な構成情報の読み込みに非常に長い時間が必要になり、論理回路の構築である主処理よりも試験プロセスのほうが時間を要するという結果になっていた。
この問題を解決するために、より、構成情報を高効率に圧縮するとともに解凍（伸張）する研究がいくつか発表されている。【０００４】
例えば、非特許文献１に記載されたＬＺと称する圧縮方法を図１６に示す。この図１６は、構成情報の圧縮に関する研究の圧縮方法の一例を模式的に示した図である。この図１６において、比較出力器５０２は、入力文字列５０１ａに該当する文字列が、参照する文字列辞書５００に含まれているか否かを検索する。
入力文字列５０１ａが文字列辞書５００に含まれている場合には、比較出力器５０２は、含まれていることを示すフラグ情報、文字列辞書５００における該当するその文字列の開始位置、及びその文字列の長さを出力する。【０００５】
一方、入力文字列５０１ａが文字列辞書５００に含まれていない場合には、比較出力器５０２は、含まれていないことを示すフラグ情報、及び含まれていない入力文字列５０１ａ自身を出力する。その後、文字列辞書５００の中から最も古い文字列が削除され、入力文字列５０１ａが文字列辞書５００に新規に追加される。
図１６の例では、入力文字列５０１ａのうち“ＢＣ”という文字列は文字列辞書５００に含まれているので、比較出力器５０２は、出力文字列５０３ａとして、含まれていることを示すフラグ情報“Ｙｅｓ”、文字列辞書５００における該当するその文字列の開始位置“２”、及びその長さ“２（バイト）”を出力する。【０００６】
一方、入力文字列５０１ａのうち次の“Ｒ”という文字列は文字列辞書５００に含まれていないので、比較出力器５０２は、出力文字列５０３ａとして、含まれていないことを示すフラグ情報“Ｎｏ”、及び含まれていない入力文字列“Ｒ”自身を出力する。この結果、入力文字列５０１ａに対して、出力文字列５０３ａを圧縮することが可能になる（非特許文献１参照）。【０００７】
又、他の文献においては、Ｘ−Ｍａｔｃｈと称する圧縮方法が記載されている。図１７は、この研究の圧縮方法を模式的に示した図である。図１７において、比較出力器６０２は、入力文字列６０１ａに該当する文字列が、参照する文字列群辞書６００に含まれているか否かを検索する。入力文字列６０１ａが文字列群辞書６００に含まれている場合には、比較出力器６０２は、含まれていることを示すフラグ情報、文字列群辞書６００内の参照文字列の位置、その文字列の中で一致している文字位置、及び一致しなかった文字列自身を出力する。【０００８】
一方、入力文字列６０１ａが文字列群辞書６００に含まれていない場合には、比較出力器６０２は、含まれていないことを示すフラグ情報、及び含まれていない入力文字列６０１ａ自身を出力する。その後、文字列群辞書６００の中から最も古い文字列が削除され、入力文字列６０１ａが文字列群辞書６００に新規に追加される。【０００９】
図１７の例では、入力文字列６０１のうち“Ｂ＊Ｒ＊ＪＦ”（＊は含まれていない文字列）が文字列群辞書６００内における参照文字列３の“ＢＱＲＴＪＦ”に部分的に含まれているので、比較出力器６０２は、出力文字列６０３ａとして、含まれていることを示すフラグ情報“Ｙｅｓ”、参照文字列の位置“３”、その文字列の中で一致又は不一致を表す文字位置のビット列“１０１０１１”、及び含まれていない文字列“Ｓ”及び“Ｅ”を出力する。この結果、入力文字列６０１ａに対して、出力文字列６０３ａを圧縮することが可能になる（非特許文献２参照）。【００１０】
更に、他の文献においては、ＦＰＣと称する圧縮方法が記載されている。図１８は、この研究の圧縮方法を模式的に示した図である。図１８において、比較出力器７０２は、入力文字列７０１ａに該当する文字列が、参照する圧縮規則７００のいずれに適合しているかを検索する。この場合において、全ての入力文字列は、必ずいずれかの圧縮規則に適合するように生成されている。従って、比較出力器７０２は、出力文字列７０３ａとして、適合した圧縮規則の番号、及び解凍（復元）に必要な文字列を出力する。【００１１】
図１８の例では、入力文字列７０１ａの上位１６ビット“０１２３”と下位１６ビット“０１２３”とが一致しているので、圧縮規則７００のうち“１０１”の番号の上位・下位１６ビット同一の圧縮規則に適合する。このため、比較出力器７０２は、文字列７０３ａとして、適合した圧縮規則の番号“１０１”、及び解凍に必要な下位１６ビットの文字列“０１２３”を出力する。この結果、入力文字列７０１ａに対して、出力文字列７０３ａを圧縮することが可能になる（非特許文献３参照）。【００１２】
上記の研究のほかにも、情報の圧縮処理に関する種々の提案が成されている（特許文献１乃至３）。
例えば、特許文献１による「データ圧縮装置及び方法」においては、磁気ディスク記憶装置や磁気テープ記憶装置等のデジタル記憶装置の容量を増大させるための圧縮／伸張システムを提供する。この文献には、マイクロプロセッサによって制御されるデータ記憶システム又はデータ伝送システムの一部である１個の集積回路に組み込まれた圧縮ユニット及び伸張ユニットが記載されている。例えば、圧縮ユニットは、コントローラＭＰＵ（マイクロプロセッサ）の制御により、ホストから受信した圧縮されていないデータに対して圧縮処理を行って、装置に送信する。【００１３】
一方、伸張ユニットは、コントローラＭＰＵの制御により、装置から受信した圧縮されたデータに対して伸張処理を行って、ホストに送信する。この場合において、ＲＡＭには、以前に圧縮処理及び伸張処理したデータの履歴を記憶して、一致するデータを受信した際にその履歴を利用する構成になっている。【００１４】
又、特許文献２による「シリコン記憶媒体制御方法及びシリコン記憶媒体」においては、シリコン記憶媒体は、コントローラ及び少なくとも１つのメモリを備えている。コントローラは、マイクロプロセッサ、データ圧縮器、データ復元器を有するとともに、変換テーブルバッファ、及びアドレスマッピングモジュールを有する構成になっている。【００１５】
更に、特許文献３による「コード圧縮技術の高速プロトタイピングを可能にするプログラムのコード圧縮方法、プログラムのコード圧縮システム」においては、Tensilica のXTensaプロセッサをベースにして、プロセッサに近い位置においてオンザフライで圧縮解除を実行して、メモリとバス帯域幅の増大を図ることにより、プログラムのコード圧縮の効果が全体に及ぶような構成が記載されている。【００１６】
例えば、アーキテクチャに示すように、キャッシュ又はタグから送られてくる信号が圧縮解除エンジンによって傍受され、ＣＰＵが圧縮コードの存在を認識しないように変更される構成になっている。又、フローチャートに示すように、プログラムコードとデータとを分離する処理が記載されている。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２０００−２０１０８１号公報
【特許文献２】特開２００５−３２２２０９号公報
【特許文献３】特開２００７−２３４０４８号公報
【非特許文献】
【００１８】
【非特許文献１】T. A. Welch, A Technique for High-Performance Data Compression, IEEE Computer, pp.8-19(1986)
【非特許文献２】M. Kjelso,M. Gooch, S. Jones, Design and Performance of a Main Memory HardwareData Compressor, IEEE Proceedings of EUROMICRO-22, pp. 423-30 (Sept. 1996)
【非特許文献３】A. R. Alameldeen, D. A. Wood, Frequent PatternCompression: A Significance-Based Compression Scheme for L2 Caches (2004)
【発明の概要】
【発明が解決しようとする課題】
【００１９】
しかしながら、上記の非特許文献１及び非特許文献２の場合、高い圧縮率を得るためには参照すべき文字列のサンプル数を多くしなければならず、その結果、大きなメモリ容量の文字列辞書を必要とするので、辞書メモリが高価になるため製品コストが高くなるという課題がある。又、上記他の各文献についても、その開示内容は、それぞれ異なる特性を持つアドレスとデータとを区別することなく処理するように構成されているので、アドレス及びデータの圧縮率が低い（圧縮率を大きくとれない）という課題がある。【００２０】
本発明の目的は、それぞれ異なる特性を持つアドレスとデータを含む構成情報の伝送若しくは記憶処理に際し、アドレス及びデータの圧縮率を高く設定することを可能とした情報処理システム、情報圧縮装置、情報復元装置、情報処理方法及びそのプログラムを提供することにある。
【課題を解決するための手段】
【００２１】
上記目的を達成するため、本発明に係る情報処理システムは、アドレスとデータとを組とし、少なくとも１組を備えた構成情報を入力し圧縮する情報圧縮器とこの情報圧縮器の動作を制御する圧縮制御装置を備える情報圧縮装置と、圧縮されたアドレス情報と圧縮されたデータ情報とを組とする、少なくとも１組が統合された圧縮構成情報を入力し解凍する情報解凍器とこの情報解凍器の動作を制御する復元制御装置を備える情報解凍装置（情報復元装置）と、を有する情報処理システムであって、前記情報圧縮器は、前記構成情報のアドレスとデータとを分離する入力バッファと、前記分離されたアドレスを入力し、処理中のアドレスと直前に処理したアドレスの差を演算して、算出した差分アドレスを出力するアドレス差分器と、前記分離されたデータを入力し、前記データは、繰り返し構成を持つ再構成可能デバイスの設定情報となるため１６ビットを単位として、分割して、その分割データを出力するデータ分割器と、前記差分アドレスを圧縮するアドレス圧縮器と、前記分割データを圧縮するデータ圧縮器と、前記アドレス圧縮器で圧縮されたアドレスと前記データ圧縮器で圧縮されたデータとを統合して圧縮構成情報として出力する出力バッファとを有し、前記情報解凍器は、前記圧縮構成情報を、前記圧縮されたアドレスと前記圧縮されたデータとに再分離する入力バッファと、前記再分離され圧縮されたアドレスに対して解凍処理を行って圧縮前のアドレスを復元するアドレス解凍器と、前記再分離され圧縮されたデータに対して解凍処理を行って圧縮前のデータを復元するデータ解凍器と、前記アドレス解凍器から得られる現在の差分アドレスと直前の差分アドレスとを加算して元のアドレスを復元するアドレス加算器と、前記データ解凍器から得られる複数の分割データを結合して分割前のデータに復元するデータ結合器と、前記アドレス解凍器で解凍されたアドレスと前記データ解凍器で解凍されたデータとを再統合して前記構成情報として出力する出力バッファとを有することを特徴とする。
【００２２】
又、上記目的を達成するため、本発明に係る情報圧縮装置は、アドレスとデータとを組とし、少なくとも１組を備えた構成情報を入力し圧縮する情報圧縮器とこの情報圧縮器の動作を制御する圧縮制御装置を備える情報圧縮装置であって、前記情報圧縮器は、前記構成情報のアドレスとデータとを分離する入力バッファと、前記分離されたアドレスを入力し、処理中のアドレスと直前に処理したアドレスの差を演算して、算出した差分アドレスを出力するアドレス差分器と、
前記分離されたデータを入力し、前記データは、繰り返し構成を持つ再構成可能デバイスの設定情報となるため１６ビットを単位として、分割して、その分割データを出力するデータ分割器と、
前記差分アドレスを圧縮するアドレス圧縮器と、前記分割データを圧縮するデータ圧縮器と、前記アドレス圧縮器で圧縮されたアドレスと前記データ圧縮器で圧縮されたデータとを統合して圧縮構成情報として出力する出力バッファと、を有することを特徴とする。
【００２４】
又、上記目的を達成するため、本発明に係る情報処理方法は、アドレスとデータとを組とし、少なくとも１組を備えた構成情報を入力し圧縮する情報圧縮器及びこの情報圧縮器の動作を制御する圧縮制御装置を備えた情報圧縮装置と、前記圧縮されたアドレス情報及びデータ情報とを組とする、少なくとも１組が統合されて成る圧縮構成情報を入力し解凍する情報解凍器とこの情報解凍器の動作を制御する復元制御装置とを備えた情報解凍装置（情報復元装置）と、を備える情報処理システムの前記圧縮及び解凍にかかる情報処理方法であって、入力される前記構成情報のアドレスとデータとを前記情報圧縮器の入力バッファにより分離し、前記分離されたアドレスを入力し、現在処理中のアドレスと直前に処理したアドレスの差を演算して算出した差分アドレスを出力し、前記分離されたデータを入力し、前記データは、繰り返し構成を持つ再構成可能デバイスの設定情報となるため１６ビットを単位として、分割して、その分割データを出力し、その後、差分処理された前記アドレスは前記情報圧縮器のアドレス圧縮器にて、分割処理された前記データは前記情報圧縮器のデータ圧縮器にて、それぞれ異なる圧縮処理を行い、前記情報圧縮器の出力バッファにて前記圧縮処理されたアドレスとデータとを統合して圧縮構成情報を生成し、前記統合された前記圧縮構成情報を、前記情報解凍器の入力バッファにより前記圧縮されたアドレスと前記圧縮されたデータとに分離し、前記分離され圧縮されたアドレスは前記情報解凍器のアドレス解凍器にて、前記分離され圧縮されたデータは前記情報解凍器のデータ解凍器にて、それぞれ異なる解凍処理を行い、前記アドレス解凍器から得られる現在の差分アドレスと直前の差分アドレスとを前記情報解凍器のアドレス加算器にて加算して元のアドレスを復元し、前記データ解凍器から得られる複数の分割データを前記情報解凍器のデータ結合器にて結合して分割前のデータに復元し、その後、前記情報解凍器の出力バッファにより前記解凍されたアドレスとデータとを再統合して構成情報として出力することを特徴とする。
【００２５】
又、上記目的を達成するため、本発明に係る情報処理プログラムは、アドレスとデータとを有する構成情報を圧縮処理する圧縮処理機能、この圧縮された構成情報である圧縮構成情報を解凍対象情報として記憶手段に記憶する圧縮情報記憶処理機能をコンピュータに実行させるようにした情報処理プログラムであって、前記圧縮処理機能を、前記構成情報をアドレス情報とデータ情報とに分割する情報分離処理機能、この分離されたアドレス情報とデータ情報とを予め個別に設定した圧縮規則に基づいてそれぞれ個別に圧縮処理するアドレス圧縮処理機能及びデータ圧縮処理機能、および圧縮されたアドレス情報とデータ情報とを統合して圧縮構成情報として出力する圧縮構成情報出力処理機能、により構成し、これらを前記コンピュータに実行させることを特徴とする。
【発明の効果】
【００２６】
本発明によると、それぞれ異なる特性を持つアドレスとデータを備えた情報の伝送若しくは記憶処理に際し、アドレス情報とデータ情報とをそれぞれ分離して個別に圧縮処理し且つ統合処理するようにしたので、アドレス及びデータを備えた構成情報の圧縮率を高くとることができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の情報処理システムを示す概略ブロック図である。
【図２】図１の情報圧縮装置における圧縮制御装置の内部システムの概略ブロック図である。
【図３】図１の情報復元装置における復元制御装置の内部システムの概略ブロック図である。
【図４】図２の圧縮器の機能を示す図である。
【図５】実施形態における圧縮規則の一例を示す図である。
【図６】実施形態における圧縮規則の他の一例を示す図である。
【図７】図４の圧縮器の内部構成を示すブロック図である。
【図８】図１の情報圧縮装置によって実行される圧縮処理の動作を示すフローチャートである。
【図９】図３の情報復元装置の機能を示す図である。
【図１０】図９の情報復元装置の内部構成を示すブロック図である。
【図１１】図１に一部に開示した情報復元装置によって実行される解凍処理の動作を示すフローチャートである。
【図１２】図５に示したアドレス圧縮規則及びデータ圧縮規則を参照した場合の圧縮処理及び解凍処理の一連の流れを示す動作状態説明図である。
【図１３】本発明の他の実施形態（１）における解凍復元処理の構成を示すブロック図である。
【図１４】本発明の他の実施形態（２）における情報復元装置と再構成可能デバイスとを半導体チップ上で一体化した場合の解凍処理の例を示すブロック図である。
【図１５】本発明の他の実施形態（３）における情報復元装置と再構成可能デバイスとを半導体チップ上で一体化した場合の他の解凍処理の例を示すブロック図である。
【図１６】関連技術における圧縮方法を模式的に示した説明図である。
【図１７】関連技術における他の圧縮方法を模式的に示した説明図である。
【図１８】関連技術における更に他の圧縮方法を模式的に示した説明図である。
【発明を実施するための形態】
【００２８】
以下、本発明に係る情報処理システム、情報圧縮装置、情報復元装置、情報処理方法および情報処理プログラムにかかる一実施形態を、添付図面に基づいて説明する。
最初に、本実施形態における基本的内容を説明し、その後に具体的内容を説明する。
＜基本的内容＞
図１乃至図４において、情報処理システム１０は、情報圧縮装置１と圧縮された情報を復元する情報復元装置２とにより構成されている。
情報圧縮装置１は、アドレスとデータとを備えた構成情報１４ａを入力し圧縮する情報圧縮器４と、この情報圧縮器４の動作を制御する圧縮制御装置３とを備えて構成されている。
【００２９】
圧縮制御装置３は、図２に示すように、情報圧縮器４により圧縮された構成情報である圧縮構成情報１５ａを解凍対象情報として記憶する圧縮構成情報記憶手段としての圧縮構成情報メモリ１５を備えている。
情報圧縮器４は、図７に示すように構成情報１４ａをアドレス情報とデータ情報とに分ける情報分離手段として機能する入力バッファ４１と、この入力バッファ４１で分離されたアドレス情報及びデータ情報をそれぞれ個別に圧縮するアドレス圧縮器４４及びデータ圧縮器４５と、この圧縮されたアドレス情報及びデータ情報を統合し圧縮構成情報として出力する圧縮情報出力手段としての出力バッファ４６とを備えている。
【００３０】
又、この情報圧縮器４は、アドレス圧縮器４４及びデータ圧縮器４５の各入力段に、それぞれ圧縮用前処理部４２，４３を備えている。
この内、アドレス圧縮器４４の圧縮用前処理部４２を、本実施形態では前述したアドレス情報を差分化処理するアドレス差分器により構成した。このアドレス差分器４２としては、処理中のアドレスと直前に処理したアドレスとの差を出力することをその内容とする差分器が使用されている。
【００３１】
そして、データ圧縮器４５の圧縮用前処理部４３を、本実施形態では前述したデータ情報を分割するデータ分割器により構成した。このデータ分割器４３は、本実施形態ではデータ情報のデータ列のビット数を１／２のビット数に分割する（例えば、３２ビットデータを１６ビットデータの二つに分割する）分割器が使用されている。
【００３２】
更に、前述したアドレス圧縮器４４及びデータ圧縮器４５は、それぞれ圧縮情報の特性に合わせて予め設定した独自の圧縮規則１３ａ１，１３ａ２（図５参照）に基づいて各々独立して圧縮処理を実行する構成とした。
【００３３】
又、情報圧縮器４で圧縮された圧縮構成情報１５ａは、上述したように解凍対象情報として圧縮構成情報メモリ（圧縮情報記憶手段）１５に格納される。ここで、構成情報１４ａ大幅に圧縮されて記憶されることから圧縮構成情報メモリ（圧縮情報記憶手段）１５の記憶容量は少ない記憶容量で十分に対応することができる。
【００３４】
この圧縮構成情報メモリ１５に格納された圧縮構成情報は、通信回線を介して伝送された後（若しくは伝送することなく直接的）に情報解凍器６にて以下の如く解凍されて例えば再構成可能デバイス９に送りこまれる。
【００３５】
符号２は圧縮構成情報メモリ（圧縮情報記憶手段）１５に格納された圧縮構成情報１５ａを解凍する情報復元装置を示す。
この情報復元装置２は、圧縮されたアドレス情報と圧縮されたデータ情報とが統合された圧縮構成情報を入力し解凍する情報解凍器６と、この情報解凍器６で解凍されたアドレス情報とデータ情報とから成る構成情報１４ａを外部出力するのを制御すると共に当該情報解凍器６の全体的な動作を制御する復元制御装置５とを備えている。
【００３６】
この情報復元装置２の要部を成す情報解凍器６は、前述した圧縮構成情報を圧縮アドレス情報と圧縮データ情報とに分ける圧縮情報分離手段としての入力バッファ６１と、この入力バッファ６１で分離された圧縮アドレス情報及び圧縮データ情報をそれぞれ個別に解凍するアドレス解凍器６２及びデータ解凍器６３と、この解凍された解凍アドレス情報及び解凍データ情報を再統合し構成情報として出力する構成情報出力手段としての出力バッファ６６とを含んで構成されている。
【００３７】
上記情報解凍器６のアドレス解凍器６２及びデータ解凍器６３の各出力段には、解凍後のアドレス情報及びデータ情報を圧縮前のアドレス情報及びデータ情報に復元処理する解凍情報用の後処理部６４，６５が、それぞれ対応して装備されている。
この内、アドレス解凍器６２に対応する解凍情報用後処理部は、本実施形態では現在処理中のアドレスと直前に処理したアドレスの和を出力するアドレス加算器６４により構成した。又、データ解凍器６３に対応する解凍情報用の後処理部は、本実施形態では前述したデータ分割器４３により分割された状態のデータ情報を結合する（例：二つの１６ビットデータを合わせて３２ビットデータとする）データ結合器６５により構成した。
【００３８】
そして、これらアドレス解凍器６２及びデータ解凍器６３は、それぞれ予め設定した対応する圧縮規則１３ａ１，１３ａ２（図１０参照）に基づいて各々独立して解凍処理を実行するように構成されている。
以下、これを更に詳述する。
【００３９】
＜システムの全体構成＞
図１は、本発明の情報処理システムを再構成可能デバイスの開発システムに適用した場合の概略ブロック図である。図１において、情報圧縮装置１と情報復元装置２とをＬＡＮその他の通信回線Ｌによって接続して情報処理システム１０を構成している。情報処理システム１０は、再構成可能デバイス（例えば、ＦＰＧＡ）９に接続されている。この情報処理システム１０は、ユーザの操作に応じて再構成可能デバイス９の論理回路を生成するために、アドレス及びデータを有する大量の構成情報を再構成可能デバイス９に向けて迅速に出力する。
【００４０】
図１に示すように、情報処理システム１０の情報圧縮装置１は、圧縮制御装置３及び情報圧縮装置４で構成されている。又、情報処理システム１０の情報復元装置２は、復元制御装置５及び情報復元装置６で構成されている。
ここで、情報処理システム１０の構成は実施形態の一例であり、本発明は図１の形態に限定されるものではない。例えば、情報圧縮装置１及び情報復元装置２を一体化して、圧縮器３および情報復元装置６をともに収容する単一の情報圧縮・復元装置で構成してもよい。
【００４１】
図２は、図１に示した圧縮制御装置３の内部システムのブロック図である。この圧縮制御装置３は、図２に示すように、ＣＰＵ１１，表示部１２，圧縮規則メモリ１３，構成情報メモリ１４，圧縮構成情報メモリ１５，操作部１６，及び通信・インタフェース（Ｉ／Ｆ）１７を有し、バス１８によって相互に接続されている。バス１８には、図１に示した情報圧縮器４も接続されている。
【００４２】
ＣＰＵ１１は、プログラムＲＯＭ、ワークＲＡＭ、キャッシュメモリなど（いずれも図示せず）を内蔵したワンチップのプロセッサで構成されている。操作部１６は、ユーザの操作に応じて、図１の再構成可能デバイス９の論理回路を生成するために、アドレス及びデータを有する構成情報を入力する。表示部１２は、ユーザに対するメッセージや入力された構成情報の内容などを表示する。
【００４３】
構成情報メモリ１４は、入力された構成情報１４ａを一時的に記憶するバッファである。圧縮規則メモリ１３には、情報圧縮装置４によって実行される圧縮処理のための圧縮規則が予め記憶されている。圧縮構成情報メモリ１５は、情報圧縮装置４によって構成情報メモリ１４に記憶された構成情報１４ａが圧縮された際に、その圧縮構成情報１５ａを一時的に記憶するバッファである。
【００４４】
情報圧縮装置４による圧縮処理及び圧縮規則については後述する。通信・インタフェース１７は、圧縮構成情報メモリ１５に一時的に記憶された圧縮構成情報１５ａを、図１に示した情報復元装置２に対して通信回線Ｌを介して送信する。後述するように、この実施形態においては構成情報が高い圧縮率で圧縮されているので、情報圧縮装置１から情報復元装置２への圧縮構成情報１５ａの送信時間が大幅に短くすることができる。
【００４５】
この場合において、構成情報メモリ１４及び圧縮構成情報メモリ１５は個別のメモリで構成されているが、単一のメモリの異なる記憶エリアとして構成してもよい。或いは、ＣＰＵ１１に内蔵された図示しないワークＲＡＭ又はキャッシュメモリの記憶エリアとして構成してもよい。
【００４６】
いずれの構成の場合にも、操作部１６から入力される構成情報１４ａを一時的に記憶して圧縮処理し、その圧縮構成情報１５ａを図１に示した情報復元装置２に対して、適宜に送信することを担保すればよい。従って、構成情報１４ａ及び圧縮構成情報１５ａを全体的に記憶する必要がないので、少ない記憶容量の揮発性メモリ（例えば、安価なＤＲＡＭ）で実現することができる。
【００４７】
図３は、図１に示した復元制御装置５の内部システムのブロック図である。この復元制御装置５は、図３に示すように、ＣＰＵ２１、圧縮構成情報メモリ２２、圧縮規則メモリ２３、構成情報メモリ２４、デバイス・インタフェース（Ｉ／Ｆ）２５、及び通信・インタフェース２６を有し、バス２７によって相互に接続されている。バス２７には、図１に示した情報解凍器６も接続されている。
【００４８】
ＣＰＵ２１は、プログラムＲＯＭ、ワークＲＡＭ、キャッシュメモリなど（いずれも図示せず）を内蔵したワンチップのプロセッサで構成されている。通信・インタフェース２６は、図２の圧縮制御装置３の通信・インタフェース１７から送信された圧縮構成情報を受信する。圧縮構成情報メモリ２２は、通信・インタフェース２６によって受信された圧縮構成情報１５ａを記憶する。この圧縮構成情報メモリ２２は、例えば、フラッシュＲＯＭなどの不揮発性メモリで構成される。圧縮規則メモリ２３は、圧縮構成情報メモリ２２に記憶された圧縮構成情報１５ａを、情報復元装置６が解凍処理する際に参照する圧縮規則が記憶されている。
【００４９】
この圧縮規則は、図２に示した圧縮制御装置３の圧縮規則メモリ１３に記憶されている圧縮規則と同じものである。構成情報メモリ２４は、情報復元装置６によって解凍処理されて、復元された元の構成情報１４ａを記憶する。情報復元装置６の解凍処理については後述する。デバイス・インタフェース２５は、構成情報メモリ２４に記憶された構成情報１４ａを図１の再構成可能デバイス９に出力する。
【００５０】
この場合において、圧縮構成情報メモリ２３は、図２に示した圧縮制御装置３から適宜に受信した圧縮構成情報１５ａをその都度記憶するが、最終的には全ての圧縮構成情報１５ａを一括して記憶するとともに、装置の電源がオフになっても保持する必要がある。従って、圧縮構成情報メモリ２３は、フラッシュＲＯＭなどの不揮発性メモリで構成することが望ましい。ただし、後述するように、この実施形態においては構成情報１４ａが高い圧縮率で圧縮されているので、圧縮構成情報メモリ２３の容量は、大幅に少なくて済む。
【００５１】
一方、構成情報メモリ２４については、ＣＰＵ２１によって圧縮構成情報メモリ２３に記憶されている圧縮構成情報１５ａをある単位（例えば、数バイト）ごとに読み出して、情報復元装置６によって解凍処理を行って、復元した元の構成情報１４ａを一時的に記憶した後に、デバイス・インタフェース２５を介して再構成可能デバイス９に対して出力すればよいので、少ない記憶容量の揮発性メモリ（例えば、安価なＤＲＡＭ）で実現することができる。或いは、ＣＰＵ２１に内蔵された図示しないワークＲＡＭ又はキャッシュメモリの記憶エリアで構成してもよい。
【００５２】
（圧縮処理）
次に、情報圧縮装置１の圧縮処理について、図４乃至図８を参照して説明する。
図４は、図１及び図２に示した情報圧縮器４の機能を示す図である。図４において、情報圧縮器４は、圧縮規則メモリ１３の圧縮規則１３ａを参照して、図２に示した圧縮制御装置３の構成情報メモリ１４からＣＰＵ１１によって読み出された構成情報１４ａに対して圧縮処理を実行し、圧縮構成情報１５ａを生成して圧縮制御装置３の構成情報メモリ１５に記憶する。
ここで、この図４に開示した情報圧縮器４については、その実行内容である各機能についてはＣＰＵ上で作動する特定のプログラムによって構成しても、或いは集積回路である電子回路をもって構成しても良い。
【００５３】
図５は、実施形態における圧縮規則の一例を示す図である。この圧縮規則は、図５（Ａ）に示すアドレス圧縮規則１３ａ１及び図５（Ｂ）に示すデータ圧縮規則１３ａ２で構成されている。詳細については後述するが、構成情報メモリ１４から読み出された構成情報１４ａはアドレスとデータとに分離されて、それぞれアドレス圧縮規則１３ａ１及びデータ圧縮規則１３ａ２を参照して個別に圧縮処理される。
【００５４】
アドレス圧縮規則１３ａ１は、４つの規則から構成されている。これに対応して、情報圧縮器４は、符合拡張なしの４ビットのアドレスに対しては、符号“００”と４ビットのデータを圧縮アドレスとして出力する。
又、情報圧縮器４は、符合拡張なしの８ビットのアドレスに対しては、符号“０１”と８ビットのデータを圧縮アドレスとして出力する。又、情報圧縮器４は、符合拡張なしの１６ビットのアドレスに対しては、符号“１０”と１６ビットのデータを圧縮アドレスとして出力する。又、情報圧縮器４は、符合拡張なしの３２ビットのアドレスに対しては、符号“１１”と３２ビットのデータを圧縮アドレスとして出力する。
【００５５】
一方、データ圧縮規則１３ａ２は、８つの規則から構成されている。データ圧縮規則１３ａ２において、α及びβは任意の４ビットのデータを表している。
情報圧縮器４は、全てゼロのデータに対しては、符号“０００”のみを圧縮データとして出力する。又、情報圧縮器４は、符号拡張なしの４ビットのデータに対しては、符号“００１”及び４ビットのデータを圧縮データとして出力する。
【００５６】
又、情報圧縮器４は、“０ｘ０α０β”からなる１６ビットのデータに対しては、符号“０１０”及び８ビットのデータを圧縮データとして出力する。又、情報圧縮器４は、“０ｘα０β０”からなる１６ビットのデータに対しては、符号“０１１”及び８ビットのデータを圧縮データとして出力する。又、情報圧縮器４は、符号拡張なしの８ビットのデータに対しては、符号“１００”及び８ビットのデータを圧縮データとして出力する。
【００５７】
又、情報圧縮器４は、１６ビットのゼロ詰めデータ“０ｘαβ００”に対しては、符号“１０１”及び８ビットのデータを圧縮データとして出力する。
又、情報圧縮器４は、上位と下位とが同一の１６ビットのデータ“０ｘαβαβ”に対しては、符号“１１０”及び８ビットのデータを圧縮データとして出力する。又、情報圧縮器４は、符号拡張なしの１６ビットのデータに対しては、符号“１１１”及び１６ビットのデータを圧縮データとして出力する。
【００５８】
図６は、実施形態における圧縮規則の他の一例を示す図である。この圧縮規則は、図６（Ａ）に示すアドレス圧縮規則１３ａ３及び図６（Ｂ）に示すデータ圧縮規則１３ａ４で構成されている。この内、アドレス圧縮規則１３ａ３は、４つの規則から構成される。これに対応して、情報圧縮器４は、符合拡張なしの４ビットのアドレスに対しては、符号“０”と４ビットのデータを圧縮アドレスとして出力する。
【００５９】
又、情報圧縮器４は、符合拡張なしの８ビットのアドレスに対しては、符号“１０”と８ビットのデータを圧縮アドレスとして出力する。又、情報圧縮器４は、符合拡張なしの１６ビットのアドレスに対しては、符号“１１０”と１６ビットのデータを圧縮アドレスとして出力する。又、情報圧縮器４は、符合拡張なしの３２ビットのアドレスに対しては、符号“１１１”と３２ビットのデータを圧縮アドレスとして出力する。
【００６０】
一方、データ圧縮規則１３ａ４は、８つの規則から構成される。このデータ圧縮規則１３ａ４において、α及びβは任意の４ビットのデータを表している。これに対応して情報圧縮器４は、全てゼロのデータに対しては、符号“０”のみを圧縮データとして出力する。又、情報圧縮器４は、符号拡張なしの４ビットのデータに対しては、符号“１１１０”及び４ビットのデータを圧縮データとして出力する。
【００６１】
又、情報圧縮器４は、“０ｘ０α０β”からなる１６ビットのデータに対しては、符号“１１１１”及び８ビットのデータを圧縮データとして出力する。又、情報圧縮器４は、“０ｘα０β０”からなる１６ビットのデータに対しては、符号“１１０”及び８ビットのデータを圧縮データとして出力する。又、情報圧縮器４は、符号拡張なしの８ビットのデータに対しては、符号“１０１１０”及び８ビットのデータを圧縮データとして出力する。
【００６２】
又、情報圧縮器４は、１６ビットのゼロ詰めデータ“０ｘαβ００”に対しては、符号“１０１１１”及び８ビットのデータを圧縮データとして出力する。又、情報圧縮器４は、上位と下位とが同一の１６ビットのデータ“０ｘαβαβ”に対しては、符号“１０１０”及び８ビットのデータを圧縮データとして出力する。更に又、情報圧縮器４は、符号拡張なしの１６ビットのデータに対しては、符号“１００”及び１６ビットのデータを圧縮データとして出力する。
【００６３】
図７は、図４の情報圧縮器４の具体的な内部構成を示すブロック図である。
この図７において、情報圧縮器４は、前述したように、入力バッファ４１，アドレス差分器４２，データ分割器４３，アドレス情報圧縮器４４，データ情報圧縮器４５，及び出力バッファ４６で構成されている。
【００６４】
入力バッファ４１は、図２の構成情報メモリ１４から読み出された圧縮されていない構成情報１４ａを一時的に記憶して、アドレスとデータとを分離して、それぞれアドレス差分器４２とデータ分割器４３とに出力する。アドレス差分器４２は、現在処理中のアドレスと直前に処理したアドレスとの差を演算して、算出した差分アドレスをアドレス情報圧縮器４４に出力する。データ分割器４３は、３２ビットのデータ列を１／２の１６ビットづつに分割して、その分割データをデータ情報圧縮器４５に出力する。
【００６５】
ここで、アドレス情報圧縮器４４は、図５（Ａ）又は図６（Ａ）に示したアドレス圧縮規則１３ａ１又は１３ａ３を参照して、アドレス差分器４２から得られる差分アドレスを圧縮して、その圧縮差分アドレスを出力バッファ４６に出力する。データ情報圧縮器４５は、図５（Ｂ）又は図６（Ｂ）に示したデータ圧縮規則１３ａ２又は１３ａ４を参照して、データ分割器４３から得られる分割データを圧縮して、その圧縮分割データを出力バッファ４６に出力する。
【００６６】
出力バッファ４６は、アドレス情報圧縮器４４から得られる圧縮差分アドレスとデータ情報圧縮器４５から得られる圧縮分割データとを統合して圧縮構成情報１５ａを生成し、図２の圧縮構成情報メモリ１５に記憶する。
【００６７】
このように、図７に示す上記情報圧縮器４は、入力される情報に含まれているアドレスとデータとを分離する分離手段として作動する入力バッファ（分離手段）４１と、この入力バッファ４１によって分離された現在のアドレスと直前のアドレスとの差分を演算して差分アドレスを算出するアドレス差分器４２と、前記入力バッファ（分離手段）４１によって分離されたデータを複数に分割して分割データを生成するデータ分割器４３とを備えている。
【００６８】
この情報圧縮器４は、前述したように、アドレス差分器４２から得られる差分アドレスに対して圧縮処理を行って圧縮差分アドレスを生成するアドレス情報圧縮器（アドレス圧縮器）４４と、データ分割器４３から得られる分割データに対して圧縮処理を行って圧縮分割データを生成するデータ情報圧縮器（データ圧縮器）４５と、アドレス情報圧縮器４４から得られる圧縮差分アドレスとデータ情報圧縮器４５から得られる圧縮分割データとを統合して圧縮構成情報１５ａとして出力して図２の圧縮構成情報メモリ１５に記憶する圧縮構成情報統合出力手段として作動する出力バッファ４６と、を備えている。
【００６９】
ここで、上記アドレス情報圧縮器４４は、アドレス圧縮規則１３ａ１又は１３ａ３を参照して、アドレス差分器４２から得られる差分アドレスに対して圧縮処理を行って圧縮差分アドレスを生成する。又、データ情報圧縮器４５は、データ圧縮規則１３ａ２又は１３ａ４を参照して、データ分割器４３から得られる分割データに対して圧縮処理を行って圧縮分割データを生成する機能を備えている。この二つの圧縮器４４，４５により、アドレス情報とデータ情報とがそれぞれ有効に且つ大幅に圧縮処理されるようになっている。
【００７０】
次に、上記実施形態における情報圧縮器４の圧縮処理動作を図８のフローチャートについて説明する。
まず、図２の構成情報メモリ１４から読み出した構成情報１４ａを入力し（ステップＳ１０１）、その構成情報１４ａをアドレスとデータとに分離する（ステップＳ１０２）。次に、アドレスとデータとを独立に前処理する（ステップＳ１０３）。
【００７１】
即ち、アドレス情報については現在処理中のアドレスと直前に処理したアドレスとの差を演算し、データ情報については３２ビットのデータ列を１／２の１６ビット毎に分割する。次に、アドレスとデータとを独立に圧縮し（ステップＳ１０４）、しかるのち、圧縮アドレスと圧縮データとを統合して圧縮構成情報１５ａを生成する（ステップＳ１０５）。その後に、圧縮構成情報１５ａを図２の圧縮構成情報メモリ（圧縮構成情報記憶手段）１５に記憶する（ステップＳ１０６）。
【００７２】
（解凍処理）
次に、図１の情報復元装置２の解凍処理について、図９乃至図１１を参照して説明する。
図９は、図１及び図３に示した情報解凍器６の機能を示す図である。図９において、情報解凍器６は、図３の復元制御装置４における圧縮規則メモリ２３に記憶された圧縮規則１３ａ（１３ａ１〜１３ａ４）、即ち図２の圧縮制御装置４の圧縮規則メモリ１３に記憶されたものと同一の圧縮規則を参照して、図３の圧縮構成情報メモリ２２から読み出した圧縮構成情報１５ａに対して解凍処理を実行し、図４に示した元の圧縮前の構成情報１４ａを復元して、図１の再構成可能デバイス９に出力する。
【００７３】
図１０は、情報解凍器６の内部構成を示すブロック図である。情報解凍器６は、前述したように、入力バッファ６１，アドレス情報解凍器６２，データ情報解凍器６３，アドレス加算器６４，データ結合器６５，及び出力バッファ６６で構成されている。
入力バッファ６１は、圧縮差分アドレスと圧縮分割データとが結合した圧縮構成情報２２ａを図３の圧縮構成情報メモリ２２から読み出して、圧縮差分アドレスと圧縮分割データとに再分離し、それぞれアドレス情報解凍器６２とデータ情報解凍器６３とに出力する。
【００７４】
アドレス情報解凍器６２は、図９に示した圧縮規則メモリ２３のアドレス圧縮規則１３ａ１又は１３ａ３を参照して、入力バッファ６１から得られる圧縮差分アドレスに対して解凍処理を行って圧縮前の差分アドレスを復元し、アドレス加算器６４に出力する。
データ情報解凍器６３は、圧縮規則メモリ２３のデータ圧縮規則１３ａ２又は１３ａ４を参照して、入力バッファ６１から得られる圧縮分割データに対して解凍処理を行って圧縮前の分割データを復元し、データ結合器６５に出力する。
【００７５】
アドレス加算器６４は、現在処理中の差分アドレスと直前に処理した差分アドレスとを加算して元のアドレスを復元し、そのアドレスを出力バッファ６６に出力する。データ結合器６５は、２系統の１６ビットの分割データを分割前の１系統の３２ビットのデータに結合して出力バッファ６６に出力する。
出力バッファ６６は、復元されたアドレスとデータとを再統合して、復元された構成情報、即ち、ユーザによって作成された論理回路用の元の構成情報を図１の再構成可能デバイス９に出力する。
【００７６】
このように、図１０に示す上記情報解凍器６は、図７に示した情報圧縮器４の出力バッファ４６（圧縮構成情報統合出力手段）によって統合された圧縮差分アドレスと圧縮分割データとを再分離する再分離手段として作動する入力バッファ６１と、入力バッファ６１（再分離手段）によって再分離された圧縮差分アドレスに対して解凍処理を行って圧縮前の差分アドレスを復元するアドレス情報解凍器（アドレス解凍器）６２と、入力バッファ６１（再分離手段）によって再分離された圧縮分割データに対して解凍処理を行って圧縮前の分割データを復元するデータ情報解凍器（データ解凍器）６３とを備えている。
【００７７】
この情報解凍器６は、更に、アドレス情報解凍器６２から得られる現在の差分アドレスと直前の差分アドレスとを加算して元のアドレスを復元するアドレス加算器（アドレス情報加算器）６４と、データ情報解凍器６３から得られる複数の分割データを結合して分割前のデータを復元するデータ結合器６５と、アドレス加算器６４から得られるアドレスと前記データ結合器６５から得られるデータとを再統合して元の構成情報を復元し出力する構成情報出力手段として作動する出力バッファ６６と、を備えて構成されている。
【００７８】
ここで、アドレス情報解凍器６２は、アドレス圧縮処理の際のアドレス圧縮規則１３ａ１又は１３ａ３を参照して、入力バッファ６１（再分離手段）によって再分離された圧縮差分アドレスに対して解凍処理を行って差分アドレスを復元する。又、データ情報解凍器６３（データ解凍手段）は、データ圧縮処理の際のデータ圧縮規則１３ａ３又は１３ａ４を参照して、入力バッファ６１（再分離手段）によって再分離された圧縮分割データに対して解凍処理を行って分割データを復元する。
【００７９】
ここで、上記実施形態における図１０の情報解凍器６の解凍処理動作を図１０のフローチャートに基づいて説明する。
まず、図３に示した圧縮制御装置４の圧縮構成情報メモリ２２から読み出した圧縮構成情報１５ａを入力して一時的に記憶し（ステップＳ２０１）、圧縮差分アドレスと圧縮分割データとに分離する（ステップＳ２０２）。次に、圧縮差分アドレスと圧縮分割データとを独立に解凍処理して（ステップＳ２０３）、解凍後の差分アドレスと解凍後の分割データとを独立に後処理する（ステップＳ２０４）。
【００８０】
即ち、解凍後の差分アドレスについては、現在のアドレスと直前のアドレスとを加算して元のアドレスを復元する。解凍後のデータについては、二系統の１６ビットの分割データを１系統の３２ビットのデータに結合して元のデータを復元する。次に、後処理したアドレスとデータとを結合して元の構成情報を復元して（ステップＳ２０５）再構成可能デバイス２０に出力する（ステップＳ２０６）。
【００８１】
（全体的動作）
次に、上記実施形態における情報処理システムの全体的な動作を説明する。
まず、アドレスとデータとを有する構成情報１４ａを情報圧縮の対象として構成情報入力部である圧縮制御装置の通信Ｉ／Ｆ１７が入力し（構成情報入力工程）、この入力された構成情報１４ａを圧情報縮器４が圧縮し（構成情報圧縮工程）、この圧縮された構成情報である圧縮構成情報１５ａを構成情報の利用者に対する解凍対象情報として記憶手段である圧縮構成情報メモリ（圧縮構成情報記憶手段）１５に記憶する（圧縮構成情報記憶工程）。
【００８２】
上記構成情報１４ａの圧縮に際しては（構成情報圧縮工程では）、まず、前述した構成情報１４ａをアドレス情報とデータ情報とに分離する処理を情報圧縮器４の入力バッファ４１（情報分離手段）が実行する（構成情報分離工程）。次に、この分離されたアドレス情報とデータ情報とをそれぞれ予め個別に設定した対応する圧縮規則１２ａ１，１２ａ２に基づいてアドレス圧縮器４４及びデータ圧縮器４５が個別に圧縮する（個別圧縮工程）。そして、この圧縮されたアドレス情報とデータ情報とを出力バッファ４６（圧縮構成情報出力手段）が統合処理を行い圧縮構成情報１５ａとして出力するようにした（圧縮構成情報出力工程）。
【００８３】
ここで、上述したアドレス圧縮器４４及びデータ圧縮器４５による圧縮処理（個別圧縮工程）の実行に先立って、当該圧縮処理の対象である前記アドレス情報とデータ情報とに対して、その特性に合わせた圧縮用前処理がそれぞれ対応する圧縮用前処理部４２，４３によって成される（圧縮処理用前工程）。
この場合、アドレス情報に対する圧縮用前処理（圧縮用前処理工程）は、処理中のアドレスと直前に処理したアドレスとの差を圧縮用前処理部４２としてのアドレス差分器４２が算定する差分化処理により実行される。又、データ情報に対する圧縮用前処理は、当該データ情報をデータ分割器４３によって分割するデータ分割処理により実行される。
【００８４】
次に、前述した情報圧縮装置１から出力される圧縮構成情報１５ａを、通信Ｉ／Ｆ２６を介して復元制御部５が入力し圧縮構成情報メモリ（圧縮構成情報記憶手段）２２へ格納する。
【００８５】
この圧縮構成情報メモリ２２に格納された圧縮構成情報１５ａの解凍（解凍処理工程）に際しては、まず、圧縮構成情報１５ａを圧縮アドレス情報と圧縮データ情報とに分ける処理を入力バッファ（圧縮情報分離手段）６１が実行し（圧縮情報分離工程）、この分離された圧縮アドレス情報及び圧縮データ情報をそれぞれ予め個別に設定した対応する前記圧縮規則１３ａ１（１３ａ３），１３ａ２（１３ａ４）に基づいてアドレス解凍器６２及びデータ解凍器６３が別々に解凍処理する（個別解凍処理工程）。
【００８６】
この個別に解凍処理された解凍アドレス情報と解凍データ情報とを出力バッファ（構成情報出力手段）６６が再統合し構成情報１４ａとして出力する（構成情報統合出力工程）。この出力バッファ６６から出力された構成情報１４ａは、図１に示す再構成可能デバイス９に送られるようになっている。
【００８７】
ここで、上述したアドレス解凍器６２及びデータ解凍器６３による前記各情報の解凍処理の直後に、構成情報の再現に向けて、前記解凍された解凍アドレス情報と解凍データ情報とに対してその特性に対応した後処理を解凍情報後処理部６４，６５がそれぞれ実行する（解凍情報後処理工程）。
【００８８】
上述した解凍アドレス情報に対する解凍データの後処理は、当該解凍されたアドレスを対象として、現在処理中のアドレスと直前に処理したアドレスとの和をアドレス加算器が算定するアドレス加算処理の形態をもって実行される。この解凍データ情報に対する解凍データ用の後処理は、具体的には、前記データ分割器４３により分割されたデータ情報をデータ結合器６５により結合する（二つの１６ビットデータを合わせて３２ビットデータとする）データ結合処理の形態をもって実行される。
【００８９】
次に、上述した圧縮処理及び解凍処理の一連の流れ（動作）について、具体的なアドレス及びデータの数値を例に採って説明する。
図１２は、図５に示したアドレス圧縮規則１３ａ１及びデータ圧縮規則１３ａ２を参照した場合の圧縮処理及び解凍処理の一連の流れを示す図である。
この図１２において、記号Ｓ１０１乃至Ｓ１０４は、図８に示した圧縮処理のフローチャートの同じ記号の処理に対応する。同様に、図１２の記号Ｓ２０１乃至Ｓ２０４は、図１１に示した解凍処理のフローチャートの同じ符号の処理に対応する。
【００９０】
図１２において、ユーザによって図１の情報圧縮装置１に入力された構成情報、即ち圧縮されていない構成情報１４ａは、アドレス“０ｘＡ０００００００”及びこのアドレスに対応するデータ“０ｘ００１２１２００”、アドレス“０ｘＡ００００００４”及びこのアドレスに対応するデータ“０ｘ００００１１１１”（以降省略）で構成されている（ステップＳ１０１）。尚、アドレスとデータとはこのような１対１のペアである必要はなく、ある１つのアドレスに対して複数のデータが対応する構成でもよい。
【００９１】
圧縮処理の場合、構成情報１４ａは、アドレス群とデータ群とに分離される（ステップＳ１０１）。従って、図１２に示すように、ステップＳ１０１処理後のアドレス群は、先頭のアドレス“０ｘＡ０００００００”，２番目のアドレス“０ｘＡ００００００４”，及び省略されたそれ以降のアドレスで構成される。又、ステップＳ１０１処理後のデータ群は、先頭のデータ“０ｘ００１２１２００”，２番目のデータ“０ｘ００００１１１１”，及び省略されたそれ以降のデータで構成される。
【００９２】
アドレス群は、差分の前処理が行われて差分アドレス群が生成される（ステップＳ１０２）。先頭の差分アドレスは“０ｘＡ０００００００”であるが、２番目の差分アドレスは、現在のアドレス“０ｘＡ００００００４”から直前のアドレス“０ｘＡ０００００００”を差し引いた値の“０ｘ０００００００４”となる。アドレス情報は、一般に、比較的連続した値を有するとともに、互いに異なる値を持つので、そのままでは圧縮が困難である。従って、前処理として、現在のアドレスから直前のアドレスを差し引く演算を適用することで、同一のアドレス差を有する情報を多数抽出できるので、その後の圧縮処理により圧縮率を大幅に向上させることが可能になる。
【００９３】
一方、データ群は、３２ビットから１６ビットへの分割の前処理が行われて分割データ群が生成される（ステップＳ１０３）。従って、分割データ群は、それぞれ１６ビットの“０ｘ００１２”、“０ｘ１２００”、“０ｘ００００”、“０ｘ１１１１”となる。
データ情報は、一般に、繰り返し構成を持つ再構成可能デバイス９の設定情報となるため、少数ビットを最小単位とした値となることが多い。従って、前処理として１６ビットに分割する処理を適用することで、同一のアドレス差を有する情報を多数抽出できるので、その後の圧縮処理により圧縮率を大幅に向上させることが可能になる。
【００９４】
このように、本実施形態においては、特性が異なるアドレスとデータとを分離して、上述したように個別に前処理及びその後の圧縮処理を実行するので、全体として圧縮率を大幅に向上させることが可能になる。更に、その結果、圧縮構成情報１５ａを記憶する圧縮構成情報メモリ２２の容量を小さくできるので、製品コストを低減することが可能になる。
【００９５】
ステップＳ１０２処理後の差分アドレス群は、圧縮処理されて圧縮差分アドレス群が生成される（ステップＳ１０３）。先頭の差分アドレス“０ｘＡ０００００００”は、符号拡張なしの３２ビットの構成になっているので、図５のアドレス圧縮規則１３ａ１の符号“１１”に相当する。従って、先頭の圧縮差分アドレスは、符号“１１”及び３２ビットのデータ“０ｘＡ０００００００”となる。２番目の差分アドレス“０ｘ０００００００４”は、符号拡張なしの４ビットの構成になっているので、アドレス圧縮規則１３ａ１の符号“００”に相当する。従って、２番目の圧縮差分アドレスは、符号“００”及び４ビットのデータ“０ｘ４”となる。
【００９６】
ステップＳ１０２処理後の分割データ群は、圧縮処理されて圧縮データ群が生成される（ステップＳ１０３）。１６ビットに分割された先頭からの４つの分割データ“０ｘ００１２”、“０ｘ１２００”、“０ｘ００００”、“０ｘ１１１１”は、それぞれ図５の圧縮データ規則１３ａ２を参照すると、符号“１００”に対応する符号拡張なしの１６ビット、符号“１０１”に対応する１６ビットのゼロ詰め、符号“０００”に対応する１６ビットが全てゼロ、符号“１１０”に対応する上位・下位バイト同一に対応する。従って、圧縮分割データ群は、符号“１００”及び“０ｘ１２”、符号“１０１”及び“０ｘ１２”、符号“０００”のみ、符号“１１０”及び“０ｘ１１”となる。
【００９７】
ステップＳ１０３処理後の圧縮差分アドレス群と圧縮分割データ群は、統合されて圧縮構成情報１５ａが生成される（ステップＳ１０５）。生成されたステップＳ１０４処理後の圧縮構成情報１５ａは、１つの圧縮アドレスとそれに続く２つの圧縮データとを１組として、複数組の情報で構成される。生成された圧縮構成情報１５ａは、図２の圧縮構成情報メモリ１５に記憶された後、図１の通信回線Ｌを介して情報復元装置２に送信される。情報復元装置２は、受信した圧縮構成情報１５ａを圧縮構成情報メモリ２２に一括して記憶する。
【００９８】
解凍処理については、図１２において圧縮構成情報１５ａに対して、圧縮処理とは逆の方向にステップＳ２０１乃至ステップＳ２０４の処理を行って、元の構成情報１４ａを復元することになる。復元された構成情報１４ａは、図１の再構成可能デバイス９に供給される。
【００９９】
ここで、前述した各構成部材の動作を含む各工程における実行内容については、一連の連携動作についてそれらをプログラム化し、これを前述した圧縮制御装置１又は情報復元装置２が備えているコンピュータに実行させるように構成してもよい。
【０１００】
（実施形態の効果）
本実施形態によると、それぞれ異なる特性を持つアドレスとデータを備えた情報の伝送若しくは記憶処理に際し、アドレス情報とデータ情報とをそれぞれ分離して個別に圧縮処理し且つ統合処理するようにしたので、アドレス及びデータの圧縮率を高くとることが可能となり、アドレス及びデータ毎に個別に圧縮規格を準備したので、両者一体化された大きなメモリ容量の文字列辞書が不要となる。また、情報復元装置についても、上述したように情報圧縮装置に対応して前述したようにその逆手順を実行可能に構成したので、迅速に且つ円滑に圧縮された情報の解凍復元を可能とすることがができるという利点がある。
【０１０１】
〔他の実施形態（１）〕
図１３に、本発明の他の実施形態（１）における解凍処理の構成を示す。
この図１３に示す他の実施形態では、複数の再構成可能デバイスに対する論理回路の生成や論理回路の生成後の評価を、並行して実行する。この図１３においては、複数の再構成可能デバイス９１乃至９ｎのそれぞれに対応して、情報解凍器６１乃至６ｎが接続されている。圧縮構成情報１５ａは、複数の情報解凍器６１乃至６ｎに同時に供給される。又、情報解凍器６１乃至６ｎの各々は、供給された圧縮構成情報１５ａを解凍して、対応する再構成可能デバイス９１乃至９ｎに供給する。
その他の構成は前述した図１乃至図１２の実施形態と同一となっている。
【０１０２】
この図１３に示す他の実施形態（１）によれば、前述した実施形態と同一の作用効果を奏するほか、更に、複数の再構成可能デバイスに対する論理回路の生成や回路生成後の評価を同時に並行して実行するので、複数のユーザがその後の製品化に向けて作業を行うことが可能である。更に、複数の再構成可能デバイス９１乃至９ｎの評価を並行して行うことで、単品では評価できない歩留まりの評価が可能になる。
【０１０３】
尚、上記各実施形態においては、ＦＰＧＡ（Field Programmable Gate Array ）などの再構成可能デバイス９（９１乃至９ｎ）の論理回路に供給するための構成情報の圧縮処理及び解凍処理について開示したが、本発明は、上記実施形態に限定されるものではない。一般的な情報の圧縮処理及び解凍処理に適用して、高い圧縮率の情報を実現することができる。
【０１０４】
〔他の実施形態（２）〕
次に、本発明にかかる他の実施形態（２）を図１４に基づいて説明する。
【０１０５】
この図１４に示す他の実施形態（２）では、前述した図１乃至図１２の実施形態において装備した再構成可能デバイス９と情報解凍器である情報復元装置２とが、半導体チップ上の半導体回路７２に組み込まれている。この半導体回路７２には、当該半導体回路７２の動作および耐久性等のテスト実行時に（使用するアドレスとデータとを含んだ構成情報１４ａを得るための）圧縮構成情報１５ａを送り込むテスタ装置７１が併設されている。このテスタ装置７１には、当該テスタ装置７１が備えているメモリ部７１ａに、前述した圧縮構成情報１５ａがテスト実行前に格納されるようになっている。
【０１０６】
ここで、テスタ装置７１は、情報圧縮器３にて圧縮された構成情報１４ａである圧縮構成情報１５ａを記憶した圧縮構成情報メモリ１５から、前記圧縮構成情報１５ａを取り込んでメモリ部７１Ａに格納するように構成されている。その後、テスタ装置７１は、半導体回路７２のテスト実行時に、この圧縮構成情報１５ａを半導体回路７２に転送する。半導体回路７２では、転送されてきた圧縮構成情報１５ａを情報復元装置２の情報解凍器で解凍し、アドレスとデータとを含んだ構成情報１４ａを解凍して復元し再構成可能デバイス９へ渡す。
【０１０７】
これにより、半導体回路７２のテスト時には、使用されるアドレスとデータとを含んだ大量の構成情報１４ａを短時間に連続して再構成可能デバイス９へ送り込むことが可能となる。即ち、半導体回路７２のテスト時に、テスタ装置７１から半導体回路７２への前記構成情報１４ａの転送時間を、圧縮度の分だけ大幅に短縮することが可能となる。その他の構成およびその作用効果は前述した図１乃至図１２の実施形態と同一となっている。
【０１０８】
〔他の実施形態（３）〕
次に、本発明にかかる他の実施形態（３）を図１５に基づいて説明する。
【０１０９】
この図１５に示す他の実施形態（３）では、上記他の実施形態（２）の場合と同様に、再構成可能デバイス９と情報解凍器である情報復元装置２とが、半導体チップ上の半導体回路７２に組み込まれている。この半導体回路７２には、圧縮構成情報１５ａを再構成可能デバイス９へ送り込む専用メモリ８１が併設されている。この専用メモリ８１には、当該専用メモリ８１が備えているメモリ部７１ａに、図示しない情報伝送系によって前述した圧縮構成情報１５ａが格納されるようになっている。
【０１１０】
その後、半導体回路７２は、起動時に専用メモリ８１のメモリ部８１Ａから圧縮構成情報１５ａを読み出して取り込むように構成されている。そして半導体回路７２に取り込まれた圧縮構成情報１５ａは情報復元装置２の情報解凍器で解凍され、アドレスとデータとを含んだ構成情報１４ａを復元し再構成可能デバイス９へ渡す。
【０１１１】
これにより、半導体回路７２の起動と共に使用されるアドレスとデータとを含んだ大量の構成情報１４ａを短時間に連続して再構成可能デバイス９へ送り込むことが可能となる。即ち、半導体回路７２の起動および動作時に、専用メモリ８１から半導体回路７２への前記構成情報１４ａの転送時間を、圧縮度の分だけ大幅に短縮することが可能となる。その他の構成およびその作用効果は前述した図１乃至図１２の実施形態と同一となっている。
【０１１２】
以上、実施形態（及び実施例）を参照して本発明を説明したが、本発明は上記実施形態（及び実施例）に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１１３】
なお、以上説明した実施形態では、本発明をハードウェアの構成として構築する場合について説明したが、ＣＰＵにプログラムを実行させることにより本発明をソフトウェア上で構築するようにしてもよいものである。この場合、図１に示す情報圧縮器４のうち、アドレス差分器４２と、データ分割器４３と、アドレス圧縮器４４及びデータ圧縮器４６がソフトウェア上で構築される。また、図１に示す情報解凍器６のうち、アドレス解凍器６２、データ解凍器６３、アドレス加算器６４及びデータ結合器６５がソフトウェア上で構築される。そして、これらの構成をソフトウェア上で構築するプログラムは記録媒体に記録されて、商取引の対象となる。
【０１１４】
この出願は２００９年３月３０日に出願された日本出願特願２００９−０８３５９７を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１１５】
本発明は、ＦＰＧＡやＣＰＬＤなどの再構成可能デバイス、その他の半導体、電子機器、コンピュータを製造する製造業や、その他これに関連する産業に適用可能である。
【符号の説明】
【０１１６】
１  情報圧縮装置
２  情報復元装置
３  圧縮制御装置
４  情報圧縮器
５  復元制御装置
６、６１、〜６ｎ  情報解凍器
９、９１、〜９ｎ  再構成可能デバイス
１０  情報処理システム
１３、２３  圧縮規則メモリ
１３ａ  圧縮規則
１３ａ１、１３ａ３  アドレス圧縮規則
１３ａ２、１３ａ４  データ圧縮規則
１４、２４  構成情報メモリ
１４ａ  構成情報
１５、２２  圧縮構成情報メモリ（圧縮情報記憶手段）
１５ａ  圧縮構成情報
１７、２６  通信・インタフェース（通信Ｉ／Ｆ）
４１、６１  入力バッファ（情報分離手段）
４２  アドレス差分器（圧縮用前処理部）
４３  データ分割器（圧縮用前処理部）
４４  アドレス圧縮器
４５  データ圧縮器
４６  出力バッファ（圧縮情報出力手段）
６１  入力バッファ（圧縮情報分離手段）
６２  アドレス解凍器
６３  データ解凍器
６４  アドレス加算器（解凍情報用の後処理部）
６５  データ結合器（解凍情報用の後処理部）
６６  出力バッファ（構成情報出力手段）
７１  テスタ装置
７２  半導体回路
８１  専用メモリ
Ｌ  通信回線
【図１】
0005556809.tif 000002
【図２】
0005556809.tif 000003
【図３】
0005556809.tif 000004
【図４】
0005556809.tif 000005
【図５】
0005556809.tif 000006
【図６】
0005556809.tif 000007
【図７】
0005556809.tif 000008
【図８】
0005556809.tif 000009
【図９】
0005556809.tif 000010
【図１０】
0005556809.tif 000011
【図１１】
0005556809.tif 000012
【図１２】
0005556809.tif 000013
【図１３】
0005556809.tif 000014
【図１４】
0005556809.tif 000015
【図１５】
0005556809.tif 000016
【図１６】
0005556809.tif 000017
【図１７】
0005556809.tif 000018
【図１８】
0005556809.tif 000019