JP2791243B2 - 階層間同期化システムおよびこれを用いた大規模集積回路 - Google Patents

階層間同期化システムおよびこれを用いた大規模集積回路

Info

Publication number
JP2791243B2
JP2791243B2 JP4055654A JP5565492A JP2791243B2 JP 2791243 B2 JP2791243 B2 JP 2791243B2 JP 4055654 A JP4055654 A JP 4055654A JP 5565492 A JP5565492 A JP 5565492A JP 2791243 B2 JP2791243 B2 JP 2791243B2
Authority
JP
Japan
Prior art keywords
block
signal
timing
functional block
inter
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
JP4055654A
Other languages
English (en)
Other versions
JPH05259279A (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.)
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 JP4055654A priority Critical patent/JP2791243B2/ja
Priority to DE69330294T priority patent/DE69330294T2/de
Priority to EP93104056A priority patent/EP0560385B1/en
Priority to KR1019930003810A priority patent/KR970003320B1/ko
Priority to US08/031,363 priority patent/US5867691A/en
Publication of JPH05259279A publication Critical patent/JPH05259279A/ja
Application granted granted Critical
Publication of JP2791243B2 publication Critical patent/JP2791243B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/35Delay-insensitive circuit design, e.g. asynchronous or self-timed

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、階層間同期化システム
およびこれを用いた大規模集積回路に関するもので、特
に既存のシステムを半導体チップ内に階層構造で実現し
た大規模集積回路に関する。
【0002】
【従来の技術】素子数で数十万以上に及ぶ大規模集積回
路は、その複雑さからマニュアル設計は不可能で、必然
的にCADによる設計が行われ、その場合、すでに作成
されているブロック化された回路を組み合わせて構成さ
れる。この場合、組み合わされるブロックの代表的なも
のはゲートアレイやスタンダードセルを用いて設計され
たものである。
【0003】図12は応用機器の一部または大部分をな
すシステムとして使用される従来の大規模集積回路の一
例を示す内部構成図である。図12に示すように、この
大規模集積回路は、LSIチップ11内に、第1〜8の
回路ブロック1〜8が構成されている。これらのブロッ
ク1〜8は、内部2相クロック発生部9または外部クロ
ック入力端子10からのクロック信号によって動作させ
られる。また、これらのブロック1〜8は、ボンディン
グ用パッドエリア12を通じて、LSIチップ11の外
部との間で信号の入出力を行うように構成されている。
【0004】このような大規模集積回路を設計するに
は、システムをその機能に応じて第1〜8のブロックに
分割し、それぞれのブロックについて論理回路の設計を
ゲートアレイ等を用いて行う。そしてこれらのブロック
1〜8を全て接続し、CADツールに論理図面の内容を
入力し、全体の論理シミュレーションを行って設計が正
しいか否かの検証を行う。この結果に基づいて、大規模
集積回路の配置、配線、試作、改良を行っていた。
【0005】また、大規模集積回路を正しくかつ安定に
動作させるために、以下の手法を用いている。すなわ
ち、内部2相クロック発生部9または外部クロック入力
端子10から供給される同期化クロックをチップ全体に
配送するようにする。例えば、各ブロックをクロックφ
1 ,φ2 のような単一な2相クロック系で統一し、さら
に可能な限り記憶回路部分を同期型で構成する。また、
重要なタイミング判定及び発生部分は、この単一な2相
クロックで同期を取るようにする。この結果、それぞれ
の回路ブロック相互間には制御信号が網の目のように張
り巡らされ、各回路は強いタイミング依存関係で結ばれ
ていた。
【0006】以上説明したように、従来の大規模集積回
路では、これを安定に動作させるために、マイクロプロ
セッサ、ゲートアレイ及びスタンダードセル等の論理構
成要素に対して、単一な2相クロック系を用いてチップ
全域を同期化させる、いわゆる絶対同期型の設計方法が
採用されていた。このため、もしチップ全体に配送して
いる単一な2相クロックの表す時刻がチップ内のある場
所に異なって到着した場合には、チップ内の回路システ
ムが誤動作してしまう危険性を内包する。
【0007】この危険性は現実のものとなっており、上
記した方法は、すでに現在の1.5μm〜1.0μmル
ールのCMOSプロセスでさえ通用しないことがある。
例えば、図12の装置の場合、チップ内部を第1〜8の
ブロック1〜8に分割しているが、これらのブロック分
割に当たっては、システム要求仕様の詳細な分析を行っ
て設計するケースはほとんどない。すなわち、既に設計
されているALU、マルチプレクサ、デコーダ、レジス
タファイル、フリップフロップ、ROM、RAM、カウ
ンタ、シフトレジスタ及びプリミティブゲート(NAN
D、NOR、NOT他)等の物理的な寸法の判っている
セルライブラリや、さらにはMPUコアやペリフェラル
コア等のメガセルを、直接割り当てて行くチップ構成法
が主流である。
【0008】従って、先にも述べたように、超高速・大
規模集積回路に強引にこの絶対同期式の設計手法を適用
しようとすると、クロック配送ライン群 はほとんど迷
走に近くなり、これを救済するように設計的に配慮する
ことはほどんど不可能であるため、誤動作を生じる確率
が非常に高くなる。
【0009】このため、クロック周波数を下げて確実な
動作をめざすことになる。その結果、1.0μルールで
構成した大規模集積回路の場合、素子のスイッチング速
度は300ps〜1nsと非常に高速であるにも拘ら
ず、チップ全体のシステム動作最高速度は、その1/5
0〜1/100の非常に低速に設定せざるを得ない状況
となる。
【0010】今後の超大規模集積回路では、0.6μm
ルール以下の超微細化技術が採用されて、ロジックでは
数百万から数千万、メモリでは1億程度の素子数とな
り、チップサイズが10mm×10mm以上と大きくな
ることが予想されている。しかも、動作周波数は30M
Hz〜100MHzと高速化される。
【0011】このような状況では、素子遅延時間に比べ
て配線遅延時間の割合が増加する。すなわち、素子のス
イッチング速度が0.1〜0.3nsに対し、配線遅延は
数ns/ mmとなる。例えば100MHzのクロック周
波数では1クロックが10nsであるから、配線遅延の
影響がいかに大きいかがわかる。
【0012】現在でも、既に製品化されているLSIチ
ップを、コストダウンと高速化を図るために、チップ縮
小化(シュリンク)を図ると、チップの誤動作を招き根
本的な設計の見直しを迫られることが少なくない。まし
て、超大規模集積回路の場合、クロックは、チップの各
所で固有の同期化手法を採用しているために、配送経路
や間接的なタイミングの変動によって大幅な位相差の発
生を余儀なくされている。
【0013】このように、チップサイズが大きければ大
きい程、また、微細プロセスになればなる程、タイミン
グ的な副作用が大きくなる。この様子を図13に示すタ
イミングチャートを例にとって説明する。図13
(a)、(b)に示すように、クロックφ1 のクロック
φ11,φ12や、クロックφ2 のクロックφ21,φ22も、
システム内のブロックに到着するときには、同図
(d)、(e)に示すように、クロックφ1 ′のクロッ
クφ11′、クロックφ12′やクロックφ2 ′のクロック
φ21′、φ22′のように大幅に位相がずれてしまう。
【0014】このようなクロックで動作するシステムの
例として図14に示す回路を考える。そして、第1の記
憶回路13から図13(c)に示すようなデータDを取
り出し、第2の記憶回路14から図13(f)に示すよ
うなデータD′を取り出すと、組合わせ回路/記憶回路
15を通して図13(g)に示すような出力Xを得るも
のとする。この場合、第1の記憶回路13に図13
(a)(b)のクロックφ1 ,φ2 が供給され、第2の
記憶回路14に図13(d)(e)のクロックφ1′,
φ2 ′が供給され、組み合わせ回路/記憶回路15にク
ロックφ2 ′が供給されるような状態となったとする。
この場合、組み合わせ回路/記憶回路15からの出力X
としては、期待されたf(D1 ,D1 ′)が得られず、
誤った結果f(D1 ′,D2 )が得られてしまうという
問題が発生する。
【0015】また、クロック系の配送経路の長さの差や
引き回し等に起因する位相差は、集積回路の各所でクリ
ティカルパスを生じさせ、同期型回路設計法の利点が失
われてしまう。これを回避するには、動作周波数を下げ
て、次の安全なタイミングまで待たせる局所的な時間調
整が必要となる。このことは、素子数の余分な増大を招
き、さらには大局的なタイミング予測ができなくなって
しまうという新たな問題を生じさせることとなる。さら
に、従来行われてきたれように、チップ縮小化や回路変
更に伴って再び誤動作を引き起こす原因となってしま
う。
【0016】したがって、以上のような問題は、ASI
C時代に設計者が既に完成したLSIをメガセル(大き
なセル)として用い、またLSI製造業者が提供するメ
ガセルのライブラリを活用したより大規模なLSI設計
を行う上で、大きな障害となる。このことは、ちょうど
大規模なソフトウエアを構築するときに、小規模なソフ
トウエアの時に有効であった共通変数がかえって副作用
を引き起こし、安全なシステム構築が実現できなくなっ
てしまうのと同様である。
【0017】
【発明が解決しようとする課題】このように、従来の大
規模集積回路では、重要な要件としてきた絶対同期方式
による設計を採用しながらも、現実には絶対的なタイミ
ングを作る手法は存在していなかったために、完全に動
作する大規模集積回路を予測できる大局的な設計法が見
出せず、せいぜい動作する可能性が残る程度の信頼性し
か得られなかった。
【0018】本発明は、このような問題点を解決するた
めになされたもので、構成要素としての機能ブロックを
メガセルとして再利用した場合に、各所でクロックの遅
延が発生しても超高速動作を得ることが可能な階層間同
期化システムおよびこれを用いた大規模集積回路を提供
することを目的とする。
【0019】
【課題を解決するための手段】本発明にかかる階層間同
期化システムは、ある上位タイミング変数で表される上
位時刻系に従って入力事象生信号を発生する上位機能ブ
ロックと、前記上位機能ブロックとともに階層構造をな
し、活性化信号に基づいて所定の作業を前記上位時刻系
とは必ずしも一致しない、ローカルタイミング変数で表
されるローカル時刻系に従って行う下位機能ブロック
と、前記上位機能ブロックと前記下位機能ブロックとの
間に設けられ、前記上位機能ブロックで発生された入力
事象発生信号に基づいて前記下位機能ブロックを活性化
する信号を前記ローカル時刻系で発生して前記下位機能
ブロックに与えると共に、前記下位機能ブロックから発
生された出力事象発生信号を待ち合わせて完了信号を前
記上位時刻系で発生させて前記上位機能ブロックに与え
る階層間同期化手段とを備えたことを特徴とする。
【0020】前記システムは、前記上位機能ブロックが
それぞれ固有のローカル時刻系を有する複数の前記下位
機能ブロックを統括する階層構造をなしており、前記階
層間同期化手段は、複数の下位ブロックを同一の時期に
並行して活性化することができるものであると良い。
【0021】前記階層間同期化手段は、複数の下位機能
ブロックからの完了信号を各固有のタイミングで受取
り、最終目的の完了信号を発生する判定手段を備えると
良い。
【0022】前記階層間同期化手段は、上位機能ブロッ
クおよび下位機能ブロックでそれぞれ固有の時刻変数と
して定義された信号のタイミングが記述されるとき、上
位機能ブロックから見積もり時刻の配分および設定を行
い、下位機能ブロック側からはそこで定義された時刻と
前記見積時刻との関係に関する時間間隔変数として上位
機能ブロックに対して報告するものであると良い。
【0023】前記時間間隔変数が前後関係、同時関係、
期間の内外関係、無関係の関係のうちのいずれかとして
定義されることが好ましい。
【0024】前記上位機能ブロックおよび下位機能ブロ
ックの少なくともいずれか一方は既に設計されてライブ
ラリ登録されたものであると良い。
【0025】前記階層間同期化手段は上位機能ブロック
と下位機能ブロックの各タイミング変数を用いて抽象化
タイミングシミュレーションおよび自動論理合成後の実
タイミングシミュレーションにより得られたものである
ことが好ましい。
【0026】また、本発明にかかる大規模集積回路にお
いては、複数の階層構造に分割され、相互に独立したク
ロックで動作する複数の機能ブロック回路と、前記階層
構造のうちの上位ブロックと下位ブロックとの間に設け
られ、前記位ブロックから入力事象発生信号群を受け取
って保存し、前記下位ブロックの活性化を判定して、前
記下位ブロックに対して活性化信号を送出するととも
に、前記下位ブロックから完了信号を含む出力事象発生
信号を受取って、最終完了状態を判定して、前記上位ブ
ロックに最終完了信号を送出する階層間同期化回路とを
備える。
【0027】この集積回路においては、階層間同期化回
路がブロック間連結部に設けられることが好ましい。
【0028】さらに、本発明にかかる大規模集積回路に
おいては、複数の階層構造に分割され、相互に独立した
クロックで動作する複数の機能ブロック回路と、前記機
能ブロックの上位ブロックから入力事象発生信号群を受
け取って保存する入力事象一時記憶手段と、前記入力事
象一時記憶手段からの信号に基づき、前記機能ブロック
の下位ブロックの活性化を判定して、前記下位ブロック
に対して活性化信号を送出する活性化タイミング判定手
段と、前記下位ブロックから完了信号を含む出力事象発
生信号を受取って保存する出力事象一時記憶手段と、前
記出力事象一時記憶手段からの信号に基づき、最終完了
状態を判定して、前記上位ブロックに最終完了信号を送
出する最終完了信号判定手段とを備える。
【0029】入力事象一時記憶手段および出力事象一時
記憶手段がフリップフロップ回路で構成されると良い。
【0030】活性化タイミング判定手段および最終完了
信号判定手段がアンド回路プレーンおよびオア回路プレ
ーンをプログラミングして得られたものであると良い。
【0031】活性化タイミング判定手段および最終完了
信号判定手段がペトリネットの理論にもとづいた待ち合
わせ制御を行うものであると良い。
【0032】活性化タイミング判定手段における同期タ
イミングは、外部から与えられたクロックを基に作られ
たものであると良い。
【0033】活性化タイミング判定手段における同期タ
イミングは、各機能ブロックで作成されたクロックを基
に作られたものであると良い。
【0034】
【作用】複数の機能ブロックを有するシステムにおい
て、機能ブロックが階層構造をなし、上位時刻変数で表
現される上位時刻系で入力事象信号を発生する上位機能
ブロックとローカル時刻変数で表現されるローカル時刻
系に従って所定の作業を行う下位機能ブロックが階層間
同期化手段で結合される。この階層間同期化手段は上位
機能ブロックで発生された入力事象発生信号に基づいて
下位機能ブロックを活性化する信号をローカル時刻系で
発生して下位機能ブロックに与えると共に、下位機能ブ
ロックから発生された出力事象発生信号を待ち合わせて
完了信号を上位時刻系で発生させて上位機能ブロックに
与える。
【0035】特に、階層間同期化手段は上位機能ブロッ
クと下位機能ブロックの各タイミング変数を用いて抽象
化タイミングシミュレーションおよび自動論理合成後の
実タイミングシミュレーションにより得られたものであ
り、各ブロック間を絶対的な同期を図ることなく高速で
確実に動作するシステムを容易に得ることができる。
【0036】また、半導体チップ内の回路構成を階層構
造をなして独立したクロックで動作する複数の機能ブロ
ックで構成し、この階層間に入力事象一時記憶手段、活
性化タイミング判定手段、最終完了信号判定手段、出力
事象一時記憶手段を設けることにより、上位ブロックか
らの入力事象発生信号群を入力事象一時記憶手段に入力
して一時保存し、入力事象一時記憶手段からの信号に基
づき、下位ブロックの活性化、すなわち起動を判定して
前記下位ブロックに対して活性化信号を送出する。出力
事象一時記憶手段では、前記下位ブロックから、その動
作状態に応じた完了信号を含む出力事象発生信号群を受
け取って保存し、最終完了信号判定手段では出力事象一
時記憶手段からの信号に基づき最終完了状態を判定し、
前記上位ブロックに、最終完了信号を送出する。これに
より、複数のブロックは、全体的な絶対同期に無関係に
機能させることができる。
【0037】
【実施例】以下、図面を参照しながら本発明の実施例を
説明する。図1は本発明の一実施例に係る大規模集積回
路の部分ブロック図である。図1に示されるように、チ
ップ内に記号A0で示された親ブロック16を最上位と
したシステムを構成する。次に、その支配下に、記号R
VU0で示された第0のランデブーユニット17を同期
化回路として、親ブロック16の一部として組み込む。
そして、この第0のランデブーユニット17を通じて、
下位の記号A1で示される第1の子ブロック18、記号
A2でしめされる第2の子ブロック19、記号A3で示
される第3の子ブロック20が接続される。そして、第
1の子ブロック18には、同期化回路として、記号RV
U1で示される第1のランデブーユニット21が、その
一部として組み込まれている。その下には、記号A1,
Nで示される複数の第Nの孫ブロック22〜記号A1,
及びN+Mで示される第N+Mの孫ブロック23が接続
される。
【0038】図2は図1の構成を具体的に表した平面図
である。同図に示す大規模集積回路100は上下他端辺
に命令バス101、102に接続された命令バスドライ
バ103、104を有し、左端辺にはブロックコードバ
ス105と接続されたブロックコードバスドライバ10
6、右端辺にはステータスバス107と接続されたステ
ータスバスドライバ108がそれぞれ設けられている。
【0039】この大規模集積回路は複数の機能ブロック
を有しており、この複数の機能ブロックは階層構造をな
している。例えば、機能ブロック110、130、14
0は第1階層であり、他のブロックは下位階層をなして
いる。ブロック110はランデブーユニットR10を介
して第2階層の機能ブロック111に接続されており、
この機能ブロック111には第3階層の機能ブロック1
12、113、114がそれぞれランデブーユニットR
11、R12、R13で接続される。機能ブロック11
4にはランデブーユニットR14を介して第4階層の機
能ブロック115、さらに機能ブロック115にはラン
デブーユニットR15を介して機能ブロック116が接
続されている。
【0040】また、ブロック110には第2階層のブロ
ック120がランデブーユニットR20を介して接続さ
れ、以下第3階層のブロック121、第4階層のブロッ
ク122がそれぞれランデブーユニットR21、R22
を介して順次接続され、第3階層のブロック123、第
4階層のブロック124、125、126がそれぞれラ
ンデブーユニットR23、R24、R25、R26を介
して順次接続されている。以下、同様に機能ブロック1
30〜136および140〜146、ランデブーユニッ
トR31〜R37、R41〜R45による階層構造が実
現されている。なお、ランデブーユニットは機能ブロッ
ク間に形成された連結部に形成されている。例えば、ラ
ンデブーユニットR10は連結部151の部分に形成さ
れている。
【0041】次に、機能ブロックの内容について図3を
参照して説明する。図3に示すように、自己同期クロッ
クで動作する機能ブロック24は、外部から活性化信号
29を与えられて入力信号・データ群30を処理し、出
力信号・データ群31を出力するものである。また完了
信号32を外部に出力する。
【0042】このブロックについては、超大規模集積回
路を実現する上で最も重要な要件である、実際にブロッ
クを構成する外部条件を厳密に定義する必要がある。こ
の定義はシステム記述言語およびこれに続くハードウェ
ア記述言語を用いて、セマンティックス(意味的)やシ
ンタックス(構文的)が正確に定義でき、かつLSIC
ADやチップそのものにとって有利となるべく、どのブ
ロックやどの階層でも同一形式で回路が構成できるよう
にする。
【0043】ここで、機能ブロック24の動作について
説明する。機能ブロックは、上位ブロックからランデブ
ーユニットを経由して活性化信号が与えられると、入力
信号・データ群30を受け取って期待された仕事を行
い、その仕事が終了すると完了信号32を発生し、続い
て出力信号・データ群31を上位ブロックに引き渡す。
ここで、活性化期間は、τX=tex−taxで表され
る。ここで、tcxは機能ブロックxの仕事完了時刻で
あり、taxは起動時刻である。なお、各機能ブロック
24内で使用されるタイミングは外部のブロックに直接
依存せず独立である。なお、機能ブロックは活性化信号
が与えられている状態では何らかの仕事を行っている。
この仕事には自身は特に仕事を行わず、下位ブロックか
らの完了報告を待っている場合や、自身が仕事を行う場
合がある。
【0044】例えば、図1に示した各機能ブロック、即
ち、親ブロック16、第1の子ブロック18、第2の子
ブロック19、第3の子ブロック20、第Nの孫ブロッ
ク22、及び第N+Mの孫ブロック23は、それぞれ起
動時刻ta0,ta1,ta2,ta3,ta1・N ,tc1・(N+
M) に起動し、それぞれ完了時刻tc0,tc1,tc2,tc
3,tc1・N ,tc1・(N+M) まで動作する。
【0045】図4は、図1に示した第0のランデブーユ
ニット17、第1のランデブーユニット21を初めとす
るランデブーユニットの構成を示す概略図である。この
ユニットは、上位ブロックの同期系と、その上位ブロッ
クが直接利用する下位ブロックの同期系との調整、即
ち、データ及び事象の待ち合わせを専門に実行する待ち
合わせゾーンとしての同期化ブロックである。
【0046】この同期化ブロックは上位ブロックからの
入力事象発生信号群33を受け付ける入力事象一時記憶
回路25、活性化条件(トランジション条件)を判定し
て下位ブロックに1〜n本の活性化信号35を出力する
活性化タイミング判定回路27、逆に下位ブロック群か
ら返却される完了信号を、出力事象発生信号群36とし
て受け付けて保存する出力事象一時記憶回路28、上位
ブロックに対して1〜m本の最終完了信号34を出力す
る最終完了信号判定回路26を備えている。
【0047】図5は、図4における上位ブロックから下
位ブロックに信号伝達を行う部分、すなわち、入力事象
発生信号群33、入力事象一時記憶回路25、活性化タ
イミング判定回路27、および下位の機能ブロックとし
てのDMA機能ブロックを示したものである。
【0048】ここでは、入力事象発生信号群として、リ
セット(RESET)、エラー受取(ERR−RC
V)、起動(START)、中止(STOP)、停止
(TERM)、事象(EVENT)を表す信号が含まれ
る。
【0049】入力事象一時記憶回路25は複数のラッチ
を含んでおり、RESET信号はラッチL1、ERR−
RCV信号はラッチL2、START信号はラッチL
3、STOP信号はラッチL4、TERM信号はラッチ
L5、EVENT信号は残りのラッチに入力され、保持
される。
【0050】ラッチL1の出力とラッチL2の出力とは
オアゲートOR1で論理和が取られ、初期化出力を発生
する端子T1に導出される。ラッチL2の出力はそのま
ま起動出力を発生する端子T2に導出される。ラッチL
2およびラッチL4の出力はアンドゲートAND1に入
力され、ラッチL4およびL5の出力はアンドゲートA
ND2に入力され、これらの論理積出力はオアゲートO
R2で論理和出力が得られ、停止出力を発生する端子T
4に導出される。残りのイベント信号を保持するラッチ
の出力はアンドゲートを組み合わせて配置したアンド論
理回路プレーンおよびオアゲートを組み合わせて配置し
たオア論理回路プレーンを経て、中断出力を発生する端
子T4から再開出力を発生する端子Tnに導出される。
【0051】端子群T1〜Tnに現れた活性化信号は下
位のブロックであるDMA機能ブロック50の外部相互
動作制御部51に入力される。ここでは起動、停止、中
断、再開などの制御を行う。外部相互動作制御部51に
はコマンドレジスタ52、ステータスレジスタ53、パ
ラメータレジスタ54、状態制御論理回路および状態レ
ジスタ群55が設けられ、それぞれ内部データバス65
と接続されている。
【0052】レジスタ52、53、54を用いて論理回
路55で得られた演算制御信号はレジスタファイル付き
ALU61に与えられ、その演算結果は内部バス65に
出力される。
【0053】この内部バス65には転送元先頭アドレス
レジスタ56、転送元最終アドレスレジスタ57、転送
先先頭アドレスレジスタ58、データバッファレジスタ
59、ワーキングレジスタ群60なども接続されてい
る。
【0054】内部データバス65は外部データバス63
とレジスタ選択・バス開閉制御部62を介して接続され
ており、ここには外部アドレスバス64も接続されてい
る。レジスタ選択・バス開閉制御部62と状態制御論理
回路および状態レジスタ群55間は専用線66で接続さ
れている。
【0055】このDMA機能ブロックでは活性化タイミ
ング判定回路27から出力された信号に基づいて所望の
データ転送動作を行う。
【0056】図6は、図4における下位ブロックから上
位ブロックに信号伝達を行う部分、すなわち、制御され
る下位のDMA機能ブロック50、出力事象一時記憶回
路28、最終完了信号判定回路26を示したものであ
る。
【0057】図5に示したものと同じものである外部の
DMA機能ブロック50からは転送エラー信号TF−E
RR、システムバスエラー信号BUS−ERR、メモリ
パリティエラー信号MBL−PAR、ブロック転送完了
信号BLK−COMP、全転送完了信号TF−COM
P、中断信号INTRPTなどが出力される。そして、
これらの信号は出力事象一時記憶回路28に設けられた
複数のラッチLO1〜LOnにに入力され、保持され
る。
【0058】これらのラッチの出力により最終完了信
号、例えばエラー中断信号ERR−COMP、正常転送
完了信号MNL−COMP、ブロック転送中断信号BL
K−INTRなどが最終完了信号判定回路26のアンド
論理回路プレーン26aおよびオア論理回路プレーン2
6bにより形成され、出力される。例えば、エラー中断
信号ERR−COMPはラッチLO1、LO2、LO3
の出力とLOnの出力とをアンドゲートAND11、1
2、13により論理積をとり、それらの出力をオアゲー
トOR11により論理和をとったものである。
【0059】図7は図6に示したアンド論理回路プレー
ン26aおよびオア論回路プレーン26bの詳細構成を
示す回路図である。この回路はプログラマブルロジック
アレイ(PLA)となっており、入力端子群I1〜In
に接続された、図中×印で表されている接続交点を論
理”0”に対して切断するプログラミングを行うことに
より、所望のアンドゲートおよびオアゲートの組み合わ
せ論理を出力端子群O1〜Omから得るものである。図
5におけるアンド論理回路プレーン27aおよびオア論
回路プレーン27bの構成も同様である。
【0060】この実施例では入力事象一時記憶回路およ
び出力事象一時記憶回路はラッチ回路で構成されている
が、ラッチに限らず、J−Kタイプ、RSタイプ等のフ
リップフロップや他の形式の一時記憶手段を用いること
ができることは言うまでもない。
【0061】以上説明した同期化ブロック(ランデブー
ユニット)は、図8に示したリアルタイム動作モデル記
述/検証法として著名なペトリネットの理論に適合して
いる。すなわち、この理論により条件がそろったら次の
ステップに進むという待ち合わせを行う。この結果、ラ
ンデブーユニットはペトリネットにおいて発火条件と称
されるトランジション(活性化条件)を判定して活性化
信号を発生し、プレースと称される機能ブロックに与え
る。すなわち、この同期化ブロックでは活性化信号を下
位の機能ブロックに対して与えるだけで、直接クロック
を与えるわけではない。
【0062】また、このペトリネットの理論は下位の機
能ブロックから上位の機能ブロックへデータや命令を転
送する場合にも適用される。すなわち、下位での仕事の
完了条件が揃ったことをもって上位ブロックに完了報告
を行う。このとき、上位ブロックは下位からの仕事の完
了報告を待っている場合もあれば、完了報告を待ちなが
ら、自分の仕事を実行している場合もある。このような
場合、下位からの完了報告と自分の仕事の結果により、
さらに上位のブロックがある場合には、そのブロックに
対して完了報告を行うことになる。
【0063】次にこの同期化ブロックの動作について述
べる。まず、上位ブロックから下位ブロックの活性化に
必要な条件となる入力事象発生信号群33を入力事象一
時記憶回路25に保存する。次に、活性化タイミング判
定回路27により、活性化条件(トランジション条件)
を判定し、1〜n本の活性化信号35を発生する。逆に
下位ブロック群から返却される完了信号を、出力事象発
生信号群36として、出力事象一時記憶回路28に保存
する。最終完了信号判定回路26で最終完了状態になる
まで待ち合わせ、条件が合致したところで、上位ブロッ
クに1〜m本の最終完了信号34を出力する。
【0064】図9は、本実施例における階層構造同期化
システムの動作を説明する説明図である。例えば、第1
の子ブロック18が、第Nの孫ブロック22、図示しな
い第N+1の孫ブロック、図示しない第N+Pの孫ブロ
ック、及び第N+Mの孫ブロック23を活性化するとす
る。図4は、それらの動作の完了を待ち合わせる場合に
おける、第1のランデブーユニット21の役割を示すも
のである。各孫ブロック(N,N+1,N+P,N+
M)は、互いに同期系が独立であり、それぞれ独立系ク
ロックt(A1,N)、t(A1,N+1)、t(A
1,N+P)、t(A1,N+M)を有する。これらの
孫ブロックは記号RVU1で表される第1のランデブー
ユニット21と記号RVU1′で表される図示しないラ
ンデブーユニットを介して、上位のブロックである記号
A1で表される第1の子ブロック18のクロックt(A
1)に対して、全く無関係に動作する。この図において
は、時間は左から右へ進行し、一例として上位ブロック
である子ブロックからの孫ブロックへの仕事が孫ブロッ
クN、孫ブロックN+1、孫ブロックN+Pに与えられ
てその結果を待ち、次には孫ブロックNと孫ブロックN
+Mに仕事が与えられてその結果を待っている様子が示
されている。図の点線は上位ブロックの動作が継続して
いることを示す。すなわち、孫ブロックからの結果を待
っている期間、ただ待つだけの動作も可能であるし、待
ちの動作に平行して子ブロックは自身の仕事を行うこと
ができる。このように、システム全体としては、あたか
も絶対的な時間が存在しないような系となっている。
【0065】図10に本発明にかかる大規模集積回路の
設計手順を示す。まず、概念設計を行う(ステップS1
1)。このステップにおいては、設計しようとする超大
規模集積回路にどのような機能を与えるかの要求特性と
しての基本仕様を決定する。したがって既存のメガセル
としてどのようなものを使用するかについても決定され
る。続いて、このようなメガセルを組み合わせた場合に
全体としてどのような動作を行うのかについて動作・振
る舞いモデル設計を行う(ステップS12)。
【0066】これらの設計においては上流CASE(Co
mputer Asisted Software Engineering )ツールと
言われる例えばCADRE社のTeamworkなどの
設計ツールが使用される。このツールはユーザ要求仕様
を分析してシステム設計を行うのを援助するものであ
る。
【0067】次にシステム機能設計およびアーキテクチ
ャ設計が行われる(ステップS13)。すなわち、各ブ
ロックにおける機能およびアーキテクチャの詳細が検討
される。その結果に基づいてLSI詳細機能の記述およ
び機能シミュレーションが行われる(ステップS1
4)。これらの設計においてはLSIシステム記述言語
として例えばVHDLなどが使用される。
【0068】続いて論理合成および厳密なタイミングシ
ミュレーションが行われて(ステップS15)、回路の
詳細が決定され、これに基づいて素子の配置、配線、マ
スクパターンなどが設計される。この段階では自動論理
合成のツールが使用され、代表的なものはSynops
ysである。
【0069】得られた配置、配線、マスクパターン等の
良否のシミュレーションを行う(ステップS16)。こ
の段階で用いられるのは配置、配線後の遅れ付き論理シ
ミュレーションを行うことができる自動レイアウト、C
ADである。
【0070】このような設計におけるタイミングの設計
はつぎのように行われる。設計レベルとしては2段階が
あり、レベル1としては次の9段階がある。
【0071】まず、上位ブロックである駆動プロセスと
して (1)システム外部からのデータ、信号、プロセスの到
着時刻(tariv) (2)これらの生存期間(τin-life )すなわち、 がある。
【0072】また、下位ブロックである被駆動プロセス
として、 (3)(1)の受信可能期間(τin-rv )および受信開
始可能時刻(tin-rcv) (4)システム内部プロセス生成時刻(tbirth ) (5)システム内部プロセス生存期間(τproc) (6)システム内部からのデータ、信号、プロセスの発
信時刻(txf) (7)(6)の生存期間(τxf-lifx ) (8)システム内部プロセスの消滅時刻(tdeath ) がある。
【0073】さらに、駆動プロセス(上位ブロック)結
果の受信として (9)システム内部でのデータ、信号、プロセスの受信
可能期間(τex-rv )および受信開始可能時刻(tex-r
cv) これらの関係は図11に示される。
【0074】ランデブーユニットにおける呼出側(外部
プロセス側)の時計をTa、被呼出側(内部プロセス
側)の時計をTbとし、両者の間には時計は存在しない
ものとする。これは一般に異なるプロセスは全く別個の
時計により独立に表現できるためである。
【0075】上述したステップS11およびS12によ
りレベル1の抽象化タイミングシミュレーションを用
い、完成されたモデルによりステップS13によりラン
デブーユニットの外部仕様設計、検証を行う。
【0076】レベル1における時間変数tは時刻、τは
時間間隔を表すものとするが、厳密に区別が必要な場合
のために次のような表現を行うものとする。
【0077】前後関係 t1<t2 同時関係 t3//t4 τ3//τ4 無関係 t5/=t6 τ5/=τ6 期間内 t7 in t8 τ7 in τ8 期間外 t9 out t10 τ9 out τ
10 なお、この表現は一例であって、他の表記法を採用する
ことができることはいうまでもない。
【0078】次に設計レベル2に移行する。このレベル
では上述のステップS14、S15、S16に適合でき
るように、抽象化時間変数(時刻、時間間隔)に駆動側
の時計および既設計の評価済みマクロセルを割り付ける
ことができる。
【0079】このような系で、ランデブーユニットを計
画的に使用すれば、チップ内で信号やデータを正確に受
け渡せる。また、システム記述言語やハードウエア記述
言語に、新たに前後順序、同時、無関係、期間外、期間
内等の、時刻及び時間間隔変数を重要な手段として取入
れると効果的である。その結果、超大規模集積回路は、
設計者のなじみの深い言語で、設計や構成を行うことが
可能となる。
【0080】このように、超大規模集積回路を構成する
各ブロックを図2に示した機能ブロックの作成条件を厳
密に守って設計し、さらに上位ブロックがランデブーユ
ニットを同期ユニットとして活用すれば、図4からわか
るように、システム設計者がチップ内に要求システムを
実現する場合、上位ブロックとタイミングの連係を予見
することができる。これより、数学的な手段によるシス
テムシミュレーションも容易となる。
【0081】このことは、論理図を人手で書く論理設計
法ではもはや超大規模集積回路を構成できなくなってき
ている現在、システム記述言語レベルで十分にシステム
動作モデルの正しい検証が可能になるという非常に大き
な意味を持っている。そして、ユーザとメーカが協力、
分担し合って所望の超大規模集積回路を得るに当たって
も、ユーザが自分でチップの構成を言語レベルで行う必
要がある。
【0082】しかし、上述したように、階層化同期化手
段を設計するにあたって、CADツールを用いて上流設
計工程ではタイミングの前後、同時関係等を時刻変数で
定義する抽象化タイミングを用いてシミュレーションと
自動論理合成を行い、その後実タイミングシミュレーシ
ョンを行う設計手法を取入れることにより、超大規模集
積回路を安全で短期間に開発することができる。
【0083】以上のようにして実現される大規模集積回
路は、以下に示す技術的特徴に集約される。まず、階層
構造設計手法により分割した機能ブロックは、各層毎に
用いられる複数のブロックのいずれであっても、そのブ
ロック内で論理回路(記憶回路群と組み合わせ回路群)
によって実行される機能は単一であり且つ独立である。
【0084】そして、機能ブロックは、活性化されてか
ら独自の動作が完了するまで、同一のタイミングを保証
する。即ち、毎回同一の動作を予見できる。上位ブロッ
クは同期化回路ブロック(ランデブーユニット)を用い
て、下位ブロック群を必要に応じて活性化(起動)して
所期の機能で動作させる。逆に、このユニットで下位ブ
ロックの完了信号群を同期化し、その結果のタイミング
でデータまたは制御信号を上位ブロックが受け取る。
【0085】このように同期化回路ブロックを用いるこ
とにより、各機能ブロックは他のブロックとのタイミン
グ依存関係から完全に開放され、独立にシステム記述言
語またはハードウエア記述言語で設計を行うことが可能
となる。これにより、絶対タイミングのクロック系のチ
ップ全域への配送遅延誤差に影響されずに、システムの
要求仕様通りの順序関係、つまりタイミング設計が可能
となる。そして、階層構造設計におけるタイミングの問
題は、上位ブロックが下位ブロックを活性化している期
間にのみ依存し、予見できるため、大規模集積回路は正
確に設計通りに実現される。
【0086】次に、以上の大規模集積回路を具体化する
場合の手順について詳述する。超大規模集積回路(例え
ば、50万素子以上、0.6μmルール以下のCMOS
またはBiCMOSプロセスでチップサイズ10mm×
10mm以上)を設計製造する場合を対象として、構造
化システム分析、設計手法を用いて数階層の機能ブロッ
クに分解する。
【0087】次に、各機能ブロックを、それ自身で閉じ
た独立の機能と、それを円滑に実行するための独立のタ
イミング(クロック系)とを有するように設計する。こ
の場合、各機能ブロックは、それに与える入力信号また
はデータ群と、結果として得られる出力信号またはデー
タ群とを待ち、活性化される時は、常に、同一の動作が
実行されるように、つまり可視値を高くする。
【0088】機能ブロックの活性化はこのブロックの外
部から行われるように構成し、これを利用する上位の機
能ブロックで調整するようにする。
【0089】上位の機能ブロックは、ランデブーユニッ
トと称する階層構造同期化回路部により、利用する下位
機能ブロックの活性化時期及び完了時期を待ち合わせる
ように設定する。
【0090】活性化時期、完了時期のタイミングは、ペ
トリネットと呼ばれるリアルタイムモデリングシュミレ
ーション表記法におけるトークンを実現する事象発生信
号群により作ることにする。
【0091】同期化回路部(ランデブーユニット)は、
少なくとも入力事象発生信号群を一時的に保持する記憶
回路と、それらの記憶回路の組み合わせで活性化(発
生)させるタイミングを判定する回路と、出力信号群ま
たはデータ群または独自の完了タイミングを知らせる出
力事象発生信号群を一時的に保持する記憶回路と、記憶
回路の出力の組み合わせで期待している最終目的の完了
信号を判定する回路から構成される。
【0092】同期化回路は、単独でも複数の下位ブロッ
クを同一の時期に並行して活性化することができるよう
にする。
【0093】同期化回路は、単独でも複数の下位ブロッ
クからここの完了信号を別々のタイミングを受取り、判
定回路を通じて、最終目的の完了信号を作り出すことが
できるようにする。
【0094】上記同期化回路は、階層的に組み合わせて
複数個用いることもできる。このため、同期タイミング
の待ち合わせを数段階に分けて利用することも可能であ
る。
【0095】同期タイミングとしては、超大規模集積回
路チップの外から与えられたオリジナルクロックを親と
して作られたものでも、各階層レベルに位置する機能ブ
ロックの中で独自に生成されたものでも、オリジナルク
ロック系を利用して間接的に作られたものでもよい。
【0096】なお、同期タイミングで最も重要なのは、
同期化回路内で作られた入力または出力の事象発生信号
群を判定した結果の活性化または完了タイミングであ
る。これらが、超大規模集積回路チップ内に表現したシ
ステムを階層構造で有機的に同期化するようにする。以
上のような条件で、本発明の大規模集積回路を実現する
ことができる。
【0097】次に各構成要素をシステム記述言語とそれ
に続くハードウエア記述言語で表現し、設計し、システ
ムタイミングを含めた機能検証を行ない、自動論理合成
ツールをより有効にすることにより、超大規模集積回路
チップを表現するCADツールを可能にする手法を以下
に説明する。
【0098】まず、システム記述言語では、動作モデル
(ビヘイビアモデル)を記述する際に、システム分析、
設計で階層的に分解された機能ブロックで、タイミング
信号をそのブロック内のローカル時刻変数として定義す
る。この変数は、実数型(ps、ns、μs、ms…
…)値ではなく、別のタイミング信号との間の相対的な
前後順序または同一タイミング、独立(ドントケア)で
表わせる。最も重要なのは、同期化回路を同期化システ
ムとして、関数値または手続き値として呼び出して利用
すること、つまり変数の値に置き換えることである。
【0099】ハードウエア記述言語では、詳細機能モデ
ルを記述する際に、システム記述の場合と同様に分解さ
れた機能ブロックでタイミング信号をそのブロック内の
ローカル時刻変数として定義する。この場合、前後順
序、同一タイミング、独立、同期化回路関数に加えて、
レジスタトランスファレベルのスタンダードセルや既に
設計・製造されているマクロセル(メガセル、MPUコ
ア等も含む)の入出力タイミングを、組み込み関数とし
て置き換えて使う手段を用いる。
【0100】全ての時刻変数は、上位モジュール側から
は見積もり時刻の配分と設定ができる。下位モジュール
側からは定義時刻の報告が上位に向って設定できる。こ
れを利用して、既設計モジュールの時刻変数に値を設定
し、上位モジュールの見積もり値に適合するかどうか検
証する。
【0101】時間間隔変数も、上記と同様に他の変数に
比べて広いか、狭いか、同一か、一部重なるか、互いに
外側で前後順序かまたは互いに無関係かを、定義する。
時刻や時間間隔を表わすタイミング変数は、同期化回路
そのものを関数型の変数として定義したり、または同期
化回路内部をこれらの変数を用いて定義する。そして、
タイミング変数、超大規模集積回路記述の際の信号名称
についても、また機能ブロックを単一ユニットとした場
合の機能ブロック内の要素、即ち下位ブロックまたはセ
ルについても定義する。
【0102】以上のような手法を通じて、システム記述
言語、ハードウエア記述言語による回路設計と機能検証
が可能となり、100MHz以上のクロックを採用し、
0.2μmルールで1億素子以上のシステムでも回路間
の小同期、ブロック間の中同期、システム全体としての
大同期を各ブロック独立の非同期クロックを採用しても
設計を正しく行うことができる。
【0103】
【発明の効果】以上のように、本発明の階層間同期化シ
ステムによれば、それぞれ固有の時間変数で表現される
固有時刻系を持つ機能ブロックを階層化し、同期化ブロ
ックを上位ブロックと下位ブロックの間に介在させるこ
とにより、全体のタイミングに無関係に各機能ブロック
の動作を確保することが可能となる。また、階層間同期
化手段は上位機能ブロックと下位機能ブロックの各タイ
ミング変数を用いて抽象化タイミングシミュレーション
および自動論理合成後の実タイミングシミュレーション
により得られるのでシステム構成を容易に行うことが可
能となる。
【0104】また、このような階層間同期化手段を複数
の機能ブロック回路と共にチップ上に実現した大規模集
積回路では、機能ブロック間のクロックを調整する必要
がないため、無理に高い周波数のクロックを採用する必
要がなく、クロックの遅れ時間が問題となるような大規
模高速の集積回路においても確実で信頼性の高い回路を
実現できる。
【0105】さらに、各機能ブロックを最適なクロック
で動作させれば良いので高機能の機能ブロックを使用す
ることができ、設計の自由度が向上する。
【図面の簡単な説明】
【図1】本発明の一実施例に係る大規模集積回路の階層
構造を表す部分ブロック図。
【図2】図1の構成を実現した大規模集積回路の平面
図。
【図3】図1の構成における機能ブロックの作成条件の
説明図。
【図4】図1の構成におけるランデブーユニットの概略
構成図。
【図5】ランデブーユニットの上位から下位への伝達部
分を示すブロック図。
【図6】ランデブーユニットの下位から上位への伝達部
分を示すブロック図。
【図7】図6におけるAND論理回路プレーンおよびO
R論理回路プレーンの詳細構成を示す回路図。
【図8】ペトリネットによるリアルタイムシステムモデ
リングシュミレーション表記法の説明図。
【図9】階層構造同期化システムの動作の説明図
【図10】本発明にかかる大規模集積回路の設計手順を
示すフローチャート。
【図11】上位ブロックと下位ブロックにおける時刻及
び時間の関係を示す説明図。
【図12】従来の大規模集積回路の内部構成図。
【図13】絶対同期式の集積回路における動作を説明す
るタイミングチャート。
【図14】絶対同期式の集積回路における動作を説明す
るための回路例を示すブロック図。
【符号の説明】
1 第1のブロック 2 第2のブロック 3 第3のブロック 4 第4のブロック 5 第5のブロック 6 第6のブロック 7 第7のブロック 8 第8のブロック 9 内部2相クロック発生部 10 外部クロック入力端子 11 LSIチップ 12 ボンディング用パッドエリア 13 第1の記憶回路 14 第2の記憶回路 15 組み合わせ回路/記憶回路 16 親ブロック 17 第0のランデブーユニット 18 第1の子ブロック 19 第2の子ブロック 20 第3の子ブロック 21 第1のランデブーユニット 22 第Nの孫ブロック 23 第N+Mの孫ブロック 24 機能ブロック 25 入力事象一時記憶回路 26 最終完了信号判定回路 26a AND論理回路プレーン 26b OR論理回路プレーン 27 活性化タイミング判定回路 27a AND論理回路プレーン 27b OR論理回路プレーン 28 出力事象一時記憶回路 29 活性化信号 30 入力信号とデータ群 31 出力信号とデータ群 32 完了信号 33 入力事象発生信号群 34 最終完了信号 35 活性化信号 36 出力事象発生信号群 50 DMA機能ブロック

