JP2010032402A - 半導体試験装置 - Google Patents

半導体試験装置 Download PDF

Info

Publication number
JP2010032402A
JP2010032402A JP2008195588A JP2008195588A JP2010032402A JP 2010032402 A JP2010032402 A JP 2010032402A JP 2008195588 A JP2008195588 A JP 2008195588A JP 2008195588 A JP2008195588 A JP 2008195588A JP 2010032402 A JP2010032402 A JP 2010032402A
Authority
JP
Japan
Prior art keywords
interrupt
data
unit
cpu
board
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.)
Pending
Application number
JP2008195588A
Other languages
English (en)
Inventor
Satoshi Takamura
聡 高村
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 JP2008195588A priority Critical patent/JP2010032402A/ja
Publication of JP2010032402A publication Critical patent/JP2010032402A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】回路構成および回路量を簡略化しつつ、高速且つ正確に被試験デバイスの試験を行うことを目的とする。
【解決手段】DUTの試験を行うための複数のCPU1を備える半導体試験装置であって、CPU1ごとに設けられ、他のCPU1に対して割込を要求するための割込要求データを作成するデータ作成部14と、このデータ作成部14のそれぞれから割込要求データを入力して、他のCPU1に対して割込を発生させる制御を行う割込制御部2と、データ作成部14ごとに設けられ、データ作成部14と割込制御部2とをそれぞれ接続し、割込要求データをシリアルデータとしてシリアル転送するシリアルバス30と、を備えている。
【選択図】 図1

Description

