JP5791797B2 - Lsi設計装置及びlsi設計方法及びプログラム - Google Patents

Lsi設計装置及びlsi設計方法及びプログラム Download PDF

Info

Publication number
JP5791797B2
JP5791797B2 JP2014516788A JP2014516788A JP5791797B2 JP 5791797 B2 JP5791797 B2 JP 5791797B2 JP 2014516788 A JP2014516788 A JP 2014516788A JP 2014516788 A JP2014516788 A JP 2014516788A JP 5791797 B2 JP5791797 B2 JP 5791797B2
Authority
JP
Japan
Prior art keywords
input
selector
signal
functional blocks
output flow
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.)
Expired - Fee Related
Application number
JP2014516788A
Other languages
English (en)
Other versions
JPWO2013176077A1 (ja
Inventor
治 遠山
治 遠山
吉大 小川
吉大 小川
峯岸 孝行
孝行 峯岸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2014516788A priority Critical patent/JP5791797B2/ja
Application granted granted Critical
Publication of JP5791797B2 publication Critical patent/JP5791797B2/ja
Publication of JPWO2013176077A1 publication Critical patent/JPWO2013176077A1/ja
Expired - Fee Related 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/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/08Intellectual property [IP] blocks or IP cores

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本発明は、LSI(Large Scale Integrated Circuit)の設計に関する。
LSIの大規模化に伴い、いわゆるIP(Intellectual Property)ベースの設計手法が提案されている。
IPベースの設計では、IPや既に動作実績のある回路モジュールなど、複数の機能ブロックを流用し、これらを組み合わせてシステムLSIを構成することで開発効率を向上させる。
また、IPベース設計では、基本的にIPや既存モジュールを流用し、周辺回路の修正や機能ブロック間の結線変更を行うだけでシステムLSIを構成することができ、設計効率を大幅に向上することができる。
特開2006−244274号公報 特開2007−193842号公報
しかしながら、LSIの大規模化、およびシステムLSIに要求される機能の多様化が進むことで、システムLSIを構築するために必要なIP数は増大し、IP同士の接続関係も複雑化する。
このため、周辺回路の修正や機能ブロック間の結線変更量の増大、接続関係を実現するために必要なグルーロジックの設計工数の増大が、設計効率向上の阻害要因となっている。
例えば、映像信号処理向けのシステムLSIを例とする。
ワンチップで複数の解像度や画像フォーマットの異なる2系統の入出力に対応したいという要求があった場合、各系統に全く同じ映像信号処理機能を持たせ、2系統が独立して動くLSIを構成すれば要求機能は満足できる。
しかし、このような実装は回路規模が膨大になるので、実際はこのような実装はしない。
実際の運用では、LSIのユースケースを制限事項として定義し、LSIのユースケースを動作モードとして定義する。
そして、あるモードで同時に動かない複数の機能があれば、当該複数の機能をマージして必要最低限のIP数で当該複数の機能を実現できるよう最適化を行う。
このように必要最低限のIP数で機能を実現できるように最適化を行う場合、機能のマージを実現するために、同じIPであっても動作モードによって異なる入力データを与えられるようにする必要がある。
このため、入力データを制御するためセレクタ(グルーロジック)が必要となる。
必要となるセレクタは、実現しようとするシステムによって異なるためIPの標準機能として組み込むことはでない。
このため、システムを構築するごとにセレクタを設計し直す必要がある。
また、設計し直しとなったセレクタをシステム内で制御する必要がある。
一般的にシステムの制御はCPU(Central Processing Unit)によって行われるため、セレクタを制御するレジスタにアクセスするためのCPUバスIF(インタフェース)もシステムごとに設計変更が必要となる。
以上のように、単にセレクタを挿入するだけでも複数箇所の設計変更が必要であり、挿入箇所が増大すると設計効率が低下する。
この発明は、上記のような点に鑑みたものであり、LSIを設計する際の設計効率を向上させることを主な目的とする。
本発明に係るLSI設計装置は、
設計対象のLSI(Large Scale Integrated Circuit)に含まれる機能ブロック間の信号の入出力フローが機能ブロック間の信号接続を示す関係式の形式で記述される入出力フロー情報を入力として、入力された入出力フロー情報を解析し、入出力フロー情報に記述されている同じ種類の信号を出力する複数の機能ブロックと該信号を入力する1つの機能ブロックを対応付け、対応付けられた機能ブロック間の信号の入出力フローに合致するセレクタのセレクタモジュールを生成するセレクタモジュール生成部と、
生成されたセレクタモジュールの制御レジスタを生成し、CPU(Central Processing Unit)バスインタフェース情報を入力として、入力されたCPUバスインタフェース情報に基づいてCPUバスインタフェースを生成し、セレクタモジュールおよび該セレクタモジュールの出力がつながる機能ブロックを含み、CPUバスインタフェースを介してセレクタモジュールの制御レジスタにアクセスするマクロモジュールを生成し、機能ブロック間の信号の入出力フローが記述される入出力フロー情報からマクロモジュールに信号をつなげる機能ブロックとマクロモジュール間の信号の入出力フローが記述される入出力フロー情報を生成するマクロモジュール生成部とを有することを特徴とする。
本発明によれば、入出力フロー情報を解析し、入出力フロー情報に記述されている機能ブロック間の信号の入出力フローに合致するセレクタのセレクタモジュールと前記セレクタモジュールを含むマクロブロック、ならびにセレクタモジュールを制御するためのCPUバスIFを自動生成するため、LSIを設計する際の設計効率を向上させることができる。
実施の形態1に係るLSI設計プラットフォームの構成例を示す図。 実施の形態1に係るシステムLSI組み上げ装置の構成例を示す図。 実施の形態1に係るIP接続情報の例を示す図。 実施の形態1に係るIP接続情報の例を示す図。 実施の形態1に係るセレクタモジュールの例を示す図。 実施の形態1に係るマクロモジュールの例を示す図。 実施の形態1に係る制御レジスタ情報の例を示す図。 実施の形態1に係るマクロ接続情報の生成例を示す図。 実施の形態1に係るアドレスマップ情報の例を示す図。 実施の形態1に係るネットリストの例を示す図。 実施の形態1に係るシステムLSI組み上げ装置のハードウェア構成例を示す図。
実施の形態1.
本実施の形態では、IPを含む複数の機能ブロックを相互接続する事によりシステムLSIを構成するシステムLSI設計プラットフォームを説明する。
本実施の形態に係るシステムLSI設計プラットフォームには、セレクタモジュール生成部と、マクロモジュール生成部と、LSIトップ接続記述生成部が含まれる。
セレクタモジュール生成部は、IPを含む複数の機能ブロック間の接続関係を構成するために必要なセレクタモジュールを生成する。
マクロモジュール生成部は、前記セレクタモジュール生成部が生成するセレクタモジュールとセレクタモジュールがつながるIPとを含むマクロモジュールを生成する。
LSIトップ接続記述生成部は、前記マクロモジュール生成部が生成するマクロモジュールとIPとを相互接続してLSIのトップ記述を生成する。
本実施の形態に係るシステムLSI設計プラットフォームを用いれば、システムLSIの設計ごとに必要であったセレクタの新規設計と、CPUバスIFの設計変更が自動化されるため設計効率が改善される。
図1は、本実施の形態に係るシステムLSI設計プラットフォームの構成例を示すブロック図である。
LSI設計プラットフォーム000は、IPライブラリ100とシステムLSI組み上げ装置020によって構成される。
システムLSI組み上げ装置020は、IP接続情報040、アドレスマップ情報200及びCPUバスIF情報300を入力し、ネットリスト030を出力する。
なお、ネットリスト030とはHDL(Hardware Description Language)で記述されたシステムLSIトップの接続記述である。
IP接続情報040、アドレスマップ情報200及びCPUバスIF情報300の詳細は後述する。
IPライブラリ100は、ライブラリに含まれる個々のIPに関するIP情報101を含み、IP情報101は例えば、IP名称、入出力ピン情報、制御レジスタ情報、HDL記述を含んでいる。
IPライブラリ100には、設計対象のシステムLSIに含まれるIPに関するIP情報101が含まれている。
なお、システムLSI組み上げ装置020はLSI設計装置の例に相当する。
図2を用いてシステムLSI組み上げ装置020の詳細について説明する。
システムLSI組み上げ装置020は、内部にセレクタモジュール生成部021とマクロモジュール生成部022とLSIトップ接続記述生成部023を含む。
セレクタモジュール生成部021は、IP接続情報040を入力し、セレクタライブラリ011を生成する。
セレクタライブラリ011には、セレクタモジュール生成部021が生成するセレクタモジュールの情報が記載されている。
セレクタライブラリ011には、IPライブラリ010と同じく、例えばIP名称(セレクタ名称)、入出力ピン情報、制御レジスタ情報、HDL記述が含まれる。
セレクタモジュールは、後述する図5に示すように、セレクタ064と、入力ピン061、062と、出力ピン063と、セレクタ制御信号入力インタフェース065が相互に関連付けられた機能ブロック060である。
入力ピン061、062は、セレクタ064がIPから信号を入力するためのピンである。
出力ピン063は、セレクタ064がIPに信号を出力するためのピンである。
セレクタ制御信号入力インタフェース065は、制御信号の入力のためのインタフェースである。
なお、「セレクタモジュールを生成する」とは、図5に示すようなセレクタモジュール060のテンプレートを生成するという意味である。
テンプレートの詳細情報は、セレクタライブラリ011の情報(IP名称(セレクタ名称)、入出力ピン情報、制御レジスタ情報、HDL記述)である。
セレクタモジュール生成部021は、例えば、2to1のセレクタが必要な場合は、図5に示すような2to1セレクタのセレクタモジュールのテンプレートを生成する。
また、3to1のセレクタが必要な場合は、セレクタモジュール生成部021は、図5の構成に相当する3to1セレクタのセレクタモジュールのテンプレートを生成する。
セレクタモジュール生成部021は、生成したテンプレートの詳細情報をセレクタライブラリ011に登録する。
そして、後述するマクロモジュール生成部022が、セレクタライブラリ011の情報を用いて、例えば、2to1セレクタのセレクタモジュールのインスタンスを生成し、また、3to1セレクタのセレクタモジュールのインスタンスを生成する。
IP接続情報040は、例えば図3のIP接続情報例041に示すように、特定のフォーマットでIP間の接続関係(但し、CPUバスIFは除く)を表したものである。
図3のIP接続情報例041は、IP A、B、Cの3つについて接続関係を表している。
IP接続情報例041中、A_outやB_out、C_inはそれぞれIP Aの出力信号、IP Bの出力信号、IP Cの入力信号を表すキーワードである。
また、「.」以降はIPの信号線名であり、A_out.PXRは、IP AのPXR信号(出力)を表す。
記号「=>」は信号線の向かう方向を示しており、A_out.PXR=>C_in.PXRはIP AのPXR信号(出力)がIP CのPXR信号(入力)につながることを表している。
IP接続情報例041内で表される接続関係、および各信号線の意味は図4に示す通りである。
なお、図3では、接続関係を表現するためにA_outやC_in、および「.」や「=>」という記号を用いるフォーマットを示したが、これは説明を簡単にするために用いたのであって、IP接続情報040の記述フォーマットを限定するものではない。
図3に示すように、IP接続情報040は、設計対象のLSIに含まれる機能ブロック間の信号の入出力フローが記述される情報であり、入出力フロー情報の例に相当する。
セレクタモジュール生成部021は、IP接続情報040をスキャンして入力信号ごとにセレクタの挿入が必要かどうかをチェックする。
セレクタの挿入が必要である場合には、セレクタモジュール生成部021は、セレクタモジュールを生成する。
セレクタ挿入が必要かどうかは、一つの入力信号に対して、複数の出力信号が接続されているかどうかを調べる。
例えば、IP接続情報例041(図3)の例では、入力信号C_in.PXRに対して、出力信号A_out.PXRと出力信号B_out.PXRが接続されている。
このため、入力信号C_in.PXRの入力の前に2to1のセレクタ挿入が必要である。
従って、セレクタモジュール生成部021は、2to1セレクタのセレクタモジュールを生成する。
このように、セレクタモジュール生成部021は、IP接続情報040を解析し、IP接続情報040に記述されているIP間の信号の入出力フローに合致するセレクタのセレクタモジュールを生成する。
図5は、セレクタモジュール生成部021により生成されるセレクタモジュール060の例を示す。
セレクタモジュール060には、入力ピン061、062と、出力ピン063と、セレクタ制御信号インタフェース065が含まれる。
入力ピン061、062は、2to1セレクタ064がIP AおよびIP Bからの信号を入力するためのピンである。
出力ピン063は、2to1セレクタ064がIP Cに信号を出力するためのピンである。
セレクタ制御信号入力インタフェース065は、2to1セレクタ064を制御するためのインタフェースである。
なお、ここまでの説明では2to1セレクタの場合について説明したが、必要となるセレクタがNtoM(N、Mは自然数かつN≧M)の場合も同様の構成のセレクタを生成する。
つまり、セレクタモジュール生成部021は、IP接続情報040を解析し、各々が同じ種類の信号(PXR信号、PXG信号等)を入出力する2つ以上のIPを対応付ける。
そして、セレクタモジュール生成部021は、対応付けたIPのうち信号を出力するIPの個数(N個)分の入力ピンを持ち、対応付けたIPのうち信号を入力するIPの個数(M個)分の出力ピンを持つNtoMセレクタのセレクタモジュールを生成する。
以上のような生成を繰り返し行い、必要なセレクタモジュールを全て生成した後、生成したセレクタモジュールの情報をセレクタライブラリ011として出力する。
ただし、セレクタライブラリ011内に既に同じ機能、例えば2to1セレクタを持つセレクタモジュールが含まれる場合には重複して生成しない。
マクロモジュール生成部022は、IPライブラリ100のIP情報101とCPUバスIF情報300、セレクタモジュール生成部021が出力したセレクタライブラリ011およびIP接続情報040を入力としてマクロモジュールを生成する。
そして、マクロモジュール生成部022は、生成したマクロモジュールをマクロライブラリ012として出力する。
ここで生成されるマクロモジュールとは、セレクタモジュール生成部021が生成したセレクタモジュールと、セレクタモジュールの出力がつながるIPとを含むラッパーモジュールのことである。
マクロライブラリ012には、例えばマクロ名称、入出力ピン情報、制御レジスタ情報、HDL記述、包含するIP情報が含まれる。
図6に、図3で示したIP接続情報041の場合において生成されるマクロモジュール700を示す。
マクロモジュール生成部022は、IP接続情報040(041)をスキャンして、セレクタが挿入されるIPの入力信号をチェックする。
セレクタの挿入が必要な入力信号がある場合には、マクロモジュール生成部022は、セレクタライブラリ011から接続関係を構成するために必要な機能を持つセレクタモジュールを選ぶ。
この場合は、マクロモジュール生成部022は、2to1のセレクタモジュール060(図5)を選ぶ。
そして、マクロモジュール生成部022は、セレクタモジュール060のインスタンスであるセレクタモジュール600とIP Cとをマクロモジュール700の中で接続する。
この時、マクロモジュール生成部022は、セレクタの入力につながる新しいマクロモジュールの入力ポート701、702を生成し、同時にセレクタの制御レジスタ703を生成する。
また、マクロモジュール生成部022は、CPUバスIF情報300に基づき、CPUバスIF750からリード/ライトが行えるよう、制御レジスタ703にレジスタセレクタ751を加える。
更に、マクロモジュール生成部022は、マクロモジュールに含まれるIP Cの制御レジスタ情報をIPライブラリ100から読み出す。
マクロモジュール生成部022は、読み出したIP Cの制御レジスタ情報に制御レジスタ703の情報を付け加え、マクロモジュールの制御レジスタ情報を生成する。
ここでCPUバスIF情報300とは、CPUバスIFの信号名とその信号の意味を対応付けた情報である。
図6の場合では、CPUバスIF情報300は、チップセレクト信号(BUS CS)、リードライト制御信号(BUS RW)、アドレス信号(BUS ADR)、ライトデータ信号(BUS WDAT)、リードデータ信号(BUS RDAT)を実際のCPUバスIFと対応させた情報である。
また、制御レジスタ情報とは、特定のフォーマットにて、IPに含まれる制御レジスタとバスアドレスとの対応付けが記載された情報である。
制御レジスタ情報は、例えば図7の符号601に示すように、アドレス(0000等)と制御レジスタ名(制御レジスタ0等)とを空白を挟む形で対応付けた情報である。
図7の1行目は、バスIFのチップセレクト(図6 BUC CS信号)が有効な場合にバスアドレス(図6 BUS ADR)0000hが入力されると、IP内の制御レジスタ0にアクセスできることを表している。
2行目以降についても、同様の記述内容となっている。
また、マクロモジュール生成部022は、マクロモジュール内でIPを接続した箇所は、IP接続情報040(041)の該当箇所をマクロモジュールとの接続が示される情報に書き換え、マクロ接続情報050(051)を生成する(図8)。
図8の例では、信号PXRについてセレクタモジュールとIPを接続した際に、IP接続情報041内の符号402の行が符号502の行のように書き換えられる。
また、符号403の行が符号503の行のように書き換えられる。
このようにして、マクロ接続情報051が生成される。
他の信号についても、セレクタモジュールとIPを接続した際に、IP接続情報041内の該当する行が図8に示す形式で書き換えられる。
図3のIP接続情報041では、PXG、PXB等の他の種類の信号にも2to1のセレクタの挿入が必要である。
このため、マクロモジュール生成部022は、各信号に対して、2to1のセレクタモジュール(図5)のインスタンスを生成する。
そして、マクロモジュール生成部022は、各セレクタモジュールとIP Cとをマクロモジュール700の中で接続する。
更に、マクロモジュール生成部022は、各信号に対して、マクロモジュールの入力ポートの生成、IP接続情報040の書き換えを行う。
マクロモジュール生成部022は、これらの処理を、マクロモジュールの生成が不要となるまで続けて、全てのマクロモジュールを生成し、マクロライブラリ012を出力する。
図6では、信号PXRについてのセレクタモジュール600、入力ポート701、702、制御レジスタ703と、信号PXGについてのセレクタモジュール610、入力ポート704、705、制御レジスタ706のみを図示している。
実際の処理では、図3のIP接続情報041の各信号に対して同様の構成が生成される。
なお、図7で示した制御レジスタ情報のフォーマットは説明を簡単にするために用いたものであり、制御レジスタ情報を表現するフォーマットを制限するものではない。
次に、LSIトップ接続記述生成部023が、マクロモジュール生成部022が生成したマクロライブラリ012、マクロ接続情報050及びアドレスマップ情報200を入力し、最終的なネットリスト030を生成する。
ここで、アドレスマップ情報200とは、特定のフォーマットで記述されたファイルである。
アドレスマップ情報200には、システム上のどのアドレスに、どのIPの制御レジスタの先頭をマッピングするかが表される。
アドレスマップ情報200では、例えば図9の符号801に示すように、システム上のアドレスと、IP名とが対になって示される。
図9の符号801の例では、IP Aの制御レジスタをシステムアドレス1500_0000h以降にマッピングすることが表されている。
同様にIP Bの制御レジスタをシステムアドレス1500_0100h以降にマッピングすることが表されている。
更に、IP Cの制御レジスタをシステムアドレス1500_0200以降にマッピングすることが表されている。
なお、図9では、アドレスとIP名との対を1行ごと、空白を挟んで記述するフォーマットとなっているが、これは説明を簡単にするために用いた一例であって、記述のフォーマットを制限するものではない。
LSIトップ接続記述生成部023は、マクロ接続情報050に従って、IPとマクロモジュールの接続記述を生成する。
次に、LSIトップ接続記述生成部023は、アドレスマップ情報200に従って、CPUバスIFのうちチップセレクト信号(図6 BUS CS信号)を出力するアドレスデコーダ310を生成する(図10)。
LSIトップ接続記述生成部023は、生成したアドレスデコーダ310のチップセレクト信号を、アドレスマップ情報200に記載されるIPのチップセレクト信号と接続する。
ただし、マクロモジュール内に包含されるIPのIP名は、マクロ接続情報050の中には存在しない。
このような場合は、LSIトップ接続記述生成部023はマクロライブラリ012に包含されるIP情報を調べ、該当するIPが含まれるマクロモジュールのチップセレクト入力にアドレスデコーダ310のチップセレクト信号を接続する。
最後に、LSIトップ接続記述生成部023は、CPUバスIF情報300に基づき、CPUバスIF部分同士を接続する。
以上のような構成をとれば、IPベース設計を用いてシステムLSIを構築する際、IP接続情報とアドレスマップ情報を作るだけで、IP間を接続するために必要なグルーロジックおよびCPUから各IPを制御するために必要なCPUバスIFが自動生成される。
そして、自動生成されたCPUバスIFを用いて、LSIトップの接続記述を得ることができるため、IPベース設計の設計効率を向上させることができる。
本実施の形態では、
IP(Intellectual Property)を含む複数の機能ブロックを相互接続することによりシステムLSIを構成するシステムLSI設計プラットフォームを説明した。
具体的には、
IPを含む複数の機能ブロック間の接続関係を構成するために必要なセレクタモジュールを生成するセレクタモジュール生成部と、
前記セレクタモジュール生成部が生成するセレクタモジュールとセレクタモジュールがつながるIPとを含むマクロモジュールを生成するマクロモジュール生成部と、
前記マクロモジュールが生成するマクロモジュールとIPとを相互接続してLSIのトップ記述を生成するLSIトップ接続記述生成部を備えたシステムLSI設計プラットフォームを説明した。
また、本実施の形態では、
前記マクロモジュール生成部は、IPを含む複数の機能ブロック間の接続関係を表すIP接続情報から、セレクタモジュール生成部が生成したセレクタモジュールとセレクタモジュールの出力がつながるIPとを包含したマクロモジュールを生成することを説明した。
また、本実施の形態では、
前記マクロモジュール生成部は、CPUバスIF情報に基づき、セレクタモジュール生成部が生成したセレクタモジュールおよびIPに含まれる制御レジスタへアクセスするためのCPUバスIFをマクロモジュールのIFに生成することを説明した。
また、本実施の形態では、
前記LSIトップ接続記述生成部は、アドレスマップ情報に基づき、IPおよび前記マクロモジュール生成部が生成するマクロモジュールの内の制御レジスタにCPUバスIFからアクセスするために必要なアドレスデコーダを生成し、アドレスデコーダとIPおよびマクロモジュールのCPUバスIFを接続することを説明した。
最後に、本実施の形態に示したシステムLSI組み上げ装置020のハードウェア構成例を図11を参照して説明する。
システムLSI組み上げ装置020はコンピュータであり、システムLSI組み上げ装置020の各要素をプログラムで実現することができる。
システムLSI組み上げ装置020のハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、入出力装置905が接続されている。
演算装置901は、プログラムを実行するCPUである。
外部記憶装置902は、例えばROM(Read Only Memory)やフラッシュメモリ、ハードディスク装置である。
主記憶装置903は、RAM(Random Access Memory)である。
通信装置904は、例えば通信カードである。
入出力装置905は、例えばマウス、キーボード、ディスプレイ装置等である。
入出力装置905は、例えば、IP接続情報040、アドレスマップ情報200、CPUバスIF情報300を入力し、また、ネットリスト030を表示する。
プログラムは、通常は外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901に読み込まれ、実行される。
プログラムは、図2に示す「〜部」として説明している機能を実現するプログラムである。
更に、外部記憶装置902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置903にロードされ、演算装置901はOSを実行しながら、図2に示す「〜部」の機能を実現するプログラムを実行する。
また、入力されたIP接続情報040、アドレスマップ情報200、CPUバスIF情報300も、順次主記憶装置903にロードされ、演算装置901により用いられる。
また、生成されたセレクタライブラリ011、マクロライブラリ012の情報も主記憶装置903に格納され、演算装置901により用いられる。
また、本実施の形態の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の解析」、「〜の生成」、「〜の検知」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置903にファイルとして記憶されている。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置903にファイルとして記憶されてもよい。
なお、図11の構成は、あくまでもシステムLSI組み上げ装置020のハードウェア構成の一例を示すものであり、システムLSI組み上げ装置020のハードウェア構成は図11に記載の構成に限らず、他の構成であってもよい。
また、本実施の形態に示す手順により、本発明に係るLSI設計方法を実現可能である。
000 LSI設計プラットフォーム、011 セレクタライブラリ、012 マクロライブラリ、020 システムLSI組み上げ装置、021 セレクタモジュール生成部、022 マクロモジュール生成部、023 LSIトップ接続記述生成部、030 ネットリスト、040 IP接続情報、050 マクロ接続情報、100 IPライブラリ、101 IP情報、200 アドレスマップ情報、300 CPUバスIF情報。

Claims (6)

  1. 設計対象のLSI(Large Scale Integrated Circuit)に含まれる機能ブロック間の信号の入出力フローが機能ブロック間の信号接続を示す関係式の形式で記述される入出力フロー情報を入力として、入力された入出力フロー情報を解析し、前記入出力フロー情報に記述されている同じ種類の信号を出力する複数の機能ブロックと該信号を入力する1つの機能ブロックを対応付け、対応付けられた機能ブロック間の信号の入出力フローに合致するセレクタのセレクタモジュールを生成するセレクタモジュール生成部と、
    生成されたセレクタモジュールの制御レジスタを生成し、CPU(Central Processing Unit)バスインタフェース情報を入力として、入力されたCPUバスインタフェース情報に基づいてCPUバスインタフェースを生成し、前記セレクタモジュールおよび該セレクタモジュールの出力がつながる機能ブロックを含み、前記CPUバスインタフェースを介して前記セレクタモジュールの制御レジスタにアクセスするマクロモジュールを生成し、前記機能ブロック間の信号の入出力フローが記述される入出力フロー情報から前記マクロモジュールに信号をつなげる機能ブロックと前記マクロモジュール間の信号の入出力フローが記述される入出力フロー情報を生成するマクロモジュール生成部とを有することを特徴とするLSI設計装置。
  2. 前記セレクタモジュール生成部は、
    複数種類の信号に対して機能ブロック間の信号の入出力フローが記述される入出力フロー情報を入力し、
    前記入出力フロー情報を解析し、各々が同じ種類の信号を入出力する2つ以上の機能ブロックを対応付け、
    対応付けた機能ブロックのうち信号を出力する機能ブロックの個数分の入力ピンを持ち、対応付けた機能ブロックのうち信号を入力する機能ブロックの個数分の出力ピンを持つセレクタのセレクタモジュールを生成することを特徴とする請求項1に記載のLSI設計装置。
  3. 前記セレクタモジュール生成部は、
    IP(Intellectual Property)を含む機能ブロック間の信号の入出力フローが記述される入出力フロー情報を入力されることを特徴とする請求項1又は2に記載のLSI設計装置。
  4. 前記セレクタモジュール生成部は、
    複数種類の信号に対して機能ブロック間の信号の入出力フローが記述される入出力フロー情報を入力し、
    前記入出力フロー情報を解析し、各々が異なるセレクタに対応する複数のセレクタモジュールを生成し、
    前記マクロモジュール生成部は、
    前記入出力フロー情報を解析し、各々が同じ種類の信号を入出力する2つ以上の機能ブロックを対応付け、
    信号の種類ごとに、前記複数のセレクタモジュールの中から、対応付けた機能ブロック間の信号の入出力フローに合致するセレクタのセレクタモジュールを選択し、
    信号の種類ごとに選択したセレクタモジュールを用いてマクロモジュールを生成することを特徴とする請求項1ないし3のいずれか1項に記載のLSI設計装置。
  5. コンピュータが、設計対象のLSI(Large Scale Integrated Circuit)に含まれる機能ブロック間の信号の入出力フローが機能ブロック間の信号接続を示す関係式の形式で記述される入出力フロー情報を入力として、入力された入出力フロー情報を解析し、前記入出力フロー情報に記述されている同じ種類の信号を出力する複数の機能ブロックと該信号を入力する1つの機能ブロックを対応付け、対応付けられた機能ブロック間の信号の入出力フローに合致するセレクタのセレクタモジュールを生成するセレクタモジュール生成ステップと、
    前記コンピュータが、生成されたセレクタモジュールの制御レジスタを生成し、CPU(Central Processing Unit)バスインタフェース情報を入力として、入力されたCPUバスインタフェース情報に基づいてCPUバスインタフェースを生成し、前記セレクタモジュールおよび該セレクタモジュールの出力がつながる機能ブロックを含み、前記CPUバスインタフェースを介して前記セレクタモジュールの制御レジスタにアクセスするマクロモジュールを生成し、前記機能ブロック間の信号の入出力フローが記述される入出力フロー情報から前記マクロモジュールに信号をつなげる機能ブロックと前記マクロモジュール間の信号の入出力フローが記述される入出力フロー情報を生成するマクロモジュール生成ステップとを有することを特徴とするLSI設計方法。
  6. 設計対象のLSI(Large Scale Integrated Circuit)に含まれる機能ブロック間の信号の入出力フローが機能ブロック間の信号接続を示す関係式の形式で記述される入出力フロー情報を入力として、入力された入出力フロー情報を解析し、前記入出力フロー情報に記述されている同じ種類の信号を出力する複数の機能ブロックと該信号を入力する1つの機能ブロックを対応付け、対応付けられた機能ブロック間の信号の入出力フローに合致するセレクタのセレクタモジュールを生成するセレクタモジュール生成ステップと、
    生成されたセレクタモジュールの制御レジスタを生成し、CPU(Central Processing Unit)バスインタフェース情報を入力として、入力されたCPUバスインタフェース情報に基づいてCPUバスインタフェースを生成し、前記セレクタモジュールおよび該セレクタモジュールの出力がつながる機能ブロックを含み、前記CPUバスインタフェースを介して前記セレクタモジュールの制御レジスタにアクセスするマクロモジュールを生成し、前記機能ブロック間の信号の入出力フローが記述される入出力フロー情報から前記マクロモジュールに信号をつなげる機能ブロックと前記マクロモジュール間の信号の入出力フローが記述される入出力フロー情報を生成するマクロモジュール生成ステップとをコンピュータに実行させることを特徴とするプログラム。
JP2014516788A 2012-05-21 2013-05-20 Lsi設計装置及びlsi設計方法及びプログラム Expired - Fee Related JP5791797B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014516788A JP5791797B2 (ja) 2012-05-21 2013-05-20 Lsi設計装置及びlsi設計方法及びプログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2012115508 2012-05-21
JP2012115508 2012-05-21
PCT/JP2013/063914 WO2013176077A1 (ja) 2012-05-21 2013-05-20 Lsi設計装置及びlsi設計方法及びプログラム
JP2014516788A JP5791797B2 (ja) 2012-05-21 2013-05-20 Lsi設計装置及びlsi設計方法及びプログラム

Publications (2)

Publication Number Publication Date
JP5791797B2 true JP5791797B2 (ja) 2015-10-07
JPWO2013176077A1 JPWO2013176077A1 (ja) 2016-01-14

Family

ID=49623767

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014516788A Expired - Fee Related JP5791797B2 (ja) 2012-05-21 2013-05-20 Lsi設計装置及びlsi設計方法及びプログラム

Country Status (3)

Country Link
US (1) US9122831B2 (ja)
JP (1) JP5791797B2 (ja)
WO (1) WO2013176077A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002342259A (ja) * 2001-05-21 2002-11-29 Hitachi Ltd Dmaコントローラおよびdmaコントローラ自動生成装置
JP2004213301A (ja) * 2002-12-27 2004-07-29 Renesas Technology Corp 自動回路設計装置およびプログラム
JP2006244274A (ja) * 2005-03-04 2006-09-14 Matsushita Electric Ind Co Ltd Lsi設計方法
JP2007193842A (ja) * 2007-04-09 2007-08-02 Matsushita Electric Ind Co Ltd Ipベースlsi設計システムおよび設計方法
JP2011243055A (ja) * 2010-05-19 2011-12-01 Fujitsu Semiconductor Ltd 半導体回路及び設計装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3974300B2 (ja) 1999-11-18 2007-09-12 松下電器産業株式会社 Ipベースlsi設計システムおよび設計方法
US6993740B1 (en) * 2000-04-03 2006-01-31 International Business Machines Corporation Methods and arrangements for automatically interconnecting cores in systems-on-chip
JP3852741B2 (ja) 2000-10-31 2006-12-06 シャープ株式会社 高位合成方法および高位合成装置
US6973631B2 (en) * 2002-07-18 2005-12-06 Incentia Design Systems Corp. Scan insertion with bypass login in an IC design
JP4390639B2 (ja) 2004-06-21 2009-12-24 Necエレクトロニクス株式会社 Lsi設計システム、lsi設計プログラム
JP2006065457A (ja) 2004-08-25 2006-03-09 Fuji Xerox Co Ltd インタフェース回路生成装置およびインタフェース回路
US8413106B1 (en) * 2004-10-28 2013-04-02 Synopsys, Inc. Transaction level model synthesis
US7966529B2 (en) * 2006-10-16 2011-06-21 Freescale Semiconductor, Inc. System and method for testing memory blocks in an SOC design

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002342259A (ja) * 2001-05-21 2002-11-29 Hitachi Ltd Dmaコントローラおよびdmaコントローラ自動生成装置
JP2004213301A (ja) * 2002-12-27 2004-07-29 Renesas Technology Corp 自動回路設計装置およびプログラム
JP2006244274A (ja) * 2005-03-04 2006-09-14 Matsushita Electric Ind Co Ltd Lsi設計方法
JP2007193842A (ja) * 2007-04-09 2007-08-02 Matsushita Electric Ind Co Ltd Ipベースlsi設計システムおよび設計方法
JP2011243055A (ja) * 2010-05-19 2011-12-01 Fujitsu Semiconductor Ltd 半導体回路及び設計装置

Also Published As

Publication number Publication date
JPWO2013176077A1 (ja) 2016-01-14
US20150033200A1 (en) 2015-01-29
US9122831B2 (en) 2015-09-01
WO2013176077A1 (ja) 2013-11-28

Similar Documents

Publication Publication Date Title
US8959472B1 (en) Considering compatibility of adjacent boundary regions for standard cells placement and routing
US8997033B1 (en) Techniques for generating a single configuration file for multiple partial reconfiguration regions
US20080109780A1 (en) Method of and apparatus for optimal placement and validation of i/o blocks within an asic
US9298865B1 (en) Debugging an optimized design implemented in a device with a pre-optimized design simulation
US9864828B1 (en) Hardware acceleration device handoff for using programmable integrated circuits as hardware accelerators
JP6995451B2 (ja) 回路適正化装置及び回路適正化方法
US20190079794A1 (en) Flexible physical function and virtual function mapping
US20070028204A1 (en) Method and program for high-level synthesis, and method for verifying a gate network list using the high-level synthesis method
US10437946B1 (en) Using implemented core sources for simulation
US11561779B1 (en) Applications for hardware accelerators in computing systems
US8990741B2 (en) Circuit design support device, circuit design support method and program
Van Eijk Formal methods for the verification of digital circuits
JP5791797B2 (ja) Lsi設計装置及びlsi設計方法及びプログラム
KR20070097051A (ko) 동적으로 재구성 가능한 프로세서
US10152566B1 (en) Constraint based bit-stream compression in hardware for programmable devices
JPWO2006025412A1 (ja) 論理検証方法、論理モジュールデータ、デバイスデータおよび論理検証装置
JP4881769B2 (ja) 半導体集積回路設計支援装置、半導体集積回路設計支援方法、半導体集積回路設計支援プログラム
JP4531715B2 (ja) システムlsiの設計方法及びこれを記憶した記録媒体
JP6638362B2 (ja) 演算処理装置、演算処理システムおよび演算処理方法
US20090089723A1 (en) Circuit design using a spreadsheet
JP5332598B2 (ja) 設計方法及び設計装置
US20240126960A1 (en) Intelligent Suggestions for CAD-Based Design Entry
JP2016139203A (ja) 設計情報作成方法、設計情報作成装置及びプログラム
JP5262678B2 (ja) 動作合成システム、動作合成方法、及び動作合成用プログラム
US10372946B1 (en) Systems and methods for configuring a secure computing environment on an integrated circuit

Legal Events

Date Code Title Description
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: 20150707

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150804

R150 Certificate of patent or registration of utility model

Ref document number: 5791797

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees