JP2012252373A - 自己診断装置、自己診断方法、及びプログラム - Google Patents

自己診断装置、自己診断方法、及びプログラム Download PDF

Info

Publication number
JP2012252373A
JP2012252373A JP2011122093A JP2011122093A JP2012252373A JP 2012252373 A JP2012252373 A JP 2012252373A JP 2011122093 A JP2011122093 A JP 2011122093A JP 2011122093 A JP2011122093 A JP 2011122093A JP 2012252373 A JP2012252373 A JP 2012252373A
Authority
JP
Japan
Prior art keywords
self
diagnosis
bist
functional block
operation frequency
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.)
Withdrawn
Application number
JP2011122093A
Other languages
English (en)
Inventor
Mizuki Senda
瑞樹 千田
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2011122093A priority Critical patent/JP2012252373A/ja
Publication of JP2012252373A publication Critical patent/JP2012252373A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】効率的に自己診断を行うこと。
【解決手段】自己診断装置は、複数の機能ブロックと、複数の機能ブロックに対して自己診断を夫々行う複数の自己診断手段と、各機能ブロックの動作頻度を夫々検出する動作頻度検出手段と、動作頻度検出手段により検出された各機能ブロックの動作頻度に基づいて、各自己診断手段が各機能ブロックの自己診断を行う優先順位を設定する優先順位設定手段と、所定の時間制限を行う時間制限値に基づいて、各機能ブロックの自己診断の実行が可能な実行可能回数を算出する実行可能回数算出手段と、を備える。各自己診断手段は、優先順位設定手段により設定された優先順位と、実行可能回数算出手段により算出された実行可能回数と、に基づいて、各機能ブロックの自己診断を行う。
【選択図】図1

Description

本発明は、半導体集積回路の自己診断を行う自己診断装置、自己診断方法、及びプログラムに関するものである。
半導体分野において、例えば、製品品質の観点からMUX−SCANを自己診断回路(以下、BIST(Build in self test)回路と称す)として内蔵し、電源投入時やシステムリセット時に自己診断を行い、故障検出を行なう技術が知られている。
また、車載ボディー系やダッシュボード系のマイクロコントローラ(以下、MCU(Micro Controller Unit)と称す)などにおいて、バッテリー駆動による低消費電力モードの状態が何年も継続する場合もある。このため、上記の状態だけではなく、低消費電力モード(スタンバイやスリープモードのようなモード、若しくは、一部ブロック電源を落とすモード)から通常モードへの復帰時にも自己診断を実施したいという要望もある。
しかしながら、例えば、低消費電力モードには復帰時間制限内に通常モードに復帰しなければならないという制約があるため、その復帰時間制限内で故障検出を行う必要があり、MCUを短時間で効率よく診断する手法が求められている。一方、複数の機能ブロックを有し、対象の機能ブロックに対する自己診断を逐次実行する半導体デバイスの自己診断方法が知られている(特許文献1参照)。また、自己診断を省略している回数または自己診断を省略している時間が閾値に達しているか否かを判断し、自己診断を実施する情報処理装置が知られている(特許文献2参照)。
特開2003−68865号公報 特開2010−165007号公報
しかしながら、上記特許文献1に示す自己診断方法においては、機能ブロックが増加するに従って、自己診断時間が増加することとなる。この場合、例えば、低消費電力モードから通常モードへの復帰時間に制限があると、全ての自己診断を完了できない可能が生じる。一方、予め自己診断検査対象の機能ブロック数を削減することが考えられるが、検査対象の機能ブロックとユーザが使用する機能ブロックとが一致しない可能性があり、品質低下を招く虞がある。
また、上記特許文献2に示す情報処理装置においても、自己診断を実施するか否かを判断するものであり、特許文献1に示す自己診断方法と同様に、機能ブロックが増加するに従って、自己診断時間が増加することとなる。
上記目的を達成するための本発明の一態様は、複数の機能ブロックと、前記複数の機能ブロックに対して自己診断を夫々行う複数の自己診断手段と、前記各機能ブロックの動作頻度を夫々検出する動作頻度検出手段と、前記動作頻度検出手段により検出された前記各機能ブロックの動作頻度に基づいて、前記各自己診断手段が前記各機能ブロックの自己診断を行う優先順位を設定する優先順位設定手段と、所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出する実行可能回数算出手段と、を備え、前記各自己診断手段は、前記優先順位設定手段により設定された前記優先順位と、前記実行可能回数算出手段により算出された前記実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行う、ことを特徴とする自己診断装置。
この一態様によれば、各機能ブロックの動作頻度に応じて自己診断の優先順位を設定し、設定した優先順位と自己診断の実行可能回数とに基づいて各機能ブロックの自己診断を行うことにより、各機能ブロックの自己診断を効率的に行うことができる。
他方、上記目的を達成するための本発明の一態様は、複数の機能ブロックの動作頻度を夫々検出するステップと、前記検出された各機能ブロックの動作頻度に基づいて、前記各機能ブロックに対して自己診断を行う優先順位を設定するステップと、所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出するステップと、前記設定された優先順位と、前記算出された実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行うステップと、を含む、ことを特徴とする自己診断装置の自己診断方法であってもよい。
さらに、上記目的を達成するための本発明の一態様は、複数の機能ブロックの動作頻度を夫々検出する処理と、前記検出された各機能ブロックの動作頻度に基づいて、前記各機能ブロックに対して自己診断を行う優先順位を設定する処理と、所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出する処理と、前記設定された優先順位と、前記算出された前記実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行う処理と、をコンピュータに実行させる、ことを特徴とする自己診断装置のプログラムであってもよい。
本発明によれば、効率的に自己診断を行うことができる自己診断装置、自己診断方法、及びプログラムを提供することができる。
本発明の実施の形態1に係る半導体集積回路の自己診断装置の概略的なシステム構成を示すブロック図である。 本発明の実施の形態1に係る半導体集積回路の自己診断装置における処理フローの一例を示すフローチャートである。 本発明の実施の形態2に係る半導体集積回路の自己診断装置の概略的なシステム構成を示すブロック図である。 本発明の実施の形態2に係る半導体集積回路の自己診断装置における処理フローの一例を示すフローチャートである。
実施の形態1.
以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の実施の形態1に係る半導体集積回路の自己診断装置の概略的なシステム構成を示すブロック図である。なお、本実施の形態1に係る半導体集積回路の自己診断装置1は、例えば、MCU(Micro Controller Unit)のペリフェラルブロックに適用されている。
自己診断装置1は、自己診断対象としての半導体集積回路である複数の機能ブロックB10〜B12と、それらを制御する複数のBIST(Build in self test)回路B20〜B22と、各機能ブロックB10〜B12の優先順位を設定するBIST実行優先順位設定ブロックB30と、各機能ブロックB10〜B12の動作を検出する機能ブロック動作頻度検出ブロックB40と、BIST制御命令およびBIST診断の期待値を格納するBIST制御メモリB50と、複数のBIST回路B20〜B22を制御するBISTコントローラB60と、各機能ブロックB10〜B12のレジスタ値を退避させるレジスタ値退避ブロックB70と、MCUの低消費電力モードの制御を行うスタンバイコントローラB80と、各種設定値を格納するレジスタブロックB90と、CPUB100と、を有している。
なお、自己診断装置1は、例えば、制御処理や演算処理等と行うCPU(Central Processing Unit)と、CPUによって実行される制御プログラムや演算プログラム等が記憶されたROM(Read Only Memory)と、処理データ等を一時的に記憶するRAM(Random Access Memory)と、を有するマイクロコンピュータを中心にして、ハードウェア構成されている。また、これらCPU、ROM、及びRAMは、データバスによって相互に接続されている。
各BIST回路B20〜B22は、自己診断手段の一具体例であり、夫々、信号線W100〜W102を介して各機能ブロックB10〜B12に接続されており、対応する各機能ブロックB10〜B12の自己診断を行なう。本実施の形態1に係る自己診断装置1には、周知のMUX−SCAN(マルチプレクスド・スキャン)が適用されているが、これに限らず、例えば、BIST回路の種類は問わないものとする。
BIST実行優先順位設定ブロックB30は、第3記憶手段の一具体例であり、各機能ブロックB10〜B12に対応した優先順位設定メモリB31〜B33を搭載している。各優先順位設定メモリB31〜B33には、各機能ブロックB10〜B12におけるBIST実行時の優先順位を決めるBIST優先順位設定値が設定されている。ここで、BIST優先順位設定値の最大値及び最小値は、後述の機能ブロック動作頻度検出機能の値(各機能ブロックB10〜B12の動作頻度値)に関わらず、BIST動作の有効及び無効を示す値を設定してもよい。
機能ブロック動作頻度検出ブロックB40は、各機能ブロックB10〜B12の動作頻度を夫々検出する。機能ブロック動作頻度検出ブロックB40は、動作頻度検出手段の一具体例であり、各機能ブロックB10〜B12に対応した動作検出回路B41〜B43と、第2記憶手段の一具体例である動作頻度格納メモリB411〜B431と、を搭載しており、夫々、信号線W400〜W402を介して、対応する各機能ブロックB10〜B12に接続されている。
各動作検出回路B41〜B43は、対応する各機能ブロックB10〜B12の動作の頻度を示す動作頻度値を検出し、検出した動作頻度値を対応する各動作頻度格納メモリB411〜B431に夫々格納する。ここで、各動作頻度格納メモリB411〜B431の上限値及び下限値は、例えば、無条件でBIST動作を有効及び無効にするように設定されてもよい。
BIST制御メモリB50は、BIST制御命令およびBIST診断の期待値を格納する。
BISTコントローラB60は、BIST制御ブロックB61と、BIST実行選択ブロックB62と、BIST結果判定ブロックB63と、BIST結果出力ブロックB64と、を有している。
BISTコントローラB60は、信号線W600、W606を介しBIST制御メモリB50に接続され、信号線W603を介しBIST実行優先順位設定ブロックB30に接続され、信号線W604を介し機能ブロック動作頻度検出ブロックB40に接続され、信号線W602、W605を介し各BIST回路B20〜B22に接続され、信号線W802を介しスタンバイコントローラB80に接続され、信号線W608を介して外部に接続されている。
BIST制御ブロックB61は、BIST実行回数カウンタB611を有しており、信号線W600〜W602を介して、BIST制御メモリB50、BIST実行選択ブロックB62、及び各BIST回路B20〜B22に夫々接続されている。BIST制御ブロックB61は、BIST制御メモリB50からBIST制御命令を読み出し、BIST実行選択ブロックB62からBIST対象ブロックおよび実行順番を読み出し、読み出したBIST制御命令、BIST対象ブロック、及び実行順番に基づいて、BIST回路B20〜B22の制御を行なう。また、BIST実行回数カウンタB611は、各機能ブロックB10〜B12においてBIST実行済の回数をカウントするためのカウンタである。
BIST実行選択ブロックB62は、信号線W603を介してBIST実行優先順位設定ブロックB30に接続され、信号線W604を介して機能ブロック動作頻度検出ブロックB40に接続されている。BIST実行選択ブロックB62は、優先順位設定メモリB31〜B33から信号線W603を介して各機能ブロックB10〜B12に対応したBIST優先順位設定値PRIを読み出し、動作検出回路B41〜B43および動作頻度格納メモリB411、421,B431から信号線W604を介して各機能ブロックB10〜B12に対応した動作頻度値Rcntを読み出す。
BIST実行選択ブロックB62は、優先順位設定手段及び実行可能回数算出手段の一具体例であり、読み出したBIST優先順位設定値PRI、および、動作頻度値Rcntに基づいて、BISTの実行基準となるBIST実行優先順位を算出し、低消費電力モードから通常モードへの復帰時間を制限する復帰時間制限値に基づいてBIST実行可能回数を算出する。さらに、BIST実行選択ブロックB62は、算出したBIST実行優先順位に従って各機能ブロックB10〜B12のBISTを実行するようBIST制御ブロックB61に対して制御情報を出力する。
なお、このBIST実行基準には、BISTの時間制限だけではなく、各機能ブロックの動作頻度値も含められる。このため、動作頻度値の低い機能ブロックを実行しないようにBIST実行基準を設定してもよい。また、BIST実行基準に制限が無い場合は、BIST実行優先順位の高い機能ブロックから低い機能ブロックまでを順に全ての機能ブロックの自己診断の実行を行ってもよい。
BIST結果判定ブロックB63は、信号線W605を介して各BIST回路B20〜B22に接続され、信号線W606を介してBIST制御メモリB50に接続され、信号線W607を介してBIST結果出力ブロックB64に接続されている。BIST結果判定ブロックB63は、各BIST回路B20〜B22から各BIST診断結果を読込み、BIST制御メモリB50からBIST診断の期待値を読込み、読み込んだBIST診断結果とその期待値とを比較することで各BIST診断結果の判定を行なう。
BIST結果出力ブロックB64は、信号線W607を介してBIST結果判定ブロックB63と接続されており、BIST結果判定ブロックB63からの診断結果を、信号線W608を介して外部に対して出力する。
レジスタ値退避ブロックB70は、各機能ブロックB10〜B12に対応したレジスタ値退避メモリB71〜B73を搭載しており、信号線W700〜W702を介して各機能ブロックB10〜B12に接続されている。レジスタ値退避ブロックB70は、MCUの低消費電力モード導入時に、各機能ブロックB10〜B12のレジスタ値の退避処理を行なう。
スタンバイコントローラB80は、MCUの低消費電力モードの制御を司るブロックである。スタンバイコントローラB80は、信号線W800を介して各機能ブロックB10〜B12に接続され、信号線W801を介してレジスタ値退避ブロックB70に接続され、信号線W802を介してBISTコントローラB60と接続されており、BISTコントローラB60からBIST動作停止信号を受信する。さらに、スタンバイコントローラB80は、信号線W803を介してCPUB100と接続され、信号線W902を介してレジスタブロックB90と接続されている。
レジスタブロックB90は、第1記憶手段の一具体例であり、動作頻度累積設定レジスタB91と、起動時間制限指定レジスタB92と、電源遮断設定レジスタB93と、を搭載するブロックである。レジスタブロックB90は、信号線W900を介してBISTコントローラB60に接続され、BIST制御に必要なレジスタ値をBISTコントローラB60に対して転送する。
また、レジスタブロックB90は、信号線W901介してCPUB100に接続され、CPUB100は、レジスタブロックB90における書込み読出しを行なう。さらに、レジスタブロックB90は、信号線W902を介してスタンバイコントローラB80に接続されている。
動作頻度累積設定レジスタB91は、各機能ブロックB10〜B12のBIST実行後に、対応する各動作頻度格納メモリの値を維持するか、或いは、初期化を行なうかを設定するためのレジスタである。例えば、動作頻度累積設定レジスタB91を有効に設定した場合、電源投入から累積した各機能ブロックB10〜B12の動作頻度値に基づいて、BISTを実行することができる。一方、動作頻度累積設定レジスタB91を無効に設定した場合、消費電力モード移行前の各機能ブロックB10〜B12の動作頻度値に基づいて、BISTを実行することができる。
起動時間制限指定レジスタB92は、MCUの低消費電力モードから通常モードへの復帰時間の制限値(以下、復帰時間制限値と称す)、及びその復帰時間制限値の有無を設定するためのレジスタである。電源遮断設定レジスタB93は、MCUの低消費電力モード時に各機能ブロックB10〜B12の電源遮断の有効及び無効の設定を行なうためのレジスタである。
CPUB100は、中央演算処理装置であり、MCUの総合的な処理を行なうためのブロックである。CPUB100は、信号線W901介してレジスタブロックB90に接続され、信号線W803を介してスタンバイコントローラB80に接続され、信号線W300を介して機能ブロック動作頻度検出ブロックB40に接続され、信号線W301を介してBIST実行優先順位設定ブロックB30に接続されている。
次に、本実施の形態1に係る半導体集積回路の自己診断装置による自己診断方法を詳細に説明する。図2は、本実施の形態1に係る半導体集積回路の自己診断装置における処理フローの一例を示すフローチャートである。
例えば、電源投入もしくはシステムリセットが行なわれると、各優先順位設定メモリB31〜B33のBIST優先順位設定値に1が設定され、及び各動作頻度格納メモリB411〜B431の動作頻度値に1が設定され初期化が行われる(ステップF10)。なお、BIST優先順位設定値には、例えば、1が設定されているが、これに限らず0以外の任意の値を設定することができる。そして、レジスタブロックB90内部の動作頻度累積設定レジスタB91、起動時間制限設定レジスタB92、及び電源遮断設定レジスタB93が初期化される。
次に、BISTコントローラB60が起動し、自己診断モードへ移行する(ステップF20)。同時に、BIST制御ブロックB61に内蔵されるBIST実行回数カウンタB611に0が設定され初期化される。
その後、BIST実行選択ブロックB62は、上記(ステップF10)において初期化された各機能ブロックB10〜B12に対応する優先順位設定メモリB31〜B33から信号線W603を介して各機能ブロックB10〜B12に対応したBIST優先順位設定値PRIを読み出し、信号線W604を介して動作頻度格納メモリB411〜B431から各機能ブロックB10〜B12に対応した動作頻度値Rcntを読み出し、起動時間制限指定レジスタB92から信号線W900を介して低消費電力モードからの復帰時間制限値Rtimeを読み出す。
BIST実行選択ブロックB62は、これら読み出したBIST優先順位設定値PRIと動作頻度値Rcntとに基づき下記(式1)を用いて、BIST優先順位PRIORITYを算出し、算出したBIST優先順位PRIORITYに基づいてBIST実行優先順番を決定する(ステップF21)。例えば、BIST実行選択ブロックB62は、算出したBIST優先順位PRIORITYが大きいほど、そのBIST実行優先順位を早く設定する。
また、BIST実行選択ブロックB62は、下記(式2)乃至(式4)を用いて、BIST実行可能回数RUNmaxを算出する。
ここで、BIST実行選択ブロックB62における上記処理に関して詳細に説明する。BIST優先順位PRIORITYと、動作頻度Rcntと、優先順位設定値PRIとの関係は、下記(式1)に示すようになっている。
PRIORITY = Rcnt × PRI ・・・(式1)
さらに、BIST実行可能回数RUNmaxを、BIST逐次実行可能回数SERImax、及び、BIST並列実行可能回数PARAmaxに基づいて、下記(式2)を用いて求めることが出来る。
RUNmax = SERImax × PARAmax ・・・(式2)
このBIST逐次実行可能回数(SERImax)及びBIST並列実行可能回数(PARAmax)は、低消費電力モードから通常モードへの復帰時間制限値をRtime、機能ブロックBIST実行最大時間をBtime、半導体集積回路の最大消費電流規定値をCImax、BIST動作最大消費電流値をBImaxとしたとき、(式3)及び(式4)を用いて算出できる。
SERImax = Rtime / Btime ・・・(式3)
PARAmax = CImax / BImax ・・・(式4)
なお、上記(式3)及び(式4)において、低消費電力モードから通常モードへの復帰時間制限値Rtime、機能ブロックBIST実行最大時間Btime、半導体集積回路の最大消費電流規定値CImax、及びBIST動作最大消費電流値BImaxは、例えば、製品設計時にBIST実行選択ブロックB62内に固定値として格納されている。
BIST制御ブロックB61は、上記(ステップF21)において決定したBIST実行優先順位に従い、次にBISTを実行する機能ブロック(以下、機能ブロックnと称す)に対応した各BIST回路B20〜B22に対して信号線W602介して制御命令を送信し、機能ブロックnのBISTを実行させる(ステップF30)。その際、BIST制御ブロックB61は、BIST実行回数カウンタB611の値をインクリメント(+1)する。
BIST結果判定ブロックB63は、上記(ステップF30)において実行した機能ブロックnに対応したBIST回路B20〜B22から、自己診断結果を、信号線W605を介して取り込み、その機能ブロックnの自己診断結果が正常であるか否かを判断する(ステップF31)。
BIST結果判定ブロックB63が、その自己診断結果が正常であると判断したとき(ステップF31のYES)、CPUB100は、動作頻度累積設定レジスタB91の累積設定値を、信号線W901を介して読み込み、その累積設定値が有効および無効のいずれであるかを判断する(ステップF32)。一方、BIST結果判定ブロックB63が、その自己診断結果が異常であると判断したとき(ステップF31のNO)、下記(ステップF40)に移行する。
CPUB100は、動作頻度累積設定レジスタB91の累積設定値が無効と判断したとき(ステップF32のNO)、信号線W300を介して機能ブロックnに対応する動作頻度格納メモリB411〜B431の値に0を設定し初期化を行ない(ステップF33)、下記(ステップF34)に移行する。一方、CPUB100は、動作頻度累積設定レジスタB91の累積設定値が有効と判断したとき(ステップF32のYES)、下記(ステップF34)に移行する。
CPUB100は、信号線W901を介して起動時間制限指定レジスタB92の値を読込み、低消費電力モードから通常モードへ復帰する際の起動時間制限の有効及び無効を判断し(ステップF34)、その制限時間を判別する。
CPUB100により、起動時間制限が有ると判断されたとき(ステップF34のYES)、BIST制御ブロックB61は、BIST実行回数カウンタB611の値(BIST実行済回数)が、BIST実行選択ブロックB62にて算出されたBIST実行可能回数(BISTが並列実行されている場合はBIST逐次実行可能回数)以内か否かを判定する(ステップF35)。一方、CPUB100により、起動時間制限が無いと判断されたとき(ステップF34のNO)、BIST制御ブロックB61は、BIST実行回数カウンタB611の値(BIST実行済回数)が、BIST対象機能ブロックの総数以内か否かを判定する(ステップF36)。
BIST制御ブロックB61は、BIST実行回数カウンタB611の値がBIST実行可能回数以内であると判定したとき(ステップF35のYES)、上記(ステップF30)の処理に戻り、次の優先順位の機能ブロックB10〜B12の自己診断が行われる。一方、BIST制御ブロックB61は、BIST実行回数カウンタB611の値がBIST実行可能回数以内でないと判定したとき(ステップF35のNO)、下記(ステップF50)の処理に移行する。
BIST制御ブロックB61は、BIST実行回数カウンタB611の値が、BIST対象機能ブロックの総数以内であると判定したとき(ステップF36のYES)、上記(ステップF30)の処理に戻り、次の優先順位の機能ブロックB10〜B12の自己診断が行われる。一方、BIST制御ブロックB61は、BIST実行回数カウンタB611の値が、BIST対象の機能ブロックB10〜B12の総数を超えていると判定したとき(ステップF36のNO)、下記(ステップF50)の処理に移行する。
(ステップF40)において、BIST結果出力ブロックB64は、信号線W608を介してエラー信号を外部に対して出力し、本処理を終了させる。
(ステップF50)において、BISTコントローラB60は、スタンバイコントローラB80に対して、信号線W802を介してBIST動作停止信号を送信し、自己診断モードから通常モードへ移行する。その際、BISTコントローラB60は、必要に応じて各機能ブロックB10〜B12のレジスタ値を、レジスタ値退避ブロックB70から復帰させる。BISTコントローラB60が通常モードに移行すると、各機能ブロックB10〜B12の動作がユーザープログラムに従って開始される。
以下、(ステップF51)から(ステップF70)までが通常モードの処理であり、低消費電力モードへ移行するまで、これらステップが繰り返し実行される。
まず、CPUB100は、BIST実行優先順位設定ブロックB30内の各優先順位設定メモリB31〜B33に対して、信号線W300を介して、BIST実行選択ブロックB62により算出された優先順位設定値の設定を行なう(ステップF51)。
次に、CPUB100は、動作頻度累積設定レジスタB91、起動時間制限指定レジスタB92、及び電源遮断設定レジスタB93を、ユーザープログラムに従って設定を行なう(ステップF52)。
その後、機能ブロック動作頻度検出ブロックB40において、機能ブロックB10〜B12(以下、機能ブロックnと称す)に対応する動作検出回路B41〜B43が、機能ブロックnが動作を開始する際の動作開始トリガの検出を行なう(ステップF60)。ここで、動作開始トリガとは、機能ブロックnの各動作マクロの動作を開始する際に必要となるトリガのことであり、例えば、特定レジスタへの書込み、割込み、などの各種開始トリガを含むものとする。
各動作検出回路B41〜B43が、動作開始トリガを検出すると(ステップF60のYES)、機能ブロックnに対応する動作頻度格納メモリB411〜B431の値をインクリメントし、機能ブロックnの動作数のカウントを行なう(ステップF61)。一方、各動作検出回路B41〜B43が、動作開始トリガを検出しないとき(ステップF60のNO)、下記(ステップF70)の処理に移行する。
機能ブロックnは、夫々、通常動作を開始する(ステップF62)。
スタンバイコントローラB80は、CPUB100から送信される低消費電力モードへ移行するための命令を受信し低消費電力モードへ移行するか、通常モードを維持するかの判定を行なう(ステップF70)。
スタンバイコントローラB80は、低消費電力モードへ移行すると判定したとき(ステップF70のYES)、CPUB100の命令に従って低消費電力モードに移行し、電源遮断レジスタB93の値を読込み、電源遮断の設定が有効であるか否かを判定する(ステップF71)。一方、スタンバイコントローラB80は、低消費電力モードへ移行しないと判定したとき(ステップF70のNO)、上記(ステップF52)の処理に戻る。この場合、スタンバイコントローラB80は、通常モードを維持し、(ステップF60)〜(ステップF62)の処理を繰り返し、機能ブロック動作頻度検出ブロックB40は各機能ブロックB10〜B12の動作頻度値を検出し続ける。
スタンバイコントローラB80は、電源遮断の設定が有効であると判定したとき(ステップF71のYES)、各機能ブロックB10〜B12のレジスタ値の退避をレジスタ退避ブロックB70に対して行い、不定伝播防止処理などの電源遮断に必要な処理を行う(ステップF72)。一方、スタンバイコントローラB80は、電源遮断の設定が無効であると判定したとき(ステップF71のNO)、各機能ブロックB10〜B12のレジスタ値の退避をレジスタ退避ブロックB70対して行う(ステップF73)。
スタンバイコントローラB80は、MCUを低消費電力モードへ移行させる処理を行なう(ステップF74)。その際、スタンバイコントローラB80は、電源遮断設定レジスタB93の設定が電源遮断の有効と判断した場合、各機能ブロックB10〜B12の電源遮断を行なう。
スタンバイコントローラB80は、低消費電力モードから通常モードへ復帰させるか、低消費電力モードを維持するかの判定を行なう(ステップF80)。
スタンバイコントローラB80は、低消費電力モードから通常モードへ復帰させると判定したとき(ステップF80のYES)、電源遮断レジスタB93の値を読込み、電源遮断の設定が有効であるか否かを判定する(ステップF81)。
スタンバイコントローラB80は、電源遮断の設定が有効であると判定したとき(ステップF81のYES)、不定伝播防止処理の解除(電源遮断の処理)を行なう(ステップF82)。
そして、レジスタ値退避ブロックB70は、上記(ステップF72)もしくは(ステップF73)において退避したレジスタ値を各機能ブロックB10〜B12のレジスタに格納し直し、上記(ステップF20)へ戻り自己診断モードへ移行する。
なお、(ステップF20)以降における2回以降の処理は、BIST実行優先順位設定ブロックB30にBIST優先順位設定値が設定され、機能ブロック動作頻度検出ブロックB40に各機能ブロックB10〜B12の動作頻度値が格納されている。このため、通常モードの動作頻度値に応じてBIST実行順番およびBIST対象の機能ブロックB10〜B12が変更される。そして、レジスタブロックB90には、各種設定値が格納されている為、BIST実行の設定および消費電力モードへ移行方法が変更される。この処理はMCUの電源が遮断されるまで継続して行なわれる。
以上、本実施の形態1に係る半導体集積回路の自己診断装置1において、通常モード中に使用している各機能ブロックB10〜B12の動作頻度値を測定し、その動作頻度値の高い順に各機能ブロックB10〜B12のBIST実行の実行順位を決定し、低消費電力モードから通常モードへの復帰時間制限値以内に実行可能な機能ブロックB10〜B12のみの自己診断を行なう。このように、復帰時間制限値以内において、故障の発生し易い動作頻度値の高い機能ブロックB10〜B12から順次自己診断を行うことで、各機能ブロックB10〜B12の自己診断時間の増加を抑え、効率的な半導体集積回路の自己診断が可能となる。
さらに、一般的に動作頻度値の高い機能ブロックは、動作頻度値の低い機能ブロックと比較してマイグレーション現象の発生率が高く、故障しやすいのは周知の事実である。そして、ユーザープログラムによれば、動作頻度値が高い機能ブロックの故障は致命的であることが多いため、本発明のように、動作頻度値の高い機能ブロックB10〜B12から優先的に自己診断を行うことで、品質を向上させることができる。
さらに、時間的制限がなく、毎回すべての機能ブロックB10〜B12のBISTを実行が可能な場合においても、故障しやすい機能ブロックB10〜B12から診断を行なうため、エラー発生時には早い時間にエラー認識を行うことができる。
実施の形態2.
図3は、本発明の実施の形態2に係る半導体集積回路の自己診断装置の概略的構成を示すブロック図である。本実施の形態2に係る自己診断装置2は、上記実施の形態1に係る自己診断装置1のBIST実行優先順位設定ブロックB30の優先順位設定メモリB31〜B33、及び機能ブロック動作頻度検出ブロックB40の動作頻度格納メモリB411〜B431を、外部メモリB110に変更し、この外部メモリB110を制御する外部メモリコントローラB120を更に備えることを特徴とする。
機能ブロック動作頻度検出ブロックB40は、各機能ブロックB10〜B12に対応した動作検出回路B41〜B43を搭載しており、信号線W400〜W402を介して各機能ブロックB10〜B12に接続され、信号線W1202を介して外部メモリコントローラB120に接続されている。
外部メモリB110は、例えば、MCU外部に実装されたメモリであり、優先順位設定メモリB111と、動作頻度格納メモリB112とを有している。
外部メモリコントローラB120は、例えば、MCU外部とのメモリインターフェースブロックである。外部メモリコントローラB120は、信号線W1201を介してBIST実行優先順位設定ブロックB30に接続され、信号線W1202を介して機能ブロック動作頻度検出ブロックB40に接続されている。
外部メモリコントローラB120は、信号線W1101を介して外部メモリB110に接続されており、信号線W1101を介して外部メモリB110に情報を格納し、若しくは情報の読み出しを行なう。外部メモリコントローラB120は、信号線W301を介してCPUB100にも接続されており、CPUB100から外部メモリコントローラB120を介して外部メモリB110への読み書きも可能となっている。なお、本実施の形態2において、他の構成は上記実施の形態1と略同一であるため、詳細な説明は省略する。
図4は、本実施の形態2に係る半導体集積回路の自己診断装置における処理フローの一例を示すフローチャートである。まず、本実施の形態2において、上記実施の形態1と異なる処理内容について、詳細に説明する。
(ステップF21)において、BIST実行選択ブロックB62は、(ステップF10)において初期化された各機能ブロックB10〜B12に対応する優先順位設定メモリB111のBIST実行優先順位設定値PRI、および、動作頻度格納メモリB112の動作頻度値Rcntを、外部メモリコントローラB120、信号線W1201およびW1202を介して読み出し、その読み出した値に基づいてBIST実行優先順位を決定する。
(ステップF51)において、CPUB100は、BIST実行優先順位設定ブロックB30内の外部メモリB110に対して、外部メモリコントローラB120及び信号線W1101を介して、BIST優先順位の設定を行なう。
(ステップF61)において、機能ブロック動作頻度検出ブロックB40は、信号線W1202を介し外部メモリコントローラB120に各機能ブロックnの動作頻度状況を伝達し、外部メモリコントローラB120は、信号線W1101を介して外部メモリB110の動作頻度格納メモリB112の値をインクリメントする。
本実施の形態2において、他の処理は、上記実施の形態1の処理と略同一であるため、詳細な説明は省略する。
以上、本実施の形態2に係る半導体集積回路の自己診断装置において、BIST実行優先順位設定ブロックB30、および、機能ブロック動作頻度検出ブロックB40の代わりにMCU外の外部メモリB110を使用する事によって、優先順位設定メモリB31〜B33および動作検出回路B41〜B43の値をMCUの電源投入前に設定する事が可能になる。したがって、低消費電力モードから通常モードへの復帰時のみでなく、電源投入時やリセット時においても本発明の上記効果を奏することができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
また、上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、例えば、図2及び図4に示す処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。
また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
さらに、上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
複数の機能ブロックと、
前記複数の機能ブロックに対して自己診断を夫々行う複数の自己診断手段と、
前記各機能ブロックの動作頻度を夫々検出する動作頻度検出手段と、
前記動作頻度検出手段により検出された前記各機能ブロックの動作頻度に基づいて、前記各自己診断手段が前記各機能ブロックの自己診断を行う優先順位を設定する優先順位設定手段と、
所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出する実行可能回数算出手段と、
を備え、
前記各自己診断手段は、前記優先順位設定手段により設定された前記優先順位と、前記実行可能回数算出手段により算出された前記実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行う、ことを特徴とする自己診断装置。
(付記2)
(付記1)記載の自己診断装置であって、
前記所定の時間制限を行う時間制限値の有効及び無効を設定する第1記憶手段を更に備え、
前記記憶手段に前記時間制限値が有効と設定されているとき、前記各自己診断手段は、前記優先順位設定手段により設定された前記優先順位に従って、前記実行可能回数算出手段により算出された前記実行可能回数まで、前記各機能ブロックの自己診断を行い、
前記記憶手段に前記時間制限値が無効と設定されているとき、前記各自己診断手段は、前記優先順位設定手段により設定された前記優先順位に従って、全ての前記機能ブロックの自己診断を行う、ことを特徴とする自己診断装置。
(付記3)
(付記1)又は(付記2)記載の自己診断装置であって、
優先順位設定手段は、前記動作頻度検出手段により検出された前記機能ブロックの動作頻度が高いほど、該機能ブロックに対する自己診断の優先順位を高く設定する、ことを特徴とする自己診断装置。
(付記4)
(付記1)乃至(付記3)のうちいずれか記載の自己診断装置であって、
前記優先順位設定手段は、前記動作頻度検出手段により検出された前記各機能ブロックの動作頻度に前回の優先順位設定値を乗算し、該乗算値に基づいて、前記優先順位を設定する、ことを特徴とする自己診断装置。
(付記5)
(付記1)乃至(付記4)のうちいずれか記載の自己診断装置であって、
前記実行可能回数算出手段は、下記式を用いて前記実行可能回数RUNmaxを算出する、ことを特徴とする自己診断装置。
RUNmax=SERImax×PARAmax
SERImax=Rtime/Btime
PARAmax=CImax/BImax
但し、上記式において、SERImaxを自己診断の逐次実行可能回数、PARAmaxを自己診断の並列実行可能回数、Rtimeを低消費電力モードから通常モードへの復帰時間制限値、Btimeを前記各機能ブロックの自己診断の実行最大時間、CImaxを半導体集積回路の最大消費電流規定値、BImaxを自己診断の動作最大消費電流値とする。
(付記6)
(付記1)乃至(付記5)のうちいずれか記載の自己診断装置であって、
前記時間制限値は、低消費電力モードから通常モードへの復帰時間を制限する復帰時間制限値である、ことを特徴とする自己診断装置。
(付記7)
(付記1)乃至(付記6)のうちいずれか記載の自己診断装置であって、
前記動作頻度検出手段により検出された前記各機能ブロックの動作頻度を記憶する第2記憶手段と、
前記優先順位設定手段により設定された前記各機能ブロックの自己診断を行う優先順位を記憶する第3記憶手段と、を更に備えることを特徴とする自己診断装置。
(付記8)
複数の機能ブロックの動作頻度を夫々検出するステップと、
前記検出された各機能ブロックの動作頻度に基づいて、前記各機能ブロックに対して自己診断を行う優先順位を設定するステップと、
所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出するステップと、
前記設定された優先順位と、前記算出された前記実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行うステップと、を含む、ことを特徴とする自己診断装置の自己診断方法。
(付記9)
複数の機能ブロックの動作頻度を夫々検出する処理と、
前記検出された各機能ブロックの動作頻度に基づいて、前記各機能ブロックに対して自己診断を行う優先順位を設定する処理と、
所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出する処理と、
前記設定された優先順位と、前記算出された前記実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行う処理と、をコンピュータに実行させる、ことを特徴とする自己診断装置のプログラム。
1、2 自己診断装置
B10、B11、B12 機能ブロック
B20、B21、B22 BIST回路
B30 BIST実行優先順位設定ブロック
B31、B32,B33 優先順位設定メモリ
B40 機能ブロック動作頻度検出ブロック
B41、B42,B43 動作検出回路
B411、B421,B431 動作頻度格納メモリ
B50 BIST制御メモリ
B60 BISTコントローラ
B611 BIST実行回数カウンタ
B61 BIST制御ブロック
B62 BIST実行選択ブロック
B63 BIST結果判定ブロック
B64 BIST結果出力ブロック
B70 レジスタ値退避ブロック
B71、B72、B73 レジスタ値退避メモリ
B80 スタンバイコントローラ
B90 レジスタブロック
B91 動作頻度累積設定レジスタ
B92 起動時間制限指定レジスタ
B93 電源遮断設定レジスタ
B100 CPU
B110 外部メモリ
B111 優先順位設定メモリ
B112 動作頻度格納メモリ
B120 外部メモリコントローラ

Claims (5)

  1. 複数の機能ブロックと、
    前記複数の機能ブロックに対して自己診断を夫々行う複数の自己診断手段と、
    前記各機能ブロックの動作頻度を夫々検出する動作頻度検出手段と、
    前記動作頻度検出手段により検出された前記各機能ブロックの動作頻度に基づいて、前記各自己診断手段が前記各機能ブロックの自己診断を行う優先順位を設定する優先順位設定手段と、
    所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出する実行可能回数算出手段と、
    を備え、
    前記各自己診断手段は、前記優先順位設定手段により設定された前記優先順位と、前記実行可能回数算出手段により算出された前記実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行う、ことを特徴とする自己診断装置。
  2. 請求項1記載の自己診断装置であって、
    前記所定の時間制限を行う時間制限値の有効及び無効を設定する第1記憶手段を更に備え、
    前記記憶手段に前記時間制限値が有効と設定されているとき、前記各自己診断手段は、前記優先順位設定手段により設定された前記優先順位に従って、前記実行可能回数算出手段により算出された前記実行可能回数まで、前記各機能ブロックの自己診断を行い、
    前記記憶手段に前記時間制限値が無効と設定されているとき、前記各自己診断手段は、前記優先順位設定手段により設定された前記優先順位に従って、全ての前記機能ブロックの自己診断を行う、ことを特徴とする自己診断装置。
  3. 請求項1又は2記載の自己診断装置であって、
    優先順位設定手段は、前記動作頻度検出手段により検出された前記機能ブロックの動作頻度が高いほど、該機能ブロックに対する自己診断の優先順位を高く設定する、ことを特徴とする自己診断装置。
  4. 複数の機能ブロックの動作頻度を夫々検出するステップと、
    前記検出された各機能ブロックの動作頻度に基づいて、前記各機能ブロックに対して自己診断を行う優先順位を設定するステップと、
    所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出するステップと、
    前記設定された優先順位と、前記算出された実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行うステップと、を含む、ことを特徴とする自己診断装置の自己診断方法。
  5. 複数の機能ブロックの動作頻度を夫々検出する処理と、
    前記検出された各機能ブロックの動作頻度に基づいて、前記各機能ブロックに対して自己診断を行う優先順位を設定する処理と、
    所定の時間制限を行う時間制限値に基づいて、前記各機能ブロックの自己診断の実行が可能な実行可能回数を算出する処理と、
    前記設定された優先順位と、前記算出された前記実行可能回数と、に基づいて、前記各機能ブロックの自己診断を行う処理と、をコンピュータに実行させる、ことを特徴とする自己診断装置のプログラム。
JP2011122093A 2011-05-31 2011-05-31 自己診断装置、自己診断方法、及びプログラム Withdrawn JP2012252373A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011122093A JP2012252373A (ja) 2011-05-31 2011-05-31 自己診断装置、自己診断方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011122093A JP2012252373A (ja) 2011-05-31 2011-05-31 自己診断装置、自己診断方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2012252373A true JP2012252373A (ja) 2012-12-20

Family

ID=47525172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011122093A Withdrawn JP2012252373A (ja) 2011-05-31 2011-05-31 自己診断装置、自己診断方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP2012252373A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014203318A1 (ja) * 2013-06-17 2014-12-24 富士通株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
US10031824B2 (en) 2014-03-17 2018-07-24 Renesas Electronics Corporation Self-diagnosis device and self-diagnosis method
WO2023171172A1 (ja) * 2022-03-11 2023-09-14 ローム株式会社 半導体集積回路装置、車載機器、及び車両

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014203318A1 (ja) * 2013-06-17 2014-12-24 富士通株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
JP6070840B2 (ja) * 2013-06-17 2017-02-01 富士通株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
US10031824B2 (en) 2014-03-17 2018-07-24 Renesas Electronics Corporation Self-diagnosis device and self-diagnosis method
WO2023171172A1 (ja) * 2022-03-11 2023-09-14 ローム株式会社 半導体集積回路装置、車載機器、及び車両

Similar Documents

Publication Publication Date Title
JP5739290B2 (ja) 電子制御装置
JP5244981B2 (ja) マイクロコンピュータ及びその動作方法
JP2016042336A (ja) プロセッサシステム、エンジン制御システム及び制御方法
JP2010218277A5 (ja)
KR102028663B1 (ko) 에러 검출 방법 및 장치
KR101978984B1 (ko) 프로세서의 오류를 검출하는 장치 및 방법
JP2009505186A (ja) コンピュータシステムの機能監視方法および機能監視装置
JP2012252373A (ja) 自己診断装置、自己診断方法、及びプログラム
RU2015121678A (ru) Способ и устройство для оптимизации памяти
CN101821694B (zh) 信息处理装置、以及动作控制方法
JP6068879B2 (ja) メモリシステム、メモリ装置、情報処理装置およびメモリシステムの動作方法
JP5508903B2 (ja) 情報処理装置、半導体集積回路装置および異常検出方法
US20130219209A1 (en) Electronic device with an overclocking mode and method
US9778981B2 (en) Microcontroller
JP5699896B2 (ja) 情報処理装置、異常判定方法
US20130177119A1 (en) Control device and nuclear power plant control system
JP2007317386A5 (ja)
CN106339106A (zh) 一种终端的接近检测方法、装置及移动终端
JP2020100184A (ja) 電子制御装置、電子制御プログラムおよび電子制御システム
JP2012174198A (ja) 異常検出装置、および異常検出プログラム
JP2007102313A (ja) 制御装置およびマルチプロセッサ制御方法
JP4876093B2 (ja) 制御装置のタスク管理装置、及び、制御装置のタスク管理方法
CN110297688B (zh) 一种硬件计数装置、方法以及处理器
US20190324835A1 (en) Failure detection apparatus, failure detection method, and non-transitory computer readable recording medium
JP4647276B2 (ja) 半導体回路装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140805