本発明は、被試験デバイスの試験を行うための半導体試験装置に関し、特に複数の演算部の間で割込制御を行う機構を備えた半導体試験装置に関するものである。
メモリやIC、LSI等の被試験デバイス(DUT:Device Under Test)の良否判定を行う半導体試験装置として、DUTからの測定データをCPUにおいて演算処理して行うものが、例えば特許文献1に開示されている。近年のDUTは大容量化、高集積化の傾向にあり、測定データの情報量が極めて膨大になっていること、また複数種類の測定データを演算処理することから、複数のCPUを設けて測定データを並列して演算処理を行うようになってきている。この種の半導体試験装置では、各CPUの間で所定の割込を発生させることがある。例えば、1つのCPUにおいて演算処理した結果を、他のCPUにおいて使用する場合等、CPU間で処理の連携を図る場合等である。
複数のCPUを設けた半導体試験装置の一例を図5に示す。図5における半導体試験装置は、n(nは整数)個のCPU101−1〜101−n(総称してCPU101とする)と、割込制御部102とを備えて概略構成される。割込制御部102は、各CPU101に対応して設けたn個の制御部側パラレルバスインターフェイス103−1〜103―n(総称して制御部側パラレルバスインターフェイス103とする)と、各制御部側パラレルバスインターフェイス103に接続される記憶部104と、各CPU101に接続される割込発生部105と、を備えている。記憶部104は、図6に示すように、n個の割込要因レジスタ106−1〜106−n(総称して割込要因レジスタ106とする)と、n個の割込クリアレジスタ107−1〜107―n(総称して割込クリアレジスタ107とする)とを備えている。
各CPU101は、図示しないDUTに接続されており、DUTの測定データの演算処理を行う。また、各CPU101−1〜101−nは他のCPU101に対して割込を発生させることができるようになっており、それぞれパラレルバス110−1〜110−n(総称してパラレルバス110とする)が接続され、各パラレルバス110−1〜110−nは割込制御部102に接続される。また、各CPU101はCPU側パラレルバスインターフェイス111−1〜111−n(総称してCPU側パラレルバスインターフェイル111とする)と、割込要求入力部112−1〜112−n(総称して割込要求入力部112とする)と、クロック部113−1〜113−n(総称してクロック部113とする)と、を備えており、各部はパラレルバス110に接続される。パラレルバス110は、各CPU101と割込制御部102との間をそれぞれ接続するためのローカルバスであり、パラレル転送方式のバスである。パラレルバス110はアドレスバスとデータバスと複数本の制御線とを有している。なお、図中において、パラレルバスインターフェイスは「PBI/F」として、割込要求入力部は「IRQ−IN」として、クロック部は「CLK」として示している。
各CPU側パラレルバスインターフェイス111と各制御部側パラレルバスインターフェイス103との間はパラレルバス110により接続されている。また、図6に示すように、記憶部104に備えられるn個の割込要因レジスタ106およびn個の割込クリアレジスタ107は、それぞれnビットの情報を保持するレジスタになっている。各割込要因レジスタ106および各割込クリアレジスタ107にはそれぞれアドレスが割り当てられており、各CPU101はアドレスを指定することにより、任意のレジスタに直接的にデータの書込みおよび読込みを行うことができる。また、各割込要因レジスタ106および各割込クリアレジスタ107は、それぞれ各CPU101に個別的に対応して設けられている。つまり、CPU101−Xと割込要因レジスタ106−Xおよび割込クリアレジスタ107−Xとが対応している(Xはn以下の整数)。
割込発生部105は、パラレルバス110の制御線を介して、各CPU101の割込要求入力部112とそれぞれ接続されている。この割込発生部26は、何れかの割込要因レジスタ106の内容が変更されたときに、割込要求入力部112を介して、CPU101に対して割込を発生させる。
以上の構成において、CPU101−2からCPU101−3に対して割込を行う動作について説明する。CPU101−2は、パラレルバス110を介して、アドレスバスにより指定されるアドレス(CPU101−3を特定するためのアドレス)の割込要因レジスタ106−3に対して、データバスにより自身のCPU101−2を示すデータを書き込む。データバスにより書き込むデータ(CPU101−2を特定するデータ)としてはnビットのデータとし、最下位から2ビット目のみを1、他のビットを0としたデータとする。このデータのビット数はCPU101の数と一致しており、ビット位置によりCPU101を特定するデータになっている。
割込発生部105は、各割込要因レジスタ106を監視しており、割込要因レジスタ106−3に変更があったことを検出して、この割込要因レジスタ106−3に対応するCPU101−3に対して、パラレルバス110および割込要求入力部112−3を介して、割込を発生させる。CPU101−3は、割込の発生を検出すると、自身のCPU101−3に対応する割込要因レジスタ106−3のアドレスを指定してアクセスする。割込要因レジスタ106−3には、割込元であるCPU101−2を示すデータが書き込まれているため、このデータを読み込んで、CPU101−3はCPU101−2から割込があったことを認識し、CPU101−2からの割込に応じた所定の割込処理を行う。
また、図7のように、各CPU101と割込制御部102との間に共通ローカルバス120を設けた構成としたものもある。この場合には、割込制御部102の制御部側パラレルバスインターフェイス103は1つだけ設けるようにして、この制御部側パラレルバスインターフェイス103と共通ローカルバス120とが接続されるようにしている。共通ローカルバス120を用いる方式では、CPU101−1〜101−nのそれぞれがバスマスタになるため、各CPU101−1〜101−nからの割込要求を調停するための図示しないバス調停機構を設けるようにする。
特開2007−285737号公報
CPU101が取り扱うデータは、16ビット、32ビット、64ビットといった複数ビットを単位とするデータであり、CPU101のバス方式としては、パラレル転送方式のパラレルバスが用いられる。各CPU101と割込制御部102との間がパラレルバス110により接続されているため、アドレスバスによりアドレス指定して所定の割込要因レジスタ106にアクセスを行い、割込元のCPU101のデータの書き込みおよび読み込みを行うことができる。
ただし、パラレルバスは複数ビットの情報を転送可能なバスであり、多数の信号線により構成されているものであり、パラレルバス110はCPU101の個数に対応して設けられることから、信号線の本数は膨大なものになる。このため、回路構成の複雑化および回路量の増大化を招来する。特に、近年では、メモリの大容量化、ICやLSI等の高集積化が進んでいるため、演算処理を行うためのCPU101の性能は飛躍的に向上しており、またCPU101の数も増加の一途を辿っている。CPU101の性能向上に伴ってパラレルバス110のバス幅が拡大し、またCPU101の数が増加することにより、著しく信号線の本数が増加する。結果として、回路構成は極めて複雑になり、また回路量も大幅に増大することになる。
また、各CPU101および割込制御部102は基板上に設けられることから、パラレルバス110の信号線の本数が増加すると、それに応じて基板上に多くの配線を形成しなくてはならない。従って、配線スペースを確保するために、基板サイズも著しく大型化させるか、または基板の層数を増やすようにしなければならなくなり、半導体試験装置全体のコンパクト化を測れなくなる。そして、割込制御部102にASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の高価な集積回路を用いるような場合には、サイズの大型化だけでなく、非常にコスト高になるという問題がある。
また、パラレルバスの信号線の本数が増加すると、スキューによる転送速度の低速化やクロストークといった問題が顕在化する。近年の半導体試験装置では、高速且つ正確に試験を行わなければならないため、スキューやクロストークといった問題は無視できないものになる。特に、多数の被試験デバイスをテストするといった場合には、複数の基板を使用してテストを行うが、基板間をパラレルバス110により接続すると、バスの配線長が長くなる。スキューやクロストークといった問題は、バスの配線長に依存して大きくなるため、これらの問題はさらに顕在化してくる。
また、図7のように、共通ローカルバス120を用いれば、割込制御部102と共通ローカルバス120との間のバス数を少なくすることができるが、バスの調停機構が必要になるため、回路の複雑化や回路量の増大といった問題は解消されない。また、バス調停機構が各CPU101から出力されたデータの調停を行うため、試験速度はその分低下するといった問題がある。
そこで、本発明は、回路構成および回路量を簡略化しつつ、高速且つ正確に被試験デバイスの試験を行うことを目的とする。
以上の課題を解決するため、本発明の請求項1の半導体試験装置は、被試験デバイスの試験を行うための複数の演算部を備える半導体試験装置であって、前記演算部ごとに設けられ、他の演算部に対して割込を要求するための割込要求データを作成するデータ作成部と、このデータ作成部のそれぞれから前記割込要求データを入力して、前記他の演算部に対して割込を発生させる制御を行う割込制御部と、前記データ作成部ごとに設けられ、前記データ作成部と前記割込制御部とをそれぞれ接続し、前記割込要求データをシリアルデータとしてシリアル転送するシリアルバスと、を備えたことを特徴とする。
この半導体試験装置によれば、各演算部と割込制御部との間はシリアルバスにより接続されているため、回路構成および回路量を簡略化でき、且つスキューやクロストークの問題がないことから高速且つ正確に被試験デバイスの試験を行うことが可能になる。
本発明の請求項2の半導体試験装置は、請求項1記載の半導体試験装置において、前記演算部ごとに設けられ、前記データ作成部が生成した前記割込要求データをパラレルデータからシリアルデータに変換して前記シリアルバスに出力する演算部側インターフェイスと、前記割込制御部に設けられ、前記シリアルバスから入力した前記割込要求データをシリアルデータからパラレルデータに変換する制御部側インターフェイスと、を備えたことを特徴とする。
この半導体試験装置によれば、演算部と割込制御部とでパラレルデータとシリアルデータとの変換を行なっているため、演算部および割込制御部で使用されているデータ形式とバスの転送形式とが異なる場合であっても、データ転送を行うことができるようになる。
本発明の請求項3の半導体試験装置は、請求項1記載の半導体試験装置において、前記シリアルバスは、前記割込要求データを転送するためのデータ用信号線と、前記割込制御部から前記演算部に対して割込を発生させるための割込発生用信号線と、前記データ用信号線と前記割込発生用信号線とのタイミング制御を行うクロック用信号線と、を有することを特徴とする。
この半導体試験装置によれば、シリアルバスは3本の信号線を有するシンプルな構成となっており、バス幅を大幅に縮小することができ、回路構成および回路量を極めて簡略化することができるようになる。
本発明の請求項4の半導体試験装置は、請求項1記載の半導体試験装置において、前記割込要求データは、割込元の演算部を特定するための割込元演算部データと割込先の演算部を特定するための割込先演算部データとを有し、前記割込制御部は、前記割込先演算部データにより特定される演算部に対して、前記割込元演算部データにより特定される演算部からの割込を発生させる制御を行うことを特徴とする。
この半導体試験装置によれば、割込制御部は、割込要求データの割込元演算部データと割込先演算部データとに基づいて、割込先の演算部と割込元の演算部とを特定できるようになる。
本発明の請求項5の半導体試験装置は、請求項4記載の半導体試験装置において、前記割込制御部は、前記演算部ごとに設けられる前記割込元演算部データを記憶するための複数の割込要因記憶部と、前記割込先演算部データにより割込先の演算部を特定し、特定された割込先の演算部に対応する割込要因記憶部に前記割込元演算部データを記憶させる割込処理部と、前記複数の割込要因記憶部のうち何れかの割込要因記憶部が変更されたときに、変更があった割込要因記憶部に対応する演算部に対して、記憶されている割込元演算部データにより特定される演算部からの割込を発生させる割込発生部と、を備えたことを特徴とする。
この半導体試験装置によれば、割込要因記憶部に割込元演算部データを記憶させ、割込要因記憶部と演算部とを対応させていることから、割込先および割込元の演算部を特定できるようになる。
本発明の請求項6の半導体試験装置は、請求項1記載の半導体試験装置において、前記割込制御部は、2以上の前記演算部から同時に前記割込要求データを入力したときに、先着順で割込を発生させるためのFIFO制御部を備えたことを特徴とする。
この半導体試験装置によれば、複数の演算部から1つの演算部に対して同時に割込要求があったとしても、FIFO制御部により先着順に割込処理を行うことができるようになる。
本発明の請求項7の半導体試験装置は、請求項1記載の半導体試験装置において、前記複数の演算部と前記割込制御部と前記複数のシリアルバスとを設けた複数の基板と、これらの複数の基板間をデイジーチェーン方式で接続する基板間接続用シリアルバスと、を備え、前記演算部は、他の基板の演算部に対して割込を要求するときに、割込先の演算部が属する基板を特定する割込先基板データと割込元の演算部が属する基板を特定する割込元基板データとを前記割込要求データに付加して出力し、前記各基板の割込制御部は、前記割込先基板データが自身の基板を示している場合には、前記割込先演算部データにより特定される演算部に対して、前記割込元基板データの基板に属する前記割込元演算部データの演算部からの割込を発生させ、前記割込先基板データが自身の基板を示していない場合には、前記デイジーチェーン方式で接続される次の基板の割込制御部に前記割込要求データを出力することを特徴とする。
この半導体試験装置によれば、複数の基板を備えているような場合であっても、割込先基板データと割込元基板データとを割込要求データに付加しているため、シリアルバスによる接続方式で割込制御を行うことができるようになる。複数の基板間がバス接続されることにより、全体としてのバス長は長くなるが、基板間を接続するバスについてもシリアルバスにしているため、スキューやノイズの問題が起こることはない。
本発明は、複数の演算部の間で割込処理を行うときに、各演算部と割込制御部との間をシリアルバスにより接続しているため、回路構成および回路量を大幅に簡略化することができるようになり、且つ試験速度の高速化を図ることができるようになる。各演算部からは割込先演算部データと割込元演算部データとを含む割込要求データをシリアルデータに変換して割込制御部に出力するようにしているため、割込制御部は、割込先の演算部と割込元の演算部とを特定でき、割込処理を行うことができるようになる。
以下、図面を参照して本発明の実施形態について説明する。図1は、本発明の半導体試験装置の概略を示したブロック図である。半導体試験装置は、複数のCPU(演算部に相当)1−1〜1−n(総称してCPU1とする)と割込制御部2とを備えて概略構成している。各CPU1は、CPU側インターフェイス(演算部側インターフェイスに相当)11−1〜11−n(総称してCPU側インターフェイス11とする)と、割込要求入力部12−1〜12−n(総称して割込要求入力部12とする)と、クロック部13−1〜13−n(総称してクロック部13とする)と、データ作成部14−1〜14−n(総称してデータ作成部14とする)と、を備えている。また、割込制御部2は、制御部側インターフェイス21−1〜21−n(総称して制御部側インターフェイス21とする)とFIFO制御部22とFIFOキュー23と割込処理部24と記憶部25と割込発生部26とを備えて概略構成している。以下、CPU1−2(割込元CPU)からCPU1−3(割込先CPU)に対して割込を要求する場合を例示して説明する。なお、図1において、CPU側インターフェイスを「CPUI/F」、制御部側インターフェイスを「CTRI/F」、割込要求入力部を「IRQ−IN」、クロック部を「CLK」、データ作成部を「DM」として示している。
各CPU1と割込制御部2とは、それぞれシリアルバス30−1〜30−n(総称してシリアルバス30とする)により接続されている。各シリアルバス30は、データ用信号線31と割込要求用信号線32とクロック用信号線33とを有している。データ用信号線31はCPU1と割込制御部2との間で各種データをシリアル転送するための信号線であり、割込要求用信号線32は割込制御部2からCPU1に対して割込要求を出力するための信号線であり、クロック用信号線33はデータ用信号線31と割込要求用信号線32とのタイミングを取るためのクロック用の信号線である。
各CPU1にそれぞれ備えられるCPU側インターフェイス11はシリアルバス30に接続されており、CPU1の内部で取り扱われるパラレルデータをシリアルデータに変換してシリアルバス30に出力するインターフェイスである。また、シリアルバス30からシリアルデータが入力されたときには、パラレルデータに変換してCPU1の内部データとして出力する。CPU1の内部で生成されたパラレルデータは、CPU側インターフェイス11において、例えば最下位ビットから(または最上位ビットから)順番に1ビットのシリアルデータに並び替えて順次出力をしていくようにする。割込要求入力部12は、割込制御部2からの割込要求を入力するための入力部であり、クロック部13はタイミング調整を行うためのクロック部である。データ作成部14は、後述する割込先CPUデータ(割込先演算部データに相当)と割込元CPUデータ(割込元演算部データに相当)とを含む割込要求データを作成するためのデータ作成部であり、各データをパラレルデータとして作成する。
図1では、CPU側インターフェイス11はCPU1の一部の機構として示しているが、例えばCPU1の外部に独立して設けるものであってもよい。この場合には、CPU1とCPU側インターフェイス11との間はパラレル転送可能にしておき、CPU側インターフェイス11においてシリアルデータを出力するようにする。また、データ作成部14についても、CPU11の内部の機構として設けるものであってもよいし、CPU11の外部に独立の機構として設けるものであってもよい。
割込元CPU1−2は、データ作成部14−2により割込要求データを作成し、CPU側インターフェイス11−2により割込要求データを出力する。この割込要求データは、割込先のCPU1−3を特定するための割込先CPUデータ(割込先演算部データに相当)と、割込元のCPU1−2を特定するための割込元CPUデータ(割込元CPUデータに相当)との2つのデータを含むデータである。データ作成部14−2が割込要求データを生成するときにはパラレルデータになっているが、この割込要求データは、CPU側インターフェイス11−2によりシリアルデータに変換されてシリアルバス30に出力される。
割込先CPUデータおよび割込元CPUデータは、それぞれnビットの情報量を有するデータであり、そのビット数(nビット)はCPU1の数(n個)に対応している。CPU1の特定はビットが立っているビット位置により行う。図2に示すように、CPU1−3を特定するための割込先CPUデータは、最下位ビットから3ビット目のみが1、他のビットは0のデータであり、CPU1−2を特定するための割込元CPUデータは、最下位から2ビット目のみが1、他のビットは0のデータである。CPU側インターフェイス11は、これらの割込先CPUデータと割込元CPUデータとを順番に並べて、また他のデータを付加する場合には、それらのデータを付加して、シリアルデータ形式で出力する。
割込制御部2の各制御部側インターフェイス21は、各シリアルバス30に接続されており、シリアルデータ形式で転送される割込要求データをシリアルデータ形式からパラレルデータ形式に復元している。FIFO制御部22およびFIFOキュー23は、複数のCPU1から1つのCPU1に対して同時に割込の要求があった場合に、その調停を先着順で処理する機構であり、割込要求データを最初に入力されたものから順にFIFOキュー23に出力する。FIFO制御部22は、FIFOキュー23に蓄積された割込要求データを、最初に入力されたものから順に取り出して、割込処理部24に出力していく。なお、複数のCPU1から1つのCPU1に対して同時に割込が起こらない場合には、割込の調停を行わないため、FIFO制御部22およびFIFOキュー23を設ける必要はない。
割込処理部24は入力した割込要求データに基づいて、図2の割込要因レジスタ41−1〜41−n(総称して割込要因レジスタ41とする)と割込クリアレジスタ42−1〜42−n(総称して割込クリアレジスタ42とする)とのデータの変更を行う。割込要因レジスタ41および割込クリアレジスタ42は、従来の技術における割込要因レジスタ106および割込クリアレジスタ107とほぼ同じレジスタ構成になっており、nビットの情報を有している(各ビットは初期的に全て0になっている)。
n個の割込要因レジスタ41はn個のCPU1に対応して設けられており、それぞれアドレスを有している。また、割込処理部24は、記憶部25の全ての割込要因レジスタ41と接続されており、割込処理部24が生成したアドレスに対応する割込要因レジスタ41に書き込みを行う。ここでは、割込処理部24は、割込要求データに含まれている割込先CPUデータに基づいて、割込先のCPU1−3のアドレスを持つ割込要因レジスタ41−3に対して、割込元CPUデータ(CPU1−2を示すデータ)を書き込む。割込処理部24に入力される割込要求データは、制御部側インターフェイス21により既にパラレルデータに変換されており、割込先CPUデータにより割込先のCPU1−3を特定できるようになっている。ここでは、最下位ビットからのビット位置を参照することにより、割込処理部24はCPU1−3の特定を行っているが、割込先CPUデータとアドレスとの対応付けは他の方法によるものでもよい。例えば、割込処理部24にアドレス変換テーブル等を持たせておき、割込先CPUデータとアドレス変換テーブルとに基づいて、割込要因レジスタ41−3のアドレスを生成するようにしてもよい。
割込処理部24は、指定された割込要因レジスタ41−3に対して割込元CPUデータをそのまま記憶させる。割込元CPUデータは、最下位から2ビット目が1、他のビットが0のnビットのデータであるため、割込要因レジスタ41−3(初期的に全てのビットが0になっている)の最下位から2ビット目のみを0から1に書き換える。これにより、割込要因レジスタ41−3のアドレスにより割込先のCPU1−3が特定され、レジスタの中身のデータにより割込元のCPU1−2が特定される。
このとき、割込要因レジスタ41をn+1ビットのレジスタ構成にして、nビットを割込元のCPU1−2を特定するためのビットとして使用し、残りの1ビットを割込要因レジスタ41に変更があったか否かを示すフラグ用のビットとして使用するようにしてもよい。このようにフラグ用のビットを設けることにより、レジスタに変更があったか否かを容易に判別することができるようになる。
割込発生部26は各割込要因レジスタ41に接続されており、いずれかの割込要因レジスタ41に変更があったか否かを監視し(前記のフラグ用のビットにより変更があったことを認識するようにしてもよい)、変更があった割込要因レジスタ41−3のアドレスを取得する(つまり、変更があった割込要因レジスタ41を特定する)。ここでは、割込要因レジスタ41−3に変更があったため、このアドレスに対応するCPU1−3を特定する。また、割込発生部26は、各CPU1に対してそれぞれシリアルバスの割込要求用信号線32により接続されており、各CPU1の割込要求入力部12に対して割込を発生させている。ここでは、割込発生部26は、変更があった割込要因レジスタ41−3に対応するCPU1−3の割込要求入力部12−3に対して割込を発生させている。
割込要求を入力したCPU1−3は、実行中の演算処理を中断すると共に、割込ハンドラを起動する。割込ハンドラは、割込元のCPU1を特定するために、割込制御部2に対して割込元CPUデータを要求する。このため、自身のCPU1−3を特定するデータ(CPU特定データ)を含むリード要求データをシリアルデータとして、データ用信号線31経由でCPU側インターフェイス11から割込制御部2に出力する。このときに出力されるCPU特定データは、割込先CPUデータと同じものであり、最下位から3ビット目が1、他のビットが0のシリアルデータになる。
リード要求データは制御部側インターフェイス21−3から、FIFO制御部22やFIFOキュー23を介さずに、割込処理部24に直接入力される。割込処理部24は、このリード要求データを受け取ったときには、記憶部25の各割込要因レジスタ41のうち、CPU特定データにより特定されるアドレスの割込要因レジスタ41−3を読み込む。割込要因レジスタ41−3には、割込元CPUデータとして、最下位から2ビット目が1、他のビットが0になっているデータが書き込まれている。割込処理部24は、この割込元CPUデータを取得して、制御部側インターフェイス21−3によりシリアルデータに変換して、シリアルバス30経由でCPU1−3に出力する。CPU1−3のCPU側インターフェイス11−3は、シリアルデータからパラレルデータに変換して、割込元CPUデータを取得する。CPU1−3は、入力された割込元CPUデータ(最下位から2ビット目が1、他のビットが0のデータ)に基づいて、CPU1−2から割込があったことを認識することができる。これにより、CPU1−3の割込ハンドラは、CPU1−2からの割込要求に応じた所定の割込処理を行うようにする。
次に、CPU1−3が割込処理を終了したときには、CPU1−3のCPU側インターフェイス11から割込制御部2に対して、データ用信号線31経由で前記のCPU特定データ(CPU1−3を特定するデータ)と割込元CPUデータ(CPU1−2を特定するデータ)とを含むシリアルデータとして割込終了通知データが出力する。割込終了通知データは、制御部側インターフェイス21−3から割込処理部24に入力され、割込処理部24はCPU特定データにより特定されるCPU1−3に対応するアドレスの割込クリアレジスタ42−3の書き換えを行う。
割込クリアレジスタ42は、割込処理が終了したCPU1の情報を記憶するレジスタでありn個のレジスタから構成され、また各レジスタはnビットの構成になっている。割込要因レジスタ41と同様に、割込クリアレジスタ42にもCPU1に対応したアドレスが割り振られている。前述したように、割込処理部24により割込クリアレジスタ42−3の書き換えが行われる。書き換えられる内容は、割込元CPUデータであり、このデータは最下位ビットから2ビット目が1になっている。割込クリアレジスタ42は初期的に全てのビットが0になっており、割込処理部24は、最下位ビットから2ビット目を1に書き換える。
割込処理部24は、割込クリアレジスタ42−3の書き換えが終了した後に、この割込クリアレジスタ42−3と同じCPU1−3に対応するアドレスが割り振られている割込要因レジスタ41−3の書き換えを行う。具体的には、割込要因レジスタ41−3に対して、割込クリアレジスタ42−3のビットが立っている位置と同じ位置(最下位から2ビット目)のビットをクリアする。これにより、割込要因レジスタ41−3が記憶していた割込元CPUデータはクリアされ、割込要因レジスタ41−3には割込要求があったことを示す情報が消去される。以上により、割込処理が終了することになる。
なお、割込処理部24が割込終了通知データに基づいて、割込要因レジスタ41の内容を直接クリアすることができる場合には、割込クリアレジスタ42を設けなくてもよい。
以上説明したように、CPU1から他のCPU1に対して割込を行うときには、割込先CPUデータと割込元CPUデータとを含む割込要求データをシリアルデータとしてCPU側インターフェイス11から割込制御部2に出力するようにし、割込制御部2では、割込先CPUデータと割込元CPUデータとに基づいて、割込先のCPUと割込元のCPUとを特定することが可能になる。これらの2つのデータをシリアルデータ形式で転送するようにしているため、各CPU1と割込制御部2との間をシリアルバス30により接続することが可能になる。従って、回路構成および回路量を大幅に簡略化することができ、また割込制御部2に形成する配線数を少なくできることから、装置全体のサイズをコンパクトにすることができる。また、スキューやクロストークの問題がないことから、高速且つ正確なテストを行うことができるようになる。
ここで、各CPU1と割込制御部2との間をパラレルバスにより接続する場合には、少なくともCPU1の数にパラレルバスが有する信号線の数を乗じた数の信号線を設けなければならない。近年では、測定データの情報量が著しく増大していることから、CPU1の数とパラレルバスが有する信号線との両者の数も増加している。このため、パラレルバス接続の場合には、極めて膨大な量の信号線を設けなければならない。一方、本発明では、シリアルバス30を用いており、このシリアルバス30は3つの信号線を有して構成しているため、CPU1の数に3を乗じた数の信号線を設けるだけでよい(勿論、グランド用等の信号線は別途必要になる場合がある)。このため、回路構成および回路量を大幅に簡略化することができるようになる。
次に、1つのCPU1に対して複数のCPU1から割込が同時に発生した場合の例について説明する。ここでは、CPU1−3とCPU1−4とCPU1−5との3つのCPU1からCPU1−2に対して割込が発生しているものとし、CPU1−3、CPU1−4、CPU1−5の順番で割込を発生したものとする。なお、複数のCPU1から同時に割込が発生したとは、完全に一致したタイミングで割込を発生した場合だけではなく、1つのCPU1からの割込処理を行っているときに、他のCPU1からの割込要求を入力した場合も含まれる。
CPU1−3は、CPU側インターフェイス11からシリアルバス30を介して割込制御部2に対して割込要求データを出力する。この割込要求データは、制御部側インターフェイス21−3からFIFO制御部22に送られる。同様に、CPU1−4から出力された割込要求データがFIFO制御部22に送られ、CPU1−5から出力された割込要求データがFIFO制御部22に送られる。FIFO制御部22は、入力した順番で割込要求データをFIFOキュー23に出力し、FIFOキュー23は順次割込要求データを蓄積していく。
FIFO制御部22は、FIFOキュー23に蓄積されている3つの割込要求データを最初に蓄積されたものから順番で取り出して割込処理部24に出力していく。つまり、CPU1−3からの割込要求データ、CPU1−4からの割込要求データ、CPU1−5からの割込要求データの順番で割込処理部24に出力される。割込処理部24は、最初にCPU1−3からの割込要求データに含まれる割込先CPUデータに基づいて、割込要因レジスタ41−2に対して、割込元CPUデータを記憶させる。割込元CPUデータは最下位から3ビット目が1、他のビットが0のデータであるため、割込要因レジスタ41−2の最下位から3ビット目を1に変更する。
次に、割込処理部24は、CPU1−4からの割込要求データに含まれる割込先CPUデータに基づいて、割込要因レジスタ41−2に対して、割込元CPUデータを記憶させる。割込元CPUデータは最下位から4ビット目が1、他のビットが0のデータであるため、割込要因レジスタ41−3の最下位から4ビット目を1に変更する。また、割込処理部24は、CPU1−5からの割込要求データに基づいて、同様の処理を行い、割込要因レジスタ41−2の最下位から5ビット目を1に変更する。
以上より、割込要因レジスタ41−2は、最下位から3ビット目、4ビット目、5ビット目の3つが1になり、他のビットが0の情報を記憶する。この割込要因レジスタ41−2が保持している情報は、アドレスに対応するCPU1−2に対して、データにより特定されるCPU1−3、CPU1−4、CPU1−5の3つのCPUから割込が発生していることを示していることになる。
割込発生部26は、割込要因レジスタ41−2に変更があったため、CPU1−2の割込要求入力部12に対して割込が発生した旨の信号を出力する。CPU1−2は、データ用信号線31を介して割込制御部2にアクセスを行い、割込要因レジスタ41−2を読み込む。割込要因レジスタ41−2を読み込むことにより、CPU1−3、CPU1−4、CPU1−5の3つのCPUから割込が発生したことをCPU1−2は認識する。そして、3つのCPUのそれぞれに対応した割込処理を順次行い、終了した割込処理から順に割込終了通知データを出力する。その後、割込処理を終了した順番に、割込クリアレジスタ42−2のビット位置を立てるようにし、割込要因レジスタ41−2をクリアして、割込処理を終了する。
次に、複数の基板間で割込を行う例について説明する。複数のCPU1と割込制御部2とは、基本的に1つの基板50に設けられるものである。そして、膨大な数のDUTを試験するために、通常は複数枚の基板50を用いてテストを行うようにしている。このため、図3のように、基板50−1〜50−m(総称して基板50)のように、m(mは整数)枚の基板50を使用してテストを行う。そして、各基板50は相互に信号の授受が可能に構成しており、異なる基板50に属するCPU1の間で相互に割込可能に構成している。
図3に示すように、割込制御部2に基板間入力用インターフェイス51と基板間出力用インターフェイス52とを設けている。基板間入力用インターフェイス51および基板間出力用インターフェイス52は、それぞれ隣接する基板50の基板間出力用インターフェイス52および基板間入力用インターフェイス51と基板間接続用シリアルバス53により接続されている。つまり、基板間接続用シリアルバス53による接続は、隣接する基板50の間を数珠繋ぎに接続する、いわゆるデイジーチェーン方式により接続しているものである。基板間接続用シリアルバス53は、シリアルバス30と同様に、データ用信号線と割込要求用信号線とクロック用信号線との3本の信号線を有するバスになる。なお、図3において、基板間入力用インターフェイス51を「入力用I/F」として、基板間出力用インターフェイス52を「出力用I/F」として示している。
図4に記憶部25に備えられる割込要因レジスタ44および割込クリアレジスタ45を示す。これらのレジスタは、図2で説明した割込要因レジスタ41および割込クリアレジスタ42とは異なる。図4の割込要因レジスタ44および割込クリアレジスタ45は、自身の基板50に備えられるCPU1だけではなく、他の基板50のCPUを特定するための情報を有している。このため、図4の割込要因レジスタ44および割込クリアレジスタ45は、自身の基板50のCPU1の数に対応したビット数(nビット)だけではなく、他の基板50のCPUの数に対応したビット数を有する。例えば、各基板50に備えられるCPU1の数がnであり、基板50の枚数がm枚である場合には、割込要因レジスタ44および割込クリアレジスタ45はm×nビットの情報量を持つ。
図4に示すように、割込要因レジスタ44および割込クリアレジスタ45は、最下位ビットからnビット分は基板50−1のCPU1に対応したビットであり、次のnビット分は基板50−2のCPU1に対応したビットである。以降、基板50−mまで、nビットごとに各基板50のCPU1に対応したビットが割り振られている。
基板50のCPU1から他の基板50のCPU1に対して割込を行うときには、当該基板50のCPU1から割込制御部2に対して、データ作成部14が作成した割込要求データを出力する。この割込要求データは、割込先CPUデータに割込先の基板50のデータ(割込先基板データ)を付加したデータと、割込元CPUデータに割込元の基板50のデータ(割込元基板データ)を付加したデータとを含めたデータになる。ここでは、割込要因レジスタ41と同じ形式を用いるものとし、各基板50に備えられるCPU1の数(n個)と基板50の枚数(m枚)とを乗じた「m×n」のビット数を持つものとして説明する。
基板50−1のCPU1−1から基板50−3のCPU1−2に対して割込を行うときの例について説明する。基板50−1のCPU1−1は、割込制御部2に対して割込要求データを出力する。割込制御部2の割込処理部24は、この割込要求データに含まれている割込先基板データを参照して、基板50−3であることを認識する。従って、割込処理部24は自身の基板50−1でないことを認識するため、基板間出力用インターフェイス52から基板間接続用シリアルバス53を介して、次の基板50−2の基板間入力用インターフェイス52に割込要求データを出力する。基板50−2の基板間入力用インターフェイス51から入力された割込要求データは、基板50−2の割込制御部2の割込処理部24において、自身の基板50−2に対する割込要求でないことを認識するため、次の基板50−3に対して割込要求データを出力する。
基板50−3の基板間入力用インターフェイス51から入力された割込要求データは、基板50−3の割込制御部2の割込処理部24において、自身の基板50−3に対する割込要求であることを認識する。そこで、割込処理部24は、割込先CPUデータを参照して、割込先のCPU1−2に対応する割込要因レジスタ44−2に対して、基板50−1のCPU1−1からの割込であることを示すデータを書き込む。割込要因レジスタ44−2の最下位ビットからnビット分は基板50−1に対応したものであるから、このnビット分のうち最下位のビット、つまり割込要因レジスタ44−2の最下位ビットに1を立てる。
割込発生部26は、CPU1−2に対して割込要求があった旨の信号を出力し、CPU1−2は割込制御部2の割込要因レジスタ44−2にアクセスする。割込要因レジスタ44−2の最下位ビットが1になっていることから、基板50−1のCPU1−1からの割込であることをCPU1−2が認識し、所定の割込処理を行う。そして、割込処理を終了した後には、割込クリアレジスタ45−2の最下位から1ビット目を1にして、割込要因レジスタ44−2の最下位ビットの1をクリアする。以上により、複数の基板50を跨ぐ割込を行うことができるようになる。
以上の構成において、割込要因レジスタ44および割込クリアレジスタ45はm×nビットの情報量を持つものとして説明したが、例えばm+nビットのレジスタ構成とするものであってもよい。この場合には、レジスタ構成の最上位からmビット分を基板50の特定のためのデータとして、また最下位からnビット分をCPU1の特定のためのデータとして用いるようにすることができる。この場合には、割込要求データについても、最上位からmビット分を基板50の特定のためのデータとして、最下位からnビット分をCPU1の特定のためのデータとして用いるようにする。これにより、レジスタ構成および情報量を「m×n」ビットから「m+n」ビットに低減することができるようになる。
ところで、シリアルバスとしては、データ用信号線と割込要求用信号線とクロック用信号線との3つの信号線を有するものとして説明したが、割込要求用信号線を使用しないものであってもよい。つまり、データ用信号線を介して割込要求があった旨の信号を出力するようにしてもよい。この場合には、シリアルバスに含まれる信号線はデータ用信号線とクロック用信号線との2つを有することになり、このバスはいわゆるI2Cバスになる。勿論、シリアルバスの形式としては、例えばSPI(Serial Peripheral Interface)によるシリアルバス等を適用してもよく、信号線の本数が少ないシリアルバスであれば任意のものを適用してもよい。
また、割込要因レジスタおよび割込クリアレジスタを用いて割込先のCPUと割込元のCPUとを特定しているが、メモリ等のレジスタ以外の記憶装置を用いてもよい。ただし、高速にアクセスすることができることから、レジスタを用いることが好適である。割込要因レジスタおよび割込クリアレジスタとしては、CPUの数(n個)に対応したビット数(nビット)からレジスタ構成について説明してきたが、レジスタのビット数を増やして、他の情報を保持するようにしてもよい。例えば、前述したような変更があったことを示すフラグ用のビットを設けるようにしてもよい。また、割込マスク用に割込マスクレジスタを設けるものであってもよい。
また、CPU1の特定をビット位置ではなく、番号により特定を行なうようにしてもよい。CPU1−1〜CPU1−nまで1番からn番まで番号を割り振るようにして、それぞれを2進数のデータとする。これにより、割込先CPUデータおよび割込元CPUデータは、ビット位置で特定していたときにはnビットの情報量であったものを、lognの情報量に低減することができる(つまり、CPUが16個の場合には、16ビットの情報量を4ビットの情報量に低減することができる)。転送データの情報量を低減することができることから、試験速度をより高速化できるようになる。また、これに伴い、レジスタが保持する情報量もlognに低減することができ、回路構成及び回路量をより削減することができる。特に、基板50間で割込を行う場合には、情報量が大きくなることになり、番号による特定の効果をより高くすることができるようになる。
また、割込要因レジスタ44をCPU1の個数分だけ設け、レジスタ番号を割り振ることにより、割込先のCPU1を特定するようにしているが、例えば1個の割込要因レジスタを設けるようにしてもよい。1個の割込要因レジスタとしては、n×nビットの情報を保持することが可能にしておき、最下位からnビット分をレジスタ番号1に対応させておき、次のnビット分をレジスタ番号2に対応させておき、順次nビットのフィールドを各レジスタ番号に対応させておけば、1つの割込要因レジスタで割込先のCPU1と割込元のCPU1とを特定できるようになる。これにより、割込要因レジスタの個数を1個にすることができる。割込クリアレジスタも同様である。また、割込要因レジスタと割込クリアレジスタとを1つのレジスタに纏めることもできる。この場合には、2×nビットのレジスタがn個必要になる。
また、FIFO制御部とFIFOキューとを用いて、複数のCPUから同時に割込要求が出力された場合には、先着順で割込制御を行うようにしているが、予め固定的に優先順位をFIFO制御部に記憶させておき、記憶された優先順位どおりに割込を発生させるようにしてもよい。これにより、優先順位が高い割込から先に割込を発生できるようになる。
本発明の概略構成を示すブロック図である。 割込要求データおよびレジスタ構成の一例を示す図である。 本発明の他の例における概略構成を示すブロック図である。 他の例における割込要求データおよびレジスタ構成の一例を示す図である。 従来例の概略構成を示すブロック図である。 従来例における割込要求データおよびレジスタ構成の一例を示す図である。 従来例の他の例における概略構成を示すブロック図である。
符号の説明
1 CPU 2 割込制御部
11 CPU側インターフェイス 12 割込要求入力部
21 制御部側インターフェイス 22 FIFO制御部
23 FIFOキュー 24 割込処理部
25 記憶部 26 割込発生部
30 シリアルバス 31 データ用信号線
32 割込要求用信号線 33 クロック用信号線
41 割込要因レジスタ 42 割込クリアレジスタ
50 基板 51 基板間入力用インターフェイス
52 基板間出力用インターフェイス 53 基板間接続用シリアルバス

