JP2015201502A - 半導体集積回路及びプログラム - Google Patents

半導体集積回路及びプログラム Download PDF

Info

Publication number
JP2015201502A
JP2015201502A JP2014078379A JP2014078379A JP2015201502A JP 2015201502 A JP2015201502 A JP 2015201502A JP 2014078379 A JP2014078379 A JP 2014078379A JP 2014078379 A JP2014078379 A JP 2014078379A JP 2015201502 A JP2015201502 A JP 2015201502A
Authority
JP
Japan
Prior art keywords
clock
delay
semiconductor integrated
integrated circuit
clock signal
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.)
Pending
Application number
JP2014078379A
Other languages
English (en)
Inventor
松尾 俊彦
Toshihiko Matsuo
俊彦 松尾
高橋 亮
Akira Takahashi
亮 高橋
清大 武田
Kiyohiro Takeda
清大 武田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2014078379A priority Critical patent/JP2015201502A/ja
Publication of JP2015201502A publication Critical patent/JP2015201502A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】素子配置・配線及びマスク製造にかかる時間を短縮する手段を提供する。【解決手段】クロックラインバッファ10は、クロック信号が流れるクロックラインに配置されてクロック信号を取り込み、取り込んだクロック信号を、クロックラインから複数に分岐するそれぞれのクロックライン幹線部51〜53に分配する。クロック遅延調整部21A〜21Cは、それぞれのクロックライン幹線部51〜53に配置され、クロックラインバッファ10によって分配されたクロック信号が通過する際の遅延量が異なる三段の遅延経路を有し、分配されたクロック信号を三段の遅延経路うちのいずれかの遅延経路で通過させる。【選択図】図1

Description

