JP2011191893A - Logic verification device for divisionally mounted logic circuit - Google Patents

Logic verification device for divisionally mounted logic circuit Download PDF

Info

Publication number
JP2011191893A
JP2011191893A JP2010056014A JP2010056014A JP2011191893A JP 2011191893 A JP2011191893 A JP 2011191893A JP 2010056014 A JP2010056014 A JP 2010056014A JP 2010056014 A JP2010056014 A JP 2010056014A JP 2011191893 A JP2011191893 A JP 2011191893A
Authority
JP
Japan
Prior art keywords
logic
transfer
signal
clock
time division
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
Application number
JP2010056014A
Other languages
Japanese (ja)
Inventor
Ryoichi Irisawa
入澤亮一
Yoshito Mizogami
溝上良人
Takeshi Ominato
毅 大湊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Information and Telecommunication Engineering Ltd
Original Assignee
Hitachi Information and Communication Engineering Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Information and Communication Engineering Ltd filed Critical Hitachi Information and Communication Engineering Ltd
Priority to JP2010056014A priority Critical patent/JP2011191893A/en
Publication of JP2011191893A publication Critical patent/JP2011191893A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a logic verification device allowing correct logic operation even if data of transfer cycle delay are present between FPGAs (Field Programmable Gate Arrays) when mounting large-scale logic in the plurality of FPGAs and performing verification at high speed. <P>SOLUTION: This logic verification device uses parallel-serial conversion, and adopts a time division transfer method when transmitting/receiving signals from a plurality of signal lines through one physical line. At that time, the logic verification device determines an operation frequency of the large-scale logic based on a signal transfer time on the physical line. Time division transfer sets a data signal or the like wherein a clock signal or a reset signal is excluded from a target of the time division transfer as a transfer target, and the logic verification device operates a clock of the large-scale logic when the time division transfer ends, and reflects transferred data in a register of the large-scale logic. Before and after start timing and end timing of time division data transfer processing, a holding cycle for signal stabilization is allocated, and rising and falling of the clock for the large-scale logic are performed in synchronization with the holding cycles of both ends. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、論理回路の論理検証装置に関するものであり、とりわけ、分割搭載した論理回路の論理を検証する装置に関するものである。   The present invention relates to a logic verification apparatus for a logic circuit, and more particularly to an apparatus for verifying the logic of a separately mounted logic circuit.

ASIC (Application Specific Integrated Circuit) の論理機能検証では一般的にソフトウエア論理シミュレータを用いるが、大規模になると機能検証のための検証項目も多大となり、ソフトウエア論理シミュレータにおける検証項目の消化のための処理時間が膨大となり、開発期間内に検証項目全体を確認することが困難となる。   In general, software logic simulators are used for logic function verification of ASIC (Application Specific Integrated Circuit). However, the verification items for function verification become large when the scale is large. Processing time becomes enormous and it is difficult to confirm the entire verification items within the development period.

そこで、大規模ASICの論理をFPGA(Field Programmable Gate Array) に搭載して高速に検証をおこないたいが、全論理が、ひとつのFPGAに収まるとはかぎらず、数ないし十数個のFPGAに分割搭載した環境で構築せざるをえない。このとき各FPGA間の信号線量が物理ピン数に収まらず、またクロックや、リセットにおいても、各FPGA間で時間的なずれが発生して、FPGA間の同期クロックでの信号転送に矛盾が発生し、動作に不正が生じることがある。   Therefore, I would like to verify the logic of a large-scale ASIC in an FPGA (Field Programmable Gate Array) and perform high-speed verification. However, not all the logic can be contained in one FPGA, but it is divided into several to dozens of FPGAs. It must be built in the installed environment. At this time, the signal dose between the FPGAs does not fit in the number of physical pins, and even in the clock and reset, a time lag occurs between the FPGAs, and inconsistency occurs in the signal transfer with the synchronous clock between the FPGAs. However, the operation may be illegal.

本発明の目的は、該当論理で用いるクロックより高速の転送クロックを利用した、基板上あるいはケーブルを介した基板間に存在する、複数のFPGAまたはASIC間の同期接続手法を提供することである。   An object of the present invention is to provide a synchronous connection method between a plurality of FPGAs or ASICs that exist on a board or between boards via a cable, using a transfer clock faster than a clock used in the corresponding logic.

特開平11−331282号公報JP 11-33282 A 特開2001−34648号公報JP 2001-34648 A

特許文献1に記載された発明は、ロック時間で装置の状態が不安定になり、かつチップ面積も大きくなるPLL (Phase Locked Loop) 回路を用いないデータ転送方法であり、データ信号とクロック信号を並行送出して、受信側での受信クロック生成をなくす手段である。この手段では、信号転送用としてクロック信号線が必要となり、データ幅が多量となると1本のクロック線ではデータ信号のセットアップ時間、またはホールド時間が確保できない状態が発生する。   The invention described in Patent Document 1 is a data transfer method that does not use a PLL (Phase Locked Loop) circuit in which the state of the device becomes unstable with a lock time and the chip area becomes large. It is means for sending out in parallel and eliminating reception clock generation on the reception side. This means requires a clock signal line for signal transfer. If the data width becomes large, a state in which the setup time or hold time of the data signal cannot be secured with one clock line occurs.

そこで、クロック信号線を増加すると、こんどはASICやFPGA間の物理ピン数で接続できる信号線数がクロック線に圧迫され、転送信号数が削減されることとなる。   Therefore, when the number of clock signal lines is increased, the number of signal lines that can be connected by the number of physical pins between the ASIC and the FPGA is pressed against the clock lines, and the number of transfer signals is reduced.

また、特許文献1は、転送後の信号線に対し、受信側の論理のクロック信号との同期をどのようにとるかについて記載しておらず、大規模回路の同期論理を分割搭載した場合には、同期論理が異常動作する場合が生じうる。   Further, Patent Document 1 does not describe how to synchronize with the clock signal of the receiving side with respect to the signal line after transfer, and when the synchronization logic of a large-scale circuit is divided and mounted. May occur when the synchronization logic operates abnormally.

