JP2007193497A - Lsi開発支援方法及びlsi開発支援プログラム - Google Patents

Lsi開発支援方法及びlsi開発支援プログラム Download PDF

Info

Publication number
JP2007193497A
JP2007193497A JP2006009865A JP2006009865A JP2007193497A JP 2007193497 A JP2007193497 A JP 2007193497A JP 2006009865 A JP2006009865 A JP 2006009865A JP 2006009865 A JP2006009865 A JP 2006009865A JP 2007193497 A JP2007193497 A JP 2007193497A
Authority
JP
Japan
Prior art keywords
lsi
man
hour
module
development
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
Application number
JP2006009865A
Other languages
English (en)
Inventor
Kaoru Okazaki
薫 岡崎
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2006009865A priority Critical patent/JP2007193497A/ja
Publication of JP2007193497A publication Critical patent/JP2007193497A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】既存の開発情報を利用した新たなLSIの開発を支援する技術を提供する。
【解決手段】データベース11に格納された原モジュールの開発情報に基づいて、新たなLSIを開発するLSI開発支援装置10は、主変更工数算出手段101、副変更工数算出手段102及び総変更工数見積もり手段103を備えている。主変更工数算出手段101は、データベース11から選択した改変モジュールに対応する関数に改変率を代入して、原モジュールから改変モジュールへの変更に要する第1の工数を算出する。副変更工数算出手段102は、改変モジュールに依存する原モジュールの変更に要する第2の工数を算出する。そして、総変更工数見積もり手段103は、第1の工数及び第2の工数の合計値に基づいて新たなLSI開発に追加的に必要となる工数を見積もる。
【選択図】図1

Description

本発明は、既存のLSI開発情報を利用した新たなLSIの開発を支援する技術に関する。
LSIの開発方法として、既存の開発情報を利用する方法が採用されている。既存の開発情報を利用した開発を支援する技術として、新規プロジェクトの計画を、プロジェクトメンバーの経験、生産性、作業量といった情報及び再利用の有無に関する情報に基づいて、既存データベースの中から類似のプロジェクトのデータをもとに見積もり評価する方法(例えば、特許文献1)や、システムを構成するモジュールの情報として、実現機能との関係、他モジュールとの関係、及び当該モジュールの派生バージョン等をデータベースとして管理し、当該モジュールの変更時にシステムに与える影響をこれら管理情報から抽出する方法(例えば、特許文献2)が提案されている。
特開2003−280901号公報 特開2005−100078号公報
既存の開発情報を利用した新たなLSIの開発は、既存の開発情報をそのまま利用するのではなく、新たなLSIに要求される機能や性能に応じて、既存の開発情報を改変して利用する場合が多い。このように既存の開発情報を改変することによって、実装面積、コードサイズ、性能面での改善が期待できる。しかし、これらの改変に要するコストが発生する。
上記前者の方法によると、既存の開発情報をそのまま利用することを前提として新規プロジェクトの見積もり評価を行っている。したがって、既存の開発情報の変更に要するコストが考慮されないといった問題がある。
また、上記後者の方法は、モジュールを変更する場合におけるシステムへの影響把握を目的としている。したがって、コスト面での影響を把握できないといった問題がある。
上記問題に鑑み、本発明は、既存の開発情報を利用してLSIの開発を行う場合において、特にコスト的観点からLSI開発を支援する技術を提供することを課題とする。
上記課題を解決するために講じた手段は、データベースに格納された原モジュールの開発情報に基づいて、原モジュールを改変したものである改変モジュールを含む新たなLSIを開発するためのLSI開発支援方法として、前記データベースは、原モジュールの開発ステップ毎に要する工数に関する工数情報と、原モジュールに対する改変モジュールの改変部分の割合である改変率を引数として原モジュールから改変モジュールへの変更に要する工数を算出する関数と、原モジュール間の依存関係に関する依存情報とを格納しており、前記データベースに格納された関数の中から前記新たなLSIの開発に係る改変モジュールに対応するものを選択し、当該選択した関数に、入力された当該改変モジュールの改変率を代入して、原モジュールから当該改変モジュールへの変更に要する第1の工数を算出する第1のステップと、前記データベースに格納された工数情報及び依存情報を参照して、前記新たなLSIの開発に係る改変モジュールに依存する原モジュールの変更に要する第2の工数を算出する第2のステップと、前記第1の工数と前記第2の工数との合計値に基づいて、前記新たなLSIを開発する場合に追加的に必要となる第3の工数を見積もる第3のステップとを備えたのもとする。
この発明によると、データベースに格納された原モジュールの開発情報に基づいて、原モジュールから改変モジュールへの変更に要する第1の工数と、改変モジュールに依存する原モジュールの変更に要する第2の工数とがそれぞれ算出され、これらの合計に基づいて、原モジュールを改変して新たなLSI開発を行う場合における原モジュールの改変に要する第3の工数が算出される。
具体的には、工数情報は、原モジュール毎の少なくとも設計・設計検証・実装・実装検証の各ステップに要する工数と、複数の原モジュールから構成される、上位の原モジュールについての全体検証に要する工数とに関する情報を有するものとする。
好ましくは、LSI開発支援方法として、前記第3のステップにおいて算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる第4のステップと、入力された前記新たなLSIを開発する場合の回路規模削減に係る目標値に基づいて、当該LSIの製造単価を算出する第5のステップと、前記第4のステップにおいて見積もられた開発コスト、前記第5のステップにおいて算出された製造単価、及び入力された前記新たなLSIの予定量産数に基づいて、当該LSIを量産する場合の総コストを算出する第6のステップとを備えたものとする。
また、好ましくは、LSI開発支援方法として、前記第3のステップにおいて算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる第4のステップと、入力された前記新たなLSIを開発する場合の回路規模削減に係る目標値に基づいて、当該LSIの製造単価を算出する第5のステップと、前記第4のステップにおいて見積もられた開発コスト、前記第5のステップにおいて算出された製造単価、及び原モジュールを改変せずに新たなLSIを開発する場合の開発コスト及び製造単価に基づいて、原モジュールを改変して前記新たなLSIを開発する場合の損益分岐点を算出する第6のステップとを備えたものとする。
より好ましくは、LSI開発支援方法として、前記第6のステップにおいて算出された損益分岐点、及び入力された前記新たなLSIの予定量産数とに基づいて、原モジュールを改変して前記新たなLSIを開発すべきか否かを判断する第7のステップを備えたものとする。
また、好ましくは、LSI開発支援方法として、前記第3のステップにおいて算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる第4のステップと、入力された新たなLSIの予定量産数、原モジュールを改変せずに新たなLSIを開発して前記予定量算数だけ製造する場合の総コスト、及び前記第4のステップにおいて見積もられた開発コストに基づいて、原モジュールを改変して前記新たなLSIを開発する場合の製造単価の目標値を見積もる第5のステップとを備えたものとする。
また、具体的には、第3のステップは、前記第3の工数の見積もりに際して、過去に見積もった値とそれに対応する実測値との誤差を補正するものとする。
具体的には、原モジュールはハードウエアであり、前記目標値は、当該ハードウエアのサイズ縮小指数であるものとする。
また、具体的には、原モジュールはソフトウエアであり、前記目標値は、当該ソフトウエアを格納するメモリのサイズ縮小指数であるものとする。
また、具体的には、データベースは、原モジュールのサイズ情報を格納しており、前記第5のステップは、前記データベースに格納された原モジュールのサイズ情報及び前記回路規模削減に係る目標値から算出した前記新たなLSIのサイズ削減率に基づいて前記新たなLSIの製造単価を算出するものとする。
一方、上記課題を解決するために講じた手段は、LSI開発支援プログラムとして、上記方法をコンピュータに実行させるものとする。
以上、本発明によると、既存のLSI開発情報を利用した新たなLSIの開発において、コスト的観点から新たなLSI開発を支援することが可能となる。
以下、本発明を実施するための最良の形態について図面に基づいて詳細に説明する。
図1は、本実施形態に係るLSI開発支援システムの構成を示す。本システムにおいて、LSI開発支援装置10には、既存のLSI開発情報が格納されたデータベース11と、外部から情報を入力する入力手段12と、処理結果を表示する表示手段13とが接続されている。
LSI開発支援装置10は、入力手段12から入力された、新たなLSI開発に関する情報と、データベース11に格納された既存のLSI開発情報とに基づいて、新たなLSIの開発に利用するモジュール全体に係る変更工数の算出及び当該モジュールを変更すべきか否かの判断を行う。
データベース11は、既存のLSI開発情報として、原モジュールの開発ステップ毎に要する工数に関する工数情報と、原モジュール間の依存関係に関する依存情報と、原モジュールのサイズに関する情報と、改変率を引数として原モジュールから改変モジュールへの変更に要する工数を算出する関数とを格納している。なお、改変率は、原モジュールに対する改変モジュールの改変部分の割合で表される。
図2は、データベース11に格納された、原モジュールの開発ステップ毎に要する工数情報の一例を示す。本実施形態において、原モジュール(以下、サブモジュールともいう)M1〜M9は、設計作業、設計検証作業、実装作業及び実装検証作業の4つのステップで開発される。サブモジュールM1〜M9のそれぞれについて開発が完了した後で、上位の原モジュールであるモジュールMAについて、全体検証作業のステップが実施される。図中の数値は、各ステップの作業を完了させるまでに要する工数であり、例えば「人月」の単位で表される。具体的には、サブモジュールM4の開発には、設計作業として「0.8」、設計検証作業として「0.2」、実装作業として「3.0」、実装検証作業として「0.5」の工数を要することを示している。サブモジュールM1〜M9の開発においては、全体検証作業のステップは関係しないため、「--」と表記している。
図3は、データベース11に格納された、原モジュール間の依存関係に関する情報の一例を示す。各サブモジュールM1〜M9の依存関係は依存率dep(Mx,My)として表されている。ここで、依存率dep(Mx,My)は、改変の対象となるサブモジュールMxの変更を受けて、これに影響を受けるサブモジュールMyを変更しなければならない割合である。例えば、サブモジュールM1〜M9がソフトウエアであった場合、全コードステップ数に対する、修正しなければならないステップ数の割合で示される。具体的には、サブモジュールM4が改変対象である場合、サブモジュールM4を参照しているサブモジュールM1、M2、M6について、それぞれ20%、10%、10%の修正が必要であることを示している。
図4は、モジュールMA及びサブモジュールM1〜M9どうしの関係を示す。モジュールMAは、サブモジュールM1〜M9から構成されている。矢印は、各サブモジュール間の依存関係を示している。本図においては、矢印の始点に位置するサブモジュールが、矢印の終点に位置するサブモジュールを参照しているという依存関係を示している。すなわち、矢印の終点に位置するサブモジュールが変更されると、矢印の始点に位置するサブモジュールは影響を受ける。
図5は、データベース11に格納された、原モジュールのサイズ情報の一例を示す。本図においては、サブモジュールM1〜M9及びモジュールMAのサイズが格納されている。ここで、サイズは、サブモジュールM1〜M9がハードウエアの場合には回路面積によって、ソフトウエアの場合にはコードサイズによってそれぞれ表される。
図6は、データベース11に格納された、原モジュールから改変モジュールへの変更に要する工数を算出する関数のグラフである。本図において、縦軸は、図2に示した設計作業、設計検証作業、実装作業及び実装検証作業の各開発ステップに要する変更工数を合計した変更工数を示しており、横軸は改変率xを示している。関数f(x)は、改変率xを引数として、原モジュールから改変モジュールへの変更に要する工数を算出する。ここで、設計に関する工程は、実装に関する工程よりも先に実施され、設計作業に変更があった場合には、設計検証作業以降の開発ステップを改めて実行する。さらに、設計に関する工程、実装に関する工程とも、開発規模と開発に要した工数が比例するものとし、少しでも変更があった場合には、各検証作業を完全に実施するものとする。
関数f(x)は、サブモジュールの構成や特性に応じて、サブモジュールM1〜M9毎に用意されている。例えば、サブモジュールM1〜M9がハードウエアの場合、関数f(x)は、メモリ部とロジック部のサイズ比率によって決定される。
図1に戻り、LSI開発支援装置10は、主変更工数算出手段101と、副変更工数算出手段102と、総変更工数見積もり手段103と、開発コスト見積もり手段104と、製造単価算出手段105と、総コスト算出手段106と、損益分岐点算出手段107と、判断手段108と、目標値見積もり手段109とを備えている。
主変更工数算出手段101は、データベース11に格納された原モジュールから改変モジュールへの変更に要する工数を算出する関数の中から新たなLSIの開発に係る改変モジュールに対応するもの(例えば図6に示した関数)を選択し、当該選択した関数に、入力された改変モジュールの改変率xを代入して、原モジュールから改変モジュールへの変更に要する工数を算出する。
副変更工数算出手段102は、データベース11に格納された工数情報(図2参照)及び依存情報(図3参照)を参照して、新たなLSIの開発に係る改変モジュールに依存する原モジュールの変更に要する工数を算出する。
総変更工数見積もり手段103は、主変更工数算出手段101及び副変更工数算出手段102において算出された、それぞれの変更工数の合計値に基づいて、新たなLSIを開発する場合に追加的に必要となる工数を見積もる。
開発コスト見積もり手段104は、総変更工数見積もり手段103で見積もった変更工数に基づいて、新たなLSIの開発コストを見積もる。
製造単価算出手段105は、入力された新たなLSIを開発する場合の回路規模削減に係る目標値に基づいて、当該LSIの製造単価を算出する。
総コスト算出手段106は、開発コスト見積もり手段104において見積もられた開発コスト、製造単価算出手段105において算出された製造単価、及び入力された新たなLSIの予定量産数に基づいて、LSIを量産する場合の総コストを算出する。
損益分岐点算出手段107は、開発コスト見積もり手段104において見積もられた開発コスト、製造単価算出手段105において算出された製造単価、及び原モジュールを改変せずに新たなLSIを開発する場合の開発コスト及び製造単価に基づいて、原モジュールを改変して新たなLSIを開発する場合の損益分岐点を算出する。
判断手段108は、損益分岐点算出手段107において算出された損益分岐点と、入力された新たなLSIの予定量産数とに基づいて、原モジュールを改変して新たなLSIを開発すべきか否かを判断する。
目標値見積もり手段109は、入力された新たなLSIの予定量産数、原モジュールを改変せずに新たなLSIを開発して予定量算数だけ製造する場合の総コスト、及び開発コスト見積もり手段104において見積もられた開発コストとに基づいて、原モジュールを改変して新たなLSIを開発する場合の製造単価の目標値を見積もる。
なお、上記各手段は、LSI開発支援プログラムがコンピュータに読み込まれて実行されることにより、実現可能である。また、必要に応じて一部の手段を省略してもかまわない。例えば、原モジュールを利用した新たなLSI開発において、改変の対象となる原モジュールの変更に伴う上位の原モジュールの総変更工数のみを見積もる場合については、開発コスト見積もり手段104以降の手段は省略してもかまわない。
次に、本LSI開発支援装置10の処理フローについて説明する。図7は、本実施形態に係るLSI開発支援装置10の処理フローを示す。まず、入力手段12から、改変対象であるサブモジュールMxの変更目標値及びこの改変に伴う改変率xが入力される(S100)。次に、主変更工数算出手段101によって、データベース11からサブモジュールMxに対応する関数f(x)が選択される。そして、当該関数f(x)に改変率xが代入され、サブモジュールMxの変更工数MCHが算出される(S102)。具体的には、次式1に従って、変更工数MCHが算出される。
MCH=DH(Mx)*x+DIH(Mx)+IH(Mx)+IIH(Mx) ・・・(式1)
ただし、
DH(Mx) :サブモジュールMxの設計工数
DIH(Mx):サブモジュールMxの設計検証工数
IH(Mx) :サブモジュールMxの実装工数
IIH(Mx):サブモジュールMxの実装検証工数
S104において、副変更工数算出手段102によって、サブモジュールMxの変更によって影響を受けるサブモジュールMyがあるか否かが判断される。影響を受けるサブモジュールMyがあると判断された場合は、図3に示した依存率dep(Mx,My)に基づいて、サブモジュールMyの変更工数が算出される(S106)。ここで、サブモジュールMxの変更に伴うサブモジュールMyの派生的な変更作業は、実装工程にのみ影響を与えるものとする。具体的には、サブモジュールMyの変更工数SCHは、図2に示した各開発ステップの工数に基づいて、次式2に従って算出される。
SCH=IH(My)+dep(Mx,My)+IIH(My) ・・・(式2)
ただし、
IH(My) :サブモジュールMyの実装工数
IIH(My) :サブモジュールMyの実装検証工数
その後、全てのサブモジュールMyについて変更工数の見積もりが完了したか否かが判断され(S108)、全てのサブモジュールMyについて変更工数の見積もりが完了していない場合はS106に戻り、残りのサブモジュールMyの変更工数が算出される。ただし、本処理フローでは、二次的な派生による、変更工数算出の処理は行わないものとする。これは、サブモジュール間で相互参照が行われている場合であっても、再帰的に派生により変更されることはあり得ないためである。さらに、他のサブモジュールへの二次的な派生による変更工数は小さいと考えられるためである。
S108において全てのサブモジュールMyについて変更工数の見積もりが完了したと判断された場合は、S110において、総変更工数見積もり手段103によって、変更工数MCHと、変更工数SCHと、図2に示したモジュールMAの全体検証工数とに基づいて、モジュールMAの総変更工数TCHが算出される。具体的には、次式3に従って、総変更工数TCHが算出される。もし、S104において、サブモジュールMyがないと判断された場合は、S110にスキップする。
TCH=MCH+SCH+TIH(MA) ・・・(式3)
ただし、
TIH(MA) :モジュールMAの全体検証工数
以上がサブモジュールMxの変更に伴うモジュールMAの総変更工数TCHの見積もり処理である。続いて、上述した、モジュールMAの総変更工数TCHの見積もり結果に基づいて、新たなLSIの開発において、モジュールMAを改変して利用すべきか否かを判断する処理フローについて説明する。
入力手段12から、新たなLSI開発に係る情報として、LSIの予定量算数、新規開発コスト、モジュールMAを改変しない場合の製造単価が入力される(S200)。ここで、新規開発コスト及びモジュールMAを改変しない場合の製造単価は、過去のLSI開発規模と工数の関係や製造工場の歩留まり特性等に基づいて予測可能であるものとする。
S202において、総コスト算出手段106によって、モジュールMAを利用した新たなLSIの開発に係る総コストTCが、次式4に従って算出される。
TC=DC+PC ・・・(式4)
ただし、
DC=NDC+TCC
DC :開発コスト
NDC :新規開発コスト
TCC :モジュールMAの総変更コスト
PC=UC*PN
PC :製造コスト
UC :製造単価
PN :量産数
ここで、モジュールMAの総変更コストTCCは、S110において見積もったモジュールMAの総変更工数TCHと、工数あたりのコスト(以下、単位コストとも称する)とに基づいて算出される。単位コストは予め決められており、例えば、工数「1.0」に対して、単位コスト「1.0」である。また、モジュールMAを改変しない場合の製造単価OUCは、LSIの製造歩留まりや製造プロセス等の製造特性に差がないと仮定すると、LSIの回路面積に依存する。すなわち、LSIは面積が小さいほど、安価なコストで製造できる。サブモジュールMxの変更によって、モジュールMAの回路面積がD%削減された場合、モジュールMAを改変した場合の製造単価CUCは、製造単価算出手段105によって、次式5に従って算出される。
CUC=OUC*(1−AR*D) ・・・(式5)
ただし、
OUC :モジュールMAを改変しない場合の製造単価
AR :新たなLSIに占めるモジュールMAの面積の割合
S204において、損益分岐点算出手段107によって、モジュールMAを改変してLSIの開発を行う場合の損益分岐点が算出される。具体的には、次式6によって表される、モジュールMAを改変せずにLSIの開発を行う場合の総コストOTCと、次式7によって表される、モジュールMAを改変してLSIの開発を行う場合の総コストCTCとの連立方程式から算出される。
OTC=NDC+OUC*PN ・・・(式6)
CTC=NDC+TCC+CUC*PN ・・・(式7)
図8は、量産数と総コストとの関係を示すグラフの一例を示す。本図は、モジュールMAを改変せずにLSIの開発を行った場合のグラフと、モジュールMAを改変してLSIの開発を行った場合のグラフを示している。これらのグラフの交点が、モジュールMAを改変してLSIの開発を行った場合の損益分岐点である。
さらに、S204において、判断手段108は、上記の損益分岐点と、S200で入力された予定量産数とに基づいて、モジュールMAを改変してLSIの開発を行うべきか否かが判断される。
次に、本処理フローにおけるS100及びS200において、以下の条件が入力されたものとして数値を示し、具体的に説明する。
サブモジュールMx :サブモジュールM4
変更目標値 :(サイズ削減率)50%
改変率x :25%
LSIの予定量算数 :14
新規開発コストNDC :20
製造単価OUC :10(モジュールMAを改変しない場合)
S102において、サブモジュールM4の変更工数MCHを、上記式1により算出する。ここで、サブモジュールM4における各開発ステップの工数は、図2を参照して、設計工数DH(M4)=0.8、設計検証工数DIH(M4)=0.2、IH実装工数(M4)=3.0、IIH実装検証工数(M4)=0.5である。したがって、サブモジュールM4の変更工数MCH=3.9となる。
S104において、サブモジュールM4に影響を受けるサブモジュールMyがあるか否か判断される。図3を参照して、サブモジュールM4の変更に伴って影響を受けるサブモジュールMyは、サブモジュールM1、M2、M6である。そして、それぞれのサブモジュールについて、変更工数を算出する(S106、S108)。図3を参照して、サブモジュールM1のサブモジュールM4に対する依存率dep(M4,M1)=20%、サブモジュールM2のサブモジュールM4に対する依存率dep(M4,M2)=10%、サブモジュールM6のサブモジュールM4に対する依存率dep(M4,M6)=10%である。上記式2に従って各サブモジュールMyの変更工数SCHを算出すると、依存モジュールM1の変更工数SCH(M1)=1.4、依存モジュールM2の変更工数SCH(M2)=1.1、依存モジュールM6の変更工数SCH(M6)=1.4となる。図2より、モジュールMAの全体検証工数TIH(MA)=4.2である。S110において、上記式3に上記各値を代入すると、モジュールMAの総変更工数TCH=MCH+SCH(M1)+SCH(M2)+SCH(M6)+TIH(MA)=12.0と算出される。
S202において、単位コストが「1.0」の場合、モジュールMAの総変更コストTCC=12.0となる。また、図5を参照して、サブモジュールM4がモジュールMAに占める面積の割合は40%であり、S100において入力された変更目標値はサイズ削減率50%である。したがって、モジュールMAの面積削減率D=20%となる。ここで、新たなLSIに占めるモジュールMAの面積の割合AR=50%であったとすると、上記式5より、モジュールMAを改変した場合の製造単価CUC=9と算出される。
S200において入力された条件及び、上記算出結果に基づいて、S204においてモジュールMAを改変してLSIの開発を行う場合の損益分岐点を算出する。上記式6により表されるモジュールMAを改変しない場合の総コストOTC=20+10*PNとなる。一方、上記式7により表されるモジュールMAを改変する場合の総コストCTC=20+12+9*PMとなる。したがって、モジュールMAを改変してLSIの開発を行った場合の損益分岐点は量産数=12となり、その場合の総コスト=140となる。
判断手段108は、S200で入力された予定量産数=14であるため、モジュールMAを改変してLSIの開発を行うことをユーザーに推奨する。
なお、目標値見積もり手段109において、予定量産数に基づく総コストの計画値から、サブモジュールMxの変更目標値を算出することも可能である。具体的には、予定量産数が「15」と入力された場合、上記式6より総コストは「170」となる。すなわち、図8において、モジュールMAを改変してLSIの開発を行った場合の損益分岐点が、座標値(15,170)よりも座標原点に近くなるような変更目標値を算出する。
また、本実施形態においては、モジュールMAをハードウエアとして説明を行ったが、モジュールMAがソフトウエアの場合は、メモリサイズの縮小がLSIのサイズ縮小に反映される。すなわち、モジュールMAを改変しても、これを格納するメモリサイズが小さくならなければ、LSIの製造コストは削減されない。
図9は、メモリの種類とメモリサイズの関係の一例を示す。本図において、横軸は、メモリサイズの異なるメモリの種類R1〜R6を示し、縦軸はメモリサイズS1〜S6を示す。例えば、モジュールMAを格納するメモリサイズがS3より大きく、且つS4より小さければ、最適な使用メモリはR4となる。モジュールMAの改変によって、これを格納するメモリサイズをS3より小さくすることができれば、使用するメモリをR3等小さなものに変更することができる。つまり、LSIのサイズを「S4−S3」だけ小さくすることができる。このことから、モジュールMAがソフトウエアの場合、モジュールMAを改変した場合の製造単価CUCは、次式8に従って算出される。
CUC=OUT*(1−MR/LA) ・・・(式8)
MR :メモリサイズの縮小量
LA :LSIの面積
上式8におけるメモリサイズの縮小量とは、例えば、「S4−S3」によって計算できる値である。以上より、上述した図7の説明は、モジュールMAがソフトウエアであっても、上記式5を上記式8に置き換えることにより適用可能である。
また、本実施形態においては依存率dep(Mx,My)を静的に算出しているが、改変内容によって依存率dep(Mx,My)を動的に算出してもよい。例えば、名称変更等のテキストを置き換える変更よりも、引数追加等のインターフェイス方法を変更する修正の方が一般的には難しい修正作業である。したがって、このような場合には、依存率dep(Mx,My)を重み付けにより算出するとよい。あるいは、予め変更内容を想定して、それぞれの変更内容に対応する依存率dep(Mx,My)の表を用意しておき、変更内容に応じてこれらの表を使い分けるようにしてもよい。
(誤差補正機能)
再び図7に戻り、S110におけるモジュールMAの総変更工数の見積もりに際して、過去に見積もった変更工数とその実工数に基づいて誤差を補正する方法について説明する。過去に見積もったモジュールMAの総変更工数の推定値と、それに対応する実際の工数とを、改変に関係する情報とともにデータベース11に格納しておく。ここで、改変に関する情報とは、サブモジュールMxの改変率xや変更の難易度等である。そして、過去に改変対象となったサブモジュールを改変する場合、総変更工数見積もり手段103は、データベース11に格納された過去の情報をもとに誤差を考慮して、モジュールMAの総変更工数の見積もりを行う。ここで、推定値と実測値の誤差はモジュールMAの総変更工数でのみ生じているものとする。
図10は、誤差を考慮する場合の量産数と総コストとの関係を示すグラフの一例を示す。本図は、図8に示したグラフに加えて、モジュールMAを改変してLSIの開発を行った場合の補正を行ったグラフを示している。判断手段108は、モジュールMAを改変してLSIの開発を行った場合の損益分岐点と、補正を行った場合の損益分岐点とによる範囲を考慮して、モジュールMAを改変して新たなLSIの開発を行うべきか否かを判断する。
なお、本例では、過去に蓄積された実測値の情報が1つの場合を示したが、複数の実測値が蓄積管理されている場合は、それぞれの実測値に基づいたグラフとモジュールMAを改変せずにLSIの開発を行った場合のグラフとの交点も、複数存在する。このような場合、例えば、判断手段108は、これらの交点のうち、最も座標原点に近い最小値と、最も座標原点から遠い最大値を代表の2点として、モジュールMAを改変してLSIの開発を行うべきか否かを判断してもよい。
本発明に係るLSI開発支援方法は、既存のLSI開発情報を利用して行う新たなLSI開発において、コスト的観点からLSIの開発の方針を決定する上で有用である。また、モジュールの調達や、改変作業を外部組織に委託すべきか否か判断基準としても応用可能である。
本実施形態に係るLSI開発支援システムの構成を示す図である。 原モジュールの開発ステップ毎に要する工数情報の一例を示す図である。 原モジュール間の依存関係に関する情報の一例を示す図である。 サブモジュール間の関係を示す図である。 原モジュールのサイズ情報の一例を示す図である。 原モジュールから改変モジュールへの変更に要する工数を算出する関数のグラフである。 本発明の一実施形態に係るLSI開発支援装置10の処理フローを示す図である。 量産数と総コストとの関係を示すグラフの一例である。 メモリの種類とメモリサイズの関係の一例を示す図である。 誤差を補正した場合の量産数と総コストとの関係を示すグラフの一例である。
符号の説明
11 データベース
101 主変更工数算出手段
102 副変更工数算出手段
103 総変更工数見積もり手段
104 開発コスト見積もり手段
105 製造単価算出手段
106 総コスト算出手段
107 損益分岐点算出手段
108 判断手段
109 目標値見積もり手段

Claims (20)

  1. データベースに格納された原モジュールの開発情報に基づいて、原モジュールを改変したものである改変モジュールを含む新たなLSIを開発するための支援方法であって、
    前記データベースは、原モジュールの開発ステップ毎に要する工数に関する工数情報と、原モジュールに対する改変モジュールの改変部分の割合である改変率を引数として原モジュールから改変モジュールへの変更に要する工数を算出する関数と、原モジュール間の依存関係に関する依存情報とを格納しており、
    当該LSI開発支援方法は、
    前記データベースに格納された関数の中から前記新たなLSIの開発に係る改変モジュールに対応するものを選択し、当該選択した関数に、入力された当該改変モジュールの改変率を代入して、原モジュールから当該改変モジュールへの変更に要する第1の工数を算出する第1のステップと、
    前記データベースに格納された工数情報及び依存情報を参照して、前記新たなLSIの開発に係る改変モジュールに依存する原モジュールの変更に要する第2の工数を算出する第2のステップと、
    前記第1の工数と前記第2の工数との合計値に基づいて、前記新たなLSIを開発する場合に追加的に必要となる第3の工数を見積もる第3のステップとを備えた
    ことを特徴とするLSI開発支援方法。
  2. 請求項1に記載のLSI開発支援方法において、
    前記工数情報は、原モジュール毎の少なくとも設計・設計検証・実装・実装検証の各ステップに要する工数と、複数の原モジュールから構成される、上位の原モジュールについての全体検証に要する工数とに関する情報を有するものである
    ことを特徴とするLSI開発支援方法。
  3. 請求項1に記載のLSI開発支援方法において、
    前記第3のステップにおいて算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる第4のステップと、
    入力された前記新たなLSIを開発する場合の回路規模削減に係る目標値に基づいて、当該LSIの製造単価を算出する第5のステップと、
    前記第4のステップにおいて見積もられた開発コスト、前記第5のステップにおいて算出された製造単価、及び入力された前記新たなLSIの予定量産数に基づいて、当該LSIを量産する場合の総コストを算出する第6のステップとを備えた
    ことを特徴とするLSI開発支援方法。
  4. 請求項1に記載のLSI開発支援方法において、
    前記第3のステップにおいて算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる第4のステップと、
    入力された前記新たなLSIを開発する場合の回路規模削減に係る目標値に基づいて、当該LSIの製造単価を算出する第5のステップと、
    前記第4のステップにおいて見積もられた開発コスト、前記第5のステップにおいて算出された製造単価、及び原モジュールを改変せずに新たなLSIを開発する場合の開発コスト及び製造単価に基づいて、原モジュールを改変して前記新たなLSIを開発する場合の損益分岐点を算出する第6のステップとを備えた
    ことを特徴とするLSI開発支援方法。
  5. 請求項4に記載のLSI開発支援方法において、
    前記第6のステップにおいて算出された損益分岐点、及び入力された前記新たなLSIの予定量産数とに基づいて、原モジュールを改変して前記新たなLSIを開発すべきか否かを判断する第7のステップを備えた
    ことを特徴とするLSI開発支援方法。
  6. 請求項1に記載のLSI開発支援方法において
    前記第3のステップにおいて算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる第4のステップと、
    入力された新たなLSIの予定量産数、原モジュールを改変せずに新たなLSIを開発して前記予定量算数だけ製造する場合の総コスト、及び前記第4のステップにおいて見積もられた開発コストに基づいて、原モジュールを改変して前記新たなLSIを開発する場合の製造単価の目標値を見積もる第5のステップとを備えた
    ことを特徴とするLSI開発支援方法。
  7. 請求項1に記載のLSI開発支援方法において、
    前記第3のステップは、前記第3の工数の見積もりに際して、過去に見積もった値とそれに対応する実測値との誤差を補正する
    ことを特徴とするLSI開発支援方法。
  8. 請求項3に記載のLSI開発支援方法において、
    原モジュールはハードウエアであり、
    前記目標値は、当該ハードウエアのサイズ縮小指数である
    ことを特徴とするLSI開発支援方法。
  9. 請求項3に記載のLSI開発支援方法において、
    原モジュールはソフトウエアであり、
    前記目標値は、当該ソフトウエアを格納するメモリのサイズ縮小指数である
    ことを特徴とするLSI開発支援方法。
  10. 請求項3に記載のLSI開発支援方法において、
    前記データベースは、原モジュールのサイズ情報を格納しており、
    前記第5のステップは、前記データベースに格納された原モジュールのサイズ情報及び前記回路規模削減に係る目標値から算出した前記新たなLSIのサイズ削減率に基づいて前記新たなLSIの製造単価を算出する
    ことを特徴とするLSI開発支援装方法。
  11. データベースに格納された原モジュールの開発情報に基づいて、原モジュールを改変したものである改変モジュールを含む新たなLSIを開発するための支援プログラムであって、
    前記データベースは、原モジュールの開発ステップ毎に要する工数に関する工数情報と、原モジュールに対する改変モジュールの改変部分の割合である改変率を引数として原モジュールから改変モジュールへの変更に要する工数を算出する関数と、原モジュール間の依存関係に関する依存情報とを格納しており、
    当該LSI開発支援プログラムは、コンピュータを、
    入前記データベースに格納された関数の中から前記新たなLSIの開発に係る改変モジュールに対応するものを選択し、当該選択した関数に、入力された当該改変モジュールの改変率を代入して、原モジュールから当該改変モジュールへの変更に要する第1の工数を算出する主変更工数算出手段と、
    前記データベースに格納された工数情報及び依存情報を参照して、前記新たなLSIの開発に係る改変モジュールに依存する原モジュールの変更に要する第2の工数を算出する副変更工数算出手段と、
    前記第1の工数と前記第2の工数との合計値に基づいて、前記新たなLSIを開発する場合に追加的に必要となる第3の工数を見積もる総変更工数見積もり手段として機能させる
    ことを特徴とするLSI開発支援プログラム。
  12. 請求項11に記載のLSI開発支援プログラムにおいて、
    前記工数情報は、原モジュール毎の少なくとも設計・設計検証・実装・実装検証の各ステップに要する工数と、複数の原モジュールにから構成される、上位の原モジュールについての全体検証に要する工数とに関する情報を有するものである
    ことを特徴とするLSI開発支援プログラム。
  13. 請求項11に記載のLSI開発支援プログラムにおいて、
    コンピュータを、
    前記総変更工数見積もり手段において算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる開発コスト見積もり手段と、
    入力された前記新たなLSIを開発する場合の回路規模削減に係る目標値に基づいて、当該LSIの製造単価を算出する製造単価算出手段と、
    前記開発コスト見積もり手段において見積もられた開発コスト、前記製造単価算出手段において算出された製造単価、及び入力された前記新たなLSIの予定量産数に基づいて、当該LSIを量産する場合の総コストを算出する総コスト算出手段として機能させる
    ことを特徴とするLSI開発支援プログラム。
  14. 請求項11に記載のLSI開発支援プログラムにおいて、
    コンピュータを、
    前記総変更工数見積もり手段において算出された第3の工数に基づいて、前記新たなLSIの開発コストを見積もる開発コスト見積もり手段と、
    入力された前記新たなLSIを開発する場合の回路規模削減に係る目標値に基づいて、当該LSIの製造単価を算出する製造単価算出手段と、
    前記開発コスト見積もり手段において見積もられた開発コスト、前記製造単価算出手段において算出された製造単価、及び原モジュールを改変せずに新たなLSIを開発する場合の開発コスト及び製造単価に基づいて、原モジュールを改変して前記新たなLSIを開発する場合の損益分岐点を算出する損益分岐点算出手段として機能させる
    ことを特徴とするLSI開発支援プログラム。
  15. 請求項14に記載のLSI開発支援プログラムにおいて、
    コンピュータを、
    前記損益分岐点算出手段において算出された損益分岐点と、入力された前記新たなLSIの予定量産数とに基づいて、原モジュールを改変して前記新たなLSIを開発すべきか否かを判断する判断手段として機能させる
    ことを特徴とするLSI開発支援プログラム。
  16. 請求項11に記載のLSI開発支援プログラムにおいて、
    コンピュータを、
    前記総変更工数見積もり手段において算出された第3の工数に基づいて、前記新たなLSIを開発する場合の開発コストを見積もる開発コスト見積もり手段と、
    入力された新たなLSIの予定量産数、原モジュールを改変せずに新たなLSIを開発して前記予定量算数だけ製造する場合の総コスト、及び前記開発コスト見積もり手段において見積もられた開発コストとに基づいて、原モジュールを改変して前記新たなLSIを開発する場合の製造単価の目標値を見積もる目標値見積もり手段として機能させる
    ことを特徴とするLSI開発支援プログラム。
  17. 請求項11に記載のLSI開発支援プログラムにおいて、
    前記総変更工数見積もり手段は、前記第3の工数の見積もりに際して、過去に見積もった値とそれに対応する実測値との誤差を補正する
    ことを特徴とするLSI開発支援プログラム。
  18. 請求項13に記載のLSI開発支援プログラムにおいて、
    原モジュールはハードウエアであり、
    前記目標値は、当該ハードウエアのサイズ縮小指数である
    ことを特徴とするLSI開発支援プログラム。
  19. 請求項13に記載のLSI開発支援プログラムにおいて、
    原モジュールはソフトウエアであり、
    前記目標値は、当該ソフトウエアを格納するメモリのサイズ縮小指数である
    ことを特徴とするLSI開発支援プログラム。
  20. 請求項13に記載のLSI開発支援プログラムにおいて、
    前記データベースは、原モジュールのサイズ情報を格納しており、
    前記製造単価算出手段は、前記データベースに格納された原モジュールのサイズ情報及び前記回路規模削減に係る目標値から算出した前記新たなLSIのサイズ削減率に基づいて前記新たなLSIの製造単価を算出する
    ことを特徴とするLSI開発支援装プログラム。