Claims (15)

    (57)【特許請求の範囲】
  1. 【請求項1】ある上位タイミング変数で表される上位時
    刻系に従って入力事象生信号を発生する上位機能ブロッ
    クと、 前記上位機能ブロックとともに階層構造をなし、活性化
    信号に基づいて所定の作業を前記上位時刻系とは必ずし
    も一致しない、ローカルタイミング変数で表されるロー
    カル時刻系に従って行う下位機能ブロックと、 前記上位機能ブロックと前記下位機能ブロックとの間に
    設けられ、前記上位機能ブロックで発生された入力事象
    発生信号に基づいて前記下位機能ブロックを活性化する
    信号を前記ローカル時刻系で発生して前記下位機能ブロ
    ックに与えると共に、前記下位機能ブロックから発生さ
    れた出力事象発生信号を待ち合わせて完了信号を前記上
    位時刻系で発生させて前記上位機能ブロックに与える階
    層間同期化手段とを備えた階層間同期化システム。
  2. 【請求項2】前記システムは、前記上位機能ブロックが
    それぞれ固有のローカル時刻系を有する複数の前記下位
    機能ブロックを統括する階層構造をなしており、 前記階層間同期化手段は、複数の下位ブロックを同一の
    時期に並行して活性化することができるものであること
    を特徴とする請求項1に記載の階層間同期化システム。
  3. 【請求項3】前記階層間同期化手段は、複数の下位機能
    ブロックからの完了信号を各固有のタイミングで受取
    り、最終目的の完了信号を発生する判定手段を備えたこ
    とを特徴とする請求項1に記載の階層間同期化システ
    ム。
  4. 【請求項4】前記階層間同期化手段は、上位機能ブロッ
    クおよび下位機能ブロックでそれぞれ固有の時刻変数と
    して定義された信号のタイミングが記述されるとき、上
    位機能ブロックから見積もり時刻の配分および設定を行
    い、下位機能ブロック側からはそこで定義された時刻と
    前記見積時刻との関係に関する時間間隔変数として上位
    機能ブロックに対して報告するものである請求項3に記
    載の階層間同期化システム。
  5. 【請求項5】前記時間間隔変数が前後関係、同時関係、
    期間の内外関係、無関係の関係のうちのいずれかとして
    定義されることを特徴とする請求項4に記載の階層間同
    期化システム。
  6. 【請求項6】前記上位機能ブロックおよび下位機能ブロ
    ックの少なくともいずれか一方は既に設計されてライブ
    ラリ登録されたものであることを特徴とする請求項1に
    記載の階層間同期化システム。
  7. 【請求項7】前記階層間同期化手段は上位機能ブロック
    と下位機能ブロックの各タイミング変数を用いて抽象化
    タイミングシミュレーションおよび自動論理合成後の実
    タイミングシミュレーションにより得られたものである
    ことを特徴とする請求項1に記載の階層間同期化システ
    ム。
  8. 【請求項8】複数の階層構造に分割され、相互に独立し
    たクロックで動作する複数の機能ブロック回路と、 前記階層構造のうちの上位ブロックと下位ブロックとの
    間に設けられ、前記上位ブロックから入力事象発生信号
    群を受け取って保存し、前記下位ブロックの活性化を判
    定して、前記下位ブロックに対して活性化信号を送出す
    るとともに、前記下位ブロックから完了信号を含む出力
    事象発生信号を受け取って、最終完了状態を判定して、
    前記上位ブロックに最終完了信号を送出する階層間同期
    化回路とを備えた、 大規模集積回路。
  9. 【請求項9】階層間同期化回路がブロック間連結部に設
    けられたことを特徴とする請求項8に記載の大規模集積
    回路。
  10. 【請求項10】複数の階層構造に分割され、相互に独立
    したクロックで動作する複数の機能ブロック回路と、 前記機能ブロックの上位ブロックから入力事象発生信号
    群を受け取って保存する入力事象一時記憶手段と、 前記入力事象一時記憶手段からの信号に基づき、前記機
    能ブロックの下位ブロックの活性化を判定して、前記下
    位ブロックに対して活性化信号を送出する活性化タイミ
    ング判定手段と、 前記下位ブロックから完了信号を含む出力事象発生信号
    を受取って保存する出力事象一時記憶手段と、 前記出力事象一時記憶手段からの信号に基づき、最終完
    了状態を判定して、前記上位ブロックに最終完了信号を
    送出する最終完了信号判定手段と、 を備えた大規模集積回路。
  11. 【請求項11】入力事象一時記憶手段および出力事象一
    時記憶手段がフリップフロップ回路で構成されたことを
    特徴とする請求項10に記載の大規模集積回路。
  12. 【請求項12】活性化タイミング判定手段および最終完
    了信号判定手段がアンド回路プレーンおよびオア回路プ
    レーンをプログラミングして得られたものであることを
    特徴とする請求項10に記載の大規模集積回路。
  13. 【請求項13】活性化タイミング判定手段および最終完
    了信号判定手段がペトリネットの理論にもとづいた待ち
    合わせ制御を行うものである請求項10に記載の大規模
    集積回路。
  14. 【請求項14】活性化タイミング判定手段における同期
    タイミングは、外部から与えられたクロックを基に作ら
    れたものである請求項10に記載の大規模集積回路。
  15. 【請求項15】活性化タイミング判定手段における同期
    タイミングは、各機能ブロックで作成されたクロックを
    基に作られたものである請求項10に記載の大規模集積
    回路。