一方、特許文献2に記載された発明は、FPGAを用いる論理検証方法に関するものであって、論理検証対象回路のFPGAへのマッピングおよびFPGA間の配線の容易化と配線遅延による信号伝送の遅延の回避と、配線ルートの決定に要する時間の短縮化を図る手段として、対象論理を搭載するFPGA間にパラレルーシリアル変換およびシリアル−パラレル変換論理を組み込み、FPGA間信号線の配線用のスイッチFPGAを搭載して論理回路間の信号伝送を行う手法である。しかし、高速転送後の同期をどのようにとるかについては記載がなく、各FPGAに搭載した論理回路において、実行サイクルが数サイクル遅れてしまう危険がある。   On the other hand, the invention described in Patent Document 2 relates to a logic verification method using an FPGA, in which a logic verification target circuit is mapped to an FPGA, wiring between FPGAs is easy, and signal transmission delay due to wiring delay is reduced. As means for avoiding and shortening the time required for determining the wiring route, a parallel-serial conversion and serial-parallel conversion logic is incorporated between the FPGAs on which the target logic is mounted, and a switch FPGA for wiring between the FPGA signal lines is provided. This is a technique for mounting and transmitting signals between logic circuits. However, there is no description on how to synchronize after high-speed transfer, and there is a risk that the execution cycle is delayed by several cycles in the logic circuit mounted in each FPGA.

この問題への対応策として、各FPGA間のクロックを同期化するため、FPGA間配線の長さを等しくし、かつ共通のFPGAを使用してクロック発生部の遅延を同一化する物理的な設計を施し、FPGA間の遅延時間を考慮して論理回路に与えるクロックの周波数を調整し、全FPGAのPLLによるクロック発生が安定したのちに、通常の論理動作を開始する方法が考えられる。   As a countermeasure to this problem, in order to synchronize clocks between the FPGAs, a physical design in which the lengths of the wirings between the FPGAs are made equal and the delays of the clock generators are made the same using a common FPGA. The clock frequency applied to the logic circuit is adjusted in consideration of the delay time between the FPGAs, and the normal logic operation is started after the clock generation by the PLL of all the FPGAs is stabilized.

しかしながら、この方法では、FPGA搭載基板においてFPGA間のクロック供給用配線の等長配線処理が必要となり、また、同じFPGAを使用してもクロック生成部位に若干の遅延差が生じて、近距離のFPGA間転送においてミニマムディレイ違反などによる転送エラーが発生することがある。   However, in this method, it is necessary to perform equal-length wiring processing of clock supply wiring between FPGAs on the FPGA mounting board, and even if the same FPGA is used, a slight delay difference occurs in the clock generation part, and a short distance is required. A transfer error due to a minimum delay violation may occur in the transfer between FPGAs.

本発明は、このような実情に鑑みてなされたものであり、転送サイクル遅れのデータが存在しても正しい論理動作を実現できる論理検証装置を提供することを目的とする。   The present invention has been made in view of such a situation, and an object of the present invention is to provide a logic verification device that can realize a correct logic operation even if data with a transfer cycle delay exists.

大規模ASIC論理を分割して複数のFPGAに搭載すると、各FPGAに搭載した論理間の信号線がFPGAの物理ピン数を大幅に超過するため、転送手段としてパラレルーシリアル化論理を用いて、複数の信号線を1本の物理線上で送信、受信する時分割転送方法を用いる。このときの、物理線上の信号転送時間により、検証対象の大規模ASIC論理の動作周波数を決めることができる。   If a large-scale ASIC logic is divided and mounted on a plurality of FPGAs, the signal lines between the logics mounted on each FPGA greatly exceed the number of physical pins of the FPGA. A time division transfer method for transmitting and receiving a plurality of signal lines on one physical line is used. The operating frequency of the large-scale ASIC logic to be verified can be determined by the signal transfer time on the physical line at this time.

時分割転送においては、信号値を保持するフリップフロップ等に直接の影響を与えるクロック信号やリセット信号を時分割転送の対象から除外した、データ信号等を転送対象とし、時分割転送が終了した時にASIC論理のクロックを動作させ、転送したデータを本来のASIC論理のレジスタ (フリップフロップ) に反映させる。しかしながら、FPGA搭載論理の状態によっては、FPGA間の転送データを1クロック内で転送できないことがある。そこで、時分割データ転送処理の開始タイミングおよび終了タイミングの前後に、信号安定化のための保持サイクルを割りあて、ASIC論理用クロックの立ち上げおよび立ち下げは、両端の保持サイクルに同期して、おこなう。このようにすれば、時分割転送サイクル遅れのデータが存在しても正しく論理動作する論理検証装置を提供できる。   In time-division transfer, when a clock signal or reset signal that directly affects the flip-flop that holds the signal value is excluded from the time-division transfer target, the data signal is the transfer target, and when time-division transfer ends The ASIC logic clock is operated, and the transferred data is reflected in the original ASIC logic register (flip-flop). However, transfer data between FPGAs may not be transferred within one clock depending on the state of the FPGA-mounted logic. Therefore, a holding cycle for signal stabilization is assigned before and after the start timing and end timing of the time division data transfer processing, and the rising and falling of the ASIC logic clock are synchronized with the holding cycles at both ends. Do it. In this way, it is possible to provide a logic verification device that operates correctly even when data with a time division transfer cycle delay exists.

複数FPGAを用いる環境の例として、入出力ピン800本を持つFPGAを4個搭載した基板では、200本を3つのFPGA間との信号線、200本を外部入出力信号線として利用できる。   As an example of an environment using a plurality of FPGAs, on a board on which four FPGAs having 800 input / output pins are mounted, 200 can be used as signal lines between three FPGAs and 200 can be used as external input / output signal lines.

