JP2004214564A - マイクロコンピュータのレイアウト方法および設計方法 - Google Patents
マイクロコンピュータのレイアウト方法および設計方法 Download PDFInfo
- Publication number
- JP2004214564A JP2004214564A JP2003002494A JP2003002494A JP2004214564A JP 2004214564 A JP2004214564 A JP 2004214564A JP 2003002494 A JP2003002494 A JP 2003002494A JP 2003002494 A JP2003002494 A JP 2003002494A JP 2004214564 A JP2004214564 A JP 2004214564A
- Authority
- JP
- Japan
- Prior art keywords
- microcomputer
- layout
- memory
- created
- peripheral function
- 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
Links
Images
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
【課題】開発時間の短縮および設計後の評価時間の短縮を可能とすること。
【解決手段】メモリ容量の異なる2種類以上のマイクロコンピュータのレイアウトを行うマイクロコンピュータのレイアウト方法において、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび前記周辺機能ブロックと前記周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用することを特徴とする。
【選択図】 図5
【解決手段】メモリ容量の異なる2種類以上のマイクロコンピュータのレイアウトを行うマイクロコンピュータのレイアウト方法において、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび前記周辺機能ブロックと前記周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用することを特徴とする。
【選択図】 図5
Description
【0001】
【発明の属する技術分野】
この発明は開発時間の短縮および設計後の評価時間の短縮が可能なマイクロコンピュータのレイアウト方法および設計方法に関するものである。
【0002】
【従来の技術】
マイクロコンピュータでは、外部との電気信号のやりとりをするためのワイヤボンド用のPAD(パッド)がチップの外郭部に配置されている。また、チップの内側部分には、CPUや様々なロジックを有する周辺機能などのブロックとマスクROM、EEPROMといったメモリのブロックが複数個配置されている。このようにマイクロコンピュータは通常複数の機能ブロックによって構成されている。このため、マイクロコンピュータのレイアウト設計は複雑となる。
【0003】
近年、半導体集積回路の大規模/高性能化に伴い、半導体集積回路のフロアプランといわれる概略のレイアウト設計がますます複雑となり、重要となってきている。
【0004】
一般に、マイクロコンピュータの設計は、以下のような段階を踏んでいる。まず、出力抵抗値や端子の入力しきい値などの製品に関わる特性が仕様通りの特性を出すように設計するための回路設計を行う。なお、端子の入力しきい値とは、電気信号をHighと認識するかLowと認識するかの境界を示す値のことをいう。次に、マイクロコンピュータが機能的に正しく動くように設計するための論理設計を行う。最後に、マイクロコンピュータが規定の動作周波数で正しく処理が実行されるように設計するためのタイミング設計を行う。
【0005】
従って、マイクロコンピュータのレイアウト設計を変更する場合、その都度上記のように回路設計、論理設計、タイミング設計の全てを行う必要があり、さらに、設計の変更に伴うそれぞれの設計評価を必要としている。このためマイクロコンピュータの変更に伴う設計やその評価は非常に時間がかかるものとなっている。
【0006】
ところが、マイクロコンピュータの設計においては、顧客の要望により同一の機能を有するが、メモリ容量やメモリの種類の異なる複数のチップを設計する必要が生じる場合があり、このような場合、従来は新たなマイクロコンピュータごとに再設計し、新たに設計評価をしており、設計効率が悪かった。
【0007】
そこで、最初に設計したマイクロコンピュータをもとに必要な部分だけ変更して新たなマイクロコンピュータを設計することが考えられる。
【0008】
特許文献1の半導体装置では、チップ上の中央部にCPUを配置し、CPUを挟んで一方にRAM領域を、他方にROM領域を配置している。またRAM領域では、RAM領域のRAM制御部とCPUが隣り合うよう配置され、ROM領域では、ROM領域のROM制御部とCPUが隣り合うよう接続されている。このような配置にすることによって、RAMまたはROMの記憶容量の変更をする際には、チップ中央部に配置したCPU等を固定し、両側のRAM領域またはROM領域をチップ内外方向に向けて増大または減少させればよくなる。
【0009】
【特許文献1】
特開平2−144957号公報(第2頁)
【0010】
【発明が解決しようとする課題】
上記従来技術によれば、RAMやROMの記憶容量を変更する場合、CPUを中央に固定し、2次元方向のうちの一次元方向のみにRAM領域,ROM領域を拡張、縮小してレイアウト変更を行うようにしているので、RAM,ROMの記憶容量の変更率に関係なく、チップの形状を長方形に維持することができるとともに、大きなレイアウト変更を行う必要もなくなる。
【0011】
しかし、この従来技術では、チップ上の中央部にCPUを配置し、その両側にRAM領域およびROM領域を配置した構成のチップには対応できるが、その他の配置構成を有するチップの場合は新たなレイアウト設計を必要とする。
【0012】
また、この従来技術では、RAM,ROMの記憶容量の変更に伴い、チップの長方形形状およびその大きさが変更される。チップの形状、大きさが変われば、チップの外郭部に配置されているパッドの位置、間隔は全く異なったものとなる。しかし、上記従来技術では、レイアウト変更前後での、パッドとCPUの配置関係、あるいはパッドとRAM,ROMとの配置関係に関しては何も開示されていない。このため、この従来技術では、RAM,ROMの記憶容量の変更に伴うレイアウト変更の際に、パッドとRAM,ROMとの配線、パッドとCPUとの配線、さらにはこれらの間のタイミング設計をやり直す必要があり、設計効率が悪いという問題がある。
【0013】
この発明は上記に鑑みてなされたもので、設計開発時間の短縮および設計後の評価時間の短縮が可能なマイクロコンピュータのレイアウト方法および設計方法を得ることを目的とする。
【0014】
【課題を解決するための手段】
上記目的を達成するため、この発明にかかるマイクロコンピュータのレイアウト方法は、チップの外郭部に配置されるワイヤボンド用のパッドと、CPUやロジックをまとめた周辺機能ブロックと、メモリユニットとを有するマイクロコンピュータに適用され、メモリ容量の異なる2種類以上のマイクロコンピュータのレイアウトを行うマイクロコンピュータのレイアウト方法において、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび前記周辺機能ブロックと前記周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用することを特徴とする。
【0015】
この発明によれば、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび周辺機能ブロックと周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用するようにしているので、レイアウトの変更箇所が少なくなり、開発期間の削減が可能となる。また、レイアウト変更の前後で周辺機能ブロックとパッドとの距離が変わらなくなるので、2つのマイクロコンピュータ間で周辺機能の特性が変わらなくなり、これにより後で作成するマイクロコンピュータは、周辺機能等のタイミング設計の再設計、再評価が不要となり、設計評価の省力化が可能になる。
【0016】
【発明の実施の形態】
以下、この発明にかかるマイクロコンピュータのレイアウト方法および設計方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0017】
実施の形態1.
図1〜図5に従ってこの発明の実施の形態1について説明する。図1は先に(例えば最初に)作成するマイクロコンピュータ51のレイアウト構成を示す図であり、図2は最初に作成するマイクロコンピュータ51のメモリ部分のみを変更して新たに作成するマイクロコンピュータ52(以下2つ目のマイクロコンピュータ52)の構成を示す図である。
【0018】
最初に作成するマイクロコンピュータ51は、外部と電気的なやり取りをするためのワイヤボンド用のパッド(PAD)1、CPUや様々なロジックをまとめたブロックである周辺機能等のブロック2a,3aおよびマスクROM、EPROM、EEPROM、DRAMまたはSRAM等で構成されるメモリ4,5で構成されている。
【0019】
このマイクロコンピュータ51はチップの外郭部(チップ内の外側部分)に沿うようにしてPAD1を複数配置している。また、このチップの外郭部に複数配置されたPAD1の内側には、周辺機能等のブロック2a,3aおよびメモリ4,5が配置されたレイアウト構成になっている。この場合、メモリ4,5が中央部に配置され、周辺機能等のブロック2a,3aがその両側に配置されている。同様に、2つ目のマイクロコンピュータ52も、図2に示すように、PAD1、周辺機能等のブロック2a,3a、メモリ5,6,7で構成されており、マイクロコンピュータ51と同様のレイアウト構成になっている。
【0020】
2つ目のマイクロコンピュータ52においては、最初に作成したマイクロコンピュータ51内のメモリ4,5以外の周辺機能等のブロック2a,3aのレイアウトは変更せず固定し、2つ目のマイクロコンピュータ52のレイアウトに流用して配置し、最初に作成したマイクロコンピュータ51内のメモリ4,5を、2つ目のマイクロコンピュータ52内のメモリ5,6,7に変更して配置することによって、レイアウトの変更を行っている。すなわち、両側に配置される周辺機能等のブロック2a,3aのレイアウトは固定し、中央部に配置されるメモリ5,6,7のレイアウトを変更している。
【0021】
図3及び図4は、外部とのやり取りが必要な周辺機能とPADとの位置関係を固定して、マイクロコンピュータのレイアウトを変更することを説明するための図である。
【0022】
図3は最初に作成するマイクロコンピュータ53の構成を示す図であり、図4は最初に作成するマイクロコンピュータ53のメモリ部分のみを変更して新たに作成するマイクロコンピュータ54(以下2つ目のマイクロコンピュータ54)の構成を示す図である。
【0023】
図3および図4において、周辺機能等のブロック2b,3bには、PAD1を介して外部と電気的にやり取りをするタイマや通信回路等が含まれている。また、外部と電気的にやり取りをするタイマや通信回路等の周辺機能が必要とするPADの一部として、複数のPADを含むブロック10,11を設けた構成としている。
【0024】
ここで、チップ上のPADの間隔は通常はチップサイズによって決定されるものである。そして、PADを介して外部と電気的にやり取りを行う回路部分は、配線長や配線幅の影響を受けるため、PADからの距離に応じた寄生抵抗や寄生容量をもつことになる。この寄生抵抗や寄生容量が外部入力からの信号を遅延させる原因となる。このためチップごとに寄生抵抗や寄生容量を算出し、マイクロコンピュータの性能を検証する必要がある。この性能に不具合が存在する場合は、設計修正を行わなければならない。通常、チップサイズを変更すると、PADを介して外部と電気的にやり取りを行う回路部分はPADからの距離が変わるため、チップスサイズの変更の前後で回路構成とレイアウトが不変でも、その都度再設計と再検証が必要となる。
【0025】
そこで、この実施の形態1においては、チップサイズの変更やメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)の変更に伴うマイクロコンピュータの設計変更と設計評価をより容易にするため、2つ目のマイクロコンピュータ54のレイアウト変更は以下のような手順により行う。
【0026】
図5は実施の形態1にかかるマイクロコンピュータのレイアウト変更方法を示すフローチャートである。
【0027】
マイクロコンピュータの設計者は、まず1つ目のマイクロコンピュータ53の設計を開始する。図3に示すように、1つ目のマイクロコンピュータ53は、チップの外郭部に沿うようにPAD1を複数配置したレイアウト構成にする。また、最初のマイクロコンピュータ53内のチップ外郭部に複数配置されたPAD1の内側は、周辺機能等のブロック2b,3bを両側に、メモリ4,5を中央部に配置したレイアウト構成にする(ステップS110)。
【0028】
次に、設計者は新たに作成するマイクロコンピュータの設計を始める(ステップS120)。設計者は、新たに作成するマイクロコンピュータの構成が最初に作成したマイクロコンピュータ53の構成をメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)のみ変更したものであるか否かを判断する(ステップS130)。
【0029】
設計者が、新たに作成するマイクロコンピュータの構成が最初に作成したマイクロコンピュータ53の構成をメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)のみ変更した構成ではないと判断した場合、新たに作成するマイクロコンピュータは最初から新たに設計、レイアウトを行う。
【0030】
設計者が新たに作成するマイクロコンピュータの構成が最初に作成したマイクロコンピュータ53に対してメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)のみを変更した構成であると判断した場合、新たに作成するマイクロコンピュータを先述した2つ目のマイクロコンピュータ54として設計を始める(ステップS140)。
【0031】
この実施の形態1においては、最初に作成したマイクロコンピュータ53から2つ目のマイクロコンピュータ54へのメモリ部分の変更として、2つのメモリ4,5から構成されているメモリ部分を3つのメモリ5,6,7から構成されるメモリ部分に変更する場合を考える。
【0032】
マイクロコンピュータ53からマイクロコンピュータ54への変更は、図3,4に示すように、最初に作成したマイクロコンピュータ53内のメモリ4,5以外の周辺機能等のブロック2b,3bやPADのブロック10、11等のレイアウトは変更せず固定し、2つ目のマイクロコンピュータ54のレイアウトに流用する。さらに、外部とやり取りの必要な周辺機能等のブロック2b,3bとこのブロック2b,3b内の回路と接続されるPADを含むブロック10,11の位置関係は固定し、最初に作成したマイクロコンピュータ53で配置したときの位置関係と同じになるよう配置する。次に、最初に作成したマイクロコンピュータ53内のメモリ4,5を2つ目のマイクロコンピュータ54内のメモリ5,6,7に変更して配置する。最後に、例えば、メモリ5,6,7と周辺機能等のブロック2bとを接続するための配線のレイアウト等を変更し、これで最初に作成したマイクロコンピュータ53から2つ目のマイクロコンピュータ54へのチップレイアウトの変更を完了する(ステップS150)。
【0033】
このように、この実施の形態1においては、最初に作成したマイクロコンピュータ53の設計レイアウトを一部利用して次に作成するマイクロコンピュータ54のレイアウトに流用するとともに、マイクロコンピュータ53の設計レイアウトを一部変更および/または追加して2つ目のマイクロコンピュータ54の設計レイアウトを行うようにしている。したがって、この際の変更部分はマイクロコンピュータ53内のメモリ部分の変更とメモリ部分に対応する配線部分だけとなる。また、最初に作成したマイクロコンピュータ53と2つ目のマイクロコンピュータ54の間では、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11の距離がレイアウト変更の前後で変わらなくなる。したがって、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11間における配線長、配線幅による寄生抵抗、寄生容量の影響もレイアウト変更前後で変わらないこととなる。
【0034】
なお、最初のマイクロコンピュータ53には2つのメモリ4,5が内蔵され、2つ目のマイクロコンピュータ54には3つのメモリ5,6,7が内蔵されている場合について説明したが、メモリの数、メモリの種類、メモリの容量はこれらに限定されるものではなく、種類、数、容量ともにどのような組み合わせでもよい。
【0035】
このように実施の形態1によれば、マイクロコンピュータ53のチップレイアウトからマイクロコンピュータ54のチップレイアウトに変更する場合、マイクロコンピュータ53に内蔵されているメモリ部分とメモリ部分に対応する配線部分を変更および/または追加するだけでよいため、フロアプランの見直しが不要となり、レイアウトの変更箇所が少なくなるため開発期間の削減が可能となる。また、最初に作成したマイクロコンピュータ53と2つ目のマイクロコンピュータ54の間では、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11の距離がレイアウト変更の前後で変わらなくなるので、周辺機能等の特性がレイアウト変更の前後で変わらない。そのため、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11間における配線長、配線幅による寄生抵抗、寄生容量の影響もレイアウト変更前後で変わらないこととなる。従って、2つ目のマイクロコンピュータ54は、周辺機能等のタイミング設計の再設計、再評価が不要となり、設計評価の省力化が可能になるという効果を奏する。
【0036】
実施の形態2.
図6,7に従ってこの発明の実施の形態2について説明する。この実施の形態2においては、ソフトマクロの一部とハードマクロの一部を固定して一つのハードマクロとして扱い、マイクロコンピュータのレイアウトを変更する。
【0037】
図6,7はこの発明の実施の形態2にかかるマイクロコンピュータ55,56の構成を示す図であり、最初に作成するマイクロコンピュータ55を変更して新たなマイクロコンピュータ56(以下2つ目のマイクロコンピュータ56)を作成する。
【0038】
実施の形態2においては、最初に作成するマイクロコンピュータ55は、図6に示すように、回路動作をある特定の回路技術言語で表した例えば通信回路等のソフトマクロブロック21、レイアウト構成をそのまま設計データとする例えばCPU等のハードマクロブロック22およびメモリとその他の周辺機能のブロック31で構成されている。マイクロコンピュータ55に内蔵されている回路は、ソフトマクロのブロックとしてソフトマクロブロック21、ハードマクロのブロックとしてハードマクロブロック22、これら以外のブロックとしてメモリとその他の周辺機能のブロック32と云うようにそれぞれのブロックごとに配置されている。
【0039】
同様に2つ目のマイクロコンピュータ56もソフトマクロブロック21、ハードマクロブロック22およびメモリとその他の周辺機能のブロック32で構成されており、ブロックごとに配置されている。
【0040】
一般にマイクロコンピュータの製造においては、1ショット内のチップ数が多いほど、ウエハ全面に露光する時の露光回数が少なくてすむため、露光時における1ショット内のチップ数(1枚のレチクルで、1度に露光できるチップ数)が多いほど、スループットが上がることが知られている。したがって、スループットを上げるためには、チップ形状の縦横のアスペクト比を最適化して、1ショット内のチップ数を多くする必要が生じる場合がある。チップ形状の縦横のアスペクト比を最適化する場合、マイクロコンピュータの機能が不変でも、マイクロコンピュータの再設計、再評価が必要となる。また、ハードマクロは論理合成、フロアプラン、レイアウト、タイミング検証を経過しているため設計ノウハウが追加されるという特徴を有する。
【0041】
そこで、実施の形態2ではチップ形状の縦横のアスペクト比の変更等に伴うマイクロコンピュータの設計変更と設計評価をより容易にするため、2つ目のマイクロコンピュータ56のレイアウト変更は以下のような手順で行う。
【0042】
図8は実施の形態2にかかるマイクロコンピュータのレイアウト変更方法を示すフローチャートである。マイクロコンピュータの設計者は、最初に作成するマイクロコンピュータ55の設計を開始する。
【0043】
最初に作成するマイクロコンピュータ55の設計においては、マイクロコンピュータ55に内蔵されている回路を、ソフトマクロのブロックとしてソフトマクロブロック21、ハードマクロのブロックとしてハードマクロブロック22、これら以外のブロックとしてメモリとその他の周辺機能のブロック31のようにそれぞれのブロックごとに配置したレイアウト構成にする(ステップS210)。
【0044】
次に、設計者は新たなマイクロコンピュータの設計を始める(ステップS220)。設計者は、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてソフトマクロブロック21をそのまま流用できるか否かを判断する(ステップS230)。
【0045】
設計者が最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてソフトマクロブロック21をそのまま流用できないと判断した場合は、ソフトマクロブロック21に対応する新たなソフトマクロブロックを設計する。
【0046】
設計者が、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてソフトマクロブロック21をそのまま流用できると判断した場合は、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてハードマクロブロック22をそのまま流用できるか否かを判断する(ステップS240)。
【0047】
設計者が、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてハードマクロブロック22をそのまま流用できないと判断した場合は、ハードマクロブロック22に対応する新たなハードマクロブロックを設計する。
【0048】
設計者が、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてハードマクロブロック22をそのまま流用できると判断した場合は、新たに作成するマイクロコンピュータを先述した2つ目のマイクロコンピュータ56として設計を始める(ステップS250)。
【0049】
マイクロコンピュータ56の設計においては、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータ56への変更においてソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱うことができるかどうかを検討する(ステップS260)。
【0050】
最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータ56への変更において、ソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱うことができないと判断した場合は、ソフトマクロブロック21とハードマクロブロック22をマイクロコンピュータ56のレイアウトにそれぞれ別々に流用して配置する。
【0051】
最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータ56への変更において、ソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱うことができると判断した場合は、このハードマクロブロック23をマイクロコンピュータ56のレイアウトに流用して配置する(ステップS270)。
【0052】
次に、メモリとその他の周辺機能のブロック31をメモリとその他の周辺機能のブロック32に変更して配置し(ステップS280)、最初に作成したマイクロコンピュータ55から2つ目のマイクロコンピュータ56へのチップレイアウトの変更を完了する。
【0053】
このようなレイアウト変更を行うことによって、最初に作成したマイクロコンピュータ55から2つ目のマイクロコンピュータ56へ変更する場合でも、ソフトマクロブロック21に合成ツールを使って異なる回路構成の論理レイアウトを作成する必要がない。また、先述したようにハードマクロは設計ノウハウが追加されるため、ハードマクロ化しておくとタイミング、消費電力などが明確になり設計のリスクが減少する。
【0054】
なお、ソフトマクロのブロックやハードマクロのブロックが複数存在する場合でも、ソフトマクロブロックとハードマクロブロックをまとめて1つのハードマクロブロックにすることが可能であれば、ブロックごとにハードマクロ化してマイクロコンピュータの変更時に流用することができる。
【0055】
このように実施の形態2によれば、最初に作成したマイクロコンピュータ55のソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱い、このハードマクロブロック23をマイクロコンピュータ56のレイアウトに流用して設計するので、最初に作成したマイクロコンピュータ55から2つ目のマイクロコンピュータ56へ変更する場合でも、ソフトマクロブロック21に合成ツールを使って異なる回路構成の論理レイアウトを作成する必要がない。したがって、最初に作成したマイクロコンピュータ55からチップ形状の縦横のアスペクト比が異なるマイクロコンピュータ56へ変更する場合でも、変更前後で特性の変わらない製品を容易に設計することが可能となる。
【0056】
実施の形態3.
図9を用いてこの発明の実施の形態3について説明する。この実施の形態3においては、メモリ部分(メモリの種類、メモリのブロック数、メモリの容量)が異なる複数のマイクロコンピュータを設計する場合、最大容量のメモリ領域サイズを有するマイクロコンピュータについてのタイミング検証のみを行い、その他の小容量のメモリ領域サイズを持つマイクロコンピュータのタイミング検証は行わない。
【0057】
ここで、小さい容量のメモリをもつマイクロコンピュータは、大きな容量のメモリをもつマイクロコンピュータより配線抵抗や配線の容量による遅延が小さい。このため、メモリ部分のみ異なる複数のマイクロコンピュータの設計において、メモリ部分以外の部分を全てハードマクロ化して考えた場合、最大容量のメモリをもつマイクロコンピュータでタイミング検証をしておけば、それより小さいメモリ容量のマイクロコンピュータのタイミング検証は最大容量のマイクロコンピュータのタイミング検証で代用することが可能である。
【0058】
そこで、実施の形態3においては、以下のような手順でマイクロコンピュータの設計およびその評価を行う。
【0059】
図9は実施の形態3にかかるマイクロコンピュータの設計手順を示すフローチャートである。
【0060】
マイクロコンピュータの設計者は、メモリ部分のみ異なる複数のマイクロコンピュータの中から1つのマイクロコンピュータを選び出し、設計を検討する(ステップS300)。ここでの設計の検討は、このマイクロコンピュータの論理設計、レイアウト設計、フロアプランの設計などである(ステップS310)。
【0061】
次に、このマイクロコンピュータのメモリ以外の部分を全てハードマクロとして扱う(ステップ320)。つぎに、メモリ部分の容量の変更があったとしても、メモリ以外の部分と各PADとの距離やメモリ以外の部分のロジックの配置が変わらないか否かと、メモリ以外の部分のタイミング検証が合格しているか否かを判定する(ステップS330)。
【0062】
この判定の結果、メモリ以外の部分と各PADとの距離やメモリ以外の部分のロジックの配置が変わったり、あるいはメモリ以外の部分のタイミング検証が不合格である場合は、このマイクロコンピュータの設計の再検討を行う(ステップS350)。
【0063】
このようにして、ステップS330の判定を合格するまでマイクロコンピュータを再設計する。
【0064】
ステップS330の判定を合格すると、複数のマイクロコンピュータのうち、最大容量のメモリを有するマイクロコンピュータを用いてタイミング検証を行う(ステップS340)。
【0065】
このようにして、最大容量のメモリを持つマイクロコンピュータのレイアウトプランが作成されると、他の小容量のメモリをもつマイクロコンピュータのタイミング検証を省略して、この後1チップ目のマイクロコンピュータの設計開発に着手する(ステップS360)。
【0066】
このように実施の形態3によれば、メモリ部分のみ異なる複数のマイクロコンピュータを設計する際、メモリ以外の部分をハードマクロ化した場合に、メモリ以外の部分が所定のタイミング検査を合格するまでメモリ以外の部分のレイアウトを繰り返し、メモリ以外の部分が所定のタイミング検査を合格するようなレイアウトが作成された後、最大容量のメモリ領域サイズで作成されたレイアウトのタイミング検査を行うようにしているので、他の小容量のメモリ部分を有するマイクロコンピュータのタイミング検証は、最大容量のメモリをもつマイクロコンピュータのタイミング検証で代用することが可能となり、それらのタイミング検証を省略することができる。したがって、メモリ部分のみ異なる複数のマイクロコンピュータを設計するにあたり、その全てについてタイミング検証を行う必要がなくなり、マイクロコンピュータの開発時間を削減することが可能となる。なお、上記実施の形態3では、最大容量のメモリ領域サイズで作成されたレイアウトのタイミング検査を行う場合について説明したが、所定のメモリ領域サイズをもつマイクロコンピュータで上記タイミング検査を行うことにより、1つ目のマイクロコンピュータのレイアウトプランを作成し、前記所定のメモリ領域サイズよりも小さなメモリ領域サイズを持つ、前記1つ目のマイクロコンピュータとは異なる2つ目以降のマイクロコンピュータについてはタイミング検証を省略するようにしても良い。
【0067】
【発明の効果】
以上説明したように、この発明によれば、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび周辺機能ブロックと周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用するようにしているので、レイアウトの変更箇所が少なくなり、開発期間の削減が可能となる。また、レイアウト変更の前後で周辺機能ブロックとパッドとの距離が変わらなくなるので、2つのマイクロコンピュータ間で周辺機能の特性が変わらなくなり、これにより後で作成するマイクロコンピュータは、周辺機能等のタイミング設計の再設計、再評価が不要となり、設計評価の省力化が可能になる。
【図面の簡単な説明】
【図1】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図2】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図3】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図4】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図5】実施の形態1の設計方法を示す説明するフローチャートである。
【図6】この発明の実施の形態2にかかるマイクロコンピュータの構成を示す図である。
【図7】この発明の実施の形態2にかかるマイクロコンピュータの構成を示す図である。
【図8】実施の形態2の設計方法を示す説明するフローチャートである。
【図9】実施の形態3の設計方法を示す説明するフローチャートである。
【符号の説明】
1 パッド(PAD)、2a,2b,3a,3b 周辺機能等のブロック、4〜7 メモリ、10,11 PADのブロック、21 ソフトマクロブロック、22,23 ハードマクロブロック、31,32 メモリとその他の周辺機能、51〜56 マイクロコンピュータ。
【発明の属する技術分野】
この発明は開発時間の短縮および設計後の評価時間の短縮が可能なマイクロコンピュータのレイアウト方法および設計方法に関するものである。
【0002】
【従来の技術】
マイクロコンピュータでは、外部との電気信号のやりとりをするためのワイヤボンド用のPAD(パッド)がチップの外郭部に配置されている。また、チップの内側部分には、CPUや様々なロジックを有する周辺機能などのブロックとマスクROM、EEPROMといったメモリのブロックが複数個配置されている。このようにマイクロコンピュータは通常複数の機能ブロックによって構成されている。このため、マイクロコンピュータのレイアウト設計は複雑となる。
【0003】
近年、半導体集積回路の大規模/高性能化に伴い、半導体集積回路のフロアプランといわれる概略のレイアウト設計がますます複雑となり、重要となってきている。
【0004】
一般に、マイクロコンピュータの設計は、以下のような段階を踏んでいる。まず、出力抵抗値や端子の入力しきい値などの製品に関わる特性が仕様通りの特性を出すように設計するための回路設計を行う。なお、端子の入力しきい値とは、電気信号をHighと認識するかLowと認識するかの境界を示す値のことをいう。次に、マイクロコンピュータが機能的に正しく動くように設計するための論理設計を行う。最後に、マイクロコンピュータが規定の動作周波数で正しく処理が実行されるように設計するためのタイミング設計を行う。
【0005】
従って、マイクロコンピュータのレイアウト設計を変更する場合、その都度上記のように回路設計、論理設計、タイミング設計の全てを行う必要があり、さらに、設計の変更に伴うそれぞれの設計評価を必要としている。このためマイクロコンピュータの変更に伴う設計やその評価は非常に時間がかかるものとなっている。
【0006】
ところが、マイクロコンピュータの設計においては、顧客の要望により同一の機能を有するが、メモリ容量やメモリの種類の異なる複数のチップを設計する必要が生じる場合があり、このような場合、従来は新たなマイクロコンピュータごとに再設計し、新たに設計評価をしており、設計効率が悪かった。
【0007】
そこで、最初に設計したマイクロコンピュータをもとに必要な部分だけ変更して新たなマイクロコンピュータを設計することが考えられる。
【0008】
特許文献1の半導体装置では、チップ上の中央部にCPUを配置し、CPUを挟んで一方にRAM領域を、他方にROM領域を配置している。またRAM領域では、RAM領域のRAM制御部とCPUが隣り合うよう配置され、ROM領域では、ROM領域のROM制御部とCPUが隣り合うよう接続されている。このような配置にすることによって、RAMまたはROMの記憶容量の変更をする際には、チップ中央部に配置したCPU等を固定し、両側のRAM領域またはROM領域をチップ内外方向に向けて増大または減少させればよくなる。
【0009】
【特許文献1】
特開平2−144957号公報(第2頁)
【0010】
【発明が解決しようとする課題】
上記従来技術によれば、RAMやROMの記憶容量を変更する場合、CPUを中央に固定し、2次元方向のうちの一次元方向のみにRAM領域,ROM領域を拡張、縮小してレイアウト変更を行うようにしているので、RAM,ROMの記憶容量の変更率に関係なく、チップの形状を長方形に維持することができるとともに、大きなレイアウト変更を行う必要もなくなる。
【0011】
しかし、この従来技術では、チップ上の中央部にCPUを配置し、その両側にRAM領域およびROM領域を配置した構成のチップには対応できるが、その他の配置構成を有するチップの場合は新たなレイアウト設計を必要とする。
【0012】
また、この従来技術では、RAM,ROMの記憶容量の変更に伴い、チップの長方形形状およびその大きさが変更される。チップの形状、大きさが変われば、チップの外郭部に配置されているパッドの位置、間隔は全く異なったものとなる。しかし、上記従来技術では、レイアウト変更前後での、パッドとCPUの配置関係、あるいはパッドとRAM,ROMとの配置関係に関しては何も開示されていない。このため、この従来技術では、RAM,ROMの記憶容量の変更に伴うレイアウト変更の際に、パッドとRAM,ROMとの配線、パッドとCPUとの配線、さらにはこれらの間のタイミング設計をやり直す必要があり、設計効率が悪いという問題がある。
【0013】
この発明は上記に鑑みてなされたもので、設計開発時間の短縮および設計後の評価時間の短縮が可能なマイクロコンピュータのレイアウト方法および設計方法を得ることを目的とする。
【0014】
【課題を解決するための手段】
上記目的を達成するため、この発明にかかるマイクロコンピュータのレイアウト方法は、チップの外郭部に配置されるワイヤボンド用のパッドと、CPUやロジックをまとめた周辺機能ブロックと、メモリユニットとを有するマイクロコンピュータに適用され、メモリ容量の異なる2種類以上のマイクロコンピュータのレイアウトを行うマイクロコンピュータのレイアウト方法において、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび前記周辺機能ブロックと前記周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用することを特徴とする。
【0015】
この発明によれば、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび周辺機能ブロックと周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用するようにしているので、レイアウトの変更箇所が少なくなり、開発期間の削減が可能となる。また、レイアウト変更の前後で周辺機能ブロックとパッドとの距離が変わらなくなるので、2つのマイクロコンピュータ間で周辺機能の特性が変わらなくなり、これにより後で作成するマイクロコンピュータは、周辺機能等のタイミング設計の再設計、再評価が不要となり、設計評価の省力化が可能になる。
【0016】
【発明の実施の形態】
以下、この発明にかかるマイクロコンピュータのレイアウト方法および設計方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0017】
実施の形態1.
図1〜図5に従ってこの発明の実施の形態1について説明する。図1は先に(例えば最初に)作成するマイクロコンピュータ51のレイアウト構成を示す図であり、図2は最初に作成するマイクロコンピュータ51のメモリ部分のみを変更して新たに作成するマイクロコンピュータ52(以下2つ目のマイクロコンピュータ52)の構成を示す図である。
【0018】
最初に作成するマイクロコンピュータ51は、外部と電気的なやり取りをするためのワイヤボンド用のパッド(PAD)1、CPUや様々なロジックをまとめたブロックである周辺機能等のブロック2a,3aおよびマスクROM、EPROM、EEPROM、DRAMまたはSRAM等で構成されるメモリ4,5で構成されている。
【0019】
このマイクロコンピュータ51はチップの外郭部(チップ内の外側部分)に沿うようにしてPAD1を複数配置している。また、このチップの外郭部に複数配置されたPAD1の内側には、周辺機能等のブロック2a,3aおよびメモリ4,5が配置されたレイアウト構成になっている。この場合、メモリ4,5が中央部に配置され、周辺機能等のブロック2a,3aがその両側に配置されている。同様に、2つ目のマイクロコンピュータ52も、図2に示すように、PAD1、周辺機能等のブロック2a,3a、メモリ5,6,7で構成されており、マイクロコンピュータ51と同様のレイアウト構成になっている。
【0020】
2つ目のマイクロコンピュータ52においては、最初に作成したマイクロコンピュータ51内のメモリ4,5以外の周辺機能等のブロック2a,3aのレイアウトは変更せず固定し、2つ目のマイクロコンピュータ52のレイアウトに流用して配置し、最初に作成したマイクロコンピュータ51内のメモリ4,5を、2つ目のマイクロコンピュータ52内のメモリ5,6,7に変更して配置することによって、レイアウトの変更を行っている。すなわち、両側に配置される周辺機能等のブロック2a,3aのレイアウトは固定し、中央部に配置されるメモリ5,6,7のレイアウトを変更している。
【0021】
図3及び図4は、外部とのやり取りが必要な周辺機能とPADとの位置関係を固定して、マイクロコンピュータのレイアウトを変更することを説明するための図である。
【0022】
図3は最初に作成するマイクロコンピュータ53の構成を示す図であり、図4は最初に作成するマイクロコンピュータ53のメモリ部分のみを変更して新たに作成するマイクロコンピュータ54(以下2つ目のマイクロコンピュータ54)の構成を示す図である。
【0023】
図3および図4において、周辺機能等のブロック2b,3bには、PAD1を介して外部と電気的にやり取りをするタイマや通信回路等が含まれている。また、外部と電気的にやり取りをするタイマや通信回路等の周辺機能が必要とするPADの一部として、複数のPADを含むブロック10,11を設けた構成としている。
【0024】
ここで、チップ上のPADの間隔は通常はチップサイズによって決定されるものである。そして、PADを介して外部と電気的にやり取りを行う回路部分は、配線長や配線幅の影響を受けるため、PADからの距離に応じた寄生抵抗や寄生容量をもつことになる。この寄生抵抗や寄生容量が外部入力からの信号を遅延させる原因となる。このためチップごとに寄生抵抗や寄生容量を算出し、マイクロコンピュータの性能を検証する必要がある。この性能に不具合が存在する場合は、設計修正を行わなければならない。通常、チップサイズを変更すると、PADを介して外部と電気的にやり取りを行う回路部分はPADからの距離が変わるため、チップスサイズの変更の前後で回路構成とレイアウトが不変でも、その都度再設計と再検証が必要となる。
【0025】
そこで、この実施の形態1においては、チップサイズの変更やメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)の変更に伴うマイクロコンピュータの設計変更と設計評価をより容易にするため、2つ目のマイクロコンピュータ54のレイアウト変更は以下のような手順により行う。
【0026】
図5は実施の形態1にかかるマイクロコンピュータのレイアウト変更方法を示すフローチャートである。
【0027】
マイクロコンピュータの設計者は、まず1つ目のマイクロコンピュータ53の設計を開始する。図3に示すように、1つ目のマイクロコンピュータ53は、チップの外郭部に沿うようにPAD1を複数配置したレイアウト構成にする。また、最初のマイクロコンピュータ53内のチップ外郭部に複数配置されたPAD1の内側は、周辺機能等のブロック2b,3bを両側に、メモリ4,5を中央部に配置したレイアウト構成にする(ステップS110)。
【0028】
次に、設計者は新たに作成するマイクロコンピュータの設計を始める(ステップS120)。設計者は、新たに作成するマイクロコンピュータの構成が最初に作成したマイクロコンピュータ53の構成をメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)のみ変更したものであるか否かを判断する(ステップS130)。
【0029】
設計者が、新たに作成するマイクロコンピュータの構成が最初に作成したマイクロコンピュータ53の構成をメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)のみ変更した構成ではないと判断した場合、新たに作成するマイクロコンピュータは最初から新たに設計、レイアウトを行う。
【0030】
設計者が新たに作成するマイクロコンピュータの構成が最初に作成したマイクロコンピュータ53に対してメモリ部分(メモリの種類、メモリのブロック数、メモリの容量)のみを変更した構成であると判断した場合、新たに作成するマイクロコンピュータを先述した2つ目のマイクロコンピュータ54として設計を始める(ステップS140)。
【0031】
この実施の形態1においては、最初に作成したマイクロコンピュータ53から2つ目のマイクロコンピュータ54へのメモリ部分の変更として、2つのメモリ4,5から構成されているメモリ部分を3つのメモリ5,6,7から構成されるメモリ部分に変更する場合を考える。
【0032】
マイクロコンピュータ53からマイクロコンピュータ54への変更は、図3,4に示すように、最初に作成したマイクロコンピュータ53内のメモリ4,5以外の周辺機能等のブロック2b,3bやPADのブロック10、11等のレイアウトは変更せず固定し、2つ目のマイクロコンピュータ54のレイアウトに流用する。さらに、外部とやり取りの必要な周辺機能等のブロック2b,3bとこのブロック2b,3b内の回路と接続されるPADを含むブロック10,11の位置関係は固定し、最初に作成したマイクロコンピュータ53で配置したときの位置関係と同じになるよう配置する。次に、最初に作成したマイクロコンピュータ53内のメモリ4,5を2つ目のマイクロコンピュータ54内のメモリ5,6,7に変更して配置する。最後に、例えば、メモリ5,6,7と周辺機能等のブロック2bとを接続するための配線のレイアウト等を変更し、これで最初に作成したマイクロコンピュータ53から2つ目のマイクロコンピュータ54へのチップレイアウトの変更を完了する(ステップS150)。
【0033】
このように、この実施の形態1においては、最初に作成したマイクロコンピュータ53の設計レイアウトを一部利用して次に作成するマイクロコンピュータ54のレイアウトに流用するとともに、マイクロコンピュータ53の設計レイアウトを一部変更および/または追加して2つ目のマイクロコンピュータ54の設計レイアウトを行うようにしている。したがって、この際の変更部分はマイクロコンピュータ53内のメモリ部分の変更とメモリ部分に対応する配線部分だけとなる。また、最初に作成したマイクロコンピュータ53と2つ目のマイクロコンピュータ54の間では、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11の距離がレイアウト変更の前後で変わらなくなる。したがって、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11間における配線長、配線幅による寄生抵抗、寄生容量の影響もレイアウト変更前後で変わらないこととなる。
【0034】
なお、最初のマイクロコンピュータ53には2つのメモリ4,5が内蔵され、2つ目のマイクロコンピュータ54には3つのメモリ5,6,7が内蔵されている場合について説明したが、メモリの数、メモリの種類、メモリの容量はこれらに限定されるものではなく、種類、数、容量ともにどのような組み合わせでもよい。
【0035】
このように実施の形態1によれば、マイクロコンピュータ53のチップレイアウトからマイクロコンピュータ54のチップレイアウトに変更する場合、マイクロコンピュータ53に内蔵されているメモリ部分とメモリ部分に対応する配線部分を変更および/または追加するだけでよいため、フロアプランの見直しが不要となり、レイアウトの変更箇所が少なくなるため開発期間の削減が可能となる。また、最初に作成したマイクロコンピュータ53と2つ目のマイクロコンピュータ54の間では、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11の距離がレイアウト変更の前後で変わらなくなるので、周辺機能等の特性がレイアウト変更の前後で変わらない。そのため、外部とやり取りの必要な周辺機能等のブロック2b,3bとPADのブロック10,11間における配線長、配線幅による寄生抵抗、寄生容量の影響もレイアウト変更前後で変わらないこととなる。従って、2つ目のマイクロコンピュータ54は、周辺機能等のタイミング設計の再設計、再評価が不要となり、設計評価の省力化が可能になるという効果を奏する。
【0036】
実施の形態2.
図6,7に従ってこの発明の実施の形態2について説明する。この実施の形態2においては、ソフトマクロの一部とハードマクロの一部を固定して一つのハードマクロとして扱い、マイクロコンピュータのレイアウトを変更する。
【0037】
図6,7はこの発明の実施の形態2にかかるマイクロコンピュータ55,56の構成を示す図であり、最初に作成するマイクロコンピュータ55を変更して新たなマイクロコンピュータ56(以下2つ目のマイクロコンピュータ56)を作成する。
【0038】
実施の形態2においては、最初に作成するマイクロコンピュータ55は、図6に示すように、回路動作をある特定の回路技術言語で表した例えば通信回路等のソフトマクロブロック21、レイアウト構成をそのまま設計データとする例えばCPU等のハードマクロブロック22およびメモリとその他の周辺機能のブロック31で構成されている。マイクロコンピュータ55に内蔵されている回路は、ソフトマクロのブロックとしてソフトマクロブロック21、ハードマクロのブロックとしてハードマクロブロック22、これら以外のブロックとしてメモリとその他の周辺機能のブロック32と云うようにそれぞれのブロックごとに配置されている。
【0039】
同様に2つ目のマイクロコンピュータ56もソフトマクロブロック21、ハードマクロブロック22およびメモリとその他の周辺機能のブロック32で構成されており、ブロックごとに配置されている。
【0040】
一般にマイクロコンピュータの製造においては、1ショット内のチップ数が多いほど、ウエハ全面に露光する時の露光回数が少なくてすむため、露光時における1ショット内のチップ数(1枚のレチクルで、1度に露光できるチップ数)が多いほど、スループットが上がることが知られている。したがって、スループットを上げるためには、チップ形状の縦横のアスペクト比を最適化して、1ショット内のチップ数を多くする必要が生じる場合がある。チップ形状の縦横のアスペクト比を最適化する場合、マイクロコンピュータの機能が不変でも、マイクロコンピュータの再設計、再評価が必要となる。また、ハードマクロは論理合成、フロアプラン、レイアウト、タイミング検証を経過しているため設計ノウハウが追加されるという特徴を有する。
【0041】
そこで、実施の形態2ではチップ形状の縦横のアスペクト比の変更等に伴うマイクロコンピュータの設計変更と設計評価をより容易にするため、2つ目のマイクロコンピュータ56のレイアウト変更は以下のような手順で行う。
【0042】
図8は実施の形態2にかかるマイクロコンピュータのレイアウト変更方法を示すフローチャートである。マイクロコンピュータの設計者は、最初に作成するマイクロコンピュータ55の設計を開始する。
【0043】
最初に作成するマイクロコンピュータ55の設計においては、マイクロコンピュータ55に内蔵されている回路を、ソフトマクロのブロックとしてソフトマクロブロック21、ハードマクロのブロックとしてハードマクロブロック22、これら以外のブロックとしてメモリとその他の周辺機能のブロック31のようにそれぞれのブロックごとに配置したレイアウト構成にする(ステップS210)。
【0044】
次に、設計者は新たなマイクロコンピュータの設計を始める(ステップS220)。設計者は、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてソフトマクロブロック21をそのまま流用できるか否かを判断する(ステップS230)。
【0045】
設計者が最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてソフトマクロブロック21をそのまま流用できないと判断した場合は、ソフトマクロブロック21に対応する新たなソフトマクロブロックを設計する。
【0046】
設計者が、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてソフトマクロブロック21をそのまま流用できると判断した場合は、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてハードマクロブロック22をそのまま流用できるか否かを判断する(ステップS240)。
【0047】
設計者が、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてハードマクロブロック22をそのまま流用できないと判断した場合は、ハードマクロブロック22に対応する新たなハードマクロブロックを設計する。
【0048】
設計者が、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータへの変更においてハードマクロブロック22をそのまま流用できると判断した場合は、新たに作成するマイクロコンピュータを先述した2つ目のマイクロコンピュータ56として設計を始める(ステップS250)。
【0049】
マイクロコンピュータ56の設計においては、最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータ56への変更においてソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱うことができるかどうかを検討する(ステップS260)。
【0050】
最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータ56への変更において、ソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱うことができないと判断した場合は、ソフトマクロブロック21とハードマクロブロック22をマイクロコンピュータ56のレイアウトにそれぞれ別々に流用して配置する。
【0051】
最初に作成したマイクロコンピュータ55から新たに作成するマイクロコンピュータ56への変更において、ソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱うことができると判断した場合は、このハードマクロブロック23をマイクロコンピュータ56のレイアウトに流用して配置する(ステップS270)。
【0052】
次に、メモリとその他の周辺機能のブロック31をメモリとその他の周辺機能のブロック32に変更して配置し(ステップS280)、最初に作成したマイクロコンピュータ55から2つ目のマイクロコンピュータ56へのチップレイアウトの変更を完了する。
【0053】
このようなレイアウト変更を行うことによって、最初に作成したマイクロコンピュータ55から2つ目のマイクロコンピュータ56へ変更する場合でも、ソフトマクロブロック21に合成ツールを使って異なる回路構成の論理レイアウトを作成する必要がない。また、先述したようにハードマクロは設計ノウハウが追加されるため、ハードマクロ化しておくとタイミング、消費電力などが明確になり設計のリスクが減少する。
【0054】
なお、ソフトマクロのブロックやハードマクロのブロックが複数存在する場合でも、ソフトマクロブロックとハードマクロブロックをまとめて1つのハードマクロブロックにすることが可能であれば、ブロックごとにハードマクロ化してマイクロコンピュータの変更時に流用することができる。
【0055】
このように実施の形態2によれば、最初に作成したマイクロコンピュータ55のソフトマクロブロック21とハードマクロブロック22を1つのハードマクロブロック23として扱い、このハードマクロブロック23をマイクロコンピュータ56のレイアウトに流用して設計するので、最初に作成したマイクロコンピュータ55から2つ目のマイクロコンピュータ56へ変更する場合でも、ソフトマクロブロック21に合成ツールを使って異なる回路構成の論理レイアウトを作成する必要がない。したがって、最初に作成したマイクロコンピュータ55からチップ形状の縦横のアスペクト比が異なるマイクロコンピュータ56へ変更する場合でも、変更前後で特性の変わらない製品を容易に設計することが可能となる。
【0056】
実施の形態3.
図9を用いてこの発明の実施の形態3について説明する。この実施の形態3においては、メモリ部分(メモリの種類、メモリのブロック数、メモリの容量)が異なる複数のマイクロコンピュータを設計する場合、最大容量のメモリ領域サイズを有するマイクロコンピュータについてのタイミング検証のみを行い、その他の小容量のメモリ領域サイズを持つマイクロコンピュータのタイミング検証は行わない。
【0057】
ここで、小さい容量のメモリをもつマイクロコンピュータは、大きな容量のメモリをもつマイクロコンピュータより配線抵抗や配線の容量による遅延が小さい。このため、メモリ部分のみ異なる複数のマイクロコンピュータの設計において、メモリ部分以外の部分を全てハードマクロ化して考えた場合、最大容量のメモリをもつマイクロコンピュータでタイミング検証をしておけば、それより小さいメモリ容量のマイクロコンピュータのタイミング検証は最大容量のマイクロコンピュータのタイミング検証で代用することが可能である。
【0058】
そこで、実施の形態3においては、以下のような手順でマイクロコンピュータの設計およびその評価を行う。
【0059】
図9は実施の形態3にかかるマイクロコンピュータの設計手順を示すフローチャートである。
【0060】
マイクロコンピュータの設計者は、メモリ部分のみ異なる複数のマイクロコンピュータの中から1つのマイクロコンピュータを選び出し、設計を検討する(ステップS300)。ここでの設計の検討は、このマイクロコンピュータの論理設計、レイアウト設計、フロアプランの設計などである(ステップS310)。
【0061】
次に、このマイクロコンピュータのメモリ以外の部分を全てハードマクロとして扱う(ステップ320)。つぎに、メモリ部分の容量の変更があったとしても、メモリ以外の部分と各PADとの距離やメモリ以外の部分のロジックの配置が変わらないか否かと、メモリ以外の部分のタイミング検証が合格しているか否かを判定する(ステップS330)。
【0062】
この判定の結果、メモリ以外の部分と各PADとの距離やメモリ以外の部分のロジックの配置が変わったり、あるいはメモリ以外の部分のタイミング検証が不合格である場合は、このマイクロコンピュータの設計の再検討を行う(ステップS350)。
【0063】
このようにして、ステップS330の判定を合格するまでマイクロコンピュータを再設計する。
【0064】
ステップS330の判定を合格すると、複数のマイクロコンピュータのうち、最大容量のメモリを有するマイクロコンピュータを用いてタイミング検証を行う(ステップS340)。
【0065】
このようにして、最大容量のメモリを持つマイクロコンピュータのレイアウトプランが作成されると、他の小容量のメモリをもつマイクロコンピュータのタイミング検証を省略して、この後1チップ目のマイクロコンピュータの設計開発に着手する(ステップS360)。
【0066】
このように実施の形態3によれば、メモリ部分のみ異なる複数のマイクロコンピュータを設計する際、メモリ以外の部分をハードマクロ化した場合に、メモリ以外の部分が所定のタイミング検査を合格するまでメモリ以外の部分のレイアウトを繰り返し、メモリ以外の部分が所定のタイミング検査を合格するようなレイアウトが作成された後、最大容量のメモリ領域サイズで作成されたレイアウトのタイミング検査を行うようにしているので、他の小容量のメモリ部分を有するマイクロコンピュータのタイミング検証は、最大容量のメモリをもつマイクロコンピュータのタイミング検証で代用することが可能となり、それらのタイミング検証を省略することができる。したがって、メモリ部分のみ異なる複数のマイクロコンピュータを設計するにあたり、その全てについてタイミング検証を行う必要がなくなり、マイクロコンピュータの開発時間を削減することが可能となる。なお、上記実施の形態3では、最大容量のメモリ領域サイズで作成されたレイアウトのタイミング検査を行う場合について説明したが、所定のメモリ領域サイズをもつマイクロコンピュータで上記タイミング検査を行うことにより、1つ目のマイクロコンピュータのレイアウトプランを作成し、前記所定のメモリ領域サイズよりも小さなメモリ領域サイズを持つ、前記1つ目のマイクロコンピュータとは異なる2つ目以降のマイクロコンピュータについてはタイミング検証を省略するようにしても良い。
【0067】
【発明の効果】
以上説明したように、この発明によれば、先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび周辺機能ブロックと周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用するようにしているので、レイアウトの変更箇所が少なくなり、開発期間の削減が可能となる。また、レイアウト変更の前後で周辺機能ブロックとパッドとの距離が変わらなくなるので、2つのマイクロコンピュータ間で周辺機能の特性が変わらなくなり、これにより後で作成するマイクロコンピュータは、周辺機能等のタイミング設計の再設計、再評価が不要となり、設計評価の省力化が可能になる。
【図面の簡単な説明】
【図1】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図2】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図3】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図4】この発明の実施の形態1にかかるマイクロコンピュータの構成を示す図である。
【図5】実施の形態1の設計方法を示す説明するフローチャートである。
【図6】この発明の実施の形態2にかかるマイクロコンピュータの構成を示す図である。
【図7】この発明の実施の形態2にかかるマイクロコンピュータの構成を示す図である。
【図8】実施の形態2の設計方法を示す説明するフローチャートである。
【図9】実施の形態3の設計方法を示す説明するフローチャートである。
【符号の説明】
1 パッド(PAD)、2a,2b,3a,3b 周辺機能等のブロック、4〜7 メモリ、10,11 PADのブロック、21 ソフトマクロブロック、22,23 ハードマクロブロック、31,32 メモリとその他の周辺機能、51〜56 マイクロコンピュータ。
Claims (5)
- チップの外郭部に配置されるワイヤボンド用のパッドと、CPUやロジックをまとめた周辺機能ブロックと、メモリユニットとを有するマイクロコンピュータに適用され、メモリ容量の異なる2種類以上のマイクロコンピュータのレイアウトを行うマイクロコンピュータのレイアウト方法において、
先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび前記周辺機能ブロックと前記周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用することを特徴とするマイクロコンピュータのレイアウト方法。 - チップの外郭部に配置されるワイヤボンド用のパッドと、CPUやロジックをまとめた周辺機能ブロックと、メモリユニットとを有するマイクロコンピュータに適用され、メモリの種類の異なる2種類以上のマイクロコンピュータのレイアウトを行うマイクロコンピュータのレイアウト方法において、
先にレイアウトを作成したマイクロコンピュータの周辺機能ブロックのレイアウトおよび前記周辺機能ブロックと前記周辺機能ブロックに接続するパッドとの位置関係を変更せずに後で作成するマイクロコンピュータのレイアウトに流用することを特徴とするマイクロコンピュータのレイアウト方法。 - 1〜複数のハードマクロブロックと、1〜複数のソフトマクロブロックと、これら以外の周辺機能ブロックとを有するマイクロコンピュータのレイアウト方法において、
先にレイアウトを終了したマイクロコンピュータに含まれる1〜複数のハードマクロブロックおよび1〜複数のソフトマクロブロックをまとめて1つの新たなハードマクロブロックとして扱い、この新たなハードマクロブロックを新たに作成するマイクロコンピュータのレイアウトに流用して配置することを特徴とするマイクロコンピュータのレイアウト方法。 - メモリ領域サイズの異なる2種類以上のマイクロコンピュータの設計を行うマイクロコンピュータの設計方法において、
メモリ以外の部分をハードマクロ化した場合に、メモリ領域の大きさの変更があったとしてもメモリ領域以外の部分が所定のタイミング検査を合格するまでメモリ以外の部分のレイアウトを実行し、その後所定のメモリ領域サイズをもつマイクロコンピュータで上記タイミング検査を行うことにより、1つ目のマイクロコンピュータのレイアウトプランを作成し、前記所定のメモリ領域サイズよりも小さなメモリ領域サイズを持つ、前記1つ目のマイクロコンピュータとは異なる2つ目以降のマイクロコンピュータについてはタイミング検証を省略するようにしたことを特徴とするマイクロコンピュータの設計方法。 - 請求項1〜3のいずれか1つのレイアウト方法を用いて作成されたマイクロコンピュータ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003002494A JP2004214564A (ja) | 2003-01-08 | 2003-01-08 | マイクロコンピュータのレイアウト方法および設計方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003002494A JP2004214564A (ja) | 2003-01-08 | 2003-01-08 | マイクロコンピュータのレイアウト方法および設計方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004214564A true JP2004214564A (ja) | 2004-07-29 |
Family
ID=32820222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003002494A Pending JP2004214564A (ja) | 2003-01-08 | 2003-01-08 | マイクロコンピュータのレイアウト方法および設計方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004214564A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101297754B1 (ko) * | 2006-07-11 | 2013-08-26 | 삼성전자주식회사 | 메모리 컴파일링 시스템 및 컴파일링 방법 |
JP2019522820A (ja) * | 2016-07-19 | 2019-08-15 | エーエスエムエル ネザーランズ ビー.ブイ. | リソグラフィステップにおける基板に施されるべきパターンの組み合わせの決定 |
-
2003
- 2003-01-08 JP JP2003002494A patent/JP2004214564A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101297754B1 (ko) * | 2006-07-11 | 2013-08-26 | 삼성전자주식회사 | 메모리 컴파일링 시스템 및 컴파일링 방법 |
JP2019522820A (ja) * | 2016-07-19 | 2019-08-15 | エーエスエムエル ネザーランズ ビー.ブイ. | リソグラフィステップにおける基板に施されるべきパターンの組み合わせの決定 |
US11747738B2 (en) | 2016-07-19 | 2023-09-05 | Asml Netherlands B.V. | Determining the combination of patterns to be applied to a substrate in a lithography step |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10553574B2 (en) | Standard cell for removing routing interference between adjacent pins and device including the same | |
JP2009065056A (ja) | 半導体集積回路のレイアウト方法、レイアウトプログラム、及びレイアウト装置 | |
US20060242613A1 (en) | Automatic floorplanning approach for semiconductor integrated circuit | |
JP2007027290A (ja) | 半導体集積回路のレイアウト設計方法 | |
US20050172253A1 (en) | Automatic placement and routing device, method for placement and routing of semiconductor device, semiconductor device and manufacturing method of the same | |
JP4274814B2 (ja) | 半導体集積回路の設計方法、設計装置、セルライブラリのデータ構造および自動レイアウトプログラム | |
EP3256969A1 (en) | Intellectual property block design with folded blocks and duplicated pins for 3d integrated circuits | |
CN112699631B (zh) | 解决布线通道拐角处布线拥塞问题的设计优化方法 | |
JP2001306641A (ja) | 半導体集積回路の自動配置配線方法 | |
KR20170094744A (ko) | 집적 회로 및 상기 집적 회로의 제조를 위한 컴퓨터 구현 방법 | |
JP2004214564A (ja) | マイクロコンピュータのレイアウト方法および設計方法 | |
US6622293B1 (en) | Method and system for designing wire layout without causing antenna error | |
JP3647686B2 (ja) | 半導体集積回路の設計方法および半導体集積回路の製造方法 | |
JP3530459B2 (ja) | 半導体集積回路のレイアウト方法 | |
US6934925B2 (en) | Method for designing semiconductor circuit | |
JP4071507B2 (ja) | 半導体集積回路の階層レイアウト方法 | |
JP3017038B2 (ja) | 半導体集積回路の設計方式 | |
JP3705737B2 (ja) | 半導体集積回路のレイアウト方法 | |
JP3204381B2 (ja) | 半導体装置の自動配置配線方法 | |
JP2003023082A (ja) | 半導体集積回路装置の階層レイアウト設計方法およびその方法をコンピュータに実行させるプログラム | |
JPH08316328A (ja) | 半導体装置の設計方法及び設計装置 | |
CN115081371A (zh) | 基于ip核的布局范围约束实现的fpga布局方法 | |
JP2001267430A (ja) | マクロセル配置装置およびマクロセル配置方法 | |
JP2000349160A (ja) | マクロ自動配置方法 | |
JP2002134621A (ja) | マスクデータ合成方法、マスクデータ検証方法及び半導体集積装置 |