JP2017146774A - Processing apparatus, logic simulator and design verification method - Google Patents
Processing apparatus, logic simulator and design verification method Download PDFInfo
- Publication number
- JP2017146774A JP2017146774A JP2016027970A JP2016027970A JP2017146774A JP 2017146774 A JP2017146774 A JP 2017146774A JP 2016027970 A JP2016027970 A JP 2016027970A JP 2016027970 A JP2016027970 A JP 2016027970A JP 2017146774 A JP2017146774 A JP 2017146774A
- Authority
- JP
- Japan
- Prior art keywords
- clock signal
- delay
- delay amount
- clock
- clock signals
- 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
Links
Images
Abstract
Description
本発明は、処理装置、論理シミュレータ、および設計検証方法に関する。 The present invention relates to a processing device, a logic simulator, and a design verification method.
VHDL(VHSIC Hardware Description Language),Verilog−HDL等のハードウエア記述言語によって記述された集積回路の検証モデルの動作をシミュレートするための論理シミュレータの方式の一つとして、イベントドリブン方式がある。イベントドリブン方式においては、並列動作の最小単位のモデルであるプロセスと、プロセスの実行によって発生するイベントとが管理され、各イベントの発生時に、当該イベントに関連付けられたプロセスが起動される。なお、VHSICはVery High Speed Intergrated Circuitの略記である。また、集積回路としては、例えば、光伝送装置に搭載されるLSI(Large Scale Integration)やFPGA(Field Programmable Gate Array)などが挙げられる。 As one of logic simulator methods for simulating the operation of a verification model of an integrated circuit described in a hardware description language such as VHDL (VHSIC Hardware Description Language) or Verilog-HDL, there is an event driven method. In the event-driven method, a process that is a model of a minimum unit of parallel operation and an event that occurs by execution of the process are managed, and a process associated with the event is activated when each event occurs. VHSIC is an abbreviation for Very High Speed Intergrated Circuit. Examples of the integrated circuit include an LSI (Large Scale Integration) and an FPGA (Field Programmable Gate Array) mounted on the optical transmission apparatus.
ここで、例えば同時刻のイベントで起動されるプロセスが複数存在し、あるプロセスでは遅延0で更新される変数について、他のプロセスでは更新前の値を参照したいような場合、イベントドリブン型論理シミュレータの処理方式では、デルタ遅延付き信号代入処理が利用される。この場合、当該変数の更新処理をデルタ遅延付き信号代入処理とすることによって、同じデルタサイクル内では、当該他のプロセスにおいて必ず更新前の値を参照することができる。デルタ遅延付き信号代入が適用される例としては、素子に遅延を付けないレジスタトランスファレベルのモデリングにおける、フリップフロップ(FF)などが挙げられる。また、デルタ遅延付き信号代入処理の具体例としては、Verilog−HDLにおける遅延指定の無いノンブロッキング代入や、SystemCにおけるsc_signal等のプリミティブチャネルへのwriteなどが挙げられる。 Here, for example, when there are a plurality of processes activated by an event at the same time, and a variable that is updated with a delay of 0 in one process and the other process wants to refer to the value before the update, an event-driven logic simulator In this processing method, a signal substitution process with a delta delay is used. In this case, by making the update process of the variable a signal substitution process with a delta delay, it is possible to always refer to the value before update in the other process within the same delta cycle. As an example to which signal substitution with delta delay is applied, there is a flip-flop (FF) or the like in register transfer level modeling in which no delay is added to an element. Further, specific examples of the signal substitution process with delta delay include non-blocking substitution with no delay designation in Verilog-HDL, write to a primitive channel such as sc_signal in SystemC, and the like.
上述のように、コンピュータ上での検証モデルの論理シミュレーションにおいて、ハードウエアの並列処理を実現するため、無限小の遅延(論理シミュレーション上の仮想的遅延)であるデルタ遅延が存在する。デルタ遅延の遅延量は、論理シミュレーション上、信号代入処理の実行回数として扱われるものであり、デルタ遅延は実際の遅延ではない。なお、「デルタ遅延」は「δ遅延」と記載する場合がある。また、「デルタ遅延の遅延量」は「デルタ遅延量」または「δ遅延量」と記載する場合がある。 As described above, in the logic simulation of the verification model on the computer, there is a delta delay which is an infinitesimal delay (virtual delay on the logic simulation) in order to realize hardware parallel processing. The delay amount of the delta delay is handled as the number of executions of the signal substitution process in the logic simulation, and the delta delay is not an actual delay. “Delta delay” may be described as “δ delay”. In addition, the “delta delay amount” may be described as “delta delay amount” or “δ delay amount”.
論理設計において、δ遅延を考慮した設計作業(各回路のδ遅延量の測定と遅延調整)は、設計者のマニュアル操作によって実行される。このため、論理設計において、設計者によるδ遅延量(信号代入の実行回数)の考慮が不足すると、論理シミュレーション結果と実際のハードウエア評価結果(実機評価結果;ハードウエアシミュレーション結果)との間で動作不一致を引き起こす場合がある。つまり、設計者がマニュアル操作でδ遅延量の調整を行なう際の誤操作によって、論理シミュレーションでは正常に動作するが実機では正常に動作しないといった事象(不具合)が生じる場合がある。 In logic design, design work taking into account δ delay (measurement of δ delay amount and delay adjustment of each circuit) is performed by a designer's manual operation. For this reason, in the logic design, if the designer does not take into account the amount of δ delay (number of executions of signal substitution), between the logic simulation result and the actual hardware evaluation result (actual machine evaluation result; hardware simulation result). It may cause an operation mismatch. In other words, an erroneous operation when the designer manually adjusts the δ delay amount may cause an event (problem) that the logic simulation operates normally but does not operate normally on the actual machine.
一つの側面で、本発明は、論理シミュレーション結果と実機評価結果との間で動作不一致が生じるのを抑止することを目的とする。 In one aspect, an object of the present invention is to prevent an operation mismatch between a logic simulation result and an actual machine evaluation result.
本件の処理装置は、同一周期で且つ同期関係にある複数のクロック信号によって動作する集積回路を処理対象として論理検証を行なう処理部を有する。前記処理部は、前記複数のクロック信号のうちデルタ遅延量が最も大きいクロック信号をベースクロック信号として選定する。そして、前記処理部は、前記複数のクロック信号のうち前記ベースクロック信号以外のクロック信号のデルタ遅延量を、前記ベースクロック信号のデルタ遅延量に合わせるように調整する。 The processing apparatus according to the present embodiment includes a processing unit that performs logic verification on an integrated circuit that operates with a plurality of clock signals that have the same cycle and are in a synchronous relationship. The processing unit selects a clock signal having the largest delta delay amount among the plurality of clock signals as a base clock signal. The processing unit adjusts a delta delay amount of a clock signal other than the base clock signal among the plurality of clock signals so as to match a delta delay amount of the base clock signal.
論理シミュレーション結果と実機評価結果との間で動作不一致が生じるのを抑止することができる。 It is possible to suppress the occurrence of operation mismatch between the logic simulation result and the actual machine evaluation result.
以下に、図面を参照し、本願の開示する処理装置、論理シミュレータ、および設計検証方法の実施形態について、詳細に説明する。ただし、以下に示す実施形態は、あくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能を含むことができる。そして、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。 Hereinafter, embodiments of a processing device, a logic simulator, and a design verification method disclosed in the present application will be described in detail with reference to the drawings. However, the embodiment described below is merely an example, and there is no intention to exclude application of various modifications and techniques not explicitly described in the embodiment. That is, the present embodiment can be implemented with various modifications without departing from the spirit of the present embodiment. Each figure is not intended to include only the components shown in the figure, and may include other functions. And each embodiment can be suitably combined in the range which does not contradict a processing content.
〔1〕関連技術と本願技術の概要
上述したように、コンピュータ上での検証モデルの論理シミュレーションにおいて、ハードウエアの並列処理を実現するため、δ遅延と呼ばれる概念が導入されている。δ遅延は無限小の遅延であり、δ遅延量は信号代入処理の実行回数として扱われる。しかし、論理設計においてδ遅延を考慮した設計作業は設計者のマニュアル操作によって実行されるため、設計者によるδ遅延量の考慮が不足すると、論理シミュレーション結果と実機評価結果との間で動作不一致が生じる場合がある。
[1] Overview of Related Technology and Technology of the Present Application As described above, in logic simulation of a verification model on a computer, a concept called δ delay is introduced in order to realize hardware parallel processing. The δ delay is an infinitely small delay, and the δ delay amount is treated as the number of executions of the signal substitution process. However, since the design work taking into account the δ delay in the logic design is executed by the designer's manual operation, if the δ delay amount is not considered by the designer, there will be an operation mismatch between the logic simulation result and the actual machine evaluation result. May occur.
ここで、図7〜図9を参照しながら、論理シミュレーション結果と実機評価結果との間で動作不一致が生じる例について説明する。図8に示すVHDL記述によって規定される図7に示すAブロックおよびBブロックを有する回路例では、AブロックのFFに、Logicからのデータ信号DATAと2分周されたクロック信号sr_clkp_halfとが入力される。また、AブロックのFFからのデータ信号A_OUTとAブロックの信号名変換後のクロック信号CLK_HALFとは、BブロックのFFに入力される。 Here, an example in which operation mismatch occurs between the logic simulation result and the actual machine evaluation result will be described with reference to FIGS. In the circuit example having the A block and the B block shown in FIG. 7 defined by the VHDL description shown in FIG. 8, the data signal DATA from Logic and the clock signal sr_clkp_half divided by 2 are input to the FF of the A block. The Further, the data signal A_OUT from the FF of the A block and the clock signal CLK_HALF after the signal name conversion of the A block are input to the FF of the B block.
このとき、AブロックのFFと、Aブロック境界での信号名変換とのそれぞれにおいて、信号代入が一回実行され、δ遅延量1(図中、Δ1と記載)が発生している。これに伴い、Aブロックからのクロック信号CLK_HALFおよびデータ信号A_OUTは、Aブロック内部のクロック信号sr_clkp_halfよりもδ遅延量Δ1だけ遅れてBブロックへ出力される。そのため、これらのクロック信号CLK_HALFおよびデータ信号A_OUTは、同じ時刻で変化することになり、Bブロックの動作は不安定になって、図9に示すように、論理シミュレーションと実機との動作(BブロックのFFからの出力値B_OUT)の不一致が生じる場合がある。 At this time, in each of the FF of the A block and the signal name conversion at the A block boundary, signal substitution is executed once, and a δ delay amount 1 (described as Δ1 in the figure) is generated. Accordingly, the clock signal CLK_HALF and the data signal A_OUT from the A block are output to the B block with a delay amount Δ1 behind the clock signal sr_clkp_half in the A block. For this reason, the clock signal CLK_HALF and the data signal A_OUT change at the same time, and the operation of the B block becomes unstable. As shown in FIG. Inconsistency of the output value B_OUT) from the FFs may occur.
また、図10を参照しながら、信号代入に伴うδ遅延によって生じるシミュレーション誤動作(論理シミュレーション結果と実機評価結果との間での動作不一致)の具体例について説明する。図10に示すように、後段の回路IIでは、前段の回路Iや、その他の部分で信号代入が実行されているため、デジタルδ遅延が各信号に別々に付加されている。 A specific example of a simulation malfunction (operation mismatch between the logic simulation result and the actual machine evaluation result) caused by the δ delay accompanying signal substitution will be described with reference to FIG. As shown in FIG. 10, in the rear-stage circuit II, signal substitution is executed in the front-stage circuit I and other parts, so that a digital δ delay is separately added to each signal.
このとき、図10に示す回路IIにおけるFF#1には、δ遅延2のクロック信号s_sel2_CLKが入力されるとともに、δ遅延3のデータ信号s_sel_FPが入力される。つまり、データ信号のδ遅延量3がクロック信号のδ遅延量2よりも大きいため、論理シミュレーション上での値の代入が正しいタイミングで実行される。
At this time, the
一方、、図10に示す回路IIにおけるFF#2には、δ遅延2のクロック信号s_sel2_CLKが入力されるとともに、δ遅延2のデータ信号s_DT_IN(3:0)が入力される。つまり、クロック信号のδ遅延量2とデータ信号のδ遅延量2とが同一であるため、論理シミュレーション上では値の代入が実行されず、シミュレーション誤動作が生じる。
On the other hand, the δ delay 2 clock signal s_sel2_CLK and the
ついで、図11に示すフローチャート(ステップS101〜S117)に従って、δ遅延を考慮した一般的な回路設計手順を説明する。まず、HDL設計が行なわれ(ステップS101)、論理設計対象の集積回路の検証モデルを規定するHDL記述が取得され、当該HDL記述に基づき、回路設計(ステップS102〜S107)が実行される。 Next, a general circuit design procedure considering the δ delay will be described with reference to the flowchart (steps S101 to S117) shown in FIG. First, HDL design is performed (step S101), an HDL description that defines a verification model of an integrated circuit to be logically designed is acquired, and circuit design (steps S102 to S107) is executed based on the HDL description.
回路設計においては、まず並列設計を実行するか否かが判断され(ステップS102)、並列設計を実行しない場合(ステップS102のNOルート)、論理設計(ステップS103)が実行されてから、クロック設計(ステップS104)が実行される。また、並列設計を実行する場合(ステップS102のYESルート)、論理設計(ステップS105)とクロック設計(ステップS106)とが並列的に実行される。ステップS104のクロック設計を完了、もしくは、ステップS105の論理設計およびステップS106のクロック設計の両方を完了すると、回路設計が完了される(ステップS107)。ここで、δ遅延を考慮した回路設計は、ステップS106のクロック設計において実行される。 In circuit design, it is first determined whether or not parallel design is to be executed (step S102). When parallel design is not to be executed (NO route of step S102), logic design (step S103) is executed before clock design. (Step S104) is executed. When parallel design is executed (YES route in step S102), logic design (step S105) and clock design (step S106) are executed in parallel. When the clock design in step S104 is completed, or when both the logic design in step S105 and the clock design in step S106 are completed, the circuit design is completed (step S107). Here, the circuit design considering the δ delay is executed in the clock design of step S106.
回路設計を完了すると、論理シミュレーション(software simulation;ステップS108〜S110)が実行される。このとき、まず、論理シミュレーションを実行するか否かが判断され(ステップS108)、論理シミュレーションを実行する場合(ステップS108のYESルート)、論理シミュレーション(ステップS109)が実行され、論理シミュレーション結果がチェックされる(ステップS110)。 When the circuit design is completed, a logic simulation (software simulation; steps S108 to S110) is executed. At this time, it is first determined whether or not to execute a logic simulation (step S108). When a logic simulation is executed (YES route of step S108), a logic simulation (step S109) is executed and the logic simulation result is checked. (Step S110).
論理シミュレーション結果がOKである場合(ステップS110のYESルート)、または、論理シミュレーションを実行しない場合(ステップS108のNOルート)、実機評価(hardware simulation;ステップS111〜S113)が実行される。このとき、まず、ハードウエアシミュレーションを実行するか否かが判断され(ステップS111)、ハードウエアシミュレーションを実行する場合(ステップS111のYESルート)、ハードウエアシミュレーション(ステップS112)が実行され、ハードウエアシミュレーション結果がチェックされる(ステップS113)。 When the logic simulation result is OK (YES route in step S110) or when the logic simulation is not executed (NO route in step S108), actual machine evaluation (hardware simulation; steps S111 to S113) is executed. At this time, it is first determined whether or not to execute hardware simulation (step S111). When hardware simulation is executed (YES route in step S111), hardware simulation (step S112) is executed and the hardware is simulated. The simulation result is checked (step S113).
ハードウエアシミュレーション結果がOKである場合(ステップS113のYESルート)、または、ハードウエアシミュレーションを実行しない場合(ステップS111のNOルート)、処理は終了する。一方、論理シミュレーション結果がOKでない場合(ステップS110のNOルート)、または、ハードウエアシミュレーション結果がOKでない場合(ステップS113のNOルート)、設計者のマニュアル操作による調査&修正検討処理(ステップS114〜S117)が実行される。 If the hardware simulation result is OK (YES route in step S113), or if the hardware simulation is not executed (NO route in step S111), the process ends. On the other hand, if the logic simulation result is not OK (NO route of step S110), or if the hardware simulation result is not OK (NO route of step S113), the investigation and correction examination process (step S114 ~) by the manual operation of the designer. S117) is executed.
調査&修正検討処理においては、まず、論理シミュレーション結果または実機評価結果がOKでない理由が論理設計不良であるか否かが判定される(ステップS114)。理由が論理設計不良でない場合つまり理由がクロック設計不良である場合(ステップS114のNOルート)、当該クロック設計不良がδ遅延不良であるか否かが判断される(ステップS115)。当該クロック設計不良がδ遅延不良である場合(ステップS115のYESルート)、δ遅延不良を解消するためのクロック訂正メソッドが調査される(ステップS116)。 In the investigation and correction examination process, first, it is determined whether or not the reason why the logic simulation result or the actual machine evaluation result is not OK is a logic design failure (step S114). If the reason is not a logical design failure, that is, if the reason is a clock design failure (NO route of step S114), it is determined whether or not the clock design failure is a δ delay failure (step S115). If the clock design failure is a δ delay failure (YES route of step S115), a clock correction method for eliminating the δ delay failure is investigated (step S116).
クロック訂正メソッドが有る場合(ステップS117のYESルート)、または、当該クロック設計不良がδ遅延不良でない場合(ステップS115のNOルート)、処理は、クロック設計(ステップS104)またはクロック設計(ステップS106)に戻る。このとき、ステップS106においては、ステップS116で調査されたクロック訂正メソッドに基づいて、デルタ遅延不良を解消すべくδ遅延を考慮した回路設計が実行される。 If there is a clock correction method (YES route in step S117), or if the clock design failure is not a δ delay failure (NO route in step S115), the process is clock design (step S104) or clock design (step S106). Return to. At this time, in step S106, based on the clock correction method investigated in step S116, circuit design is performed in consideration of the δ delay in order to eliminate the delta delay failure.
一方、クロック訂正メソッドが無い場合(ステップS117のNOルート)、または、理由が論理設計不良である場合(ステップS114のYESルート)、処理は、論理設計(ステップS103)または論理設計(ステップS105)に戻る。 On the other hand, when there is no clock correction method (NO route of step S117), or when the reason is logical design failure (YES route of step S114), the process is logical design (step S103) or logical design (step S105). Return to.
図11に示すδ遅延を考慮した一般的な回路設計手順では、設計者にとって、クロック信号の接続チェックが主な作業であり、δ遅延の考慮は二の次になる傾向がある。そのため、論理シミュレーションやハードウエアシミュレーションで問題が発生した場合、当該問題が、設計自体の問題であるのか又はδ遅延の考慮漏れに起因するものであるのかの判断を含め、問題部分を調査しなければならず、作業効率が低下するほか、回路設計の工数およびコストが増大する。 In the general circuit design procedure taking into account the δ delay shown in FIG. 11, the clock signal connection check is the main work for the designer, and the δ delay consideration tends to be secondary. Therefore, when a problem occurs in logic simulation or hardware simulation, the problem part must be investigated, including the determination of whether the problem is a problem of the design itself or due to omission of consideration of δ delay. In addition to the reduction in work efficiency, the man-hour and cost of circuit design increase.
特に、例えば図12に示すように、近年の集積回路においては、チップ内に複数のクロック系が備えられ、多段の選択回路(セレクタ)や分周器(1/n)などが備えられ、クロック系がより大規模化・複雑化している。このため、δ遅延量を考慮した回路設計についても難易度が増大している。したがって、設計者がマニュアル操作によるδ遅延量の調整作業を誤り、論理シミュレーションでは正常に動作しているが、実機では正常に動作しないといった事象が多発するおそれがある。 In particular, as shown in FIG. 12, for example, in recent integrated circuits, a plurality of clock systems are provided in a chip, a multistage selection circuit (selector), a frequency divider (1 / n), and the like are provided. The system is becoming larger and more complex. For this reason, the degree of difficulty in circuit design taking into account the amount of δ delay has increased. Therefore, there is a possibility that an event that the designer makes an error in adjusting the δ delay amount by manual operation and that the logic simulation operates normally but does not operate normally in the actual machine frequently occurs.
また、図12に示すように、高位言語に基づいて自動生成されたブロックや、IP(Intellectual Property core)や、設計資産(macro)などは、その内部回路がブラックボックス(Black Box)又はグレイボックス(Gray Box)となっている場合が多い。そのため、それぞれのδ遅延量の算出が困難であり、実機評価と連携した調査を行なわなければならず、回路設計において、作業効率が低下するほか、多大な工数やコストが費やされている。 Also, as shown in FIG. 12, the internal circuit of blocks, IP (Intellectual Property core), design assets (macro), etc. that are automatically generated based on a high-level language have a black box or gray box. (Gray Box) is often the case. For this reason, it is difficult to calculate each δ delay amount, and it is necessary to conduct a survey in cooperation with the actual machine evaluation. In addition to a reduction in work efficiency in circuit design, a great amount of man-hours and costs are spent.
そこで、本願開示の技術では、複数のクロック信号を有するLSI,FPGA等の集積回路(検証モデル)の設計・検証に際して、以下のようなδ遅延の自動調整機能(デジタルδ遅延自動調整ルーツ,δ−adjuster;図1〜図3,図13参照)が適用される。 Therefore, in the technique disclosed in the present application, when designing and verifying an integrated circuit (verification model) such as an LSI or FPGA having a plurality of clock signals, the following automatic adjustment function of δ delay (digital δ delay automatic adjustment roots, δ -Adjuster; see FIGS. 1 to 3 and 13).
つまり、δ遅延の自動調整機能では、集積回路(検証モデル)において同一周期で且つ同期関係にある複数のクロック信号のうちδ遅延量が最も大きいクロック信号をベースクロック信号として選定する選定機能が備えられる。当該選定機能では、複数のクロック信号のうちの二つのクロック信号の全ての組合せについて、二つのクロック信号間のδ遅延量差分が算出され、前記全ての組合せについて算出されたδ遅延量差分に基づき、ベースクロック信号が選定される。 In other words, the δ delay automatic adjustment function includes a selection function for selecting a clock signal having the largest δ delay amount as a base clock signal among a plurality of clock signals having the same period and synchronous relationship in the integrated circuit (verification model). It is done. In the selection function, for all combinations of two clock signals among a plurality of clock signals, a δ delay amount difference between the two clock signals is calculated, and based on the δ delay amount difference calculated for all the combinations. A base clock signal is selected.
そして、δ遅延の自動調整機能では、前記複数のクロック信号のうちベースクロック信号以外のクロック信号のδ遅延量を、ベースクロック信号のδ遅延量に合わせるように調整する調整機能が備えられる。 The δ delay automatic adjustment function includes an adjustment function for adjusting the δ delay amount of a clock signal other than the base clock signal among the plurality of clock signals so as to match the δ delay amount of the base clock signal.
ここで、δ遅延量は、前記複数のクロック信号のそれぞれに対して行なわれたδ遅延付き信号代入(δ遅延処理)の実行回数とする。また、前記同一周期で且つ同期関係にある複数のクロック信号は、同一のクロック源(後述するマスタクロック源)から分岐されたものである。 Here, the δ delay amount is the number of executions of signal substitution with δ delay (δ delay processing) performed for each of the plurality of clock signals. Further, the plurality of clock signals having the same period and in a synchronous relationship are branched from the same clock source (master clock source described later).
このように、本願開示の技術では、同一周期で且つ同期関係にある複数のクロック信号(クロック系)間におけるδ遅延の有無が測定され、その測定結果に基づき最大δ遅延量をもつベースクロック信号が選定される。そして、ベースクロック信号以外の各クロック信号におけるδ遅延量が最大δ遅延量になるようにδ遅延自動調整が行なわれる。これにより、集積回路の検証モデルに対して最適なδ遅延量が挿入される。 As described above, in the technique disclosed in the present application, the presence or absence of δ delay between a plurality of clock signals (clock systems) having the same period and synchronous relationship is measured, and the base clock signal having the maximum δ delay amount based on the measurement result. Is selected. Then, the δ delay automatic adjustment is performed so that the δ delay amount in each clock signal other than the base clock signal becomes the maximum δ delay amount. As a result, an optimal δ delay amount is inserted into the verification model of the integrated circuit.
つまり、本願開示の技術は、各クロック系のδ遅延量(絶対遅延量)を算出するものではなく、同一周期で且つ同期関係にある複数のクロック系間のδ遅延量差分を測定算出すべく、詳細には図2および図3を参照しながら後述する機能構成を具備する。 In other words, the technique disclosed in this application does not calculate the δ delay amount (absolute delay amount) of each clock system, but rather measures and calculates the δ delay amount difference between a plurality of clock systems having the same period and synchronous relationship. In detail, a functional configuration described later with reference to FIGS. 2 and 3 is provided.
図11に示すδ遅延を考慮した一般的な回路設計手順では、何らかの不良が発生した場合、上述のように、設計者のマニュアル操作による調査&修正検討処理(ステップS114〜S117)が実行される。 In the general circuit design procedure taking the δ delay shown in FIG. 11 into consideration, when any defect occurs, as described above, the investigation and correction examination process (steps S114 to S117) by the manual operation of the designer is executed. .
これに対し、本願開示の技術では、図13に示すように、図11のステップS106に対応する図13のステップS120で実行されるクロック設計処理に、δ遅延の自動調整機能(δ−adjusterとしての機能)が埋め込まれている。したがって、本願開示の技術では、ステップS120におけるクロック設計処理時に、δ遅延の自動調整が併せて実行される。 On the other hand, in the technique disclosed in the present application, as shown in FIG. 13, the clock design process executed in step S120 in FIG. 13 corresponding to step S106 in FIG. 11 includes the automatic adjustment function (δ-adjuster) of δ delay. Is embedded). Therefore, in the technique disclosed in the present application, the automatic adjustment of the δ delay is executed together with the clock design process in step S120.
ここで、図13に示すフローチャート(ステップS101〜S105,S107〜S113,S120)に従って、本実施形態を適用した場合の回路設計手順の概要について簡単に説明する。なお、図13のステップS101〜S105,S107〜S113においては、それぞれ図11のステップ101〜S105,S107〜S113と同様の処理が実行されるので、その説明は省略する。 Here, according to the flowchart (steps S101 to S105, S107 to S113, S120) shown in FIG. 13, an outline of a circuit design procedure when the present embodiment is applied will be briefly described. In steps S101 to S105 and S107 to S113 in FIG. 13, the same processes as steps 101 to S105 and S107 to S113 in FIG.
図11のステップS106では、設計者のマニュアル操作によってδ遅延を考慮したクロック設計が行なわれている。これに対し、図11のステップS106に代えて実行される図13のステップS120においては、前述したように、クロック設計処理とともにδ遅延の自動調整が行なわれる。 In step S106 in FIG. 11, clock design is performed in consideration of the δ delay by a manual operation of the designer. On the other hand, in step S120 of FIG. 13 executed instead of step S106 of FIG. 11, as described above, automatic adjustment of the δ delay is performed together with the clock design process.
これにより、論理シミュレーションやハードウエアシミュレーションの結果、問題になる箇所は限りなく論理回路に限定され、δ遅延問題を考慮した調査等を行なう必要がなくなる。このため、本願開示の技術では、図11に示すステップS114〜S117の処理を省略することができる。つまり、図13において、論理シミュレーション結果がOKでない場合(ステップS110のNOルート)、または、ハードウエアシミュレーション結果がOKでない場合(ステップS113のNOルート)、処理は、論理設計処理(ステップS103またはS105)に移行する。 As a result, as a result of the logic simulation or the hardware simulation, the problematic points are limited to the logic circuit, and it is not necessary to conduct an investigation considering the δ delay problem. For this reason, in the technique disclosed in the present application, the processing in steps S114 to S117 shown in FIG. 11 can be omitted. That is, in FIG. 13, when the logic simulation result is not OK (NO route of step S110) or when the hardware simulation result is not OK (NO route of step S113), the process is the logic design process (step S103 or S105). ).
したがって、本願開示の技術によれば、δ遅延対策に要する工数の90〜95%を削減することができ、当該遅延対策に要するコストも大幅に削減することができる。δ遅延対策に要する工数としては、例えば、回路設計,論理シミュレーション,ハードウエアシミュレーション(実機評価)に跨る作業工数が含まれる。 Therefore, according to the technique disclosed in the present application, it is possible to reduce 90-95% of the man-hour required for the δ delay countermeasure, and it is possible to greatly reduce the cost required for the delay countermeasure. The man-hours required for the δ delay countermeasure include, for example, man-hours spanning circuit design, logic simulation, and hardware simulation (actual machine evaluation).
〔2〕本実施形態の処理装置のハードウエア構成
まず、図1を参照しながら、本実施形態の処理装置1のハードウエア構成について説明する。図1は、本実施形態に係る論理シミュレータ11を含む処理装置1のハードウエア構成の一例を示すブロック図である。図1に示すように、本実施形態の処理装置1は、論理設計対象の集積回路(検証モデル)の動作をシミュレートする論理シミュレータ11を実現するものであり、論理シミュレータ11に本実施形態のデジタルδ遅延自動調整ツール(δ−adjuster)110が含まれている。
[2] Hardware configuration of the processing apparatus of the present embodiment First, the hardware configuration of the
なお、処理装置1は、例えば、光伝送装置に搭載されるLSIやFPGAなどの集積回路におけるクロック遅延(δ遅延)を調整する回路を含んでいてもよい。このとき、当該回路が、本実施形態のデジタルδ遅延自動調整ツール(δ−adjuster)110としての機能を果たす回路であってよい。この場合、処理装置1における処理部10(後述)は、同一周期で且つ同期関係にある複数のクロック信号によって動作する集積回路を、クロック遅延(δ遅延)の調整処理対象として論理検証を行なってもよい。
Note that the
処理装置1は、図1に示すように、処理部10,記憶部20,入力部30および表示部40を含む。処理部10,記憶部20,入力部30および表示部40は、バス50を介して相互に通信可能に構成される。
As shown in FIG. 1, the
処理部10は、処理装置1全体を制御する。処理部10は、単一のプロセッサであってもよいし、マルチプロセッサであってもよい。処理部10は、例えばCPU(Central Processing Unit),MPU(Micro Processing Unit),DSP(Digital Signal Processor),ASIC(Application Specific Integrated Circuit),PLD(Programmable Logic Device),FPGA(Field Programmable Gate Array)のいずれか一つであってもよい。また、プロセッサ11は、CPU,MPU,DSP,ASIC,PLD,FPGAのうちの2種類以上の要素の組み合わせであってもよい。
The
記憶部20は、処理部10による処理に必要な各種データを格納する。当該各種データとしては、例えば、HDL記述21,設計結果22,シミュレーション結果23,プログラム24などが含まれてもよい。HDL記述21は、HDLで記述され、設計対象(δ遅延自動調整対象)の集積回路(検証モデル)を規定する。設計結果22は、当該HDL記述21に基づいて得られた論理設計結果やクロック設計結果である。シミュレーション結果23は、設計結果22に基づき実行されたシミュレーションの結果に係る情報である。プログラム24としては、処理部10に実行させるOS(Operating System)プログラムやアプリケーションプログラムが含まれてもよい。アプリケーションプログラムには、デジタルδ遅延自動調整ツール110を含む論理シミュレータ11としての機能を実現するために処理部10によって実行されるプログラムが含まれてもよい。記憶部20としては、RAM(Random Access Memory)やHDD(Hard Disk Drive)が用いられてもよいし、フラッシュメモリ等の半導体記憶装置(SSD:Solid State Drive)が用いられてもよい。
The
処理装置1(処理部10)に実行させるプログラム24は、光ディスク,メモリ装置,メモリカード等の非一時的な可搬型記録媒体に記録されてもよい。可搬型記録媒体に格納されたプログラムは、例えば処理部10からの制御により、記憶部20にインストールされた後、実行可能になる。また、処理部10が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
The
なお、光ディスクは、光の反射によって読み取り可能にデータを記録された可搬型の非一時的な記録媒体である。光ディスクとしては、DVD(Digital Versatile Disc),DVD−RAM,CD−ROM(Compact Disc Read Only Memory),CD−R(Recordable)/RW(ReWritable)等が挙げられる。メモリ装置は、機器接続インタフェース(図示略)との通信機能を搭載した非一時的な記録媒体、例えばUSB(Universal Serial Bus)メモリである。メモリカードは、メモリリーダライタ(図示略)を介し処理部10に接続されてデータの書込/読出対象になる、カード型の非一時的な記録媒体である。
An optical disc is a portable non-temporary recording medium on which data is recorded so as to be readable by reflection of light. Examples of the optical disk include DVD (Digital Versatile Disc), DVD-RAM, CD-ROM (Compact Disc Read Only Memory), CD-R (Recordable) / RW (ReWritable), and the like. The memory device is a non-temporary recording medium equipped with a communication function with a device connection interface (not shown), for example, a USB (Universal Serial Bus) memory. The memory card is a card-type non-temporary recording medium that is connected to the
入力部30は、例えば、キーボードおよびマウスであり、ユーザによって操作され、処理部10に対する各種指示を行なう。なお、マウスに代え、タッチパネル,タブレット,タッチパッド,トラックボール等が用いられてもよい。
The
表示部40は、例えば、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置等であり、上述したHDL記述21,設計結果22,シミュレーション結果23を表示出力する。また、表示部40とともに、上述したHDL記述21,設計結果22,シミュレーション結果23を印刷出力する出力部(図示略)が備えられてもよい。
The
以上のようなハードウェア構成を有する処理装置1によって、図2および図3を参照しながら後述する本実施形態のデジタルδ遅延自動調整ツール(δ−adjuster)110としての機能を実現することができる。
With the
〔3〕本実施形態の処理装置の機能構成
次に、図2および図3を参照しながら、本実施形態のデジタルδ遅延自動調整ツール110を有する処理装置1の機能構成について説明する。図2は、図1に示す論理シミュレータ11におけるデジタルδ遅延自動調整ツール110の機能構成を示すブロック図である。図3は、図2に示すデジタルδ遅延自動調整ツール110の詳細な機能構成を示す図である。
[3] Functional Configuration of Processing Apparatus According to this Embodiment Next, a functional configuration of the
図2に示すように、以下の実施形態では、同一のマスタクロック源(MCLK)2から分岐された三つのクロック系(クロック信号)3A,3B,3Cに対しδ遅延の自動調整が行なわれる場合について説明する。三つのクロック系3A,3B,Cについては、それぞれクロック系A,B,Cもしくはクロック信号A,B,CもしくはMCLK_A,MCLK_B,MCLK_Cと表記する場合がある。
As shown in FIG. 2, in the following embodiment, the δ delay is automatically adjusted for three clock systems (clock signals) 3A, 3B, 3C branched from the same master clock source (MCLK) 2. Will be described. The three
MCLK2は、同期系回路を組む回路における主クロック源である。また、MCLK2は、それぞれ異なるδ遅延量を有する三つのMCLK_A,MCLK_B,MCLK_Cに分岐される。そして、三つのMCLK_A,MCLK_B,MCLK_Cは、本実施形態によるδ遅延の自動調整を行なうべく、本実施形態のデジタルδ遅延自動調整ツール110に集合させられ接続される。
MCLK2 is a main clock source in a circuit that forms a synchronous circuit. Further, MCLK2 is branched into three MCLK_A, MCLK_B, and MCLK_C having different δ delay amounts. The three MCLK_A, MCLK_B, and MCLK_C are aggregated and connected to the digital δ delay
分岐されたクロック系A,B,Cは、それぞれ、同期動作を行なう複数のモジュールにクロック信号A,B,Cを供給する。クロック系A,B,Cの途中に分周器やセレクタや“H(High)”/“L(Low)”固定化などの論理が挿入されることで、各モジュールに接続されるクロック系A,B,Cのδ遅延量には差異が生じる。本実施形態では、以下のように、三つのクロック信号A,B,Cのうちの二つのクロック信号の全ての組合せについて、二つのクロック信号間のδ遅延量差分が算出される。本実施形態では、クロック系A,B,Cには、それぞれ、δ遅延量8,12,15が発生している場合について説明するが、これらのδ遅延量の値は、設計者に一切見えていないものとする。 The branched clock systems A, B, and C supply clock signals A, B, and C to a plurality of modules that perform a synchronous operation, respectively. The clock system A connected to each module is inserted in the middle of the clock systems A, B, and C by inserting logic such as a frequency divider, selector and “H (High)” / “L (Low)”. , B and C have different δ delay amounts. In the present embodiment, as described below, for all combinations of two clock signals among the three clock signals A, B, and C, a δ delay amount difference between the two clock signals is calculated. In the present embodiment, a case where δ delay amounts 8, 12, and 15 are generated in the clock systems A, B, and C, respectively, will be described. However, the values of these δ delay amounts are completely visible to the designer. Shall not.
本実施形態において、処理部10は、プログラム24に含まれる所定のアプリケーションプログラムを実行することで、デジタルδ遅延自動調整ツール110としての機能、つまりδ遅延測定用信号代入部111,δ遅延検証部112,δ遅延挿入判定部113,δ遅延調整用信号代入部114としての機能を果たす。
In the present embodiment, the
δ遅延測定用信号代入部111及びδ遅延検証部112は、複数のクロック信号A〜Cのうちの二つのクロック信号の全ての組合せについて、二つのクロック信号間のδ遅延量差分を算出する算出部の一例である。
The δ delay measurement
δ遅延挿入判定部113は、前記全ての組合せについて算出されたδ遅延量差分に基づき、複数のクロック信号A〜Cのうちδ遅延量が最も大きいクロック信号をベースクロック信号として選定する選定部の一例である。
The δ delay
また、δ遅延挿入判定部113は、複数のクロック信号のうちベースクロック信号以外のクロック信号のδ遅延量をベースクロック信号のδ遅延量(最大δ遅延量)に合わせるために挿入されるべきδ遅延量(δ遅延挿入量)を算出する機能も有する。つまり、δ遅延挿入判定部113は、最大δ遅延量とベースクロック信号以外の各クロック信号のδ遅延量との差分をδ遅延挿入量として取得する。
Also, the δ delay
δ遅延調整用信号代入部114は、δ遅延挿入判定部113によって各クロック信号について算出されたδ遅延挿入量を、各クロック信号に対して挿入する。つまり、δ遅延調整用信号代入部114は、ベースクロック信号以外のクロック信号のδ遅延量を、ベースクロック信号のδ遅延量(最大デルタ遅延量)に合わせるように調整する調整部の一例である。
The δ delay adjustment
なお、デジタルδ遅延自動調整ツール110は論理回路上に組み込まれるが、物理設計においてはδ遅延の概念が無い。このため、δ遅延は、物理設計において無視・消去され、論理回路の実装(implement)に対し反映されることも影響を与えることもない。
Although the digital δ delay
次に、図3を参照しながら、上述したδ遅延測定用信号代入部111,δ遅延検証部112,δ遅延挿入判定部113,δ遅延調整用信号代入部114としての機能について、より詳細に説明する。
Next, with reference to FIG. 3, the functions as the above-described δ delay measurement
δ遅延測定用信号代入部111は、δ遅延加算部111A,111B,111Cを有する。δ遅延加算部111A,111B,111Cは、後述する比較器125の比較結果が不一致である場合、それぞれ、クロック信号A,B,Cに対し信号代入を一回実行することでδ遅延量を1挿入加算する。なお、クロック信号A〜Cが最初にδ遅延加算部111A〜111Cに外部から入力された際には、δ遅延加算部111A〜111Cによるδ遅延量の挿入処理は実行されない(図6の「加算したδ遅延量0」の項参照)。
The δ delay measurement
δ遅延検証部112は、同一周期で且つ同期関係にある異なる複数のクロック系A〜C間のデータインタフェースにおけるδ遅延量の差分を検証する。このため、δ遅延検証部112は、複数のクロック信号A〜Cのうちの二つのクロック信号の全ての組合せについて二つのクロック信号間のδ遅延量差分を測定・算出すべく、6種類のデータインタフェースチェック部112AB,112BA,112AC,112CA,112BC,112CBを有する。
The δ
データインタフェースチェック部112ABは、二つのクロック信号A,Bの一方である測定側クロック信号Aから、二つのクロック信号A,Bの他方である被測定側クロック信号Bへのデータインタフェースチェック(図6のA to B参照)を行なう。つまり、データインタフェースチェック部112ABは、測定側クロック信号Aに対し被測定側クロック信号Bがどれだけ遅延しているかを示す、Aに対するBのδ遅延量差分を測定算出する。 The data interface check unit 112AB performs a data interface check from the measurement side clock signal A which is one of the two clock signals A and B to the measurement side clock signal B which is the other of the two clock signals A and B (FIG. 6). A to B). That is, the data interface check unit 112AB measures and calculates a δ delay amount difference of B with respect to A, which indicates how much the measured clock signal B is delayed with respect to the measuring clock signal A.
同様に、データインタフェースチェック部112BAは、二つのクロック信号B,Aの一方である測定側クロック信号Bから、二つのクロック信号B,Aの他方である被測定側クロック信号Aへのデータインタフェースチェック(図6のB to A参照)を行なう。つまり、データインタフェースチェック部112BAは、測定側クロック信号Bに対し被測定側クロック信号Aがどれだけ遅延しているかを示す、Bに対するAのδ遅延量差分を測定算出する。 Similarly, the data interface check unit 112BA performs a data interface check from the measurement side clock signal B which is one of the two clock signals B and A to the measurement side clock signal A which is the other of the two clock signals B and A. (See B to A in FIG. 6). That is, the data interface check unit 112BA measures and calculates a difference in δ delay amount of A with respect to B, which indicates how much the measured clock signal A is delayed with respect to the measurement side clock signal B.
データインタフェースチェック部112ACは、二つのクロック信号A,Cの一方である測定側クロック信号Aから、二つのクロック信号A,Cの他方である被測定側クロック信号Cへのデータインタフェースチェック(図6のA to C参照)を行なう。つまり、データインタフェースチェック部112ACは、測定側クロック信号Aに対し被測定側クロック信号Cがどれだけ遅延しているかを示す、Aに対するCのδ遅延量差分を測定算出する。 The data interface check unit 112AC performs a data interface check from the measurement side clock signal A that is one of the two clock signals A and C to the measurement side clock signal C that is the other of the two clock signals A and C (FIG. 6). A to C). That is, the data interface check unit 112AC measures and calculates the difference in δ delay amount of C with respect to A, which indicates how much the measured clock signal C is delayed with respect to the measuring clock signal A.
データインタフェースチェック部112CAは、二つのクロック信号C,Aの一方である測定側クロック信号Cから、二つのクロック信号C,Aの他方である被測定側クロック信号Aへのデータインタフェースチェックを行なう(図6のC to A参照)。つまり、データインタフェースチェック部112CAは、測定側クロック信号Cに対し被測定側クロック信号Aがどれだけ遅延しているかを示す、Cに対するAのδ遅延量差分を測定算出する。 The data interface check unit 112CA performs a data interface check from the measurement-side clock signal C that is one of the two clock signals C and A to the measurement-side clock signal A that is the other of the two clock signals C and A ( (See C to A in FIG. 6). That is, the data interface check unit 112CA measures and calculates a difference in δ delay amount of A with respect to C, which indicates how much the measured clock signal A is delayed with respect to the measuring clock signal C.
データインタフェースチェック部112BCは、二つのクロック信号B,Cの一方である測定側クロック信号Bから、二つのクロック信号B,Cの他方である被測定側クロック信号Cへのデータインタフェースチェックを行なう(図6のB to C参照)。つまり、データインタフェースチェック部112BCは、測定側クロック信号Bに対し被測定側クロック信号Cがどれだけ遅延しているかを示す、Bに対するCのδ遅延量差分を測定算出する。 The data interface check unit 112BC performs a data interface check from the measurement side clock signal B which is one of the two clock signals B and C to the measurement side clock signal C which is the other of the two clock signals B and C ( (See B to C in FIG. 6). That is, the data interface check unit 112BC measures and calculates a difference in the δ delay amount of C with respect to B, which indicates how much the measured clock signal C is delayed with respect to the measuring clock signal B.
データインタフェースチェック部112CBは、二つのクロック信号C,Bの一方である測定側クロック信号Cから、二つのクロック信号C,Bの他方である被測定側クロック信号Bへのデータインタフェースチェックを行なう(図6のC to B参照)。つまり、データインタフェースチェック部112CBは、測定側クロック信号Cに対し被測定側クロック信号Bがどれだけ遅延しているかを示す、Cに対するBのδ遅延量差分を測定算出する。 The data interface check unit 112CB performs a data interface check from the measurement-side clock signal C that is one of the two clock signals C and B to the measurement-side clock signal B that is the other of the two clock signals C and B ( (See C to B in FIG. 6). That is, the data interface check unit 112CB measures and calculates a δ delay amount difference of B with respect to C, which indicates how much the measured clock signal B is delayed with respect to the measuring clock signal C.
データインタフェースチェック部112AB,112BA,112AC,112CA,112BC,112CBのそれぞれは、分周器121,実時間遅延付与部122,第1FF123,第2FF124,比較器125,第3FF126を有する。ここでは、データインタフェースチェック部112ABの詳細な構成について説明するが、他のデータインタフェースチェック部112BA,112AC,112CA,112BC,112CBもデータインタフェースチェック部112ABと同様に構成される。
Each of the data interface check units 112AB, 112BA, 112AC, 112CA, 112BC, and 112CB includes a
データインタフェースチェック部112ABは、内部PPG(後述する分周器121)にて検証パターンを生成し、トランスポート遅延を付加したデータパスと、スルーパスとの二つの仮想データインタフェースを用意し、これら二つのパスの一致性を検証する。なお、PPGは、Pulse Pattern Generatorの略記である。二つのパスをそれぞれ経由する二つのデータが不一致である場合、二つのクロック系A,Bのδ遅延量の差分が不一致の要因であるので、δ遅延量測定用信号代入部111のδ遅延加算部111Aに対するフィードバックが行なわれる。これに伴い、測定側クロック信号A(PPGクロック)に対しδ遅延付き信号代入が一回行なわれ、信号代入の実行回数(δ遅延量)が1加算される。データインタフェースチェック部112ABは、以上のような処理を、二つのパスをそれぞれ経由する二つのデータが一致するまで繰り返し実行することで、例えば図6を参照しながら後述するような検証結果を得ることができる。
The data interface check unit 112AB generates a verification pattern by an internal PPG (
分周器(PPG)121は、測定側クロック信号Aを二分周する。分周器121によって二分周された測定側クロック信号Aは、図3に符号(a)及び(c)で示すように、二つに分岐される。図3において、信号(a)の通過するパスが上記データパスに相当し、信号(b)の通過するパスが上記スルーパスに相当する。
The frequency divider (PPG) 121 divides the measurement-side clock signal A by two. The measurement-side clock signal A divided by two by the
実時間遅延付与部122は、二分岐された測定側クロック信号Aの一方、つまりデータパスを通過する信号(a)に、任意の実時間遅延量(ここでは例えば1ps(ピコ秒))を挿入付与する。ここで、1psの実時間遅延(トランスポート遅延)を挿入するのは、データパス上の第1FF123を、被測定側クロック信号Bのδ遅延量に影響を受けることなくシフト動作させるためである。そして、実時間遅延付与部122で実時間遅延を付与された信号(a)は、正解値(FF123の出力(b)参照)として、スルーパスを通過する信号(FF124の出力(d)参照)と比較される。
The real-time
第1FF123は、測定側クロック信号Aから生成され実時間遅延1psを付与された信号(a)を、データとして入力されるとともに、被測定側クロック信号Bをクロックとして入力される。これに伴って、第1FF123は、被測定側クロック信号Bのタイミングで、データパスを通過した信号(a)を上記正解値(b)として出力する。
The
第2FF124は、測定側クロック信号Aから生成され実時間遅延を付与されていない信号(c)を、データとして入力されるとともに、被測定側クロック信号Bをクロックとして入力される。これに伴って、第2FF124は、被測定側クロック信号Bのタイミングで、スルーパスを通過した信号(c)を信号(d)として出力する。
The
比較器125は、第1FF123からの出力(b)と第2FF124からの出力(d)とを入力されて比較する。比較器125は、出力(b)と出力(d)とが不一致の場合、例えば、NGを示す“0”を出力する一方、出力(b)と出力(d)とが一致する場合、例えば、OKを示す“1”を出力する。
The
第3FF126は、比較器125からの出力をデータとして入力されるとともに、被測定側クロック信号Bをクロックとして入力される。これに伴って、第3FF126は、被測定側クロック信号Bのタイミングで、比較器125による比較結果を検証結果(e)としてδ遅延測定用信号代入部111及びδ遅延挿入判定部113へ出力する。
The
そして、δ遅延挿入判定部113は、δ遅延検証部112によって得られた検証結果(図6参照)を参照することで、三つのクロック信号A〜Cのうちの二つのクロック信号の全ての組合せについてδ遅延量差分を認識することができる。つまり、6種類の組合せのそれぞれについて、二つのデータ(b)と(d)とが一致した時点でのδ遅延付き信号代入の実行回数が、当該組合せの二つのクロック信号間のδ遅延量差分として算出される。このようにして、三つのクロック信号A〜Cのうちの二つのクロック信号の6種類の組合せについて、δ遅延量の差分が測定されることになる。δ遅延挿入判定部113は、6種類のδ遅延量差分に基づき、三つのクロック信号A〜Cのうちδ遅延量が最も大きいクロック信号をベースクロック信号として選定する。さらに、δ遅延挿入判定部113は、上述したように、最大δ遅延量とベースクロック信号以外の各クロック信号のδ遅延量との差分をδ遅延挿入量として取得する。
Then, the δ delay
δ遅延調整用信号代入部114は、δ遅延挿入部114A,114B,114Cを有する。δ遅延挿入部114A,114B,114Cは、δ遅延挿入判定部113で取得されたδ遅延挿入量を、それぞれクロック信号A,B,Cに対して挿入する。これにより、ベースクロック信号以外のクロック信号のδ遅延量が、ベースクロック信号のδ遅延量(最大デルタ遅延量)に合わせるように調整される。
The δ delay adjustment
〔4〕本実施形態の処理装置の動作
次に、図4〜図6を参照しながら、本実施形態の処理装置1の動作について説明する。
まず、図4に示すフローチャート(ステップS1〜S5)に従って、図2および図3に示すデジタルδ遅延自動調整ツール110の動作概要について説明する。
[4] Operation of the processing apparatus of the present embodiment Next, the operation of the
First, an outline of the operation of the digital δ delay
図3に示す例では、MCLK2から分岐された三つのMCLK_A,MCLK_B,MCLK_Cつまり同一周期で且つ同期関係にある三つのクロック信号A〜Cが抽出され、本実施形態によるδ遅延の自動調整を行なうべくデジタルδ遅延自動調整ツール110に入力される(ステップS1)。 In the example shown in FIG. 3, three MCLK_A, MCLK_B, and MCLK_C branched from MCLK2, that is, three clock signals A to C having the same period and synchronous relation are extracted, and the δ delay is automatically adjusted according to this embodiment. Therefore, it is input to the digital δ delay automatic adjustment tool 110 (step S1).
この後、6種類のデータインタフェースチェック部112AB,112BA,112AC,112CA,112BC,112CBにおいて、6種類の組合せの二つのクロック信号間のδ遅延量差分が、信号代入の実行回数として、それぞれ検証算出される(ステップS2)。 Thereafter, in the six types of data interface check units 112AB, 112BA, 112AC, 112CA, 112BC, and 112CB, the δ delay amount difference between the two clock signals of the six types of combinations is verified and calculated as the number of executions of signal substitution. (Step S2).
ここでは、クロック信号Bに対するクロック信号Aのδ遅延量差分と、クロック信号Aに対するクロック信号Bのδ遅延量差分とが検証算出される。また、クロック信号Cに対するクロック信号Aのδ遅延量差分と、クロック信号Aに対するクロック信号Cのδ遅延量差分とが検証算出される。さらに、クロック信号Cに対するクロック信号Bのδ遅延量差分と、クロック信号Bに対するクロック信号Cのδ遅延量差分とが検証算出される。 Here, the δ delay amount difference of the clock signal A with respect to the clock signal B and the δ delay amount difference of the clock signal B with respect to the clock signal A are verified and calculated. Further, a δ delay amount difference of the clock signal A with respect to the clock signal C and a δ delay amount difference of the clock signal C with respect to the clock signal A are verified and calculated. Further, a δ delay amount difference of the clock signal B with respect to the clock signal C and a δ delay amount difference of the clock signal C with respect to the clock signal B are verified and calculated.
そして、δ遅延挿入判定部113においては、δ遅延検証部112によって得られた検証結果(図6参照)が参照され、三つのクロック信号A〜Cのうちの二つのクロック信号の全ての組合せについてδ遅延量差分が認識される。認識された6種類のδ遅延量差分に基づき、δ遅延挿入判定部113において、三つのクロック信号A〜Cの中から、最大δ遅延量のクロック信号(ベースクロック信号)が選定される(ステップS3)。
In the δ delay
ベースクロック信号が選定されると、δ遅延挿入判定部113においては、ベースクロック信号の最大δ遅延量とベースクロック信号以外の各クロック信号のδ遅延量との差分が、δ遅延挿入量として算出取得される(ステップS4)。このとき、ベースクロック信号に対するδ遅延挿入量としては0が取得され、ベースクロック信号以外の一または二のクロック信号に対するδ遅延挿入量としては1以上の整数値が取得される。
When the base clock signal is selected, the δ delay
このように取得された複数のクロック信号に対するδ遅延挿入量は、それぞれ、対応するδ遅延挿入部114A,114B,114Cに通知される。δ遅延挿入部114A,114B,114Cにおいては、ベースクロック信号以外のクロック信号に対し、通知されたδ遅延挿入量が、信号代入処理によって挿入される。これにより、ベースクロック信号以外のクロック信号のδ遅延量が、ベースクロック信号のδ遅延量(最大デルタ遅延量)に合わせるように調整され、全てのクロック信号のδ遅延量が最大δ遅延量に統一される(ステップS5)。
The δ delay insertion amounts for the plurality of clock signals acquired in this way are notified to the corresponding δ
ついで、図3,図5および図6を参照しながら、図3に示すデジタルδ遅延自動調整ツール110の動作、つまり図4のステップS2〜S4における処理について、より詳細に説明する。なお、図5は、図3に示すデジタルδ遅延自動調整ツール110の動作、特にデータインタフェースチェック部112ABの動作を説明するタイミングチャートである。図6は、図3に示すデジタルδ遅延自動調整ツール110におけるδ遅延検証部112によって得られる検証結果の一例を示す図である。ここでも、前述した通り、クロック系A,B,Cには、それぞれ、δ遅延量8,12,15が発生している場合について説明するが、これらのδ遅延量の値は、設計者に一切見えていない。
Next, the operation of the digital δ delay
図5に示すタイミングチャートでは、クロック信号Aからクロック信号へのデータインタフェースチェック動作、つまり、データインタフェースチェック部112ABによる、クロック信号Aに対するクロック信号Bのδ遅延量差分の検証測定動作が具体的に示されている。なお、図5において符号(a)〜(e)を付した信号は、それぞれ、図3で説明した信号(a)〜(e)に対応している。クロック信号Aに対するクロック信号Bのδ遅延量差分の検証測定動作は、以下に説明する手順(i)〜(viii)に従って実行される。 In the timing chart shown in FIG. 5, the data interface check operation from the clock signal A to the clock signal, that is, the verification measurement operation of the delta delay amount difference of the clock signal B with respect to the clock signal A by the data interface check unit 112AB is specifically shown. It is shown. In addition, the signal which attached | subjected the code | symbol (a)-(e) in FIG. 5 respond | corresponds to signal (a)-(e) demonstrated in FIG. 3, respectively. The verification measurement operation of the δ delay amount difference of the clock signal B with respect to the clock signal A is performed according to the procedures (i) to (viii) described below.
(i)データインタフェースチェック部112ABの処理対象である二つのクロック信号A,Bは、測定側クロック信号Aと被測定側クロック信号Bとに分けられる。 (I) The two clock signals A and B to be processed by the data interface check unit 112AB are divided into a measurement side clock signal A and a measurement side clock signal B.
(ii)測定側クロック信号Aは、分周器121によって二分周されてから、上述したデータパスおよびスルーパスに二分岐される。
(Ii) The measurement-side clock signal A is divided by two by the
(iii)データパスに分岐された測定側クロック信号Aには、実時間遅延付与部122によって1ps秒の実時間遅延が挿入される。1ps秒の実時間遅延を挿入された信号は、後段の第1FF123にデータとして入力される(図3および図5の符号(a)参照)。
(Iii) A real-time delay of 1 ps seconds is inserted into the measurement-side clock signal A branched to the data path by the real-time
(iv)一方、スルーパスに分岐された測定側クロック信号Aは、実時間遅延を付与されることなくそのまま、後段の第2FF124にデータとして入力される(図3の符号(c)参照)。
(Iv) On the other hand, the measurement-side clock signal A branched to the through path is directly input as data to the
(v)FF123,124に被測定側クロック信号Bをクロックとして入力することでFF123,124からそれぞれ信号(b),(d)(二つのデータ)が出力され、これらの信号(b)と(d)とが比較器125によって比較され一致するか否か判断される。比較器125による比較結果は、第3FF126経由で、被測定側クロック信号Bのタイミングで、検証結果(e)(図3および図5参照)としてδ遅延測定用信号代入部111及びδ遅延挿入判定部113へ出力される。
(V) By inputting the measured-side clock signal B to the
(vi)比較結果が一致(OK)である場合、δ遅延量差分の測定は直ちに完了する。一方、比較結果が不一致(NG)である場合、二つのクロック信号A,Bのδ遅延量の差分が不一致の要因であるので、測定側クロック信号Aに対しδ遅延付き信号代入が一回実行され、信号代入の実行回数が1加算されδ遅延量が1増加される。 (Vi) If the comparison result is coincidence (OK), the measurement of the δ delay amount difference is completed immediately. On the other hand, if the comparison result is mismatch (NG), the difference between the δ delay amounts of the two clock signals A and B is the cause of the mismatch, so that the signal substitution with δ delay is executed once for the measurement side clock signal A. Then, the number of executions of signal substitution is incremented by 1, and the amount of δ delay is increased by 1.
(vii)以上の手順(ii)〜(vi)の処理は、比較器125による比較結果が一致するまで、つまり二つのパスをそれぞれ経由する二つの信号(b)と(d)とが一致するまで繰り返し実行される。
(Vii) In the processes of the above steps (ii) to (vi), the two signals (b) and (d) passing through the two paths are matched until the comparison result by the
(viii)そして、比較器125による比較結果が一致した時点、つまり二つのパスをそれぞれ経由する二つの信号(b)と(d)とが一致した時点での信号代入の実行回数が、クロック信号Aに対するクロック信号Bのδ遅延量差分として検証算出され保存される。なお、δ遅延加算部111Aによる信号代入処理の実行回数の計数は、例えば、データインタフェースチェック部112ABまたはδ遅延挿入判定部113によって実行されてよい。
(Viii) The number of executions of signal substitution at the time when the comparison result by the
図5に示す例では、初回の手順(v)において、非測定側クロック信号Bが立ち上がるタイミングTBで、信号(a)と(c)の「デルタ遅延+0の場合」の信号とがそれぞれ信号(b),(d)として比較される。このとき、信号(b),(d)はそれぞれA,Bに対応するため、比較結果は不一致となる((d)および(e)の「デルタ遅延+3以下の場合」参照)。これに伴い、測定側クロック信号Aに対しδ遅延付き信号代入が一回実行される。 In the example shown in FIG. 5, in the initial procedure (v), at the timing TB when the non-measurement-side clock signal B rises, the signals (a) and (c) “when delta delay + 0” are respectively signals ( Compared as b) and (d). At this time, since the signals (b) and (d) correspond to A and B, respectively, the comparison results are inconsistent (see “in the case of delta delay + 3 or less” in (d) and (e)). Along with this, signal substitution with δ delay is executed once for the measurement-side clock signal A.
ついで、二回目の手順(v)において、非測定側クロック信号Bが立ち上がるタイミングTBで、信号(a)と(c)の「デルタ遅延+1の場合」の信号とがそれぞれ信号(b),(d)として比較される。このときも、信号(b),(d)はそれぞれA,Bに対応するため、比較結果は不一致となる((d)および(e)の「デルタ遅延+3以下の場合」参照)。これに伴い、測定側クロック信号Aに対しδ遅延付き信号代入が一回実行される。 Next, in the second procedure (v), at the timing TB when the non-measurement-side clock signal B rises, the signals (a) and (c) “if delta delay + 1” are respectively the signals (b), ( Compared as d). Also at this time, since the signals (b) and (d) correspond to A and B, respectively, the comparison results are inconsistent (see “in the case of delta delay + 3 or less” in (d) and (e)). Along with this, signal substitution with δ delay is executed once for the measurement-side clock signal A.
以下同様にして四回目の手順(v)が行なわれた後、五回目の手順(v)においては、非測定側クロック信号Bが立ち上がるタイミングTBで、信号(a)と(c)の「デルタ遅延+4の場合」の信号とがそれぞれ信号(b),(d)として比較される。このとき、信号(b),(d)はいずれもAに対応するため、比較結果は一致となる((d)および(e)の「デルタ遅延+4以上の場合」参照)。 Thereafter, after the fourth procedure (v) is performed in the same manner, in the fifth procedure (v), at the timing TB when the non-measurement side clock signal B rises, the “delta” of the signals (a) and (c) The signal of “in the case of delay +4” is compared as signals (b) and (d), respectively. At this time, since the signals (b) and (d) both correspond to A, the comparison results are the same (see “in the case of delta delay + 4 or more” in (d) and (e)).
これにより、クロック信号Aに対するクロック信号Bのδ遅延量差分4が、δ遅延検証部112のチェック部112ABによる検証結果として得られる(図6のX1参照)。同様にして、クロック信号Aに対するクロック信号Cのδ遅延量差分7が、δ遅延検証部112のチェック部112ACによる検証結果として得られる(図6のX2参照)。また、クロック信号Bに対するクロック信号Cのδ遅延量差分3が、δ遅延検証部112のチェック部112BCによる検証結果として得られる(図6のX3参照)。
Thereby, the δ
なお、クロック信号Aはクロック信号Bに対して進んでいるため、クロック信号Bに対するクロック信号Aのδ遅延量差分は負の値(マイナス差分)となり、比較結果は全て一致となる(図6の「B to A」参照)。同様に、クロック信号Aはクロック信号Cに対して進んでいるため、クロック信号Cに対するクロック信号Aのδ遅延量差分は負の値(マイナス差分)となり、比較結果は全て一致となる(図6の「C to A」参照)。また、クロック信号Bはクロック信号Cに対して進んでいるため、クロック信号Cに対するクロック信号Bのδ遅延量差分は負の値(マイナス差分)となり、比較結果は全て一致となる(図6の「C to B」参照)。 Note that since the clock signal A is advanced with respect to the clock signal B, the δ delay amount difference of the clock signal A with respect to the clock signal B becomes a negative value (minus difference), and the comparison results are all identical (FIG. 6). See “B to A”). Similarly, since the clock signal A is advanced with respect to the clock signal C, the δ delay amount difference of the clock signal A with respect to the clock signal C becomes a negative value (minus difference), and the comparison results are all identical (FIG. 6). See “C to A”). Further, since the clock signal B is advanced with respect to the clock signal C, the δ delay amount difference of the clock signal B with respect to the clock signal C becomes a negative value (minus difference), and all the comparison results are coincident (FIG. 6). (See “C to B”).
図6に示すような検証結果に基づき、クロック信号Bはクロック信号Aに対しδ遅延量4だけ遅延し、クロック信号Cはクロック信号Aに対しδ遅延量7だけ遅延し、クロック信号Cはクロック信号Bに対しδ遅延量3だけ遅延していることが認識される。したがって、δ遅延挿入判定部113において、三つのクロック信号A〜Cのうちクロック信号Cのδ遅延量が最も大きく、当該クロック信号Cがベースクロック信号として選定される。
Based on the verification results as shown in FIG. 6, the clock signal B is delayed by a
そして、δ遅延挿入判定部113において、最大δ遅延量とベースクロック信号C以外の各クロック信号A,Bのδ遅延量との差分7,3が、δ遅延挿入量として取得され、それぞれδ遅延挿入部114A,114Bに通知される。これにより、δ遅延挿入部114A,114Bにおいて、クロック信号A,Bのそれぞれに対し、7回,3回の信号代入処理を行なうことで、δ遅延挿入量7,3が挿入される。したがって、ベースクロック信号C以外のクロック信号A,Bのδ遅延量が、ベースクロック信号Cのδ遅延量(最大デルタ遅延量)15に合わせるように調整され、全てのクロック信号A〜Cのδ遅延量が最大δ遅延量15に統一される。
Then, in the δ delay
〔5〕本実施形態の効果
本実施形態の処理装置1によれば、δ遅延自動調整仮想回路(デジタルδ遅延自動調整ツール110)を埋め込むことで、δ遅延を考慮した設計作業(各回路のδ遅延量の測定と遅延量調整)を自動化することができる。したがって、複数の同期系クロック間において、設計者によるマニュアル操作で行なわれていた、δ遅延を考慮した設計作業(各回路のδ遅延量の測定と遅延量調整)を、不要にすることができる。これにより、δ遅延を考慮した設計工数が削減されるとともに、δ遅延による問題発生を防ぐことができる。
[5] Effects of the present embodiment According to the
例えば、本実施形態によれば、δ遅延対策に要する工数の90〜95%を削減することができ、当該遅延対策に要するコストも大幅に削減することができる。δ遅延対策に要する工数としては、例えば、回路設計,論理シミュレーション,ハードウエアシミュレーション(実機評価)に跨る作業工数が含まれる。 For example, according to the present embodiment, it is possible to reduce 90-95% of the man-hours required for the δ delay countermeasure, and it is possible to greatly reduce the cost required for the delay countermeasure. The man-hours required for the δ delay countermeasure include, for example, man-hours spanning circuit design, logic simulation, and hardware simulation (actual machine evaluation).
特に、複数のクロック系間のδ遅延の調整を自動で行なうことが可能になるため、マニュアル操作に伴う誤操作が生じることがなくなる。つまり、論理シミュレーションを行なうHDL論理回路設計(論理設計)や開発において、論理設計段階にデジタルδ遅延自動調整ツール110を回路に組み込むことで、論理シミュレーション実行時に設計者が考慮しなければならないデジタルδ遅延を自動で調整することができる。したがって、論理シミュレーション結果と実機評価結果との間で動作不一致が生じるのを確実に抑止することができる。
In particular, since it becomes possible to automatically adjust the δ delay between a plurality of clock systems, an erroneous operation associated with a manual operation does not occur. In other words, in the HDL logic circuit design (logic design) or development for performing logic simulation, the digital δ delay
また、ブラックボックス,グレイボックスなどを含む回路を経由するクロック系について、絶対遅延量を測定算出するのではなく、相対的なクロック系間のδ遅延量差分が測定算出される。そして、δ遅延量差分に基づき最大δ遅延量のベースクロック信号が選定され、選定されたベースクロック信号以外の各クロック系におけるδ遅延量が最大δ遅延量になるようにδ遅延自動調整が行なわれる。このため、ブラックボックスやグレイボックスとなっている回路が含まれていても、δ遅延量差分に基づきδ遅延の自動調整が可能になり、回路設計において、作業効率の大幅な向上、工数やコストの大幅な削減を実現することができる。 In addition, the absolute delay amount is not measured and calculated for a clock system passing through a circuit including a black box, a gray box, and the like, but a relative δ delay amount difference between clock systems is measured and calculated. Then, the base clock signal having the maximum δ delay amount is selected based on the δ delay amount difference, and the δ delay automatic adjustment is performed so that the δ delay amount in each clock system other than the selected base clock signal becomes the maximum δ delay amount. It is. For this reason, even if a black box or gray box circuit is included, the δ delay can be automatically adjusted based on the δ delay amount difference, which greatly improves work efficiency, man-hours and costs in circuit design. A significant reduction can be realized.
〔6〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
[6] Others While the preferred embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications and changes can be made without departing from the spirit of the present invention. It can be changed and implemented.
上述した実施形態では、マスタクロック源3を三つのクロック系A,B,Cに分岐しクロック系A,B、Cのそれぞれにおいてδ遅延量8,12,15が発生している場合について説明したが、本発明は、これらの数や数値に限定されるものではない。
In the above-described embodiment, the case where the
〔7〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
[7] Supplementary Notes Regarding the above embodiment, the following supplementary notes are further disclosed.
(付記1)
同一周期で且つ同期関係にある複数のクロック信号によって動作する集積回路を処理対象として論理検証を行なう処理部を有する処理装置であって、
前記処理部は、
前記複数のクロック信号のうちデルタ遅延量が最も大きいクロック信号をベースクロック信号として選定し、
前記複数のクロック信号のうち前記ベースクロック信号以外のクロック信号のデルタ遅延量を、前記ベースクロック信号のデルタ遅延量に合わせるように調整することを特徴とする処理装置。
(Appendix 1)
A processing apparatus having a processing unit that performs logic verification on an integrated circuit that operates with a plurality of clock signals having the same period and synchronous relationship,
The processor is
A clock signal having the largest delta delay amount among the plurality of clock signals is selected as a base clock signal,
The processing apparatus, wherein a delta delay amount of a clock signal other than the base clock signal among the plurality of clock signals is adjusted to match a delta delay amount of the base clock signal.
(付記2)
前記処理部は、
前記複数のクロック信号のうちの二つのクロック信号の全ての組合せについて、前記二つのクロック信号間のデルタ遅延量差分を算出し、
前記全ての組合せについて算出した前記デルタ遅延量差分に基づき、前記ベースクロック信号を選定することを特徴とする、付記1に記載の処理装置。
(Appendix 2)
The processor is
For all combinations of two clock signals of the plurality of clock signals, calculate a delta delay amount difference between the two clock signals,
The processing apparatus according to
(付記3)
前記デルタ遅延量は、前記複数のクロック信号のそれぞれに対して行なわれたデルタ遅延付き信号代入の実行回数であることを特徴とする、付記2に記載の処理装置。
(Appendix 3)
The processing apparatus according to
(付記4)
前記処理部は、
前記二つのクロック信号の一方である測定側クロック信号を二分周してから二分岐し、二分岐した前記測定側クロック信号の一方を、任意の実時間遅延量を付与して第1フリップフロップにデータとして入力し、二分岐した前記測定側クロック信号の他方を第2フリップフロップにデータとして入力し、前記第1フリップフロップおよび前記第2フリップフロップに前記二つのクロック信号の他方である被測定側クロック信号をクロックとして入力することで前記第1フリップフロップおよび前記第2フリップフロップからそれぞれ出力される二つのデータの比較を行ない、前記比較の結果、前記二つのデータが一致しない場合、前記測定側クロック信号に対する信号代入デルタ遅延付きを一回実行する、処理を、前記比較の結果、前記二つのデータが一致するまで繰り返し実行し、
前記二つのデータが一致した時点でのデルタ遅延付き信号代入の実行回数を、前記二つのクロック信号間の前記デルタ遅延量差分として算出することを特徴とする、付記3に記載の処理装置。
(Appendix 4)
The processor is
The measurement-side clock signal that is one of the two clock signals is divided into two and then branched into two, and one of the two-branched measurement-side clock signals is given an arbitrary real-time delay amount to the first flip-flop. The other side of the measurement side clock signal that has been bifurcated is input as data to the second flip-flop, and the other side of the two clock signals is input to the first flip-flop and the second flip-flop. By inputting a clock signal as a clock, two data output from the first flip-flop and the second flip-flop are compared, and if the two data do not match as a result of the comparison, the measurement side A signal substitution with a delta delay for a clock signal is executed once. Repeatedly executed until data is consistent,
4. The processing apparatus according to
(付記5)
前記複数のクロック信号は、同一のクロック源から分岐されたものであることを特徴とする、付記1〜付記4のいずれか一項に記載の処理装置。
(Appendix 5)
The processing device according to any one of
(付記6)
論理設計対象の集積回路の動作をシミュレートする論理シミュレータであって、
前記集積回路において同一周期で且つ同期関係にある複数のクロック信号のうちデルタ遅延量が最も大きいクロック信号をベースクロック信号として選定する選定部と、
前記複数のクロック信号のうち前記ベースクロック信号以外のクロック信号のデルタ遅延量を、前記ベースクロック信号のデルタ遅延量に合わせるように調整する調整部と、を有することを特徴とする論理シミュレータ。
(Appendix 6)
A logic simulator for simulating the operation of an integrated circuit subject to logic design,
A selecting unit that selects a clock signal having the largest delta delay amount as a base clock signal among a plurality of clock signals having the same period and a synchronous relationship in the integrated circuit;
A logic simulator, comprising: an adjustment unit that adjusts a delta delay amount of a clock signal other than the base clock signal among the plurality of clock signals so as to match a delta delay amount of the base clock signal.
(付記7)
前記複数のクロック信号のうちの二つのクロック信号の全ての組合せについて、前記二つのクロック信号間のデルタ遅延量差分を算出する算出部を有し、
前記選定部は、前記全ての組合せについて算出された前記デルタ遅延量差分に基づき、前記ベースクロック信号を選定することを特徴とする、付記6に記載の論理シミュレータ。
(Appendix 7)
A calculation unit that calculates a delta delay amount difference between the two clock signals for all combinations of two clock signals of the plurality of clock signals;
The logic simulator according to
(付記8)
前記デルタ遅延量は、前記複数のクロック信号のそれぞれに対して行なわれたデルタ遅延付き信号代入の実行回数であることを特徴とする、付記7に記載の論理シミュレータ。
(Appendix 8)
The logic simulator according to
(付記9)
前記算出部は、
前記二つのクロック信号の一方である測定側クロック信号を二分周してから二分岐し、二分岐した前記測定側クロック信号の一方を、任意の実時間遅延量を付与して第1フリップフロップにデータとして入力し、二分岐した前記測定側クロック信号の他方を第2フリップフロップにデータとして入力し、前記第1フリップフロップおよび前記第2フリップフロップに前記二つのクロック信号の他方である被測定側クロック信号をクロックとして入力することで前記第1フリップフロップおよび前記第2フリップフロップからそれぞれ出力される二つのデータの比較を行ない、前記比較の結果、前記二つのデータが一致しない場合、前記測定側クロック信号に対するデルタ遅延付き信号代入を一回実行する、処理を、前記比較の結果、前記二つのデータが一致するまで繰り返し実行し、
前記二つのデータが一致した時点でのデルタ遅延付き信号代入の実行回数を、前記二つのクロック信号間の前記デルタ遅延量差分として算出することを特徴とする、付記8に記載の論理シミュレータ。
(Appendix 9)
The calculation unit includes:
The measurement-side clock signal that is one of the two clock signals is divided into two and then branched into two, and one of the two-branched measurement-side clock signals is given an arbitrary real-time delay amount to the first flip-flop. The other side of the measurement side clock signal that has been bifurcated is input as data to the second flip-flop, and the other side of the two clock signals is input to the first flip-flop and the second flip-flop. By inputting a clock signal as a clock, two data output from the first flip-flop and the second flip-flop are compared, and if the two data do not match as a result of the comparison, the measurement side A signal substitution with a delta delay for the clock signal is performed once, and the processing is performed as a result of the comparison. Repeatedly executed until data is consistent,
9. The logic simulator according to
(付記10)
前記複数のクロック信号は、同一のクロック源から分岐されたものであることを特徴とする、付記6〜付記9のいずれか一項に記載の論理シミュレータ。
(Appendix 10)
The logic simulator according to any one of
(付記11)
集積回路の設計検証方法であって、
前記集積回路において同一周期で且つ同期関係にある複数のクロック信号のうちデルタ遅延量が最も大きいクロック信号をベースクロック信号として選定し、
前記複数のクロック信号のうち前記ベースクロック信号以外のクロック信号のデルタ遅延量を、前記ベースクロック信号のデルタ遅延量に合わせるように調整することを特徴とする設計検証方法。
(Appendix 11)
An integrated circuit design verification method comprising:
In the integrated circuit, a clock signal having the largest delta delay amount is selected as a base clock signal among a plurality of clock signals having the same period and synchronous relationship,
A design verification method, wherein a delta delay amount of a clock signal other than the base clock signal among the plurality of clock signals is adjusted to match a delta delay amount of the base clock signal.
(付記12)
前記複数のクロック信号のうちの二つのクロック信号の全ての組合せについて、前記二つのクロック信号間のデルタ遅延量差分を算出し、
前記全ての組合せについて算出した前記デルタ遅延量差分に基づき、前記ベースクロック信号を選定することを特徴とする、付記11に記載の設計検証方法。
(Appendix 12)
For all combinations of two clock signals of the plurality of clock signals, calculate a delta delay amount difference between the two clock signals,
12. The design verification method according to
(付記13)
前記デルタ遅延量は、前記複数のクロック信号のそれぞれに対して行なわれたデルタ遅延付き信号代入の実行回数であることを特徴とする、付記12に記載の設計検証方法。
(Appendix 13)
13. The design verification method according to
(付記14)
前記二つのクロック信号の一方である測定側クロック信号を二分周してから二分岐し、二分岐した前記測定側クロック信号の一方を、任意の実時間遅延量を付与して第1フリップフロップにデータとして入力し、二分岐した前記測定側クロック信号の他方を第2フリップフロップにデータとして入力し、前記第1フリップフロップおよび前記第2フリップフロップに前記二つのクロック信号の他方である被測定側クロック信号をクロックとして入力することで前記第1フリップフロップおよび前記第2フリップフロップからそれぞれ出力される二つのデータの比較を行ない、前記比較の結果、前記二つのデータが一致しない場合、前記測定側クロック信号に対するデルタ遅延付き信号代入を一回実行する、処理を、前記比較の結果、前記二つのデータが一致するまで繰り返し実行し、
前記二つのデータが一致した時点でのデルタ遅延付き信号代入の実行回数を、前記二つのクロック信号間の前記デルタ遅延量差分として算出することを特徴とする、付記13に記載の設計検証方法。
(Appendix 14)
The measurement-side clock signal that is one of the two clock signals is divided into two and then branched into two, and one of the two-branched measurement-side clock signals is given an arbitrary real-time delay amount to the first flip-flop. The other side of the measurement side clock signal that has been bifurcated is input as data to the second flip-flop, and the other side of the two clock signals is input to the first flip-flop and the second flip-flop. By inputting a clock signal as a clock, two data output from the first flip-flop and the second flip-flop are compared, and if the two data do not match as a result of the comparison, the measurement side A signal substitution with a delta delay for the clock signal is performed once, and the processing is performed as a result of the comparison. Repeatedly executed until data is consistent,
14. The design verification method according to
(付記15)
前記複数のクロック信号は、同一のクロック源から分岐されたものであることを特徴とする、付記11〜付記14のいずれか一項に記載の設計検証方法。
(Appendix 15)
The design verification method according to any one of
1 処理装置
2 マスタクロック源(MCLK)
3A クロック系A(MCLK_A)
3B クロック系B(MCLK_B)
3C クロック系C(MCLK_C)
10 処理部
11 論理シミュレータ
110 デジタルδ遅延自動調整ツール(δ−adjuster)
111 δ遅延測定用信号代入部(算出部)
111A,111B,111C δ遅延加算部
112 δ遅延検証部(算出部)
112AB,112BA,112AC,112CA,112BC,112CB データインタフェースチェック部
113 δ遅延挿入判定部(選定部)
114 δ遅延調整用信号代入部(調整部)
114A,114B,114C δ遅延挿入部
121 分周器(PPG)
122 実時間遅延付与部
123 第1フリップフロップ(第1FF)
124 第2フリップフロップ(第2FF)
125 比較器
126 第3フリップフロップ(第3FF)
20 記憶部
21 HDL記述
22 設計結果
23 シミュレーション結果
24 プログラム
30 入力部
40 表示部
50 バス
1
3A Clock system A (MCLK_A)
3B Clock system B (MCLK_B)
3C Clock system C (MCLK_C)
10
111 δ delay measurement signal substitution unit (calculation unit)
111A, 111B, 111C δ
112AB, 112BA, 112AC, 112CA, 112BC, 112CB Data
114 δ delay adjustment signal substitution unit (adjustment unit)
114A, 114B, 114C δ
122 real time
124 second flip-flop (second FF)
20
Claims (7)
前記処理部は、
前記複数のクロック信号のうちデルタ遅延量が最も大きいクロック信号をベースクロック信号として選定し、
前記複数のクロック信号のうち前記ベースクロック信号以外のクロック信号のデルタ遅延量を、前記ベースクロック信号のデルタ遅延量に合わせるように調整することを特徴とする処理装置。 A processing apparatus having a processing unit that performs logic verification on an integrated circuit that operates with a plurality of clock signals having the same period and synchronous relationship,
The processor is
A clock signal having the largest delta delay amount among the plurality of clock signals is selected as a base clock signal,
The processing apparatus, wherein a delta delay amount of a clock signal other than the base clock signal among the plurality of clock signals is adjusted to match a delta delay amount of the base clock signal.
前記複数のクロック信号のうちの二つのクロック信号の全ての組合せについて、前記二つのクロック信号間のデルタ遅延量差分を算出し、
前記全ての組合せについて算出した前記デルタ遅延量差分に基づき、前記ベースクロック信号を選定することを特徴とする、請求項1に記載の処理装置。 The processor is
For all combinations of two clock signals of the plurality of clock signals, calculate a delta delay amount difference between the two clock signals,
The processing apparatus according to claim 1, wherein the base clock signal is selected based on the delta delay amount difference calculated for all the combinations.
前記二つのクロック信号の一方である測定側クロック信号を二分周してから二分岐し、二分岐した前記測定側クロック信号の一方を、任意の実時間遅延量を付与して第1フリップフロップにデータとして入力し、二分岐した前記測定側クロック信号の他方を第2フリップフロップにデータとして入力し、前記第1フリップフロップおよび前記第2フリップフロップに前記二つのクロック信号の他方である被測定側クロック信号をクロックとして入力することで前記第1フリップフロップおよび前記第2フリップフロップからそれぞれ出力される二つのデータの比較を行ない、前記比較の結果、前記二つのデータが一致しない場合、前記測定側クロック信号に対するデルタ遅延付き信号代入を一回実行する、処理を、前記比較の結果、前記二つのデータが一致するまで繰り返し実行し、
前記二つのデータが一致した時点でのデルタ遅延付き信号代入の実行回数を、前記二つのクロック信号間の前記デルタ遅延量差分として算出する、ことを特徴とする、請求項3に記載の処理装置。 The processor is
The measurement-side clock signal that is one of the two clock signals is divided into two and then branched into two, and one of the two-branched measurement-side clock signals is given an arbitrary real-time delay amount to the first flip-flop. The other side of the measurement side clock signal that has been bifurcated is input as data to the second flip-flop, and the other side of the two clock signals is input to the first flip-flop and the second flip-flop. By inputting a clock signal as a clock, two data output from the first flip-flop and the second flip-flop are compared, and if the two data do not match as a result of the comparison, the measurement side A signal substitution with a delta delay for the clock signal is performed once, and the processing is performed as a result of the comparison. Repeatedly run until the data matches,
The processing device according to claim 3, wherein the number of executions of signal substitution with delta delay when the two data coincide with each other is calculated as the delta delay amount difference between the two clock signals. .
前記集積回路において同一周期で且つ同期関係にある複数のクロック信号のうちデルタ遅延量が最も大きいクロック信号をベースクロック信号として選定する選定部と、
前記複数のクロック信号のうち前記ベースクロック信号以外のクロック信号のデルタ遅延量を、前記ベースクロック信号のデルタ遅延量に合わせるように調整する調整部と、を有することを特徴とする論理シミュレータ。 A logic simulator for simulating the operation of an integrated circuit subject to logic design,
A selecting unit that selects a clock signal having the largest delta delay amount as a base clock signal among a plurality of clock signals having the same period and a synchronous relationship in the integrated circuit;
A logic simulator, comprising: an adjustment unit that adjusts a delta delay amount of a clock signal other than the base clock signal among the plurality of clock signals so as to match a delta delay amount of the base clock signal.
前記集積回路において同一周期で且つ同期関係にある複数のクロック信号のうちデルタ遅延量が最も大きいクロック信号をベースクロック信号として選定し、
前記複数のクロック信号のうち前記ベースクロック信号以外のクロック信号のデルタ遅延量を、前記ベースクロック信号のデルタ遅延量に合わせるように調整することを特徴とする設計検証方法。 An integrated circuit design verification method comprising:
In the integrated circuit, a clock signal having the largest delta delay amount is selected as a base clock signal among a plurality of clock signals having the same period and synchronous relationship,
A design verification method, wherein a delta delay amount of a clock signal other than the base clock signal among the plurality of clock signals is adjusted to match a delta delay amount of the base clock signal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016027970A JP2017146774A (en) | 2016-02-17 | 2016-02-17 | Processing apparatus, logic simulator and design verification method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016027970A JP2017146774A (en) | 2016-02-17 | 2016-02-17 | Processing apparatus, logic simulator and design verification method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017146774A true JP2017146774A (en) | 2017-08-24 |
Family
ID=59683052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016027970A Pending JP2017146774A (en) | 2016-02-17 | 2016-02-17 | Processing apparatus, logic simulator and design verification method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017146774A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114465693A (en) * | 2022-02-16 | 2022-05-10 | 中国电子科技集团公司第五十四研究所 | Short-distance multi-node 10MHz signal synchronization method |
-
2016
- 2016-02-17 JP JP2016027970A patent/JP2017146774A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114465693A (en) * | 2022-02-16 | 2022-05-10 | 中国电子科技集团公司第五十四研究所 | Short-distance multi-node 10MHz signal synchronization method |
CN114465693B (en) * | 2022-02-16 | 2024-04-30 | 中国电子科技集团公司第五十四研究所 | Short-distance multi-node 10MHz signal synchronization method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7958470B1 (en) | Method and system for false path analysis | |
US8418093B2 (en) | Method and system for design simplification through implication-based analysis | |
US9589096B1 (en) | Method and apparatus for integrating spice-based timing using sign-off path-based analysis | |
US7934180B2 (en) | Incremental speculative merging | |
JP2006244073A (en) | Semiconductor design device | |
US7650581B2 (en) | Method for modeling and verifying timing exceptions | |
CN112417798B (en) | Time sequence testing method and device, electronic equipment and storage medium | |
US8365114B2 (en) | Logic modification synthesis | |
US20150370955A1 (en) | Method for adjusting a timing derate for static timing analysis | |
US20140129998A1 (en) | Hierarchical equivalence checking and efficient handling of equivalence checks when engineering change orders are in an unsharable register transfer level | |
US8504347B2 (en) | Simulation apparatus, simulation method, and program to perform simulation on design data of a target circuit | |
JP2004038617A (en) | Logic verification system and method, logic cone extraction device and method, and logic verification and logic cone extraction program | |
US10430535B2 (en) | Verification support program medium, verification support method, and information processing device for verification of a circuit | |
US20080288902A1 (en) | Circuit design verification method and apparatus and computer readable medium | |
CN107784185B (en) | Method and device for extracting pseudo path in gate-level netlist and terminal equipment | |
US10528689B1 (en) | Verification process for IJTAG based test pattern migration | |
US9058452B1 (en) | Systems and methods for tracing and fixing unknowns in gate-level simulation | |
US10162917B1 (en) | Method and system for implementing selective transformation for low power verification | |
JP5567322B2 (en) | Test flow presentation computer program, test flow presentation computer system | |
US9639644B1 (en) | Method and apparatus for master-clone optimization during circuit analysis | |
JP2017146774A (en) | Processing apparatus, logic simulator and design verification method | |
US20110077893A1 (en) | Delay Test Apparatus, Delay Test Method and Delay Test Program | |
JP6089627B2 (en) | Power consumption estimation apparatus and power consumption estimation method | |
US10055532B2 (en) | Collapsing terms in statistical static timing analysis | |
US20130014068A1 (en) | Computer-aided design system and methods thereof for merging design constraint files across operational modes |