(57)【要約】高密度基板（２）上に、マイクロコンピュータ（３）とランダムアクセスメモリ（７）とを配置し、高速データ転送可能に両者を専用メモリバス（１２）で結合すると共に、可変論理回路としてのＦＰＧＡに代表されるプログラマブルデバイス（８）を搭載し、また、前記マイクロコンピュータにはその動作プログラムを電気的に書き換え可能な不揮発性メモリ（１６）を搭載する。前記高密度基板は実装用外部端子を底面に有し、システムオンチップされたマルチチップモジュールと同じようにマザーボードへの実装が可能である。前記プログラマブルデバイスに所望の論理機能を設定することにより、ハードウェアを主体として電子回路装置で実現すべき機能を模擬することができ、また、不揮発性メモリに動作プログラムを書き込むことにより、ソフトウェアを主体として実現すべき機能を模擬することができる。これにより、システム開発の早い段階におけるデバッグの容易化、プロトシステムの実現、そして、開発から試作、更に製品化への期間短縮に寄与することができる。
2002057921.tif 000002
【特許請求の範囲】
【請求項１】
半導体デバイスとしてＣＰＵを備えたマイクロコンピュータ、ランダムアクセスメモリ、及び多数の記憶セルにおける論理構成定義データに応じて論理機能がプログラマブルに実現されるプログラマブルデバイスを有し、
前記マイクロコンピュータ、ランダムアクセスメモリ、及びプログラマブルデバイスは複数の半導体チップに形成され且つ前記半導体チップとは別の共通基板の一方の面に実装され、
前記共通基板は他方の面にその他の回路基板への実装用外部端子を有し、
前記実装用外部端子は前記プログラマブルデバイスに接続可能にされて成るものであることを特徴とする電子回路装置。
【請求項２】
前記マイクロコンピュータはＣＰＵの動作プログラムを電気的に書き換え可能に保持することが可能な第１の不揮発性メモリを有して成るものであることを特徴とする請求の範囲第１項記載の電子回路装置。
【請求項３】
前記共通基板は、前記マイクロコンピュータ及びプログラマブルデバイスを接続する共通バスを有して成るものであることを特徴とする請求の範囲第１項記載の電子回路装置。
【請求項４】
前記共通バスに接続されて前記共通基板に実装された電気的に書き込み可能な第２の不揮発性メモリを更に有して成るものであることを特徴とする請求の範囲第１項記載の電子回路装置。
【請求項５】
前記マイクロコンピュータはメモリバッファを有し、前記メモリバッファと前記ランダムアクセスメモリがメモリ専用バスで接続され、前記メモリ専用バスは前記共通基板に形成され前記実装用外部端子と非接続にされて成るものであることを特徴とする請求の範囲第１項記載の電子回路装置。
【請求項６】
前記メモリバッファは、前記メモリ専用バスに接続する出力バッファを有し、出力バッファは出力ＭＯＳトランジスタ及びこれに結合された出力インピーダンス制御用ＭＯＳトランジスタを備え、該出力インピーダンス制御用ＭＯＳトランジスタは制御回路から出力される制御電圧によってインピーダンス制御可能にされて成るものであることを特徴とする請求の範囲第５項記載の電子回路装置。
【請求項７】
前記共通基板は、ガラス基板と、前記ガラス基板の一方の主面に形成された多層配線層とを有し、前記多層配線層の表面には多層配線層の所定の配線に導通する半導体デバイスの実装用接続端子が配置され、前記ガラス基板の他方の主面には前記多層配線層の所定の配線に前記ガラス基板の主面を貫通して導通する前記実装用外部端子が配置されて成るものであることを特徴とする請求の範囲第１項記載の電子回路装置。
【請求項８】
夫々別々の半導体チップに形成された複数個の半導体デバイスがそれらに共通のビルドアップ基板の一方の面に実装され、前記ビルドアップ基板の他方の面にはその他の回路基板への実装用外部端子が設けられた電子回路装置であって、
前記半導体デバイスは、テスト制御端子の入力に応答して、所定の外部端子に対応される複数個のスキャンラッチを、テストデータ入力端子とテストデータ出力端子との間で直列形態でシフトレジスタ動作させて、テスト用の外部入出力が可能にされ、
前記ビルドアップ基板は、各半導体デバイスのテスト制御端子に並列的に接続される共通テスト制御端子と、共通テストデータ入力端子と、共通テストデータ出力端子と、選択制御回路とを更に有し、
前記選択制御回路は、半導体デバイスのテストデータ出力端子と他の半導体デバイスのテストデータ入力端子を接続して複数個の半導体デバイスを前記共通テストデータ入力端子から共通テストデータ出力端子に直列的に接続する直列接続状態と、半導体デバイス毎にそのテストデータ出力端子及びテストデータ入力端子を前記共通テストデータ入力端子及び共通テストデータ出力端子に個別的に接続する個別接続状態とを、モード信号に従って選択可能にする回路であることを特徴とする電子回路装置。
【請求項９】
前記ビルドアップ基板は、基板と、前記基板の一方の主面に形成された多層配線層とを有し、前記多層配線層の表面には多層配線層の所定の配線に導通する半導体チップの実装用接続端子が配置され、前記基板の他方の主面には前記多層配線層の所定の配線に前記基板の主面を貫通して導通する前記実装用外部端子が配置されて成るものであることを特徴とする請求の範囲第８項記載の電子回路装置。
【請求項１０】
前記複数個の半導体デバイスとして、ＣＰＵを備えたマイクロコンピュータ及びランダムアクセスメモリを含み、
前記実装用外部端子は前記マイクロコンピュータに接続可能にされて成るものであることを特徴とする請求の範囲第９項記載の電子回路装置。
【請求項１１】
前記マイクロコンピュータはＣＰＵの動作プログラムを電気的に書き換え可能に保持することが可能な第１の不揮発性メモリを有して成るものであることを特徴とする請求の範囲第１０項記載のデータ処理システム。
【請求項１２】
前記マイクロコンピュータはメモリバッファを有し、前記メモリバッファと前記ランダムアクセスメモリがメモリ専用バスで接続され、前記メモリ専用バスは前記ビルドアップ基板に形成され前記実装用外部端子と非接続にされて成るものであることを特徴とする請求の範囲第１０項記載の電子回路装置。
【請求項１３】
前記メモリバッファは、前記メモリ専用バスに接続する出力バッファを有し、出力バッファは出力ＭＯＳトランジスタ及びこれに直列接続された出力インピーダンス制御用ＭＯＳトランジスタを出力端子に直列接続されて備え、出力インピーダンス制御用ＭＯＳトランジスタは電圧発生回路から出力される制御電圧をゲート電極に受けてインピーダンス制御可能にされて成るものであることを特徴とする請求の範囲第１２項記載のデータ処理システム。
【請求項１４】
前記ビルドアップ基板の一面には、前記半導体デバイスの一つとして更に、多数の記憶セルにロードされる論理構成定義データに応じて論理機能がプログラマブルに実現されるプログラマブルデバイスを有し、前記プログラマブルデバイスは前記実装用外部端子に接続されて成るものであることを特徴とする請求の範囲第１０項記載の電子回路装置。
【請求項１５】
前記ビルドアップ基板をドーターボードとするマザーボードを有し、前記マザーボードには、記憶セルにロードされる論理構成定義データに応じて論理機能がプログラマブルに実現される半導体集積回路化されたプログラマブルデバイスを有し、前記プログラマブルデバイスはマザーボード上の配線を介して前記実装用外部端子に接続されて成るものであることを特徴とする請求の範囲第１０項記載の電子回路装置。
【請求項１６】
マイクロコンピュータ及びランダムアクセスメモリが実装されたドータボードと、多数の記憶セルにロードされる接続定義データに応じて論理機能がプログラマブルに実現されるプログラマブルデバイス及び前記ドータボードが実装されるマザーボードとを有し
前記マイクロコンピュータ及びランダムアクセスメモリは夫々別々の半導体チップに形成されてドータボードの一方の面に実装され、
前記ドータボードは他方の面にマザーボードへの実装用外部端子を有し、
前記実装用外部端子はドータボード上で前記マイクロコンピュータに接続にされて成るものであることを特徴とする電子回路装置。
【請求項１７】
前記マイクロコンピュータはその動作プログラムを電気的に書き換え可能に保持することが可能な第１の不揮発性メモリを有して成るものであることを特徴とする請求の範囲第１６項記載の電子回路装置。
【請求項１８】
前記マイクロコンピュータはメモリバッファを有し、前記メモリバッファと前記ランダムアクセスメモリがメモリ専用バスで接続され、前記メモリ専用バスは前記ドータボードに形成され前記実装用外部端子と非接続にされて成るものであることを特徴とする請求の範囲第１６項記載の電子回路装置。
【請求項１９】
前記メモリバッファは、前記メモリ専用バスに接続する出力バッファを有し、出力バッファは出力ＭＯＳトランジスタ及びこれに直列接続された出力インピーダンス制御用ＭＯＳトランジスタを出力端子に直列接続されて備え、出力インピーダンス制御用ＭＯＳトランジスタは電圧発生回路から出力される制御電圧をゲート電極に受けてインピーダンス制御可能にされて成るものであることを特徴とする請求の範囲第１８項記載の電子回路装置。
【請求項２０】
半導体デバイスとしてＣＰＵを備えたマイクロコンピュータ及びランダムアクセスメモリを有し、
前記マイクロコンピュータ及びランダムアクセスメモリは夫々別々の半導体チップに形成され且つ前記半導体チップとは別の共通基板の一方の面に実装され、
前記共通基板は他方の面にその他の回路基板への実装用外部端子を有し、
前記実装用外部端子は前記マイクロコンピュータに接続可能にされ、
前記マイクロコンピュータはメモリバッファを有し、前記メモリバッファと前記ランダムアクセスメモリがメモリ専用バスで接続され、前記メモリ専用バスは前記共通基板に形成され前記実装用外部端子と非接続にされて成るものであることを特徴とする電子回路装置。
【請求項２１】
前記メモリバッファは、前記メモリ専用バスに接続する出力バッファを有し、出力バッファは出力ＭＯＳトランジスタ及びこれに直列接続された出力インピーダンス制御用ＭＯＳトランジスタを出力端子に直列接続されて備え、出力インピーダンス制御用ＭＯＳトランジスタは電圧発生回路から出力される制御電圧をゲート電極に受けてインピーダンス制御可能にされて成るものであることを特徴とする請求の範囲第２０項記載の電子回路装置。
【請求項２２】
前記共通基板は、ガラス基板と、前記ガラス基板の一方の主面に形成された多層配線層とを有し、前記多層配線層の表面には多層配線層の所定の配線に導通する半導体デバイスの実装用接続端子が配置され、前記ガラス基板の他方の主面には前記多層配線層の所定の配線に前記ガラス基板の主面を貫通して導通する前記実装用外部端子が配置されて成るものであることを特徴とする請求の範囲第２１項記載の電子回路装置。
【請求項２３】
前記マイクロコンピュータはＣＰＵの動作プログラムを電気的に書き換え可能に保持することが可能な第１の不揮発性メモリを有して成るものであることを特徴とする請求の範囲第２０項記載の電子回路装置。
【発明の詳細な説明】
技術分野
本発明は、マルチチップモジュール（ＭＣＭ：Ｍｕｌｔｉ  Ｃｈｉｐ  Ｍｏｄｕｌｅ）化された電子回路装置に関し、例えば、システムオンチップ（ＳＯＣ：Ｓｙｓｔｅｍ  Ｏｎ  ａ  Ｃｈｉｐ）化若しくはＭＣＭ化に至るシステム開発の早い段階においてデバッグやプロトシステムの実現に利用可能とされる電子回路装置に適用して有効な技術に関する。
背景技術
半導体集積回路（ＬＳＩ）は高集積化及び高機能化により、設計が複雑化し、ＬＳＩのユーザがその応用システムの開発を企画してから、そのシステムのためのＬＳＩが完成するには、例えば１年のような長期間を要するのが少なくない。開発期間が長いと、市場の状況に即応できない恐れが生ずる。開発期間を短縮するには、設計の早い段階で不具合を発見できることが大切である。
ＭＣＭ技術は、ＬＳＩの複雑化を解消し、比較的短期間に所望する電子装置を得る上で考慮してよい技術である。ＭＣＭは、例えば、マイクロプロセッサやメモリなどのＬＳＩをビルドアップ基板などの高密度実装基板に実装するいわゆるモジュール化によってして、ＳＯＣ化されたＬＳＩと同等の機能の電子回路装置を構成するものとされる。
所望のシステムを構成するための電子回路装置を比較的短期間に得ようとする場合や、設計を行うべきＬＳＩの不具合を予め回避するには、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）の利用が有効である。すなわち、ＦＰＧＡによって早い時期で所要の論理機能を実現することができ、その論理機能についての不具合を洗い出すことができ、不具合が有ると明らかになったときのその不具合の解消を早く行うことができるからである。例えば、ＦＰＧＡの多数の記憶セルに接続定義データを与えることによって圧縮或は通信プロトコルなどの所望の論理機能を実現してそれを動作させ、その動作結果に基づいて所望の論理機能に対するデバッグが可能になる。これにより、ＦＰＧＡそれ自体によって所望の論理機能を得ることができる。また、最終的にＬＳＩを構成しようとするときでも、ＦＰＧＡの利用によってＬＳＩ設計の早い段階で論理機能のバグを発見して除去することが可能になり、ＬＳＩ設計を短期間に行うことが可能となる。
ＣＰＵの動作プログラムは、フラッシュメモリなどの電気的に書き換え可能な不揮発性メモリを使用するなら、その不揮発性メモリ上でその内容の書き換えを行なうことができる。これにより、システムの微調整若しくは小規模な修正に対して即座に対応することが可能になる。そのようなマイクロコンピュータはＦＰＭＣ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ）とも称される。
本発明者は、ＭＣＭ、ＦＰＧＡ、ＦＰＭＣなどの技術を有機的に結合して、ＳＯＣ化に至るシステム開発の早い段階においてデバッグやプロトシステムの実現に資することについて検討したが、そのような技術的思想は未だ提供されていない。
本発明者は、そのような技術の検討過程においても、以下の問題点を見出した。
第１に、ＭＣＭとＦＰＧＡを個別に用いると、両者を搭載する基板サイズが大きくなり、配線の長さが長くなり、所望の特性を得る事ができず、ＳＯＣの構成と同等の機能を実現できない場合の有ることが明らかにされた。
第２に、ＭＣＭ上で高速データ転送を実現する場合には、ＭＣＭを実装するボード上に比べて配線の特性インピーダンス不整合による反射の影響が大きく、ＬＳＩの出力回路に対して出力インピーダンスを微調整した方が望ましい場合もあると予想される。
第３に、ビルドアップ基板のような高密度実装基板に面実装タイプの半導体数積回路をフェースダウンで実装するような場合を想定すると、実装基板における配線との接続不良の検証や実装した半導体集積回路に対するテストの容易化を実現することが望ましい。
第４に、データ処理の高速化にはマイクロコンピュータとメモリとの間のデータ転送を高速化することが必要である。なお、本発明がなされた後の調査によって特開平８−１６７７０３号公報の存在を知り得た。しかし、かかる公報記載の発明は、半導体素子構造の相異の観点で、例えばＤＲＡＭ（ダイナミック型ＲＡＭ）を、メモリセル構成部分と論理回路部分とに分け、それらを別々の半導体チップとして構成し、それら半導体チップ相互を搭載基板上において電気的に接続するものであり、後の説明からも更に詳しい内容が明らかとなる本発明と全く異なるものである。
本発明の目的は、ＳＯＣ化等に至るシステム開発の早い段階においてデバッグを容易化することができ、また、プロトシステムの実現にも資することができる電子回路装置を提供することにある。
本発明の別の目的は、論理機能を可変にでき、しかもデータ処理に必要なデータの転送速度を高速化できる、電子回路装置を提供することにある。
本発明の更に別の目的は、高速データ転送を実現する場合に、配線の特性インピーダンス不整合による反射の抑制が容易な電子回路装置を提供することにある。
本発明のその他の目的は、ビルドアップ基板のような高密度実装基板に面実装タイプの半導体集積回路をフェースダウンで実装したときの実装配線との接続不良の検証や実装した半導体集積回路に対するテストを容易化することができる電子回路装置を提供することにある。
本発明の上記並びにその他の目的と新規な特徴は本明細書の以下の記述と添付図面から明らかにされるであろう。
発明の開示
《概要》
本発明に係る電子回路装置のうち代表的なものの概要を説明する。主に、ビルドアップ基板などの高密度基板上にマイクロコンピュータ（ＭＣＵ）とＤＲＡＭ等のランダムアクセスメモリ（ＲＡＭ）とを配置し、高速データ転送可能に両者をメモリ専用バス結合する。高密度実装基板上には、また、マイクロコンピュータの所要の周辺機能などを予め模擬できるように可変論理回路としてのＦＰＧＡに代表されるプログラマブルデバイスが搭載され、前記マイクロコンピュータは必要に応じてその動作プログラムを電気的に書き換え可能な不揮発性メモリを内蔵するものとされる。前記高密度実装基板は例えばマザーボードに実装可能なドータボードとされ、実装用外部端子を底面に有し、システムオンチップされたＭＣＭと同じようにマザーボードへの実装が可能である。
この電子回路装置により、ＭＣＭ、ＦＰＧＡ、ＦＰＭＣなどの技術を有機的に結合して、動作速度やノイズなどの点で障害を生ずること無く、ＳＯＣ化等に至るシステム開発の早い段階においてデバッグを容易化することができ、また、プロトシステムの実現にも資することができる。更に、開発から試作、更に製品化への期間短縮に寄与する。或は、上記電子回路装置をＳＯＣのＬＳＩに代わる最終製品として位置付けると、少量多品種の場合には圧倒的な価格低減の優位性があり、性能、基板サイズの点でもＳＯＣに匹敵する。
本発明に係る電子回路装置を数種類の態様に分けて更に詳述する。
《論理機能のプログラマブル化》
電子回路装置は、半導体デバイスとしてＣＰＵを備えたマイクロコンピュータ、ランダムアクセスメモリ、及び多数の記憶セルに与えられる結線定義情報や論理定義情報のような論理構成定義データに応じて論理機能がプログラマブルに実現されるプログラマブルデバイスを有する。前記マイクロコンピュータ、ランダムアクセスメモリ、及びプログラマブルデバイスは夫々別々の半導体チップに形成され且つ前記半導体チップとは別の共通基板の一方の面に実装され、前記共通基板は他方の面にその他の回路基板への実装用外部端子を有する。前記実装用外部端子は前記プログラマブルデバイスに接続可能にされる。論理構成定義データに応じてプログラマブルデバイスに所望の論理機能を設定することにより、電子回路装置で実現すべき機能、特にハードウェアを主体として実現すべき機能を実現することができ、システム開発の早い段階におけるデバッグの容易化、プロトシステムの実現、に資することができる。
《動作プログラムのプログラマブル化》
前記マイクロコンピュータはＣＰＵの動作プログラムを電気的に書き換え可能に保持することが可能な第１の不揮発性メモリを有してよい。これにより、実現すべき機能をソフトウェア主体で模擬することができ、この点でデバッグの容易化、プロトシステムの実現、に資することができる。
《プログラマブルデバイスのＣＰＵ周辺回路化》
前記共通基板は、前記マイクロコンピュータ及びプログラマブルデバイスを接続する共通バスを有してよい。これにより、ＣＰＵ若しくはマイクロコンピュータは共通バスを介してプログラマブルデバイスをその周辺回路として容易に機能させることが可能になる。
《制御データなどのプログラマブル化》
共通基板は、前記共通バスに接続されて前記共通基板に実装された電気的に書き込み可能な第２の不揮発性メモリを更に有してよい。前記第２の不揮発性メモリにＣＰＵ若しくはマイクロコンピュータが参照する制御データテーブルなどをプログラマブルに設定して、システムデバッグを行なうことができる。
《メモリアクセスの高速化》
前記マイクロコンピュータは、ＭＣＭ構成に好適なように、例えばメモリバッファを有するようにされる。前記メモリバッファと前記ランダムアクセスメモリは、共通基板に形成されたメモリ専用バスを介して接続される。特に制限されないが、前記メモリ専用バスは前記共通基板における前記実装用外部端子と非接続にされる。これによってメモリ専用バスが高速メモリアクセスを制限するような余分な負荷を持ってしまうことが回避される。メモリバッファとメモリ専用バスを採用することにより、バスの並列ビット数、バスの信号振幅、バス駆動方式などを、利用するランダムアクセスメモリに合わせて最適化することが容易であり、高速化の要請に的確に対応することが容易になる。
前記メモリバッファは、前記メモリ専用バスに接続する出力バッファを有する。上記出力バッファは、出力ＭＯＳトランジスタ及びこれに結合された出力インピーダンス制御用ＭＯＳトランジスタを備える。出力インピーダンス制御用ＭＯＳトランジスタは電圧発生回路を持つような制御回路から出力される制御電圧をゲート電極に受けてインピーダンス制御可能にされる。前記出力インピーダンス制御用ＭＯＳトランジスタは、例えば、実際には、並列接続された複数個のＭＯＳトランジスタから構成され、オン状態にされるトランジスタの数に応じてそのオン抵抗が相違される。半導体集積回路における出力バッファの出力インピーダンスの変動や、共通基板での配線を含むメモリ専用バスの特性インピーダンスの変動にかかわらずにそれら相互のインピーダンスを整合させることが可能になるから、結果として信号反射のような不所望な信号成分の発生を抑えることができ、高速メモリアクセスが可能となる。
《高密度実装基板》
前記共通基板は、ガラス基板と、前記ガラス基板の一方の主面に形成された多層配線層とを有し、前記多層配線層の表面には多層配線層の所定の配線に導通する半導体デバイスの実装用接続端子が配置され、前記ガラス基板の他方の主面には前記多層配線層の所定の配線に前記ガラス基板の主面を貫通して導通する前記実装用外部端子が配置され、ビルドアップ基板などの高密度実装基板として実現される。この高密度実装基板に搭載されるマイクロコンピュータ、ランダムアクセスメモリ、及びプログラマブルデバイス等の各半導体デバイスは、例えば面実装可能なマイクロバンプのような外部端子が底面にアレイ状に配置されたようなベアチップとして、或いはＣＳＰ（チップサイズパッケージ）技術によってパッケージに封止されたチップとして用意され、高密度実装基板の実装用接続端子にフェースダウンで面実装される。
上記高密度実装基板は、半導体チップのほとんどを構成するシリコンと同程度に反りや寸法変動が小さいことや、安価であることが望ましい。それら要求を満たす好適なものとしてガラス基板をあげることができる。ガラス基板に対しては導体膜形成や絶縁膜形成のような成膜技術、及び、フォトリソグラフィ技術を使って微細な多層配線やスルーホールが形成される。このような半導体チップ形成と類似の成膜、加工技術によって、実装基板には半導体デバイスなどの電子部品を高密度に実装することができる。上記の高密度実装基板は、上記のように多層配線が形成された一方の面に夫々別々の半導体チップとして構成された複数個の半導体デバイスを実装するための共通のビルドアップ基板を成す。前記ビルドアップ基板の他方の面には当該ビルドアップ基板をその他の回路基板へ実装するための外部端子が設けられる。また、高密度実装基板でガラス以外にも低熱膨張のセラミック或いは耐熱性のある有機樹脂も用いることができる。
《ＪＴＡＧによる検証機能》
ここでは、半導体デバイスそれ自体がＪＴＡＧ（Ｊｏｉｎｔ  Ｔｅｓｔ  Ａｃｔｉｏｎ  Ｇｒｏｕｐ  ＩＥＥＥ標準１４９．１）によるバウンダリスキャン若しくはビルト・イン・テスト機能を有する場合に着目する。前記複数個の半導体デバイスの全部又は一部は、テスト制御端子の入力に応答して、所定の外部端子に接続さた複数個のスキャンラッチを、テストデータ入力端子とテストデータ出力端子との間で直列形態でシフトレジスタ動作させて、テスト用の外部入出力が可能にされ、これによってバウンダリスキャンやビルト・イン・テスト機能が実現される。半導体デバイスのこの機能を利用可能なように、前記ビルドアップ基板は、各半導体デバイスのテスト制御端子に並列的に接続される共通テスト制御端子と、共通テストデータ入力端子と、共通テストデータ出力端子と、選択制御回路とを備えるようにされる。前記選択制御回路は、半導体デバイスのテストデータ出力端子と他の半導体デバイスのテストデータ入力端子を接続して複数個の半導体デバイスを前記共通テストデータ入力端子から共通テストデータ出力端子に直列的に接続する直列接続状態と、半導体デバイス毎にそのテストデータ出力端子及びテストデータ入力端子を前記共通テストデータ入力端子及び共通テストデータ出力端子に個別的に接続する個別接続状態とを、モード信号に従って選択可能にする回路である。
ビルドアップ基板にフェースダウンで半導体デバイスを実装したとき、半導体デバイスとビルドアップ基板との端子接続状態は光学的観測では確認し難い。実装状態を検証するには、ＪＴＡＧ技術の利用が好都合である。すなわち、テスタからビルドアップ基板にモード信号のような制御信号を与え、その信号によって前記選択制御回路に前記直列接続状態を選択させ、各半導体デバイスの外部端子にテスタからビルドアップ基板を介してテストデータを与え、これを各半導体デバイスの外部端子からそれぞれに対応されるスキャンラッチにラッチさせ、それらをシフトレジスタ動作させ、前記共通テストデータ出力端子からテスタに帰還させ、テストデータとの一致／不一致を判定することにより、半導体デバイスとビルドアップ基板との電気的接続状態を確認することが可能になる。
電子回路装置のデバッグを行う場合にもまたＪＴＡＧ技術が利用できれば好都合である。すなわち、エミュレータのような所要の外部制御装置によって電子回路装置を動作させ、前記選択制御回路に前記個別接続状態を選択させて、着目する半導体デバイスのスキャンラッチにサンプリングすべき情報をラッチさせ、ラッチされた情報を複数のスキャンラッチのシフトレジスタ動作にて前記共通テストデータ出力端子から外部制御装置に供給して、供給された情報を解析することが可能になる。
上記ＪＴＡＧによる検証機能を備えた電子回路装置にも、前述のビルドアップ基板による高密度実装基板構造を採用可能である。前記複数個の半導体デバイスとして、ＣＰＵを備えたマイクロコンピュータ及びランダムアクセスメモリを搭載し、前記マイクロコンピュータを前記実装用外部端子に接続可能としてよい。このとき、前記マイクロコンピュータにはＣＰＵの動作プログラムを電気的に書き換え可能に保持することが可能な第１の不揮発性メモリを内蔵させれば、電子回路装置で実現すべき機能をソフトウェア的な観点より模擬することが容易になる。また、前記マイクロコンピュータにメモリバッファを設け、前記メモリバッファと前記ランダムアクセスメモリをメモリ専用バスで接続することにより、前述と同様に、メモリアクセスの高速化を実現できる。このとき、前記メモリバッファの出力回路を前述と同様に出力インピーダンス可変可能に構成すれば、メモリ専用バスとのインピーダンス整合を採り易くなる。更に、半導体デバイスの一つとして前記プログラマブルデバイスを採用すれば、電子回路装置で実現すべき機能をハードウェア的な観点より模擬することが容易になる。
《プログラマブルデバイスの外付け》
本発明の更に別の態様による電子回路装置は、電子回路装置を実装するマザーボードに前記プログラマブルデバイスを外付けデバイスとして搭載する。但し、外付けとすることによる配線長の増大、システムの大型化という点で劣ることになるが、ドータボードのコストを低減させることができる。また、ＦＰＧＡで実現すべき論理規模の大小に対して無駄無く適切に対応することができる。
詳しくは、マイクロコンピュータ及びランダムアクセスメモリが実装されたドータボードと、多数の記憶セルに与えられる論理構成定義データに応じて論理機能がプログラマブルに実現されるプログラマブルデバイス及び前記ドータボードが実装されるマザーボードとを有し、前記マイクロコンピュータ及びランダムアクセスメモリは夫々別々の半導体チップに形成されてドータボードの一方の面に実装され、前記ドータボードは他方の面にマザーボードへの実装用外部端子を有し、前記実装用外部端子はドータボード上で前記マイクロコンピュータに接続にされて成る。
この態様においても、前記マイクロコンピュータに動作プログラムを電気的に書き換え可能に保持する第１の不揮発性メモリを内蔵させ、また、マイクロコンピュータにメモリバッファを内蔵させて前記ランダムアクセスメモリをメモリ専用バスで接続するようにしてもよい。そして、前記メモリバッファには出力インピーダンス可変の出力回路を採用するとよい。
発明を実施するための最良の形態
第１図には本発明に係る電子回路装置の第１の実施例であるＭＣＭ１が例示される。特に制限されないが、ＭＣＭ１は、表示及び描画並びに圧縮などのグラフィックス制御に向けたシステムへの適用を意図した例とされる。
同図に示されるＭＣＭ１は、高密度実装基板２の一方の主面に複数個の半導体デバイスとして、例えばマイクロコンピュータ（ＭＣＵ）３、クロック発生ユニット（ＣＧＵ）４、電源制御ユニット（ＰＣＵ）５、スイッチユニット（ＳＷＵ）６、ランダムアクセスメモリ（ＲＡＭ）７、プログラマブルデバイス（ＦＰＧＡ）８、シリアルコミュニケーションユニット（ＳＣＵ）９、デジタルアナログコンバータ（ＤＡＣ）１０、フラッシュメモリ（ＦＬＳＨ）１１を有する。前記ダイナミックメモリ７はメモリ専用バス１２でマイクロコンピュータ３に接続される。マイクロコンピュータ３、ＦＰＧＡ８及びフラッシュメモリ１１は共通バスとしてのシステムバス１３を共有する。
ＣＧＵ４はシステムクロック信号ＳＣＫと表示系クロック信号ＤＣＫを入力し、周波数の分周又は逓倍等を行なって、代表的に例示される表示タイミングクロック信号２０をＦＰＧＡ８に、基準クロック信号２１をＭＣＵ３及びＦＰＧＡ８に供給する。
前記ＭＣＵ３は、代表的に示されたＣＰＵ１５、オンチップフラッシュメモリ（ＩＦＬＳＨ）１６、及びメモリバッファ（ＭＢＵＦ）１７を有する。前記オンチップフラッシュメモリ１６は電気的に書き換え可能な不揮発性メモリであり、ＣＰＵ１５の動作プログラムを格納する。ＣＰＵ１５は内部フラッシュメモリ１６、ＲＡＭ７、又は外部のフラッシュメモリ１１から命令を所定の制御手順にしたがってフェッチし、これを解読して命令を実行する。メモリバッファ１７はＲＡＭ７個有のインタフェース仕様を満足して前記メモリ専用バス１２に結合される。
ＭＣＵ３は、ＰＣＵ５からのシステムリセット信号２２がアサートされるとリセット動作を開始し、ネゲートされると、ＣＧＵ４からの基準クロック信号２１に同期して動作を開始する。ＭＣＵ３は、特に制限されないが、周辺インタフェース端子２４及びプログラム端子２５を介して高密度実装基板２の外部とインタフェース可能にされ、実装基板２の外部からＭＣＵ１に内蔵の図示を省略する制御ユニットを介してオンチップフラッシュメモリ１６を書き換え可能になっている。即ち、ＭＣＵ３は、プログラム端子２５からのプログラムモードの指示に応答してオンチップフラッシュメモリ１６を周辺インタフェース端子２４を介して外部から前記図示を省略する制御ユニットを介してアクセス可能にされ、この状態でＭＣＭ１の外部から書き換えが行なわれる。
ＰＣＵ５は電源制御行なうと共にリセット動作を管理する。ＰＣＵ５は、外部電源端子２６から外部電源を入力し、例えばこれを降圧及び昇圧して、実装基板２上で使用する内部電源電圧Ｖ０，Ｖ１，Ｖ２を生成する。例えば、ＭＣＵ３等には１．８Ｖ、３．３Ｖの内部電源電圧が供給され、ＳＣＵ９及びＤＡＣ１０には１２Ｖの内部電源電圧が供給される。ＰＣＵ５は、リセット管理機能として、ＦＰＧＡ８のプログラム完了信号２７と外部電源電圧を監視し、外部電源電圧が安定化しているとき、プログラム完了信号２７がアサートされるのを条件にリセット信号２２をアサートし、一定時間経過後にそのリセット信号２２をネゲートして、ＭＣＵ３及びＦＰＧＡ８の実動作を開始させる。
ＳＷＵ６はデバッグに際して実装基板２上で着目すべき信号を選択してモニタ端子２８に出力可能にする回路である。第１図では代表的にシステムバス１３がＳＷＵ６に接続され、その接続配線がシステムバスの負荷を不所望に増大させないようバッファ６Ａを介して接続される。ＳＷＵ６がどの信号線をモニタするかは、モニタ動作の前にＭＣＵ３がシステムバス１３を介してＳＷＵ６のコントロールレジスタ（図示せず）に選択制御情報をセットすることによって決定される。
ＲＡＭ７はＤＲＡＭ又はシンクロナスＤＲＡＭなどのダイナミックメモリ、或はＳＲＡＭなどのスタティックメモリである。メモリバッファ１７はＲＡＭ７に適合するインタフェース仕様を有し、信号振幅の大きさ、アドレス、データ及びアクセス制御コマンドなどをやり取りするためのプロトコル等を満足できりるようになっている。アクセス制御コマンドは、例えば、ＳＤＲＡＭであれば、クロックイネーブル信号、メモリイネーブル信号、ロウアドレスストローブ信号、カラムアドレスストローブ信号、ライとイネーブル信号、アウトプットイネーブル信号として位置付けられる信号機能とされる。
ＦＰＧＡ８は、特に制限されないが、その内部にマトリクス状に配置された多数の信号パス、信号パスの接続経路を選択する多数の可変スイッチセル、及び多数の可変論理セルを有する。可変論理セルの論力機能、可変論理セルと信号パスとの接続形態は、データラッチ回路にラッチされる論理構成定義データ（論理機能定義データとも称する）によって決定され、前記可変スイッチセルによる信号パスの接続形態は、データラッチ回路にラッチされる論理構成定義データによって決定される。データラッチ回路はスタティックラッチ、或は不揮発性メモリセルによって構成され、全てのデータラッチ回路に論理構成定義データを初期設定することにより、ＦＰＧＡ８のハードウェア的な論理構成が決定され、その論理構成に従った動作を行なう。論理構成定義データを変更すれば、ＦＰＧＡ８の論理機能を変化させることができる。ＦＰＧＡ８はプログラムポート３０から論理構成定義データを読込み、読み込み完了すると、プログラム完了信号２７をＰＣＵ５に向けてアサートし、これによって、ＰＣＵ５はシステムリセット信号２２をアサートする。
第１図の実施例では、ＦＰＧＡ８には表示に関する論理機能を搭載させることを目的としており、実装基板２の外部とはＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス端子３１による接続が採用され、その他に、ＳＣＵ９を介してシリアル端子３２に接続され、また、ＤＡＣ１０を介してアナログ端子３３に接続される。シリアル端子３２は例えば図示を省略する外部スイッチ及びキーボードなどの外部装置との通信に利用可能にされ、アナログ端子３３は図示を省略するＣＲＴ，ＬＣＤ等のディスプレイへの表示及び表示タイミング信号の出力に利用可能にされる。
前記ＳＣＵ９は前記図示を省略するスイッチ、キーボードなどの入出力デバイスとの通信を行うためのもので、ＦＰＧＡ８を介してＭＣＵ３が制御する。
前記ＤＡＣ１０はＦＰＧＡ８から表示クロックに同期して供給されるディスプレイへの表示データをアナログ信号に変換する。通常は、赤，緑、青（ＲＧＢ）の輝度信号と、緑に重畳する水平垂直同期信号を出力する。
特に図示はしないが、前記実装基板２には、必要に応じてコンデンサや抵抗等の受動素子を配置することができる。
特に制限されないが、第１図の構成は、システムの開発デバック時の構成とされる。同図の構成は、デバック完了後の量産時には、フラッシュメモリ１１をＲＯＭに変更し、ＦＰＧＡ８を所定機能のゲートアレイ又はＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などによるカスタムＬＳＩに置きかえて構成すればよい。ＳＷＵ６は取り外してよい。なお、第１図の構成は、必要ならば、デバック完了後、そのまま製品として使用されてもよく、またその後、上記のようにカスタムＬＳＩへの置き換えが行われてもよい。第１図の構成をデバッグ完了後、そのまま製品として使用する場合には、ＦＰＧＡ８の論理構成定義データのためのリードオンリメモリ（ＲＯＭ）ないしはフラッシュメモリのような不揮発性メモリが設けられる。かかるＲＯＭないしは不揮発性メモリは、ＭＣＭ１を搭載するマザーボード４６（第２図参照）上のような部分に設定され、システムの電源投入時のような起動時にＦＰＧＡ８へ与えられる。ＦＰＧＡ８の論理構成定義データは、もし望なら、ＭＣＭ１におけるフラッシュメモリ１１に不揮発的に書き込まれ、そしてシステム起動時にＦＰＧＡ８へ与えられるようにされても良い。
次に、前記ＭＣＭ１を用いるシステムの開発デバッグ時において、前記内部フラッシュメモリ１６に格納すべきプログラムと、ＦＰＧＡ８で実現すべき論理機能についてデバックを行う時の動作を説明する。
先ず、ＦＰＧＡ８は、前述のように電源投入後、ＦＰＧＡプログラムポート３０から論理構成定義データが読込まれて、その論理構成が確定すると、ＰＣＵ５のリセット管理機能により、リセット信号２２にてＭＣＭ１上でシステムリセットが行われる。リセット信号２２がネゲートされてリセット解除が行なわれると、ＭＣＵ３はプログラム端子２５からプログラムモードの指示に応答して、周辺インタフェース端子２４からロードされるデバッグ対象とされるターゲットプログラムをオンチップフラッシュッメモリ１６に書き込み可能にする。また、ＭＣＵ３は、リセット解除後に、ＣＰＵ１５にオンチップフラッシュメモリ１６の書き換え制御プログラムを実行させることにより、必要に応じて、オンチップフラッシュメモリ１６の動作プログラムを書きかえることが可能である。前記書き換え制御プログラムは予めフラッシュメモリ１１にストアしておき、割込などを用いてそれをＣＰＵ１５に実行させればよい。
ＣＰＵ１５によるターゲットプログラムの実行時にバス情報やその他の内部情報を外部でサンプリング可能にするには、ＣＰＵ１５がターゲットプログラムを実行する前に、デバッグ制御プログラムを実行して、ＳＷＵ６のコントロールレジスタにサンプリング情報の指定データを初期設定させる。これにより、ＣＰＵ１５がターゲットプログラムを実行しているとき、指定されたサンプリング情報がＳＷＵ６からモニタ端子２８に出力され、この出力をロジックアナライザで受けてその波形を観測可能にすることができる。
第２図には第１図のＭＣＭ１の断面構造が概略的に例示される。高密度実装基板２は、ガラス基板４０と、前記ガラス基板の一方の主面に形成された多層配線層４１とを有し、所謂ビルドアップ基板若しくは複合配線基板としての構成を備える。多層配線層４１は相互に絶縁層４２で隔離された配線１２，１３等がＸ，Ｙ方向に配置されて構成される。ＭＣＵ３等の半導体デバイスは、面実装可能なように、その回路形成面側に回路のための外部端子としての複数のバンプ電極４３を備えている。該半導体デバイスは、バンプ電極を持つ通常のベアチップと同様に製造されていても良いし、ウエーハプロセスパッケージと称されるような半導体ウエーハレベルで回路素子、配線、パッシベーション膜、バンプ電極が形成され、その後、ダイシング等の半導体ウエーハ分割技術によって各半導体デバイスを得るような方法によって製造されていても良い。
前記多層配線層４１の表面には多層配線層の所望の配線層に電気的結合する実装用接続端子としてのバンプ電極４４が設けられている。半導体デバイスは、フェースダウンボンディング技術によって高密度実装基板２に搭載される。すなわち、半導体デバイスのバンプ電極４３と、高密度実装基板２のバンプ電極４４が接合される。前記ガラス基板４０の他方の主面には前記多層配線層４１の所定の配線に、前記ガラス基板４０を貫通して電気的に結合する実装用外部端子としてのバンプ電極４５が設けられている。高密度配線基板２は、必要に応じて、第３図のように各種配線４７を持つマザーボード４６に搭載される。すなわち、高密度配線基板２のバンプ電極４５は、マザーボード４６のランドパターン４８に機械的電気的に結合される。
高密度実装基板２におけるバンプ電極４４は、そのサイズ及びその複数個の相互の間隔ないしはピッチが半導体デバイスにおけるバンプ電極４３と対応する微小なサイズ、間隔ないしはピッチを持つようにされる。これに対して、バンプ電極４５は、比較的大きいサイズ、及び相互間隔を持つようにされる。そこで、本件明細書では、高密度配線基板２の半導体デバイスに対応されるべきバンプ電極４４を、その微小さに対応する観点から、あるいはバンプ電極４５との呼称上の明確化の観点から、マイクロバンプとも称することとする。
第３図にはＭＣＭ１の断面構造のうち多層配線層４１の詳細構造を例示する。多層配線層４１は、例えば４層の配線５０〜５３を有し、それらは絶縁層５４Ａ〜５４Ｄにて分離され、回路を構成するための上下配線相互間の接続は、絶縁層５４Ａ〜５４Ｄに形成したスルーホール５５を介して行なわれる。
前記ガラス基板４０は例えばＴＦＴ液晶用基板などに使用される無アルカリガラス或は半導体センサの透明部分に利用されるホウケイ酸ガラス等によって構成され、厚さはたとえば０．５ｍｍ程度である。前記配線５０〜５３はアルミ（Ａｌ）合金、銅（Ｃｕ）、タングステン（Ｗ）などの金属配線材料によって構成される。絶縁層５４Ａ〜５４Ｄは例えば酸化シリコン又はポリイミド膜などによって構成される。最下層の配線５０の線幅及び間隔は例えば１０μｍ〜３０μｍ程度であるのに対し、最上層の配線５３の線幅及び間隔は夫々１μｍ〜１０μｍ程度である。前記マイクロバンプ４３，４４は例えば直径５μｍ〜１００μｍ程度の金（Ａｕ）バンプ又は錫（Ｓｎ）バンプから成る。一方、前記バンプ電極４５はマイクロバンプ４３，４４よりも融点の低い半田などによって構成され、例えば数百μｍ程度の直径を有する。
前記配線５０〜５３、スルーホール５５、マイクロバンプ４４などはフォトリソグラフィ技術を用いることにより高い寸法精度で製造することができる。配線５０は接着層を介してガラス基板４０にスパッタリング法で堆積し、その後でフォトレジスト膜などを用いてパターンニングして形成すればよい。上部配線５１〜５３もスパッタリングとパターンニングによって形成することができる。絶縁膜５４Ａ〜５４ＤはＣＶＤ法（Ｃｈｅｍｉｃａｌ  Ｖａｐｏｒ  Ｄｅｐｏｓｉｔｉｏｎ  Ｍｅｔｈｏｄ）による酸化シリコン膜の形成や、塗布法によるポリイミド膜の形成などの成膜技術によって形成すればよい。マイクロバンプ４４は例えば蒸着法で形成することができる。バンプ電極４５は、ガラス基板４０に貫通孔を形成し、その奥部にバリアメタルを設け、その上から半田ボール供給法又はスクリーン印刷法にて半田を供給し、この半田をリフローすることによって形成することが可能である。
上の説明からも明らかなように、実施例のＭＣＭのための高密度実装基板２は、その一方の主面に、半導体デバイスの外部接続端子（バンプ電極ないしはマイクロバンプ４３）と対応される比較的微細なサイズの接続端子（バンプ電極ないしはマイクロバンプ４４）とそれにつながる多層配線とを持ち、その他方の主面に比較的大きいサイズの外部接続電極（バンプ電極４５）を持つものとして理解できる。
第４図にはＦＰＧＡ８の詳細な一例が示される。同図に従えば、ＦＰＧＡ８は、マトリクス配置された多数の可変論理ユニット６０、可変接続ユニット６１、可変外部入出力回路６２Ａ〜６２Ｄ、行方向に延在された複数の信号配線６３、列方向に延在された複数の信号配線６４、及びプログラム制御回路６５などが、単結晶シリコンのような１個の半導体基板に配置されて成る。
前記可変論理ユニット６０、可変接続ユニット６１及び可変外部入出力回路６２Ａ〜６２Ｄは、夫々可変スイッチセル、可変論理セル、及びデータラッチ回路を有する。可変論理セルの論理機能、可変スイッチセルによる可変論理セルと信号パスとの接続形態は、データラッチ回路にラッチされる論理構成定義データによって決定される。各データラッチ回路に対する論理構成定義データの供給はプログラム制御回路６５が制御する。
第５図にはＭＣＵ３におけるメモリバッファ１７の詳細な一例が示される。メモリバッファ１７は、ＭＣＵ３の内部バス７０に含まれるアドレスＡＤＲ，データＤＡＴ、コントロールＣＮＴの３種類の信号線に接続され、メモリインタフェース７１でＲＡＭ７のアドレスを判定し、それが真であればメモリＩＯ部７２を介して、ＲＡＭ７にアドレス、データ、コントロールの信号を出力する。
一方、システムバスバッファ７３も同様に前記内部バス７０からのアドレスＡＤＲ、データＤＡＴ、コントロールＣＮＴの３種類の信号線に接続され、システムインタフェース７４でシステムバス７０上のアドレスを判定し、それが真であればシステムバスＩＯ部７５を介して、実装基板２の外部にアドレス、データ、コントロールの信号を出力する。
ここで、第５図の実装基板２上の小さな黒丸は実装基板２上のマイクロバンプ４４を示し、白丸は搭載する半導体デバイスのマイクロバンプ４３を示している。
実装基板２の外部と接続する半田バンプ４５は、摩擦静電気による異常高電圧のような、電気的には劣悪な環境にさらされてしまう可能性を考慮に入れておいた方が望ましい。すなわち、静電気に対する対策を行う必要がある。そのため、例えばシステムバスバッファ７３に例示されるＩＯ部７５には２個のダイオード７６Ａ、抵抗７６Ｂ、ＭＯＳトランジスタ７６Ｃから構成されるＥＳＤ（ＥｌｅｃｔｏｒｏＳｔａｔｉｃＤｉｓｃｈａｇｅ）回路７６が設けられる。
一方、メモリバス１２のように、実装基板２上の配線で閉じており、外部からの影響が少ないバスの場合には、メモリＩＯ部７２の入力バッファには、抵抗及びＭＯＳトランジスタが無く、小型のダイオード７７Ａで構成される小さいＥＳＤ回路７７とすることができる。
このように、メモリバス１２に関してはＥＳＤ回路７７を非常に小型に出来るため、入力容量が小さくなり、そのため消費電力が小さくなる効果がある。また、チップ面積を小さくする効果がある。更に、信号の伝搬が高速になる効果を得る。
上述のように、ＥＳＤ回路７７が小さくなり、入力容量が小さく、実装基板２上の配線のみで、配線抵抗、配線容量が小さくなると、逆に信号反射の影響が大きく見えてくる。そのため、メモリＩＯ部７２に例示されるようにインピーダンス制御を行える出力バッファ７８を採用する。ＲＡＭ７に出力する信号は、メモリインタフェース７１から出力される信号ｏｕｔｐ，ｏｕｔｎを用いて、論理値“１”，“０”、ハイインピーダンスが制御される。即ち、電源電圧Ｖｄｄにソースが接続されたＭＯＳトランジスタ７８Ｐのゲートに信号ｏｕｔｐが供給され、接地電圧Ｖｓｓにソース接続されたＭＯＳトランジスタ７８Ｎのゲートに信号ｏｕｔｎが供給される。
前記ＭＯＳトランジスタ７８Ｐ，７８Ｎのインピーダンスが実装基板２のインピーダンスに整合していれば、送信側終端として反射を減らす事が可能である。実際には、ＬＳＩの製造プロセスのばらつき、使用する実装基板２の種類によって、インピーダンスを完全に合わせる事は難しい。そこで、通常の出力バッファのＭＯＳトランジスタ７８Ｐ，７８Ｎと直列にインピーダンス制御用のＭＯＳトランジスタ７９Ｐ，７９Ｎを挿入した。このＭＯＳトランジスタ７９Ｐ，７９Ｎにインピーダンス制御用電圧発生部８０の出力する電圧信号を与えることよって該挿入したインピーダンス制御用のＭＯＳトランジスタ７９Ｐ，７９Ｎの抵抗値が可変となり、該電圧信号を最適値にすることで、反射を減らすことが可能となる。この制御電圧信号は、図示を省略する実装基板上の回路から供給してもよい。また、ＭＣＵ３内部で、反射の電圧を測定し、測定結果を上記制御電圧信号にフィードバックさせる回路を採用してもよい。また、前記制御電圧は実装基板２の外部から供給するようにしてもよい。
尚、前記夫々のインピーダンス制御用ＭＯＳトランジスタ７９Ｐ，７９Ｎは、例えば、実際には、並列接続された複数個のＭＯＳトランジスタから構成され、オン状態にされるトランジスタの数に応じてインピーダンス制御用ＭＯＳトランジスタのオン抵抗を相違させるよにしてもよい。この場合、インピーダンス制御電圧発生部８０は並列接続された複数個のＭＯＳトランジスタの夫々に対するゲート制御信号を生成し、必要なオン抵抗に従って前記複数ビットのゲート制御信号のハイレベル及ぶローレベルを制御する。
上記メモリＩＯ部７２の構成はＲＡＭ７の入力バッファ及び出力バッファにも適用可能であり、両方に適用する事で、更に信号伝搬の高速化の効果が増大する。また、ＥＳＤ部７７が小さくできることで、同じ面積のチップ上に入力バッファ及び出力バッファの数を増やすことが可能となるため、データの並列入出力ビット数を増やすことが容易になり、高速化を企図してメモリ専用バス１２を採用することと相俟って、さらに高速なデータ転送性能若しくは高速なデータアクセス性能を実現する事ができるようになる。
上記ＭＣＭ１によれば以下の作用効果を得ることができる。
〔１〕システム開発に上記ＭＣＭ１を利用すれば、論理構成定義データに応じてＦＰＧＡ８に所望の論理機能を設定することができ、ＭＣＭ１で実現すべき機能、特にハードウェアを主体として実現すべき機能を模擬することができ、これにより、システム開発の早い段階におけるデバッグの容易化、プロトシステムの実現、に資することができる。
〔２〕ＭＣＵ３が動作プログラム格納用にフラッシュメモリ１６を内蔵することにより、特にソフトウェアを主体として実現すべき機能を模擬することができ、この点でもデバッグの容易化、プロトシステムの実現、に資することができる。
〔３〕前記ＭＣＵ３及びＦＰＧＡ８がシステムバス１３を共有するから、ＣＰＵ１５若しくはマイクロコンピュータ３はシステムバス１３を介してＦＰＧＡ８をその周辺回路として容易に機能させることが可能になる。
〔４〕ＭＣＵ３のオンチップフラッシュメモリ１６とは別のフラッシュッメモリ１１をシステムバス１３に接続して設けることにより、当該フラッシュメモリ１１にＣＰＵ１５若しくはＭＣＵ３が参照する制御データテーブルやデバッグ制御プログラム等をプログラマブルに設定して、システムデバッグを行なうことができる。
〔５〕前記ＭＣＵ３にはメモリバッファ１７を設け、前記メモリバッファ１７と前記ＲＡＭ７をメモリ専用バス１２で接続し、前記メモリ専用バス１２をシステムバス１３や実装基板２の外部接続端子とは非接続とする構成を採用することにより、バスの並列ビット数、バスの信号振幅、バス駆動方式などを、利用するＲＡＭ７のインタフェース仕様に合わせて最適化することが容易であり、ＣＰＵ１５によるメモリアクセスの高速化の要請に的確に答えることが容易になる。
〔６〕前記メモリバッファ１７の出力バッファ７８に、出力ＭＯＳトランジスタに直列接続された出力インピーダンス制御用ＭＯＳトランジスタ７９Ｐ，７９Ｎを採用し、出力インピーダンス制御用ＭＯＳトランジスタ７９Ｐ，７９Ｎのインピーダンスを制御可能にするから、出力インピーダンス制御用ＭＯＳトランジスタ７９Ｐ，７９Ｎのオン抵抗を制御することにより、伝送線としてのメモリ専用バス１２とのインピーダンスマッチングが容易になる。
〔７〕シリコンと同程度に反りや寸法変動が小さく、しかもシリコンよりも安価なガラスを基板材料に用いることにより、フォトリソグラフィ技術を使って基板上に微細な配線やスルーホールを形成でき、半導体デバイスなどの電子部品を高密度に実装することができる。
〔８〕以上より、開発途上若しくは開発初期のシステムに対するデバックを実際に使用する動作周波数とほぼ同じ速度で行うことが可能となる。開発後の量産時にも、前述の如き高密度実装基板上の半導体デバイスを大幅に変更することなく対応することができ、また、ＭＣＭ１による上記電子回路装置をＳＯＣのＬＳＩに代わる最終製品として位置付けると、少量多品種の場合には圧倒的な減価低減の優位性があり、性能、基板サイズの点でもＳＯＣに匹敵するという効果がある。
第６図には本発明に係る電子回路装置の第２の実施例であるＭＣＭ１Ａが例示される。同図に示されるＭＣＭ１Ａは、第１図のＭＣＭ１に対し、オンチップフラッシュメモリ１６を搭載しないＭＣＵ３Ａを採用した点で相違する。一般に、フラッシュメモリに高速な動作を期待する場合と、機密性の高い情報をＬＳＩチップ外部に出さないように保存しておく場合にフラッシュメモリをＭＣＵの内部に搭載する。上記必要性がない場合にはフラッシュメモリを搭載しないＭＣＵ３Ａを使用すれば充分である。
その他に、ＳＷＵ６とＰＣＵ５が省略され、動作電源Ｖ０，Ｖ１，Ｖ２は外部から直接供給される。プログラム完了信号２７は実装基板２Ａの外部に出力され、システムリセット信号２２は実装基板２Ａの外部から供給される。その他の点については第１図と同様であり、その詳細な説明は省略する。
第７図には本発明に係る電子回路装置の第３の実施例であるＭＣＭ１Ｂが例示される。同図に示されるＭＣＭ１Ｂは、第１図のＭＣＭ１に対し、フラッシュメモリ１１を実装基板２Ｂの外部に配置した点で相違する。フラッシュメモリ１１及びＭＣＭ１Ｂはマザーボード４６に搭載される。一般に、フラッシュメモリはメモリバスに比べてアクセス速度が非常に遅いから、用途によっては無理に実装基板２Ｂに搭載する必要はない。また、フラッシュメモリ１１の記憶容量が用途に応じて大幅に変動すことが予め予想される場合には、システムの柔軟性という点で実装基板２の外部に配置する方が得策である。
その他に、ＳＷＵ６とＰＣＵ５が省略され、動作電源Ｖ０，Ｖ１，Ｖ２は外部から直接供給される。プログラム完了信号２７は実装基板２Ｂの外部に出力され、システムリセット信号２２は実装基板２Ｂの外部から供給される。その他の点については第１図と同様であり、その詳細な説明は省略する。
第８図には本発明に係る電子回路装置の第４の実施例であるＭＣＭ１Ｃが例示される。同図に示されるＭＣＭ１Ｃは、第７図のＭＣＭ１Ｂに対し、ＳＣＵ９及びＤＡＣ１０も実装基板２Ｃの外部に配置した点で相違する。要するに、実装基板２Ｃには、ＭＣＵ３Ａ、ＲＡＭ７、ＣＧＵ４、ＦＰＧＡ８のみが搭載されてＭＣＭ１Ｃが構成される。フラッシュメモリ１１、ＳＣＵ９、ＤＡＣ１０及びＭＣＭ１Ｂはマザーボード４６に搭載される。実装基板を用いた論理変更可能なプラットフォームを考えた場合には共通性の高い半導体デバイスのみを実装基板２Ｃ搭載することが、様々なシステムへの適用を考慮した場合には得策である。したがって、ＦＰＧＡ８は第８図の如く、実装基板２Ｃの外部でＳＣＵ，ＤＡＣに接続する利用形態に限定されることはない。
第９図には本発明に係る電子回路装置の第５の実施例を示す。同図の電子回路装置に用いられるＭＣＭ１Ｄは、第８図のＭＣＭ１Ｃに対し、ＦＰＧＡ８も実装基板２Ｃの外部に配置し、これに応じてＣＧＵ４Ｄはシステムクロック信号ＳＣＫに基づいて内部クロック信号２１ｉｎｔと外部クロック信号２１ｅｘｔを生成し、内部クロック信号２１ｉｎｔをＭＣＵ３に、外部クロック信号２１ｅｘｔをＦＰＧＡ８に供給可能に構成される。ＭＣＵ３とＦＰＧＡ８には別々にリセット信号２２Ａ，２２Ｂが供給される。前記フラッシュメモリ１１、ＦＰＧＡ８、ＳＣＵ９、ＤＡＣ１０及びＭＣＭ１Ｂはマザーボード４６に搭載される。第８図はＦＰＧＡを用いた論理変更可能なＭＣＭの最小構成を示しているのに対し、第９図はＭＣＵ内蔵フラッシュメモリ１６を用いた論理変更可能なＭＣＭの最小構成を示している。
このようにＦＰＧＡ８を実装基板２Ｄに搭載しない構成は、ＦＰＧＡに搭載する論理回路の分量が未定であるか、大きく変動することが予め予想される場合に効果がある。すなわち，ＦＰＧＡ８に搭載する論理回路の基部が大きい場合、実装基板に大きなＦＰＧＡ８を搭載する必要がありコストが増大する。ＦＰＧＡ８を実装基板２Ｄから分離することでＭＣＭのコストを抑えることが可能となる。
第１０図には本発明に係る電子回路装置の第６の実施例であるＭＣＭ１Ｅが例示される。同図に示されるＭＣＭ１Ｅは、第８図のＭＣＭ１Ｃに対し、ＪＴＡＧコントロールユニット（ＪＴＡＧＵ）１８を搭載し、実装基板２Ｅに搭載されたＭＣＵ３Ｅ、ＣＧＵ４Ｅ、及びＦＰＧＡ８Ｅの夫々がＪＴＡＧによるバウンダリスキャン若しくはビルトインテスト機能を有している点で相違される。
一般に、実装基板にフェースダウンで半導体デバイスを面実装するとき、半導体デバイスの各外部端子が正しく実装基板のマイクロバンプに接続されているかを検査するには、直接テスタを半導体デバイスの外部端子に接触することができない。そこで、Ｘ線により接続状態を検査したり、実動作試験の動作確認で検査したり、半導体デバイスに搭載されるＪＴＡＧによる接続検査が考慮されることになる。一方、ＭＣＵのような半導体デバイスでは、ＪＴＡＧのポートを使用して、デバイス内部の状態を入力したり、出力したりするデバッグ機能がを有するものがある。第１０図はそのようなバウンダリスキャン及びビルトインテスト機能を利用するものである。
ここで先ず、ＭＣＵ３Ｅ、ＣＧＵ４Ｅ、及びＦＰＧＡ８Ｅの夫々が有するＪＴＡＧの構成を第１１図に基づいて説明する。特に制限されないが、複数個のスキャンラッチとしてバウンダリスキャンセル９０が信号系の各外部端子９１に付加されている。９２はバッファである。バウンダリスキャンセル９０はマスタ・スレーブの構成を有する。各バウンダリスキャンセル９０はマスタ段が直列的に順次接続され、シフトレジスタとして機能されるバウンダリスキャンレジスタを構成する。バウンダリスキャンレジスタの入力はテストデータ入力端子ｔｄｉに接続され、バウンダリスキャンレジスタの出力端子はテストデータ出力ｔｄｏに接続される。バウンダリスキャンセル９０のマスタ段はシフト動作を行なうと共に、外部端子又は内部回路からのデータの取り込みを行なう。スレーブ段は、外部端子又は内部回路にデータを送る。マスタ段及びスレーブ段の動作はバウンダリスキャン制御回路９３によって制御される。バウンダリスキャン動作モードが設定されていない場合には、外部端子と内部回路との間はスルーとされ、バウンダリスキャンセルは機能されない。第１１図において内部回路の一例としてポートレジスタ９４が代表的に示されている。
端子ｔｄｉ，ｔｄｏはバウンダリスキャンで用いるレジスタの外部とのインタフェース端子、端子ｔｃｋはテスト動作の同期クロック端子、ｔｍｓはｔｃｋに同期した状態遷移のためのコントロール信号である。
前記バウンダリスキャン制御回路９３は端子ｔｃｋ，ｔｍｓからの入力信号を受け、ｔｃｋに同期してｔｍｓが“０”か“１”かによって制御状態を遷移させるステートマシンとされる。これによって形成されるステータスが内部でデコードされ、デコード結果にしたがってスキャンラッチ９０の動作等が制御される。テストモードの種類を決定するためのインストラクションは端子ｔｄｉからバウンダリスキャン制御回路９３にロードされる。バウンダリスキャン制御回路９３はインストラクションをデコードすることによってテストモードが決定される。決定されたテストモードに従ったテスト動作はステートマシンの前記ステータスによって遷移されることになる。
第１２図には上記半導体デバイスのバウンダリスキャン機能に呼応して設けられたＪＴＡＧＵ１８と半導体デバイスとの接続関係を中心としたＭＣＭ１Ｅのブロック図が例示される。前記ＪＴＡＧＵ１８は、前記ＭＣＵ３Ｅ，ＣＧＵ４Ｅ，ＦＰＧＡ８Ｅのテスト制御端子（ｔｍｓ，ｔｃｋ）に並列的に接続される共通テスト制御端子ＴＭＳ，ＴＣＫと、共通テストデータ入力端子ＴＤＩと、共通テストデータ出力端子ＴＤＯと、ＪＴＡＧコントローラ（ＪＴＡＧＣ）９５と、セレクタ９６〜９８を備える。データ端子ＴＤＩはＭＣＵ３Ｅのバウンダリスキャンレジスタのデータ入力端子ｔｄｉ、セレクタ９７，９８の一方にデータ入力端子に接続される。ＭＣＵ３Ｅのバウンダリスキャンレジスタのデータ出力端子ｔｄｏはセレクタ９７の他方のデータ入力端子、セレクタ９６の第１のデータ入力端子に接続される。ＣＧＵ４Ｅのバウンダリスキャンレジスタのデータ出力端子ｔｄｏはセレクタ９８の他方のデータ入力端子、セレクタ９６の第２のデータ入力端子に接続される。ＦＰＧＡ８Ｅのバウンダリスキャンレジスタのデータ出力端子ｔｄｏはセレクタ９６の第３のデータ入力端子に接続される。セレクタ９６の出力端子はデータ出力端子ＴＤＯに接続される。ＪＴＡＧＣ９５はモード端子ＴＭＯＤＥからシリアルに供給されるモードデータにしたがってセレクタ９６〜９８の選択状態を決定する。モードデータによってセレクタ９６〜９８が採り得る選択状態は、半導体デバイス３Ｅ，４Ｅ，８Ｅのバウンダリスキャンレジスタを前記共通テストデータ入力端子ＴＤＩから共通テストデータ出力端子ＴＤＯに直列的に接続する直列接続状態、半導体デバイス３Ｅのバウンダリスキャンレジスタを前記共通テストデータ入力端子ＴＤＩから共通テストデータ出力端子ＴＤＯに接続する第１個別接続状態、半導体デバイス４Ｅのバウンダリスキャンレジスタを前記共通テストデータ入力端子ＴＤＩから共通テストデータ出力端子ＴＤＯに接続する第２個別接続状態、半導体デバイス８Ｅのバウンダリスキャンレジスタを前記共通テストデータ入力端子ＴＤＩから共通テストデータ出力端子ＴＤＯに接続する第３個別接続状態とされる。
実装基板２Ｅにフェースダウンで半導体デバイス３Ｅ，４Ｅ，８Ｅを実装したとき、半導体デバイス３Ｅ，３４Ｅ，８Ｅと実装基板２Ｅとの端子接続状態は目視では確認し難い。実装状態を検証するには、テスタに実装基板２Ｅを装着し、モード信号ＴＭＯＤＥにてＪＴＡＧＣ９５に前記直列接続状態を選択させ、各半導体デバイス３Ｅ，４Ｅ，８Ｅの外部端子にテスタから実装基板２Ｅを介してテストデータを与え、これを各半導体デバイス３Ｅ，４Ｅ，８Ｅの外部端子からそれぞれに対応されるスキャンラッチにラッチさせ、それらをシフトレジスタ動作させ、前記共通テストデータ出力端子ＴＤＯからテスタに帰還させ、テストデータとの一致／不一致を判定することにより、半導体デバイス３Ｅ，４Ｅ，８Ｅと実装基板２Ｅとの電気的接続状態を確認することが可能になる。
デバッグを行う場合には、前記テスタを介してＭＣＭ１Ｅを動作させ、デバッグ対象がＭＣＵ３Ｅの場合には前記ＪＴＡＵＣ９５に前記第１個別接続状態を選択させて、ＭＣＵ３Ｅのスキャンラッチにサンプリングすべき情報をラッチさせ、ラッチされた情報を複数のスキャンラッチのシフトレジスタ動作にて前記共通テストデータ出力端子ＴＤＯからテスタに供給して、供給された情報を解析することが可能になる。デバッグ対象がＣＧＵ４Ｅの場合には前記ＪＴＡＵＣ９５に前記第２個別接続状態を選択させ、デバッグ対象がＦＰＧＡ８Ｅの場合には前記ＪＴＡＵＣ９５に前記第３個別接続状態を選択させて、同様にデバッグ動作を行なえばよい。
このように、ＪＴＡＧＵ１８を実装基板２Ｅに搭載することで、実装基板２Ｅ上の各半導体デバイス間のバウンダリスキャンによる接続チェックが行える。また、半導体デバイスがＪＴＡＧポートを用いて実現しているデバック機能をＴＭＯＤＥによる選択状態を切り替えることによって使用することが可能となる。
第１３図には本発明に係る電子回路装置の第７の実施例であるＭＣＭ１Ｆが例示される。同図に示されるＭＣＭ１Ｆは、第１図のＭＣＭ１に対し、メモリ専用バス１２を設けず、システムバス１３にＲＡＭ７を共通接続した点が相違され、その他の点は同じである。ＭＣＵ３Ｆは当然メモリバッファ１７を備えることを要しない。ＭＣＵ３ＦによるＲＡＭの高速アクセスは制限されるが、左程の高速動作を行なわなくても済む用途ではデータ処理上支障なく、その代わりにＭＣＭ１Ｆのコストを低減できる。
図示は省略するが、ＭＣＭにメモリ専用バス１２を採用しないＭＣＭにおいても、第６図のようにフラッシュメモリ１６をオンチップしないＭＣＵを採用し、第７図のようにフラッシュメモリ１１を実装基板の外に配置し、第８図のようにフラッシュメモリ１１と共にＳＣＵ９及びＤＡＣ１０実装基板に外に配置し、第９図のようにＦＰＧＡ８も実装基板の外に配置し、また、第１０図のようにＪＴＡＧＵ１８を実装基板に搭載した構成を採用することが可能である。
第１４図には第１図のＭＣＭ１を自動車のナビゲーションシステムのデバック装置に適用した構成が例示される。ＭＣＭ１は第１図で説明した構成を備える。ＭＣＭ１はマザーボード４６に実装されている。
ｓｃｋはシステムクロックＳＣＫを生成する水晶発振器、ｄｃｋは表示クロックＤＣＫを生成する水晶発振器を示しており、それぞれＭＣＭ１にクロックを供給する。電源回路１００からコネクタＣ１を介してＭＣＭ１に電源が供給される。操作スイッチ１０１からの信号は、コネクタＣ９を介してＭＣＭ１のシリアル通信ポート９に接続される。
自動車の速度を示す車速信号はコネクタＣ８を介して周辺Ｉ／Ｏ半導体デバイス１０２に接続する。ＭＣＭ１上のＭＣＵ３はＦＰＧＡ８のＰＣＩバスポート３１を介して、周辺Ｉ／Ｏ半導体デバイス１０２をアクセスすることが可能で、前記車速信号の状態を読み出すことができる。
ＧＰＳアンテナ１０３は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）の電波を受信し、複数の衛星からのメッセージをデジタル信号に変換するもので、コネクタＣ７を介して周辺Ｉ／Ｏ半導体デバイス１０２に接続する。該メッセージはＭＣＭ１上のＭＣＵ３がＦＰＧＡ８のＰＣＩバスポート３１を介して、周辺Ｉ／Ｏ半導体デバイス１０２をアクセスすることで読み出すことができる。
ＤＶＤ−ＲＯＭドライブ１０４は地図データを格納するもので、コネクタＣ６を介して周辺Ｉ／Ｏ半導体デバイス１０２に接続する。該地図データはＭＣＭ１上のＭＣＵ３がＦＰＧＡ８のＰＣＩバスポート３１を介して、周辺Ｉ／Ｏ半導体デバイス１０２をアクセスすることで読み出すことができる。
ディスプレイ１０５はコネクタＣ３を介してＭＣＭ１のＲＧＢアナログ信号ポート３３に接続する。ディスプレイ１０５は赤、緑、青の色情報と、緑に重畳された水平、垂直同期信号にしたがって画面上に画像を表示する。
ＰＣデバッガ１０６はＭＣＭ１上のＦＰＧＡ８の論理機能定義データと、フラッシュメモリ１１，１６に対するプログラム書き込み、そしてデバッグのための支援制御を行なう回路であり、コネクタＣ４を介してＦＰＧＡプログラムポート３０と、コネクタＣ５を介してＭＣＵの内蔵周辺Ｉ／Ｏポート２４に接続される。ＰＣデバッガ１０６にはＦＰＧＡ８に搭載する論理回路の定義データを有しており、ＰＣデバッガ１０６に対するオペレータの指示によりＦＰＧＡ８に該論理回路定義データをコネクタＣ４を介して書き込む。また、ＰＣデバッガ１０６は、フラッシュメモリ１１、１６に搭載するプログラム情報を有しており、ＰＣデバッガ１０６に対するオペレータの指示によりコネクタＣ５を介して、フラッシュメモリ１１，１６に対するに書き込みの要求を出力する。ＭＣＵ３は、ＭＣＵ内蔵周辺Ｉ／Ｆポート２４から前記書き込みの要求を受けると、該要求に付随して与えられる書き込みデータをシステムバス１３を介してフラッシュメモリ１１に書き込む。或はオンチップフラッシュメモリ１６にプログラムを書き込む。
ロジックアナライザ１０７はコネクタＣ２を介してＭＣＭ１の内部信号プローブポート２８に接続される。内部信号プローブポート２８には、ＭＣＭ１の選択された内部信号が出力されており、ロジックアナライザ１０７は、該内部信号を常時取り込む。ロジックアナライザ１０７は、オペレータの指示により該ロジックアナライザ１０７のディスプレイに取りこまれた信号を表示する。
上述のように、ＭＣＭ１には電気的に書き換え可能なフラッシュッメモリ１１，１６と論理機能可変のＦＰＧＡ８を搭載したことにより、システムが小型になり、またそのため，動作周波数が高くなり、実際の製品と同じ状態で、ナビゲーションシステムのデバック、検証を行うことが可能になる。
第１５図にはＭＣＭ１を用いた自動車のナビゲーションシステムの外観が例示される。
本体１１０にはマザーボード４６上に構成された第１４図と同等に機能を備えたナビゲーションシステム基板とＤＶＤ−ＲＯＭドライブ１０４が格納され、操作スイッチ１０１とディスプレイ１０５が一体になったパネル部１１１は該本体１１０とケーブル１１２で接続され、ＧＰＳアンテナ１０３は前記本体１１０とケーブル１１３で接続され、電源回路１００は自動車のバッテリーから前記本体にケーブル１１４で接続され、エンジン制御部からの車速信号は前記本体１１０にケーブル１１５で接続される。
実製品では第１４図に示されるコネクタＣ２、コネクタＣ４，コネクタＣ５は使用しない。製品に適用する場合は、フラッシュメモリ１１、１６に予めプログラム情報を格納する。また、ＦＰＧＡ８は不揮発性のＦＰＧＡを用いるが、ＣＢＩＣ（Ｃｅｌｌ  Ｂａｓｅ  ＩＣ）にした半導体デバイスに置き換えるか、フラッシュメモリ１１からＦＰＧＡ８の論理機能定義データを書き込むようにするか、或はＭＣＵ３がＤＶＤ−ＲＯＭドライブ１０４からＦＰＧＡ８に書き込む論理機能定義データを読み出してＦＰＧＡ８に書込む構成にすればよい。フラッシュメモリ１１から、ＦＰＧＡ８に論理機能定義データ回路を書き込むには、ＦＰＧＡ８の動作モードをシステムバス１３から設定することで可能になる。また、ＤＶＤ−ＲＯＭドライブ１０４からＦＰＧＡ８に論理機能定義データを書き込む場合、ＦＰＧＡ８を介してＤＶＤ−ＲＯＭドライブ１０４をアクセスするため、直接書き込みを行うことはできないから、一旦フラッシュメモリ１１にＤＶＤ−ＲＯＭドライブ１０４から論理機能定義データを格納してから、ＦＰＧＡ８に書き込みを行なえばよい。
このように、ＤＶＤ−ＲＯＭドライブ１０４にフラッシュメモリ１１に書き込むプログラム情報、あるいはＦＰＧＡ８の論理機能定義データ、或はその両方を格納する事で、製品になった後でもハードウェアを含む仕様の変更や機能追加を行う事が可能になる。
第１６図には前記ＭＣＵ３の一例が示される。ＭＣＵ３は、内部バス１２０、ＣＰＵ１５、オンチップフラッシュメモリ（ＩＦＬＳＨ）１６、メモリバッファ１７、システムバスバッファ７３、フラッシュ制御ユニット（ＦＬＳＣＮＴ）１２１、及びＭＣＵ内蔵周辺回路１２２から成る。
前記ＣＰＵ１５は、内部バス１２０にメモリのアドレスを出力し、読込んだメモリ上のプログラムの命令に従って動作する。前記メモリバッファ１７は、該内部バス１２０に出力されたアドレスがメモリバス上のアドレスの場合、メモリバス上のメモリに対して読み出し、書き込みを行う。システムバスバッファ７３は、前記内部バスに出力されたアドレスがシステムバス上のアドレスの場合、システムバス上のデバイスに対して読み出し、書き込みを行う。前記フラッシュ制御ユニット（ＦＬＳＣＮＴ）１２１は、前記内部バスに出力されたアドレスがオンチップフラッシュメモリ１６のアドレスの場合、フラッシュッメモリ１６に対して読み出し、書き込みを行い、また、外部からのフラッシュメモリ制御信号がフラッシュメモリ１６に対して書き込み、読み出しを指示する場合、内部バス１２０を介してフラッシュメモリ１６に対して書き込み、読み出しを行う。前記ＭＣＵ内蔵周辺回路１２２は、外部からのＭＣＵ周辺インタフェース２４からの指示により、内部バスにアドレスとデータと読み出し、書き込みの指示を与える。
通常、ＣＰＵ１５は電源が供給されリセットが投入されるとフラッシュメモリ１６又はメモリバス上のメモリ或はシステムバス上の決まったアドレスからプログラムを読み出し動作を開始する。
オンチップフラッシュメモリ１６に対してプログラムを格納する場合は、プログラム端子１５からのフラッシュ制御により、ＭＣＵ３電源が供給されリセットが投入されたときＣＰＵ１５が動作せずにオンチップフラッシュメモリ１６に対して書き込み・読み出を可能にすることができる。
リセットを介してＣＰＵ１５が動作を開始した後、フラッシュメモリ１６に対して書き込みを行う場合には、ＣＰＵ１５から又はＭＣＵ３内蔵周辺のユニット１２２からフラッシュメモリ１６のアドレスを出力することで書き込みを行うことが可能である。
専用メモリバス１２への接続が不要なＭＣＵはメモリバッファ１７を省略すればよい。フラッシュメモリ１６をオンチップしない場合にはＦＬＳＨＣＮＴ１２１は不要である。
第１７図にはＦＰＧＡを内蔵するＭＣＵ３Ｇを例示する。同図のＭＣＵ３Ｇは、第１６図に対し、前記ＩＦＬＳＨ１６とＦＬＳＨＣＮＴ１２１の代わりに、ＦＰＧＡ１３０とＦＰＧＡＣＮＴ１３１を搭載して構成される点が相違される。ＣＰＵ１５は内部バス１２０にメモリのアドレスを出力し、読み込んだメモリ上のプログラムの命令に従って動作する。ＦＰＧＡ制御ユニット（ＦＰＧＡＣＮＴ）１３１は、前記内部バス１２０に出力されたアドレスがＦＰＧＡ１３０のアドレスの場合、ＦＰＧＡ１３０に対して読み出し、書き込みを行い、また、外部からプログラム端子２５を介するＦＰＧＡ制御がＦＰＧＡ１３０に対して書き込み、読み出しを指示する場合、内部バス１２０を介してＦＰＧＡ１３０に対して書き込み、読み出しを行う。
ＦＰＧＡ１３０に対して論理機能定義データを格納する場合は、制御端子２５からの設定により、電源が供給されてリセットされるときＣＰＵ１５が動作せずにＦＰＧＡ１３０に対して書き込みを行う事が出来るようになっている。書き込みが完了した時点で、リセットが解除され、ＦＰＧＡ１３０を含むシステム全体が動作を開始する。
ＣＰＵ１５が動作を開始した後、ＦＰＧＡ１３０に対して書き込みを行う場合には、ＣＰＵ１５から又はＭＣＵ内蔵周辺のユニット１２２からＦＰＧＡ１３０のアドレスを出力することで書き込みを行うことができる。ＦＰＧＡ１３０に対する書き込みを完了後、ＣＰＵ１５からの指示に応答してＦＰＧＡ１３０にアクティブ信号（図になし）をＦＰＧＡＣＮＴ１３１から与える事で、ＦＰＧＡ１３０は動作を開始することができる。
第１７図の構成によれば、ＦＰＧＡ１３０に所要の論理機能をプログラマブルに設定して動作させることができるから、実装基板上にＦＰＧＡ８を搭載した場合より、大幅に動作の高速化を図ることが可能になる。また、ＦＰＧＡ１３０に搭載される論理機能定義情報は任意に書き換えが可能なため、第１７図のようにＦＰＧＡ１３０をオンチップする方が秘匿性が高く、セキュリティ上望ましい。
第１８図にはＦＰＧＡとフラッシュメモリを内蔵するＭＣＵ３Ｈを例示する。ＭＣＵ３ＨにＦＰＧＡ１３０とフラッシュメモリ１６の双方をオンチップさせることも可能である。特に双方をオンチップすれば、オンチップフラッシュメモリ１６上にオンチップＦＰＧＡ１３０の論理機能定義情報を格納することができ、電源投入時に自動的にオンチップフラッシュメモリ１６からオンチップＦＰＧＡ１３０にその論理機能定義情報を書き込むことで、見かけ上オンチップＦＰＧＡ１３０の初期化を外部に見せないようにする事ができるという効果を得る。オンチップフラッシュメモリ１６と、オンチップＦＰＧＡ１３０を使ってデバッグを行ない、量産時にはオンチップフラッシュッメモリ１６をマスクＲＯＭに、オンチップＦＰＧＡ１３０を論理ゲート回路で構成したマイクロコントローラＭＣＵを採用しても、実装基板それ自体の変更は全く不用になる。第１図のようにＦＰＧＡをオンチップしない場合には、量産時にＦＰＧＡ８をＡＳＩＣに代えたとき、外部端子の電気的及び物理的構成にコンパチビリティーが無ければ、僅かであっても実装基板の修正が必要になる。
第１９図には特定の電子回路装置の開発計画から試作機（プロトシステム）を得るまでの概略的なフローチャートが示される。先ず、所望のシステムが企画され、その仕様が決る（Ｓ１）。これに基づいて、少なくともブロックダイアグラムによる機能ブロック図が得られる段階まで企画内容が明らかにされる（Ｓ２）。機能ブロックに対しては、ＲＴＬなどの論理記述言語でその周辺機能等のハードウェアを特定し、また、Ｃ言語などの高級言語でその機能を実現するためのＣＰＵの動作ログラムを作成する（Ｓ３）。電子回路装置の開発には例えば第１図で説明したＭＣＭ１を用いたプロトシステムでデバッグを行なう（Ｓ６）。ＭＣＭ１のＦＰＧＡには論理記述データに従って論理機能を設定する（Ｓ４）。ＭＣＵのオンチップフラッシュメモリにはプログラム記述に従って作成されたプログラムを書き込む（Ｓ５）。ＦＰＧＡによりデバッグ若しくは開発対象とする周辺機能が暫定的に実現され、オンチップフラッシュメモリによりソフトウェアで実現すべき機能が暫定的に特定される。このようにプログラムされたＭＣＭ１を用いたプロトシステムを実際に動作させてシステムデバッグ及びソフトウェアデバッグを行なう。デバッグ結果はオンチップフラッシュメモリやＦＰＧＡにフィードバッグし、デバッグを繰返しながらソフトウェア及びハードウェア的なバグをフィックスしていく。プロトシステムが完成した後、少量製品システムに対してはＭＣＭ１を用いて構成するのがよい。製品システムを提供してしばらくの間、ＭＣＭ１をそのまま利用すれば、万一後から不具合が明らかになっても、即座に製品システムに対処することが可能である。製品システムの量産数量の伸びに応じて、或はシステムの安定度を待って、ＦＰＧＡをＡＳＩＣ等で専用半導体デバイスとし、オンチップフラッシュメモリをマスクＲＯＭにすることも可能である。
尚、ＭＣＭ１には、アナログ回路の他に、可能ならば、センサ、アクチェータ、又は電源回路なども実装してよい。
以上本発明者によってなされた発明を実施例に基づいて具体的に説明したが本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えばＦＰＧＡの回路構成は第４図に限定されない。不揮発性メモリはフラッシュメモリに限定されず、強誘電体メモリであってもよい。その他、実装基板に搭載する半導体デバイスの種類及び回路構成は上記実施例に限定されず、適宜変更可能である。
第１図、第２図のような実施例では、高密度実装基板２が、複数の面実装構成の半導体デバイスを搭載可能なように構成されている。けれども、高密度実装基板２は、必要ならば、面実装構成の半導体デバイスと、コネクタワイヤにより電気結合を行ういわゆるワイヤボンディング構成の半導体デバイスとのいずれも搭載可能なように変更されて良い。すなわち、この場合には、高密度実装基板の主面には、面実装構成の半導体デバイスのための前述のようなバンプ電極と、ワイヤボンディング構成の半導体デバイスを成す半導体チップを接着固定するための接合領域と、半導体チップのボンディングパッドと対応されパッド電極とが設けられる。これにより、面実装構成の半導体デバイスのみでなく、所望のワイヤボンディング構成の半導体デバイスも利用可能なようになる。
システムのほとんどを１つの半導体デバイスとして１つのＬＳＩ（以下ワンチップＬＳＩとも称する）として構成する場合は、その設計、デバッグ等の検証を含む広い意味での設計に許容し得ない開発期間を要してしまう可能性を含むが、配線長、配線容量等も最少化可能であると言うＬＳＩ技術の特徴の享受の下で、より高速な電子回路装置の実現の可能性を持つ。これに対して、ＭＣＭ構成の電子回路装置は、前述の通り、短い期間内での設計を可能とするという注目すべき特徴を持ち、また通常のプリント配線基板上に各種半導体デバイスを実装するときのような全体構成が比較的大型になってしまう場合に比較して、電子回路装置をはるかにコンパクトにできる特徴も合わせ持つ。ＭＣＭ構成の電子回路装置は、そのようなコンパクト化可能な特徴に応じて、動作速度の高速化も可能である特徴を持つ。けれども、ＭＣＭ構成の電子回路装置は、ワンチップＬＳＩを使用する場合よりも、若干そのサイズが大型化してしまう可能性を含む。
前述の第１図、第５図、第６図の実施例のように、メモリバッファ７を持つマイクロコンピュータ３を構成する半導体チップを使用する構成は、ワンチップＬＳＩによって達成できる動作速度特性と対応できるような特性の電子回路装置を考慮する上で、充分に注目して良いものである。
メモリバッファ７は、高速信号伝送の上では、前述の各実施例のような構成に代えて、もしくは前述の実施例の構成に加えて、信号振幅を減少せしめることによる信号の高速化をもたらすように信号レベル変換機能を持つようにされても良く、更には差動信号ないしは相補信号伝送技術のような高速対応可能な信号形成構成にされても良い。
ＦＰＧＡを成す半導体デバイスに換えて、必要ならば、特定用途に向けられた専用論理回路と、ＦＰＧＡとを持つ半導体デバイスを設定することも可能である。すなわちＭＣＵ３とＦＰＧＡ８が１チップになっている半導体デバイスなどを設定することが可能である。ある種の特定用途の電子回路装置では、その特定用途の範囲内において、バーション変更などに対応してその都度変更が必要となる論理機能部分と、その特定用途に対応して固定的にされた論理機能部分とに分けることが可能である。そのような特定用途としては、画像データ処理用途、音声信号処理用途、エンジン制御を含むような自動車制御用途などの種々用途を例示することができる。そのような特定用途に対しては、上記のような専用論理回路とＦＰＧＡとを持つ半導体デバイスは好適となる。すなわち、ＦＰＧＡとして構成される論理機能部分の規模を小さくできることにより開発期間をより短くできる可能性を持つからである。また、論理構成定義データのための保持回路等を持たざるを得ないことによって実現可能な論理規模対回路素子数が大きいというＦＰＧＡの憂慮されがちな特徴にかかわらず、その種の可変スイッチセル、可変論理セル、保持回路を要さないでも必要とする論理機能を得ることができ回路素子数も少ないと言う専用論理回路の見るべき特徴によって、半導体デバイスのサイズを小さいものにすることができるからである。小さいサイズは、明らかに、充分な電気的性能を得ることを可能とし、また低価格化を可能とする。
産業上の利用可能性
本発明は、システムオンチップ化若しくはＭＣＭ化に至るシステム開発の早い段階においてデバッグやプロトシステムの実現に利用可能とされる電子回路装置、更には製品システムとして利用可能な電子回路装置等、ＭＣＭ化され或はＭＣＭを用いる電子回路装置に広く適用することができる。
【図面の簡単な説明】
第１図は本発明に係る電子回路装置の第１の実施例であるＭＣＭのブロック図である。
第２図には第１図のＭＣＭの断面構造を概略的に例示する縦断面図である。
第３図はＭＣＭの断面構造のうち多層配線層の詳細構造を例示する縦断面図である。
第４図はＦＰＧＡの詳細な一例を示すブロック図である。
第５図はＭＣＵにおけるメモリバッファの詳細な一例を示す回路図である。
第６図は本発明に係る電子回路装置の第２の実施例であるＭＣＭを例示するブロック図である。
第７図は本発明に係る電子回路装置の第３の実施例であるＭＣＭを例示するブロック図である。
第８図は本発明に係る電子回路装置の第４の実施例であるＭＣＭを例示するブロック図である。
第９図は本発明に係る電子回路装置の第５の実施例を示すブロック図である。
第１０図は本発明に係る電子回路装置の第６の実施例であるＭＣＭを例示するブロック図である。
第１１図は半導体デバイスが有するＪＴＡＧの構成を概略的に例示するブロック図である。
第１２図は半導体デバイスのバウンダリスキャン機能に呼応して設けられたＪＴＡＧユニットと半導体デバイスとの接続関係を中心として例示したＭＣＭのブロック図である。
第１３図は本発明に係る電子回路装置の第７の実施例であるＭＣＭを例示するブロック図である。
第１４図は第１図のＭＣＭを自動車のナビゲーションシステムのデバック装置に適用した構成を例示するブロック図である。
第１５図はＭＣＭを用いた自動車のナビゲーションシステムの概略的な外観図である。
第１６図はオンチップフラッシュメモリを有するＭＣＵを例示するブロック図である。
第１７図はＦＰＧＡを内蔵するＭＣＵを例示するブロック図である。
第１８図はＦＰＧＡとフラッシュメモリを内蔵するＭＣＵを例示するブロック図である。
第１９図は特定の電子回路装置の開発計画からプロトシステムを得るまでの概略的な開発手順を示すフローチャートである。
【図１】
2002057921.tif 000003
【図２】
2002057921.tif 000004
【図３】
2002057921.tif 000005
【図４】
2002057921.tif 000006
【図５】
2002057921.tif 000007
【図６】
2002057921.tif 000008
【図７】
2002057921.tif 000009
【図８】
2002057921.tif 000010
【図９】
2002057921.tif 000011
【図１０】
2002057921.tif 000012
【図１１】
2002057921.tif 000013
【図１２】
2002057921.tif 000014
【図１３】
2002057921.tif 000015
【図１４】
2002057921.tif 000016
【図１５】
2002057921.tif 000017
【図１６】
2002057921.tif 000018
【図１７】
2002057921.tif 000019
【図１８】
2002057921.tif 000020
【図１９】
2002057921.tif 000021
【国際調査報告】
2002057921.tif 000022
2002057921.tif 000023
2002057921.tif 000024