ASIC論理を分割した場合のFPGA間信号線が4000本となった場合は、各FPGAのクロック線やリセット線など、直接フリップフロップを制御する制御信号を10本ていど用いるとすれば、3990/190=21であり、21信号線を1本のFPGAピンで信号送出すればよいことになる。21個のデータをシリアル転送するためには数ビットのシリアル線制御データを含めると24個以上の信号転送時間が必要となり、このときの論理動作は、FPGA間の信号転送処理よりも24倍の時間を要する。たとえば、100MHzでFPGA間転送処理を実現した場合、ASICの論理動作周波数は4.16MHzとなる。ここで、信号安定化のための保持時間として1クロックを割りあて、転送サイクルを25倍としたときのASIC論理動作周波数は4MHzとなり、96%の性能にダウンするが、論理動作の保証が容易であり、FPGA環境の構築も、たやすくなる。   If there are 4000 inter-FPGA signal lines when the ASIC logic is divided, if 10 control signals for directly controlling flip-flops such as clock lines and reset lines of each FPGA are used, 3990 / Since 190 = 21, 21 signal lines need only be sent out by one FPGA pin. In order to serially transfer 21 pieces of data, if several bits of serial line control data are included, 24 or more signal transfer times are required, and the logical operation at this time is 24 times the signal transfer processing between FPGAs. It takes time. For example, when the inter-FPGA transfer process is realized at 100 MHz, the logic operating frequency of the ASIC is 4.16 MHz. Here, when 1 clock is allocated as the holding time for signal stabilization and the transfer cycle is 25 times, the ASIC logic operation frequency becomes 4 MHz, which reduces to 96% performance, but the logic operation is easily guaranteed. Therefore, it is easy to construct an FPGA environment.

請求項1にかかる論理検証装置の構成は、検証対象の論理回路を複数個の論理ブロックに分割し、FPGAなど複数の半導体チップ上に当該複数個の論理ブロックを組み込んで、当該検証対象の論理回路の論理検証をおこなう装置であって、
上記半導体チップの物理ピン数を超える複数の信号線からの信号を転送する手段として、当該複数の信号線からの信号を1本の物理ピンで伝送可能とするパラレル−シリアル変換を用いた時分割転送論理と、
上記複数個の論理ブロック間の信号線の本数と、上記半導体チップの物理ピン数とから算出される、最大信号転送数量をもとに、時分割転送のためのクロックの数を求める論理と、
上記複数の半導体チップの、すべてから等距離に配置された源振クロック供給源とを備え、
パワーオン後に上記半導体チップのクロック生成が安定するまでは時分割転送を停止し、安定した時点で上記半導体チップのひとつから、他の上記半導体チップに対して時分割転送開始の信号を伝送し、
上記検証対象の論理回路で用いるクロックの変動を、時分割転送が終了した時点でおこなうことを特長とする。
According to a first aspect of the present invention, a logic circuit to be verified is divided into a plurality of logic blocks, and the plurality of logic blocks are incorporated on a plurality of semiconductor chips such as an FPGA, thereby A device that performs logic verification of a circuit,
As means for transferring signals from a plurality of signal lines exceeding the number of physical pins of the semiconductor chip, time-division using parallel-serial conversion that allows signals from the plurality of signal lines to be transmitted by one physical pin Transfer logic and
Logic for obtaining the number of clocks for time division transfer based on the maximum signal transfer quantity calculated from the number of signal lines between the plurality of logic blocks and the number of physical pins of the semiconductor chip;
A source oscillation clock supply source arranged equidistant from all of the plurality of semiconductor chips,
The time division transfer is stopped until the clock generation of the semiconductor chip is stabilized after the power is turned on, and a signal for starting the time division transfer is transmitted from one of the semiconductor chips to the other semiconductor chip at a stable time,
It is characterized in that the clock used in the logic circuit to be verified is changed when the time division transfer is completed.

請求項1の論理検証装置によれば、各FPGAに分割した論理回路へ、それぞれクロック信号を供給した場合でも、位相ずれによる影響が生じない。これは、パラレル−シリアル変換を経て時分割転送されたデータが、すべての論理回路へ到達した後、各レジスタのクロック制御をOFFにして転送データの取り込みを停止し、それから論理回路の動作用クロックを動作させるためである。   According to the logic verification device of the first aspect, even when a clock signal is supplied to each logic circuit divided into each FPGA, there is no influence due to the phase shift. This is because the time-division-transferred data after parallel-serial conversion reaches all the logic circuits, then the clock control of each register is turned OFF to stop transfer data transfer, and then the operation clock for the logic circuit Is to operate.

このように、請求項1の発明では、論理回路の動作用クロックと、時分割転送用のクロックとを、切り分けて用いる。論理回路の動作用クロックは、FPGA間に信号を転送するための最大サイクル数と、信号保持サイクル数を加えた間隔で発生する。時分割転送処理は、まず論理回路の動作用クロックの立ち上げや、立ち下げをおこなって、時分割転送処理の開始を指示する。最初のサイクルで、論理信号値は、転送元のレジスタに取り込まれ、同時に転送先のレジスタがクリアされる。続くサイクルで、データが転送元から出力され、転送先へ送られる。   Thus, in the first aspect of the invention, the clock for operating the logic circuit and the clock for time division transfer are used separately. The operation clock of the logic circuit is generated at an interval obtained by adding the maximum number of cycles for transferring a signal between FPGAs and the number of signal holding cycles. In the time division transfer process, first, the operation clock of the logic circuit is raised or lowered to instruct the start of the time division transfer process. In the first cycle, the logic signal value is taken into the transfer source register, and at the same time, the transfer destination register is cleared. In the following cycle, data is output from the transfer source and sent to the transfer destination.

請求項2にかかる論理検証装置の構成は、請求項1に記載の論理検証装置において、
時分割転送のときに転送信号の正当性をチェックし、転送エラーが発生した場合はエラーとなった時分割転送の部位を報告する手段と、
クロック信号供給を停止する手段とを具備することを特長とする。
The configuration of the logic verification device according to claim 2 is the logic verification device according to claim 1,
A means for checking the legitimacy of the transfer signal during time division transfer and reporting the portion of the time division transfer that resulted in an error if a transfer error occurred;
And a means for stopping the supply of the clock signal.

