(57)【要約】【課題】本発明は、少ピン型マイクロコンピュータのメモリの記憶データを外部に出力できるマイクロコンピュータを提供することを目的とする。【解決手段】ＣＰＵとメモリと周辺回路を１つの半導体チップに搭載したマイクロコンピュータにおいて、テスト時にクロックをカウントしてアドレスを発生するカウンタ３３と、テスト時に前記カウンタ３３で発生したアドレスを前記メモリ１２に供給するアドレススイッチ３４−１〜３４−１５と、テスト時に前記メモリから前記アドレスにより読み出されたデータを複数ブロックに分割して、外部から供給されるモード信号で指示される１つのブロックの信号を外部端子から出力するセレクタ４０とを有する。【選択図】    図２
2009276921.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵとメモリと周辺回路を１つの半導体チップに搭載したマイクロコンピュータにおいて、
テスト時にクロックをカウントしてアドレスを発生するカウンタと、
テスト時に前記カウンタで発生したアドレスを前記メモリに供給するアドレススイッチと、
テスト時に前記メモリから前記アドレスにより読み出されたデータを複数ブロックに分割して、外部から供給されるモード信号で指示される１つのブロックの信号を外部端子から出力するセレクタと、
を有することを特徴とするマイクロコンピュータ。
【請求項２】
請求項１記載のマイクロコンピュータにおいて、
前記クロックを分周してリードイネーブル信号を生成するフリップフロップと、
テスト時に前記フリップフロップで生成したリードイネーブル信号を前記メモリに供給する信号スイッチと、
を有することを特徴とするマイクロコンピュータ。
【請求項３】
請求項２記載のマイクロコンピュータにおいて、
前記カウンタは、タイマの一部である
ことを特徴とするマイクロコンピュータ。
【請求項４】
請求項３記載のマイクロコンピュータにおいて、
前記メモリは、ＲＯＭである
ことを特徴とするマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はマイクロコンピュータに係り、１チップマイクロコンピュータに関する。
【背景技術】
【０００２】
従来より、ＣＰＵ、メモリ（ＲＡＭ、ＲＯＭ）、周辺ＬＳＩ等の機能を１つの半導体チップに搭載した１チップマイクロコンピュータがある。
【０００３】
上記のマイクロコンピュータには、アドレスバス及びデータバスを外部端子に導出している多ピン型マイクロコンピュータと、アドレスバス及びデータバスを外部端子に導出していない少ピン型マイクロコンピュータとがある。
【０００４】
図６に従来の多ピン型マイクロコンピュータのテストの様子を示す。多ピン型マイクロコンピュータ１のＲＯＭ１ａの記憶データをテストする場合、マイクロコンピュータ１のアドレスバスの外部端子及びデータバスの外部端子をテスタ２のアドレスバスの外部端子Ａ［１５：０］及びデータバスの外部端子Ｄ［１５：０］に接続する。
【０００５】
そして、テスタ２からマイクロコンピュータ１のＲＯＭ１ａに読み出しアドレスを供給し、ＲＯＭ１ａからの読み出しデータをテスタ２に供給し、テスタ２において、上記読み出しデータを規格データ（ＲＯＭ１ａに書き込まれている元データ）と比較し、双方の一致／不一致を検出する。
【０００６】
図７に従来の少ピン型マイクロコンピュータのテストの様子を示す。少ピン型マイクロコンピュータ３のＲＯＭ３ａの記憶データをテストする場合、マイクロコンピュータ３はアドレスバス及びデータバスの外部端子を持たないため、テスタ４から外部端子ＴＥＳＴを通してマイクロコンピュータ３のＣＰＵ３ｂにテスト指示信号を供給する。
【０００７】
これにより、ＣＰＵ３ｂはＲＯＭ３ａの一部に予め記憶されているテストプログラムを実行して、ＲＯＭ３ａからテスト対象の記憶データを順に読み出し、ＣＰＵ３ｂにおいて各１５ビットの読み出しデータを加算して総和を求める。
【０００８】
その後、ＣＰＵ３ｂはＲＯＭ３ａの一部に予め記憶されているサムデータを読み出して上記の総和と比較し、双方の一致／不一致を検出し、検出結果を汎用の外部端子ＧＰＩＯ０〜ＧＰＩＯ３のいずれかからテスタ４に供給する。
【０００９】
なお、チャネルデータ設定回路に関する技術について公知文献を調査したが、これに対応する公知文献は発見できなかった。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
従来の少ピン型マイクロコンピュータのテストではＲＯＭ３ａに書き込まれているデータに誤りがあるか否かは判定できるものの、誤りがあった場合にＲＯＭ３ａのどのアドレスに誤りがあったのかを認識できない。このため、複数のマイクロコンピュータのＲＯＭで誤りが発生した場合に、製造過程のどの部分が原因となって誤りが発生したかを解析することができないという問題があった。
【００１１】
本発明は、記の点に鑑みてなされたもので、少ピン型マイクロコンピュータのメモリの記憶データを外部に出力できるマイクロコンピュータを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の一実施態様によるマイクロコンピュータは、ＣＰＵとメモリと周辺回路を１つの半導体チップに搭載したマイクロコンピュータにおいて、
テスト時にクロックをカウントしてアドレスを発生するカウンタ（３３）と、
テスト時に前記カウンタ（３３）で発生したアドレスを前記メモリ（１２）に供給するアドレススイッチ（３４−１〜３４−１５）と、
テスト時に前記メモリ（１２）から前記アドレスにより読み出されたデータを複数ブロックに分割して、外部から供給されるモード信号で指示される１つのブロックの信号を外部端子から出力するセレクタ（４０）と、を有する。
【００１３】
好ましくは、前記クロックを分周してリードイネーブル信号を生成するフリップフロップ（３１）と、
テスト時に前記フリップフロップ（３１）で生成したリードイネーブル信号を前記メモリ（１２）に供給する信号スイッチ（３２）と、を有する。
【００１４】
好ましくは、前記カウンタ（３３）は、タイマ（１６）の一部である。
【００１５】
好ましくは、前記メモリは、ＲＯＭ（１２）である。
【００１６】
なお、上記括弧内の参照符号は、理解を容易にするために付したものであり、一例にすぎず、図示の態様に限定されるものではない。
【発明の効果】
【００１７】
本発明によれば、少ピン型マイクロコンピュータのメモリの記憶データを外部に出力できる。
【発明を実施するための最良の形態】
【００１８】
＜マイクロコンピュータの全体構成＞
図１は、本発明のマイクロコンピュータの一実施形態のブロック構成図を示す。同図中、マイクロコンピュータ１０は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、シリアル入出力回路（ＵＡＲＴ）１４と、８ビットタイマ１５と、１６ビットタイマ１６と、アナログ入力回路１７と、汎用ポート回路１８を有しており、上記のＣＰＵ１１，ＲＯＭ１２，ＲＡＭ１３，シリアル入出力回路１４，８ビットタイマ１５，１６ビットタイマ１６，アナログ入出力回路１７，汎用ポート回路１８それぞれは内部のアドレスバス２０及びデータバス２１に接続されている。これらの回路及びバス１１〜２１は１チップの半導体基板上にまとめて形成されている。
【００１９】
マイクロコンピュータ１０の外部端子ＲＸＤ，ＴＸＤは、シリアル入出力回路１４に接続されており、通常時にはシリアル信号の入出力を行い、テスト時には２ビットのモード信号が図示しないテスタから入力される。
【００２０】
外部端子ＴＥＳＴは、シリアル入出力回路１４，１６ビットタイマ１６，汎用ポート回路１８に接続されており、ローレベル（又は不定状態）で通常動作を指示し、ハイレベルでテスト動作を指示するテストモード信号が図示しないテスタから入力される。
【００２１】
外部端子ＲＳＴは、ＣＰＵ１１，シリアル入出力回路１４，８ビットタイマ１５，１６ビットタイマ１６，汎用ポート回路１８等の各回路に接続されており、リセット信号が入力される。
【００２２】
外部端子ＳＧは、アナログ入出力回路１７に接続されており、アナログ信号が入出力される。
【００２３】
外部端子ＧＰＩＯ０〜ＧＰＩＯ３は、汎用ポート回路１８に接続されており、通常時には各種信号の入出力を行い、テスト時には４ビットの分割データの出力を行う。
【００２４】
外部端子ＣＬＫは、ＣＰＵ１１，シリアル入出力回路１４，８ビットタイマ１５，１６ビットタイマ１６，汎用ポート回路１８等の各回路に接続されており、外部クロック（システムクロック）が入力される。
【００２５】
＜ＲＯＭテスト時の動作＞
図２は、ＲＯＭテスト時の動作を説明するためのブロック構成図を示す。同図中、１６ビットタイマ１６内のＴ型フリップフロップ３１は、外部端子ＲＳＴから供給される図３（Ｂ）に示すリセット信号がローレベルとなってリセット解除されると、外部端子ＣＬＫから供給される図３（Ａ）に示す外部クロックを１／２分周して図３（Ｅ）に示す信号とし、スイッチ（信号スイッチ）３２及びカウンタ３３に供給する。
【００２６】
カウンタ３３は、１６ビットのカウンタであり、外部端子ＲＳＴから供給されるリセット信号がローレベルとなってリセット解除されると初期値を０とし、フリップフロップ３１から供給されるクロックをカウントして下位１５ビットのカウント値をスイッチ（アドレススイッチ）３４−１〜３４−１５に供給する。図３（Ｃ）にカウンタ３３のカウント値を示す。図中、「Ｈ'」は１６進表示を示している。また、カウンタ３３の１６ビットのカウント値は比較回路３５に供給される。
【００２７】
スイッチ３２，３４−１〜３４−１５それぞれは、テストモード信号がハイレベルのテスト動作時にオンとなる。これにより、スイッチ３２から図３（Ｅ）に示す信号がリードイネーブル信号（リード信号）としてＲＯＭ１２に供給される。また、スイッチ３４−１〜３４−１５から図３（Ｄ）に示すカウンタ３３の下位１５ビットのカウント値がアドレスとして、アドレスバス２０を通してＲＯＭ１２に供給される。
【００２８】
なお、１６ビットタイマ１６は、比較回路３５と、１６ビットのレジスタ３６を有しており、通常動作時にはカウンタ３３のカウント値をレジスタ３６に予め設定されている値と比較することで、所定時間となったときに比較回路３５が一致信号を出力する。この一致信号はＣＰＵ１１に供給される。
【００２９】
テスト動作時には、リードイネーブル信号とアドレスがＲＯＭ１２に供給されることにより、ＲＯＭ１２からデータが読み出され、図３（Ｆ）に示すように、データバス２１を通して汎用ポート回路１８に供給される。
【００３０】
汎用ポート回路１８は、セレクタ４０を有している。セレクタ４０にはテスト動作時に外部端子ＴＥＳＴからのテストモード信号と、外部端子ＲＸＤ，ＴＸＤからの２ビットのモード信号が供給される。
【００３１】
セレクタ４０は、図４の真理値表に示すように、テストモード信号が１（ハイレベル）であるとき、ＲＸＤ＝１，ＴＸＤ＝１のモードＤであれば、データバス２１の４ビットのｄａｔａ［３：０］を外部端子ＧＰＩＯ０〜ＧＰＩＯ３に出力し、ＲＸＤ＝１，ＴＸＤ＝０のモードＣであれば、データバス２１の４ビットのｄａｔａ［７：４］を外部端子ＧＰＩＯ０〜ＧＰＩＯ３に出力する。また、ＲＸＤ＝０，ＴＸＤ＝１のモードＢであれば、データバス２１の４ビットのｄａｔａ［１１：８］を外部端子ＧＰＩＯ０〜ＧＰＩＯ３に出力し、ＲＸＤ＝０，ＴＸＤ＝０のモードＡであれば、データバス２１の４ビットのｄａｔａ［１５：１２］を外部端子ＧＰＩＯ０〜ＧＰＩＯ３に出力する。
【００３２】
つまり、テスト動作時に、モードＡであれば、図３（Ｇ）に示すように、ＲＯＭ１２出力の第０（ＬＳＢ）〜第３ビットが外部端子ＧＰＩＯ０〜ＧＰＩＯ３から図示しないテスタに対して出力され、モードＢであれば、図３（Ｈ）に示すように、ＲＯＭ１２出力の第４〜第７ビットが外部端子ＧＰＩＯ０〜ＧＰＩＯ３から出力される。また、モードＣであれば、図３（Ｉ）に示すように、ＲＯＭ１２出力の第８〜第１１ビットが外部端子ＧＰＩＯ０〜ＧＰＩＯ３から出力され、モードＤであれば、図３（Ｊ）に示すように、ＲＯＭ１２出力の第１２〜第１５ビットが外部端子ＧＰＩＯ０〜ＧＰＩＯ３から出力される。
【００３３】
図５は、テスト動作で実行するＲＯＭ読み出し処理のフローチャートを示す。同図中、ステップＳ１でＣＰＵ１１を停止させる。ステップＳ２〜Ｓ７でループ処理を行う。このループ処理では、モードをＡ，Ｂ，Ｃ，Ｄと順に変更する。
【００３４】
ステップＳ３で１６ビットタイマ１６を起動し、ステップＳ４でＲＯＭ１１からデータを読み出し、読み出したデータのうちモードＡ，Ｂ，Ｃ，Ｄに応じた４ビットを外部端子ＧＰＩＯ０〜ＧＰＩＯ３から出力する。
【００３５】
ＲＯＭ１２の最終アドレスまで読み出しを終了するとステップＳ５からステップＳ６に進み、１６ビットタイマ１６をリセットする。
【００３６】
このようにして、ＲＯＭ１２の読み出しを４回繰り返して、ＲＯＭ１２から読み出したデータを全て出力する。
【００３７】
上記実施形態によれば、ＲＯＭ１２の全てのアドレスから全てのデータを読み出すことができるため、テスタで各データを規格データ（ＲＯＭ１ａに書き込まれている元データ）と比較して誤りがあるか否かを判定でき、誤りがあった場合に、そのアドレスを認識することができる。このため、複数のマイクロコンピュータのＲＯＭで誤りが発生した場合に、製造過程のどの部分が原因となって誤りが発生したかを解析することができる。
【００３８】
また、元々マイクロコンピュータに備えられている１６ビットタイマ１６を利用してＲＯＭ１２のアドレスとリードイネーブル信号を生成しているため、テスタでアドレスとリードイネーブル信号を生成する必要がなく、テストが容易になる。また、フリップフロップ３１，スイッチ３４−１〜３４−１５，セレクタ４０を追加するだけの簡単な構成で上記のテストを実現できる。
【００３９】
なお、上記実施形態ではＲＯＭ１２の読み出しをモードを切り替えて４回繰り返しているが、１６ビットタイマ１６が１つのアドレスを発生する間にモードをＡ，Ｂ，Ｃ，Ｄと４回切り替えて１６ビットのデータを外部端子ＧＰＩＯ０〜ＧＰＩＯ３から４ビットずつ順に出力する構成としてもよい。
【図面の簡単な説明】
【００４０】
【図１】本発明のマイクロコンピュータの一実施形態のブロック構成図である。
【図２】ＲＯＭテスト時の動作を説明するためのブロック構成図である。
【図３】図２の各部の信号タイミングチャートである。
【図４】セレクタ動作を説明するための真理値表を示す図である。
【図５】テスト動作で実行するＲＯＭ読み出し処理のフローチャートである。
【図６】従来の多ピン型マイクロコンピュータのテストの様子を示す図である。
【図７】従来の少ピン型マイクロコンピュータのテストの様子を示す図である。
【符号の説明】
【００４１】
１０  マイクロコンピュータ
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  シリアル入出力回路
１５  ８ビットタイマ
１６  １６ビットタイマ
１７  アナログ入力回路
１８  汎用ポート回路
２０  アドレスバス
２１  データバス
３１  フリップフロップ
３２，３４−１〜３４−１５  スイッチ
３３  カウンタ
３５  比較回路
３６  レジスタ
４０  セレクタ
【図１】
2009276921.tif 000003
【図２】
2009276921.tif 000004
【図３】
2009276921.tif 000005
【図４】
2009276921.tif 000006
【図５】
2009276921.tif 000007
【図６】
2009276921.tif 000008
【図７】
2009276921.tif 000009