JP2010021950A - Asynchronous interface circuit and method - Google Patents
Asynchronous interface circuit and method Download PDFInfo
- Publication number
- JP2010021950A JP2010021950A JP2008182926A JP2008182926A JP2010021950A JP 2010021950 A JP2010021950 A JP 2010021950A JP 2008182926 A JP2008182926 A JP 2008182926A JP 2008182926 A JP2008182926 A JP 2008182926A JP 2010021950 A JP2010021950 A JP 2010021950A
- Authority
- JP
- Japan
- Prior art keywords
- block
- master clock
- clock signal
- circuit
- signal
- 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 an asynchronous interface circuit, and more particularly to an asynchronous interface circuit between a transmission side block and a reception side block that operate as independent synchronization circuits.
LSI(Large Scale Integration)などの半導体装置の開発において、送信側ブロックと受信側ブロックとが、それぞれ独立したクロック信号で動作し、この送信側ブロックから受信側ブロックにデータが非同期転送される場合には、たとえば、図5に示すような非同期インターフェース回路を用いて設計する技術が知られている。 In the development of a semiconductor device such as LSI (Large Scale Integration), when the transmission side block and the reception side block operate with independent clock signals, and data is transferred asynchronously from the transmission side block to the reception side block. For example, a technique of designing using an asynchronous interface circuit as shown in FIG. 5 is known.
まず、送信側ブロックと受信側ブロックとの回路構成を、次の(A1)から(A4)に示すように設計する。
(A1)送信側ブロックと受信側ブロックとの間に、イネーブル信号線を1本設ける。
(A2)送信側ブロックは、フリップフロップ回路2010とフリップフロップ回路2011とで、送信側クロックに基いて、送信データを送信し、イネーブル信号を送信するようにする。
(A3)受信側ブロックにおいて、イネーブル信号線を介して送信側ブロックから受信したイネーブル信号を、フリップフロップ回路1010とフリップフロップ回路1011との2段のフリップフロップ回路で、受信側クロックに基いて、2段打ちして受信するようにする。これは、メタステーブル対策である。
(A4)送信側ブロックにおいて、2段打ちして受信したイネーブル信号に基いて、フリップフロップ回路1012(FF1012)で、送信データを取り込むようにする。
First, the circuit configurations of the transmission side block and the reception side block are designed as shown in the following (A1) to (A4).
(A1) One enable signal line is provided between the transmission side block and the reception side block.
(A2) The transmission side block uses the flip-
(A3) In the reception side block, the enable signal received from the transmission side block via the enable signal line is converted into a two-stage flip-flop circuit of a flip-
(A4) In the transmission side block, transmission data is fetched by the flip-flop circuit 1012 (FF1012) based on the enable signal received after two steps.
なお、図6は、図5の非同期インターフェース回路のシーケンス図である。このような非同期インターフェース回路に関する技術として、たとえば、特許文献1による技術が知られている。
しかしながら、特許文献1に示す非同期インターフェース回路にあっては、次のような問題がある。送信側ブロックと受信側ブロックとの回路構成を設計した後、設計者は、次の(B1)から(B2)に示すような検証を行う必要がある。
However, the asynchronous interface circuit shown in
(B1)レイアウト、及び、STA(Static Timing Analysis)検証において、取り込む送信データと2段打ちして受信したイネーブル信号との関係において、フリップフロップ回路1012が、確実にセットアップ時間およびホールド時間の条件を満たしていることを検証する必要がある。
(B2)また、設計時に、非同期インターフェースごとに、上記の詳細設計を行う必要がある。
(B1) In the layout and the STA (Static Timing Analysis) verification, the flip-
(B2) Further, at the time of designing, it is necessary to perform the above detailed design for each asynchronous interface.
ここで、送信側ブロックと受信側ブロックとが、互いに同期したクロック信号で動作し、送信側ブロックから送信されたデータが受信側ブロックに同期転送される場合には、上記のような設計上のケアが不要である。しかしながら、非同期インターフェースとなる箇所が多いと、上記のような設計上のケアの工数が増大するという問題がある。 Here, when the transmission side block and the reception side block operate with the clock signals synchronized with each other, and the data transmitted from the transmission side block is synchronously transferred to the reception side block, the design as described above is performed. Care is not required. However, if there are many places that become asynchronous interfaces, there is a problem that the number of man-hours for care as described above increases.
また、出荷試験の為のテストパターン作成においても、最大遅延時間と最小遅延時間とで、データの送受信のタイミングが1サイクルずれる可能性がある。そのため、特に、非同期インターフェース箇所が複数個所あると、テストパターンを作成する工数が増大するという問題がある。また、末端のフリップフロップ回路でのクロックパスは、遅延が大きくなり、クロックツリーでスキューを合わせる必要が生じる可能性がある。テストパターンでは、このようなクロックツリーでスキューを合わせるためのテストパターンも作成する必要が生じ、その工数が増大するという問題がある。 Also, in creating a test pattern for a shipping test, there is a possibility that the data transmission / reception timing is shifted by one cycle between the maximum delay time and the minimum delay time. Therefore, in particular, when there are a plurality of asynchronous interface locations, there is a problem that the number of steps for creating a test pattern increases. In addition, the clock path in the terminal flip-flop circuit has a large delay, and it may be necessary to match the skew in the clock tree. In the test pattern, it is necessary to create a test pattern for adjusting the skew with such a clock tree, and there is a problem that the number of man-hours increases.
本発明は、このような事情に鑑みてなされたもので、その目的は、STA検証、及びテストパターンの作成を増大させることなく検証可能な、送信側ブロックと受信側ブロックとの間での、データ送信およびデータ受信ができる非同期インターフェース回路および非同期インターフェース方法を提供することにある。 The present invention has been made in view of such circumstances, and its purpose is to enable verification without increasing STA verification and test pattern creation, between a transmission side block and a reception side block. An asynchronous interface circuit capable of transmitting and receiving data and an asynchronous interface method are provided.
この発明は上述した課題を解決するためになされたもので、請求項1に記載の発明は、マスタクロック信号をそれぞれ有する送信側ブロックと受信側ブロックとの間の非同期インターフェース回路であって、前記送信側ブロックと受信側ブロックとのうち一方のブロックが、他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りまたは立ち下りから、前記一方のブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給するクロック生成回路、を有していることを特徴とする非同期インターフェース回路である。
The present invention has been made to solve the above-described problems, and the invention according to
請求項2に記載の発明は、前記一方のブロックが受信側ブロックである場合には、前記送信側ブロックが、前記送信側ブロックのマスタクロック信号に同期して送信データを送信するとともに、前記送信側ブロックのマスタクロック信号に同期して動作し、前記受信側ブロックが、前記クロック生成回路がマスクしたマスタクロック信号に同期して前記送信側ブロックからの送信データを受信するとともに、前記クロック生成回路がマスクしたマスタクロック信号に同期して動作する、ことを特徴とする請求項1に記載の非同期インターフェース回路である。
According to a second aspect of the present invention, when the one block is a receiving block, the transmitting block transmits transmission data in synchronization with a master clock signal of the transmitting block and the transmission The clock generation circuit operates in synchronization with the master clock signal of the side block, and the reception side block receives transmission data from the transmission side block in synchronization with the master clock signal masked by the clock generation circuit. The asynchronous interface circuit according to
請求項3に記載の発明は、前記一方のブロックが送信側ブロックである場合には、前記送信側ブロックが、前記クロック生成回路がマスクしたマスタクロック信号に同期して送信データを送信するとともに、前記クロック生成回路がマスクしたマスタクロック信号に同期して動作し、前記受信側ブロックが、前記受信側ブロックのマスタクロック信号に同期して前記送信側ブロックからの送信データを受信するとともに、前記受信側ブロックのマスタクロック信号に同期して動作する、ことを特徴とする請求項1に記載の非同期インターフェース回路である。
In the invention according to
請求項4に記載の発明は、前記クロック生成回路が、前記他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りを検出する立ち上り検出回路と、前記立ち上り検出回路が検出した立ち上りに基づいて、前記一方のブロックのマスタクロック信号に基いてカウントし、該カウントした値が予め定められている値と一致する場合にマスク信号を出力するマスク信号出力回路と、前記マスク信号発生回路が出力するマスク信号に基づいて、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給するマスク回路と、を有していることを特徴とする請求項1から請求項3のいずれかに記載の非同期インターフェース回路である。
According to a fourth aspect of the present invention, the clock generation circuit receives the master clock signal of the other block, detects a rising edge of the received master clock signal, and the rising detection circuit detects the rising edge of the received master clock signal. A mask signal output circuit that counts based on the rising edge based on the master clock signal of the one block and outputs a mask signal when the counted value matches a predetermined value, and the
請求項5に記載の発明は、前記クロック生成回路が、前記他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号と位相同期した信号を位相同期信号として生成する位相同期回路と、前記位相同期回路が生成した位相同期信号のHighレベルである期間に応じて、前記一方のブロックのマスタクロック信号に基いてカウントし、該カウントした値が予め定められている値と一致する場合にマスク信号を出力するマスク信号出力回路と、前記マスク信号発生回路が出力するマスク信号に基づいて、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給するマスク回路と、を有していることを特徴とする請求項1から請求項3のいずれかに記載の非同期インターフェース回路である。
According to a fifth aspect of the present invention, the clock generation circuit receives the master clock signal of the other block, and generates a signal that is phase-synchronized with the received master clock signal as a phase synchronization signal; When counting is performed based on the master clock signal of the one block according to the period of the phase synchronization signal generated by the phase synchronization circuit being at a high level, and the counted value matches a predetermined value A mask signal output circuit that outputs a mask signal; and a mask circuit that masks the master clock signal of the one block and supplies the mask signal to the one block based on the mask signal output from the mask signal generation circuit. The asynchronous interface circuit according to
請求項6に記載の発明は、マスタクロック信号をそれぞれ有する送信側ブロックと受信側ブロックとの間の非同期インターフェース回路において用いられる非同期インターフェース方法であって、前記送信側ブロックと受信側ブロックとのうち一方のブロックが、他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りまたは立ち下りから、前記一方のブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給する、ことを特徴とする非同期インターフェース方法である。
The invention according to
この発明によれば、マスタクロック信号をそれぞれ有する送信側ブロックと受信側ブロックとの間の非同期インターフェース回路において、送信側ブロックと受信側ブロックとのうち一方のブロックが、他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りまたは立ち下りから、一方のブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、一方のブロックのマスタクロック信号をマスクして一方のブロックに供給する。 According to the present invention, in the asynchronous interface circuit between the transmission side block and the reception side block each having a master clock signal, one of the transmission side block and the reception side block is the master clock signal of the other block. When the value counted based on the master clock signal of one block from the rising or falling edge of the received master clock signal matches the predetermined value, the master clock of one block The signal is masked and supplied to one block.
そのため、この非同期インターフェース回路によれば、メタステーブルが発生するようなタイミング、または、セットアップ時間およびホールド時間が満たされないようなタイミングで、受信側ブロックが送信側ブロックからの送信データを取り込むことがない。または、受信側で、メタステーブルが発生するようなタイミング、または、セットアップ時間およびホールド時間が満たされないようなタイミングで、送信側ブロックが受信側ブロックに送信データを送信しない。 Therefore, according to this asynchronous interface circuit, the reception side block does not capture the transmission data from the transmission side block at the timing at which the metastable is generated or at the timing at which the setup time and the hold time are not satisfied. . Alternatively, the transmission side block does not transmit the transmission data to the reception side block at the timing at which the metastable is generated on the reception side or the timing at which the setup time and hold time are not satisfied.
よって、メタステーブルが発生しないように、かつ、セットアップ時間およびホールド時間が満たされているようにして、それぞれのマスタクロック信号を有する送信側ブロックと受信側ブロックとの間で、送信データの送信および受信ができる。また、送信側ブロックと受信側ブロックとは、それぞれのマスタクロック信号に同期して、同期回路として動作している。そのため、それぞれのブロックの検証などは、同期回路として検証可能である。よって、STA検証、及びテストパターンの作成なども、増大することなく、検証可能となる。 Therefore, transmission of transmission data is performed between the transmission side block and the reception side block having the respective master clock signals so that the metastable is not generated and the setup time and hold time are satisfied. Can receive. Further, the transmission side block and the reception side block operate as a synchronization circuit in synchronization with each master clock signal. Therefore, each block can be verified as a synchronous circuit. Therefore, STA verification and test pattern creation can be verified without increasing.
<第1の実施形態>
以下、図面を参照して、本発明の実施の形態について説明する。図1は、この発明の第1の実施形態による非同期インターフェース回路1の構成を示す概略ブロック図である。この非同期インターフェース回路1は、送信側ブロックと受信側ブロックとの間の非同期インターフェースに用いられる回路である。この送信側ブロックと受信側ブロックとは、それぞれのマスタクロック信号を有している。ここでは、受信側ブロックが、この非同期インターフェース回路1を有する場合について説明する。なお、ここでは、送信側ブロックでの同期処理に用いられているマスタクロック信号より、受信側ブロックでの同期処理に用いられているマスタクロック信号の方が、早いものとして説明する。
<First Embodiment>
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a schematic block diagram showing a configuration of an
非同期インターフェース回路1は、送信側ブロックのマスタクロック信号を受信し、この受信したマスタクロック信号の立ち上りまたは立ち下りから、受信側ブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、受信側ブロックのマスタクロック信号をマスクして受信側ブロックに供給するクロック生成回路2を有している。
The
このクロック生成回路2は、立ち上り検出回路10と、マスク信号出力回路20と、マスク回路30とを有している。立ち上り検出回路10は、送信側ブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りを検出する。マスク信号出力回路20は、立ち上り検出回路10が検出した立ち上りに基づいて、受信側ブロックのマスタクロック信号に基いてカウントし、該カウントした値が予め定められている値と一致する場合にマスク信号を出力する。マスク回路30は、マスク信号出力回路20が出力するマスク信号に基づいて、受信側ブロックのマスタクロック信号をマスクして受信側ブロックに供給する。
The
そして、送信側ブロックは、送信側ブロックのマスタクロック信号に同期して送信データを送信するとともに、送信側ブロックのマスタクロック信号に同期して動作する。たとえば、送信側ブロックにおいて、送信データを生成する前段回路が、送信側ブロックのマスタクロック信号に同期して動作する。また、この前段回路が生成した送信データを、送信回路が、送信側ブロックのマスタクロック信号に同期して送信データを送信する。 The transmission side block transmits transmission data in synchronization with the master clock signal of the transmission side block and operates in synchronization with the master clock signal of the transmission side block. For example, in the transmission side block, a pre-stage circuit that generates transmission data operates in synchronization with the master clock signal of the transmission side block. The transmission circuit transmits the transmission data generated by the preceding circuit in synchronization with the master clock signal of the transmission side block.
また、受信側ブロックが、クロック生成回路2がマスクしたマスタクロック信号に同期して送信側ブロックからの送信データを受信するとともに、クロック生成回路2がマスクしたマスタクロック信号に同期して動作する。たとえば、受信側ブロックにおいて、受信回路が、クロック生成回路2がマスクしたマスタクロック信号に同期して送信側ブロックからの送信データを受信する。また、この受信回路が受信した送信データを、後段回路が、クロック生成回路2がマスクしたマスタクロック信号に同期して、信号処理などの動作を実行する。
The reception side block receives transmission data from the transmission side block in synchronization with the master clock signal masked by the
次に、各構成の詳細について説明する。立ち上り検出回路10は、複数段のフリップフロップ回路100と、リセット信号出力回路200と、を有している。複数段のフリップフロップ回路100は、受信した送信側ブロックのマスタクロック信号を、受信側ブロックのマスタクロック信号に基いて順にラッチする。
Next, details of each component will be described. The rising
たとえば、複数段のフリップフロップ回路100の段数が3段の場合には、この複数段のフリップフロップ回路100は、フリップフロップ回路101、102および103を有している。この各フリップフロップ回路は、受信側ブロックのマスタクロック信号の立ち上がりに応じて入力信号をラッチして、出力信号として出力する。フリップフロップ回路101の入力端子には、送信側ブロックのマスタクロック信号が入力されている。フリップフロップ回路101の出力は、フリップフロップ回路101の入力端子に入力されている。フリップフロップ回路102の出力は、フリップフロップ回路103の入力端子に入力されている。
For example, when the number of stages of the multi-stage flip-
このフリップフロップ回路101と102とは、送信側ブロックのマスタクロック信号を、受信側ブロックのマスタクロック信号で、2段打ちして入力するフリップフロップ回路である。そして、フリップフロップ回路103は、2段打ちして入力した送信側ブロックのマスタクロック信号について、その立ち上がりを検出するためのフリップフロップ回路である。
The flip-
リセット信号出力回路200は、複数段のフリップフロップ回路100が出力する信号に基づいて、受信したマスタクロック信号の立ち上りを検出してリセット信号を出力する。たとえば、リセット信号出力回路200は、論理回路201とインバータ回路202とを有している。この論理回路201は、たとえば、フリップフロップ回路102の出力を、インバータ回路202を介して一方の入力端子に入力し、フリップフロップ回路103の出力を他方の入力端子に入力する、OR回路である。
このリセット信号出力回路200の論理回路201としてのOR回路は、フリップフロップ回路102の出力がHighレベルとなり、すなわち、インバータ回路202を介して入力されるフリップフロップ回路102の出力がLowレベルとなり、かつ、フリップフロップ回路103の出力がLowレベルとなった場合に、Lowレベルのリセット信号を出力する。
The reset
In the OR circuit as the
そして、上述したマスク信号出力回路20は、立ち上り検出回路10のリセット信号出力回路200からリセット信号が入力されたことに応じて、受信側ブロックのマスタクロック信号に基いてカウントし、該カウントした値が予め定められている値と一致する場合にマスク信号を出力する。
The mask
このマスク信号出力回路20は、たとえば、カウンタ部と、比較値記憶部と、比較部とを有している。カウンタ部は、立ち上り検出回路10のリセット信号出力回路200からリセット信号が入力されたことに応じて、受信側ブロックのマスタクロック信号に基いて、カウント値の値をリセットするとともに、カウントを開始する。比較値記憶部には、カウンタ部がカウントした値と比較する値が比較値として、予め記憶されている。比較部は、カウンタ部がカウントした値と、比較値記憶部から読み出した比較する値とを比較し、比較した結果が一致する場合に、マスク信号を出力する。
The mask
なお、比較値記憶部には、比較値として、複数の比較値、または、連続する複数の比較値が、予め記憶されていてもよい。この場合、比較部は、複数の比較値、または、連続する複数の比較値に応じた期間を有するマスク信号を出力することができる。なお、この比較値記憶部には、比較値として、後述するように、送信側ブロックからの送信データを、メタステーブルが発生するようなタイミング、または、セットアップ時間およびホールド時間を満たされないようなタイミングで、受信側ブロックの受信回路が、受信側マスタクロックの立ち上がりに同期して取り込まない値が、予め記憶されている。 In the comparison value storage unit, a plurality of comparison values or a plurality of continuous comparison values may be stored in advance as comparison values. In this case, the comparison unit can output a mask signal having a period corresponding to a plurality of comparison values or a plurality of successive comparison values. As will be described later, in this comparison value storage unit, as will be described later, the transmission data from the transmission side block is generated at a timing at which a metastable is generated, or at a timing at which the setup time and hold time are not satisfied. Thus, values that are not captured by the receiving circuit of the receiving block in synchronization with the rising of the receiving master clock are stored in advance.
次に、図2を用いて、第1の実施形態による非同期インターフェース回路1の動作について説明する。まず、時刻t1において、送信側マスタクロックが立ち下がる。ここでは、マスク信号出力回路20はマスク信号を出力していない。すなわち、マスク信号出力回路20はLowレベルのマスク信号を出力している。よって、マスク回路30は、受信側マスタクロックをマスクすることなく、受信側クロックとして、受信側ブロックに供給している。
Next, the operation of the
その後、時刻t3で、マスク信号出力回路20において、カウントした値が予め定められている値と一致し、マスク信号をマスク回路30に出力する。すなわち、マスク信号出力回路20は、Highレベルのマスク信号を出力する。マスク回路30は、マスク信号出力回路20から入力されたマスク信号に応じて、受信側マスタクロックをマスクし、このマスクした受信側マスタクロックを受信側クロックとして、受信側ブロックに供給する。そのため、時刻t5から時刻t6の期間、および、時刻t7から時刻t8の期間では、受信側マスタクロックのHighパルスは、マスク回路30により、マスクされている。なお、この時刻t3で一致したマスク信号出力回路20のカウントは、たとえば、この図2に示しているシーケンスの直前に、送信側マスタクロックの立ち上がりからカウントされたものである。
Thereafter, at time t3, the mask
その後、時刻t6で、送信側マスタクロックが立ち上がる。送信側ブロックは、時刻t6の送信側マスタクロックが立ち上がりに応じて、送信データを送信する。そのため、たとえば、時刻t6の送信側マスタクロックが立ち上がりから所定の遅延時間が経過した後、送信側ブロックからの送信データが、受信側ブロックに入力される。たとえば、時刻t7前後で、送信側ブロックからの送信データが、受信側ブロックの受信回路に入力される。 Thereafter, at time t6, the transmission side master clock rises. The transmission side block transmits transmission data in response to the rising of the transmission side master clock at time t6. Therefore, for example, after a predetermined delay time elapses from the rise of the transmission side master clock at time t6, transmission data from the transmission side block is input to the reception side block. For example, before and after time t7, transmission data from the transmission side block is input to the reception circuit of the reception side block.
ここで、時刻t5または時刻t7において、受信側ブロックでは、マスク回路30が、マスクした受信側マスタクロックを受信側クロックとして、受信側ブロックに供給している。そのため、時刻t5または時刻t7においては、受信側ブロックの受信回路では、送信側ブロックからの送信データを、取り込まない。
Here, at the time t5 or the time t7, in the reception side block, the
その後、時刻t7で、マスク信号出力回路20が、マスク信号をマスク回路30に出力しなくなる。すなわち、時刻t7で、マスク信号出力回路20は、Lowレベルのマスク信号を出力する。マスク回路30は、マスク信号出力回路20から入力されたマスク信号に応じて、受信側マスタクロックをマスクせず、このマスクしない受信側マスタクロックを受信側クロックとして、受信側ブロックに供給する。
Thereafter, the mask
次に、マスクしない受信側マスタクロックを受信側クロックとして供給された受信側ブロックの受信回路は、時刻t9の受信側クロックの立ち上がりに応じて、入力されていた送信データを取り込み受信する。その後、この受信回路が受信した送信データを、後段回路が、クロック生成回路2がマスクしたマスタクロック信号に同期して、信号処理などの動作を実行する。
Next, the reception circuit of the reception side block supplied with the reception side master clock not masked as the reception side clock captures and receives the input transmission data in response to the rising of the reception side clock at time t9. Thereafter, the transmission circuit received by the receiving circuit is synchronized with the master clock signal masked by the
なお、時刻t7の、受信側マスタクロックの立ち上がりに応じて、立ち上り検出回路10は、受信した送信側マスタクロックの立ち上がりを検出して、リセット信号をマスク信号出力回路20に出力する。リセット信号が入力されたマスク信号出力回路20は、カウンタの値をリセットするとともに、受信側マスタクロックの立ち上がりに応じて、カウントを開始する。このカウントは、マスク信号出力回路20で、後の時刻t13および時刻t15のマスク信号の生成に用いられる。
Note that the rising
上記に説明したように、この第1の実施形態による非同期インターフェース回路1は、受信ブロックにおいて、時刻t5や時刻t7のような、送信側ブロックからの送信データが入力され、メタステーブルが発生するようなタイミング、または、セットアップ時間およびホールド時間を満たされないようなタイミングにおいて、受信側マスタクロックの立ち上がりに同期して、この送信データを取り込んで受信することがない。これは、受信側ブロックにおいては、受信側ブロックの受信回路に送信データが入力される時刻t5からt7においては、この受信回路には、クロック生成回路2によりマスクされた受信側マスタクロックが受信側クロックとして入力されているためである。
As described above, in the
そして、受信ブロックにおいて、送信データに対して、メタステーブルが発生しないようなタイミング、かつ、セットアップ時間およびホールド時間が満たされているタイミングにおいて(たとえば、時刻t9において)、クロック生成回路2から供給された受信側クロックの立ち上がりに応じて、すなわち受信側クロックに同期して、受信回路が入力された送信データを取り込んで受信する。
In the reception block, the
よって、この非同期インターフェース回路1によれば、メタステーブルが発生しないように、かつ、セットアップ時間およびホールド時間が満たされているようにして、それぞれのマスタクロック信号に同期して動作している送信側ブロックと受信側ブロックとの間で、送信データの送信および受信ができる。
Therefore, according to this
また、送信側ブロックと受信側ブロックとは、それぞれのマスタクロック信号に同期して、同期回路として動作している。また、マスク回路30がマスクする期間は、STA検証において、送信側ブロックと受信側ブロックとのインターフェースが、同期インターフェースとして扱えるように十分か期間のマージンを有するようにしておく。これにより、それぞれのブロックは、同期回路として検証可能である。よって、テストパターンの作成なども、非同期回路の検証の場合にように増大することなく、検証可能となる。
Further, the transmission side block and the reception side block operate as a synchronization circuit in synchronization with each master clock signal. Further, the masking period of the
また、非同期動作の検証については、このクロック生成回路2などの非同期インターフェース回路1の部分のみについて、検証すればよい。そのため、送信側ブロックと受信側ブロックとの全体の検証において、非同期動作の検証は、容易となる。
As for the verification of the asynchronous operation, only the portion of the
上記の説明においては、受信側ブロックが非同期インターフェース回路1を有している場合について説明したが、送信側ブロックが非同期インターフェース回路1を有していてもよい。この場合、受信側ブロックでの同期処理に用いられているマスタクロック信号より、送信側ブロックでの同期処理に用いられているマスタクロック信号の方が、早いものとする。そして、この場合、クロック生成回路2は、受信側ブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りまたは立ち下りから、送信側ブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、送信側ブロックのマスタクロック信号をマスクして送信側ブロックに供給する。
In the above description, the case where the reception side block has the
また、この場合には、送信側ブロックが、クロック生成回路2がマスクしたマスタクロック信号に同期して送信データを送信するとともに、クロック生成回路2がマスクしたマスタクロック信号に同期して動作する。また、受信側ブロックが、受信側ブロックのマスタクロック信号に同期して送信側ブロックからの送信データを受信するとともに、受信側ブロックのマスタクロック信号に同期して動作する。
In this case, the transmission side block transmits transmission data in synchronization with the master clock signal masked by the
なお、上記に説明した第1の実施形態においては、受信側ブロックでの同期処理に用いられているマスタクロック信号と、送信側ブロックでの同期処理に用いられているマスタクロック信号とで、周波数の早いマスタクロック信号を有するブロックが、非同期インターフェース回路1を有するようにする。これは、早い周波数のマスタクロック信号で動作するクロック生成回路2であれば、受信した遅い周波数のマスタクロック信号の立ち上りまたは立ち下りから、早い周波数のマスタクロック信号でカウントすることが可能であるからである。また、これにより、マスク信号の生成などが可能となるからである。
In the first embodiment described above, the frequency of the master clock signal used for the synchronization process in the reception side block and the master clock signal used for the synchronization process in the transmission side block are The block having the fast master clock signal has the
なお、クロック生成回路2は、マスタクロック信号を予め定められている倍率で倍周するPLL(Phase-Locked Loop)回路を有していてもよい。ここでは、受信側ブロックが、クロック生成回路2を有している場合について説明する。この場合、PLL回路は、受信側ブロックのマスタクロック信号を予め定められている倍率で倍周する。
The
クロック生成回路2がPLL回路を有していない場合には、上記に説明したように、クロック生成回路2は、送信側ブロックのマスタクロック信号を受信し、この受信したマスタクロック信号の立ち上りまたは立ち下りから、受信側ブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、受信側ブロックのマスタクロック信号をマスクして受信側ブロックに供給していた。
When the
これに対して、クロック生成回路2がPLL回路を有している場合には、クロック生成回路2は、送信側ブロックのマスタクロック信号を受信し、この受信したマスタクロック信号の立ち上りまたは立ち下りから、PLL回路が倍周した受信側ブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、受信側ブロックのマスタクロック信号をマスクして受信側ブロックに供給する。具体的には、立ち上り検出回路10とマスク信号出力回路20とが、受信側ブロックのマスタクロック信号に基いて動作することに代わって、PLL回路が倍周した受信側ブロックのマスタクロック信号に基いて動作する。
On the other hand, when the
このPLL回路を有するクロック生成回路2は、送信側ブロックと受信側ブロックとのマスタクロック信号の周波数が同じ場合、または、ほぼ同じ場合でも、この受信したマスタクロック信号の立ち上りまたは立ち下りからカウントすることができる。
The
そのため、このPLL回路を有するクロック生成回路2は、送信側ブロックと受信側ブロックとで一方のマスタクロック信号の周波数が早い場合のクロック生成回路2と同様に、メタステーブルが発生しないように、かつ、セットアップ時間およびホールド時間が満たされているようにして、それぞれのマスタクロック信号を有する送信側ブロックと受信側ブロックとの間で、送信データの送信および受信ができる。
Therefore, the
なお、ここでは、受信側ブロックがクロック生成回路2を有している場合について説明したが、送信側ブロックがクロック生成回路2を有していても良い。この場合には、PLL回路は、送信側ブロックのマスタクロック信号を予め定められている倍率で倍周する。なお、クロック生成回路2は、受信側ブロックがクロック生成回路2を有している場合と同様である。
Although the case where the reception side block has the
<第2の実施形態>
次に、図3と図4とを用いて、第2の実施形態について説明する。なお、ここでは、受信側ブロックが、非同期インターフェース回路3を有している場合について説明する。
<Second Embodiment>
Next, a second embodiment will be described with reference to FIGS. 3 and 4. Here, a case where the receiving side block has the
この第2の実施形態によるクロック生成回路4は、位相同期回路11と、マスク信号出力回路21と、マスク回路30とを有している。位相同期回路11は、送信側ブロックのマスタクロック信号を受信し、該受信したマスタクロック信号と位相同期した信号を位相同期信号として生成する。
The
マスク信号出力回路21は、位相同期回路11が生成した位相同期信号のHighレベルである期間に応じて、受信側ブロックのマスタクロック信号に基いてカウントし、該カウントした値が予め定められている値と一致する場合に、マスク信号出力回路20と同様に、マスク信号を出力する。マスク回路31は、マスク信号出力回路21が出力するマスク信号に基づいて、受信側ブロックのマスタクロック信号をマスクして受信側ブロックに、マスク回路30と同様に、供給する。
The mask
次に、各構成の詳細について説明する。位相同期回路11は、位相比較器111と、ループフィルタ回路112と、DCO(digitally controlled oscillator)113と、分周器114と、を有している。位相比較器111の一方の入力端子には、送信側ブロックのマスタクロック信号が入力され、位相比較器111の他方の端子には、分周器114で生成された位相同期信号が入力されている。この位相比較器111は、入力された二つの信号の位相差を電圧に変換して、出力する。
Next, details of each component will be described. The
ループフィルタ回路112は、位相比較器111から入力された信号を位相補償して出力するローパスフィルタである。DCO113は、デジタル信号で発振周波数を制御するデジタル制御発振器であり、ループフィルタ回路112から入力されたデジタル信号によって出力パルスの周波数を制御する。
The
分周器114は、DCO113から入力された周波数を、N分割(このNは予め定められた任意の整数または分数である。)して、位相同期信号として出力する。たとえば、このNの値は1に固定されていてもよい。Nの値が1の場合には、この位相同期回路11は、送信側ブロックのマスタクロック信号に位相同期した1倍の位相同期信号を生成する。
The
マスク信号出力回路21は、マスク信号出力回路20と同様の構成を有している。ただし、マスク信号出力回路20のカウンタ部は、位相同期回路11が生成した位相同期信号のHighレベルである期間に応じて、受信側ブロックのマスタクロック信号に基いてカウントする。マスク回路31は、マスク回路30と同様の構成を有している。
The mask
次に、図4を用いて、第2の実施形態によるクロック生成回路4の動作について説明する。第1の実施形態によるクロック生成回路2と同様に、たとえば、時刻t4から時刻t6の期間において、マスク信号出力回路21が、マスク信号を出力する。すなわち、マスク信号出力回路21が、Highレベルのマスク信号を出力する。そして、マスク回路31が、時刻t4から時刻t6の期間において、このHighレベルのマスク信号に応じて、受信側マスタクロックをマスクし、このマスクした受信側マスタクロックを受信側クロックとして、受信側ブロックに供給する。
Next, the operation of the
その後、時刻t6以降においては、マスク信号出力回路21は、マスク信号を出力しない。すなわち、マスク信号出力回路21が、Lowレベルのマスク信号を出力する。そして、マスク回路31が、時刻t6以降において、このLowレベルのマスク信号に応じて、受信側マスタクロックをマスクせず、このマスクしない受信側マスタクロックを受信側クロックとして、受信側ブロックに供給する。
Thereafter, after time t6, the mask
そして、たとえば、時刻t6において、マスク回路31から供給された受信側クロックの立ち上がりに応じて、すなわち、受信側クロックに同期して、受信側ブロックの受信回路が、送信データを取り込んで受信する。
For example, at time t6, the reception circuit of the reception side block receives and receives the transmission data in response to the rising of the reception side clock supplied from the
よって、第2の実施形態による非同期インターフェース回路3も、第1の実施形態による非同期インターフェース回路1と同様に、メタステーブルが発生しないように、かつ、セットアップ時間およびホールド時間が満たされているようにして、それぞれのマスタクロック信号を有する送信側ブロックと受信側ブロックとの間で、送信データの送信および受信ができる。
Therefore, as with the
なお、ここでは、クロック生成回路4を受信側ブロックが有する場合について説明したが、第1の実施形態によるクロック生成回路2と同様に、この第2の実施形態によるクロック生成回路4を、送信側ブロックが有するようにしてもよい。
Although the case where the reception side block has the
また、第1の実施形態によるクロック生成回路2と第2の実施形態によるクロック生成回路4とを組み合わせて用いてもよい。たとえば、第2の実施形態によるクロック生成回路4は、位相同期回路11を用いているが、電源投入時などにおいて、この位相同期回路11が、受信したマスタクロック信号と位相同期した位相同期信号を出力するまでには、所定の期間を要することがある。
Further, the
このような電源投入時などにおいて、第1の実施形態を第2の実施形態に組み合わせることにより、電源投入時などにおいて位相同期回路11が位相同期していない期間においても、第1の実施形態と同様に、送信側ブロックと受信側ブロックとの間で、送信データを送信および受信することが可能となる。
By combining the first embodiment with the second embodiment at the time of turning on the power, the first embodiment and the first embodiment can be obtained even during the period when the
なお、組み合わせる場合には、たとえば、第2の実施形態によるクロック生成回路4が、第1の実施形態によるクロック生成回路2の立ち上り検出回路10を有するようにする。そして、この立ち上り検出回路10が、リセット信号を、位相同期回路11の分周器114に入力するようにする。そして、分周器114が、リセット信号が入力されたことに応じて、位相を同期させる処理を開始し、位相同期信号を出力する。これにより、マスク信号出力回路21とマスク回路31とは、第2の実施形態と同様に、動作することが可能である。
In the case of combination, for example, the
なお、上記の説明においては、非同期インターフェース回路1または3の回路構成について説明したが、この回路構成を有する非同期インターフェース回路1または3を用いて、送信ブロックおよび受信ブロックを、ハードウェア記述言語で記述して設計し、また、これをSTA検証してもよい。また、この記述による設計およびSTA検証を、コンピュータ装置上で行ってもよい。また、これを、コンピュータ装置上で動作させるためのプログラムとしてもよいし、このプログラムを記録媒体に記録してもよい。
In the above description, the circuit configuration of the
なお、比較値記憶部は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)内部のレジスタやRAM、ROMやフラッシュメモリ等の不揮発性メモリ、あるいはこれらの組み合わせにより構成されるものとする。 The comparison value storage unit is configured by a register or RAM in an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA), a nonvolatile memory such as a ROM or a flash memory, or a combination thereof. .
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes design and the like within a scope not departing from the gist of the present invention.
1、3…非同期インターフェース回路、2、4…クロック生成回路、10…立ち上り検出回路、11…位相同期回路、20、21…マスク信号出力回路、30、31…マスク回路、100…複数段のフリップフロップ回路、101、102、103、1010、1011、1012、2010、2011…フリップフロップ回路、111…位相比較器、112…ループフィルタ回路、113…DCO、114…分周器、200…リセット信号出力回路、201…論理回路、202…インバータ回路
DESCRIPTION OF
Claims (6)
前記送信側ブロックと受信側ブロックとのうち一方のブロックが、
他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りまたは立ち下りから、前記一方のブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給するクロック生成回路、
を有していることを特徴とする非同期インターフェース回路。 An asynchronous interface circuit between a sending block and a receiving block each having a master clock signal,
One block of the transmitting block and the receiving block is
When the master clock signal of the other block is received, and the value counted based on the master clock signal of the one block from the rising or falling edge of the received master clock signal matches the predetermined value A clock generation circuit that masks the master clock signal of the one block and supplies the master clock signal to the one block;
An asynchronous interface circuit characterized by comprising:
前記送信側ブロックが、
前記送信側ブロックのマスタクロック信号に同期して送信データを送信するとともに、前記送信側ブロックのマスタクロック信号に同期して動作し、
前記受信側ブロックが、
前記クロック生成回路がマスクしたマスタクロック信号に同期して前記送信側ブロックからの送信データを受信するとともに、前記クロック生成回路がマスクしたマスタクロック信号に同期して動作する、
ことを特徴とする請求項1に記載の非同期インターフェース回路。 If the one block is a receiving block,
The sender block is
Transmitting transmission data in synchronization with the master clock signal of the transmission side block, and operating in synchronization with the master clock signal of the transmission side block,
The receiving block is
The clock generation circuit receives transmission data from the transmission side block in synchronization with the masked master clock signal, and the clock generation circuit operates in synchronization with the masked master clock signal.
The asynchronous interface circuit according to claim 1.
前記送信側ブロックが、
前記クロック生成回路がマスクしたマスタクロック信号に同期して送信データを送信するとともに、前記クロック生成回路がマスクしたマスタクロック信号に同期して動作し、
前記受信側ブロックが、
前記受信側ブロックのマスタクロック信号に同期して前記送信側ブロックからの送信データを受信するとともに、前記受信側ブロックのマスタクロック信号に同期して動作する、
ことを特徴とする請求項1に記載の非同期インターフェース回路。 If the one block is a sender block,
The sender block is
Transmitting transmission data in synchronization with the master clock signal masked by the clock generation circuit, and operating in synchronization with the master clock signal masked by the clock generation circuit,
The receiving block is
Receiving transmission data from the transmission side block in synchronization with the master clock signal of the reception side block, and operating in synchronization with the master clock signal of the reception side block;
The asynchronous interface circuit according to claim 1.
前記他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りを検出する立ち上り検出回路と、
前記立ち上り検出回路が検出した立ち上りに基づいて、前記一方のブロックのマスタクロック信号に基いてカウントし、該カウントした値が予め定められている値と一致する場合にマスク信号を出力するマスク信号出力回路と、
前記マスク信号発生回路が出力するマスク信号に基づいて、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給するマスク回路と、
を有していることを特徴とする請求項1から請求項3のいずれかに記載の非同期インターフェース回路。 The clock generation circuit includes:
A rising edge detection circuit that receives the master clock signal of the other block and detects the rising edge of the received master clock signal;
A mask signal output that counts based on the master clock signal of the one block based on the rising edge detected by the rising edge detection circuit and outputs a mask signal when the counted value matches a predetermined value Circuit,
A mask circuit that masks the master clock signal of the one block and supplies the mask signal to the one block based on a mask signal output from the mask signal generation circuit;
The asynchronous interface circuit according to claim 1, further comprising:
前記他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号と位相同期した信号を位相同期信号として生成する位相同期回路と、
前記位相同期回路が生成した位相同期信号のHighレベルである期間に応じて、前記一方のブロックのマスタクロック信号に基いてカウントし、該カウントした値が予め定められている値と一致する場合にマスク信号を出力するマスク信号出力回路と、
前記マスク信号発生回路が出力するマスク信号に基づいて、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給するマスク回路と、
を有していることを特徴とする請求項1から請求項3のいずれかに記載の非同期インターフェース回路。 The clock generation circuit includes:
A phase synchronization circuit that receives the master clock signal of the other block and generates a signal that is phase-synchronized with the received master clock signal as a phase synchronization signal;
When counting is performed based on the master clock signal of the one block according to the period of the phase synchronization signal generated by the phase synchronization circuit being at a high level, and the counted value matches a predetermined value A mask signal output circuit for outputting a mask signal;
A mask circuit that masks the master clock signal of the one block and supplies the mask signal to the one block based on a mask signal output from the mask signal generation circuit;
The asynchronous interface circuit according to claim 1, further comprising:
前記送信側ブロックと受信側ブロックとのうち一方のブロックが、
他方のブロックのマスタクロック信号を受信し、該受信したマスタクロック信号の立ち上りまたは立ち下りから、前記一方のブロックのマスタクロック信号に基いてカウントした値が、予め定められている値と一致する場合に、前記一方のブロックのマスタクロック信号をマスクして前記一方のブロックに供給する、
ことを特徴とする非同期インターフェース方法。 An asynchronous interface method used in an asynchronous interface circuit between a transmission side block and a reception side block each having a master clock signal,
One block of the transmitting block and the receiving block is
When the master clock signal of the other block is received, and the value counted based on the master clock signal of the one block from the rising or falling edge of the received master clock signal matches the predetermined value In addition, the master clock signal of the one block is masked and supplied to the one block.
An asynchronous interface method characterized by the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008182926A JP2010021950A (en) | 2008-07-14 | 2008-07-14 | Asynchronous interface circuit and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008182926A JP2010021950A (en) | 2008-07-14 | 2008-07-14 | Asynchronous interface circuit and method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010021950A true JP2010021950A (en) | 2010-01-28 |
Family
ID=41706378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008182926A Pending JP2010021950A (en) | 2008-07-14 | 2008-07-14 | Asynchronous interface circuit and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010021950A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015211385A (en) * | 2014-04-28 | 2015-11-24 | 株式会社ソシオネクスト | Circuit and control method thereof |
US11550978B2 (en) | 2018-12-17 | 2023-01-10 | Mitsubishi Electric Corporation | Circuit design assistance system and computer readable medium |
-
2008
- 2008-07-14 JP JP2008182926A patent/JP2010021950A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015211385A (en) * | 2014-04-28 | 2015-11-24 | 株式会社ソシオネクスト | Circuit and control method thereof |
US11550978B2 (en) | 2018-12-17 | 2023-01-10 | Mitsubishi Electric Corporation | Circuit design assistance system and computer readable medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009147869A (en) | Synchronization circuit | |
JPWO2003010674A1 (en) | Phase correction circuit | |
US7936855B2 (en) | Oversampling data recovery circuit and method for a receiver | |
CN107533533B (en) | Communication between integrated circuits | |
JP4007027B2 (en) | Power-on reset circuit | |
JP2007157147A (en) | Circuit and method for time-stamping event for fraction of clock cycle | |
CN114546083B (en) | Reset synchronizer circuit and clock gating method thereof | |
US20130088271A1 (en) | Semiconductor memory device and operating method thereof | |
KR100656462B1 (en) | Circuit and method for generating clock for outputting data in semiconductor memory apparatus | |
US8156371B2 (en) | Clock and reset synchronization of high-integrity lockstep self-checking pairs | |
US8975921B1 (en) | Synchronous clock multiplexer | |
US9584305B2 (en) | Deskew FIFO buffer with simplified initialization | |
JP2010021950A (en) | Asynchronous interface circuit and method | |
JP4191185B2 (en) | Semiconductor integrated circuit | |
US20100177790A1 (en) | Timing recovery circuit, communication node, network system, and electronic device | |
US10924091B2 (en) | Immediate fail detect clock domain crossing synchronizer | |
JP2007064648A (en) | Semiconductor integrated circuit and its test method | |
KR20180020048A (en) | Clock detector and clock detecting method | |
US8896347B2 (en) | Synchronous input signal capture system | |
JP5082954B2 (en) | Signal processing circuit | |
JP2014219786A (en) | Signal synchronization circuit | |
US9335354B2 (en) | Phase detector with metastable prevention stage | |
CN111262562B (en) | Metastable state detection circuit | |
Najvirt et al. | How to synchronize a pausible clock to a reference | |
US20230325199A1 (en) | Method of Resetting Integrated Circuit, and Integrated Circuit |