請求項2の論理検証装置によれば、転送エラー信号にもとづいて、論理用クロックおよび転送用クロックの両者を、停止させることができ、エラーの原因追及が容易となる。さらに、この方式によれば、FPGA間の信号転送をせずに、論理クロックの挙動時の信号安定を保証できるため、動作不具合を発生しない。   According to the logic verification device of the second aspect, both the logic clock and the transfer clock can be stopped based on the transfer error signal, and the cause of the error can be easily pursued. Furthermore, according to this method, signal stability during the behavior of the logical clock can be ensured without transferring signals between FPGAs, so that no malfunction occurs.

本発明を実施すれば、論理回路のクロック信号線と、FPGA間転送のデータ信号線との間において、フリップフロップ動作に充分なセットアップ時間およびホールド時間を容易に確保でき、検証装置の立上げ調整におけるFPGA間の信号転送が簡易となり、検証作業が円滑に進められる結果、検証期間の短縮、および検証コストの削減ができる。   By implementing the present invention, it is possible to easily secure a setup time and a hold time sufficient for a flip-flop operation between a clock signal line of a logic circuit and a data signal line for transfer between FPGAs, and start-up adjustment of a verification device As a result, signal transfer between FPGAs in the system is simplified and the verification operation is smoothly performed. As a result, a verification period can be shortened and verification cost can be reduced.

また、本発明を実施すれば、検証装置用のボードを設計する段階において、フリップフロップ動作に充分なセットアップ時間およびホールド時間を確保するための、特別な配線が不要となるため、製造コストを削減できる。   In addition, if the present invention is implemented, the manufacturing cost is reduced because no special wiring is required to ensure sufficient setup time and hold time for flip-flop operation at the stage of designing a board for a verification device. it can.

本発明にかかる論理検証装置の概略図Schematic diagram of a logic verification apparatus according to the present invention 本発明にかかる論理検証装置における検証構成の概略図Schematic diagram of verification configuration in logic verification device according to the present invention 論理を3分割した場合のクロック接続の概略図Schematic diagram of clock connection when logic is divided into three クロック生成機構の概略図Schematic diagram of clock generation mechanism 時分割転送論理部の概略図Schematic diagram of time division transfer logic 時分割転送処理のタイムチャートTime chart of time division transfer processing 時分割転送チェック論理の概略図Schematic of time division transfer check logic 転送エラーが生じた場合の時分割転送処理のタイムチャートTime division transfer processing time chart when a transfer error occurs

以下、添付図面を参照しながら、本発明にかかる、分割搭載した論理回路の論理検証装置を実施するための最良の形態を詳細に説明する。図1〜図8は、本発明の実施の形態を例示する図であり、これらの図において、同一の符号を付した部分は同一物を表わし、基本的な構成及び動作は同様であるものとする。   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The best mode for carrying out a logic verification apparatus for a separately mounted logic circuit according to the present invention will be described below in detail with reference to the accompanying drawings. 1 to 8 are diagrams illustrating embodiments of the present invention. In these drawings, the same reference numerals denote the same components, and the basic configuration and operation are the same. To do.

本発明の実施例として、半導体にFPGAを用いた方法につき、図を用いて詳細に説明する。図1は、検証対象装置の概略を示す。図1で示すように、検証対象装置全体100は論理1、論理2、論理3、論理4のように、一般的に複数の論理ブロックから構成される。クロック生成回路101で生成したクロックは、装置全体の順序回路を動作させ、装置への入力信号102から入力された信号は、論理1で処理され、その結果が論理2へ信号線103から送出される。また論理2は、信号線103からの入力にもとづき、所定の動作をおこなった結果を、信号線104から論理3へ送出する。同様に論理3は、信号線104からの入力にもとづき、所定の動作をおこなった結果を、信号線105から論理4へ送出し、論理4は、信号線105からの入力にもとづき、所定の動作をおこなった結果を、検証対象装置全体100からの出力信号106として送出する。   As an embodiment of the present invention, a method using an FPGA for a semiconductor will be described in detail with reference to the drawings. FIG. 1 shows an outline of a verification target device. As shown in FIG. 1, the entire verification target device 100 is generally composed of a plurality of logic blocks such as logic 1, logic 2, logic 3, and logic 4. The clock generated by the clock generation circuit 101 operates the sequential circuit of the entire device. The signal input from the input signal 102 to the device is processed by logic 1, and the result is sent to the logic 2 from the signal line 103. The The logic 2 sends the result of performing a predetermined operation based on the input from the signal line 103 to the logic 3 from the signal line 104. Similarly, the logic 3 sends a result of performing a predetermined operation based on the input from the signal line 104 to the logic 4 from the signal line 105, and the logic 4 performs a predetermined operation based on the input from the signal line 105. The result of the above is sent as an output signal 106 from the entire verification target device 100.

このような論理構成をFPGA等に搭載する場合、単一のFPGAでは、すべてを搭載できないことが多く、複数のFPGA等に、対象の論理回路を分割して搭載する必要がある。   When such a logical configuration is mounted on an FPGA or the like, it is often impossible to mount all on a single FPGA, and it is necessary to divide and mount the target logic circuit on a plurality of FPGAs or the like.

図2は、図1の論理構成を、FPGA1(201)およびFPGA2(202)の、2個のFPGAに分割して搭載した装置の、検証構成の概略図を示す。FPGA間の信号伝播には、遅延がともなうため、一つのFPGA内のクロック生成回路で生成したクロック信号を、別のFPGAに送出して利用すると、信号遅延によって論理動作を同期化することが、むずかしくなる。そこで、複数のFPGAにまたがる論理動作を同期化するために、FPGA1(201)とFPGA2(202)へ、それぞれにクロック生成回路203および204を設け、発振器等からの源振クロック200で、各FPGA内のクロック生成回路203および204を駆動し、それぞれの順序回路にクロック信号を与える。   FIG. 2 shows a schematic diagram of a verification configuration of an apparatus in which the logical configuration of FIG. 1 is divided into two FPGAs, FPGA 1 (201) and FPGA 2 (202). Since signal propagation between FPGAs has a delay, when a clock signal generated by a clock generation circuit in one FPGA is sent to another FPGA and used, the logic operation is synchronized by the signal delay. It becomes difficult. Therefore, in order to synchronize the logic operation across a plurality of FPGAs, clock generation circuits 203 and 204 are provided in FPGA 1 (201) and FPGA 2 (202), respectively, and each FPGA is generated by a source clock 200 from an oscillator or the like. The clock generation circuits 203 and 204 are driven, and a clock signal is supplied to each sequential circuit.

