Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5149115B2 - Semiconductor test equipment - Google Patents
[go: Go Back, main page]

JP5149115B2 - Semiconductor test equipment - Google Patents

Semiconductor test equipment Download PDF

Info

Publication number
JP5149115B2
JP5149115B2 JP2008253090A JP2008253090A JP5149115B2 JP 5149115 B2 JP5149115 B2 JP 5149115B2 JP 2008253090 A JP2008253090 A JP 2008253090A JP 2008253090 A JP2008253090 A JP 2008253090A JP 5149115 B2 JP5149115 B2 JP 5149115B2
Authority
JP
Japan
Prior art keywords
instruction
jpflg
memory
sequence control
address
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.)
Expired - Fee Related
Application number
JP2008253090A
Other languages
Japanese (ja)
Other versions
JP2010085177A (en
Inventor
太 河原崎
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2008253090A priority Critical patent/JP5149115B2/en
Publication of JP2010085177A publication Critical patent/JP2010085177A/en
Application granted granted Critical
Publication of JP5149115B2 publication Critical patent/JP5149115B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Description

本発明は、半導体試験装置に関し、詳しくは、パターン発生命令のシーケンス制御に関するものである。   The present invention relates to a semiconductor test apparatus, and more particularly to sequence control of pattern generation instructions.

図5は、従来の半導体試験装置の構成例を示すブロック図である。図5において、プログラムに記述されたパターン発生命令のシーケンスを制御するシーケンス制御回路100と、パターン発生命令を記憶するインストラクションメモリ200と、加減算などの演算が可能なパターン発生回路300と、被試験IC500の良否を判定する比較器400などで構成されている。   FIG. 5 is a block diagram showing a configuration example of a conventional semiconductor test apparatus. In FIG. 5, a sequence control circuit 100 for controlling a sequence of pattern generation instructions described in a program, an instruction memory 200 for storing pattern generation instructions, a pattern generation circuit 300 capable of operations such as addition and subtraction, and an IC under test 500 Comparator 400 for judging whether the quality is good or bad.

半導体試験装置のプログラムは、ワークステーションなどのコンピュータにより機械語に変換される。変換された機械語は、テスト実行前にハードウェアのインストラクションメモリおよび各種レジスタに転送される。   The program of the semiconductor test apparatus is converted into machine language by a computer such as a workstation. The converted machine language is transferred to a hardware instruction memory and various registers before executing the test.

シーケンス制御回路100は、プログラムに記述された命令に従い、プログラムカウンタ信号aを出力する。インストラクションメモリ200は、メモリアドレスとなるプログラムカウンタ信号aによってアクセスされ、パターン発生命令bを出力する。パターン発生回路300は、このパターン発生命令bに従い被試験IC500に供給する試験パターンcおよび期待パターンdを発生する。比較器400は、パターン発生回路からの期待パターンdと被試験IC500からの出力信号eを比較し、被試験IC500の良否を判定する。   The sequence control circuit 100 outputs a program counter signal a according to an instruction described in the program. The instruction memory 200 is accessed by a program counter signal a serving as a memory address, and outputs a pattern generation instruction b. The pattern generation circuit 300 generates a test pattern c and an expected pattern d to be supplied to the IC under test 500 in accordance with the pattern generation instruction b. The comparator 400 compares the expected pattern d from the pattern generation circuit with the output signal e from the IC under test 500 to determine pass / fail of the IC under test 500.

図6は、図5の半導体試験装置におけるプログラム例であり、シーケンス制御命令とパターン発生命令で構成されている。シーケンス制御命令の「NOOP」は、「NOOP」と記述された行を実行し、プログラムカウンタをインクリメントする命令である。「LOOP」は、指定された行から「LOOP」と記述された行までの命令を指定された回数実行するまで、プログラムカウンタをジャンプする命令である。この例の場合は、「6」が指定回数であり、「AA」が行の指定である。「AA」で指定された行が「LOOP」と記述された行と同一であるので、この行を6回実行する。   FIG. 6 shows an example of a program in the semiconductor test apparatus of FIG. 5, which is composed of a sequence control instruction and a pattern generation instruction. The sequence control instruction “NOOP” is an instruction that executes the line described as “NOOP” and increments the program counter. “LOOP” is an instruction for jumping a program counter until an instruction from a designated line to a line described as “LOOP” is executed a designated number of times. In this example, “6” is the specified number of times, and “AA” is the row specification. Since the line designated by “AA” is the same as the line described as “LOOP”, this line is executed six times.

図7は、図5の半導体試験装置で図6のプログラムを実行したときの動作を説明するタイミングチャートである。インストラクションメモリ200には、アドレス0番地に「X=0」、1番地に「X=X+1」、2番地に「X=0」という命令がコンピュータにより設定される。   FIG. 7 is a timing chart for explaining the operation when the program of FIG. 6 is executed by the semiconductor test apparatus of FIG. In the instruction memory 200, an instruction “X = 0” at address 0, “X = X + 1” at address 1, “X = 0” at address 2, is set by the computer.

被試験IC500の試験が始まると、シーケンス制御回路100は、プログラムに従って、プログラムカウンタ信号aを「0,1,1,1,1,1,1,2」と発生する。インストラクションメモリ200は、プログラムカウンタ信号aを受け取りパターン発生命令bを「X=0」、「X=X+1」、「X=X+1」、「X=X+1」、「X=X+1」、「X=X+1」、「X=X+1」、「X=0」と発生する。パターン発生回路300は、パターン発生命令bを受け取って演算を行い、パターン出力cを「0,1,2,3,4,5,6,0」と発生する。   When the test of the IC under test 500 starts, the sequence control circuit 100 generates the program counter signal a as “0, 1, 1, 1, 1, 1, 1, 2” according to the program. The instruction memory 200 receives the program counter signal a and sets the pattern generation instruction b to “X = 0”, “X = X + 1”, “X = X + 1”, “X = X + 1”, “X = X + 1”, “X = X + 1”. , “X = X + 1”, and “X = 0”. The pattern generation circuit 300 receives the pattern generation instruction b, performs an operation, and generates a pattern output c as “0, 1, 2, 3, 4, 5, 6, 0”.

このようにしてパターン発生回路300が発生したパターンは、被試験IC500に供給される。比較器400は、同様にパターン発生回路300が発生した期待パターンと被試験IC500の出力を比較し、被試験IC500の良否を判定する。   The pattern generated by the pattern generation circuit 300 in this way is supplied to the IC under test 500. Similarly, the comparator 400 compares the expected pattern generated by the pattern generation circuit 300 with the output of the IC under test 500 to determine whether the IC under test 500 is good or bad.

図8は、従来のシーケンス制御回路100の一例を示すブロック図であり、フリップフロップ1とシーケンス制御命令を記憶するインストラクションメモリ2とプログラムカウンタ制御部3とで構成されている。   FIG. 8 is a block diagram showing an example of a conventional sequence control circuit 100, which includes a flip-flop 1, an instruction memory 2 for storing a sequence control instruction, and a program counter control unit 3.

フリップフロップ1は、プログラムカウンタ信号aを外部に出力するとともにインストラクションメモリ2とプログラムカウンタ制御部3に入力する。インストラクションメモリ2はフリップフロップ1から入力されるプログラムカウンタ信号aによりアクセスされ、シーケンス制御命令fをプログラムカウンタ制御部3に出力する。プログラムカウンタ制御部3はシーケンス制御命令fを解読し、次のプログラムカウンタ信号gを決定してフリップフロップ1に出力する。次の周期でフリップフロップ1が次のプログラムカウンタ信号gを出力する。以下、同様の処理が行われる。   The flip-flop 1 outputs the program counter signal a to the outside and inputs it to the instruction memory 2 and the program counter control unit 3. The instruction memory 2 is accessed by the program counter signal a input from the flip-flop 1 and outputs a sequence control instruction f to the program counter control unit 3. The program counter control unit 3 decodes the sequence control instruction f, determines the next program counter signal g, and outputs it to the flip-flop 1. In the next cycle, the flip-flop 1 outputs the next program counter signal g. Thereafter, the same processing is performed.

シーケンス制御回路100は、このような一連の動作を繰り返すことにより、連続したプログラムカウンタ信号aを出力する。   The sequence control circuit 100 outputs a continuous program counter signal a by repeating such a series of operations.

図9は、図8のシーケンス制御回路で図6のプログラムを実行したときの動作を説明するタイミングチャートである。インストラクションメモリ2には、アドレス0番地に「NOOP」、1番地に「LOOP」、2番地に「NOOP」という命令がコンピュータにより設定され、フリップフロップ1には、初期値「0」が設定される。   FIG. 9 is a timing chart for explaining the operation when the sequence control circuit of FIG. 8 executes the program of FIG. In the instruction memory 2, an instruction “NOOP” at address 0, “LOOP” at address 1, “NOOP” at address 2 is set by the computer, and an initial value “0” is set in flip-flop 1. .

被試験IC500の試験が始まると、プログラムカウンタ信号aの値「0」によりインストラクションメモリ2の0番地がアクセスされ、シーケンス制御命令fとして「NOOP」命令が出力される。プログラムカウンタ制御部3はこのシーケンス制御命令「NOOP」を解読し、次のプログラムカウンタ信号gとしてプログラムカウンタをインクリメントした値「1」を出力する。フリップフロップ1は次の周期で「1」を出力し、同様の処理が行われる。   When the test of the IC under test 500 is started, the address 0 of the instruction memory 2 is accessed by the value “0” of the program counter signal a, and the “NOOP” instruction is output as the sequence control instruction f. The program counter control unit 3 decodes the sequence control instruction “NOOP” and outputs a value “1” obtained by incrementing the program counter as the next program counter signal g. The flip-flop 1 outputs “1” in the next cycle, and the same processing is performed.

シーケンス制御回路100は、このような一連の動作を繰り返すことにより、プログラムカウンタ信号aを「0,1,1,1,1,1,1,2」と発生する。   The sequence control circuit 100 generates the program counter signal a as “0, 1, 1, 1, 1, 1, 1, 2” by repeating such a series of operations.

図10は、シーケンス制御命令に関する他のプログラム例である。シーケンス制御命令の「JUMP」は、「JUMP」と記述された行を実行し、指定された行にプログラムカウンタをジャンプする命令である。この例の場合は「AA」が行の指定であり、「AA」で指定された行がアドレス10番地なので次のプログラムカウンタ信号gに「10」を出力する。   FIG. 10 shows another example of a program related to the sequence control instruction. The sequence control instruction “JUMP” is an instruction for executing a line described as “JUMP” and jumping the program counter to a designated line. In this example, “AA” is a row designation, and since the row designated by “AA” is address 10, “10” is output to the next program counter signal g.

「JPFLG1」は、「JPFLG1」と記述された行を実行し、シーケンス制御回路内部に備えられたPFLG1レジスタの値より次のプログラムカウンタを決定する命令である。PFLG1レジスタの値が「0」の時、プログラムカウンタをインクリメントし、「1」の時指定された行にプログラムカウンタをジャンプする命令である。この例の場合は「BB」が行の指定であり、PFLG1レジスタの値が「0」の時、次のプログラムカウンタ信号gにプログラムカウンタをインクリメントした値「13」を出力する。「1」の時、「BB」で指定された行がアドレス20番地なので、次のプログラムカウンタ信号gに「20」を出力する。   “JPFLG1” is an instruction for executing the line described as “JPFLG1” and determining the next program counter from the value of the PFLG1 register provided in the sequence control circuit. This is an instruction to increment the program counter when the value of the PFLG1 register is “0” and to jump the program counter to the designated line when it is “1”. In this example, when “BB” is a row designation and the value of the PFLG1 register is “0”, the value “13” obtained by incrementing the program counter is output to the next program counter signal g. When “1”, since the row designated by “BB” is address 20, “20” is output to the next program counter signal g.

なお、この例では「JPFLG1」について説明したが、実際には複数のPFLGnレジスタに対する複数の「JPFLGn」命令が可能である(n:1,2,・・・・)。   In this example, “JPFLG1” has been described, but actually, a plurality of “JPFLGn” instructions for a plurality of PFLGn registers are possible (n: 1, 2,...).

図11は、図8のシーケンス制御回路100におけるプログラムカウンタ制御部3の構成例を示すブロック図であり、ジャンプ制御回路11と、ループカウンタ12と、PFLGnレジスタ13と、加算器14と、セレクタ15とで構成されている。   FIG. 11 is a block diagram illustrating a configuration example of the program counter control unit 3 in the sequence control circuit 100 of FIG. 8. The jump control circuit 11, the loop counter 12, the PFLGn register 13, the adder 14, and the selector 15 are illustrated. It consists of and.

ジャンプ制御回路11はプログラムカウンタのジャンプを制御するものであり、シーケンス制御命令fをデコードし、セレクタ15に選択信号qを出力する。このジャンプ制御回路11には、ループ回数をカウントするループカウンタ12とPFLGnレジスタ13が接続されている。   The jump control circuit 11 controls the jump of the program counter, decodes the sequence control instruction f, and outputs a selection signal q to the selector 15. The jump control circuit 11 is connected to a loop counter 12 for counting the number of loops and a PFLGn register 13.

セレクタ15の一方の入力端子にはプログラムカウンタ信号aを+1する加算器14の出力が入力され、他方の入力端子にはシーケンス制御命令fに含まれるジャンプアドレスが入力されていて、ジャンプ制御回路11から入力される選択信号qに基づき、+1されたプログラムカウンタ信号とジャンプアドレスのいずれかを次のプログラムカウンタ信号gとして出力する。   The output of the adder 14 that increments the program counter signal a by +1 is input to one input terminal of the selector 15, and the jump address included in the sequence control instruction f is input to the other input terminal. 1 is output as the next program counter signal g, based on the selection signal q input from.

セレクタ15は、シーケンス制御命令が「NOOP」の場合には加算器14の出力を選択出力し、シーケンス制御命令が「JUMP」の場合にはシーケンス制御命令fに含まれるジャンプアドレスを選択出力する。   The selector 15 selectively outputs the output of the adder 14 when the sequence control instruction is “NOOP”, and selectively outputs the jump address included in the sequence control instruction f when the sequence control instruction is “JUMP”.

また、シーケンス制御命令が「LOOP」の場合には、ループカウンタ12がループ中であればシーケンス制御命令fに含まれるジャンプアドレスを選択し、ループ終了であれば加算器14の出力を選択する。   When the sequence control instruction is “LOOP”, the jump address included in the sequence control instruction f is selected if the loop counter 12 is in a loop, and the output of the adder 14 is selected if the loop is completed.

さらに、シーケンス制御命令が「JPFLGn」の場合には、PFLGnレジスタ13の値が「1」であればシーケンス制御命令fに含まれるジャンプアドレスを選択し、「0」であれば加算器14の出力を選択する。   Further, when the sequence control instruction is “JPFLGn”, the jump address included in the sequence control instruction f is selected if the value of the PFLGn register 13 is “1”, and the output of the adder 14 if it is “0”. Select.

特許文献1には、半導体試験装置における従来のシーケンス制御回路の構成が開示されている。   Patent Document 1 discloses a configuration of a conventional sequence control circuit in a semiconductor test apparatus.

特開2001−282324号公報JP 2001-282324 A

ところで、半導体試験装置の被試験IC500であるメモリの高速化に伴い、効率よく試験を行うためには、シーケンス制御回路100を高速化する必要がある。   By the way, it is necessary to increase the speed of the sequence control circuit 100 in order to perform the test efficiently with the increase in the speed of the memory which is the IC under test 500 of the semiconductor test apparatus.

しかし、従来のシーケンス制御回路は、1周期の間にインストラクションメモリにアクセスしてプログラムカウンタの制御を行うため、最高動作速度はインストラクションメモリのアクセス時間とプログラムカウンタ制御部の動作速度との合計で決まることになり、動作速度を高速化するためにはこれらの動作速度を向上させなければならないという問題点がある。   However, since the conventional sequence control circuit accesses the instruction memory during one cycle to control the program counter, the maximum operation speed is determined by the sum of the access time of the instruction memory and the operation speed of the program counter control unit. In other words, in order to increase the operation speed, there is a problem that these operation speeds must be improved.

本発明は、このような問題点に鑑みてなされたものであり、その目的は、動作速度を高速化できるシーケンス制御回路を用いた半導体試験装置を実現することにある。   The present invention has been made in view of such problems, and an object of the present invention is to realize a semiconductor test apparatus using a sequence control circuit capable of increasing the operation speed.

このような問題を解決するため、請求項1記載の発明は、
プログラムに記述されたパターン発生命令のシーケンスを制御するシーケンス制御回路を備えた半導体試験装置において、
前記シーケンス制御回路は、
シーケンス制御命令を記憶するインストラクションメモリと、
このインストラクションメモリから入力されるシーケンス制御命令を解読して次のプログラムカウンタ信号を決定するプログラムカウンタ制御部と、
このプログラムカウンタ制御部のプログラムカウンタ信号を外部に出力するとともに前記インストラクションメモリに入力するフリップフロップと、
前記シーケンス制御命令の一部のデコードをテスト実行直前に行い、その変換出力を前記インストラクションメモリに入力する命令変換部、
とで構成され
前記シーケンス制御回路は、条件分岐命令を含むシーケンス制御命令の一部のデコードをテスト実行直前に行うことを特徴とする。
In order to solve such a problem, the invention of claim 1
In a semiconductor test apparatus having a sequence control circuit for controlling a sequence of pattern generation instructions described in a program,
The sequence control circuit includes:
An instruction memory for storing sequence control instructions;
A program counter control unit that decodes a sequence control instruction input from the instruction memory and determines a next program counter signal;
A flip-flop that outputs the program counter signal of the program counter control unit to the outside and inputs to the instruction memory;
An instruction conversion unit that decodes a part of the sequence control instruction immediately before test execution and inputs the conversion output to the instruction memory;
And the sequence control circuit decodes a part of the sequence control instruction including the conditional branch instruction immediately before the test execution.

これらにより、テスト実行中にシーケンス制御回路デコードしなければならない命令が少なくなり、その分高速化が図れる。   As a result, the number of instructions that need to be decoded by the sequence control circuit during test execution is reduced, and the speed can be increased accordingly.

本発明では、プログラムカウンタ制御部でデコードする命令を削減するために、テスト実行の直前までに値が決定されてテスト実行中は値が変更されないPFLGnレジスタの値により動作を選択する条件分岐命令である「JPFLGn」命令に着目する。この「JPFLGn」命令は、テスト実行の直前にPFLGnレジスタの値を確認し、PFLGnレジスタが「0」の場合は「NOOP」命令に変換可能で、「1」の場合は「JUMP」命令に変換可能な命令である。   In the present invention, in order to reduce the instruction to be decoded by the program counter control unit, a conditional branch instruction that selects an operation according to the value of the PFLGn register whose value is determined immediately before the test execution and is not changed during the test execution. Focus on a certain “JPFLGn” instruction. This “JPFLGn” instruction checks the value of the PFLGn register immediately before the test execution. If the PFLGn register is “0”, it can be converted to a “NOOP” instruction. If it is “1”, it is converted to a “JUMP” instruction. It is a possible instruction.

本発明は、この「JPFLGn」命令の変換をテスト実行前にJPFLG命令変換部により行うことを特徴とするもので、「JPFLGn」命令を「NOOP」または「JUMP」命令に変換することにより、プログラムカウンタ制御部で「JPFLGn」命令をデコードする必要がなくなる。   The present invention is characterized in that the conversion of the “JPFLGn” instruction is performed by the JPFLG instruction conversion unit before the test is executed. By converting the “JPFLGn” instruction into a “NOOP” or “JUMP” instruction, The counter control unit does not need to decode the “JPFLGn” instruction.

以下、本発明について図面を参照して説明する。図1は、本発明に基づくシーケンス制御回路の構成例を示すブロック図である。図1において、シーケンス制御回路は、シーケンス制御命令を記憶するインストラクションメモリ22とプログラムカウンタ制御部23とフリップフロップ21とJPFLG命令変換部24で構成されている。   The present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a configuration example of a sequence control circuit according to the present invention. In FIG. 1, the sequence control circuit includes an instruction memory 22 that stores a sequence control instruction, a program counter control unit 23, a flip-flop 21, and a JPFLG instruction conversion unit 24.

フリップフロップ21は、プログラムカウンタ信号aを外部に出力するとともにインストラクションメモリ22に入力する。   The flip-flop 21 outputs the program counter signal a to the outside and inputs it to the instruction memory 22.

JPFLG命令変換部24は、テスト実行の直前に「JPFLGn」命令を「NOOP」または「JUMP」命令に変換する回路であり、その変換出力はインストラクションメモリ22に入力されている。   The JPFLG instruction conversion unit 24 is a circuit that converts the “JPFLGn” instruction into a “NOOP” or “JUMP” instruction immediately before the test execution, and its conversion output is input to the instruction memory 22.

インストラクションメモリ22はフリップフロップ1から入力されるプログラムカウンタ信号aによりアクセスされ、シーケンス制御命令fをプログラムカウンタ制御部23に出力する。   The instruction memory 22 is accessed by the program counter signal a input from the flip-flop 1 and outputs a sequence control instruction f to the program counter control unit 23.

プログラムカウンタ制御部23はシーケンス制御命令fを解読し、次のプログラムカウンタ信号gを決定してフリップフロップ21に出力する。次の周期でフリップフロップ21が次のプログラムカウンタ信号gを出力する。以下、同様の処理が行われる。なお、プログラムカウンタ制御部23は、図8に示した従来のシーケンス制御部100のプログラムカウンタ制御部3から「JPFLGn」命令のデコードを削除したものである。   The program counter control unit 23 decodes the sequence control instruction f, determines the next program counter signal g, and outputs it to the flip-flop 21. At the next cycle, the flip-flop 21 outputs the next program counter signal g. Thereafter, the same processing is performed. Note that the program counter control unit 23 is obtained by deleting the decoding of the “JPFLGn” instruction from the program counter control unit 3 of the conventional sequence control unit 100 shown in FIG.

図2は、JPFLG命令変換部24の具体例を示すブロック図である。JPFLG命令変換部24は、JPFLG命令識別部31とJPFLGカウンタ32とJPFLGデータメモリ33とJPFLGアドレスメモリ34とリードカウンタ35とPFLGnレジスタ36と命令変換部37で構成されている。   FIG. 2 is a block diagram illustrating a specific example of the JPFLG instruction conversion unit 24. The JPFLG instruction conversion unit 24 includes a JPFLG instruction identification unit 31, a JPFLG counter 32, a JPFLG data memory 33, a JPFLG address memory 34, a read counter 35, a PFLGn register 36, and an instruction conversion unit 37.

JPFLG命令識別部31にはインストラクションメモリ22に書き込まれるデータhとライトイネーブル信号iが入力され、JPFLGメモリライトイネーブル信号kをJPFLGカウンタ32とJPFLGデータメモリ33のWE端子とJPFLGアドレスメモリ34のWE端子に出力する。   The JPFLG instruction identification unit 31 receives data h and write enable signal i to be written to the instruction memory 22, and uses the JPFLG memory write enable signal k as the JPFLG counter 32, the WE terminal of the JPFLG data memory 33, and the WE terminal of the JPFLG address memory 34. Output to.

JPFLGカウンタ32は、カウント値lをJPFLGデータメモリ33のWadd端子とJPFLGアドレスメモリ34のWadd端子とリードカウンタ35に入力する。   The JPFLG counter 32 inputs the count value 1 to the Wadd terminal of the JPFLG data memory 33, the Wadd terminal of the JPFLG address memory 34, and the read counter 35.

JPFLGデータメモリ33のWdata端子にはインストラクションメモリ22に書き込まれるデータhが入力されてRadd端子にはリードカウンタ35のカウント値qが入力され、JPFLGアドレスメモリ34のWdata端子にはインストラクションメモリ22のライトアドレスjが入力されてRadd端子にはリードカウンタ35のカウント値qが入力される。   The data h written in the instruction memory 22 is input to the Wdata terminal of the JPFLG data memory 33, the count value q of the read counter 35 is input to the Radd terminal, and the write of the instruction memory 22 is input to the Wdata terminal of the JPFLG address memory 34. The address j is input, and the count value q of the read counter 35 is input to the Radd terminal.

命令変換部37にはPFLGnレジスタ36の値mが入力されるとともにJPFLGデータメモリ33のRdata端子からデータnが入力され、インストラクションメモリ変換用ライトデータpを出力する。   The instruction conversion unit 37 receives the value m of the PFLGn register 36 and the data n from the Rdata terminal of the JPFLG data memory 33, and outputs the instruction memory conversion write data p.

JPFLGアドレスメモリ34は、Rdata端子からインストラクションメモリ変換用ライトアドレスoを出力する。   The JPFLG address memory 34 outputs the write address o for instruction memory conversion from the Rdata terminal.

このように構成されるJPFLG命令変換部24の動作を説明する。
コンピュータからインストラクションメモリ22にシーケンス制御命令が転送される場合であって、テスト実行の直前に「JPFLGn」命令を「NOOP」または「JUMP」命令に変換する例について説明する。
The operation of the JPFLG instruction conversion unit 24 configured as described above will be described.
An example in which the sequence control command is transferred from the computer to the instruction memory 22 and the “JPFLGn” command is converted to the “NOOP” or “JUMP” command immediately before the test execution will be described.

JPFLG命令識別部31は、コンピュータからインストラクションメモリ22に転送されるシーケンス制御命令が「JPFLGn」命令であるか否かを識別する。「JPFLGn」命令である場合はJPFLGメモリライトイネーブル信号kをアサートし、「JPFLGn」命令でない場合はJPFLGメモリライトイネーブル信号kをネゲートする。   The JPFLG instruction identifying unit 31 identifies whether the sequence control instruction transferred from the computer to the instruction memory 22 is a “JPFLGn” instruction. If it is a “JPFLGn” instruction, the JPFLG memory write enable signal k is asserted, and if it is not a “JPFLGn” instruction, the JPFLG memory write enable signal k is negated.

JPFLGカウンタ32は、初期値を0とし、JPFLGメモリライトイネーブル信号kのアサートによりカウンタをインクリメントする。   The JPFLG counter 32 sets the initial value to 0, and increments the counter by asserting the JPFLG memory write enable signal k.

JPFLGデータメモリ33は、JPFLGカウンタ32のカウント値lをアドレスとして、JPFLGメモリライトイネーブル信号kのアサートによりインストラクションメモリ22にライトされるデータhをライトする。   The JPFLG data memory 33 writes the data h to be written to the instruction memory 22 by asserting the JPFLG memory write enable signal k using the count value 1 of the JPFLG counter 32 as an address.

JPFLGアドレスメモリ34は、JPFLGカウンタ32のカウント値lをアドレスとして、JPFLGメモリライトイネーブル信号kのアサートによりインストラクションメモリ22のライトアドレスjをライトする。   The JPFLG address memory 34 writes the write address j of the instruction memory 22 by asserting the JPFLG memory write enable signal k using the count value 1 of the JPFLG counter 32 as an address.

図3は、コンピュータからインストラクションメモリ22にシーケンス制御命令が転送されるときの動作例を示すタイミングチャートである。
周期t1において、コンピュータから転送されるシーケンス制御命令が「NOOP」なので、JPFLG命令識別部31はJPFLGメモリライトイネーブル信号kをネゲートする。JPFLGデータメモリ33およびJPFLGアドレスメモリ34はライトされず、JPFLGカウンタ32はインクリメントしない。
FIG. 3 is a timing chart showing an operation example when a sequence control command is transferred from the computer to the instruction memory 22.
Since the sequence control instruction transferred from the computer is “NOOP” at period t1, the JPFLG instruction identifying unit 31 negates the JPFLG memory write enable signal k. The JPFLG data memory 33 and the JPFLG address memory 34 are not written, and the JPFLG counter 32 is not incremented.

周期t2において、コンピュータから転送されるシーケンス制御命令が「JPFLG1」なので、JPFLG命令識別部31はJPFLGメモリライトイネーブル信号kをアサートする。JPFLGデータメモリ33はJPFLGカウンタ32のカウント値l「0」をアドレスとしてデータ「JPFLG1」をライトし、JPFLGアドレスメモリ34はJPFLGカウンタ32のカウント値l「0」をアドレスとしてインストラクションメモリ22のアドレス「1」をライトする。JPFLGカウンタ32はインクリメントしカウント値lは「1」となる。   Since the sequence control instruction transferred from the computer is “JPFLG1” in the period t2, the JPFLG instruction identifying unit 31 asserts the JPFLG memory write enable signal k. The JPFLG data memory 33 writes the data “JPFLG1” using the count value 1 “0” of the JPFLG counter 32 as an address, and the JPFLG address memory 34 uses the count value 1 “0” of the JPFLG counter 32 as an address. Write “1”. The JPFLG counter 32 is incremented and the count value l becomes “1”.

周期t3,4では、コンピュータから転送されるシーケンス制御命令が「NOOP」なので、JPFLG命令識別部31は、JPFLGメモリライトイネーブル信号kをネゲートする。JPFLGデータメモリ33およびJPFLGアドレスメモリ34はライトされず、JPFLGカウンタ32はインクリメントしない。   In cycles t3 and 4, since the sequence control instruction transferred from the computer is “NOOP”, the JPFLG instruction identifying unit 31 negates the JPFLG memory write enable signal k. The JPFLG data memory 33 and the JPFLG address memory 34 are not written, and the JPFLG counter 32 is not incremented.

周期t5では、コンピュータから転送されるシーケンス制御命令が「JPFLG2」なので、JPFLG命令識別部31はJPFLGメモリライトイネーブル信号kをアサートする。JPFLGデータメモリ33はJPFLGカウンタ32のカウント値l「1」をアドレスとしてデータ「JPFLG2」をライトし、JPFLGアドレスメモリ34はJPFLGカウンタ32のカウント値l「1」をアドレスとしてインストラクションメモリ22のアドレス「4」をライトする。JPFLGカウンタ32はインクリメントしカウント値lは「2」となる。   In the period t5, the sequence control instruction transferred from the computer is “JPFLG2”, so the JPFLG instruction identifying unit 31 asserts the JPFLG memory write enable signal k. The JPFLG data memory 33 writes the data “JPFLG2” using the count value 1 “1” of the JPFLG counter 32 as an address, and the JPFLG address memory 34 uses the count value 1 “1” of the JPFLG counter 32 as an address. 4 "is written. The JPFLG counter 32 is incremented and the count value l becomes “2”.

周期t6では、コンピュータから転送されるシーケンス制御命令が「NOOP」なので、JPFLG命令識別部31は、JPFLGメモリライトイネーブル信号kをネゲートする。JPFLGデータメモリ33およびJPFLGアドレスメモリ34はライトされず、JPFLGカウンタ32はインクリメントしない。   In the period t6, since the sequence control instruction transferred from the computer is “NOOP”, the JPFLG instruction identifying unit 31 negates the JPFLG memory write enable signal k. The JPFLG data memory 33 and the JPFLG address memory 34 are not written, and the JPFLG counter 32 is not incremented.

周期t7では、コンピュータから転送されるシーケンス制御命令が「JPFLG3」なので、JPFLG命令識別部31は、JPFLGメモリライトイネーブル信号kをアサートする。JPFLGデータメモリ33はJPFLGカウンタ32のカウント値l「2」をアドレスとしてデータ「JPFLG3」をライトし、JPFLGアドレスメモリ34はJPFLGカウンタ32のカウント値l「2」をアドレスとしてインストラクションメモリのアドレス「6」をライトする。JPFLGカウンタ32はインクリメントしカウント値lは「3」となる。   In the cycle t7, the sequence control instruction transferred from the computer is “JPFLG3”, so the JPFLG instruction identifying unit 31 asserts the JPFLG memory write enable signal k. The JPFLG data memory 33 writes the data “JPFLG3” using the count value 1 “2” of the JPFLG counter 32 as an address, and the JPFLG address memory 34 uses the count value 1 “2” of the JPFLG counter 32 as an address. ". The JPFLG counter 32 is incremented and the count value l becomes “3”.

このように、コンピュータからインストラクションメモリ22にシーケンス制御命令が転送されるとき、JPFLG命令変換部24は「JPFLGn」命令であるか否かを識別し、「JPFLGn」命令である場合にはインストラクションメモリ22のアドレスをJPFLGアドレスメモリ34に記憶し、「JPFLGn」命令をJPFLGデータメモリ33に記憶する。   Thus, when the sequence control instruction is transferred from the computer to the instruction memory 22, the JPFLG instruction conversion unit 24 identifies whether it is a “JPFLGn” instruction, and if it is a “JPFLGn” instruction, the instruction memory 22 Are stored in the JPFLG address memory 34, and the “JPFLGn” instruction is stored in the JPFLG data memory 33.

次に、テスト実行の直前に「JPFLGn」命令を「NOOP」または「JUMP」命令に変換する動作について説明する。   Next, an operation for converting the “JPFLGn” instruction into a “NOOP” or “JUMP” instruction immediately before the test execution will be described.

リードカウンタ35は、コンピュータからJPFLG命令の変換開始命令(図示せず)を受け取って動作を開始する。リードカウンタ35は、JPFLGカウンタ32のカウント値lから1減算した値を初期値としてダウンカウントを行う。   The read counter 35 receives the conversion start command (not shown) of the JPFLG command from the computer and starts its operation. The read counter 35 counts down using a value obtained by subtracting 1 from the count value 1 of the JPFLG counter 32 as an initial value.

JPFLGデータメモリ33は、リードカウンタ35のカウント値qをアドレスとしてデータnを出力する。このデータnが記憶した「JPFLGn」命令である。   The JPFLG data memory 33 outputs data n using the count value q of the read counter 35 as an address. This data n is a “JPFLGn” instruction stored.

JPFLGアドレスメモリ34はリードカウンタ35のカウント値qをアドレスとしてデータoを出力する。このデータoがインストラクションメモリ変換用のライトアドレスとなる。   The JPFLG address memory 34 outputs data o using the count value q of the read counter 35 as an address. This data o becomes the write address for instruction memory conversion.

命令変換部37は、「JPFLGn」命令であるJPFLGデータメモリ33のデータnを受け取る。「JPFLGn」命令をデコードし、対応するPFLGnレジスタ36の値mに基づき、「NOOP」命令または「JUMP」命令に変換する。PFLGnレジスタ36が「0」の場合は「NOOP」命令に変換し、「1」の場合は「JUMP」命令に変換する。変換された出力データpがインストラクションメモリ変換用のライトデータとなる。   The instruction conversion unit 37 receives data n of the JPFLG data memory 33 that is a “JPFLGn” instruction. The “JPFLGn” instruction is decoded and converted into a “NOOP” instruction or a “JUMP” instruction based on the value m of the corresponding PFLGn register 36. When the PFLGn register 36 is “0”, it is converted into a “NOOP” instruction, and when it is “1”, it is converted into a “JUMP” instruction. The converted output data p becomes write data for instruction memory conversion.

図4は、図3で記憶したインストラクションメモリ22のアドレスと「JPFLGn」命令を、テスト実行の直前に「NOOP」または「JUMP」命令に変換するときの動作例を示すタイミングチャートである。   FIG. 4 is a timing chart showing an operation example when the address of the instruction memory 22 and the “JPFLGn” instruction stored in FIG. 3 are converted into a “NOOP” or “JUMP” instruction immediately before the test execution.

周期t1において、リードカウンタ35は、JPFLGカウンタ32のカウント値l「3」から1を減算した値「2」をカウント値qとして出力する。JPFLGデータメモリ33は、リードカウンタ35のカウント値q「2」をアドレスとして、データnとして「JPFLG3」を出力する。命令変換部37は、データnの「JPFLG3」命令を受け取り、PFLG3レジスタ36の値が「1」なので「JUMP」命令に変換する。   In the period t1, the read counter 35 outputs a value “2” obtained by subtracting 1 from the count value l “3” of the JPFLG counter 32 as the count value q. The JPFLG data memory 33 outputs “JPFLG3” as data n with the count value q “2” of the read counter 35 as an address. The instruction conversion unit 37 receives the “JPFLG3” instruction of the data n and converts it to a “JUMP” instruction because the value of the PFLG3 register 36 is “1”.

JPFLGアドレスメモリ34は、リードカウンタ35のカウント値q「2」をアドレスとして、データoとして「6」を出力する。インストラクションメモリ22は、JPFLGアドレスメモリ34のデータo「6」をアドレスとして、命令変換部37の出力データp「JUMP」をライトする。   The JPFLG address memory 34 outputs “6” as data o using the count value q “2” of the read counter 35 as an address. The instruction memory 22 writes the output data p “JUMP” of the instruction conversion unit 37 using the data o “6” of the JPFLG address memory 34 as an address.

周期t2では、リードカウンタ35は、ダウンカウントした値「1」をカウント値qとして出力する。JPFLGデータメモリ33は、リードカウンタ35のカウント値q「1」をアドレスとして、データnとして「JPFLG2」を出力する。命令変換部37は、データnの「JPFLG2」命令を受け取り、PFLG2レジスタ36の値が「0」なので「NOOP」命令に変換する。   In the period t2, the read counter 35 outputs the down-counted value “1” as the count value q. The JPFLG data memory 33 outputs “JPFLG2” as data n with the count value q “1” of the read counter 35 as an address. The instruction conversion unit 37 receives the “JPFLG2” instruction of the data n and converts it to a “NOOP” instruction because the value of the PFLG2 register 36 is “0”.

JPFLGアドレスメモリ34は、リードカウンタ35のカウント値q「1」をアドレスとして、データoとして「4」を出力する。インストラクションメモリ22は、JPFLGアドレスメモリ34のデータo「4」をアドレスとして、命令変換部37の出力データpの「NOOP」をライトする。   The JPFLG address memory 34 outputs “4” as data o using the count value q “1” of the read counter 35 as an address. The instruction memory 22 writes “NOOP” of the output data p of the instruction conversion unit 37 using the data o “4” of the JPFLG address memory 34 as an address.

周期t3では、リードカウンタ35は、ダウンカウントした値「0」をカウント値qとして出力する。JPFLGデータメモリ33は、リードカウンタ35のカウント値q「0」をアドレスとして、データnとして「JPFLG1」を出力する。命令変換部37は、データnの「JPFLG1」命令を受け取り、PFLG1レジスタ36の値が「1」なので「JUMP」命令に変換する。   In the period t3, the read counter 35 outputs the down-counted value “0” as the count value q. The JPFLG data memory 33 outputs “JPFLG1” as data n with the count value q “0” of the read counter 35 as an address. The instruction conversion unit 37 receives the “JPFLG1” instruction of the data n and converts it to a “JUMP” instruction because the value of the PFLG1 register 36 is “1”.

JPFLGアドレスメモリ34は、リードカウンタ35のカウント値q「0」をアドレスとして、データoとして「1」を出力する。インストラクションメモリ22は、JPFLGアドレスメモリ34のデータo「1」をアドレスとして、命令変換部37の出力データpの「JUMP」をライトする。   The JPFLG address memory 34 outputs “1” as data o using the count value q “0” of the read counter 35 as an address. The instruction memory 22 writes “JUMP” of the output data p of the instruction conversion unit 37 using the data o “1” of the JPFLG address memory 34 as an address.

なお、上記実施例では、ハードウェアにより「JPFLGn」命令とインストラクションメモリのアドレスを記憶し、PFLGnレジスタの値によって「NOOP」命令または「JUMP」命令に変換する方式としているが、ソフトウェアで「JPFLGn」命令とインストラクションメモリのアドレスを記憶し、PFLGnレジスタの値によって「NOOP」命令または「JUMP」命令に変換する方式としてもよい。   In the above-described embodiment, the “JPFLGn” instruction and the instruction memory address are stored by hardware and converted into a “NOOP” instruction or a “JUMP” instruction according to the value of the PFLGn register. An instruction and an instruction memory address may be stored and converted into a “NOOP” instruction or a “JUMP” instruction depending on the value of the PFLGn register.

以上説明したように、本発明によれば、テスト実行中にシーケンス制御回路でデコードすべき命令が少なくなり、デコード回路が縮小できることから動作速度が向上し、半導体試験装置の高速化が図れる。   As described above, according to the present invention, the number of instructions to be decoded by the sequence control circuit during test execution is reduced, and the decoding circuit can be reduced, so that the operation speed is improved and the semiconductor test apparatus can be speeded up.

本発明に基づくシーケンス制御回路の構成例を示すブロック図である。It is a block diagram which shows the structural example of the sequence control circuit based on this invention. 図1のJPFLG命令変換部24の具体例を示すブロック図である。It is a block diagram which shows the specific example of the JPFLG instruction | command conversion part 24 of FIG. 図1の動作例を示すタイミングチャートである。It is a timing chart which shows the operation example of FIG. 図1の動作例を示すタイミングチャートである。It is a timing chart which shows the operation example of FIG. 従来の半導体試験装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the conventional semiconductor test apparatus. 図5の半導体試験装置におけるプログラム例である。6 is a program example in the semiconductor test apparatus of FIG. 図5の動作例を示すタイミングチャートである。6 is a timing chart showing an example of the operation of FIG. 従来のシーケンス制御回路100の一例を示すブロック図である。FIG. 10 is a block diagram showing an example of a conventional sequence control circuit 100. 図8の動作例を示すタイミングチャートである。It is a timing chart which shows the operation example of FIG. シーケンス制御命令に関する他のプログラム例である。It is another example of a program regarding a sequence control command. 図8のシーケンス制御回路100におけるプログラムカウンタ制御部3の構成例を示すブロック図である。FIG. 9 is a block diagram illustrating a configuration example of a program counter control unit 3 in the sequence control circuit 100 of FIG. 8.

符号の説明Explanation of symbols

21 フリップフロップ
22 インストラクションメモリ
23 プログラムカウンタ制御部
24 JPFLG命令変換部
21 Flip-flop 22 Instruction memory 23 Program counter control unit 24 JPFLG instruction conversion unit

Claims (1)

プログラムに記述されたパターン発生命令のシーケンスを制御するシーケンス制御回路を備えた半導体試験装置において、
前記シーケンス制御回路は、
シーケンス制御命令を記憶するインストラクションメモリと、
このインストラクションメモリから入力されるシーケンス制御命令を解読して次のプログラムカウンタ信号を決定するプログラムカウンタ制御部と、
このプログラムカウンタ制御部のプログラムカウンタ信号を外部に出力するとともに前記インストラクションメモリに入力するフリップフロップと、
前記シーケンス制御命令の一部のデコードをテスト実行直前に行い、その変換出力を前記インストラクションメモリに入力する命令変換部、
とで構成され
前記シーケンス制御回路は、条件分岐命令を含むシーケンス制御命令の一部のデコードをテスト実行直前に行うことを特徴とする半導体試験装置。
In a semiconductor test apparatus having a sequence control circuit for controlling a sequence of pattern generation instructions described in a program,
The sequence control circuit includes:
An instruction memory for storing sequence control instructions;
A program counter control unit that decodes a sequence control instruction input from the instruction memory and determines a next program counter signal;
A flip-flop that outputs the program counter signal of the program counter control unit to the outside and inputs to the instruction memory;
An instruction conversion unit that decodes a part of the sequence control instruction immediately before test execution and inputs the conversion output to the instruction memory;
And the sequence control circuit decodes a part of the sequence control instruction including the conditional branch instruction immediately before the test execution.
JP2008253090A 2008-09-30 2008-09-30 Semiconductor test equipment Expired - Fee Related JP5149115B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008253090A JP5149115B2 (en) 2008-09-30 2008-09-30 Semiconductor test equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008253090A JP5149115B2 (en) 2008-09-30 2008-09-30 Semiconductor test equipment

Publications (2)

Publication Number Publication Date
JP2010085177A JP2010085177A (en) 2010-04-15
JP5149115B2 true JP5149115B2 (en) 2013-02-20

Family

ID=42249286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008253090A Expired - Fee Related JP5149115B2 (en) 2008-09-30 2008-09-30 Semiconductor test equipment

Country Status (1)

Country Link
JP (1) JP5149115B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120136474A (en) * 2011-06-09 2012-12-20 삼성전자주식회사 Apparatus and method for testing semiconductor device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01263574A (en) * 1988-04-15 1989-10-20 Hitachi Ltd Test pattern program automatic generation device
JPH0527986A (en) * 1991-07-24 1993-02-05 Matsushita Electric Ind Co Ltd Compiler optimization method and optimization apparatus
US7647538B2 (en) * 2007-03-21 2010-01-12 Advantest Corporation Test apparatus and electronic device for generating test signal by using repeated interval in a test instruction stream
JP2008286670A (en) * 2007-05-18 2008-11-27 Renesas Technology Corp Method of extracting test condition parameter

Also Published As

Publication number Publication date
JP2010085177A (en) 2010-04-15

Similar Documents

Publication Publication Date Title
JPS62180427A (en) Program control circuit
JP2003030261A (en) High-level synthesis method and thread and circuit generation method generated using the high-level synthesis method
JP2006178646A (en) Information processing apparatus, information processing method, semiconductor device, and computer program
JPH01310441A (en) Data processor
KR100371686B1 (en) Limited Execution Branch Prediction Method
JP5149115B2 (en) Semiconductor test equipment
US6769051B2 (en) Memory controller and memory control method for controlling an external memory device to be accessible even in an addressing mode that is not supported thereby
KR100983135B1 (en) Processor and method for grouping and executing dependency instructions of packets
US4812970A (en) Microprogram control system
RU2375768C2 (en) Processor and method of indirect reading and recording into register
JP2006053830A (en) Branch prediction apparatus and branch prediction method
JP4574493B2 (en) Processor system and multi-thread processor
EP0415351A2 (en) Data processor for processing instruction after conditional branch instruction at high speed
US20180088954A1 (en) Electronic apparatus, processor and control method thereof
JP3014682B2 (en) Program control method and device
JP4919084B2 (en) Sequence control circuit
JP3958239B2 (en) Microcontroller
JP2883465B2 (en) Electronic computer
JP2011209859A (en) Information processor
JP2002318689A (en) VLIW processor for executing instruction with delay specification of resource use cycle and method of generating instruction with delay specification
KR100961242B1 (en) How to Delay Instructions and System to Delay Instructions
JP4702004B2 (en) Microcomputer
US20100153688A1 (en) Apparatus and method for data process
JP4151497B2 (en) Pipeline processing equipment
JPH06309163A (en) Processor and memory access method for processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120928

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: 20121018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121129

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20121212

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20130521

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees