JP2004110191A - データ転送装置 - Google Patents
データ転送装置 Download PDFInfo
- Publication number
- JP2004110191A JP2004110191A JP2002269047A JP2002269047A JP2004110191A JP 2004110191 A JP2004110191 A JP 2004110191A JP 2002269047 A JP2002269047 A JP 2002269047A JP 2002269047 A JP2002269047 A JP 2002269047A JP 2004110191 A JP2004110191 A JP 2004110191A
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- reception
- clock
- data
- circuit
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4054—Coupling between buses using bus bridges where the bridge performs a synchronising function where the function is bus cycle extension, e.g. to meet the timing requirements of the target bus
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
【解決手段】データ転送装置13は、送信イネーブルewiのタイミングで転送データをラッチし、受信イネーブルeriのタイミングで読み出されるデータラッチ21と、送信イネーブルewiを少なくとも送信クロックckwの1周期分遅延させラッチする第1のSR−FF回路31と、受信イネーブルeriを少なくとも受信クロックckrの1周期分遅延させラッチする第3のSR−FF回路33と備える。データ転送装置13では、第1のSR−FF回路31でラッチされた信号を連続して2回受信クロックckrのタイミングでラッチし、受信許可信号rroを生成し、第3のSR−FF回路33でラッチされた信号を連続して2回送信クロックckwのタイミングでラッチし、送信許可信号rwoを生成する。
【選択図】 図2
Description
【発明の属する技術分野】
本発明は、非同期のクロックで動作している2つのシステム間でデータの転送を行うデータ転送装置に関する。
【0002】
【従来の技術】
非同期のクロックを用いた2つのシステム間でデータの転送を行う場合、転送するデータのクロック乗り換え処理を行わなければならない。クロック乗り換え処理の方法としては、例えば、FIFOレジスタやRAMでクロック間のタイミング差を吸収する方法や、送信側及び受信側の2つのクロックから、同期タイミング用の新たなクロックを生成し、その新たなクロックに同期させてデータを転送する方法などがある。しかしながら、前者の方法では、FIFOレジスタやRAMが必要であるので、回路規模が大きくなってしまう。また、後者の方法でも、クロック比の情報やタイミング調整用のパラメータ情報等を入力する必要であったり、同期タイミング用のクロックを生成するための回路が必要であったりするので、やはり回路規模が大きくなってしまう。
【0003】
また、送信データのイネーブル信号を受信側のクロックで検出して、その検出タイミングでデータを受信側に転送する方法もある。この方法の場合、回路規模は非常に小さくなるが、送信側のクロックよりも受信側のクロックの方が充分早くなければ実現できない。
【0004】
以上のような問題を解決するシステムとして、従来より、図5に示すような、データ送信許可及びデータ受信許可を発生し、その許可信号に応じてデータの転送を行うクロック乗換えを行うシステムが提案されている。以下、この図5に示す従来のクロック乗り換えシステムについて説明をする。
【0005】
従来のクロック乗り換えシステム100は、データの転送元の装置(以下、送信装置101という。)と、データの転送先の装置(以下、受信装置102という。)との間に、送信装置101から受信装置102へデータの受け渡しを行うデータ転送装置103が設けられた構成となっている。
【0006】
送信装置101は、所定の周波数のクロック(送信クロックckw)で動作している。送信装置101は、所定のバス幅のデータをデータ出力端子から出力する。送信装置101は、データ転送を行う場合、送信クロックckwに同期した送信データdwiをデータ転送装置103へ送信する。
【0007】
送信装置101は、データ転送を行う場合、バスを転送している送信データdwiの送信タイミングを示す送信イネーブル信号ewiも、送信データdwiに同期させてデータ転送装置103に出力する。送信イネーブル信号ewiは、送信クロックckwに同期したハイ(H)及びロー(L)の2値信号で表される。送信イネーブル信号ewiは、送信装置101からデータ転送装置103へ送信データdwiが転送されているタイミングでHとされ、送信データdwiが転送されていないタイミングにLとされる。
【0008】
送信装置101は、送信データdwiの出力を許可することを意味する送信許可信号rwoを、データ転送装置103から受信する。送信許可信号rwoは、送信クロックckwに同期したハイ(H)及びロー(L)の2値信号で表されている。送信装置101は、送信許可信号rwoが1クロック分Hとされると、1ワード分の送信データdwiを送信クロックckwに同期させてデータ転送装置103へ送信する。送信装置101は、送信許可信号rwoがLとされている間は、送信データdwi及び送信イネーブル信号ewiの送信を行わない。
【0009】
受信装置102は、送信クロックckwとは非同期のクロック(受信クロックckr)で動作している。受信装置102は、所定のバス幅のデータをデータ入力端子から入力する。受信装置102は、データ転送を行う場合、受信クロックckrに同期した受信データdroをデータ転送装置103から受信する。
【0010】
受信装置102は、バスを転送している受信データdroの受信タイミングを示す受信イネーブル信号eriを、受信クロックckrに同期させてデータ転送装置103に出力する。受信イネーブル信号eriは、受信クロックckrに同期したハイ(H)及びロー(L)の2値信号で表される。受信イネーブル信号eriは、データ転送装置103から受信装置102へ受信データdroが転送されているタイミングでHとされ、受信データdroが転送されていないタイミングにLとされる。
【0011】
受信装置102は、受信データdroの入力を許可することを意味する受信許可信号rroを、データ転送装置103から受信する。受信許可信号rroは、受信クロックckrに同期したハイ(H)及びロー(L)の2値信号で表されている。受信装置102は、受信許可信号rroがHである期間に、1ワード分の受信データdroをデータ転送装置103から受信クロックckrに同期させて受信することができる。受信装置102は、受信許可信号rroがLとされている間は、受信データdroの受信及び受信イネーブル信号eriの送信を行わない。
【0012】
データ転送装置103は、送信イネーブル信号ewiがHとなったタイミングで、1ワード分の送信データdwiを受信し、内部にラッチする。また、データ転送装置103は、受信イネーブル信号eriがHとなったタイミングで、内部にラッチしている1ワード分のデータが、受信装置102により読み出される。
【0013】
データ転送装置103は、送信装置101から送信イネーブル信号ewiが入力され、受信装置102から受信イネーブル信号eriが入力される。また、データ転送装置103は、送信許可信号rwoを送信装置101に出力し、受信許可信号rroを受信装置102に出力する。
【0014】
以上のようなクロック乗り換えシステム100では、次の(S1)〜(S4)の処理を巡回的に行うこととなる。なお、例えば電源投入時やデータの転送開始の命令の受信時等のデータ転送の開始時には、データ転送装置103は、送信許可信号rwoをHとし、受信許可信号rroをLとしている。
【0015】
(S1)まず、送信装置101は、送信許可信号rwoがHとなったことを受けて、1ワード分の送信データdwiをデータ転送装置103に格納する。このとき、送信装置101は、送信データdwiの転送に同期させて、送信イネーブル信号ewiを1クロック分(送信クロックckw)Hとする。
【0016】
(S2)続いて、データ転送装置103は、送信イネーブル信号ewiがHとなったことを受けて、送信許可信号rwoをLとするとともに、受信許可信号rroをHとする。なお、このとき、データ転送装置103は、送信イネーブル信号ewiがHとなったタイミング(例えば送信イネーブル信号ewiの立ち上がりエッジ)から、受信許可信号rroをHとするタイミング(例えば受信許可信号rroの立ち上がりエッジ)までの時間間隔に、送信クロックckwの1周期分以上の時間を空ける。このように時間間隔をとるのは、送信装置101から送信データdwiの格納が確実に完了することを保障するためである。
【0017】
(S3)続いて、受信装置102は、受信許可信号rroがHとなったことを受けて、1ワード分の受信データdroをデータ転送装置103から読み出す。このとき、受信装置102は、受信データdroの転送に同期させて、受信イネーブル信号eriを1クロック分(受信クロックckr)Hとする。
【0018】
(S4)続いて、データ転送装置103は、受信イネーブル信号eriがHとなったことを受けて、受信許可信号rroをLとするとともに、送信許可信号rwoをHとする。なお、このとき、データ転送装置103は、受信イネーブル信号eriがHとなったタイミング(例えば、受信イネーブル信号eriの立ち上がりエッジ)から、送信許可信号rwoをHとするタイミング(例えば送信許可信号rwoの立ち上がりエッジ)までの時間間隔として、受信クロックckrの1周期分以上の時間を空ける。このように時間間隔をとるのは、受信装置102の受信データdroの読み出しが確実に完了することを保障するためである。
【0019】
つぎに、データ転送装置103内の具体的な内部構成について説明をする。
【0020】
データ転送装置103は、図5に示すように、内部に、データラッチ111と、タイミング制御回路112とを備えている。
【0021】
データラッチ111は、送信クロックckwに同期して動作し、送信イネーブル信号ewiがHとなっていると、バス上の1ワード分の送信データdwiをラッチする。また、データラッチ111は、受信イネーブル信号eriがHとなったタイミングで、内部にラッチしている1ワード分のデータが、受信装置102により読み出される。
【0022】
タイミング制御回路112は、図6に示すように、第1〜第4のSR−フリップフロップ回路(SR−FF回路)121〜124と、第1〜第2のD−フリップフロップ回路(D−FF回路)125〜126と、第1〜第2のOR演算回路(OR回路)127〜128と、第1〜第2の反転回路129〜130と、第1〜第2のAND演算回路(AND回路)131〜132とを備えている。
【0023】
第1のSR−FF回路121は、セット端子(set)に送信装置101からの送信イネーブル信号ewiが入力され、リセット端子(rst)に第1のD−FF回路125の出力信号が入力されている。第1のSR−FF回路121は、クロック端子に送信クロックckwが入力されている。
【0024】
第2のSR−FF回路122は、セット端子(set)に第1のD−FF回路125の出力信号が入力され、リセット端子(rst)に第3のSR−FF回路123の出力信号が入力されている。第2のSR−FF回路122は、クロック端子に受信クロックckrが入力されている。
【0025】
第3のSR−FF回路123は、セット端子(set)に受信装置102からの受信イネーブル信号eriが入力され、リセット端子(rst)に第2のD−FF回路125の出力信号が入力されている。第3のSR−FF回路123は、クロック端子に受信クロックckrが入力されている。
【0026】
第4のSR−FF回路124は、セット端子(set)に第2のD−FF回路126の出力信号が入力され、リセット端子(rst)に第1のSR−FF回路121の出力信号が入力されている。第4のSR−FF回路124は、クロック端子に送信クロックckwが入力されている。
【0027】
第1のD−FF回路125は、入力端子(d)に第1のSR−FF回路121の出力信号が入力されている。第1のD−FF回路125は、クロック端子に受信クロックckrが入力されている。
【0028】
第2のD−FF回路126は、入力端子(d)に第3のSR−FF回路123の出力信号が入力されている。第2のD−FF回路126は、クロック端子に送信クロックckwが入力されている。
【0029】
第1のOR回路127は、一方の入力端子に第1のD−FF回路125の出力信号が入力され、他方の入力端子に第2のSR−FF回路122の出力信号が入力されている。第2のOR回路128は、一方の入力端子に第2のD−FF回路126の出力信号が入力され、他方の入力端子に第4のSR−FF回路124の出力信号が入力されている。
【0030】
第1の反転回路129は、入力端子に第3のSR−FF回路123の出力信号が入力されている。第2の反転回路130は、入力端子に第1のSR−FF回路121の出力信号が入力されている。
【0031】
第1のAND回路131は、一方の入力端子に第1の反転回路129の出力信号が入力され、他方の入力端子に第1のOR回路127の出力信号が入力されている。第2のAND回路132は、一方の入力端子に第2の反転回路130の出力信号が入力され、他方の入力端子に第2のOR回路128の出力信号が入力されている。
【0032】
そして、以上のように接続されたタイミング制御回路112では、第1のAND回路131の出力信号が受信許可信号rroとして受信装置102に対して出力され、第2のAND回路131の出力信号が送信許可信号rwoとして送信装置101に対して出力される。
【0033】
図7及び図8に、以上のような構成のタイミング制御回路を用いた場合における、各信号のタイミングチャートを示す。図7は、ckw<ckrの場合のタイミングチャートである。図8は、ckw>ckrの場合のタイミングチャートである。なお、図7及び図8中、Aは第1のSR−FF回路121の出力信号であり、Bは第1のD−FF回路125の出力信号であり、Cは第3のSR−FF回路123の出力信号であり、Dは第2のD−FF回路126の出力信号である。
【0034】
以上のようにデータ送信許可及びデータ受信許可によりデータの転送を制御する従来のクロック乗り換えシステム100では、送信許可信号rwoの発行→送信データdwiの格納→受信許可信号rroの発行→受信データdroの読み出し→送信許可信号rwoの発行→送信データdwiの格納→・・・といった処理を繰り返していくこととなる。
【0035】
従って、この従来のクロック乗り換えシステム100では、大容量のFIFOやRAM等を用いることなく、且つ、非同期のクロック間のデータの転送を実現することができ、さらに、送信クロックckwと受信クロックckrとのクロック比がどのような値であっても、データの転送を実現できる。
【0036】
【発明が解決しようとする課題】
ところで、第1のD−FF回路125は、受信クロックckrの立ち上がりタイミングで動作する。しかしながら、第1のD−FF回路125がラッチする信号は、第1のSR−FF回路121が送信クロックckwの立ち上がりタイミングでラッチした信号である。そのため、第1のSR−FF回路121が送信イネーブル信号ewiをラッチしてから、次の受信クロックckrの立ち上がりタイミングまでの時間間隔が非常に短くなってしまう場合がある。このようにラッチ間隔が短い場合、いわゆるメタステーブルと呼ばれる現象が生じる可能性があり、後段のラッチ回路(第1のD−FF回路125)の動作が不安定となってしまう。また、第2のD−FF回路126も、同様にメタステーブルと呼ばれる現象が生じる可能性がある。
【0037】
本発明は、このような従来の実情に鑑みて提案されたものであり、データ送信許可及びデータ受信許可によりデータの転送を制御するクロック乗り換えシステムにおいて、内部でメタステーブルの状態が生じたとしても、その影響を吸収して、常に安定したデータ転送を実現できるデータ転送装置を提供することを目的とする。
【0038】
【課題を解決するための手段】
本発明にかかるデータ転送装置は、第1のクロックに同期してデータを送信する送信装置と、上記第1のクロックとは異なる第2のクロックに同期してデータを受信する受信装置とを有するクロック乗り換えシステムに適用される。
【0039】
上記送信装置は、送信許可信号を受信し、この送信許可信号に応じて、データが有効であることを示す送信イネーブル信号を送信するとともに、この送信イネーブル信号に同期してデータを送信する。また、上記受信装置は、受信許可信号を受信し、受信した受信許可信号に応じて、データが有効であることを示す受信イネーブル信号を送信するとともに、この受信イネーブル信号に同期してデータを受信する。
【0040】
このようなクロック乗り換えシステムに適用されるデータ転送装置は、データラッチ手段と、第1から第4のラッチ手段、並びに、受信許可信号発生手段及び送信許可発生手段を備えている。
【0041】
上記データラッチ手段は、送信装置から送信されたデータを送信イネーブル信号のタイミングでラッチし、ラッチしているデータが上記受信装置により上記受信イネーブル信号のタイミングで読み出される。
【0042】
上記第1のラッチ手段は、上記送信装置から送信された送信イネーブル信号を上記第1のクロックのタイミングでラッチし、ラッチした送信イネーブル信号を少なくとも上記第1のクロックの1周期分遅延させる。上記第2のラッチ手段は、上記第1のラッチ手段によりラッチされた送信イネーブル信号を上記第2のクロックのタイミングでラッチする。上記受信許可信号発生手段は、上記第2のラッチ手段によりラッチされた送信イネーブル信号に応じて上記第2のクロックに同期した受信許可信号を送信し、上記受信装置から送信された受信イネーブル信号に応じて当該受信許可信号の送信を停止する。
【0043】
上記第3のラッチ手段は、上記受信装置から送信された受信イネーブル信号を上記第2のクロックのタイミングでラッチし、ラッチした受信イネーブル信号を少なくとも上記第2のクロックの1周期分遅延させる。上記第4のラッチ手段は、上記第3のラッチ手段によりラッチされた受信イネーブル信号を上記第1のクロックのタイミングでラッチする。上記送信許可信号発生手段は、上記第4のラッチ手段によりラッチされた受信イネーブル信号に応じて上記第1のクロックに同期した送信許可信号を送信し、上記送信装置から送信された送信イネーブル信号に応じて当該送信許可信号の送信を停止する。
【0044】
以上のような構成のデータ転送装置では、上記第2のラッチ手段が、上記第1のラッチ手段によりラッチされた送信イネーブル信号を、連続して2回以上、上記第2のクロックのタイミングでラッチする。さらに、第4のラッチ手段は、上記第3のラッチ手段によりラッチされた送信イネーブル信号を、連続して2回以上、上記第1のクロックのタイミングでラッチする。
【0045】
【発明の実施の形態】
以下、本発明の実施の形態として、本発明を適用したクロック乗り換えシステムについて説明をする。本実施の形態のクロック乗り換えシステムは、非同期のクロックを用いた2つのシステム間でデータの転送を行う際に、転送データのクロック乗り換え処理を行うためのシステムである。
【0046】
図1に本発明の実施の形態のクロック乗り換えシステムのブロック構成図を示す。
【0047】
本発明の実施の形態のクロック乗り換えシステム1は、データを送信する側の装置(以下、送信装置11という。)と、データを受信する側の装置(以下、受信装置12という。)との間に、送信装置11から受信装置12へデータの受け渡しを行うデータ転送装置13が設けられた構成となっている。
【0048】
送信装置11は、所定の周波数のクロックで動作している。送信装置11の動作クロックを、以下、送信クロックckwという。送信装置11は、所定のバス幅のデータをデータ出力端子から出力する。送信装置11は、データ転送を行う場合、送信クロックckwに同期したデータをデータ転送装置13へ送信する。送信装置11からデータ転送装置13へ送信されるデータを、以下、送信データdwiという。
【0049】
送信装置11は、データ転送を行う場合、バスを転送している送信データdwiの送信タイミングを示す送信イネーブル信号ewiも、送信データdwiに同期させてデータ転送装置13に出力する。送信イネーブル信号ewiは、送信クロックckwに同期したハイ(H)及びロー(L)の2値信号で表される。送信イネーブル信号ewiは、送信装置11からデータ転送装置13へ送信データdwiが転送されているタイミングでHとされ、送信データdwiが転送されていないタイミングにLとされる。
【0050】
送信装置11は、送信データdwiの出力を許可することを意味する送信許可信号rwoを、データ転送装置13から受信する。送信許可信号rwoは、送信クロックckwに同期したハイ(H)及びロー(L)の2値信号で表されている。送信装置11は、送信許可信号rwoが1クロック分Hとされると、1ワード分の送信データdwiを送信クロックckwに同期させてデータ転送装置13へ送信する。送信装置11は、送信許可信号rwoがLとされている間は、送信データdwi及び送信イネーブル信号ewiの送信を行わない。
【0051】
受信装置12は、送信クロックckwとは非同期のクロックで動作している。受信装置12の動作クロックを、以下、受信クロックckrいう。受信装置12は、所定のバス幅のデータをデータ入力端子から入力する。受信装置12は、データ転送を行う場合、受信クロックckrに同期したデータをデータ転送装置13から受信する。データ転送装置13から受信装置12へ転送されるデータを、以下、受信データdroという。
【0052】
受信装置12は、バスを転送している受信データdroの受信タイミングを示す受信イネーブル信号eriを、受信クロックckrに同期させてデータ転送装置13に出力する。受信イネーブル信号eriは、受信クロックckrに同期したハイ(H)及びロー(L)の2値信号で表される。受信イネーブル信号eriは、データ転送装置13から受信装置12へ受信データdroが転送されているタイミングでHとされ、受信データdroが転送されていないタイミングにLとされる。
【0053】
受信装置12は、受信データdroの入力を許可することを意味する受信許可信号rroを、データ転送装置13から受信する。受信許可信号rroは、受信クロックckrに同期したハイ(H)及びロー(L)の2値信号で表されている。受信装置12は、受信許可信号rroが1クロック分Hとされると、1ワード分の受信データdroをデータ転送装置13から受信クロックckrに同期させて受信する。受信装置12は、受信許可信号rroがLとされている間は、受信データdroの受信及び受信イネーブル信号eriの送信を行わない。
【0054】
データ転送装置13は、送信イネーブル信号ewiがHとなったタイミングで、1ワード分の送信データdwiを送信装置11から受信して内部にラッチする。また、データ転送装置13は、受信イネーブル信号eriがHとなったタイミングで、内部にラッチしている1ワード分のデータが、受信装置12により読み出される。
【0055】
データ転送装置13は、送信装置11から送信イネーブル信号ewiが入力され、受信装置12から受信イネーブル信号eriが入力される。また、データ転送装置13は、送信許可信号rwoを送信装置11に出力し、受信許可信号rroを受信装置12に出力する。
【0056】
以上のようなクロック乗り換えシステム1では、次の(S11)〜(S14)の処理を巡回的に行うこととなる。なお、例えば電源投入時やデータの転送開始の命令の受信時等のデータ転送の開始時には、データ転送装置13は、送信許可信号rwoをHとし、受信許可信号rroをLとしている。
【0057】
(S11)まず、送信装置11は、送信許可信号rwoがHとなったことを受けて、1ワード分の送信データdwiをデータ転送装置13に格納する。このとき、送信装置11は、送信データdwiの転送に同期させて、送信イネーブル信号ewiを1クロック分(送信クロックckw)Hとする。
【0058】
(S12)続いて、データ転送装置13は、送信イネーブル信号ewiがHとなったことを受けて、送信許可信号rwoをLとするとともに、受信許可信号rroをHとする。なお、このとき、データ転送装置13は、送信イネーブル信号ewiがHとなったタイミング(例えば送信イネーブル信号ewiの立ち上がりエッジ)から、受信許可信号rroをHとするタイミング(例えば受信許可信号rroの立ち上がりエッジ)までの時間間隔に、送信クロックckwの2周期分以上の時間を空ける。このように時間間隔をとるのは、送信装置11から送信データdwiの格納が確実に完了することを保障し、さらに、送信クロックckwから受信クロックckrにデータの乗り換えを行う際に、メタステーブルと呼ばれる現象が生じても出力を安定化させるためである。
【0059】
(S13)続いて、受信装置12は、受信許可信号rroがHとなったことを受けて、1ワード分の受信データdroをデータ転送装置13から読み出す。このとき、受信装置12は、受信データdroの転送に同期させて、受信イネーブル信号eriを1クロック分(受信クロックckr)Hとする。
【0060】
(S14)続いて、データ転送装置13は、受信イネーブル信号eriがHとなったことを受けて、受信許可信号rroをLとするとともに、送信許可信号rwoをHとする。なお、このとき、データ転送装置13は、受信イネーブル信号eriがHとなったタイミング(例えば、受信イネーブル信号eriの立ち上がりエッジ)から、送信許可信号rwoをHとするタイミング(例えば送信許可信号rwoの立ち上がりエッジ)までの時間間隔として、受信クロックckrの1周期分以上の時間を空ける。このように時間間隔をとるのは、受信装置12の受信データdroの読み出しが確実に完了することを保障し、さらに、送信クロックckwから受信クロックckrにデータの乗り換えを行う際に、メタステーブルと呼ばれる現象が生じても出力を安定化させるためである。
【0061】
つぎに、データ転送装置13内の具体的な内部構成について、図2を参照して説明をする。
【0062】
データ転送装置13は、図2に示すように、内部に、データラッチ21と、タイミング制御回路21とを備えている。
【0063】
データラッチ21は、クロック入力端子が設けられ、このクロック入力端子に入力される信号の立ち上がりエッジに同期して動作するラッチ回路である。データラッチ21は、このクロック入力端子に送信クロックckwが入力される。データラッチ21は、入力端子(d)、イネーブル端子(en)及び出力端子(q)を備えている。入力端子(d)には、送信装置11から送信データが入力され、イネーブル端子(en)には、送信装置11から送信イネーブル信号ewiが入力される。データラッチ21は、送信イネーブル信号ewiがHとなっていると、バス上の1ワード分の送信データdwiをラッチする。また、受信端子(q)は、受信装置12のデータ入力端子に接続されている。データラッチ21は、受信イネーブル信号eriがHとなったタイミングで、内部にラッチしている1ワード分のデータが、受信装置12により読み出される。
【0064】
タイミング制御回路21は、第1〜第4のSR−フリップフロップ回路(SR−FF回路)31〜34と、第1〜第4のD−フリップフロップ回路(D−FF回路)35〜38と、第1〜第2の反転回路39〜40と、第1〜第4のAND演算回路(AND回路)41〜44とを備えている。
【0065】
第1〜第4のSR−FF回路31〜34は、クロック入力端子が設けられ、このクロック入力端子に入力される信号のタイミング(例えば、立ち上がりエッジ)に同期して動作するSR−フリップフロップ回路である。つまり、第1〜第4のSR−FF回路31〜34は、セット端子(set)、リセット端子(rst)、出力端子(q)が設けられている。第1〜第4のSR−FF回路31〜34は、セット端子(set)がHとなっていると内部状態をHとし、その後にリセット端子(rst)がHとなるまでそのHとなっている内部状態を保持し続ける。第1〜第4のSR−FF回路31〜34は、リセット端子(rst)がHとなると、その内部状態をLにリセットする。第1〜第4のSR−FF回路31〜34は、内部状態が出力端子(q)に反映されている。
【0066】
また、第1〜第4のSR−FF回路31〜34には、初期化端子(xrs,spr)が設けられている。第1〜第3のSR−FF回路31〜33は、初期化端子(xrs)がHとされると、強制的に内部状態をLとする。第4のSR−FF回路34は、初期化端子(spr)がHとされると、強制的に内部状態をHとする。
【0067】
第1〜第4のD−FF回路35〜38は、クロック入力端子が設けられ、このクロック入力端子に入力される信号のタイミング(例えば、立ち上がりエッジ)に同期して動作するD−フリップフロップ回路である。つまり、第1〜第4のD−FF回路35〜38は、入力端子(d)、出力端子(q)が設けられている。第1〜第4のD−FF回路35〜38は、入力端子(d)に入力された値(ハイ(H)又はロー(L))を、1クロック期間分ラッチする。第1〜第4のD−FF回路35〜38は、その内部状態が出力端子(q)に反映されている。
【0068】
第1〜第2の反転回路39〜40は、1つの入力端子及び1つの出力端子が設けられており、入力端子に入力された値(ハイ(H)又はロー(L))を反転して、出力端子に反映する回路である。
【0069】
第1〜第4のAND回路39〜44は、2つの入力端子及び1つの出力端子が設けられており、この2つの入力端子に入力された2つの値(ハイ(H)又はロー(L))のAND論理演算を行い、出力端子に反映する回路である。
【0070】
タイミング制御回路21では、以上のような各回路が次のように接続されている。
【0071】
第1のSR−FF回路31は、セット端子(set)に送信装置11からの送信イネーブル信号ewiが入力され、リセット端子(rst)に第1のAND回路41の出力信号が入力されている。第1のSR−FF回路31は、クロック端子に送信クロックckwが入力されている。
【0072】
第1のD−FF回路35は、入力端子(d)に第1のSR−FF回路31の出力信号が入力されている。第1のD−FF回路35は、クロック端子に受信クロックckrが入力されている。
【0073】
第2のD−FF回路36は、入力端子(d)に第1のD−FF回路35の出力信号が入力されている。第2のD−FF回路36は、クロック端子に受信クロックckrが入力されている。
【0074】
第2のSR−FF回路32は、セット端子(set)に第3のAND回路42の出力信号が入力され、リセット端子(rst)に受信イネーブル信号eriが入力されている。第2のSR−FF回路32は、クロック端子に受信クロックckrが入力されている。
【0075】
第3のSR−FF回路33は、セット端子(set)に受信装置12からの受信イネーブル信号eriが入力され、リセット端子(rst)に第2のAND回路42の出力信号が入力されている。第3のSR−FF回路33は、クロック端子に受信クロックckrが入力されている。
【0076】
第3のD−FF回路37は、入力端子(d)に第3のSR−FF回路33の出力信号が入力されている。第3のD−FF回路37は、クロック端子に送信クロックckwが入力されている。
【0077】
第4のD−FF回路38は、入力端子(d)に第3のD−FF回路37の出力信号が入力されている。第4のD−FF回路38は、クロック端子に送信クロックckwが入力されている。
【0078】
第4のSR−FF回路34は、セット端子(set)に第4のAND回路44の出力信号が入力され、リセット端子(rst)に送信イネーブル信号ewiが入力されている。第4のSR−FF回路34は、クロック端子に送信クロックckwが入力されている。
【0079】
第1の反転回路39は、入力端子に第2のD−FF回路36の出力信号が入力されている。
【0080】
第2の反転回路40は、入力端子に第4のD−FF回路38の出力信号が入力されている。
【0081】
第1のAND回路41は、一方の入力端子に第1のD−FF回路35の出力信号が入力され、他方の入力端子に第2のD−FF回路36の出力信号が入力されている。
【0082】
第2のAND回路42は、一方の入力端子に第3のD−FF回路37の出力信号が入力され、他方の入力端子に第4のD−FF回路38の出力信号が入力されている。
【0083】
第3のAND回路43は、一方の入力端子に第1の反転回路39の出力信号が入力され、他方の入力端子に第1のD−FF回路35の出力信号が入力されている。
【0084】
第4のAND回路44は、一方の入力端子に第2の反転回路40の出力信号が入力され、他方の入力端子に第3のD−FF回路37の出力信号が入力されている。
【0085】
そして、以上のように接続されたタイミング制御回路22では、第2のSR−FF回路32の出力信号が、受信許可信号rroとして受信装置12に対して出力され、第4のSR−FF回路の出力信号が、送信許可信号rwoとして送信装置11に対して出力される。
【0086】
図3及び図4に、以上のような構成のタイミング制御回路22のタイミングチャートを示す。図3は、ckw<ckrの場合のタイミングチャートである。図4は、ckw>ckrの場合のタイミングチャートである。なお、図3及び図4中、Aは第1のSR−FF回路31の出力信号であり、Bは第1のD−FF回路35の出力信号であり、Cは第2のD−FF回路36の出力信号であり、Dは第3のSR−FF回路33の出力信号であり、Eは第3のD−FF回路37の出力信号であり、Fは第4のD−FF回路38の出力信号である。
【0087】
ここで、第1のD−FF回路35は、受信クロックckrの立ち上がりタイミングで動作する。しかしながら、第1のD−FF回路35がラッチする信号は、第1のSR−FF回路31が送信クロックckwの立ち上がりタイミングでラッチした信号である。そのため、第1のSR−FF回路31が送信イネーブル信号ewiをラッチしてから、次の受信クロックckrの立ち上がりタイミングまでの時間間隔が非常に短くなってしまう場合がある。このようにラッチ間隔が短い場合、いわゆるメタステーブルと呼ばれる現象が生じる可能性があり、第1のD−FF回路35の動作が不安定となってしまう。また、第3のD−FF回路37も、同様にメタステーブルと呼ばれる現象が生じる可能性がある。
【0088】
しかしながら、このタイミング制御回路22では、第1のD−FF回路35の後段で、もう一度受信クロックckrの立ち上がりタイミングで動作する第2のD−FF回路35が設けらており、この第2のD−FF回路36がラッチしている信号に基づき受信許可信号rroが生成されている。同様に、第3のD−FF回路37の後段で、もう一度送信クロックckwの立ち上がりタイミングで動作する第4のD−FF回路35が設けらており、この第4のD−FF回路38がラッチしている信号に基づき送信許可信号rwoが生成されている。
【0089】
従って、このタイミング制御回路22では、上記第1のD−FF回路35及び第3のD−FF回路37においてメタステーブルが生じて動作が不安定となったとしても、後段の第2のD−FF回路36及び第4のD−FF回路38でその影響が除去され、常に安定した制御信号を出力することが可能となっている。
【0090】
以上のように本発明の実施の形態のクロック乗り換えシステム1では、送信許可信号rwoの発行→送信データdwiの格納→受信許可信号rroの発行→受信データdroの読み出し→送信許可信号rwoの発行→送信データdwiの格納→・・・といった処理を繰り返していくこととなる。このクロック乗り換えシステム1では、大容量のFIFOやRAM等を用いることなく、且つ、非同期のクロック間のデータの転送を実現することができ、さらに、送信クロックckwと受信クロックckrとのクロック比がどのような値であっても、データの転送を実現できる。
【0091】
さらに、本発明の実施の形態のクロック乗り換えシステム1では、送信クロックckwに同期した送信イネーブル信号ewiを受信すると、この受信に応じて送信データdwiが格納されたことを確認し、受信クロックckrに同期した受信許可信号rroを発行する。また、受信クロックckrに同期した受信イネーブル信号eriを受信すると、この受信に応じて受信データdroが読み出されたことを確認し、送信クロックckwに同期した送信許可信号rwoを発行する。この際、クロック乗り換えシステム1では、送信イネーブル信号ewiを、連続して2回以上受信クロックckrのタイミングでラッチし、この後に、受信許可信号rroを発行する。また、クロック乗り換えシステム1では、受信イネーブル信号eriを、連続して2回以上送信クロックckwのタイミングでラッチし、この後に、送信許可信号rwoを発行する。
【0092】
このため、本発明の実施の形態のクロック乗り換えシステム1では、送信クロックckwと受信クロックckrとの境界のラッチ回路でメタステーブルの状態が生じたとしても、その影響を吸収して、常に安定したデータ転送を実現することができる。
【0093】
【発明の効果】
本発明にかかるデータ転送装置では、送信装置が当該データ転送装置からデータ送信許可を受けて1ワード分のデータを当該データ転送装置に送信し、受信装置が当該データ転送装置からデータ受信許可を受けて1ワード分のデータ当該データ転送装置から受信するシステムに用いられる。
【0094】
本発明にかかるデータ転送装置では、送信装置の動作クロックである第1のクロックでラッチした信号を、その後に受信装置の動作クロックである第2のクロックでラッチする場合、少なくとも連続して2回以上第2のクロックタイミングでラッチする。同様に、本発明にかかるデータ転送装置では、第2のクロックでラッチした信号を、その後に第1のクロックでラッチする場合、少なくとも連続して2回以上第1のクロックタイミングでラッチする。
【0095】
このため本発明にかかるデータ転送装置では、第1のクロックでラッチした信号を続けて第2のクロックでラッチする場合、或いは、第2のクロックでラッチした信号を続けて第1のクロックでラッチする場合、内部でメタステーブルの状態が生じたとしても、その影響を吸収して、常に安定したデータ転送を実現することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態のクロック乗り換えシステムのブロック構成図である。
【図2】上記クロック乗り換えシステムで用いられるデータ転送装置の回路図である。
【図3】図2に示すデータ転送装置のタイミングチャート(ckw<ckr)である。
【図4】図2に示すデータ転送装置のタイミングチャート(ckw>ckr)である。
【図5】従来のクロック乗り換えシステムのブロック構成図である。
【図6】上記従来のクロック乗り換えシステムで用いられるデータ転送装置の回路図である。
【図7】図6に示すデータ転送装置のタイミングチャート(ckw<ckr)である。
【図8】図6に示すデータ転送装置のタイミングチャート(ckw>ckr)である。
【符号の説明】
1 クロック乗り換えシステム、11 送信装置、12 受信装置、13 データ転送装置、21 データラッチ回路、22 タイミング制御回路
Claims (1)
- 第1のクロックに同期してデータを送信する送信装置と、上記第1のクロックとは異なる第2のクロックに同期してデータを受信する受信装置とを有し、
上記送信装置は、送信許可信号を受信し、この送信許可信号に応じて、データが有効であることを示す送信イネーブル信号を送信するとともに、この送信イネーブル信号に同期してデータを送信し、
上記受信装置は、受信許可信号を受信し、受信した受信許可信号に応じて、データが有効であることを示す受信イネーブル信号を送信するとともに、この受信イネーブル信号に同期してデータを受信するクロック乗り換えシステムに適用されるデータ転送装置において、
上記送信装置から送信されたデータを送信イネーブル信号のタイミングでラッチし、ラッチしているデータが上記受信装置により上記受信イネーブル信号のタイミングで読み出されるデータラッチ手段と、
上記送信装置から送信された送信イネーブル信号を上記第1のクロックのタイミングでラッチし、ラッチした送信イネーブル信号を少なくとも上記第1のクロックの1周期分遅延させる第1のラッチ手段と、
上記第1のラッチ手段によりラッチされた送信イネーブル信号を上記第2のクロックのタイミングでラッチする第2のラッチ手段と、
上記第2のラッチ手段によりラッチされた送信イネーブル信号に応じて上記第2のクロックに同期した受信許可信号を送信し、上記受信装置から送信された受信イネーブル信号に応じて当該受信許可信号の送信を停止する受信許可信号発生手段と、
上記受信装置から送信された受信イネーブル信号を上記第2のクロックのタイミングでラッチし、ラッチした受信イネーブル信号を少なくとも上記第2のクロックの1周期分遅延させる第3のラッチ手段と、
上記第3のラッチ手段によりラッチされた受信イネーブル信号を上記第1のクロックのタイミングでラッチする第4のラッチ手段と、
上記第4のラッチ手段によりラッチされた受信イネーブル信号に応じて上記第1のクロックに同期した送信許可信号を送信し、上記送信装置から送信された送信イネーブル信号に応じて当該送信許可信号の送信を停止する送信許可信号発生手段とを備え、
上記第2のラッチ手段は、上記第1のラッチ手段によりラッチされた送信イネーブル信号を、連続して2回以上、上記第2のクロックのタイミングでラッチし、
上記第4のラッチ手段は、上記第3のラッチ手段によりラッチされた送信イネーブル信号を、連続して2回以上、上記第1のクロックのタイミングでラッチすること
を特徴とするデータ転送装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002269047A JP2004110191A (ja) | 2002-09-13 | 2002-09-13 | データ転送装置 |
TW092125116A TWI223158B (en) | 2002-09-13 | 2003-09-10 | Data transfer unit and method |
US10/660,182 US7107474B2 (en) | 2002-09-13 | 2003-09-11 | Data transfer unit and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002269047A JP2004110191A (ja) | 2002-09-13 | 2002-09-13 | データ転送装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004110191A true JP2004110191A (ja) | 2004-04-08 |
JP2004110191A5 JP2004110191A5 (ja) | 2005-04-07 |
Family
ID=32267098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002269047A Pending JP2004110191A (ja) | 2002-09-13 | 2002-09-13 | データ転送装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7107474B2 (ja) |
JP (1) | JP2004110191A (ja) |
TW (1) | TWI223158B (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7583946B2 (en) | 2003-09-29 | 2009-09-01 | Silicon Laboratories, Inc. | Wireless communication system and method using clock swapping during image rejection calibration |
EP1726113A1 (en) * | 2004-03-01 | 2006-11-29 | Koninklijke Philips Electronics N.V. | Circuit comprising mutually asynchronous circuit modules |
US7573968B2 (en) * | 2004-11-30 | 2009-08-11 | Oki Semiconductor Co., Ltd. | Data transmission circuit with serial interface and method for transmitting serial data |
CN113032319B (zh) * | 2021-03-30 | 2023-09-05 | 中车青岛四方车辆研究所有限公司 | 基于fpga的车载系统数据传输方法及同步高速串行总线结构 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5387825A (en) * | 1992-08-20 | 1995-02-07 | Texas Instruments Incorporated | Glitch-eliminator circuit |
-
2002
- 2002-09-13 JP JP2002269047A patent/JP2004110191A/ja active Pending
-
2003
- 2003-09-10 TW TW092125116A patent/TWI223158B/zh not_active IP Right Cessation
- 2003-09-11 US US10/660,182 patent/US7107474B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
TW200405967A (en) | 2004-04-16 |
TWI223158B (en) | 2004-11-01 |
US7107474B2 (en) | 2006-09-12 |
US20040130954A1 (en) | 2004-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100337052B1 (ko) | 동기화된 독출 포인터 및 기록 포인터를 갖는 2 중 포트 fifo | |
EP1040404B1 (en) | Method and apparatus for coupling signals between two circuits operating in different clock domains | |
KR100425472B1 (ko) | 동기식 반도체 메모리 장치의 출력 제어 신호 발생 회로및 출력 제어 신호 발생 방법 | |
JP2000099193A (ja) | 同期装置および同期方法ならびにインタフェ―ス回路 | |
US7586337B2 (en) | Circuit for switching between two clock signals independently of the frequency of the clock signals | |
US5535343A (en) | Method and apparatus for generating write signals | |
US5047658A (en) | High frequency asynchronous data synchronizer | |
JP2005151412A (ja) | 同期・非同期インターフェース回路及び電子機器 | |
JP2004110191A (ja) | データ転送装置 | |
US6137851A (en) | System and method for synchronizing a signal with respect to another signal | |
US6774823B1 (en) | Clock synchronization logic | |
JPH08320845A (ja) | 非同期信号の同期化方法及び装置 | |
US6016521A (en) | Communication control device | |
JP2004110705A (ja) | データ転送装置 | |
US7752475B2 (en) | Late data launch for a double data rate elastic interface | |
JPH1185304A (ja) | クロック入力制御回路 | |
US6255869B1 (en) | Method and apparatus for system resource negotiation | |
JPH10303874A (ja) | 異クロック間同期エッジ検出方式 | |
JP3592169B2 (ja) | 非同期データ転送制御装置および非同期データ転送制御方法 | |
EP1665030B1 (en) | Circuit for addressing a memory | |
KR200193481Y1 (ko) | 에이티엠 교환기의 셀 바운더리 버스 매칭 장치 | |
KR100197411B1 (ko) | 전전자 교환기의 시프트를 이용한 인식 신호 발생회로 | |
KR100437833B1 (ko) | 클럭신호 스위치 회로 | |
KR19980026230A (ko) | Atm에서 유토피아 동기소자와 논-유토피아 비동기소자의 접속 제어 로직 | |
JP2528965B2 (ja) | クロック位相制御回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040428 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040428 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061107 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070515 |