JPH08101861A - 論理回路合成装置 - Google Patents

論理回路合成装置

Info

Publication number
JPH08101861A
JPH08101861A JP6261668A JP26166894A JPH08101861A JP H08101861 A JPH08101861 A JP H08101861A JP 6261668 A JP6261668 A JP 6261668A JP 26166894 A JP26166894 A JP 26166894A JP H08101861 A JPH08101861 A JP H08101861A
Authority
JP
Japan
Prior art keywords
circuit
hardware
state machine
finite state
single flow
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.)
Abandoned
Application number
JP6261668A
Other languages
English (en)
Inventor
Masatoshi Sekine
優年 関根
Tokuji Masuda
篤司 増田
Hansen Jiefurii
ハンセン ジェフリー
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP6261668A priority Critical patent/JPH08101861A/ja
Priority to US08/534,065 priority patent/US5706205A/en
Publication of JPH08101861A publication Critical patent/JPH08101861A/ja
Abandoned 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)

Abstract

(57)【要約】 【目的】 大規模な制御回路の合成を好適に行うことが
できる論理回路合成装置を提供することにある。 【構成】 動作記述言語にて記述されたシステムの動作
記述グラフから制御記述グラフを作成する制御記述グラ
フ作成手段200と、この制御記述グラフ作成手段にて
作成された制御記述グラフを制御条件により分類し、部
分グラフ又は閉ループを含む単一のフローを抽出する単
一フロー抽出手段300と、初期回路を入力する初期回
路入力手段400と、前記単一フロー抽出手段300に
て抽出された単一のフローを実行ステップに分けるスケ
ジューリング手段500と、このスケジューリング手段
500にて分けられた実行ステップ毎に、前記初期回路
に必要なハード部品を割り付けるハードウエア割り付け
手段600と、このハードウエア割り付け手段600に
て割り付けられた単一のフローを各ステップを有限状態
マシンに変換し、この変換された有限状態マシンを一つ
の有限状態マシンに結合する有限状態マシン結合手段8
00とを具備してある。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は論理回路合成装置に関
し、特に動作記述から論理回路を合成する高位合成を行
う論理回路合成装置に関する。
【0002】
【従来の技術】高位合成は、動作記述からこの動作記述
を実現する論理回路を完成させるための設計をいうが、
従来から、この高位合成について種々の発明が開示され
ている(例えば、“High level Synthesis of ASICs Un
der Timing and Synchronization Constraints”David
C.Ku,Giovanni De Micheli,Kluwer Academic Publishe
rs,1992 参照)。上記の文献に開示された発明は、動
作記述からコントロール・データ・フローグラフ(以
下、CDFGと記す)を取り出し演算子を割り付け、演
算子の実行時間に従ってCDFGを実行ステップに分け
(以下、これをスケジューリングと記す)、その後、各
実行ステップ間にレジスタ割り付けを行い、ハードウェ
アの割り付けと共有化(シュアリング)を行うことで、
システムのハードウェア化を実現するものである。
【0003】
【発明が解決しようとする課題】しかしながら上述の方
法では、小規模のシステム合成では効果があるもののC
DFGの制御構造がそのまま合成されたハードウェアの
制御構造となるため、大規模システムを合成する場合に
は最適な制御構造を得ることが困難であった。これは、
実際に人手設計で最適な設計を行うときにハードウェア
を割り付けていくと、元のCDFGにはなかった制御や
状態が生ずるが、従来技術では、こうした制御の変更は
許さないものが多いためである。また、スケジューリン
グやハードウェアシェアリング技術についてもシステム
全体の合成を一括して処理するため、小規模のシステム
の合成では効果があるものの大規模システムを合成する
ことが難しく、できたとしても人手による設計に比べて
劣るのが現状であった。この第1の原因としては、CD
FGが高位記述と呼ぶソフトウェアやビヘイビア記述言
語で書かれた抽象的なシステムの逐次的な動作の制御を
抽出しているだけであり、CDFGの制御構造が必ずし
もハードウェアの制御構造を反映しているわけではない
からである。また、第2の原因としては、高位合成に与
えるのがデータの流れに関する情報のみであり、実際の
ハードウエアの接続に関する情報が不足しているからで
ある。そのため、ソフトウェアからの高位合成をあきら
め有限状態マシン(Finit State Machine (FSM))
からの合成のみを考えている研究者もいる。しかし、高
位合成の目的とするところは、システムのハードウェア
に関する記述が書かれていない高位記述からのFSMの
生成である。
【0004】本発明は上記事情に鑑みてなされたもので
あり、その目的とするところは、大規模な論理回路の合
成を好適に行うことができる論理回路合成装置を提供す
ることにある。
【0005】
【課題を解決するための手段】本発明は、上記目的を達
成するために高位記述で等価であるCDFGから人手設
計と同等のFSMを作り出す論理回路合成装置を提供す
るものである。即ち、人が膨大な可能性の中から、少数
の候補を選んでいく方法と類似しており、逐次的にFS
Mを構成していくものである。
【0006】第1の発明の特徴は、動作記述から論理回
路を設計する論理回路合成装置において、この論理回路
合成装置に初期回路を与え、この与えられた初期回路に
回路部品を追加して所望の論理回路を設計することであ
る。
【0007】また、第2の発明の第1の特徴は、動作記
述言語にて記述されたシステムの動作記述グラフから制
御記述グラフを作成する制御記述グラフ作成手段と、こ
の制御記述グラフ作成手段にて作成された制御記述グラ
フを制御条件により分類し、部分グラフ又は閉ループを
含む単一のフローを抽出する単一フロー抽出手段と、初
期回路を入力する初期回路入力手段と、前記単一フロー
抽出手段にて抽出された単一のフローを実行ステップに
分けるスケジューリング手段と、このスケジューリング
手段にて分けられた実行ステップ毎に、前記初期回路に
必要なハード部品を割り付けるハードウエア割り付け手
段と、このハードウエア割り付け手段にて割り付けられ
た単一のフローを各ステップを有限状態マシンに変換
し、この変換された有限状態マシンを一つの有限状態マ
シンに結合する有限状態マシン結合手段とを具備するこ
とである。
【0008】また、第2の発明の第2の特徴は、前記初
期回路入力手段は、入力端子、出力端子、実行ステップ
数、及び接続可能な部品表を定めた基本ハードウエア部
品が格納されているハードウエア部品ライブラリから所
望の初期回路を選択させ、入力することである。
【0009】また、第2の発明の第3の特徴は、前記ハ
ードウエア割り付け手段にてハードウエアを割り付けた
後に、同一の処理を行い、かつ使用する時間帯が異なる
ハードウエアの共有化の処理を行い、この処理を行った
単一のフローを、各ステップを有限状態マシンに変換
し、前記有限状態マシン結合手段にて、この変換された
有限状態マシンを一つの有限状態マシンに結合すること
である。
【0010】更に、第2の発明の第4の特徴は、前記ハ
ードウエア割り付け手段は、前記スケジューリング手段
にて分けられた実行ステップ毎に、データフロー中の演
算器を重ねずにパスを分割する単一フロー分割部と、こ
の分割されたパスを前記初期回路中から探索する初期回
路探索部と、この探索されたパスの中から、前記分割さ
れたパスを実現するのに最適なパスの組み合わせを求め
る最適解計算部と、この最適解計算部にて決定されなか
った前記分割されたパスに対して、前記初期回路に付加
するハードウエア量が少ない組み合わせを求め、前記初
期回路に前記求められたハードウエアを付加する矛盾最
小化部とを具備することである。
【0011】
【作用】第1の発明の構成によれば、初期回路を与える
ことにより巨大な設計空間を網羅的に探索するのではな
く、初期回路の近くの局所的な部分領域を探索していく
ので、探索の爆発を未然に防ぐことが可能である。
【0012】第2の発明においては、制御変数の条件値
に従って選択的に選ばれる部分グラフを取り出す。各部
分グラフは個別に従来手法である高位合成によりスケジ
ューリングを行って実行に必要なステップ数とレジスタ
数を求め、次にハードウェア割り付け手段で演算に必要
な演算装置を割り付けていく。同時に、スケジューリン
グで求められた実行ステップ列は有限状態マシン(FS
M)の状態に写像される。部分回路を割り付ける際に、
設計者が作成した初期回路を元にして、それに追加修正
を加えながら、合成回路のデータパスとFSMを作成し
ている。条件値の組み合わせごとに部分回路の作成が終
了したあと、各部分回路を継ぎ合わせて全体回路を作成
していく。継ぎ合わせ時に重複して利用される部分回路
に対しては条件値を表わす論理式の和を取っていく。こ
の論理式は、論理の最適化によって簡単化される。
【0013】従って、第2の発明の構成によれば、動作
記述を解析して、部分グラフごとにスケジューリング
し、部分的にハードウェア割り付けをしていくので、動
作記述に書かれた制御構造が直接ハードウェアの制御構
造にそっくり移植されるのではなく、ハードウェア構造
に適した制御構造に変換されていく。そのため、従来で
は人手設計に比べて、冗長な回路しか作れなかったのに
対して、人手設計に近い回路を作ることが可能である。
また、組み合わせ回路で実現する方が最小の回路を作り
出せる場合にその部分は、行列表現に直してから行列処
理を行って最適な回路を作り出すことができるのであ
る。
【0014】
【実施例】本発明の実施例について図面を使って説明す
る。ここで、本発明に係る制御回路合成装置が具備する
ハードウエア構成は、各種処理を行うためのCPUと、
キーボード、マウス、ライトペン、又はフレキシブルデ
ィスク装置等の入力装置と、メモリ装置やディスク装置
等の外部記憶装置と、ディスプレイ装置、プリンタ装置
等の出力装置等とを備えた通常のコンピュータシステム
を用いてもよい。なお、前記CPUは、各種の処理を行
う演算部と、前記処理の命令を記憶する主記憶部とを具
備する。ここで、以下の実施例においては論理回路合成
装置のうちで、特に制御回路合成装置についての説明す
る。
【0015】第1実施例 本実施例に係る制御回路合成装置が具備するソフトウエ
ア構成のブロック図を図1に示す。この制御回路合成装
置は、動作記述言語にて記述されたシステムの動作記述
グラフから制御記述グラフを作成する制御記述グラフ作
成手段200と、この制御記述グラフ作成手段にて作成
された制御記述グラフを制御条件により分類し、部分グ
ラフ又は閉ループを含む単一のフローを抽出する単一フ
ロー抽出手段300と、初期回路を入力する初期回路入
力手段400と、前記単一フロー抽出手段300にて抽
出された単一のフローを実行ステップに分けるスケジュ
ーリング手段500と、このスケジューリング手段50
0にて分けられた実行ステップ毎に、前記初期回路に必
要なハード部品を割り付けるハードウエア割り付け手段
600と、このハードウエア割り付け手段600にて割
り付けられた単一のフローを各ステップを有限状態マシ
ンに変換し、この変換された有限状態マシンを一つの有
限状態マシンに結合する有限状態マシン結合手段800
とを具備する。
【0016】次に、本実施例に係る制御回路合成装置の
動作について図2を用いて説明する。ここで、図2は、
図1と同一手段等は同一符号を付し、その名称の記載は
省略してある。
【0017】(1) 動作記述グラフ100内に記載の変数
Pは制御変数であり、その条件値によって和(‘+’)
又は積(‘*’)演算がs=b+c、又はs=b*cで
示されている。動作記述言語としてはソフトウェア言語
である“C”を使用してある。制御記述グラフ作成手段
200は、この動作記述グラフ100を読み込み、通常
のコンパイラーの技術を使い、高位記述グラフ200を
構文解析し、パーズ木(制御記述グラフ)を作る。さら
にこのパーズ木を整理してCDFG250を作る。この
CDFG250内に記載の(if)ノード1は制御変数
(k)又は(i)を入力して、その真偽によって、T
(真)−枝4、F(偽)−枝5を通じて、部分グラフを
選択する。
【0018】(2) 次に、単一フロー抽出手段300は、
作成されたCDFG250を読み込み、これを再分析し
て制御ノードと制御変数及び条件式の値を求める。変数
の値を決定し、一意的に定まる閉ループを含む部分グラ
フ350を選択する。この部分グラフ350は分枝を含
まない単一フローである閉ループがある場合には閉ルー
プからの脱出条件は、この部分グラフ350の選択条件
とは異なる。
【0019】(3) 初期回路入力手段400は、合成を目
的とする論理回路の一部を操作者等が入力を行う。この
入力には、GUIを用いて実際に作成したものの入力
や、予め用意したファイルの入力によって行ってもよ
い。本実施例においては、予め用意した入力端子、出力
端子、実行ステップ数、及び接続可能な部品表を定めた
基本ハードウエア部品が格納されているハードウエアラ
イブラリ450から、所望のハードウエアの部品を読込
んだものを用いることにする。
【0020】(4) スケジューリング手段500は、単一
フロー抽出手段300で得られたCDFGの部分グラフ
350を、演算子の実行処理時間にしたがって実行ステ
ップに分割する。この手段で、CDFGの部分グラフは
同一時間内に処理が終るCDFGの断片に細断される。
以下、これを実行ステップという。
【0021】(5) ハードウェア割り付け手段600で
は、各CDFGの断片ごとにその処理に必要なハード部
品を割り付けることができるが各ハード部品間の結線は
一時的かつ、仮想的である。次に、先にハード部品をつ
ないで作った初期回路が与えられており、そのハード部
品は入出力端子や実行ステップ数などが決められている
ので、その初期回路を変形しながらハードウエアのデー
タパス集650を作っていく。
【0022】この最適な回路を作成するには種々の最適
アルゴリズムを使用することができる。例えば一例とし
て、個々の演算器をナップサックにしてローパスをアイ
テムにすることで最適化を図るナップザック・アルゴリ
ズム(“KNAPSACKPROBLEMS”,SILVAN
O MARTELLO・PAOLOTOTH, JOHN WILEY & SONS 1990)が
ある。各アルゴリズム毎に最適な回路は異なるが、本発
明による漸次的な回路の追加修正法によれば、初期回路
の近くでの局所最適解を与えるものといえる。
【0023】(6) ハードウェア共有部分処理の手段70
0では、上記(4) で割り付けられた同一の機能である
(同一の演算を行う)ハード部品のうち、使用する時間
帯が異なるだけのものをまとめあげて共有化する。こう
して部品数を減らしていく。次に共有部品の入出力端子
に選択回路を付加して入力元と出力先が選択できる様に
する。この選択回路は条件ごとに急速に増加するので、
通常の論理簡単化により最小化する。
【0024】(7) 次に、有限状態マシン結合手段800
により、各実行ステップは各条件値ごとの部分グラフご
とにFSMの状態に割り付けられる。割り付けは同一機
能を実行するハード部品はなるべく同じ状態に割り付け
ていく。次に条件ごとに部分グラフを割り付けていくの
で、CDFGの条件分岐は、性能遷移の分岐にすべき
か、データパスの分岐にすべきかの任意性がある。どち
らが回路として適しているかを調べて決定する。この手
段によりCDFGとは異なる制御構造をもつFSM90
0が作られる。
【0025】次に、ハードウェア割り付け手段600に
よって初期回路に追加回路が付加されて最終回路が作ら
れていく様子を示したのが図3である。
【0026】図に示すように、初期回路7では足りない
場合には追加演算器10(図中は斜線で示す)を追加
し、それに付随して追加結線8を接続することにより追
加回路9を追加し、所望の最終回路を得る。この追加の
手順は実施例2にて詳細に説明する。
【0027】この様に本発明に係る制御回路合成装置に
よれば、設計者が望むシステムの基本構成を初期回路と
して与えることができ、その初期回路に基づいてFSM
の作成を行うので、大規模な回路を作成することができ
る。
【0028】第2実施例 本実施例においては、ハードウェア割り付け手段600
の詳細を中心に説明することにする。図4は、ハードウ
ェア割り付け手段600の詳細を示したブロック図であ
る。本実施例に係る制御回路合成装置が具備するハード
ウエア割り付け手段600は、単一フロー中の演算器を
重ねずに、この単一フローを分割する単一フロー分割部
610と、この分割された単一フローに対応する部分回
路を前記初期回路中から探索する初期回路探索部620
と、この探索された部分回路の候補の中から、前記分割
された単一フローを実現するのに最適な部分回路の組み
合わせを求める最適解計算部630と、この最適解計算
部にて決定されなかった前記分割された単一フローに対
して、前記初期回路に付加する追加部分回路のハードウ
エア量が少ない追加部分回路の組み合わせを求め、前記
初期回路に前記求められた追加部分回路を付加する矛盾
最小化部640とを具備する。
【0029】次に、第2の実施例を処理の流れに沿って
説明する。◎ (1) 本実施例での入力動作記述の例を図5に示す。この
記述をCDFGに変換すると図6のようになる。このC
DFGは入力端子から入ったデータがどの様な演算を通
って、出力端子に到達するかを表したものである。
【0030】(2) 次に、初期回路入力手段400で、論
理回路の一部分が入力される。ここでの入力方法として
は、GUIを用いるものや、ファイルで渡す方法などが
ある。本実施例では、図7に示されたような論理回路が
入力されたものとする。図中のR1,R2,R3はそれ
ぞれレジスタを表しており、+,−はそれぞれ加算器と
減算器を表している。さらに×1 ,×2 はそれぞれ乗算
器を表しているが、識別のために番号を振ってある。
【0031】(3) 次に、スケジューリング手段500で
CDFGを時間分割する。図8はスケジューリングされ
た結果で、点線部分がクロックの切り替わりを表してい
る。ここで、クロックをまたがるデータ転送にレジスタ
(図中は演算器の下部の四角形で示す)が割り振られて
いる。図8より、本スケジューリング結果は5サイクル
でデータの処理ができることを表している。
【0032】(4) 次に、ハードウェア割り付け手段60
0の単一フロー分割部610で、スケジューリングされ
たCDFGを演算器が重複しないようにパスに分割す
る。本実施例では、G1,G2,G3の3つのパスに分
割している。一例を示すと、G1は入力端子→加算器→
レジスタ→乗算器→レジスタ→加算器→レジスタ→加算
器→レジスタ→減算器→出力端子というパスである。こ
れらのパスをG-pathと呼ぶ。
【0033】(5) 次に、初期回路探索部620で、初期
回路中でG-pathを実現するパス(D-path)を探索する。
例えば、図7中でG1を実現するD-pathとしては、まず
+→R1→×1 →R1→+→R1→+→R1→−という
パスを見つけることができる。一般的に、D-pathは一本
だけではなく、複数本存在している。この複数のD-path
の候補を有限個に絞ることで解の探索範囲を有限にして
いる。本実施例での探索結果を示したのが図10であ
る。図10では、G1というG-pathに対してD11,D
12が、G2に対してはD21,D22が、G3にはD
3というD-pathがあることを示している。
【0034】(6) 次に最適解計算部630で各G-pathに
対してそれぞれ一本のD-pathを割り振る。実際の処理
は、一般的な最適化アルゴリズム(ナップザック問題を
解くアルゴリズム等)で実施することが可能である。本
実施例では、(G1,G2,G3)の組に対して、(D
11,D21,D3),(D11,D22,D3),
(D12,D21,D3),(D12,D22,D3)
という4つの組み合わせが考えられる。ここで、図10
中の各列は実行時間と同じなので、同じ列に同じ演算が
出現するような組み合わせは、実現不可能(以下、矛盾
が生じたと呼ぶ)ということになる。例えば、D11と
D21は4列目で同じレジスタR1を使用することにな
るので、矛盾が生じていることがわかる。更に、D3は
他の全てのD-pathと矛盾しているので、ここでは処理せ
ずに、矛盾最小化部640で処理するように決定する。
G1に対するD-pathをD11と決定すると、G2に対す
るD-pathはD22と決定される。
【0035】(7) 次に、矛盾最小化部640で、最適解
決定部で矛盾が解消されなかったG-pathに対して、初期
回路に新たな演算器や、内部結線等の部分回路を追加し
て、矛盾を解消する。本実施例では新たに、加算器と減
算器を一つずつ、更にレジスタを一つ追加して、G3が
実現できるように初期回路を変更する。以上のようにし
て作成された最終的な論理回路を図8に示す。
【0036】本実施例によれば、ローパスの候補を絞る
ことで、膨大となる探索空間を初期回路の近傍にするこ
とができ、大規模な回路に適応可能となるばかりでな
く、より人手による設計に近い最適な論理回路を設計す
ることができる。
【0037】
【発明の効果】以上説明してきたように本発明では、大
きなシステムを記述した動作記述回路を各条件値ごとに
部分グラフ(部分動作記述)にわけていく分割・征服法
によるので、従来の高位合成より大規模な回路の合成が
可能である。又、各部分グラフごとに最適化して、設計
者が求めるシステムの基本構造に追加修正を加えてい
き、従来の様に巨大な設計空間を網羅的に探索するので
はなく、初期解の近くの局所的な部分領域を探索してい
くので、探索の爆発を未然に防ぐことが可能である。
又、回路追加・修正も局所変換的なので論理合成で知ら
れた局所変換を合成ルール化した方式を使い、設計のノ
ウハウをルール化することも容易である。
【図面の簡単な説明】
【図1】本発明の第1の実施例に係る制御回路合成装置
のブロック図である。
【図2】本発明の第1の実施例に係る制御回路合成装置
の処理を説明するための図である。
【図3】ハードウェアの追加、修正を説明するための図
である。
【図4】本発明の第2の実施例に係る制御回路合成装置
の一部のブロック図である。
【図5】第2実施例で用いる動作記述の例である。
【図6】図5の動作記述をCDFGへ変換を行った場合
の図である。
【図7】第2実施例で用いる初期回路を示した図であ
る。
【図8】図6のCDFGにスケジューリングを施したも
のを示した図である。
【図9】パス分割を説明するための図である。
【図10】第2実施例での探索結果を示した図である。
【図11】第2実施例で作成された最終的な論理回路を
示した図である。
【符号の説明】
1 条件ノード 2 変数ノード 3 演算ノード 4 偽値枝 5 真値枝 6a 加算器 6b 乗算器 7 初期回路 8 追加結線 9 追加回路 10 追加演算器 100 動作記述グラフ 200 判断記述グラフ作成手段 250 制御記述グラフ(CDFG) 300 単一フロー抽出手段 350 部分グラフ 400 初期回路入力手段 450 ハードウェアライブラリ 500 スケジューリング手段 600 ハードウェア割り付け手段 610 単一フロー分割部 620 初期値回路探索部 630 最適解計算部 640 矛盾最小部 650 ハードウェア割り付けグラフ 700 ハードウェア共有部分処理手段 800 有限状態マシン結合手段 900 有限状態マシン 910 状態遷移図 920 データパス

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 動作記述から論理回路を設計する論理回
    路合成装置において、 この論理回路合成装置に初期回
    路を与え、この与えられた初期回路に回路部品を追加、
    あるいは修正して所望の論理回路を設計することを特徴
    とする論理回路合成装置。
  2. 【請求項2】 動作記述言語にて記述されたシステムの
    動作記述グラフから制御記述グラフを作成する制御記述
    グラフ作成手段と、 この制御記述グラフ作成手段にて作成された制御記述グ
    ラフを制御条件により分類し、部分グラフ又は閉ループ
    を含む単一のフローを抽出する単一フロー抽出手段と、 初期回路を入力する初期回路入力手段と、 前記単一フロー抽出手段にて抽出された単一のフローを
    実行ステップに分けるスケジューリング手段と、 このスケジューリング手段にて分けられた実行ステップ
    毎に、前記初期回路に必要なハード部品を割り付けるハ
    ードウエア割り付け手段と、 このハードウエア割り付け手段にて割り付けられた単一
    のフローを各ステップを有限状態マシンに変換し、この
    変換された有限状態マシンを一つの有限状態マシンに結
    合する有限状態マシン結合手段と、 を具備することを特徴とする論理回路合成装置。
  3. 【請求項3】 前記初期回路入力手段は、入力端子、出
    力端子、実行ステップ数、及び接続可能な部品表を定め
    た基本ハードウエア部品が格納されているハードウエア
    部品ライブラリから所望の初期回路を選択させ、入力す
    ることを特徴とする請求項2記載の論理回路合成装置。
  4. 【請求項4】 前記ハードウエア割り付け手段にてハー
    ドウエアを割り付けた後に、 同一の処理を行い、かつ使用する時間帯が異なるハード
    ウエアの共有化の処理を行い、 この処理を行った単一のフローを、各ステップを有限状
    態マシンに変換し、前記有限状態マシン結合手段にて、
    この変換された有限状態マシンを一つの有限状態マシン
    に結合することを特徴とする請求項2記載の論理回路合
    成装置。
  5. 【請求項5】 前記ハードウエア割り付け手段は、 前記単一フロー中の演算器を重ねずに、この単一フロー
    を分割する単一フロー分割部と、 この分割された単一フローに対応する部分回路を前記初
    期回路中から探索する初期回路探索部と、 この探索された部分回路の候補の中から、前記分割され
    た単一フローを実現するのに最適な部分回路の組み合わ
    せを求める最適解計算部と、 この最適解計算部にて決定されなかった前記分割された
    単一フローに対して、前記初期回路に付加する追加部分
    回路のハードウエア量が少ない追加部分回路の組み合わ
    せを求め、前記初期回路に前記求められた追加部分回路
    を付加する矛盾最小化部と、 を具備することを特徴とする請求項2記載の論理回路合
    成装置。
