首页 / 专利库 / 电子零件及设备 / 可编程逻辑器件 / 现场可编程门阵列 / Semiconductor integrated circuit and designing method therefor

Semiconductor integrated circuit and designing method therefor

阅读:103发布:2023-06-08

专利汇可以提供Semiconductor integrated circuit and designing method therefor专利检索,专利查询,专利分析的服务。并且PURPOSE: To provide a method which efficiently improves the degree of freedom in constituting and wiring programmable logic blocks in a field programmable gate array (FPGA), enables the extension of the range of design application and the improvement of the degree of integration, and is used to build programmable logic block libraries and comfortable design environments.
CONSTITUTION: Programmable logic blocks 3a-3c in a block library containing information about a plurality of programmable logic blocks, are placed in the core region on a semiconductor integrated circuit 100. This enhances the degree of freedom in FPGA designing, leading to higher degrees of integration. That makes it possible to provide logic LSIs with redundancy and flexibly respond to changes in design, reducing the length of the duration and cost of development.
COPYRIGHT: (C)1994,JPO&Japio,下面是Semiconductor integrated circuit and designing method therefor专利的具体信息内容。

【特許請求の範囲】
  • 【請求項1】 半導体集積回路の設計方法であって、 (a)所定の複数の論理機能をマクロセルの情報として備えるマクロセルライブラリを準備する工程と、 (b)前記マクロセルライブラリから選択した少なくとも一つの前記マクロセルを用いてプログラム可能論理ブロックを構成する工程と、 (c)前記プログラム可能論理ブロックを前記半導体集積回路の所定の位置に配置する工程と、 (d)前記工程(b),(c)を所定の回数実行する工程と、を備え、 前記プログラム可能論理ブロックにおいては複数の論理機能が準備されており、前記プログラム可能論理ブロックは制御信号を受けて一の前記論理機能を選択する、半導体集積回路の設計方法。
  • 【請求項2】 半導体集積回路の設計方法であって、 (a)複数の種類のプログラム可能論理ブロックを有するブロックライブラリから一の前記プログラム可能論理ブロックの選択を行う工程と、 (b)前記一のプログラム可能論理ブロックを前記半導体集積回路の所定の位置に配置する工程と、 (c)前記工程(a),(b)を所定の回数実行する工程と、を備え、 前記プログラム可能論理ブロックにおいては複数の論理機能が準備されており、前記プログラム可能論理ブロックは制御信号を受けて一の前記論理機能を選択する、半導体集積回路の設計方法。
  • 【請求項3】 前記プログラム可能論理ブロックは入出力ピンを備え、 前記ブロックライブラリにおいて、前記プログラム可能論理ブロックは前記入出力ピンの数を基準として分類されている、請求項2記載の半導体集積回路の設計方法。
  • 【請求項4】 前記プログラム可能論理ブロックは入出力ピンを備え、 前記ブロックライブラリにおいて、前記プログラム可能論理ブロックは前記入出力ピンの数及び前記プログラム可能論理ブロックにおいて準備されている前記論理機能を基準として分類されている、請求項2記載の半導体集積回路の設計方法。
  • 【請求項5】 前記プログラム可能論理ブロックにおいて準備されている前記複数の論理機能は一の主機能と、
    少なくとも一つの副機能に分類され、 前記ブロックライブラリにおいて、 前記プログラム可能論理ブロックは、その有する主機能を基準として分類されている、請求項2記載の半導体集積回路の設計方法。
  • 【請求項6】 前記主機能は、単一の前記制御信号によって選択される、請求項5記載の半導体集積回路の設計方法。
  • 【請求項7】 前記プログラム可能論理ブロックは、 前記単一の制御信号が与えられるリセット端子と、前記プログラム可能論理ブロックにおいて準備されている前記論理機能を選択する情報を記憶するプログラム記憶素子と、を有する機能選択部を備え、 前記単一の制御信号が所定の論理値をとる場合には、前記プログラム記憶素子の記憶する前記情報にかかわらずに前記主機能が選択される、請求項2記載の半導体集積回路の設計方法。
  • 【請求項8】 前記リセット端子は前記プログラム記憶素子をリセットする、請求項7記載の半導体集積回路の設計方法。
  • 【請求項9】 前記機能選択部は、前記プログラム記憶素子の記憶する前記情報と前記単一の制御信号との論理和をとるANDゲートを更に有し、前記プログラム可能論理ブロックにおいて準備されている前記論理機能の前記選択は、前記ANDゲートの出力にもとづいてなされる、請求項7記載の半導体集積回路の設計方法。
  • 【請求項10】 コア領域と、 前記コア領域において形成され、複数の種類のプログラム可能論理ブロックを有するライブラリから選択された少なくとも一つのプログラム可能論理ブロックと、を備え、 前記プログラム可能論理ブロックにおいては複数の論理機能がを準備されており、前記プログラム可能論理ブロックは制御信号を受けて一の前記論理機能を選択する半導体集積回路。
  • 【請求項11】 前記コア領域にゲートアレイ領域を更に備える請求項10記載の半導体集積回路。
  • 【請求項12】 前記コア領域に、機能が固定された機能固定回路を更に備える請求項10記載の半導体集積回路。
  • 【請求項13】 前記コア領域に、ゲートアレイ領域を更に備える請求項12記載の半導体集積回路。
  • 【請求項14】 前記プログラム可能論理ブロックは前記ゲートアレイ領域において構成される、請求項11記載の半導体集積回路。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【産業上の利用分野】この発明は、プログラム可能論理ブロックを有する半導体集積回路に関する。

    【0002】

    【従来の技術】近年、電子回路装置の進展は急速で、性能、機能の高い装置を短期に開発する傾向がますます加速されている。 従って、このような電子回路装置の短期開発の鍵となる集積回路装置も、短期間に高性能、高機能なものを開発する必要がある。 この様な背景により、
    プログラムによって様々な機能を実現できるフィールドプログラマブルゲートアレイ(以下「FPGA」)と呼ばれる半導体集積回路が実用化されている。

    【0003】図31は従来の技術であるFPGAの例を示す配置図である。 半導体集積回路装置1は、チップの周囲に入出バッファ2を、入出力バッファ2が囲むコア領域にプログラム可能論理回路ブロック300、各入出力バッファ回路2と各プログラム可能論理ブロック3
    00を相互に接続する配線4、配線4の接続を制御するスイッチマトリクス5を備えている。

    【0004】プログラム可能論理ブロック300において、限定された複数の論理機能が準備されており、半導体集積回路装置1の外部から与えられる制御信号によってその内の一つの論理機能が選択的に発揮される。 またスイッチマトリクス5も半導体集積回路装置1の外部から与えられるプログラムにより制御され、半導体集積回路装置1全体として所望の機能が得られる。

    【0005】

    【発明が解決しようとする課題】従来のFPGAである半導体集積回路1は以上のように構成されていたので、
    その実現が可能となる機能は、プログラム可能論理ブロック300において準備される論理機能とスイッチマトリクス5により接続可能な配線で制限される。 一方、プログラム可能論理ブロック300において準備される論理機能は、予め製造された時点で限定されており、半導体集積回路1において実現が可能となる機能に対する制限を少なくしようとするとプログラム可能論理ブロック300は冗長部分を多く含むことになる。 かかる冗長性は配線4やスイッチマトリクス5についても生じることであり、半導体集積回路1の集積度が実質的に低下するという問題点を将来していた。

    【0006】この発明は上記問題点を解決するためになされたもので、設計の複雑さを増大させることなくFP
    GAの設計自由度を向上させることにより、実質的な集積度を向上させることを目的とする。

    【0007】

    【課題を解決するための手段】この発明の第1の態様である半導体集積回路の設計方法は、(a)所定の複数の論理機能をマクロセルの情報として備えるマクロセルライブラリを準備する工程と、(b)マクロセルライブラリから選択した少なくとも一つのマクロセルを用いてプログラム可能論理ブロックを構成する工程と、(c)プログラム可能論理ブロックを半導体集積回路の所定の位置に配置する工程と、(d)工程(b),(c)を所定の回数実行する工程と、を備える。 そして、プログラム可能論理ブロックにおいては複数の論理機能が準備されており、プログラム可能論理ブロックは制御信号を受けて一の論理機能を選択する。

    【0008】この発明の第2の態様である半導体集積回路の設計方法は、(a)複数の種類のプログラム可能論理ブロックを有するブロックライブラリから一のプログラム可能論理ブロックの選択を行う工程と、(b)一のプログラム可能論理ブロックを半導体集積回路の所定の位置に配置する工程と、(c)工程(a),(b)を所定の回数実行する工程と、を備える。 そして、プログラム可能論理ブロックにおいては複数の論理機能が準備されており、プログラム可能論理ブロックは制御信号を受けて一の論理機能を選択する。

    【0009】この発明の第3の態様である半導体集積回路の設計方法は、この発明の第2の態様において、プログラム可能論理ブロックが入出力ピンを備え、ブロックライブラリにおいて、プログラム可能論理ブロックが入出力ピンの数を基準として分類されている。

    【0010】この発明の第4の態様である半導体集積回路の設計方法は、この発明の第2の態様において、プログラム可能論理ブロックが入出力ピンを備え、ブロックライブラリにおいて、プログラム可能論理ブロックが入出力ピンの数及びプログラム可能論理ブロックにおいて準備されている論理機能を基準として分類されている。

    【0011】この発明の第5の態様である半導体集積回路の設計方法は、この発明の第2の態様において、プログラム可能論理ブロックにおいて準備されている複数の論理機能が一の主機能と、少なくとも一つの副機能に分類され、ブロックライブラリにおいて、プログラム可能論理ブロックが、その有する主機能を基準として分類されている。

    【0012】この発明の第6の態様である半導体集積回路の設計方法は、この発明の第5の態様において、主機能が、単一の制御信号によって選択される。

    【0013】この発明の第7の態様である半導体集積回路の設計方法は、この発明の第2の態様において、プログラム可能論理ブロックが、単一の制御信号が与えられるリセット端子と、プログラム可能論理ブロックにおいて準備されている論理機能を選択する情報を記憶するプログラム記憶素子と、を有する機能選択部を備える。 そして単一の制御信号が所定の論理値をとる場合には、プログラム記憶素子の記憶する情報にかかわらずに主機能が選択される。

    【0014】この発明の第8の態様である半導体集積回路の設計方法は、この発明の第7の態様において、リセット端子がプログラム記憶素子をリセットする。

    【0015】この発明の第9の態様である半導体集積回路の設計方法は、この発明の第7の態様において、機能選択部が、プログラム記憶素子の記憶する情報と単一の制御信号との論理和をとるANDゲートを更に有する。
    そして、プログラム可能論理ブロックにおいて準備されている論理機能の選択は、ANDゲートの出力にもとづいてなされる。

    【0016】この発明の第10の態様である半導体集積回路は、コア領域と、コア領域において形成され、複数の種類のプログラム可能論理ブロックを有するライブラリから選択された少なくとも一つのプログラム可能論理ブロックと、を備える。 そして、プログラム可能論理ブロックにおいては複数の論理機能がを準備されており、
    プログラム可能論理ブロックは制御信号を受けて一の論理機能を選択する。

    【0017】この発明の第11の態様である半導体集積回路は、この発明の第10の態様において、コア領域にゲートアレイ領域を更に備える。

    【0018】この発明の第12の態様である半導体集積回路は、この発明の第10の態様において、コア領域に、機能が固定された機能固定回路を更に備える。

    【0019】この発明の第13の態様である半導体集積回路は、この発明の第12の態様において、コア領域に、ゲートアレイ領域を更に備える。

    【0020】この発明の第13の態様である半導体集積回路は、この発明の第11の態様において、プログラム可能論理ブロックがゲートアレイ領域において構成される。

    【0021】

    【作用】この発明の第1の態様である半導体集積回路の設計方法においてプログラム可能論理ブロックはスライス工程においてその仕様を変更することが可能である。

    【0022】この発明の第2の態様である半導体集積回路の設計方法において、プログラム可能論理回路ブロックは、ブロックライブラリから選択され、所望の仕様に応じて適切な種類で適切な個数だけ配置される。

    【0023】この発明の第3の態様である半導体集積回路の設計方法において、プログラム可能論理ブロックはブロックライブラリにおいて機械的に分類される。

    【0024】この発明の第4の態様である半導体集積回路の設計方法において、ブロックライブラリは、冗長度の小さいプログラム可能論理ブロックをレパートリとして構成される。

    【0025】この発明の第5の態様である半導体集積回路の設計方法において、ブロックライブラリ中のプログラム可能論理ブロックにおいて準備される論理機能は、
    その主機能で代表される。

    【0026】この発明の第6の態様である半導体集積回路の設計方法において、プログラム可能論理ブロックの主機能は容易に選択される。

    【0027】この発明の第7の態様である半導体集積回路の設計方法において、プログラム記憶素子の記憶する論理機能を選択する情報にかかわらず、制御信号によってプログラム可能論理ブロックの主機能が選択される。

    【0028】この発明の第8の態様である半導体集積回路の設計方法において、リセット端子によってプログラム記憶素子はリセットされる。

    【0029】この発明の第9の態様である半導体集積回路の設計方法において、ANDゲートは単一の制御信号にしたがって、プログラム記憶素子の出力をプログラム可能論理ブロックに与えるか否かを司る。

    【0030】この発明の第10の態様である半導体集積回路において、プログラム可能論理回路ブロックは、ブロックライブラリから選択され、所望の仕様に応じて適切な種類で適切な個数だけ配置される。

    【0031】この発明の第11の態様である半導体集積回路において、ゲートアレイの設計の自由度が、回路設計の自由度を向上させる。

    【0032】この発明の第12の態様である半導体集積回路において、機能固定回路ブロッはその機能が変更されることがない。

    【0033】この発明の第13の対応である半導体集積回路において、機能固定回路ブロッとゲートアレイとはプログラム可能論理回路ブロックのプログラムを制御する。

    【0034】この発明の第14の態様である半導体集積回路において、プログラム可能論理ブロックは、スライス工程においてその仕様を変更することが可能である。

    【0035】

    【実施例】

    (1)第1実施例の説明. 図1はこの発明の第1実施例である半導体集積回路10
    0の構造を示す配置図である。 半導体集積回路100
    は、図31に示す従来のFPGAと同様に、周辺部に配置された入出力バッファ2を備えている。 しかし、入出力バッファ2の囲むコア領域においては、プログラム可能論理ブロック300の代わりにプログラム可能論理ブロック3a〜3cが配置されている。 スイッチマトリクス5は設けられず、配線4は各々のプログラム可能論理ブロック3a〜3c、入出力バッファ2の間を仕様に応じて接続している。

    【0036】プログラム可能論理ブロック3a〜3cのそれぞれにおいては、制御信号によって選択されるべき複数の論理機能が準備されている。 そして準備される論理機能の組は、プログラム可能論理ブロック3a〜3c
    において互いに異なっている。

    【0037】このようなプログラム可能論理ブロック3
    a〜3cは半導体集積回路100の設計の際にブロックライブラリにおいて備される。 従来では半導体集積回路1の設計の際にはプログラム可能論理ブロック300は一種類に固定され、ライブラリとして準備されていなかった。 これに対し、この発明においては配置されるべきプログラム可能論理ブロックは複数種あり、半導体集積回路1の設計の際には仕様に応じてプログラム可能論理ブロックをブロックライブラリから選択して配置することができる。

    【0038】このため、制御信号によって複数の論理機能から一の論理機能を選択することができるというプログラム可能論理ブロック自身が有する自由度に加え、複数のプログラム可能論理ブロック中から一つを選択できるという自由度が与えられる。 従って、種々の仕様に対応する場合でも、一つのプログラム可能論理ブロックに多くの論理機能を搭載する必要がなく、冗長性の低い回路設計を行うことができる。 これは集積度の低下を回避するという効果を招来する。

    【0039】ブロックライブラリを構成する方法については、この発明にかかる半導体集積回路の設計方法についての実施例において後述される。

    【0040】(2)第2実施例の説明. 図2はこの発明の第2実施例である半導体集積回路10
    1の構造を示す配置図である。 図2においてプログラム可能論理ブロック3a〜3dと共に機能固定回路ブロック7が配置されている。 機能固定回路ブロック7は、プログラム可能論理ブロック3a〜3dとは異なり、その機能に選択の余地はなく、RAM、ROM等が該当する。

    【0041】コア領域において、全ての論理回路をプログラム可能論理ブロックで構成するのではなく、要求される機能が既に決定されている論理回路についてはプログラム可能論理ブロックを用いる必要はない。 よってそのような論理回路は、当初から決定された機能を有するようには設計されることにより、プログラム可能論理ブロック自身に起因する設計の冗長性を回避することができる。

    【0042】従って、半導体集積回路の設計の自由度が向上し、集積度の低下を回避することができる。

    【0043】(3)第1及び第2実施例に対応する設計手法. 図3は、第1及び第2実施例に対応する設計手法を示すフローチャートである。 まずステップS11によって半導体集積回路において要求される論理回路の設計が行われる。 この工程ではブロックライブラリから適切なプログラム可能論理ブロックのデータを選択し、要求される論理回路を設計する。

    【0044】ステップS12によってレイアウト設計がなされ、このレイアウトに基づいてチップ製造がなされる(ステップS13)。 そしてプログラム可能論理ブロックにおいて準備される論理機能の内、いずれの論理機能を動作させるかの選択をプログラミングによって行う(ステップS14)。

    【0045】この後、例えばユーザ側で仕様変更が生じる場合がある。 その場合にはステップS15を介してステップS16の判断がなされる。 ステップS16では仕様変更による論理回路の変更が、プログラム可能論理ブロックが発揮すべき論理機能の変更のみで対応が可能か否かが判断される。 対応が可能であれば、ステップS1
    4に戻って再度プログラミングしなおす。

    【0046】プログラム可能論理ブロックについてのプログラミングのみで対応ができない場合には、再度ステップS11に戻り、ブロックライブラリから適切なプログラム可能論理ブロックのデータの選択をし直す。

    【0047】第1及び第2実施例で示された半導体集積回路は、その設計が以上のようになされるので、仕様の変更があった場合でも2段階の対応が可能であり、製造に際して自由度の大きな半導体集積回路となっている。

    【0048】(4)第3実施例の説明. 図4はこの発明の第3実施例である半導体集積回路10
    2の構造を示す配置図である。 プログラム可能論理ブロック3a〜3dと共にゲートアレイ領域6が配置されている。 ゲートアレイ領域6は、プログラム可能論理ブロック3a〜3dとは異なり、その機能の変更はスライス工程によって可能となる。 つまり半導体集積回路102
    のうち、機能がほぼ決定されており、プログラム可能論理ブロックで対応する程には仕様の変更が予定されないような論理回路はゲートアレイ領域6において構成される。 このように仕様の変更の可能性の低い論理回路のためにゲートアレイ領域6を設けることにより、設計の自由度が向上し、よって集積度の低下も回避できる。 また、プログラム変更のみで対応できない仕様の変更にもスライス工程のみ変更することにより対応できる。

    【0049】(5)第4実施例の説明. 図5はこの発明の第4実施例である半導体集積回路10
    3の構造を示す配置図である。 図5においてプログラム可能論理ブロック3a〜3dと共にゲートアレイ領域6、機能固定回路ブロック7が配置されている。 よって第2及び第3実施例に示された半導体集積回路101,
    102と同様の効果が得られる。

    【0050】また、図6は第4実施例の他の態様である半導体集積回路103aの構造を示す配置図である。 ゲートアレイ領域6、機能固定回路ブロック7においてプログラム制御ブロック67が形成されている。 プログラム制御ブロック67は、プログラム可能論理ブロック3
    aのプログラムを制御するものであり、プログラムを保持する保持ブロック71と制御信号を発生する制御信号発生ブロック61とを備える。

    【0051】保持ブロック71は、回路規模の大きいことや、機能から鑑みてRAM、EPROM等のハードマクロの構成とすることが望ましい。 また制御信号発生ブロック61はプログラム可能論理ブロック3aに対応して変更する必要も生じるため、ハードマクロの構成とすると設計時に要求される労力が大きく現実的ではない。

    【0052】図6に示された半導体集積回路103aはこれらの要求に対応しうる。 つまり、ゲートアレイ領域6において制御信号発生ブロック61が実現され、機能固定回路ブロック7において保持ブロック71が実現される。 よってプログラム制御ブロック67を高集積化することができる。

    【0053】(6)第5実施例. 図7はこの発明の第5実施例である半導体集積回路10
    4の構造を示す配置図である。 プログラム可能論理ブロック3a,3bが配置されている。 プログラム可能論理ブロック3a〜3bの配置されている位置はゲートアレイ領域6と一致している。

    【0054】図8はプログラム可能論理ブロック3bの内部構造の詳細を示したものである。 プログラム可能論理ブロック3bはゲートアレイ用マクロセル8a〜8c
    及び配線4により構成されている。 つまり、プログラム可能論理ブロック3bはゲートアレイ領域6において、
    通常のゲートアレイと同様にしてスライス工程によりその内部構造を決定することができる。 他のプログラム可能論理ブロックについても同様である。

    【0055】したがって、プログラムの変更のみで対応できない仕様変更に対しても、通常のゲートアレイと同様にスライス工程のみ変更し、プログラム可能論理ブロックそのものの仕様を変更することにより対応することができる。

    【0056】(7)第6実施例の説明. 図9はこの発明の第6実施例である半導体集積回路10
    5の構造を示す配置図である。 プログラム可能論理ブロック3a,3bはゲートアレイ領域6において配置されている。

    【0057】図10はプログラム可能論理ブロック3a
    の内部構造の詳細を示したものである。 プログラム可能論理ブロック3bはゲートアレイ用マクロセル8a〜8
    d及び配線4により構成されている。 つまり、プログラム可能論理ブロック3aは通常のゲートアレイと同様に、スライス工程においてその構造が決定される。 プログラム可能論理ブロック3bにおいても同様である。

    【0058】この様に半導体集積回路105を構成することにより、プログラム可能論理ブロックの機能と個数とを仕様に応じて設定できるために回路設計の自由度が向上し、冗長な回路が削減でき集積度が向上する。 また、第5実施例と同様、プログラムの変更のみで対応できない仕様変更に対しても、ゲートアレイと同様にスライス工程のみ変更してプログラム可能論理ブロックそのものの仕様を変更することにより対応できる。

    【0059】(8)第3乃至第6実施例に対応する設計手法. 図11は、第3乃至第6実施例に対応する設計手法を示すフローチャートである。 まずステップS21によって半導体集積回路において要求される論理回路の設計が行われる。 この工程では、第3及び第4実施例では、ステップS11と同様に、ブロックライブラリから適切なプログラム可能論理ブロックのデータを選択し、要求される論理回路を設計する。 第5及び第6実施例では、ゲートアレイ領域に配置されるプログラム可能論理ブロックの内部におけるマクロセルの接続関係が決定される。

    【0060】ステップS22によってレイアウト設計がなされ、このレイアウトに基づいてチップ製造がなされる(ステップS23a,ステップS23b)。 但し、ステップS23aは配線工程(スライス工程)の前までの工程であり、ステップS23bは配線工程である。

    【0061】そしてステップS14と同様に、プログラム可能論理ブロックにおいて準備される論理機能の内、
    いずれの論理機能を動作させるかの選択をプログラミングによって行う(ステップS24)。

    【0062】この後、ユーザ側で仕様変更が生じた場合にはステップS25を介してステップS26の判断がなされる。 ステップS26では仕様変更による論理回路の変更が、プログラム可能論理ブロックが発揮すべき論理機能の変更のみで対応が可能か否かが判断される。 対応が可能であれば、ステップS24に戻って再度プログラミングしなおす。

    【0063】プログラム可能論理ブロックについてのプログラミングのみで対応ができない場合には、更にステップS27の判断が行われる。 ステップS27では、プログラム可能論理ブロックがゲートアレイ領域において形成されている場合も、そうでない場合もゲートアレイ領域の変更、即ちスライス工程での変更のみで対応可能か否かが判断される。

    【0064】ステップS27において、仕様の変更がスライス工程のみの変更で対応できると判断された場合には、ステップS28に進みゲートアレイ部の回路が設計し直される。 そして再度レイアウト設計がなされ(ステップS22)、ステップS23bにおいてスライス工程の変更が行われる。

    【0065】更に、ステップS27において、仕様の変更がスライス工程のみの変更で対応でないと判断された場合には、ステップS21にもどり、再度回路設計が行われる。

    【0066】第3乃至第6実施例で示された半導体集積回路は、その設計が以上のようになされるので、仕様の変更があった場合でも3段階の対応が可能であり、製造に際して自由度の大きな半導体集積回路となっている。

    【0067】(9)第7実施例の説明. 以下、第7乃至第9実施例では、第1及び第2実施例で用いられたブロックライブラリについて説明される。

    【0068】図12はこの発明の第7実施例である半導体集積回路の設計方法において用いられるブロックライブラリ131を示す概念図である。 ブロックライブラリ131はプログラム可能論理ブロック31,32の情報を有している。 プログラム可能論理ブロック31,32
    はいずれも入力ピン10、出力ピン11、機能選択信号入力ピン12を有している。

    【0069】しかし、準備される論理機能は、プログラム可能論理ブロック31では論理素子911,912で示されるものであり、プログラム可能論理ブロック32
    では論理素子921乃至926で示されるものである。
    このため、両ブロック31,32を比較すると各種のピンの個数が互いに異なっている。

    【0070】この様に入力ピン10、出力ピン11等の個数によりプログラム可能論理ブロック31,32を分類することにより、機械的に分類でき、少ない個数のレパートリのライブラリを構成できる。

    【0071】(10)ブロックライブラリを用いた半導体集積回路の設計例の説明. 次にブロックライブラリを用いた所望の半導体集積回路を設計する場合を具体的に説明する。

    【0072】図13及び図14はそれぞれプログラム可能論理ブロック31において準備される機能とその接続端子を示すシンボル図である。 同様に、図15及び図1
    6はそれぞれプログラム可能論理ブロック30において準備される機能とその接続端子を示すシンボル図である。 端子Y,Sはそれぞれ図8の出力ピン11、機能選択信号入力ピン12に該当し、プログラム可能論理ブロック31における端子A、プログラム可能論理ブロック30における端子A,Dはそれぞれ図8の入力ピン10
    に該当する。

    【0073】図17はプログラム可能論理ブロック3
    0,31から選択されたプログラム可能論理ブロック2
    01乃至207を用いて設計された半導体集積回路20
    0の構成を示す回路図である。 プログラム可能論理ブロック201,202,207としてプログラム可能論理ブロック31が、プログラム可能論理ブロック203乃至206としてプログラム可能論理ブロック30がそれぞれ選択されている。

    【0074】ブロック208aは、プログラム可能論理ブロック201乃至207の機能選択を制御する制御ブロックであり、プログラム保持レジスタ209乃至21
    5が備えられている。 プログラム保持レジスタ209乃至215の出力S1乃至S7はそれぞれプログラム可能論理ブロック201乃至207の端子Sに与えられ、これらのブロックの機能を選択する。

    【0075】プログラム保持レジスタ209乃至215
    はシリアルに接続され、シフトレジスタを構成している。 そしてシリアル入力端子SIからシリアル出力端子SOへ所望のプログラムをシフト伝搬させる為の信号S
    hiftClockと、各プログラム保持レジスタ20
    9乃至215の保持するデータを一度に“0”にリセットするための信号Resetが供給される。

    【0076】半導体集積回路200の製造前にはリセット時に達成される(S=“0”で達成される)機能により論理設計が行われ、製造後に論理変更が必要となった場合には、これを達成するためのプログラムをプログラム保持レジスタに伝搬させ、その値を保持させる。

    【0077】プログラム可能論理ブロック201乃至2
    07の機能選択を制御する制御ブロックとして、図18
    に示すブロック208bを用いることもできる。 ブロック208bは、ブロック208aに更にアンドゲート2
    16乃至222を設けた構成を有している。 プログラム保持レジスタ209乃至215に信号Resetが与えられる代わりに、アンドゲート216乃至222の一方の入力に共通して信号Initが与えられる。 アンドゲート216乃至222の他方の入力にはそれぞれプログラム保持レジスタ209乃至215の出力S1乃至S7
    が与えられる。

    【0078】ブロック208bにおいては、信号Ini
    tが“0”ならば、プログラム可能論理ブロックの端子Sに与えられる信号はプログラム保持レジスタ209乃至215の保持するデータにかかわらず“0”とすることができる。 この場合は、プログラムのデータがプログラム保持レジスタ209乃至215を伝搬している最中であっても、プログラム可能論理ブロック201乃至2
    07の機能は変化しない。

    【0079】即ち、プログラム可能論理ブロック201
    乃至207の端子Sに与えられる信号が“0”の場合に選択される機能(以下「主機能」と記載する)と、所望の機能への変更は、信号Initの制御によって瞬時に行うことができる。 したがって半導体集積回路の達成すべき機能をその動作中にダイナミックに変更することが可能となる。

    【0080】図19乃至図21は、半導体集積回路20
    0において達成可能な機能の例を示した回路図である。
    図19はプログラム保持レジスタの出力S1乃至S7が全て“0”の場合、即ち全てのプログラム可能論理ブロック201乃至207においてその主機能が選択された場合を示す。 また図20はプログラム可能論理ブロック207のみ主機能が選択されていない場合を示す。 また図21はプログラム可能論理ブロック205,206のみ主機能が選択されていない場合を示す。

    【0081】(10)第8実施例. 図22はこの発明の第8実施例である半導体集積回路の設計方法において用いられる、ブロックライブラリ13
    2を示す概念図である。 ブロックライブラリ132はプログラム可能論理ブロック33乃至36の情報を有している。 プログラム可能論理ブロック33乃至36の有する入力ピン10、出力ピン11、機能選択信号入力ピン12の個数は等しいとは限らない。 また各ピンの個数が等しくても、そこにおいて準備される機能は異なる。

    【0082】例えばプログラム可能論理ブロック33,
    35はいずれも入力ピン10を2つ、出力ピン11を1
    つ、機能選択信号入力ピン12を1つ備える。 しかしプログラム可能論理ブロック33において準備される機能はANDゲート931とNANDゲート932であり、
    プログラム可能論理ブロック35において準備される機能はXORゲート951と出力の反転されるXORゲート952である。 プログラム可能論理ブロック34,3
    6についても、各ピンの個数は等しいがそこにおいて準備される論理機能は、前者がORゲート941とNOR
    ゲート942であるのに対し、後者はバッファ961とインバータ962である。

    【0083】このように、プログラム可能論理ブロックの有するピンの個数と準備される論理機能によりプログラム可能論理ブロックを分類することにより、冗長度の小さいプログラム可能論理ブロックをレパートリとするブロックライブラリを構成することができる。 よってこのようなブロックライブラリを用いて半導体集積回路の設計を行うことにより、冗長度が低く、集積度の低下を回避した半導体集積回路を得ることができる。

    【0084】(11)第9実施例. 図23はこの発明の第9実施例である半導体集積回路の設計方法において用いられる、ブロックライブラリ13
    3を示す概念図である。 ブロックライブラリ133はプログラム可能論理ブロック37乃至39の情報を有している。 プログラム可能論理ブロック37乃至39の有する入力ピン10、出力ピン11、機能選択信号入力ピン12の個数は等く、かつ準備される機能も等しい。

    【0085】しかしプログラム可能論理ブロック37乃至39の各々において準備される機能は、主機能14及び主機能以外の副機能15に区分される。

    【0086】例えば、プログラム可能論理ブロック37
    の主機能14にはANDゲート970が該当し、副機能15としてNANDゲート971及びNORゲート97
    2が準備される。 同様に、プログラム可能論理ブロック38の主機能14にはNANDゲート971が該当し、
    副機能15としてANDゲート970及びNORゲート972が準備される。 また、プログラム可能論理ブロック39の主機能14にはNORゲート972が該当し、
    副機能15としてANDゲート970及びNANDゲート971が準備される。

    【0087】この様に主機能14によりプログラム可能論理ブロックを分類することにより、設計者は主機能1
    4のみを考慮して設計が可能であり、プログラム可能論理ブロックについてのプログラムを考慮することなく、
    従来のゲートアレイの場合と類似して設計を進めることができる。

    【0088】(12)第10実施例. 図24及び図25は、それぞれこの発明の第10実施例にかかる半導体集積回路の設計方法において用いられる、プログラム可能論理ブロック310,311を示す概念図である。 プログラム可能論理ブロック310,3
    11のいずれにおいても主機能14と副機能15が準備されている点で、第9実施例と同様である。

    【0089】しかし、第10実施例では副機能15において準備されている論理機能は1つである。 そのため、
    機能選択信号入力端子12は1つで足りる。

    【0090】図26は、機能選択信号入力ピン12に信号yを入力した場合にプログラム可能論理ブロック31
    0,311で選択される論理機能を示す論理値図である。 機能選択信号入力ピン12に信号“0”を入力した場合には、主機能14が選択される。 この様に、プログラム可能論理ブロックの主機能は単一の信号yで選択可能にすることができるので、プログラムの変更が容易となる。

    【0091】(13)第11実施例. 図27はこの発明の第11実施例にかかる半導体集積回路の設計方法に用いられる、プログラム可能論理ブロック312の構成を示すブロック図である。

    【0092】プログラム可能論理ブロック312は、図24に示されたプログラム可能論理ブロック310にプログラム記憶素子16を新たに設けた構成を有している。

    【0093】プログラム記憶素子16には、プログラムデータ入力ピン17を介してプログラム可能論理ブロック310の機能選択を行う所定の信号pが与えられる。
    一方、プログラム記憶素子16はリセットピン18を有しており、ここにはリセット信号xが与えられる。

    【0094】図28は信号xと信号yとの関係を示す論理値表である。 リセットピン18にリセット信号xとして“1”を入力すると信号yは“0”となり、第10実施例と同様に、プログラム可能論理ブロック310の主機能14(NANDゲート9101)が選択される。

    【0095】リセットピン18に与えられるリセット信号xが“0”の場合には、信号yは信号pと等しくなり、外部からのプログラムが有効となる。

    【0096】この様にして、信号xのみによってプログラム可能論理ブロック3の主機能14を選択することができる。 よってプログラムを変更する場合には、変更が必要なプログラム可能論理ブロックに設けられたプログラム記憶素子16のデータをを変更するだけで、プログラム変更が可能となる。

    【0097】(14)第12実施例. 図29はこの発明の第12実施例にかかる半導体集積回路の設計方法に用いられる、プログラム可能論理ブロック313の構成を示すブロック図である。

    【0098】プログラム可能論理ブロック313は、図27に示されたプログラム可能論理ブロック312において、プログラム記憶素子16と選択信号入力端子12
    との間にゲート20を設けた構成をとっている。 そしてプログラム記憶素子16はリセットされない。

    【0099】信号xが“1”のときには、ゲート20が選択信号入力端子12に“0”を与えるため、プログラム可能論理ブロック310においてはその主機能14が選択される。 一方信号xが“0”のときには、ゲート2
    0が信号pと等しい信号を与えるため、プログラム可能論理ブロック310は信号pによってその機能が選択される。 即ち外部からのプログラムが有効となる。

    【0100】図30は信号xと信号yとの関係を示す論理値表であり、図28と同一の結果が得られる。 よって第11実施例と同様にプログラムを変更する場合には、
    変更が必要なプログラム可能論理ブロックに設けられたプログラム記憶素子16のデータをを変更するだけで、
    プログラム変更が可能となるという効果がある。

    【0101】更に第12実施例では信号xによってプログラム記憶素子16を直接にリセットするわけではなく、プログラム可能論理ブロックの機能を実行中に信号pの値の変更が、即ちプログラムの変更が可能となる効果が付加される。

    【0102】

    【発明の効果】以上に説明したように、この発明の第1
    の態様である半導体集積回路の設計方法によれば、プログラムの変更のみで対応できない仕様変更にもゲートアレイ等と同様にスライス工程のみ変更し、プログラム可能論理ブロックそのものの仕様を変更することにより対応できるので開発コストを削減できる効果がある。

    【0103】またこの発明の第2の態様である半導体集積回路の設計方法によれば、機能の異なるプログラム可能論理ブロックをレパートリとして持つブロックライブラリから選択して、所望の回路に応じて配置配線できるため、プログラム可能論理ブロックと配線が予め敷設されている従来のFPGAに比べて設計の自由度が増大し、また、回路の冗長度が減少するため集積度が向上する効果がある。

    【0104】またこの発明の第3の態様である半導体集積回路の設計方法によれば、少ない個数のレパートリのライブラリを構成できる効果がある。

    【0105】またこの発明の第4の態様である半導体集積回路の設計方法によれば、冗長度の小さいプログラム可能論理ブロックをレパートリとするライブラリを構成でき集積度が向上する効果がある。

    【0106】またこの発明の第5の態様である半導体集積回路の設計方法によれば、主機能により該プログラム可能論理ブロックをレパートリ化することにより、設計者は通常のゲートアレイ等の場合と同様にプログラムを意識することなく設計を進めることができる効果がある。

    【0107】またこの発明の第6の態様である半導体集積回路の設計方法によれば、プログラム変更が容易となり開発コストを削減できる効果がある。

    【0108】またこの発明の第7乃至第9の態様である半導体集積回路の設計方法によれば、プログラムを変更する場合には変更が必要なプログラム可能論理ブロックのプログラム記憶素子のデータのみを変更するだけでプログラム変更が完了し開発コストを削減できる効果がある。

    【0109】なかでも、この発明の第9の態様である半導体集積回路の設計方法によれば、更にプログラム可能論理ブロックのメインの機能を実行中にプログラムの変更が可能となる効果がある。

    【0110】またこの発明の第10の態様である半導体集積回路によれば、プログラム可能論理ブロックと配線が予め敷設されている従来のFPGAに比べて設計の自由度が増大し、また、回路の冗長度が減少するため集積度が向上する効果がある。

    【0111】またこの発明の第11の態様である半導体集積回路によれば、プログラム可能論理ブロックのみで所望の機能を実現する場合より回路設計の自由度が向上し、冗長な回路が削減でき集積度が向上する効果がある。

    【0112】またこの発明の第12の態様である半導体集積回路によれば、回路設計上の自由度が向上し、冗長な回路が削減でき集積度が向上する効果がある。

    【0113】またこの発明の第13の態様である半導体集積回路によれば、プログラム可能論理回路ブロックのプログラムを制御するプログラム制御ブロックを高集積化することができる。

    【0114】またこの発明の第14の態様である半導体集積回路によれば、回路設計の自由度が向上し、冗長な回路が削減でき集積度が向上する効果がある。 また、プログラム変更のみで対応できない仕様の変更にもゲートアレイと同様にスライス工程のみ変更することにより対応でき開発コストを削減できる効果がある。

    【図面の簡単な説明】

    【図1】本発明の第1実施例である半導体集積回路を示す配置図である。

    【図2】本発明の第2実施例である半導体集積回路を示す配置図である。

    【図3】本発明の第1及び第2実施例に対応する半導体集積回路の設計方法を示すフローチャートである。

    【図4】本発明の第3実施例である半導体集積回路を示す配置図である。

    【図5】本発明の第4実施例である半導体集積回路を示す配置図である。

    【図6】本発明の第4実施例である半導体集積回路を示す配置図である。

    【図7】本発明の第5実施例である半導体集積回路を示す配置図である。

    【図8】本発明の第5実施例である半導体集積回路を示す配置図である。

    【図9】本発明の第6実施例である半導体集積回路を示す配置図である。

    【図10】本発明の第6実施例である半導体集積回路を示す配置図である。

    【図11】本発明の第3乃至第6実施例に対応する半導体集積回路の設計方法を示すフローチャートである。

    【図12】本発明の第7実施例を説明する概念図である。

    【図13】本発明の第7実施例を説明するシンボル図である。

    【図14】本発明の第7実施例を説明するシンボル図である。

    【図15】本発明の第7実施例を説明するシンボル図である。

    【図16】本発明の第7実施例を説明するシンボル図である。

    【図17】本発明の第7実施例を説明する回路図である。

    【図18】本発明の第7実施例を説明する回路図である。

    【図19】本発明の第7実施例を説明する回路図である。

    【図20】本発明の第7実施例を説明する回路図である。

    【図21】本発明の第7実施例を説明する回路図である。

    【図22】本発明の第8実施例を説明する概念図である。

    【図23】本発明の第9実施例を説明する概念図である。

    【図24】本発明の第10実施例を説明する概念図である。

    【図25】本発明の第10実施例を説明する概念図である。

    【図26】本発明の第10実施例を説明する論理値図である。

    【図27】本発明の第11実施例を説明するブロック図である。

    【図28】本発明の第11実施例を説明する論理値図である。

    【図29】本発明の第12実施例を説明するブロック図である。

    【図30】本発明の第12実施例を説明する論理値図である。

    【図31】従来の技術を説明する配置図である。

    【符号の説明】

    1 半導体集積回路 2 入出力バッファ 3 プログラム可能論理ブロック 4 配線 5 スイッチマトリクス 6 ゲートアレイ領域 7 機能固定回路ブロック 8 ゲートアレイ用マクロセル 9 論理素子 10 入力ピン 11 出力ピン 12 機能選択信号入力ピン 13 ライブラリ 14 メイン機能 15 サブ機能 16 プログラム記憶素子 17 プログラムデータ入力ピン 18 プログラム記憶素子のリセットピン 19 プログラム記憶素子の出力リセットピン 20 リセット回路

    ─────────────────────────────────────────────────────

    【手続補正書】

    【提出日】平成5年2月15日

    【手続補正1】

    【補正対象書類名】明細書

    【補正対象項目名】請求項10

    【補正方法】変更

    【補正内容】

    【手続補正2】

    【補正対象書類名】明細書

    【補正対象項目名】0005

    【補正方法】変更

    【補正内容】

    【0005】

    【発明が解決しようとする課題】従来のFPGAである半導体集積回路1は以上のように構成されていたので、
    その実現が可能となる機能は、プログラム可能論理ブロック300において準備される論理機能とスイッチマトリクス5により接続可能な配線で制限される。 一方、プログラム可能論理ブロック300において準備される論理機能は、予め製造された時点で限定されており、半導体集積回路1において実現が可能となる機能に対する制限を少なくしようとするとプログラム可能論理ブロック300は冗長部分を多く含むことになる。 かかる冗長性は配線4やスイッチマトリクス5についても生じることであり、半導体集積回路1の集積度が実質的に低下するという問題点を来していた。

    【手続補正3】

    【補正対象書類名】明細書

    【補正対象項目名】0016

    【補正方法】変更

    【補正内容】

    【0016】この発明の第10の態様である半導体集積回路は、コア領域と、コア領域において形成され、複数の種類のプログラム可能論理ブロックを有するライブラリから選択された少なくとも一つのプログラム可能論理ブロックと、を備える。 そして、プログラム可能論理ブロックにおいては複数の論理機能が準備されており、プログラム可能論理ブロックは制御信号を受けて一の論理機能を選択する。

    【手続補正4】

    【補正対象書類名】明細書

    【補正対象項目名】0072

    【補正方法】変更

    【補正内容】

    【0072】図13及び図14はそれぞれプログラム可能論理ブロック31において準備される機能とその接続端子を示すシンボル図である。 同様に、図15及び図1
    6はそれぞれプログラム可能論理ブロック30において準備される機能とその接続端子を示すシンボル図である。 端子Y,Sはそれぞれ図12の出力ピン11、機能選択信号入力ピン12に該当し、プログラム可能論理ブロック31における端子A、プログラム可能論理ブロック30における端子A,Dはそれぞれ図12の入力ピン10に該当する。

    【手続補正5】

    【補正対象書類名】図面

    【補正対象項目名】図31

    【補正方法】変更

    【補正内容】

    【図31】

    ───────────────────────────────────────────────────── フロントページの続き (72)発明者 滝本 功 兵庫県伊丹市瑞原4丁目1番地 三菱電機 株式会社カスタムエル・エス・アイ設計技 術開発センター内 (72)発明者 橋爪 毅 兵庫県伊丹市瑞原4丁目1番地 三菱電機 株式会社カスタムエル・エス・アイ設計技 術開発センター内 (72)発明者 菰池 達紀 兵庫県伊丹市瑞原4丁目1番地 三菱電機 株式会社カスタムエル・エス・アイ設計技 術開発センター内

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