説明

マイクロコンピュータ

【課題】本発明は、少ピン型マイクロコンピュータのメモリの記憶データを外部に出力できるマイクロコンピュータを提供することを目的とする。
【解決手段】CPUとメモリと周辺回路を1つの半導体チップに搭載したマイクロコンピュータにおいて、テスト時にクロックをカウントしてアドレスを発生するカウンタ33と、テスト時に前記カウンタ33で発生したアドレスを前記メモリ12に供給するアドレススイッチ34−1〜34−15と、テスト時に前記メモリから前記アドレスにより読み出されたデータを複数ブロックに分割して、外部から供給されるモード信号で指示される1つのブロックの信号を外部端子から出力するセレクタ40とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はマイクロコンピュータに係り、1チップマイクロコンピュータに関する。
【背景技術】
【0002】
従来より、CPU、メモリ(RAM、ROM)、周辺LSI等の機能を1つの半導体チップに搭載した1チップマイクロコンピュータがある。
【0003】
上記のマイクロコンピュータには、アドレスバス及びデータバスを外部端子に導出している多ピン型マイクロコンピュータと、アドレスバス及びデータバスを外部端子に導出していない少ピン型マイクロコンピュータとがある。
【0004】
図6に従来の多ピン型マイクロコンピュータのテストの様子を示す。多ピン型マイクロコンピュータ1のROM1aの記憶データをテストする場合、マイクロコンピュータ1のアドレスバスの外部端子及びデータバスの外部端子をテスタ2のアドレスバスの外部端子A[15:0]及びデータバスの外部端子D[15:0]に接続する。
【0005】
そして、テスタ2からマイクロコンピュータ1のROM1aに読み出しアドレスを供給し、ROM1aからの読み出しデータをテスタ2に供給し、テスタ2において、上記読み出しデータを規格データ(ROM1aに書き込まれている元データ)と比較し、双方の一致/不一致を検出する。
【0006】
図7に従来の少ピン型マイクロコンピュータのテストの様子を示す。少ピン型マイクロコンピュータ3のROM3aの記憶データをテストする場合、マイクロコンピュータ3はアドレスバス及びデータバスの外部端子を持たないため、テスタ4から外部端子TESTを通してマイクロコンピュータ3のCPU3bにテスト指示信号を供給する。
【0007】
これにより、CPU3bはROM3aの一部に予め記憶されているテストプログラムを実行して、ROM3aからテスト対象の記憶データを順に読み出し、CPU3bにおいて各15ビットの読み出しデータを加算して総和を求める。
【0008】
その後、CPU3bはROM3aの一部に予め記憶されているサムデータを読み出して上記の総和と比較し、双方の一致/不一致を検出し、検出結果を汎用の外部端子GPIO0〜GPIO3のいずれかからテスタ4に供給する。
【0009】
なお、チャネルデータ設定回路に関する技術について公知文献を調査したが、これに対応する公知文献は発見できなかった。
【発明の開示】
【発明が解決しようとする課題】
【0010】
従来の少ピン型マイクロコンピュータのテストではROM3aに書き込まれているデータに誤りがあるか否かは判定できるものの、誤りがあった場合にROM3aのどのアドレスに誤りがあったのかを認識できない。このため、複数のマイクロコンピュータのROMで誤りが発生した場合に、製造過程のどの部分が原因となって誤りが発生したかを解析することができないという問題があった。
【0011】
本発明は、記の点に鑑みてなされたもので、少ピン型マイクロコンピュータのメモリの記憶データを外部に出力できるマイクロコンピュータを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の一実施態様によるマイクロコンピュータは、CPUとメモリと周辺回路を1つの半導体チップに搭載したマイクロコンピュータにおいて、
テスト時にクロックをカウントしてアドレスを発生するカウンタ(33)と、
テスト時に前記カウンタ(33)で発生したアドレスを前記メモリ(12)に供給するアドレススイッチ(34−1〜34−15)と、
テスト時に前記メモリ(12)から前記アドレスにより読み出されたデータを複数ブロックに分割して、外部から供給されるモード信号で指示される1つのブロックの信号を外部端子から出力するセレクタ(40)と、を有する。
【0013】
好ましくは、前記クロックを分周してリードイネーブル信号を生成するフリップフロップ(31)と、
テスト時に前記フリップフロップ(31)で生成したリードイネーブル信号を前記メモリ(12)に供給する信号スイッチ(32)と、を有する。
【0014】
好ましくは、前記カウンタ(33)は、タイマ(16)の一部である。
【0015】
好ましくは、前記メモリは、ROM(12)である。
【0016】
なお、上記括弧内の参照符号は、理解を容易にするために付したものであり、一例にすぎず、図示の態様に限定されるものではない。
【発明の効果】
【0017】
本発明によれば、少ピン型マイクロコンピュータのメモリの記憶データを外部に出力できる。
【発明を実施するための最良の形態】
【0018】
<マイクロコンピュータの全体構成>
図1は、本発明のマイクロコンピュータの一実施形態のブロック構成図を示す。同図中、マイクロコンピュータ10は、CPU11と、ROM12と、RAM13と、シリアル入出力回路(UART)14と、8ビットタイマ15と、16ビットタイマ16と、アナログ入力回路17と、汎用ポート回路18を有しており、上記のCPU11,ROM12,RAM13,シリアル入出力回路14,8ビットタイマ15,16ビットタイマ16,アナログ入出力回路17,汎用ポート回路18それぞれは内部のアドレスバス20及びデータバス21に接続されている。これらの回路及びバス11〜21は1チップの半導体基板上にまとめて形成されている。
【0019】
マイクロコンピュータ10の外部端子RXD,TXDは、シリアル入出力回路14に接続されており、通常時にはシリアル信号の入出力を行い、テスト時には2ビットのモード信号が図示しないテスタから入力される。
【0020】
外部端子TESTは、シリアル入出力回路14,16ビットタイマ16,汎用ポート回路18に接続されており、ローレベル(又は不定状態)で通常動作を指示し、ハイレベルでテスト動作を指示するテストモード信号が図示しないテスタから入力される。
【0021】
外部端子RSTは、CPU11,シリアル入出力回路14,8ビットタイマ15,16ビットタイマ16,汎用ポート回路18等の各回路に接続されており、リセット信号が入力される。
【0022】
外部端子SGは、アナログ入出力回路17に接続されており、アナログ信号が入出力される。
【0023】
外部端子GPIO0〜GPIO3は、汎用ポート回路18に接続されており、通常時には各種信号の入出力を行い、テスト時には4ビットの分割データの出力を行う。
【0024】
外部端子CLKは、CPU11,シリアル入出力回路14,8ビットタイマ15,16ビットタイマ16,汎用ポート回路18等の各回路に接続されており、外部クロック(システムクロック)が入力される。
【0025】
<ROMテスト時の動作>
図2は、ROMテスト時の動作を説明するためのブロック構成図を示す。同図中、16ビットタイマ16内のT型フリップフロップ31は、外部端子RSTから供給される図3(B)に示すリセット信号がローレベルとなってリセット解除されると、外部端子CLKから供給される図3(A)に示す外部クロックを1/2分周して図3(E)に示す信号とし、スイッチ(信号スイッチ)32及びカウンタ33に供給する。
【0026】
カウンタ33は、16ビットのカウンタであり、外部端子RSTから供給されるリセット信号がローレベルとなってリセット解除されると初期値を0とし、フリップフロップ31から供給されるクロックをカウントして下位15ビットのカウント値をスイッチ(アドレススイッチ)34−1〜34−15に供給する。図3(C)にカウンタ33のカウント値を示す。図中、「H'」は16進表示を示している。また、カウンタ33の16ビットのカウント値は比較回路35に供給される。
【0027】
スイッチ32,34−1〜34−15それぞれは、テストモード信号がハイレベルのテスト動作時にオンとなる。これにより、スイッチ32から図3(E)に示す信号がリードイネーブル信号(リード信号)としてROM12に供給される。また、スイッチ34−1〜34−15から図3(D)に示すカウンタ33の下位15ビットのカウント値がアドレスとして、アドレスバス20を通してROM12に供給される。
【0028】
なお、16ビットタイマ16は、比較回路35と、16ビットのレジスタ36を有しており、通常動作時にはカウンタ33のカウント値をレジスタ36に予め設定されている値と比較することで、所定時間となったときに比較回路35が一致信号を出力する。この一致信号はCPU11に供給される。
【0029】
テスト動作時には、リードイネーブル信号とアドレスがROM12に供給されることにより、ROM12からデータが読み出され、図3(F)に示すように、データバス21を通して汎用ポート回路18に供給される。
【0030】
汎用ポート回路18は、セレクタ40を有している。セレクタ40にはテスト動作時に外部端子TESTからのテストモード信号と、外部端子RXD,TXDからの2ビットのモード信号が供給される。
【0031】
セレクタ40は、図4の真理値表に示すように、テストモード信号が1(ハイレベル)であるとき、RXD=1,TXD=1のモードDであれば、データバス21の4ビットのdata[3:0]を外部端子GPIO0〜GPIO3に出力し、RXD=1,TXD=0のモードCであれば、データバス21の4ビットのdata[7:4]を外部端子GPIO0〜GPIO3に出力する。また、RXD=0,TXD=1のモードBであれば、データバス21の4ビットのdata[11:8]を外部端子GPIO0〜GPIO3に出力し、RXD=0,TXD=0のモードAであれば、データバス21の4ビットのdata[15:12]を外部端子GPIO0〜GPIO3に出力する。
【0032】
つまり、テスト動作時に、モードAであれば、図3(G)に示すように、ROM12出力の第0(LSB)〜第3ビットが外部端子GPIO0〜GPIO3から図示しないテスタに対して出力され、モードBであれば、図3(H)に示すように、ROM12出力の第4〜第7ビットが外部端子GPIO0〜GPIO3から出力される。また、モードCであれば、図3(I)に示すように、ROM12出力の第8〜第11ビットが外部端子GPIO0〜GPIO3から出力され、モードDであれば、図3(J)に示すように、ROM12出力の第12〜第15ビットが外部端子GPIO0〜GPIO3から出力される。
【0033】
図5は、テスト動作で実行するROM読み出し処理のフローチャートを示す。同図中、ステップS1でCPU11を停止させる。ステップS2〜S7でループ処理を行う。このループ処理では、モードをA,B,C,Dと順に変更する。
【0034】
ステップS3で16ビットタイマ16を起動し、ステップS4でROM11からデータを読み出し、読み出したデータのうちモードA,B,C,Dに応じた4ビットを外部端子GPIO0〜GPIO3から出力する。
【0035】
ROM12の最終アドレスまで読み出しを終了するとステップS5からステップS6に進み、16ビットタイマ16をリセットする。
【0036】
このようにして、ROM12の読み出しを4回繰り返して、ROM12から読み出したデータを全て出力する。
【0037】
上記実施形態によれば、ROM12の全てのアドレスから全てのデータを読み出すことができるため、テスタで各データを規格データ(ROM1aに書き込まれている元データ)と比較して誤りがあるか否かを判定でき、誤りがあった場合に、そのアドレスを認識することができる。このため、複数のマイクロコンピュータのROMで誤りが発生した場合に、製造過程のどの部分が原因となって誤りが発生したかを解析することができる。
【0038】
また、元々マイクロコンピュータに備えられている16ビットタイマ16を利用してROM12のアドレスとリードイネーブル信号を生成しているため、テスタでアドレスとリードイネーブル信号を生成する必要がなく、テストが容易になる。また、フリップフロップ31,スイッチ34−1〜34−15,セレクタ40を追加するだけの簡単な構成で上記のテストを実現できる。
【0039】
なお、上記実施形態ではROM12の読み出しをモードを切り替えて4回繰り返しているが、16ビットタイマ16が1つのアドレスを発生する間にモードをA,B,C,Dと4回切り替えて16ビットのデータを外部端子GPIO0〜GPIO3から4ビットずつ順に出力する構成としてもよい。
【図面の簡単な説明】
【0040】
【図1】本発明のマイクロコンピュータの一実施形態のブロック構成図である。
【図2】ROMテスト時の動作を説明するためのブロック構成図である。
【図3】図2の各部の信号タイミングチャートである。
【図4】セレクタ動作を説明するための真理値表を示す図である。
【図5】テスト動作で実行するROM読み出し処理のフローチャートである。
【図6】従来の多ピン型マイクロコンピュータのテストの様子を示す図である。
【図7】従来の少ピン型マイクロコンピュータのテストの様子を示す図である。
【符号の説明】
【0041】
10 マイクロコンピュータ
11 CPU
12 ROM
13 RAM
14 シリアル入出力回路
15 8ビットタイマ
16 16ビットタイマ
17 アナログ入力回路
18 汎用ポート回路
20 アドレスバス
21 データバス
31 フリップフロップ
32,34−1〜34−15 スイッチ
33 カウンタ
35 比較回路
36 レジスタ
40 セレクタ

【特許請求の範囲】
【請求項1】
CPUとメモリと周辺回路を1つの半導体チップに搭載したマイクロコンピュータにおいて、
テスト時にクロックをカウントしてアドレスを発生するカウンタと、
テスト時に前記カウンタで発生したアドレスを前記メモリに供給するアドレススイッチと、
テスト時に前記メモリから前記アドレスにより読み出されたデータを複数ブロックに分割して、外部から供給されるモード信号で指示される1つのブロックの信号を外部端子から出力するセレクタと、
を有することを特徴とするマイクロコンピュータ。
【請求項2】
請求項1記載のマイクロコンピュータにおいて、
前記クロックを分周してリードイネーブル信号を生成するフリップフロップと、
テスト時に前記フリップフロップで生成したリードイネーブル信号を前記メモリに供給する信号スイッチと、
を有することを特徴とするマイクロコンピュータ。
【請求項3】
請求項2記載のマイクロコンピュータにおいて、
前記カウンタは、タイマの一部である
ことを特徴とするマイクロコンピュータ。
【請求項4】
請求項3記載のマイクロコンピュータにおいて、
前記メモリは、ROMである
ことを特徴とするマイクロコンピュータ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2009−276921(P2009−276921A)
【公開日】平成21年11月26日(2009.11.26)
【国際特許分類】
【出願番号】特願2008−126210(P2008−126210)
【出願日】平成20年5月13日(2008.5.13)
【出願人】(000006220)ミツミ電機株式会社 (1,651)
【Fターム(参考)】