JP4055654A 1992-03-13 1992-03-13 階層間同期化システムおよびこれを用いた大規模集積回路 Expired - Fee Related JP2791243B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP4055654A JP2791243B2 (ja) 1992-03-13 1992-03-13 階層間同期化システムおよびこれを用いた大規模集積回路
DE69330294T DE69330294T2 (de) 1992-03-13 1993-03-12 Inter-hierarchisches Synchronisationssystem und LSI, das dieses System verwendet
EP93104056A EP0560385B1 (en) 1992-03-13 1993-03-12 Inter-hierarchy synchronizing system and an LSI using the same system
KR1019930003810A KR970003320B1 (ko) 1992-03-13 1993-03-13 계층간 동기화시스템 및 이를 이용한 대규모집적회로
US08/031,363 US5867691A (en) 1992-03-13 1993-03-15 Synchronizing system between function blocks arranged in hierarchical structures and large scale integrated circuit using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4055654A JP2791243B2 (ja) 1992-03-13 1992-03-13 階層間同期化システムおよびこれを用いた大規模集積回路

Publications (2)

Publication Number Publication Date
JPH05259279A JPH05259279A (ja) 1993-10-08
JP2791243B2 true JP2791243B2 (ja) 1998-08-27

Family

ID=13004830

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4055654A Expired - Fee Related JP2791243B2 (ja) 1992-03-13 1992-03-13 階層間同期化システムおよびこれを用いた大規模集積回路