この発明は、半導体集積回路におけるクロックの分散によるEMC(Electromagnetic Compatibility)対策に関する。
従来のASIC(Application Specific Integrated Circuit)における放射電磁雑音のレベルを低減させる従来技術としては、クロック生成回路において複数種類の遅延を持たせたクロックを生成し、適宜選択して接続する事でクロックの到達時間を分散する方法が示されている(特許文献1)。
特開2002−229665号公報
従来のASICにおける放射電磁雑音のレベルを低減させる技術では、ASIC毎にクロック生成回路、及びクロック配線を施す事が必要な構造となっている。これは、ASICの配置・配線にかかる時間、及びマスク製造にかかる時間が大きくなるという課題がある。また、各素子へのクロック遅延は選択可能であるが、論理に従った素子の配置とクロック遅延が密接な関係となるため、クロック配線に制約あり、設計の自由度が制限されるという課題があった。
この発明は、素子配置・配線、及びマスク製造にかかる時間を短縮する手段の提供を目的とする。
この発明の半導体集積回路は、
クロック信号が流れるクロックラインに配置されてクロック信号を取り込み、取り込んだクロック信号を、前記クロックラインから複数に分岐するそれぞれの分岐クロックラインに分配するクロック信号分配部と、
それぞれの前記分岐クロックラインに配置され、前記クロック信号分配部によって分配された分配クロック信号が通過する際の遅延量が異なる複数の遅延経路を有し、分配クロック信号を前記複数の遅延経路うちのいずれかの遅延経路で通過させる第1のクロック遅延調整部と
を備えたことを特徴とする。
この発明によれば、素子配置・配線、及びマスク製造にかかる時間を短縮する手段を提供できる。
実施の形態1の半導体集積回路101の構成を示す図。 実施の形態2の半導体集積回路102の構成を示す図。 実施の形態2の順序回路部30A−1の構成を示す図。 実施の形態3の半導体集積回路103の構成を示す図。 実施の形態3の順序回路部30A−1の構成を示す図。 実施の形態4のプログラムによる処理のフローチャート。
実施の形態1.
以下の実施の形態では半導体集積回路を説明するが、半導体集積回路としては、例えば、ASIC、FPGA(Field Programmable Gate Array)等である。
図1は、半導体集積回路101のクロックラインの構成を示す図である。図1を参照して実施の形態1における半導体集積回路101のクロックラインの構成を説明する。
半導体集積回路101は、クロック配線におけるクロックライン幹線部51〜53に、クロック遅延調整回路21A、21B、21Cを備える。これによって、エリア毎のクロック配線遅延を調整可能な構造とし、クロックの立ち上がりエッジのタイミングを分散させる事で、放射電磁雑音のレベルを低減させる事ができる。以下に図1を説明する。
図1に示すように、ロックライン幹線部は、クロックラインバッファ10(クロック信号分配部)の先で、3本に分かれている。
(1)クロックラインバッファ10は、半導体集積回路101の外部から、もしくは半導体集積回路101内のPLL(Phase Locked Loop)/DLL(Delay Locked Loop)等のクロック生成回路からのクロック信号を、半導体集積回路101内のそれぞれのクロックライン幹線部51〜53へ分配するためのバッファである。
(2)クロックライン幹線部51〜53(分岐クロックライン)は、クロックラインバッファ10から半導体集積回路101全体へクロック信号を運ぶための幹線である。図1においては、フィッシュボーン型のクロックライン構成の例を示してある。
(3)クロック遅延調整回路21A〜21Cが、クロックラインバッファ10から分岐する各クロックライン幹線部の先頭に配置されている。クロック遅延調整回路21A〜21Cは、クロック信号に遅延を発生させる。
図1に示すように、クロック遅延調整回路21A〜21Cは同じ構成である。クロック遅延調整回路21Aを例に説明すれば、バッファが配置されない経路(一段目)と、一つのバッファが配置された経路(二段目)と、直列接続された2つのバッファが配置された経路(三段目)との各遅延経路が、並列に接続されている。各経路には、オン、オフすることで導通、遮断を切り替えるスイッチが配置されている。クロック遅延調整回路21Aは、最上段のスイッチがオン状態である。一段目〜三段目の経路を選択することで、クロック信号に異なる遅延量を発生させることができる。
このように半導体集積回路101においては、図1に示すようにクロックラインバッファ10から半導体集積回路101全体へクロック信号を分配するクロックライン幹線部51〜53を有する。それぞれのクロックライン幹線部にはクロック遅延調整回路21A〜21Cが配置されている。よって簡易な構成で、クロックライン幹線部ごとのクロック遅延を分散させることができる。
実施の形態2.
図2、図3を参照して実施の形態2の半導体集積回路102を説明する。
図2は、半導体集積回路102のクロックラインの構成を示す図である。
図3は、実施の形態2の順序回路部30A−1の構成を示す図である。
半導体集積回路102は図2に示すように、それぞれのクロックライン幹線部に順序回路部を配置した構成である。順序回路部30A−1等は、クロック遅延調整回路21(第2のクロック遅延調整部)を備えている。この構成により、順序回路部ごとのクロック配線遅延を調整可能な構造とし、クロックの立ち上がりエッジのタイミングを分散させる事で、放射電磁雑音のレベルを低減させる事ができる。以下、詳しく説明する。
図2のように、クロックライン幹線部51には順序回路部30A−1〜30A−3が配置され、クロックライン幹線部52には順序回路部30B−1〜30B−3が配置され、クロックライン幹線部53には順序回路部30C−1〜30C−3が配置されている。順序回路部30A−1〜順序回路部30C−3は、いずれも同じ構成である。順序回路部30A−1は、クロック遅延調整回路21、順序回路素子32、クロックライン41Aを備えている。順序回路部30A−1のクロック遅延調整回路21は、クロック遅延調整回路21A等(第1のクロック遅延調整部)と同じ構成である。順序回路部30A−1は、クロックライン幹線部から分岐するクロックライン41A等でクロックライン幹線部に接続している。他の順序回路部も同様である。それぞれの順序回路に接続されるクロックの直前には、順序回路毎にクロック遅延調整回路21が配置されている。すなわち、図2に示すように、順序回路部30A−1等のクロック信号が入力される入力部にはクロック遅延調整回路21が配置されている。図3は順序回路部30A−1の構成を示す。
図2、図3に示す半導体集積回路102によれば、順序回路部30A−1等では、クロックライン幹線部からのクロック信号と順序回路素子32との間にクロック遅延調整回路を持つ事で、各順序回路素子のクロック遅延を変更する事ができる。
実施の形態3.
図4、図5を参照して実施の形態3の半導体集積回路103を説明する。
図4は、半導体集積回路103のクロックラインの構成を示す図である。
図5は、実施の形態3の順序回路部30A−1の構成を示す図である。
半導体集積回路103では、クロックライン幹線部がクロックライン幹線部51〜54の4本に分かれている。また、クロックライン幹線部51〜54の先頭に配置されるクロック遅延調整回路22A〜22D、及び順序回路部30A−1〜30D−3のクロック遅延調整回路22は、バッファだけでなくインバータも備えており、実施の形態1,2が三段の遅延経路であったのに対して、四段の遅延経路を持つ。クロック遅延調整回路22A〜22Dは同じ構成である。また順序回路部30A−1〜30D−3は、同じ構成である。順序回路部30A−1のクロック遅延調整回路22はクロック遅延調整回路22Aと同じ構成である。
このようにクロック遅延調整回路22A〜22D及び順序回路部のクロック遅延調整回路22はインバータを有するので、反転クロックにおける遅延調整も可能となる。
図4のように、クロックライン幹線部及び順序回路素子に付随したクロック遅延調整回路は、バッファのみのラインと、バッファとインバータを使用したラインで構成される。バッファのみのラインを使用する場合は、クロックの遅延だけを調整する事が可能である。通過するバッファの段数によりクロックラインの遅延を調整することができる。またバッファだけでなくインバータも利用するライン(経路)では、インバータによりクロックの位相を180°変更する事が可能となる。なおインバータはいずれかの遅延経路に配置されれば良い。
実施の形態4.
図6は、半導体集積回路の配置及び配線を、コンピュータによって決定する処理手順を示すフローチャートである。実施の形態4では、半導体集積回路の配置及び配線方法を、図6を用いて説明する。以下のS10〜S60は、プログラムによってコンピュータに処理させるものである。
[S10:コンパイル処理]
S10ではコンピュータに、コンパイル処理を実施させる。コンパイル処理は、入力された半導体集積回路の設計データを展開し、設計データにおける階層構成、同一クロックで動作する回路規模等の論理情報、及びピン配置などの情報を抽出する。半導体集積回路の設計データをコンパイル(S10)する事により、同一クロックに接続された順序回路素子(同一クロック回路情報)などの論理情報を抽出する事ができる。放射電磁雑音のレベルは近接した素子の同時変化に強く影響を受けるため、抽出した論理情報から近接した素子の情報がわかれば良い。例えばバスを構成する各信号は同一クロックで同時に変化する可能性が高いため、各信号を変化させるクロックの遅延タイミングを分散させる事で、バス信号の変化タイミングを分散させる事が可能である。
S10では抽出された論理情報をプログラムに出力させ、人がその論理情報を評価するようにしても構わない。
[S20:クロック情報の挿入処理(その1)]
S20ではコンピュータに、クロック情報挿入処理(その1)を実施させる。クロック情報挿入処理(その1)は、設計データをコンパイルして得られた論理情報から、クロック変化タイミングを分散させるための遅延情報(第1の遅延情報)を挿入する部分である。
[S30:配置処理]
S30ではコンピュータに、半導体集積回路のフロアプラン情報、設計データの階層情報から各素子を半導体集積回路内に配置させる部分(配置シミュレーション)である。半導体集積回路内に各素子の配置(S30)を行う場合には、論理ブロック毎にまとまって配置される可能性が高い。例えばフロアプランを決める場合には、論理ブロック毎に半導体集積回路内に配置する。この場合、大きくは論理ブロック単位の変化タイミングをずらす事で、放射電磁雑音のレベルを下げる事が可能である。この場合には、配置情報からクロックライン幹線部のクロック遅延調整を行う事で、各ブロックの変化タイミングを分散させる事が可能である。なお、S30ではプログラムに配置シミュレーションの結果を出力させ、人がその配置シミュレーション結果を評価するようにしても構わない。
[S40:クロック情報の挿入処理(その2)]
S40ではコンピュータに、クロック情報挿入処理(その2)を実施させる。クロック情報挿入処理(その2)は、半導体集積回路の配置情報から、近接する論理ブロック、及び順序回路素子を認識し、クロック変化タイミングを分散させるための遅延情報(第2の遅延情報)を挿入する部分である。
[S50:配線処理]
S50ではコンピュータに、配線処理を実施させる。配線処理は、半導体集積回路内の各素子間の接続情報、及びクロック遅延情報を利用して、クロックラインを接続する部分である。
[S60:タイミング判定処理]
S60ではコンピュータに、タイミング判定処理を実施させる。コンピュータは、クロック変化タイミングが目標範囲内で分散されているかどうかを判定し目標範囲(要求仕様の範囲)の場合、結果をROMに書き込んで処理を終了する。クロック変化タイミングが目標範囲内でない場合は、再度、設計データの入力に戻る。
S60の話半導体集積回路においては、論理が複雑になるに従って順序回路素子間の論理段数が増加するため、要求仕様を満たすタイミングが得られない場合がある。その場合、図6のフローに示すとおり、配置・配線をやり直したり、設計段階に戻って設計データを修正する事でタイミングを改善する。実施の形態4のクロックライン構成を利用する事で、タイミング調整を行う事が可能である。例えば、タイミング的に厳しい順序回路素子間において、タイミングの基点となる順序回路素子へ入力されるクロックの遅延を小さくし、タイミングの終点となる順序回路素子へ入力されるクロックの遅延を大きくする事で、基点から終点までの時間を長くする事が可能である。これにより、タイミングの要求仕様を満たす事を容易にする事が可能である。なお、S60ではプログラムに判定結果を出力させ、人がその判定結果を評価するようにしても構わない。
以上の実施形態1〜4によって、遅延調整回路付きのクロック配線を事前に施しておく事で、配置・配線、及びマスク製造にかかる時間を短縮する事が可能である。また、エリア毎の遅延だけでなく、各素子へのクロックの遅延時間についても個別に調整を可能とする自由度を備えたものであり、ASICだけでなく、FPGAにおいても適用が可能である。
101,102,103 半導体集積回路、10 クロックラインバッファ、21,22,21A〜21C,22A〜22D クロック遅延調整回路、30A−1〜30D−3 順序回路部、41A,41B,41C,41D クロックライン、51,52,53,54 クロックライン幹線部。

