特許第6244044号(P6244044)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立製作所の特許一覧
<>
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000002
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000003
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000004
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000005
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000006
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000007
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000008
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000009
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000010
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000011
  • 特許6244044-端子機能割当装置、端子機能割当方法 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6244044
(24)【登録日】2017年11月17日
(45)【発行日】2017年12月6日
(54)【発明の名称】端子機能割当装置、端子機能割当方法
(51)【国際特許分類】
   G06F 17/50 20060101AFI20171127BHJP
【FI】
   G06F17/50 658A
【請求項の数】15
【全頁数】20
(21)【出願番号】特願2016-572779(P2016-572779)
(86)(22)【出願日】2015年5月26日
(86)【国際出願番号】JP2015065123
(87)【国際公開番号】WO2016189661
(87)【国際公開日】20161201
【審査請求日】2016年12月12日
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000176
【氏名又は名称】一色国際特許業務法人
(72)【発明者】
【氏名】藤平 達
(72)【発明者】
【氏名】茂岡 知彦
(72)【発明者】
【氏名】三坂 智
(72)【発明者】
【氏名】大原 貴都
(72)【発明者】
【氏名】斉藤 英美
【審査官】 合田 幸裕
(56)【参考文献】
【文献】 特開2011−204070(JP,A)
【文献】 特開2005−084935(JP,A)
【文献】 特開2008−153288(JP,A)
【文献】 特開2014−071597(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/50
IEEE Xplore
JSTPlus(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
中央処理演算装置及び記憶装置を備えた情報処理装置を用いて構成され、
電子回路部品に搭載されている周辺機能を前記電子回路部品が備える端子に割り当てる際の仕様を記述したデータである端子機能割当仕様情報を取得する端子機能割当仕様情報取得部と、
前記端子機能割当仕様情報に基づき、前記割り当てにおける制約を機械可読な形式で記述したデータである端子機能割当モデル情報を生成する端子機能割当モデル情報生成部と、
前記周辺機能の要件を記述した情報である周辺機能要件情報を取得する周辺機能要件情報取得部と、
前記周辺機能要件情報に基づき、前記周辺機能の要件に基づく制約を機械可読な形式で記述したデータである周辺機能要件モデルデータを生成する周辺機能要件モデルデータ生成部と、
前記端子機能割当モデル情報に記述されている前記制約、及び前記周辺機能要件モデルデータに記述されている前記制約の双方を充足するように、前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能か否かを判定する制約解決部と、
前記判定の結果を出力する端子機能割当結果出力部と、
を備える端子機能割当装置。
【請求項2】
請求項1に記載の端子機能割当装置であって、
前記制約解決部が、前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能と判定した場合に、前記端子機能割当結果出力部が、前記電子回路部品が備える端子に前記周辺機能を割り当てた結果を生成して出力する
端子機能割当装置。
【請求項3】
請求項1または2に記載の端子機能割当装置であって、
前記周辺機能要件情報は、前記周辺機能のモードを指定する情報及び前記周辺機能のチャネル数を指定する情報のうち、少なくともいずれかの指定を含む端子機能割当装置。
【請求項4】
請求項3に記載の端子機能割当装置であって、
前記端子機能割当モデル情報は、
前記電子回路部品が備える前記端子に割り当てられる前記周辺機能の信号の夫々を異なる値を持つ変数として定義した情報である信号モデル情報、
前記電子回路部品が備える前記端子の夫々に割り当てることが可能な前記周辺機能の信号の制約を記述した情報である端子モデル情報、及び、
前記電子回路部品に搭載されている前記周辺機能のチャネルについて前記周辺機能のモードを変数として宣言した内容、前記周辺機能の前記チャネルのモードと前記電子回路部品が備える端子への前記周辺機能の信号の割り当てとの関係に基づく制約、及び特定の前記モードに一致する前記周辺機能のチャネル数を変数として定義した情報のうちの少なくともいずれかを含む周辺機能モデル情報
を含む端子機能割当装置。
【請求項5】
請求項1または2に記載の端子機能割当装置であって、
前記端子機能割当モデル情報は、SMT−LIB形式、及びDIMACS CNF形式のうちの少なくともいずれかの形式で記述されている
端子機能割当装置。
【請求項6】
請求項1または2に記載の端子機能割当装置であって、
前記周辺機能要件モデルデータは、SMT−LIB形式、及びDIMACS CNF形式のうちの少なくともいずれかの形式で記述されている
端子機能割当装置。
【請求項7】
請求項1または2に記載の端子機能割当装置であって、
電子回路部品が満たすべき要件を記述したデータである電子回路部品要件情報と、電子回路部品の機種ごとの仕様を記述したデータである電子回路部品機種仕様情報とを取得し、前記電子回路部品機種仕様情報に基づき前記電子回路部品要件情報を満たす一つ以上の機種を選択し、選択した一つ以上の機種を記述したデータである電子回路部品候補データを生成する電子回路部品候補生成部と、
前記電子回路部品候補データに記述されている機種の夫々について前記制約解決部による前記判定を行うことにより、前記端子機能割当モデル情報に記述される前記制約、及び前記周辺機能要件情報に記述される前記制約の双方を充足するように前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能な機種を選択する電子回路部品選択部と、
をさらに備える端子機能割当装置。
【請求項8】
請求項7に記載の端子機能割当装置であって、
前記電子回路部品要件情報は、前記要件の夫々について設定された優先度を示す情報を含み、
前記電子回路部品選択部は、前記優先度の高い要件に合致する機種を優先して、前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能な機種として選択する
端子機能割当装置。
【請求項9】
請求項1または2に記載の端子機能割当装置であって、
前記電子回路部品はマイクロコンピュータである
端子機能割当装置。
【請求項10】
中央処理演算装置及び記憶装置を備えた情報処理装置が、
電子回路部品に搭載されている周辺機能を前記電子回路部品が備える端子に割り当てる際の仕様を記述したデータである端子機能割当仕様情報を取得するステップ、
前記端子機能割当仕様情報に基づき、前記割り当てにおける制約を機械可読な形式で記述したデータである端子機能割当モデル情報を生成するステップ、
前記周辺機能の要件を記述した情報である周辺機能要件情報を取得するステップ、
前記周辺機能要件情報に基づき、前記周辺機能の要件に基づく制約を機械可読な形式で記述したデータである周辺機能要件モデルデータを生成するステップ、
前記端子機能割当モデル情報に記述されている前記制約、及び前記周辺機能要件モデルデータに記述されている前記制約の双方を充足するように、前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能か否かを判定するステップ、及び、
前記判定の結果を出力するステップ、
を実行する、端子機能割当方法。
【請求項11】
請求項10に記載の端子機能割当方法であって、
前記情報処理装置が、前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能と判定した場合に、前記電子回路部品が備える端子に前記周辺機能を割り当てた結果を生成して出力するステップ
をさらに実行する、端子機能割当方法。
【請求項12】
請求項10または11に記載の端子機能割当方法であって、
前記周辺機能要件情報は、前記周辺機能のモードを指定する情報及び前記周辺機能のチャネル数を指定する情報のうち、少なくともいずれかの指定を含む、
端子機能割当方法。
【請求項13】
請求項12に記載の端子機能割当方法であって、
前記端子機能割当モデル情報は、
前記電子回路部品が備える前記端子に割り当てられる前記周辺機能の信号の夫々を異なる値を持つ変数として定義した情報である信号モデル情報、
前記電子回路部品が備える前記端子の夫々に割り当てることが可能な前記周辺機能の信号の制約を記述した情報である端子モデル情報、及び、
前記電子回路部品に搭載されている前記周辺機能のチャネルについて前記周辺機能のモードを変数として宣言した内容、前記周辺機能の前記チャネルのモードと前記電子回路部品が備える端子への前記周辺機能の信号の割り当てとの関係に基づく制約、及び特定の前記モードに一致する前記周辺機能のチャネル数を変数として定義した情報のうちの少なくともいずれかを含む周辺機能モデル情報
を含む端子機能割当方法。
【請求項14】
請求項10または11に記載の端子機能割当方法であって、
前記情報処理装置が、
電子回路部品が満たすべき要件を記述したデータである電子回路部品要件情報と、電子回路部品の機種ごとの仕様を記述したデータである電子回路部品機種仕様情報とを取得し、前記電子回路部品機種仕様情報に基づき前記電子回路部品要件情報を満たす一つ以上の機種を選択し、選択した一つ以上の機種を記述したデータである電子回路部品候補データを生成するステップ、及び、
前記電子回路部品候補データに記述されている機種の夫々について前記制約解決部による前記判定を行うことにより、前記端子機能割当モデル情報に記述される前記制約、及び前記周辺機能要件情報に記述される前記制約の双方を充足するように前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能な機種を選択するステップ
をさらに実行する端子機能割当方法。
【請求項15】
請求項14に記載の端子機能割当方法であって、
前記電子回路部品要件情報は、前記要件の夫々について設定された優先度を示す情報を含み、
前記情報処理装置が、前記優先度の高い要件に合致する機種を優先して、前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能な機種として選択するステップ
をさらに実行する端子機能割当方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、端子機能割当装置、端子機能割当方法に関する。
【背景技術】
【0002】
特許文献1には、「設計対象装置に含まれる端子と、割り当てることが可能な候補機能群との対応関係を示す情報を、端子情報として格納する、端子情報格納部と、前記端子情報に基づいて、前記各端子に割り当てられる機能を決定し、割り当て結果データを生成する処理部とを具備する。前記端子情報において、前記候補機能群に含まれる各候補機能には、前記各候補機能が所属する関連機能グループを示す関連情報が対応付けられている。前記処理部は、前記関連情報を参照して、前記選択機能が所属する関連機能グループを特定関連機能グループとして特定する。前記複数の端子の中から、前記特定関連機能グループに所属する候補機能を有する他の端子が、関連端子として選択される。前記関連端子に、特定関連機能グループに所属する候補機能が割り付けられ、割り当て結果データが生成される。」と記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2011−204070号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
マイクロコントローラ(以下、マイコンと称する。)等の多用途な電子回路部品には、汎用性を高めることなどを目的として、各種プロトコルに対応した通信機能、アナログ−デジタル変換機能等の様々な周辺機能が搭載されている。電子回路部品を利用して機器の設計や開発を行うユーザは、マイコンに搭載されている周辺機能を電子機器の仕様や用途に応じて選択し、選択した周辺機能を電子回路部品が備える端子に割り当てた上で電子回路部品を使用する。
【0005】
ここで電子回路部品に装備可能な端子の数は電子回路部品のパッケージの大きさや形状等の物理的な制約によって限られており、同時に利用可能な周辺機能の数や組合せは制限される。そこで周辺機能の効率的な活用を可能とすべく、電子回路部品は、同一の信号を複数の端子に切り換えて割り当てる、同じ周辺機能について用意された複数チャネルをソフトウェアの実行時に逐次選択する、といった使い方が可能になっている場合も少なくない。
【0006】
しかしこうした電子回路部品の柔軟性は、周辺機能の端子への割り当ての態様(パターン)を多様化させることとなり、利用する周辺機能が多い場合は相当数の組み合わせについて試行錯誤を繰り返す必要があり、ユーザは煩雑な作業を強いられることとなる。
【0007】
本発明は、こうした背景に鑑みてなされたもので、電子回路部品に搭載されている周辺機能の電子回路部品が備える端子への割り当てを適切かつ効率よく行うことが可能な、端子機能割当装置、及び端子機能割当方法を提供することを目的としている。
【課題を解決するための手段】
【0008】
本発明のうちの一つは、端子機能割当装置であって、中央処理演算装置及び記憶装置を備えた情報処理装置を用いて構成され、電子回路部品に搭載されている周辺機能を前記電子回路部品が備える端子に割り当てる際の仕様を記述したデータである端子機能割当仕様情報を取得する端子機能割当仕様情報取得部と、前記端子機能割当仕様情報に基づき、前記割り当てにおける制約を機械可読な形式で記述したデータである端子機能割当モデル情報を生成する端子機能割当モデル情報生成部と、前記周辺機能の要件を記述した情報である周辺機能要件情報を取得する周辺機能要件情報取得部と、前記周辺機能要件情報に基づき、前記周辺機能の要件に基づく制約を機械可読な形式で記述したデータである周辺機能要件モデルデータを生成する周辺機能要件モデルデータ生成部と、前記端子機能割当モデル情報に記述されている前記制約、及び前記周辺機能要件モデルデータに記述されている前記制約の双方を充足するように、前記電子回路部品が備える端子に前記周辺機能を割り当てることが可能か否かを判定する制約解決部と、前記判定の結果を出力する端子機能割当結果出力部とを備える。
【0009】
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄、及び図面により明らかにされる。
【発明の効果】
【0010】
本発明によれば、電子回路部品に搭載されている周辺機能の電子回路部品が備える端子への割り当てを適切かつ効率よく行うことが可能となる。
【図面の簡単な説明】
【0011】
図1】実施例1の端子機能割当装置10の構成を示す図である。
図2】端子機能割当モデル生成部200を説明する図である。
図3】端子信号情報2521の一例を示す図である。
図4】周辺機能チャネル情報2522の一例を示す図である。
図5】周辺機能信号情報2523の一例を示す図である。
図6】端子機能割当部600を説明する図である。
図7】端子機能割当処理S700を説明するフローチャートである。
図8】周辺機能要件情報設定画面800の一例である。
図9】実施例2の端子機能割当装置10の構成を示す図である。
図10】端子機能割当部1000を説明する図である。
図11】端子機能割当処理S1100を説明するフローチャートである。
【発明を実施するための形態】
【0012】
以下、図面を参照しつつ詳細に説明する。以下の説明において、同一の符号を付した構成について重複する説明を省略することがある。また「プログラム」のことを「PG」と略記することがある。
【実施例1】
【0013】
図1に実施例1として説明する端子機能割当装置10の構成を示している。端子機能割当装置10は、電子回路部品であるマイクロコンピュータ(以下、マイコンとも称する。)に搭載されている周辺機能をマイコンが備える端子に割り当てる際の仕様に基づき、上記割り当てにおける制約を機械可読な形式で記述したデータを生成する。また端子機能割当装置10は、周辺機能に対する要件(以下、周辺機能要件情報とも称する。)に基づく制約を機械可読な形式で記述したデータを生成する。端子機能割当装置10は、周辺機能の端子への割り当てにおける上記制約、及び周辺機能要件情報に基づく上記制約の双方を充足するように、マイコンが備える端子に周辺機能を割り当てることが可能か否かを判定する。また端子機能割当装置10は、割り当てることが可能と判定した場合、マイコンが備える端子に周辺機能を割り当てた結果を生成して出力する。
【0014】
端子機能割当装置10は、情報処理装置(コンピュータ)を用いて構成されており、中央演算処理装置11、主記憶装置12、補助記憶装置13、入力装置14、出力装置15、及び通信装置16の各構成を備える。これらの構成は、バス17等を介して通信可能に接続されている。中央演算処理装置11は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等を用いて構成されており、主記憶装置12に記憶されているプログラム(実行形式データ、ソースコードデータ(インタプリタで実行される場合)等)を実行する。主記憶装置12は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、NVRAM(Non Volatile RAM)であり、補助記憶装置13は、例えば、ハードディスクドライブ、SSD(Solid State Drive)である。入力装置14は、ユーザから情報を取得するためのユーザインタフェースであり、例えば、キーボード、マウス、タッチパネルである。出力装置15は、情報をユーザに提供するユーザインタフェースであり、例えば、液晶モニタ等のディスプレイ、スピーカ、印字/印刷装置である。通信装置16は、通信線や通信ネットワークを介して他の装置と通信する装置であり、例えば、NIC(Network Interface Card)や無線通信モジュールを用いて構成されている。
【0015】
補助記憶装置13には、端子機能割当モデル生成PG111並びに端子機能割当PG112の各プログラムが記憶されている。中央演算処理装置11が、補助記憶装置13に格納されているプログラムを読み出して実行することにより、端子機能割当装置10の機能が実現される。補助記憶装置13には、端子機能割当仕様データ121、端子機能割当モデル情報データ122、及び端子機能割当結果データ123の各データが記憶されている。これらのデータは、例えば、端子機能割当装置10において動作するDBMS(DataBase Management System)によってデータベースのテーブルとして管理される。
【0016】
<端子機能割当モデル生成機能>
図2は、端子機能割当装置10が端子機能割当モデル生成PG111を実行することにより実現される機能のうちの一つ(以下、この機能のことを端子機能割当モデル生成部200と称する。)を説明する図である。端子機能割当モデル生成部200は、入力装置14または通信装置16を介して端子機能割当装置10に入力される端子機能割当仕様データ121に基づき端子機能割当モデル情報データ122を生成する。
【0017】
端子機能割当仕様データ121は、マイコンが備える複数の端子への当該マイコンが備える周辺機能(例えば、UART(Universal Asynchronous Receiver Transmitter)、ADC(Analog Digital Converter)、DAC(Digital Analog Converter)、SPI(Serial Peripheral Interface)、I2C(Inter-Integrated Circuit)等)の割り当てに関する仕様を記述したデータである。端子機能割当仕様データ121は、例えば、マイコンベンダ等が提供するデータシートに基づき作成される。補助記憶装置13にはマイコンの機種ごとの端子機能割当仕様データ121が記憶されている。端子機能割当仕様データ121は、例えば、CSV(Comma-Separated Values)、XML(eXtensible Markup Language)、バイナリ(binary)等の形式で記述されるが、端子機能割当仕様データ121の記述形式は必ずしもこれらに限定されない。
【0018】
端子機能割当モデル生成部200が生成する端子機能割当モデル情報データ122は、端子機能割当仕様データ121に基づくマイコンの機種に応じた制約を機械可読な記述形式の論理式で記述したデータである。上記論理式は、例えば、充足可能性問題(SAT(SATisfiability problem))の解析に用いられるツール(以下、制約ソルバとも称する。)の標準入力形式で記述され、例えば、SMTソルバ(Satisfiable Modulo Theories solver)の標準入力形式であるSMT-LIB、SATソルバ(SATisfiability problem solver)の標準入力形式であるDIMACS CNF等の記述形式で記述される。
【0019】
同図に示すように、端子機能割当モデル生成部200は、端子機能割当仕様情報取得部211、端子機能割当モデル情報生成部212、及びモデル出力部213の各機能を有する。また同図に示すように、端子機能割当モデル情報生成部212は、信号モデル生成部2121、端子モデル生成部2122、及び周辺機能モデル生成部2123の各機能を有する。
【0020】
端子機能割当仕様情報取得部211は、入力装置14または通信装置16を介して、端子機能割当仕様データ121及びマイコン指定情報251をユーザから取得する。マイコン指定情報251には、端子機能割当装置10により端子機能の割り当てを行う対象となるマイコンの機種(性能、機能、型番等)を指定する情報(マイコンの製品名、マイコンの製品番号等)が含まれる。端子機能割当仕様情報取得部211は、マイコン指定情報251に指定されているマイコンの端子機能割当仕様データ121を補助記憶装置13から読み出し、読み出した端子機能割当仕様データ121に基づき端子機能割当仕様情報252(端子信号情報2521、周辺機能チャネル情報2522、周辺機能信号情報2523)を生成する。端子機能割当仕様情報252は、例えば、データベースのテーブルやファイルシステムによって管理されるファイルとして、補助記憶装置13や主記憶装置12に記憶される。以下では、端子機能割当仕様情報252がデータベースのテーブルとして管理される場合を例として説明する。
【0021】
図3は端子信号情報2521の一例である。同図に示すテーブルの各行(レコード)はマイコンが備える複数の端子(ピン)の一つに対応している。テーブルの各行は、端子番号311、端子名称312、及び周辺機能信号313の各項目を含む。このうち端子番号311には、マイコンが備える端子を識別する番号(以下、端子番号と称する。)が設定される。端子名称312には、端子の名称(以下、端子名称と称する。)が設定される。端子名称としては、例えば、端子に割り当てられている周辺機能の信号の種類に対応する名称が用いられる。周辺機能信号313には、マイコンの端子に割り当てることが可能な信号の種類を示す情報(以下、周辺機能信号と称する。)が設定される。
【0022】
例えば、図3のテーブルの先頭行は、端子番号が「23」で端子名称が「PA0」である端子に、「PA0」、「UART4TX」、及び「ADC0」のうちのいずれかの周辺機能信号を割り当てることが可能であることを示している。尚、「PA0」は汎用入出力ポートAのビット0の信号を、「UART4TX」はシリアル通信機能「UART」のチャネル4の送信(TX)信号を、「ADC0」はアナログ‐デジタル変換機能「ADC」のチャネル0の信号を示す。
【0023】
図4は周辺機能チャネル情報2522の一例である。同図に示すテーブルの各行(レコード)はマイコンが備える各周辺機能に対応している。同図に示すように、各行は周辺機能411及びチャネル412の各項目を含む。周辺機能411には、マイコンが備える周辺機能の種類を識別する情報(以下、周辺機能名称と称する。)が設定される。チャネル412には、周辺機能のチャネルを識別する情報(以下、チャネル名称と称する。)が設定される。
【0024】
例えば、図4のテーブルの先頭行は、マイコンが、アナログ‐デジタル変換機能(以下、「ADC」とも表記する。)として8つのチャネル(チャネル名称が0,1,2,3,4,5,6,7の8つのチャネル)を利用可能であることを示している。また2行目は、マイコンがシリアル通信機能(以下、「UART」とも表記する。)として4つのチャネル(チャネル名称がUSART1,USART2,USART3,UART4の4つのチャネル)を利用可能であることを示している。尚、「USART」は通信方式が同期式であることを、「UART」は通信方式が非同期式であることを示す。
【0025】
図5は周辺機能信号情報2523の一例である。同図に示すテーブルの各行(レコード)は、機能/モード511及び信号512の各項目を含む。機能/モード511には、マイコンが備える周辺機能の周辺機能名称、またはマイコンが備えるモード(動作モード)の名称(以下、モード名称と称する。)が設定される。信号512には、周辺機能が使用する信号や各モードが使用する信号を示す情報が設定される。
【0026】
例えば、図5のテーブルの先頭行は、シリアル通信機能「UART」が、「{n}TX」、「{n}RX」、及び「{n}CK」の3つの信号を使用することを示している。尚、「{n}」はチャネルを示し、例えば、周辺機能チャネル情報2522の「USART1」や「UART4」等に置き換えられる。テーブルの先頭行以外の各行には、周辺機能の各モードが使用する信号を示す情報が設定される。この例では、上記情報として、使用する信号には「1」を、使用しない信号には「0」を設定している。
【0027】
テーブルの2行目は、機能/モード511に「TX_ONLY」が、信号512に「1,0,0」が、夫々設定されている。これはモード「TX_ONLY」が「{n}TX」の信号のみを使用することを示す。テーブルの3行目は、機能/モード511に「UART」のモードの一つである「RX_ONLY」が設定され、信号512に「0,1,0」が設定されている。これはモード「RX_ONLY」が「{n}RX」の信号のみを使用することを示す。テーブルの4行目は、機能/モード511に「UART」のモードの一つである「DUPLEX」が設定され、信号512に「1,1,0」が設定されている。これはモード「DUPLEX」が、「{n}TX」の信号と「{n}RX」の信号を使用することを示す。
【0028】
テーブルの5行目は、機能/モード511に「UART」のモードの一つである「SYNC」が設定され、信号512に「0,0,1」が設定されているが、これはモード「SYNC」が、「{n}CK」の信号を使用する同期式の通信方式であることを示している。テーブルの6行目は、機能/モード511に「UART」のモードの一つである「ASYNC」が設定され、信号512に「0,0,0」が設定されているが、これはモード「ASYNC」が「{n}CK」の信号を使用しない非同期式の通信方式であることを示している。これら「SYNC」及び「ASYNC」は、他の3つのモード(「TX_ONLY」、「RX_ONLY」、「DUPLEX」)と組み合わせて用いられる。
【0029】
図2に戻り、端子機能割当モデル情報生成部212(信号モデル生成部2121、端子モデル生成部2122、周辺機能モデル生成部2123)は、端子機能割当仕様情報252(端子信号情報2521、周辺機能チャネル情報2522、周辺機能信号情報2523)に基づき、端子機能割当モデル情報253(信号モデル情報2531、端子モデル情報2532、周辺機能モデル情報2533)を生成する。
【0030】
端子機能割当モデル情報生成部212の信号モデル生成部2121は、端子信号情報2521に基づき信号モデル情報2531を生成する。信号モデル情報2531は、端子信号情報2521に含まれる全ての信号をリストアップし、リストアップした信号群について重複を排除した上で、リストアップした信号の夫々を異なる値を持つ変数として定義した内容を含む。SMT-LIB形式で記述された信号モデル情報2531の一例を次に示す。
(define-fun NONE () Int 0)
(define-fun GPIO () Int 1)
(define-fun UART4TX () Int 2)
(define-fun ADC0 () Int 3)

上記信号モデル情報2531には、4つの周辺機能信号「NONE」、「GPIO」、「UART4TX」、「ADC0」の夫々に対応する変数「NONE () 」、「GPIO () 」、「UART4TX ()」、「ADC0 ()」を、夫々、0、1、2、3の値を持つ整数型「Int」として定義した内容が記述されている。周辺機能信号「NONE」は、端子を使用しないことを示す仮想的な周辺機能信号である。周辺機能信号「GPIO」は、端子を汎用入出力ポートとして使用することを示す仮想的な信号である。
【0031】
端子機能割当モデル情報生成部212の端子モデル生成部2122は、端子信号情報2521に基づき端子モデル情報2532を生成する。端子モデル情報2532は、端子信号情報2521に含まれる全ての端子を周辺機能信号と同じ型を持つ変数として宣言し、各端子に割り当てることが可能な周辺機能信号の制約を記述した内容を含む。SMT-LIB形式で記述された端子モデル情報2532の一例を次に示す。
(declare-fun PA0 () Int)
(assert (or (= PA0 NONE) (= PA0 GPIO) (= PA0 UART4TX) (= PA0 ADC0)))

上記端子モデル情報2532は、図3の端子番号「23」の行に対応している。上記端子モデル情報2532には、端子「PA0」を整数型「Int」の変数として宣言し、信号変数「NONE」と等しいか、または「GPIO」と等しいか、または「UART4TX」と等しいか、または「ADC0」と等しい旨の制約が記述されている。
【0032】
端子機能割当モデル情報生成部212の周辺機能モデル生成部2123は、端子信号情報2521、周辺機能チャネル情報2522、及び周辺機能信号情報2523に基づき、周辺機能モデル情報2533を生成する。周辺機能モデル情報2533は、周辺機能チャネル情報2522に含まれる周辺機能のチャネル数の定義と、全チャネルについて周辺機能信号情報2523に含まれる周辺機能のモードを変数として宣言した内容を含む。SMT-LIB形式で記述された周辺機能モデル情報2533の一例を次に示す。
(define-fun UART#MAX () Int 4)
(declare-fun USART1#MODE () (# BitVec 3))
(declare-fun USART2#MODE () (# BitVec 3))
(declare-fun USART3#MODE () (# BitVec 3))
(declare-fun UART4#MODE () (# BitVec 3))
(define-fun UART#MODE#NONE () (# BitVec 3) #b000)
(define-fun UART#MODE#TX#ONLY () (# BitVec 3) #b100)
(define-fun UART#MODE#RX#ONLY () (# BitVec 3) #b010)
(define-fun UART#MODE#DUPLEX () (# BitVec 3) #b110)
(define-fun UART#MODE#SYNC () (# BitVec 3) #b001)
(define-fun UART#MODE#ASYNC () (# BitVec 3) #b000)

上記周辺機能モデル情報2533は、図4の2行目に対応している。上記周辺機能モデル情報2533には、周辺機能「UART」のチャネル数として変数「UART#MAX ()」を定義し、各チャネルに対するモードを表す4つの変数「USART1#MODE ()」、「USART2#MODE ()」、「USART3#MODE ()」、「UART4#MODE ()」を3ビット(図5の1行目の信号数)のビットベクタ型「(# BitVec 3)」として宣言し、図5における各モードの信号を定義した内容が記述されている。尚、「UART#MODE#NONE ()」は、周辺機能を使用しないことを示すモードであり、全ビットが0に設定される。
【0033】
周辺機能モデル情報2533は、さらに周辺機能の全チャネルのモードと端子への信号の割り当てとの関係に基づく制約を機械可読な記述形式で記述した論理式を含む。SMTソルバの記述形式で記述した場合の上記制約の一例を次に示す。
(assert (=
(= ((# extract 0 0) USART2#MODE) #b1)
(or (= USART2CK PA4) (= USART2CK PD7))
))
(assert (not (and (= USART2CK PA4) (= USART2CK PD7))))

この例では、図4の周辺機能「UART」のチャネル「USART2」のモードと端子への信号割当との関係のうち、クロック信号「USART2CK」に関わる部分を記述している。周辺機能モデル生成部2123は、次のようにして上記論理式を生成する。まず図5の先頭行の「UART」の信号名のチャネルを表す部分「{n}」をチャネル名「USART2」で置換することにより、信号名「USART2CK」が得られる。得られた信号名「USART2CK」について、図3の端子信号情報2521を検索し、「USART2CK」が割り当てられる端子名をリストアップする。その結果、「PA4」と「PD7」が得られる。モード変数「USART2#MODE ()」のビット0は、クロック信号「USART2CK」の使用の有無を表している。即ち、上記論理式は、モード変数「USART2#MODE ()」のビット0が1であることと、「USART2CK」が「PA4」または「PD7」と等しいことは同値である旨の制約を記述している。尚、マイコンには1つの信号を複数の端子に割り当てることはできないという制約が存在する。そこで上記論理式には、「USART2CK」が「PA4」と「PD7」の両方と同時に等しくならない旨の制約も記述されている。
【0034】
周辺機能モデル情報2533は、さらに、全ての周辺機能に対して、特定のモードに一致する周辺機能のチャネル数を変数として定義した情報を含む。SMTソルバの記述形式で記述した場合の上記情報の一例を次に示す。
(define-fun UART#CNT ((mode (# BitVec 3))) Int (+
(ite (= mode USART1#MODE) 1 0)
(ite (= mode USART2#MODE) 1 0)
(ite (= mode USART3#MODE) 1 0)
(ite (= mode UART4#MODE) 1 0)
))

この例では、前述の周辺機能「UART」のモードを表す型「(# BitVec 3)」の引数として「mode」を宣言している。そして、「UART」の各チャネルのモードを表す4つの変数「USART1#MODE」、「USART2#MODE」、「USART3#MODE」、「UART4#MODE」に対して、「mode」と一致する場合は1、一致しない場合は0を加算した値を、変数「UART#CNT ()」として定義している。つまり上記論理式における変数「UART#CNT ()」は、周辺機能「UART」の4つのチャネルのうち、「mode」に設定されるチャネル数を表している。
【0035】
図2に示すモデル出力部213は、以上のようにして端子機能割当モデル情報生成部212によって生成された端子機能割当モデル情報253に基づき端子機能割当モデル情報データ122を生成する。
【0036】
以上に説明したように、端子機能割当装置10は、端子機能割当仕様データ121に基づき端子機能割当モデル情報データ122を生成するので、ユーザは手動で端子機能割当モデル情報データ122を作成する必要がなく、入力ミス等の誤りを減らすことができる。尚、端子機能割当モデル情報データ122には、マイコンの機種毎の端子機能割り当てに関する静的な仕様に基づく制約が記述されている。そのため、マイコンの仕様が変更されない限り、一度生成した端子機能割当モデル情報データ122を後述する端子機能の割り当てにおいて繰り返し用いることができる。またマイコンの機種が異なる場合でもマイコンの仕様が共通している場合は異なる機種のマイコンに共通の端子機能割当モデル情報データ122を流用することができ、割り当て作業を効率よく進めることができる。
【0037】
<端子機能の割り当て>
図6は、端子機能割当装置10が端子機能割当PG112を実行することにより実現される機能のうちの一つ(以下、この機能のことを端子機能割当部600と称する。)を説明する図である。端子機能割当部600は、要求される周辺機能のモードとチャネル数の指定に対してマイコンが備える端子への周辺機能の割り当て可否を判定し、さらに割り当て可能と判定した場合、割り当てた結果を記述したデータである端子機能割当結果データ123を生成して出力する。端子機能割当部600は、マイコン指定情報251、端子機能割当モデル生成部200によって生成された端子機能割当モデル情報データ122、及び周辺機能要件情報261に基づき、上記端子機能割当結果データ123を生成する。
【0038】
同図に示すように、端子機能割当部600は、モデル取得部611、周辺機能要件情報取得部612、周辺機能要件モデルデータ生成部613、制約解決部614、及び端子機能割当結果出力部615の各機能を有する。
【0039】
モデル取得部611は、マイコン指定情報251及び端子機能割当モデル情報データ122を取得し、取得したマイコン指定情報251に指定される機種の端子機能割当モデル情報データ122に基づき端子機能割当モデルデータ262を生成する。
【0040】
周辺機能要件情報取得部612は、入力装置14または通信装置16から周辺機能要件情報261を取得する。
【0041】
周辺機能要件モデルデータ生成部613は、周辺機能要件情報取得部612が取得した周辺機能要件情報261に基づき、周辺機能要件モデルデータ263を生成する。尚、周辺機能要件情報261は、例えば、要求される周辺機能のモードを指定する情報や要求される周辺機能のチャネル数を指定する情報を含む。
【0042】
制約解決部614は、端子機能割当モデルデータ262に記述されている制約と周辺機能要件モデルデータ263に記述されている制約の双方を満たす変数の組み合わせが存在するか否かを調べることにより、周辺機能要件モデルデータ263の制約に対して、マイコン指定情報251で指定された機種のマイコンに周辺機能を割り当てることができるか否かを判定する。制約解決部614は、双方の制約を充足するように周辺機能を端子に割り当てることが可能と判定した場合、その際の変数の組み合わせを端子機能割当結果出力部615に出力する。
【0043】
端子機能割当結果出力部615は、制約解決部614から入力された上記組み合わせに基づき、マイコン指定情報251で指定されたマイコンについて周辺機能を割り当てた結果を記載したデータである端子機能割当結果データ123を生成し、生成した端子機能割当結果データ123を出力装置15に出力する。
【0044】
図7は、端子機能割当部600が行う処理(以下、端子機能割当処理S700と称する。)を説明するフローチャートである。以下、同図とともに端子機能割当処理S700について説明する。尚、以下の説明において、符号の前に付している「S」の文字は処理ステップを意味している。
【0045】
まずモデル取得部611が、入力装置14または通信装置16を介してマイコン指定情報251を取得し、取得したマイコン指定情報251に指定されているマイコンの端子機能割当モデル情報データ122に基づき端子機能割当モデルデータ262を生成する(S701)。
【0046】
続いて、周辺機能要件情報取得部612が、入力装置14または通信装置16を介して周辺機能要件情報261を取得し、周辺機能要件モデルデータ生成部613が、周辺機能要件情報261に基づき周辺要件モデル情報263を生成する(S702)。
【0047】
図8は、周辺機能要件情報取得部612が、入力装置14を介して周辺機能要件情報261をユーザから取得するにあたり出力装置15(ディスプレイ等)に表示する画面(以下、周辺機能要件情報設定画面800と称する。)の一例である。同図に示すように、周辺機能要件情報設定画面800には、周辺機能のモードの指定欄とチャネル数の指定欄とを含む、周辺機能の要件の入力欄811が設けられている。ユーザはこの周辺機能要件情報設定画面800を介して周辺機能の要件を簡便に入力することができる。
【0048】
周辺機能要件情報取得部612が生成する周辺機能要件モデルデータ263には、周辺機能要件情報261に基づく制約が機械可読な形式の論理式として記述されている。周辺機能要件モデルデータ263の一例を次に示す。
(assert (= (UART#CNT (bvor UART#MODE#DUPLEX UART#MODE#ASYNC)) 1))
(assert (= (UART#CNT UART#MODE#NONE) (- UART#MAX 1)))

上記の例は図8の周辺機能要件情報設定画面800の入力欄811に例示した内容に対応している。1行目は周辺機能「UART」のモードが「送受信(UART_MODE_DUPLEX)」かつ「非同期(UART_MODE_ASYNC)」であるチャネル数が「1」であることを表している。また2行目は、周辺機能「UART」の残りのチャネル、即ち「UARTMAX−1」個のチャネルが使用されない(つまり「UART_MODE_NONE」)ことを表している。
【0049】
図7に戻り、続いて、制約解決部614が、端子機能割当モデルデータ262に記述されている制約と周辺機能要件モデルデータ263に記述されている制約の双方を満たす変数の組み合わせが存在するか否かを調べることにより、周辺機能要件モデルデータ263の制約に対して、マイコン指定情報251で指定されたマイコンの端子に周辺機能を割り当てることができるか否かを判定する(S703)。この判定は、全ての変数の組み合わせに対して全ての論理式の真理値を評価することにより行われる。即ち、制約解決部614は、全ての論理式が真となる変数の組み合わせが存在すれば、双方の制約を充足するようにマイコンの端子に周辺機能を割り当てることが可能と判定し、上記組み合わせが存在しなければ、双方の制約を充足するようにマイコンの端子に周辺機能を割り当てることは不可能であると判定する。そして双方の制約を充足するようにマイコンの端子に周辺機能を割り当てることが可能と判定した場合、制約解決部614は、その際の変数の組み合わせを解(割り当て可能なパターン)として出力する。
【0050】
尚、端子機能割当モデルデータ262及び周辺機能要件モデルデータ263が制約ソルバ(SMTソルバ、SATソルバ等)の形式で記述されている場合、S703の判定は、制約ソルバを用いて効率よく行うことができる。尚、制約解決部614が外部プログラムとして制約ソルバを起動するとしてもよい。例えば、制約ソルバがSMTソルバである場合、制約解決部614は、制約ソルバに対して端子機能割当モデルデータ262と周辺機能要件モデルデータ263とを送信した後、判定コマンド「(check-sat)」を送信する。SMTソルバは、上記判定コマンドに対し、割り当て可能な場合は「sat」を、割り当て不可能な場合は「unsat」を返す。
【0051】
上記判定において、制約解決部614がマイコンの端子に周辺機能を割り当てることが可能と判定した場合は(S703:Y)S704に進み、割り当てることが不可能と判定した場合は(S703:N)S705に進む。
【0052】
S704では、制約解決部614は、上述の制約を満たす変数の組み合わせを端子機能割当結果出力部615に出力する。端子機能割当結果出力部615は、上記組み合わせに基づき端子機能割当結果データ123を生成し、生成した端子機能割当結果データ123を出力装置15に出力する。尚、上記端子機能割当結果データ123を端子機能割当結果出力部615が補助記憶装置13に記憶するとしてもよい。
【0053】
例えば、制約解決部614が外部プログラムとしてSMT−LIB形式に対応するSMTソルバを起動するようにした場合、制約解決部614は、SMTソルバから「sat」を受信した後、端子モデル情報2532において宣言した全ての端子の変数値を取得するコマンドを発行する。上記コマンドの一例を次に示す。
(get-value (PA0))
(get-value (PA1))

上記コマンドは、図3に示した端子名称312が「PA0」及び「PA1」の各端子の変数値を取得するコマンドである。SMTソルバは、これらのコマンドに対して、例えば、次の応答を返す。
((PA0 3))
((PA1 1))

この例では、端子名称312が「PA0」、「PA1」の端子に、夫々、値「3」と値「1」の信号が割り当てられることを示している。これらの値は、信号モデル情報2531における変数と1対1の関係で対応付けられているので、夫々の値に対応する周辺機能信号を示す情報を出力することができ、例えば、「PA0」には周辺機能信号「ADC0」を割り当て、「PA1」には周辺機能信号「GPIO」を割り当てることを示す情報が出力される。尚、周辺機能信号「ADC0」や「GPIO」を、図3に示した端子番号311に対応させて出力装置15に出力するようにしてもよい。
【0054】
図7のS705では、端子機能割当結果出力部615が、割り当て不可であることを示す情報(警告)を出力装置15から出力する。
【0055】
以上に説明したように、本実施例の端子機能割当装置10は、マイコン指定情報251と周辺機能要件情報(モードの指定、チャネル数の指定等)を与えることで、端子への周辺機能の割り当て可否を自動的に判定する。このため、ユーザは周辺機能の端子への割り当てについて多数の組み合わせについて試行錯誤を繰り返すことなく、端子への周辺機能の割り当てが可能か否かを容易に知ることができる。また端子への周辺機能の割り当てが可能と判定した場合、端子機能割当装置10は割り当て可能なパターン(端子機能割当結果データ123)を出力するので、ユーザは適切な割り当て方法を知ることができる。このように、本実施例の端子機能割当装置10によれば、ユーザはマイコンに搭載されている周辺機能のマイコンが備える端子への割り当てを適切かつ効率よく行うことができる。
【0056】
尚、マイコンの端子に周辺機能を割り当てる際、既に割り当てられている機能を他の端子に割り当て直せば割り当てることが可能になることがある。また割り当てる機能は個別のチャネルを指定する必要があるが、他のチャネルを割り当てれば、割り当て可能な場合もありうる。本実施例の端子機能割当装置10は、制約ソルバを用いて割り当てのパターンを解析するので、そのような場合でも適切な割り当てのパターンをユーザに提供することができる。
【実施例2】
【0057】
実施例1では、指定されたマイコンに対して端子機能割当装置10が周辺機能要件情報に基づく端子への周辺機能の割り当てが不可能と判定した場合、ユーザが手動で別のマイコンを指定し直す必要があった。そこで実施例2では、端子機能割当装置10が周辺機能要件情報について周辺機能の割り当てが可能な機種のマイコンを自動的に選定するようにする。
【0058】
図9に実施例2の端子機能割当装置10の構成を示している。同図に示すように、実施例2の端子機能割当装置10は、図1における端子機能割当PG112の代わりに端子機能割当PG113を有する。また実施例2の端子機能割当装置10は、補助記憶装置13に予め作成されたマイコン機種仕様情報1051を記憶する。
【0059】
図10は、実施例2の端子機能割当装置10が端子機能割当PG113を実行することにより実現される機能(以下、この機能のことを端子機能割当部1000と称する。)を説明する図である。実施例2の端子機能割当装置10は、端子機能割当部1000が、マイコン候補生成部1011(電子回路部品候補生成部)及びマイコン選択部1012(電子回路部品選択部)をさらに備え、端子機能割当結果出力部615が、選択マイコン端子機能割当結果出力部1013に置き換えられる点で図6に示した実施例1の端子機能割当部600と構成が異なる。実施例2の端子機能割当部1000は、マイコン機種仕様情報1051(電子回路部品機種仕様情報)、マイコン要件情報1052(電子回路部品要件情報)、端子機能割当モデル情報データ122、及び周辺機能要件情報261に基づき、端子機能割当結果データ123を生成する。
【0060】
マイコン機種仕様情報1051は、マイコンの機種ごとの仕様に関する情報を含む。マイコン機種仕様情報1051は、マイコンベンダ等が提供するカタログ情報やデータシートに基づき作成される。マイコン要件情報1052は、マイコンが満たすべき要件(ベンダ、シリーズ、パッケージ、上限価格等)を指定する情報を含む。マイコン要件情報1052の内容は、例えばユーザが設定する。
【0061】
マイコン候補生成部1011は、マイコン要件情報1052と、マイコン機種仕様情報1051とを取得し、マイコン機種仕様情報1051から、マイコン要件情報1052を満たす一つ以上の機種を選出し、選出した機種を記載したマイコン候補データ1055を生成する。
【0062】
マイコン選択部1012は、マイコン候補データ1055に含まれる機種の夫々について制約解決部614による前述の判定を行うことにより、マイコン候補データ1055に含まれる機種のうち、端子機能割当モデルデータ262と周辺機能要件モデルデータ263とに記述される制約を充足するように端子に周辺機能を割り当てることが可能な機種を選択する。
【0063】
制約解決部614は、マイコン候補データ1055に含まれる機種の夫々について前述の判定を行った結果をマイコン選択部1012に通知する。
【0064】
選択マイコン端子機能割当結果出力部1013は、マイコン選択部1012によって選択された機種についての端子機能割当結果データ123を出力装置15に出力する。
【0065】
<端子機能割当処理>
図11は、端子機能割当部1000が行う処理(以下、端子機能割当処理S1100と称する。)を説明するフローチャートである。以下、同図とともに端子機能割当処理S1100について説明する。
【0066】
まずマイコン候補生成部1011が、入力装置14または通信装置16を介して、マイコン要件情報1052を取得する(S1101)。
【0067】
続いて、マイコン候補生成部1011は、補助記憶装置13からマイコン機種仕様情報1051を読み出し、マイコン要件情報1052を満たす機種をリストアップし、リストアップした機種を示す情報を含むマイコン候補データ1055を生成する(S1102)。
【0068】
続いて、図7のS701と同様に、モデル取得部611が、入力装置14または通信装置16を介してマイコン指定情報251を取得し、取得したマイコン指定情報251に指定されているマイコンの端子機能割当モデル情報データ122に基づき端子機能割当モデルデータ262を生成する(S1103)。
【0069】
続いて、図7のS702と同様に、周辺機能要件情報取得部612が、入力装置14または通信装置16を介して周辺機能要件情報261を取得し、取得した情報に基づき周辺機能要件モデルデータ263を生成する(S1104)。
【0070】
続いて、マイコン選択部1012及びモデル取得部611が、マイコン候補データ1055からマイコンを1機種選択する(S1105)。
【0071】
続いて、制約解決部614が、図7のS703と同様に、端子機能割当モデルデータ262と周辺機能要件モデルデータ263とに基づき、選択した機種の端子に周辺機能を割り当てることができるか否かを判定する(S1106)。制約解決部614が、選択した機種に割り当て可能と判定した場合(S1106:Y)、制約解決部614は、その際の変数の組み合わせを選択マイコン端子機能割当結果出力部1013に出力し、選択マイコン端子機能割当結果出力部1013は、上記組み合わせに基づき端子機能割当結果データ123を生成し、生成した端子機能割当結果データ123を、現在選択中の機種を示す情報とともに出力装置15に出力する(S1107)。制約解決部614が、選択した機種に割り当て不可能と判定した場合は(S1106:N)S1108に進む。
【0072】
S1108では、マイコン選択部1012が、マイコン候補データ1055に未選択の機種が存在するか否かを判定する。存在する場合は(S1108:Y)、S1105に戻り、未選択の機種を選択し、S1106にて制約解決部614が割り当て可能と判定するまで処理を繰り返す。未選択の機種が存在しない場合は(S1108:N)、端子機能割当結果出力部615が、割り当て不可であることを示す情報(警告)を出力装置15から出力する(S1109)。
【0073】
尚、マイコン要件情報1052に指定されている各要件についてあらかじめ優先度を付加しておき(例えば、ベンダごとに優先度を付加する)、S1105においてマイコン選択部1012が優先度の高い要件に合致する機種を優先して選択するようにしてもよい。これによりユーザが優先する要件に合致する機種が優先して選択されるようにすることができる。
【0074】
以上のように、実施例2の端子機能割当装置10は、マイコン要件を満たす機種の中から、端子への周辺機能の割り当て可能な一つ以上の機種を選択し、割り当て可否を示す情報や端子機能割当結果データ123を出力するので、検討の対象となるマイコンの機種が複数存在する場合におけるユーザの負荷を軽減することができる。
【0075】
尚、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0076】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、データ等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
【0077】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【0078】
10 端子機能割当装置、121 端子機能割当仕様データ、122 端子機能割当モデル情報データ、123 端子機能割当結果データ、200 端子機能割当モデル生成部、211 端子機能割当仕様情報取得部、212 端子機能割当モデル情報生成部、2121 信号モデル生成部、2122 端子モデル生成部、2123 周辺機能モデル生成部、213 モデル出力部、251 マイコン指定情報、253 端子機能割当モデル情報、2531 信号モデル情報、2532 端子モデル情報、2533 周辺機能モデル情報、611 モデル取得部、612 周辺機能要件情報取得部、613 周辺機能要件モデルデータ生成部、614 制約解決部、615 端子機能割当結果出力部、S700 端子機能割当処理、800 周辺機能要件情報設定画面、1011 マイコン候補生成部、1012 マイコン選択部、1013 選択マイコン端子機能割当結果出力部、1051 マイコン機種仕様情報、1052 マイコン要件情報、1055 マイコン候補データ、S1100 端子機能割当処理
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11