JPH1091672A - 回路テクノロジー変換方法 - Google Patents
回路テクノロジー変換方法Info
- Publication number
- JPH1091672A JPH1091672A JP8247387A JP24738796A JPH1091672A JP H1091672 A JPH1091672 A JP H1091672A JP 8247387 A JP8247387 A JP 8247387A JP 24738796 A JP24738796 A JP 24738796A JP H1091672 A JPH1091672 A JP H1091672A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- cell
- name
- function
- replacement
- 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.)
- Withdrawn
Links
Abstract
(57)【要約】
【課題】 既存の回路を利用して目的の回路を作成する
回路テクノロジー変換方法に関し、変換処理の簡単化を
図る。 【解決手段】 既存の回路を利用して、目的の回路を合
成出力する回路テクノロジー変換方法に於いて、既存の
回路を構成するユニットセルを、回路テクノロジーに依
存しない機能マクロに変換し、この機能マクロを用いて
目的の回路の機能を実現する過程を含み、テクノロジー
変換処理(A1)は、パラメータ解析部(A2)により
パラメータを解析し、回路チェック部(A5)により変
換可能か否かをチェックし、テスト回路削除部(A7)
によりテスト回路を削除し、素子変換部(A14)によ
り機能マクロの変換を行い、回路合成部(A18)によ
り機能マクロを用いて目的の回路を合成する。
回路テクノロジー変換方法に関し、変換処理の簡単化を
図る。 【解決手段】 既存の回路を利用して、目的の回路を合
成出力する回路テクノロジー変換方法に於いて、既存の
回路を構成するユニットセルを、回路テクノロジーに依
存しない機能マクロに変換し、この機能マクロを用いて
目的の回路の機能を実現する過程を含み、テクノロジー
変換処理(A1)は、パラメータ解析部(A2)により
パラメータを解析し、回路チェック部(A5)により変
換可能か否かをチェックし、テスト回路削除部(A7)
によりテスト回路を削除し、素子変換部(A14)によ
り機能マクロの変換を行い、回路合成部(A18)によ
り機能マクロを用いて目的の回路を合成する。
Description
【0001】
【発明の属する技術分野】本発明は、既存の回路を利用
して他の回路を構成する回路テクノロジー変換方法に関
する。データベースに格納された既存の回路を利用し
て、他の機能や特性を有する目的回路を作成する場合
に、各部の機能や特性についても変更する必要が生じ
る。従って、このような変更処理を簡単化することが要
望されている。
して他の回路を構成する回路テクノロジー変換方法に関
する。データベースに格納された既存の回路を利用し
て、他の機能や特性を有する目的回路を作成する場合
に、各部の機能や特性についても変更する必要が生じ
る。従って、このような変更処理を簡単化することが要
望されている。
【0002】
【従来の技術】各種の回路設計に於いては、コンピュー
タを用いる各種の論理合成ツール,論理最適化ツール,
各種のシミュレータ等が提供されており、又半導体集積
回路化する場合のレイアウト最適化ツール等も提供され
ており、これらは目的の回路を最初から設計する場合に
利用されている。
タを用いる各種の論理合成ツール,論理最適化ツール,
各種のシミュレータ等が提供されており、又半導体集積
回路化する場合のレイアウト最適化ツール等も提供され
ており、これらは目的の回路を最初から設計する場合に
利用されている。
【0003】又既に設計が完了し、且つ論理検証等も終
了した回路を利用して、この回路に類似した回路を設計
する手段も知られている。この場合、既存の回路を構成
する数10万乃至数100万のユニットセル或いはモジ
ュールについて設計者が検討し、要求される機能,特性
に対応するユニットセル或いはモジュールに変換し、又
は追加,削除を行って、目的の回路を形成する。又この
目的の回路については、最適化処理や論理検証等が行わ
れる。
了した回路を利用して、この回路に類似した回路を設計
する手段も知られている。この場合、既存の回路を構成
する数10万乃至数100万のユニットセル或いはモジ
ュールについて設計者が検討し、要求される機能,特性
に対応するユニットセル或いはモジュールに変換し、又
は追加,削除を行って、目的の回路を形成する。又この
目的の回路については、最適化処理や論理検証等が行わ
れる。
【0004】
【発明が解決しようとする課題】回路規模の増大と共
に、ユニットセルの個数並びに種類が多数となり、設計
者が目的の回路を形成する為のユニットセルやモジュー
ルの変換処理に要する時間が長くなる問題がある。更
に、検証済みのユニットセルやモジュールについても、
設計者が手を入れた可能性があるから、再度論理検証を
行う必要が生じる。従って、既存の回路を利用して目的
の回路を設計する場合は、最初から回路設計を行う場合
に比較して簡単となるが、前述のように多くの問題があ
った。本発明は、既存の回路を利用して目的の回路を形
成する場合の処理を簡単化することを目的とする。
に、ユニットセルの個数並びに種類が多数となり、設計
者が目的の回路を形成する為のユニットセルやモジュー
ルの変換処理に要する時間が長くなる問題がある。更
に、検証済みのユニットセルやモジュールについても、
設計者が手を入れた可能性があるから、再度論理検証を
行う必要が生じる。従って、既存の回路を利用して目的
の回路を設計する場合は、最初から回路設計を行う場合
に比較して簡単となるが、前述のように多くの問題があ
った。本発明は、既存の回路を利用して目的の回路を形
成する場合の処理を簡単化することを目的とする。
【0005】
【課題を解決するための手段】本発明の回路テクノロジ
ー変換方法は、(1)既存の回路を構成するユニットセ
ルを、回路テクノロジーに依存しない機能のみを示す機
能マクロに変換し、この機能マクロを用いて目的の回路
の機能を実現する過程を含むものである。ユニットセル
から機能マクロへの変換は自動的に行うことができ、又
機能マクロは回路テクノロジーに依存しないから、各種
の回路テクノロジーに於ける回路変換に適用することが
できる。
ー変換方法は、(1)既存の回路を構成するユニットセ
ルを、回路テクノロジーに依存しない機能のみを示す機
能マクロに変換し、この機能マクロを用いて目的の回路
の機能を実現する過程を含むものである。ユニットセル
から機能マクロへの変換は自動的に行うことができ、又
機能マクロは回路テクノロジーに依存しないから、各種
の回路テクノロジーに於ける回路変換に適用することが
できる。
【0006】又(2)既存の回路からテスト回路を含む
通常の回路動作には使用されない回路を削除した後、各
ユニットセルを、回路テクノロジーに依存しない機能の
みを有する機能マクロに変換する過程を含むことができ
る。削除したテスト回路は、機能マクロにより構成され
た目的の回路のユニットセルに変換した後、付加するこ
とができる。
通常の回路動作には使用されない回路を削除した後、各
ユニットセルを、回路テクノロジーに依存しない機能の
みを有する機能マクロに変換する過程を含むことができ
る。削除したテスト回路は、機能マクロにより構成され
た目的の回路のユニットセルに変換した後、付加するこ
とができる。
【0007】又(3)ユニットセルを、予め指定した特
定の機能マクロに強制置換する過程を含むことができ
る。即ち、対応するユニットセルの機能が相違する場合
や、機能マクロに変換できないユニットセルについて
は、強制置換により機能マクロに変換して、目的の回路
を形成することができる。
定の機能マクロに強制置換する過程を含むことができ
る。即ち、対応するユニットセルの機能が相違する場合
や、機能マクロに変換できないユニットセルについて
は、強制置換により機能マクロに変換して、目的の回路
を形成することができる。
【0008】
【発明の実施の形態】図1は本発明の実施の形態の概要
説明図であり、1は入力データベース(DB)、2は置
換パラメータ等を含む制御カード、3−1〜3−nはセ
ルライブラリー、4は変換処理機能部、5は出力データ
ベース(DB)である。入力データベース1に各種の既
存の回路が格納されており、この既存の回路を構成する
各セルについてはセルライブラリーに格納されている。
説明図であり、1は入力データベース(DB)、2は置
換パラメータ等を含む制御カード、3−1〜3−nはセ
ルライブラリー、4は変換処理機能部、5は出力データ
ベース(DB)である。入力データベース1に各種の既
存の回路が格納されており、この既存の回路を構成する
各セルについてはセルライブラリーに格納されている。
【0009】入力データベース1は、複数の既存の回路
を例えばネットリストとして格納しており、セルライブ
ラリー3−1〜3−nは、例えばネットリスト内のユニ
ットセル(ハードマクロ,ソフトマクロ)を格納してい
る。又制御カードはユニットセルの変換に必要な置換パ
ラメータ等を格納している。又変換処理機能部4は、入
力データベース1から、目的の回路に近似した既存の回
路(例えばネットリスト)を読込み、その回路データに
従ってセルライブラリー3−1〜3−nからユニットセ
ルのデータを読込み、又置換に必要な置換パラメータ等
を制御カード2から読込み、テスト回路の削除,セル−
マクロ変換,特殊セル置換等を行うものである。
を例えばネットリストとして格納しており、セルライブ
ラリー3−1〜3−nは、例えばネットリスト内のユニ
ットセル(ハードマクロ,ソフトマクロ)を格納してい
る。又制御カードはユニットセルの変換に必要な置換パ
ラメータ等を格納している。又変換処理機能部4は、入
力データベース1から、目的の回路に近似した既存の回
路(例えばネットリスト)を読込み、その回路データに
従ってセルライブラリー3−1〜3−nからユニットセ
ルのデータを読込み、又置換に必要な置換パラメータ等
を制御カード2から読込み、テスト回路の削除,セル−
マクロ変換,特殊セル置換等を行うものである。
【0010】そして、ユニットセルは、例えば、電流,
遅延時間等の特性を示すデータを除いて論理機能のみを
有する機能マクロに変換し、この機能マクロの組合せに
より目的の論理機能を発揮できる回路を構成し、回路合
成機能によって、論理の最適化,テスト回路生成等を行
って、目的の回路を出力データベース5に出力する。こ
の出力データベース5に格納された目的の回路に対し
て、既に知られている各種のツールにより動作の検証,
配置パターンの生成,最適化等の処理を行うことにな
る。
遅延時間等の特性を示すデータを除いて論理機能のみを
有する機能マクロに変換し、この機能マクロの組合せに
より目的の論理機能を発揮できる回路を構成し、回路合
成機能によって、論理の最適化,テスト回路生成等を行
って、目的の回路を出力データベース5に出力する。こ
の出力データベース5に格納された目的の回路に対し
て、既に知られている各種のツールにより動作の検証,
配置パターンの生成,最適化等の処理を行うことにな
る。
【0011】図2は本発明の実施の形態のフローチャー
トであり、図1の変換処理機能部4の機能部について示
すものである。即ち、テクノロジー変換処理(A1)と
して、パラメータ解析部(A2)と、回路チェック部
(A5)と、テスト回路削除部(A7)と、素子変換部
(A14)と、回路合成部(A18)とを含むものであ
る。
トであり、図1の変換処理機能部4の機能部について示
すものである。即ち、テクノロジー変換処理(A1)と
して、パラメータ解析部(A2)と、回路チェック部
(A5)と、テスト回路削除部(A7)と、素子変換部
(A14)と、回路合成部(A18)とを含むものであ
る。
【0012】パラメータ解析部(A2)は、入力データ
ベース1から既存の回路(例えば、ネットリスト)の入
力、制御カード2からの置換パラメータ等の入力、セル
ライブラリーからのユニットセルのデータの入力を行っ
た後に、実行時パラメータの解析(A3)、強制置換フ
ァイルの解析(A4)を行う。
ベース1から既存の回路(例えば、ネットリスト)の入
力、制御カード2からの置換パラメータ等の入力、セル
ライブラリーからのユニットセルのデータの入力を行っ
た後に、実行時パラメータの解析(A3)、強制置換フ
ァイルの解析(A4)を行う。
【0013】次に、回路チェック部(A5)により特殊
セルと強制置換ファイルの比較(A6)等を行い、回路
の変換が可能か否かをチェックするもので、機能マクロ
(回路テクノロジーに依存しない機能のみを示す素子)
への変換が不可能の素子については、制御カード2によ
る置換パラメータが設定されているか否かを等をチェッ
クする。又置換パラメータの雛型を自動生成してパラメ
ータの作成を簡単化することができる。
セルと強制置換ファイルの比較(A6)等を行い、回路
の変換が可能か否かをチェックするもので、機能マクロ
(回路テクノロジーに依存しない機能のみを示す素子)
への変換が不可能の素子については、制御カード2によ
る置換パラメータが設定されているか否かを等をチェッ
クする。又置換パラメータの雛型を自動生成してパラメ
ータの作成を簡単化することができる。
【0014】次にテスト回路削除部(A7)は、既存の
回路に於いて常時は動作しないテスト回路を削除するも
ので、クロック系の削除(A8)、データ系の削除(A
9)、非同期回路の削除(A10)、指定素子/ネット
の削除(A11)、テクノロジー固有の回路(IO等)
の削除(A12)、不要な素子/ネット(ネットリスト
上の素子間を接続する信号)の削除(A13)等の処理
を行う。
回路に於いて常時は動作しないテスト回路を削除するも
ので、クロック系の削除(A8)、データ系の削除(A
9)、非同期回路の削除(A10)、指定素子/ネット
の削除(A11)、テクノロジー固有の回路(IO等)
の削除(A12)、不要な素子/ネット(ネットリスト
上の素子間を接続する信号)の削除(A13)等の処理
を行う。
【0015】このテスト回路の削除は、例えば、予め指
定されたスキャン端子を基に、バウンダリスキャン回路
等を削除することになる。又指定素子/ネットの削除
は、制御カード2に削除指定された素子,ネット又はマ
クロテスト回路用の素子等を削除する。又不要な素子/
ネットの削除は、テスト回路の削除,削除指定された素
子/ネットの削除により生じた不要な回路についての素
子/ネットの削除を行うものである。
定されたスキャン端子を基に、バウンダリスキャン回路
等を削除することになる。又指定素子/ネットの削除
は、制御カード2に削除指定された素子,ネット又はマ
クロテスト回路用の素子等を削除する。又不要な素子/
ネットの削除は、テスト回路の削除,削除指定された素
子/ネットの削除により生じた不要な回路についての素
子/ネットの削除を行うものである。
【0016】次に素子変換部(A14)は、スタンダー
ドセルや複合セル等の機能マクロへの変換や強制指定さ
れたセルへの置換を行うセル−セル置換(A15)、等
価な機能マクロが存在する場合、その機能マクロに変換
するセル−セル置換(A16)、等価な機能マクロが存
在しない場合若しくは強制置換指定がされていない場合
の強制置換をモジュール単位で行うセル−モジュール置
換(A17)の処理を含むものである。
ドセルや複合セル等の機能マクロへの変換や強制指定さ
れたセルへの置換を行うセル−セル置換(A15)、等
価な機能マクロが存在する場合、その機能マクロに変換
するセル−セル置換(A16)、等価な機能マクロが存
在しない場合若しくは強制置換指定がされていない場合
の強制置換をモジュール単位で行うセル−モジュール置
換(A17)の処理を含むものである。
【0017】そして、回路合成部(A18)は、目的の
回路の機能を実現する機能マクロが揃ったことになるか
ら、最適化処理,テスト回路の付加等により目的の回路
を形成することになる。
回路の機能を実現する機能マクロが揃ったことになるか
ら、最適化処理,テスト回路の付加等により目的の回路
を形成することになる。
【0018】図3は置換指定の説明図であり、回路チェ
ック部(A5)に於いて、回路内の全ユニットセルにつ
いて、回路テクノロジー変換が実行可能か否かをチェッ
クするもので、その場合に、テスト回路削除部(A7)
及び素子変換部(A14)に於いて必要とする情報の抽
出も行うものである。置換指定は、図示のように、パラ
メータファイル置換パラメータの有無と、置換用ファイ
ルの指定の有無と、置換パラメータの要,不要とを含
み、例えば、パラメータファイル置換パラメータ及び置
換用ファイルの指定が無しで、置換パラメータが不要の
場合は、テクノロジー変換は無処理となる。
ック部(A5)に於いて、回路内の全ユニットセルにつ
いて、回路テクノロジー変換が実行可能か否かをチェッ
クするもので、その場合に、テスト回路削除部(A7)
及び素子変換部(A14)に於いて必要とする情報の抽
出も行うものである。置換指定は、図示のように、パラ
メータファイル置換パラメータの有無と、置換用ファイ
ルの指定の有無と、置換パラメータの要,不要とを含
み、例えば、パラメータファイル置換パラメータ及び置
換用ファイルの指定が無しで、置換パラメータが不要の
場合は、テクノロジー変換は無処理となる。
【0019】又パラメータファイル置換パラメータ及び
置換用ファイルの指定が無しで、置換パラメータを必要
とする場合は、テクノロジー変換の処理としては、パラ
メータファイルに要求置換パラメータを追記する。又パ
ラメータファイル置換パラメータが無し、置換用ファイ
ル指定が有りで、置換パラメータが不必要の場合、置換
用ファイル指定を実行する。以下同様にして、パラメー
タファイル置換パラメータと置換用ファイルの指定との
それぞれの有無と、置換パラメータの要,不要に対応し
たテクノロジー変換の処理が行われる。
置換用ファイルの指定が無しで、置換パラメータを必要
とする場合は、テクノロジー変換の処理としては、パラ
メータファイルに要求置換パラメータを追記する。又パ
ラメータファイル置換パラメータが無し、置換用ファイ
ル指定が有りで、置換パラメータが不必要の場合、置換
用ファイル指定を実行する。以下同様にして、パラメー
タファイル置換パラメータと置換用ファイルの指定との
それぞれの有無と、置換パラメータの要,不要に対応し
たテクノロジー変換の処理が行われる。
【0020】テスト回路削除部(A7)に於いては、予
め指定されたテスト外部端子からテスト回路のデザイン
・ルールに従ったテスト回路を抽出して削除するもの
で、クロック系の削除(A8)に於いては、例えば、ス
キャン回路の場合、スキャンクロック信号は、外部端子
から回路内部で論理和,論理積がとられることなく、バ
ッファを介して直接スキャン付きフリップフロップに供
給される。従って、指定されたスキャン外部端子から全
スキャン付きフリップフロップまでのネット(ネットリ
スト上の素子間の接続)及びバッファを介して接続され
ている場合は、そのバッファも削除する。実際には、ス
キャン外部端子の接続を切り、スキャンパスがアクティ
ブにならないように定数を変更することにより、削除し
た場合と等価とする。
め指定されたテスト外部端子からテスト回路のデザイン
・ルールに従ったテスト回路を抽出して削除するもの
で、クロック系の削除(A8)に於いては、例えば、ス
キャン回路の場合、スキャンクロック信号は、外部端子
から回路内部で論理和,論理積がとられることなく、バ
ッファを介して直接スキャン付きフリップフロップに供
給される。従って、指定されたスキャン外部端子から全
スキャン付きフリップフロップまでのネット(ネットリ
スト上の素子間の接続)及びバッファを介して接続され
ている場合は、そのバッファも削除する。実際には、ス
キャン外部端子の接続を切り、スキャンパスがアクティ
ブにならないように定数を変更することにより、削除し
た場合と等価とする。
【0021】又スキャンパスの構成は、回路内部の総て
の記憶素子が一連のシフトレジスタ構成となり、指定さ
れたスキャンデータ入力外部端子からスキャンデータを
入力して、指定されたスキャンデータ出力外部端子から
スキャンデータを出力することによりテストするもので
あり、スキャン付きフリップフロップのスキャン入力端
子は、スキャンパスを構成する時にのみ使用される。従
って、データ系の削除(A9)に於いては、全スキャン
付きフリップフロップのスキャン入力端子に接続するネ
ット及びバッファを介して接続されている場合、そのバ
ッファを含めて削除する。実際には、スキャン付きフリ
ップフロップのスキャン入力端子とネットとの接続を切
ることにより、スキャンパスの切り離しが行われる。
の記憶素子が一連のシフトレジスタ構成となり、指定さ
れたスキャンデータ入力外部端子からスキャンデータを
入力して、指定されたスキャンデータ出力外部端子から
スキャンデータを出力することによりテストするもので
あり、スキャン付きフリップフロップのスキャン入力端
子は、スキャンパスを構成する時にのみ使用される。従
って、データ系の削除(A9)に於いては、全スキャン
付きフリップフロップのスキャン入力端子に接続するネ
ット及びバッファを介して接続されている場合、そのバ
ッファを含めて削除する。実際には、スキャン付きフリ
ップフロップのスキャン入力端子とネットとの接続を切
ることにより、スキャンパスの切り離しが行われる。
【0022】又非同期回路は、テストモード信号を用
い、スキャンデザイン・ルールに適合した構成を有し、
又スキャン付きフリップフロップのクリア,プリセット
にも直接スキャンパスがアクティブとなるように接続さ
れている。従って、非同期回路の削除(A10)に於い
ては、指定されたテストモード端子が接続される論理の
前後関係より、その種類別に論理の削除を行うことにな
る。実際には、テストモード信号の接続を切り、スキャ
ンパスがアクティブとならないように定数を変更する。
い、スキャンデザイン・ルールに適合した構成を有し、
又スキャン付きフリップフロップのクリア,プリセット
にも直接スキャンパスがアクティブとなるように接続さ
れている。従って、非同期回路の削除(A10)に於い
ては、指定されたテストモード端子が接続される論理の
前後関係より、その種類別に論理の削除を行うことにな
る。実際には、テストモード信号の接続を切り、スキャ
ンパスがアクティブとならないように定数を変更する。
【0023】図4は指定素子/ネットの削除の説明図で
あり、図2に於ける指定素子/ネットの削除(A11)
の場合の指定の方法を示し、マクロテスト回路素子等の
削除を行う場合に相当し、(A)は素子名による指定、
(B)はネット名による指定の場合を示す。素子名によ
る指定の場合は、素子までのパス及び素子名で指定し、
階層の区切りは「/」又は「.」で行う。即ち、 delete instance:[[素子名.][[ 素子
名.]]素子名; により指定する。この場合、(A)に於ける「A000
1」,「A0002」,「A000101」は素子名を
示す。
あり、図2に於ける指定素子/ネットの削除(A11)
の場合の指定の方法を示し、マクロテスト回路素子等の
削除を行う場合に相当し、(A)は素子名による指定、
(B)はネット名による指定の場合を示す。素子名によ
る指定の場合は、素子までのパス及び素子名で指定し、
階層の区切りは「/」又は「.」で行う。即ち、 delete instance:[[素子名.][[ 素子
名.]]素子名; により指定する。この場合、(A)に於ける「A000
1」,「A0002」,「A000101」は素子名を
示す。
【0024】又ネット名による指定の場合は、ネットま
でのパス及びネット名で指定し、階層の区切りは「/」
又は「.」で行う。即ち、 delete net:[[素子名.][[ 素子名.]]素子
名; により指定する。この場合、(B)に於ける「A000
1」,「A0002」,「A000101X」は素子名
を示す。
でのパス及びネット名で指定し、階層の区切りは「/」
又は「.」で行う。即ち、 delete net:[[素子名.][[ 素子名.]]素子
名; により指定する。この場合、(B)に於ける「A000
1」,「A0002」,「A000101X」は素子名
を示す。
【0025】図5は素子変換の説明図であり、図2に於
ける素子変換部(A14)のセル−マクロ置換(A1
5)の場合を示す。即ち、ユニットセルの論理式が表現
できる場合に機能マクロへの変換処理を行うものであ
る。(a)は、ANDセルとNANDセルとのユニット
セルについて、遅延時間データや負荷駆動能力データ等
を除き、回路テクノロジーに依存しない論理機能のみを
取り出して、右側に示すように、論理ゲート記号で表し
た機能マクロとする。なお、A1,A2,Xは端子であ
り、各端子は対応している場合を示す。
ける素子変換部(A14)のセル−マクロ置換(A1
5)の場合を示す。即ち、ユニットセルの論理式が表現
できる場合に機能マクロへの変換処理を行うものであ
る。(a)は、ANDセルとNANDセルとのユニット
セルについて、遅延時間データや負荷駆動能力データ等
を除き、回路テクノロジーに依存しない論理機能のみを
取り出して、右側に示すように、論理ゲート記号で表し
た機能マクロとする。なお、A1,A2,Xは端子であ
り、各端子は対応している場合を示す。
【0026】又(b)は、端子A1,A2,Xを有する
ORセルとNORセルとの場合を示し、前述の場合と同
様に、右側に示す論理ゲート記号で表した機能マクロに
変換する。又(c)はFF(フリップフロップ)セル、
即ちDFFセルについて、右側に示す機能マクロに変換
する。このDフリップフロップに於けるCKはクロック
端子、Dはデータ端子、CLはクリア端子、Q,XQは
出力端子を示す。
ORセルとNORセルとの場合を示し、前述の場合と同
様に、右側に示す論理ゲート記号で表した機能マクロに
変換する。又(c)はFF(フリップフロップ)セル、
即ちDFFセルについて、右側に示す機能マクロに変換
する。このDフリップフロップに於けるCKはクロック
端子、Dはデータ端子、CLはクリア端子、Q,XQは
出力端子を示す。
【0027】又(d)はスキャン付きフリップフロップ
の場合を示し、SCAN−FFセルのスキャンパスに関
連する端子A,B,IH,SI(スキャン入力端子),
SO(スキャン出力端子)等を除いて、右側に示すよう
に、クロック端子CKとデータ端子Dとクリア端子CL
と出力端子Q,XQとを有する機能のみで表す機能マク
ロのDFFに変換する。
の場合を示し、SCAN−FFセルのスキャンパスに関
連する端子A,B,IH,SI(スキャン入力端子),
SO(スキャン出力端子)等を除いて、右側に示すよう
に、クロック端子CKとデータ端子Dとクリア端子CL
と出力端子Q,XQとを有する機能のみで表す機能マク
ロのDFFに変換する。
【0028】又(e),(f)は、論理積と論理和との
機能を含むCOMPLEXセルを、回路テクノロジーに
依存しない機能マクロに変換する場合を示し、(e)は
データ入力端子A1,A2の論理積とデータ入力端子B
1,B2の論理積との反転論理和をデータ出力端子Xか
ら出力するユニットセルの場合を示し、右側に示すよう
に、2個のアンドゲートと1個のノアゲートとからなる
機能マクロに変換される。又(f)はデータ入力端子A
1,A2の論理積とデータ入力端子Bの反転論理和をデ
ータ出力端子Xから出力するユニットセルの場合を示
し、右側に示すように、1個のアンドゲートと1個のノ
アゲートとからなる機能マクロに変換される。
機能を含むCOMPLEXセルを、回路テクノロジーに
依存しない機能マクロに変換する場合を示し、(e)は
データ入力端子A1,A2の論理積とデータ入力端子B
1,B2の論理積との反転論理和をデータ出力端子Xか
ら出力するユニットセルの場合を示し、右側に示すよう
に、2個のアンドゲートと1個のノアゲートとからなる
機能マクロに変換される。又(f)はデータ入力端子A
1,A2の論理積とデータ入力端子Bの反転論理和をデ
ータ出力端子Xから出力するユニットセルの場合を示
し、右側に示すように、1個のアンドゲートと1個のノ
アゲートとからなる機能マクロに変換される。
【0029】又(g)は、データ入力端子A1,A2,
B1,B2と制御信号端子S1,S2,S3と有するセ
レクタセルの場合を示し、右側に示すように、データ入
力端子A1,B1と制御信号端子S1とを有するセレク
タSELと、データ入力端子A2,B2と制御信号端子
S2とを有するセレクタSELと、それらのセレクタの
出力信号を入力して制御信号端子S3からの制御信号に
よって選択するセレクタSELとを有する機能マクロに
変換される。
B1,B2と制御信号端子S1,S2,S3と有するセ
レクタセルの場合を示し、右側に示すように、データ入
力端子A1,B1と制御信号端子S1とを有するセレク
タSELと、データ入力端子A2,B2と制御信号端子
S2とを有するセレクタSELと、それらのセレクタの
出力信号を入力して制御信号端子S3からの制御信号に
よって選択するセレクタSELとを有する機能マクロに
変換される。
【0030】図6は素子変換のセル−セル変換の説明図
であり、図2に於けるセル−セル変換(A16)につい
て示すものである。回路内の全セルが処理対象で、「セ
ル指定有り」,「指定されたセルへの置換が可能」の条
件を満たしている場合、指定されたセルへの置換処理を
行う。指定方法は、パラメータファイル内に、「置換指
定」を記述するか、「置換指定」のみ記述したファイル
を、コマンドにより直接指定するかの何れかの方法を適
用することができる。変換されたセルについてはそれぞ
れ回路テクノロジーに依存しない機能マクロに変換され
る。
であり、図2に於けるセル−セル変換(A16)につい
て示すものである。回路内の全セルが処理対象で、「セ
ル指定有り」,「指定されたセルへの置換が可能」の条
件を満たしている場合、指定されたセルへの置換処理を
行う。指定方法は、パラメータファイル内に、「置換指
定」を記述するか、「置換指定」のみ記述したファイル
を、コマンドにより直接指定するかの何れかの方法を適
用することができる。変換されたセルについてはそれぞ
れ回路テクノロジーに依存しない機能マクロに変換され
る。
【0031】図6の(A)は、置換指定の場合の素子名
による指定及びセル名による指定の場合を示し、素子名
による指定の場合は、素子までのパス及び素子名で指定
し、階層の区切りは「/」又は「.」で指定する。そし
て、 instance convert:org instance =[[素子名.][[ 素子名.]]素子名,new cell=置換セル名; とし、一例として置換セル名をRAM01Aとした場合
を示している。
による指定及びセル名による指定の場合を示し、素子名
による指定の場合は、素子までのパス及び素子名で指定
し、階層の区切りは「/」又は「.」で指定する。そし
て、 instance convert:org instance =[[素子名.][[ 素子名.]]素子名,new cell=置換セル名; とし、一例として置換セル名をRAM01Aとした場合
を示している。
【0032】又セル名による指定は、同一セル名のユニ
ットセルが総て対象となるもので、 cell convert: org cell =置換前セル名,new cell=置換セル名; とし、一例として、置換前セル名をRAM02、置換セ
ル名をRAM02Aとした場合を示している。
ットセルが総て対象となるもので、 cell convert: org cell =置換前セル名,new cell=置換セル名; とし、一例として、置換前セル名をRAM02、置換セ
ル名をRAM02Aとした場合を示している。
【0033】又端子構成が同一の場合は、前述のよう
に、素子名又はセル名によって指定して変換することが
できるが、端子構成が異なるセルに強制置換する場合、
各端子毎の対応も指定する必要がある。図6の(B)は
この場合の一例を示すもので、素子名による指定の場合
は、前述の場合と同様に、素子までのパス及び素子名で
指定する。そして、 instance covert: org instance =[[素子名.] [[素子名.]]素子名,new cell=置換セル名, org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、前端子名については(A1/A2/
B/C/X)、後端子名については(A1/A2/B1
/B2/X)の場合を示している。
に、素子名又はセル名によって指定して変換することが
できるが、端子構成が異なるセルに強制置換する場合、
各端子毎の対応も指定する必要がある。図6の(B)は
この場合の一例を示すもので、素子名による指定の場合
は、前述の場合と同様に、素子までのパス及び素子名で
指定する。そして、 instance covert: org instance =[[素子名.] [[素子名.]]素子名,new cell=置換セル名, org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、前端子名については(A1/A2/
B/C/X)、後端子名については(A1/A2/B1
/B2/X)の場合を示している。
【0034】又セル名による指定の場合は、同一セル名
のセルが総て対象となるもので、 cell convert: org cell =置換前セル名,new cell=置換セル名 org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、置換前セル名についてはAN4L、
置換セル名についてはAN224H、前端子名について
は(A1/A2/B/C/X)、後端子名については
(A1/A2/B1/B2/X)の場合を示している。
のセルが総て対象となるもので、 cell convert: org cell =置換前セル名,new cell=置換セル名 org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、置換前セル名についてはAN4L、
置換セル名についてはAN224H、前端子名について
は(A1/A2/B/C/X)、後端子名については
(A1/A2/B1/B2/X)の場合を示している。
【0035】図7は素子変換のセル−モジュール変換の
説明図であり、図2に於けるセル−モジュール変換(A
17)を示し、回路内の全セルが処理対象で「モジュー
ル指定が有る」、「指定されたモジュールへの置換が可
能」を満たした場合に、指定されたモジュールへの置換
処理を行うもので、この置換後に、階層展開指定された
場合は、平坦化(階層設計データの階層を無くし、上位
の階層に回路情報を複写する)処理を行う。この場合
も、素子名による指定とセル名による指定とがある。
説明図であり、図2に於けるセル−モジュール変換(A
17)を示し、回路内の全セルが処理対象で「モジュー
ル指定が有る」、「指定されたモジュールへの置換が可
能」を満たした場合に、指定されたモジュールへの置換
処理を行うもので、この置換後に、階層展開指定された
場合は、平坦化(階層設計データの階層を無くし、上位
の階層に回路情報を複写する)処理を行う。この場合
も、素子名による指定とセル名による指定とがある。
【0036】素子名による指定の場合、前述と同様に、
素子までのパス及び素子名で指定し、階層の区切りは
「/」又は「.」で示し、端子の対応も指定する。 instance convert: org instance =[[素子名.][[ 素子名.]]素子名, new mldule=置換モジュール名, hexpand=階層展開モード{non,single,all}, org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、置換モジュール名をNEWMODと
し、階層展開モードhexpandをallとした場合
を示している。なお、階層展開モードのnonは、階層
展開を行わないことを示し、singleは、指定モジ
ュールのみ階層展開を行うことを示し、又allは下位
階層総てを階層展開(平坦化)することを示す。
素子までのパス及び素子名で指定し、階層の区切りは
「/」又は「.」で示し、端子の対応も指定する。 instance convert: org instance =[[素子名.][[ 素子名.]]素子名, new mldule=置換モジュール名, hexpand=階層展開モード{non,single,all}, org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、置換モジュール名をNEWMODと
し、階層展開モードhexpandをallとした場合
を示している。なお、階層展開モードのnonは、階層
展開を行わないことを示し、singleは、指定モジ
ュールのみ階層展開を行うことを示し、又allは下位
階層総てを階層展開(平坦化)することを示す。
【0037】又セル名による指定の場合は、前述と同様
に、同一セル名のセルが対象となる。又端子の対応も指
定する。 cell convert: org instance =[[素子名.][[ 素子名.]]素子名, new mldule=置換モジュール名, hexpand=階層展開モード{non,single,all}, org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、置換モジュール名をNEWMODと
し、階層展開モードhexpandをsingleとし
た場合を示している。
に、同一セル名のセルが対象となる。又端子の対応も指
定する。 cell convert: org instance =[[素子名.][[ 素子名.]]素子名, new mldule=置換モジュール名, hexpand=階層展開モード{non,single,all}, org terminal=(前端子名1,前端子名2,前端子名2), new terminal=(後端子名1,後端子名2,後端子名2); とし、一例として、置換モジュール名をNEWMODと
し、階層展開モードhexpandをsingleとし
た場合を示している。
【0038】従って、既存の回路のユニットセルを、機
能のみの機能マクロに変換し、又強制置換指定等により
他の機能マクロに置換し、又不要のユニットセルに対応
する機能マクロを削除して、目的の回路のユニットセル
に対応する機能マクロを備えた構成とするものであり、
従って、機能マクロは回路テクノロジーに依存しないも
のであるから、目的の回路のユニットセルの構成に影響
されないで、既存の回路から目的の回路への変換が容易
となる。
能のみの機能マクロに変換し、又強制置換指定等により
他の機能マクロに置換し、又不要のユニットセルに対応
する機能マクロを削除して、目的の回路のユニットセル
に対応する機能マクロを備えた構成とするものであり、
従って、機能マクロは回路テクノロジーに依存しないも
のであるから、目的の回路のユニットセルの構成に影響
されないで、既存の回路から目的の回路への変換が容易
となる。
【0039】又変換先の回路テクノロジーに対応する素
子がない場合は、その素子に対応する他のモジュール
を、HDL言語やネットリスト等により予め作成してお
き、これに置換する処理を含めることができる。この場
合、置換すべき素子名と、作成したモジュール名及び端
子名の対応情報を与えておくことにより、素子名や機能
が異なるものへの変換が可能となる。従って、異なる機
能への変換を意図した場合にも、このような置換する処
理を含めることができる。
子がない場合は、その素子に対応する他のモジュール
を、HDL言語やネットリスト等により予め作成してお
き、これに置換する処理を含めることができる。この場
合、置換すべき素子名と、作成したモジュール名及び端
子名の対応情報を与えておくことにより、素子名や機能
が異なるものへの変換が可能となる。従って、異なる機
能への変換を意図した場合にも、このような置換する処
理を含めることができる。
【0040】図8は回路合成部の説明図であり、図2の
回路合成部(A18)に相当し、機能マクロ(B1)に
よる目的の回路の機能に変換されると、論理最適化(B
2)により各部の論理の最適化処理が行われ、又セルマ
ッピング(B3)によりセルの配置処理が行われ、テス
ト回路生成(B4)により、スキャン回路等のテスト回
路の生成処理が行われる。又クロックパス生成(B5)
によりクロック信号を供給するパスの形成処理が行わ
れ、タイミング調整(B6)により各部の動作のタイミ
ングが遅延特性等を基に調整されて、目的の回路(B
7)に変換されることになり、それ以後は、実際の大規
模集積回路等の製造に必要な処理が既に知られている各
種のツールを用いて実行される。
回路合成部(A18)に相当し、機能マクロ(B1)に
よる目的の回路の機能に変換されると、論理最適化(B
2)により各部の論理の最適化処理が行われ、又セルマ
ッピング(B3)によりセルの配置処理が行われ、テス
ト回路生成(B4)により、スキャン回路等のテスト回
路の生成処理が行われる。又クロックパス生成(B5)
によりクロック信号を供給するパスの形成処理が行わ
れ、タイミング調整(B6)により各部の動作のタイミ
ングが遅延特性等を基に調整されて、目的の回路(B
7)に変換されることになり、それ以後は、実際の大規
模集積回路等の製造に必要な処理が既に知られている各
種のツールを用いて実行される。
【0041】
【発明の効果】以上説明したように、本発明は、既存の
回路を利用して目的の回路を形成する場合、変換処理機
能部4によりユニットセルを回路テクノロジーに依存し
ない機能マクロに変換し、その機能マクロにより目的の
回路の機能を実現する過程を含むものであり、ユニット
セル対応の回路変換に於ける処理の誤りが防止できると
共に、ユニットセルから機能マクロへの変換は自動化で
きるから、処理時間の短縮を図ることができる利点があ
る。又機能マクロの状態で保存することにより、各種の
回路テクノロジーに於けるマッピングが可能となる利点
がある。
回路を利用して目的の回路を形成する場合、変換処理機
能部4によりユニットセルを回路テクノロジーに依存し
ない機能マクロに変換し、その機能マクロにより目的の
回路の機能を実現する過程を含むものであり、ユニット
セル対応の回路変換に於ける処理の誤りが防止できると
共に、ユニットセルから機能マクロへの変換は自動化で
きるから、処理時間の短縮を図ることができる利点があ
る。又機能マクロの状態で保存することにより、各種の
回路テクノロジーに於けるマッピングが可能となる利点
がある。
【図1】本発明の実施の形態の概要説明図である。
【図2】本発明の実施の形態のフローチャートである。
【図3】置換指定の説明図である。
【図4】指定素子/ネットの削除の説明図である。
【図5】素子変換の説明図である。
【図6】素子変換のセル−セル変換の説明図である。
【図7】素子変換のセル−モジュール変換の説明図であ
る。
る。
【図8】回路合成部の説明図である。
1 入力データベース 2 制御カード 3−1〜3−n セルライブラリー 4 変換処理機能部 5 出力データベース
Claims (3)
- 【請求項1】 既存の回路を利用して目的の回路を合成
出力する回路テクノロジー変換方法に於いて、 前記既存の回路を構成するユニットセルを、回路テクノ
ロジーに依存しない機能のみを示す機能マクロに変換
し、該機能マクロを用いて前記目的の回路の機能を実現
する過程を含むことを特徴とする回路テクノロジー変換
方法。 - 【請求項2】 前記既存の回路からテスト回路を含む通
常の回路動作には使用されない回路を削除した後、各ユ
ニットセルを、回路テクノロジーに依存しない機能のみ
を有する機能マクロに変換する過程を含むことを特徴と
する請求項1記載の回路テクノロジー変換方法。 - 【請求項3】 前記ユニットセルを、予め指定した特定
の機能マクロに強制置換する過程を含むことを特徴とす
る請求項1又は2記載の回路テクノロジー変換方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8247387A JPH1091672A (ja) | 1996-09-19 | 1996-09-19 | 回路テクノロジー変換方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8247387A JPH1091672A (ja) | 1996-09-19 | 1996-09-19 | 回路テクノロジー変換方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1091672A true JPH1091672A (ja) | 1998-04-10 |
Family
ID=17162680
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8247387A Withdrawn JPH1091672A (ja) | 1996-09-19 | 1996-09-19 | 回路テクノロジー変換方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1091672A (ja) |
-
1996
- 1996-09-19 JP JP8247387A patent/JPH1091672A/ja not_active Withdrawn
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3027009B2 (ja) | 設計取り込みシステム | |
| US6779158B2 (en) | Digital logic optimization using selection operators | |
| US5644498A (en) | Timing shell generation through netlist reduction | |
| US7111269B2 (en) | Comparison of two hierarchical netlist to generate change orders for updating an integrated circuit layout | |
| US20030009731A1 (en) | Digital circuit layout techniques | |
| US7958473B2 (en) | Method and computer program for configuring an integrated circuit design for static timing analysis | |
| JP3005538B1 (ja) | 機能ブロックのモデル作成によるlsi設計システム及びそのlsi設計方法 | |
| US6567971B1 (en) | Circuit synthesis method using technology parameters extracting circuit | |
| US20040088662A1 (en) | Timing path detailer | |
| US20050204317A1 (en) | Integrated circuit design system, integrated circuit design program, and integrated circuit design method | |
| US6704916B1 (en) | Method and apparatus for optimizing placement and routing and recording medium for recording program for optimizing placement and routing | |
| US7757188B2 (en) | Method and apparatus for designing integrated circuit | |
| JPH1091672A (ja) | 回路テクノロジー変換方法 | |
| US6877140B1 (en) | Method and system for generating a schematic representing bus structures | |
| JPH1173447A (ja) | 論理回路の自動合成方式 | |
| JP2752923B2 (ja) | 論理シミュレーション装置および論理回路情報作成方法 | |
| JP2930087B2 (ja) | 論理設計支援システム | |
| JP2002032427A (ja) | Lsiの接続検証装置、接続検証方法および接続検証プログラムを記録した媒体 | |
| US7350162B2 (en) | Structure analytic program | |
| JP2845154B2 (ja) | 論理シミュレーション用モデルの作成方法 | |
| JP2923914B2 (ja) | 集積回路のcadシステム | |
| JPH0997281A (ja) | パストランジスタ論理設計方法 | |
| JP3561661B2 (ja) | 半導体集積回路及び半導体集積回路の設計方法 | |
| JP2856141B2 (ja) | 遅延情報処理方法及び遅延情報処理装置 | |
| JP3199036B2 (ja) | I/o部分回路自動生成システム及びその方法ならびにi/o部分回路自動生成プログラムを格納した記憶媒体 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20031202 |