Claims (6)

  1. クロック信号が流れるクロックラインに配置されてクロック信号を取り込み、取り込んだクロック信号を、前記クロックラインから複数に分岐するそれぞれの分岐クロックラインに分配するクロック信号分配部と、
    それぞれの前記分岐クロックラインに配置され、前記クロック信号分配部によって分配された分配クロック信号が通過する際の遅延量が異なる複数の遅延経路を有し、分配クロック信号を前記複数の遅延経路うちのいずれかの遅延経路で通過させる第1のクロック遅延調整部と
    を備えたことを特徴とする半導体集積回路。
  2. 前記半導体集積回路は、
    前記複数の分岐クロックラインのそれぞれに、前記分岐クロックラインから分岐する順序回路部であって、前記分岐クロックラインから流入する分配クロック信号が通過する際の遅延量が異なる複数の遅延経路を有し、流入した分配クロック信号を前記複数の遅延経路うちのいずれかの遅延経路で通過させる第2のクロック遅延調整部と、前記第2のクロック遅延調整部を通過した分配クロック信号が入力される順序回路素子とを有する順序回路部を備えることを特徴とする請求項1記載の半導体集積回路。
  3. 前記第1のクロック遅延調整部と、前記第2のクロック遅延調整部とは、
    少なくともいずれかの前記遅延経路に、インバータを備えたことを特徴とする請求項2記載の半導体集積回路。
  4. コンピュータに、
    半導体集積回路の設計データを入力する処理、
    入力された設計データをコンパイルすることによって、同じクロックに接続された回路を示す同一クロック回路情報を含む論理情報を抽出する処理、
    抽出された論理情報に含まれる同一クロック情報を出力する処理、
    を実行させるためのプログラム。
  5. 前記プログラムは、さらに、
    抽出された論理情報に基づいて、クロック変化タイミングを分散させるための第1の遅延情報を挿入する処理、
    第1の遅延情報と、設計データに含まれるフロアプラン情報と、設計データに含まれる階層情報とに基づいて、複数の素子を半導体集積回路に配置する配置シミュレーションを実行する処理、
    配置シミュレーションの結果を出力する処理、
    をコンピュータに実行させるための請求項4記載のプログラム。
  6. 前記プログラムは、さらに、
    配置シミュレーションの結果に、第2の遅延情報を挿入する処理、
    第2の遅延情報に基づいて、クロックラインを接続する接続シミュレーションを実行する処理、
    接続シミュレーションの結果、半導体集積回路のクロック遅延の分散状状態が、予め設定された要求仕様を満たすかどうかを判定する処理、
    要求仕様を満たすかどうかの判定結果を出力する処理、
    をコンピュータに実行させるための請求項5記載のプログラム。