クロックの同期化手段は、つぎのとおりである。各FPGA内のクロック生成回路203および204で用いるPLL等が、源振クロックで安定動作を開始したことを示す信号Lock1およびLock2が、全FPGAの安定動作を監視する同期リセット生成回路205に報告される。すると、同期リセット生成回路205から、同期リセット206が生成されて、全FPGAに伝達され、FPGA1(201)のクロック供給回路F1およびF2、ならびにFPGA2(202)のクロック供給回路F3およびF4のゲートが開き、それぞれの論理へクロックが供給される。   The clock synchronization means is as follows. Signals Lock1 and Lock2 indicating that the PLL used in the clock generation circuits 203 and 204 in each FPGA has started the stable operation with the source clock are reported to the synchronous reset generation circuit 205 that monitors the stable operation of all the FPGAs. The Then, a synchronous reset 206 is generated from the synchronous reset generation circuit 205 and transmitted to all the FPGAs, and the clock supply circuits F1 and F2 of the FPGA1 (201) and the gates of the clock supply circuits F3 and F4 of the FPGA2 (202) are connected. Open and clock is supplied to each logic.

一方、FPGA1(201)とFPGA2(202)の間は、物理的なピン数によって接続可能な信号線数が制約される。しかし、検証対象の装置の論理を複数FPGAに搭載すると、各FPGA間で必要となる信号線数は、この制約を超える場合が多い。この対策として、たとえばFPGA1(201)内の論理1から、FPGA2(202)内の論理2に信号を伝える場合、論理1の出力信号線4本を、パラレル−シリアル変換をおこなう時分割論理1でまとめ、1本の転送信号S0で信号転送を行い、FPGA2(202)側では、シリアル−パラレル変換機構などの時分割論理2によって転送信号S0をパラレル化し、信号線103を経由して論理2へ伝える。   On the other hand, between the FPGA1 (201) and the FPGA2 (202), the number of signal lines that can be connected is restricted by the number of physical pins. However, if the logic of the device to be verified is installed in a plurality of FPGAs, the number of signal lines required between the FPGAs often exceeds this restriction. As a countermeasure, for example, when a signal is transmitted from the logic 1 in the FPGA 1 (201) to the logic 2 in the FPGA 2 (202), the four output signal lines of the logic 1 are time-division logic 1 that performs parallel-serial conversion. In summary, signal transfer is performed with one transfer signal S 0, and on the FPGA 2 (202) side, the transfer signal S 0 is parallelized by time-division logic 2 such as a serial-parallel conversion mechanism, and is transferred to logic 2 via the signal line 103. Tell.

同様にFPGA2内の論理3から、FPGA1内の論理4に信号を伝える場合、論理3の出力信号線4本を、パラレル−シリアル変換をおこなう時分割論理3でまとめ、1本の転送信号S1で信号転送を行い、FPGA1側では、シリアル−パラレル変換機構などの時分割論理4によって転送信号S1をパラレル化し、信号線105を経由して論理4へ伝える。   Similarly, when a signal is transmitted from the logic 3 in the FPGA 2 to the logic 4 in the FPGA 1, the four output signal lines of the logic 3 are grouped together by the time division logic 3 that performs parallel-serial conversion, and one transfer signal S 1 is used. Signal transfer is performed, and on the FPGA 1 side, the transfer signal S 1 is parallelized by the time division logic 4 such as a serial-parallel conversion mechanism and transmitted to the logic 4 via the signal line 105.

このとき、論理動作用のクロックC0およびC1が変動を1回する間に、時分割転送用のクロックT0およびT1は、時分割転送を完了させるのに必要なサイクル数の変動が必要である。すなわち時分割転送処理がnサイクル必要であれば、論理動作用クロックの立ち上がりでn回、立下りでn回を必要とするため、クロック生成回路203および204は、C0およびC1の1/2nの周期で、クロックT0およびT1を生成しなくてはならない。   At this time, while the clocks C0 and C1 for logic operation change once, the clocks T0 and T1 for time division transfer need to change in the number of cycles necessary for completing the time division transfer. In other words, if time-division transfer processing is required for n cycles, the clock generation circuits 203 and 204 require 1/2 times of C0 and C1 because n times are required at the rising edge of the logic operation clock and n times at the falling edge. Clocks T0 and T1 must be generated with a period.

図3に、対象論理回路の分割が3個のFPGAとなった場合のクロック接続概略図を示す。図2と同じように、FPGA3にもクロック生成回路を持ち、該当クロック生成回路からのLock3信号を同期化用の同期リセット回路に接続して、すべてのFPGAのクロック生成回路が安定動作に移行したときに、全FPGAの論理用クロック、転送用クロックの駆動を開始することで、装置全体の同期動作を実現する。   FIG. 3 shows a schematic diagram of clock connection when the target logic circuit is divided into three FPGAs. As in FIG. 2, the FPGA 3 also has a clock generation circuit, and the Lock3 signal from the corresponding clock generation circuit is connected to the synchronization reset circuit for synchronization, and the clock generation circuits of all FPGAs have shifted to stable operation. Sometimes, the synchronization operation of the entire apparatus is realized by starting driving the logic clock and transfer clock of all FPGAs.

図4にクロック生成概略図を、図5に時分割転送論理部概略を示す。論理回路の論理用クロックは、各FPGA内のフリップフロップ等の順序回路を駆動する。各フリップフロップへの入力信号値は、ある程度の遅延時間経過後に、出力信号値として伝播するのがふつうである。受信側のFPGAと、送信側FPGAとの物理的距離などにより、転送信号の到達時間は、さらに遅くなる。   FIG. 4 is a schematic diagram of clock generation, and FIG. 5 is a schematic diagram of time division transfer logic. The logic clock of the logic circuit drives a sequential circuit such as a flip-flop in each FPGA. The input signal value to each flip-flop usually propagates as an output signal value after a certain delay time has elapsed. Due to the physical distance between the receiving-side FPGA and the transmitting-side FPGA, the arrival time of the transfer signal is further delayed.