Country Status (5)

Country Link
US (1) US5867691A (ja)
EP (1) EP0560385B1 (ja)
JP (1) JP2791243B2 (ja)
KR (1) KR970003320B1 (ja)
DE (1) DE69330294T2 (ja)

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623684A (en) * 1994-05-17 1997-04-22 Commquest Technologies, Inc. Application specific processor architecture comprising pre-designed reconfigurable application elements interconnected via a bus with high-level statements controlling configuration and data routing
US5943242A (en) * 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US7266725B2 (en) * 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US6034547A (en) * 1996-09-04 2000-03-07 Advantage Logic, Inc. Method and apparatus for universal program controlled bus
GB2321322B (en) * 1996-10-28 2001-10-10 Altera Corp Remote software technical support
DE19651075A1 (de) * 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654595A1 (de) * 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
US6338106B1 (en) 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
EP1329816B1 (de) * 1996-12-27 2011-06-22 Richter, Thomas Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
DE19654846A1 (de) * 1996-12-27 1998-07-09 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.)
DE19704728A1 (de) * 1997-02-08 1998-08-13 Pact Inf Tech Gmbh Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
DE19704742A1 (de) * 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
JP3000961B2 (ja) * 1997-06-06 2000-01-17 日本電気株式会社 半導体集積回路
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
DE19807872A1 (de) 1998-02-25 1999-08-26 Pact Inf Tech Gmbh Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl.
US6336088B1 (en) * 1998-12-22 2002-01-01 Unisys Corporation Method and apparatus for synchronizing independently executing test lists for design verification
US6952825B1 (en) * 1999-01-14 2005-10-04 Interuniversitaire Micro-Elektronica Centrum (Imec) Concurrent timed digital system design method and environment
WO2002013000A2 (de) * 2000-06-13 2002-02-14 Pact Informationstechnologie Gmbh Pipeline ct-protokolle und -kommunikation
AU5805300A (en) 1999-06-10 2001-01-02 Pact Informationstechnologie Gmbh Sequence partitioning in cell structures
US8058899B2 (en) * 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US20040015899A1 (en) * 2000-10-06 2004-01-22 Frank May Method for processing data
JP3485885B2 (ja) * 2000-12-11 2004-01-13 三洋電機株式会社 半導体集積回路装置の設計方法
US6990555B2 (en) * 2001-01-09 2006-01-24 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
JP2002246471A (ja) * 2001-02-14 2002-08-30 Sony Corp 半導体装置
US9037807B2 (en) * 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7444531B2 (en) * 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7844796B2 (en) * 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US20090210653A1 (en) * 2001-03-05 2009-08-20 Pact Xpp Technologies Ag Method and device for treating and processing data
US20090300262A1 (en) * 2001-03-05 2009-12-03 Martin Vorbach Methods and devices for treating and/or processing data
EP2224330B1 (de) * 2001-06-20 2012-05-09 Krass, Maren Verfahren und gerät zum partitionieren von grossen rechnerprogrammen
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) * 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US7577822B2 (en) * 2001-12-14 2009-08-18 Pact Xpp Technologies Ag Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization
US20050132344A1 (en) * 2002-01-18 2005-06-16 Martin Vorbach Method of compilation
WO2003060747A2 (de) * 2002-01-19 2003-07-24 Pact Xpp Technologies Ag Reconfigurierbarer prozessor
US8127061B2 (en) 2002-02-18 2012-02-28 Martin Vorbach Bus systems and reconfiguration methods
US8914590B2 (en) * 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US20060075211A1 (en) * 2002-03-21 2006-04-06 Martin Vorbach Method and device for data processing
AU2003286131A1 (en) * 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
US20110238948A1 (en) * 2002-08-07 2011-09-29 Martin Vorbach Method and device for coupling a data processing unit and a data processing array
US7657861B2 (en) * 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
WO2004038599A1 (de) 2002-09-06 2004-05-06 Pact Xpp Technologies Ag Rekonfigurierbare sequenzerstruktur
JP2006524850A (ja) * 2003-04-04 2006-11-02 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理方法およびデータ処理装置
US11106424B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US9207905B2 (en) 2003-07-28 2015-12-08 Sonos, Inc. Method and apparatus for providing synchrony group status information
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US11294618B2 (en) 2003-07-28 2022-04-05 Sonos, Inc. Media player system
US8086752B2 (en) 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
US11650784B2 (en) 2003-07-28 2023-05-16 Sonos, Inc. Adjusting volume levels
US11106425B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US8290603B1 (en) 2004-06-05 2012-10-16 Sonos, Inc. User interfaces for controlling and manipulating groupings in a multi-zone media system
US7289946B1 (en) 2003-08-22 2007-10-30 Neo Magic Corp. Methodology for verifying multi-cycle and clock-domain-crossing logic using random flip-flop delays
JP4700611B2 (ja) * 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理装置およびデータ処理方法
US9977561B2 (en) 2004-04-01 2018-05-22 Sonos, Inc. Systems, methods, apparatus, and articles of manufacture to provide guest access
US9374607B2 (en) 2012-06-26 2016-06-21 Sonos, Inc. Media playback system with guest access
US8868698B2 (en) 2004-06-05 2014-10-21 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8326951B1 (en) 2004-06-05 2012-12-04 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
EP1849095B1 (en) * 2005-02-07 2013-01-02 Richter, Thomas Low latency massive parallel data processing device
US8722764B2 (en) * 2005-03-17 2014-05-13 Lubrizol Advanced Materials, Inc. Nanoparticle/vinyl polymer composites
WO2007062327A2 (en) * 2005-11-18 2007-05-31 Ideal Industries, Inc. Releasable wire connector
EP1974265A1 (de) 2006-01-18 2008-10-01 PACT XPP Technologies AG Hardwaredefinitionsverfahren
US9202509B2 (en) 2006-09-12 2015-12-01 Sonos, Inc. Controlling and grouping in a multi-zone media system
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US8788080B1 (en) 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US11429343B2 (en) 2011-01-25 2022-08-30 Sonos, Inc. Stereo playback configuration and control
US11265652B2 (en) 2011-01-25 2022-03-01 Sonos, Inc. Playback device pairing
US9729115B2 (en) 2012-04-27 2017-08-08 Sonos, Inc. Intelligently increasing the sound level of player
US9008330B2 (en) 2012-09-28 2015-04-14 Sonos, Inc. Crossover frequency adjustments for audio speakers
US9510055B2 (en) 2013-01-23 2016-11-29 Sonos, Inc. System and method for a media experience social interface
US9307508B2 (en) 2013-04-29 2016-04-05 Google Technology Holdings LLC Systems and methods for syncronizing multiple electronic devices
US9720576B2 (en) 2013-09-30 2017-08-01 Sonos, Inc. Controlling and displaying zones in a multi-zone system
US9288596B2 (en) 2013-09-30 2016-03-15 Sonos, Inc. Coordinator device for paired or consolidated players
US9654545B2 (en) 2013-09-30 2017-05-16 Sonos, Inc. Group coordinator device selection
US20150095679A1 (en) 2013-09-30 2015-04-02 Sonos, Inc. Transitioning A Networked Playback Device Between Operating Modes
US9300647B2 (en) 2014-01-15 2016-03-29 Sonos, Inc. Software application and zones
US9313591B2 (en) 2014-01-27 2016-04-12 Sonos, Inc. Audio synchronization among playback devices using offset information
US20150220498A1 (en) 2014-02-05 2015-08-06 Sonos, Inc. Remote Creation of a Playback Queue for a Future Event
US9226087B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9226073B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9679054B2 (en) 2014-03-05 2017-06-13 Sonos, Inc. Webpage media playback
US10587693B2 (en) 2014-04-01 2020-03-10 Sonos, Inc. Mirrored queues
US20150324552A1 (en) 2014-05-12 2015-11-12 Sonos, Inc. Share Restriction for Media Items
US20150356084A1 (en) 2014-06-05 2015-12-10 Sonos, Inc. Social Queue
US9874997B2 (en) 2014-08-08 2018-01-23 Sonos, Inc. Social playback queues
US9690540B2 (en) 2014-09-24 2017-06-27 Sonos, Inc. Social media queue
WO2016049342A1 (en) 2014-09-24 2016-03-31 Sonos, Inc. Social media connection recommendations based on playback information
US9860286B2 (en) 2014-09-24 2018-01-02 Sonos, Inc. Associating a captured image with a media item
US9723038B2 (en) 2014-09-24 2017-08-01 Sonos, Inc. Social media connection recommendations based on playback information
US10645130B2 (en) 2014-09-24 2020-05-05 Sonos, Inc. Playback updates
US9667679B2 (en) 2014-09-24 2017-05-30 Sonos, Inc. Indicating an association between a social-media account and a media playback system
US9959087B2 (en) 2014-09-24 2018-05-01 Sonos, Inc. Media item context from social media
US10248376B2 (en) 2015-06-11 2019-04-02 Sonos, Inc. Multiple groupings in a playback system
US9886234B2 (en) 2016-01-28 2018-02-06 Sonos, Inc. Systems and methods of distributing audio to one or more playback devices
US10712997B2 (en) 2016-10-17 2020-07-14 Sonos, Inc. Room association based on name

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4068214A (en) * 1976-02-03 1978-01-10 Massachusetts Institute Of Technology Asynchronous logic array
US4901225A (en) * 1984-04-09 1990-02-13 Kabushiki Kaisha Toshiba Processing apparatus with hierarchical structure for implementing a machine instruction
US5021947A (en) * 1986-03-31 1991-06-04 Hughes Aircraft Company Data-flow multiprocessor architecture with three dimensional multistage interconnection network for efficient signal and data processing

