JP3518951B2 - 機能複製装置および機能複製方法 - Google Patents

機能複製装置および機能複製方法

Info

Publication number
JP3518951B2
JP3518951B2 JP16274396A JP16274396A JP3518951B2 JP 3518951 B2 JP3518951 B2 JP 3518951B2 JP 16274396 A JP16274396 A JP 16274396A JP 16274396 A JP16274396 A JP 16274396A JP 3518951 B2 JP3518951 B2 JP 3518951B2
Authority
JP
Japan
Prior art keywords
rewriting
given
input data
target
circuit
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.)
Expired - Fee Related
Application number
JP16274396A
Other languages
English (en)
Other versions
JPH1013213A (ja
Inventor
清 西村
貴昭 淵上
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.)
Rohm Co Ltd
Original Assignee
Rohm Co Ltd
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 Rohm Co Ltd filed Critical Rohm Co Ltd
Priority to JP16274396A priority Critical patent/JP3518951B2/ja
Priority to US08/879,679 priority patent/US6145115A/en
Publication of JPH1013213A publication Critical patent/JPH1013213A/ja
Application granted granted Critical
Publication of JP3518951B2 publication Critical patent/JP3518951B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、所定の入力デー
タが与えられるとこれに対応する出力データを出力する
被複製対象装置の機能を複製する機能複製装置に関し、
特に、その複製手法に関する。
【0002】
【従来技術およびその課題】ユーザーが手元で論理機能
を書込むことができるLSIとして、PLD(Programm
able Logic Device)が知られている。PLDには、A
ND平面とOR平面とを基本構造とする小規模なPLA
(Programmable Logic Array)から、大規模なFPGA
(Field Programmable Gate Array)にいたるまで、多
くの種類がある。
【0003】これらは、いずれも、あらかじめチップ上
に多くの論理回路等を配置するとともに、論理回路等相
互を、プログラム可能なスイッチを介して接続するよう
構成したものである。したがって、ユーザーが、これら
多くのスイッチを所定のパタンにしたがって継断するこ
とにより、所望の論理機能を実現することができる。
【0004】このように、PLDを用いることにより、
短納期で、所望の論理機能を有するLSIを実現するこ
とができる。
【0005】ところで、ある機能を有するLSIを開発
し、その仕様書を紛失した場合など、同じ機能を有する
LSIを複製しようとした場合、被複製対象のLSIに
ついて、回路解析等を行なう必要がある。しかし、かか
る回路解析には、多大な時間と解析するための能力が必
要となるため、誰でも容易に行なえるものではなかっ
た。
【0006】この発明は、所定の入力データが与えられ
るとこれに対応する出力データを出力する被複製対象装
置の機能を複製する機能複製装置を提供することを目的
とする。
【0007】
【課題を解決するための手段】請求項1の機能複製装置
は、所定の入力データが与えられるとこれに対応する出
力データを出力する被複製対象装置の機能を複製する装
置であって、前記所定の入力データを書換え対象装置お
よび前記被複製対象装置に与える入力付与手段、特定の
入力データについて対応する出力データを得る為の論理
情報を候補として複数記憶する判断情報記憶手段、前記
判断情報記憶手段に記憶された複数の候補のうち、与え
られた入力データ全てについて、前記書換え対象装置か
ら与えられる出力データおよび前記被複製対象装置から
与えられる出力データが一致する候補またはその組合わ
せを特定し、かかる候補またはその組合わせの論理情報
を実現可能とするよう、前記書換え対象装置に書換え命
令を与える書換え手段、を備え、前記書換え対象装置
は、書換え対象回路、この書換え対象回路によって、制
御される第1制御対象部およびこの第1制御対象部の動
作を検出する第1検出部を有しており、前記被複製対象
装置は、被複製対象回路、この被複製対象回路によっ
て、制御される第2制御対象部およびこの第2制御対象
部の動作を検出する第2検出部を有しており、前記書換
え手段は、前記第1検出部および第2検出部にて検出し
た検出データを出力データとして一致判断を行なうこ
と、を特徴とする。
【0008】請求項2の機能複製装置においては、前記
書換え対象装置の論理構成を読み出し、これを出力する
論理構成読み出し手段を備えたことを特徴とする。
【0009】請求項3の機能複製方法においては、書換
え対象回路およびこの書換え対象回路によって、制御さ
れる第1の制御対象部を有する書換え対象装置が、被複
製対象回路およびこの被複製対象回路によって、制御さ
れる第2の制御対象部を有する被複製対象装置であっ
て、所定の入力データが与えられるとこれに対応する出
力データを出力する被複製対象装置と同じ機能を有する
ように、前記書換え対象回路を書換える機能複製方法で
あって、特定の入力データについて対応する出力データ
を得る為の論理情報を候補として複数記憶しておき、前
記所定の入力データを前記書換え対象回路および前記被
複製対象回路に与え、前記複数の候補のうち、与えられ
た入力データ全てについて、前記第1制御対象部および
前記第2制御対象部の動作を検出して、両者が一致する
候補を特定し、前記特定した候補の論理情報を実現可能
とするよう、前記書換え対象回路に書換え命令を与える
こと、を特徴とする。
【0010】なお、課題を解決するために案出した技術
思想を表現するのに用いた請求項の用語と実施形態との
関係について説明する。
【0011】「入力付与手段」:書換え対象装置および
被複製対象装置に入力データを付与する手段であり、実
施形態においては、図4ステップST9および図5ステ
ップST33におけるCPU23の処理が該当する。た
だし、CPU23が入力データが与えられた否かを判断
するのではなく、入力データが与えられると、なんら判
断することなく、PLD40,41に与えるように構成
してもよい。
【0012】「判断情報記憶手段」:図3に示す候補を
記憶するハードディスク26が該当する。
【0013】「書換え手段」:図5ステップST49お
よびステップST53におけるCPU23の処理、また
は図4ステップST13、ステップST15およびステ
ップST17におけるCPU23の処理が該当する。
【0014】
【作用および発明の効果】請求項1、請求項3の機能複
製装置またはその方法においては、特定の入力データに
ついて対応する出力データを得る為の論理情報を候補と
して複数記憶しておき、前記所定の入力データを前記書
換え対象回路および前記被複製対象回路に与え、前記複
数の候補のうち、与えられた入力データ全てについて、
前記第1の制御対象部から与えられる出力データおよび
前記第2の制御対象部から与えられる出力データが一致
する候補を特定し、前記特定した候補の論理情報を実現
可能とするよう、前記書換え対象回路に書換え命令を与
えている。したがって、与えられた入力データ全てにつ
いて、前記被複製対象装置から与えられる出力データと
一致する出力データを前記書換え対象装置から得ること
ができる。これにより、被複製対象回路およびこの被複
製対象回路によって、制御される第2の制御対象部を有
する被複製対象装置であっても、前記被複製対象回路の
機能を解析することなく、同じ機能を有する書換え対象
装置を得ることができる。
【0015】請求項2の機能複製装置においては、前記
論理構成読み出し手段は、前記書換え対象装置の論理構
成を読み出し、これを出力する。したがって、前記入力
データ全てについて、前記一致判断を行なうことなく、
同じ機能を有する書換え対象装置を簡単且つ短時間で得
ることができる。
【0016】
【発明の実施の形態】本発明の一実施形態について、図
面を用いて説明する。
【0017】1.機能ブロック図の説明 図1に示す機能複製装置1は、所定の入力データが与え
られるとこれに対応する出力データを出力する被複製対
象装置の機能を複製する装置であって、入力付与手段
3、判断情報記憶手段5、書換え手段7および論理構成
読み出し手段11を備えている。
【0018】入力付与手段3は、所定の入力データを書
換え対象装置19および被複製対象装置17に与える。
【0019】書換え対象装置19は、書換え対象回路1
9a、第1制御対象部19bおよびこの第1制御対象部
19bの動作を検出する第1検出部19cを有してい
る。第1制御対象部19bは、書換え対象回路19aに
よって制御される。第1検出部19cは、第1制御対象
部19bの動作を検出する。
【0020】また、被複製対象装置17は、被複製対象
回路17a、第2制御対象部17bおよび第2検出部1
7cを有している。第2制御対象部17bは、被複製対
象回路17aによって、制御される。第2検出部17c
は、第2制御対象部17bの動作を検出する。また、書
換え手段7は、第1検出部19cおよび第2検出部17
cにて検出した検出データを出力データとして一致判断
を行なう。
【0021】判断情報記憶手段5は、特定の入力データ
について対応する出力データを得る為の論理情報を候補
として複数記憶する。書換え手段7は、判断情報記憶手
段5に記憶された複数の候補のうち、与えられた入力デ
ータ全てについて、第1検出部19cおよび第2検出部
17cにて検出した検出データが一致する候補またはそ
の組合わせを特定する。そして、特定した候補またはそ
の組合わせの論理情報を実現可能とするよう、書換え対
象装置19に書換え命令を与える。
【0022】論理構成読み出し手段11は、書換え対象
回路19aの論理構成を読み出し、これを出力する。
【0023】したがって、与えられた入力データ全てに
ついて、被複製対象装置17から与えられる出力データ
と一致する出力データを書換え対象回路19aから得る
ことができる。これにより、被複製対象装置17の機能
を解析することなく、同じ機能を有する書換え対象装置
19を得ることができる。また、与えられる入力データ
全てについて、前記一致判断を行なうことなく、同じ機
能を有する書換え対象装置を簡単且つ短時間で得ること
ができる。
【0024】なお、書換え対象装置19を書換え対象回
路19aだけで構成してもよい。この場合は、書換え対
象回路19aからの出力データが、書換え手段に与える
ようにすればよい。
【0025】2.ハードウェア構成 図2に、図1に示す機能複製装置1をCPUを用いて実
現したハードウェア構成の一例を示す。
【0026】機能複製装置1は、CPU23、メモリ2
7、ハードディスク26、フロッピーディスクドライブ
(FDD)33、キーボード28、I/O31およびバ
スライン29を備えている。
【0027】CPU23は、ハードディスク26に記憶
された制御プログラムにしたがいバスライン29を介し
て、各部を制御する。
【0028】この制御プログラムは、FDD33を介し
て、プログラムが記憶されたフレキシブルディスクから
読み出されてハードディスク26にインストールされた
ものである。なお、フレキシブルディスク以外に、CD
−ROM、ICカード等のプログラムを実体的に一体化
したコンピュータ可読の記憶媒体から、ハードディスク
にインストールさせるようにしてもよい。さらに、通信
回線を用いてダウンロードするようにしてもよい。
【0029】本実施形態においては、プログラムをフレ
キシブルディスクからハードディスク26にインストー
ルさせることにより、フレキシブルディスクに記憶させ
たプログラムを間接的にコンピュータに実行させるよう
にしている。しかし、これに限定されることなく、フレ
キシブルディスクに記憶させたプログラムをFDD33
から直接的に実行するようにしてもよい。なお、コンピ
ュータによって、実行可能なプログラムとしては、その
ままのインストールするだけで直接実行可能なものはも
ちろん、一旦他の形態等に変換が必要なもの(例えば、
データ圧縮されているものを、解凍する等)、さらに
は、他のモジュール部分と組合して実行可能なものも含
む。
【0030】ハードディスク26には候補アルゴリズム
が複数記憶される。この候補アルゴリズムの一例を図3
に示す。各候補アルゴリズムには番号が付与されてい
る。例えば、番号1の候補は「入力値をそのまま出力す
る」というアルゴリズムである。
【0031】メモリ27には演算結果等が一時記憶され
る。I/O31には、書換え対象回路であるPLD4
1、被複製対象回路であるPLD40と接続され、デー
タの入出力を行なう。キーボード28は命令等を入力す
る命令入力手段である。
【0032】3.フローチャート つぎに、図4、図5を用いて、ハードディスク26に記
憶されているプログラムについて説明する。なお、以下
では、被複製対象装置であるPLD40は、図6に示す
ようなビット長が3ビットの入力データが与えられた場
合に、対応する3ビットの出力データを出力するものと
して説明する。また、書換え対象装置であるPLD41
については、なんら論理回路は構成されておらず、入力
データが与えられると、これをそのまま出力するものと
して説明する。
【0033】まず、CPU23はFフラグがオンか否か
を判断する(図4ステップST3)。なお、Fフラグと
は、PLD41に切り換え回路を作成する書き換え命令
が与えられているかを判定する為のフラグであり、詳細
については後述する。
【0034】初期状態では、Fフラグはオフである。し
たがって、図4ステップST3から図5ステップST3
1に進み、入力データが与えられたか否かを判断する
(図5ステップST31)。
【0035】PLD40およびPLD41は、与えられ
た入力データに応じて出力データをそれぞれ出力する。
ここで、図6Aに示すように、入力データ「000」に
対して、PLD40から基準出力データ「111」が与
えられる。PLD41からは、入力データ「000」に
対して学習対象出力データ「000」が与えられる。
【0036】CPU23は、この場合、2つのPLD4
0,41からの出力データが一致しないと判断し、処理
対象アルゴリズム番号iを初期化する(図5ステップS
T43)。そして、処理対象アルゴリズム番号iをイン
クリメントし(ステップST45)、i番目のアルゴリ
ズムをハードディスク26から読み出しを行なう。この
場合、i=1であるので1番目のアルゴリズム「入力値
をそのまま出力する」が読み出される。
【0037】つぎに、CPU23は、この読み出したア
ルゴリズムを用いると、メモリ27に記憶されている入
力データから、基準出力データと同じ出力データが得ら
れるか否かを判断する(ステップST49)。この場
合、メモリ27には、図16Aに示す入力データ「00
0」が記憶されている。アルゴリズム番号1のアルゴリ
ズムは、この入力データ「000」を基準出力データ
「111」に変換するものではない。したがって、全て
のアルゴリズムを検討したか否かを判断する(ステップ
ST51)。この場合、検討していないアルゴリズムが
残っているので、ステップST45に戻り、処理対象ア
ルゴリズム番号iをインクリメントする。
【0038】つぎに、CPU23は、2番目のアルゴリ
ズムを読み出す(ステップST47)。この場合、2番
目のアルゴリズム「入力値を反転させて出力する」を用
いると、図6Aに示す入力データ「000」を、基準出
力データ「111」と一致する出力データを得ることが
できる。したがって、ステップST49において、メモ
リ27に記憶された入力データを満足すると判断し、ス
テップST53に進む。そして、i番目のアルゴリズム
処理を行なう回路へ書き換える書き換え命令を、I/0
31を介してPLD41に出力する(ステップST5
3)。このように、図7Aに示すようにPLD41は、
アルゴリズム番号2のアルゴリズムを処理回路Aが形成
される。
【0039】本実施形態においては、図8、図9に示す
ような回路をPLD41に構成しておき、これをスイッ
チ11をオン、オフさせることによって、図8に示す論
理回路を構成できるようにした。
【0040】図8に、この発明の一実施形態によるプロ
グラム可能な機能装置であるPLAを構成するロジック
アレイ20の回路構成を、模式的に示す。PLA12
は、比較的単純な構成のPLDであり、AND平面部2
2とOR平面部24とを備えている。なお図8は、説明
のために、ロジックアレイ20の回路構成の一部を抜き
出して示した図であり、実際のロジックアレイ20は、
より複雑な構成を持っている。
【0041】図8においては、AND平面部22は、回
路要素である4本のデータ入力ラインL11、L12、
L13、L14、4本のAND入力ラインL21、L2
2、L23、L24、および、4個のANDゲートAN
D1、AND2、AND3、AND4を備えている。
【0042】AND平面部22の、データ入力ラインL
11〜L14とAND入力ラインL21〜L24との1
6個の交点には、スイッチ手段であるスイッチSW11
〜SW44が設けられている。
【0043】OR平面部24は、回路要素である4本の
AND出力ラインL31、L32、L33、L34、3
本のOR入力ラインL41、L42、L43、3個のO
RゲートOR1、OR2、OR3、および、3本のOR
出力ラインL51、L52、L53を備えている。
【0044】AND平面部22同様、OR平面部24
の、AND出力ラインL31〜L34とOR入力ライン
L41〜L43との12個の交点には、スイッチ手段で
あるスイッチSW51〜SW83が設けられている。
【0045】なお、図8においては説明の便宜上、4個
のANDゲートAND1、AND2、AND3、AND
4と、3個のORゲートOR1、OR2、OR3とを用
いるよう記載したが、実際の回路においては、これらの
ゲートに替え、7個のNANDゲートを用いて、図8と
論理的に等価な回路を実現している。
【0046】図9に、スイッチSW11の回路構成を示
す。この実施形態においては、スイッチSW11は、強
誘電体トランジスタ30を用いて構成した。なお、他の
スイッチSW12〜SW83についても、同様である。
【0047】スイッチSW11においては、ゲート端子
Gとデータ入力ラインL11との間に、所定の電圧を印
加すると、強誘電体層FEは分極する。強誘電体層FE
の分極方向は、印加する電圧の向きによって異なる。強
誘電体層FEの分極方向が変更されると、トランジスタ
としてのしきい値が変更される。このようにして、スイ
ッチSW11を閉状態から開状態へ、開状態から閉状態
へと切換えることができる。
【0048】なお、ゲート端子Gとデータ入力ラインL
11との間に印加する電圧の向きと、強誘電体層FEの
分極方向との関係は、他の要素の影響を受けるため必ず
しも固定されたものではない。しかし、少なくとも同一
条件下においては、同一の関係をもたらす。たとえば、
データ入力ラインL11に対して、ゲート端子Gが正と
なる向きの電圧を印加すると、所定のゲート電圧に対
し、所定のドレイン電流が流れる方向に分極し、逆向き
の電圧を印加すると、所定のゲート電圧に対し、前記所
定より小さい値のドレイン電流しか流れない方向に分極
したとすれば、前者がスイッチSW11の閉状態、後者
がスイッチSW11の開状態に該当する。
【0049】このように、ゲート端子Gとデータ入力ラ
インL11との間に印加する電圧の向きを替えることに
より、スイッチSW11の継断データを、書き換えるこ
とができる。
【0050】なお、上述の実施形態においては、ゲート
端子Gとデータ入力ラインL11との間に印加する電圧
の向きを替えることにより、強誘電体層FEの分極方向
を異ならせるよう構成したが、強誘電体層FEのゲート
端子Gと反対側の端部に電極端子を接続してこれをメモ
リゲート端子MGとし、ゲート端子Gとメモリゲート端
子MGとの間に印加する電圧の向きをかえることによ
り、強誘電体層FEの分極方向を異ならせるよう構成す
ることもできる。
【0051】なお、所望の論理回路を得るのに、具体的
にどのような書換え命令、すなわち、図8においてどの
トランジタをオンまたはオフとするかについては、HD
L(Hardware discription Langage)言語を用いること
によって実現することができる。
【0052】つぎに、CPU23は、図4ステップST
3に戻り、Fフラグがオンか否かを判断する。この場合
は、Fフラグはオンでないので図5ステップST31に
進み、次の入力データが与えられたか否かを判断する。
与えられない場合には、ステップST39に進み、終了
命令が有るか否かを判断する。終了命令が与えられない
場合には、ステップST31の処理を繰り返す。
【0053】ここで、図6Bに示す出力データ「00
1」が入力された場合、CPU23は、与えられた入力
データをハードディスク26の入力値リストに加えて
(ステップST32)、PLD40、41に、この入力
データを出力する(ステップST33)。
【0054】つぎに、CPU23は、両者からの出力デ
ータ(基準出力データと学習出力データ)が一致するか
否かを判断する(ステップST41)。この場合、PL
D40、41のいずれからも、出力データ「110」が
得られる。すなわち、PLD40およびPLD41から
与えられた出力信号は一致することとなるので、ステッ
プST61に進みCPU23は書き換えなしの決定を行
なう。
【0055】つぎに、図6Cに示す入力データ「11
1」が与えられた場合について検討する。この場合、同
様に図4ステップST3にて、Fフラグがオンでないの
でステップST31に進み、入力データが与えられる
と、この入力データをハードディスク26の入力値リス
トに加え(ステップST32)、PLD40、41に入
力データ「111」を出力する(ステップST33)。
この場合、PLD40からは出力データとして「10
0」が与えられる。一方、PLD41からは、出力デー
タ「000」が与えられる。この場合、両者が一致しな
いのでステップST41からステップST43に進み、
処理対象アルゴリズム番号iを初期化し、つぎに処理対
象アルゴリズム番号iをインクリメントし(ステップS
T45)、i番目のアルゴリズムの呼出しを行なう。
【0056】まず1番目のアルゴリズムが呼出される。
この場合、図6Cに示す入力データ「111」に対し
て、出力データ「100」を満足しないので、ステップ
ST49にてステップST51に進む。ステップST5
1では、全アルゴリズムを検出したかを判断し、ステッ
プST45に戻る。かかる処理を繰り返し、i番目のア
ルゴリズムとして、図11A、B、Cに示すアルゴリズ
ムが読み出された場合、ハードディスク26の入力値リ
ストに記憶されている入力データ「000」「001」
「111」の各入力データについて、第1ビット、第2
ビット、第3ビットの処理を、それぞれ前記図11A、
B、Cのアルゴリズムによって、処理すると、図6A、
B、Cに示す出力データを得ることができる。したがっ
て、CPU23はI/031を介してPLD41に図1
A、B、Cのアルゴリズムを実行するハードウェア構成
を満足するように書き換え命令を与える。これにより、
PLD41は図7Bに示す処理回路A’に書き換えられ
る。かかる書き換え処理については既に説明したので省
略する。
【0057】このように、入力された入力データをハー
ドディスク26の入力値リストに記憶しておき、全ての
入力データについて満足するアルゴリズムを決定し、か
かるアルゴリズムにPLD41を書き換えることによっ
て、最適なアルゴリズムに実行するPLD41を複製す
ることができる。
【0058】なお、本実施形態においては、処理対象ア
ルゴリズム番号を初期化することにより、一旦検討した
アルゴリズムについても再度検討するようにしている。
しかし、既に検討したアルゴリズムについては検討をし
ないようにしてもよい。この場合は、かかる再検討を防
止する為に、処理対象アルゴリズム番号iを初期化しな
いようにすればよい。
【0059】また、与えられた入力データについて、全
ての入力データを満足するアルゴリズムがハードディス
ク26に記憶されていない場合もあり得る。このため、
以下のような処理を行なう。
【0060】この様な場合には、図5ステップST51
において、図3に記憶された全てのアルゴリズムを検討
しても、満足するアルゴリズムがないこととなる。この
場合、CPU23は、ステップST55に進み、切り換
え回路を作成する書き換え命令をI/031を介してP
LD41に与える。さらにFフラグをオンとする。
【0061】ステップST55における処理について、
図10を用いて説明する。この場合、既にPLD41に
は処理回路A’の回路が生成されているものとする。C
PU23はさらに、図6Dに示す入力データ「010」
が与えられた場合に、処理回路A’を用いた場合には、
出力データ「000」が与えられないと判断し、かかる
入力データ「010」を処理する回路を、処理回路A’
とは別に、処理回路BとしてPLD41内に生成する書
換え命令を出力する。
【0062】この場合、入力データ「010」について
は処理回路Bへ、それ以外については処理回路A’へ与
える必要があるので、処理回路A’および処理回路Bの
前に、これを切り換えるために、比較回路、レジスタ、
およびスイッチを設けている。
【0063】具体的には、入力データが与えられると、
各々比較回路A、比較回路Bに与えられる。レジスタA
およびレジスタBにはそれぞれ処理回路A’で処理する
入力データ、および処理回路Bで処理する入力データが
記憶されている。与えられた入力データが何れと一致す
るかを判断し、一致する場合には比較回路A、Bにはス
イッチswa、swbに対して、これを接続する接続信
号を出力する。このようにして、並列的に与えられたデ
ータを何れかの処理回路A’または処理回路Bで処理す
ることができる。
【0064】なお、かかる接続スイッチについては、別
の入力データが与えられた場合に、何れの処理回路で処
理するのかを判断する為に、学習動作時には、強制的に
オン状態とされる。具体的には、CPU23は、Fフラ
グがオンである場合には、図10に示すスイッチsw
a、スイッチswdに対して、これを接続する接続命令
を出力するのである。
【0065】例えば、一旦図5ステップST55にて、
切替回路を生成する書換え命令を出力した場合には、こ
れを示すFフラグがオンにされる。したがって、この様
な場合には、CPU23は、図4ステップST3におい
て、Fフラグオンと判断し、スイッチ接続命令を出力す
る(図4ステップST5)。
【0066】つぎに、CPU23は入力データが与えら
れたか否かを判断し(ステップST7)、与えられない
場合には終了命令が与えられたか否かを判断し(ステッ
プST19)、与えられない場合にはステップST7の
処理を繰り返す。
【0067】一方、入力データが与えられると、CPU
23は、PLD40、41にこの入力データを出力す
る。PLD40、41から、学習出力データおよび基準
出力データが与えられる。なお、この場合、PLD41
からは、つぎのような2つの学習出力データが与えられ
る。
【0068】まず、処理回路A’からは、図11に示す
A、B、Cのアルゴリズムを実行した結果が与えられ
る。また、処理回路Bからは、図3に示すNo5のアル
ゴリズムを実行した結果が出力データが与えられる。こ
の2つの出力データについて、各々PLD40から与え
られた基準出力と比較を行なう。
【0069】そして、何れかで一致する場合には、ステ
ップST13にて満足するものがあると判断し、該当レ
ジスタに与えられた入力データを追加する命令を出力す
る(ステップST15)。例えば、処理回路A’で処理
した出力データと一致した場合には、レジスタAに与え
られた入力データが記憶される。これにより、再び同じ
入力データが与えられた場合には処理回路A’で処理さ
れることとなる。
【0070】このようにして、既に複数の処理回路がP
LD41に記憶されている場合には、何れかの処理回路
でこれを処理するように各レジスタの内容を変更するよ
うにしている。
【0071】これに対して、ステップST13にて、何
れの処理回路(処理回路A’、B)からの学習出力デー
タが、PLD40からの基準出力データと一致しない場
合はステップST17に進み、当該入力データを処理す
る処理回路Cを、同様の手法にて、PLD41に構成す
るような書き換え命令を出力する。すなわち、この場
合、処理回路Cを処理するために、同様の比較回路Cお
よびレジスタCが設けられる(図示せず)。
【0072】なお、この場合、新しく生成された処理回
路Cのスイッチ(図示せず)については、既にステップ
ST5にてスイッチ接続命令が与えられているので、強
制的にオン状態となる。
【0073】このように、複数の処理回路および何れの
処理回路に与えられた入力データを与えるかという切り
換え部を設けることによって、図3に示すアルゴリズム
に全部を満足するものがない場合についても、PLD4
0と同じ機能を持つPLD41を生成することができ
る。
【0074】かかる処理を繰り返すことによって、図1
9にて終了命令が与えられると、CPU23はPLD4
1に対して、スイッチ接続命令を解除するスイッチ接続
解除命令を出力する。これにより、図10に示すスイッ
チswa、swb、・・は接続が解除される。このよう
に、学習動作終了時には、スイッチをオフにしておくこ
とにより、各レジスタに記憶されているのと同じ入力デ
ータが与えられた場合のみ、対応する処理回路で処理が
行なわれる。
【0075】なお、このようにして、複製されたPLD
41の回路構成は、PLD40のそれとは異なる可能性
がある。しかし、PLD41は、機能的にはPLD40
と同じとなる。
【0076】このように、本実施形態においては、図5
ステップST49にて、メモリ27に記憶された入力デ
ータを全て満足するものがあるか否かを検討し、全て満
足するものがある場合には、これを処理するアルゴリズ
ムを実行する処理回路をPLD41に生成するようにし
ている。この様に、最適化処理を行なうことによって、
1つ1つのアルゴリズムを実行する回路をPLD41に
構成する必要がなくなる。したがって、容量が小さいP
LDであっても、PLD40と同じ機能を持つものを生
成することができる。
【0077】4.他の実施形態 なお、書換え手段7が、さらに、以下のような最適化処
理を行なうようにしてもよい。書換え対象装置19から
与えられる出力データおよび被複製対象装置17から与
えられる出力データが一致する候補を見つけた場合に
は、この候補の論理情報を実現可能とするよう、書換え
対象装置19に書換え命令を与えるととも、与えられた
入力データを記憶する。そして、別の入力データが与え
られた場合には、この入力データおよび前記記憶されて
いる入力データを全て満足する候補があるか否かを判断
し、かかる候補がある場合には、この候補の論理情報を
実現可能とするよう、書換え対象装置19に書換え命令
を与える。このように、順次、書換え対象装置を書換え
る最適化処理を行なうことにより、ある段階におけるす
べての入力データに対して、できるだけ早く、かつ少な
い容量でこれを処理できる書換え対象装置を提供するこ
とができる。また、書換え対象装置19の構成を複雑に
することなく、より多くの入力データを処理することが
可能となる。
【0078】また、書換え手段7は、以下のような処理
を行なうことも可能である。全ての入力データについ
て、前記書換え対象装置から与えられる出力データおよ
び前記被複製対象装置から与えられる出力データが一致
する候補が存在しない場合には、与えられた入力データ
に応じてデータ処理する領域を書換え対象装置19に複
数設ける書換え命令を与える。したがって、前記記憶し
ておく候補の数を増やす必要がない。かかる候補の数が
少ないことにより、一致判断の回数が減るので、書換え
命令を短時間で出力することができる。
【0079】なお、本実施形態においては全ての入力デ
ータについてメモリ27に記憶し、これを満足するか否
かを判断するようにしている。しかし、頻度の高いもの
または使用回数の多い入力データのみを記憶するように
してもよい。
【0080】なお、図11Cの第1ビットのアルゴリズ
ムについては、図11Dに示すようなアルゴリズムで実
行するようにしてもよい。また、図11Aに示すアルゴ
リズムについては、図11Bに示すアルゴリズムで実行
することもできる。このように、前後ビットとの関係を
参照するようなアルゴリズムを記憶しておくことによっ
て、より多くの入力データに対して満足する出力データ
を得られるアルゴリズムを記憶しておくことができる。
【0081】なお、本実施形態においては、処理回路
A’、処理回路B(図10参照)というように、あるア
ルゴリズムを実行する論理回路をPLD41内に形成す
るようにしたが、入力データに対する出力データのテー
ブルを記憶するようにしてもよい。
【0082】また、本実施形態においては、基準出力デ
ータと学習出力データとが一致するか否かを判断し、こ
れを用いて図3に示すアルゴリズムの何れか満足するも
のを特定するようにしている。しかし、これに限定され
ず学習出力データと基準出力データの差分および与えら
れた入力データから、入力データと出力データを得るよ
うにしてもよい。このように、直接または間接に入力お
よび出力データを得ることも可能である。
【0083】なお、図3に示すアルゴリズム番号につい
ては、順次小さいものからこれを検討するようにした
が、優先度を指定できるようにしてもよい。例えば、デ
ィジタルフィルタ等の処理アルゴリズムについては所定
の計算式でこれを特定することができる。したがって、
与えられる入力データの特性に応じてこれを優先的に検
討するようにしてもよい。これによって、より高速にP
LD41の内容を書き換えることができる。
【0084】なお、本実施形態においてはPLD40か
らPLD41を同じ機能を有するように複製するように
した。このように、PLD40からPLD41を得るた
めには、数多くの入力データを検討する必要があるの
で、非常に時間がかかる。しかし、一旦でき上がった場
合は、これを複製するのに時間がかからない。したがっ
て、一旦、同じ機能を有するPLDが得られた場合に
は、このPLD41の内容を読みだし、これを別のPL
Dの書き換えるようにしてもよい。具体的には、ROM
リーダにて、データを読み出し、ROMライターにて、
書込むようにすればよい。これによって、PLD40の
内容を読み出せないような場合、および被複製対象回路
がPLDでない場合等について、同様の機能を有するP
LDを、短時間にて複数形成することができる。
【0085】また、本実施形態においては、与えられた
入力データについて、単独でこれを検討するようにして
いる。しかし、一つ前に与えられた入力データとの関係
で処理する出力データを検討するようにしてもよい。こ
の場合は、既に入力された入力データのうち、当該入力
データの一つ前の入力データを読み出し、この一つ前の
入力データの値をも条件として、判断するようにすれば
よい。
【0086】例えば、同じ入力データ「001」でも、
その1つ前の入力データが「000」の場合と、「11
1」の場合で、出力データが異なる場合も考えられる。
この様な場合には、入力データ「001」の1つ前の入
力データが「000」か入力データ「111」のを区別
して判断するようにすればよい。
【0087】なお、かかる履歴を考慮する場合には、一
つ前だけでなく、二つ前、三つ前・・・をあわせて検討
することもできる。
【0088】なお、本実施形態においては、図6に示す
ようなビット長が3ビットの入力データが与えられた場
合について説明したが、入力データのデータ構造につい
ては、これに限定されるものではない。
【0089】また、本実施形態においてはPLD40か
ら同じ機能を持つPLD41を複製するようにした。し
かし、これに限定されるわけではなく、PLDに外付け
の装置(例えばモータ)を加えたものを被複製対象装置
として考え、同様の書換え対象論理装置として、これを
別の外付け装置(モータ)を含むものとして、考えるよ
うにしてもよい。
【0090】例えば、図12に示すように、装置70に
対して、ある入力データを与えた場合に、検出器77か
らどのような検出データを与えられるかを基準データと
して入力し、書換え対象装置80に、同様の入力データ
を与えた場合、どのような検出データが検出器87から
得られるか否かを判断し、これが一致するようにPLD
73の内容を書換えるようにすればよい。これにより、
モータM1とモータM0の特性が異なるような場合であ
っても、結果的に装置70と同様の機能を有する書換え
対象装置80を得ることができる。
【0091】この場合、PLD83が書換え対象回路に
該当し、モータM1が第2制御対象部に該当し、検出器
87が第1検出部に該当する。また、制御部73が被複
製対象回路に該当し、モータM0が第1制御対象部に該
当し、検出器77が第2検出部に該当する。
【0092】なお、上述の各実施形態においては、強誘
電体を有する記憶素子として、強誘電体コンデンサを有
する強誘電体記憶素子および強誘電体トランジスタを例
に説明したが、強誘電体を有する記憶素子は、強誘電体
コンデンサを有する強誘電体記憶素子または強誘電体ト
ランジスタに限定されるものではない。
【0093】また、プログラム可能な機能装置の一例と
して、PLDの一種であるPLAを図8、図9に示す例
に説明したが、これに限定されず、PLDの一種である
FPGA等にも適用可能である。さらに、この発明は、
PLDに限定されるものではなく、プログラム可能な機
能装置一般に適用される。
【図面の簡単な説明】
【図1】本発明にかかる機能複製装置1の機能ブロック
図である。
【図2】図1に示す機能複製装置1のハードウエア構成
の一例を示す図である。
【図3】ハードディスク26に記憶されているアルゴリ
ズムの一例を示す図である。
【図4】全体のフローチャートである。
【図5】全体のフローチャートである。
【図6】被複製対象回路に与えられる入力データおよび
出力される基準出力データの一例を示す図である。
【図7】PLD41の回路構成を示す図である。
【図8】この発明の一実施形態によるPLAを構成する
ロジックアレイの回路構成の一部を、模式的に示した図
面である。
【図9】この発明の一実施形態によるPLAを構成する
ロジックアレイに用いられるスイッチの拡大回路図であ
る。
【図10】PLD41の回路構成を示す図である。
【図11】ハードディスク26に記憶されているアルゴ
リズムの一例を示す図である。
【図12】他の実施形態を説明する為の図である。
【符号の説明】
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平8−46509(JP,A) 特開 平6−224743(JP,A) 特開 平6−180664(JP,A) 特開 平6−348533(JP,A) 特開 昭56−100744(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03K 19/173 G06F 17/50

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】所定の入力データが与えられるとこれに対
    応する出力データを出力する被複製対象装置の機能を複
    製する装置であって、 前記所定の入力データを書換え対象装置および前記被複
    製対象装置に与える入力付与手段、 特定の入力データについて対応する出力データを得る為
    の論理情報を候補として複数記憶する判断情報記憶手
    段、 前記判断情報記憶手段に記憶された複数の候補のうち、
    与えられた入力データ全てについて、前記書換え対象装
    置から与えられる出力データおよび前記被複製対象装置
    から与えられる出力データが一致する候補またはその組
    合わせを特定し、かかる候補またはその組合わせの論理
    情報を実現可能とするよう、前記書換え対象装置に書換
    え命令を与える書換え手段、 を備え、 前記書換え対象装置は、書換え対象回路、この書換え対
    象回路によって、制御される第1制御対象部およびこの
    第1制御対象部の動作を検出する第1検出部を有してお
    り、 前記被複製対象装置は、被複製対象回路、この被複製対
    象回路によって、制御される第2制御対象部およびこの
    第2制御対象部の動作を検出する第2検出部を有してお
    り、 前記書換え手段は、前記第1検出部および第2検出部に
    て検出した検出データを出力データとして一致判断を行
    なうこと、 を特徴とする機能複製装置。
  2. 【請求項2】請求項1の機能複製装置において、 前記書換え手段は、 1)前記第1検出部および第2検出部にて検出した検出デ
    ータが一致する候補を見つけた場合には、この候補の論
    理情報を実現可能とするよう、前記書換え対象装置に書
    換え命令を与えるととも、与えられた入力データを記憶
    しておき、 2)別の入力データが与えられた場合には、この入力デー
    タおよび前記記憶されている入力データを全て満足する
    候補があるか否かを判断し、かかる候補がある場合に
    は、この候補の論理情報を実現可能とするよう、前記書
    換え命令を与えること、を特徴とする機能複製装置。
  3. 【請求項3】請求項1の機能複製装置において、 前記書換え手段は、全ての入力データについて、前記書
    換え対象装置から与えられる出力データおよび前記被複
    製対象装置から与えられる出力データが一致する候補が
    存在しない場合には、与えられた入力データに応じてデ
    ータ処理する領域を前記書換え対象装置に複数設ける書
    換え命令を与えること、 を特徴とする機能複製装置。
  4. 【請求項4】請求項1〜請求項3のいずれかの機能複製
    装置において、 前記書換え対象回路の論理構成を読み出し、これを出力
    する論理構成読み出し手段、 を備えたことを特徴とする機能複製装置。
  5. 【請求項5】書換え対象回路およびこの書換え対象回路
    によって制御される第1制御対象部を有する書換え対象
    装置が、被複製対象回路およびこの被複製対象回路によ
    って、制御される第2制御対象部を有する被複製対象装
    置であって、所定の入力データが与えられるとこれに対
    応する出力データを出力する被複製対象装置と同じ機能
    を有するように、前記書換え対象回路を書換える機能複
    製方法であって、 特定の入力データについて対応する出力データを得る為
    の論理情報を候補として複数記憶しておき、 前記所定の入力データを前記書換え対象回路および前記
    被複製対象回路に与え、 前記複数の候補のうち、与えられた入力データ全てにつ
    いて、前記第1制御対象部および前記第2制御対象部の
    動作を検出して、両者が一致する候補を特定し、 前記特定した候補の論理情報を実現可能とするよう、前
    記書換え対象回路に書換え命令を与えること、 を特徴とする機能複製方法。