したがって、FPGA間の信号転送においては、論理用クロックの変動後に、ある程度の遅延時間を考慮して転送用の信号値を取り込む必要があり、受信側では、転送信号の到達時間を考慮して、つぎの論理用クロックの変化をおこなう必要がある。   Therefore, in signal transfer between FPGAs, it is necessary to take in a signal value for transfer in consideration of a certain delay time after fluctuation of the logic clock. On the receiving side, in consideration of arrival time of the transfer signal, It is necessary to change the next logic clock.

図4を参照しながら、クロック生成方法について述べる。どのFPGAからも等距離に配置した、発振器等から供給される源振クロックが、FPGA内のPLL410に接続される。PLL410によってクロック出力が安定すると、Lock信号が、同期リセット生成回路へ送られる。あらかじめパラメタ等で設定した最大信号転送数量401と、論理クロック発行Waitサイクル数402(後述)との和が、論理クロック周期403となる。PLL410で生成したクロックで更新するカウンタ411のカウント値412と、論理クロック周期403とが、比較器404で比較され、等しければ、フリップフロップ405にイネーブル信号409が供給されるので、論理用クロックが反転して、転送用クロックが制御される。論理用クロックが変化すると、フリップフロップ405の出力信号と、フリップフロップ407の出力信号との、排他的論理和408によって転送起動(SE)が生成され、図5の時分割転送論理部に出力される。   The clock generation method will be described with reference to FIG. A source clock supplied from an oscillator or the like arranged at an equal distance from any FPGA is connected to the PLL 410 in the FPGA. When the clock output is stabilized by the PLL 410, a Lock signal is sent to the synchronous reset generation circuit. The sum of the maximum signal transfer quantity 401 set in advance by a parameter or the like and the number of logical clock issuance wait cycles 402 (described later) is a logical clock period 403. The count value 412 of the counter 411 updated with the clock generated by the PLL 410 and the logical clock cycle 403 are compared with each other by the comparator 404. If they are equal, the enable signal 409 is supplied to the flip-flop 405. Inverted, the transfer clock is controlled. When the logic clock changes, a transfer start (SE) is generated by the exclusive OR 408 of the output signal of the flip-flop 405 and the output signal of the flip-flop 407, and is output to the time division transfer logic unit in FIG. The

図5の時分割転送論理は、転送用クロックで動作する論理であり、送信側のシフト用フリップフロップのシフト段数と、受信側のシフト用フリップフロップのシフト段数を同一にしている。動作の概要は、つぎのとおりである。セレクタ521において、転送起動(SE)がHighになると、転送用クロックの立ち上がりで、転送開始Bit(High)と、検証対象論理部501内の組合せ回路511の出力信号線やフリップフロップ512の出力信号線を、送信側時分割転送論理502の送信用フリップフロップ522に取り込む。転送起動(SE)がLowになると、転送開始Bit(High)に続いて取り込んだ論理の信号値を、順次に送出信号として、受信側FPGAの受信側時分割転送論理503に送出する。   The time division transfer logic of FIG. 5 is a logic that operates with a transfer clock, and the number of shift stages of the transmission-side shift flip-flop is the same as the number of shift stages of the reception-side shift flip-flop. The outline of the operation is as follows. In the selector 521, when the transfer activation (SE) becomes High, the transfer start bit (High) and the output signal line of the combinational circuit 511 in the verification target logic unit 501 or the output signal of the flip-flop 512 at the rising edge of the transfer clock. The line is taken into the transmission flip-flop 522 of the transmission side time division transfer logic 502. When the transfer activation (SE) becomes Low, the logic signal values fetched following the transfer start bit (High) are sequentially sent to the reception side time division transfer logic 503 of the reception side FPGA as a transmission signal.

受信側FPGAにおける、受信側時分割転送論理503では、受信信号を、順次に転送用クロックを用いて取り込む。転送開始Bitが最終段のフリップフロップ532に到達すると、受信用フリップフロップ531のクロックイネーブルがオフになり、受信用フリップフロップ531のシフト動作が停止する。取り込まれた転送信号は、つぎの転送用クロックで、後段のフリップフロップ533に設定され、検証対象論理部504に出力される。それと同時にフリップフロップ534の出力信号により、受信用フリップフロップ531が初期化される。この初期化で、受信用フリップフロップ531がゼロクリアされるため、つぎの転送信号がHighのときは、転送開始Bitであることが保証される。   In the receiving side time division transfer logic 503 in the receiving side FPGA, the received signals are sequentially fetched using the transfer clock. When the transfer start bit reaches the final flip-flop 532, the clock enable of the reception flip-flop 531 is turned off, and the shift operation of the reception flip-flop 531 is stopped. The fetched transfer signal is set in the subsequent flip-flop 533 at the next transfer clock, and is output to the verification target logic unit 504. At the same time, the reception flip-flop 531 is initialized by the output signal of the flip-flop 534. By this initialization, the reception flip-flop 531 is cleared to zero, so that when the next transfer signal is High, it is guaranteed that it is a transfer start bit.

このように、論理用クロックの変化が生じたサイクルで転送起動(SE)を出力し、つぎの転送用クロックサイクルで、送信側の論理信号を時分割転送論理に取り込み、順次に受信側FPGAの受信側時分割転送論理に送出する。   In this way, the transfer start (SE) is output in the cycle in which the change of the logic clock occurs, and in the next transfer clock cycle, the transmission side logic signal is taken into the time-division transfer logic, and sequentially received by the receiving side FPGA. Send to the receiver time division transfer logic.

