説明

リコンフィギュラブル回路,リコンフィギュラブル回路の機能変更方法および通信装置

【課題】複数の演算エレメントと、演算エレメント間を相互に接続する複数の配線スイッチからなるリコンフィギュラブル回路のテスト時間を削減する。
【解決手段】複数の演算エレメントと、演算エレメント間を相互に接続する複数の配線スイッチからなるリコンフィギュラブル回路Aにおいて、第1の演算エレメントE1に内蔵されたコンフィギュレーションメモリ11のコンフィギュレーションデータのうち所定のビットを第2の演算エレメントE2を使って更新し、第1の演算エレメントE1または第3の演算エレメントE3の機能を変更する回路構成を持つ。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム可能な演算エレメントを行・列の方向に複数配置するリコンフィギュラブル回路およびリコンフィギュラブル回路の機能変更方法に関するものである。
【背景技術】
【0002】
近年、情報処理端末での情報処理に対するニーズは多様化し、通信方式や信号処理の規格はめまぐるしく変化しているため、製品のライフサイクルはますます短くなる傾向にある。この製品サイクルの短縮化に対応するためには、プログラムによって機能の変更が可能なデバイスが有用である。これらの中で最近注目されているデバイスとして、ASIC(Application Specific Integrated Circuit:特定用途向けIC)に匹敵する処理性能とマイクロプロセッサのプログラマビリティを併せ持つデバイスとして、プログラムによって柔軟に回路構成を変更できるリコンフィギュラブル(Re-configurable)回路が注目を集めている。リコンフィギュラブル回路にはいくつかの種類があるが、代表的な例としてはFPGA(Field Programmable Gate Array)やダイナミック・リコンフィギュラブル・LSIを挙げることができる。
【0003】
これらのリコンフィギュラブル回路のテストに関しては、リコンフィギュラブル回路のすべての機能をテストするために、リコンフィギュラブル回路の各機能に対して、テストの対象となる機能を実現するように、毎回リコンフィギュラブル回路をコンフィギュレーション(configuration:回路情報をFPGA等に組み込んでプログラマブルに回路構成すること)した上でテストを実施する必要があり、各機能ごとにリコンフィギュラブル回路のコンフィギュレーションを繰り返すため、テスト時間が増大し、コストの増大につながるという課題がある。
【0004】
このようなテスト時間の増大を抑えるための方法として、例えば、以下のようなものがある(特許文献1参照)。特許文献1においては、プログラマブルバッファによってロジックエレメント間の配線(インターコネクト)が駆動されているPLD(プログラマブル・ロジック・デバイス)におけるインターコネクトのテスト方法を記載している。このプログラムバッファは1つのメモリエレメントを持っており、インターコネクトのテストを行う際には、このメモリエレメントを用いてシフトレジスタを構成するようにコンフィギュレーションし、このシフトレジスタのうち、2つのメモリエレメントの間にテスト対象となるバッファとインターコネクトを挿入する。このシフトレジスタ内の信号伝送について1つ目のテストパターンでテストを行う。テスト終了後、別のバッファとインターコネクトを用いて次のテストを実施するが、このときPLD全体を再度コンフィギュレーションするのではなく、部分再コンフィギュレーションを実行する。このように部分再コンフィギュレーションを繰り返してインターコネクトのテストを実行することによって、少ないコンフィギュレーションデータをロードすればよいため、テスト実行に必要なコンフィギュレーション時間を削減することができ、テスト時間の短縮を行うことができる。
【特許文献1】US7124338号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載のテスト方法においては、部分再コンフィギュレーションによるテスト時間の短縮を行っているのはインターコネクト(配線)に対してのみであり、演算エレメント(ロジックエレメント)に対してはPLD全体を再コンフィギュレーションする方法でテストを実施するようになっている。そのため、演算エレメントの機能毎に再コンフィギュレーションを繰り返す必要があり、演算エレメントのテストにおいてはテスト時間の短縮を図ることはできない。結果として、PLDの全体のテスト時間を考慮した場合、いまだ改善の余地がある。
【0006】
さらに、特許文献1に記載のテスト方法においては、部分再コンフィギュレーションを実現するために、PLD全体をコンフィギュレーションする場合とは異なったコンフィギュレーションデータを供給するための回路や、部分再コンフィギュレーションデータを保持するためのメモリを搭載する必要があり、チップ面積を増大させるデメリットも生じている。
【0007】
本発明は、このような事情に鑑みて創作したものであり、チップ面積を増大させることなく、テストを従来技術よりも短いテスト時間で実現することができるリコンフィギュラブル回路およびリコンフィギュラブル回路の機能変更方法を提供することを目的としている。
【課題を解決するための手段】
【0008】
(1)本発明によるリコンフィギュラブル回路は、複数の演算エレメントを配置してなるリコンフィギュラブル回路であって、
前記リコンフィギュラブル回路内の第1の演算エレメントおよび第2の演算エレメントと、
前記第1の演算エレメントに内蔵されたコンフィギュレーションメモリとを有し、
前記コンフィギュレーションメモリの出力データを前記第2の演算エレメントに入力するように構成したものである。
【0009】
この構成によれば、第1の演算エレメント内のコンフィギュレーションメモリのコンフィギュレーションデータを、第2の演算エレメントによる演算に使用することが可能となる。
【0010】
(2)上記(1)の構成のリコンフィギュラブル回路において、前記第2の演算エレメントは、前記第1の演算エレメント内の前記コンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを更新するという態様がある。このように構成すれば、第1の演算エレメント内のコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを第2の演算エレメントを使って更新することが可能となる。
【0011】
(3)上記(2)の構成のリコンフィギュラブル回路において、前記第2の演算エレメントにより更新されたコンフィギュレーションデータは前記第1の演算エレメント内の前記コンフィギュレーションメモリに入力され、前記第1の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットが変更されるという態様がある。このように構成すれば、第1の演算エレメント内のコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを第2の演算エレメントを使って更新し、さらに第2の演算エレメントの出力を第1の演算エレメント内のコンフィギュレーションメモリに入力することによって、第1の演算エレメント内のコンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更し、第1の演算エレメントの機能を変更することが可能となる。
【0012】
以上のようにして、演算エレメントのテストにおいて、演算エレメントの機能毎に再コンフィギュレーションを繰り返す必要はなくなり、テスト時間の短縮が図られる。また、部分再コンフィギュレーションのためのコンフィギュレーションデータの供給回路やメモリは不要となり、チップ面積の増大を抑制することが可能となる。
【0013】
(4)上記(2)の構成のリコンフィギュラブル回路において、さらに、第3の演算エレメントと、第3の演算エレメントに内蔵されたコンフィギュレーションメモリとを有し、前記第2の演算エレメントにより更新されたコンフィギュレーションデータは、前記第3の演算エレメント内の前記コンフィギュレーションメモリに入力され、前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットが変更されるという態様がある。このように構成すれば、第1の演算エレメント内のコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを第2の演算エレメントを使って更新し、さらに第2の演算エレメントの出力は第3の演算エレメント内のコンフィギュレーションメモリに入力し、そのコンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更し、第3の演算エレメントの機能を変更することが可能となる。そして、上記と同様に、演算エレメントの機能毎に再コンフィギュレーションを繰り返す必要、および部分再コンフィギュレーションのためのコンフィギュレーションデータの供給回路やメモリを搭載する必要がなくなり、テスト時間の短縮とチップ面積増大の抑制を図ることが可能となる。
【0014】
(5)上記(4)の構成のリコンフィギュラブル回路において、さらに、第4の演算エレメントを有し、前記第4の演算エレメントは、前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを演算し、前記第1の演算エレメント内の前記コンフィギュレーションメモリに入力するという態様がある。このように構成すれば、第3の演算エレメント内のコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットをリコンフィギュラブル回路内の第4の演算エレメントを使って演算し、第1の演算エレメントに搭載されているコンフィギュレーションメモリに入力し、第1の演算エレメントの機能を変更することが可能となる。そして、上記と同様に、演算エレメントの機能毎に再コンフィギュレーションを繰り返す必要、および部分再コンフィギュレーションのためのコンフィギュレーションデータの供給回路やメモリを搭載する必要がなくなり、テスト時間の短縮とチップ面積増大の抑制を図ることが可能となる。
【0015】
(6)本発明によるリコンフィギュラブル回路の機能変更方法は、複数の演算エレメントを配置してなるリコンフィギュラブル回路の機能変更方法であって、
前記リコンフィギュラブル回路をコンフィギュレーションするステップと、
前記リコンフィギュラブル回路でアプリケーションの動作を実行するステップと、
前記リコンフィギュラブル回路内の第1の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第2の演算エレメントを使って更新するステップと、
前記第2の演算エレメントの出力を前記第1の演算エレメントに内蔵されたコンフィギュレーションメモリに入力し、前記第1の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップとを含む。
【0016】
この構成によれば、リコンフィギュラブル回路でのアプリケーション実行後に、再度コンフィギュレーションをすることなく、第2の演算エレメントを用いて第1の演算エレメント内のコンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更し、第1の演算エレメントの機能を変更することが可能となる。したがって、チップ面積増大の抑制を図りながら、演算エレメントにつきテスト時間の短縮を図ることが可能となる。
【0017】
(7)また、本発明によるリコンフィギュラブル回路の機能変更方法は、複数の演算エレメントを配置してなるリコンフィギュラブル回路の機能変更方法であって、
前記リコンフィギュラブル回路をコンフィギュレーションするステップと、
前記リコンフィギュラブル回路でアプリケーションの動作を実行するステップと、
前記リコンフィギュラブル回路内の第1の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第2の演算エレメントを使って更新するステップと、
前記第2の演算エレメントの出力を第3の演算エレメントに内蔵されたコンフィギュレーションメモリに入力し、前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップとを含む。
【0018】
この構成によれば、リコンフィギュラブル回路でのアプリケーション実行後に、再度コンフィギュレーションをすることなく、第2の演算エレメントを用いて第3の演算エレメント内のコンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更し、第3の演算エレメントの機能を変更することが可能となる。したがって、上記と同様に、チップ面積増大の抑制を図りながら、演算エレメントにつきテスト時間の短縮を図ることが可能となる。
【0019】
(8)また、本発明によるリコンフィギュラブル回路の機能変更方法は、複数の演算エレメントを配置してなるリコンフィギュラブル回路の機能変更方法であって、
前記リコンフィギュラブル回路をコンフィギュレーションするステップと、
前記リコンフィギュラブル回路でアプリケーションの動作を実行するステップと、
前記リコンフィギュラブル回路内の第1の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第2の演算エレメントを使って更新するステップと、
前記リコンフィギュラブル回路内の第3の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第4の演算エレメントを使って更新するステップと、
前記第2の演算エレメントの出力を前記第3の演算エレメント内の前記コンフィギュレーションメモリに入力し、前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップと、
前記第4の演算エレメントの出力を前記第1の演算エレメント内のコンフィギュレーションメモリに入力し、前記第1の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップとを含む。
【0020】
このように構成すれば、リコンフィギュラブル回路でのアプリケーション実行後に、再度コンフィギュレーションをすることなく、第2の演算エレメントを用いて第3の演算エレメント内のコンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更し、第3の演算エレメントの機能を変更すると同時に、第4の演算エレメントを用いて第1の演算エレメント内のコンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更し、第1の演算エレメントの機能を変更することが可能となる。したがって、上記と同様に、チップ面積増大の抑制を図りながら、演算エレメントにつきテスト時間の短縮を図ることが可能となる。
【0021】
(9)また、本発明による通信装置は、電波を送信または受信するアンテナ装置と、前記アンテナ装置で受信した電波を同調し、所定の周波数の電波を出力するフロントエンド処理装置と、前記所定の周波数の電波からデジタル信号を出力する復調処理装置と、前記復調装置から出力されたデジタル信号に対して受信側のデジタルベースバンド処理を行い、アプリケーションデジタル信号を出力するデジタルベースバンド処理装置と、前記デジタルベースバンド処理装置から出力されたアプリケーションデジタル信号に掛けられた時分割で方式が異なる暗号を復号化し、圧縮されたデジタル音声データを出力する暗号復号装置と、前記暗号復号装置から出力された圧縮されたデジタル音声データを伸張する音声デコード装置と、前記音声デコード装置から出力された伸張されたデジタル音声データをアナログ音声信号に変換するD/A変換装置と、前記D/A変換装置から出力されたアナログ音声信号を音声に変換するスピーカと、音声をアナログ音声信号に変換するマイクと、前記マイクから出力されたアナログ音声信号をデジタル音声データに変換するA/D変換装置と、前記A/D変換装置から出力されたデジタル音声データを圧縮する音声エンコード装置と、前記音声エンコード装置から出力された圧縮されたデジタル音声データを時分割で異なる方式で暗号化する暗号化装置と、前記暗号化装置から出力されたアプリケーションデジタル信号に対して前記デジタルベースバンド処理装置で送信側のデジタルベースバンド処理を行って出力されたデジタル信号を送信用の搬送波に乗せる変調装置と、変調された搬送波信号を増幅する高周波増幅装置とからなり、前記暗号復号装置は、請求項2に記載のリコンフィギュラブル回路によって時分割で異なった回路を構成し、前記暗号化装置は、請求項2に記載のリコンフィギュラブル回路によって時分割で異なった回路を構成することを特徴とする。
【0022】
このように構成すれば、一定時間後に必ず暗号化回路・暗号復号回路が変更されるため、極めて秘匿性の高い通信装置を実現することが可能である。
【発明の効果】
【0023】
本発明によれば、リコンフィギュラブル回路でのアプリケーション実行後に、再度コンフィギュレーションをすることなく、ある演算エレメントの機能を他の演算エレメントを用いて変更することができる。加えて、従来技術の場合の部分再コンフィギュレーションに必要な異なったコンフィギュレーションデータを供給するための回路やメモリは不要である。すなわち、本発明によれば、チップ面積を増大させることなく、リコンフィギュラブル回路のテストを従来技術よりも短いテスト時間で実現することができる。
【0024】
また、本発明のリコンフィギュラブル回路を通信装置の暗号化・暗号復号化回路に用いることによって、一定時間後に必ず暗号化回路・暗号復号回路の変更が可能であり、極めて秘匿性の高い通信装置を実現することができる。
【発明を実施するための最良の形態】
【0025】
以下、本発明にかかわるリコンフィギュラブル回路およびリコンフィギュラブル回路の機能変更方法の実施の形態を図面を用いて詳細に説明する。
【0026】
(実施の形態1)
図1は本発明の実施の形態1におけるリコンフィギュラブル回路を示す構成図である。
【0027】
図1において、リコンフィギュラブル回路Aは、縦と横の方向に複数配置した演算エレメント1と、演算エレメント1の間に水平と垂直方向に配置され、演算エレメント1どうしを相互に接続する配線2と、規則的に配置したデータメモリ3と、リコンフィギュラブル回路Aのテストの際にテストのためのコンフィギュレーションデータを供給するテストROM4と、演算エレメント1とデータメモリ3とにクロック信号を供給するクロック生成ブロック5と、チップ外部との通信を行う外部IOブロック6と、リコンフィギュラブル回路Aのコンフィギュレーション動作やアプリケーション回路動作のシーケンスを制御する動作シーケンス制御回路7とを備える。
【0028】
図2は図1のリコンフィギュラブル回路Aに搭載する演算エレメント1の詳しい構成を示すブロック図である。
【0029】
演算エレメント1は、回路構成の情報を格納するコンフィギュレーションメモリ11と、コンフィギュレーションメモリ11に格納されているプログラムによって複数の種類の演算が可能な、算術論理演算回路や乗算器などからなる演算ブロック13と、コンフィギュレーションメモリ11に格納されているプログラムによって演算ブロック13に入力するためのデータを一時保持しておくことが可能な入力レジスタ12と、コンフィギュレーションメモリ11に格納されているプログラムによって演算ブロック13からの出力を一時保持しておくことが可能な出力レジスタ14と、コンフィギュレーションメモリ11に格納されているプログラムによって入力レジスタ12の入力や出力レジスタ14の出力を、演算エレメント1どうしを相互に接続する配線2へと接続することが可能なスイッチボックス15と、リコンフィギュラブル回路Aをコンフィギュレーションする際にコンフィギュレーションメモリ11に格納するコンフィギュレーションデータや入力レジスタ12に設定する初期値を、シフトレジスタ状に転送するためのコンフィギュレーションチェーン16と、コンフィギュレーションメモリ11へ書き込むコンフィギュレーションデータをコンフィギュレーションチェーン16または演算エレメント1の外部のうちから選択するコンフィギュレーションセレクタ17と、コンフィギュレーションメモリ11に格納されているプログラムによってコンフィギュレーションメモリ11の入力を演算エレメント1どうしを相互に接続する配線2へ接続することが可能なコンフィギュレーションデータ入力スイッチボックス18と、コンフィギュレーションメモリ11に格納されているプログラムによってコンフィギュレーションメモリ11の出力を演算エレメント1どうしを相互に接続する配線2へ接続することが可能なコンフィギュレーションデータ出力スイッチボックス19とを備えている。また、信号系として、入力レジスタ12と出力レジスタ14を用いてコンフィギュレーションチェーン16に形成するコンフィギュレーションモード信号S1と、演算エレメント1をアプリケーション動作モードに設定するためのアプリケーションモード信号S2と、コンフィギュレーションセレクタ17を制御するコンフィギュレーションセレクタ制御信号S3と、コンフィギュレーションメモリ11をライトするためのコンフィギュレーションメモリライトイネーブル信号S4とを備える。
【0030】
図3は、コンフィギュレーションメモリ11に格納するコンフィギュレーションデータの構成を示した構成図である。
【0031】
スイッチボックス15の接続状態を決定するスイッチボックス用コンフィギュレーションデータD1と、入力レジスタ12の接続を決定する入力レジスタ用コンフィギュレーションデータD2と、出力レジスタ14の接続を決定する出力レジスタ用コンフィギュレーションデータD3と、コンフィギュレーションデータ入力スイッチボックス18の接続を決定するコンフィギュレーションデータ入力スイッチボックス用コンフィギュレーションデータD4と、コンフィギュレーションデータ出力スイッチボックス19の接続を決定するコンフィギュレーションデータ出力スイッチボックス用コンフィギュレーションデータD5と、演算ブロック13の演算を決定する演算ブロック用コンフィギュレーションデータD6からなる。演算ブロック用コンフィギュレーションデータD6のうち、演算ブロック13の算術論理演算回路の機能を決定するコンフィギュレーションコードと、算術論理演算回路の機能の対応は表Tに示す通りである。
【0032】
図4は、図1と図2の構成をもち、演算エレメントのコンフィギュレーションデータが図3の構成を持つリコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテストを実施するように、リコンフィギュラブル回路Aをコンフィギュレーションした場合の回路構成を示した構成図である。
【0033】
数個の演算エレメント1と1個のデータメモリ3を1組として、リコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテスト回路を構成し、第1の演算エレメントE1の算術論理演算回路のテストを実施する。なお、図4のように同時にもう1つの演算エレメントのテストを実施してもよい。第1の演算エレメントE1に内蔵のコンフィギュレーションメモリ11の出力を隣接する第2の演算エレメントE2に内蔵の演算ブロック13の算術論理演算回路の入力に接続する。第2の演算エレメントE2に内蔵の演算ブロック13の算術論理演算回路の出力は、第1の演算エレメントE1のコンフィギュレーションデータ入力スイッチボックス18(図示せず)を介して、第1の演算エレメントE1に内蔵のコンフィギュレーションセレクタ17に接続する。
【0034】
第1の演算エレメントE1の出力レジスタ14の出力は、第5から第8の演算エレメントE5〜E8によって構成される出力セレクタ20と配線2を介して、データメモリ3のライトデータ入力端子21に接続される。
【0035】
第5から第8の演算エレメントE5〜E8によって構成されるシーケンス制御回路22はデータメモリ3を制御するためのアドレス信号S5とライトイネーブル信号S6を出力し、配線2を介してデータメモリ3のアドレス端子とライトイネーブル端子に接続する。
【0036】
また、シーケンス制御回路22は第1の演算エレメントE1のコンフィギュレーションセレクタ制御信号S3を出力し、配線2を介して第1の演算エレメントE1のコンフィギュレーションセレクタ17に接続する。さらに、シーケンス制御回路22は出力セレクタ制御信号S7も出力し、配線2を介して出力セレクタ20に接続する。また、シーケンス制御回路22はテスト終了信号S8を出力し、配線2を介して動作シーケンス制御回路7(図1参照)に接続する。
【0037】
図4に示したリコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテスト回路の動作について、図5のフローチャートを用いて説明する。
【0038】
最初に、リコンフィギュラブル回路Aを図4に示す第1の演算エレメントE1の算術論理演算回路のテスト回路にコンフィギュレーションする(ステップn1)。
【0039】
次に、リコンフィギュラブル回路Aでアプリケーションの動作、すなわち第1の演算エレメントE1に内蔵の算術論理演算回路で演算を行い、演算結果をレジスタに保持し、さらにレジスタに保持されている演算結果をデータメモリ3に保存するという算術論理演算回路のテスト動作を実行する(ステップn2)。
【0040】
テスト実行後は、第1の演算エレメントE1に内蔵のコンフィギュレーションメモリ11に格納されているコンフィギュレーションデータのうち所定のビットを第2の演算エレメントE2を使って更新する(ステップn3)。
【0041】
次に、第2の演算エレメントE2の出力を第1の演算エレメントE1のコンフィギュレーションメモリ11にライトし、第1の演算エレメントE1のコンフィギュレーションメモリ11のコンフィギュレーションデータのうち所定のビットを変更し、第1の演算エレメントE1の機能を変更する(ステップn4)。
【0042】
ステップn2,n3,n4の動作を、第1の演算エレメントE1の機能のテストを網羅するまで繰り返して実行し、第1の演算エレメントE1のテストを完了する。
【0043】
以上のように本実施の形態によれば、第1の演算エレメントE1の算術論理演算回路のテストを、テストの冒頭で1回コンフィギュレーションするだけで、その後は第2の演算エレメントE2によって、第1の演算エレメントE1の算術論理演算回路のコンフィギュレーションメモリ11のデータを変更し、第1の演算エレメントE1の算術論理演算回路のすべての機能をテストすることができる。
【0044】
これによって、算術論理演算回路の各機能ごとにコンフィギュレーションを繰り返す従来のテスト手法に比較して、短いテスト時間でテストを完了することができる。
【0045】
(実施の形態2)
図6は、図1と図2の構成をもち、演算エレメントのコンフィギュレーションデータが図3の構成を持つリコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテストを実施するように、リコンフィギュラブル回路Aをコンフィギュレーションした場合の回路構成を示した、実施の形態2の構成図である。
【0046】
数個の演算エレメント1と1個のデータメモリ3を1組として、リコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテスト回路を構成し、第3の演算エレメントE3の算術論理演算回路のテストを実施する。なお、図6のように同時にもう1つの演算エレメントのテストを実施してもよい。第1の演算エレメントE1に内蔵のコンフィギュレーションメモリ11の出力を隣接する第2の演算エレメントE2に内蔵の演算ブロック13の算術論理演算回路の入力に接続する。第2の演算エレメントE2に内蔵の演算ブロック13の算術論理演算回路の出力は、第3の演算エレメントE3のコンフィギュレーションデータ入力スイッチボックス18(図示せず)を介して、第3の演算エレメントE3に内蔵のコンフィギュレーションセレクタ17に接続する。
【0047】
第3の演算エレメントE3の出力レジスタ14の出力は、第5から第8の演算エレメントE5〜E8によって構成される出力セレクタ20と配線2を介して、データメモリ3のライトデータ入力端子21に接続される。
【0048】
第5から第8の演算エレメントE5〜E8によって構成されるシーケンス制御回路22はデータメモリ3を制御するためのアドレス信号S5とライトイネーブル信号S6を出力し、配線2を介してデータメモリ3のアドレス端子とライトイネーブル端子に接続する。
【0049】
また、シーケンス制御回路22は第3の演算エレメントE3のコンフィギュレーションセレクタ制御信号S3を出力し、配線2を介して第3の演算エレメントE3のコンフィギュレーションセレクタ17に接続する。さらに、シーケンス制御回路22は出力セレクタ制御信号S7も出力し、配線2を介して出力セレクタ20に接続する。また、シーケンス制御回路22はテスト終了信号S8を出力し、配線2を介して動作シーケンス制御回路7(図1参照)に接続する。また、シーケンス制御回路22は第2の演算エレメントE2の演算ブロック13の算術論理演算回路において、第1の演算エレメントE1のコンフィギュレーションデータに対して演算する値を選択するための、演算データセレクタ制御信号S9を出力し、配線2を介して第2の演算エレメントE2に接続する。
【0050】
図6に示したリコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテスト回路の動作について、図7のフローチャートを用いて説明する。
【0051】
最初に、リコンフィギュラブル回路Aを図4に示す第3の演算エレメントE3の算術論理演算回路のテスト回路にコンフィギュレーションする(ステップn11)。
【0052】
次に、リコンフィギュラブル回路Aでアプリケーションの動作、すなわち第3の演算エレメントE3に内蔵の算術論理演算回路で演算を行い、演算結果をレジスタに保持し、さらにレジスタに保持されている演算結果をデータメモリ3に保存するという算術論理演算回路のテスト動作を実行する(ステップn12)。
【0053】
テスト実行後は、第1の演算エレメントE1に内蔵のコンフィギュレーションメモリ11に格納されているコンフィギュレーションデータのうち所定のビットを第2の演算エレメントE2を使って更新する(ステップn13)。
【0054】
次に、第2の演算エレメントE2の出力を第3の演算エレメントE3のコンフィギュレーションメモリ11にライトし、第3の演算エレメントE3のコンフィギュレーションメモリ11のコンフィギュレーションデータのうち所定のビットを変更し、第3の演算エレメントE3の機能を変更する(ステップn14)。
【0055】
ステップn12,n13,n14の動作を、第3の演算エレメントE3の機能のテストを網羅するまで繰り返して実行し、第3の演算エレメントE3のテストを完了する。なお、第2の演算エレメントE2で第1の演算エレメントE1に内蔵のコンフィギュレーションメモリ11に格納されているコンフィギュレーションデータを演算する値は、繰り返しの回数に応じてシーケンス制御回路22から出力する演算データセレクタ制御信号S9によって変更される。
【0056】
以上のように本実施の形態によれば、第3の演算エレメントE3の算術論理演算回路のテストを、テストの冒頭で1回コンフィギュレーションするだけで、その後は第2の演算エレメントE2によって、第3の演算エレメントE3の算術論理演算回路のコンフィギュレーションメモリ11のデータを変更し、第3の演算エレメントE3の算術論理演算回路のすべての機能をテストすることができる。
【0057】
これによって、算術論理演算回路の各機能ごとにコンフィギュレーションを繰り返す従来のテスト手法に比較して、短いテスト時間でテストを完了することができる。
【0058】
(実施の形態3)
図8は、図1と図2の構成をもち、演算エレメントのコンフィギュレーションデータが図3の構成を持つリコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテストを実施するように、リコンフィギュラブル回路Aをコンフィギュレーションした場合の回路構成を示した、実施の形態3の構成図である。
【0059】
8個の演算エレメント1と1個のデータメモリ3を1組として、リコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテスト回路を構成し、8個の演算エレメント1のうち、第1の演算エレメントE1と、対角に位置する第3の演算エレメントE3の演算ブロック13の算術論理演算回路のテストを実施する。第1の演算エレメントE1に内蔵のコンフィギュレーションメモリ11の出力を隣接する第2の演算エレメントE2に内蔵の演算ブロック13の算術論理演算回路の入力に接続する。第2の演算エレメントE2に内蔵の演算ブロック13の算術論理演算回路の出力は、第3の演算エレメントE3のコンフィギュレーションデータ入力スイッチボックス18(図示せず)を介して、第3の演算エレメントE3に内蔵のコンフィギュレーションセレクタ17に接続する。同様に、第3の演算エレメントE3に内蔵のコンフィギュレーションメモリ11の出力を隣接する第4の演算エレメントE4に内蔵の演算ブロック13の算術論理演算回路の入力に接続する。第4の演算エレメントE4に内蔵の演算ブロック13の算術論理演算回路の出力は、第1の演算エレメントE1のコンフィギュレーションデータ入力スイッチボックス18(図示せず)を介して、第1の演算エレメントE1に内蔵のコンフィギュレーションセレクタ17に接続する。
【0060】
第1の演算エレメントE1の出力レジスタ14と第3の演算エレメントE3の出力レジスタ14との出力は、第5から第8の演算エレメントE5〜E8によって構成される出力セレクタ20と配線2を介して、データメモリ3のライトデータ入力端子21に接続される。
【0061】
第5から第8の演算エレメントE5〜E8によって構成されるシーケンス制御回路22はデータメモリ3を制御するためのアドレス信号S5とライトイネーブル信号S6を出力し、配線2を介してデータメモリ3のアドレス端子とライトイネーブル端子に接続する。また、シーケンス制御回路22は第1の演算エレメントE1と第3の演算エレメントE3のコンフィギュレーションセレクタ制御信号S3を出力し、配線2を介して第1の演算エレメントE1のコンフィギュレーションセレクタ17と第3の演算エレメントE3のコンフィギュレーションセレクタ17に接続する。さらに、シーケンス制御回路22は出力セレクタ制御信号S7も出力し、配線2を介して出力セレクタ20に接続する。また、シーケンス制御回路22はテスト終了信号S8を出力し、配線2を介して動作シーケンス制御回路7(図1参照)に接続する。
【0062】
図8に示したリコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテスト回路の動作について、図9および図10のフローチャートを用いて説明する。
【0063】
リコンフィギュラブル回路Aは初期状態としてコンフィギュレーションモードに入り(ステップn21)、リコンフィギュラブル回路Aの動作シーケンス制御回路7によってコンフィギュレーションを開始する。動作シーケンス制御回路7はテストROM4からコンフィギュレーションデータを読み出してリコンフィギュラブル回路Aに供給し、同時に入力レジスタ12にクロック供給が開始され、コンフィギュレーションチェーン16がシフトレジスタの動作を開始し、コンフィギュレーションチェーン16を介してコンフィギュレーションメモリ11にコンフィギュレーションデータを供給する。
【0064】
またコンフィギュレーションチェーン16を介して、入力レジスタ12に初期値を設定する(ステップn22)。なお、テストROM4から供給されるコンフィギュレーションデータは、図8の回路構成を実現するためのコンフィギュレーションコードである。
【0065】
この動作を繰り返し、テストROM4からコンフィギュレーションデータの供給が完了すると、コンフィギュレーションメモリ11へのコンフィギュレーションデータのライトが完了する(ステップn23)。
【0066】
次に、リコンフィギュラブル回路Aの動作シーケンス制御回路7(図1参照)によってモード変更が実施され、コンフィギュレーションモードからアプリケーション動作モードへと移行する(ステップn24)。
【0067】
アプリケーション動作モードでは、第1の演算エレメントE1と第3の演算エレメントE3の出力レジスタ14へのクロック供給が開始する。第1の演算エレメントE1と第3の演算エレメントE3の入力レジスタ12に保持されている入力データは、第1の演算エレメントE1と第3の演算エレメントE3の演算ブロック13の算術論理演算回路に入力され、算術論理演算回路での演算結果がアプリケーション動作モードへ移行完了した次のクロックの立ち上がりエッジにおいて、第1の演算エレメントE1と第3の演算エレメントE3の出力レジスタ14によって保持(キャプチャ)される(ステップn25)。
【0068】
次に、第1の演算エレメントE1と第3の演算エレメントE3の出力レジスタ14の値は、シーケンス制御回路22の制御によって、データメモリ3に格納される(ステップn26)。このとき、シーケンス制御回路22は、データメモリ3のアドレス{(N−1)×4}番地と{(N−1)×4+1}番地に第1の演算エレメントE1の出力レジスタ14の値を書き込み、次にアドレス{(N−1)×4+2}番地と{(N−1)×4+3}番地に第2の演算エレメントE2の出力レジスタ14の値を書き込むように制御を行う。ここでNはテストの回数(N≧1)を表す。書き込みが終了するとN回目のテストが完了する。
【0069】
シーケンス制御回路22は完了したテストの回数を監視し(ステップn27)、テストの回数Nが算術論理演算回路の機能数Mよりも小さい場合(ステップn27のA)、シーケンス制御回路22は、第2の演算エレメントE2と第4の演算エレメントE4を用いて、第1の演算エレメントE1のコンフィギュレーションメモリ11と第3の演算エレメントE3のコンフィギュレーションメモリ11とを変更する(ステップn28)。
【0070】
以降はステップn25,n26,n27,n28の動作を繰り返す。
【0071】
シーケンス制御回路22は完了したテストの回数を監視し(ステップn27)、テストの回数Nが算術論理演算回路の機能数Mと一致した場合(ステップn27のB)、第1の演算エレメントE1と第3の演算エレメントE3の算術論理演算回路の機能のテストはすべて終了し、シーケンス制御回路22はテスト終了信号S8を配線2を介してリコンフィギュラブル回路Aの動作シーケンス制御回路7(図1参照)に通知し(ステップn29)、動作シーケンス制御回路7(図1参照)はリコンフィギュラブル回路Aの動作モードをリードバックモードに変更する(ステップn30)。リードバックモードにおいては、データメモリ3はコンフィギュレーションチェーン16上に接続され、動作シーケンス制御回路7(図1参照)はデータメモリ3に格納された第1の演算エレメントE1の演算結果と第3の演算エレメントE3の演算結果のデータを、コンフィギュレーションチェーン16を介してシフトレジスタ状に転送させ、リコンフィギュラブル回路Aの外部端子に出力する(ステップn31)。
【0072】
この出力結果をLSIテスタで期待値比較することによって、第1の演算エレメントE1と第3の演算エレメントE3の算術論理演算回路のテストを実施する。
【0073】
図11は、図9のフローチャートのうち、ステップSn28における第1の演算エレメントE1のコンフィギュレーションメモリ11と第3の演算エレメントE3のコンフィギュレーションメモリ11とを変更する動作について詳細に示したフローチャートである。
【0074】
最初に、第1の演算エレメントE1のコンフィギュレーションメモリ11の出力を第2の演算エレメントE2内の入力レジスタ12に保持する(ステップn41)。
【0075】
次に、第2の演算エレメントE2内の算術論理演算回路で、入力レジスタ12のデータを1インクリメントする(ステップn42)。
【0076】
次に、第3の演算エレメントE3内のコンフィギュレーションセレクタ17を第2の演算エレメントE2の算術論理演算回路の出力側に選択する(ステップn43)。
【0077】
最後に、第3の演算エレメントE3内のコンフィギュレーションメモリ11に第2の演算エレメントE2の算術論理演算回路の出力をライトする(ステップn44)。
【0078】
また、上記のステップn41からn44の動作と並行して以下の動作も行う。
【0079】
最初に、第3の演算エレメントE3のコンフィギュレーションメモリ11の出力を第4の演算エレメントE4内の入力レジスタ12に保持する(ステップn51)。
【0080】
次に、第4の演算エレメントE4内の算術論理演算回路で、入力レジスタ12のデータを1インクリメントする(ステップn52)。
【0081】
次に、第1の演算エレメントE1内のコンフィギュレーションセレクタ17を第4の演算エレメントE4の算術論理演算回路の出力側に選択する(ステップn53)。
【0082】
最後に、第1の演算エレメントE1内のコンフィギュレーションメモリ11に第4の演算エレメントE4の算術論理演算回路の出力をライトする(ステップn54)。
【0083】
以上の手順によって第1の演算エレメントE1のコンフィギュレーションメモリ11と第3の演算エレメントE3のコンフィギュレーションメモリ11との変更を完了する。
【0084】
図8に示したリコンフィギュラブル回路Aの演算ブロック13の算術論理演算回路のテストに要するサイクル数について、図12のタイミングチャートを用いて、縦方向に8個、横方向に8個、合計64個の演算エレメントを搭載したリコンフィギュラブル回路Aで、算術論理演算回路の20種類の機能をテストする場合を想定し、図13に示す従来の手法を用いた場合にテストに要するサイクル数と比較して説明する。
【0085】
従来の手法によれば、最初にテストのためのコンフィギュレーションを実施する(C1)。なお、従来のテストの手法においては、後述のように出力レジスタ14に保持される演算結果を読み出す必要があるため、図2において、出力レジスタ14もコンフィギュレーションチェーン16上にある構成となっている。コンフィギュレーションメモリ11のサイズを32ビット、入力レジスタ12と出力レジスタ14のビット幅をそれぞれ4ビットとすれば、初期化に必要なビット数は32ビット+4ビット×6=56ビットとなる。コンフィギュレーションチェーン16で1サイクル当たり4ビットずつシフトして行くと仮定した場合、56ビット÷4ビット/サイクル=14サイクルでコンフィギュレーションデータを1つの演算エレメントに供給することができる。従って、コンフィギュレーション(C1)に要するサイクル数は、演算エレメントが全部で64個あるため、14サイクル×64=896サイクルとなる。
【0086】
コンフィギュレーション(C1)が終了したあと、リコンフィギュラブル回路Aはアプリケーション動作モードへ移行する(C2)。リコンフィギュラブル回路A内のすべての演算エレメントが安全にアプリケーション動作モードに移行するため、5サイクルを要する。これは動作シーケンス制御回路7(図1参照)がリコンフィギュラブル回路Aの端に位置しており、動作シーケンス制御回路7から発生する動作モード制御信号はすべての演算エレメントに供給されているため、遅延値が大きくなっているからである。
【0087】
アプリケーション動作モードに移行したあと、演算エレメント内の算術論理演算回路に入力レジスタ12から入力データが供給され、算術論理演算回路で所定の演算を実行した後、演算結果が出力される。この演算結果を次のクロックの立ち上がりエッジで出力レジスタ14にキャプチャする(C3)。
【0088】
従来の手法においては、リコンフィギュラブル回路Aはコンフィギュレーションモードに移行する(C8)。アプリケーション動作モードへの移行(C2)と同様に、5サイクルを要する。
【0089】
このあと、出力レジスタ14のデータはコンフィギュレーションチェーン16を用いて外部にシフトアウトされる(C9)。
【0090】
シフトアウトされるデータは1つの演算エレメント当たり4ビット×2個=8ビットであるが、コンフィギュレーションチェーン16上には入力レジスタ12も存在するため、4ビット×6個=24ビットとなる。1サイクル当たり4ビットシフトされるとすると、24ビット÷4ビット=6サイクルを要する。演算エレメントは全部で64個存在するため、すべての演算エレメントの演算結果を出力するためには、6サイクル×64個=384サイクルを要する。C1,C2,C3,C8,C9の5つの動作は1回のテストに要する一連の動作であり、これを20回繰り返すことによってリコンフィギュラブル回路Aのテストを完了する。テスト完了に要するサイクル数は、(896+5+2+5+384)×20=25840サイクルとなる。
【0091】
一方、本発明の手法によれば、図12に示すように、最初にテストのためのコンフィギュレーションを実施する(C1)。図10のフローチャートで説明したとおり、演算結果はデータメモリ3から読み出すため、図2の構成図に示すように、もはや出力レジスタ14はコンフィギュレーションチェーン上に接続する必要はなくなる。ゆえに初期化に必要なビット数は32ビット+4ビット×4=48ビットである。従ってコンフィギュレーション(C1)に要するサイクル数は(48ビット÷4ビット/サイクル)×64=768サイクルとなり、従来の手法に比較して128サイクル削減することができる。
【0092】
コンフィギュレーション(C1)が終了したあと、リコンフィギュラブル回路Aはアプリケーション動作モードへ移行する(C2)。従来の手法と同様に5サイクルを要する。
【0093】
アプリケーション動作モードに移行したあと、演算エレメント内の算術論理演算回路に入力レジスタ12から入力データが供給され、算術論理演算回路で所定の演算を実行した後、演算結果が出力される。この演算結果を次のクロックの立ち上がりエッジで出力レジスタ14にキャプチャする(C3)。
【0094】
このあと、シーケンス制御回路22によって、出力レジスタ14の保持しているデータをデータメモリ3に書き込む(C4)。出力レジスタ14は第1の演算エレメントE1内に2個、第3の演算エレメントE3内に2個、合計4個存在するため、データメモリ3への書き込みは4サイクルを要する。
【0095】
次に、第2の演算エレメントE2と第4の演算エレメントE4を用いて第1の演算エレメントE1と第3の演算エレメントE3のコンフィギュレーションメモリ11のコンフィギュレーションデータを変更する(C5)。
【0096】
C3,C4,C5の動作は1回のテストに要する一連の動作であり、これを20回繰り返す。
【0097】
次に、リコンフィギュラブル回路Aはリードバックモードに移行する(C6)。アプリケーション動作モードへの移行(C2)と同様に、5サイクルを要する。
【0098】
リードバックモードへ移行した後、リコンフィギュラブル回路Aはデータメモリ3に格納された演算結果を動作シーケンス制御回路7(図1参照)の制御により外部に読み出す(C7)。
【0099】
1回のテストで、出力レジスタ14の4個分のデータをデータメモリ3に書き込むため、4ビット×4個=16ビットのデータがデータメモリ3に書き込まれる。テストは20回繰り返すため、16ビット×20回=320ビットのデータ量となる。リコンフィギュラブル回路A内にはデータメモリ3は8個存在するため、320ビット×8=2560ビットのデータ量となる。これを4ビットずつ外部に読み出した場合、2560ビット÷4ビット=640サイクルを要する。これによって、一連のテストに要するサイクル数は、768+5+(2+4+3)×20+5+640=1598サイクルである。さらにすべての演算エレメントを網羅するためには、テスト対象の演算エレメントを変更して、4回テストを行う必要があるため、テスト完了のために要するサイクル数は全部で1598サイクル×4=6392サイクルとなる。このように、本発明の手法によれば、従来のテストの手法に比較してテストに必要となるサイクル数を約4分の1に削減することができる。
【0100】
以上のように本実施の形態によれば、第1の演算エレメントE1の算術論理演算回路と第3の演算エレメントE3の算術論理演算回路のテストを、テストの冒頭で1回コンフィギュレーションするだけで、その後は第2の演算エレメントE2と第4の演算エレメントE4によって、第1の演算エレメントE1の算術論理演算回路と第3の演算エレメントE3の算術論理演算回路のコンフィギュレーションメモリ11のデータを変更し、第1の演算エレメントE1の算術論理演算回路と第3の演算エレメントE3のすべての機能をテストすることができる。従って、算術論理演算回路のすべての機能ごとにコンフィギュレーションを繰り返す従来のテストの手法に比較して、約4分の1の短いサイクル数によって、算術論理演算回路の機能のテストを実現することができる。
【0101】
また、図面には記載していないが、図8と同様の構成を用いたテスト回路を用いて、第2の演算エレメントE2と第4の演算エレメントE4によって図3のスイッチボックス用コンフィギュレーションデータD1を変更することによって、第1の演算エレメントE1に接続する配線2と、第3の演算エレメントE3に接続する配線2のすべての接続の組合せのテストを、テストの冒頭で1回コンフィギュレーションするだけで実施することができる。
【0102】
(実施の形態4)
図14は本発明のリコンフィギュラブル回路を組み込んだ通信装置の概観を示した構成図である。携帯電話1403は、内部に搭載している基板1402上にアプリケーション信号処理用LSIとして、システムLSI1401を搭載している。システムLSI1401は、本発明に係るリコンフィギュラブル回路を有する半導体集積回路である。
【0103】
図15は本発明のリコンフィギュラブル回路を組み込んだ通信装置の全体の信号処理を示した構成図である。本通信装置は、アンテナ1501と、送信と受信を切り替えるアンテナ切替回路1502と、受信した電波から目的の周波数の電波を選び出すフロントエンド処理を実施するフロントエンドIC1503と、フロントエンドIC1503からの出力を中間周波数に変換し増幅する中間周波増幅回路1504と、中間周波信号からデジタルデータを取り出す復調回路1505と、TDMA方式またはCDMA方式の送信及び受信のデジタルベースバンド処理を行い、かつ信号処理全体の制御を行うCPUを内蔵するシステムLSI1506と、アプリケーションデジタル信号処理を実施するシステムLSI1401と、音声を出力するスピーカ1507と、音声を電気信号に変換するマイク1508と、システムLSI1506を動作させるプログラムを格納するフラッシュメモリ1509と、デジタルベースバンド処理された出力信号の変調を行う変調回路1510と、変調信号を搬送波に乗せてアンテナから出力するための高周波増幅回路1511と、電話番号などを入力し、それをCPUに伝達するプッシュダイヤル1512とを備える。
【0104】
システムLSI1401は本発明のリコンフィギュラブル回路で構成され時分割で回路を変更する、アプリケーションデジタル信号の暗号復号ブロック1410と、暗号復号ブロック1410から出力される圧縮されたデジタル音声データを伸張する音声デコード回路ブロック1411と、音声デコード回路ブロック1411から出力される伸張されたデジタル音声データをアナログ音声信号に変換するD/A変換回路ブロック1412と、アナログ音声信号をデジタル音声データに変換するA/D変換回路ブロック1413と、デジタル音声データを圧縮する音声エンコード回路ブロック1414と、圧縮されたデジタル音声データに対して本発明のリコンフィギュラブル回路で構成され時分割で異なった暗号化回路を構成し、時分割で方式の異なった暗号化を行う暗号化回路ブロック1415とを備える。なお、システムLSI1401は、他の機能ブロックを含んでいてもよく、また一部を別チップ構成としてもよい。さらには、新たな集積化の技術が開発されればこれを用いても良い。
【0105】
本システムLSI1401の動作について図16A,図16Bを用いて説明する。
【0106】
まず、図16Aに示すように、端末が持つ固有の暗号復号ブロックを本発明のリコンフィギュラブル回路にマッピングさせることでこの暗号復号ブロックを第1の暗号復号ブロック1410Aとする。そのうえで第1の暗号復号ブロック1410Aによってアプリケーションデジタル信号を復号化する。復号化された圧縮デジタル音声データに対して音声デコード回路ブロック1411が音声デコード処理を行い、D/A変換回路1412によってアナログ音声信号に変換し、スピーカ1507に出力を行う。またマイクによるアナログ音声信号は、A/D変換回路1413によってデジタル音声データに変換した後、音声エンコード回路1414で圧縮処理を行った後、端末が持つ固有の暗号化ブロックをリコンフィギュラブル回路にマッピングさせることでこの暗号化ブロックを第1の暗号化ブロック1415Aとする。そのうえで第1の暗号化ブロック1415Aによって、暗号化されたアプリケーションデジタル信号を変換する。
【0107】
上記から単位時間(たとえば1秒後)経った後、リコンフィギュラブル回路にマッピングされた暗号化ブロック1415と暗号復号ブロック1411では、隣接する演算エレメントによって第1の暗号化・復号化ブロック1415A,1410Aを構成する演算エレメントのコンフィギュレーションデータを変更する。具体的には暗号化回路に於ける論理演算(Ex−ORなど)を異なった論理に入れ替えられる(たとえば、AND、ORなど)。
【0108】
これによって、図16Bに示すように、第1の暗号化・暗号復号化ブロック1415A,1415Aはそれぞれの機能が変更されて、異なった方式の暗号化・復号化を行うことができる第2の暗号化・暗号復号化ブロック1415B,1415Bになる。そのため、マイクによるアナログ音声信号はA/D変換回路1413によってデジタル音声データに変換された後、このデジタル音声データは音声エンコード回路1414で圧縮され、本発明のリコンフィギュラブル回路にマッピングされた最初とは暗号化方式の異なる第2の暗号化ブロック1415Bによって暗号化されたデジタルアプリケーション信号に変換される。また、デジタルベースバンド処理によって受信されたデジタルアプリケーション信号は、本発明のリコンフィギュラブル回路にマッピングされた、最初とは暗号復号方式の異なる第2の暗号復号化ブロック1410Bによって圧縮されたデジタル音声データに復号化される。また、出力されたデジタル音声データは、音声デコード回路1411によって伸張されたうえでD/A変換回路1412によってアナログ音声信号に変換される。そのアナログ音声信号は、スピーカ1507によって音声に変換される。
【0109】
このようにして、単位時間ごとに暗号化ブロックや復号暗号ブロックを変更することによって、極めて秘匿性の高い音声信号の暗号化を行うことが出来る。
【0110】
なお、暗号化ブロックに関しては、基地局側にも同様の暗号化ブロックや復号ブロックを持たせておき、この暗号化ブロックや暗号復号ブロックに本発明のリコンフィギュラブル回路を搭載すればよい。
【0111】
また基地局側・端末側は最初の暗号化ブロック・復号暗号ブロックのコンフィギュレーションデータのみを保持すればよい。このコンフィギュレーションデータは基地局と当該の端末のみが知りうるデータであって、他の端末がたとえ暗号化されたデジタルアプリケーション信号を受け取った場合でも、コンフィギュレーションデータがことなるため、暗号化された圧縮デジタル音声を復元して聞くことはできない。したがって、きわめて秘匿性の高い暗号化通信システムを実現することが可能となる。 また、STBの例で説明したが、携帯電話、蓄積再生装置、デジタルテレビ、車載機器等の暗号回路に対しても当然適用できる。
【産業上の利用可能性】
【0112】
本発明のリコンフィギュラブル回路は、リコンフィギュラブル回路内の第1の演算エレメント内のコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを、リコンフィギュラブル回路内の別の演算エレメントを使って更新する回路構成を持ち、再度コンフィギュレーションをし直すことなく第1の演算エレメントの機能を変更することができるため、これをテストに用いることによってテスト時間を削減することができるという効果を有し、複数の演算エレメントと、演算エレメント間を相互に接続する複数の配線スイッチからなるリコンフィギュラブル回路として有用である。
【図面の簡単な説明】
【0113】
【図1】本発明の実施の形態1〜3のリコンフィギュラブル回路を示す構成図
【図2】図1に示したリコンフィギュラブル回路に搭載する演算エレメントの構成を示すブロック図
【図3】図2の演算エレメントに搭載するコンフィギュレーションメモリのコンフィギュレーションデータの構成図
【図4】本発明の実施の形態1におけるリコンフィギュラブル回路の機能変更方法が適用するようにコンフィギュレーションされた場合のリコンフィギュラブル回路の構成図
【図5】本発明の実施の形態1におけるリコンフィギュラブル回路の機能変更方法の処理の手順を示すフローチャート
【図6】本発明の実施の形態2におけるリコンフィギュラブル回路の機能変更方法が適用するようにコンフィギュレーションされた場合のリコンフィギュラブル回路の構成図
【図7】本発明の実施の形態2におけるリコンフィギュラブル回路の機能変更方法の処理の手順を示すフローチャート
【図8】本発明の実施の形態3におけるリコンフィギュラブル回路の機能変更方法が適用するようにコンフィギュレーションされた場合のリコンフィギュラブル回路の構成図
【図9】本発明の実施の形態3におけるリコンフィギュラブル回路の機能変更方法の処理の手順を示すフローチャート(その1)
【図10】本発明の実施の形態3におけるリコンフィギュラブル回路の機能変更方法の処理の手順を示すフローチャート(その1)
【図11】図9のフローチャートのうちステップn28における動作の詳細を示すフローチャート
【図12】図8の演算エレメントのテスト回路の動作のサイクル数を示したタイミングチャート
【図13】従来のテスト手法によるサイクル数を示したタイミングチャート
【図14】本発明のリコンフィギュラブル回路を組み込んだ通信装置の概念図
【図15】本発明のリコンフィギュラブル回路を組み込んだ通信装置の全体の信号処理を示した構成図
【図16A】システムLSI1401の動作を示した構成図
【図16B】システムLSI1401の動作を示した構成図
【符号の説明】
【0114】
A リコンフィギュラブル回路
1 演算エレメント
2 配線
3 データメモリ
4 テストROM
5 クロック生成ブロック
6 外部IOブロック
7 動作シーケンス制御回路
11 コンフィギュレーションメモリ
12 入力レジスタ
13 演算ブロック
14 出力レジスタ
15 スイッチボックス
16 コンフィギュレーションチェーン
17 コンフィギュレーションセレクタ
18 コンフィギュレーションデータ入力スイッチボックス
19 コンフィギュレーションデータ出力スイッチボックス
20 出力セレクタ
21 ライトデータ
22 シーケンス制御
C1 コンフィギュレーション
C2 アプリケーション動作モード移行
C3 演算結果のキャプチャ
C4 メモリライト
C5 コンフィグメモリを変更
C6 リードバックモード移行
C7 データメモリの読み出し
C8 コンフィギュレーションモード移行
C9 出力レジスタデータのシフトアウト
D1 スイッチボックス用コンフィギュレーションデータ
D2 入力レジスタ用コンフィギュレーションデータ
D3 出力レジスタ用コンフィギュレーションデータ
D4 コンフィギュレーション入力スイッチボックス用コンフィギュレーションデータ
D5 コンフィギュレーション出力スイッチボックス用コンフィギュレーションデータ
D6 演算ブロック用コンフィギュレーションデータ
E1 第1の演算エレメント
E2 第2の演算エレメント
E3 第3の演算エレメント
E4 第4の演算エレメント
E5〜E8 第5〜第8の演算エレメント
S1 コンフィギュレーションモード信号
S2 アプリケーションモード信号
S3 コンフィギュレーションセレクタ制御信号
S4 コンフィギュレーションメモリライトイネーブル信号
S5 アドレス
S6 ライトイネーブル
S7 出力セレクタ制御信号
S8 テスト終了信号
S9 演算データセレクタ制御信号
1401 システムLSI
1402 基板
1403 携帯電話
1501 アンテナ
1502 アンテナ切替回路
1503 フロントエンドIC
1504 中間周波増幅回路
1505 復調回路
1506 システムLSI
1507 スピーカ
1508 マイク
1509 フラッシュメモリ
1510 変調回路
1511 高周波増幅回路

