JP2021193366A - チップをテストするための方法、電子デバイス、コンピュータ可読記憶媒体、対応するチップ及びコンピュータプログラム - Google Patents

チップをテストするための方法、電子デバイス、コンピュータ可読記憶媒体、対応するチップ及びコンピュータプログラム Download PDF

Info

Publication number
JP2021193366A
JP2021193366A JP2021051719A JP2021051719A JP2021193366A JP 2021193366 A JP2021193366 A JP 2021193366A JP 2021051719 A JP2021051719 A JP 2021051719A JP 2021051719 A JP2021051719 A JP 2021051719A JP 2021193366 A JP2021193366 A JP 2021193366A
Authority
JP
Japan
Prior art keywords
test
clock
signal
chip
arithmetic
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
JP2021051719A
Other languages
English (en)
Other versions
JP7339976B2 (ja
Inventor
郭子瑜
Ziyu Guo
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2021193366A publication Critical patent/JP2021193366A/ja
Application granted granted Critical
Publication of JP7339976B2 publication Critical patent/JP7339976B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/3177Testing of logic operation, e.g. by logic analysers
    • 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/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • 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/31813Test pattern generators
    • 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/31718Logistic aspects, e.g. binning, selection, sorting of devices under test, tester/handler interaction networks, Test management software, e.g. software for test statistics or test evaluation, yield analysis
    • 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/31724Test controller, e.g. BIST state machine
    • 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/31727Clock circuits aspects, e.g. test clock circuit details, timing aspects for signal generation, circuits for testing clocks
    • 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/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318552Clock circuits details
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31919Storing and outputting test patterns
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31926Routing signals to or from the device under test [DUT], e.g. switch matrix, pin multiplexing
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/3193Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
    • G01R31/31935Storing data, e.g. failure memory

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】ピンの数を減少させ、テストコストを効果的に削減させることができるチップをテストするための方法、デバイス、記憶媒体及び対応するチップを提供する。【解決手段】上記方法は、該チップの第1ピンを介して、該演算モジュールのテストタイプを示すテスト制御信号を受信することと、該テスト制御信号に示される該テストタイプに基づいて、第1テストベクトルを使用して該演算モジュールに対して第1テストを実行すること、或いは第2テストベクトルを使用して該演算モジュールに対して第2テストを実行することと、を含み、該第1テストは該演算モジュールのメモリに対して行われるテストであり、該第2テストは該演算モジュールの機能ロジックに対して行われるテストである。【選択図】図2

Description

本開示は主にチップ分野に関し、より具体的に、チップをテストするための方法及び対応するチップに関する。本開示は、チップをテストするための電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラムに関する。
人工知能(AI)チップ分野では、チップの内部構造が正常であるかどうかを判断するために、チップをテストする必要がある。テスト期間には、チップのピンを介して外部からテストベクトルを入力する必要があり、返されたテスト結果を通じて上記の判断を行う。チップのピンは貴重なリソースであるため、チップテストによるチップのピンの数の増加を如何に回避することは、設計者が実現を期待する目標である。
本開示は、チップをテストするための方法、電子デバイス及びコンピュータ可読記憶媒体及び対応するチップを提供する。
本開示の第1態様において、演算モジュールを備えるチップをテストするための方法を提供する。該方法は、チップの第1ピンを介して、演算モジュールのテストタイプを示すテスト制御信号を受信することと、テスト制御信号に示されたテストタイプに基づいて、第1テストベクトルを使用して演算モジュールに対して第1テストを実行することと、または、第2テストベクトルを使用して演算モジュールに対して第2テストを実行することとを含み、第1テストは、演算モジュールのメモリに対して行われるテストであり、第2テストは、演算モジュールの機能ロジックに対して行われるテストである。
本開示の第2態様において、演算モジュールと、第1ピンと、コントローラとを備えるチップを提供する。該第1ピンは、演算モジュールにカップリングされ、演算モジュールのテストタイプを示すテスト制御信号を受信するように構成される。該コントローラは、第1ピンと演算モジュールにカップリングされ、テスト制御信号に示されたテストタイプに基づいて、第1テストベクトルを使用して演算モジュールに対して演算モジュールのメモリをテストする第1テストを行われるか、或いは第2テストベクトルを使用して演算モジュールに対して演算モジュールの機能ロジックをテストする第2テストを行われるように構成される。
本開示の第3態様において、電子デバイスを提供し、該電子デバイスは、1つまたは複数のプロセッサと、1つまたは複数のプログラムを記憶するためのメモリとを備え、1つまたは複数のプロセッサによって実行されると、該電子デバイスに本開示の第1態様による方法を実現させる。
本開示の第4態様において、コンピュータ可読記憶媒体を提供し、該コンピュータ可読記憶媒体にコンピュータプログラムが格納され、該プログラムはプロセッサによって実行されると、本開示の第1態様による方法を実現させる。
本開示の第5態様において、コンピュータプログラムを提供し、該コンピュータプログラムがプロセッサによって実行されると、本開示の第1態様による方法を実現させる。
本願に係る技術は、ピンの数によって制限される従来のチップテストの問題を解決した。本開示によれば、改善されたチップをテストするための手段を提供し、該手段はテストによるチップのピンの数の増加を回避することができ、且つチップテストを加速させ、テストコストを削減させることができる。
なお、この部分で説明する内容は、本開示の実施例の肝心なまたは重要な特徴をマークすることを意図するものでもなく、本開示の範囲を限定することを意図するものでもないことを理解すべきである。本開示の他の特徴は以下の明細書を通じて理解が容易になる。
図面を組み合わせて以下の詳しい説明を参照し、本開示の上記及びその他の特徴、利点及び態様をより明らかにする。図面は、本手段をより良く理解するためのものであり、本願を限定するものではないことを理解すべきものである。図面において、同じまたは類似な図面符号は同じまたは類似な構成を示す。
本開示の複数の実施例によるチップをテストするための手段が実現される例示的な環境を示す模式図である。 本開示の複数の実施例によるチップをテストするためのプロセスを示すフローチャートである。 本開示の実施例によるコントローラを示す模式図である。 本開示の複数の実施例によるチップ用のクロック制御回路構造を示す模式図である。 本開示の複数の実施例によるチップ用のクロック制御回路構造を示す模式図である。 本開示の複数の実施例による電子デバイスを実施できる模式的なブロック図である。
以下、図面を参照して、本願の例示的な実施例の様々な細部を含む説明をするが、これらは理解を助けるためのものであり、単なる例示的なものである。従って、当業者は、本願の範囲と精神から逸脱しない限り、ここで説明する実施例に様々な変更と修正を加えることができることを認識すべきである。同様に、明確かつ簡潔に説明するために、以下の説明では、既知の機能と構造の説明を省略する。
本開示の実施例の説明では、「含む」という用語及びその類似の用語は、オープン型の包含で、即ち「含むが、これに限定されない」と理解すべきである。「に基づく」という用語は、「少なくとも一部的に基づく」と理解すべきである。「一実施例」または「該実施例」という用語は、「少なくとも1つの実施例」と理解すべきである。「第1」、「第2」という用語などは、異なるまたは同じ対象を示すのに用いることができる。以下には、他の明示的および暗黙的な定義も含まれる場合がある。
本明細書で使用されるように、「チップ」という用語は、既存のまたは将来開発される任意のソフトウェアまたはハードウェア、ならびにそれらの組み合わせによって実現される物理的キャリアを指す。一部の応用場面では、「SoC」、「結晶」、「エピスター」、「ダイ」、「集積回路」、「モノリシックデバイス」、「半導体デバイス」、「マイクロエレクトロニクデバイス」などを含むが、これらに限定されない。
本明細書で使用されるように、「演算モジュール」という用語は、チップ内で特定の機能または演算を実現するためのモジュールを指し、既存または将来開発される任意のソフトウェアまたはハードウェア、ならびにそれらの組み合わせによって実現されることができる。演算モジュールは、複数の演算ユニットを備えてもよく、例えば、演算モジュールはマトリックスの形で複数の演算ユニットを含んでもよい。演算モジュールは、複雑で繰り返す演算を迅速に行うことができ、演算能力に対するAIアルゴリズムのニーズに応えることができる。
上記に言及されたように、従来の手段において、チップをテストする場合テストベクトルを導入することによって、チップにおける演算モジュールをテストする。チップのテストには、チップにおける演算モジュール内のメモリのテストと演算モジュールの機能ロジックのテストを含むことができる。従来の手段において2種のテストタイプを区別していなかった。例えば、チップの受信したテストベクトルがチップの演算モジュールのメモリをテストするためのテストベクトルである場合、テストベクトルが演算モジュールに出力され、メモリテストを完了させる。チップの受信したテストベクトルがチップの演算モジュールの機能ロジックをテストするためのテストベクトルである場合、テストベクトルは機能ロジックテストを行うために演算モジュールに出力される。従来の技術はテストタイプを区別することができないため、あるピンから入力されるテストベクトルのタイプが相対的に単一である。
発明者は、AIチップの場合、その構造は比較的規則的であることに気付いた。一方、AIチップの階層構造は明確であり、1つのAIチップは複数の演算モジュールを含み得、演算モジュールごとにメモリを含む。他方、AIチップにおける各演算ユニットは高い再現性を有する。単なる例示として、画像処理用のAIチップは、同じ構造と機能を有する複数の(例えば、6個)の畳み込み演算モジュールを含むことができる。さらに、各演算モジュールは、同じ構造と機能を有する複数の演算ユニットを含むことができ、単なる例示として、畳み込み演算モジュールは、サイズが1024×512の畳み込み演算ユニットのマトリックスであってもよい。
従来の技術的問題を解決するために、本開示はチップをテストするための改善手段を提供する。本開示の実施例によれば、テストのタイプを選択するために、入力された演算モジュールのテストタイプを示すテスト制御信号がチップに入力される。テストタイプの判断に基づいて、メモリのテスト或いは機能ロジックのテストを実行する。このようにすると、実行するテストに限らず、テストベクトルのタイプをより多様化することができるようになる。したがって、本開示は効率的でかつテストコストを削減することができるチップテスト手段を提供する。
以下、図面を参照して本開示の実施例を具体的に説明する。図1は、本開示の複数の実施例を実現することができる例示的な環境10を示す模式図である。該例示的な環境10はチップ100を備える。図に示されるように、チップ100は、本開示の手段を実行することができるコントローラ110、及び複数の演算モジュール120−1−1、120−1−2、120−2−1、……を備える。第1演算モジュール120−1−1、第2演算モジュール120−1−2、第3演算モジュール120−2−1は、チップ100におけるテスト実行対象演算モジュールである。例えば、これらの演算モジュールは、畳み込み演算モジュール、変位演算モジュールなどであってよく、上記演算モジュールは互いに独立して設計されることができる。
これらの演算モジュールは、特定の基準に従ってグループ化されることができ、これらの基準はユーザの需要とチップ100によって具体的実現される機能によって決定されることができる。例えば、同じまたは類似の機能(例えば、畳み込み演算動作を完了する)をするいくつかの演算モジュール120−1−1と120−1−2は1グループに分けられてもよい。いくつかの実施例において、同じまたは類似の構造を有する演算モジュールも1グループに分けられてもよい。なお、ここで言及したグループ化基準は例示的なものであり、限定的なものではなく、具体的なグループ化基準はこれに限定されない。図では、符号120−m−nでチップ100における各演算モジュールを示す。数字mは、該演算モジュールがm番目のグループに分けられていることを示し、数字nは、該演算モジュールが所属するグループ内のn番目の演算モジュールであることを示す。図に示されるように、演算モジュール120−1−1と120−1−2は同じグループに分けられ、演算モジュール120−2−1とは異なるグループにある。なお、図1に示すようなコントローラ110と演算モジュール120の数は例示的なものにすぎず、限定的なものではなく、他の実施例において、コントローラ110と演算モジュール120の数は他の任意の数値であり、本開示はこの点で制限がない。さらに、理解すべきものとして、ここで示された各グループ内の演算モジュールの数も例示的なものにすぎず、具体的なグループ化状況は、示すような実施例によって制限されることはない。説明の便宜上、複数の演算モジュール120−1−1、120−1−2、120−2−1をまとめて演算モジュール120と呼ぶことができる。
図1に示されるように、演算モジュール120−1−1を例として、演算モジュール120−1−1には、メモリ124−1−1と機能ロジック122−1−1が含まれる。チップ100をテストする場合、演算モジュール120−1−1におけるメモリ124−1−1と機能ロジック122−1−1の両方をテストする必要がある。図に示されるように、他の演算モジュールにおけるメモリ124−m−nと機能ロジック122−m−nの番号の付け方は演算モジュール120−m−nと同様であり、ここで繰り返し説明はしない。
一般的に、チップ100のテストを実行する場合、チップ100を試験機(図示せず)に置き、該試験機によりテストベクトル130を出力してテストを完了させる。また演算モジュール120−1−1を例として、テストベクトル130はチップ100のピンを介して入力され、コントローラ110を介して演算モジュール120−1−1に入力される。演算モジュール120−1−1はテスト結果190−1−1をコントローラ110に返し、コントローラ110は複数の演算モジュールのテスト結果のテスト出力140を試験機に伝送し返す。このように、受信した実際のテスト結果と所望のテスト結果とを比較することにより、演算モジュール120−1−1における有効性テスト結果を得ることができ、それにより、演算モジュール120−1−1が設計要件を満たすかどうかを判断する。
以下、図2を参照して本開示によるチップ100をテストするためのプロセスをより詳細に説明する。図2は、本開示の複数の例示的な実施例によるチップ100をテストするためのプロセス200を示すフローチャートである。プロセス200は図1のコントローラ110により実現できる。検討の便宜上、図1を参照して主にチップ100における演算モジュール120−1−1を組み合わせてプロセス200を説明する。
ブロック202で、図1を組み合わせて、コントローラ110はチップ100の第1ピン150−1からテスト制御信号160を受信し、テスト制御信号160は、演算モジュール120−1−1のテストタイプを示すために使用される。具体的に、ここで言及した「テストタイプ」は、該テストが演算モジュール120−1−1におけるメモリ124−1−1のテストを示すか、それとも演算モジュール120−1−1における機能ロジック122−1−1のテストを示すかをテストする。以下の説明では、演算モジュール120−1−1におけるメモリ124−1−1に対するテストを「第1テスト」と呼び、演算モジュール120−1−1における機能ロジック122−1−1に対するテストを「第2テスト」と呼ぶ。
戻って図2を参照すると、ブロック204で、テスト制御信号160で示されるテストタイプに基づいて、テストを実行する。該テストタイプに基づいて、演算モジュール120−1−1のメモリ124−1−1をテストする第1テストが必要になると、対応するメモリテストベクトル、即ち第1テストベクトルを使用してメモリに対するテストを実行する。対応して、該テストタイプに基づいて、演算モジュール120−1−1の機能ロジック122−1−1をテストする第2テストが必要になると、対応する機能ロジックテストベクトル、即ち第2ベクトルを使用して機能ロジックに対するテストを実行する。
本開示の実施例によれば、チップ100の第1ピン150−1から受信したテスト制御信号160を使用して、テストベクトル130を選択する。テスト制御信号160に示されたテストタイプに基づいて、演算モジュール120−1−1においてメモリ124−1−1に対する第1テスト或いは機能ロジック122−1−1に対する第2テストを行うように、テストベクトル130を対応する演算モジュール120−1−1に伝送することができる。本発明においてテスト制御信号160の選択が実現できたので、入力されるテストベクトル130のタイプはより多くすることができ、ある特定のテストタイプに限定されることはない。この方法によって、異なるテストモードの柔軟な切り換えが実現できる。
また図1を参照すると、チップ100における演算モジュール120−1−1のメモリ124−1−1と機能ロジック122−1−1をテストするためのテストベクトル130は第2ピン150−2を共有して入力される。つまり、チップ100の第2ピン150−2から入力されるテストベクトル130は、チップ100における演算モジュール120−1−1のメモリ124−1−1に対して第1テストを実行するベクトルであってもよいし、チップ100における演算モジュール120−1−1の機能ロジック122−1−1に対して第2テストを実行するベクトルであってもよい。言い換えると、演算モジュール120−1−1におけるメモリ124−1−1或いは機能ロジック122−1−1は1つのピン150−2を共有してテストを完了させることができる。
以上のように、従来の手段においては、専用のメモリテストピンを設けてメモリのテストを実行する必要があると同時に、専用の機能ロジックテストピンを設けて機能ロジックのテストを実行する必要もある。なお、本開示による実施例において、同じピン150−2から入力されたテストベクトル130さえ受信すれば、選択の後、演算モジュール120−1−1にメモリ124−1−1に対するテスト或いは機能ロジック122−1−1に対するテストを対応して完了させることができる。従来の方法と比べて、このような設置は、テストによるピンの数の増加を削減することに役に立ち、それにより、チップのサイズが大きすぎることを回避することができる。
戻って図1を参照すると、テストベクトル130は演算モジュール120−1−1に入力され、対応するテストを実行する。なお、このテストベクトル130は、演算モジュール120−1−1におけるメモリ124−1−1に対する第1テスト用であってもよいし、演算モジュール120−1−1における機能ロジック122−1−1に対する第2テスト用であってもよい。ここでさらなる細分はしない。
いくつかの実施例において、テスト制御信号160を受信するための第1ピン150−1とテストベクトル130を受信するための第2ピン150−2はチップ100での同じピンであってもよい。このような設置は、チップ100のピンの数をさらに削減することに役に立つ。
いくつかの実施例において、テスト制御信号160で示されるテストタイプが第1テストである場合、第1クロック信号170−1を演算モジュール120−1−1に入力し、該第1クロック信号170−1を使用して演算モジュール120−1−1におけるメモリ124−1−1に対して第1テストを実行する。図1を参照すると、図では、実線でこのプロセスを示す。それに対応して、該テスト制御信号160で示されるテストタイプが第2テストである場合、第2クロック信号180−1を演算モジュール120−1−1に入力し、該第2クロック信号180−1を使用して演算モジュール120−1−1における機能ロジック122−1−1に対して第2テストを実行する。以上のように、図1にテストベクトル130によって第1テストを実行する形態のみが示されているため、図では破線で演算モジュール120−1−1における機能ロジック122−1−1に対してテストを実行するプロセスを示す。
戻って図1を参照すると、上記に言及したように、チップ100は複数の演算モジュール120−1−1、120−1−2、120−2−1を含み得、各演算モジュールには対応するメモリと機能ロジックが含まれている。特定の基準に基づいて、これらの演算モジュールを1つまたは複数の演算モジュールグループに分ける。図に示されるように、演算モジュール120−1−1、120−1−2は1つの演算モジュールグループG1に分けられている。同様に、他の演算モジュールグループG2を形成できる。
いくつかの実施例において、該基準は、演算モジュールグループG1における各演算モジュール120−1−1、120−1−2が備える同じまたは類似の属性または機能ロジックであってもよい。なお、ここで言及する「同じ」は、完全に同じ或いは厳密に同じであることを必要としない。いくつかの実施例において、これらの基準は、演算モジュール120−1−1、120−1−2の位置、タイプ、サイズ、クロック周波数などの属性であってもよい。代替実施例において、これらの基準は、演算モジュール120−1−1、120−1−2のテスト要件などの機能ロジックであってもよい。例えば、基準が演算モジュール120−1−1、120−1−2の機能ロジックである場合、あるタスクを共同して完了させる(例えば畳み込み演算を完了させる)機能ロジックが同じまたは類似のいくつかの演算モジュールを1グループとして選択することができる。この基準に基づいて演算モジュールを選択してテストを並行して実行し、チップ100における配線の簡素化に役に立ち、それにより、チップ100のコストが削減され、故障率が低減される。したがって、同じまたは類似のテスト要件を選択基準とすることで、テストベクトル130の設計を簡素化することができる。
演算モジュールをグループ化することによって、演算モジュール間で属性と機能が同じまたは類似の特性を充分に使用することができる。これにより、チップ100のテスト効率を最適化することができる。ここで、いくつかの例示的な基準が挙げられる。なお、ユーザのニーズとチップ100の具体的な構成に応じて対応する基準を選択することができ、このような実施例は本発明の範囲に属する。
簡潔にするために、演算モジュールグループG1が2つの演算モジュール120−1−1、120−1−2を含む形態のみを示し、且つ2つの演算モジュールグループG1、G2のみを示す。勿論、各演算モジュールグループG1、G2はより多くの演算モジュールを備えてもよく、チップ100はより多くの演算モジュールグループを含むことができる。以下、主に演算モジュールグループG1を参照して本開示の実施例によるより多くの例示的な実現形態を説明する。
演算モジュールグループG1における演算モジュール120−1−1、120−1−2は同じまたは類似の特性を有するため、そのテストベクトル130が同じである。したがって、これらの演算モジュール120−1−1、120−1−2を1グループに分けることは、チップ100のピンを共有するのに有利で、それにより、テストによるピン数の増加を更に削減させるのに有利である。
図1に示されるように、テストベクトル130がチップ100のコントローラ110に入力される場合、コントローラ110はテスト制御信号160に基づいて第1クロック信号170−1或いは第2クロック信号180−1を出力する。第1クロック信号170−1は、演算モジュールグループG1における各演算モジュール120−1−1、120−1−2に対してメモリの第1テストを実行することに適用され、第2クロック信号180−1は、演算モジュールグループG1における各演算モジュール120−1−1、120−1−2に対して機能ロジックの第2テストを実行することに適用される。テストベクトル130は演算モジュール120−1−2におけるメモリ124−1−2と機能ロジック122−1−2に入力されることができる。図1では、破線で演算モジュール120−1−2におけるメモリ124−1−2と機能ロジック122−1−2に対してテストを実行するプロセスを示し、対応するテスト結果190−1−2がコントローラ110に返して出力されることができ、それを演算モジュール120−1−2が設計要件を満たすかどうかを判断するために使用される。
チップ100における他の演算モジュールグループG2に対して類似の動作を実行することができる。図1を参照すると、第1クロック信号170−2は演算モジュールグループG2の対応する演算モジュール120−2−1に入力されることができ、メモリ124−2−1の第1テストを実行するために使用される。第2クロック信号180−2も演算モジュールグループG2の対応する演算モジュール120−2−1に入力されることができ、機能ロジック122−2−1の第2テストを実行するために使用される。
以下、図3を参照して本開示の実施例によるコントローラ110のいくつかの実現形態を説明する。図に示されるように、コントローラ110はテスト制御ロジック310とクロック制御モジュール330とを備える。
テスト制御ロジック310は、テストタイプが第1テストであることに応答して、メモリテスト信号326をクロック制御モジュール330に出力し、テストタイプが第2テストであることに応答し、機能ロジックテスト信号328をクロック制御モジュール330に出力するように構成される。
クロック制御モジュール330は、テスト制御ロジック310から機能ロジックテスト信号328を受信したことに応答して、第1クロック信号170−1を演算モジュール120−1−1に入力し、及びテスト制御ロジック310からメモリテスト信号326を受信したことに応答して、第2クロック信号180−1を演算モジュール120−1−1に入力するように構成される。
いくつかの実施例において、クロック制御モジュール330はさらに、外部クロック信号322を受信するか或いは内部クロック信号を生成するように構成される。第1クロック信号170−1は外部クロック信号322或いはチップ100の内部クロック信号であってもよく、第2クロック信号180−1はチップ100の内部クロック信号であってもよい。
いくつかの実施例において、テスト制御ロジック310はさらに、クロック選択信号324を生成し、クロック選択信号324をクロック制御モジュール330に出力するように構成される。クロック選択信号324は、クロック制御モジュール330が内部クロック信号または外部クロック信号322を選択することを示す。
図4は、本開示のいくつかの実現形態によるクロック制御回路構造400を示す模式図であり、図5は、本開示のいくつかの実現形態によるクロック制御回路構造500を示す模式図である。クロック制御回路構造400、500はコントローラ110のクロック制御モジュール330の内部回路構造であってもよい。
図4に示されるように、クロック制御回路構造400は、内部クロック信号を生成し、内部クロック信号をマルチプレクサ440の第1入力端及び第1クロックスイッチ420の第1入力端に出力するためのオンチップクロック410を備える。クロック制御回路構造400は、マルチプレクサ440の第1入力端がオンチップクロック410の出力端にカップリングされ、オンチップクロック410からの内部クロック信号を受信し、マルチプレクサ440の第2入力端が外部クロック信号322を受信するように構成されるマルチプレクサ440をさらに備え、マルチプレクサ440は、テスト制御ロジック310からのクロック選択信号324に基づいて、内部クロック信号または外部クロック信号322を出力することを選択するように構成され、マルチプレクサ440の出力端は第2クロックスイッチ430の第1入力端にカップリングされる。
クロック制御回路構造400はORゲート450をさらに備え、ORゲート450の第1入力端はテスト制御ロジック310からのメモリテスト信号326を受信するように構成され、ORゲート450の第2入力端はテスト制御ロジック310からの機能ロジックテスト信号328を受信するように構成され、ORゲート450出力端は第2クロックスイッチ430の第2入力端にカップリングされる。
クロック制御回路構造400は第1クロックスイッチ420をさらに備え、第1クロックスイッチ420の第1入力端はオンチップクロック410の出力端にカップリングされて、オンチップクロック410からの内部クロック信号を受信し、第1クロックスイッチ420の第2入力端はテスト制御ロジック310からのメモリテスト信号326の逆信号を受信するように構成され、第1クロックスイッチ420の出力端は第2クロック信号180−1を出力して、第2テストを実行するために使用されるように構成される。
クロック制御回路構造400は第2クロックスイッチ430をさらに備え、第2クロックスイッチ430の第1入力端はマルチプレクサ440の出力端にカップリングされ、第2クロックスイッチ430の第2入力端がORゲート450の出力端にカップリングされ、第2クロックスイッチ430の出力端は第1クロック信号170−1を出力して、第1テストを実行するために使用されるように構成される。
図5に示されるように、クロック制御回路構造500はオンチップクロック510を備えてもよく、オンチップクロック510は内部クロック信号を生成し、内部クロック信号を第1クロックスイッチ520の第1入力端及び第2クロックスイッチ530の第1入力端に出力するのに用いられる。
クロック制御回路構造500は第1ORゲート550をさらに備え、第1ORゲート550の第1入力端がテスト制御ロジック310からのメモリテスト信号326を受信するように構成され、第1ORゲート550の第2入力端がテスト制御ロジック310からの機能ロジックテスト信号328を受信するように構成され、第1ORゲート550の出力端は第1ANDゲート560の第2入力端及び第2ANDゲート570の第1入力端にカップリングされる。
クロック制御回路構造500は第1ANDゲート560をさらに備え、第1ANDゲート560の第1入力端がテスト制御ロジック310からのクロック選択信号324の逆信号を受信するように構成され、第1ANDゲート560の出力端は第2クロックスイッチ530の第2入力端にカップリングされる。
クロック制御回路構造500は第2ANDゲート570をさらに備え、第2ANDゲート570の第2入力端はテスト制御ロジック310からのクロック選択信号324を受信するように構成され、第2ANDゲート570の出力端は第3クロックスイッチ580の第2入力端にカップリングされる。
クロック制御回路構造500は第1クロックスイッチ520をさらに備え、第1クロックスイッチ520の第2入力端はテスト制御ロジック310からのメモリテスト信号326の逆信号を受信するように構成され、第1クロックスイッチ520の出力端は第2クロック信号180−1を出力して、第2テストを実行するために使用されるように構成される。
クロック制御回路構造500は第2クロックスイッチ530と第3クロックスイッチ580とをさらに備え、第2クロックスイッチ530の出力端が第2ORゲート540の第1入力端にカップリングされ、第3クロックスイッチ580の第1入力端がテスト制御ロジック310からの外部クロック信号322を受信するように構成され、第3クロックスイッチ580の出力端が第2ORゲート540の第2入力端にカップリングされる。
クロック制御回路構造500は第2ORゲート540をさらに備え、第2ORゲート540の出力端は第1クロック信号170−1を出力して、第1テストを実行するために使用されるように構成される。
なお、ここで示されるクロック制御回路構造400、500は、例示的なものにすぎず、限定的なものではなく、他の実施例において、他の形態の制御回路構造を使用して信号の制御を実現することができ、本開示はこの点で制限されることはない。
いくつかの実施例において、コントローラ110は、演算モジュール120におけるテストする必要のない演算モジュールを決定することもできる。これらのテストする必要のない演算モジュールのクロックをオフにすることにより、チップ100のテスト電力消費を効果的に削減することができ、それにより、テストのコストを削減することができる。
いくつかの実施例において、演算モジュール120−1−1におけるメモリ124−1−1または機能ロジック122−1−1をテストする前に、演算モジュール120−1−1に対応するリセット信号を入力し、両者をリセットすることができる。メモリ124−1−1または機能ロジック122−1−1を個別にリセットすることができる。具体的に、コントローラ110は、リセットタイプを示すリセット制御信号を受信することができる。ここで言及した「リセットタイプ」とは、該リセットが演算モジュール120−1−1におけるメモリ124−1−1をリセットするか、または演算モジュール120−1−1における機能ロジック122−1−1をリセットするかを指す。いくつかの実施例において、該リセットタイプが演算モジュール120−1−1におけるメモリ124−1−1をリセットすることを示すものが決定されたことに応答して、第1テストを実行する前に、演算モジュール120−1−1に第1リセット信号を入力し、演算モジュール120−1−1のメモリ124−1−1をリセットするようにする。代替的な実施例において、該リセットタイプが演算モジュール120−1−1における機能ロジック122−1−1をリセットすることを示すものを決定したことに応答して、第2テストを実行する前に、演算モジュール120−1−1に第2リセット信号を入力し、演算モジュール120−1−1の機能ロジック122−1−1をリセットするようにする。このようにすることによって、チップ100におけるメモリ124−1−1と機能ロジック122−1−1を柔軟にリセット制御することを容易に実現することができる。
なお、ここで演算モジュール120−1−1を参照して説明したが、これらの説明は同様にチップ100における他の演算モジュール120−1−2、120−2−1などに適用される。
図1に戻って、テストベクトル130はチップ100のピン150−2を介して入力されることができる。いくつかの実施例において、テストベクトル130とテスト出力140は有線通信または無線通信の方法によってコントローラ110と演算モジュール120との間にやりとりをすることができる。さらに、理解すべきものとして、具体的な応用場面により、テストベクトル130とテスト出力140は1つまたは複数回のやりとりを介してコントローラ110と演算モジュール120との間に伝送されることができ、本開示は、この点でも制限はしない。
なお、具体的なテストベクトル130を設計する場合、既存または将来のテストベクトル130を設計するための任意の方法を使用することができることを理解すべきである。さらに、ものとして、チップ100をテストする配線を実行する場合、既存または将来の任意の配線方法を使用することができることを理解すべきであり、本開示はこの点で制限がない。
本開示の実施例によって、従来のチップテスト方法と異なり、本発明は、チップ100におけるテストタイプを選択することにより、テストベクトルをチップの同じピンから入力させ、このようにして、チップ100のピン数の削減に有利で、それにより、チップ100のサイズが大きすぎることを回避する。なお、同じまたは類似の特性を有する演算モジュールをグループ化してグループ内の演算モジュールを並行してテストし、このような構成によって、チップ100のテスト速度を向上させることができる。また、本願の手段によれば、アイドル状態の演算モジュールをオフにすることで、チップ100テストのコストを効果的に削減することもできる。
本願の実施例によれば、本願は、電子デバイスと可読記憶媒体をさらに提供する。図6は、本開示の複数の実施例による電子デバイス600を実施できる模式的なブロック図である。
図に示されるように、電子デバイス600は中央処理ユニット(CPU)601を含み、読み取り専用メモリ(ROM)602に記憶されるコンピュータプログラム指令或いは記憶ユニット608からランダムアクセスメモリ(RAM)603にロードされるコンピュータプログラム指令に従って、様々な適切な動作と処理を実行する。RAM603には、電子デバイス600の動作に必要な様々なプログラムとデータが記憶されることもできる。CPU601、ROM602及びRAM603はバス604によって互いに接続される。入力/出力(I/O)インターフェース605もバス604に接続される。
電子デバイス600における複数の部材、例えば、キーボード、マウスなどの入力ユニット606、様々なタイプのモニター、スピーカーなどの出力ユニット607、ディスク、CDなどの記憶ユニット608、ネットワークカード、モデム、無線通信トランシーバーなどの通信ユニット609はI/Oインターフェース605に接続される。通信ユニット609は、電子デバイス600がインターネットなどのコンピューターネットワークおよび/または様々な電気通信ネットワークを介して他のデバイスと情報/データを交換することを許容する。
以上説明した各プロセス及び処理、例えば方法200は、処理ユニット601により実行されることができる。例えば、いくつかの実施例において、方法200はコンピューターソフトウェアプログラムとして実現されることができ、有形なものとして機械可読媒体、例えば記憶ユニット608に含まれる。いくつかの実施例において、コンピュータプログラムの一部或いは全部はROM602および/または通信ユニット609を介して電子デバイス600にロードおよび/またはインストールされる。コンピュータプログラムはRAM603にロードされてCPU601により実行される場合、上記説明した方法200の1つまたは複数の動作が実行されることができる。
本開示は、方法、装置、システムおよび/またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品は、本開示の各態様を実行するためのコンピュータ可読プログラム指令が記憶されるコンピュータ可読記憶媒体を含み得る。
コンピュータ可読記憶媒体は、指令実行デバイスにより使用される指令を保持と記憶することができる有形デバイスであってもよい。コンピュータ可読記憶媒体は、例えば電気記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁気記憶デバイス、半導体記憶デバイス或いは上記の任意の適切な組み合わせであってもよいが、これらに制限されない。コンピュータ可読記憶媒体のより具体的な例(網羅的ではないリスト)は、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能なプログラム可能な読み取り専用メモリ(EPROMまたはフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、機械的エンコードデバイス、例えばその上に指令が記憶されるパンチカードまたは溝内の突起構造、及び上記の任意の適切な組み合わせを含む。ここで使用されるコンピュータ可読記憶媒体は、電波または他の自由に伝播される電磁波、導波路または他の伝達媒体を通って伝播される電磁波(例えば、光ファイバーケーブルを介した光パルス)、またはワイヤを通して伝送される電気信号などの瞬時信号自体には解釈されない。
ここで説明するコンピュータ可読プログラム指令は、コンピュータ可読記憶媒体から各演算/処理デバイスにダウンロードし、或いはネットワーク、例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワークおよび/またはワイヤレスネットワークを介して外部コンピュータまたは外部記憶デバイスにダウンロードされることができる。ネットワークは、銅製伝送ケーブル、光ファイバー伝送、ワイヤレス伝送、ルーター、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバーを含み得る。各演算/処理デバイスにおけるネットワークアダプターカード或いはネットワークインターフェースはネットワークからコンピュータ可読プログラム指令を受信し、且つ該コンピュータ可読プログラム指令を転送し、各演算/処理デバイスにおけるコンピュータ可読記憶媒体に記憶される。
本開示の操作を実行するためのコンピュータプログラム指令は、アセンブリ指令、指令セットアーキテクチャ(ISA)指令、機械指令、機械関連指令、マイクロコード、ファームウェア指令、状態設定データ、または1つ以上のプログラミング言語の任意の組み合わせで記述されたソースコード、またはオブジェクトコードであってよく、前記プログラミング言語は、Smalltalk、C++などのオブジェクト指向のプログラミング言語と、C言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む。コンピュータ可読プログラム指令は、完全にユーザコンピュータで、部分的にユーザコンピュータで、スタンドアロンのソフトウェアパッケージとして、部分的にユーザコンピュータで部分的にリモートコンピュータで、或いは完全にリモートコンピュータまたはサーバーで実行できる。リモートコンピュータに関する場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)などの任意の種類のネットワークを介してユーザコンピューターに接続でき、或いは、外部コンピュータ(例えばインターネットサービスプロバイダーを使用してインターネットを介して接続する)に接続できる。いくつかの実施例において、コンピュータ可読プログラム指令のステータス情報を使用して、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)またはプログラマブルロジック配列(PLA)などの電子回路をパーソナライズし、該電子回路はコンピュータ可読プログラム指を実行することができ、それにより、本開示の各態様を実現する。
ここで、本開示の実施例による方法、装置(システム)及びコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して本開示の各態様を説明した。理解すべきなのは、フローチャートおよび/またはブロック図の各ブロック及びフローチャートおよび/またはブロック図の各ブロックの組み合わせは、コンピュータ可読プログラム指令により実現されることができる。
これらのコンピュータ可読プログラム指令は、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置の処理ユニットに提供されることができ、それにより、これらの指令がコンピュータまたは他のプログラマブルデータ処理装置の処理ユニットによって実行されると、フローチャートおよび/またはブロック図の1つまたは複数のブロックに規定している機能/動作を実現する装置を生成するようにする機器を製造する。これらのコンピュータ可読プログラム指令はコンピュータ可読記憶媒体に記憶されてもよく、これらの指令によってコンピュータ、プログラマブルデータ処理装置および/または他のデバイスが特定の方法で作動させ、それにより、指令を記憶したコンピュータ可読媒体は、フローチャートおよび/またはブロック図の1つまたは複数のブロックに規定している機能/動作の各態様を実現する指令を含む製造物を含む。
コンピュータ可読プログラム指令をコンピュータ、他のプログラマブルデータ処理装置、または他のデバイスにロードすることもでき、コンピュータ、他のプログラマブルデータ処理装置または他のデバイスで一連の操作ステップを実行させ、コンピュータによって実現されるプロセスを生成し、それにより、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイスで実行される指令にフローチャートおよび/またはブロック図の1つまたは複数のブロックに規定されている機能/動作を実現させる。
図面におけるフローチャートとブロック図は、本開示の複数の実施例によるシステム、方法及びコンピュータプログラム製品の実現可能なシステムアーキテクチャ、機能及び操作を示す。この点で、フローチャートまたはブロック図の各ブロックは1つのモジュール、プログラムセグメントまたは指令の一部を示し、前記モジュール、プログラムセグメントまたは指令の一部は規定しているロジック機能を実現するための1つまたは複数の実行可能な指令を含む。代替としていくかの実現において、ブロックで付記される機能は図面に付記される順序と異なる順序で発生する場合がある。例えば、2つの連続するブロックは、実際には基本的に並行して実行することができ、関連する機能に応じて、逆の順序で実行することもできる。さらに、注意すべきものとして、ブロック図および/またはフローチャートの各ブロック、及びブロック図および/またはフローチャートのブロックの組み合わせは、規定している機能または動作を実行するハードウェアに基づく専用のシステムを使用して実現することも、専用のハードウェアとコンピュータ指令との組み合わせを使用して実現することもできる。
なお、上記に示される様々な形態のプロセスを使用してソートし、ステップを追加し、削除できることを理解すべきである。例えば、本願に記載された各ステップは、本願に開示される技術的解決手段の所望の結果を達成できる限り、並行、順次、または異なる順序で実行されてもよく、ここでは制限しない。
上記の具体的な実施形態は、本願の特許の保護範囲を限定するものではない。当業者は、設計上の必要性及び他の要因に応じて、様々な修正、組み合わせ、サブ組み合わせ、及び置換を行うことができることを理解すべきである。本願の精神及び原則を逸脱せずに行われた補正、均等な置換、改良などはすべて本願の保護範囲に含まれるとすべきである。

Claims (22)

  1. 演算モジュールを備えるチップをテストするための方法であって、前記方法は、
    前記チップの第1ピンを介して、前記演算モジュールのテストタイプを示すテスト制御信号を受信することと、
    前記テスト制御信号に示された前記テストタイプに基づいて、
    第1テストベクトルを使用して前記演算モジュールに対して第1テストを行われるか、または
    第2テストベクトルを使用して前記演算モジュールに対して第2テストを行われることと、を含み、
    前記第1テストは前記演算モジュールのメモリに対して行なわれるテストであり、前記第2テストは前記演算モジュールの機能ロジックに対して行われるテストであるチップをテストするための方法。
  2. 前記チップの第2ピンを介して、前記第1テスト用の前記第1テストベクトルを受信すること、または
    前記第2ピンを介して、前記第2テスト用の前記第2テストベクトルを受信することとをさらに含む請求項1に記載の方法。
  3. 前記第1ピンと前記第2ピンは前記チップの同じピンである請求項2に記載の方法。
  4. 前記テスト制御信号に基づいて、前記テストタイプが第1テストであることを示し、第1クロック信号を前記演算モジュールに入力することと、
    前記第1クロック信号を使用して、前記演算モジュールに対して前記第1テストを実行すること、
    または
    前記テスト制御信号に基づいて、前記テストタイプが第2テストであることを示し、第2クロック信号を前記演算モジュールに入力することと、
    前記第2クロック信号を使用して、前記演算モジュールに対して前記第2テストを実行することと、をさらに含む請求項1に記載の方法。
  5. 前記第1クロック信号は外部クロック信号或いは前記チップの内部クロック信号であり、前記第2クロック信号は前記チップの前記内部クロック信号である請求項4に記載の方法。
  6. 前記チップは複数の演算モジュールを備え、前記方法は、
    基準に従って、前記複数の演算モジュールにおける2つ以上の演算モジュールを1つまたは複数の演算モジュールグループに分けることをさらに含み、
    前記演算モジュールに対して前記第1テストを実行することは、前記演算モジュールグループにおける各演算モジュールの前記メモリをテストすることを含み、
    または
    前記演算モジュールに対して前記第2テストを実行することは、前記演算モジュールグループにおける各演算モジュールの前記機能ロジックをテストすることを含む請求項1に記載の方法。
  7. 前記基準は、前記演算モジュールグループにおける各演算モジュールが同じ属性または機能ロジックを有することである請求項6に記載の方法。
  8. リセットタイプを示すリセット制御信号を受信することと、
    前記リセット制御信号で示される前記リセットタイプに基づいて、
    前記第1テストを実行する前に、前記演算モジュールに第1リセット信号を入力して、前記演算モジュールの前記メモリをリセットするようにすることと、または
    前記第2テストを実行する前に、前記演算モジュールに第2リセット信号を入力して、前記演算モジュールの前記機能ロジックをリセットようにすることと、をさらに含む請求項1に記載の方法。
  9. 前記チップは複数の演算モジュールを備え、前記方法は、
    前記複数の演算モジュールにおけるテストする必要のない演算モジュールを決定することと、
    決定した前記演算モジュールのクロックを閉めることと、をさらに含む請求項1に記載の方法。
  10. チップであって、
    演算モジュールと、
    前記演算モジュールにカップリングされ、前記演算モジュールのテストタイプを示すテスト制御信号を受信するように構成される第1ピンと、
    前記第1ピンと前記演算モジュールにカップリングされ、前記テスト制御信号に示された前記テストタイプに基づいて、第1テストベクトルを使用して前記演算モジュールに対して第1テストを実行するかまたは第2テストベクトルを使用して前記演算モジュールに対して第2テストを実行するように構成されるコントローラと、を備え、
    前記第1テストは前記演算モジュールのメモリに対して行われるテストであり、前記第2テストは前記演算モジュールの機能ロジックに対して行われるテストであるチップ。
  11. 前記第1テスト用の前記第1テストベクトル或いは前記第2テスト用の前記第2テストベクトルを受信するように構成される第2ピンをさらに備える請求項10に記載のチップ。
  12. 前記第1ピンと前記第2ピンは前記チップの同じピンである請求項11に記載のチップ。
  13. 前記コントローラは、
    前記テストタイプが前記第1テストであるのに応答して、メモリテスト信号をクロック制御モジュールに出力し、
    前記テストタイプが前記第2テストであるのに応答して、機能ロジックテスト信号を前記クロック制御モジュールに出力するように構成されるテスト制御ロジックと、
    前記テスト制御ロジックから前記機能ロジックテスト信号を受信したことに応答して、第1クロック信号を前記演算モジュールに入力し、
    前記テスト制御ロジックから前記メモリテスト信号を受信したことに応答して、第2クロック信号を前記演算モジュールに入力するように構成される前記クロック制御モジュールと、を備える請求項10に記載のチップ。
  14. 前記クロック制御モジュールはさらに、外部クロック信号を受信するかまたは内部クロック信号を生成するように構成され、
    前記第1クロック信号は外部クロック信号または前記チップの内部クロック信号であり、前記第2クロック信号は前記チップの前記内部クロック信号である請求項13に記載のチップ。
  15. 前記テスト制御ロジックはさらに、
    クロック選択信号を生成し、前記クロック選択信号を前記クロック制御モジュールに出力するように構成され、前記クロック選択信号は、前記クロック制御モジュールが前記内部クロック信号または前記外部クロック信号を選択することを示すものである請求項14に記載のチップ。
  16. 前記クロック制御モジュールは、
    前記内部クロック信号を生成し、前記内部クロック信号をマルチプレクサの第1入力端及び第1クロックスイッチの第1入力端に出力するためのオンチップクロックと、
    前記マルチプレクサの第1入力端は前記オンチップクロックの出力端にカップリングされ、前記オンチップクロックからの前記内部クロック信号を受信し、前記マルチプレクサの第2入力端は前記外部クロック信号を受信するように構成され、前記テスト制御ロジックからの前記クロック選択信号に基づいて、前記内部クロック信号または前記外部クロック信号を出力することを選択し、前記マルチプレクサの出力端は第2クロックスイッチの第1入力端にカップリングされるように構成される前記マルチプレクサと、
    ORゲートの第1入力端は前記テスト制御ロジックからの前記メモリテスト信号を受信するように構成され、前記ORゲートの第2入力端は前記テスト制御ロジックからの前記機能ロジックテスト信号を受信するように構成され、前記ORゲートの出力端は前記第2クロックスイッチの第2入力端にカップリングされる前記ORゲートと、
    前記第1クロックスイッチの第1入力端は前記オンチップクロックの出力端にカップリングされ、前記オンチップクロックからの前記内部クロック信号を受信し、前記第1クロックスイッチの第2入力端は前記テスト制御ロジックからの前記メモリテスト信号の逆信号を受信するように構成され、第1クロックスイッチ出力端は前記第2クロック信号を出力して、前記第2テストを実行するために使用されるように構成される前記第1クロックスイッチと、
    前記第2クロックスイッチの第1入力端は前記マルチプレクサの出力端にカップリングされ、前記第2クロックスイッチの第2入力端は前記ORゲートの出力端にカップリングされ、前記第2クロックスイッチの出力端は前記第1クロック信号を出力して、前記第1テストを実行するために使用されるように構成される前記第2クロックスイッチと、を備える請求項15に記載のチップ。
  17. 前記クロック制御モジュールは、
    内部クロック信号を生成し、前記内部クロック信号を第1クロックスイッチの第1入力端及び第2クロックスイッチの第1入力端に出力するためのオンチップクロックと、
    第1ORゲートの第1入力端は前記テスト制御ロジックからの前記メモリテスト信号を受信するように構成され、前記第1ORゲートの第2入力端は前記テスト制御ロジックからの前記機能ロジックテスト信号を受信するように構成され、前記第1ORゲートの出力端は第1ANDゲートの第2入力端と第2ANDゲートの第1入力端にカップリングされる前記第1ORゲートと、
    前記第1ANDゲートの第1入力端は前記テスト制御ロジックからの前記クロック選択信号の逆信号を受信するように構成され、前記第1ANDゲートの出力端は前記第2クロックスイッチの第2入力端にカップリングされる前記第1ANDゲートと、
    前記第2ANDゲートの第2入力端は前記テスト制御ロジックからの前記クロック選択信号を受信するように構成され、前記第2ANDゲートの出力端は第3クロックスイッチの第2入力端にカップリングされる前記第2ANDゲートと、
    前記第1クロックスイッチの第2入力端は前記テスト制御ロジックからの前記メモリテスト信号の逆信号を受信するように構成され、前記第1クロックスイッチの出力端は第2クロック信号を出力して、第2テストを実行するために使用されるように構成される前記第1クロックスイッチと、
    前記第2クロックスイッチの出力端は第2ORゲートの第1入力端にカップリングされるように構成される前記第2クロックスイッチと、
    前記第3クロックスイッチの第1入力端は前記テスト制御ロジックからの前記外部クロック信号を受信し、前記第3クロックスイッチの出力端は第2ORゲートの第2入力端にカップリングされるように構成される前記第3クロックスイッチと、
    前記第2ORゲートの出力端は前記第1クロック信号を出力して、前記第1テストを実行するために使用されるように構成される前記第2ORゲートと、を備える請求項15に記載のチップ。
  18. 前記演算モジュールは複数の演算モジュールを備え、前記コントローラは、基準に基づいて、前記複数の演算モジュールにおける2つ以上の演算モジュールを1つまたは複数の演算モジュールグループに分けるように構成され、
    前記演算モジュールに対して前記第1テストを実行することは、前記演算モジュールグループにおける各演算モジュールの前記メモリをテストすることを含み、
    または
    前記演算モジュールに対して前記第2テストを実行することは、前記演算モジュールグループにおける各演算モジュールの前記機能ロジックをテストすることを含む請求項10に記載のチップ。
  19. 前記基準は、前記演算モジュールグループにおける各演算モジュールが同じ属性または機能ロジックを有することである請求項18に記載のチップ。
  20. 電子デバイスであって、
    1つまたは複数のプロセッサと、1つまたは複数のプログラムを記憶するためのメモリとを備え、
    前記1つまたは複数のプロセッサによって実行されると、前記電子デバイスに請求項1〜9のいずれかに記載の方法を実現させる電子デバイス。
  21. コンピュータ可読記憶媒体であって、コンピュータプログラムが記憶され、前記プログラムがプロセッサによって実行されると、請求項1〜9のいずれかに記載の方法を実現させるコンピュータ可読記憶媒体。
  22. コンピュータプログラムであって、
    前記コンピュータプログラムがプロセッサによって実行されると、請求項1〜9のいずれか一項に記載の方法を実現させるコンピュータプログラム。