JP6261668A 1994-09-30 1994-09-30 論理回路合成装置 Abandoned JPH08101861A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6261668A JPH08101861A (ja) 1994-09-30 1994-09-30 論理回路合成装置
US08/534,065 US5706205A (en) 1994-09-30 1995-09-26 Apparatus and method for high-level synthesis of a logic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6261668A JPH08101861A (ja) 1994-09-30 1994-09-30 論理回路合成装置

Publications (1)

Publication Number Publication Date
JPH08101861A true JPH08101861A (ja) 1996-04-16

Family

ID=17365095

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6261668A Abandoned JPH08101861A (ja) 1994-09-30 1994-09-30 論理回路合成装置

Country Status (2)

Country Link
US (1) US5706205A (ja)
JP (1) JPH08101861A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493863B1 (en) 1999-11-15 2002-12-10 Matsushita Electric Industrial Co., Ltd. Method of designing semiconductor integrated circuit
US7120903B2 (en) 2001-09-26 2006-10-10 Nec Corporation Data processing apparatus and method for generating the data of an object program for a parallel operation apparatus
JP2006351047A (ja) * 2006-10-02 2006-12-28 Nec Corp データ処理装置および方法、コンピュータプログラム、情報記憶媒体、並列演算装置、データ処理システム

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923569A (en) * 1995-10-17 1999-07-13 Matsushita Electric Industrial Co., Ltd. Method for designing layout of semiconductor integrated circuit semiconductor integrated circuit obtained by the same method and method for verifying timing thereof
US5831864A (en) * 1996-10-31 1998-11-03 Trustees Of Princeton University Design tools for high-level synthesis of a low-power data path
JPH10171845A (ja) * 1996-12-05 1998-06-26 Toshiba Corp 高位合成方法
US5892940A (en) * 1996-12-05 1999-04-06 Hewlett-Packard, Co. Aliasing nodes to improve the code generated by a circuit compiler
JP3765923B2 (ja) * 1998-02-26 2006-04-12 シャープ株式会社 ハードウェア合成方法およびハードウェア合成装置並びにハードウェア合成プログラムを記録した記録媒体
EP1248989A2 (en) * 1999-05-26 2002-10-16 Get2chip Behavioral-synthesis electronic design automation tool and business-to-business application service provider
JP3717144B2 (ja) * 1999-06-03 2005-11-16 シャープ株式会社 高位合成装置および高位合成方法並びに高位合成プログラムを記録した記録媒体
JP3716967B2 (ja) * 1999-07-29 2005-11-16 シャープ株式会社 高位合成装置および高位合成方法並びにそれに用いられる記録媒体
US6625797B1 (en) 2000-02-10 2003-09-23 Xilinx, Inc. Means and method for compiling high level software languages into algorithmically equivalent hardware representations
JP3722351B2 (ja) * 2000-02-18 2005-11-30 シャープ株式会社 高位合成方法およびその実施に使用される記録媒体
US7225423B2 (en) * 2000-06-30 2007-05-29 Zenasis Technologies, Inc. Method for automated design of integrated circuits with targeted quality objectives using dynamically generated building blocks
JP3940668B2 (ja) * 2002-12-05 2007-07-04 株式会社東芝 論理回路設計方法、論理回路設計プログラムおよび論理回路設計装置
SE0300742D0 (sv) * 2003-03-17 2003-03-17 Flow Computing Ab Data Flow Machine
US7683237B2 (en) 2004-02-10 2010-03-23 Monsanto Technology Llc Maize seed with synergistically enhanced lysine content
US7278122B2 (en) * 2004-06-24 2007-10-02 Ftl Systems, Inc. Hardware/software design tool and language specification mechanism enabling efficient technology retargeting and optimization
JP4239008B2 (ja) * 2004-07-08 2009-03-18 日本電気株式会社 情報処理方法、情報処理装置およびプログラム
US8265920B1 (en) 2004-07-30 2012-09-11 Synopsys, Inc. Determining large-scale finite state machines using constraint relaxation
US7222039B2 (en) * 2005-06-10 2007-05-22 Azuro (Uk) Limited Estimation of average-case activity for digital state machines
US20070083350A1 (en) * 2005-06-10 2007-04-12 Azuro (Uk) Limited Estimation of average-case activity for a digital circuit using activity sequences
US7630851B2 (en) * 2005-06-10 2009-12-08 Azuro (Uk) Limited Estimation of average-case activity for circuit elements in a digital circuit
US9292478B2 (en) * 2008-12-22 2016-03-22 International Business Machines Corporation Visual editor for editing complex expressions
US20130046912A1 (en) * 2011-08-18 2013-02-21 Maxeler Technologies, Ltd. Methods of monitoring operation of programmable logic
JP6255880B2 (ja) * 2013-10-10 2018-01-10 株式会社ソシオネクスト 高位合成用データ生成装置、高位合成装置、高位合成用データ生成方法及びプログラム
CN104572029B (zh) * 2014-12-26 2017-06-30 中国科学院自动化研究所 一种状态机可拼接性和拼接规则判定方法和装置
US20220188143A1 (en) * 2020-12-11 2022-06-16 UiPath, Inc. Process mining for multi-instance processes

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555201A (en) * 1990-04-06 1996-09-10 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5490082A (en) * 1990-11-07 1996-02-06 Vlsi Technology, Inc. Method of graphically designing circuits
JPH05274390A (ja) * 1992-03-30 1993-10-22 Matsushita Electric Ind Co Ltd 回路素子割り付け方法及び遅延最適化方法並びに論理設計システム
US5491640A (en) * 1992-05-01 1996-02-13 Vlsi Technology, Inc. Method and apparatus for synthesizing datapaths for integrated circuit design and fabrication
US5515292A (en) * 1993-09-29 1996-05-07 Texas Instruments Incorporated Circuit activity driven state assignment of FSMS implemented in CMOS for low power reliable operations
US5513122A (en) * 1994-06-06 1996-04-30 At&T Corp. Method and apparatus for determining the reachable states in a hybrid model state machine
US5452215A (en) * 1994-08-24 1995-09-19 Ibm Business Machines Corporation System and method for designing a finite state machine to reduce power dissipation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493863B1 (en) 1999-11-15 2002-12-10 Matsushita Electric Industrial Co., Ltd. Method of designing semiconductor integrated circuit
US7120903B2 (en) 2001-09-26 2006-10-10 Nec Corporation Data processing apparatus and method for generating the data of an object program for a parallel operation apparatus
JP2006351047A (ja) * 2006-10-02 2006-12-28 Nec Corp データ処理装置および方法、コンピュータプログラム、情報記憶媒体、並列演算装置、データ処理システム