【特許請求の範囲】
【請求項1】
複数の演算エレメントを配置してなるリコンフィギュラブル回路であって、
前記リコンフィギュラブル回路内の第1の演算エレメントおよび第2の演算エレメントと、
前記第1の演算エレメントに内蔵されたコンフィギュレーションメモリとを有し、
前記コンフィギュレーションメモリの出力データを前記第2の演算エレメントに入力するように構成してあるリコンフィギュラブル回路。
【請求項2】
前記第2の演算エレメントは、前記第1の演算エレメント内の前記コンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを更新する請求項1に記載のリコンフィギュラブル回路。
【請求項3】
前記第2の演算エレメントにより更新されたコンフィギュレーションデータは前記第1の演算エレメント内の前記コンフィギュレーションメモリに入力され、前記第1の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットが変更される請求項2に記載のリコンフィギュラブル回路。
【請求項4】
さらに、第3の演算エレメントと、
第3の演算エレメントに内蔵されたコンフィギュレーションメモリとを有し、
前記第2の演算エレメントにより更新されたコンフィギュレーションデータは、前記第3の演算エレメント内の前記コンフィギュレーションメモリに入力され、
前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットが変更される請求項2に記載のリコンフィギュラブル回路。
【請求項5】
さらに、第4の演算エレメントを有し、前記第4の演算エレメントは、前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを演算し、前記第1の演算エレメント内の前記コンフィギュレーションメモリに入力する請求項4に記載のリコンフィギュラブル回路。
【請求項6】
複数の演算エレメントを配置してなるリコンフィギュラブル回路の機能変更方法であって、
前記リコンフィギュラブル回路をコンフィギュレーションするステップと、
前記リコンフィギュラブル回路でアプリケーションの動作を実行するステップと、
前記リコンフィギュラブル回路内の第1の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第2の演算エレメントを使って更新するステップと、
前記第2の演算エレメントの出力を前記第1の演算エレメントに内蔵されたコンフィギュレーションメモリに入力し、前記第1の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップとを含むリコンフィギュラブル回路の機能変更方法。
【請求項7】
複数の演算エレメントを配置してなるリコンフィギュラブル回路の機能変更方法であって、
前記リコンフィギュラブル回路をコンフィギュレーションするステップと、
前記リコンフィギュラブル回路でアプリケーションの動作を実行するステップと、
前記リコンフィギュラブル回路内の第1の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第2の演算エレメントを使って更新するステップと、
前記第2の演算エレメントの出力を第3の演算エレメントに内蔵されたコンフィギュレーションメモリに入力し、前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップとを含むリコンフィギュラブル回路の機能変更方法。
【請求項8】
複数の演算エレメントを配置してなるリコンフィギュラブル回路の機能変更方法であって、
前記リコンフィギュラブル回路をコンフィギュレーションするステップと、
前記リコンフィギュラブル回路でアプリケーションの動作を実行するステップと、
前記リコンフィギュラブル回路内の第1の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第2の演算エレメントを使って更新するステップと、
前記リコンフィギュラブル回路内の第3の演算エレメントに内蔵されたコンフィギュレーションメモリに格納されているコンフィギュレーションデータのうち所定のビットを前記リコンフィギュラブル回路内の第4の演算エレメントを使って更新するステップと、
前記第2の演算エレメントの出力を前記第3の演算エレメント内の前記コンフィギュレーションメモリに入力し、前記第3の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップと、
前記第4の演算エレメントの出力を前記第1の演算エレメント内のコンフィギュレーションメモリに入力し、前記第1の演算エレメント内の前記コンフィギュレーションメモリのコンフィギュレーションデータのうち所定のビットを変更するステップとを含むリコンフィギュラブル回路の機能変更方法。
【請求項9】
電波を送信または受信するアンテナ装置と、
前記アンテナ装置で受信した電波を同調し、所定の周波数の電波を出力するフロントエンド処理装置と、
前記所定の周波数の電波からデジタル信号を出力する復調処理装置と、
前記復調装置から出力されたデジタル信号に対して受信側のデジタルベースバンド処理を行い、アプリケーションデジタル信号を出力するデジタルベースバンド処理装置と、
前記デジタルベースバンド処理装置から出力されたアプリケーションデジタル信号に掛けられた時分割で方式が異なる暗号を復号化し、圧縮されたデジタル音声データを出力する暗号復号装置と、
前記暗号復号装置から出力された圧縮されたデジタル音声データを伸張する音声デコード装置と、
前記音声デコード装置から出力された伸張されたデジタル音声データをアナログ音声信号に変換するD/A変換装置と、
前記D/A変換装置から出力されたアナログ音声信号を音声に変換するスピーカと、
音声をアナログ音声信号に変換するマイクと、
前記マイクから出力されたアナログ音声信号をデジタル音声データに変換するA/D変換装置と、
前記A/D変換装置から出力されたデジタル音声データを圧縮する音声エンコード装置と、
前記音声エンコード装置から出力された圧縮されたデジタル音声データを時分割で異なる方式で暗号化する暗号化装置と、
前記暗号化装置から出力されたアプリケーションデジタル信号に対して前記デジタルベースバンド処理装置で送信側のデジタルベースバンド処理を行って出力されたデジタル信号を送信用の搬送波に乗せる変調装置と、
変調された搬送波信号を増幅する高周波増幅装置とからなり、
前記暗号復号装置は、請求項2に記載のリコンフィギュラブル回路によって時分割で異なった回路を構成し、
前記暗号化装置は、請求項2に記載のリコンフィギュラブル回路によって時分割で異なった回路を構成することを特徴とする通信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16A】
image rotate

【図16B】
image rotate


【公開番号】特開2009−129046(P2009−129046A)
【公開日】平成21年6月11日(2009.6.11)
【国際特許分類】
【出願番号】特願2007−301305(P2007−301305)
【出願日】平成19年11月21日(2007.11.21)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】