IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ローム株式会社の特許一覧

<>
  • 特開-半導体集積回路およびその設計方法 図1
  • 特開-半導体集積回路およびその設計方法 図2
  • 特開-半導体集積回路およびその設計方法 図3
  • 特開-半導体集積回路およびその設計方法 図4
  • 特開-半導体集積回路およびその設計方法 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024066914
(43)【公開日】2024-05-16
(54)【発明の名称】半導体集積回路およびその設計方法
(51)【国際特許分類】
   G06F 1/10 20060101AFI20240509BHJP
   G06F 30/396 20200101ALI20240509BHJP
   G06F 117/10 20200101ALN20240509BHJP
【FI】
G06F1/10 510
G06F30/396
G06F117:10
【審査請求】未請求
【請求項の数】3
【出願形態】OL
(21)【出願番号】P 2022176711
(22)【出願日】2022-11-02
(71)【出願人】
【識別番号】000116024
【氏名又は名称】ローム株式会社
(74)【代理人】
【識別番号】100105924
【弁理士】
【氏名又は名称】森下 賢樹
(74)【代理人】
【識別番号】100133215
【弁理士】
【氏名又は名称】真家 大樹
(72)【発明者】
【氏名】土屋 寛雄
(72)【発明者】
【氏名】フィリップ マイルス エル タンギラン
【テーマコード(参考)】
5B146
【Fターム(参考)】
5B146AA22
5B146GA07
5B146GC20
5B146GC26
(57)【要約】
【課題】ピーク電流を抑制したデジタル回路を備える半導体集積回路およびその設計方法を提供する。
【解決手段】半導体集積回路100において、デジタル回路110は、スキャンパス112で接続された複数のフリップフロップFF1~FFnを含む。複数のフリップフロップFF1~FFnには、複数のクロック供給パス126_1~126_nを経由してクロック信号が供給される。複数のクロック供給パス126_1~126_nそれぞれに挿入されるクロックバッファ128の遅延量τは、スキャンパス112上の複数のフリップフロップFF1~FFnの接続順序に応じている。
【選択図】図1
【特許請求の範囲】
【請求項1】
スキャンパスで接続された複数のフリップフロップを含むデジタル回路と、
前記複数のフリップフロップに対する複数のクロック供給パスと、
を備え、
前記複数のクロック供給パスそれぞれに挿入されるクロックバッファの遅延量は、前記スキャンパス上の前記複数のフリップフロップの接続順序に応じている、半導体集積回路。
【請求項2】
前記デジタル回路に電源電圧を供給するキャパシタレスのリニアレギュレータをさらに備える、請求項1に記載の半導体集積回路。
【請求項3】
半導体集積回路の設計方法であって、
コンピュータ上で動作する設計ツールにより、論理合成によって得られた複数のフリップフロップを含む回路を配置配線し、前記複数のフリップフロップに対して、スキャンパスを挿入するステップと、
前記コンピュータ上で動作する設計ツールにより、前記スキャンパス上の前記複数のフリップフロップの接続順序を示すスキャン情報を生成するステップと、
前記コンピュータ上で動作する設計ツールにより、前記複数のフリップフロップに対する複数のクロック供給パスのそれぞれに、前記スキャン情報にもとづいたクロック仮想遅延を設定するステップと、
前記コンピュータ上で動作する設計ツールにより、前記複数のフリップフロップそれぞれに対するクロック供給パスに、タイミングを満たすようにクロックバッファを配置するステップと、
を備える設計方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、半導体集積回路に関する。
【背景技術】
【0002】
クロック信号と同期して動作するデジタル回路は、クロック信号の遷移のタイミングで瞬時的な動作電流が増加する。デジタル回路に電源電圧を供給する電源回路は、デジタル回路のピーク電流に対して電源電圧を維持できるように余裕をもって設計する必要がある
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2011-129053号公報
【特許文献2】特開2006-278370号公報
【特許文献3】特開2006-185323号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
電源回路のロードレギュレーションは、平滑化用の出力キャパシタの容量値を大きくし、電源回路の出力段のトランジスタサイズを大きくすることで改善できる。
【0005】
低コスト化が要求されるアプリケーションでは、外付けの出力キャパシタが不要なキャパレス型のリニアレギュレータを内蔵する半導体集積回路が使用される。キャパレス型の電源回路は、出力キャパシタがチップに集積化されるため、ロードレギュレーションが、出力キャパシタの小さい容量値によって制約を受ける。したがって、キャパシタレス型のリニアレギュレータとともに使用されるデジタル回路は、瞬時的なピーク電流を抑制する必要がある。
【0006】
本開示は係る課題に鑑みてなされたものであり、そのある態様の例示的な目的のひとつは、ピーク電流を抑制したデジタル回路を備える半導体集積回路およびその設計方法の提供にある。
【課題を解決するための手段】
【0007】
本開示のある態様の半導体集積回路は、スキャンパスで接続された複数のフリップフロップを含むデジタル回路と、複数のフリップフロップに対する複数のクロック供給パスと、を備える。複数のクロック供給パスそれぞれに挿入されるクロックバッファの遅延量は、スキャンパス上の複数のフリップフロップの接続順序に応じている。
【0008】
本開示の別の態様は、半導体集積回路の設計方法である。設計方法は、設計ツールにより、論理合成によって得られた複数のフリップフロップを含む回路を配置配線し、複数のフリップフロップに対して、スキャンパスを挿入するステップと、スキャンパス上の複数のフリップフロップの接続順序を示すスキャン情報を生成するステップと、複数のフリップフロップに対する複数のクロック供給パスのそれぞれに、スキャン情報にもとづいたクロック仮想遅延を設定するステップと、複数のフリップフロップそれぞれに対するクロック供給パスに、タイミングを満たすようにクロックバッファを配置するステップと、を備える。
【0009】
なお、以上の構成要素を任意に組み合わせたもの、構成要素や表現を、方法、装置、システムなどの間で相互に置換したものもまた、本発明あるいは本開示の態様として有効である。さらに、この項目(課題を解決するための手段)の記載は、本発明の欠くべからざるすべての特徴を説明するものではなく、したがって、記載されるこれらの特徴のサブコンビネーションも、本発明たり得る。
【発明の効果】
【0010】
本開示のある態様によれば、デジタル回路の瞬時的なピーク電流を抑制できる。
【図面の簡単な説明】
【0011】
図1図1は、実施形態に係る半導体集積回路の回路図である。
図2図2は、図1の半導体集積回路の設計方法のフローチャートである。
図3図3は、半導体集積回路におけるクロックツリー合成を説明する図である。
図4図4は、比較技術に係る半導体集積回路の回路図である。
図5図5は、一実施例に係る半導体集積回路の回路図である。
【発明を実施するための形態】
【0012】
(実施形態の概要)
本開示のいくつかの例示的な実施形態の概要を説明する。この概要は、後述する詳細な説明の前置きとして、実施形態の基本的な理解を目的として、1つまたは複数の実施形態のいくつかの概念を簡略化して説明するものであり、発明あるいは開示の広さを限定するものではない。この概要は、考えられるすべての実施形態の包括的な概要ではなく、すべての実施形態の重要な要素を特定することも、一部またはすべての態様の範囲を線引きすることも意図していない。便宜上、「一実施形態」は、本明細書に開示するひとつの実施形態(実施例や変形例)または複数の実施形態(実施例や変形例)を指すものとして用いる場合がある。
【0013】
一実施形態に係る半導体集積回路は、スキャンパスで接続された複数のフリップフロップを含むデジタル回路と、複数のフリップフロップに対する複数のクロック供給パスと、を備える。複数のクロック供給パスそれぞれに挿入されるクロックバッファの遅延量は、スキャンパス上の複数のフリップフロップの接続順序に応じている。
【0014】
この構成によると、複数のフリップフロップそれぞれが、そのクロック供給パスのクロックバッファの遅延量に対応するタイミングで、互いに時間的にシフトして動作するため、デジタル回路全体のピーク電流を抑制できる。
【0015】
一実施形態に係る半導体集積回路は、デジタル回路に電源電圧を供給するキャパシタレスのリニアレギュレータをさらに備えてもよい。ピーク電流が抑制されたデジタル回路に対しては、大きな電流供給力が不要であるため、キャパシタレスのリニアレギュレータと組み合わせることができ、これにより半導体集積回路のピン数および外付けの周辺部品の点数を減らすことができる。
【0016】
一実施形態に係る半導体集積回路の設計方法は、設計ツールにより、論理合成によって得られた複数のフリップフロップを含む回路を配置配線し、複数のフリップフロップに対して、スキャンパスを挿入するステップと、スキャンパス上の複数のフリップフロップの接続順序を示すスキャン情報を生成するステップと、複数のフリップフロップに対する複数のクロック供給パスのそれぞれに、スキャン情報にもとづいたクロック仮想遅延を設定するステップと、複数のフリップフロップそれぞれに対するクロック供給パスに、タイミングを満たすようにクロックバッファを配置するステップと、を備える。
【0017】
(実施形態)
図1は、実施形態に係る半導体集積回路100の回路図である。半導体集積回路100は、デジタル回路110およびクロックツリー120を備える。
【0018】
デジタル回路110は、組み合わせ回路110aおよびフリップフロップ群110bを含む。組み合わせ回路110aは、半導体集積回路100の処理に応じて設計される。フリップフロップ群110bは、デジタル回路110のうち、複数n個のフリップフロップFF1~FFnを表す。
【0019】
複数のフリップフロップFF1~FFnは、スキャンパス112を介して接続されている。スキャンパス112上には、複数のマルチプレクサMUX1~MUXnが挿入され、通常動作とスキャン動作が切り替え可能となっている。スキャンインのノード(端子)SCANINに最も近いフリップフロップをFF1と表記し、スキャンアウトのノード(端子)に最も近いフリップフロップをFFnと表記する。なお、マルチプレクサは、フリップフロップとともに、同一のセル内に組み込まれていてもよい。
【0020】
クロックツリー120は、CTS起点122、クロックゲーティングセル124、複数のクロック供給パス126_1~126_nを含む。複数のクロック供給パス126_1~126_nはそれぞれ、対応するフリップフロップFFのクロックの供給パスを形成している。各クロック供給パス126_i(1≦i≦n)には、クロックバッファ128が設けられる。
【0021】
図1において、クロックバッファ128の個数は、必ずしも実際のバッファ素子の個数を意味しているのではなく、遅延量τの大きさを模式的に表している。すなわち本実施形態において、複数のクロック供給パス126_iそれぞれに挿入されるクロックバッファ128_iの遅延量τは、スキャンパス112上の複数のフリップフロップFF1~FFnの接続順序に応じている。具体的には、1番目のフリップフロップFF1に対するクロック供給パス126_1のクロックバッファ128_1の遅延量τが最も大きく、n番目のフリップフロップFFnに対するクロック供給パス126_nのクロックバッファ128_nの遅延量τが最も小さく、i番目のフリップフロップFFiに対するクロック供給パス126_iのクロックバッファ128_iの遅延量τがi番目に大きくなっている。
τ>τ>…>τ>…>τnー1>τ
【0022】
以上が半導体集積回路100の構成である。この半導体集積回路100によれば、複数のフリップフロップFF1~FFnそれぞれが、そのクロック供給パスのクロックバッファの遅延量に対応するタイミングで、互いに時間的にシフトして動作するため、デジタル回路全体のピーク電流を抑制できる。
【0023】
続いて、図1の半導体集積回路100の設計方法を説明する。
【0024】
図2は、図1の半導体集積回路100の設計方法のフローチャートである。はじめに、コンピュータ上で動作する設計ツールを用いて、回路の動作を記述するソースコードを作成する(S100)。このコードは、HDL(ハードウェア記述言語)で記述され、HDLソースとも称される。
【0025】
続いて、設計ツールを用いて、コードを論理合成(RLT合成)し、回路モデルを生成する(S102)。この論理合成によって生成される回路モデルは、複数のフリップフロップを含む。回路モデルはネットリストとも称される。RLT合成により、複数のフリップフロップにスキャンパスが挿入される。
【0026】
続いて、設計ツールの配置配線(Place and Route)機能を利用して、論理合成によって得られた回路を、配置配線する(S104)。
【0027】
設計ツールは、複数のフリップフロップのスキャンパスの接続順序を示すスキャン情報を生成する(S106)。
【0028】
続いて、設計ツールを利用して、複数のフリップフロップそれぞれに対するクロック供給パスに、スキャン情報にもとづいたクロック仮想遅延τIMGを設定する(S108)。仮想遅延は実回路上には存在しない遅延である。通常、設計ツールは、この仮想遅延を、クロックの遅延情報がタイミングモデルに含まれていないハードマクロセルなどのために提供しているが、本実施形態では、クロック供給パス126上のクロックバッファ128の遅延量に、意図的な時間差を導入するために利用している。
【0029】
i番目のフリップフロップFFiに対するクロック供給パスの仮想遅延をτIMGiとするとき、
τIMG1>τIMG2>…>τIMGi>…>τIMGnー1>τIMGn
の関係が成り立つ。
【0030】
つまり1番目のフリップフロップFF1に対するクロック供給パス126_1の仮想遅延量τIMG1が最も小さく、n番目のフリップフロップFFnに対するクロック供給パス126_nの仮想遅延量τIMGnが最も大きく、i番目のフリップフロップFFiに対するクロック供給パス126_iの仮想遅延量τIMGiがn-i+1番目に大きくなっている。仮想遅延量τIMGは、等差とすることができ、仮想遅延量τIMGiは、定数τ,Δτを用いて、
τIMGi=τ-i・Δτ
のように表されてもよい。この場合において、Δτ×nは、許容されるクロック信号のタイミングずれよりも小さく定めればよい。
【0031】
仮想遅延の設定後、設計ツールのCTS(クロックツリー合成)機能によって、タイミング要件を満たすように、複数のクロック供給パスそれぞれに、クロックバッファを挿入する(S110)。このようにして挿入される複数のクロックバッファの遅延量は、図1に示す様に、1番目の遅延量が最も大きく、n番目の遅延量が最も小さくなる傾向がある。
【0032】
図3は、半導体集積回路100におけるクロックツリー合成を説明する図である。CTS機能は、複数のクロック供給パス126_1~126_nそれぞれに、仮想遅延τIMG1~τIMGnが存在するものとして、各クロック供給パス126_iのクロックバッファ128_iの遅延量τを最適化する。なお、図3には示さないが、実際には、クロックゲーティングセル124から各フリップフロップFFiまでの間には、クロック供給パスの長さや寄生容量などにもとづく実遅延量τREALi図3に不図示)が存在する。したがって、各クロックバッファ128_iの遅延量τは、τREALi+τIMGiがすべての供給経路で実質的に等しくなるように最適化される。
【0033】
図2の設計手法によれば、複数のクロックバッファ128_1~128_nの遅延量を、レイアウト情報にもとづいて簡易に生成することができる。
【0034】
この設計手法の利点は、比較技術との対比によって明確となる。図4は、比較技術に係る半導体集積回路100Rの回路図である。
【0035】
比較技術では、スキャン情報を利用せずに、複数のクロック供給パス126_1~126_nに、ランダムに仮想遅延を導入する。そして、ランダムな仮想遅延が組み込まれた回路に対して、CTSを実行し、クロックバッファ128_1~128_nの遅延量を最適化する。その結果、複数のクロックバッファ128_1~128_nは、スキャンパス上のフリップフロップの順序とは無関係なランダムな遅延量を有する。
【0036】
比較技術に係る設計手法によっても、実施形態と同様に、ピーク電流を抑制することができる。
【0037】
ところが、比較技術では、挿入される複数のクロックバッファの遅延量の総量が、実施形態に比べて大きくなり、これは、複数のクロックバッファの総回路面積が大きくなることを意味する。これに対して、実施形態では、複数のクロックバッファの総回路面積を、比較技術に比べて削減できる。
【0038】
図5は、一実施例に係る半導体集積回路200の回路図である。半導体集積回路200は、デジタル回路110、クロックツリー120およびリニアレギュレータ210を備える。デジタル回路110およびクロックツリー120は、上述のアーキテクチャによって構成された半導体集積回路100である。デジタル回路110は電源電流のピークが抑えられるため、その電源回路に必要とされる電流供給能力は小さくてよい。リニアレギュレータ210は、外付けのキャパシタが接続されないキャパシタレスの構成を採用できる。
【0039】
図5の半導体集積回路200は、キャパシタを接続するためのピンを削減でき、外付けのキャパシタを省略できるため、コストを下げることができる。
【0040】
本開示に係る実施形態について、具体的な用語を用いて説明したが、この説明は、理解を助けるための例示に過ぎず、本開示あるいは請求の範囲を限定するものではない。本発明の範囲は、請求の範囲によって規定されるものであり、したがって、ここでは説明しない実施形態、実施例、変形例も、本発明の範囲に含まれる。
【符号の説明】
【0041】
100 半導体集積回路
110 デジタル回路
110a 組み合わせ回路
110b フリップフロップ群
FF フリップフロップ
112 スキャンパス
120 クロックツリー
122 CTS起点
124 クロックゲーティングセル
126 クロック供給パス
128 クロックバッファ
130 仮想遅延
図1
図2
図3
図4
図5