JP16274396A 1996-06-24 1996-06-24 機能複製装置および機能複製方法 Expired - Fee Related JP3518951B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP16274396A JP3518951B2 (ja) 1996-06-24 1996-06-24 機能複製装置および機能複製方法
US08/879,679 US6145115A (en) 1996-06-24 1997-06-23 Device for duplicating functions and a method for duplicating functions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16274396A JP3518951B2 (ja) 1996-06-24 1996-06-24 機能複製装置および機能複製方法

Publications (2)

Publication Number Publication Date
JPH1013213A JPH1013213A (ja) 1998-01-16
JP3518951B2 true JP3518951B2 (ja) 2004-04-12

Family

ID=15760423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16274396A Expired - Fee Related JP3518951B2 (ja) 1996-06-24 1996-06-24 機能複製装置および機能複製方法

Country Status (1)

Country Link
JP (1) JP3518951B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8295082B2 (en) * 2008-08-15 2012-10-23 Qualcomm Incorporated Gate level reconfigurable magnetic logic

Also Published As

Publication number Publication date
JPH1013213A (ja) 1998-01-16

Similar Documents

Publication Publication Date Title
CA2415281C (en) Architecture and method for partially reconfiguring an fpga
US6493862B1 (en) Method for compressing an FPGA bitsream
JP3168839B2 (ja) 論理エミュレーションシステム及び等価回路生成方法
EP1576471A2 (en) Programmable circuit and related computing machine and method
JPH0883193A (ja) インサーキットエミュレータ
JP3518951B2 (ja) 機能複製装置および機能複製方法
JP3518952B2 (ja) 機能複製装置および機能複製方法
JP3518950B2 (ja) 機能複製装置および機能複製方法
US5519649A (en) Micro-processor having rapid condition comparison function
US6145115A (en) Device for duplicating functions and a method for duplicating functions
KR960024927A (ko) 퍼지 논리 규칙을 평가하는 데이타 처리 시스템 및 그 방법
JP2918019B2 (ja) シングルチップマイクロプロセッサのテスト回路
JP2757388B2 (ja) マイクロプログラム制御装置
JP2802109B2 (ja) メモリアクセス制御方式
US20040062240A1 (en) Mechanism for data forwarding
EP0496002A1 (en) Register circuit
JPH01263819A (ja) 集積回路
JPS59195743A (ja) ジヨブ状態表示方式
JPS59112350A (ja) プログラム監視制御方式
US5822775A (en) Efficient data processing method for coefficient data in a digital dignal, processor
JPH027298A (ja) Prom内蔵デバイス
JPH04184535A (ja) 並列演算装置
JPH0628328A (ja) マルチプロセサの自己診断方式
JPH0798652A (ja) マイクロプロセッサ
JPH06149580A (ja) ファジィ集合処理用演算装置、記憶装置および計算機システム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040127

LAPS Cancellation because of no payment of annual fees