JP2008176485A - Reconfigurable logical device and its debugging system - Google Patents
Reconfigurable logical device and its debugging system Download PDFInfo
- Publication number
- JP2008176485A JP2008176485A JP2007008255A JP2007008255A JP2008176485A JP 2008176485 A JP2008176485 A JP 2008176485A JP 2007008255 A JP2007008255 A JP 2007008255A JP 2007008255 A JP2007008255 A JP 2007008255A JP 2008176485 A JP2008176485 A JP 2008176485A
- Authority
- JP
- Japan
- Prior art keywords
- reconfigurable logic
- logic device
- indefinite value
- value
- debugging
- 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.)
- Withdrawn
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Logic Circuits (AREA)
Abstract
Description
本発明は再構成可能な論理デバイスおよびそのデバッグシステムに関し、特に不定値伝搬によるデバッグ機能を備えた再構成可能な論理デバイスおよびそのデバッグシステムに関する。 The present invention relates to a reconfigurable logic device and a debugging system thereof, and more particularly to a reconfigurable logic device having a debugging function by indefinite value propagation and a debugging system thereof.
近年、再構成可能な論理デバイス(部分再構成可能または動的再構成可能な論路デバイスを含む。以下同じ。)を用いたLSI開発において、ラピッド・プロトタイピングに基づいた開発が盛んになってきており、設計、合成、実機による実行の開発サイクルが短くなってきている。 In recent years, in LSI development using reconfigurable logic devices (including partially reconfigurable or dynamically reconfigurable logic devices; the same applies hereinafter), development based on rapid prototyping has become popular. The development cycle of design, synthesis, and execution by actual machines is becoming shorter.
論理回路の規模または実行サイクル数が大きい場合には、仮に合成時間が長くかかったとしても、実ハートウェアでデバッグを行うことにより、シミュレーションと比較して、TAT(Turn Around Time)が短くなることもある。 If the scale of the logic circuit or the number of execution cycles is large, even if the synthesis time takes a long time, TAT (Turn Around Time) will be shortened by performing debugging with real heartware compared to simulation. There is also.
また、シミュレーションと実ハードウェアへマッピングした場合とでは、動作が論理的に異なる場合があるため、シミュレーションを行う場合も、最終的には実ハードウェアによる検証が必須である。 In addition, since the operation may be logically different between the simulation and the mapping to the actual hardware, the verification by the actual hardware is finally required even when the simulation is performed.
このように、TATの短縮および検証の確実性の観点から、実ハードウェアにおけるデバッグを容易に実現する技術が期待されている。 Thus, from the viewpoint of shortening TAT and certainty of verification, a technique for easily realizing debugging in actual hardware is expected.
なお、不定値伝搬によるシミュレーション方法は、例えば文献1に開示されている。
A simulation method using indefinite value propagation is disclosed in, for example,
論理回路のデバッグは論理シミュレータを用い不定値伝搬を解析することが有効であることが知られている(特許文献1)。しかし、従来の実ハードウェアでは不定値を扱うことができず、0または1の2値しか扱うことができないため、不定値検出による回路デバッグが不可能である。 It is known that logic circuit debugging is effective for analyzing indefinite value propagation using a logic simulator (Patent Document 1). However, conventional real hardware cannot handle indefinite values, and can only handle binary values of 0 or 1, so circuit debugging by indeterminate value detection is impossible.
したがって、実チップにおける不定値伝搬を可能とし、論理シミュレータと同様に実チップにおいても不定値伝搬を用いたデバッグを行うことを可能とするための再構成可能な論理デバイスおよびそのデバッグ装置を提供することが課題となる。 Therefore, there is provided a reconfigurable logic device and a debugging apparatus for enabling indefinite value propagation in a real chip and enabling debugging using indefinite value propagation in a real chip as well as a logic simulator. Is a problem.
本発明の第1の視点に係る再構成可能な論理デバイスは、レジスタまたはメモリのいずれかの記憶素子と配線とを備えた再構成可能な論理デバイスにおいて、前記記憶素子は不定値を保持するように構成され、前記配線は不定値を伝搬するように構成されたことを特徴とする。 A reconfigurable logic device according to a first aspect of the present invention is a reconfigurable logic device including a storage element and a wiring of either a register or a memory, and the storage element holds an indefinite value. The wiring is configured to propagate an indefinite value.
本発明の第2の視点に係る再構成可能な論理デバイスは、演算器と配線とを備えた再構成可能な論理デバイスにおいて、前記演算器は不定値を含む演算を行うように構成され、前記配線は不定値を伝搬するように構成されたことを特徴とする。 A reconfigurable logic device according to a second aspect of the present invention is a reconfigurable logic device comprising an arithmetic unit and wiring, wherein the arithmetic unit is configured to perform an operation including an indefinite value, The wiring is configured to propagate an indefinite value.
本発明の第3の視点に係る再構成可能な論理デバイスは、内部構成を変更するスイッチと配線とを備えた再構成可能な論理デバイスにおいて、前記スイッチは不定値を伝搬するように構成され、前記配線は不定値を伝搬するように構成されたことを特徴とする。 A reconfigurable logic device according to a third aspect of the present invention is a reconfigurable logic device including a switch and a wiring for changing an internal configuration, wherein the switch is configured to propagate an indefinite value, The wiring is configured to propagate an indefinite value.
本発明の第4の視点に係る再構成可能な論理デバイスは、入出力端子を備えた再構成可能な論理デバイスにおいて、前記入出力端子は不定値を伝搬するように構成されたことを特徴とする。 A reconfigurable logic device according to a fourth aspect of the present invention is a reconfigurable logic device having an input / output terminal, wherein the input / output terminal is configured to propagate an indefinite value. To do.
第1の展開形態の再構成可能な論理デバイスは、不定値を考慮しない通常モードと不定値を考慮するデバッグモードとの間で切り替え可能であるように構成されたことを特徴とする。 The reconfigurable logical device according to the first development mode is characterized in that it can be switched between a normal mode that does not consider indefinite values and a debug mode that takes into account indefinite values.
第2の展開形態の再構成可能な論理デバイスは、前記通常モードにおいて誤り検出または誤り訂正に使用する資源を、前記デバッグモードにおいて使用するように構成されたことを特徴とする。 The reconfigurable logic device of the second development form is configured to use resources used for error detection or error correction in the normal mode in the debug mode.
第3の展開形態の再構成可能な論理デバイスは、不定値をビットごとに付加するように構成されたことを特徴とする。 The reconfigurable logic device according to the third development form is configured to add an indefinite value for each bit.
第4の展開形態の再構成可能な論理デバイスは、不定値をデータ処理の単位ごとに付加するように構成されたことを特徴とする。 The reconfigurable logical device according to the fourth development mode is characterized in that an indefinite value is added for each unit of data processing.
第5の展開形態の再構成可能な論理デバイスは、初期化時において、前記記憶素子、前記演算器、前記スイッチ、前記入出力端子のいずれかに不定値を設定するように構成されたことを特徴とする。 The reconfigurable logic device of the fifth development form is configured to set an indefinite value to any of the storage element, the arithmetic unit, the switch, and the input / output terminal at the time of initialization. Features.
第6の展開形態の再構成可能な論理デバイスのデバッグシステムは、前記再構成可能な論理デバイスと、前記再構成可能な論理デバイスを初期化する際、前記記憶素子、前記演算器、前記スイッチ、前記入出力端子のいずれかに不定値を設定するように構成されたデバッグ装置と、を備えたことを特徴とする。 The debug system for a reconfigurable logic device according to a sixth development mode is configured to initialize the reconfigurable logic device and the reconfigurable logic device when the storage element, the arithmetic unit, the switch, And a debugging device configured to set an indefinite value to any of the input / output terminals.
第7の展開形態の再構成可能な論理デバイスのデバッグシステムは、前記再構成可能な論理デバイスと、前記再構成可能な論理デバイスへ構成情報を書き込んだ後、前記記憶素子、前記演算器、前記スイッチ、前記入出力端子のいずれかに不定値を設定するように構成されたデバッグ装置と、を備えたことを特徴とする。 The debugging system for a reconfigurable logic device according to a seventh development form writes the configuration information to the reconfigurable logic device and the reconfigurable logic device, and then stores the storage element, the arithmetic unit, And a debug device configured to set an indefinite value to any one of the switch and the input / output terminal.
第8の展開形態の再構成可能な論理デバイスは、前記記憶素子、前記演算器、前記スイッチ、前記配線、前記入出力端子のいずれかにおいて発生または伝搬した不定値伝搬情報を取得し、デバッグ用の情報を出力するように構成された制御器を、備えたことを特徴とする。 The reconfigurable logic device according to the eighth expansion mode acquires indefinite value propagation information generated or propagated in any of the storage element, the arithmetic unit, the switch, the wiring, and the input / output terminal, and is used for debugging. And a controller configured to output the above information.
第9の展開形態の再構成可能な論理デバイスのデバッグシステムは、前記論理デバイスと、前記制御器から前記デバッグ用の情報を入力するとともにデバッグ用の情報を出力するように構成されたデバッグ装置と、を備えたことを特徴とする。 A debug system for a reconfigurable logic device according to a ninth development mode includes the logic device, and a debug apparatus configured to input the debug information from the controller and output the debug information. , Provided.
第10の展開形態の再構成可能な論理デバイスは、不定値伝搬をトリガにしてイベントを発生するように構成されたことを特徴とする。 The reconfigurable logic device according to the tenth development form is configured to generate an event triggered by indefinite value propagation.
第11の展開形態の再構成可能な論理デバイスのデバッグシステムは、不定値伝搬をトリガにしてイベントを発生するように構成されたことを特徴とする。 The debug system for a reconfigurable logic device according to an eleventh development mode is characterized in that an event is generated with the indefinite value propagation as a trigger.
第12の展開形態の再構成可能な論理デバイスは、不定値伝搬を時系列に記録するように構成されたことを特徴とする。 The reconfigurable logic device according to the twelfth mode is characterized in that it is configured to record indefinite value propagation in time series.
第13の展開形態の再構成可能な論理デバイスのデバッグシステムは、不定値伝搬を時系列に記録するように構成されたことを特徴とする。 A debugging system for a reconfigurable logic device according to a thirteenth development mode is characterized in that it is configured to record indefinite value propagation in time series.
第14の展開形態の再構成可能な論理デバイスは、不定値伝搬をトリガにして停止するように構成されたことを特徴とする。 The reconfigurable logic device according to the fourteenth development mode is characterized in that the reconfigurable logic device is configured to stop when triggered by indefinite value propagation.
第15の展開形態の再構成可能な論理デバイスのデバッグシステムは、不定値伝搬をトリガにして停止するように構成されたことを特徴とする。 A debugging system for a reconfigurable logic device according to a fifteenth development mode is characterized in that it is configured to stop when triggered by indefinite value propagation.
第16の展開形態の再構成可能な論理デバイスのデバッグシステムは、不定値発生をトリガにして動作中にデバッグ用の情報を表示するように構成されたことを特徴とする。 The reconfigurable logic device debugging system according to the sixteenth development mode is characterized in that debugging information is displayed during operation triggered by occurrence of an indefinite value.
第17の展開形態の再構成可能な論理デバイスのデバッグシステムは、不定値発生をトリガにして停止した後にデバッグ用の情報を表示するように構成されたことを特徴とする。 The debug system for a reconfigurable logic device according to a seventeenth development mode is characterized in that it displays information for debugging after being stopped with the occurrence of an indefinite value as a trigger.
本発明に係る再構成可能な論理デバイスおよびそのデバッグシステムによれば、ソフトウェアによる低速なシミュレータまたは高速であるものの高価なエミュレータによるシミュレーションを行わなくても、再構成可能な論理デバイスの実チップにおいて不定値を扱うことができるようになる。 According to the reconfigurable logic device and the debugging system thereof according to the present invention, it is undefined in the real chip of the reconfigurable logic device without performing simulation by a low-speed simulator by software or a high-speed but expensive emulator. It becomes possible to handle the value.
したがって、実チップにおいて、シミュレータを用いた場合と同様に不定値を用いた効率の良いデバッグを行うことが可能となる。 Therefore, efficient debugging using indefinite values can be performed in the actual chip as in the case of using the simulator.
上記目的を達成するため、本発明のデバイスは、再構成可能な論理デバイスであって、デバイスを構成する記憶素子(レジスタおよびメモリを含む。以下同じ。)が0、1の2値のみならず不定値を保持できる機能と、デバイスを構成する配線が不定値を伝搬する配線と、を有する。 In order to achieve the above object, the device of the present invention is a reconfigurable logic device and includes not only binary values of 0 and 1 but also storage elements (including registers and memories; the same applies hereinafter) constituting the device. It has a function capable of holding an indefinite value, and a wiring that propagates an indefinite value in a wiring that constitutes the device.
また、再構成可能な論理デバイスであって、デバイスを構成する演算器が不定値を含む演算を行う機能と、デバイスを構成する配線が不定値を伝搬する配線と、を有する。 Further, the logic device is a reconfigurable logic device, and has a function in which an arithmetic unit constituting the device performs an operation including an indefinite value, and a wiring in which the device constitutes an indefinite value.
また、再構成可能な論理デバイスであって、デバイスを構成する配線間の接続を行うスイッチ素子の設定に起因して不定値を発生させる機能と、デバイスを構成する配線が不定値を伝搬する配線と、を有する。 Also, a reconfigurable logic device that generates an indeterminate value due to the setting of the switch element that connects the wires that make up the device, and a wire that propagates the indeterminate value in the wires that make up the device And having.
また、再構成可能な論理デバイスであって、デバイスを構成する入出力端子が外部回路と不定値を送受信可能とする不定値用の端子と、デバイスを構成する配線が不定値を伝搬する配線と、を有する。 Also, a reconfigurable logic device, wherein the input / output terminals that make up the device can send and receive indefinite values to and from external circuits, and the wires that make up the device propagate indefinite values Have.
再構成可能な論理デバイスであって、デバイスに通常モードとデバッグモード間のモード切り替え機能と、デバイスを構成する上記モードに応じて、既存リソースと不定値伝搬機能(記憶素子・演算器・配線・入出力端子)を切り替えることによりリソースの一部又は全部を共有する機能と、を有する。 A reconfigurable logic device that has a mode switching function between a normal mode and a debug mode, and an existing resource and an indefinite value propagation function (memory element / arithmetic unit / wiring / And a function of sharing some or all of the resources by switching the input / output terminals.
再構成可能な論理デバイスであって、これらにより、あらかじめ未初期化部分に不定値表現を書き込み、動作させることにより、実機においても回路の不具合に起因する不定値伝搬を検出する機能を有する。 This is a reconfigurable logic device, and by this, an indefinite value expression is written in an uninitialized part in advance and operated, so that even an actual machine has a function of detecting indefinite value propagation caused by a circuit failure.
次に、本発明の上記および他の目的、特徴および利点を明確にすべく、添付した図面を参照して、本発明の実施の形態を説明する。 Next, in order to clarify the above and other objects, features, and advantages of the present invention, embodiments of the present invention will be described with reference to the accompanying drawings.
図1は不定値機能を備えた再構成可能な論理デバイスを示す。以下では、再構成可能な論理デバイスの構成を例に説明する。但し、本発明は部分再構成可能もしくは動的再構成可能な論理デバイスに対しても同様に適用することができる。 FIG. 1 shows a reconfigurable logic device with indefinite value functionality. Hereinafter, a configuration of a reconfigurable logical device will be described as an example. However, the present invention can be similarly applied to partially reconfigurable or dynamically reconfigurable logical devices.
再構成可能な論理デバイス1は、レジスタ、メモリなどの記憶素子または演算器からなるプロセッシング・エレメント(PE)2、配線3、配線間を接続するスイッチ4、入出力端子5をマトリクス状に複数個備える。これらに加え、モード設定や不定値伝搬の検出を行う制御器6を備える。
A
図1の2ないし6の構成要素は従来の再構成可能な論理デバイスにおいても、同様に含まれる。しかし、本発明に係るこれらの構成要素は不定値を保持し、または、伝搬する機能を有する。すなわち、記憶素子2は特定値(2値のいずれか)の保持だけでなく、不定値を保持することのできる記憶素子をさらに備え、演算器2は特定値同士の演算だけでなく、特定値と不定値の演算などの不定値を含む演算を行うことのできる演算器拡張を有し、配線3は不定値を伝搬できる配線をさらに備え、スイッチ4は不定値を伝搬すると共に不定値を設定することができる拡張を備え、入出力端子5は再構成可能な論理デバイスと外部回路間の不定値の送受信を行うため、不定値を伝搬することができる拡張端子を備える。
The
ここで、追加される不定値機能は物理的な1ビット線の追加であっても、多値による論理的な1ビット追加であっても良い(ビットの追加に関する記述について、以下同じ)。 Here, the indefinite value function to be added may be the addition of a physical 1-bit line or the addition of a logical 1-bit by multiple values (the same applies to the description regarding the addition of bits).
また制御器6は、再構成可能な論理デバイスを構成するレジスタまたはメモリなどの記憶素子2に特定値を読み書きする機能の他に、不定値の読み書きをする機能を有する。またこの制御器6は再構成可能な論理デバイス1の各構成要素2〜5から不定値発生ないし伝搬の信号を受け取り、不定値の検出を行う機能を有する。
Further, the controller 6 has a function of reading / writing an indefinite value in addition to a function of reading / writing a specific value to / from a
この再構成可能な論理デバイス1の外部には、デバッグ装置が備えられる。再構成可能な論理デバイス1とデバッグ装置とを合わせて、再構成可能な論理デバイスのデバッグシステムと呼ぶ。
A debugging device is provided outside the
図8は、入出力装置および再構成可能な論理デバイスに接続可能なインタフェースを備えた計算機とソフトウェアとからなるデバッグ装置を示す図である。 FIG. 8 is a diagram showing a debugging device comprising a computer and software having an interface connectable to an input / output device and a reconfigurable logic device.
デバッグ装置41は、計算機42およびソフトウェア(非図示)を備え、計算機42に備えるインタフェース装置45を介して、再構成可能な論理デバイス1の制御器6と通信を行い、デバッグに必要な情報を設定し、取得し、生成し、表示する。
The
図2は不定値拡張を行ったレジスタ7を示す。書き込み、読み出し、ライト・イネーブル(WE)端子にそれぞれ不定値用のポートを追加し、かつ、不定値を保持(記録)できるよう内部に記憶素子を追加する。クロック、リセット等の同期回路で自明な信号線は省略した。以下の図に対しても同様に自明な信号線を省略する。
FIG. 2 shows the
図中のnビットのnは1以上の整数であり、例えばn=8の場合は8ビットレジスタに対して、不定値用の情報を1ビット拡張することを示している。書き込み端子8および読み出し端子10それぞれに対して不定値拡張用の端子9および11を追加する。また、WE(Write Enable)端子12はこの1ビットに対して、そのまま不定値拡張用の端子13を1ビット拡張する。なお、不定値拡張の対象がレジスタではなくフリップフロップ(FF)の場合、WE端子12は不要である。アドレスが特定値である場合は特定値および不定値の書き込みおよび読み出しが可能であるが、アドレスが不定値である場合は、書き込みは発生せず、読み出しでは不定値が読み出される。また、WE端子12への入力が不定値の場合は、書き込みは行われない。
In the figure, n of n bits is an integer of 1 or more. For example, when n = 8, it indicates that information for an indefinite value is extended by 1 bit for an 8-bit register. Terminals 9 and 11 for indefinite value expansion are added to the write terminal 8 and the
図3は不定値拡張を行ったメモリ14を示す。書き込みデータ、読み出しデータ、アドレス、ライト・イネーブル(WE)端子にそれぞれ不定値用のポートを追加し、かつ、不定値を保持できるよう内部に記憶素子を追加する。
FIG. 3 shows the
図中のmおよびnはそれぞれ1以上の整数であり、例えば、m=n=8の場合は、メモリの8ビット毎に不定値を示す1ビット分の記憶領域を拡張することを示している。書き込みデータ、アドレスデータ、読み出しデータのそれぞれの端子15、17、19に対して不定値拡張用の端子16、18、20を追加する。また、WE端子21はこの1ビットに対して、そのまま不定値拡張用の端子22を1ビット拡張する。
M and n in the figure are integers of 1 or more, respectively. For example, when m = n = 8, it indicates that the storage area for 1 bit indicating an indefinite value is expanded for every 8 bits of the memory. . Indefinite
図4は不定値拡張を行ったALU(Arithmetic Logic Unit、算術論理演算装置)23を示す。入力p、入力qと出力r端子にそれぞれ不定値用のポートを追加し、かつ、不定値を含む演算機能をALU内部に追加してある。ALUがセレクタ(SELECTOR)の場合は、セレクト端子に不定値用のポートを追加する。図中のnは1以上の整数であり、例えばn=8の場合は、2入力(端子24、26)かつ1出力(端子28)で演算器の粒度が8ビットであり、不定値拡張を含む入力(端子24、25、26、27)を受け、不定値を考慮した演算を行い、不定値を含む演算結果を出力(端子28、29)する。ALU23が入力のどちらかを選択し出力するセレクタ(SELECTOR)の場合は、セレクタ値(制御値)を受ける端子30を持つため、この不定値拡張(1ビット)に対して、不定値拡張用の端子31を1ビット拡張する。
FIG. 4 shows an ALU (arithmetic logic unit) 23 that has been expanded with indefinite values. Ports for indefinite values are added to the input p, input q and output r terminals, respectively, and an arithmetic function including indeterminate values is added in the ALU. If the ALU is a selector, a port for an indefinite value is added to the select terminal. In the figure, n is an integer equal to or greater than 1. For example, when n = 8, the arithmetic unit granularity is 8 bits with 2 inputs (
図5は不定値を考慮した演算の真理値表を示す。一般に、入力のいずれか1つが不定値であった場合、演算結果、すなわち出力は不定値となる。但し、ANDやORなどの論理演算およびセレクタでは入力のいずれかが不定値であっても出力が特定値となる場合がある。一般に、多入力1出力の演算では入力のいずれか1つに不定値Xが含まれる場合、出力は不定値Xとなる。ただし、AND、ORなどの論理演算やセレクタでは入力のいずれか1つが不定値Xであっても出力値が特定される場合がある。例えば論理積(AND)の場合は入力端子のいずれか1つがゼロであれば出力もゼロとなる。したがって、この場合に限り、入力端子の何れかが不定値Xであっても出力がゼロに特定される。論理和(OR)の場合は入力のいずれか1つのビットが全て1であれば出力のビットも全て1となる。したがって、この場合に限り、入力端子のいずれかに不定値Xが含まれる場合であっても出力のビットは全て1に特定される。否定(NOT)は、入力が不定値Xであれば出力も不定値Xとなる。2入力1出力セレクタの場合はセレクト信号が特定値であれば、選択されない方の入力が不定値Xであっても出力は特定される。セレクト信号が不定値Xである場合、出力は常に不定値Xとなる。 FIG. 5 shows a truth table of an operation considering indefinite values. Generally, when any one of the inputs is an indefinite value, the calculation result, that is, the output becomes an indefinite value. However, in a logical operation such as AND or OR and a selector, the output may be a specific value even if any of the inputs is an indefinite value. In general, in an operation with multiple inputs and one output, if an indefinite value X is included in any one of the inputs, the output becomes the indefinite value X. However, in the case of logical operations such as AND and OR and selectors, the output value may be specified even if one of the inputs is an indefinite value X. For example, in the case of logical product (AND), if any one of the input terminals is zero, the output is zero. Therefore, only in this case, even if any of the input terminals is an indefinite value X, the output is specified as zero. In the case of logical sum (OR), if any one bit of the input is all 1, the output bits are all 1. Therefore, only in this case, even if the indefinite value X is included in any of the input terminals, the output bits are all specified as 1. When the input is an indefinite value X, the output is also an indefinite value X. In the case of the 2-input 1-output selector, if the select signal is a specific value, the output is specified even if the unselected input is the indefinite value X. When the select signal is an indefinite value X, the output is always an indefinite value X.
図6は不定値を考慮したスイッチの一例を示す。図中のスラッシュ付きの線33は従来の信号線であり、スラッシュ無しの線34は不定値用の信号線である。雲状の部分は回路網32を示す。入力端子が非接続(NC)の信号線35に対しては、不定値用信号線36に不定値を設定する。つまり、再構成可能な論理デバイスの断線した信号線35には不定値が設定され、配線を通じて不定値が伝搬する。
FIG. 6 shows an example of a switch considering an indefinite value. A
図7は既存リソースと不定値機能を共有する一例を示す。既存リソースとして、レジスタ7やメモリ14にはパリティビット37が、ALU23にはパリティビット38の再計算を行う機能がある場合、レジスタ7やメモリ14のパリティビット37は排他的に不定値の保持用途にも使用できる。また、不定値を考慮しない通常モードおよび不定値を考慮するデバッグモードのモードを定義し、モード切り替えスイッチ40によるモードの切り替えに連動して不定値演算を行う機能を組み込むことにより、パリティビット38と不定値保持ビット39の間で配線を共有することが可能となり、オーバーヘッドを最小にしつつ不定値演算機能を追加することできる。
FIG. 7 shows an example of sharing an indefinite value function with an existing resource. As an existing resource, when the
このモードの切り替えは図1に示す制御器6により制御される。図7には、既存リソースがパリティの場合を示したが、既存リソースはECC(Error Checking and Correcting)等の故障検出機能であっても良い。 This mode switching is controlled by the controller 6 shown in FIG. Although FIG. 7 shows the case where the existing resource is parity, the existing resource may have a failure detection function such as ECC (Error Checking and Correcting).
図8はデバッグ装置41を示す。デバッグ装置41は計算機42と、入力装置43と、出力装置44とを備える。計算機42は再構成可能な論理デバイス1に接続可能なインタフェース装置45を備える。また、計算機42上でデバッグソフトウェアが動作する。
FIG. 8 shows the
再構成可能な論理デバイスは、ユーザ回路を構成情報として設定することにより機能する。図1を参照すると、実施例1の再構成可能な論理デバイス1において、構成情報の書き込み前に、全てのレジスタやメモリなどの記憶素子2の内容を不定値で埋め、また、全てのスイッチ4を非接続の設定にして、非接続部分は不定値となるように不定値設定を行う。
A reconfigurable logic device functions by setting a user circuit as configuration information. Referring to FIG. 1, in the
この不定値設定動作は再構成可能な論理デバイス1のリセット動作に組み込まれていても良いし、図8を参照して、再構成可能な論理デバイスのデバッグ装置41の機能として埋め込まれていても良い。
This indefinite value setting operation may be incorporated in the reset operation of the
なお、不定値設定動作は構成情報の書き込み後に任意の部分だけ不定値となるように行ってもよい。この段階で構成情報を未設定の記憶素子2や断線状態にある配線3には不定値が設定されている。
Note that the indefinite value setting operation may be performed so that only an arbitrary portion has an indefinite value after the configuration information is written. At this stage, indefinite values are set for the
次に、ユーザ回路を動作させる。 Next, the user circuit is operated.
ユーザ回路の構成情報にバグが無い場合、再構成可能な論理デバイス1に設定されている不定値は利用されず、配線3を伝って伝搬しない。一方、構成情報にバグが含まれる場合、不定値が伝搬し得る。
When there is no bug in the configuration information of the user circuit, the indefinite value set in the
PE2に配置されたメモリおよび演算器によって、不定値が読み出され、演算結果が不定値となった場合、その情報は再構成可能な論理デバイス1の制御器6に集められ、不定値の発生とその発生箇所が検出される。
When the indeterminate value is read by the memory and the arithmetic unit arranged in the
図8を参照すると、不定値の発生や発生箇所の情報は、再構成可能な論理デバイス1の外部に接続されたデバッグ装置41へ、計算機42のインタフェース装置45を介して送信され、出力装置44によって回路設計者に表示される。
Referring to FIG. 8, information on the occurrence of an indefinite value and the occurrence location is transmitted to the
これにより回路設計者は回路の問題箇所、すなわち、構成情報に含まれるバグを検出することが可能となる。 As a result, the circuit designer can detect a problem portion of the circuit, that is, a bug included in the configuration information.
実施例1では構成情報の未設定部分に不定値が設定されるようにすることで、バグを検出することを可能にした。実施例2では、注目する特定の部分に不定値を設定し、それ以外の部分に特定値を設定した後、不定値の伝搬を解析することで、不定値の伝搬範囲によって、バグの影響する範囲を特定することが可能となる。 In the first embodiment, a bug can be detected by setting an undefined value in an unset portion of the configuration information. In the second embodiment, an indefinite value is set in a specific part of interest, a specific value is set in the other part, and then the propagation of the indeterminate value is analyzed, so that a bug affects the propagation range of the indefinite value. The range can be specified.
はじめに、ユーザ回路の構成情報を含む全ての構成情報に特定値を設定する。次に、回路構造上の影響範囲を調べたい特定の構成要素に不定値を設定する。 First, specific values are set for all the configuration information including the configuration information of the user circuit. Next, an indefinite value is set for a specific component whose influence range on the circuit structure is to be examined.
その後、特定のサイクルに亘って、ユーザ回路を動作させる。 Thereafter, the user circuit is operated over a specific cycle.
すると上記注目点を起点としたコーン状に不定値が伝搬する。図1を参照すると、この情報は再構成可能な論理デバイス1の制御器6に集められる。さらに、図8を参照すると、制御器6に集められた情報は、外部に接続されたデバッグ装置41へと計算機42のインタフェース装置45を介して転送され、デバッグ装置41の出力装置44によって回路設計者に提示される。
Then, an indefinite value propagates in a cone shape starting from the attention point. Referring to FIG. 1, this information is collected in the controller 6 of the
これにより回路設計者は、特定の構成要素に含まれるバグの影響範囲を把握すると共にデバッグの補助情報として用いることが出来る。 Thereby, the circuit designer can grasp the influence range of the bug included in the specific component and can use it as auxiliary information for debugging.
1 再構成可能な論理デバイス
2 記憶素子および演算器からなるプロセッシング・エレメント(PE)
3 配線
4 スイッチ
5 入出力端子
6 制御器
7 レジスタ
8、15 書き込み端子
9、11、13、16、18、20、22、25、27、29、31 不定値拡張用の端子
10、19 読み出し端子
12、21 WE端子
14 メモリ
17 アドレス端子
23 ALU(演算器)
24、26 入力端子
28 出力端子
30 セレクト端子
32 回路網
33、34、35、36 信号線
37 パリティ(不定値保持)ビット
38 パリティビット
39 不定値保持ビット
40 モード切り替えスイッチ(SW)
41 デバッグ装置
42 計算機
43 入力装置
44 出力装置
45 インタフェース装置
1
3 Wiring 4 Switch 5 Input / output terminal 6
24, 26
41
Claims (21)
前記記憶素子は不定値を保持するように構成され、
前記配線は不定値を伝搬するように構成されたことを特徴とする、再構成可能な論理デバイス。 In a reconfigurable logic device with storage elements and wiring, either registers or memories,
The storage element is configured to hold an indeterminate value;
A reconfigurable logic device, wherein the wiring is configured to propagate an indefinite value.
前記演算器は不定値を含む演算を行うように構成され、
前記配線は不定値を伝搬するように構成されたことを特徴とする、再構成可能な論理デバイス。 In a reconfigurable logic device with a computing unit and wiring,
The arithmetic unit is configured to perform an operation including an indefinite value;
A reconfigurable logic device, wherein the wiring is configured to propagate an indefinite value.
前記スイッチは不定値を伝搬するように構成され、
前記配線は不定値を伝搬するように構成されたことを特徴とする、再構成可能な論理デバイス。 In reconfigurable logic devices with switches and wiring that change the internal configuration,
The switch is configured to propagate an indeterminate value;
A reconfigurable logic device, wherein the wiring is configured to propagate an indefinite value.
前記入出力端子は不定値を伝搬するように構成されたことを特徴とする、再構成可能な論理デバイス。 In a reconfigurable logic device with input / output terminals,
The reconfigurable logic device, wherein the input / output terminal is configured to propagate an indefinite value.
前記再構成可能な論理デバイスを初期化する際、前記記憶素子、前記演算器、前記スイッチ、前記入出力端子のいずれかに不定値を設定するように構成されたデバッグ装置と、
を備えたことを特徴とする再構成可能な論理デバイスのデバッグシステム。 Reconfigurable logic device according to any of claims 1 to 4,
A debugging device configured to set an indefinite value to any of the storage element, the arithmetic unit, the switch, and the input / output terminal when initializing the reconfigurable logic device;
A debug system for a reconfigurable logic device, comprising:
前記再構成可能な論理デバイスへ構成情報を書き込んだ後、前記記憶素子、前記演算器、前記スイッチ、前記入出力端子のいずれかに不定値を設定するように構成されたデバッグ装置と、
を備えたことを特徴とする再構成可能な論理デバイスのデバッグシステム。 Reconfigurable logic device according to any of claims 1 to 4,
A debugging device configured to set an indefinite value to any of the storage element, the arithmetic unit, the switch, and the input / output terminal after writing configuration information to the reconfigurable logic device;
A debug system for a reconfigurable logic device, comprising:
前記制御器から前記デバッグ用の情報を入力するとともにデバッグ用の情報を出力するように構成されたデバッグ装置と、
を備えたことを特徴とする再構成可能な論理デバイスのデバッグシステム。 Reconfigurable logic device according to claim 12,
A debugging device configured to input the debugging information from the controller and output the debugging information;
A debug system for a reconfigurable logic device, comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007008255A JP2008176485A (en) | 2007-01-17 | 2007-01-17 | Reconfigurable logical device and its debugging system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007008255A JP2008176485A (en) | 2007-01-17 | 2007-01-17 | Reconfigurable logical device and its debugging system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008176485A true JP2008176485A (en) | 2008-07-31 |
Family
ID=39703469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007008255A Withdrawn JP2008176485A (en) | 2007-01-17 | 2007-01-17 | Reconfigurable logical device and its debugging system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008176485A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540888A (en) * | 2020-12-18 | 2021-03-23 | 清华大学 | Debugging method and device for large-scale reconfigurable processing unit array |
-
2007
- 2007-01-17 JP JP2007008255A patent/JP2008176485A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540888A (en) * | 2020-12-18 | 2021-03-23 | 清华大学 | Debugging method and device for large-scale reconfigurable processing unit array |
CN112540888B (en) * | 2020-12-18 | 2022-08-12 | 清华大学 | Debugging method and device for large-scale reconfigurable processing unit array |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102681969B1 (en) | System-on-chip for at-speed test of logic circuit and operating method thereof | |
JP6530358B2 (en) | How to change the configuration of programmable logic chips | |
US20140173343A1 (en) | Method and Apparatus For Supporting A Unified Debug Environment | |
JP5236908B2 (en) | Emulation system | |
US9529686B1 (en) | Error protection for bus interconnect circuits | |
US8724483B2 (en) | Loopback configuration for bi-directional interfaces | |
US8626965B2 (en) | Using a DMA engine to automatically validate DMA data paths | |
US7228513B2 (en) | Circuit operation verification device and method | |
US20070195716A1 (en) | Ring bus in an emulation environment | |
CN114548027A (en) | Method for tracking signal in verification system, electronic device and storage medium | |
CN117910398A (en) | Method for simulating logic system design, electronic device and storage medium | |
JP2008176485A (en) | Reconfigurable logical device and its debugging system | |
US10410713B1 (en) | Content addressable memory modeling in emulation and prototyping | |
JP2004212384A (en) | Semiconductor integrated circuit device | |
US9857423B2 (en) | Debugging circuit, debugger device, and debugging method | |
US20210173989A1 (en) | Simulation signal viewing method and system for digital product | |
US8352239B2 (en) | Emulator interface device and method thereof | |
JP2007058450A (en) | Semiconductor integrated circuit | |
JP5036448B2 (en) | FIFO memory reading method in in-circuit emulator and in-circuit emulator for one-chip microcomputer with built-in FIFO memory | |
JP2004199425A (en) | Emulation method and device | |
JP4526985B2 (en) | Test system | |
JP4688724B2 (en) | Functional block test circuit and integrated circuit device | |
CN118643771A (en) | Method, electronic device and storage medium for debugging logic system design | |
CN116593876A (en) | Test method, field programmable gate array, upper computer and test system | |
CN116841697A (en) | Method for processing MMIO request, electronic device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20100406 |