パッケージ基板に複数の半導体デバイスを備えた半導体装置であって、少なくとも一つの半導体デバイスとして、書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスを備え、その他の一つの半導体デバイスとしてメモリデバイスを備え、その他の別の一つの半導体デバイスとして中央処理装置を有するプロセッシングデバイスを備え、前記プログラマブルデバイスのテストは前記プロセッシングデバイスが行い、前記メモリデバイスのテストは前記プログラマブルデバイスに実現したビルトインセルフテスト回路を用いて前記プロセッシングデバイスが行う半導体装置。パッケージ基板に複数の半導体デバイスを備えた半導体装置を用いた電子機器であって、前記半導体装置は、少なくとも一つの半導体デバイスとして、書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスを備え、前記電子機器は、外部から前記定義データを受信する通信ポートを有する電子機器。本発明者はFPGAなどのプログラマブルデバイス及びその他の半導体デバイスを搭載した半導体装置について検討した。特に本発明者は開発段階のプロトタイプに用いるものではなく、製品としての出荷形態でFPGAなどのプログラマブルデバイスを用いるものについて検討した。プロトタイプでFPGAを用いる場合には最終形態ではFPGAはASICとして実現されるが、出荷形態でFPGAなどのプログラマブルデバイスを用いる場合には、FPGAに対する論理機能の設定それ自体に関する最適化が必要になることが本発明者によって見出された。例えば、FPGAに適用されるターゲットアプリケーションに対する最適化、システム全体としてのパフォーマンスに対する最適化、そしてテスト形態の最適化などが必要と考えられる。本発明の目的は、プロトタイプではなく製品としての出荷形態でプログラマブルデバイスを有する半導体装置に対して最適化する技術を提供することにある。本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。1パッケージ基板に複数の半導体デバイスを備えた半導体装置は、少なくとも一つの半導体デバイスとして、書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスを備え、その他の半導体デバイスの一つとしてシンクロナスDRAMを備え、前記プログラマブルデバイスに隣接してシンクロナスDRAMが平置き又はスタック配置され、前記シンクロナスDRAMのアクセス主体になる論理機能が前記プログラマブルデバイスに割り当てられる。シンクロナスDRAMに対するアクセス機能が専らプログラマブルデバイスに割り当てられるとき、高速アクセスという点で最適化される。上記において、その他の半導体デバイスの別の一つとして電気的に書き換え可能な不揮発性メモリを備え、前記不揮発性メモリからプログラマブルデバイスに前記定義データが内部可転送能にされる。記憶回路が揮発性である場合が考慮される。前記プログラマブルデバイスを複数個備え、一部のプログラマブルデバイスの記憶回路は電気的に書き換え可能な不揮発性であり、残りのプログラマブルデバイスの記憶回路は電気的に書き換え可能な揮発性である。記憶回路による消費電力と機能設定の操作性との観点から記憶回路の回路形式が決定されるという最適化が図られる。その他の半導体デバイスの別の一つとしてプロセッシングデバイスを備え、前記プロセッシングデバイスは中央処理装置と電気的に書き込み可能な不揮発性メモリを備え、前記中央処理装置は前記定義データを前記不揮発性メモリから前記記憶回路に内部転送する。不揮発性メモリを内蔵するプロセッシングデバイスの活用が考慮されている。パッケージ基板に複数の半導体デバイスを備えた半導体装置において、パッケージ基板は外部接続電極として同心状に複数列で周回されたボールグリッドアレイを有し、ボールグリッドアレイの外周縁寄りの外部接続電極には使用頻度の高い半導体デバイスとの接続が割り当てられ、ボールグリッドアレイの内周縁寄りの外部接続電極にはそれよりも使用頻度の低い半導体デバイスとの接続が割り当てられる。半導体装置が実装される実装基板上の配線は、ボールグリッドアレイの外周縁寄りの外部接続電極に接続される方が短くて済むから、配線引き回しによる負荷が小さい。使用頻度の高いデバイスが接続される配線の負荷を小さくすることによって高い処理性能を引き出すという点で最適化を図ることができる。パッケージ基板に複数の半導体デバイスを備えた半導体装置において、パッケージ基板は外部接続電極として同心状に複数列で周回されたボールグリッドアレイを有し、使用頻度の高い半導体デバイスとの接続に割り当てられる信号用の外部接続端子の数は、使用頻度の低い半導体デバイスとの接続に割り当てられる信号用の外部接続端子の数よりも多くされる。数に限りのある外部端子の割り当てが最適化される。書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスは、パッケージ基板に搭載するための複数の第1の外部端子と、プログラマブルデバイスに別の半導体デバイスをスタック状態で搭載するのに用いられる複数の第2の外部端子とを有し、複数の第2の外部端子は矩形の3辺に位置する配置を有する。メモリの外部端子の配置は、デバイスの対向2辺或いはデバイスの長手辺に沿ったデバイス中央部とされるのがほとんどであり、また、マイクロコンピュータのアドレス及びデータ端子は最大でも矩形の3辺にまたがるに過ぎないから、プログラマブルデバイスとメモリ又はマイクロコンピュータをスタックするとき、相互の端子同士の接続し易さという点で最適化が図られることになる。書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスと、中央処理装置を有するプロセッシングデバイスとを備えた半導体装置では、前記プログラマブルデバイスには演算処理機能が実現され、前記プロセッシングデバイスには前記プログラマブルデバイスの演算処理機能に対する制御機能を割り当てる。これにより、ユーザは前記プログラマブルデバイスに画像処理、音声処理、通信処理、暗号化復号処理などを設定でき、その場合にそれらに対する機能設定にユーザ保有の設計資産を適用することができ、ユーザの現状設計資産の活用が図られる。プロセッシングデバイスはプログラマブルデバイスに設定された演算処理機能に対する初期設定などの制御機能を果たせばよく、プロセッシングデバイスの負荷が特定処理で極端に大きくなるという事態の発生が抑制される。このように、ユーザが保有する設計資産の活用とプロセッシングデバイスの負荷のばらつきという点で最適化が図られる。ユーザとは半導体装置を用いて電子機器を製造する者を意味する。書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスと、メモリとを備えた半導体装置では、前記メモリは前記プログラマブルデバイス内で実現されるバスにバス接続される。前記プログラマブルデバイス内でメモリに接続されるバスを構成した場合、バス構成がプログラマブルになるから、プログラマブルデバイスに接続されるメモリのインタフェース仕様、その他のデバイスのバスインタフェース仕様の如何にかかわらず、対応が容易であり、将来の仕様変更に対しても対応が容易になる。バス接続の多様性という点で最適化される。プログラマブルデバイスによってバス構成を決定するための機能決定データの作成が手間なユーザには、パッケージ基板にバスを形成するという構成を採用すればよいが、バス構成は固定になる。外部入出力インタフェースは前記プログラマブルデバイスで実現するのがよい。外部入出力インタフェース仕様の変更、接続される外部入出力回路の変更に対して柔軟に対処することができる。パッケージ基板に複数の半導体デバイスを備えた半導体装置は、少なくとも一つの半導体デバイスとして、書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスを備え、その他の一つの半導体デバイスとしてメモリデバイスを備え、その他の別の一つの半導体デバイスとして中央処理装置を有するプロセッシングデバイスを備え、前記プログラマブルデバイスのテストは前記プロセッシングデバイスが行い、前記メモリデバイスのテストは前記プログラマブルデバイスに実現したビルトインセルフテスト回路を用いて前記プロセッシングデバイスが行う。テストの最適化に資することができる。パッケージ基板に複数の半導体デバイスを備えた半導体装置を搭載した電子機器において、前記半導体装置は、少なくとも一つの半導体デバイスとして、書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスを備え、電子機器は、外部から前記定義データを受信する通信ポートを有する。定義データのバージョンアップ又はバグの修正への対応が容易になる。2パッケージ基板に複数の半導体デバイスを搭載した半導体装置の設計方法においては、少なくとも一つの半導体デバイスとして、書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスを用い、前記プログラマブルデバイスに割り当てられる機能に応じて、バリエーション変形された形態を選択的に使い分け、その他の半導体デバイスの一つとしてシンクロナスDRAMを用い、前記シンクロナスDRAMのアクセス主体となる論理機能を前記プログラマブルデバイスに割り当てるとき、選択可能な前記バリエーションとして、前記プログラマブルデバイスに隣接して前記シンクロナスDRAMを平置き配置する第1バリエーションと、前記プログラマブルデバイスと前記シンクロナスDRAMをスタック配置する第2バリエーションと、その他の半導体デバイスの別の一つとして電気的に書き換え可能な不揮発性メモリを用い、前記不揮発性メモリから前記プログラマブルデバイスに前記定義データを内部転送可能にする第3バリエーションと、が用意されている。シンクロナスDRAMに対するアクセス機能が専らプログラマブルデバイスに割り当てられるとき、SDRAMに対する高速アクセスという点の最適化が可能になる。第3バリエーションは記憶回路が揮発性である場合に対処するバリエーションとされる。前記プログラマブルデバイスを複数個用い、一部のプログラマブルデバイスの記憶回路は電気的に書き換え可能な不揮発性とし、残りのプログラマブルデバイスの記憶回路は電気的に書き換え可能な揮発性とする第4バリエーションが用意されている。記憶回路による消費電力と機能設定の操作性との観点から記憶回路の回路形式を最適化可能にするバリエーションとされる。その他の半導体デバイスの別の一つとしてプロセッシングデバイスを用い、前記プロセッシングデバイスは中央処理装置と電気的に書き込み可能な不揮発性メモリを備えるとき、前記中央処理装置は前記定義データを前記不揮発性メモリから前記記憶回路に内部転送可能にする第5バリエーションが用意されている。不揮発性メモリを内蔵するプロセッシングデバイスの活用という点での最適化を図るときのバリエーションとされる。パッケージ基板は外部接続電極として同心状に複数列で周回されたボールグリッドアレイを有し、ボールグリッドアレイの外周縁寄りの外部接続電極には使用頻度の高い半導体デバイスとの接続に割り当て、ボールグリッドアレイの内周縁寄りの外部接続電極にはそれよりも使用頻度の低い半導体デバイスとの接続に割り当てる第6バリエーションが用意されている。半導体装置が実装される実装基板上の配線は、ボールグリッドアレイの外周縁寄りの外部接続電極に接続される方が短くて済むから、配線引き回しによる負荷が小さい。使用頻度の高いデバイスが接続される配線の負荷を小さくすることによって高い処理性能を引き出すという最適化を図るためのバリエーションとされる。パッケージ基板は外部接続電極として同心状に複数列で周回されたボールグリッドアレイを有し、使用頻度の高い半導体デバイスとの接続に割り当てられる信号用の外部接続端子の数を、使用頻度の低い半導体デバイスとの接続に割り当てられる信号用の外部接続端子の数よりも多くする第7バリエーションが用意されている。数に限りのある外部端子の割り当てを最適化するためのバリエーションである。前記プログラマブルデバイスは、前記パッケージ基板に搭載するための複数の第1の外部端子と、プログラマブルデバイスに別の半導体デバイスをスタック状態で搭載するのに用いられる複数の第2の外部端子とを有し、複数の第2の外部端子を矩形の3辺に配置する第8バリエーションが用意されている。メモリの外部端子の配置は、デバイスの対向2辺或いはデバイスの長手辺に沿ったデバイス中央部とされるほとんどであり、また、マイクロコンピュータのアドレス及びデータ端子は最大でも矩形の3辺にまたがるに過ぎないから、プログラマブルデバイスとメモリ又はマイクロコンピュータをスタックするとき、相互の端子同士の接続し易さという点での最適化を図るためのバリエーションとされる。前記プログラマブルデバイスに演算処理機能を実現するとき、前記プロセッシングデバイスには前記プログラマブルデバイスの演算処理機能に対する制御機能を割り当てる第9バリエーションが用意されている。これは、ユーザが保有する資産の活用とプロセッシングデバイスの負荷のばらつきという点で最適化を図るためのバリエーションである。前記プログラマブルデバイス内でバスを実現し、このバスにその他の半導体でバスを接続可能にする第10バリエーションが用意されている。これは、バス接続の多様性という点で最適化を図るためのバリエーションとされる。外部入出力インタフェース機能を前記プログラマブルデバイスに割り当てる第11バリエーションが用意されている。これは、外部入出力インタフェース仕様の変更、接続される外部入出力回路の変更に対して柔軟に対処することを可能にするためのバリエーションとされる。前記プログラマブルデバイスのテストは前記プロセッシングデバイスが行い、前記メモリデバイスのテストは前記プログラマブルデバイスに実現したビルトインセルフテスト回路を用いて前記プロセッシングデバイスが行う第12バリエーションが用意されている。これは半導体装置の量産テストを最適化するためのバリエーションとされる。本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。すなわち、プロトタイプではなく製品としての出荷形態でプログラマブルデバイスを用いた半導体装置の最適化に資することができる。ここではSIPSystemInPackage化された半導体装置を開発する方法と、それによって開発される半導体装置の代表的な形態について説明する。半導体装置には、少なくとも一つの半導体デバイスとして、書き換え可能な記憶回路が保持する定義データに従って多数のロジックエレメントによる論理機能が可変とされるプログラマブルデバイスとしてのFPGAFieldProgrammableGateArrayを用いる。同様のプログラマブルデバイスとして、PLDProgrammableLogicDeviceを用いることによりFPGAを用いた場合と同様の機能を実現することが可能となる。半導体装置の開発では、前記プログラマブルデバイスに割り当てられる機能に応じて、各種バリエーションを選択的に使い分ける。基本的なバリエーションはチップアレンジメントである。例えば図1において半導体装置1は、パッケージ基板に2、FPGA3、マイクロプロセッシングユニットMPU4、プログラマブルROMPROM5、フラッシュメモリFLASH6、シンクロナスDRAMSDRAM7、及びその他のデバイス8を有する。FPGA3はプログラマブルデバイスの一つであり、書き換え可能な記憶回路、前記記憶回路に保持する定義データに従って論理機能が可変にされる多数のロジックエレメントから成る。ロジックエレメントは例えばアンドゲート、オアゲート、フリップフロップ、及び算術論理演算ユニットを有し、隣接するロジックエレメントは相互に信号線で接続され、ロジックエレメント間の信号線の接続形態、ロジックエレメント内部における信号線の接続形態は前記定義データによってプログラマブルに決定することができるようになっている。これによってFPGA3には所望のバス機能、演算処理機能、及び記憶機能などを形成することができるようになる。前記記憶回路は不揮発性とされるもの、又は揮発性とされるものがある。マイクロプロセッシングユニット4は命令を実行する中央処理装置CPU、中央処理装置のワークRAMやプログラムメモリ、タイマなどの周辺回路を有する。前記PROM5及びFLASH6は共に電気的に書き換え可能な不揮発性メモリとされる。PROM5はEEPROMのような不揮発性メモリでありランダムアクセスで書き換え可能にされ、CPUによるデータ処理途上で頻繁に書き換えを生ずる用途に適する。FLASH6はセクタ等の比較的大きな単位で書き換え可能され、プログラムなどの格納に適する。SDRAM7はクロック信号に同期動作される高速アクセス可能なDRAMとされる。また、SDRAM7はシングルデータレートSDRAMでも、ダブルデータレートSDRAMであっても、その他のデータ転送機能を有したSDRAMによって構成されていてもよい。前記メモリPROMやFLASHに限ることなく、SRAM等のその他のメモリで構成されていてもよい。前記その他のデバイス8は、ADC/DAC等のアナログ用半導体デバイス、RF等の高周波用半導体デバイス、パワーIC等の高耐圧半導体デバイスの様な何れの機能を有した半導体デバイスであってもよい。また、前記半導体装置は前記図1に示す全ての半導体デバイスを一つの半導体装置として搭載するだけでなく、少なくとも前記一つのプログラマブルデバイスと他の一つの半導体デバイスを搭載したものによって構成されていればよい。半導体装置の開発では、物理的構成及び機能的なシステム構成に着目する。物理的構成の設計ではチップアレンジメントやピンアレンジメントに関するバリエーションを用意しておく。機能的なシステム構成の設計では機能切り分け、アプリケーションモデル、テスト手法、機能定義に関するバリエーションを用意しておく。《チップアレンジメント》バリエーションの基本はチップアレンジメントであり、半導体デバイスの実装形態として、図1では第1乃至第5実装形態を用意して選択可能としている。第1実装形態はビルドアップ基板で形成されたパッケージ基板2の底面側には多数のボール電極がボールグリッドアレイとして配置され、基板の表面層に半導体デバイスを搭載しワイヤーボンディングにて半導体デバイスとボール電極との導通を採る形態とされるWireBondingBGA。第2実装形態はパッケージ基板に複数の半導体デバイスをスタックし、ボール電極との接続にワイヤーボンディングを利用する形態とされるStackBGA。第3実装形態は半導体デバイスとしてフリップチップを用いる形態であるFlipChip。第4実装形態はQFPパッケージを用いる実装形態である。第5実装形態はSIP化された半導体装置を2段積みする実装形態であるPKGonPKGSIP。図2には実装形態の更に別のバリエーションが示される。Aは平置き4チップ、Bは平置き3チップ構成が選択された場合を例示する。ここでは、前記シンクロナスDRAM7のアクセス主体になる論理機能が前記FPGA3に割り当てられ、FPGA3に隣接してSDRAM7が配置される。実装形態は図1のように平置き又はスタックの何れであってもよい。要するに、FPGA3に隣接して前記SDRAM7を平置き配置する第1バリエーションであっても、前記FPGA3と前記SDRAM7をスタック配置する第2バリエーションであってもよい。それらバリエーションを使い分けることによりSDRAM7に対するアクセス機能が専らプログラマブルデバイスに割り当てられるときに、高速アクセスという点における最適化は可能になる。図2のCは2チップ2層スタック構成が選択された場合、Dは3チップ3層スタック構成が選択された場合を例示する。FPGA3の記憶回路が揮発性の場合もあることを考慮すると、スタックされたFLASH6からFPGA3に前記定義データを内部転送可能にする第3バリエーションを選択可能に用意しておく。前記シンクロナスDRAM7のアクセス主体となる論理機能を前記FPGA3に割り当てるとき、選択可能な前記バリエーションとして、前記FPGA3に隣接して前記SDRAM7を平置き配置する第1バリエーションと、前記FPGA3と前記SDRAM7をスタック配置する第2バリエーションと、その他の半導体デバイスの別の一つとして電気的に書き換え可能なFLASH6を用い、前記FLASH6から前記FPGA3に前記定義データを内部転送可能にする第3バリエーションと、を用意することにより、SDRAM7に対するアクセス機能が専らFPGA3に割り当てられるとき、SDRAM7に対する高速アクセスという点の最適化が可能になる。特に第3バリエーションはFPGA3の記憶回路が揮発性である場合に対処するバリエーションとされる。図3のAは4個のFPGA3A~3Dの平置き、Bは4個のFPGA3A~3Cの平置き、Cは2個のFPGA3A~3Bのスタック、Dは3個のFPGA3A~3Cのスタック構成が選択された場合を例示する。例えばFPGA3Aの記憶回路は電気的に書き換え可能な不揮発性であり、他のFPGA3B~3Dの記憶回路は電気的に書き換え可能な揮発性である。一部のFPGAの記憶回路は電気的に書き換え可能な不揮発性とし、残りのFPGAの記憶回路は電気的に書き換え可能な揮発性とする第4バリエーションを用意することにより、記憶回路による消費電力と機能設定の操作性との観点より記憶回路の回路形式を最適化可能になる。《ピンアレンジメント》別の観点によるバリエーションは半導体装置のピンアレンジメントである。図4には半導体装置1のボールグリッドアレイの一例が示される。半導体装置1の底面側には外部接続電極として同心状に複数列で周回されたボールグリッドアレイが形成され、ボールグリッドアレイの外周縁寄りの外部接続電極10六角形で表示には使用頻度の高い半導体デバイスとの接続が割り当てられ、ボールグリッドアレイの内周縁寄りの外部接続電極11十字形で表示にはそれよりも使用頻度の低い半導体デバイスとの接続が割り当てられる。四角形で表示された中央部分の電極12はテスト端子、電源端子、及び回路の接地端子とされる。半導体装置1が実装される実装基板上の配線は、ボールグリッドアレイの外周縁寄りの外部接続電極10に接続される方が短くて済むから、配線引き回しによる負荷が小さい。使用頻度の高いデバイスが接続される配線の負荷を小さくすることによって高い処理性能を引き出すという点で最適化を図ることができる。ボールグリッドアレイの外周縁寄りの外部接続電極10には使用頻度の高い半導体デバイスとの接続に割り当て、ボールグリッドアレイの内周縁寄りの外部接続電極11にはそれよりも使用頻度の低い半導体デバイスとの接続に割り当てる第6バリエーションを用意することにより、使用頻度の高いデバイスが接続される配線の負荷を小さくすることによって高い処理性能を引き出すという点で最適化を図ることが容易になる。図5には半導体装置1のボールグリッドアレイの別の例が示される。使用頻度の高い半導体デバイスとの接続に割り当てられる信号用の外部接続端子13六角形で示されるの数は、使用頻度の低い半導体デバイスとの接続に割り当てられる信号用の外部接続端子14十字形で示されるの数よりも多くされる。図5では使用頻度の高い半導体デバイスはMPU4とされ、使用頻度の低い半導体デバイスはFPGA3とされる。図6では使用頻度の高い半導体デバイスはFPGA3とされ其れとの接続には多い数の外部接続端子15十字形で示されるが割り当てられ、使用頻度の低い半導体デバイスはMPU4とされ其れとの接続には少ない数の外部接続端子16六角形で示されるが割り当てられる。数に限りのある外部端子の割り当てが最適化される。使用頻度の高い半導体デバイスとの接続に割り当てられる信号用の外部接続端子の数を、使用頻度の低い半導体デバイスとの接続に割り当てられる信号用の外部接続端子の数よりも多くする第7バリエーションを用意することにより、数に限りのある外部端子の割り当てを最適化することが容易になる。図7にはFPGAが保有するスタック用端子が例示される。FPGA3はパッケージ基板2に搭載するための複数の第1の外部端子20と、FPGA3に別の半導体デバイスをスタック状態で搭載するのに用いられる複数の第2の外部端子21とを有し、複数の第2の外部端子21は矩形の3辺に位置する配置を有する。前記複数の第2の外部端子21はスタック状態で搭載される別の半導体デバイスの外部端子と接続され、更に前記第1の外部端子と接続される。またその他の構成となっていてもよい。図8に例示されるように、メモリの外部端子の配置は、デバイスの対向2辺或いはデバイスの長手辺に沿ったデバイス中央部とされるのがほとんどであり、また、マイクロコンピュータのアドレス及びデータ端子は最大でも矩形の3辺にまたがるに過ぎないから、前記第2の外部端21を矩形の3辺に位置することは、FPGA3とSDRAM7又はMPU4をスタックするとき、相互の端子同士の接続し易さという点での最適化が図られる。スタック構造は図9に例示されるようにFPGA3とMPU4の間にスペーサーを介在させても或いはさせなくてもよい。複数の第2の外部端子を矩形の3辺に配置する第8バリエーションを用意しておくことにより、FPGA3とSDRAM7又はMPU4をスタックするとき、相互の端子同士の接続し易さという点での最適化を図ることができる。《機能切り分け》図10にはFPGA3とMPU4に対する機能切り分けに関すコンセプトが示される。前記FPGA3には演算処理機能EXECUTIONが実現され、前記MPU4には前記FPGA3の演算処理機能に対する制御機能CONTROLを割り当てる。これにより、ユーザは前記FPGA3に画像処理、音声処理、通信処理、暗号化復号処理などを設定でき、その場合にFPGA3に対する機能設定にユーザが保有する設計資産を適用することができ、ユーザの現状設計資産の活用が図られる。MPU4はFPGA3に設定された演算処理機能に対する初期設定などの制御機能を果たせばよく、MPU4の負荷が特定処理で極端に大きくなるというような事態の発生が抑制される。このように、ユーザが保有する設計資産の活用とMPU4の負荷のばらつきという点で最適化が図られる。前記FPGA3に演算処理機能を実現するとき、前記MPU4には前記FPGA3の演算処理機能に対する制御機能を割り当てる第9バリエーションを用意することにより、ユーザが保有する設計資産の活用とMPU4の負荷のばらつきという点で最適化を図ることが容易になる。図11には機能切り分けされた半導体デバイスを接続するバス構成が示される。SDRAM7、MPU4、FLASH6はFPGA3の内部で定義されたバス25に接続される。FPGA3を用いてバス25を構成するから、バス構成がプログラマブルになる。従って、FPGA3に接続されるSDRAM7やFLASH6のインタフェース仕様、その他のデバイスのバスインタフェース仕様の如何にかかわらずバス接続への対応が容易であり、将来の仕様変更に対しても対応が容易である。バス接続の多様性という点で最適化される。FPGA3によってバス構成を決定するための機能決定データの作成が手間なユーザは、図12に示されるように、パッケージ基板2にバス25を形成する構成を採用すればよいが、バス構成は固定になる。前記FPGA3内でバス25を実現し、このバス25にその他の半導体でバスを接続可能にする第10バリエーションを用意することにより、バス接続の多様性という点で最適化を図ることが容易になる。《アプリケーションモデル》図13にはアプリケーションモデルとして半導体装置1に入出力デバイスを接続する場合の構成が例示される。外部入出力デバイスを接続する外部入出力インタフェースEXIO26は前記FPGA3で実現するのがよい。外部入出力インタフェース仕様の変更、接続される外部入出力デバイスの変更に対して柔軟に対処することができる。外部入出力インタフェース機能を前記FPGA3に割り当てる第11バリエーションを用意することにより、外部入出力インタフェース仕様の変更、接続される外部入出力回路の変更に対して柔軟に対処することが可能になる。《テスト手法》図14には半導体装置1の量産テストに関する考慮が示される。前記FPGA3のテストは前記MPU4が行い、前記SDRAM7のテストは前記FPGA3に実現したビルトインセルフテスト回路BISTを用いて前記MPU4が行う。FPGA3でSDRAM7のBISTを構成することになるので、FPGA3はSDRAM7の内部回路にも接続可能されている。上記より、テストの最適化に資することができる。FPGA3のテストは前記MPU4が行い、前記SDRAM7のテストは前記FPGA3に実現したビルトインセルフテスト回路を用いて前記MPU4が行う第12バリエーションを用意することにより、半導体装置1の量産テストの仕組みを提供することが容易になる。図15にはFPGA3をテストするとき設定されるテストパスとテストパス中のロジックエレメントの様子が模式的に示される。27はロジックエレメント、28はテストパスである。《機能定義》図16及び図17にはFPGAに対する機能定義手法の基本形態が例示される。図16はFLASH7が保持する定義データをFPGA3の記憶回路にロードして多数のロジックエレメントによる論理機能を決定する。図17はFPGA3の定義データをMPU4のオンチップフラッシュメモリ29からFPGA3の記憶回路にロードしてFPGA3の機能を決定する。何れの場合も半導体装置1の実装基板上には定義データを保持する不揮発性メモリなどを必要としない。FLASH7から前記FPGA3に前記定義データを内部転送可能にする第3バリエーションと、MPU4のCPUが定義データをオンチップフラッシュメモリ29からFPGA3の前記記憶回路にロード可能にする第5バリエーションとを用意することにより、不揮発性メモリを内蔵するMPUの活用、揮発性記憶回路を有するFPGAの活用という点においてFPGAの機能設定の最適化を図り易くなる。半導体装置1を搭載するPCPersonalComputerや携帯電話機などの電子機器30は、図18のように外部から前記定義データを受信する通信ポート31を有することにより、定義データのバージョンアップ又はバグの修正への対応が容易になる。《開発アルゴリズム》FPGA3を搭載した半導体装置の設計において、上述の物理的構成及び機能的システム構成に着目するとき、前記第1バリエーション乃至第12バリエーションを開発支援システムに用意し、設計条件に見合うバリエーションを選択させる。図19にはそのための開発支援システムが例示される。開発支援システムは、ICライブラリ、PCBライブラリ、アプリケーション設計データ、前記第1バリエーション乃至第12バリエーションの内容を規定するバリエーションデータを有する。解析部AEGは、物理的構成の望ましい解、機能的なシステム構成の望ましい解を生成する。物理的構成に関しては、設計条件CONDを満足する範囲でコスト、機能、取り扱い容易性などを考慮して、チップアレンジメントやピンアレンジメントに関するバリエーションの中から適するバリエーションを選び、それに即して望ましい物理的構成を特定する設計データDSGN生成する。機能的なシステム構成に関しては、設計条件を満足する範囲でコスト、機能、取り扱い容易性などを考慮して、機能切り分け、アプリケーションモデル、テスト手法、機能定義に関するバリエーションの中から適するバリエーションを選び、それに即して望ましい機能的システム構成を特定する設計データDSGN生成する。解析部で生成される望ましい解は優先順位をつけて複数生成されてよい。図20には上記設計手法にて得られたSIP化された半導体装置のブロック図が例示される。ここでは定義データは外部からJTAGを使って内部に取り込まれる構成とされるが、USBなどを介して外部からロードされてよいのは当然である。ここではFPGAにはCIFCameraInterface、GPUGraphicProcessingUnit、LPCLCDPanelControllerなどの演算処理機能が実現され、MACMemoryAccessControllerとしてメモリバス機能が実現されている。FPGA3はCBICPUBusInterfaceを介してMPU4に接続される。以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。