図6に、時分割転送処理のタイムチャートを掲げる。ここでは、4ビットの時分割転送処理を、8サイクルでおこなったときの、ようすを示している。最大信号転送数は5であり、その内訳は、信号が4サイクル、転送開始Bitが1サイクルである。加えて、論理クロック発行Waitサイクル数が3であり、その内訳は、論理クロックから時分割転送論理のセットアップ保証として1サイクル、FPGA間の転送保証として1サイクル、受信側の時分割転送論理から論理クロックのセットアップ保証として1サイクルである。   FIG. 6 shows a time chart of the time division transfer process. Here, the situation is shown when 4-bit time division transfer processing is performed in 8 cycles. The maximum number of signal transfers is 5, and the breakdown is 4 cycles for the signal and 1 cycle for the transfer start bit. In addition, the number of logical clock issuance wait cycles is 3, and the breakdown is 1 cycle from the logical clock as a setup guarantee for time division transfer logic, 1 cycle as a transfer guarantee between FPGAs, and a logic from the time division transfer logic on the receiving side. One cycle is used to guarantee the clock setup.

つぎに、時分割転送論理における転送信号のチェック方法について述べる。図7は、時分割転送論理に、転送信号値のチェックをおこなうための、時分割転送チェック論理の概略を示す。送信側FPGAの送信側時分割転送論理701内のパリティチェック回路703は、転送対象信号線のパリティチェックをおこない、送信側チェック結果704を送出信号に付加して、受信側FPGAの受信側時分割転送論理702に送出する。受信側FPGAの受信側時分割転送論理702は、送信側パリティデータ705を受信信号から取り出し、さらにパリティチェック回路706によって、受信信号のパリティチェックをおこなって、受信側チェック結果707を求める。送信側パリティデータ705と、受信側チェック結果707とが比較され、不一致ならば、エラー信号が生成される。このエラー信号を、図4に示す転送エラー信号として用いれば、論理用クロックおよび転送用クロックが停止するので、エラー発生の時に、データ転送をしていた信号線を特定でき、エラー原因の究明が容易となる。   Next, a method for checking a transfer signal in the time division transfer logic will be described. FIG. 7 shows an outline of the time division transfer check logic for checking the transfer signal value in the time division transfer logic. The parity check circuit 703 in the transmission side time division transfer logic 701 of the transmission side FPGA performs a parity check of the transfer target signal line, adds the transmission side check result 704 to the transmission signal, and receives the time division of the reception side of the reception side FPGA. Send to transfer logic 702. The reception side time division transfer logic 702 of the reception side FPGA extracts the transmission side parity data 705 from the reception signal, further performs a parity check of the reception signal by the parity check circuit 706, and obtains the reception side check result 707. The transmission side parity data 705 and the reception side check result 707 are compared, and if they do not match, an error signal is generated. If this error signal is used as the transfer error signal shown in FIG. 4, the logic clock and the transfer clock are stopped. Therefore, when an error occurs, the signal line used for data transfer can be specified, and the cause of the error can be investigated. It becomes easy.

図8に、転送エラー時における時分割転送タイムチャートの概略を示す。この方式によれば、FPGA間の信号転送をせずに、論理クロックの挙動時の信号安定を保証できるため、動作不具合を発生しない。   FIG. 8 shows an outline of a time division transfer time chart when a transfer error occurs. According to this method, since signal stability during the behavior of the logical clock can be ensured without transferring signals between FPGAs, no malfunction occurs.

以上、本発明の、分割搭載した論理回路の論理検証装置について、具体的な実施の形態を示して説明したが、本発明はこれらに限定されるものではない。当業者であれば、本発明の要旨を逸脱しない範囲内において、上記各実施形態における回路の構成及び機能に様々な変更・改良を加えることが可能である。   As described above, the logic verification apparatus for the divided and mounted logic circuit according to the present invention has been described by showing specific embodiments, but the present invention is not limited to these. A person skilled in the art can make various changes and improvements to the configuration and function of the circuit in each of the above embodiments without departing from the scope of the present invention.

本発明は、大規模集積回路の論理プロトタイピングに適用でき、大規模論理シミュレーションアクセラレータなどの論理検証装置、とりわけ大規模ASIC等をFPGAに搭載して、その論理機能を検証する装置に応用が可能である。   The present invention can be applied to logic prototyping of a large scale integrated circuit, and can be applied to a logic verification apparatus such as a large scale logic simulation accelerator, in particular, a large scale ASIC or the like mounted on an FPGA to verify its logic function. It is.

そのほか、外部インタフェースをFPGAでモデリングし、論理エミュレータによってデバイスの機能検証をしようとする場合にも、広く採用することができる。   In addition, when the external interface is modeled by FPGA and the function of the device is verified by a logic emulator, it can be widely adopted.

100:検証対象装置全体
101:クロック生成回路
102:装置への入力信号
103、104、105:信号線
106:装置からの出力信号
200:発振器等からの源振クロック
201:FPGA1
202:FPGA2
203、204:クロック生成回路
205:同期リセット生成回路
206:同期リセット
401:最大信号転送数量
402:論理クロック発行Waitサイクル数
403:論理クロック周期
404:比較器
405、406,407:フリップフロップ
408:排他的論理和
409:イネーブル信号
410:PLL
411:カウンタ
501,504:検証対象論理部
502:送信側時分割転送論理
503:受信側時分割転送論理
521:セレクタ
522:送信用フリップフロップ
531:受信用フリップフロップ
532:最終段のフリップフロップ
533:受信側の後段のフリップフロップ
701:送信側時分割転送論理
702:受信側時分割転送論理
703、706:パリティチェック回路
704:送信側チェック結果
705:受信信号から取り出した送信側パリティデータ
707:受信側チェック結果
100: Entire verification target device 101: Clock generation circuit 102: Input signals 103, 104, 105 to the device: Signal line 106: Output signal from the device 200: Source clock from an oscillator etc. 201: FPGA1
202: FPGA2
203, 204: Clock generation circuit 205: Synchronous reset generation circuit 206: Synchronous reset 401: Maximum signal transfer quantity 402: Number of logical clock issuance wait cycles 403: Logical clock period 404: Comparator 405, 406, 407: Flip-flop 408: Exclusive OR 409: Enable signal 410: PLL
411: Counters 501 and 504: Verification target logic unit 502: Transmission-side time division transfer logic 503: Reception-side time division transfer logic 521: Selector 522: Transmission flip-flop 531: Reception flip-flop 532: Final stage flip-flop 533 : Flip-flop 701 at the subsequent stage on the reception side: Transmission side time division transfer logic 702: Reception side time division transfer logic 703, 706: Parity check circuit 704: Transmission side check result 705: Transmission side parity data 707 extracted from the reception signal: Receiver check result