Also Published As

Publication number Publication date
EP0560385B1 (en) 2001-06-06
DE69330294T2 (de) 2001-09-20
EP0560385A3 (en) 1994-07-06
JPH05259279A (ja) 1993-10-08
KR930020285A (ko) 1993-10-19
DE69330294D1 (de) 2001-07-12
EP0560385A2 (en) 1993-09-15
KR970003320B1 (ko) 1997-03-17
US5867691A (en) 1999-02-02

Similar Documents

Publication Publication Date Title
JP2791243B2 (ja) 階層間同期化システムおよびこれを用いた大規模集積回路
NL192892C (nl) Computer-ondersteund systeem voor het ontwerpen van geïntegreerde schakelingen.
EP1916534B1 (en) Verification and generation of timing exceptions
JP2000155777A (ja) 電子回路
US6622290B1 (en) Timing verification method employing dynamic abstraction in core/shell partitioning
JPH05108744A (ja) 階層的回路データベース最適化装置及び階層的回路データベース最適化方法
US6609232B2 (en) Logic compound method and logic compound apparatus
CN106250577A (zh) 用于执行有关位于与不同的时钟域关联的电路之间的同步区域的寄存器重定时操作的方法
Suhaib et al. Validating families of latency insensitive protocols
Borriello Specification and synthesis of interface logic
US11487927B2 (en) Peripheral tool
Bendas Design through transformation
US8176451B2 (en) Behavioral synthesis apparatus, behavioral synthesis method, and computer readable recording medium
KR101328263B1 (ko) 체계적 점진적 구체화를 통한 전자시스템수준에서부터게이트수준까지의 검증 방법
US6502227B1 (en) LSI design method which never produces timing error having influence on entire specification of LSI function, after design of layout and circuit of detailed portion
JP3164503B2 (ja) 配線パターン作成装置
Khadra A Model-Based Approach to Synchronous Elastic Systems
WO2000075815A1 (en) An arrangement and a method relating to design of circuits
JP2001053154A (ja) セルの作成方法、レイアウト方法、レイアウト装置、記録媒体
Kong et al. Bolstering faith in GasP circuits through formal verification
Dreier et al. Partitioning and fpga-based co-simulation of statecharts
JP3696302B2 (ja) テストベクトル生成方法及び生成装置
JPH0258651B2 (ja)
JP2000311186A (ja) 性能評価方法及び装置
Kong et al. Formal verification of peephole optimizations in asynchronous circuits

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090612

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20090612

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100612

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees