(57)【要約】【課題】ＢＩＳＴ回路において、ＢＩＳＴの実行を指示するデバイスと、ＢＩＳＴの実行の指示を受けるデバイスとの間の結線数を少なくする。【解決手段】ＢＩＳＴ回路は、第１のデバイスと、第１のデバイスに対してＢＩＳＴの実行を指示する第２のデバイスとを備える。第１のデバイスは、各々がＢＩＳＴを実行する複数の機能ブロックを制御する回路１３０と、リセットの要因を特定するための複数のフラグのうちの少なくとも１つがアサートされると、当該アサート後の複数のフラグの状態を保持する回路１２０とを有する。第２のデバイスの回路２１０は、回路１２０に保持された複数のフラグの状態を表すデータを回路１２０から取得し、取得されたデータに基づいてＢＩＳＴを実行させる機能ブロックを選択し、選択された機能ブロックを回路１３０に通知する。回路１３０は、通知に基づいて、ＢＩＳＴを実行する順番とタイミングとを制御する。【選択図】図３
2019056630.tif 000002
【特許請求の範囲】
【請求項１】
第１のデバイスと、
前記第１のデバイスに対してＢＩＳＴ（Built In Self-Test）の実行を指示する第２のデバイスとを備え、
前記第１のデバイスは、
各々がＢＩＳＴを実行する複数の機能ブロックを制御する第１の回路と、
リセットの要因を特定するための複数のフラグのうちの少なくとも１つがアサートされると、当該アサート後の前記複数のフラグの状態を保持する第２の回路とを有し、
前記第２のデバイスは、前記第１の回路と前記第２の回路とに接続された第３の回路を有し、
前記第３の回路は、
前記第２の回路に保持された前記複数のフラグの状態を表すデータを、前記第２の回路から取得し、
取得された前記データに基づいて、前記複数の機能ブロックのうちから前記ＢＩＳＴを実行させる機能ブロックを選択し、
選択された前記機能ブロックを、前記第１の回路に通知し、
前記第１の回路は、前記通知に基づいて、前記ＢＩＳＴを実行する順番とタイミングとを制御する、ＢＩＳＴ回路。
【請求項２】
前記第２の回路は、
複数の入力から出力が決定する組み合わせ回路を有し、
前記複数のフラグの状態を前記複数の入力としたときに出力される出力信号を、前記第２のデバイスに送信する、請求項１に記載のＢＩＳＴ回路。
【請求項３】
前記第１の回路と前記第２の回路と前記第３の回路とで共通して使用される、ＢＩＳＴ用のデータバスをさらに備え、
前記第３の回路は、
前記第２の回路に保持された前記複数のフラグの状態を表すデータを、前記ＢＩＳＴ用のデータバスを介して、前記第２の回路から取得し、
選択された前記機能ブロックを、前記ＢＩＳＴ用のデータバスを介して、前記第１の回路に通知する、請求項２に記載のＢＩＳＴ回路。
【請求項４】
前記第２の回路は、前記ＢＩＳＴ用のデータバスとは異なる信号線を介して、前記出力信号を前記第２のデバイスに送信する、請求項３に記載のＢＩＳＴ回路。
【請求項５】
前記第２の回路は、前記フラグがアサートされると、当該アサートされたフラグの論理レベルをローレベルからハイレベルに切り替え、
前記組み合わせ回路は、各前記フラグの論理レベルの論理和をとる回路である、請求項２から４のいずれか１項に記載のＢＩＳＴ回路。
【請求項６】
前記ＢＩＳＴ用のデータバスは、パラレルバスまたはシリアルバスであって、
前記第２の回路は、前記複数のフラグの状態を表すデータを圧縮する処理、および前記データを複数回に分けて前記第２のデバイスに送信する処理との少なくとも一方を実行する、請求項３または４に記載のＢＩＳＴ回路。
【請求項７】
リセットの要因を特定するための複数のフラグのうちの少なくとも１つがアサートされると、第１のデバイスが、当該アサート後の前記複数のフラグの状態を保持するステップと、
前記第１のデバイスに対してＢＩＳＴ（Built In Self-Test）の実行を指示する第２のデバイスが、保持された前記複数のフラグの状態を表すデータを、前記第１のデバイスから取得するステップと、
前記第２のデバイスが、取得された前記データに基づいて、各々がＢＩＳＴを実行する複数の機能ブロックのうちから前記ＢＩＳＴを実行させる機能ブロックを選択するステップと、
前記第２のデバイスが、選択された前記機能ブロックを、前記第１のデバイスに通知するステップと、
前記第１のデバイスが、前記通知に基づいて、前記ＢＩＳＴを実行する順番とタイミングとを制御するステップとを備える、ＢＩＳＴ回路における制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＢＩＳＴ回路およびＢＩＳＴ回路における制御方法に関する。
【背景技術】
【０００２】
従来、半導体デバイスを低コストで試験するために、ＢＩＳＴ（Built In Self-Test）回路が用いられている。ＢＩＳＴ回路を利用することにより、高価な半導体自動試験装置（ＡＴＥ：Automated Test Equipment）を用いなくても検査対象デバイス（ＤＵＴ：Device Under Test）の故障個所の診断および良否判定を行うことができる。
【０００３】
特開２０１６−１２６６９２号公報（特許文献１）には、このようなＢＩＳＴ回路を備えた単一のデバイス（具体的には、マイコン）が開示されている。このマイコンは、ＢＩＳＴコントローラと、リセット要因フラグと、リセット回路とを備えている。ＢＩＳＴコントローラと、リセット要因フラグと、リセット回路とは、バスを介して相互に通信可能に構成されている。
【０００４】
特表２０１１−５２７７４６号公報（特許文献２）には、複数のＢＩＳＴ回路を有する半導体デバイス（検査対象デバイス）と、この半導体デバイスを試験する半導体自動試験装置とが開示されている。この特許文献２では、半導体デバイスの品質を保証する観点から、ＢＩＳＴ試験だけではなくＤＣ試験および入力リーク試験を行なうために、半導体自動試験装置が用いられている。また、半導体デバイスと半導体自動試験装置とは、テスト制御バスで接続されている。
【０００５】
特開２００８−２０９２０１号公報（特許文献３）には、複数の機能ブロックと、機能ブロック間を接続するための内部バスとを備えたシステムオンチップが開示されている。複数の機能ブロックの１つは、ＢＩＳＴ回路を含んでいる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−１２６６９２号公報
【特許文献２】特表２０１１−５２７７４６号公報
【特許文献３】特開２００８−２０９２０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、単一のデバイス内において、バスを通じたＢＩＳＴの実行を実現している。このように、特許文献１では、複数のデバイスが相互に関連してＢＩＳＴを実行することは考慮されていない。
【０００８】
また、特許文献１の単一デバイスにおいて、ＢＩＳＴの実行を指示するデバイスと、ＢＩＳＴの実行の指示を受けるデバイスとに分けることを想定（仮定）した場合、指示側デバイスと指示側デバイスとを外部バスを内部バスと同一のものを使用する必要がある。それゆえ、この場合には、外部バスに起因する、電気特性の変動とバス幅に基づく結線数の増加とが問題となる。
【０００９】
また、特許文献２では、リセットの要因を特定するための複数のフラグ（リセット要因フラグ）の状態を保持する構成ではない。それゆえ、半導体デバイスは、複数のフラグの情報を、各々に対応して設けられた専用の信号線によって、半導体自動試験装置に送信する必要がある。したがって、結線数が、フラグの数に応じて増加してしまうという問題がある。この点は、特許文献３でも同様である。
【００１０】
本開示は、上記の問題点に鑑みなされたものであって、ＢＩＳＴの実行を指示するデバイスと、ＢＩＳＴの実行の指示を受けるデバイスとの間の結線数を少なくすることが可能なＢＩＳＴ回路およびＢＩＳＴ回路における制御方法を提供することにある。
【課題を解決するための手段】
【００１１】
本開示のある局面に従うと、ＢＩＳＴ回路は、第１のデバイスと、第１のデバイスに対してＢＩＳＴの実行を指示する第２のデバイスとを備える。第１のデバイスは、各々がＢＩＳＴを実行する複数の機能ブロックを制御する第１の回路と、リセットの要因を特定するための複数のフラグのうちの少なくとも１つがアサートされると、当該アサート後の複数のフラグの状態を保持する第２の回路とを有する。第２のデバイスは、第１の回路と第２の回路とに接続された第３の回路を有する。第３の回路は、第２の回路に保持された複数のフラグの状態を表すデータを、第２の回路から取得する。第３の回路は、取得されたデータに基づいて、複数の機能ブロックのうちからＢＩＳＴを実行させる機能ブロックを選択する。第３の回路は、選択された機能ブロックを、第１の回路に通知する。第１の回路は、通知に基づいて、ＢＩＳＴを実行する順番とタイミングとを制御する。
【００１２】
このような構成を有するＢＩＳＴ回路によれば、アサート後の複数のフラグの状態を保持する第２の回路を有するため、第３の回路は、複数のフラグの状態を表すデータをリアルタイムで取得する必要がなくなる。
【００１３】
このため、第２の回路と第３の回路とを接続する信号線（伝送路）を、フラグ毎に設けておく必要がなくなる。それゆえ、ＢＩＳＴ回路によれば、結線数を少なくすることができる。
【発明の効果】
【００１４】
本開示によれば、ＢＩＳＴの実行を指示する第２のデバイスと、ＢＩＳＴの実行の指示を受ける第１のデバイスとの間の結線数を少なくすることが可能となる。
【図面の簡単な説明】
【００１５】
【図１】ＢＩＳＴ回路を示した図である。
【図２】フラグ処理回路を説明するための図である。
【図３】ＢＩＳＴ回路における処理の詳細を説明するための図である。
【図４】データセットの一例を説明するための図である。
【図５】ＢＩＳＴ回路において実行される処理の流れを説明するためのフロー図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照しつつ、本発明の各実施の形態に係るＢＩＳＴ（Built In Self-Test）回路について説明する。また、以下の説明では、同一の部材には同一の参照符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００１７】
図１は、本実施の形態に係るＢＩＳＴ回路１を示した図である。図１を参照して、ＢＩＳＴ回路１は、ＢＩＳＴの実行を指示するデバイス２００（以下、「指示側デバイス２００」とも称する）と、指示側デバイス２００からＢＩＳＴの実行の指示を受けるデバイス１００（以下、「被指示側デバイス１００」とも称する）とを備えている。被指示側デバイス１００と、指示側デバイス２００とは、専用の信号線３００と、ＢＩＳＴ用のデータバス４００とで通信可能に接続されている。
【００１８】
被指示側デバイス１００および指示側デバイス２００の各々は、集積回路であり、典型的にはＡＳＩＣ（Application Specific Integrated Circuit）またはＦＰＧＡ（Field-Programmable Gate Array）である。
【００１９】
被指示側デバイス１００は、複数のリセット要因フラグ１１０＿１，１１０＿２，…，１１０＿ｎと、フラグ処理回路１２０と、ＢＩＳＴ制御回路１３０と、複数の機能ブロック１４０＿１，１４０＿２，…，１４０＿ｎとを備えている。なお、ｎは、正の自然数である。
【００２０】
指示側デバイス２００は、ＢＩＳＴ指示回路２１０を含んでいる。ＢＩＳＴ指示回路２１０は、信号線３００により、被指示側デバイス１００のフラグ処理回路１２０と接続されている。また、ＢＩＳＴ指示回路２１０は、ＢＩＳＴ用のデータバス４００を介して、フラグ処理回路１２０およびＢＩＳＴ制御回路１３０と接続されている。つまり、ＢＩＳＴ用のデータバス４００は、フラグ処理回路１２０とＢＩＳＴ制御回路１３０とＢＩＳＴ指示回路２１０とで共通して使用される。
【００２１】
以下では、説明の便宜上、１以上ｎ以下の任意の自然数を、「ｉ」として表記する。たとえば、「機能ブロック１４０＿ｉ」と表記した場合には、複数の機能ブロック１４０＿１，１４０＿２，…，１４０＿ｎのうちの任意の１つの機能ブロックを表す。
【００２２】
各機能ブロック１４０＿ｉは、ＢＩＳＴの実行が可能な機能ブロック（ＢＩＳＴ内蔵機能ブロック）である。各機能ブロック１４０＿ｉは、ＢＩＳＴ制御回路１３０からのＢＩＳＴ実行の指示を受け付けた場合、ＢＩＳＴを実行する。
【００２３】
各機能ブロック１４０＿ｉは、ハードウェア的には、プロセッサ、メモリ、その他のＬＳＩで構成することができ、ソフトウェア的には、メモリにロードされたプログラム等よって実現される。また、各機能ブロック１４０＿ｉは、ハードウェアのみ、ソフトウェアのみ、あるいは、ハードウェアとソフトウェアとの組み合わせで実現される。
【００２４】
各リセット要因フラグ１１０＿ｉは、典型的には、対応する機能ブロック１４０＿ｉに含まれている。たとえば、リセット要因フラグ１１０＿１は、機能ブロック１４０＿１に含まれている。
【００２５】
各リセット要因フラグ１１０＿ｉは、機能ブロック１４０＿ｉにおいてリセット要因が発生したときに、アサートされる。たとえば、機能ブロック１４０＿１においてリセット要因が発生したときに、リセット要因フラグ１１０＿１がアサートされる。
【００２６】
フラグ処理回路１２０は、各リセット要因フラグ１１０＿ｉの状態を束ねる役割を果たす。図２は、フラグ処理回路１２０を説明するための図である。図２を参照して、フラグ処理回路１２０は、組み合わせ回路１２１と、レジスタ回路１２２とを有する。
【００２７】
組み合わせ回路１２１は、複数の入力から出力が決定する回路である。組み合わせ回路１２１には、各リセット要因フラグ１１０_ｉの状態が入力される。組み合わせ回路１２１は、各リセット要因フラグ１１０_ｉの状態が入力されたときに出力される出力信号を、信号線３００を介して、指示側デバイス２００のＢＩＳＴ指示回路２１０に送信する。
【００２８】
組み合わせ回路１２１は、典型的には、図示したように、各リセット要因フラグ１１０_ｉの状態の論理和を取る回路である。リセット要因フラグ１１０_ｉがアサートされるとリセット要因フラグ１１０_ｉの論理レベルがＬｏｗからＨｉｇｈに切り換わるように構成されている場合、組み合わせ回路１２１は、複数のリセット要因フラグ１１０_ｉのうち、少なくとも１つのリセット要因フラグ１１０_ｉがアサートされると、Ｈｉｇｈの信号（以下、「リセット要因発生信号」）を出力する。
【００２９】
レジスタ回路１２２にも、組み合わせ回路１２１と同様に、各リセット要因フラグ１１０_ｉの状態が入力される。レジスタ回路１２２は、複数のリセット要因フラグ１１０_ｉのうち、少なくとも１つのリセット要因フラグ１１０_ｉがアサートされると、当該アサート後の複数のリセット要因フラグ１１０_ｉのフラグの状態を保持する。
【００３０】
たとえば、リセット要因フラグ１１０_１がアサートされると、レジスタ回路１２２は、リセット要因フラグ１１０_１がアサートされた状態であり、かつ残りのリセット要因フラグ１１０＿２〜１１０＿ｎがデアサートされた状態であることを保持する。
【００３１】
なお、状態保持の解除のタイミングは、任意に構成できる。たとえば、このタイミングとして、ＢＩＳＴ指示回路２１０から後述する問い合わせが来るまでに十分な時間が経過したとき、あるいは、ＢＩＳＴの実行が終了した直後等とすることができる。
【００３２】
図３は、ＢＩＳＴ回路１における処理の詳細を説明するための図である。図３を参照して、指示側デバイス２００のＢＩＳＴ指示回路２１０は、問合処理部２１１と、選択処理部２１２と、記憶部２１３とを有している。
【００３３】
少なくとも１つのリセット要因フラグ１１０_ｉがアサートされると、問合処理部２１１は、組み合わせ回路１２１から出力されたリセット要因発生信号（典型的には、Ｈｉｇｈの信号）を受信する。なお、上述したように、リセット要因信号は、専用の信号線３００によって伝送される。
【００３４】
問合処理部２１１は、リセット要因発生信号を受信したことに基づき、リセット要因の種別を問い合わせるための問い合わせ信号（要求信号）を、ＢＩＳＴ用のデータバス４００を介して、フラグ処理回路１２０に送信する。なお、リセット要因の種別とは、アサートされている状態のリセット要因フラグ１１０＿ｉを意味する。つまり、リセット要因の種別とは、アサートされている状態のリセット要因フラグ１１０＿ｉを識別するための識別情報である。
【００３５】
フラグ処理回路１２０は、問い合わせ信号を受信したことに基づき、問い合わせ信号に対する応答信号として、レジスタ回路１２２に保持しているフラグの状態（アサート後の複数のリセット要因フラグ１１０_ｉのフラグの状態）を表したデータを、ＢＩＳＴ用のデータバス４００を介してＢＩＳＴ指示回路２１０に送る。
【００３６】
ＢＩＳＴ指示回路２１０の選択処理部２１２は、フラグ処理回路１２０から受信したフラグの状態を表したデータと、記憶部２１３に記憶されたｎ個のデータセット２３０＿１〜２３０＿ｎとに基づき、複数の機能ブロック１４０＿ｉ（図１参照）のうちから、ＢＩＳＴを実行させる機能ブロックを選択する。
【００３７】
図４は、データセット２３０＿３の一例を説明するための図である。図４を参照して、データセット２３０＿３では、アサートされたリセット要因フラグの識別番号と、ＢＩＳＴを実行する機能ブロック１４０＿ｉを特定する情報とが対応付けて格納されている。
【００３８】
この例では、Ｎｏ．３のリセット要因フラグであるリセット要因フラグ１１０＿３に対して、リセット要因フラグ１１０＿３と、Ｎｏ．４のリセット要因フラグであるリセット要因フラグ１１０＿４と、Ｎｏ．７のリセット要因フラグであるリセット要因フラグ１１０＿７とが対応付けられている。
【００３９】
なお、他のデータセット２３０＿１，２３０＿２，２３０＿４，…，２３０＿ｎにおいても、アサートされたリセット要因フラグの識別番号と、ＢＩＳＴを実行する機能ブロック１４０＿ｉを特定する情報とが対応付けて格納されている。具体的には、データセット２３０＿ｉにおいて、Ｎｏ．ｉのリセット要因フラグであるリセット要因フラグ１１０＿ｉに対して、１つ以上のリセット要因フラグが対応付けられている。
【００４０】
再び、図３を参照して、選択処理部２１２は、記憶部２１３に記憶されたｎ個のデータセット２３０＿１〜２３０＿ｎのうち、アサートされているリセット要因フラグに対応するデータセットを読み出す。たとえば、選択処理部２１２は、リセット要因フラグ１１０＿３がアサートされていることを上記応答信号に基づき検知した場合、データセット２３０＿３（図４）を読み出す。
【００４１】
選択処理部２１２は、データセット２３０＿３に基づき、複数の機能ブロック１４０＿ｉのうちから、３つの機能ブロック１４０＿３，１４０＿４，１４０＿７を選択する。
【００４２】
ＢＩＳＴ指示回路２１０は、選択処理部２１２によってＢＩＳＴを実行させる機能ブロック１４０＿ｉの選択が行われたことに基づき、選択された機能ブロックの識別情報（種別情報）を含むＢＩＳＴ実行指示を、ＢＩＳＴ用のデータバス４００を介して、被指示側デバイス１００のＢＩＳＴ制御回路１３０に送信する。
【００４３】
ＢＩＳＴ制御回路１３０は、選択された機能ブロックの識別情報を含むＢＩＳＴ実行指示をＢＩＳＴ指示回路２１０から受信したことに基づき、ＢＩＳＴを実行する順番とタイミングとを制御する。
【００４４】
たとえば、上記のように、ＢＩＳＴ指示回路２１０において３つの機能ブロック１４０＿３，１４０＿４，１４０＿７が選択された場合、ＢＩＳＴ制御回路１３０は、３つの機能ブロック１４０＿３，１４０＿４，１４０＿７について、ＢＩＳＴを実行する順番とタイミングとを制御する。たとえば、機能ブロック１４０＿７のＢＩＳＴの実行を、機能ブロック１４０＿３，１４０＿４よりも先に行う必要がある場合（ＢＩＳＴ制御回路１３０内でこのように規定されている場合）、ＢＩＳＴ制御回路１３０は、機能ブロック１４０＿７のＢＩＳＴを実行した後に、残る２つの機能ブロック１４０＿３，１４０＿４のＢＩＳＴを実行する。
【００４５】
次に、ＢＩＳＴ回路１の利点を説明する。
以下の例では、一例として、上記ｎの値を３０とする。また、ＢＩＳＴ用のデータバス４００のバス幅を８ビットとする。
【００４６】
また、比較例として、図１におけるフラグ処理回路１２０とＢＩＳＴ制御回路１３０とがなく、指示側デバイスがＢＩＳＴ制御回路１３０の機能を包含している回路構成を想定する。この場合、３０個のリセット要因フラグと指示側デバイスとを結線するために、３０本の信号線が必要となる。また、３０個の機能ブロックと指示側デバイスを結線するためにも、３０本の信号線が必要となる。つまり、このような比較例の場合、合計６０本の信号線が必要となる。
【００４７】
しかしながら、ＢＩＳＴ回路１の構成では、バス幅が８ビットのＢＩＳＴ用のデータバス４００を用いるため、１本の信号線３００と、ＢＩＳＴ用のデータバス４００として用いる８本の信号線との合計９本で足りる。このように、ＢＩＳＴ回路１によれば、結線数を大幅に減らすことが可能となる。
【００４８】
なお、図１においては、ｎが９以上の値となる場合を記載しているが、リセット要因フラグおよび機能ブロックの個数は、これに限定されず、１個以上であればよい。
【００４９】
また、ＢＩＳＴ用のデータバス４００は、パラレルバスに限定されず、シリアルバスであってもよい。
【００５０】
また、フラグ処理回路１２０は、レジスタ回路１２２に記憶された複数のリセット要因フラグ１１０＿ｉの状態を表すデータを圧縮し、圧縮されたデータ（応答信号）をＢＩＳＴ指示回路２１０に送信してもよい。また、フラグ処理回路１２０は、このデータを複数回に分けてＢＩＳＴ指示回路２１０に送信してもよい。
【００５１】
＜小括＞
ＢＩＳＴ回路１は、以下の構成を有すると言える。
【００５２】
（１）ＢＩＳＴ回路１は、被指示側デバイス１００（第１のデバイス）と、被指示側デバイス１００に対してＢＩＳＴ（Built In Self-Test）の実行を指示する指示側デバイス２００（第２のデバイス）とを備える。
【００５３】
被指示側デバイス１００は、各々がＢＩＳＴを実行する複数の機能ブロック１４０＿ｉを制御するＢＩＳＴ制御回路１３０（第１の回路）と、リセットの要因を特定するための複数のリセット要因フラグ１１０＿ｉのうちの少なくとも１つがアサートされると、当該アサート後の複数のリセット要因フラグ１１０＿ｉの状態を保持するフラグ処理回路１２０（第２の回路）とを有する。
【００５４】
指示側デバイス２００は、ＢＩＳＴ制御回路１３０とフラグ処理回路１２０とに接続されたＢＩＳＴ指示回路２１０（第３の回路）を有する。ＢＩＳＴ指示回路２１０は、フラグ処理回路１２０に保持された複数のリセット要因フラグ１１０＿ｉの状態を表すデータを、フラグ処理回路１２０から取得する。ＢＩＳＴ指示回路２１０は、取得されたデータに基づいて、複数の機能ブロック１４０＿ｉのうちからＢＩＳＴを実行させる機能ブロック１４０＿ｉを選択する。ＢＩＳＴ指示回路２１０は、選択された機能ブロック１４０＿ｉを、ＢＩＳＴ制御回路１３０に通知する。
【００５５】
ＢＩＳＴ制御回路１３０は、当該通知に基づいて、ＢＩＳＴを実行する順番とタイミングとを制御する。
【００５６】
このような構成を有するＢＩＳＴ回路１によれば、アサート後の複数のリセット要因フラグ１１０＿ｉの状態を保持するフラグ処理回路１２０を有するため、ＢＩＳＴ指示回路２１０は、複数のリセット要因フラグ１１０＿ｉの状態を表すデータをリアルタイムで取得する必要がなくなる。
【００５７】
このため、フラグ処理回路１２０とＢＩＳＴ指示回路２１０とを接続する信号線（伝送路）を、リセット要因フラグ１１０＿ｉ毎に設けておく必要がなくなる。それゆえ、ＢＩＳＴ回路１によれば、信号線の数（結線数）を少なくすることができる。
【００５８】
（２）フラグ処理回路１２０は、複数の入力から出力が決定する組み合わせ回路１２１を有する。フラグ処理回路１２０は、複数のリセット要因フラグ１１０＿ｉの状態を複数の入力としたときに出力されるリセット要因発生信号（出力信号）を、指示側デバイス２００に送信する。
【００５９】
このような構成によれば、ＢＩＳＴ指示回路２１０は、被指示側デバイス１００においてリセット要因が発生したことを検知することができる。
【００６０】
（３）ＢＩＳＴ回路１は、ＢＩＳＴ制御回路１３０とフラグ処理回路１２０とＢＩＳＴ指示回路２１０とで共通して使用される、ＢＩＳＴ用のデータバス４００をさらに備える。ＢＩＳＴ指示回路２１０は、フラグ処理回路１２０に保持された複数のリセット要因フラグ１１０＿ｉの状態を表すデータを、ＢＩＳＴ用のデータバス４００を介して、フラグ処理回路１２０から取得する。ＢＩＳＴ指示回路２１０は、選択された機能ブロック１４０＿ｉを、ＢＩＳＴ用のデータバス４００を介して、ＢＩＳＴ制御回路１３０に通知する。
【００６１】
このような構成によれば、ＢＩＳＴ用のデータバス４００を用いて、フラグ処理回路１２０に保持された複数のリセット要因フラグ１１０＿ｉの状態を表すデータの送信と、選択された機能ブロック１４０＿ｉの通知とを実行できる。それゆえ、当該データの送信と当該通知とを別々の信号線で送信する場合に比べて、信号線の数を少なくすることができる。
【００６２】
（４）フラグ処理回路１２０は、ＢＩＳＴ用のデータバス４００とは異なる信号線３００を介して、リセット要因発生信号を指示側デバイス２００に送信する。
【００６３】
このような構成によれば、ＢＩＳＴ用のデータバス４００の使用権に有無に関係なく、リセット要因発生信号を指示側デバイス２００に送信することが可能となる。
【００６４】
（５）フラグ処理回路１２０は、リセット要因フラグ１１０＿ｉがアサートされると、当該アサートされたリセット要因フラグ１１０＿ｉの論理レベルをローレベルからハイレベルに切り替える。組み合わせ回路１２１は、各リセット要因フラグ１１０＿ｉの論理レベルの論理和をとる回路である。
【００６５】
このような構成によれば、簡易な回路構成で、リセット要因発生信号を指示側デバイス２００に送信することが可能となる。
【００６６】
（６）ＢＩＳＴ用のデータバス４００は、パラレルバスまたはシリアルバスである。フラグ処理回路１２０は、複数のリセット要因フラグ１１０＿ｉの状態を表すデータを圧縮する処理、および当該データを複数回に分けて指示側デバイス２００に送信する処理との少なくとも一方を実行する。
【００６７】
このような構成によれば、データを圧縮する処理により送信されるデータ量を減らすことができる。また、当該データを複数回に分ける処理により、ＢＩＳＴ用のデータバス４００のバス幅が狭くてもデータの送信が可能となる。
【００６８】
＜制御構造＞
次に、ＢＩＳＴ回路１における制御構造について説明する。
【００６９】
図５は、ＢＩＳＴ回路１において実行される処理（動作）の流れを説明するためのフロー図である。図５を参照して、スタート時点（ステップＳ１０１）では、ＢＩＳＴ回路１の初期状態を表している。初期状態では、各リセット要因フラグ１１０＿ｉは、デアサートされている状態であるとする。すなわち、いずれのリセット要因フラグ１１０＿ｉもアサートされていない状態であるとする。また、フラグ処理回路１２０からＢＩＳＴ指示回路２１０に送信される信号は、ディスイネーブル状態とする。
【００７０】
機能ブロック１４０＿ｉ内においてリセット要因が発生すると（ステップＳ１０２）、対応するリセット要因フラグ１１０＿ｉがアサートされる。リセット要因フラグ１１０＿ｉがアサートされると、フラグ処理回路１２０のレジスタ回路１２２に、当該アサート後のリセット要因フラグの状態が保持される。つまり、リセット要因の種別がレジスタ回路１２２に記録される（ステップＳ１０３）。
【００７１】
ステップＳ１０３の処理と並行して、フラグ処理回路１２０の組み合わせ回路１２１からリセット要因発生信号が出力される（ステップＳ１０４）。リセット要因発生信号は、上述したように、信号線３００を介して、ＢＩＳＴ指示回路２１０に送信される。このような処理により、リセット要因フラグ１１０＿ｉがアサートされた場合、即時に、アサートされたことがＢＩＳＴ指示回路２１０に通知される。
【００７２】
ステップＳ１０４の後、ＢＩＳＴ指示回路２１０から、フラグ処理回路１２０に対して、リセット要因の種別の問い合わせが行われる（ステップＳ１０５）。この問い合わせは、ＢＩＳＴ用のデータバス４００を介して行われる。この問い合わせは、上述したように、どのリセット要因フラグ１１０＿ｉがアサートされたのかを調べるために、ＢＩＳＴ指示回路２１０から送信される。
【００７３】
詳しくは、フラグ処理回路１２０からリセット要因発生信号が指示側デバイス２００に送信されると、指示側デバイス２００の入力ポートに割り込みが発生する。これに基づき、指示側デバイス２００のＢＩＳＴ指示回路２１０が上記問い合わせをフラグ処理回路１２０に対して送信する。
【００７４】
その後、ＢＩＳＴ指示回路２１０が、フラグ処理回路１２０のレジスタ回路１２２に保持された複数のリセット要因フラグ１１０＿ｉの状態（アサート後の複数のリセット要因フラグ１１０_ｉのフラグの状態）を表すデータを、ＢＩＳＴ用のデータバス４００を介して、フラグ処理回路１２０から取得する。
【００７５】
さらに、ＢＩＳＴ指示回路２１０は、記憶部２１３に記憶されているデータセット２３０＿ｉと、複数のリセット要因フラグ１１０＿ｉの状態を表すデータとに基づき、複数の機能ブロック１４０＿ｉのうちから、ＢＩＳＴを実行する機能ブロック１４０＿ｉを選択する（ステップＳ１０６）。
【００７６】
ＢＩＳＴ指示回路２１０は、ＢＩＳＴ用のデータバス４００を介して、ＢＩＳＴ実行の指示をする（ステップＳ１０７）。詳しくは、上述したように、ＢＩＳＴ指示回路２１０は、選択された機能ブロック１４０＿ｉの種別情報を含むＢＩＳＴ実行指示を、ＢＩＳＴ制御回路１３０に送る。
【００７７】
ＢＩＳＴ制御回路１３０は、ＢＩＳＴ指示を受け付けると、ＢＩＳＴを実行する順番とタイミングとを制御する（ステップＳ１０８）。これにより、種別情報によって特定される機能ブロック１４０＿ｉにおいて、ＢＩＳＴ制御回路１３０によって指定された順番およびタイミングでＢＩＳＴが実行される。
【００７８】
以上により、一連の処理が終了し（ステップＳ１０９）、処理が初期状態（ステップＳ１０１）に戻る。
【００７９】
＜変形例＞
上記においては、信号線３００を用いて、組み合わせ回路１２１によって生成されたリセット要因発生信号を送信する構成を例に挙げて説明した。しかしながら、これに限定されず、ＢＩＳＴ指示回路２１０が予め定められた周期（典型的には、一定周期）でポーリング信号をフラグ処理回路１２０のレジスタ回路１２２に送信するように、ＢＩＳＴ回路を構成してもよい。
【００８０】
これによれば、フラグ処理回路１２０は、リセット要因発生信号をＢＩＳＴ指示回路２１０に送信しなくてもすむ。つまり、図５のステップＳ１０４の処理が不要となる。また、この場合、信号線３００と、組み合わせ回路１２１とは不要となる。
【００８１】
今回開示された実施の形態は例示であって、上記内容のみに制限されるものではない。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００８２】
１  ＢＩＳＴ回路、１００  被指示側デバイス、１１０  リセット要因フラグ、１２０  フラグ処理回路、１２１  組み合わせ回路、１２２  レジスタ回路、１３０  ＢＩＳＴ制御回路、１４０  機能ブロック、２００  指示側デバイス、２１０  ＢＩＳＴ指示回路、２１１  問合処理部、２１２  選択処理部、２１３  記憶部、２３０  データセット、３００  信号線、４００  データバス。 
【図１】
2019056630.tif 000003
【図２】
2019056630.tif 000004
【図３】
2019056630.tif 000005
【図４】
2019056630.tif 000006
【図５】
2019056630.tif 000007