Also Published As

Publication number Publication date
US5706205A (en) 1998-01-06

Similar Documents

Publication Publication Date Title
JPH08101861A (ja) 論理回路合成装置
Chang et al. Technology mapping for TLU FPGAs based on decomposition of binary decision diagrams
Thomas et al. Algorithmic and Register-Transfer Level Synthesis: The System Architect’s Workbench: The System Architect's Workbench
Agerwala Microprogram optimization: A survey
Peng et al. Automated transformation of algorithms into register-transfer level implementations
US10089426B2 (en) Logic circuit generation device and method
Leupers Retargetable code generation for digital signal processors
Walker et al. A survey of high-level synthesis systems
Seawright et al. Clairvoyant: A synthesis system for production-based specification
US6175948B1 (en) Method and apparatus for a waveform compiler
EP0743599A2 (en) Method of generating code for programmable processor, code generator and application thereof
US5912819A (en) Method for designing an architectural system
Buyukkurt et al. Impact of high-level transformations within the ROCCC framework
US6360355B1 (en) Hardware synthesis method, hardware synthesis device, and recording medium containing a hardware synthesis program recorded thereon
JP4495865B2 (ja) 業者間アプリケーションサービスプロバイダ
JPH10256383A (ja) 半導体装置及びその回路構成方法
Bezati High-level synthesis of dataflow programs for heterogeneous platforms: design flow tools and design space exploration
Van Praet et al. Processor modeling and code selection for retargetable compilation
Bergamaschi et al. A system for production use of high-level synthesis
JP3370304B2 (ja) 高位合成システム、高位合成方法、および、高位合成方法の実施に使用される記録媒体
Bergamaschi et al. Scheduling under resource constraints and module assignment
JP3602697B2 (ja) 論理回路設計支援システム
Radivojevic et al. Symbolic techniques for optimal scheduling
Sun et al. Combining module selection and resource sharing for efficient FPGA pipeline synthesis
JP3735723B1 (ja) ハードウエア記述言語合成ツール及びそれを利用した集積回路の設計方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040810

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20040907