Claims (7)

  1. 被試験デバイスの試験を行うための複数の演算部を備える半導体試験装置であって、
    前記演算部ごとに設けられ、他の演算部に対して割込を要求するための割込要求データを作成するデータ作成部と、
    このデータ作成部のそれぞれから前記割込要求データを入力して、前記他の演算部に対して割込を発生させる制御を行う割込制御部と、
    前記データ作成部ごとに設けられ、前記データ作成部と前記割込制御部とをそれぞれ接続し、前記割込要求データをシリアルデータとしてシリアル転送するシリアルバスと、
    を備えたことを特徴とする半導体試験装置。
  2. 前記演算部ごとに設けられ、前記データ作成部が生成した前記割込要求データをパラレルデータからシリアルデータに変換して前記シリアルバスに出力する演算部側インターフェイスと、
    前記割込制御部に設けられ、前記シリアルバスから入力した前記割込要求データをシリアルデータからパラレルデータに変換する制御部側インターフェイスと、
    を備えたことを特徴とする請求項1記載の半導体試験装置。
  3. 前記シリアルバスは、
    前記割込要求データを転送するためのデータ用信号線と、
    前記割込制御部から前記演算部に対して割込を発生させるための割込発生用信号線と、
    前記データ用信号線と前記割込発生用信号線とのタイミング制御を行うクロック用信号線と、
    を有することを特徴とする請求項1記載の半導体試験装置。
  4. 前記割込要求データは、割込元の演算部を特定するための割込元演算部データと割込先の演算部を特定するための割込先演算部データとを有し、
    前記割込制御部は、前記割込先演算部データにより特定される演算部に対して、前記割込元演算部データにより特定される演算部からの割込を発生させる制御を行うことを特徴とする請求項1記載の半導体試験装置。
  5. 前記割込制御部は、
    前記演算部ごとに設けられる前記割込元演算部データを記憶するための複数の割込要因記憶部と、
    前記割込先演算部データにより割込先の演算部を特定し、特定された割込先の演算部に対応する割込要因記憶部に前記割込元演算部データを記憶させる割込処理部と、
    前記複数の割込要因記憶部のうち何れかの割込要因記憶部が変更されたときに、変更があった割込要因記憶部に対応する演算部に対して、記憶されている割込元演算部データにより特定される演算部からの割込を発生させる割込発生部と、
    を備えたことを特徴とする請求項4記載の半導体試験装置。
  6. 前記割込制御部は、2以上の前記演算部から同時に前記割込要求データを入力したときに、先着順で割込を発生させるためのFIFO制御部を備えたことを特徴とする請求項1記載の半導体試験装置。
  7. 前記複数の演算部と前記割込制御部と前記複数のシリアルバスとを設けた複数の基板と、
    これらの複数の基板間をデイジーチェーン方式で接続する基板間接続用シリアルバスと、を備え、
    前記演算部は、他の基板の演算部に対して割込を要求するときに、割込先の演算部が属する基板を特定する割込先基板データと割込元の演算部が属する基板を特定する割込元基板データとを前記割込要求データに付加して出力し、
    前記各基板の割込制御部は、
    前記割込先基板データが自身の基板を示している場合には、前記割込先演算部データにより特定される演算部に対して、前記割込元基板データの基板に属する前記割込元演算部データの演算部からの割込を発生させ、
    前記割込先基板データが自身の基板を示していない場合には、前記デイジーチェーン方式で接続される次の基板の割込制御部に前記割込要求データを出力することを特徴とする請求項1記載の半導体試験装置。
