JP3134132B2 - 論理回路自動生成装置 - Google Patents

論理回路自動生成装置

Info

Publication number
JP3134132B2
JP3134132B2 JP04179177A JP17917792A JP3134132B2 JP 3134132 B2 JP3134132 B2 JP 3134132B2 JP 04179177 A JP04179177 A JP 04179177A JP 17917792 A JP17917792 A JP 17917792A JP 3134132 B2 JP3134132 B2 JP 3134132B2
Authority
JP
Japan
Prior art keywords
logic circuit
circuit
state
information
automatic
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
JP04179177A
Other languages
English (en)
Other versions
JPH05250437A (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.)
MegaChips Corp
Original Assignee
MegaChips Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MegaChips Corp filed Critical MegaChips Corp
Publication of JPH05250437A publication Critical patent/JPH05250437A/ja
Application granted granted Critical
Publication of JP3134132B2 publication Critical patent/JP3134132B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、論理回路自動生成装置
に関し、特にCAD(Computer Aided Design)におい
て、オペレータの仕様入力に対し、論理回路の一表現形
態での結果物を自動生成する装置に関するものである。
【0002】
【従来の技術】従来、論理回路の生成は、図18に示す
ような論理素子を用いて、要求される機能を論理素子の
組み合せ作業を行うことで生成している。
【0003】このような、論理回路の生成では要求機能
で示される処理内容を、論理素子間の接続で実現する作
業が必要であり、この作業の作業者には、論理素子の個
々の知識と論理素子の組み合わせによって実現される機
能回路の知識が必要である。
【0004】このため、論理回路生成は、専門的な知識
を有する作業者による手作業が必要であり、回路の開発
期間を短縮するのは容易ではなかった。
【0005】そこで、こうした知識を必要とすることな
く論理回路を自動合成する装置が既に開発されており、
これはハードウエア記述言語(Hardware Description L
angage:HDL)を入力すれば、これを要求仕様を満た
す論理回路結果物に自動変換してくれるものである。
【0006】特開平2−7171号公報に示された論理
回路合成方式はこのような従来の自動合成装置の一例を
示すもので、このシステムはレジスタレベルの機能記述
言語を入力すれば、マクロ展開ルールベースが中間コー
ドを作成し、変換ルールベース部がその中間コードをネ
ットリストに自動変換するものであり、変換後のネット
リストをVLSI CADツールに入力すれば、要求仕
様を満たすマスクデータが得られるので、回路素子の特
別の知識がない作業者であっても、集積回路の所要の機
能仕様を記述すれば、要求仕様を満足する集積回路を自
動設計することが可能となっている。
【0007】
【発明が解決しようとする課題】しかしながら、この従
来の論理回路合成方式では、論理回路の仕様を直観にな
じみにくい機能記述言語で最終的な回路の構造を意識し
て記述する必要があるため、所要の仕様を作成するのに
熟練を要し、かつ入力の確認が困難であるという問題が
あった。
【0008】この発明は、上記のような従来のものの問
題点を解消するためになされたもので、作業者にとって
も作成が容易な図的表現を用いて記述した回路の要求仕
様を入力とし、目的とする論理回路の用途の変更やセル
のライブラリの仕様の変更にも容易に対応でき、しかも
論理回路の持つべき機能を自然にかつコンパクトに表現
でき、作業者にとっても作成が容易な図的表現を用いて
記述した回路の要求仕様を入力すれば、要求仕様を満た
す論理回路の一表現形態での結果物に変換できる論理回
路自動生成装置を得ることを目的とする。
【0009】また、上述のような従来の論理回路自動生
成装置では、合成しようとする回路の仕様記述をハード
ウェア記述言語で行っているが、実際に効果的な回路を
生成するために、要求仕様とは直接関係のない、合成さ
れるべき回路の構成に関した情報も同時に記述する必要
があった。またこの合成に関しての記述は仕様を示す部
分と混在して記述する必要があり、その記述が困難であ
り、かつ、いったん記述した後のハードウェア記述言語
から合成すべき回路の仕様を判読することが困難であ
る。さらに合成される回路の構成を示した部分も同様に
判読することが困難であった。
【0010】また、上述のような問題を解消できるもの
として、上述の、本件出願人により開発された自動生成
装置のように、図的言語で入力可能としたものがある
が、この装置では回路仕様の判読性は向上しているが、
合成されるべき回路の構成に関した情報を同時に記述す
る必要があるという問題は依然解決されていなかった。
【0011】この発明は、仕様の判読が容易であり、ま
た合成される回路の構成に関した情報も容易に理解する
ことができ、より効率よく論理回路の自動生成を実行で
きる装置を得ることを目的とする。
【0012】さらに、上述のような問題を解消できる、
上述の、本件出願人により開発された自動生成装置など
では、要求仕様を満足する論理回路を、データを処理す
る部分である情報処理部と、この情報処理部のコントロ
ールをつかさどる回路である情報制御部の2つに分割す
ることにより、まず上位構造構築を行ない、さらにこの
2つの回路をそれぞれさらに機能分割することにより、
論理合成を行なっているが、この装置ではコントロール
をつかさどる回路を単一のシーケンスマシンとして合成
しているため、総合的な回路の動作速度はコントロール
される回路ブロックの動作のうち、もっとも時間のかか
る動作によって制限されてしまうという問題があった。
【0013】この発明は、回路ブロックの動作のうち、
処理にもっとも時間のかかる動作によって論理回路の全
体的な動作速度が制限されてしまうのを解消でき、大規
模な回路であっても高速な動作を行う回路を生成するこ
とができる論理回路自動生成装置を得ることを目的とし
ている。
【0014】
【課題を解決するための手段】この発明の仕様入力によ
る論理回路自動生成装置においては、状態遷移図による
要求機能の表現を入力することによって、入力された状
態遷移図の状態間の遷移情報および各状態での処理内容
を抽出し、状態間の遷移情報および各状態での処理内容
に応じて、論理回路の一表現形態での結果物を生成する
ようにしたものである。
【0015】また、その論理回路の一表現形態での結果
物の生成を、中間生成物生成手段により、論理回路が持
つべき機能を情報制御部と情報処理部からなる中間生成
物に分け、情報制御部構築手段により情報制御部を遷移
状態発生器と制御信号発生器に分け、情報制御部特定手
段により遷移状態発生器と制御信号発生器を論理回路素
子および配線の組合せにより実現できる回路とその間の
配線の組合せとして特定し、情報処理部を論理回路素子
および配線の組合せにより実現できる回路とその間の配
線の組合せとして特定することにより行なうように構成
したものである。
【0016】この発明に係る論理回路自動生成装置は、
図的入力によって、生成すべき回路の回路構成方法を指
定する手段を備えるようにしたものである。
【0017】また、この発明に係る論理回路自動生成装
置は、外部から入力される、図的入力もしくはハードウ
ェア記述言語の少なくとも一方によって示された仕様を
実現する論理回路結果物を生成する装置において、その
示された仕様を実現する回路構成方法を、図的入力によ
って指定する手段を備えるようにしたものである。
【0018】また、この発明に係る論理回路自動生成装
置は、外部からの仕様入力によって示された仕様のう
ち、共通した論理回路結果物によって実現できる共通可
能部分を、自動的に抽出し、その共通可能部分をオペレ
ータに知らしめるべく図的表現を用いて表示する手段を
備えるようにしたものである。
【0019】さらに、この発明に係る論理回路自動生成
装置は、オペレータによって上記共通した論理回路結果
物によって実現できる部分を図的入力によって指定する
手段を備えるようにしたものである。
【0020】この発明に係る論理回路自動生成装置は、
コントロールをつかさどる部分に、コントロールされる
回路のそれぞれの状態における動作の速度に合わせた信
号を生成するような回路を合成する機能を持たせるよう
にしたものである。
【0021】また、この発明に係る論理回路自動生成装
置は、コントロールをつかさどる部分に補助カウンタ機
能を用いるようにしたものである。
【0022】さらに、この発明に係る論理回路自動生成
装置は、補助カウンタ機能部にセットする値をコントロ
ールされる回路毎に動作速度を自動的に計算した値を用
いるようにしたものである。
【0023】
【作用】本発明においては、論理回路が持つべき機能を
順次分割することにより論理合成を行なうように構成し
たので、論理回路の用途の変更やセルのライブラリの変
更があった場合、これに対応して論理結果物生成手段の
対応する段階のみを変更するだけで、仕様の変更に対し
柔軟に対応できる。
【0024】また、論理回路の要求を満たす機能を自然
にかつコンパクトに表現でき、しかも設計作業者にとっ
ても記述しやすい、表現能力の大きい、状態遷移図によ
る要求機能の表現を入力可能としているので、論理素子
および論理素子間の組合せに係わる知識なしに論理回路
を生成できる。
【0025】この発明においては、合成されるべき回路
の構成に関した情報を図的入力によって表現するように
したため、仕様の判読が容易となり、より効率のよい論
理回路自動生成装置を得ることができる。
【0026】また、この発明においては、回路を生成す
るために仕様とは直接関係のない、合成されるべき回路
の構成に関した情報を図的入力によって表現するように
したため、仕様の判読が容易であり、また合成されるべ
き回路の構成に関した情報も図的表現によって入力可能
なため、その内容を容易に理解することができる。この
結果、より効率のよい論理回路自動生成装置を得ること
ができる。
【0027】また、この発明においては、上述のように
して示された仕様のうち、共通した論理回路結果物によ
って実現できる共通可能部分を、自動的に抽出し、この
共通可能部分をオペレータに知らしめるべく図的表現を
用いて表示するようにしたので、合成される回路の構成
に関した情報も図的入力によって表現でき、仕様の判読
が容易となり、また合成されるべき回路の構成に関した
情報も図的表現によって容易に理解することができると
ともに、オペレータは装置の支援によって回路の共通化
を指示できるため、より効率のよい論理回路自動生成装
置を得ることができる。
【0028】さらに、この発明においては、上述のよう
にして示された仕様のうち、オペレータによって、上
通した論理回路結果物によって実現できる部分を図的
入力によって指定するようにしたので、合成されるべき
回路の構成に関する情報も図的入力によって表現でき、
仕様の判読が容易となり、また合成されるべき回路の構
成に関した情報も図的表現によって容易に理解すること
ができるとともに、装置の支援では共通化しきれない部
分についてもその共通化を指示できるため、より効率の
よい論理回路自動生成装置を得ることができる。
【0029】この発明においては、コントロールをつか
さどる部分に、コントロールされる回路のそれぞれの状
態における動作の速度に合わせた信号を生成するような
回路を合成する機能を持たせるように装置を構成したの
で、大規模な回路においても高速な動作を行う回路を生
成する装置を構成することができる。
【0030】また、この発明においては、コントロール
をつかさどる部分に補助カウンタ機能を用いるようにし
たので、コントロールをつかさどる部分の回路が簡単で
済む。
【0031】さらに、この発明においては、補助カウン
タ機能部にセットする値を、コントロールされる回路毎
に動作速度を自動的に計算した値を用いるようにしたの
で、各状態の動作速度に合わせた信号を生成する回路
を、人手を要することなく合成できる。
【0032】
【実施例】以下、この発明の一実施例を図について説明
する。図1(a) はこの発明の一実施例による論理回路自
動生成装置のハード構成を示す。図において、1はワー
クステーション本体、2は磁気ディスク装置等、ワーク
ステーション本体1に内蔵された記憶装置、3は高解像
度CRT等の表示装置、4はマウス,スタイラスに代表
されるポインティングデバイス(以下、マウス等と称
す)である。なお、このハード構成は一例にすぎないも
のであり、パソコンや汎用機を用いてもよいことは言う
までもない。
【0033】図2(a) は、図1(a) の装置に入力される
状態遷移図により記述した論理回路の機能仕様の一例を
共に示す。この図2は、状態S1においてレジスタ1に
数値1を代入し、状態S2においてレジスタ2にレジス
タ1の内容を加算した値を代入し、状態S3においてレ
ジスタ1の内容に1を加算し、以後、状態S2,S3の
操作を繰り返すことによりレジスタ2の内容を1ずつ増
加させるという処理を表したものである。
【0034】図2において、そのノードS1,S2,S
3は、回路が取りうる状態(以下ステートと呼ぶ)を示
し、,,は、各ステートでの処理内容であるイン
ストラクションを示している。また、各ステート間を結
ぶアーク(矢印)はあるステートでインストラクション
を実行した時に、次にその矢の先端が示すステートに回
路の状態が遷移することを示している。インストラクシ
ョンは転送,論理演算,算術演算,シフト操作,ビット
操作に分類することができ、転送にはMOVEが、論理
演算にはAND,OR,NOT,XORが、算術演算に
はADD,SUB,INC,DECが、シフト操作には
SHR,SHLが、ビット操作にはBCHG,BCL
R,BSETが用意されている。各ステートにおけるイ
ンストラクションは複数個のトークンからなり、トーク
ンには動作の種類を示す情報(オペレーションコード)
と動作の対象物を示す情報(オペランド)とがある。動
作対象物情報が複数個ある場合、各動作対象物情報は被
処理データ(ソース)あるいは処理結果データ(デステ
ィネーション)となる。例えば、ステートは、「MO
VE」,「1」,「reg1」の3つのトークンから構
成されており、「MOVE」がオペレーションコード
に,「1」,「reg1」がオペランドに相当する。ま
たこの2つのオペランドのうち、「1」がソースに、
「reg1」がデスティネーションにそれぞれ相当す
る。なお、この図2(a) に示すような、ニーモニックに
より機能仕様を記述したもののほか、図2(b) に示すよ
うな数学的記述を用いて機能仕様を表現したものを入力
してもよい。この図2(b) によって示された機能仕様は
図2(a) によって示されたものと同様である。
【0035】図2のステートS1は、記憶回路(以下レ
ジスタと呼ぶ)reg1に数値1を代入した後、次に遷
移する状態がステートS2であることを示す。同様にス
テートS2はレジスタreg1とレジスタreg2の加
算結果をレジスタreg2に代入した後、次に遷移する
状態がステートS3であることを示す。
【0036】また同様にステートS3はreg1に数値
1を加算し結果をreg1に代入し、次に遷移する状態
がステートS2であることを示している。
【0037】図3は、図2の機能仕様より論理回路が持
つべき処理の内容を2つに分割した状態を示す図であ
る。図3の情報制御部C1は、図2のステートS1,S
2,S3の各ステートで処理されるレジスタに注目して
レジスタへの情報伝達経路を決定する情報伝達制御信号
Aと、レジスタの代入を制御する記憶制御信号Bとを発
生する部分である。
【0038】また、図3の情報処理部C2は、情報伝達
制御信号Aと記憶制御信号Bに応じて図2の状態遷移図
に従った情報処理機能を有する部分である。
【0039】図4は、図3の情報制御部をさらに詳しく
分割することにより、図3の情報制御部が持つべき内部
構成を示したものである。図4(a) の遷移状態発生器C
11は、図2のステートS1,S2,S3の各ステート
において、現在のステートから次に続くステートを決定
し、遷移位置情報Yを出力するものである。また、図4
(a) の制御信号発生器C12は図6に示すように、図4
の遷移状態発生器C11から発生される遷移位置情報Y
に従って、図3の情報処理部C2の情報伝達処理を制御
する情報伝達制御信号Aと、記憶処理を制御する記憶制
御信号Bを出力するものである。図4(a) の遷移状態発
生器C11は図4(b) の遷移状態計算器C111と遷移
状態記憶器C112に分割される。なお、図6における
基準信号CLK1,CLK2は情報制御部C1内部で使
用する基準クロックを示している。
【0040】図5は、図3の情報処理部C2をさらに詳
しく分割することにより、図3の情報処理部が持つべき
内部構成の一例を示したものである。図5の情報伝達制
御信号Aは、図4(a) の制御信号発生器C12から出力
され、図5の情報伝搬回路C23の情報伝搬を制御する
信号である。記憶制御信号Bは、図4(a) の制御信号発
生器C12から出力され、図5のレジスタreg1 C
24,reg2 C26の情報の保持,変更を制御する
信号である。
【0041】図5において、数値1発生回路C21は、
数値1の情報を出力する回路で、その出力は情報伝搬回
路C23に継ながれている。単項加算回路C22は、入
力される情報に1を加算した情報を出力する回路で、そ
の出力は情報伝搬回路C23に継ながれている。情報伝
搬回路C23は数値1発生回路C21と単項加算回路C
22から出力される情報を入力とし、情報伝達制御信号
Aによって、2つの入力のどちらか一方を出力する回路
であり、その出力はレジスタreg1 C24に継なが
れている。レジスタreg1 C24は情報伝搬回路C
23からの出力を入力とし、記憶制御信号によってその
入力からの情報を保持し、保持している情報を出力する
回路で、その出力は単項加算回路C22および2項加算
回路C25に継ながれている。2項加算回路C25はレ
ジスタreg1 C24とレジスタreg2 C26か
ら出力される情報を入力とし、2つの入力を加算した情
報を出力する回路であり、その出力はレジスタreg2
C26に継ながれている。レジスタreg2 C26
は2項加算回路C25からの出力を入力とし、記憶制御
信号Bによってその入力からの情報を保持し、保持して
いる情報を出力する回路で、その出力は2項加算回路C
25に継ながれている。
【0042】図7は上記のようにして分割された情報処
理部のうち、二項加算回路をゲートレベルに展開した状
態を示す。情報処理部内の他のブロックもそれぞれ同様
に展開されることは言うまでもない。
【0043】このように、本実施例は、図2で示した機
能仕様入力から実現すべき論理回路の機能仕様の処理内
容を図3で示す2つの部分に分割し、さらにその各部分
を図4,図5で示すような単一機能回路と単一機能回路
間の配線で実現することにより、論理回路の自動生成を
行なうものである。
【0044】図1(b) に図1(a) に示すワークステーシ
ョンが実行する論理回路自動生成手順を示すフローチャ
ートを示す。また、図1(c) に図1(b) の論理回路結果
物生成手段のより詳細な処理手順を示す。図1(b),(c)
において、100は状態遷移図を入力するステップ、1
01はステップ100にて入力された状態遷移図に基づ
き内部データを構築するステップである。また、102
はステップ101にて構築された内部データを参照して
レジスタ,演算ブロック,フラグレジスタ,遷移状態等
の情報を抽出するステップ、103はステップ102に
より抽出された情報に基づき論理回路の持つべき機能を
大別した上位構造を構築するステップ、104はステッ
プ103により構築された上位構造を複数のステージに
より順次詳細化してゆくステップ、105はステップ1
04により詳細化された構造よりネットリスト107を
抽出するステップ、106はステップ104により詳細
化された構造より、遅延時間,論理素子数等の合成され
るべき回路の性能を示すパラメータ(合成情報)108
を出力するステップである。
【0045】これらのステップのうち、ステップ102
は入力される状態遷移図の状態間の遷移情報を抽出する
遷移情報入力手段10および入力される状態遷移図中の
各状態での処理内容を抽出する処理内容入力手段20に
対応する。
【0046】また、ステップ103,104は状態間の
遷移情報および各状態での処理内容とから上記論理回路
の一表現形態での結果物を作成する論理回路結果物生成
手段30に対応し、このうち、ステップ103は情報の
伝達経路を選択する情報伝達経路制御信号および複数あ
る記憶器のうちのいくつかの記憶器を特定しそれらの書
込みタイミングを制御する記憶制御信号を出力する情報
制御部と、状態遷移図中の各状態での処理内容における
演算を行う演算器を有し入力される上記情報伝達経路制
御信号および記憶制御信号に応じて上記各演算を実行す
る情報処理部とからなる中間生成物を生成する中間生成
物生成手段31に対応する。
【0047】またステップ104は、中間生成物のうち
の情報制御部を、情報処理部の演算結果の特性と演算結
果内容を示す制御信号および該情報制御部自身が出力し
た遷移位置情報に基づき次の遷移位置情報を出力する遷
移状態発生器と、該遷移状態発生器からの遷移位置情報
に応じて上記情報伝達経路制御信号および上記記憶制御
信号を発生する制御信号発生器とに分けて特定すること
により構築する情報制御部構築手段32、遷移状態発生
器と上記制御信号発生器とを論理回路素子および配線の
組合せにより実現できる記憶回路,論理演算回路,信号
選択回路または数値発生回路およびこれらの間の配線の
組合せとして特定する情報制御部特定手段33、中間生
成物のうちの情報処理部を、状態遷移図中に記入された
インストラクションの文法仕様に応じて、論理回路素子
および配線の組合せにより実現できる記憶回路,論理演
算回路,信号選択回路または数値発生回路およびこれら
の間の配線の組合せとして特定する情報処理部特定手段
34の3つの手段がこれに対応する。
【0048】次にその動作について図1ないし図5を用
いて説明する。作業者は図1に示すマウス等4を操作し
表示装置3を参照しながらワークステーション本体1に
対し状態遷移図を入力する(ステップ100)。この入
力は、例えば表示装置3に表示されるウインドウを開
け、ウインドウの上部に表示されるメニューを使用して
ステートを入力し、ステート間の遷移順序をアークで指
示したり、インストラクションの入力や、レジスタの定
義を行なったりするものである。このような操作により
入力された状態遷移図は内部データに変換されてワーク
ステーション本体1の記憶装置2に格納される(ステッ
プ101)。この内部データは例えばアークの場合、ア
ークの起点座標と終点座標に従ってその起点と終点を特
定して単純なステート間の遷移情報に変換することによ
り、アナログ図形である状態遷移図からその意味情報の
みを抽出して生成するようにしており、本来の図形をそ
のまま格納するよりも後続の処理が格段に行ないやすく
なっている。なお、誤操作等により意図しない状態遷移
図を入力した時はマウス操作によりその誤入力を容易に
訂正することが可能となっている。
【0049】このような操作により、所望の状態遷移図
を作成し、これを入力できたとすると、作業者はマウス
等によりワークステーションに対し回路合成を実行すべ
き旨を指示する。
【0050】この指示を受けると、ワークステーション
本体1はこれ以下の回路構造の構築を記憶装置2内の内
部データの形で行う。まず、ステップ102において、
内部データに変換済みの状態遷移図情報から回路を実現
する際に必要となるレジスタ,演算ブロック,フラグレ
ジスタ,遷移状態等の情報を抽出する。このステップで
は状態遷移図情報を遷移情報と、複数のトークンから構
成されるインストラクション部分とに分割するととも
に、各状態におけるインストラクションを演算および参
照もしくは代入されるレジスタ類とその状態から遷移す
べき状態とその条件に分解する。
【0051】次に、ステップ103では、このような情
報に基づいて中間生成物生成手段31が上位構造構築と
呼ばれる作業を行なう。この作業は、合成しようとする
論理回路をその内部構造が確定していない複数のブロッ
ク、即ち、状態遷移図で示されたデータの処理を行なう
べき情報処理部C1とこの情報処理部の動作タイミング
を規定するべき情報制御部C2の2つの中間生成物に分
割し、かつこの情報制御部C2が情報処理部C1に対
し、情報伝達制御信号Aおよび記憶制御信号Bを出力す
るように配線を行なう(図3参照)。この時点で、情報
処理部C2と情報制御部C1の処理の内部構造および情
報伝達制御信号A,記憶制御信号Bの内容は確定してい
ない。
【0052】なお、このステップにおける上位構造構築
化手法は外部から追加,変更が可能であり、上位構造構
築化手法を追加,変更することにより、本論理回路自動
生成装置を、例えば信号処理用から機械制御用に変更す
る等、設計しようとする論理回路の用途に変更が生じた
場合でも、それに柔軟に対応できる。
【0053】次に、ステップ104ではステップ102
で抽出された種々の情報を用いて上記ステップ103に
より形成された上位構造を分割し、上位構造の内部構成
を決定する。この構造分割は実際には複数のステージか
ら構成されており、情報制御部構築手段32が図3の情
報制御部C1の内部構成を図4(a) に示す遷移状態発生
器C11と制御信号発生器C12に分割し、情報制御部
特定手段33がこの遷移状態発生器C11と制御信号発
生器C12の持つべき機能等を真理値表で表現し、その
真理値表で表現した機能等を、論理回路素子および配線
の組合せに分割するとともに、情報処理部特定手段34
が情報処理部C2の処理内容を数値発生回路,単項加算
回路,2項加算回路,情報伝搬回路,レジスタ(記憶回
路)等の論理回路素子および配線の組合せに細分化する
等の処理を行ない、かつ上述のように詳細化された機能
ブロックを既存の論理素子で実現するための展開を行な
う。なお、このステップ104においても外部から構造
詳細化手法を追加,変更することが可能であり、構造詳
細化手法を追加,変更することにより、セルのライブラ
リ(合成に使用する回路素子のセット)に変更があった
場合にも柔軟に対応できる。
【0054】以下では、このステップ104における処
理について詳述する。
【0055】 まず、ステップ103で生成された情
報制御部C1を、情報制御部構築手段32により遷移状
態発生器C11と制御信号発生器C12に分割する。そ
して、制御信号発生器C12は外部に情報伝達制御信号
Aと記憶制御信号Bを出力するように、また遷移状態発
生器C11はそれ自身および制御信号発生器C12に対
し遷移位置信号Yを出力するように、配線を行なう(図
4(a) 参照)。なお、この時点で、遷移状態発生器C1
1と制御信号発生器C12の内部構造および遷移位置信
号の内容は確定していない。
【0056】 次に、情報制御部特定手段33によ
り、遷移状態発生器C11を遷移状態の計算を行なうべ
き遷移状態計算器C111と計算された遷移状態を記憶
すべき遷移状態記憶器C112に分割し、遷移状態計算
器が遷移状態記憶器に対し遷移状態計算結果Zを出力す
るように配線を行なう。この時点で遷移状態計算器C1
11,遷移状態記憶器C112の内部構造および遷移状
態計算結果の内容は確定していない。
【0057】 次に、遷移状態記憶器C112の内部
構造を確定する。この確定は、入力された状態遷移図の
状態数を表現できる2進数の桁数に等しい個数(状態数
が4なら2)のレジスタ(記憶器)C1121,C11
22を用意し、その出力が遷移位置情報に、またその入
力が遷移状態計算器C111につながるように配線する
ことにより行なう(図4(b) 参照)。
【0058】 次に、遷移状態計算器C111の内部
構造を確定する。この確定は、遷移状態計算器C111
の内部に入力遷移位置を入力とし、その条件における次
に処理すべき遷移状態位置を出力する真理値表を作成す
ることにより行なうもので、この真理値表の入出力関係
は、入力される状態遷移図の状態間の接続(アーク)お
よびその条件によって特定できるものである。
【0059】 次に、情報処理部C2に対し制御信号
を発生すべき制御信号発生器C12の内部構造を確定す
る。この確定は、入力された状態遷移図のそれぞれの状
態におけるインストラクションに応じて演算器に入力さ
れるべき信号を選択するように、かつそれぞれの状態で
代入されるべき記憶器に記憶を制御するように真理値表
を作成することにより行なう。この真理値表は遷移位置
情報を入力とし、記憶制御信号と情報伝達制御信号を出
力信号とするものである。
【0060】 以上の〜の処理により、情報制御
部特定手段33は遷移状態発生器C11を構成する遷移
状態計算器C111,遷移状態記憶器C112および制
御信号発生器C12の内部構成を規定する真理値表を作
成できた。一般に真理値表はこれを論理回路に変換する
ことは容易であるので、遷移状態発生器C11を構成す
る遷移状態計算器C111、および制御信号発生器C1
2はその機能を示す真理値表と等価な論理回路素子およ
び配線の組合せに変換できる。また、遷移状態記憶器C
112は複数の記憶器(レジスタ)から構成されてお
り、レジスタは論理回路素子および配線の組合せに変換
できるので、これら一連の処理を実行することで、情報
制御部C1は論理回路素子および配線の組合せでその内
部を構築することができる。
【0061】 次に、情報処理部特定手段34により
情報処理部C2の内部構造を確定する。この確定は、入
力された状態遷移図中のインストラクション(動作の種
類を示す情報)に対応する機能回路(演算器)を用意
し、次に全てのインストラクションからオペランド(動
作の対象物を示す情報)の種類の数に従って重複を許さ
ないように記憶回路を作る。但し、オペランドがリテラ
ル(定数)である場合はこれを含まない。また情報処理
部C2の入出力部においては作業者の指示により、記憶
回路を作る場合と作らない場合がある。
【0062】次に各記憶回路の代入が何種類の記憶回路
および数値発生回路から行なわれるかを調べ、この代入
可能性のある種類と同数の入力選択数を持ち記憶回路と
等しいデータ幅を持つ情報伝搬回路を構築する。この情
報伝搬回路は信号選択回路として動作し、その出力は記
憶回路に情報を伝搬すべく配線され、その入力はある記
憶回路に代入されるべき他の記憶回路、数値発生回路お
よび論理演算回路の入力に参照される記憶回路および数
値発生回路の出力が接続される。
【0063】なお、この時点での論理演算回路,数値発
生回路,記憶回路および情報伝搬回路の内容の詳細は確
定しておらず、ビット幅や演算機能が決定しているだけ
である。
【0064】また、同一種類の演算が複数のステートで
行なわれるよう指示されている場合や、限られたステー
トの範囲内で使用されるレジスタまたはフラグレジスタ
があり、それらに対応する演算回路や記憶回路が共用で
きる場合は、オペレータの指示によって、それぞれの入
出力に情報伝搬回路を置き、同様に配線することで回路
の共用化を図ることができる。
【0065】このあと、これらの論理演算回路、数値発
生回路,記憶回路および情報伝搬回路をビット幅や演算
機能に従って予め組み込まれた合成規則により回路素子
の接続として詳細化してゆくことにより、情報処理部C
2の内部をネットリストで構築することができる。この
合成規則は外部からも変更可能であり、詳細な合成方法
の変更があったとしてもこれに柔軟に対応できる。
【0066】以下、図2の状態遷移図を例にとって各部
分の具体的な構成方法について述べる。なお、この構成
方法は図2より状態数が多い場合でも同様の手順により
行なうことができる。
【0067】まず、図2の状態遷移図から生成されるべ
き遷移状態発生器C11の具体的な構築方法について説
明する。図2の状態遷移図を走査し、各状態の状態名を
検出して、状態S1,S2,S3に対しそれぞれステー
ト番号00,01,10を付ける。次に、アークの向き
により各ステート番号00,01,10のステートが次
にどのステート番号のステートに遷移するかを検出し、
各ステート番号00,01,10毎に次ステート番号0
1,10,00を検出する。これにより、下記の表1に
示すような遷移状態発生器C11の動作を示す真理値表
が作成できる。従って、その動作がこの真理値表で示さ
れる遷移状態計算器C11を論理回路で実現し、かつ既
に述べたように、この遷移状態計算器C11の出力を記
憶する記憶器を、入力された状態遷移図の状態数を表現
できる2進数の桁数に等しい個数(この場合、状態数が
3であるから2)のレジスタ(記憶器)を用意し、その
出力が遷移位置情報に、またその入力が遷移状態計算器
C111につながるように配線することにより、遷移状
態発生器C11の内部構造を構築できる。
【0068】
【表1】
【0069】次に、図2の状態遷移図から生成されるべ
き制御信号発生器C12の具体的な構築方法について説
明する。図2の状態遷移図の状態と各状態でのインスト
ラクションを走査し、代入される側のレジスタを検出す
る。次にインストラクションの種類に応じてレジスタは
どちら側が参照される側かを走査する。図2(a),(b)の
例ではステート番号00において、レジスタreg1が
代入される側であるので、reg1に対し1を(これは
書き込みを行なうことを意味する)、reg2に対し0
を(これは値を保持したままであることを意味する)出
力するように記憶制御信号Bを決定する。また、情報伝
達制御信号Aは図5の情報伝搬回路C23の接続を切換
える信号であり、ステート番号00においては参照され
る側が数値1発生回路C21であり、ステート番号10
においては単項加算回路C22であり、ステート番号0
1においてはレジスタreg1 C24であるので、ス
テート番号00においては、0(これは単項加算回路側
を選択するように情報伝搬回路を制御する旨を意味す
る)となるように、ステート番号10においては1(こ
れは数値1発生回路側を選択するように情報伝搬回路を
制御する旨を意味する)となるように、またステート番
号01においては×、即ち、ドント ケアとなるよう
に、情報伝達制御信号Aを決定する。これにより、下記
の表2に示すような制御信号発生器の動作を示す真理値
表が作成できる。従って、その動作がこの真理値表で示
される制御信号発生器C12を論理回路で実現すること
により、制御信号発生器C12の内部構造を構築でき
る。
【0070】
【表2】
【0071】次に、図2の状態遷移図から生成されるべ
き情報処理部C2の具体的な構築方法について図5を用
いて説明する。図2の状態遷移図を走査し、各ステート
番号に対応するインストラクションを検出する。まず、
説明の都合上、ステート番号01から説明を行なう。ス
テート番号01は対応するインストラクションがADD
reg1,reg2であることから、2項加算器C2
5 1個とレジスタreg1 C24とレジスタreg
2 C26の2個のレジスタを用意する。次に、レジス
タreg1,reg2に着目し、レジスタreg1が他
のステートメントで使用されているか否かを検出する。
この図2は他のステートメントでも使用されている例で
あり、ステートメントの中の代入される側に2回出現し
ている。このことから、2入力1出力の情報伝搬回路C
23を作る。同様にして、レジスタreg2も他のステ
ートメントで使われているか否かを検出する。この図2
は使用されていない例であり、従ってレジスタreg2
に対しては情報伝搬回路は作らない。
【0072】次に、ステート番号00に対応するインス
トラクションはMOVEであり、このインストラクショ
ンは演算回路を作らなくてもよいものであるので、単に
数値1発生回路C21だけを用意する。
【0073】次に、以上のようにして用意された演算器
の接続を検討する。まず、レジスタreg1,reg2
に着目し、レジスタreg1の入力が2つあることを検
出する。そこで、情報伝搬回路C23の出力をレジスタ
reg1 C24の入力につなぐ。次に情報伝搬回路C
23の入力側を検出すべく、状態遷移図全体を走査する
と、レジスタreg1 C24が代入される側となって
いるのはステート番号00およびステート番号10であ
る。従って、情報伝搬回路C23の入力には数値1発生
回路C21と単項加算回路C22をそれぞれ接続する。
【0074】同様にして、レジスタreg2の入力を検
査すると、それが代入される側はステート番号01のA
DDだけであるので、レジスタreg2 C26の入力
には2項加算回路C25の出力をつなぐだけである。
【0075】次に、ステート番号10において、INC
はレジスタreg1を入力とすることが分かるので、レ
ジスタreg1 C24の出力を単項加算回路C22の
入力につなぐ。
【0076】次に、情報伝達制御信号Aは情報伝搬回路
C23を制御する信号と定義したので、これを情報伝搬
回路C23の制御入力につなぐ。また、記憶制御信号B
をレジスタreg1 C24,reg2 C26にそれ
ぞれ入力する。
【0077】以上の処理を行なうことにより、情報処理
部を構築できた。なお、以上の説明では、図2(a) に示
された、ニーモニック表現により記述された機能仕様か
ら論理回路を自動生成する場合について示したが、図2
(b) に示すような、数学的表現により記述された機能仕
様からでも論理回路を自動生成できることは言うまでも
ない。
【0078】図1(b) のステップ105では、このよう
な処理により生成された情報制御部および情報処理部の
内部構成を示す内部データを本論理回路自動生成装置の
最終生成物としてのネットリスト107に変換する。
【0079】また、図1(b) のステップ106では、作
業者からの指示により、論理合成された回路の遅延時
間,論理素子数等の回路情報を表示すべく、これらの合
成情報108を作成する。
【0080】ところで、上記実施例では、ステートの遷
移先が1つである場合についてのみ説明したが、図8に
示すように、ステートの遷移先が複数ある場合ももちろ
ん本論理回路自動生成装置により回路の自動生成が可能
である。
【0081】図8(a) の状態遷移図は、状態S1におい
てレジスタ1の内容を1増加させてレジスタ1に格納す
るとともに演算結果情報をフラグレジスタf1に代入す
る。そして、レジスタ2に数値0を格納し、キャリーが
現れた場合は、状態S2においてレジスタ2に数値1を
格納し、キャリーが現れない場合は状態S3においてレ
ジスタ2に数値0を格納するというものであり、また、
図8(b) の状態遷移図は、状態S1においてレジスタ1
の内容をクリアし、状態S2において、レジスタ1の内
容を1増加させてレジスタ1に格納するとともにレジス
タ2の内容をクリアし、レジスタ1の内容が4であれば
状態S3に遷移してレジスタ2に1を代入した後状態S
2に戻り、レジスタ1の内容が4でなければ状態S4に
遷移してレジスタ2に0を代入した後状態S2に戻ると
いうものであり、この図8(a),(b) の状態遷移図はキ
ャリーが現れたときに出力から基準クロックに対してレ
ジスタ幅分(図8(b) の場合は4)の周期のパルスを出
力するという分周器の動作をともに表している。従っ
て、以下、この図8(a) の場合についてのみ説明する。
【0082】図8(a) において、S1,S2,S3は図
2と同様、遷移状態を示し、,,は各ステートで
の処理内容を示している。図8(a) 中のステートS1は
レジスタreg1に数値1を加算し結果をレジスタre
g1に代入し、演算結果情報をフラグレジスタf1に代
入すること、およびレジスタreg2に数値0を代入す
ることを示している。またこのステートS1に続くステ
ートはフラグレジスタf1のうち桁上がり信号を参照し
て一義的に決定される。つまり、フラグレジスタf1の
うち桁上がり信号がセットされている場合はステートS
2を、セットされていない場合はステートS3を次に処
理するステートとすることが記述されている。
【0083】同様に、図8(a) 中のステートS2はレジ
スタreg2に数値1を代入することと、次に続くステ
ートがS1であることを示している。また、ステートS
3はレジスタreg2に数値0を代入することと、次に
続くステートがS1であることを示している。
【0084】この図8(a) に示す条件分岐がある場合の
状態遷移図から各部分を構成する方法と図2に示す条件
分岐がない場合の構成方法との間には本質的な差異はな
いので、以下、この図8(a) の状態遷移図を例にとって
各部分の具体的な構成方法を簡単に説明する。なお、こ
の構成方法は図8(a) より状態数が多い場合やより分岐
が多い場合でも同様の手順により行なうことができる。
【0085】図9は図8(a) のような次に遷移しうるス
テートが条件により分岐する場合に論理回路が持つべき
機能を2つに分割した状態を示すもので、この場合、図
3の情報伝達制御信号A,記憶制御信号Bの他に、情報
処理部C2から情報制御部C1に対し、演算結果情報X
をフィードバックする経路が新たに加わる。なお、この
時点で、演算結果情報Xをフィードバックする経路が新
たに加わる。なお、この時点で演算結果情報の内容は確
定していない。
【0086】図10は図9の情報制御部C1をさらに詳
しく分割することにより、図9の情報制御部が持つべき
内部構成を示したものである。この図10(a) の遷移状
態発生器C11は図4の遷移状態発生器C11が現在の
遷移位置のみに基づいて次に遷移すべき遷移位置を算出
しているのに対し、現在の遷移位置に加えて情報処理部
からの演算結果情報Xも参照して次の遷移位置の算出を
行なうものとなっている。図10(b) にこの図10(a)
の遷移状態発生器を分割した遷移状態計算器C111お
よび遷移状態記憶器C112を示す。表3,表4にこの
図10の遷移状態発生器,制御信号発生器の動作を示す
真理値表を示す。この表3,表4のうち表4は表2と全
く同様に作成できるものであるが、表3については表1
とはその作り方が若干異なるものである。即ち、この表
3を作成するには表1を作成する際にその入力として用
いた入力遷移位置Yに加えて情報処理部C2からの演算
結果情報Xをもその入力とし、かつこれらの条件に応じ
て次に処理すべき遷移状態位置をその出力とするような
真理値表を作成すればよいものであり、この真理値表の
入出力関係は、入力される状態遷移図の状態間の接続
(アーク)およびその条件によって特定できるものであ
る。なお、演算結果情報(遷移選択要素信号)Xは情報
処理部内の演算回路が本来の演算を行なうのとは別にそ
の算出を行なっている。そしてこの演算結果情報は演算
のパリティチェックやキャリー,ボローなどの情報で構
成されており、制御信号発生器に対し、次にどちらの状
態へ分岐すべきかを指示するべき信号である。この演算
結果情報は、図8(b) に示すような、いわゆるC言語に
おける演算子==のように2つの記憶器の値を比較した
り、その比較した真偽の値を論理演算したものを用いる
場合についても同様に処理できることはいうまでもな
い。
【0087】
【表3】
【0088】
【表4】
【0089】図11は図9の情報処理部をさらに詳しく
分割することにより、図9の情報制御部が持つべき内部
構成を示したものである。
【0090】この図11の単項加算回路C2Aは加算し
た結果をレジスタ1 C2Bに出力するとともにこの加
算回路C2A自身のフラグレジスタf1に対しキャリー
を出力し、このフラグレジスタf1よりキャリーを演算
結果情報Xとして情報制御部の遷移状態発生器に出力す
るようにしている。
【0091】なお、図11の各機能ブロックが図7と同
様のゲートレベルのネットリストに変換されることは言
うまでもない。
【0092】このように、上記各実施例によれば、状態
遷移図により記述した論理回路の持つべき機能仕様を入
力できるようにしたので、論理回路の持つべき機能仕様
を自然にかつコンパクトに表現できる状態遷移図を作成
するだけで論理回路を自動作成でき、論理回路に関する
知識を要求されることなく短い開発期間で設計が可能と
なる。また、自動設計すべき論理回路を情報制御部と情
報処理部に分割し、情報制御部をさらに遷移状態発生器
と制御信号発生器に分割し、これらを論理素子により実
現可能な複数のブロックおよびその間の配線に分割する
とともに、情報処理部を、論理素子により実現可能な複
数のブロックおよびその間の配線に分割するというトッ
プダウン方式によりネットリストを合成するようにした
ので、ライブラリ(合成に使用する回路素子のセット)
に対する依存性を持たない論理回路自動生成装置を実現
でき、論理回路の用途の変更やネットリストの仕様の変
更があった場合にも柔軟に対応できるという効果があ
る。
【0093】なお、上記各実施例では、論理回路結果物
がネットリストである場合についてのみ説明したが、ネ
ットリストの代りに、論理回路図あるいはハードウエア
記述言語を出力してもよく、上記実施例と同様の効果を
奏する。
【0094】また、上記各実施例では、ネットリストの
みを出力するものについてのみ示したが、論理合成する
過程で生成される情報制御部や情報処理部、あるいはこ
れをさらに細分化した機能レベルのネットリスト等の中
間生成物を外部に出力するようにしてもよい。このよう
に中間生成物を外部に出力することにより、例えば論理
回路の特定部分を本自動生成装置で作成し、他の回路部
分を手作業で作成したものをシミュレートする場合等で
は、機能レベルのネットリストを出力し、これを使用し
てシミュレートを行なえるので、セルレベルのネットリ
ストを使用してシミュレートを行なう場合に比べ回路の
検証時間を大幅に短縮できる。
【0095】また、上記各実施例では情報処理部の内部
を、セルレベルのネットリストにより構成できるレジス
タ,加算回路,情報伝搬回路(セレクタ),数値発生回
路により合成する場合を示したが、この記憶回路に代え
てレジスタ全般を、論理演算回路に代えて全ての組合せ
論理回路を、信号選択回路に代えて組合せ論理回路の特
殊なものを、数値発生回路に代えて結線を用いて構成す
るようにしてもよく、上記実施例と同様の効果を奏す
る。
【0096】さらに、上記各実施例では状態遷移図を入
力するようにしたが、適当な変換,分離手段を設けるこ
とにより、ペトリネットを入力することも可能である。
【0097】次に、本発明の第2の実施例を図について
説明する。図13は仕様の判読が容易であり、また合成
される回路の構成に関した情報も容易に理解することが
でき、より効率よく論理回路の自動生成を実行できるよ
うにした、本発明の第2の実施例を示すもので、この図
13は図1のワークステーション本体で実行される処理
をステップ毎に分けて図示したものである。図におい
て、1101は合成しようとする回路の仕様をステート
ダイアグラム等の図的方法によって入力する過程、11
02はハードウェア記述言語によって同じく仕様記述を
行う過程である。このステップ1101及び1102は
仕様記述のしやすさによって、どちらかもしくは両方の
入力を使用する。1103は入力された仕様の中から共
通した回路ブロックによって実現できる部分を抽出する
過程である。このステップ1103で抽出された情報は
共有化仕様回路構成作成ステップ1104の基礎データ
として使用される。従って、ステップ1103において
は、入力される仕様に対するデータ操作は行われない。
1104は、共有化可能なブロックをオペレータに対し
て表示し、あわせてその合成する回路の概略仕様も示す
ステップである。この表示は図示的な表現で行われるた
め、オペレータは入力した仕様と合成しようとする回路
の共有化を的確に認識することができる。これらの表示
された情報をもとにしてオペレータはステップ1106
によりこの共有可能なブロックと合成すべき回路の概略
仕様を変更して、実際に合成する回路の共有化仕様を決
定する。この変更も図的表現で行うため、容易に仕様決
定を行うことができる。また同様にしてステップ110
7により回路構成仕様についても入力を行う。この回路
構成仕様も必要な情報を図的入力の中から選択する形で
行うため、入力が容易である。これらの操作によって作
成された共有化仕様と回路構成仕様を先にオペレータが
入力した合成する回路仕様を示すデータを論理合成部に
入力する。
【0098】次に図14に示されるデータをもとに、回
路構成仕様の一例としての、素子の共用化を例にとっ
て、内部の動作を順に説明していく。図14は図的入力
の一種であるステートダイアグラム(状態遷移図)を使
った仕様入力の一部分の例である。この図14におい
て、状態S11においては変数Aの内容に数値「1」を
加えた値を変数Aに代入し、状態S12においては変数
Bの内容に数値「2」を加えた値を変数Bに代入するよ
うに仕様が記述されている。一般的にS11における
「A=A+1」という仕様はAの値を保持する記憶素子
と数値「1」を発生するブロック及び加算を行うブロッ
クを接続することによって実現できる。同様にS12に
おける「B=B+2」という仕様はBの値を保持する記
憶素子と数値「2」を発生する定数発生ブロック及び加
算を行うブロック相互に接続することによって実現でき
る。
【0099】ところで、この例におけるステートダイア
グラム入力では各ステートの処理は順次処理されるとす
れば、S11とS12で加算を行うブロックはこれを共
有できる。実際のデータでは回路合成に必要な加算器等
の演算ブロックと記憶素子を抽出して同一時間内に使用
しないブロックを共有化可能ブロックとして抽出する。
この抽出された機能ブロックを図15のような図的表現
を使ってオペレータに表示する。この例では加算器がS
11とS12の「+」の演算子に対して共有化可能であ
ることが矢印301,302と2つのシンボル「■ +
'」303を用いて表示されている。このあとオペレー
タは共有化を行うように、マウスを使用してその旨を指
定する。
【0100】なお、以上の説明では、オペレータが直接
共有化部分を指定する例を示したが、自動的に共有化を
行い、その表示のみもしくは修正を同様に行う場合も同
様の処理により行える。
【0101】その際、回路構成情報として入力する仕様
から回路を合成するときの合成の補助情報を入力する。
ここでは、共有化だけでなく、演算子やその他の制御回
路をどのような回路方式によって実現するかを指定す
る。また、その回路方式のなかでも回路を素子数を減ら
す方向で合成するのか、合成する回路の動作速度を高め
る方向で合成するのかなどの情報を与えることができ
る。
【0102】これらのオペレータの入力によって共有化
仕様及び回路構成仕様が決定される。この情報は論理合
成部分に渡され回路合成が行われる。論理合成ステップ
107では共有化を行うように仕様入力を変換してから
回路合成を行う。この変換は共有化を行う回路ブロック
の入力が共有化を行う数と同数の入力を持つ入力選択回
路を付加し、その機能を必要とする時間に入力選択を必
要とする入力側に制御する制御回路を発生する。このと
きこの変換した出力を業界標準のハードウェア記述言語
によって表現し出力することで、他の一般的な論理合成
装置によっても、論理合成処理の残りの処理を実行する
ことができる。
【0103】なお、上記実施例では全く同じ機能を行う
部分を共有化する例を示したが、加減算回路などの複数
の機能を1つの回路ブロックで行う場合の共有化も同様
に行える。この時は共有化ブロック抽出を行う際に複数
の機能を共有化対象として抽出し、論理合成部では入力
選択回路制御に加えて回路機能選択を行う制御信号も生
成する。また共有化を行うブロックの語長(ビット幅)
が異なる場合の共有化も同様に可能である。この場合
は、共有化ブロック抽出を行う際に同一機能でかつ異な
る語長を持つ演算を共有化対象として抽出し、論理合成
部では入力選択に加えて語長の調整回路を付加する。上
記例において演算ブロックの語長を仕様実現に必要な最
適な語長以上に持たせることによって、共有化できる回
路が増加する、この指定及び表示修正も図的入力によっ
て行うことにより容易に入力可能である。
【0104】また、上記実施例においても、ネットリス
トの代りに、論理回路図あるいはハードウエア記述言語
を出力してもよいことは言うまでもない。
【0105】また、上記実施例においても、論理合成す
る過程で生成される情報制御部や情報処理部、あるいは
これをさらに細分化した機能レベルのネットリスト等の
中間生成物を外部に出力するようにしてもよい。このよ
うに中間生成物を外部に出力することにより、例えば論
理回路の特定部分を本自動生成装置で作成し、他の回路
部分を手作業で作成したものをシミュレートする場合等
では、機能レベルのネットリストを出力し、これを使用
してシミュレートを行なえるので、セルレベルのネット
リストを使用してシミュレートを行なう場合に比べ回路
の検証時間を大幅に短縮できる。
【0106】また、上記実施例においても、情報処理部
の内部を、セルレベルのネットリストにより構成できる
レジスタ,加算回路,情報伝搬回路(セレクタ),数値
発生回路により合成する他、この記憶回路に代えてレジ
スタ全般を、論理演算回路に代えて全ての組合せ論理回
路を、信号選択回路に代えて組合せ論理回路の特殊なも
のを、数値発生回路に代えて結線を用いて構成するよう
にしてもよいことは言うまでもない。
【0107】さらに、上記実施例においても、適当な変
換,分離手段を設けることにより、ペトリネットを入力
することも可能である。また、図2(a) に示すような、
ニーモニック表現により記述した機能仕様を入力するこ
とも可能である。
【0108】次に、本発明の第3の実施例を図について
説明する。図16は、回路ブロックの動作のうち、処理
に最も時間のかかる動作によって論理回路の全体的な動
作速度が制限されてしまうのを解消でき、大規模な回路
であっても高速な動作を行なうことができるように論理
回路を生成する本発明の第3の実施例を示すもので、図
1のワークステーション本体により実現された、この実
施例装置における上位構造抽出機能、即ち、要求仕様を
満足する論理回路を、データを処理する部分である情報
処理部と、この情報処理部のコントロールをつかさどる
回路である情報制御部の2つに分割する機能を、処理ブ
ロックごとに分けて図示したものである。
【0109】図中、2100はコントロールブロック
(情報制御部)を抽出する処理ブロックであり、これ
は、入力された仕様を、データを処理する部分である情
報処理部と、そのデータを処理する部分を制御する部分
である情報制御部に分離し、制御する部分を、動作を引
き起こすトリガーとそのトリガーによって行う動作に必
要な制御信号を発生するコントローラとして抽出する部
分である。
【0110】2101はデータパスブロック(情報処理
部)を抽出する処理ブロックであり、これはコントロー
ルブロック抽出部で抽出された、データを処理するブロ
ックを実際の回路で実現できる構成として抽出する部分
である。
【0111】2102はデータパスブロックを計算する
処理ブロックであり、これは、上記データパスブロック
抽出で抽出した部分ごとに回路の動作に必要な時間を実
際の回路より計算するか、あるいは仕様から概略計算す
る部分である。
【0112】2103はコントロール回路の、ウェイト
計算を行なう処理ブロックであり、これは、上記データ
パスブロック計算部で計算した時間を満足するように基
本クロックのウェイト数を計算する部分である。
【0113】2104は、コントロール回路の生成を行
なう処理ブロックであり、これは上記コントロール回路
ウェイト計算部で計算したウェイト数(遅延時間)をコ
ントロールブロック抽出部で抽出したコントローラの仕
様として加味してコントローラ回路を生成する部分であ
る。
【0114】次に図17に示されるデータをもとに内部
の動作を順に説明していく。図17はステートダイヤグ
ラムを使った仕様入力の一部分の例である。図におい
て、状態S21においては変数Aに数値「1」を加えた
値を元の変数Aに代入し、状態S22においては変数B
に数値「3」を乗じた値を元の変数Bに代入するように
仕様が記述されている。また状態遷移は状態S21から
状態S22に、状態S22から状態S21に、A=A+
1、B=B×3の動作がそれぞれ終了した後に遷移する
ように記述されている。
【0115】このとき、まず、コントロールブロック抽
出部2100では状態S21の次に状態S22、状態S
22の次に状態S21へ遷移するように指示を発するコ
ントローラをシーケンスマシンとして抽出する。次にデ
ータパスブロック抽出部2101において、状態S21
における仕様より加算器を、状態S22における仕様よ
り乗算器をそれぞれ合成する。続いてデータパスブロッ
ク計算部2102において、合成された加算器,乗算器
の回路における伝達遅延時間をそれぞれ計算する。この
後、コントロール回路ウェイト計算部2103におい
て、伝達時間とこの回路の基本クロックに対しての比か
らそれぞれに必要な遅延時間、即ち、基本クロックのウ
ェイト数を算出する。最後にコントロール回路生成部2
104において、このウェイト値をもって状態が遷移す
るようにコントロールブロックを完成させる。
【0116】このように、上記実施例によれば、合成さ
れる回路のコントロールをつかさどるシーケンスマシン
に、コントロールされる側の回路であるデータパスブロ
ックの各状態の動作速度に応じた速度でコントロール信
号を発生する補助カウンタ機能を生成するようにし、か
つ補助カウンタ機能部にセットする値をコントロールさ
れる回路毎に動作速度を自動的に計算した値を用いるよ
うにしたので、合成されるべき回路のコントロールをつ
かさどる部分を状態別に用意することなく小回路規模で
生成でき、大規模な回路においても高速な動作を行う回
路を生成する装置を自動的に構成することができる。
【0117】なお、上記実施例では、ひとつの状態に単
一の演算が指定されている場合のみを示したが、ひとつ
の状態に複数の演算が指定されている場合もその最大遅
延時間を計算することによって必要なウェイト値が求め
られ、同様に合成を行うことができる。
【0118】また、状態遷移中に条件が記述されている
場合も同様にコントロール部抽出部で状態遷移にその条
件を付加することによって回路合成を実現できる。
【0119】また、このウェイト値を回路仕様記述の中
に直接指定して入力すれば、基本クロック単位でタイミ
ングをもった動作を容易に記述することができる。
【0120】さらに、上記実施例では、要求仕様を状態
遷移図で入力するものを示したが、ハードウェア記述言
語で入力した要求仕様を、データを処理する部分である
情報処理部と、この情報処理部のコントロールをつかさ
どる回路である情報制御部の2つに分割するものであっ
てもよく、上記実施例と同様の効果を奏する。
【0121】また、上記実施例においても、ネットリス
トの代りに、論理回路図あるいはハードウエア記述言語
を出力してもよいことは言うまでもない。
【0122】また、上記実施例においても、論理合成す
る過程で生成される情報制御部や情報処理部、あるいは
これをさらに細分化した機能レベルのネットリスト等の
中間生成物を外部に出力するようにしてもよい。このよ
うに中間生成物を外部に出力することにより、例えば論
理回路の特定部分を本自動生成装置で作成し、他の回路
部分を手作業で作成したものをシミュレートする場合等
では、機能レベルのネットリストを出力し、これを使用
してシミュレートを行なえるので、セルレベルのネット
リストを使用してシミュレートを行なう場合に比べ回路
の検証時間を大幅に短縮できる。
【0123】また、上記実施例においても、情報処理部
の内部を、セルレベルのネットリストにより構成できる
レジスタ,加算回路,情報伝搬回路(セレクタ),数値
発生回路により合成する他、この記憶回路に代えてレジ
スタ全般を、論理演算回路に代えて全ての組合せ論理回
路を、信号選択回路に代えて組合せ論理回路の特殊なも
のを、数値発生回路に代えて結線を用いて構成するよう
にしてもよいことは言うまでもない。
【0124】さらに、上記実施例においても、適当な変
換,分離手段を設けることにより、ペトリネットを入力
することも可能である。また、図2(a) に示すような、
ニーモニック表現により記述した機能仕様を入力するこ
とも可能である。
【0125】
【発明の効果】以上のように、本願の請求項1の発明に
係る論理回路自動生成装置によれば、論理回路自動生成
装置において、外部からの仕様入力として入力される状
態遷移図の状態間の遷移情報を抽出する遷移情報入力手
段,および同じく該状態遷移図中の各状態での処理内容
を抽出する処理内容入力手段と、上記状態間の遷移情報
および上記各状態での処理内容とから自動生成すべき論
理回路を、その内部構造の確定していない中間生成物に
分割し、その内部構造をさらに分割しその分割したブロ
ックの内部構造およびブロック間の配線を確定してゆく
操作を順次行うことにより、論理素子により実現可能な
複数のブロックおよびその間の配線に分割するトップダ
ウン方式により上記論理回路の一表現形態での結果物を
作成する論理回路結果物生成手段とを備え、状態遷移図
を入力し論理回路の一表現形態での結果物を自動生成す
るようにしたので、作業者にとって作成が容易な図的表
現を用いて記述した回路の要求仕様を入力して効率よく
論理回路の自動生成を実行でき、しかも、論理回路が持
つべき機能を順次分割することにより論理合成を行なう
ので、論理回路の用途の変更やセルのライブラリの変更
があった場合、これに対応して論理結果物生成手段の対
応する段階のみを変更するだけで、仕様の変更に対し柔
軟に対応できる論理回路自動生成装置が得られる効果が
ある。また、本願の請求項2の発明に係る論理回路自動
生成装置によれば、請求項1記載の論理回路自動生成装
置において、上記論理回路結果物生成手段は、状態遷移
図に基づき論理回路結果物を生成する過程において、情
報の伝達経路を選択する情報伝達経路制御信号および複
数ある記憶器のうちのいくつかの記憶器を特定しそれら
の書込みタイミングを制御する記憶制御信号を出力すべ
き情報制御部と、状態遷移図中の各状態での処理内容に
おける演算を行う演算器および演算結果を保持する記憶
器を有し、入力される上記情報伝達経路制御信号および
記憶制御信号に応じて上記各演算を実行すべき情報処理
部とからなる中間生成物を生成する中間生成物生成手段
と、上記中間生成物のうちの情報制御部を、上記情報処
理部の演算結果の特性と演算結果内容を示す制御信号お
よび該情報制御部自身が出力した遷移位置情報に基づき
次の遷移位置情報を出力すべき遷移状態発生器と、該遷
移状態発生器からの遷移位置情報に応じて上記情報伝達
経路制御信号および上記記憶制御信号を発生すべき制御
信号発生器とに分けて特定することにより構築する情報
制御部構築手段と、上記遷移状態発生器と上記制御信号
発生器とを論理回路素子および配線の組合せにより実現
できる記憶回路,論理演算回路,信号選択回路または数
値発生回路およびこれらの間の配線の組合せとして特定
する情報制御部特定手段と、上記中間生成物のうちの情
報処理部を、状態遷移図中に記入されたインストラクシ
ョンに応じて、論理回路素子および配線の組合せにより
実現できる記憶回路または論理演算回路,信号選択回
路,数値発生回路(以下、演算器と称す)およびこれら
の間の配線の組合せとして特定する情報処理部特定手段
とからなるものとしたので、作業者にとって作成が容易
な図的表現を用いて記述した回路の要求仕様を入力して
効率よく論理回路の自動生成を実行でき、しかも、論理
回路が持つべき機能を順次分割することにより論理合成
を行なうので、論理回路の用途の変更やセルのライブラ
リの変更があった場合、これに対応して論理結果物生成
手段の対応する段階のみを変更するだけで、仕様の変更
に対し柔軟に対応できる論理回路自動生成装置が得られ
る効果がある。また、本願の請求項3の発明に係る論理
回路自動生成装置によれば、請求項2記載の論理回路自
動生成装置において、上記情報伝達経路制御信号は、複
数のレジスタの各々につきこれに対する入力が複数ある
ときにどれを選ぶかを決定する信号であるものとしたの
で、作業者にとって作成が容易な図的表現を用いて記述
した回路の要求仕様を入力して効率よく論理回路の自動
生成を実行でき、しかも、論理回路が持つべき機能を順
次分割することにより論理合成を行なうので、論理回路
の用途の変更やセルのライブラリの変更があった場合、
これに対応して論理結果物生成手段の対応する段階のみ
を変更するだけで、仕様の変更に対し柔軟に対応できる
論理回路自動生成装置が得られる効果がある。また、本
願の請求項4の発明に係る論理回路自動生成装置によれ
ば、請求項2記載の論理回路自動生成装置において、上
記情報処理部は、上記情報制御部に保持されている状態
からの遷移を決定するための該状態における演算結果あ
るいは以前の演算結果を遷移選択要素信号として上記情
報制御部に送るものとしたので、作業者にとって作成が
容易な図的表現を用いて記述した回路の要求仕様を入力
して効率よく論理回路の自動生成を実行でき、しかも、
論理回路が持つべき機能を順次分割することにより論理
合成を行なうので、論理回路の用途の変更やセルのライ
ブラリの変更があった場合、これに対応して論理結果物
生成手段の対応する段階のみを変更するだけで、仕様の
変更に対し柔軟に対応できる論理回路自動生成装置が得
られる効果がある。また、本願の請求項5の発明に係る
論理回路自動生成装置によれば、請求項2記載の論理回
路自動生成装置において、上記情報制御部構築手段は状
態遷移図中の各状態および該各状態が次に遷移する状態
によりその入出力関係を規定する真理値表を作成して上
記遷移状態発生器の内部構造を構築するようにしたの
で、作業者にとって作成が容易な図的表現を用いて記述
した回路の要求仕様を入力して効率よく論理回路の自動
生成を実行でき、しかも、論理回路が持つべき機能を順
次分割することにより論理合成を行なうので、論理回路
の用途の変更やセルのライブラリの変更があった場合、
これに対応して論理結果物生成手段の対応する段階のみ
を変更するだけで、仕様の変更に対し柔軟に対応できる
論理回路自動生成装置が得られる効果がある。また、本
願の請求項6の発明に係る論理回路自動生成装置によれ
ば、請求項2記載の論理回路自動生成装置において、上
記情報制御部構築手段は状態遷移図中の各状態および該
各状態が次に遷移する状態さらには上記遷移選択要素信
号によりその入出力関係を規定する真理値表を作成して
上記遷移状態発生器の内部構造を構築するようにしたの
で、作業者にとって作成が容易な図的表現を用いて記述
した回路の要求仕様を入力して効率よく論理回路の自動
生成を実行でき、しかも、論理回路が持つべき機能を順
次分割することにより論理合成を行なうので、論理回路
の用途の変更やセルのライブラリの変更があった場合、
これに対応して論理結果物生成手段の対応する段階のみ
を変更するだけで、仕様の変更に対し柔軟に対応できる
論理回路自動生成装置が得られる効果がある。また、本
願の請求項7の発明に係る論理回路自動生成装置によれ
ば、請求項2記載の論理回路自動生成装置において、上
記情報制御部構築手段は状態遷移図中の各状態および状
態遷移図中に記入されたインストラクションが示す演算
器に入力されるべき信号を選択し、かつ各状態で代入が
行なわれる記憶器の種類によりその入出力関係を規定す
る真理値表を作成して上記制御信号発生器の内部構造を
構築するようにしたので、作業者にとって作成が容易な
図的表現を用いて記述した回路の要求仕様を入力して効
率よく論理回路の自動生成を実行でき、しかも、論理回
路が持つべき機能を順次分割することにより論理合成を
行なうので、論理回路の用途の変更やセルのライブラリ
の変更があった場合、これに対応して論理結果物生成手
段の対応する段階のみを変更するだけで、仕様の変更に
対し柔軟に対応できる論理回路自動生成装置が得られる
効果がある。また、本願の請求項8の発明に係る論理回
路自動生成装置によれば、請求項2記載の論理回路自動
生成装置において、上記情報処理部特定手段は状態遷移
図中の各状態およびインストラクション中の動作を示す
情報に応じて演算器を用意するとともに、動作の対象物
を示す情報に従って記憶器を用意し上記情報処理部の内
部構造を構築するようにしたので、作業者にとって作成
が容易な図的表現を用いて記述した回路の要求仕様を入
力して効率よく論理回路の自動生成を実行でき、しか
も、論理回路が持つべき機能を順次分割することにより
論理合成を行なうので、論理回路の用途の変更やセルの
ライブラリの変更があった場合、これに対応して論理結
果物生成手段の対応する段階のみを変更するだけで、仕
様の変更に対し柔軟に対応できる論理回路自動生成装置
が得られる効果がある。また、本願の請求項9の発明に
係る論理回路自動生成装置によれば、請求項2記載の論
理回路自動生成装置において、上記情報処理部特定手段
は状態遷移図中の各状態およびインストラクション中の
動作を示す情報に応じて演算器を用意するとともに、動
作の対象物を示す情報に従って記憶器を用意し、演算器
が上記遷移選択要素信号を出力するように上記情報処理
部の内部構造を構築するようにしたので、作業者にとっ
て作成が容易な図的表現を用いて記述した回路の要求仕
様を入力して効率よく論理回路の自動生成を実行でき、
しかも、論理回路が持つべき機能を順次分割することに
より論理合成を行なうので、論理回路の用途の変更やセ
ルのライブラリの変更があった場合、これに対応して論
理結果物生成手段の対応する段階のみを変更するだけ
で、仕様の変更に対し柔軟に対応できる論理回路自動生
成装置が得られる効果がある。また、本願の請求項10
の発明に係る論理回路自動生成装置によれば、請求項1
または2記載の論理回路自動生成装置において、上記仕
様入力として、上記状態遷移図に代えて状態遷移図以外
の図的表現を入力可能としたので、作業者にとって作成
が容易な図的表現を用いて記述した回路の要求仕様を入
力して効率よく論理回路の自動生成を実行でき、しか
も、論理回路が持つべき機能を順次分割することにより
論理合成を行なうので、論理回路の用途の変更やセルの
ライブラリの変更があった場合、これに対応して論理結
果物生成手段の対応する段階のみを変更するだけで、仕
様の変更に対し柔軟に対応できる論理回路自動生成装置
が得られる効果がある。また、本願の請求項11の発明
に係る論理回路自動生成装置によれば、請求項1記載の
論理回路自動生成装置において、上記論理回路の一表現
形態はネットリストであるものとしたので、作業者にと
って作成が容易な図的表現を用いて記述した回路の要求
仕様を入力して効率よく論理回路の自動生成を実行で
き、しかも、論理回路が持つべき機能を順次分割するこ
とにより論理合成を行なうので、論理回路の用途の変更
やセルのライブラリの変更があった場合、これに対応し
て論理結果物生成手段の対応する段階のみを変更するだ
けで、仕様の変更に対し柔軟に対応できる論理回路自動
生成装置が得られる効果がある。また、本願の請求項1
2の発明に係る論理回路自動生成装置によれば、請求項
1記載の論理回路自動生成装置において、上記論理回路
の一表現形態は論理回路図であるものとしたので、作業
者にとって作成が容易な図的表現を用いて記述した回路
の要求仕様を入力して効率よく論理回路の自動生成を実
行でき、しかも、論理回路が持つべき機能を順次分割す
ることにより論理合成を行なうので、論理回路の用途の
変更やセルのライブラリの変更があった場合、これに対
応して論理結果物生成手段の対応する段階のみを変更す
るだけで、仕様の変更に対し柔軟に対応できる論理回路
自動生成装置が得られる効果がある。また、本願の請求
項13の発明に係る論理回路自動生成装置によれば、請
求項1記載の論理回路自動生成装置において、上記論理
回路の一表現形態はハードウェア記述言語であるものと
したので、作業者にとって作成が容易な図的表現を用い
て記述した回路の要求仕様を入力して効率よく論理回路
の自動生成を実行でき、しかも、論理回路が持つべき機
能を順次分割することにより論理合成を行なうので、論
理回路の用途の変更やセルのライブラリの変更があった
場合、これに対応して論理結果物生成手段の対応する段
階のみを変更するだけで、仕様の変更に対し柔軟に対応
できる論理回路自動生成装置が得られる効果がある。
【0126】また、本願の請求項14の発明に係る論理
回路自動生成装置によれば、請求項1ないし13のいず
れかに記載の論理回路自動生成装置において、図的入力
によって、生成すべき回路の回路構成方法を指定する手
段を備えるようにしたので、合成される回路の構成に関
した情報も図的入力によって表現でき、仕様の判読が容
易となり、また合成されるべき回路の構成に関した情報
も図的表現によって容易に理解することができるととも
に、オペレータは装置の支援によって回路の共通化を指
示できるため、より効率のよい論理回路自動生成装置が
得られる効果がある。
【0127】また、本願の請求項15の発明に係る論理
回路自動生成装置によれば、請求項14記載の論理回路
自動生成装置において、上記仕様入力に示された仕様の
うち、共通した論理回路結果物によって実現できる共通
可能部分を自動的に抽出し、該共通可能部分をオペレー
タに知らしめるべく図的表現を用いて表示する手段を備
えるようにしたので、合成される回路の構成に関した情
報も図的入力によって表現でき、仕様の判読が容易とな
り、また合成されるべき回路の構成に関した情報も図的
表現によって容易に理解することができるとともに、オ
ペレータは装置の支援によって回路の共通化を指示でき
るため、より効率のよい論理回路自動生成装置られ
る効果がある。
【0128】また、本願の請求項16の発明に係る論理
回路自動生成装置によれば、請求項15記載の論理回路
自動生成装置において、オペレータによって、上記共通
した論理回路結果物によって実現できる部分を図的入力
によって指定する手段を備えるようにしたので、合成さ
れるべき回路の構成に関する情報も図的入力によって表
現でき、仕様の判読が容易となり、また合成されるべき
回路の構成に関した情報も図的表現によって容易に理解
することができるとともに、装置の支援では共通化しき
れない部分についてもその共通化を指示できるため、
り効率のよい論理回路自動生成装置られる効果があ
る。
【0129】また、本願の請求項17の発明に係る論理
回路自動生成装置によれば、外部からの仕様入力に対し
論理回路の一表現形態での結果物を自動生成する請求項
1ないし16のいずれかに記載の論理回路自動生成装置
において、生成されるべき回路のコントロールをつかさ
どる部分に、コントロールされる側の回路の性能に応じ
た速度でコントロール信号を発生する機能を持った回路
を自動合成する手段をさらに備えるようにしたので、コ
ントロールをつかさどる部分に、コントロールされる回
路のそれぞれの状態における動作の速度に合わせた信号
を生成するような回路を合成する機能を持たせるように
装置を構成したので、大規模な回路においても高速な動
作を行う回路を生成することができる論理回路自動生成
装置られる効果がある。
【0130】また、本願の請求項18の発明に係る論理
回路自動生成装置によれば、請求項17記載の論理回路
自動生成装置において、上記コントロールをつかさどる
部分に補助カウンタ機能を用いることにより上記機能を
実現する回路を自動合成する手段を備えるようにしたの
で、大規模な回路においても高速な動作を行う回路を生
成する装置を構成することができ、しかも、コントロー
ルをつかさどる部分の回路が簡単で済むように回路を生
成できる論理回路自動生成装置が得られる効果がある
【0131】また、本願の請求項19の発明に係る論理
回路自動生成装置によれば、請求項18記載の論理回路
自動生成装置において、上記補助カウンタ機能部にセッ
トする値をコントロールされる回路毎に動作速度を自動
的に計算した値を用いることにより、上記機能を実現す
る回路を自動合成する手段を備えるようにしたので、大
規模な回路においても高速な動作を行う回路を生成する
装置を構成することができ、しかも、各状態の動作速度
に合わせた信号を生成する回路を、人手を要することな
く合成できる論理回路自動生成装置が得られる効果があ
【0132】また本願の請求項20の発明に係る論理
回路自動生成装置によれば、請求項14または17記載
の論理回路自動生成装置において、上記仕様入力とし
て、状態遷移図、図的表現またはハードウェア記述言語
の少なくとも一つで記述されたものを入力可能としたの
で、仕様記述のしやすさによって入力を使いわけて、効
率よく論理回路の自動生成を実行できる論理回路自動生
成装置や大規模な回路においても高速な動作を行う回路
を生成する装置を構成することができる論理回路自動生
成装置が得られる効果がある。
【図面の簡単な説明】
【図1】図1は本発明の一実施例による論理回路自動生
成装置を示す図で、図1(a) はそのハード構成を示す
図、図1(b) はその処理の詳細を示すフローチャート
図、図1(c) は論理回路結果物生成手段の内部構成を示
す図である。
【図2】図2は状態遷移図の一例を示す図である。
【図3】図3は図1の装置により論理合成されるべき論
理回路の機能を大別した状態を示す図である。
【図4】図4は図3の情報制御部を細分化した状態を示
すブロック図である。
【図5】図5は図3の情報処理部を細分化した状態を示
すブロック図である。
【図6】図6は図3の情報制御部が発する制御信号のタ
イミングを示す図である。
【図7】図7は図5中の二項加算回路をゲートレベルに
展開した状態を示す図である。
【図8】図8は状態遷移図の他の例を示す図である。
【図9】図9は図8は状態遷移図により仕様が記述され
た論理回路の機能を大別した状態を示す図である。
【図10】図10は図9の情報制御部を細分化した状態
を示すブロック図である。
【図11】図11は図9の情報処理部を細分化した状態
を示すブロック図である。
【図12】図12は図9の情報制御部および情報処理部
が発する信号のタイミングを示す図である。
【図13】図13は図1の装置で実行される論理合成処
理のステップを示すフローチャート図である。
【図14】図14は図1の装置の要求使用である、ステ
ートダイアグラム(状態遷移図)を使った仕様入力の一
部分の例を示す図である。
【図15】図15は抽出された機能ブロックを図的表現
を使ってオペレータに表示した状態を示す図である。
【図16】図16はこの発明の一実施例による論理回路
自動生成装置の内部の処理を示すフローチャート図であ
る。
【図17】図17は図1の装置の要求使用である、ステ
ートダイアグラム(状態遷移図)を使った仕様入力の一
部分の例を示す図である。
【図18】図18は既存の論理回路素子とその動作を説
明する図である。
【符号の説明】 1 ワークステーション本体 2 記憶装置 3 高解像度ディスプレイ 4 マウス等 10 処理内容入力手段 20 論理回路結果物生成手段 1101 図的仕様を入力するステップ 1102 HDL等の要求仕様を入力するステップ 1103 共有化部分を抽出するステップ 1104 共有化仕様および回路構成仕様を作成するス
テップ 1105 回路構成情報を入力するステップ 1106 共有指示を入力するステップ 1107 論理合成を実行するステップ 2100 シーケンサー抽出部 2101 データパスブロック抽出部 2102 データパスブロック計算部 2103 コントロール回路ウエイト計算部 2104 コントロール回路生成部 C1 情報制御部 C2 情報処理部 C11 遷移状態発生器 C12 制御信号発生器 C21 数値1発生回路 C22,C2A 単項加算回路 C23,C2E 情報伝搬回路 C24,C2B レジスタ1 C25 二項加算回路 C26,C2F レジスタ2 C2D 数値2発生回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 橋本 武代志 大阪府吹田市江坂町1丁目12番38号 江 坂ソリトンビル 株式会社メガチップス 内 (72)発明者 増田 隆弘 大阪府吹田市江坂町1丁目12番38号 江 坂ソリトンビル 株式会社メガチップス 内 (56)参考文献 特開 平4−205665(JP,A) 特開 平3−103975(JP,A) 特開 平3−63878(JP,A) 特開 平3−41567(JP,A) 特開 平3−15984(JP,A) 特開 平2−144769(JP,A) 特開 平2−39376(JP,A) 特開 昭63−237173(JP,A) 特開 昭63−24362(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 17/50

Claims (20)

    (57)【特許請求の範囲】
  1. 【請求項1】 論理回路自動生成装置において、 外部からの仕様入力として入力される状態遷移図の状態
    間の遷移情報を抽出する遷移情報入力手段,および同じ
    く該状態遷移図中の各状態での処理内容を抽出する処理
    内容入力手段と、 上記状態間の遷移情報および上記各状態での処理内容と
    から自動生成すべき論理回路を、その内部構造の確定し
    ていない中間生成物に分割し、その内部構造をさらに分
    割しその分割したブロックの内部構造およびブロック間
    の配線を確定してゆく操作を順次行うことにより、論理
    素子により実現可能な複数のブロックおよびその間の配
    線に分割するトップダウン方式により上記論理回路の一
    表現形態での結果物を作成する論理回路結果物生成手段
    とを備え、 状態遷移図を入力し論理回路の一表現形態での結果物を
    自動生成することを特徴とする論理回路自動生成装置。
  2. 【請求項2】 請求項1記載の論理回路自動生成装置に
    おいて、 上記論理回路結果物生成手段は、 状態遷移図に基づき論理回路結果物を生成する過程にお
    いて、 情報の伝達経路を選択する情報伝達経路制御信号および
    複数ある記憶器のうちのいくつかの記憶器を特定しそれ
    らの書込みタイミングを制御する記憶制御信号を出力す
    べき情報制御部と、 状態遷移図中の各状態での処理内容における演算を行う
    演算器および演算結果を保持する記憶器を有し、入力さ
    れる上記情報伝達経路制御信号および記憶制御信号に応
    じて上記各演算を実行すべき情報処理部とからなる中間
    生成物を生成する中間生成物生成手段と、 上記中間生成物のうちの情報制御部を、 上記情報処理部の演算結果の特性と演算結果内容を示す
    制御信号および該情報制御部自身が出力した遷移位置情
    報に基づき次の遷移位置情報を出力すべき遷移状態発生
    器と、 該遷移状態発生器からの遷移位置情報に応じて上記情報
    伝達経路制御信号および上記記憶制御信号を発生すべき
    制御信号発生器とに分けて特定することにより構築する
    情報制御部構築手段と、 上記遷移状態発生器と上記制御信号発生器とを論理回路
    素子および配線の組合せにより実現できる記憶回路,論
    理演算回路,信号選択回路または数値発生回路およびこ
    れらの間の配線の組合せとして特定する情報制御部特定
    手段と、 上記中間生成物のうちの情報処理部を、 状態遷移図中に記入されたインストラクションに応じ
    て、論理回路素子および配線の組合せにより実現できる
    記憶回路または論理演算回路,信号選択回路,数値発生
    回路(以下、演算器と称す)およびこれらの間の配線の
    組合せとして特定する情報処理部特定手段とからなるも
    のであることを特徴とする論理回路自動生成装置。
  3. 【請求項3】 請求項2記載の論理回路自動生成装置に
    おいて、 上記情報伝達経路制御信号は、複数のレジスタの各々に
    つきこれに対する入力が複数あるときにどれを選ぶかを
    決定する信号であることを特徴とする論理回路自動生成
    装置。
  4. 【請求項4】 請求項2記載の論理回路自動生成装置に
    おいて、 上記情報処理部は、上記情報制御部に保持されている状
    態からの遷移を決定するための該状態における演算結果
    あるいは以前の演算結果を遷移選択要素信号として上記
    情報制御部に送るものであることを特徴とする論理回路
    自動生成装置。
  5. 【請求項5】 請求項2記載の論理回路自動生成装置に
    おいて、 上記情報制御部構築手段は状態遷移図中の各状態および
    該各状態が次に遷移する状態によりその入出力関係を規
    定する真理値表を作成して上記遷移状態発生器の内部構
    造を構築することを特徴とする論理回路自動生成装置。
  6. 【請求項6】 請求項2記載の論理回路自動生成装置に
    おいて、 上記情報制御部構築手段は状態遷移図中の各状態および
    該各状態が次に遷移する状態さらには上記遷移選択要素
    信号によりその入出力関係を規定する真理値表を作成し
    て上記遷移状態発生器の内部構造を構築することを特徴
    とする論理回路自動生成装置。
  7. 【請求項7】 請求項2記載の論理回路自動生成装置に
    おいて、 上記情報制御部構築手段は状態遷移図中の各状態および
    状態遷移図中に記入されたインストラクションが示す演
    算器に入力されるべき信号を選択し、かつ各状態で代入
    が行なわれる記憶器の種類によりその入出力関係を規定
    する真理値表を作成して上記制御信号発生器の内部構造
    を構築することを特徴とする論理回路自動生成装置。
  8. 【請求項8】 請求項2記載の論理回路自動生成装置に
    おいて、 上記情報処理部特定手段は状態遷移図中の各状態および
    インストラクション中の動作を示す情報に応じて演算器
    を用意するとともに、動作の対象物を示す情報に従って
    記憶器を用意し上記情報処理部の内部構造を構築するこ
    とを特徴とする論理回路自動生成装置。
  9. 【請求項9】 請求項2記載の論理回路自動生成装置に
    おいて、 上記情報処理部特定手段は状態遷移図中の各状態および
    インストラクション中の動作を示す情報に応じて演算器
    を用意するとともに、動作の対象物を示す情報に従って
    記憶器を用意し、演算器が上記遷移選択要素信号を出力
    するように上記情報処理部の内部構造を構築することを
    特徴とする論理回路自動生成装置。
  10. 【請求項10】 請求項1または2記載の論理回路自動
    生成装置において、 上記仕様入力として、上記状態遷移図に代えて状態遷移
    図以外の図的表現を入力可能としたことを特徴とする論
    理回路自動生成装置。
  11. 【請求項11】 請求項1記載の論理回路自動生成装置
    において、 上記論理回路の一表現形態はネットリストであることを
    特徴とする論理回路自動生成装置。
  12. 【請求項12】 請求項1記載の論理回路自動生成装置
    において、 上記論理回路の一表現形態は論理回路図であることを特
    徴とする論理回路自動生成装置。
  13. 【請求項13】 請求項1記載の論理回路自動生成装置
    において、 上記論理回路の一表現形態はハードウェア記述言語であ
    ることを特徴とする論理回路自動生成装置。
  14. 【請求項14】 請求項1ないし13のいずれかに記載
    の論理回路自動生成装置において、 図的入力によって、生成すべき回路の回路構成方法を指
    定する手段を備えたことを特徴とする論理回路自動生成
    装置。
  15. 【請求項15】 請求項14記載の論理回路自動生成装
    置において、 上記仕様入力に示された仕様のうち、共通した論理回路
    結果物によって実現できる共通可能部分を自動的に抽出
    し、該共通可能部分をオペレータに知らしめるべく図的
    表現を用いて表示する手段を備えたことを特徴とする論
    理回路自動生成装置。
  16. 【請求項16】 請求項15記載の論理回路自動生成装
    置において、 オペレータによって、上記共通した論理回路結果物によ
    って実現できる部分を図的入力によって指定する手段を
    備えたことを特徴とする論理回路自動生成装置。
  17. 【請求項17】 外部からの仕様入力に対し論理回路の
    一表現形態での結果物を自動生成する請求項1ないし1
    6のいずれかに記載の論理回路自動生成装置において、 生成されるべき回路のコントロールをつかさどる部分
    に、コントロールされる側の回路の性能に応じた速度で
    コントロール信号を発生する機能を持った回路を自動合
    成する手段をさらに備えたことを特徴とする論理回路自
    動生成装置。
  18. 【請求項18】 請求項17記載の論理回路自動生成装
    置において、 上記コントロールをつかさどる部分に補助カウンタ機能
    を用いることにより上記機能を実現する回路を自動合成
    する手段を備えたことを特徴とする論理回路自動生成装
    置。
  19. 【請求項19】 請求項18記載の論理回路自動生成装
    置において、 上記補助カウンタ機能部にセットする値をコントロール
    される回路毎に動作速度を自動的に計算した値を用いる
    ことにより、上記機能を実現する回路を自動合成する手
    段を備えたことを特徴とする論理回路自動生成装置。
  20. 【請求項20】 請求項14または17記載の論理回路
    自動生成装置において、 上記仕様入力として、状態遷移図、図的表現またはハー
    ドウェア記述言語の少なくとも一つで記述されたものを
    入力可能としたことを特徴とする論理回路自動生成装
    置。
JP04179177A 1991-06-11 1992-06-11 論理回路自動生成装置 Expired - Fee Related JP3134132B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP16893591 1991-06-11
JP34215691 1991-11-28
JP3-342156 1992-01-07
JP2049392 1992-01-07
JP3-168935 1992-01-07
JP4-20493 1992-01-07

Publications (2)

Publication Number Publication Date
JPH05250437A JPH05250437A (ja) 1993-09-28
JP3134132B2 true JP3134132B2 (ja) 2001-02-13

Family

ID=27283064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04179177A Expired - Fee Related JP3134132B2 (ja) 1991-06-11 1992-06-11 論理回路自動生成装置

Country Status (2)

Country Link
US (1) US5740070A (ja)
JP (1) JP3134132B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102196567B1 (ko) * 2019-04-24 2020-12-29 현권혁 축산용 미니 세정탑

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5933633A (en) * 1996-11-19 1999-08-03 Good; Sebastian Erich State table generating system
US6035109A (en) * 1997-04-22 2000-03-07 Nec Usa, Inc. Method for using complete-1-distinguishability for FSM equivalence checking
JP2988521B2 (ja) * 1997-08-29 1999-12-13 日本電気株式会社 論理回路の自動合成方式
JP5395321B2 (ja) * 2006-08-25 2014-01-22 富士通株式会社 Lsi品種決定方法、lsi品種決定プログラムおよびlsi品種決定装置
US20090292837A1 (en) * 2008-05-26 2009-11-26 Hisaaki Katagiri Propagation path specifying device, propagation path specifying method and computer program product

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4964056A (en) * 1987-03-25 1990-10-16 Hitachi, Ltd. Automatic design system of logic circuit
US5029102A (en) * 1987-06-08 1991-07-02 International Business Machines, Corp. Logical synthesis
US5146583A (en) * 1987-09-25 1992-09-08 Matsushita Electric Industrial Co., Ltd. Logic design system for creating circuit configuration by generating parse tree from hardware description language and optimizing text level redundancy thereof
US4922432A (en) * 1988-01-13 1990-05-01 International Chip Corporation Knowledge based method and apparatus for designing integrated circuits using functional specifications
JPH027171A (ja) * 1988-06-24 1990-01-11 Nec Corp 論理回路合成方式
US5371683A (en) * 1989-03-22 1994-12-06 Kabushiki Kaisha Toshiba LSI design support system
JPH06188371A (ja) * 1992-12-21 1994-07-08 Hitachi Ltd 半導体集積回路装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102196567B1 (ko) * 2019-04-24 2020-12-29 현권혁 축산용 미니 세정탑

Also Published As

Publication number Publication date
US5740070A (en) 1998-04-14
JPH05250437A (ja) 1993-09-28

Similar Documents

Publication Publication Date Title
JP2862886B2 (ja) Asic用計算機支援設計システム
JP3027009B2 (ja) 設計取り込みシステム
US6311309B1 (en) Methods and apparatus for simulating a portion of a circuit design
JPH07160744A (ja) 自律進化型ハードウェア設計システム
JP3134132B2 (ja) 論理回路自動生成装置
US6546536B1 (en) System and method for disabling schematics
Crookes et al. An environment for generating FPGA architectures for image algebra-based algorithms
US20070250803A1 (en) High-level synthesis method and high-level synthesis system
JP3049092B2 (ja) 論理合成システム
JP3702475B2 (ja) 回路自動生成装置
Sarma et al. High-level synthesis: Technology transfer to industry
Sklyarov et al. Design of Digital Circuits on the Basis of Hardware Templates.
SRI DESIGN AND IMPLEMENTATION OF HYBRID FULL ADDER BASED 16-BIT MULTIPLICATION USING FPGA
JP2001022808A (ja) 論理回路削減装置ならびに論理シミュレーション方法および装置
JPH06309396A (ja) 回路設計方法
JPH1011476A (ja) 集積回路の特性解析装置
JP3709626B2 (ja) 回路検証装置
JPH0991315A (ja) 論理装置の検証データ生成方法
Sklyarov et al. Development system for FPGA-based digital circuits
JP5211776B2 (ja) 動作合成装置、動作合成方法及びプログラム
JP2007004356A (ja) システム検証ツール
JPH06348463A (ja) 入出力装置模擬部作成方法
Manjikian et al. Enhancements and applications of a versatile software tool for high-level specification of single-chip systems
Milden An approach for selecting a language for computer hardware description and simulation
JPH07225783A (ja) 機能設計支援装置及びその方法

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071201

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081201

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091201

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101201

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111201

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees