JPH0758320B2 - 情報処理装置の自己診断回路および自己診断方法 - Google Patents
情報処理装置の自己診断回路および自己診断方法Info
- Publication number
- JPH0758320B2 JPH0758320B2 JP3136285A JP13628591A JPH0758320B2 JP H0758320 B2 JPH0758320 B2 JP H0758320B2 JP 3136285 A JP3136285 A JP 3136285A JP 13628591 A JP13628591 A JP 13628591A JP H0758320 B2 JPH0758320 B2 JP H0758320B2
- Authority
- JP
- Japan
- Prior art keywords
- self
- clock signal
- circuit
- diagnosis
- synchronization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
- Testing Or Measuring Of Semiconductors Or The Like (AREA)
Description
【0001】
【産業上の利用分野】この発明は、マイクロ命令により
その動作が制御される情報処理装置の診断回路に関し、
特に被診断回路ブロックの交流(AC)動作性能の正確
な評価に有用な自己診断回路に関する。
その動作が制御される情報処理装置の診断回路に関し、
特に被診断回路ブロックの交流(AC)動作性能の正確
な評価に有用な自己診断回路に関する。
【0002】
【従来の技術】大規模LSI内の回路ブロック、例えば
ROMのためのテスト容易化技術の1つにセルフテスト
(自己診断)がある。このセルフテストは、テストデー
タを自己発生し、テスト結果を圧縮して解析するシグネ
チャ解析を基本としている。つまり線型帰還シフトレジ
スタ(LFSR)等のテストデータ発生回路が外部から
の指令にしたがってテストデータをテスト対象となる回
路ブロックに順次供給し、その回路ブロックからの出力
結果をLFSRからなるシグネチャ圧縮回路に格納して
シグネチャ圧縮する。このような一連の動作が終了する
と、シグネチャ圧縮されたテスト結果を予め用意してお
いた期待値と比較して良否を判定する。
ROMのためのテスト容易化技術の1つにセルフテスト
(自己診断)がある。このセルフテストは、テストデー
タを自己発生し、テスト結果を圧縮して解析するシグネ
チャ解析を基本としている。つまり線型帰還シフトレジ
スタ(LFSR)等のテストデータ発生回路が外部から
の指令にしたがってテストデータをテスト対象となる回
路ブロックに順次供給し、その回路ブロックからの出力
結果をLFSRからなるシグネチャ圧縮回路に格納して
シグネチャ圧縮する。このような一連の動作が終了する
と、シグネチャ圧縮されたテスト結果を予め用意してお
いた期待値と比較して良否を判定する。
【0003】このようなセルフテストが適用されたCI
SC(ComplexInstruction Set Computer) タイプのマ
イクロプロセッサとしては、例えば図8に示すように構
成されたものがある。
SC(ComplexInstruction Set Computer) タイプのマ
イクロプロセッサとしては、例えば図8に示すように構
成されたものがある。
【0004】同図において、セルフテスト対象回路ブロ
ック104、テスト結果を格納するシグネチャ圧縮回路
106、テストデータ発生回路105は内部バス101
に対し並列に接続されている。
ック104、テスト結果を格納するシグネチャ圧縮回路
106、テストデータ発生回路105は内部バス101
に対し並列に接続されている。
【0005】また、セルフテスト用マイクロプログラム
を格納するμROM102と、実行するプログラム命令
を格納するマイクロ命令レジスタ130およびマイクロ
命令レジスタ130内の命令をデコードするデコーダ1
03は直列に接続され、デコードされた命令は、セルフ
テスト対象回路ブロック104およびシグネチャ圧縮回
路106へ送られる。
を格納するμROM102と、実行するプログラム命令
を格納するマイクロ命令レジスタ130およびマイクロ
命令レジスタ130内の命令をデコードするデコーダ1
03は直列に接続され、デコードされた命令は、セルフ
テスト対象回路ブロック104およびシグネチャ圧縮回
路106へ送られる。
【0006】図8に示すマイクロプロセッサの構成にあ
っては、内部バス101を介して相互に接続され、μR
OM102内のセルフテスト用マイクロ命令プログラム
格納領域に格納されたセルフテスト用のマイクロ命令を
マイクロ命令デコーダ103によりデコードして得られ
る制御信号により制御される複数の回路ブロック104
は、これらの回路ブロック104と同様に内部バス10
1に接続されてマイクロ命令をデコードして得られる制
御信号により制御されるテストデータ発生回路105及
びシグネチャ圧縮回路106によってセルフテストされ
る。
っては、内部バス101を介して相互に接続され、μR
OM102内のセルフテスト用マイクロ命令プログラム
格納領域に格納されたセルフテスト用のマイクロ命令を
マイクロ命令デコーダ103によりデコードして得られ
る制御信号により制御される複数の回路ブロック104
は、これらの回路ブロック104と同様に内部バス10
1に接続されてマイクロ命令をデコードして得られる制
御信号により制御されるテストデータ発生回路105及
びシグネチャ圧縮回路106によってセルフテストされ
る。
【0007】このように、セルフテストに必要な構成要
素をテスト対象の回路ブロック104と同様にマイクロ
命令により制御可能とすることによって、テストに必要
な構成要素が増加することを防ぎ、多数の回路ブロック
に対する複数のセルフテストを系統的に実行できる。
素をテスト対象の回路ブロック104と同様にマイクロ
命令により制御可能とすることによって、テストに必要
な構成要素が増加することを防ぎ、多数の回路ブロック
に対する複数のセルフテストを系統的に実行できる。
【0008】しかしながら、一般的には通常動作用のマ
イクロ命令はテスト用として最適化されていないため、
それを用いて作られるテスト用として準備されるマイク
ロプログラムのステップ数はかなり大きな数となる。こ
れを回避するために、従来では図9に示すように構成さ
れたセルフテストを行なうマイクロプロセッサがある。
イクロ命令はテスト用として最適化されていないため、
それを用いて作られるテスト用として準備されるマイク
ロプログラムのステップ数はかなり大きな数となる。こ
れを回避するために、従来では図9に示すように構成さ
れたセルフテストを行なうマイクロプロセッサがある。
【0009】図9に示す構成にあっては、すべてのマイ
クロ命令をμROM107からマイクロ命令レジスタ1
08を介してマイクロ命令デコーダ109に与えて制御
信号を生成するのではなく、マイクロ命令の一部をマル
チプレクサ110によって選択されるカウンタ111か
ら与えられるようにしており、マルチプレクサ110及
びカウンタ111はセルフテスト制御回路112、セル
フテスト制御情報格納ROM113の出力によって制御
される。このような構成のマイクロプロセッサのテスト
に必要とされるプログラム数は、図8に示したマイクロ
プロセッサのそれより減少できるので、マイクロ命令制
御によるセルフテストの利点は最大限に発揮される。た
だし、セルフテストの制御信号を生成するための構成要
素の数は幾分増加する。
クロ命令をμROM107からマイクロ命令レジスタ1
08を介してマイクロ命令デコーダ109に与えて制御
信号を生成するのではなく、マイクロ命令の一部をマル
チプレクサ110によって選択されるカウンタ111か
ら与えられるようにしており、マルチプレクサ110及
びカウンタ111はセルフテスト制御回路112、セル
フテスト制御情報格納ROM113の出力によって制御
される。このような構成のマイクロプロセッサのテスト
に必要とされるプログラム数は、図8に示したマイクロ
プロセッサのそれより減少できるので、マイクロ命令制
御によるセルフテストの利点は最大限に発揮される。た
だし、セルフテストの制御信号を生成するための構成要
素の数は幾分増加する。
【0010】以下、本発明が解決しようとする従来技術
の問題点を説明する。最近では、超LSI内の各回路ブ
ロックに関する大量の評価データを効率的に収集可能な
評価機構の必要性が強く認識されるようになってきた。
こうした評価データのうち重要なものの一つに各回路ブ
ロックのAC動作(AC performance or AC speed)性能
がある。これの電源電圧、温度、プロセスパラメータ依
存性に関する十分な評価及び解析は、マイクロプロセッ
サの製造の歩留まりの向上やより高性能の次機種の開発
等を効率的に実現する上で大きな役割を果たす。
の問題点を説明する。最近では、超LSI内の各回路ブ
ロックに関する大量の評価データを効率的に収集可能な
評価機構の必要性が強く認識されるようになってきた。
こうした評価データのうち重要なものの一つに各回路ブ
ロックのAC動作(AC performance or AC speed)性能
がある。これの電源電圧、温度、プロセスパラメータ依
存性に関する十分な評価及び解析は、マイクロプロセッ
サの製造の歩留まりの向上やより高性能の次機種の開発
等を効率的に実現する上で大きな役割を果たす。
【0011】効率的なAC性能の評価という面から一般
のセルフテストを眺めてみると、セルフテスト機能を有
するマイクロプロセッサではテスト回路がオンチップ化
される必要から面積増加に対する厳しい制限(テスト制
御情報数の制限等)の影響を受ける。このため、各回路
ブロックに供給されるテストデータは必ずしもそのAC
性能を完全に評価できるものである保証はない。しか
し、一連のテストデータを自己発生後、テスト対象の回
路ブロックへ印加し得られた結果を1個のシグネチャに
よって判定するため、各回路ブロックの基本的なAC性
能を短時間で判定可能であり、上記の目的のために極め
て有効に利用可能である。なお、各回路ブロックのAC
性能測定は、通常の場合はシュムープロット(Shmoo pl
ot)の手法を利用してなされる(実施例の項で説明)。
のセルフテストを眺めてみると、セルフテスト機能を有
するマイクロプロセッサではテスト回路がオンチップ化
される必要から面積増加に対する厳しい制限(テスト制
御情報数の制限等)の影響を受ける。このため、各回路
ブロックに供給されるテストデータは必ずしもそのAC
性能を完全に評価できるものである保証はない。しか
し、一連のテストデータを自己発生後、テスト対象の回
路ブロックへ印加し得られた結果を1個のシグネチャに
よって判定するため、各回路ブロックの基本的なAC性
能を短時間で判定可能であり、上記の目的のために極め
て有効に利用可能である。なお、各回路ブロックのAC
性能測定は、通常の場合はシュムープロット(Shmoo pl
ot)の手法を利用してなされる(実施例の項で説明)。
【0012】しかしながら、動作速度の速いCISC型
の32ビットマイクロプロセッサで重要なマイクロ命令
制御セルフテストでは、以下で説明するように、セルフ
テスト制御部のAC性能を越える動作スピードを有する
セルフテスト対象回路ブロックのAC性能は測定不可
能、という根本的な理由から、通常のセルフテストとは
異なり、上記のAC性能測定にかなり深刻な制限が加わ
るという問題がある。しかしこの問題は、例えばメモリ
のセルフテストのような、テスト制御ロジックが比較的
単純な通常のセルフテストでは殆ど問題とならない。
の32ビットマイクロプロセッサで重要なマイクロ命令
制御セルフテストでは、以下で説明するように、セルフ
テスト制御部のAC性能を越える動作スピードを有する
セルフテスト対象回路ブロックのAC性能は測定不可
能、という根本的な理由から、通常のセルフテストとは
異なり、上記のAC性能測定にかなり深刻な制限が加わ
るという問題がある。しかしこの問題は、例えばメモリ
のセルフテストのような、テスト制御ロジックが比較的
単純な通常のセルフテストでは殆ど問題とならない。
【0013】しかしながら、マイクロ命令制御セルフテ
ストの場合、その実行制御を記述したテストマイクロ命
令プログラムは、一般に大規模なμROM内の一部に格
納されるため、セルフテストの実行速度がμROMのA
C性能により律速されるという問題が生じる。
ストの場合、その実行制御を記述したテストマイクロ命
令プログラムは、一般に大規模なμROM内の一部に格
納されるため、セルフテストの実行速度がμROMのA
C性能により律速されるという問題が生じる。
【0014】これを図10に示す。図10において、マ
イクロ命令制御セルフテストの最大動作周波数は、μR
OMのAC性能を越えられないため、各回路ブロックの
AC性能(真のAC性能は対応する棒の高さで表わされ
ている)は、図中の斜線で示された部分までしか確認で
きない。この結果、μROMより遅い回路ブロック1、
4は真のAC性能を測定できるが、その他の回路ブロッ
クでは真のAC性能が測定できないという問題がある。
イクロ命令制御セルフテストの最大動作周波数は、μR
OMのAC性能を越えられないため、各回路ブロックの
AC性能(真のAC性能は対応する棒の高さで表わされ
ている)は、図中の斜線で示された部分までしか確認で
きない。この結果、μROMより遅い回路ブロック1、
4は真のAC性能を測定できるが、その他の回路ブロッ
クでは真のAC性能が測定できないという問題がある。
【0015】特に、最近のCISCでは、μROMのビ
ット幅およびワード数は増加する傾向にあり、μROM
がセルフテスト対象の全ての回路ブロックの動作速度よ
り十分高速である、ということは困難になってきた。従
って、例えば図10の回路ブロック6のようにμROM
よりわずかに高速な回路ブロックが存在する可能性もあ
り、この場合、μROMを介して実行されるマイクロ命
令制御セルフテストでは高速の回路ブロックのテスト結
果を検出できない。このため、その回路ブロックをリフ
ァインしないまま次機種を開発してしまい、所望の性能
が得られない恐れが多分にある。また、μROMより低
速だがプロセスパラメータにAC性能が左右されやすい
回路ブロックがある場合も同様に問題である。
ット幅およびワード数は増加する傾向にあり、μROM
がセルフテスト対象の全ての回路ブロックの動作速度よ
り十分高速である、ということは困難になってきた。従
って、例えば図10の回路ブロック6のようにμROM
よりわずかに高速な回路ブロックが存在する可能性もあ
り、この場合、μROMを介して実行されるマイクロ命
令制御セルフテストでは高速の回路ブロックのテスト結
果を検出できない。このため、その回路ブロックをリフ
ァインしないまま次機種を開発してしまい、所望の性能
が得られない恐れが多分にある。また、μROMより低
速だがプロセスパラメータにAC性能が左右されやすい
回路ブロックがある場合も同様に問題である。
【0016】これに対して、BILBO(Built-In Log
ic BIock Observer)手法を拡張して、マイクロ命令レジ
スタ、テストデータ発生回路、シグネチャ圧縮器をスキ
ャン可能な構造とすることにより、逐次的にAC性能評
価を行なうことも不可能ではない。しかしながら、スキ
ャンデザインはシリアルデータ転送を基本とするため、
最近のマイクロプロセッサの内部バスに接続される多ビ
ット出力を有する多くの回路ブロックの故障診断を効率
的に実行していくのには時間がかかり過ぎるので全く適
していない。
ic BIock Observer)手法を拡張して、マイクロ命令レジ
スタ、テストデータ発生回路、シグネチャ圧縮器をスキ
ャン可能な構造とすることにより、逐次的にAC性能評
価を行なうことも不可能ではない。しかしながら、スキ
ャンデザインはシリアルデータ転送を基本とするため、
最近のマイクロプロセッサの内部バスに接続される多ビ
ット出力を有する多くの回路ブロックの故障診断を効率
的に実行していくのには時間がかかり過ぎるので全く適
していない。
【0017】このため従来は、マイクロ命令制御セルフ
テストを適用している回路ブロックに対して、どうして
も必要であれば、AC性能評価も含め、故障診断専用の
回路をセルフテスト用の回路と別に設けるようにしてい
た。しかも、この際、回路ブロックのAC性能の正確な
評価のためには、μROM内に診断用マイクロ命令プロ
グラムを格納しておく、といったオーバーヘッドの小さ
い手法を採用することはできない。このため、テストの
ための付加ハードウエアの増加および全体の複雑化を招
くという大きな問題点があった。
テストを適用している回路ブロックに対して、どうして
も必要であれば、AC性能評価も含め、故障診断専用の
回路をセルフテスト用の回路と別に設けるようにしてい
た。しかも、この際、回路ブロックのAC性能の正確な
評価のためには、μROM内に診断用マイクロ命令プロ
グラムを格納しておく、といったオーバーヘッドの小さ
い手法を採用することはできない。このため、テストの
ための付加ハードウエアの増加および全体の複雑化を招
くという大きな問題点があった。
【0018】さらに、回路ブロックの著しい高速化に対
し、現実のLSIテスターがこうした高速評価に対応困
難になりつつあるという深刻な問題もある。現状の最も
高速な部類に族する回路ブロックのアクセス時間10n
secを測定するためには100MHz で評価できるL
SIテスターが必要だが、極めて高価である上、測定精
度も必ずしも十分とは言えない。
し、現実のLSIテスターがこうした高速評価に対応困
難になりつつあるという深刻な問題もある。現状の最も
高速な部類に族する回路ブロックのアクセス時間10n
secを測定するためには100MHz で評価できるL
SIテスターが必要だが、極めて高価である上、測定精
度も必ずしも十分とは言えない。
【0019】
【発明が解決しようとする課題】以上説明したように、
従来のマイクロ命令制御セルフテスト、または、マイク
ロ命令制御ロジックを利用する故障診断では、セルフテ
ストまたは診断の対象となっている回路ブロックのAC
性能測定が、マイクロ命令制御ロジックのAC性能によ
り制約を受けることになる。また、非常に高速な回路ブ
ロックに対してはLSIテスターが対応困難となる。こ
のため、AC性能における十分な評価結果を得られるセ
ルフテストまたは診断を行なうことが極めて困難であっ
た。
従来のマイクロ命令制御セルフテスト、または、マイク
ロ命令制御ロジックを利用する故障診断では、セルフテ
ストまたは診断の対象となっている回路ブロックのAC
性能測定が、マイクロ命令制御ロジックのAC性能によ
り制約を受けることになる。また、非常に高速な回路ブ
ロックに対してはLSIテスターが対応困難となる。こ
のため、AC性能における十分な評価結果を得られるセ
ルフテストまたは診断を行なうことが極めて困難であっ
た。
【0020】そこで、この発明は、上記に鑑みてなされ
たものであり、その目的とするところは、構成の大型
化、複雑化を招くことなく、マイクロ命令制御される回
路ブロックのAC性能を十分に評価することができる情
報処理装置の診断回路を提供することにある。
たものであり、その目的とするところは、構成の大型
化、複雑化を招くことなく、マイクロ命令制御される回
路ブロックのAC性能を十分に評価することができる情
報処理装置の診断回路を提供することにある。
【0021】
【課題を解決するための手段】上記目的を達成するため
に、この発明の方法は、第一のクロックに従って、セル
フテスト用マイクロ命令が格納されたメモリ内からセル
フテスト用マイクロ命令を読み出し該命令をデコードす
る第一のステップと、前記第一のクロックに従って、前
記第一のステップでデコードされた命令に対応してテス
トデータをテストデータ発生回路から発生させ、テスト
対象の機能ブロックへ前記テストデータを供給するか、
前記機能ブロックの第一のタイプの機能ブロック内に保
持されているデータを出力させ、データ圧縮回路に供給
する第二のステップと、第二のクロックに従って、前記
第二のステップの結果、前記機能ブロックの第二のタイ
プの機能ブロックから出力されたテスト結果を前記デー
タ圧縮回路内へ読み込み該テストデータを圧縮するか、
前記機能ブロックの前記第一のタイプの機能ブロック内
に前記テストデータまたはそれより派生するデータを格
納する第三のステップからなり、通常動作時に外部から
前記機能ブロックの動作を制御する基本クロック周期
は、前記第一のクロックおよび前記第二のクロック周期
の1/N(N=2,3,…)倍であり、前記第二のクロ
ックの位相は前記第一のクロックより1周期未満の位相
分だけ遅れていることを特徴としている。
に、この発明の方法は、第一のクロックに従って、セル
フテスト用マイクロ命令が格納されたメモリ内からセル
フテスト用マイクロ命令を読み出し該命令をデコードす
る第一のステップと、前記第一のクロックに従って、前
記第一のステップでデコードされた命令に対応してテス
トデータをテストデータ発生回路から発生させ、テスト
対象の機能ブロックへ前記テストデータを供給するか、
前記機能ブロックの第一のタイプの機能ブロック内に保
持されているデータを出力させ、データ圧縮回路に供給
する第二のステップと、第二のクロックに従って、前記
第二のステップの結果、前記機能ブロックの第二のタイ
プの機能ブロックから出力されたテスト結果を前記デー
タ圧縮回路内へ読み込み該テストデータを圧縮するか、
前記機能ブロックの前記第一のタイプの機能ブロック内
に前記テストデータまたはそれより派生するデータを格
納する第三のステップからなり、通常動作時に外部から
前記機能ブロックの動作を制御する基本クロック周期
は、前記第一のクロックおよび前記第二のクロック周期
の1/N(N=2,3,…)倍であり、前記第二のクロ
ックの位相は前記第一のクロックより1周期未満の位相
分だけ遅れていることを特徴としている。
【0022】また、通常動作モードと自己診断モード下
で動作する複数の回路ブロックから構成された本発明の
情報処理装置は、通常動作モード時には外部より与えら
れる基本クロック信号をそのまま出力し、自己診断テス
トモード時には前記基本クロック信号のN倍(N=2,
3,…)の周期を有する第一のクロック信号と、該第一
のクロックより1周期未満の位相分遅れた第二のクロッ
ク信号とを出力するクロック信号発生手段と、通常動作
モード時には前記基本クロック信号に同期して動作し、
自己診断モード時には前記第一のクロック信号に同期し
て動作する自己診断用のマイクロ命令を格納するメモリ
手段と、通常動作モード時には前記基本クロック信号に
同期して動作し、自己診断モード時には前記第一のクロ
ック信号に同期して前記メモリ手段内の自己診断用のマ
イクロ命令を入力しデコードするデコード手段と、自己
診断モード時には前記第一のクロック信号に同期して前
記デコード手段から得られたデコード結果に従ってテス
トデータを作成するテストデータ発生手段と、通常動作
モード時には前記基本クロック信号に同期して動作し、
自己診断モード時には前記第二のクロック信号に同期し
て前記テストデータ発生手段内で作成されたテストデー
タを格納し、前記第一のクロック信号に同期して該回路
ブロック内のテストデータを出力する第一のタイプの回
路ブロックと、通常動作モード時には前記基本クロック
信号に同期して動作し、自己診断モード時には前記第一
のクロック信号に同期して供給される前記テストデータ
に対する出力データを出力する第二のタイプの回路ブロ
ックと、そして、自己診断モード時には前記第二のクロ
ック信号に同期して前記回路ブロックから出力されたテ
ストデータを入力し該回路ブロックの動作の診断を行な
うシグネチャ圧縮手段と、から構成されている。
で動作する複数の回路ブロックから構成された本発明の
情報処理装置は、通常動作モード時には外部より与えら
れる基本クロック信号をそのまま出力し、自己診断テス
トモード時には前記基本クロック信号のN倍(N=2,
3,…)の周期を有する第一のクロック信号と、該第一
のクロックより1周期未満の位相分遅れた第二のクロッ
ク信号とを出力するクロック信号発生手段と、通常動作
モード時には前記基本クロック信号に同期して動作し、
自己診断モード時には前記第一のクロック信号に同期し
て動作する自己診断用のマイクロ命令を格納するメモリ
手段と、通常動作モード時には前記基本クロック信号に
同期して動作し、自己診断モード時には前記第一のクロ
ック信号に同期して前記メモリ手段内の自己診断用のマ
イクロ命令を入力しデコードするデコード手段と、自己
診断モード時には前記第一のクロック信号に同期して前
記デコード手段から得られたデコード結果に従ってテス
トデータを作成するテストデータ発生手段と、通常動作
モード時には前記基本クロック信号に同期して動作し、
自己診断モード時には前記第二のクロック信号に同期し
て前記テストデータ発生手段内で作成されたテストデー
タを格納し、前記第一のクロック信号に同期して該回路
ブロック内のテストデータを出力する第一のタイプの回
路ブロックと、通常動作モード時には前記基本クロック
信号に同期して動作し、自己診断モード時には前記第一
のクロック信号に同期して供給される前記テストデータ
に対する出力データを出力する第二のタイプの回路ブロ
ックと、そして、自己診断モード時には前記第二のクロ
ック信号に同期して前記回路ブロックから出力されたテ
ストデータを入力し該回路ブロックの動作の診断を行な
うシグネチャ圧縮手段と、から構成されている。
【0023】
【作用】上記構成において、この発明は、診断動作時に
は、マイクロ命令制御手段は外部から供給される基本ク
ロック信号の周期のN(2以上の整数)倍の第一のクロ
ック信号のクロッサイクル数毎に動作して、通常動作時
の動作クロック限界周波数のN倍まで動作可能となり、
内部バスを介してあるいは直接被テスト回路ブロックへ
テストに関するデータを供給する回路ブロックの出力を
第一のクロック信号に同期して活性化し、内部バスを介
してあるいは直接被テスト回路ブロックからテスト結果
を受ける回路ブロックの入力を、第一のクロック信号よ
り基本クロック信号の1周期の位相分だけ遅れた第二の
クロック信号に同期して活性化して、マイクロ命令制御
により診断の対象となる複数の被テスト回路ブロックの
交流(AC)動作性能をマイクロ命令制御手段のそれの
N倍まで正確に評価できるようにしている。
は、マイクロ命令制御手段は外部から供給される基本ク
ロック信号の周期のN(2以上の整数)倍の第一のクロ
ック信号のクロッサイクル数毎に動作して、通常動作時
の動作クロック限界周波数のN倍まで動作可能となり、
内部バスを介してあるいは直接被テスト回路ブロックへ
テストに関するデータを供給する回路ブロックの出力を
第一のクロック信号に同期して活性化し、内部バスを介
してあるいは直接被テスト回路ブロックからテスト結果
を受ける回路ブロックの入力を、第一のクロック信号よ
り基本クロック信号の1周期の位相分だけ遅れた第二の
クロック信号に同期して活性化して、マイクロ命令制御
により診断の対象となる複数の被テスト回路ブロックの
交流(AC)動作性能をマイクロ命令制御手段のそれの
N倍まで正確に評価できるようにしている。
【0024】
【実施例】以下、図面を用いてこの発明の実施例を説明
する。
する。
【0025】図1はこの発明の第一実施例に係わる情報
処理装置の自己診断回路を含む情報処理装置の要部構成
を示す図である。
処理装置の自己診断回路を含む情報処理装置の要部構成
を示す図である。
【0026】図1では、本発明の本質を簡潔に表現する
ため、マイクロ命令制御部1、1種類の内部バス46、
およびこの内部バス46に接続されるRAM構造のレジ
スタファイル22、ALU41により構成され、1相の
システムクロックによって駆動される基本的なマイクロ
プロセッサを示しているが、本発明は、複数の内部バス
が存在し、また、より多くの回路ブロックが内部バスに
接続され、2相以上のシステムクロックにより駆動され
る場合等にも有効に適用できるものである。
ため、マイクロ命令制御部1、1種類の内部バス46、
およびこの内部バス46に接続されるRAM構造のレジ
スタファイル22、ALU41により構成され、1相の
システムクロックによって駆動される基本的なマイクロ
プロセッサを示しているが、本発明は、複数の内部バス
が存在し、また、より多くの回路ブロックが内部バスに
接続され、2相以上のシステムクロックにより駆動され
る場合等にも有効に適用できるものである。
【0027】まず、本実施例の構成を説明する前に、本
実施例のマイクロプロセッサ等の情報処理装置の動作モ
ードについて説明する。本実施例の情報処理装置は以下
に示す2種類の動作モードを有する。
実施例のマイクロプロセッサ等の情報処理装置の動作モ
ードについて説明する。本実施例の情報処理装置は以下
に示す2種類の動作モードを有する。
【0028】通常動作モード。情報処理装置が本来の
目的とする動作を行なう。
目的とする動作を行なう。
【0029】セルフテスト動作モード。情報処理装置
がマイクロ命令制御セルフテストを実行する(他のタイ
プのセルフテストを含んでいても良いが、本発明の要旨
には直接関係がないのでここでは省く)。
がマイクロ命令制御セルフテストを実行する(他のタイ
プのセルフテストを含んでいても良いが、本発明の要旨
には直接関係がないのでここでは省く)。
【0030】の動作モードに加え、スキャン動作モ
ードを有する情報処理装置も多いが、本発明とは独立し
て実施可能なため、ここでは議論しない。
ードを有する情報処理装置も多いが、本発明とは独立し
て実施可能なため、ここでは議論しない。
【0031】セルフテスト動作モードは、例えば外部か
らの適当なスタート信号の入力により適当なフリップフ
ロップ等(図中では省略)により保持される。このフリ
ップフロップの出力信号をTとすると、これらの動作モ
ードは例えば以下のように限定される。
らの適当なスタート信号の入力により適当なフリップフ
ロップ等(図中では省略)により保持される。このフリ
ップフロップの出力信号をTとすると、これらの動作モ
ードは例えば以下のように限定される。
【0032】T=0:通常動作モード T=1:セルフテスト動作モード 一般の情報処理装置は、外部リセット入力信号が活性化
されるとT=0となり、通常動作を開始する。最近のセ
ルフテスト機能を有する情報処理装置では、この信号と
他の適当な信号との組合せにより、T=1となってセル
フテストが開始され、セルフテストが終了したら自動的
にT=0となり、通常動作に復帰するような構成が一般
的になりつつある。
されるとT=0となり、通常動作を開始する。最近のセ
ルフテスト機能を有する情報処理装置では、この信号と
他の適当な信号との組合せにより、T=1となってセル
フテストが開始され、セルフテストが終了したら自動的
にT=0となり、通常動作に復帰するような構成が一般
的になりつつある。
【0033】次に、図1に示す情報処理装置の構成を詳
細に説明する。
細に説明する。
【0034】マイクロ命令制御ブロック1は、マイクロ
命令格納用ROM(μROM)11、そのアドレスレジ
スタ(RAR)12および出力レジスタ(MIR)13
を有している(マイクロ命令デコーダは図中では省
略)。μROM11はプリチャージタイプであるとして
おく。図1に示すマイクロプロセッサ内のレジスタファ
イル22は、現実の回路では1個であるが、本実施例で
は動作説明の必要上、データ供給回路グループ2、デー
タ受信回路グループ3内に別々のものとして示されてい
る。また、ALU41は、入力ラッチ23,24を入力
としている。ALU41の演算に伴う各種フラグの変化
はフラグレジスタ25に入力される。レジスタファイル
22の場合と同様、このフラグレジスタ25も動作説明
の必要上データ供給回路グループ2およびデータ受信回
路グループ3に示すように2カ所に描かれているが現実
の回路では1個である。本実施例では、これらレジスタ
ファイル22およびALU41がマイクロ命令制御セル
フテストの対象回路ブロックということになる。一般的
には、他にシフタ等の演算回路、ROMといったものを
含んでいるが、本発明に関しては上記二つの回路ブロッ
クと同様に扱える。
命令格納用ROM(μROM)11、そのアドレスレジ
スタ(RAR)12および出力レジスタ(MIR)13
を有している(マイクロ命令デコーダは図中では省
略)。μROM11はプリチャージタイプであるとして
おく。図1に示すマイクロプロセッサ内のレジスタファ
イル22は、現実の回路では1個であるが、本実施例で
は動作説明の必要上、データ供給回路グループ2、デー
タ受信回路グループ3内に別々のものとして示されてい
る。また、ALU41は、入力ラッチ23,24を入力
としている。ALU41の演算に伴う各種フラグの変化
はフラグレジスタ25に入力される。レジスタファイル
22の場合と同様、このフラグレジスタ25も動作説明
の必要上データ供給回路グループ2およびデータ受信回
路グループ3に示すように2カ所に描かれているが現実
の回路では1個である。本実施例では、これらレジスタ
ファイル22およびALU41がマイクロ命令制御セル
フテストの対象回路ブロックということになる。一般的
には、他にシフタ等の演算回路、ROMといったものを
含んでいるが、本発明に関しては上記二つの回路ブロッ
クと同様に扱える。
【0035】テストデータ発生回路21はROM、シフ
トレジスタ、LFSR等のテストデータを発生するため
の回路である。一般にテストデータ発生回路は、様々な
回路ブロックのテストに対応するため、複数のテストデ
ータ発生モードを有する構成にし、それらのモードをマ
イクロ命令から指定可能とすることもある。テストデー
タとしては、テスト対象回路ブロックのデータパス部を
検査するための狭義のテストデータの他に、マイクロ命
令シーケンス初期化のためのデータ(マイクロ命令のル
ープ数、テストデータ発生回路のテストデータ発生モー
ドおよび初期値、シグネチャ圧縮回路の初期値等)、各
種フラグの初期化のためのデータ等、がある。シグネチ
ャ圧縮回路31はテスト結果をシグネチャ圧縮する回路
(並列入力LFSR)である。
トレジスタ、LFSR等のテストデータを発生するため
の回路である。一般にテストデータ発生回路は、様々な
回路ブロックのテストに対応するため、複数のテストデ
ータ発生モードを有する構成にし、それらのモードをマ
イクロ命令から指定可能とすることもある。テストデー
タとしては、テスト対象回路ブロックのデータパス部を
検査するための狭義のテストデータの他に、マイクロ命
令シーケンス初期化のためのデータ(マイクロ命令のル
ープ数、テストデータ発生回路のテストデータ発生モー
ドおよび初期値、シグネチャ圧縮回路の初期値等)、各
種フラグの初期化のためのデータ等、がある。シグネチ
ャ圧縮回路31はテスト結果をシグネチャ圧縮する回路
(並列入力LFSR)である。
【0036】上記した構成の中で、マイクロ命令制御部
1の各々の回路を除く全ての回路ブロックは内部バス4
6に接続されており、内部バス46へのデータ出力は3
値出力の出力バッファ42〜45を介してなされる。こ
れらの回路ブロックのうちには初期化等のため、内部バ
ス46からデータ入力可能になっているものもあるが、
煩雑さを避けるため、本発明の説明にとって重要でない
ものは図示していない。上記の各回路ブロックまたは回
路構成要素のための制御信号や活性化信号は、MIR1
3から出力された命令をマイクロ命令デコーダ(図示せ
ず)によりデコードして生成される。これらの信号は通
常動作時またはセルフテスト動作時に、これら各回路ブ
ロックまたは回路構成要素に対しそのまま有効となる。
1の各々の回路を除く全ての回路ブロックは内部バス4
6に接続されており、内部バス46へのデータ出力は3
値出力の出力バッファ42〜45を介してなされる。こ
れらの回路ブロックのうちには初期化等のため、内部バ
ス46からデータ入力可能になっているものもあるが、
煩雑さを避けるため、本発明の説明にとって重要でない
ものは図示していない。上記の各回路ブロックまたは回
路構成要素のための制御信号や活性化信号は、MIR1
3から出力された命令をマイクロ命令デコーダ(図示せ
ず)によりデコードして生成される。これらの信号は通
常動作時またはセルフテスト動作時に、これら各回路ブ
ロックまたは回路構成要素に対しそのまま有効となる。
【0037】次に、セルフテスト動作を制御するクロッ
クタイミング動作について説明する。このクロックタイ
ミング動作によりμROM11のAC性能より高いAC
性能を有する回路ブロックのテストを正しく実行するこ
とが可能となる。このクロックタイミングを発生する1
つの例として以下にクロックタイミング発生回路5は、
セルフテスト動作モード信号T、リセット信号RESE
Tおよびシステムクロック(SCLK)を入力し、2種
類のクロック信号CLK1、CLK2を出力する。これ
らのクロック信号は、それぞれ後述の所定の回路ブロッ
ク等にそれぞれ対応するクロック供給線51,52を介
して供給される。T=0(通常動作モード)の時は、こ
れらのクロック出力は、システムクロック入力と同一周
期、同位相である(但し、1〜2段の論理ゲートに相当
する遅延は存在し、以下でも同様である)。一方、T=
1(セルフテスト動作モード)の時には、クロックCL
K1は、システムクロック(SCLK)の倍周期でその
エッジがSCLKの立ち上がりエッジに一致するクロッ
ク、クロックCLK2は、クロックCLK1の位相を反
転させたクロック信号となる。リセット信号RESET
は、セルフテスト開始時に、クロックの位相を確定させ
るためのものである。
クタイミング動作について説明する。このクロックタイ
ミング動作によりμROM11のAC性能より高いAC
性能を有する回路ブロックのテストを正しく実行するこ
とが可能となる。このクロックタイミングを発生する1
つの例として以下にクロックタイミング発生回路5は、
セルフテスト動作モード信号T、リセット信号RESE
Tおよびシステムクロック(SCLK)を入力し、2種
類のクロック信号CLK1、CLK2を出力する。これ
らのクロック信号は、それぞれ後述の所定の回路ブロッ
ク等にそれぞれ対応するクロック供給線51,52を介
して供給される。T=0(通常動作モード)の時は、こ
れらのクロック出力は、システムクロック入力と同一周
期、同位相である(但し、1〜2段の論理ゲートに相当
する遅延は存在し、以下でも同様である)。一方、T=
1(セルフテスト動作モード)の時には、クロックCL
K1は、システムクロック(SCLK)の倍周期でその
エッジがSCLKの立ち上がりエッジに一致するクロッ
ク、クロックCLK2は、クロックCLK1の位相を反
転させたクロック信号となる。リセット信号RESET
は、セルフテスト開始時に、クロックの位相を確定させ
るためのものである。
【0038】クロックタイミング発生回路5は、例えば
図2に示すような簡単な回路で構成されている。図2に
おいて、D型のフリップフロップ61はリセット入力付
のフリップフロップであり、2入力のマルチプレクサ6
2,63はセルフテスト入力信号T=0,1の時にそれ
ぞれ“0”,“1”と示された側の入力を選択的に出力
する。すなわち、T=0でシステムクロックが選択出力
され、T=1でフリップフロップ61の出力が選択出力
される。このような回路では、通常動作時のためのクロ
ックディレイは、論理ゲート1段分程度であり、情報処
理装置の通常動作時の性能をあまり損なわないので無視
できる。
図2に示すような簡単な回路で構成されている。図2に
おいて、D型のフリップフロップ61はリセット入力付
のフリップフロップであり、2入力のマルチプレクサ6
2,63はセルフテスト入力信号T=0,1の時にそれ
ぞれ“0”,“1”と示された側の入力を選択的に出力
する。すなわち、T=0でシステムクロックが選択出力
され、T=1でフリップフロップ61の出力が選択出力
される。このような回路では、通常動作時のためのクロ
ックディレイは、論理ゲート1段分程度であり、情報処
理装置の通常動作時の性能をあまり損なわないので無視
できる。
【0039】なお、このようなクロックタイミング発生
回路5は、クロック入力信号がバッファ回路によって増
幅される前の位置に付加すると無理がなく望ましい。ま
た本実施例の、図1の中の全ての回路ブロックは、常に
各クロック入力の立ち上がりエッジに同期して変化する
ものとしておく。
回路5は、クロック入力信号がバッファ回路によって増
幅される前の位置に付加すると無理がなく望ましい。ま
た本実施例の、図1の中の全ての回路ブロックは、常に
各クロック入力の立ち上がりエッジに同期して変化する
ものとしておく。
【0040】この発明の目的は、上記のようなクロック
信号を有効に活用して、セルフテスト動作時に、マイク
ロ命令制御セルフテストの対象である各回路ブロックの
AC性能を、マイクロ命令制御部1のそれを実用上十分
に越える領域まで測定可能とすることである。本実施例
の場合、セルフテスト時、マイクロ命令制御部1に通常
動作のためのシステムクロックの倍周期のクロックCL
K1を供給して、マイクロ命令制御部1内の大規模回路
ブロック(即ち、μROM11)の動作タイミング条件
を通常動作時の1/2まで緩和する。一方、マイクロ命
令制御部1以外のセルフテスト対象回路ブロック、例え
ば、レジスタファイル22およびALU41について
は、通常動作時と同様の動作タイミング条件が保持され
るようにクロックCLK1(テストデータ及びマイクロ
命令の供給タイミングを規定),CLK2(テスト結果
の格納タイミングを規定)を供給することにより、それ
ら回路ブロックのAC性能をマイクロ命令制御部1の最
大AC性能の2倍まで測定できるようにしている。ま
た、本実施例では、最も容易に実現可能なものとしてシ
ステムクロックの倍周期を選択しているが、これによっ
てもμROM11の2倍までのAC性能が測定可能であ
り、実用上の目的は十分達成される(図10参照)。
信号を有効に活用して、セルフテスト動作時に、マイク
ロ命令制御セルフテストの対象である各回路ブロックの
AC性能を、マイクロ命令制御部1のそれを実用上十分
に越える領域まで測定可能とすることである。本実施例
の場合、セルフテスト時、マイクロ命令制御部1に通常
動作のためのシステムクロックの倍周期のクロックCL
K1を供給して、マイクロ命令制御部1内の大規模回路
ブロック(即ち、μROM11)の動作タイミング条件
を通常動作時の1/2まで緩和する。一方、マイクロ命
令制御部1以外のセルフテスト対象回路ブロック、例え
ば、レジスタファイル22およびALU41について
は、通常動作時と同様の動作タイミング条件が保持され
るようにクロックCLK1(テストデータ及びマイクロ
命令の供給タイミングを規定),CLK2(テスト結果
の格納タイミングを規定)を供給することにより、それ
ら回路ブロックのAC性能をマイクロ命令制御部1の最
大AC性能の2倍まで測定できるようにしている。ま
た、本実施例では、最も容易に実現可能なものとしてシ
ステムクロックの倍周期を選択しているが、これによっ
てもμROM11の2倍までのAC性能が測定可能であ
り、実用上の目的は十分達成される(図10参照)。
【0041】具体的には、各回路ブロックのAC性能
は、実行周波数(システムクロックの周波数)を小刻み
に変化させてセルフテストを実行し、Pass/Fai
lの判定を行なうことにより、いわゆるシュムープロッ
ト(Shmoo plot)を作成し、これを解析することにより
容易に測定できる。また、電源電圧をパラメータとして
変化させつつシュムープロットを描くと、AC性能の電
源電圧への依存性も観測できる。
は、実行周波数(システムクロックの周波数)を小刻み
に変化させてセルフテストを実行し、Pass/Fai
lの判定を行なうことにより、いわゆるシュムープロッ
ト(Shmoo plot)を作成し、これを解析することにより
容易に測定できる。また、電源電圧をパラメータとして
変化させつつシュムープロットを描くと、AC性能の電
源電圧への依存性も観測できる。
【0042】このような測定を実現するためには、マイ
クロ命令制御部1以外のセルフテスト対象回路ブロック
は2種類のグループに分類されることになる。即ち、デ
ータ供給回路グループ2、およびデータ受信回路グルー
プ3である。データ供給回路グループ2は、通常動作時
に「データ」を1システムクロックで内部バス46また
は各回路ブロックを介してデータ受信回路グループ3の
いずれかに供給する。従って、セルフテスト時もこのタ
イミング関係が維持されている必要がある。
クロ命令制御部1以外のセルフテスト対象回路ブロック
は2種類のグループに分類されることになる。即ち、デ
ータ供給回路グループ2、およびデータ受信回路グルー
プ3である。データ供給回路グループ2は、通常動作時
に「データ」を1システムクロックで内部バス46また
は各回路ブロックを介してデータ受信回路グループ3の
いずれかに供給する。従って、セルフテスト時もこのタ
イミング関係が維持されている必要がある。
【0043】上記の「データ」については、各回路ブロ
ックのテストデータとテスト結果のデータの2種類存在
することになる。例えば、テストデータ発生回路21は
テストデータ供給回路グループ2に含まれる。一方、レ
ジスタファイル22およびフラグレジスタ25は、テス
ト結果が格納されるという点からはデータ受信回路グル
ープ3に含まれるが、さらにそのテスト結果をシグネチ
ャ圧縮回路3に供給できる点から見るとデータ供給回路
グループ2に含まれる。このため、これらの回路ブロッ
クは図1中で両方の回路グループに描かれる結果となっ
ている。このことは、既に説明した。
ックのテストデータとテスト結果のデータの2種類存在
することになる。例えば、テストデータ発生回路21は
テストデータ供給回路グループ2に含まれる。一方、レ
ジスタファイル22およびフラグレジスタ25は、テス
ト結果が格納されるという点からはデータ受信回路グル
ープ3に含まれるが、さらにそのテスト結果をシグネチ
ャ圧縮回路3に供給できる点から見るとデータ供給回路
グループ2に含まれる。このため、これらの回路ブロッ
クは図1中で両方の回路グループに描かれる結果となっ
ている。このことは、既に説明した。
【0044】ここで、通常動作時に用いられるシステム
クロックSCLKがクロック供給線53を介してデータ
供給回路グループ2、データ受信回路グループ3のいず
れにも供給されている。これは、これらの回路グループ
中のプリチャージタイプのテスト対象回路ブロック(例
えばレジスタファイル22)に供給されるもので、セル
フテスト時でもこれら回路ブロックを通常動作時と同じ
タイミング条件でプリチャージし、その通常動作時のA
C性能評価を可能とするためである。但し、クロックC
LK1、CLK2とのクロックスキュー(タイムラグ)
を抑える必要があれば、適当な遅延素子等を付加するこ
ともある。
クロックSCLKがクロック供給線53を介してデータ
供給回路グループ2、データ受信回路グループ3のいず
れにも供給されている。これは、これらの回路グループ
中のプリチャージタイプのテスト対象回路ブロック(例
えばレジスタファイル22)に供給されるもので、セル
フテスト時でもこれら回路ブロックを通常動作時と同じ
タイミング条件でプリチャージし、その通常動作時のA
C性能評価を可能とするためである。但し、クロックC
LK1、CLK2とのクロックスキュー(タイムラグ)
を抑える必要があれば、適当な遅延素子等を付加するこ
ともある。
【0045】なお、上記のようなマイクロ命令制御部1
のロジック、例えばμROM11に対するAC動作タイ
ミング条件の緩和は、単に論理的なレベルのみでなく、
回路的なレベルまで考慮する必要がある。例えば、本実
施例ではμROM11はプリチャージタイプであるが、
この場合、単にテストモード時にRAR12を2システ
ムサイクル毎にカウントアップさせるだけでは、通常動
作時に供給されるシステムクロックSCLKをテストモ
ード時にμROM11のシステムクロックSCLKの2
サイクル毎のLow レベル期間内にμROM11からテス
ト命令を読み出そうとしても動作タイミング条件は通常
動作時と変わらないため、通常動作時の最大動作周波数
を超えて動作させようとすれば、やはりアクセス時間の
不足により、μROM11が正常動作できなくなってし
まう。したがって、システムクロックSCLKを基本ク
ロックとした場合に、このμROM11を通常動作時の
AC性能を越えて動作させるためには、システムクロッ
クの倍周期のクロックCLK1をクロックタイミング発
生回路5で生成しμROM11へ供給する必要がある。
のロジック、例えばμROM11に対するAC動作タイ
ミング条件の緩和は、単に論理的なレベルのみでなく、
回路的なレベルまで考慮する必要がある。例えば、本実
施例ではμROM11はプリチャージタイプであるが、
この場合、単にテストモード時にRAR12を2システ
ムサイクル毎にカウントアップさせるだけでは、通常動
作時に供給されるシステムクロックSCLKをテストモ
ード時にμROM11のシステムクロックSCLKの2
サイクル毎のLow レベル期間内にμROM11からテス
ト命令を読み出そうとしても動作タイミング条件は通常
動作時と変わらないため、通常動作時の最大動作周波数
を超えて動作させようとすれば、やはりアクセス時間の
不足により、μROM11が正常動作できなくなってし
まう。したがって、システムクロックSCLKを基本ク
ロックとした場合に、このμROM11を通常動作時の
AC性能を越えて動作させるためには、システムクロッ
クの倍周期のクロックCLK1をクロックタイミング発
生回路5で生成しμROM11へ供給する必要がある。
【0046】次に、上記のようなクロックの構成および
セルフテスト(T=1で実行)の組合せにより、具体的
にどのように各回路ブロックのAC性能の実用上十分正
確な測定が実施できるかについて、図3及び図4を参照
して説明する。
セルフテスト(T=1で実行)の組合せにより、具体的
にどのように各回路ブロックのAC性能の実用上十分正
確な測定が実施できるかについて、図3及び図4を参照
して説明する。
【0047】図3はレジスタファイル(RAM)22の
セルフテストの動作のタイミングチャートを示す図であ
る。
セルフテストの動作のタイミングチャートを示す図であ
る。
【0048】図3において、システムクロックSCLK
の周波数は既に通常動作時(1システムクロックサイク
ルで1回の読み出し)のμROM11のAC性能限界を
越えている(t1 <t2 であるため)。即ち正しく読み
出されない。しかし、本実施例では、システムクロック
SCLKの倍周期のクロックCLK1がμROM11に
は供給され、2システムクロックサイクルで1回の読み
出しを行なえるように動作条件が緩和されている。この
結果、MIR13の内容は2システムクロック単位で出
力されるよう正しく変更されている。
の周波数は既に通常動作時(1システムクロックサイク
ルで1回の読み出し)のμROM11のAC性能限界を
越えている(t1 <t2 であるため)。即ち正しく読み
出されない。しかし、本実施例では、システムクロック
SCLKの倍周期のクロックCLK1がμROM11に
は供給され、2システムクロックサイクルで1回の読み
出しを行なえるように動作条件が緩和されている。この
結果、MIR13の内容は2システムクロック単位で出
力されるよう正しく変更されている。
【0049】図3において、最初のクロックCLK1を
基準にした4サイクル内では、テストデータ発生回路
(TDG)21からクロックCLK1に同期して発生さ
れた適当なテストデータ(D0〜D3)が、レジスタフ
ァイル22の0〜3番地のレジスタ(R(0)〜R
(3))内にクロックCLK1よりシステムクロックS
CLKの1サイクル分だけ遅れたクロックCLK2に同
期して書き込まれる。次に、クロックCLK1を基準に
した第5、第6サイクルでは、テストデータが正しく書
き込まれたかを調べるため、レジスタファイル22の内
容(テスト結果)がクロックCLK1に同期して内部バ
ス46に読出され、クロックCLK2に同期してシグネ
チャ圧縮回路(LFSR)31で圧縮される。
基準にした4サイクル内では、テストデータ発生回路
(TDG)21からクロックCLK1に同期して発生さ
れた適当なテストデータ(D0〜D3)が、レジスタフ
ァイル22の0〜3番地のレジスタ(R(0)〜R
(3))内にクロックCLK1よりシステムクロックS
CLKの1サイクル分だけ遅れたクロックCLK2に同
期して書き込まれる。次に、クロックCLK1を基準に
した第5、第6サイクルでは、テストデータが正しく書
き込まれたかを調べるため、レジスタファイル22の内
容(テスト結果)がクロックCLK1に同期して内部バ
ス46に読出され、クロックCLK2に同期してシグネ
チャ圧縮回路(LFSR)31で圧縮される。
【0050】このように、セルフテスト時には、常にク
ロックCLK1に同期してMIR13の出力の切替りお
よびデータ供給回路グループ2に属する回路ブロックか
らのデータの供給が行なわれる。一方、クロックCLK
1よりシステムクロックSCLKの1サイクル分だけ遅
れたクロックCLK2に同期してデータの受取りがなさ
れるため、マイクロ命令制御部1のAC的な動作条件は
1/2に緩和され、各回路ブロックのAC性能がμRO
M11の限界AC性能を越えて、その2倍まで評価でき
ることになる。
ロックCLK1に同期してMIR13の出力の切替りお
よびデータ供給回路グループ2に属する回路ブロックか
らのデータの供給が行なわれる。一方、クロックCLK
1よりシステムクロックSCLKの1サイクル分だけ遅
れたクロックCLK2に同期してデータの受取りがなさ
れるため、マイクロ命令制御部1のAC的な動作条件は
1/2に緩和され、各回路ブロックのAC性能がμRO
M11の限界AC性能を越えて、その2倍まで評価でき
ることになる。
【0051】図4はALU41のADCS命令における
セルフテストのタイミングチャートを示す図である。A
DCS命令は、フラグレジスタ25の状態変更を伴うキ
ャリー付き加算(ADdition with Carry withflag Stare
)の命令である。従って、フラグの内容が変化する場
合をチェックする必要がある。このため、クロックCL
K1を基準にした第一サイクル目ではフラグレジスタ
(FLAG)25の内容を初期化するため、テスト発生
回路(TDG)21から初期化データDFが書き込まれ
る。その後、第二、第三サイクル目でALU41の2個
の入力ラッチ23,24(LAT1、LAT2)にテス
トデータ(D0、D1)が書き込まれる。
セルフテストのタイミングチャートを示す図である。A
DCS命令は、フラグレジスタ25の状態変更を伴うキ
ャリー付き加算(ADdition with Carry withflag Stare
)の命令である。従って、フラグの内容が変化する場
合をチェックする必要がある。このため、クロックCL
K1を基準にした第一サイクル目ではフラグレジスタ
(FLAG)25の内容を初期化するため、テスト発生
回路(TDG)21から初期化データDFが書き込まれ
る。その後、第二、第三サイクル目でALU41の2個
の入力ラッチ23,24(LAT1、LAT2)にテス
トデータ(D0、D1)が書き込まれる。
【0052】ALU41の演算結果、即ち和(Sum)
およびフラグ(Flag)は、それぞれクロックCLK
2に同期して動作するシグネチャ圧縮回路(LFSR)
31およびフラグレジスタ25に演算の1システムサイ
クル後に格納される(前者ではシグネチャ圧縮も同時に
行なわれる)。さらに、この1システムサイクル後、フ
ラグレジスタ25の内容が内部バス46に読出され、シ
グネチャ圧縮回路(LFSR)31に圧縮される。
およびフラグ(Flag)は、それぞれクロックCLK
2に同期して動作するシグネチャ圧縮回路(LFSR)
31およびフラグレジスタ25に演算の1システムサイ
クル後に格納される(前者ではシグネチャ圧縮も同時に
行なわれる)。さらに、この1システムサイクル後、フ
ラグレジスタ25の内容が内部バス46に読出され、シ
グネチャ圧縮回路(LFSR)31に圧縮される。
【0053】したがって、回路ブロック(ALU41)
のAC性能(フラグチェックも含む)は、μROMの動
作速度の2倍まで測定可能である。なお、テストデータ
発生回路(TDG)21は、厳密には、フラグの初期化
用(ROMが適当)とデータパス検査用(LFSR等が
適当)とで異なっている方がテストの実施の上から望ま
しいが、本発明の要旨とは直接関係がないので、テスト
データ発生回路を特に2種類に分けていない。
のAC性能(フラグチェックも含む)は、μROMの動
作速度の2倍まで測定可能である。なお、テストデータ
発生回路(TDG)21は、厳密には、フラグの初期化
用(ROMが適当)とデータパス検査用(LFSR等が
適当)とで異なっている方がテストの実施の上から望ま
しいが、本発明の要旨とは直接関係がないので、テスト
データ発生回路を特に2種類に分けていない。
【0054】次に、本発明の第2実施例である自己診断
回路を有する情報処理装置を図5を用いて説明する。
回路を有する情報処理装置を図5を用いて説明する。
【0055】本実施例の情報処理装置の構成は基本的に
は第1実施例の情報処理装置のそれと同じである。異な
る点は第一実施例(図1)の情報処理装置内のクロック
タイミング発生回路5を用いないで、マイクロ命令制御
ブロック1およびデータ供給回路グループ2へは通常動
作時、テスト動作時によらずシステムクロックSCLK
を、データ受信回路グループ3へは、通常動作時(T=
0)ではシステムクロックSCLKと同一周期、同一位
相となり、テスト動作時(T=1)ではSCLKの反転
クロックSCLK▲バー▼と同一周期、同一位相となる
クロックCLKをクロック信号供給回路15を介して供
給し、これらの動作タイミングを制御していることであ
る。
は第1実施例の情報処理装置のそれと同じである。異な
る点は第一実施例(図1)の情報処理装置内のクロック
タイミング発生回路5を用いないで、マイクロ命令制御
ブロック1およびデータ供給回路グループ2へは通常動
作時、テスト動作時によらずシステムクロックSCLK
を、データ受信回路グループ3へは、通常動作時(T=
0)ではシステムクロックSCLKと同一周期、同一位
相となり、テスト動作時(T=1)ではSCLKの反転
クロックSCLK▲バー▼と同一周期、同一位相となる
クロックCLKをクロック信号供給回路15を介して供
給し、これらの動作タイミングを制御していることであ
る。
【0056】このクロック信号供給回路15は、データ
受信グループ3に含まれる複数の回路ブロック全体に対
して1個だけ用意することも可能だが、後述の様にごく
簡単な構成となっているため、各回路ブロックに対して
インプリメントする方がより現実的と見られる。また、
テスト上特に重要でない回路ブロックに対しては、クロ
ック信号供給回路15を付加せず、単にシステムクロッ
クSCLKを供給しても差支えない。
受信グループ3に含まれる複数の回路ブロック全体に対
して1個だけ用意することも可能だが、後述の様にごく
簡単な構成となっているため、各回路ブロックに対して
インプリメントする方がより現実的と見られる。また、
テスト上特に重要でない回路ブロックに対しては、クロ
ック信号供給回路15を付加せず、単にシステムクロッ
クSCLKを供給しても差支えない。
【0057】テスト動作時(T=1)、本実施例の情報
処理装置のマイクロ命令制御ブロック1、データ供給回
路グループ2へはシステムクロックSCLKが供給さ
れ、データ受信回路グループ3へは、システムクロック
SCLKの反転クロックであるSCLK▲バー▼がクロ
ック信号供給回路15を介して供給される。
処理装置のマイクロ命令制御ブロック1、データ供給回
路グループ2へはシステムクロックSCLKが供給さ
れ、データ受信回路グループ3へは、システムクロック
SCLKの反転クロックであるSCLK▲バー▼がクロ
ック信号供給回路15を介して供給される。
【0058】従って、例えばデータ供給回路グループ2
内のレジスタファイル22(プリチャージタイプでない
とする)は、システムクロックSCLKの立ち上がりで
テストデータ(結果)をシグネチャ圧縮回路31へ供給
し、シグネチャ圧縮回路31はシステムクロックSCL
Kの立ち下がりでそのテストデータを自身の内部に取込
む。従って、テスト動作時には、μROM11のマイク
ロ命令の読出しがシステムクロックSCLKの1サイク
ル(立上りエッジから次の立上りエッジまで)毎になさ
れるのに対し、テストデータの供給から格納(受信)ま
ではシステムクロックSCLKの1サイクル未満(立上
りエッジから次の立上りエッジまで)毎になされるよう
になっている。
内のレジスタファイル22(プリチャージタイプでない
とする)は、システムクロックSCLKの立ち上がりで
テストデータ(結果)をシグネチャ圧縮回路31へ供給
し、シグネチャ圧縮回路31はシステムクロックSCL
Kの立ち下がりでそのテストデータを自身の内部に取込
む。従って、テスト動作時には、μROM11のマイク
ロ命令の読出しがシステムクロックSCLKの1サイク
ル(立上りエッジから次の立上りエッジまで)毎になさ
れるのに対し、テストデータの供給から格納(受信)ま
ではシステムクロックSCLKの1サイクル未満(立上
りエッジから次の立上りエッジまで)毎になされるよう
になっている。
【0059】よって、システムクロックSCLKのHigh
レベルの期間とLow レベルの期間の比率が等しい場合レ
ジスタファイル22はμROM11の動作に対し2倍の
AC速度で動作していることになり、μROM11のA
C動作性能の2倍までの範囲でレジスタファイル22の
AC動作のテストを正しく行なうことができる。なお、
上記比率を、SCLKのHighレベル期間が相対的に短く
なるように設定してテストを実行すれば、μROM11
のAC性能の2倍を超えるAC性能も評価可能となる。
レベルの期間とLow レベルの期間の比率が等しい場合レ
ジスタファイル22はμROM11の動作に対し2倍の
AC速度で動作していることになり、μROM11のA
C動作性能の2倍までの範囲でレジスタファイル22の
AC動作のテストを正しく行なうことができる。なお、
上記比率を、SCLKのHighレベル期間が相対的に短く
なるように設定してテストを実行すれば、μROM11
のAC性能の2倍を超えるAC性能も評価可能となる。
【0060】以上示した動作をレジスタ−レジスタ間の
動作に例えて詳しく説明する。例えば、通常レジスタと
レジスタの間の回路ブロックはシステムクロックの1サ
イクル以内で動作を行なう。こうした回路ブロックのA
C動作性能の評価を行なう場合、通常は図13に示すク
ロック入力Cの立上りエッジでデータ入力Dを取込み、
データ出力Qから出力するD型のフリップフロップ(以
後F/Fと示す)を用いたnビットの入力レジスタ(R
EG1)とmビットの回路ブロックAの出力レジスタ
(REG2)間(図11)において、図12に示すタイ
ミングチャート内のこれら入出力レジスタに供給される
クロックSCLKの周波数を上げていき(SCLKの周
期ts を短くしていき)、これをREG1のデータに応
じた回路ブロックAの正しい出力値がREG2に取り込
めなくなるまで行なう。このとき、正しい値を取り込め
た臨界の周波数がREG1及びREG2にはさまれた回
路ブロックAの最大AC動作速度になる。この方法の場
合、回路ブロックAのAC動作速度(性能)が著しく高
いと、LSIテスターを使って精度良く測定することが
困難になるという問題があることは前述した通りであ
る。
動作に例えて詳しく説明する。例えば、通常レジスタと
レジスタの間の回路ブロックはシステムクロックの1サ
イクル以内で動作を行なう。こうした回路ブロックのA
C動作性能の評価を行なう場合、通常は図13に示すク
ロック入力Cの立上りエッジでデータ入力Dを取込み、
データ出力Qから出力するD型のフリップフロップ(以
後F/Fと示す)を用いたnビットの入力レジスタ(R
EG1)とmビットの回路ブロックAの出力レジスタ
(REG2)間(図11)において、図12に示すタイ
ミングチャート内のこれら入出力レジスタに供給される
クロックSCLKの周波数を上げていき(SCLKの周
期ts を短くしていき)、これをREG1のデータに応
じた回路ブロックAの正しい出力値がREG2に取り込
めなくなるまで行なう。このとき、正しい値を取り込め
た臨界の周波数がREG1及びREG2にはさまれた回
路ブロックAの最大AC動作速度になる。この方法の場
合、回路ブロックAのAC動作速度(性能)が著しく高
いと、LSIテスターを使って精度良く測定することが
困難になるという問題があることは前述した通りであ
る。
【0061】図15はF/Fのシンボル図であり、図1
5(1)は図13のF/F、図15(2)はそのfの部
分をとり除いたもの、図15(3)は図13のF/Fの
fの部分を図14の回路と置き換えたものである。他の
従来例同様、テストモード信号Tが0の時、通常動作、
1の時テスト動作であるとする。ここで図16に示す様
に受け取る側のF/F(REG2)に図15(3)のも
のを用い、テストモード信号Tを供給することにより、
通常動作時(T=0)は図12のタイミングチャートの
ように、REG1から回路ブロックAへのテストデータ
の入力をシステムクロックSCLKの立上りエッジで
行なわせ、回路ブロックAからのテスト結果のREG2
における取込み(REG2からの出力)をSCLKの次
の立ち上りエッジでおこなわせる。一方、テスト動作
時(T=1)は図17のタイミングチャートのように、
上記前者の動作を通常動作時同様、システムクロックS
CLKの立ち上りエッジで行なわせるが、上記後者の
動作は、の次の立ち下がりエッジで行なわせる。従
って、システムクロックSCLKのHighレベルの期間と
Low レベルの期間が等しければ、テスト動作時の方が通
常動作時の2倍のクロック周波数で回路ブロックAのA
C動作性能を評価していることになる。さらに、上記比
率をHighレベルの期間が相対的に短くなるように設定し
て同様の評価を行なえば、通常動作時の2倍を超えるク
ロック周波数で回路ブロックAのAC動作性能を評価で
き、回路ブロックAが著しく高速動作しても、そのAC
動作性能を正確に評価できることとなる。因みに図16
の例のREG2の内部は図18に示す様に図15(3)
のF/Fから構成されている。図16では、REG2を
構成する各F/F内の図14で示される部分のXORゲ
ートが、前述の図5におけるクロック信号供給回路15
に相当している。このように、クロック信号供給回路1
5を、回路ブロックに対して1個でなく、さらに、その
構成要素1個1個に対して付加することも可能である。
勿論、図19に示すように、REG2に対してクロック
信号供給回路15に相当する回路を1個だけ付加するこ
とも可能である。但し、こうした選択は、詳細な回路設
計・レイアウト設計の範疇に含まれ、本発明の本質に関
わるものではない。
5(1)は図13のF/F、図15(2)はそのfの部
分をとり除いたもの、図15(3)は図13のF/Fの
fの部分を図14の回路と置き換えたものである。他の
従来例同様、テストモード信号Tが0の時、通常動作、
1の時テスト動作であるとする。ここで図16に示す様
に受け取る側のF/F(REG2)に図15(3)のも
のを用い、テストモード信号Tを供給することにより、
通常動作時(T=0)は図12のタイミングチャートの
ように、REG1から回路ブロックAへのテストデータ
の入力をシステムクロックSCLKの立上りエッジで
行なわせ、回路ブロックAからのテスト結果のREG2
における取込み(REG2からの出力)をSCLKの次
の立ち上りエッジでおこなわせる。一方、テスト動作
時(T=1)は図17のタイミングチャートのように、
上記前者の動作を通常動作時同様、システムクロックS
CLKの立ち上りエッジで行なわせるが、上記後者の
動作は、の次の立ち下がりエッジで行なわせる。従
って、システムクロックSCLKのHighレベルの期間と
Low レベルの期間が等しければ、テスト動作時の方が通
常動作時の2倍のクロック周波数で回路ブロックAのA
C動作性能を評価していることになる。さらに、上記比
率をHighレベルの期間が相対的に短くなるように設定し
て同様の評価を行なえば、通常動作時の2倍を超えるク
ロック周波数で回路ブロックAのAC動作性能を評価で
き、回路ブロックAが著しく高速動作しても、そのAC
動作性能を正確に評価できることとなる。因みに図16
の例のREG2の内部は図18に示す様に図15(3)
のF/Fから構成されている。図16では、REG2を
構成する各F/F内の図14で示される部分のXORゲ
ートが、前述の図5におけるクロック信号供給回路15
に相当している。このように、クロック信号供給回路1
5を、回路ブロックに対して1個でなく、さらに、その
構成要素1個1個に対して付加することも可能である。
勿論、図19に示すように、REG2に対してクロック
信号供給回路15に相当する回路を1個だけ付加するこ
とも可能である。但し、こうした選択は、詳細な回路設
計・レイアウト設計の範疇に含まれ、本発明の本質に関
わるものではない。
【0062】なお、以上説明した第2の実施例におい
て、テスト動作モード信号T=1で与えられるテスト動
作を用いてのAC性能評価が可能な回路ブロックは、シ
ステムクロックSCLKのHighレベルの期間にプリチャ
ージされるタイプのものではない、という条件を満たす
必要がある、ということに注意しておく。ここで、図5
のマイクロ制御ブロック1内のμROM11がプリチャ
ージタイプでなければ、システムクロックSCLKのHi
ghレベルの期間中にプリチャージを行なう回路ブロック
に対しては、特にテスト動作状態(T=1)を利用せ
ず、通常動作(T=0)においてSCLKのHighレベル
期間とLow レベル期間の比率を後者を短く設定すること
で正確なAC性能を評価することができる。しかしなが
ら、μROM11がシステムクロックSCLKのHighレ
ベルの期間にプリチャージされるタイプの回路ブロック
である場合は、同様のタイプの回路ブロックのAC動作
性能は、μROM11のAC動作性能以内でしか正確に
評価できない。このように、マイクロ制御ブロックのA
C動作性能を律速する大規模回路ブロックがプリチャー
ジタイプである場合、プリチャージ期間も含めてこれと
同様なプリチャージタイプである高速な回路ブロックの
AC動作性能を正確に評価するためには、第2の実施例
は適当でなく、第1の実施例のような方式で評価するこ
とが必要となる。
て、テスト動作モード信号T=1で与えられるテスト動
作を用いてのAC性能評価が可能な回路ブロックは、シ
ステムクロックSCLKのHighレベルの期間にプリチャ
ージされるタイプのものではない、という条件を満たす
必要がある、ということに注意しておく。ここで、図5
のマイクロ制御ブロック1内のμROM11がプリチャ
ージタイプでなければ、システムクロックSCLKのHi
ghレベルの期間中にプリチャージを行なう回路ブロック
に対しては、特にテスト動作状態(T=1)を利用せ
ず、通常動作(T=0)においてSCLKのHighレベル
期間とLow レベル期間の比率を後者を短く設定すること
で正確なAC性能を評価することができる。しかしなが
ら、μROM11がシステムクロックSCLKのHighレ
ベルの期間にプリチャージされるタイプの回路ブロック
である場合は、同様のタイプの回路ブロックのAC動作
性能は、μROM11のAC動作性能以内でしか正確に
評価できない。このように、マイクロ制御ブロックのA
C動作性能を律速する大規模回路ブロックがプリチャー
ジタイプである場合、プリチャージ期間も含めてこれと
同様なプリチャージタイプである高速な回路ブロックの
AC動作性能を正確に評価するためには、第2の実施例
は適当でなく、第1の実施例のような方式で評価するこ
とが必要となる。
【0063】さらに、第三の実施例として、図5におい
てクロック信号供給回路を設けず、2個のクロック入力
ピンを設け、一方をマイクロ命令制御部1およびデータ
供給回路グループ3に接続し、他方をデータ受信回路グ
ループ2に接続し、通常動作時は両者にSCLK、テス
ト動作時は前者にSCLK1を、後者にはSCLK1よ
りも1周期未満分位相が遅れたSCLK2を供給すると
いう方法もある(図示せず)が、ピン数が増える、クロ
ックスキューの抑制が多少むずかしいといった問題点が
ある。
てクロック信号供給回路を設けず、2個のクロック入力
ピンを設け、一方をマイクロ命令制御部1およびデータ
供給回路グループ3に接続し、他方をデータ受信回路グ
ループ2に接続し、通常動作時は両者にSCLK、テス
ト動作時は前者にSCLK1を、後者にはSCLK1よ
りも1周期未満分位相が遅れたSCLK2を供給すると
いう方法もある(図示せず)が、ピン数が増える、クロ
ックスキューの抑制が多少むずかしいといった問題点が
ある。
【0064】以上第一、第二および第三実施例で説明し
たようなセルフテストのテストマイクロ命令プログラム
の構成に関しては、各回路ブロックに対する有効なAC
性能測定を実現するための配慮、例えば、クロックタイ
ミングによる動作制御方法が必要である。即ち、セルフ
テストのマイクロ命令テストプログラムは、各回路ブロ
ックを個々にほぼ独立してテストするようなモジュール
化された形で構成せねばならない。しかしながら、この
ことはマイクロ命令のテストプログラム作成にとってさ
ほど大きな制約ではない。
たようなセルフテストのテストマイクロ命令プログラム
の構成に関しては、各回路ブロックに対する有効なAC
性能測定を実現するための配慮、例えば、クロックタイ
ミングによる動作制御方法が必要である。即ち、セルフ
テストのマイクロ命令テストプログラムは、各回路ブロ
ックを個々にほぼ独立してテストするようなモジュール
化された形で構成せねばならない。しかしながら、この
ことはマイクロ命令のテストプログラム作成にとってさ
ほど大きな制約ではない。
【0065】また、マイクロ命令制御部1の大規模回路
ブロック(μROM等)自身のAC性能評価のために
は、上記のようなマイクロ命令制御セルフテスト以外の
簡単なセルフテスト、例えばRAR12をカウントアッ
プし、MIR13をシグネチャ圧縮器として使用するセ
ルフテストを実施する必要がある。このセルフテスト
は、基本クロックに従って行なわれる必要があるため、
前記セルフテストテスト動作モード(T=1)に加え、
第二のセルフテスト動作モードを設け、そのモード下で
実行する必要がある。しかしながら、これも実現上さほ
ど大きな問題ではない。
ブロック(μROM等)自身のAC性能評価のために
は、上記のようなマイクロ命令制御セルフテスト以外の
簡単なセルフテスト、例えばRAR12をカウントアッ
プし、MIR13をシグネチャ圧縮器として使用するセ
ルフテストを実施する必要がある。このセルフテスト
は、基本クロックに従って行なわれる必要があるため、
前記セルフテストテスト動作モード(T=1)に加え、
第二のセルフテスト動作モードを設け、そのモード下で
実行する必要がある。しかしながら、これも実現上さほ
ど大きな問題ではない。
【0066】次に、この発明の第四実施例を説明する。
【0067】この実施例は、マイクロ命令制御部1がプ
リチャージタイプの回路を含まない場合の実施例であ
る。このような場合には、プリチャージ動作が不要なの
でセルフテストモード時のシステムクロックの倍周期の
プリチャージクロックを作成する必要がないため、上記
実施例のクロックタイミング発生回路5と同様の作用
を、各回路ブロックの活性化信号にウエイト(wait) 状
態を作り出すことによってより容易に実現することがで
きる。
リチャージタイプの回路を含まない場合の実施例であ
る。このような場合には、プリチャージ動作が不要なの
でセルフテストモード時のシステムクロックの倍周期の
プリチャージクロックを作成する必要がないため、上記
実施例のクロックタイミング発生回路5と同様の作用
を、各回路ブロックの活性化信号にウエイト(wait) 状
態を作り出すことによってより容易に実現することがで
きる。
【0068】具体的には、例えば図6に示すように、R
AR12およびMIR13の通常動作用の入力活性化信
号ENR ,ENM を、セルフテスト信号T=1の時にシ
ステムクロックの2サイクル毎に更新される入力活性化
信号EN´R 、EN´M に変更する構成を付加すればよ
い。このような構成により、MIR13の内容のデコー
ド結果により与えられるデータ供給回路グループ2の出
力活性化信号は、システムクロックの倍周期間隔で変化
することになる。
AR12およびMIR13の通常動作用の入力活性化信
号ENR ,ENM を、セルフテスト信号T=1の時にシ
ステムクロックの2サイクル毎に更新される入力活性化
信号EN´R 、EN´M に変更する構成を付加すればよ
い。このような構成により、MIR13の内容のデコー
ド結果により与えられるデータ供給回路グループ2の出
力活性化信号は、システムクロックの倍周期間隔で変化
することになる。
【0069】なお、図6において、セルフテスト時にR
AR12およびMIR13は、必ず2システムクロック
毎に更新されることになるが、セルフテストでは通常、
状態遷移に伴ってマイクロ制御部1がウエイトするよう
な場合はないので特に問題は生じない。また、図6中の
D型フリップフロップ71のリセットは、セルフテスト
開始時に使用されるものと同じもので、セルフテスト開
始時のクロックの位相を確定させるためのものである。
一方、データを受け取る回路の活性化信号についてはマ
イクロ命令とデータが供給された1システムクロック後
だけ結果を取込むようにするため、図7に示すように、
T=1の時にはマイクロデコード信号を図6の信号EN
T をインバータ81で反転させた信号とANDゲート8
2でANDし、この信号をマルチプレクサ83によって
選択し、データ受信回路84に供給するようにすればよ
い。
AR12およびMIR13は、必ず2システムクロック
毎に更新されることになるが、セルフテストでは通常、
状態遷移に伴ってマイクロ制御部1がウエイトするよう
な場合はないので特に問題は生じない。また、図6中の
D型フリップフロップ71のリセットは、セルフテスト
開始時に使用されるものと同じもので、セルフテスト開
始時のクロックの位相を確定させるためのものである。
一方、データを受け取る回路の活性化信号についてはマ
イクロ命令とデータが供給された1システムクロック後
だけ結果を取込むようにするため、図7に示すように、
T=1の時にはマイクロデコード信号を図6の信号EN
T をインバータ81で反転させた信号とANDゲート8
2でANDし、この信号をマルチプレクサ83によって
選択し、データ受信回路84に供給するようにすればよ
い。
【0070】このように、上記実施例にあっては、内部
バス46に接続されマイクロ命令により制御される多く
の回路ブロックを対象とするマイクロ命令制御セルフテ
ストの実施に必要なハードウエアに、適当なクロックタ
イミングを発生させるための簡単なハードウエアを付加
するだけで、セルフテスト対象となっている回路ブロッ
クのAC性能をマイクロ命令制御部1のそれより実用上
十分高い領域まで測定可能となり、効率の良い故障診断
・不良解析を実現することができる。特に、CISCタ
イプのマイクロプロセッサ等のマイクロ命令制御を主体
とする複雑なフルカスタムVLSIの早期開発・量産立
ち上げに大きく寄与することが可能となる。
バス46に接続されマイクロ命令により制御される多く
の回路ブロックを対象とするマイクロ命令制御セルフテ
ストの実施に必要なハードウエアに、適当なクロックタ
イミングを発生させるための簡単なハードウエアを付加
するだけで、セルフテスト対象となっている回路ブロッ
クのAC性能をマイクロ命令制御部1のそれより実用上
十分高い領域まで測定可能となり、効率の良い故障診断
・不良解析を実現することができる。特に、CISCタ
イプのマイクロプロセッサ等のマイクロ命令制御を主体
とする複雑なフルカスタムVLSIの早期開発・量産立
ち上げに大きく寄与することが可能となる。
【0071】なお、本発明は上記実施例に限定されるこ
とはなく、必ずしもマイクロ命令制御セルフテストの存
在を必要とせず、一般に、通常動作において、ある制御
ロジックのAC性能により全体の動作が律速される場合
には、通常動作とは異なる動作モードを設け、他の回路
ブロックのAC性能をその制御ロジックのAC性能を越
える領域まで測定しようとする際にも適用できる。
とはなく、必ずしもマイクロ命令制御セルフテストの存
在を必要とせず、一般に、通常動作において、ある制御
ロジックのAC性能により全体の動作が律速される場合
には、通常動作とは異なる動作モードを設け、他の回路
ブロックのAC性能をその制御ロジックのAC性能を越
える領域まで測定しようとする際にも適用できる。
【0072】
【発明の効果】以上説明したように、この発明によれ
ば、診断動作時は通常動作時に比べ、マイクロ命令制御
手段を動作させるクロック周波数をその他の回路ブロッ
クを動作させるクロック周波数よりも遅くして、一方で
は、被テスト回路ブロックの交流(AC)動作性能を測
定するためにデータ発生手段と診断結果受信手段との間
で満たすべきタイミング関係を保持するようにしたの
で、構成の大型化、複雑化を招くことなく、自己診断に
よって被テスト回路の交流(AC)動作性能を正確かつ
十分に評価することが可能な情報処理装置の自己診断回
路を提供することができる。
ば、診断動作時は通常動作時に比べ、マイクロ命令制御
手段を動作させるクロック周波数をその他の回路ブロッ
クを動作させるクロック周波数よりも遅くして、一方で
は、被テスト回路ブロックの交流(AC)動作性能を測
定するためにデータ発生手段と診断結果受信手段との間
で満たすべきタイミング関係を保持するようにしたの
で、構成の大型化、複雑化を招くことなく、自己診断に
よって被テスト回路の交流(AC)動作性能を正確かつ
十分に評価することが可能な情報処理装置の自己診断回
路を提供することができる。
【図1】本発明の第一実施例である自己診断回路を有す
る情報処理装置の構成を示すブロック図である。
る情報処理装置の構成を示すブロック図である。
【図2】図1内の情報処理装置に用いられているクロッ
クタイミング発生回路図である。
クタイミング発生回路図である。
【図3】図1の情報処理装置のレジスタファイルのテス
ト動作を示すタイミングチャートである。
ト動作を示すタイミングチャートである。
【図4】図1の情報処理装置のALUのテスト動作を示
すタイミングチャートである。
すタイミングチャートである。
【図5】本発明の第二実施例である自己診断回路を有す
る情報処理装置の構成を示すブロック図である。
る情報処理装置の構成を示すブロック図である。
【図6】本発明の第四実施例である自己診断回路を有す
る情報処理装置のテスト用のマイクロ命令を格納するプ
リチャージタイプではないROMおよび周辺の回路の動
作を説明するための部分構成図である。
る情報処理装置のテスト用のマイクロ命令を格納するプ
リチャージタイプではないROMおよび周辺の回路の動
作を説明するための部分構成図である。
【図7】本発明の第四実施例である自己診断回路を有す
る情報処理装置の機能ブロックであるデータ受信回路の
動作を説明するための部分構成図である。
る情報処理装置の機能ブロックであるデータ受信回路の
動作を説明するための部分構成図である。
【図8】従来の自己診断回路を有する情報処理装置のブ
ロック図である。
ロック図である。
【図9】従来の他の自己診断回路を有する情報処理装置
のブロック図である。
のブロック図である。
【図10】従来の自己診断回路を有した場合と、図1お
よび図2の自己診断回路を有した場合の、情報処理装置
内の各回路ブロックのAC性能の測定限界を比較した図
である。
よび図2の自己診断回路を有した場合の、情報処理装置
内の各回路ブロックのAC性能の測定限界を比較した図
である。
【図11】図5に示す自己診断回路を有する情報処理装
置の動作を簡潔に説明するための従来例としてのレジス
タを含む回路図である。
置の動作を簡潔に説明するための従来例としてのレジス
タを含む回路図である。
【図12】図11に示す回路の動作を示すタイミングチ
ャートである。
ャートである。
【図13】通常のフリップフロップの回路図である。
【図14】テストモード信号Tに依存するクロック発生
制御のためのロジック図である。
制御のためのロジック図である。
【図15】フリップフロップのシンボル図である。
【図16】図5に示す自己診断回路を有する情報処理装
置の動作を簡潔に説明するための回路図である。
置の動作を簡潔に説明するための回路図である。
【図17】図16に示す情報処理装置のテスト動作時
(T=1)のタイミングチャートである。
(T=1)のタイミングチャートである。
【図18】図16に示す情報処理装置内のレジスタRE
G2内部の構成図である。
G2内部の構成図である。
【図19】図18に示すレジスタREG2内部の他の構
成図である。
成図である。
1 マイクロ命令制御部 2 データ供給回路グループ 3 データ受信回路グループ 5 クロックタイミング発生回路
フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H01L 21/66 Z 7630−4M
Claims (7)
- 【請求項1】 第一のクロックに従って、セルフテスト
用マイクロ命令が格納されたメモリ内からセルフテスト
用マイクロ命令を読み出し該命令をデコードする第一の
ステップと、前記第一のクロックに従って、前記第一の
ステップでデコードされた命令に対応してテストデータ
をテストデータ発生回路から発生させ、テスト対象の機
能ブロックへ前記テストデータを供給するか、前記機能
ブロックの第一のタイプの機能ブロック内に保持されて
いるデータを出力させ、データ圧縮回路に供給する第二
のステップと、第二のクロックに従って、前記第二のス
テップの結果、前記機能ブロックの第二のタイプの機能
ブロックから出力されたテスト結果を前記データ圧縮回
路内へ読み込み該テストデータを圧縮するか、前記機能
ブロックの前記第一のタイプの機能ブロック内に前記テ
ストデータまたはそれより派生するデータを格納する第
三のステップからなり、通常動作時に外部から前記機能
ブロックの動作を制御する基本クロックの周期は、前記
第一のクロックおよび前記第二のクロックの周期の1/
N(N=2,3,…)倍であり、前記第二のクロックの
位相は前記第一のクロックの1周期未満の位相分だけ遅
れていることを特徴とする自己診断回路を有する情報処
理装置の自己診断方法。 - 【請求項2】 前記第二のクロック位相は前記第一のク
ロックより1/2周期だけずれていることを特徴とする
請求項1に記載の自己診断方法。 - 【請求項3】 第一のクロックの立ち上がりエッジに従
って、セルフテスト用マイクロ命令が格納されたメモリ
内からセルフテスト用マイクロ命令を読み出し該命令を
デコードする第一のステップと、前記第一のクロックの
立ち上がりエッジに従って、前記第一のステップでデコ
ードされた命令に対応してテストデータをテストデータ
発生回路から発生させ、テスト対象の機能ブロックへ前
記テストデータを供給するか、前記機能ブロックの第一
のタイプの機能ブロック内に保持されているデータを出
力させ、データ圧縮回路に供給する第二のステップと、
前記第一のクロックの立ち下がりエッジに従って、前記
第二のステップの結果、前記機能ブロックの第二のタイ
プの機能ブロックから出力されたテスト結果を前記デー
タ圧縮回路内へ読み込み該テストデータを圧縮するか、
前記機能ブロックの前記第一のタイプの機能ブロック内
に前記テストデータまたはそれより派生するデータを格
納する第三のステップからなり、通常動作時に外部から
前記機能ブロックの動作を制御する基本クロックの周期
は、前記第一のクロックの周期と同一であることを特徴
とする自己診断回路を有する情報処理装置の自己診断方
法。 - 【請求項4】 通常動作モードと自己診断モード下で動
作する複数の回路ブロックと、通常動作モード時には外
部より与えられる基本クロック信号をそのまま出力し、
自己診断モード時には前記基本クロック信号のN倍(N
=2,3,…)の周期を有する第一のクロック信号と該
第一のクロックより1周期未満の位相分遅れた第二のク
ロック信号とを出力するクロック信号発生手段と、通常
動作モード時には前記基本クロック信号に同期して動作
し、自己診断モード時には前記第一のクロック信号に同
期して動作する自己診断用のマイクロ命令を格納するメ
モリ手段と、通常動作モード時には前記基本クロック信
号に同期して動作し、自己診断モード時には前記第一の
クロック信号に同期して前記メモリ手段内の自己診断用
のマイクロ命令を入力しデコードするデコード手段と、
自己診断モード時には前記第一のクロック信号に同期し
て前記デコード手段から得られたデコード結果に従って
テストデータを作成するテストデータ発生手段と、通常
動作モード時には前記基本クロック信号に同期して動作
し、自己診断モード時には前記第一のクロック信号に同
期して前記テストデータ発生手段内で作成されたテスト
データを格納し、前記第一のクロック信号に同期して該
回路ブロック内のテストデータを出力する第一のタイプ
の回路ブロックと、通常動作モード時には前記基本クロ
ック信号に同期して動作し、自己診断モード時には前記
第一のクロック信号に同期して供給される前記テストデ
ータに対する出力データを出力する第二のタイプの回路
ブロックと、自己診断モード時には前記第二のクロック
信号に同期して前記回路ブロックから出力されたテスト
データを入力し該回路ブロックの動作の診断を行なうシ
グネチャ圧縮手段と、から構成された情報処理装置の自
己診断回路。 - 【請求項5】 前記第二のクロック信号の位相は前記第
一のクロック信号より1/2周期分ずれていることを特
徴とする請求項4に記載の情報処理装置の自己診断回
路。 - 【請求項6】 通常動作モードと自己診断モード下で動
作する複数の回路ブロックと、通常動作モード時には外
部から与えられる基本クロック信号をそのまま出力し、
自己診断モード時には前記基本クロック信号および基本
クロック信号の反転クロック信号とを出力するクロック
信号発生手段と、通常動作モード時および自己診断モー
ド時には前記基本クロック信号に同期して動作する自己
診断用のマイクロ命令を格納するメモリ手段と、通常動
作モード時および自己診断モード時には前記基本クロッ
ク信号に同期して前記メモリ手段内の自己診断用のマイ
クロ命令を入力しデコードするデコード手段と、通常動
作モード時および自己診断モード時には前記基本クロッ
ク信号に同期して前記デコード手段から得られたデコー
ド結果に従ってテストデータを作成するテストデータ発
生手段と通常動作モード時には前記基本クロック信号に
同期して動作し、自己診断モード時には前記基本クロッ
ク信号の反転クロック信号に同期して前記テストデータ
発生手段内で作成されたテストデータを格納し、前記基
本クロック信号に同期して該回路ブロック内のテストデ
ータを出力する第一のタイプの回路ブロックと、通常動
作モード時には前記基本クロック信号に同期して動作
し、自己診断モード時には前記第一のクロック信号に同
期して供給される前記テストデータに対する出力データ
を出力する第二のタイプの回路ブロックと、自己診断モ
ード時には前記基本クロック信号の反転クロック信号に
同期して前記回路ブロックから出力されたテストデータ
を入力し該回路ブロックの動作の診断を行なうシグネチ
ャ圧縮手段と、から構成された情報処理装置の自己診断
回路。 - 【請求項7】 通常動作モードと自己診断モード下で動
作する複数の回路ブロックと、2個の外部クロック入力
端子にして、通常動作モード時にはそのいずれにも同一
の基本クロック信号が供給され、自己診断モード時には
その一方に第一のクロック信号、他方に前記第一のクロ
ック信号より1周期未満の位相だけ遅れた第二のクロッ
ク信号が供給されるものと、通常動作モード時には前記
基本クロック信号に同期して動作し、自己診断モード時
には前記第一のクロック信号に同期して動作する自己診
断用のマイクロ命令を格納するメモリ手段と、通常動作
モード時には前記基本クロック信号に同期して動作し、
自己診断モード時には前記第一のクロック信号に同期し
て前記メモリ手段内の自己診断用のマイクロ命令を入力
しデコードするデコード手段と、自己診断モード時には
前記第一のクロック信号に同期して前記デコード手段か
ら得られたデコード結果に従ってテストデータを作成す
るテストデータ発生手段と、通常動作モード時には前記
基本クロック信号に同期して動作し、自己診断モード時
には前記第一のクロック信号に同期して前記テストデー
タ発生手段内で作成されたテストデータを格納し、前記
第一のクロック信号に同期して該回路ブロック内のテス
トデータを出力する第一のタイプの回路ブロックと、通
常動作モード時には前記基本クロック信号に同期して動
作し、自己診断モード時には前記第一のクロック信号に
同期して供給される前記テストデータに対する出力デー
タを出力する第二のタイプの回路ブロックと、自己診断
モード時には前記第二のクロック信号に同期して前記回
路ブロックから出力されたテストデータを入力し該回路
ブロックの動作の診断を行なうシグネチャ圧縮手段と、
から構成された情報処理装置の自己診断回路。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3136285A JPH0758320B2 (ja) | 1990-06-18 | 1991-06-07 | 情報処理装置の自己診断回路および自己診断方法 |
KR1019910010058A KR940008607B1 (ko) | 1990-06-18 | 1991-06-18 | 정보처리장치의 자기진단회로 및 자기진단방법 |
US08/243,517 US5631910A (en) | 1990-06-18 | 1994-05-16 | Information processing system provided with self-diagnosing circuit and the self-diagnosing method therefor |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15749390 | 1990-06-18 | ||
JP2-157493 | 1990-06-18 | ||
JP3136285A JPH0758320B2 (ja) | 1990-06-18 | 1991-06-07 | 情報処理装置の自己診断回路および自己診断方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04320981A JPH04320981A (ja) | 1992-11-11 |
JPH0758320B2 true JPH0758320B2 (ja) | 1995-06-21 |
Family
ID=26469921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3136285A Expired - Fee Related JPH0758320B2 (ja) | 1990-06-18 | 1991-06-07 | 情報処理装置の自己診断回路および自己診断方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5631910A (ja) |
JP (1) | JPH0758320B2 (ja) |
KR (1) | KR940008607B1 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09166646A (ja) | 1995-12-15 | 1997-06-24 | Nec Corp | 半導体装置 |
US6618775B1 (en) | 1997-08-15 | 2003-09-09 | Micron Technology, Inc. | DSP bus monitoring apparatus and method |
US6418387B1 (en) * | 1999-06-28 | 2002-07-09 | Ltx Corporation | Method of and system for generating a binary shmoo plot in N-dimensional space |
JP2003030000A (ja) | 2001-07-17 | 2003-01-31 | Mitsubishi Electric Corp | 自己診断回路のテストパターン発生回路及び発生方法 |
DE10146695B4 (de) * | 2001-09-21 | 2015-11-05 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zur Übertragung von Nachrichten zwischen Busteilnehmern |
US7379849B2 (en) * | 2004-05-21 | 2008-05-27 | Bea Systems, Inc. | Diagnostic image |
US8490064B2 (en) * | 2004-05-21 | 2013-07-16 | Oracle International Corporation | Hierarchical debug |
US7359831B2 (en) * | 2004-05-21 | 2008-04-15 | Bea Systems, Inc. | Diagnostic context |
DE102005001390A1 (de) * | 2005-01-12 | 2006-07-20 | Bayerische Motoren Werke Ag | Verfahren zur Identifikation fehlerhafter Busteilnehmer |
JP2006329810A (ja) * | 2005-05-26 | 2006-12-07 | Nec Electronics Corp | 半導体集積回路及びそのテスト方法 |
US8024631B1 (en) * | 2006-11-07 | 2011-09-20 | Marvell International Ltd. | Scan testing system and method |
JP5208872B2 (ja) * | 2009-07-15 | 2013-06-12 | 日立オートモティブシステムズ株式会社 | 車両搭載機器の制御装置のメモリ診断装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8413933D0 (en) * | 1984-05-31 | 1984-07-04 | Columbia Automation Ltd | Emulating timing characteristics of microprocessor |
JPH0812230B2 (ja) * | 1988-09-06 | 1996-02-07 | 株式会社日立製作所 | Ic試験装置 |
JPH0255331U (ja) * | 1988-10-11 | 1990-04-20 |
-
1991
- 1991-06-07 JP JP3136285A patent/JPH0758320B2/ja not_active Expired - Fee Related
- 1991-06-18 KR KR1019910010058A patent/KR940008607B1/ko not_active IP Right Cessation
-
1994
- 1994-05-16 US US08/243,517 patent/US5631910A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5631910A (en) | 1997-05-20 |
JPH04320981A (ja) | 1992-11-11 |
KR940008607B1 (ko) | 1994-09-24 |
KR920001337A (ko) | 1992-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8140925B2 (en) | Method and apparatus to debug an integrated circuit chip via synchronous clock stop and scan | |
Krstic et al. | Embedded software-based self-test for programmable core-based designs | |
US5173906A (en) | Built-in self test for integrated circuits | |
Psarakis et al. | Microprocessor software-based self-testing | |
KR100502128B1 (ko) | 시스템 온-칩에서의 내장 코아를 테스트하기 위한 방법 및 구조 | |
US6564347B1 (en) | Method and apparatus for testing an integrated circuit using an on-chip logic analyzer unit | |
US6292765B1 (en) | Method for automatically searching for functional defects in a description of a circuit | |
US4597080A (en) | Architecture and method for testing VLSI processors | |
US6889348B2 (en) | Tester architecture construction data generating method, tester architecture constructing method and test circuit | |
JPH10171676A (ja) | マイクロプロセッサのテスト容易化回路 | |
Lai et al. | Test program synthesis for path delay faults in microprocessor cores | |
KR950009692B1 (ko) | 정보처리장치의 테스트 용이화 회로 | |
GB1581865A (en) | Method of testing a logic system | |
US8762779B2 (en) | Multi-core processor with external instruction execution rate heartbeat | |
Kranitis et al. | Effective software self-test methodology for processor cores | |
JPH0758320B2 (ja) | 情報処理装置の自己診断回路および自己診断方法 | |
KR20000029365A (ko) | 마이크로프로세서의 테스팅을 위한 회로 구조물 및 그테스트 방법 | |
JP2013253840A (ja) | 半導体集積回路及びその設計方法 | |
JPH0773037A (ja) | プロセッサの制御機構検証用命令列の自動生成方法及び装置 | |
Huang et al. | A retargetable embedded in-circuit emulation module for microprocessors | |
Hunter et al. | The PowerPC 603 microprocessor: An array built-in self test mechanism | |
US20030188237A1 (en) | Method and apparatus for testing a circuit using a die frame logic analyzer | |
Kabiri et al. | Effective RT-level software-based self-testing of embedded processor cores | |
Nakazato et al. | Design for testability of software-based self-test for processors | |
US20090055155A1 (en) | Simulating execution of software programs in electronic circuit designs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19960109 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090621 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090621 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100621 Year of fee payment: 15 |
|
LAPS | Cancellation because of no payment of annual fees |