JP2008195588A 2008-07-30 2008-07-30 半導体試験装置 Pending JP2010032402A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008195588A JP2010032402A (ja) 2008-07-30 2008-07-30 半導体試験装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008195588A JP2010032402A (ja) 2008-07-30 2008-07-30 半導体試験装置

Publications (1)

Publication Number Publication Date
JP2010032402A true JP2010032402A (ja) 2010-02-12

Family

ID=41737044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008195588A Pending JP2010032402A (ja) 2008-07-30 2008-07-30 半導体試験装置

Country Status (1)

Country Link
JP (1) JP2010032402A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013501987A (ja) * 2010-04-13 2013-01-17 ゼットティーイー コーポレイション マルチモードデータカード及びその較正方法
JP2014061651A (ja) * 2012-09-21 2014-04-10 Brother Ind Ltd 画像処理装置および画像処理プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013501987A (ja) * 2010-04-13 2013-01-17 ゼットティーイー コーポレイション マルチモードデータカード及びその較正方法
US8775789B2 (en) 2010-04-13 2014-07-08 Zte Corporation Multi-mode data card and calibrating method thereof
JP2014061651A (ja) * 2012-09-21 2014-04-10 Brother Ind Ltd 画像処理装置および画像処理プログラム

Similar Documents

Publication Publication Date Title
US7269709B2 (en) Memory controller configurable to allow bandwidth/latency tradeoff
US7840780B2 (en) Shared resources in a chip multiprocessor
EP2725497A1 (en) Memory arbitration circuit and method
JP6449702B2 (ja) 半導体装置
EP2579164A1 (en) Multiprocessor system, execution control method, execution control program
CN101911033B (zh) 在至少一个直接存储器存取外围装置与以正交时钟操作的中央处理单元之间共享单端口静态随机存取存储器的带宽
JP4198376B2 (ja) バスシステム及びバスシステムを含む情報処理システム
JP5443586B2 (ja) 回路構成におけるデータ交換を制御するための回路構成、および方法
US8667199B2 (en) Data processing apparatus and method for performing multi-cycle arbitration
US8478946B2 (en) Method and system for local data sharing
US20070101032A1 (en) Bus arbitration circuit and bus arbitration method
JP2010032402A (ja) 半導体試験装置
US10255207B2 (en) Method and apparatus use with interrupts
US9767054B2 (en) Data transfer control device and memory-containing device
EP0945810A2 (en) Pipeline-type multi-processor system
JP6307099B2 (ja) テストシステム、試験装置
EP1685495B1 (en) Electronic data processing circuit that transmits packed words via a bus
US11609871B1 (en) Integrated circuit device with crossbar to route traffic
US20230244461A1 (en) Configurable Access to a Reconfigurable Processor by a Virtual Function
JP4249741B2 (ja) バスシステム及びバスシステムを含む情報処理システム
WO2022041232A1 (zh) 芯片测试电路及电路测试方法
US10496564B2 (en) Bus control circuit, information processing apparatus, and control method for bus control circuit
Narmadha et al. Performance analysis of ADMA on bus based SoC-survey
JPS6079445A (ja) 記憶制御装置
JP5282325B2 (ja) ポステッドライトバス制御装置