JP6944728B2 - 設計支援システム、設計支援方法およびプログラム - Google Patents

設計支援システム、設計支援方法およびプログラム Download PDF

Info

Publication number
JP6944728B2
JP6944728B2 JP2019557176A JP2019557176A JP6944728B2 JP 6944728 B2 JP6944728 B2 JP 6944728B2 JP 2019557176 A JP2019557176 A JP 2019557176A JP 2019557176 A JP2019557176 A JP 2019557176A JP 6944728 B2 JP6944728 B2 JP 6944728B2
Authority
JP
Japan
Prior art keywords
integrated circuit
programmable logic
wiring
signal path
logic integrated
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.)
Active
Application number
JP2019557176A
Other languages
English (en)
Other versions
JPWO2019107234A1 (ja
Inventor
竜介 根橋
竜介 根橋
阪本 利司
利司 阪本
信 宮村
信 宮村
幸秀 辻
幸秀 辻
あゆ香 多田
あゆ香 多田
旭 白
旭 白
Original Assignee
ナノブリッジ・セミコンダクター株式会社
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 ナノブリッジ・セミコンダクター株式会社 filed Critical ナノブリッジ・セミコンダクター株式会社
Publication of JPWO2019107234A1 publication Critical patent/JPWO2019107234A1/ja
Application granted granted Critical
Publication of JP6944728B2 publication Critical patent/JP6944728B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/347Physical level, e.g. placement or routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/343Logical level
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/70Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
    • H01L21/77Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
    • H01L21/78Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
    • H01L21/82Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/22Yield analysis or yield optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Manufacturing & Machinery (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Description

本発明は、プログラマブル論理集積回路の回路設計を支援する設計支援システム、設計支援方法およびプログラムに関する。
FPGA(Field Programmable Gate Array)等のプログラマブル論理集積回路は、論理要素、入出力要素および接続要素によって構成される。論理要素は、プログラマブルな論理演算機能を提供する。例えば、組み合わせ回路を実現するルックアップテーブルとデータを保持するフリップフロップとセレクタとによって構成されるロジックブロックが論理要素として用いられる。入出力要素は、デバイスと外部との間のプログラマブルな入出力機能を提供する。接続要素は、論理要素や入出力要素の間のプログラマブルな接続機能を提供する。ユーザは、複数のロジックブロックを任意に組み合わせることによって、プログラマブル論理集積回路に所望の論理回路を形成することができる。
所望の論理回路を形成するために必要な情報は、構成情報と呼ばれ、プログラマブル論理集積回路が備えるメモリ素子に保存される。構成情報を記憶するメモリ素子には、SRAM(Static Random Access Memory)セルや、フローティングゲートMOS(Metal-Oxide-Semiconductor)トランジスタ等が用いられる。
一般に、上述のメモリ素子やロジックブロックを変更可能に接続するスイッチは、多数のトランジスタによって構成されるロジックブロックと同じ層に形成されるため、面積オーバーヘッドが増大する要因となる。プログラマブル論理集積回路のチップ面積が大きくなると、製造コストが増大する。また、メモリ素子やスイッチのレイアウト面積が大きくなると、チップ面積に占めるロジックブロックの割合が低下する。
そこで、レイアウト面積の増大を抑制しつつ、製造後のロジックブロック同士の接続を変更可能にするスイッチとして抵抗変化素子を用いるプログラマブル論理集積回路が提案されている。一般的なプログラマブル論理集積回路における配線の接続および切断には、メモリ素子であるSRAMセルと、スイッチ機能を備えた1つのトランジスタを有するスイッチセルとが利用されている。一方、抵抗変化素子は、メモリ機能とスイッチ機能との両方を備えているため、1つの抵抗変化素子でスイッチセルを実現することができる。そのため、抵抗変化素子を用いたプログラマブル論理集積回路は、SRAMセルとスイッチセルとを用いるプログラマブル論理集積回路と比べて小型化が可能となる。
特許文献1、特許文献2、および非特許文献1には、抵抗変化素子を用いたプログラマブル論理集積回路が開示されている。特許文献1、特許文献2、および非特許文献1に開示されたプログラマブル論理集積回路は、第1の配線層と、第1の配線層の上部に形成される第2の配線層との間に、金属イオンを含有する固体電解質材料を含む抵抗変化素子が配置された構成を有する。抵抗変化素子は、順方向または逆方向にバイアス電圧を印加することによって抵抗値が変化し、第1の配線と第2の配線とを電気的に接続または切断するスイッチとして機能する。例えば、抵抗変化素子の抵抗値は、低抵抗状態(オン状態)と高抵抗状態(オフ状態)との比が10の5乗またはそれ以上となる。抵抗変化素子のオンまたはオフの状態は、プログラマブル論理集積回路に対する電源供給が停止しても保持されるため、電源を投入するたびに構成情報をロードする手間を省くことができる。
特許文献1に記載された半導体装置では、第1の配線群と、第1の配線群と交差する第2の配線群との各交点に抵抗変化素子が配置される。そのため、特許文献1の装置によれば、第1の配線群の任意の配線と第2の配線群の任意の配線とを接続または切断できるクロスバスイッチのサイズを小型化できる。すなわち、特許文献1の装置によれば、チップ面積の大幅な縮小やロジックブロックの使用効率の改善によるプログラマブル論理集積回路の性能向上が期待できる。
図23は、特許文献1のクロスバスイッチの一例(以下、クロスバ回路100と呼ぶ)である。図23のクロスバ回路100は、複数の第1の配線121〜126と、複数の第2の配線131〜136とが互いに交叉する位置に抵抗変化素子110を配置した構成を有する。図23においては、ON状態の抵抗変化素子110を黒く塗りつぶし、OFF状態の抵抗変化素子110を白抜きで示す。図23のクロスバ回路100は、対角線上に位置する複数の抵抗変化素子110をON状態にすることによって、クロスバとして結線された状態を示す。
図24は、特許文献2のクロスバスイッチの一例で(以下、クロスバ回路200と呼ぶ)ある。図24のクロスバ回路200は、複数の第1の配線221〜226と、複数の第2の配線231〜236とが互いに交叉する位置に、二つの抵抗変化素子が直列に接続された構成のユニット素子210を配置した構成を有する。図24においては、ON状態の素子を塗りつぶしで示し、OFF状態の素子を白抜きで示す。図24のクロスバ回路200は、ユニット素子210を構成する2つの抵抗変化素子をともにON状態とすることによってユニット素子210をON状態とし、2つの抵抗変化素子をともにOFF状態とすることによってユニット素子210をOFF状態とする。図24のクロスバ回路200は、対角線上に位置する複数のユニット素子210をON状態にすることによって、クロスバとして結線された状態を示す。
特許第4356542号公報 国際公開第2012/043502号
M. Miyamura, et al., "Low-power programmable-logic cell arrays using nonvolatile complementary atom switch", 15th International Symposium on Quality Electronic Design (ISQED), pp.330-334, 2014.
図25は、図23のクロスバ回路100において、第1の配線123と第2の配線133との交点に位置する抵抗変化素子110に1ビットのオープン不良が発生した状態である。図25のようなオープン不良が発生すると、第1の配線123からの入力が第2の配線133の出力に伝送されなくなる。図26は、図23のクロスバ回路100において、第1の配線125と第2の配線133との交点に位置する抵抗変化素子110に1ビットのショート不良が混入した状態である。図26のようなショート不良が発生すると、第1の配線123からの入力と第1の配線125からの入力とが衝突し、第2の配線133からの出力と第2の配線135からの出力とが不定となる。
図27は、図24のクロスバ回路200において、第1の配線223と第2の配線233との交点に位置するユニット素子210に1ビットのオープン不良が発生した状態である。図27のようなオープン不良が発生すると、回路の誤動作につながる。図28は、図24のクロスバ回路200において、第1の配線225と第2の配線233との交点に位置するユニット素子210に1ビットのショート不良が混入した状態である。図28のようなショート不良が発生した場合は、クロスバ回路200の回路動作に影響はない。
すなわち、特許文献1および特許文献2の抵抗変化素子を配置したクロスバ回路では、クロスバスイッチを構成する抵抗変化素子に1ビットの不良が発生した際に、所望の動作を提供できない可能性がある。
また、特許文献1および2の抵抗変化素子は、書き換えを繰り返すことによって劣化する可能性があるため、書き換え可能な回数に制限がある。例えば、一部の抵抗変化素子に書き込みが集中すると、その素子が早期に劣化し、所望の論理回路を形成できなくなる可能性がある。
本発明の目的は、上記課題を解決するために、信頼性の高いプログラマブル論理集積回路を設計することを可能とする設計支援システムを提供することにある。
本発明の一態様の設計支援システムは、プログラマブル論理集積回路の動作記述ファイルを入力とし、入力した動作記述ファイルを論理合成し、プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成する論理合成部と、プログラマブル論理集積回路のリソース情報を生成し、生成したリソース情報に基づいてネットリストに含まれる論理要素を配置し、配置した論理要素の間を配線して信号経路を仮想的に生成する配置配線部と、少なくとも二つの信頼性モードに基づいてプログラマブル論理集積回路の構成情報を生成し、生成した構成情報を出力する信頼性制御部とを備える。
本発明の一態様の設計支援方法においては、プログラマブル論理集積回路の動作記述ファイルを論理合成し、プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成し、プログラマブル論理集積回路のリソース情報を生成し、生成したリソース情報に基づいてネットリストに含まれる論理要素を配置し、配置した論理要素の間を配線して信号経路を仮想的に生成し、少なくとも2つの信頼性モードに基づいてプログラマブル論理集積回路の構成情報を生成し、生成した構成情報を出力する。
本発明の一態様のプログラムは、入力されたプログラマブル論理集積回路の動作記述ファイルを論理合成する処理と、プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成する処理と、プログラマブル論理集積回路のリソース情報を生成する処理と、生成したリソース情報に基づいてネットリストに含まれる論理要素を配置する処理と、配置した論理要素の間を配線して少なくとも一つの信号経路を仮想的に生成する処理と、少なくとも2つの信頼性モードに基づいてプログラマブル論理集積回路の構成情報を生成する処理と、生成した構成情報を出力する処理とをコンピュータに実行させる。
本発明によれば、信頼性の高いプログラマブル論理集積回路を設計することを可能とする設計支援システムを提供することができる。
本発明の第1の実施形態に係る設計支援システムの構成を示すブロック図である。 本発明の第1の実施形態に係る設計支援システムが備える設計支援ツール群の一構成例を示すブロック図である。 本発明の第1の実施形態に係る設計支援システムの動作について説明するためのフローチャートである。 本発明の第1の実施形態に係る設計支援システムによる配置配線処理について説明するためのフローチャートである。 本発明の第1の実施形態に係る設計支援システムによる信頼性制御処理について説明するためのフローチャートである。 本発明の第1の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれる2つのロジックブロックとそれらを接続するルーティングリソースとの一例を示す模式図である。 本発明の第1の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれるスイッチリソースの第1の例を示す模式図である。 本発明の第1の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれるスイッチリソースの第2の例を示す模式図である。 本発明の第1の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれるスイッチリソースの第3の例を示す模式図である。 本発明の第1の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれるスイッチリソースの第4の例を示す模式図である。 本発明の第1の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれるスイッチリソースの第5の例を示す模式図である。 本発明の第1の実施形態に係る設計支援システムによって配置配線後の回路が実装されたプログラマブル論理集積回路の一例を示す模式図である。 本発明の第1の実施形態に係る設計支援システムの信頼性制御処理によって生成される有向グラフの一例である。 本発明の第1の実施形態に係る設計支援システムによって第1信頼性モードにおける信頼性制御工程後の回路が実装されたプログラマブル論理集積回路の一例を示す模式図である。 本発明の第2の実施形態に係る設計支援システムの動作について説明するためのフローチャートである。 本発明の第2の実施形態に係る設計支援システムによる配置配線処理について説明するためのフローチャートである。 本発明の第3の実施形態に係る設計支援システムが備える設計支援ツール群の一構成例を示すブロック図である。 本発明の第3の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれるスイッチリソースの第6の例を示す模式図である。 本発明の第3の実施形態に係る設計支援システムの設計対象であるプログラマブル論理集積回路に含まれるスイッチリソースの第7の例を示す模式図である。 本発明の第3の実施形態に係る設計支援システムの動作について説明するためのフローチャートである。 本発明の第3の実施形態に係る設計支援システムによる信頼性制御処理について説明するためのフローチャートである。 本発明の第4の実施形態に係る設計支援システムの動作について説明するためのフローチャートである。 特許文献1の構成のクロスバスイッチの動作状態の一例を示す概念図である。 特許文献2の構成のクロスバスイッチの動作状態の一例を示す概念図である。 特許文献1の構成のクロスバスイッチに含まれる抵抗変化素子にオープン不良が発生した場合の一例を示す概念図である。 特許文献1の構成のクロスバスイッチに含まれる抵抗変化素子にショート不良が発生した場合の一例を示す概念図である。 特許文献2の構成のクロスバスイッチに含まれる抵抗変化素子にオープン不良が発生した場合の一例を示す概念図である。 特許文献2の構成のクロスバスイッチに含まれる抵抗変化素子にショート不良が発生した場合の一例を示す概念図である。
以下に、本発明を実施するための形態について図面を用いて説明する。ただし、以下に述べる実施形態には、本発明を実施するために技術的に好ましい限定がされているが、発明の範囲を以下に限定するものではない。なお、以下の実施形態の説明に用いる全図においては、特に理由がない限り、同様箇所には同一符号を付す。また、以下の実施形態において、同様の構成・動作に関しては繰り返しの説明を省略する場合がある。また、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
(第1の実施形態)
まず、本発明の第1の実施形態に係る設計支援システムについて図面を参照しながら説明する。図1は、本実施形態の設計支援システム1の構成について説明するための概念図である。図2は、本実施形態の設計支援システム1が備える設計支援ツール群10の構成を示すブロック図である。
図1のように、設計支援システム1は、構成情報転送装置2と接続される。また、設計支援システム1は、構成情報転送装置2を介してプログラマブル論理集積回路3と接続される。設計支援システム1と構成情報転送装置2との接続、構成情報転送装置2とプログラマブル論理集積回路3との接続は、有線および無線のいずれを用いてもよく、それらの接続における信号の通信方式は特に限定しない。なお、構成情報転送装置2およびプログラマブル論理集積回路3は、アプリケーション・ボードとして設計支援システム1に搭載されていてもよい。
図1のように、設計支援システム1は、演算装置101、記憶装置102、表示装置103、および入出力装置104を備える。演算装置101、記憶装置102、表示装置103、および入出力装置104は、バス105を介して互いに接続される。設計支援システム1は、例えば、コンピュータシステムによって実現される。
演算装置101は、記憶装置102にあらかじめ格納されたプログラムに従って処理を実行することによって、設計支援システム1の全体の動作を制御する。また、演算装置101は、記憶装置102にあらかじめ格納されているプログラムに従った処理を実行することによって、設計支援ツール群10の機能を実現する。
記憶装置102は、設計情報やプログラムを格納するメモリ等の記憶媒体である。設計情報は、設計者が作成する回路の動作記述情報や、制約条件情報などのプログラマブル論理集積回路3に実装される情報を含む。例えば、設計情報には、演算装置101の処理結果であるネットリスト情報や、配置配線情報、プログラマブル論理集積回路3のリソース情報や構成情報、書き換え履歴情報等の情報が含まれる。
表示装置103は、設計支援ツール群10の命令入力画面や処理結果を表示する。例えば、表示装置103は、抵抗変化素子の書き換え回数(変更回数とも呼ぶ)に関する情報を表示する。例えば、表示装置103は、統計処理後のデータのグラフ表示や、フロアプランナー上でのカラー表示などの表示情報を表示する。例えば、ユーザは、表示装置103の表示情報を確認することによって、書き換え回数が大きなところを避けたフロアプランを作成できる。
入出力装置104は、キーボードや、マウス、タッチパネル等の入力装置や、構成情報転送装置2、図示しない印刷装置等の出力装置との間で信号やデータを送受信し合うためのインタフェース回路である。入出力装置104は、信頼性モードに基づいた設定をユーザに提供する。ユーザは、入出力装置104によって提供される機能を利用することによって、抵抗変化素子のデータの保持特性を優先した回路や、抵抗変化素子の書き換え寿命を優先した回路をプログラマブル論理集積回路3に実装できる。
構成情報転送装置2は、設計支援システム1とプログラマブル論理集積回路3とに接続される。構成情報転送装置2は、設計支援システム1とプログラマブル論理集積回路3との間における構成情報などのデータ伝送を制御する。例えば、構成情報転送装置2は、設計支援システム1から送信された構成情報等のデータを受信し、プログラマブル論理集積回路3のデータ入出力仕様の送信データに変換して転送する。また、例えば、構成情報転送装置2は、プログラマブル論理集積回路3から出力された構成情報等のデータを受信し、設計支援システム1のデータ入出力仕様の送信データに変換して転送する。なお、構成情報転送装置2によるデータ変換方式については、特に限定を加えない。
図2の設計支援ツール群10は、図1の記憶装置102にあらかじめ格納されており、演算装置101が記憶装置102から読み出して実行するツールである。図2に示すように、設計支援ツール群10は、論理合成ツール11、配置配線ツール12、および信頼性制御ツール13を含む。
論理合成ツール11(論理合成手段とも呼ぶ)は、プログラマブル論理集積回路3の設計者が入出力装置104を用いて入力した動作記述情報や遅延・電力などの制約条件情報を含む動作記述ファイルを入力とする。論理合成ツール11は、入力した動作記述ファイルの論理合成を行う。論理合成ツール11は、プログラマブル論理集積回路3が備える論理要素を用いてネットリストを作成する。ネットリストは、論理要素および論理要素間の接続情報である。
配置配線ツール12(配置配線手段とも呼ぶ)は、プログラマブル論理集積回路3の論理要素や配線リソース等のリソース情報を生成する。配置配線ツール12は、プログラマブル論理集積回路3のリソース情報に基づいて、ネットリストに含まれる論理要素を仮想的に配置・配線する。言い換えると、配置配線ツール12は、生成したリソース情報に基づいてネットリストに含まれる論理要素を配置し、配置した論理要素間を配線して少なくとも一つの信号経路を生成する。
信頼性制御ツール13(信頼性制御手段とも呼ぶ)は、信頼性モードに基づいて、抵抗変化型素子のデータの保持特性や書き換え寿命を優先した回路の構成情報を生成する。信頼性モードは、信号経路を追加する第1信頼性モードと、信号経路を追加しない第2信頼性モードとを含む。言い換えると、信頼性制御ツール13は、少なくとも2つの信頼性モードに基づいてプログラマブル論理集積回路の構成情報を生成し、生成した構成情報を出力する。例えば、信頼性制御ツール13は、表示装置103に構成情報を表示させたり、入出力装置104から構成情報転送装置2に構成情報を出力したりする。
信頼性制御ツール13は、第1信頼性モードにおいては、配置配線ツール12によって配線された第1の信号経路と並列な第2の信号経路に配線リソースおよびスイッチリソースの割り当てを行う。また、信頼性制御ツール13は、第2信頼性モードにおいては、配置配線ツール12によって配線された第1の信号経路に信号配線を追加しない。信頼性制御ツール13は、可能であれば、第1信頼性モードにおいて、第1の信号経路と第2の信号経路とに同一の配線リソースを割り当てることが好ましい。
以上が、設計支援システム1の構成に関する説明である。続いて、設計支援システム1の動作について図面を参照しながら説明する。
(動作)
図3は、本実施形態の設計支援システムによる設計支援方法について説明するためのフローチャートである。図3のフローチャートに沿った以下の説明においては、設計支援システム1を動作の主体として説明する。
図3において、まず、設計支援システム1は、設計者によって作成された回路の動作記述ファイルを入力とする(ステップS11)。動作記述ファイルは、入出力装置104によって入力される。
例えば、動作記述ファイルは、ハードウェア記述言語を用いて作成される。ハードウェア記述言語の一例としては、Verilog−HDL(Hardware Description Language)が挙げられる。また、ハードウェア記述言語の一例として、VHDL(Very high-speed integrated circuit Hardware Description Language)が挙げられる。
次に、設計支援システム1は、入力された動作記述ファイルを論理合成する(ステップS12)。動作記述ファイルの論理合成は、論理合成ツール11によって実行される。
次に、設計支援システム1は、ネットリストを生成する(ステップS13)。ネットリストは、論理合成ツール11によって生成される。論理合成ツール11は、プログラマブル論理集積回路3に含まれる論理要素を用いてネットリストを生成する。論理合成ツール11は、設計者があらかじめ設定したタイミング制約情報を満たすように回路を最適化する。
次に、設計支援システム1は、プログラマブル論理集積回路3に実装する回路の配置配線処理を実行する(ステップS14)。回路の配置配線処理は、配置配線ツール12によって実行される。
次に、設計支援システム1は、信頼性モードに基づいて配置配線結果を修正し、構成情報を生成する(ステップS15)。構成情報の生成は、信頼性制御ツールによって実行される。
回路の構成情報が決定すると、設計者によって入出力装置104に行われた操作に基づいて、設計支援システム1およびプログラマブル論理集積回路3に構成情報転送装置2が接続される。その結果、設計支援システム1とプログラマブル論理集積回路3との通信経路が確立される。設計支援システム1は、構成情報転送装置2を介してプログラマブル論理集積回路3に構成情報を送信する。プログラマブル論理集積回路3は、構成情報転送装置2から構成情報を受信すると、コンフィグレーション動作を開始する。全ての構成情報のコンフィグレーション動作が完了すると、プログラマブル論理集積回路3に回路が実装された状態となる。
以上が、設計支援システム1の動作についての説明である。続いて、設計支援システム1の動作の詳細について図面を参照しながら説明する。
〔配置配線処理〕
図4は、設計支援システム1の配置配線ツール12によって実行される配置配線処理(ステップS14)の詳細について説明するためのフローチャートである。図4のフローチャートに沿った以下の説明においては、配置配線ツール12を動作の主体として説明する。
図4において、まず、配置配線ツール12は、論理要素やルーティングリソース等のリソース情報を生成する(ステップS141)。
論理要素の構成情報の保存には、抵抗変化素子によって構成されるメモリリソースを用いてもよい。ルーティングリソースは、配線リソースやスイッチリソースによって構成される。スイッチリソースは、抵抗変化素子によって構成されてもよい。リソース情報は、ある論理要素の識別番号と、その論理要素の構成情報を保存するスイッチリソース内の抵抗変化素子の識別番号とを一組とした情報を含んでいてもよい。また、リソース情報は、ある配線リソースの識別番号と、その配線リソースに接続されるスイッチリソースの内部の抵抗変化素子の識別番号とがリンクした情報として、配線リソースの有向グラフまたは無向グラフを含んでいてもよい。
次に、配置配線ツール12は、ネットリストに含まれる各論理要素をプログラマブル論理集積回路3の配置スロットに割り当てる(ステップS142)。
スロットとは、論理要素を配置する場所である。例えば、配置配線ツール12は、ネットの仮想配線長の総和を評価値(評価関数とも呼ぶ)として用いて、その評価関数を最小化する配置を探索する。例えば、ネットの仮想配線長は、そのネットに含まれる全ての論理要素のスロット位置を囲う矩形のx軸方向の長さと、y軸方向の長さとの和である。なお、配置配線ツール12が用いる評価関数はここで挙げた限りではない。
次に、配置配線ツール12は、ネットリストに含まれる各論理要素がいずれの配線リソースとスイッチリソースとを利用して接続するのかを決定する(ステップS143)。
例えば、配置配線ツール12は、遅延時間を最小化することと、配線経路が見つからないことを避けることとを実現するために、遅延コストと混雑コストとを含む評価関数を最小化する配線を探索する。遅延コストとは、配線経路の遅延時間に基づいて算出されるコストである。混雑コストとは、あるルーティングリソースに対して、競合しているネットの数に基づいて算出されるコストである。配置配線ツール12は、混雑コストを徐々に上げながら繰り返し配線を行うことによって、競合を解消していく。配置配線ツール12は、競合を解消できない場合、論理複製などの他の手順を用いて配線を実行してもよい。
以上が、配置配線ツール12による配置配線処理についての説明である。
〔信頼性制御処理〕
図5は、設計支援システム1の信頼性制御ツール13によって実行される信頼性制御処理(ステップS15)の詳細について説明するためのフローチャートである。図5のフローチャートに沿った以下の説明においては、信頼性制御ツール13を動作の主体として説明する。
信頼性制御ツール13は、信頼性モードとして第1信頼性モードが設定されると(ステップS151でYes)、信号経路を追加する(ステップS152)。この場合、信頼性制御ツール13は、回路の接続情報に基づいて、各ネットの既信号経路と並列な信号経路に配線リソースとスイッチリソースの割り当てを行う。ただし、信頼性制御ツール13は、他のネットの配線経路へ影響を及ぼさない範囲で並列な信号経路を探索する。
一方、信頼性制御ツール13は、信頼性モードとして第2信頼性モードが設定されると(ステップS151でNo)、信号経路の追加は行わない。
以上が、信頼性制御ツール13による信頼性制御処理についての説明である。続いて、並列な信号経路を追加する処理について、図面を参照しながら説明する。
図6は、プログラマブル論理集積回路3に含まれる2つのロジックブロックとそれらを接続するルーティングリソースとの一例を示す模式図である。図6において、論理要素としてのロジックブロック(LB0、LB1)は、2つの入力端子と1つの出力端子とを備える。図6において、ルーティングリソースは、2つのクロスバスイッチ(XB0、XB1)と2つのバッファ回路(BUF0、BUF1)とによって構成される。
クロスバスイッチ(XB0、XB1)は、配線リソースとスイッチリソースを有する。図6において、配線リソースは、列方向に延伸される4つの列配線と、行方向に延伸される4つの行配線によって構成される。図6において、スイッチリソースは、列配線と行配線との交差部に位置する複数の抵抗変化素子(図6においては16個)によって構成される。クロスバスイッチに含まれる抵抗変化素子の状態を遷移させることによって、列配線の任意の配線と行配線の任意の配線とを接続または切断できる。
クロスバスイッチXB0は、列配線A0および列配線A1を入力線とする。クロスバスイッチXB0の配線リソースの一つである列配線Y0は、ロジックブロックLB0の出力端子と接続される。また、クロスバスイッチXB0の配線リソースの一つである列配線C0は、接地される。クロスバスイッチXB0は、行配線I0および行配線I1を出力線とする。行配線I0および行配線I1は、ロジックブロックLB0の入力端子と接続される。クロスバスイッチXB0は、行配線B0および行配線B1を出力配線とする。行配線B0は、バッファ回路BUF0の入力端子と接続される。行配線B1は、バッファ回路BUF1の入力端子と接続される。
クロスバスイッチXB1は、列配線A2および列配線A3を入力線とする。列配線A2は、バッファ回路BUF0の出力端子と接続される。列配線A3は、バッファ回路BUF1の出力端子と接続される。クロスバスイッチXB1の配線リソースの一つである列配線Y1は、ロジックブロックLB1の出力端子と接続される。また、クロスバスイッチXB1の配線リソースの一つである列配線C1は接地される。クロスバスイッチXB1は、行配線I2および行配線I3を出力線とする。行配線I2および行配線I3は、ロジックブロックLB1の入力端子と接続される。クロスバスイッチXB1は、行配線B2および行配線B3を出力配線とする。
〔スイッチリソース〕
図7〜図11は、プログラマブル論理集積回路3に含まれるスイッチリソースの一例(第1〜第5の例)を示す模式図である。なお、図7〜図11の説明においては、同様の機能を発揮する構成要素については同じ符号を用いる場合がある。
図7に示す第1の例のスイッチリソース311は、ユニットセルU0を含む。ユニットセルU0は、第1端子T1と第2端子T2とを有する。第1端子T1は、列配線A0と接続される。第2端子T2は、行配線I0と接続される。スイッチリソース311は、ユニットセルU0がON状態のときに導通し、ユニットセルU0がOFF状態のときに遮断される。ユニットセルU0がON状態のとき、列配線A0と行配線I0との間に信号が伝播する。
図8に示す第2の例のスイッチリソース312は、抵抗変化素子R0、第1端子T1および第2端子T2によって構成されるユニットセルU0を含む。第1端子T1は列配線A0と接続され、第2端子T2は行配線I0と接続される。ユニットセルU0は、抵抗変化素子R0が低抵抗状態のときにON状態であると定義され、抵抗変化素子R0が高抵抗状態のときにOFF状態であると定義される。ユニットセルU0がON状態のとき、列配線A0と行配線I0との間に信号が伝播する。
図9に示す第3の例のスイッチリソース313は、抵抗変化素子R0、抵抗変化素子R1、第1端子T1および第2端子T2によって構成されるユニットセルU0を含む。ユニットセルU0に含まれる抵抗変化素子R0と抵抗変化素子R1とは、直列に接続される。第1端子T1は列配線A0と接続され、第2端子T2は行配線I0と接続される。ユニットセルU0は、抵抗変化素子R0および抵抗変化素子R1が低抵抗状態のときにON状態であると定義され、抵抗変化素子R0およびR1が高抵抗状態のときにOFF状態であると定義される。ユニットセルU0がON状態のとき、列配線A0と行配線I0との間に信号が伝播する。
図10に示す第4の例のスイッチリソース314は、トランジスタM0とメモリMEM0とによって構成される。トランジスタM0のソースおよびドレインの一方は列配線A0に接続され、他方は行配線I0に接続される。トランジスタM0のゲートは、メモリMEM0の出力N0に接続される。
図10のメモリMEM0は、ユニットセルU0およびユニットセルU1を含む。ユニットセルU0の第1端子T1は、電源Vddに接続される。ユニットセルU0の第2端子T2は、出力N0に接続される。ユニットセルU1の第3端子T3は、接地Gndに接続される。ユニットセルU1の第4端子T4は、出力N0に接続される。図10のユニットセルU0およびユニットセルU1には、図8および図9に示す抵抗変化素子を含む。
図10のスイッチリソース314は、ユニットセルU0がON状態であるとともに、ユニットセルU1がOFF状態であるとき、出力N0がHighレベル(Vdd電圧レベル)となり、信号を導通する。一方、図10のスイッチリソース314は、ユニットセルU0がOFF状態であるとともに、ユニットセルU1がON状態であるとき、出力N0がLowレベル(Gnd電圧レベル)となり、信号を遮断する。
図11に示す第5の例のスイッチリソース315は、トランジスタM0とメモリMEM0とによって構成される。トランジスタM0のソースおよびドレインの一方は列配線A0に接続され、他方は行配線I0に接続される。トランジスタM0のゲートは、メモリMEM0の出力N0に接続される。図11のメモリMEM0は、6つのトランジスタM1〜M6を含むSRAM(Static Random Access Memory)によって構成される。図11のスイッチリソース315は、出力N0がHighレベル(Vdd電圧レベル)のときに信号を導通し、出力N0がLowレベル(Gnd電圧レベル)のときに信号を遮断する。
図12は、配置配線ツール12が、ロジックブロックLB0の出力端子からLB1の入力端子への接続要求に応じて、既信号経路を配線した状態の一例である。図12は、列配線Y0、スイッチリソースE0、行配線B0、バッファ回路BUF0、列配線A2、スイッチリソースE2、行配線I2の順に既信号経路が配線された状態を示す。信頼性制御ツール13は、既信号経路に並列な信号経路の追加処理を行うに当たり、配線リソースに関するグラフに基づいて、並列な信号経路を探索する。ここでは、スイッチリソースE0、スイッチリソースE1、スイッチリソースE2、およびスイッチリソースE3が関連する抵抗変化素子である。
図13は、接続要求に対応する、既信号経路および並列な信号経路を示す有向グラフである。図13において、円で示すノードは配線を示し、矢尻付の実線(矢印)で示すエッジはスイッチリソースおよびバッファ回路のいずれかを示す。図13には、ある時間が経過した後に、ON状態からOFF状態へ変化するON状態保持の不良確率pをスイッチリソースに書き添えている。
図13には、配置配線ツール12が配線した既信号経路を示す。既信号経路は、列配線Y0、スイッチリソースE0、行配線B0、バッファ回路BUF0、列配線A2、スイッチリソースE2、行配線I2によって構成される信号経路である。また、図13には、信頼性制御ツール13が探索した並列な信号経路を1つ示している。並列経路は、列配線Y0、スイッチリソースE1、行配線B1、バッファ回路BUF1、列配線A3、スイッチリソースE3、行配線I2によって構成される信号経路である。例えば、既信号経路と並列経路とを含む有向グラフは、表示装置103に表示される。
既信号経路は、スイッチリソースのON状態の保持不良に起因して、ある時間が経過した後に、以下の式1で示す確率P1で信号伝搬エラーを起こす。
P1=2p(1−p)+p2≒2p・・・(1)
一方、既信号経路と並列な信号経路は、スイッチリソースのON状態の保持不良に起因して、ある時間が経過した後に、以下の式2で示す確率P2で信号伝搬エラーを起こす。
P2=[2p(1−p)+p22≒4p2・・・(2)
ON状態保持の不良確率pは1より十分小さいので、既信号経路と並列な信号経路を既信号経路に追加することによって、信号伝搬エラーの発生確率を低減できる。
図14は、信頼性モードとして第1信頼性モードが設定された際に、信頼性制御ツール13が、並列な信号経路を追加した後の模式図である。信頼性制御ツール13は、既信号経路と並列な信号経路に、同一の配線リソースを割り当てている。同様に、信頼性制御ツール13は、既信号経路と並列な信号経路に、同一の配線リソースを割り当てている。スイッチリソースの信頼性は配線リソースの信頼性に比べて低いため、スイッチリソースは並列化する必要があるが、配線リソースは並列化する必要がない。リソース消費と消費電力の観点から、配線リソースは既信号経路と並列な信号経路間で極力共有した方が望ましい。
信頼性モードとして第2信頼性モードが設定された際に、信頼性制御ツール13は、信号経路の追加は行わない。すなわち、第2信頼性モードが設定された状態は図12に相当する。第2信頼性モードは、第1信頼性モードが設定された場合(図14)に比べて、利用するスイッチリソース数を低減できる。したがって、第2信頼性モードによれば、スイッチリソースを構成する抵抗変化素子の書き換えが起こる頻度を低減できる。例えば、第2信頼性モードは、書き換え頻度が高い実装回路のデバッグ期間に有用である。
以上のように、本実施形態の設計支援システムによれば、第1信頼性モードが設定されると、抵抗変化素子によって構成されるスイッチリソースのON状態の保持不良に起因した信号伝搬エラーを低減し、実装する回路の信頼性を向上できる。また、本実施形態の設計支援システムによれば、第2信頼性モードが設定されると、第1信頼性モードに比べてプログラマブル論理集積回路に含まれる抵抗変化素子の書き換え回数を低減できる。
すなわち、本実施形態によれば、信頼性の高いプログラマブル論理集積回路を提供できる。
(第2の実施形態)
次に、本発明の第2の実施形態に係る設計支援システムについて図面を参照しながら説明する。本実施形態の設計支援システムは、信頼性モードに基づいた配置配線処理を実行する点で、第1の実施形態とは異なる。なお、本形態の設計支援システムの構成は、第1の実施の形態と同様であるため、説明を省略する。以下の説明においては、図1および図2を参照しながら、第1の実施形態の構成要素に付された符号を用いて説明する。
(動作)
まず、本実施形態の設計支援システムの動作について図面を参照しながら説明する。図15は、本実施形態の設計支援システムによる設計支援方法について説明するためのフローチャートである。
図15のフローチャートのステップS21〜S26の処理は、図3のフローチャートのステップS11〜S16の処理に対応する。本実施形態は、ステップS24の配置配線処理が第1の実施形態とは異なり、他の処理は第1の実施形態と同様である。
図15には、信頼性制御ツール13からの信頼性モードの設定を矢印で示す。なお、信頼性制御ツール13から配置配線ツール12へ信頼性モードを設定するタイミングは、任意に設定される。以下においては、配置配線処理(図15のステップS24)について詳細に説明する。
〔配置配線処理〕
図16は、配置配線ツール12による配置配線処理(図15のステップS24)について説明するためのフローチャートである。図16のフローチャートに沿った以下の説明においては、配置配線ツール12を動作の主体として説明する。
図16において、まず、配置配線ツール12は、論理要素やルーティングリソース等のリソース情報を生成する(ステップS241)。
次に、配置配線ツール12は、ネットリストに含まれる各論理要素をプログラマブル論理集積回路3の配置スロットに割り当てる(ステップS242)。
ここで、配置配線ツール12は、信頼性制御ツール13からの信頼性モードの設定に基づいた配線処理を実行する。
第1信頼性モードが設定された場合(ステップS243でYes)、配置配線ツール12は、第1信頼性モードの配線処理を実行する(ステップS244)。第1信頼性モードの配線処理において、配置配線ツール12は、ネットリストに含まれる各論理要素の接続を第1の信号経路と第2の信号経路とによって構成する。配置配線ツール12は、第1信頼性モードの配線処理において、第1の信号経路および第2の信号経路がいずれの配線リソースおよびスイッチリソースを利用して接続するのかを決定する。
例えば、配置配線ツール12は、遅延コストおよび混雑コストを含む評価値(評価関数とも呼ぶ)を最小化する配線を探索する。配置配線ツール12は、配線経路の遅延時間に基づいて遅延コストを算出する。配置配線ツール12は、ある配線リソースに対して競合するネットの数に基づいて混雑コストを算出する。配置配線ツール12は、混雑コストを徐々に上げながら、繰り返し配線を行うことによって競合を解消していく。競合が解消されない場合、配置配線ツール12は、論理複製などの他の手順を用いて配線を実行する。
一方、第2信頼性モードが設定された場合(ステップS243でNo)、配置配線ツール12は、第2信頼性モードの配線処理を実行する。第2信頼性モードの配線処理において、配置配線ツール12は、ネットリストに含まれる各論理要素がいずれの配線リソースとスイッチリソースとを利用して接続するのかを決定する(ステップS245)。
以上が、本実施形態の設計支援システムの処理についての説明である。
以上のように、本実施形態の設計支援システムは、遅延コストおよび混雑コストを含めた評価関数を用いて一括して配線を行う。そのため、本実施形態によれば、第1の実施形態と比較して、配線経路の選択肢が増えるため、より最適な配線経路が選択されうる。
(第3の実施形態)
次に、本発明の第3の実施形態に係る設計支援システムについて図面を参照しながら説明する。本実施形態の設計支援システムは、抵抗変化素子の書き換え履歴情報を生成する点で、第1の実施形態とは異なる。なお、本形態の設計支援システムの構成は、第1の実施の形態と同様であるため、説明を省略する。以下の説明においては、図1を参照しながら、第1の実施形態の構成要素に付された符号を用いて説明する。
〔設計支援ツール群〕
図17は、本実施形態の設計支援システムが備える設計支援ツール群30の構成を示すブロック図である。図17の設計支援ツール群30は、図1の記憶装置102にあらかじめ格納されており、演算装置101が記憶装置から読み出して実行するツールである。図17のように、本実施形態の設計支援ツール群30は、論理合成ツール31、配置配線ツール32、信頼性制御ツール33、および書き換え履歴情報生成ツール34を有する。なお、論理合成ツール31、配置配線ツール32、および信頼性制御ツール33は、第1の実施形態の対応する構成要素と同様であるため、説明は省略する。
書き換え履歴情報生成ツール34(書き換え履歴情報生成手段とも呼ぶ)は、プログラマブル論理集積回路3から読み出された構成情報に基づいて、デバイス固有の書き換え履歴情報を生成する。書き換え履歴情報は、プログラマブル論理集積回路3が備える論理要素や接続要素に含まれる抵抗変化素子の状態を示すアドレス情報と、変更(書き換え)回数を示す書き換え回数情報とを含む。
〔スイッチリソース〕
図18および図19は、プログラマブル論理集積回路3に含まれるスイッチリソースの一例(第6および第7の例)を示す模式図である。本実施形態では、スイッチリソース内のユニットセルをあらかじめ2つ用意し、それらのユニットセルを並列に接続する。なお、図18および図19に示すユニットセルは、図8および図9に示す抵抗変化素子によって構成されるユニットセルである。また、図18および図19の説明においては、同様の機能を発揮する構成要素については同じ符号を用いる場合がある。
図18に示す第6の例のスイッチリソース331は、ユニットセルU0とユニットセルU1とを含むユニットセル対UP0によって構成する。ユニットセルU0は、第1端子T1と第2端子T2とを含む。ユニットセルU1は、第3端子T3と第4端子T4とを含む。第1端子T1および第3端子T3は、列配線A0と接続される。第2端子T2および第4端子T4は、行配線I0と接続される。
ユニットセル対UP0には、第1のON状態、第2のON状態、およびOFF状態の3つの状態が定義される。第1のON状態は、ユニットセルU0およびユニットセルU1がともにON状態の状態である。第2のON状態は、ユニットセルU0およびユニットセルU1のいずれか一方がON状態であり、他方がOFF状態の状態である。OFF状態は、ユニットセルU0およびユニットセルU1がともにOFF状態の状態である。スイッチリソース331は、ユニットセル対UP0が第1のON状態、もしくは第2のON状態のときに信号を導通する。一方、スイッチリソース331は、ユニットセル対UP0がOFF状態のときに信号を遮断する。
図19に示す第2の例のスイッチリソース332は、トランジスタM0とメモリMEM0とによって構成される。トランジスタM0のソースおよびドレインのうち一方は列配線A0に接続され、他方は行配線I0に接続される。トランジスタM0のゲートは、メモリの出力N0に接続される。
図19のメモリMEM0は、4つのユニットセルU0、U1、U2、およびU3を含む。図19のメモリMEM0は、ユニットセルU0およびユニットセルU1によって構成されるユニットセル対UP1と、ユニットセルU2およびユニットセルU3によって構成されるユニットセル対UP2とを含む。ユニットセル対UP1およびユニットセル対UP2には、図18のスイッチリソース331に含まれるユニットセル対UP0と同様に、第1のON状態、第2のON状態、およびOFF状態の3つの状態が定義される。
ユニットセルU0は、第1端子T1と第2端子T2とを含む。ユニットセルU1は、第3端子T3と第4端子T4とを含む。第1端子T1および第3端子T3は、電源Vddに接続される。第2端子T2および第4端子T4は、出力N0に接続される。ユニットセルU2は、第5端子T5と第6端子T6とを含む。ユニットセルU3は、第7端子T7と第8端子T8とを含む。第5端子T5および第7端子T7は、接地Gndに接続される。第6端子T6および第8端子T8は、出力N0に接続される。
スイッチリソース332は、ユニットセル対UP1が第1のON状態、ユニットセル対UP2がOFF状態のとき、出力N0がHighレベル(Vdd電圧レベル)となり、信号を導通する。また、スイッチリソース332は、ユニットセル対UP1が第2のON状態、ユニットセル対UP2がOFF状態のとき、出力N0がHighレベル(Vdd電圧レベル)となり、信号を導通する。
一方、スイッチリソース332は、ユニットセル対UP1がOFF状態、ユニットセル対UP2が第1のON状態のとき、出力N0がLowレベル(Gnd電圧レベル)となり、信号を遮断する。また、スイッチリソース332は、ユニットセル対UP1がOFF状態、ユニットセル対UP2が第2のON状態のとき、出力N0がLowレベル(Gnd電圧レベル)となり、信号を遮断する。
以上が、プログラマブル論理集積回路3に含まれるスイッチリソースの構成についての説明である。続いて、本実施形態の設計支援システムの動作について図面を参照しながら説明する。
(動作)
図20は、本実施形態の設計支援システムによる設計支援方法について説明するためのフローチャートである。ここでは、既に回路Aが実装されたプログラマブル論理集積回路3に、回路Aと異なる回路Bを実装する例について説明する。
図20のフローチャートのステップS31〜S36の処理は、図3のフローチャートのステップS11〜S16の処理に対応する。本実施形態は、書き換え履歴情報生成処理(ステップS37)を行う点が第1の実施形態とは異なり、他の処理は第1の実施形態と同様である。以下においては、書き換え履歴情報生成処理(ステップS37)について説明する。
書き換え履歴情報生成ツール34は、プログラマブル論理集積回路3が有する各抵抗変化素子のアドレス情報と、各抵抗変化素子の状態の書き換え回数を示す情報とが含まれる書き換え履歴情報を生成する(ステップS37)。
書き換え履歴情報生成ツール34は、コンフィグレーションされた後のプログラマブル論理集積回路3に、プログラマブル論理集積回路3から読み出される構成情報(回路B)と、既に実装されている回路Aの構成情報とを比較する。書き換え履歴情報生成ツール34は、回路Bの構成情報と回路Aの構成情報との差分を取ることによって、書き換え履歴情報を更新する。なお、書き換え履歴情報生成ツール34は、回路Bの構成情報のコンフィグレーションに先立って回路Aの構成情報を読み出すなどして、回路Aの構成情報をあらかじめ入手する。書き換え履歴情報生成ツール34は、更新した書き換え履歴情報を信頼性制御ツール33に供給する。信頼性制御ツール33に供給された書き換え履歴情報は、次回の配置配線の際に信頼性制御ツール33によって利用される。図20のステップS37からステップS35への矢印は、ステップS37で生成される書き換え履歴情報を、ステップS34の信頼性制御処理に反映させることを示す。
〔信頼性制御処理〕
図21は、信頼性制御ツール33が行う信頼性制御処理(図20のステップS35)について説明するためのフローチャートである。以下においては、図18に示すスイッチリソース331を用いる例について説明する。信頼性制御ツール33は、配置配線ツール32による配置配線の結果、信号経路に割り当てられたスイッチリソース331に対し、いずれの抵抗変化素子をON状態にするかを制御する。
図21において、まず、信頼性制御ツール33は、信頼性モードとして第1信頼性モードが設定されると(ステップS351でYes)、スイッチリソース331に含まれるユニットセル対UP0を第1のON状態に設定する(ステップS352)。
一方、信頼性制御ツール33は、信頼性モードとして第2信頼性モードが設定されると(ステップS351でNo)、スイッチリソース331に含まれるユニットセル対UP0を第2のON状態に設定する(ステップS353)。
信頼性制御ツール33は、ユニットセル対UP0を第2のON状態に設定する際に、書き換え履歴情報に基づいて、いずれの抵抗変化素子の抵抗状態を書き換えるかを決定する。図21において、信頼性制御ツール33は、ユニットセルU0の書き換え回数と、ユニットセルU1の書き換え回数とを比較して、抵抗状態を書き換える抵抗変化素子を決定する(ステップS354)。
信頼性制御ツール33は、ユニットセルU0の書き換え回数の方が小さい場合(ステップS354でYes)、ユニットセルU0をON状態に設定する(ステップS355)。一方、信頼性制御ツール33は、ユニットセルU1の書き換え回数の方が小さい場合(ステップS354でNo)、ユニットセルU1をON状態に設定する(ステップS356)。すなわち、信頼性制御ツール33は、ユニットセルU0およびユニットセルU1のうち書き換え回数が小さい方に含まれる抵抗変化素子の抵抗状態を書き換える。
以上のように、本実施形態の設計支援システムは、二つのユニットセルが並列に接続された構成を有するユニットセル対を含むプログラマブル論理集積回路の設計を支援する。本実施の形態の設計支援システムによれば、並列な信号経路の探索に失敗する確率を低減し、実装する回路の信頼性を向上できる。
また、本実施形態の設計支援システムは、ユニットセル対を構成するユニットセルの書き換え情報に基づいて、書き換えが少ない方のユニットセルを優先的に書き換える。そのため、本実施形態の設計支援システムによれば、プログラマブル論理集積回路に含まれる抵抗変化素子の書き換え回数を平準化できる。複数の抵抗変化素子の書き換え回数を平準化できれば、抵抗変化素子ごとの書き換え回数が極端に異なることがなくなるため、各抵抗変化素子の寿命が延びる。
(第4の実施形態)
次に、本発明の第4の実施形態に係る設計支援システムについて図面を参照しながら説明する。本実施形態の設計支援システムは、抵抗変化素子の書き込み情報を含めた構成情報を生成する点で、第1の実施形態とは異なる。なお、本形態の設計支援システムの構成は、第1の実施の形態と同様であるため、説明を省略する。以下の説明においては、図1を参照しながら、第1の実施形態の構成要素に付された符号を用いて説明する。
(動作)
まず、本実施形態の設計支援システムの動作について図面を参照しながら説明する。図22は、本実施形態の設計支援システムによる設計支援方法について説明するためのフローチャートである。
図22のフローチャートのステップS41〜S46の処理は、図3のフローチャートのステップS11〜S16の処理に対応する。本実施形態は、ステップS46の構成情報生成処理が第1の実施形態とは異なり、他の処理は第1の実施形態と同様である。
信頼性制御ツール13は、信頼性モードに基づいて、抵抗変化素子の書き込み条件として、書き込み電圧、書き込みパルス幅、および書き込みパルスの数を指示する情報を含む構成情報を生成する。信頼性モードは、ある期間にデータ保持不良に起因した信号伝搬エラーが発生する確率の制約条件を規定する。信頼性制御ツール13は、抵抗変化素子が構成するリソースの種類や、信号経路、抵抗変化素子のデータ保持不良のうち少なくとも1つの情報を用いて、ある期間にデータ保持不良に起因した信号伝搬エラーが発生する予測確率を算出する。信頼性制御ツール13は、信号伝搬エラーが発生する確率の制約条件を満たすように、抵抗変化素子の書き込み条件を設定する。
抵抗状態を変化させてからある時間経過後にON状態からOFF状態へ変化するON状態保持の不良確率や、ある時間経過後にOFF状態からON状態へ変化するOFF状態保持の不良確率は、書き込み条件によって変化する。書き込みの電圧やパルス幅が大きいほど、ON状態保持の不良確率やOFF状態保持の不良確率は低減できる傾向にある。
例えば、信頼性制御ツール13は、抵抗変化素子のON状態保持の不良確率やOFF状態保持の不良確率から、リソースの種類ごとに、ある時間が経過した後に正常に動作しなくなる誤動作確率を算出できる。リソースの例としては、図7〜図10、図18および図19に示すスイッチリソースが挙げられる。また、図10に示すメモリMEM0や、図19に示すメモリMEM0を演算要素の構成情報の記憶部分として利用する際には、その演算要素がリソースとして挙げられる。
信頼性制御ツール13は、リソースの誤動作確率から、ある信号経路の信号伝搬エラーを算出できる。信号経路としては、図12および図14に示す信号経路が挙げられる。また、信頼性制御ツール13は、式1および式2に示す計算式を用いて、各信号経路に対応する信号伝搬エラーを算出できる。
信頼性制御ツール13は、各信号経路の信号伝搬エラーに基づいて、実装する回路全体において信号伝搬エラーが発生する予測確率を算出できる。そして、信頼性制御ツール13は、信号伝搬エラーが発生する確率の制約条件を満たすように、配線を繰り返したり、各抵抗変化素子の書き込み条件を変更したりすることによって、各抵抗変化素子の書き込み条件を設定する。
以上のように、本実施形態の設計支援システムは、書き込み電圧や書き込みパルス幅、書き込みパルスの数を指示する書き込み情報を含む構成情報を生成する。そのため、本実施の形態の設計支援システムによれば、実装した回路の保持特性を最適化できる。
以上、実施形態を参照して本発明を説明してきたが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
例えば、プログラマブル論理集積回路に含まれる抵抗変化素子の一部をSRAM等の他のメモリ素子に置き換えてもよい。また、プログラマブル論理集積回路に含まれる抵抗変化素子の一部をパストランジスタとSRAM等の他のメモリ素子とを組み合わせた回路に置き換えてもよい。また、各構成要素に各機能(処理)のそれぞれを分担させて説明したが、この割り当ては上述したものに限定しない。また、構成要素についても、上述した形態はあくまでも例であって、これに限定しない。
上述した設計支援システムに設けられた各構成要素が行う処理は、目的に応じてそれぞれ作製された論理回路によって行うようにしてもよい。また、処理内容を手順として記述したコンピュータプログラム(以下、プログラムと称する)を設計支援システムにて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを設計支援システムに読み込ませ、実行してもよい。記録媒体には、フロッピー(登録商標)ディスクや、光磁気ディスク、DVD(Digital Versatile Disc)、CD(Compact Disc)、Blu−ray(登録商標)ディスクなどの移設可能な記録媒体を用いることができる。また、設計支援システムに内蔵されたROM(Read Only Memory)、RAM(Random Access Memory)等のメモリやHDD(Hard Disc Drive)等を記録媒体としてもよい。記録媒体に記録されたプログラムは、設計支援システムに設けられたCPU(Central Processing Unit)にて読み込まれ、CPUの制御によって処理される。CPUは、プログラムが記録された記録媒体から読み込まれたプログラムを実行するコンピュータとして動作する。
また、本発明に係る実施形態の設計支援システムの構成要素は、任意に組み合わせることができる。また、本発明に係る実施形態の設計支援システムの構成要素は、ソフトウェアによって実現してもよいし、回路によって実現してもよい。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
プログラマブル論理集積回路の動作記述ファイルを入力とし、入力した前記動作記述ファイルを論理合成し、前記プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成する論理合成手段と、
前記プログラマブル論理集積回路のリソース情報を生成し、生成した前記リソース情報に基づいて前記ネットリストに含まれる前記論理要素を配置し、配置した前記論理要素の間を配線して信号経路を仮想的に生成する配置配線手段と、
少なくとも二つの信頼性モードに基づいて前記プログラマブル論理集積回路の構成情報を生成し、生成した前記構成情報を出力する信頼性制御手段とを備える設計支援システム。
(付記2)
前記信頼性制御手段は、
前記配置配線手段によって配線された第1の信号経路と並列な第2の信号経路に配線リソースおよびスイッチリソースの割り当てを行う第1信頼性モードと、前記配置配線手段によって配線された第1の信号経路に前記信号経路を追加しない第2信頼性モードとに基づいて前記プログラマブル論理集積回路の前記構成情報を生成する付記1に記載の設計支援システム。
(付記3)
前記信頼性制御手段は、
前記第1信頼性モードにおいて、前記第1の信号経路と前記第2の信号経路とに同一の前記配線リソースを割り当てる付記2に記載の設計支援システム。
(付記4)
前記配置配線手段は、
配線経路の遅延時間に基づいた遅延コストと、前記配線リソースおよび前記スイッチリソースのうち少なくともいずれかに対して競合するネットの数に基づいた混雑コストとを含む評価関数を最小化する前記信号経路を探索する付記2または3に記載の設計支援システム。
(付記5)
前記信頼性制御手段は、
前記配置配線手段に対して前記信頼性モードを設定し、
前記配置配線手段は、
前記信頼性制御手段によって設定された前記信頼性モードに基づいて、前記第1の信号経路および前記第2の信号経路にいずれかの前記配線リソースおよび前記スイッチリソースを割り当てる付記2乃至4のいずれか一項に記載の設計支援システム。
(付記6)
少なくとも二つの抵抗変化素子によって構成されるユニットセルを前記スイッチリソースとして少なくとも一つ含む前記プログラマブル論理集積回路から読み出された前記構成情報に基づいて、前記プログラマブル論理集積回路に含まれる前記抵抗変化素子の状態を示すアドレス情報と、前記抵抗変化素子の書き換え回数を示す書き換え回数情報とを含む書き換え履歴情報を前記抵抗変化素子ごとに生成する書き換え履歴情報生成手段を備え、 前記書き換え履歴情報生成手段は、
前記信頼性制御手段によって生成された前記構成情報が前記プログラマブル論理集積回路にコンフィグレーションされた後に、前記プログラマブル論理集積回路から読み出される前記構成情報と、既に前記プログラマブル論理集積回路に実装されている回路の前記構成情報との差分を取ることによって前記書き換え履歴情報を更新し、更新した前記書き換え履歴情報を前記信頼性制御手段に供給する付記2乃至5のいずれか一項に記載の設計支援システム。
(付記7)
前記信頼性制御手段は、
前記書き換え履歴情報生成手段によって更新された前記書き換え履歴情報に基づいて、書き換えが少ない方の前記抵抗変化素子を優先的に書き換える付記6に記載の設計支援システム。
(付記8)
前記信頼性制御手段は、
前記プログラマブル論理集積回路は、少なくとも一つの抵抗変化素子によって構成される前記スイッチリソースを少なくとも一つ含む前記プログラマブル論理集積回路に関して、前記抵抗変化素子の書き込み条件として、書き込み電圧、書き込みパルス幅および書き込みパルスの数を指示する情報を含む前記構成情報を前記信頼性モードに基づいて生成する付記2乃至6のいずれか一項に記載の設計支援システム。
(付記9)
プログラマブル論理集積回路の動作記述ファイルを論理合成し、
前記プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成し、 前記プログラマブル論理集積回路のリソース情報を生成し、
生成した前記リソース情報に基づいて前記ネットリストに含まれる前記論理要素を配置し、
配置した前記論理要素の間を配線して仮想的に信号経路を生成し、
少なくとも2つの信頼性モードに基づいて前記プログラマブル論理集積回路の構成情報を生成し、
生成した前記構成情報を出力する設計支援方法。
(付記10)
入力されたプログラマブル論理集積回路の動作記述ファイルを論理合成する処理と、
前記プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成する処理と、
前記プログラマブル論理集積回路のリソース情報を生成する処理と、
生成した前記リソース情報に基づいて前記ネットリストに含まれる前記論理要素を配置する処理と、
配置した前記論理要素の間を配線して信号経路を仮想的に生成する処理と、
少なくとも2つの信頼性モードに基づいて前記プログラマブル論理集積回路の構成情報を生成する処理と、
生成した前記構成情報を出力する処理とをコンピュータに実行させるプログラム。
(付記11)抵抗変化素子を備えるプログラマブル論理集積回路に実装する回路の設計を支援する設計支援システムであって、
少なくとも2つの信頼性モードを設定可能な信頼性制御部を有し、
前記信頼性制御部は、前記信頼性モードに基づいて、前記抵抗変化素子を用いた前記回路の構成情報を生成する設計支援システム。
(付記12)前記回路は第1の接続情報を有し、
前記信頼性モードとして、第1の信頼性モードが設定されると、
前記信頼性制御部は、前記第1の接続情報に基づき、第1の信号経路と第2の信号経路に対する前記プログラマブル論理集積回路の配線リソースとスイッチリソースの割り当てを管理し、
前記第1の信号経路と前記第2の信号経路は電気的に並列であることを特徴とする付記11に記載の設計支援システム。
(付記13)前記信頼性制御部は、前記第1の信号経路と前記第2の信号経路に、同一の配線リソースを割り当てる機能を有する付記12に記載の設計支援システム。
(付記14)さらに配線リソースとスイッチリソースを割り当てる配線部を有し、
前記信頼性制御部は、前記第1の信号経路と、前記第2の信号経路に、配線リソースとスイッチリソースを割り当てるように前記配線部に対して指示する付記12または13に記載の設計支援システム。
(付記15)前記スイッチリソースはユニットセルを備え、
前記ユニットセルは第1端子と第2端子を備え、
前記ユニットセルは、1つの抵抗変化素子、もしくは、直列に接続された2つ以上の抵抗変化素子から構成され、
前記スイッチリソースを用いた前記回路の構成情報を生成する付記12乃至14のいずれか一項に記載の設計支援システム。
(付記16)前記スイッチリソースはトランジスタとメモリとを備え、
前記トランジスタはソース端子とドレイン端子とゲート端子を備え、
前記ゲート端子は前記メモリの出力端子と接続され、
前記スイッチリソースを用いた前記回路の構成情報を生成する付記12乃至15のいずれか一項に記載の設計支援システム。
(付記17)前記スイッチリソースは第1ユニットセルと第2ユニットセルを備え、
前記第1ユニットセルは第1端子と第2端子を備え、
前記第1ユニットセルは、1つの抵抗変化素子、もしくは、直列に接続された2つ以上の抵抗変化素子から構成され、
前記第2ユニットセルは第3端子と第4端子を備え、
前記第2ユニットセルは、1つの抵抗変化素子、もしくは、直列に接続された2つ以上の抵抗変化素子から構成され、
前記第1端子と第3端子が接続され、
前記第2端子と第4端子が接続され、
前記スイッチリソースを用いた前記回路の構成情報を生成する付記12乃至16のいずれか一項に記載の設計支援システム。
(付記18)前記抵抗変化素子の状態の変更回数を示す書き換え履歴情報を生成する書き換え履歴情報生成部を有し、
前記信頼性モードとして、第2の信頼性モードが設定されると、
前記信頼性制御部は、前記書き換え履歴情報に基づいて、割り当てられた前記スイッチリソースのうち、第1ユニットセルと第2ユニットセルのどちらか一方に含まれる抵抗変化素子をON状態に設定する付記12乃至17のいずれか一項に記載の設計支援システム。
(付記19)前記信頼性制御部は、前記抵抗変化素子の書き込み条件として、書き込み電圧、書き込みパルス幅、書き込みパルスの数を指示する情報を含む構成情報を生成し、
前記信頼性モードは、ある期間にデータ保持不良に起因した信号伝搬エラーが発生する確率の制約条件を規定し、
前記信頼性制御部は、前記抵抗変化素子が構成するリソースの種類、信号経路、抵抗変化素子のデータ保持不良のうち少なくとも1つの情報から、ある期間にデータ保持不良に起因した信号伝搬エラーが発生する予測確率を算出し、前記信号伝搬エラーが発生する確率の制約条件を満たすように、前記書き込み条件を決定する付記11乃至18のいずれか一項に記載の設計支援システム。
(付記20)抵抗変化素子を備えるプログラマブル論理集積回路に実装する回路の設計を支援する設計支援方法であって、
少なくとも2つの信頼性モードの設定処理と、
前記信頼性モードに基づいて、前記回路の構成情報の生成処理と行い、
前記回路は第1の接続情報を有し、
前記信頼性モードとして、第1の信頼性モードが設定されると、
前記第1の接続情報に基づき、第1の信号経路と第2の信号経路に対する前記プログラマブル論理集積回路の配線リソースとスイッチリソースの割り当て管理処理を行い、
前記第1の信号経路と前記第2の信号経路は電気的に並列であることを特徴とする設計支援方法。
この出願は、2017年11月29日に出願された日本出願特願2017−228490を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1 設計支援システム
2 構成情報転送装置
3 プログラマブル論理集積回路
10、30 設計支援ツール群
11、31 論理合成ツール
12、32 配置配線ツール
13、33 信頼性制御ツール
34 書き換え履歴情報生成ツール
101 演算装置
102 記憶装置
103 表示装置
104 入出力装置
105 バス
311、312、313、314、315、331、332 スイッチリソース

Claims (9)

  1. プログラマブル論理集積回路の動作記述ファイルを入力とし、入力した前記動作記述ファイルを論理合成し、前記プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成する論理合成手段と、
    前記プログラマブル論理集積回路のリソース情報を生成し、生成した前記リソース情報に基づいて前記ネットリストに含まれる前記論理要素を配置し、配置した前記論理要素の間を配線して信号経路を仮想的に生成する配置配線手段と、
    少なくとも二つの信頼性モードに基づいて前記プログラマブル論理集積回路の構成情報を生成し、生成した前記構成情報を出力する信頼性制御手段とを備え
    前記信頼性制御手段は、前記配置配線手段によって配線された第1の信号経路と並列な第2の信号経路に配線リソースおよびスイッチリソースの割り当てを行う第1信頼性モードと、前記配置配線手段によって配線された第1の信号経路に前記信号経路を追加しない第2信頼性モードとに基づいて前記プログラマブル論理集積回路の前記構成情報を生成す
    設計支援システム。
  2. 前記信頼性制御手段は、
    前記第1信頼性モードにおいて、前記第1の信号経路と前記第2の信号経路とに同一の前記配線リソースを割り当てる請求項に記載の設計支援システム。
  3. 前記配置配線手段は、
    配線経路の遅延時間に基づいた遅延コストと、前記配線リソースおよび前記スイッチリソースのうち少なくともいずれかに対して競合するネットの数に基づいた混雑コストとを含む評価関数を最小化する前記信号経路を探索する請求項またはに記載の設計支援システム。
  4. 前記信頼性制御手段は、
    前記配置配線手段に対して前記信頼性モードを設定し、
    前記配置配線手段は、
    前記信頼性制御手段によって設定された前記信頼性モードに基づいて、前記第1の信号経路および前記第2の信号経路にいずれかの前記配線リソースおよび前記スイッチリソースを割り当てる請求項乃至のいずれか一項に記載の設計支援システム。
  5. 少なくとも二つの抵抗変化素子によって構成されるユニットセルを前記スイッチリソースとして少なくとも一つ含む前記プログラマブル論理集積回路から読み出された前記構成情報に基づいて、前記プログラマブル論理集積回路に含まれる前記抵抗変化素子の状態を示すアドレス情報と、前記抵抗変化素子の書き換え回数を示す書き換え回数情報とを含む書き換え履歴情報を前記抵抗変化素子ごとに生成する書き換え履歴情報生成手段を備え、
    前記書き換え履歴情報生成手段は、
    前記信頼性制御手段によって生成された前記構成情報が前記プログラマブル論理集積回路にコンフィグレーションされた後に、前記プログラマブル論理集積回路から読み出される前記構成情報と、既に前記プログラマブル論理集積回路に実装されている回路の前記構成情報との差分を取ることによって前記書き換え履歴情報を更新し、更新した前記書き換え履歴情報を前記信頼性制御手段に供給する請求項乃至のいずれか一項に記載の設計支援システム。
  6. 前記信頼性制御手段は、
    前記書き換え履歴情報生成手段によって更新された前記書き換え履歴情報に基づいて、書き換えが少ない方の前記抵抗変化素子を優先的に書き換える請求項に記載の設計支援システム。
  7. 前記信頼性制御手段は、
    前記プログラマブル論理集積回路は、少なくとも一つの抵抗変化素子によって構成される前記スイッチリソースを少なくとも一つ含む前記プログラマブル論理集積回路に関して、前記抵抗変化素子の書き込み条件として、書き込み電圧、書き込みパルス幅および書き込みパルスの数を指示する情報を含む前記構成情報を前記信頼性モードに基づいて生成する請求項乃至のいずれか一項に記載の設計支援システム。
  8. コンピュータが、
    プログラマブル論理集積回路の動作記述ファイルを論理合成し、
    前記プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成し、
    前記プログラマブル論理集積回路のリソース情報を生成し、
    生成した前記リソース情報に基づいて前記ネットリストに含まれる前記論理要素を配置し、
    配置した前記論理要素の間を配線して仮想的に信号経路を生成し、
    少なくとも2つの信頼性モードに基づいて前記プログラマブル論理集積回路の構成情報を生成し、
    生成した前記構成情報を出力し、
    配線された第1の信号経路と並列な第2の信号経路に配線リソースおよびスイッチリソースの割り当てを行う第1信頼性モードと、配線された第1の信号経路に前記信号経路を追加しない第2信頼性モードとに基づいて前記プログラマブル論理集積回路の前記構成情報を生成する設計支援方法。
  9. 入力されたプログラマブル論理集積回路の動作記述ファイルを論理合成する処理と、
    前記プログラマブル論理集積回路に含まれる論理要素を用いてネットリストを生成する処理と、
    前記プログラマブル論理集積回路のリソース情報を生成する処理と、
    生成した前記リソース情報に基づいて前記ネットリストに含まれる前記論理要素を配置する処理と、
    配置した前記論理要素の間を配線して信号経路を仮想的に生成する処理と、
    少なくとも2つの信頼性モードに基づいて前記プログラマブル論理集積回路の構成情報を生成する処理と、
    生成した前記構成情報を出力する処理と
    配線された第1の信号経路と並列な第2の信号経路に配線リソースおよびスイッチリソースの割り当てを行う第1信頼性モードと、配線された第1の信号経路に前記信号経路を追加しない第2信頼性モードとに基づいて前記プログラマブル論理集積回路の前記構成情報を生成する処理とをコンピュータに実行させるプログラム。
JP2019557176A 2017-11-29 2018-11-21 設計支援システム、設計支援方法およびプログラム Active JP6944728B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017228490 2017-11-29
JP2017228490 2017-11-29
PCT/JP2018/042926 WO2019107234A1 (ja) 2017-11-29 2018-11-21 設計支援システム、設計支援方法およびプログラム記録媒体

Publications (2)

Publication Number Publication Date
JPWO2019107234A1 JPWO2019107234A1 (ja) 2020-11-19
JP6944728B2 true JP6944728B2 (ja) 2021-10-06

Family

ID=66663894

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019557176A Active JP6944728B2 (ja) 2017-11-29 2018-11-21 設計支援システム、設計支援方法およびプログラム

Country Status (3)

Country Link
US (1) US20200380190A1 (ja)
JP (1) JP6944728B2 (ja)
WO (1) WO2019107234A1 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04345210A (ja) * 1991-05-22 1992-12-01 Kawasaki Steel Corp プログラマブルロジックデバイス
JP2012221077A (ja) * 2011-04-06 2012-11-12 Hitachi Ltd Fpga設計支援システムおよびfpga設計支援方法ならびにfpga設計支援プログラム
US10740435B2 (en) * 2015-05-29 2020-08-11 Nec Corporation Programmable logic integrated circuit, design support system, and configuration method

Also Published As

Publication number Publication date
WO2019107234A1 (ja) 2019-06-06
US20200380190A1 (en) 2020-12-03
JPWO2019107234A1 (ja) 2020-11-19

Similar Documents

Publication Publication Date Title
JP6860916B2 (ja) プログラマブル論理集積回路、設計支援システム及びコンフィグレーション方法
US8555218B2 (en) Decision modules
US9455715B2 (en) Apparatus for improving reliability of electronic circuitry and associated methods
JP6250548B2 (ja) 再構成可能な半導体装置の論理構成方法
US10699054B2 (en) Standard cell library, integrated circuit including synchronous circuit, and computing system for designing the integrated circuit
US20140021981A1 (en) Integrated circuits with logic regions having input and output bypass paths for accessing registers
US9257986B2 (en) Rescaling
US6425115B1 (en) Area efficient delay circuits
JP2011233559A (ja) 半導体集積回路及びその設計方法
JP2020154803A (ja) 回路設計方法およびプログラム
Xue et al. Routing path reuse maximization for efficient NV-FPGA reconfiguration
KR102611888B1 (ko) 스위칭 액티비티에 기초한 반도체 장치의 배치 방법 및 이에 의해 제조된 반도체 장치
JP6944728B2 (ja) 設計支援システム、設計支援方法およびプログラム
US10339241B1 (en) Methods for incremental circuit design legalization during physical synthesis
US8788987B2 (en) Rescaling
US9742405B2 (en) Semiconductor integrated circuit
US20080229265A1 (en) Design Structure for a Clock Distribution Network, Structure, and Method for Providing Balanced Loading in Integrated Circuit Clock Trees
WO2018139408A1 (ja) 設計支援システムおよび設計支援方法
JP4562679B2 (ja) データフローグラフ生成装置
KR102563928B1 (ko) 표준 셀 라이브러리, 동기 회로를 포함하는 집적 회로 및 집적 회로를 설계하기 위한 컴퓨팅 시스템
US8065648B1 (en) Method and apparatus for modeling an integrated circuit in a computer aided design system
Hill Architecture and Synthesis for Dynamically Reconfigurable Asynchronous FPGAs
Ghosh et al. 4th Generation Programmable Logic Computing: A Road Map
JP2008090869A (ja) 処理装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200422

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200422

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20201228

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20201228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210323

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210517

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210810

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210906

R150 Certificate of patent or registration of utility model

Ref document number: 6944728

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250