JP2014078379A 2014-04-07 2014-04-07 半導体集積回路及びプログラム Pending JP2015201502A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014078379A JP2015201502A (ja) 2014-04-07 2014-04-07 半導体集積回路及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014078379A JP2015201502A (ja) 2014-04-07 2014-04-07 半導体集積回路及びプログラム

Publications (1)

Publication Number Publication Date
JP2015201502A true JP2015201502A (ja) 2015-11-12

Family

ID=54552529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014078379A Pending JP2015201502A (ja) 2014-04-07 2014-04-07 半導体集積回路及びプログラム

Country Status (1)

Country Link
JP (1) JP2015201502A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1091274A (ja) * 1996-09-18 1998-04-10 Toshiba Microelectron Corp 半導体集積回路
JP2001196915A (ja) * 2000-01-06 2001-07-19 Nec Corp 半導体集積回路
JP2002015569A (ja) * 2000-06-27 2002-01-18 Mitsubishi Electric Corp 半導体装置
JP2008017389A (ja) * 2006-07-10 2008-01-24 Seiko Epson Corp Emiノイズを低減した同期回路の設計方法
JP2011076192A (ja) * 2009-09-29 2011-04-14 Fujitsu Ltd 設計支援プログラム、設計支援装置および設計支援方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1091274A (ja) * 1996-09-18 1998-04-10 Toshiba Microelectron Corp 半導体集積回路
JP2001196915A (ja) * 2000-01-06 2001-07-19 Nec Corp 半導体集積回路
JP2002015569A (ja) * 2000-06-27 2002-01-18 Mitsubishi Electric Corp 半導体装置
JP2008017389A (ja) * 2006-07-10 2008-01-24 Seiko Epson Corp Emiノイズを低減した同期回路の設計方法
JP2011076192A (ja) * 2009-09-29 2011-04-14 Fujitsu Ltd 設計支援プログラム、設計支援装置および設計支援方法