JP2006009865A 2006-01-18 2006-01-18 Lsi開発支援方法及びlsi開発支援プログラム Pending JP2007193497A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006009865A JP2007193497A (ja) 2006-01-18 2006-01-18 Lsi開発支援方法及びlsi開発支援プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006009865A JP2007193497A (ja) 2006-01-18 2006-01-18 Lsi開発支援方法及びlsi開発支援プログラム

Publications (1)

Publication Number Publication Date
JP2007193497A true JP2007193497A (ja) 2007-08-02

Family

ID=38449158

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006009865A Pending JP2007193497A (ja) 2006-01-18 2006-01-18 Lsi開発支援方法及びlsi開発支援プログラム

Country Status (1)

Country Link
JP (1) JP2007193497A (ja)

Similar Documents

Publication Publication Date Title
JP5614843B2 (ja) ソフトウェア設計・運用統合管理システム
US20080040292A1 (en) Cost information management system, cost information management method, and cost information management program
JP2006099308A (ja) コンポーネントベース・アプリケーション構築方法
CN105190546B (zh) 成本计算装置、成本计算方法及计算机可读记录介质
Chávez et al. Analyzing the risks of digital servitization in the machine tool industry
Rebennack et al. Optimal storage design for a multi-product plant: A non-convex MINLP formulation
CN115600992A (zh) 一种基于预测算法的项目管理方法
Seiler et al. A multi-dimensional configuration algorithm for modular product architectures
JP2006228035A (ja) 在庫補充モデルの選定方法及びシステム
JP6853764B2 (ja) 作業工数推定装置および作業指示システム
JP2005032079A (ja) プロジェクト事前評価方法
JP2010271883A (ja) ルール設計支援方法およびルール設計支援装置
JP2007193497A (ja) Lsi開発支援方法及びlsi開発支援プログラム
JP2011253269A (ja) 組立分析による三次元モデル設計支援システム
JP2006350883A (ja) 知識データベースを利用した需要予測値自動判定システムおよびそれに用いられる需要予測値自動判定プログラム並びにそのプログラムが記録された記録媒体
US20120060145A1 (en) Auto-generation of concurrent code for multi-core applications
JP4705141B2 (ja) 製品開発プロセス支援システム及び製品開発プロセス支援方法
CN113971074A (zh) 事务处理方法、装置、电子设备及计算机可读存储介质
JP2022177408A (ja) 作業時間推定装置、作業時間推定システム及び作業時間推定方法
JP4926211B2 (ja) プロジェクト管理システム及びプロジェクト管理プログラム
JP3156663B2 (ja) 表計算入力情報検証システム
CN117112449B (zh) 数据治理工具的成熟度评估方法、装置、设备及介质
JP2013228801A (ja) 在庫管理装置
JP2014112324A (ja) ソフトウェア複雑度測定装置及び方法並びにプログラム
JP2001350629A (ja) Guiアプリケーション開発規模見積り方法