JPH10105426A - 半導体集積回路 - Google Patents

半導体集積回路

Info

Publication number
JPH10105426A
JPH10105426A JP8252731A JP25273196A JPH10105426A JP H10105426 A JPH10105426 A JP H10105426A JP 8252731 A JP8252731 A JP 8252731A JP 25273196 A JP25273196 A JP 25273196A JP H10105426 A JPH10105426 A JP H10105426A
Authority
JP
Japan
Prior art keywords
signal
instruction
address
register
checksum
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.)
Pending
Application number
JP8252731A
Other languages
English (en)
Inventor
Makoto Sasaki
誠 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP8252731A priority Critical patent/JPH10105426A/ja
Priority to US08/937,657 priority patent/US6073267A/en
Priority to EP97250288A priority patent/EP0833249B1/en
Priority to DE69719896T priority patent/DE69719896T2/de
Publication of JPH10105426A publication Critical patent/JPH10105426A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/36Data generation devices, e.g. data inverters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/40Response verification devices using compression techniques

Abstract

(57)【要約】 【課題】命令メモリの動作エラーを正確に検出すること
により、半導体集積回路の不具合解析および対策を迅速
化する。 【解決手段】エラー検出回路として、アドレス信号10
4をクロック信号101に同期して一時記憶および出力
するアドレスレジスタ4と、命令レジスタ5およびアド
レスレジスタ4の出力を入力しそれらに対応するチェッ
クコード信号を生成するチェックコード生成回路7と、
命令コードおよびそのアドレス値に対応したチェックデ
ータを予め格納しアドレス信号104に対応して出力す
るチェックサムROMと、このチェックサムROMの出
力をクロック信号104に同期して一時記憶および出力
するチェックサムレジスタ6と、このチェックサムレジ
スタ6およびチェックコード生成回路7の出力を比較し
比較結果信号を出力する比較器9と、を備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、半導体集積回路に
関し、特に、内蔵メモリに格納された命令プログラムに
より動作する半導体集積回路に関する。
【0002】
【従来の技術】従来、この種の半導体集積回路は、マイ
クロコンピュータなどに広く用いられている。たとえ
ば、図5は、従来の半導体集積回路の構成例を示すブロ
ック図である。
【0003】この従来の半導体集積回路は、プログラム
カウンタ1,命令ROM2,命令レジスタ5,デコーダ
8などを備えている。このプログラムカウンタ1は、ク
ロック信号101を入力し命令アドレス信号103の入
力により設定され、クロック信号101に同期してアド
レス信号104を順次出力および記憶する第1の記憶手
段であり、レジスタからなる。命令ROM2は、プログ
ラムの命令コードを予め格納しアドレス信号104に対
応して命令コード信号105を出力する命令メモリであ
り、ROM(読出し専用メモリ)で構成されている。命
令レジスタ5は、クロック101および命令コード信号
105を入力し、命令コード信号105をクロック信号
101に同期して一時記憶し命令データ信号113を出
力する第2の記憶手段であり、レジスタからなる。デコ
ーダ8は、命令データ信号113を入力およびデコード
し、半導体集積回路の命令実行ユニットを制御するユニ
ット制御信号117を生成する。
【0004】この従来の半導体集積回路の動作を簡単に
説明すると、まず、プログラムカウンタ1が、命令アド
レス信号103の入力によりアドレス設定され、クロッ
ク信号101に同期してアドレス信号104を順次出力
する。次に、このアドレス信号104の指定により命令
ROM2に格納されている命令コードが読み出され、命
令コード信号105として出力される。この命令コード
信号105を命令レジスタ5がクロック信号101に同
期して一時記憶する。記憶された命令は命令データ信号
113として出力されデコーダ8に入力する。デコーダ
8によりデコード生成されたユニット制御信号117
は、半導体集積回路の命令実行ユニットを制御する。
【0005】たとえば、命令ROM2に格納している命
令にエラーがあった場合、エラーのあった命令を命令レ
ジスタ5が記憶し、記憶したエラーのあった命令からデ
コーダ8がユニット制御信号117を生成して、半導体
集積回路の命令実行ユニットを制御するが、期待する動
作と異なり、誤動作してしまう。このように、命令RO
M2に格納している命令のエラーにより半導体集積回路
が誤って動作した場合、その原因解析は困難であり、特
に命令メモリのエラーは多様な故障モードを示すため、
その解析は多大な時間を要していた。
【0006】その対策を施した半導体集積回路の他の従
来例として、たとえば、特開昭63−18597号公報
に記載されている「集積回路内蔵メモリテスト装置」が
ある。
【0007】この従来例は、リセット信号入力ピンによ
り、メモリアドレスレジスタをオール“ゼロ”の初期状
態にした後、メモリアドレスレジスタをカウントアップ
し、カウントアップ毎に、パリティ付きメモリからの出
力データをパリティチェック回路に入力しメモリデータ
の正誤判定を行う。同時に、メモリデータレジスタに出
力データを記憶し、パリティチェック回路の正誤判定の
結果、出力データが正常であれば、メモリアドレスレジ
スタのカウントアップを継続し、パリティ付きメモリの
全アドレスのデータをテストする。一方、出力データが
誤りであれば、メモリアドレスレジスタのカウントアッ
プを禁止し、スキャンパス制御回路によりメモリアドレ
スレジスタとメモリデータレジスタとをスキャンパス構
成にし、メモリアドレスレジスタおよびメモリデータレ
ジスタに記憶しているアドレスまたはデータをスキャン
パス出力ピンから出力させ、エラー情報を観測してい
る。
【0008】また、スキャンパスを使用して、スキャン
パス入力データピンからメモリアドレスレジスタに任意
のアドレスを設定し、パリティ付きメモリの任意のデー
タをスキャンパス出力ピンから出力させて観測する手段
をとっていた。
【0009】
【発明が解決しようとする課題】上述した従来の半導体
集積回路におけるエラー検出では、規則的に変化するア
ドレスによりメモリのデータを順次読み出すため、ユー
ザーのアプリケーション動作時の不規則なアドレス変化
に依存するエラーを検出できない。
【0010】ここで述べているアドレス変化に依存する
エラーとは、たとえば、メモリ領域を3つ以上のバンク
に分けている場合、バンクを1つ以上飛び越えて他のバ
ンクのデータを読み出す時に、一方のバンクからデータ
を読み出した後、他方のバンクからデータを読み出す
と、一方のアドレスから他方のアドレスへの変化による
アドレスデコードの遅延が大きくなることで、所定の動
作周波数内にデータを読み出すことができず、エラーと
なることである。
【0011】また、従来の半導体集積回路におけるメモ
リ出力データのエラー検出は、アドレス情報をチェック
の対象に含めていないため、メモリ内のワード線の故障
などで、指定したアドレス以外のアドレスの内容を読み
出し、誤データが読み出されたとしても、エラーチェッ
ク回路は正常と判断し、エラーを正確に検出できない。
さらに、メモリから読み出したデータ自身のエラー検出
を行なっているため、メモリからデータを記憶するレジ
スタまでの遅延時間がメモリからエラーチェック回路ま
での遅延時間より大きく、レジスタが所定の動作周波数
内にデータを記憶できなかった場合など、メモリから読
み出したデータが正常と判定できても、データを記憶で
きず誤動作するため、エラーを正確に検出できない。し
たがって、エラー発生時に、誤動作アドレスを特定でき
ず、また、メモリの1ワードが複数ビットで構成してい
る場合、エラーとなった読み出しデータのビット位置を
特定できないため、エラーの原因が機能不具合または製
造欠陥なのか判断できず、不具合解析に膨大な時間を費
やすことになる。
【0012】さらに、エラー検出時は、アプリケーショ
ンプログラムを動作させているわけではないので、エラ
ー検出したサイクル以降のアプリケーションプログラム
が正常に動作するか確認ができない。
【0013】この結果、不具合の対策および正常動作の
確認ができないため、ユーザーに多大な迷惑をかけるこ
とになり、信頼を失うことになる。
【0014】したがって、本発明の目的は、上記問題点
を解消するため、命令メモリの動作エラーを正確に検出
することにより、半導体集積回路の不具合解析および対
策を迅速化することにある。
【0015】
【課題を解決するための手段】そのため、本発明は、命
令コードを予め格納しアドレス信号に対応して命令コー
ド信号を出力する命令メモリと、クロック信号に同期し
て前記アドレス信号を順次出力および記憶する第1の記
憶手段と、前記命令コード信号を前記クロック信号に同
期して一時記憶および出力する第2の記憶手段と、を有
し、この第2の記憶手段の出力に対応して動作する半導
体集積回路において、前記第2の記憶手段の出力および
前記アドレス信号に対応したチェックコード信号を前記
クロック信号サイクルごとに生成し前記命令コードおよ
びそのアドレス値に対応したチェックデータと比較し前
記命令メモリの動作エラーを検出するエラー検出回路を
備えている。
【0016】また、前記エラー検出回路が、前記アドレ
ス信号を前記クロック信号に同期して一時記憶および出
力する第3の記憶手段と、前記第2および第3の記憶手
段の出力を入力しそれらに対応するチェックコード信号
を生成するチェックコード生成回路と、前記命令コード
およびそのアドレス値に対応したチェックデータを予め
格納し前記アドレス信号に対応して出力するチェックデ
ータメモリと、このチェックデータメモリの出力を前記
クロック信号に同期して一時記憶および出力する第4の
記憶手段と、この第4の記憶手段および前記チェックコ
ード生成回路の出力を比較し比較結果信号を出力する比
較器と、を備えている。
【0017】さらに、前記エラー検出回路が、スキャン
モード信号および前記比較結果信号を入力しこれら信号
に対応してスキャンモード動作への切替え制御を行うス
キャンモード切替制御回路と、このスキャンモード切替
制御回路の出力に対応してスキャンモード動作時に各ス
キャン信号をキャンアウト端子に直列出力するバッファ
と、を備え、前記第1〜第4の記憶手段が、前記スキャ
ンモード切替制御回路の出力に対応してスキャンモード
動作し各スキャン信号をスキャン入出力し前記バッファ
にスキャン出力している。
【0018】また、前記スキャンモード切替制御回路
が、前記比較結果信号が不一致を示すときスキャンモー
ド動作への切替え制御を行っている。
【0019】また、前記命令メモリまたは前記チェック
データメモリが、読出し専用メモリから構成されてい
る。
【0020】さらに、前記チェックコード信号が、チェ
ックサム信号またはパリティ信号から構成されている。
【0021】
【発明の実施の形態】次に、本発明について図面を参照
して説明する。図1は、本発明の半導体集積回路の実施
形態1を示す部分ブロック図であり、命令メモリの動作
エラーを検出するエラー検出回路部分を示す。図1を参
照すると、本実施形態の半導体集積回路は、従来の半導
体集積回路と同じく、プログラムカウンタ1,命令RO
M2,命令レジスタ5,デコーダ8などを有し、さら
に、エラー検出回路としてアドレスレジスタ4,チェッ
クコード生成回路7,チェックサムROM3,チェック
サムレジスタ6,比較器9,スキャン切替制御回路1
0,3ステートバッファ11を備えている。
【0022】プログラムカウンタ1は、クロック信号1
01の立ち上がりエッジに同期して命令ROM2および
チェックサムROM3にアドレス信号104を順次出力
および記憶する第1の記憶手段であり、8ビット構成の
レジスタである。その他の入力信号としてスキャン切替
信号102,ウエイト信号119,命令アドレス信号1
03,アドレス信号104を入力し、その他の出力信号
としてスキャン信号108を出力する。スキャン切替信
号102およびウエイト信号119が論理“0”で、命
令アドレス103を入力として選択する。
【0023】命令ROM2は、命令コードを予め格納し
アドレス信号104に対応して命令コード信号105を
出力する命令メモリである。また、256ワード×16
ビットの構成で16ビットの命令コードを格納している
ROMである。
【0024】命令レジスタ5は、命令ROM2の出力で
ある命令コード信号105をクロック信号101の立ち
上がりエッジに同期して一時記憶しおよび命令データ信
号113を出力する第2の記憶手段であり、16ビット
構成のレジスタである。その他の入力信号としてスキャ
ン切替信号102,ウエイト信号119,スキャン信号
109,ポストアドレス信号112を入力し、その他の
出力信号としてスキャン信号110を出力する。スキャ
ン切替信号102およびウエイト信号119が論理
“0”で、命令コード信号105を入力として選択す
る。
【0025】デコーダ8は、命令レジスタ5の出力であ
る命令データ信号113を入力およびデコードし、半導
体集積回路の命令実行ユニットを制御するユニット制御
信号117を生成する回路である。
【0026】アドレスレジスタ4は、プログラムカウン
タ1の出力であるアドレス信号104をクロック信号1
01の立ち上がりエッジに同期して一時記憶しポストア
ドレス信号112を出力する第3の記憶手段であり、8
ビット構成のレジスタである。その他の入力信号として
スキャン切替信号102,ウエイト信号119,スキャ
ン信号108を入力し、その他の出力信号としてスキャ
ン信号109を出力する。スキャン切替信号102およ
びウエイト信号119が論理“0”で、アドレス信号1
04を入力として選択する。
【0027】チェックコード生成回路7は、命令レジス
タ5,アドレスレジスタ4の出力である命令データ信号
113,ポストアドレス信号112を入力しそれらに対
応するチェックコード信号114を生成する。
【0028】チェックサムROM3は、命令コードおよ
びそのアドレス値に対応したチェックデータである期待
値チェックサムを予め格納しアドレス信号104に対応
してチェックサムコード信号106を出力するチェック
データメモリである。また、256ワード×8ビットで
構成し、8ビットの期待値チェックサムコードを格納し
ているROMである。
【0029】チェックサムレジスタ6は、チェックサム
ROM3の出力であるチェックサムコード信号106を
クロック信号101の立ち上がりエッジに同期して一時
記憶しチェックサムデータ信号115を出力する第4の
記憶手段であり、8ビット構成のレジスタである。その
他の入力信号としてスキャン切替信号102,ウエイト
信号119,スキャン信号110を入力し、その他の出
力信号としてスキャン信号111を出力する。スキャン
切替信号102およびウエイト信号119が論理“0”
で、チェックサムコード信号106を入力として選択す
る。
【0030】比較器9は、チェックコード生成回路7,
チェックサムレジスタ6の出力であるチェックコード信
号114とチェックサムデータ信号115とを比較し、
比較結果信号118を出力する。
【0031】スキャン切替制御回路10は、比較器9の
出力である比較結果信号118を入力し、比較結果が不
一致であった場合、スキャンモードに切替る制御を行な
う回路である。その他の入力信号としてスキャンモード
信号120を入力し、その他の出力信号としてスキャン
切替信号102,ウエイト信号119,エラー検出信号
121,バッファ制御信号123を出力する。
【0032】3ステートバッファ11は、プログラムカ
ウンタ1,アドレスレジスタ4,命令レジスタ5,チェ
ックサムレジスタ6の各スキャン信号108,109,
110,111からなるシリアルデータをスキャンアウ
ト端子122に出力するための回路である。その他の入
力信号としてバッファ制御信号123を入力する。
【0033】図2は、本実施形態の半導体集積回路の動
作を示すタイミングチャートである。この図2におい
て、ビット幅を持っている信号は、16進値で表現され
ている。図1,図2を参照して本実施形態の半導体集積
回路のエラー検出回路の動作について説明する。ここ
で、以下の説明に用いているチェックサムは、ROMの
ワードを指定するアドレスとROMに格納している命令
をバイトデータ単位で加算し、最下位の1バイトデータ
の2の補数をとったものである。たとえば、アドレスが
16進値「01」で、命令が16進値「20FF」の場
合のチェックサムは、バイトデータ単位で「01」+
「20」+「FF」の加算を行ない、最下位の1バイト
データの2の補数をとった16進値「E0」となる。
【0034】まず、第1の動作としてスキャンモード動
作でない場合を示すT1〜T5サイクルの動作について
説明する。
【0035】このとき、スキャンモード信号120が論
理“0”であり、スキャン切替信号102、ウエイト信
号119およびバッファ制御信号123は論理“0”に
なり、スキャンアウト端子122はハイ・インピーダン
スになる。スキャン切替信号102およびウエイト信号
119が論理“0”で、プログラムカウンタ1,アドレ
スレジスタ4,命令レジスタ5,チェックサムレジスタ
6は、命令アドレス信号103,アドレス信号104,
命令コード信号105,チェックサムコード信号106
を入力としてそれぞれ選択している。また、命令ROM
2,チェックサムROM3は、アドレス信号104のア
ドレスにより格納している命令,期待値チェックサムを
命令コード信号105,チェックサムコード信号106
としてそれぞれ出力する。
【0036】T1サイクルにおいて、プログラムカウン
タ1の出力であるアドレス信号104は「01」とな
り、命令ROM2の出力である命令コード信号105は
「20FF」となり、チェックサムROM3の出力であ
るチェックサムコード信号106は「E0」となる。
【0037】T2サイクルにおいて、アドレス信号10
4は「02」となり、アドレスレジスタ4はT1サイク
ルのアドレス信号104の「01」を記憶してポストア
ドレス信号112は「01」となる。また、命令コード
信号105は「3E0A」となり、命令レジスタ5はT
1サイクルの命令コード信号105の「20FF」を記
憶して命令データ信号113は「20FF」となる。さ
らに、チェックサムコード信号106は「B6」とな
り、チェックサムレジスタ6はT1サイクルのチェック
サムコード信号106の「E0」を記憶してチェックサ
ムデータ信号115は「E0」となる。このとき、ポス
トアドレス信号112の「01」と命令データ信号11
3の「20FF」とをチェックサム生成回路7に入力し
て検出対象チェックサム信号114の「E0」を生成
し、検出対象チェックサム信号114の「E0」とチェ
ックサムデータ信号115の「E0」を比較器9で比較
する。比較した結果、一致しているため、比較結果信号
118は論理“0”で、エラー検出信号121は論理
“0”になる。
【0038】T3サイクルにおいて、T2サイクルと同
様に、検出対象チェックサム114の「B6」とチェッ
クサムデータ信号115の「B6」を比較器9で比較し
て一致しているため、比較結果信号118は論理“0”
で、エラー検出信号121は論理“0”になる。
【0039】T4サイクルにおいて、アドレス信号10
4は「04」となり、ポストアドレス信号112は「0
3」となり、命令コード信号105は「1003」とな
り、命令データ信号113は「2B0F」となり、チェ
ックサムコード信号106は「E9」となり、チェック
サムデータ信号115は「93」となる。この時、ポス
トアドレス信号112の「03」と命令データ信号11
3の「2B0F」をチェックサム生成回路7に入力して
検出対象チェックサム信号114の「C3」を生成し、
検出対象チェックサム信号114の「C3」とチェック
サムデータ信号115の「93」を比較器9で比較す
る。チェックサムデータ信号115の「93」はポスト
アドレス信号112の[03」と期待する命令コードの
「2b3F」とのチェックサムであるため、命令データ
信号113の「2B0F」のビット5およびビット4が
期待する命令コードの「2B3F」のビット5およびビ
ット4と異なるため、検出対象チェックサム信号114
とチェックサムデータ信号115を比較した結果、不一
致なり、比較結果信号118は論理“1”で、エラー検
出信号121は論理“1”になって、半導体集積回路の
各ユニットにエラーを知らせる。
【0040】次に、第2の動作としてスキャンモード動
作を行なう場合のT10〜T54サイクルについて説明
する。
【0041】このとき、スキャンモード信号120が論
理“1”であり、上述の第1の動作でエラー検出するこ
とで、スキャン切替信号102、ウエイト信号119お
よびバッファ制御信号123は論理“1”になり、スキ
ャン動作によりチェックサムレジスタ6、命令レジスタ
5、アドレスレジスタ4およびプログラムカウンタ1の
順番で、記憶内容をスキャンアウト端子122に出力す
る。
【0042】T10−T12サイクルは、上述の第1の
動作のT1〜T3の動作と同じである。
【0043】T13サイクルにおいて、ポストアドレス
信号112の「03」と命令データ信号113の「2B
0F」をチェックサム生成回路7に入力して検出対象チ
ェックサム信号114の「C3」を生成し、検出対象チ
ェックサム信号114の「C3」とチェックサムデータ
信号115の「93」とを比較器9で比較し、エラーを
検出すると、比較結果信号118は論理“1”、エラー
検出信号121およびウエイト信号119は論理“1”
になる。このウエイト信号119により、プログラムカ
ウンタ1は入力としてアドレス信号104が選択され、
アドレスレジスタ4は入力としてポストアドレス信号1
12が選択され、命令レジスタ5は入力として命令デー
タ信号113が選択され、チェックサムレジスタ6は入
力としてチェックサムデータ信号115が選択され、各
々のレジスタが記憶しているデータを再度T14サイク
ルで記憶する。この記憶動作により、エラーとなった命
令を命令レジスタ5が記憶し、エラーとなった命令を格
納しているアドレスをアドレスレジスタ4が記憶してい
ることになる。
【0044】T14サイクルにおいて、スキャン切替信
号102が論理“1”となり、アドレスレジスタ4は入
力として第1のスキャン信号108が選択され、命令レ
ジスタ5は入力として第2のスキャン信号109が選択
され、チェックサムレジスタ6は入力として第3のスキ
ャン信号110が選択されて、シリアル接続の状態にな
り、シフト動作可能になる。
【0045】T15サイクルから、シフト動作を開始
し、プログラムカウンタ1、アドレスレジスタ4、命令
レジスタ5およびチェックサムレジスタ6は下位ビット
側に向かって1ビットのシフト動作を行ない、プログラ
ムカウンタ1の最上位ビットは論理“0”を記憶し、ア
ドレスレジスタ4の最上位ビットは第1のスキャン信号
108を伝搬してきたプログラムカウンタ1の最下位ビ
ットの論理“0”を記憶し、命令レジスタ5の最上位ビ
ットは第2のスキャン信号109を伝搬してきたアドレ
スレジスタ4の最下位ビットの論理“1”を記憶し、チ
ェックサムレジスタ6の最上位ビットは第3のスキャン
信号110を伝搬してきた命令レジスタ5の最下位ビッ
トの論理“1”を記憶し、チェックサムレジスタ6の最
下位ビットの論理“1”が第4のスキャン信号111を
伝搬して3ステートバッファ11に入力し、バッファ制
御信号123が論理“1”になり、3ステートバッファ
11が論理“1”を出力してスキャンアウト端子122
に伝搬する。
【0046】T15〜T22サイクルのシフト動作によ
り、チェックサムレジスタ6の内容をスキャンアウト端
子122で観測でき、T23〜T38サイクルのシフト
動作により、命令レジスタ5の内容をスキャンアウト端
子122で観測でき、T39〜T46サイクルのシフト
動作によりアドレスレジスタ4の内容をスキャンアウト
端子122で観測でき、T47〜T54サイクルのシフ
ト動作により、プログラムカウンタ1の内容をスキャン
アウト端子122で観測できる。
【0047】図3は、本発明の半導体集積回路の実施形
態2を示す部分ブロック図であり、命令メモリの動作エ
ラーを検出するエラー検出回路部分を示す。図3を参照
すると、本実施形態の半導体集積回路は、図1に示した
実施形態1の半導体集積回路と同じく、プログラムカウ
ンタ1,命令ROM2,命令レジスタ5,デコーダ8な
どを有し、エラー検出回路としてアドレスレジスタ4,
チェックコード生成回路7,チェックサムROM3,チ
ェックサムレジスタ6,比較器9,スキャン切替制御回
路10,3ステートバッファ11を備えている。図1に
示した実施形態1との相違点は、プログラムカウンタ1
が、最上位ビットにスキャンイン端子を接続し、スキャ
ンイン端子から期待値信号107をスキャン入力できる
ことにある。その他のブロックは、図1の各ブロックと
同様であるので、重複説明を省略する。
【0048】このプログラムカウンタ1は、図1に示し
た実施形態1の半導体集積回路と同じく、クロック信号
101の立ち上がりエッジに同期して命令ROM2およ
びチェックサムROM3にアドレス信号104を順次出
力および記憶する第1の記憶手段であり、8ビット構成
のレジスタである。さらに、本実施形態では、その他の
入力信号として、最上位ビットにスキャンイン端子から
期待値信号107を追加入力できる。
【0049】これにより、プログラムカウンタ1、アド
レスレジスタ4、命令レジスタ5およびチェックサムレ
ジスタ6をシリアル接続し、これら各記憶手段内容をシ
フト動作しスキャンアウト端子122で観測できると同
時に、期待値信号107の入力およびシフト動作によ
り、エラー検出した命令の期待値チェックサムをチェッ
クサムレジスタ6に入力し、エラー箇所を期待値に修正
した命令を命令レジスタ5に入力し、エラー検出した命
令を格納するアドレスをアドレスレジスタ4に入力し、
エラー検出したサイクルの次のサイクルに読み出す命令
およびその期待値チェックサムを指定するアドレスをプ
ログラムカウンタ1に入力することができる。これによ
り、命令ROMが正常動作であるか否かについて確認が
できる。
【0050】図4は、本実施形態の半導体集積回路の動
作例を示すタイミングチャートである。この図4におい
て、ビット幅を持っている信号は、16進値で表現され
ている。図3および図4を用いて本発明の他の実施例に
よるエラー検出回路の動作について説明する。
【0051】図4に示すT55〜T59サイクルにおい
て、本実施形態の半導体集積回路はエラー検出した状態
であり、スキャンモード信号120が論理“1”であ
り、スキャン切替信号102,ウエイト信号119,バ
ッファ制御信号123が論理“1”になり、T55〜T
60サイクル間のアドレス信号104,ポストアドレス
信号112,検出対象チェックサム信号114,チェッ
クサム信号106,チェックサムデータ信号115は1
6進値「00」になり、命令コード信号105および命
令データ信号113は16進値「0000」になってい
る。
【0052】次に、第1の動作としてスキャンモード動
作を行なう。スキャンイン端子からシフト入力する期待
値信号107のデータ順は、最初にチェックサムレジス
タ6の最下位ビットから上位ビット方向の順に期待値デ
ータを入力し、次いで、命令レジスタ5,アドレスレジ
スタ4,プログラムカウンタ1の順で、同様に最下位ビ
ットから上位ビット方向の順に期待値データを入力し、
最後にプログラムカウンタ1の最上位ビットの期待値デ
ータを入力する。たとえば、T60サイクルにおいて、
チェックサムレジスタ6のビット0の期待値データとな
る論理“1”をスキャンイン端子に期待値信号107と
して設定する。T61サイクルにおいて、スキャンイン
端子が接続しているプログラムカウンタ1の最上位ビッ
トが、T60サイクルにおいてスキャンイン端子に期待
値信号107として設定された論理“1”を記憶し、チ
ェックサムレジスタ6のビット1の期待値データとなる
論理“1”をスキャンイン端子に期待値信号107とし
て設定する。
【0053】同様な期待値信号107の設定およびシフ
ト入力により、T60〜T67サイクルにおいて、期待
値チェックサム「93」をチェックサムレジスタ6に設
定し、T68〜T83サイクルにおいて、エラー箇所ビ
ット4,5を共に論理“1”に修正した期待値命令「2
B3F」を命令レジスタ5に設定し、T84〜T91サ
イクルにおいて、エラー検出した命令を格納するアドレ
ス「03」をアドレスレジスタ4に設定し、T92〜T
99サイクルにいて、エラー検出したサイクルの次のサ
イクルに読み出す命令およびその期待値チェックサムを
指定するアドレス「04」をプログラムカウンタ1に設
定する。
【0054】次に、T100サイクルにおいて、第2の
動作としてスキャンモード解除の動作を行なう。すなわ
ち、プログラムカウンタ1,アドレスレジスタ4,命令
レジスタ5,チェックサムレジスタ6にデータの設定が
終了し、スキャンモード信号120を論理“0”にする
ことで、スキャン切替信号102,ウエイト信号119
が論理“0”になり、スキャンモードおよびウエイト状
態が解除される。このとき、プログラムカウンタ1は、
命令アドレス信号103を入力として選択し、アドレス
レジスタ4は、アドレス信号104を入力として選択
し、命令レジスタ5は、命令コード信号105を入力と
して選択し、チェックサムレジスタ6は、チェックサム
コード信号106を入力として選択する。
【0055】このT100サイクル以降は、T100サ
イクルで各レジスタに期待値データが入っているため、
正常な動作を行なうことができる。
【0056】なお、上述の実施形態では、命令ROM
2,チェックサムROM3が、256ワード×16ビッ
ト,256ワード×8ビットの構成である場合について
説明したが、そのワード数,ビット幅は、任意のワード
数,ビット幅でよい。また、チェックコード信号は、チ
ェックサム信号を用いて説明したが、パリティチェック
コード信号でも、本発明は実現できる。
【0057】
【発明の効果】以上説明したように、本発明による半導
体集積回路は、命令メモリから読み出したデータおよび
その読出しアドレスに対応した検出対象チェックコード
をサイクル毎に生成し、その生成した検出対象チェック
コードと予めメモリに格納している期待値チェックコー
ドを比較することにより、ユーザーのアプリケーション
動作時の不規則なアドレス変化に依存するエラーを検出
できる。
【0058】また、命令メモリのデータおよびその読出
しアドレスの値からチェックコードを求めることによ
り、メモリ内のワード線の故障などにより指定したアド
レスと異なるアドレスの内容をメモリから読み出すとい
った誤りであっても正確に検出できる。
【0059】また、命令メモリから読み出したデータお
よびその読出しアドレスと、チェックコードを格納して
いるメモリから読み出したチェックコードと、を一時記
憶し、その後にエラー検出を行なうことにより、所定の
動作周波数内にアドレスが変化して命令メモリから読み
出したデータがレジスタに正しく記憶できなかった場合
でも、正確にエラー検出できる。
【0060】また、エラー検出したとき、命令メモリか
ら読み出したデータおよびその読出しアドレスを端子で
観測することにより、エラーとなったデータの格納アド
レスが特定でき、また、命令メモリの1ワードが複数ビ
ットで構成されている場合、エラーとなったデータのビ
ット位置が特定できる。このため、エラーの原因が機能
不具合または製造欠陥で有るかを判断でき、数か月間を
要していた不具合解析時間を数日に短縮できるため、不
具合対策を迅速化できる。
【0061】また、エラー検出した命令メモリの読み出
したデータを期待値に修正し、このデータと、その読出
しアドレスと、期待値チェックコードと、エラー検出し
たデータの次の読出しアドレスと、をから入力すること
により、エラー検出したサイクル以降の動作が正常に動
作することが確認できる。
【0062】また、エラー検出したとき、命令メモリか
ら読出したデータおよびその読出しアドレスを記憶して
いるレジスタをシリアル接続しそれら記憶データをスキ
ャンする手段により、通常動作で使用しているレジスタ
の内容をで直接観測でき、より正確な情報を得ることが
できる。
【0063】さらに、上述の外部入力端子および外部出
力端子は、それぞれ最低限の1端子に抑えることがで
き、パッケージで制限されるピン数を有効に活用できる
などの効果が有る。
【図面の簡単な説明】
【図1】本発明の半導体集積回路の実施形態1を示す部
分ブロック図である。
【図2】図1の半導体集積回路におけるエラー検出回路
の動作例を示すタイミングチャートである。
【図3】本発明の半導体集積回路の実施形態2を示す部
分ブロック図である。
【図4】図2の半導体集積回路におけるエラー検出回路
の動作例を示すタイミングチャートである。
【図5】従来の半導体集積回路例を示すブロック図であ
る。
【符号の説明】 1 プログラムカウンタ 2 命令ROM 3 チェックサムROM 4 アドレスレジスタ 5 命令レジスタ 6 チェックサムレジスタ 7 チェックサム生成回路 8 デコーダ 9 比較器 10 スキャン切替制御回路 11 3ステートバッファ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 命令コードを予め格納しアドレス信号に
    対応して命令コード信号を出力する命令メモリと、クロ
    ック信号に同期して前記アドレス信号を順次出力および
    記憶する第1の記憶手段と、前記命令コード信号を前記
    クロック信号に同期して一時記憶および出力する第2の
    記憶手段と、を有し、この第2の記憶手段の出力に対応
    して動作する半導体集積回路において、前記第2の記憶
    手段の出力および前記アドレス信号に対応したチェック
    コード信号を前記クロック信号サイクルごとに生成し前
    記命令コードおよびそのアドレス値に対応したチェック
    データと比較し前記命令メモリの動作エラーを検出する
    エラー検出回路を備えることを特徴とする半導体集積回
    路。
  2. 【請求項2】 前記エラー検出回路が、前記アドレス信
    号を前記クロック信号に同期して一時記憶および出力す
    る第3の記憶手段と、前記第2および第3の記憶手段の
    出力を入力しそれらに対応するチェックコード信号を生
    成するチェックコード生成回路と、前記命令コードおよ
    びそのアドレス値に対応したチェックデータを予め格納
    し前記アドレス信号に対応して出力するチェックデータ
    メモリと、このチェックデータメモリの出力を前記クロ
    ック信号に同期して一時記憶および出力する第4の記憶
    手段と、この第4の記憶手段および前記チェックコード
    生成回路の出力を比較し比較結果信号を出力する比較器
    と、を備える、請求項1記載の半導体集積回路。
  3. 【請求項3】 前記エラー検出回路が、スキャンモード
    信号および前記比較結果信号を入力しこれら信号に対応
    してスキャンモード動作への切替え制御を行うスキャン
    モード切替制御回路と、このスキャンモード切替制御回
    路の出力に対応してスキャンモード動作時に各スキャン
    信号をキャンアウト端子に直列出力するバッファと、を
    備え、前記第1〜第4の記憶手段が、前記スキャンモー
    ド切替制御回路の出力に対応してスキャンモード動作し
    各スキャン信号をスキャン入出力し前記バッファにスキ
    ャン出力する、請求項2記載の半導体集積回路。
  4. 【請求項4】 前記スキャンモード切替制御回路が、前
    記比較結果信号が不一致を示すときスキャンモード動作
    への切替え制御を行う、請求項3記載の半導体集積回
    路。
  5. 【請求項5】 前記命令メモリまたは前記チェックデー
    タメモリが、読出し専用メモリからなる、請求項1,
    2,3または4記載の半導体集積回路。
  6. 【請求項6】 前記チェックコード信号が、チェックサ
    ム信号またはパリティ信号である、請求項5記載の半導
    体集積回路。
JP8252731A 1996-09-25 1996-09-25 半導体集積回路 Pending JPH10105426A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP8252731A JPH10105426A (ja) 1996-09-25 1996-09-25 半導体集積回路
US08/937,657 US6073267A (en) 1996-09-25 1997-09-24 Semiconductor integrated circuit with error detecting circuit
EP97250288A EP0833249B1 (en) 1996-09-25 1997-09-25 Semiconductor integrated circuit with error detecting circuit
DE69719896T DE69719896T2 (de) 1996-09-25 1997-09-25 Integrierte Halbleiterschaltung mit Fehlererkennungsschaltung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8252731A JPH10105426A (ja) 1996-09-25 1996-09-25 半導体集積回路

Publications (1)

Publication Number Publication Date
JPH10105426A true JPH10105426A (ja) 1998-04-24

Family

ID=17241487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8252731A Pending JPH10105426A (ja) 1996-09-25 1996-09-25 半導体集積回路

Country Status (4)

Country Link
US (1) US6073267A (ja)
EP (1) EP0833249B1 (ja)
JP (1) JPH10105426A (ja)
DE (1) DE69719896T2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI229276B (en) * 2003-07-23 2005-03-11 Tatung Co Protocol method of reusable hardware IP
GB2418269B (en) * 2004-09-15 2010-07-21 Tatung Co Ltd Reusable hardware IP protocol method for a system-on-chip device
JP4178248B2 (ja) * 2004-10-28 2008-11-12 富士通マイクロエレクトロニクス株式会社 半導体装置
JPWO2008053723A1 (ja) * 2006-11-02 2010-02-25 日本電気株式会社 半導体集積回路および演算装置の故障検出方法
JP2009087485A (ja) * 2007-10-01 2009-04-23 Elpida Memory Inc 半導体装置
CN108288489B (zh) * 2018-04-24 2023-07-25 长鑫存储技术有限公司 半导体存储器循环冗余校验装置及半导体存储器
KR20200056732A (ko) * 2018-11-15 2020-05-25 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
US11604692B2 (en) * 2021-08-19 2023-03-14 Wuxi Esiontech Co., Ltd. Field programmable gate array (FPGA) with automatic error detection and correction function for programmable logic modules

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3585378A (en) * 1969-06-30 1971-06-15 Ibm Error detection scheme for memories
JPS5352029A (en) * 1976-10-22 1978-05-12 Fujitsu Ltd Arithmetic circuit unit
DE2655653C2 (de) * 1976-12-08 1982-12-16 Siemens AG, 1000 Berlin und 8000 München Anordnung zur Feststellung der richtigen Zuordnung von Adresse und Speicherwort in einem wortorganisierten Datenspeicher
JPS5378127A (en) * 1976-12-22 1978-07-11 Sharp Corp Self diagnosis system of fixed program memory unit
JPS58107966A (ja) * 1981-12-22 1983-06-27 Fujitsu Ltd スキヤン方式
JPS6318597A (ja) * 1986-07-10 1988-01-26 Mitsubishi Electric Corp 集積回路内蔵メモリテスト装置
JPH01292550A (ja) * 1988-05-20 1989-11-24 Nec Corp 誤り検出回路
JPH02302833A (ja) * 1989-05-02 1990-12-14 Motorola Inc マイクロプロセッサのための動作機能チェック装置および方法
US5226043A (en) * 1990-12-27 1993-07-06 Raytheon Company Apparatus and method for data error detection and correction and address error detection in a memory system
US5793687A (en) * 1996-12-03 1998-08-11 Mitsubishi Semiconductor America, Inc. Micro ROM testing system using micro ROM timing circuitry for testing operations

Also Published As

Publication number Publication date
EP0833249B1 (en) 2003-03-19
US6073267A (en) 2000-06-06
EP0833249A1 (en) 1998-04-01
DE69719896D1 (de) 2003-04-24
DE69719896T2 (de) 2004-02-19

Similar Documents

Publication Publication Date Title
US5469443A (en) Method and apparatus for testing random access memory
JPH06250938A (ja) Ramアレイのテスト及び制御を行なう回路及びその方法
JPH05233352A (ja) マイクロプロセッサ
JPH10105426A (ja) 半導体集積回路
JPH0883220A (ja) データ処理装置
US7484147B2 (en) Semiconductor integrated circuit
JP2002312252A (ja) メモリ診断装置及び診断方法
JP2000331499A (ja) メモリテスト回路および半導体集積回路
JP3606788B2 (ja) 半導体集積回路および半導体集積回路の検査方法
JPH063424A (ja) 集積回路装置、および集積回路装置に組込まれるテストデータ発生回路
JP2004079032A (ja) 半導体装置のテスト方法及び半導体装置
JPS58215799A (ja) 制御記憶検証方式
JPH04338847A (ja) アドレス変換バッファ診断装置
JP4518790B2 (ja) 半導体装置及びその制御方法
JPH02126344A (ja) プログラム処理時間測定システム
JP2578992B2 (ja) スキャンパス回路
JPS62266626A (ja) マイクロプログラム方式のマイクロコンピユ−タ
JP2006268919A (ja) メモリの組み込み自己テスト回路および自己テスト方法
JP2005201829A (ja) 半導体集積回路の遅延故障テストパターン生成方法および遅延故障検査方法
JPS5883397A (ja) メモリ内容チエツク制御方式
JPS61165171A (ja) マイクロコンピユ−タ
JPH04109340A (ja) 擬似障害発生回路
JPH0440543A (ja) 半導体集積回路装置
JPS6318597A (ja) 集積回路内蔵メモリテスト装置
JPS58186851A (ja) 誤り検査装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19990817