Claims (2)

検証対象の論理回路を複数個の論理ブロックに分割し、FPGAなど複数の半導体チップ上に当該複数個の論理ブロックを組み込んで、当該検証対象の論理回路の論理検証をおこなう装置であって、
上記半導体チップの物理ピン数を超える複数の信号線からの信号を転送する手段として、当該複数の信号線からの信号を1本の物理ピンで伝送可能とするパラレル−シリアル変換を用いた時分割転送論理と、
上記複数個の論理ブロック間の信号線の本数と、上記半導体チップの物理ピン数とから算出される、最大信号転送数量をもとに、時分割転送のためのクロックの数を求める論理と、
上記複数の半導体チップの、すべてから等距離に配置された源振クロック供給源とを備え、
パワーオン後に上記半導体チップのクロック生成が安定するまでは時分割転送を停止し、安定した時点で上記半導体チップのひとつから、他の上記半導体チップに対して時分割転送開始の信号を伝送し、
上記検証対象の論理回路で用いるクロックの変動を、時分割転送が終了した時点でおこなうことを特長とする論理検証装置。
A device that divides a logic circuit to be verified into a plurality of logic blocks, incorporates the plurality of logic blocks on a plurality of semiconductor chips such as FPGA, and performs logic verification of the logic circuit to be verified,
As means for transferring signals from a plurality of signal lines exceeding the number of physical pins of the semiconductor chip, time-division using parallel-serial conversion that allows signals from the plurality of signal lines to be transmitted by one physical pin Transfer logic and
Logic for obtaining the number of clocks for time division transfer based on the maximum signal transfer quantity calculated from the number of signal lines between the plurality of logic blocks and the number of physical pins of the semiconductor chip;
A source oscillation clock supply source arranged equidistant from all of the plurality of semiconductor chips,
The time division transfer is stopped until the clock generation of the semiconductor chip is stabilized after the power is turned on, and a signal for starting the time division transfer is transmitted from one of the semiconductor chips to the other semiconductor chip at a stable time,
A logic verification device characterized in that the clock used in the logic circuit to be verified is changed when the time division transfer is completed.
請求項1に記載の論理検証装置において、
時分割転送のときに転送信号の正当性をチェックし、転送エラーが発生した場合はエラーとなった時分割転送の部位を報告する手段と、
クロック信号供給を停止する手段とを具備する論理検証装置。
The logic verification device according to claim 1,
A means for checking the legitimacy of the transfer signal during time division transfer and reporting the portion of the time division transfer that resulted in an error if a transfer error occurred;
And a logic verification device comprising means for stopping the supply of the clock signal.
JP2010056014A 2010-03-12 2010-03-12 Logic verification device for divisionally mounted logic circuit Withdrawn JP2011191893A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010056014A JP2011191893A (en) 2010-03-12 2010-03-12 Logic verification device for divisionally mounted logic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010056014A JP2011191893A (en) 2010-03-12 2010-03-12 Logic verification device for divisionally mounted logic circuit

Publications (1)

Publication Number Publication Date
JP2011191893A true JP2011191893A (en) 2011-09-29

Family

ID=44796763

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010056014A Withdrawn JP2011191893A (en) 2010-03-12 2010-03-12 Logic verification device for divisionally mounted logic circuit

Country Status (1)

Country Link
JP (1) JP2011191893A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013150031A (en) * 2012-01-17 2013-08-01 Hitachi Industrial Equipment Systems Co Ltd Telemeter system and telemeter device
CN109061540A (en) * 2018-10-18 2018-12-21 国网浙江省电力有限公司电力科学研究院 Electronic transformer angular difference standard device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013150031A (en) * 2012-01-17 2013-08-01 Hitachi Industrial Equipment Systems Co Ltd Telemeter system and telemeter device
CN109061540A (en) * 2018-10-18 2018-12-21 国网浙江省电力有限公司电力科学研究院 Electronic transformer angular difference standard device

Similar Documents

Publication Publication Date Title
EP2558937B1 (en) System and method for lockstep synchronization
US7460630B2 (en) Device and method for synchronous data transmission using reference signal
TWI723006B (en) High speed data transfer using calibrated, single-clock source synchronous serializer-deserializer protocol
US8375239B2 (en) Clock control signal generation circuit, clock selector, and data processing device
US20130262073A1 (en) Generating clock signals for a cycle accurate, cycle reproducible fpga based hardware accelerator
US8907707B2 (en) Aligning multiple chip input signals using digital phase lock loops
KR20090016090A (en) Apparatus and method for adaptive time borrowing technique in pipeline system
JP2003316736A (en) Usb circuit and data structure
JP3919990B2 (en) Timing synchronization system, apparatus used in the system, and timing synchronization method
JP2011191893A (en) Logic verification device for divisionally mounted logic circuit
US20100316142A1 (en) Semiconductor integrated circuit and designing method thereof
US8588341B2 (en) Data transfer circuit and data transfer method for clock domain crossing
KR101630628B1 (en) synchronizing apparatus between FPGAs
Saha et al. Design and implementation of a bist embedded inter-integrated circuit bus protocol over FPGA
Wuerdig et al. Asynchronous Quasi-Random Number Generator: Taking Advantage of PVT Variations
JP7316083B2 (en) Information processing equipment
Sato et al. A delay measurement mechanism for asynchronous circuits of bundled-data model
JP5378765B2 (en) Data transfer system
EP1573574B1 (en) Synchronisation of semi-synchronous processing elements
El Ouchdi et al. Design and physical implementation of a data transfer interface used in network on chip
JP2021121909A (en) Synchronization control circuit and synchronization control method
JP4817688B2 (en) Semiconductor integrated circuit device
JP5413367B2 (en) Semiconductor device and communication method
JP5315882B2 (en) Semiconductor device and communication method
Bradač et al. Bit error rate tester based on FPGA structure

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