JP2022078892A - 演算装置、テスト方法 - Google Patents

演算装置、テスト方法 Download PDF

Info

Publication number
JP2022078892A
JP2022078892A JP2020189860A JP2020189860A JP2022078892A JP 2022078892 A JP2022078892 A JP 2022078892A JP 2020189860 A JP2020189860 A JP 2020189860A JP 2020189860 A JP2020189860 A JP 2020189860A JP 2022078892 A JP2022078892 A JP 2022078892A
Authority
JP
Japan
Prior art keywords
test
unit
circuit
control unit
partition
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.)
Granted
Application number
JP2020189860A
Other languages
English (en)
Other versions
JP7572217B2 (ja
Inventor
康浩 池田
Yasuhiro Ikeda
忠信 鳥羽
Tadanobu Toba
健一 新保
Kenichi Shinpo
純之 荒田
Sumiyuki Arata
毅雄 山下
Takeo Yamashita
敦 市毛
Atsushi Ichige
進一 野中
Shinichi Nonaka
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo 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 Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to JP2020189860A priority Critical patent/JP7572217B2/ja
Priority claimed from JP2020189860A external-priority patent/JP7572217B2/ja
Priority to CN202180075356.XA priority patent/CN116438643A/zh
Priority to US18/036,029 priority patent/US20230409518A1/en
Priority to PCT/JP2021/032024 priority patent/WO2022102220A1/ja
Publication of JP2022078892A publication Critical patent/JP2022078892A/ja
Application granted granted Critical
Publication of JP7572217B2 publication Critical patent/JP7572217B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7885Runtime interface, e.g. data exchange, runtime control
    • G06F15/7892Reconfigurable logic embedded in CPU, e.g. reconfigurable unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318516Test of programmable logic devices [PLDs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/70Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
    • H01L21/77Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
    • H01L21/78Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
    • H01L21/82Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/70Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
    • H01L21/77Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
    • H01L21/78Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
    • H01L21/82Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
    • H01L21/822Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components the substrate being a semiconductor, using silicon technology
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Manufacturing & Machinery (AREA)
  • Software Systems (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Abstract

【課題】テスト時間を短縮できる。【解決手段】演算装置は、部分再構成可能なプログラマブルロジック部を用いてテストを実行し、プログラマブルロジック部には、ユーザ回路であるテスト対象回路およびテスト対象回路ではないユーザ回路である非テスト回路が構成され、テスト対象回路と非テスト回路とを分離するテストパーテーション部を部分再構成によりプログラマブルロジック部に形成させるコンフィグ制御部と、テスト対象回路のテストを行うためにテストパーテーション部を制御するパーテーション制御部とを備える。【選択図】図1

Description

本発明は、演算装置、およびテスト方法に関する。
自動運転や先進運転支援システムに対応するステレオカメラや電子制御装置は、センサ情報を運転制御に活用するため、高性能なデータ処理が求められている。そのデータ処理を担うデバイスとして再構成可能な論理回路が用いられることがある。さらに車載搭載電子システムは、機能安全規格であるISO26262への対応を背景に、高信頼化が求められている。その中で、再構成可能な論理回路の高信頼性を担保しつつ、論理回路のテストを短時間で行う技術として、たとえば特許文献1がある。特許文献1には、プログラムデータをメモリに書き込むことにより機能が設定されるプログラマブルロジックブロックを備えたプログラマブルロジックデバイスの故障を検出するプログラマブルロジックデバイス試験方法において、プログラマブルロジックデバイス内の被試験ブロックに対し該プログラマブルロジックデバイス内の該被試験ブロック以外のプログラマブルロジックブロックで自己試験回路を構成するように該プログラムデータを該メモリにロードする第1工程と、該自己試験回路で該被試験ブロックを試験する第2工程と、を有することを特徴とするプログラマブルロジックデバイス試験方法が開示されている。
特開平11-44741号公報
特許文献1に記載されている発明では、テスト時間の短縮に検討の余地がある。
本発明の第1の態様による演算装置は、部分再構成可能なプログラマブルロジック部を用いてテストを実行する演算装置であって、前記プログラマブルロジック部には、ユーザ回路であるテスト対象回路および前記テスト対象回路ではないユーザ回路である非テスト回路が構成され、前記テスト対象回路と前記非テスト回路とを分離するテストパーテーション部を部分再構成により前記プログラマブルロジック部に形成させるコンフィグ制御部と、前記テスト対象回路のテストを行うために前記テストパーテーション部を制御するパーテーション制御部とを備える。
本発明の第2の態様によるテスト方法は、部分再構成可能なプログラマブルロジック部を用いてコンピュータが実行するテスト方法であって、ユーザ回路であるテスト対象回路および前記テスト対象回路ではないユーザ回路である非テスト回路が構成された前記プログラマブルロジック部に、前記テスト対象回路と前記非テスト回路とを分離するテストパーテーション部を部分再構成により形成させることと、前記テストパーテーション部を制御して前記テスト対象回路のテストを行うこととを含む。
本発明によれば、テスト時間を短縮できる。
プログラマブルデバイスを用いたテストの概要図 テストの概要図 プログラマブルデバイスへの実装例を示す図 プログラマブルデバイスへの実装例を示す図 プログラマブルデバイスへの実装例を示す図 テストパーテーション部の構成例を示す図 テストの一連の流れを示すフローチャート タイムチャートの一例を示す図 変形例1におけるテストパーテーション部を示す図 変形例2におけるテストの様子を示す図 変形例4におけるテストの概要図 第2の実施の形態におけるテストの様子を示す図 第3の実施の形態にかかる車載制御装置の構成図 第4の実施の形態にかかる車載制御装置の構成図
以下、図面を参照して本電子制御装置とテスト方式に係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。又、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
―第1の実施の形態―
以下、図1~図8を参照して、演算装置であるプログラマブルデバイスの第1の実施の形態を説明する。
(概要図)
図1は、プログラマブルデバイス(以下、「PLD」と呼ぶ)100を用いたテストの概要図である。PLD100は、プログラマブルロジック部200と、テスト実行制御部300と、パーテーション制御部400と、データ入力部500と、コンフィグ制御部600と、コンフィグデータ格納部700とを備える。プログラマブルロジック部200は、部分再構成が可能な論理回路である。プログラマブルロジック部200に書き込むコンフィグデータは、コンフィグデータ格納部700から供給される。
プログラマブルロジック部200には、様々な論理回路を構成可能である。この論理回路は、プログラマブルロジック部200を製造者であるベンダが提供するベンダ論理回路と、プログラマブルロジック部200の製造者以外が作成するユーザ論理回路に分類される。本実施の形態では、このユーザ論理回路を対象とするテストについて述べている。
プログラマブルデバイス100として、SoC(System on Chip)タイプを用いた場合は、テスト実行制御部300、パーテーション制御部400、データ入力部500、コンフィグ制御部600、およびコンフィグデータ格納部700をプログラマブルロジック部200で実現してもよいし、中央演算装置であるCPUで実現してもよい。また、テスト実行制御部300、パーテーション制御部400、データ入力部500、およびコンフィグ制御部600が1以上のマイクロコンピュータにより実現され、コンフィグデータ格納部700がROMにより実現されてもよい。
図1に示す例では、プログラマブルロジック部200には、テストパターン生成部210、テスト対象回路220、判定部230、非テスト回路240、およびテストパーテーション部250が形成されている。テスト対象回路220と非テスト回路240とは対応する概念であり、本実施の形態では、あるテストの対象となるユーザ回路をテスト対象回路220と呼び、そのテストでテストの対象ではないユーザ回路を非テスト回路240と呼ぶ。すなわちテスト対象回路220および非テスト回路240は、特定のユーザ回路を示すのではなくテストごとに変更される。なお非テスト回路240は、「テスト対象外回路」と呼ぶこともできる。
テスト実行制御部300は、テスト対象回路220のテストを指揮する。具体的にはテスト実行制御部300は、テストパターン生成部210、判定部230、およびパーテーション制御部400に動作指令を出力し、テストパターン生成部210および判定部230から応答を受け取る。パーテーション制御部400は、テスト実行制御部300からの指令に基づきテストパーテーション部250およびコンフィグ制御部600に動作指令を出力する。コンフィグ制御部600は、パーテーション制御部400からの動作指令に基づきデータ入力部500を経由してコンフィグデータ格納部700からコンフィグデータを受領し、プログラマブルロジック部200に書き込む。具体的にはコンフィグ制御部600は、テストパターン生成部210、テスト対象回路220、判定部230、非テスト回路240、およびテストパーテーション部250を書き込む。
図2は、本実施の形態におけるテストの概要図である。図2ではテストの中核部分のみを図示しておりテストそのものに影響がないテストパーテーション部250などは図示を省略している。図2に示すように本実施の形態では、テストパターン生成部210がテストパターンを生成してテスト対象回路220に印加する。そして、判定部230がテスト対象回路220の出力結果を期待値と比較し、比較結果をテスト実行制御部300に出力する。なおこのテスト方法は、BIST(Built-in Self Test)で一般的に用いられている方法である。図1に戻って説明を続ける。
コンフィグデータ格納部700には、プログラマブルロジック部200に書き込むコンフィグレーション情報であるコンフィグデータが格納されている。本実施の形態では、まずコンフィグレーションによりプログラマブルロジック部200に様々なユーザ論理回路が形成され、テスト実行制御部300はこの複数のユーザ論理回路からテスト対象回路220を決定する。そしてテスト実行制御部300は、テスト対象回路220に対して入出力関係がある他の分割されたユーザ論理回路の領域に、テストパターン生成部210および判定部230を部分再構成により実装してテストを行う。
このテストでは、まずパーテーション制御部400がテストパーテーション部250に対してよる分離を行う。分離が完了すると、コンフィグ制御部600は、データ入力部500を経由してパーテーション部の情報を含むコンフィグデータ格納部700からテスト回路のコンフィグデータを所望のユーザ論理回路を部分再構成で書き換える。その後、テストパーテーション部250を分離状態から接続状態に切り替えて、テストを実施する。
(実装例)
図3~図5は、SoCタイプのプログラマブルデバイス100への実装例を示す図である。ただし図3~図5では、作図の都合によりテストパターン生成部210を「TPG」(Test Pattern Generator)、判定部230を「ORA」(Output Response Analyzer)と記載している。
図3に示す例では、プログラマブルロジック部200にはUL1~UL7の7つのユーザ論理回路が生成される。図3に示す例では、これら7つのユーザ論理回路全てをテスト対象とするために、ユーザ論理回路同士の全ての接続部にテストパーテーション部250が形成される。なお図3では図示の都合により符号250は1カ所にしか記載していないが、同様のハッチングで示される図形は全てテストパーテーション部250を表している。以下の図でも同様である。テストパーテーション部250の働きを図4を参照して詳しく説明する。
図4に示す例では、テスト対象のユーザ論理回路としてUL4が選択されている。UL4は、UL2およびUL3からの入力を用いて演算を行い、UL5に演算結果を出力する。そのためUL4をテスト対象とする場合には、UL2およびUL3にTPGが配され、UL5にORAが配される。
UL1~UL7がコンフィグレーションにより形成された状態から図4に示す状態に遷移するためには、UL2およびUL3にTPGを部分再構成により書き込み、UL5にORAを部分再構成により書き込む必要がある。しかしこれらを部分再構成で書き込む際には、部分再構成中の回路の入出力端子の値は不定になる。また、部分再構成後の回路の初期値も不定になる。この不定な値は、テストに悪影響を及ぼすため、それぞれの部分再構成を行う回路に対して、分離および接続するためのテストパーテーション部250を設ける。またこのテストパーテーション部250は、部分再構成を行っている最中の不安定な出力をテスト対象外のユーザ論理回路に出力しないことも意図して設けられている。
図5に示す例では、テスト対象のユーザ論理回路としてUL5が選択されている。UL5は、UL1およびUL4からの入力を用いて演算を行い、UL6およびUL7に演算結果を出力する。UL1には部分再構成によりTPGを書き込む必要があるが、UL1はCPUからの出力により動作するのでテストを実行する際にはCPUを制御することでUL1からUL5への出力を一時的に停止できる。そのため図5に示す例では、UL5におけるUL1との接続部にはテストパーテーション部250が設けられていない。
図6は、テストパーテーション部250の構成例を示す図である。図6に示すように、テストパーテーション部250はたとえば、イネーブル信号端子を有する1以上のフリップフロップFにより実現できる。テストパーテーション部250に含まれるフリップフロップFの数は、接続される端子の数と同一である。フリップフロップFに入力されるイネーブル信号は、パーテーション制御部400が出力する。パーテーション制御部400は、イネーブル信号を用いてテストパーテーション部250を制御し、テスト対象回路220と非テスト回路240との分離と接続が実現できる。
(フローチャート)
図7は、テストの一連の流れを示すフローチャートである。以下に説明する各ステップの実行主体はテスト実行制御部300である。まずステップS701においてテスト実行制御部300は、コンフィグ制御部600にテスト対象回路220を書き込ませる。ただしテスト対象回路220がプログラマブルロジック部200に存在している場合には、ステップS701は省略できる。別の回路をテストする目的でたとえばテストパターン生成部210が書き込まれたために、テスト対象回路220の一部または全部が上書きされた場合などにS701が実行される。
続くステップS702ではテスト実行制御部300は、パーテーション制御部400を用いてテストパーテーション部250によるテスト対象回路220と非テスト回路240の分離を行う。続くステップS703ではテスト実行制御部300は、コンフィグ制御部600を用いてテストパターン生成部210および判定部230を書き込ませる。続くステップS704ではテスト実行制御部300は、パーテーション制御部400を用いてテストパーテーション部250によるテスト対象回路220と非テスト回路240の接続を行う。続くステップS705ではテスト実行制御部300は、テストパターン生成部210にテストパターンの生成を指示してテストを実行する。
続くステップS706ではテスト実行制御部300は、判定部230からテスト結果の回収、換言すると判定結果の受信を行う。続くステップS707ではテスト実行制御部300は、テスト対象とする全てのユーザ論理回路のテストが完了したか否かを判断し、テスト未実施の回路が存在すると判断する場合にはステップS708においてテスト対象回路220を更新してステップS701に戻る。テスト実行制御部300は、全てのテスト対象であるユーザ論理回路のテストが完了したと判断する場合は図7に示す処理を終了する。
(タイムチャート)
図8は、プログラマブルデバイス100におけるタイムチャートの一例を示す図である。図8では図示上部から下部に向かって時間が経過しており、横方向にユーザ論理回路であるUL1~UL5を示している。このUL1~UL5は図3~図5に示した例に対応しているが、作図の都合によりUL5以降の記載を省略している。また図8では、テストパーテーション部250の書き込みについては記載および説明を省略する。図8に示す例では、UL2、UL3、およびUL4が順番にテスト対象回路に設定される。
時刻t1には、通常の再構成処理によりユーザ論理回路の全体が書き込まれる。時刻t2には、UL2をテスト対象回路とするテストを実行するために部分再構成により、テストパターン生成部210がUL1に書き込まれ、判定部230がUL3およびUL4に書き込まれる。時刻t3には、UL2のテストが実行される。
時刻t4には、UL3をテスト対象回路とするテストを実行するために部分再構成により、テストパターン生成部210がUL2に書き込まれ、判定部230がUL4に書き込まれ、ユーザ論理回路がUL3に書き込まれる。UL3は時刻t2に判定部230が書き込まれたので、時刻t1にUL3に書き込まれたユーザ論理回路の一部が上書きされた。このままではUL3のテストが実行できないため、時刻t4に改めて部分再構成によりUL3のユーザ論理回路の書き込みが行われる。なおUL4には時刻t2にすでに判定部230が書き込まれているので、UL2の出力を判定する判定部230がUL4の出力の判定も可能な場合には、時刻t4におけるUL4への判定部230の書き込みを省略できる。時刻t5にはUL3のテストが実行される。
時刻t6には、UL4をテスト対象回路とするテストを実行するために部分再構成により、テストパターン生成部210がUL2およびUL3に書き込まれ、判定部230がUL5に書き込まれ、ユーザ論理回路がUL4に書き込まれる。UL4は時刻t2およびt4に判定部230が書き込まれたので、時刻t1にUL4に書き込まれたユーザ論理回路の一部が上書きされた。このままではUL4のテストが実行できないため、時刻t6に改めて部分再構成によりUL4のユーザ論理回路の書き込みが行われる。なお前述のように、UL2へのテストパターン生成部210の書き込みが省略できる場合がある。時刻t7にはUL4のテストが実行される。
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)演算装置であるプログラマブルデバイス100は、部分再構成可能なプログラマブルロジック部200を用いてテストを実行する。プログラマブルロジック部200には、ユーザ回路であるテスト対象回路220およびテスト対象回路220ではないユーザ回路である非テスト回路240が構成され、テスト対象回路220と非テスト回路240とを分離するテストパーテーション部250を部分再構成によりプログラマブルロジック部200に形成させるコンフィグ制御部600と、テスト対象回路220のテストを行うためにテストパーテーション部250を制御するパーテーション制御部400とを備える。そのためテストパーテーション部250を用いてテスト対象回路220と非テスト回路240とを分離することで、部分再構成の書き込み時における非テスト回路240への影響、たとえば不安定な信号の出力を抑制できる。これにより、プログラマブルロジック部200の全体を書き換えることなくテストを実行でき、テスト時間を短縮することができる。
(2)パーテーション制御部400は、テスト対象回路220と非テスト回路240との間を分離状態と接続状態とに切り替える。そのため、パーテーション部250を残したままテストを実行できる。
(3)コンフィグ制御部600はさらに、テストのための信号を生成しテスト対象回路に出力するテストパターン生成部210およびテスト対象回路220の出力を判定する判定部230を部分再構成によりプログラマブルロジック部200に書き込む。プログラマブルデバイス100は、パーテーション制御部400およびテストパターン生成部210に動作指令を送信し、かつ判定部230から判定結果を受信する、テスト実行制御部300を備える。そのため、テストに必要なテストパターン生成部210および判定部230を部分再構成により書き込んでテストを実行できる。
(4)コンフィグ制御部600は、図8の時刻t4や時刻t6のように、テスト対象回路220を部分再構成によりプログラマブルロジック部200に書き込む。テストパターン生成部210や判定部230を別のテストのために書き込んだことにより上書きされてしまったテスト対象回路220を再度書き込み、テストを実行できる。
(変形例1)
図9は、変形例1におけるテストパーテーション部250を示す図である。上述した第1の実施の形態では、テストパーテーション部250はユーザ論理回路の内部に実装された。しかしテストパーテーション部250は、図9に示すようにユーザ論理回路の外部、すなわちユーザ論理回路に対する入出力信号配線上に実装されてもよい。
(変形例2)
上述した第1の実施の形態では、テスト対象回路220の入力端子と出力端子の両方にテストパーテーション部250を設けた。しかしテストパーテーション部250は、テスト対象回路220の入力端子および出力端子のいずれか一方のみに設ける構成でもよい。たとえば部分再構成により判定部230、テスト対象回路220、テストパターン生成部210の順番で書き込む場合、換言するとテストパターン生成部210を3つの中で最後に書き込む場合には、テスト対象回路220の入力端子側のテストパーテーション部250は設けられなくてもよい。
(変形例3)
上述した第1の実施の形態では、テスト対象回路220へ入力される信号は、全てテストパターン生成部210が生成した信号であった。しかし非テスト回路240の出力をテスト対象回路220に入力してもよい。
図10は、変形例2におけるテストの様子を示す図である。この例ではUL4がテスト対象回路220であり、UL2に構成されたテストパターン生成部210と、非テスト回路240であるUL3から入力を受ける。UL3にテストパターン生成部210を形成する場合に比べてテストパターンの生成数を減少させることができる。また、テスト対象回路220のレジスタ設定信号や制御信号などのデータ変動の少ない低速な信号やエラーフラグなどの割り込み信号などは、テストパターンとして印加する場合は、その分だけテスト時間が長くなる。これらの信号を非テスト回路240から与えることでテスト効率が向上する。
(変形例4)
テスト実行制御部300、パーテーション制御部400、データ入力部500、コンフィグ制御部600、およびコンフィグデータ格納部700の少なくとも1つは、プログラマブルデバイス100に含まれなくてもよい。たとえば、テスト実行制御部300、パーテーション制御部400、データ入力部500、コンフィグ制御部600、およびコンフィグデータ格納部700の全てが他の装置に含まれ、その装置とプログラマブルデバイスとが通信して第1の実施の形態と同様の処理を実行してもよい。
図11は、変形例4におけるテストの概要図である。本変形例では、テスト制御装置100Tとプログラマブルデバイス100Sが通信を行い、全体として第1の実施の形態と同様の処理を実行する。テスト制御装置100Tは、テスト実行制御部300、パーテーション制御部400、データ入力部500、コンフィグ制御部600、およびコンフィグデータ格納部700を備える。プログラマブルデバイス100Sは、プログラマブルロジック部200を有する。
テスト制御装置100Tは、テスト実行制御部300、パーテーション制御部400、データ入力部500、およびコンフィグ制御部600をCPUを用いて実現してもよいし、特定用途向け集積回路や書き換え可能な論理回路により実現してもよい。コンフィグデータ格納部700はたとえば、ROMを用いて実現される。なお図11には図示していないが、プログラマブルデバイス100Sはさらに、コンフィグレーションデータを格納するROMやコンフィグを実行する構成を有してもよい。
すなわち本変形例におけるテスト制御装置100Tは、部分再構成可能なプログラマブルロジック部200を備えるプログラマブルデバイス100Sを用いてテストを実行する演算装置である。プログラマブルロジック部200には、ユーザ回路であるテスト対象回路220およびテスト対象回路220ではないユーザ回路である非テスト回路240が構成され、テスト対象回路220と非テスト回路240とを分離するテストパーテーション部250を部分再構成によりプログラマブルロジック部200に形成させるコンフィグ制御部600と、テスト対象回路220のテストを行うためにテストパーテーション部250を制御するパーテーション制御部400とを備える。そのためたとえば、単体で動作が完結するプログラマブルデバイス100Sにテスト制御装置100Tを接続して、効率よく短時間でのテストを実行することができる。
―第2の実施の形態―
図12を参照して、演算装置であるプログラマブルデバイスの第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、複数のユーザ論理回路を並行してテストする点で、第1の実施の形態と異なる。
本実施の形態におけるテスト実行制御部300は、テスト対象である複数のユーザ論理回路から、隣接しない、換言するとデータの入出力関係にないユーザ論理回路の組合せを特定する。そしてテスト実行制御部300は、特定したその組み合わせのユーザ論理回路を並行してテストする。
図12は、第2の実施の形態におけるテストの様子を示す図である。図12では、UL4とUL6が並行してテストを行うテスト対象回路220である。UL4およびUL6は、相互にデータ入出力の関係にないので、並行してテストが可能である。仮にUL4とUL5の組合せを検討すると、UL4の出力を判定する判定部230をUL5に書き込む必要があり、UL5の本来の動作が妨げられるのでUL4とUL5は並行してのテストは不可能である。
図12に示すように、テスト実行制御部300はコンフィグ制御部600を用いてUL1、UL2、UL3およびUL5にテストパターン生成部210を書き込ませ、UL5およびUL7に判定部230を書き込ませる。なおこの例ではUL5にはテストパターン生成部210と判定部230の両方が書き込まれているが、テストパターン生成部210と判定部230が同一のユーザ論理回路に書き込まれることは本実施の形態における必須要件ではない。
上述した第2の実施の形態によれば、第1の実施の形態における作用効果に加えて、テスト回数の削減とテストの並列処理によるさらなるテスト時間の削減が可能になる。
―第3の実施の形態―
図13を参照して、演算装置であるプログラマブルデバイスの第3の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、非テスト回路240が演算を行いながらテスト対象回路220のテストを行う点で、第1の実施の形態と異なる。
図13は、第3の実施の形態にかかる車載制御装置900の構成図である。車両1000は、車両1000の周囲の情報を収集するセンサモジュール800と、プログラマブルデバイス100を内蔵する電子制御装置900を備える。センサモジュール800が収集する情報は、電子制御装置900のプログラマブルデバイス100に提供される。プログラマブルロジック部200に書き込まれたそれぞれのユーザ論理回路はたとえば、センサモジュール800が収集した情報を処理する。
テスト実行制御部300はそれぞれユーザ論理回路の稼働の有無を検出し、稼働していないユーザ論理回路の1つをテスト対象回路220に設定してテストを行う。ただしテスト実行制御部300は、テストのためにテストパターン生成部210および判定部230の少なくとも一方を書き込む必要がある場合には、書き込みが必要なユーザ論理回路も稼働していないことを条件としてテストを行う。たとえば図3に示したユーザ論理回路の例では、UL4のテストを行うためには、UL2~UL5の4つのユーザ論理回路が稼働していないことが条件となる。
上述した第3の実施の形態によれば、第1の実施の形態における作用効果に加えて、次の作用効果が得られる。
(5)テスト実行制御部は、前記プログラマブルロジック部200に構成された複数のユーザ回路の稼働の有無を検出し、稼働していないユーザ論理回路の1つを前記テスト対象回路に設定してテストを行う。そのため、自動車の運用中の動作(走行中、停車・駐車時など)に応じて、使用していないユーザ論理回路をテストすることが可能である。
―第4の実施の形態―
図14を参照して、演算装置であるプログラマブルデバイスの第4の実施の形態を説明する。以下の説明では、第3の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第3の実施の形態と同じである。本実施の形態では、主に、外部と通信を行う点で、第1の実施の形態と異なる。
図14は、第4の実施の形態にかかる車載制御装置900の構成図である。本実施の形態における車載制御装置900は、第3の実施の形態の構成に加えて外部通信部1100を備える。外部通信部1100は、車両1000の外部と通信を行う無線通信装置である。外部通信部1100は、プログラマブルデバイス100におけるテストの結果を、車両100の外部に存在するサーバ1200に送信する。
上述した第4の実施の形態によれば、第1の実施の形態における作用効果に加えて、次の作用効果が得られる。
(6)テスト対象回路220のテスト結果を無線通信を用いて送信する外部通信部1100を備える。そのためプログラマブルデバイス100は、テスト結果を即時に外部に送信できる。このテスト結果は、プログラマブルロジック部200の診断結果とみなすこともできるので、プログラマブルデバイス100の運用監視やシステムの信頼性評価にも利用できる。さらにこのテスト結果はサーバ1200で監視できるため、保守サービスなどにも適用可能である。なお、自動車の運用中では、テスト対象回路の重要性、例えば車載の機能安全にかかわる安全機構(故障検知回路)など安全性に影響する回路の診断周期、回数などを変更する重み付けを行い、車載電子システムの安全性も向上することができる。
上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
100、100S プログラマブルデバイス
100T テスト制御装置
200 プログラマブルロジック部
210 テストパターン生成部
220 テスト対象回路
230 判定部
240 非テスト回路
250 テストパーテーション部
300 テスト実行制御部
400 パーテーション制御部
600 コンフィグ制御部

Claims (8)

  1. 部分再構成可能なプログラマブルロジック部を用いてテストを実行する演算装置であって、
    前記プログラマブルロジック部には、ユーザ回路であるテスト対象回路および前記テスト対象回路ではないユーザ回路である非テスト回路が構成され、
    前記テスト対象回路と前記非テスト回路とを分離するテストパーテーション部を部分再構成により前記プログラマブルロジック部に形成させるコンフィグ制御部と、
    前記テスト対象回路のテストを行うために前記テストパーテーション部を制御するパーテーション制御部とを備える演算装置。
  2. 請求項1に記載の演算装置であって、
    前記パーテーション制御部は、前記テスト対象回路と前記非テスト回路との間を分離状態と接続状態とに切り替える、演算装置。
  3. 請求項1に記載の演算装置であって、
    前記コンフィグ制御部はさらに、テストのための信号を生成し前記テスト対象回路に出力するテストパターン生成部および前記テスト対象回路の出力を判定する判定部を部分再構成により前記プログラマブルロジック部に書き込み、
    前記パーテーション制御部および前記テストパターン生成部に動作指令を送信し、かつ前記判定部から判定結果を受信する、テスト実行制御部をさらに備える、演算装置。
  4. 請求項3に記載の演算装置であって、
    前記コンフィグ制御部はさらに、テスト対象回路を部分再構成により前記プログラマブルロジック部に書き込む、演算装置。
  5. 請求項3に記載の演算装置であって、
    前記テスト実行制御部は、前記プログラマブルロジック部200に構成された複数のユーザ回路の稼働の有無を検出し、稼働していないユーザ論理回路の1つを前記テスト対象回路に設定してテストを行う、演算装置。
  6. 請求項1に記載の演算装置であって、
    前記テスト対象回路のテスト結果を無線通信を用いて送信する外部通信部をさらに備える、演算装置。
  7. 部分再構成可能なプログラマブルロジック部を用いてコンピュータが実行するテスト方法であって、
    ユーザ回路であるテスト対象回路および前記テスト対象回路ではないユーザ回路である非テスト回路が構成された前記プログラマブルロジック部に、前記テスト対象回路と前記非テスト回路とを分離するテストパーテーション部を部分再構成により形成させることと、
    前記テストパーテーション部を制御して前記テスト対象回路のテストを行うこととを含む、テスト方法。
  8. 請求項7に記載のテスト方法において、
    テストのための信号を生成し前記テスト対象回路に出力するテストパターン生成部、および前記テスト対象回路の出力を判定する判定部を部分再構成により前記プログラマブルロジック部に書き込むことをさらに含む、テスト方法。
JP2020189860A 2020-11-13 2020-11-13 演算装置、テスト方法 Active JP7572217B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020189860A JP7572217B2 (ja) 2020-11-13 演算装置、テスト方法
CN202180075356.XA CN116438643A (zh) 2020-11-13 2021-08-31 运算装置和测试方法
US18/036,029 US20230409518A1 (en) 2020-11-13 2021-08-31 Arithmetic operation device, testing method
PCT/JP2021/032024 WO2022102220A1 (ja) 2020-11-13 2021-08-31 演算装置、テスト方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020189860A JP7572217B2 (ja) 2020-11-13 演算装置、テスト方法

Publications (2)

Publication Number Publication Date
JP2022078892A true JP2022078892A (ja) 2022-05-25
JP7572217B2 JP7572217B2 (ja) 2024-10-23

Family

ID=

Also Published As

Publication number Publication date
US20230409518A1 (en) 2023-12-21
WO2022102220A1 (ja) 2022-05-19
CN116438643A (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
CN110868302B (zh) 网络接口装置和用于操作网络接口装置的方法
US7559000B2 (en) Integrated circuit device, diagnosis method and diagnosis circuit for the same
US20050204232A1 (en) Technique for combining scan test and memory built-in self test
CN115598495B (zh) 芯片测试配置生成方法、测试方法、装置及电子设备
WO2022102220A1 (ja) 演算装置、テスト方法
CN114096955A (zh) 可重新配置的片上系统
CN114780319A (zh) 一种芯片测试的方法、系统、存储介质、设备及芯片
Paulsson et al. Methods for run-time failure recognition and recovery in dynamic and partial reconfigurable systems based on Xilinx Virtex-II Pro FPGAs
JP7572217B2 (ja) 演算装置、テスト方法
Abelein et al. Non-intrusive integration of advanced diagnosis features in automotive E/E-architectures
US11105854B2 (en) System, apparatus and method for inter-die functional testing of an integrated circuit
US7617428B2 (en) Circuits and associated methods for improved debug and test of an application integrated circuit
US5548525A (en) Method and apparatus for pin assignment in automatic circuit testers
Akoglu et al. FPGA based distributed self healing architecture for reusable systems
EP4074014A1 (en) Method and system for high integrity can bus traffic supervision in safety critical application
CN109213638B (zh) 半导体装置
JP2000284945A (ja) デジタル機器及びその開発方法
JP4676967B2 (ja) 半導体集積回路装置
JP7332204B1 (ja) 情報処理システム、情報処理システムが実行する処理方法、およびプログラム
JP3698015B2 (ja) モータ制御システムの自己診断方法
WO2010125793A1 (ja) 試験装置および試験方法
JP5157037B2 (ja) Cpu内蔵lsi搭載ユニットおよびcpu内蔵lsiの実機試験方法
JP2019158761A (ja) 半導体装置及び故障診断方法
JP3953467B2 (ja) チップ中の欠陥を検出し報告するためのシステム
JP7532674B2 (ja) 自動車システムのための動的に再構成可能なインフィールドセルフテスト能力

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240809

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20241001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241010