Similar Documents

Publication Publication Date Title
US9360884B2 (en) Clocking for pipelined routing
US8893071B1 (en) Methods of pipelining a data path in an integrated circuit
JP2006338659A (ja) フィールドプログラマブルゲートアレイと等価な構造化特定用途向け集積回路を製造する方法
JP2007336003A (ja) クロック分配回路、半導体集積回路、クロック分配回路の形成方法及びそのプログラム
US7823107B2 (en) Transition balancing for noise reduction/Di/Dt reduction during design, synthesis, and physical design
US9898035B2 (en) Clock synchronization method
JP2010277230A (ja) 半導体集積回路の設計装置
JP2004078759A (ja) スキャン機能を有する集積回路の設計方法
JP4437741B2 (ja) 半導体集積回路の設計装置、半導体集積回路および半導体集積回路の設計プログラム
JP2005123537A (ja) 半導体装置及び製造方法
Gort et al. Reducing FPGA router run-time through algorithm and architecture
JP6602849B2 (ja) プログラマブル遅延回路ブロック
US9235660B1 (en) Selective addition of clock buffers to a circuit design
JP2015201502A (ja) 半導体集積回路及びプログラム
US9152756B2 (en) Group based routing in programmable logic device
JP5818762B2 (ja) プログラマブルロジックデバイス及びその検証方法
JP2005184262A (ja) 半導体集積回路及びその製造方法
KR100546320B1 (ko) 클럭 트리 합성 장치 및 방법
US11709521B1 (en) Synchronous clock domain crossing skew optimization and multi-clock buffer (MBUFG)
WO2010101029A1 (ja) 半導体集積回路設計装置、半導体集積回路設計方法、及び半導体集積回路設計プログラム
US10255404B1 (en) Retiming with programmable power-up states
JP2005310970A (ja) クロック配線構造およびクロック伝播遅延時間の調整方法
JP2009253756A (ja) クロック分配回路のレイアウト生成方法、および半導体集積回路装置
JP2003078014A (ja) クロックツリー構造によるクロック分配回路
Gharehbaghi et al. Efficient signature-based sub-circuit matching

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171205

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180529