JP2021051719A 2020-07-24 2021-03-25 チップをテストするための方法、電子デバイス、コンピュータ可読記憶媒体、対応するチップ及びコンピュータプログラム Active JP7339976B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010725015.XA CN111856258B (zh) 2020-07-24 2020-07-24 用于芯片的测试的方法、设备、存储介质和相应的芯片
CN202010725015.X 2020-07-24

Publications (2)

Publication Number Publication Date
JP2021193366A true JP2021193366A (ja) 2021-12-23
JP7339976B2 JP7339976B2 (ja) 2023-09-06

Family

ID=72950798

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021051719A Active JP7339976B2 (ja) 2020-07-24 2021-03-25 チップをテストするための方法、電子デバイス、コンピュータ可読記憶媒体、対応するチップ及びコンピュータプログラム

Country Status (5)

Country Link
US (1) US11639964B2 (ja)
EP (1) EP3943960B1 (ja)
JP (1) JP7339976B2 (ja)
KR (1) KR102583044B1 (ja)
CN (1) CN111856258B (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112881887B (zh) * 2021-01-15 2023-02-17 深圳比特微电子科技有限公司 芯片测试方法和计算芯片
CN113295943B (zh) * 2021-04-30 2023-03-24 地平线征程(杭州)人工智能科技有限公司 待测试模块的测试电路、方法及装置
CN113254284B (zh) * 2021-05-21 2023-06-23 北京百度网讯科技有限公司 芯片测试方法、装置、设备、存储介质以及程序产品
CN113568821A (zh) * 2021-07-26 2021-10-29 北京百度网讯科技有限公司 一种ai芯片计算性能的测试方法、装置、设备、及介质
CN114062891A (zh) * 2021-10-11 2022-02-18 深圳市德斯戈智能科技有限公司 基于ai芯片用算力测试装置
CN114138697B (zh) * 2021-11-26 2023-06-16 苏州浪潮智能科技有限公司 一种信号传输系统、信号传输方法、信号传输装置及介质
CN114325340B (zh) * 2021-12-31 2024-01-19 南京矽典微系统有限公司 射频芯片的测试系统及测试方法
CN115061032A (zh) * 2022-06-14 2022-09-16 无锡华大国奇科技有限公司 一种多时钟域芯片的功能测试方法及测试装置
CN115629295B (zh) * 2022-11-30 2023-04-14 苏州萨沙迈半导体有限公司 芯片自动化测试系统、方法及存储介质
KR102594471B1 (ko) * 2022-12-07 2023-10-26 주식회사디아이 반도체 테스트 장비의 다중 테스트 존 제어장치
CN115684895B (zh) * 2022-12-29 2023-03-21 摩尔线程智能科技(北京)有限责任公司 芯片可测性设计测试方法、测试平台及其生成方法及装置
CN115792580B (zh) * 2023-01-30 2023-05-12 北京怀美科技有限公司 芯片检测系统及可编辑芯片检测系统
CN115902595B (zh) * 2023-02-20 2023-07-14 之江实验室 一种芯片测试系统以及芯片测试方法
CN116224043B (zh) * 2023-05-04 2023-07-25 晶艺半导体有限公司 芯片均压测试系统
CN116774020B (zh) * 2023-08-16 2023-11-14 上海燧原科技有限公司 一种芯片测试系统、方法、装置和存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06300814A (ja) * 1993-04-15 1994-10-28 Fujitsu Ltd 集積回路及びそのテスト方法
JPH0991996A (ja) * 1995-09-20 1997-04-04 Hitachi Ltd 半導体集積回路および試験装置
JPH11223658A (ja) * 1998-02-04 1999-08-17 Toshiba Microelectronics Corp 半導体集積回路装置
JP2000057002A (ja) * 1998-08-06 2000-02-25 Oki Data Corp 集積回路
JP2001235524A (ja) * 2000-02-22 2001-08-31 Matsushita Electric Ind Co Ltd 半導体集積回路装置およびそのテスト方法、ram/romテスト回路およびそのテスト方法
JP2004022014A (ja) * 2002-06-13 2004-01-22 Nec Micro Systems Ltd 半導体装置およびそのテスト方法
JP2005332555A (ja) * 2004-04-23 2005-12-02 Oki Electric Ind Co Ltd テスト回路、テスト方法、及び半導体集積回路装置
JP2009283108A (ja) * 2008-05-26 2009-12-03 Fujitsu Microelectronics Ltd 半導体装置
JP2010204004A (ja) * 2009-03-05 2010-09-16 Fujitsu Semiconductor Ltd 電源供給支援プログラム、電源供給支援装置および電源供給支援方法
JP2012234605A (ja) * 2011-05-09 2012-11-29 Renesas Electronics Corp 半導体試験装置及びそのテスト方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039545B2 (en) * 2004-04-19 2006-05-02 Agilent Technologies, Inc. Apparatus, system and/or method for converting a serial test to a parallel test
US7404125B2 (en) * 2005-02-04 2008-07-22 International Business Machines Corporation Compilable memory structure and test methodology for both ASIC and foundry test environments
US20060282735A1 (en) * 2005-05-24 2006-12-14 Texas Instruments Incorporated Fasttest module
US7657812B2 (en) * 2007-03-21 2010-02-02 Advantest Corporation Test apparatus for updating a value of the bit position in result register by executing a result register update instruction with predetermined value to generate test pattern
US8386867B2 (en) * 2009-07-02 2013-02-26 Silicon Image, Inc. Computer memory test structure
WO2017160286A1 (en) * 2016-03-16 2017-09-21 Hewlett-Packard Development Company, L.P. Controlling a transition between a functional mode and a test mode
KR102400556B1 (ko) * 2016-12-12 2022-05-20 삼성전자주식회사 성능 및 디버그 모니터링을 위한 장치, 시스템 및 방법
CN108595298A (zh) * 2018-04-28 2018-09-28 青岛海信电器股份有限公司 一种芯片测试系统及方法
CN110825439B (zh) * 2018-08-10 2021-03-09 北京百度网讯科技有限公司 信息处理方法和处理器
CN111208933B (zh) * 2018-11-21 2023-06-30 昆仑芯(北京)科技有限公司 数据访问的方法、装置、设备和存储介质
US11011249B2 (en) * 2019-08-21 2021-05-18 Nvidia Corporation Concurrent testing of a logic device and a memory device within a system package
US11156660B1 (en) * 2019-12-19 2021-10-26 Cadence Design Systems, Inc. In-system scan test of electronic devices

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06300814A (ja) * 1993-04-15 1994-10-28 Fujitsu Ltd 集積回路及びそのテスト方法
JPH0991996A (ja) * 1995-09-20 1997-04-04 Hitachi Ltd 半導体集積回路および試験装置
JPH11223658A (ja) * 1998-02-04 1999-08-17 Toshiba Microelectronics Corp 半導体集積回路装置
JP2000057002A (ja) * 1998-08-06 2000-02-25 Oki Data Corp 集積回路
JP2001235524A (ja) * 2000-02-22 2001-08-31 Matsushita Electric Ind Co Ltd 半導体集積回路装置およびそのテスト方法、ram/romテスト回路およびそのテスト方法
JP2004022014A (ja) * 2002-06-13 2004-01-22 Nec Micro Systems Ltd 半導体装置およびそのテスト方法
JP2005332555A (ja) * 2004-04-23 2005-12-02 Oki Electric Ind Co Ltd テスト回路、テスト方法、及び半導体集積回路装置
JP2009283108A (ja) * 2008-05-26 2009-12-03 Fujitsu Microelectronics Ltd 半導体装置
JP2010204004A (ja) * 2009-03-05 2010-09-16 Fujitsu Semiconductor Ltd 電源供給支援プログラム、電源供給支援装置および電源供給支援方法
JP2012234605A (ja) * 2011-05-09 2012-11-29 Renesas Electronics Corp 半導体試験装置及びそのテスト方法

Also Published As

Publication number Publication date
KR20210042854A (ko) 2021-04-20
EP3943960A1 (en) 2022-01-26
US20210215756A1 (en) 2021-07-15
CN111856258B (zh) 2023-05-09
CN111856258A (zh) 2020-10-30
JP7339976B2 (ja) 2023-09-06
US11639964B2 (en) 2023-05-02
EP3943960B1 (en) 2023-04-19
KR102583044B1 (ko) 2023-09-25

Similar Documents

Publication Publication Date Title
JP2021193366A (ja) チップをテストするための方法、電子デバイス、コンピュータ可読記憶媒体、対応するチップ及びコンピュータプログラム
US10599599B2 (en) Selectable peripheral logic in programmable apparatus
JP7029873B2 (ja) 人工知能チップのテスト方法、装置、機器、及び記憶媒体
US11055139B2 (en) Smart accelerator allocation and reclamation for deep learning jobs in a computing cluster
BR112019027531A2 (pt) processadores de alto rendimento
CN101526915B (zh) 并行模拟中支持踪迹文件并行输入输出的方法
US9791507B2 (en) Customer-transparent logic redundancy for improved yield
US10657211B2 (en) Circuit generation based on zero wire load assertions
US11449337B1 (en) Pseudorandom keephot instructions to mitigate large load steps during hardware emulation
US11521705B2 (en) Random sequence generation for gene simulations
CN118035150B (zh) 外围器件互联扩展设备热插拔系统、方法、设备以及集群
US11342922B1 (en) Direct bi-directional gray code counter
CN117112033B (zh) 随机指令生成方法、装置、设备以及存储介质
US10528697B1 (en) Timing-closure methodology involving clock network in hardware designs
US20230306272A1 (en) Mapping Workloads to Circuit Units in a Computing Device via Reinforcement Learning
US20220019721A1 (en) Creating multiple use test case
US11256643B2 (en) System and method for high configurability high-speed interconnect
JP2006132992A (ja) ストレス印加方法
JP5701930B2 (ja) 半導体装置
CN118034924A (zh) 基于众核系统的数据处理方法、装置、电子设备和介质
CN115343605A (zh) 芯片设计测试方法、系统、介质、设备及fpga原型验证平台
WO2010023804A1 (ja) データ処理装置、データ処理方法並びにデータ処理プログラムが格納された記録媒体
US20110289339A1 (en) Semiconductor device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210924

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20211018

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20220316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230724

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230825

R150 Certificate of patent or registration of utility model

Ref document number: 7339976

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150