JP2005174090A - データ転送回路 - Google Patents
データ転送回路 Download PDFInfo
- Publication number
- JP2005174090A JP2005174090A JP2003414860A JP2003414860A JP2005174090A JP 2005174090 A JP2005174090 A JP 2005174090A JP 2003414860 A JP2003414860 A JP 2003414860A JP 2003414860 A JP2003414860 A JP 2003414860A JP 2005174090 A JP2005174090 A JP 2005174090A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- count value
- counter
- data
- delay
- 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
- 238000001514 detection method Methods 0.000 claims abstract description 24
- 230000001934 delay Effects 0.000 claims 4
- 238000010586 diagram Methods 0.000 description 6
- 101100328518 Caenorhabditis elegans cnt-1 gene Proteins 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101100328519 Caenorhabditis elegans cnt-2 gene Proteins 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/12—Indexing scheme relating to groups G06F5/12 - G06F5/14
- G06F2205/123—Contention resolution, i.e. resolving conflicts between simultaneous read and write operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/12—Indexing scheme relating to groups G06F5/12 - G06F5/14
- G06F2205/126—Monitoring of intermediate fill level, i.e. with additional means for monitoring the fill level, e.g. half full flag, almost empty flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/10—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
- G06F5/12—Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
- Information Transfer Systems (AREA)
Abstract
【課題】 2つの装置間のアクセスの衝突によるデータ転送の誤動作を防止する。
【解決手段】 衝突検出部10では、第2の装置がFIFOメモリ1からデータの読み出しを行っているときに、第1の装置からカウンタ2のカウント値CNTを読み出すための状態読出信号SR1を検出した場合に、このカウンタ2のカウント値に拘らずFIFOメモリ1が満杯であることを示す値を第1の装置に出力する。また、衝突検出部20では、第1の装置がFIFOメモリ1にデータの書き込みを行っているときに、第2の装置からカウンタ2のカウント値CNTを読み出すための状態読出信号SR2を検出した場合に、このカウンタ2のカウント値CNTに拘らずFIFOメモリ1が空であることを示す値を第2の装置に出力する。
【選択図】 図1
【解決手段】 衝突検出部10では、第2の装置がFIFOメモリ1からデータの読み出しを行っているときに、第1の装置からカウンタ2のカウント値CNTを読み出すための状態読出信号SR1を検出した場合に、このカウンタ2のカウント値に拘らずFIFOメモリ1が満杯であることを示す値を第1の装置に出力する。また、衝突検出部20では、第1の装置がFIFOメモリ1にデータの書き込みを行っているときに、第2の装置からカウンタ2のカウント値CNTを読み出すための状態読出信号SR2を検出した場合に、このカウンタ2のカウント値CNTに拘らずFIFOメモリ1が空であることを示す値を第2の装置に出力する。
【選択図】 図1
Description
本発明は、FIFO(first-in first-out:先入れ先出し)バッファを用いてデータ転送を行うデータ転送回路に関するものである。
図2は、FIFOバッファを用いた従来のデータ転送回路の構成図で、例えばPHS(Personal Handyphone System)とノート型パーソナルコンピュータ(以下、「パソコン」という)の間でデータ転送を行うためのデータ通信カードに組み込まれるものである。
このデータ転送回路は、例えば、図の左側に接続されるPHSから右側に接続されるパソコンへデータを転送するもので、FIFOメモリ1、カウンタ2、バッファ3及びセレクタ4を有している。
FIFOメモリ1は、書込データWDTを、書込制御信号WENに従って順次格納すると共に、読出制御信号RENに従って古いものから順番に読み出し、読出データRDTとして出力するものである。カウンタ2は、FIFOメモリ1に格納されているデータ数をカウント値CNTとして出力するもので、アップダウン・カウンタで構成され、書込制御信号WENによってカウント値CNTが増加し、読出制御信号RENによってこのカウント値CNTが減少するようになっている。
バッファ3は、カウンタ2から出力されるカウント値CNTを、状態読出信号SR1に従ってカウント値WCTとして出力するものである。セレクタ4は、FIFOメモリ1の読出データRDTまたはカウンタ2のカウント値CNTを、状態読出信号SR2に従って選択して、データDATとして出力するものである。
このようなデータ転送回路において、PHS側からパソコン側への転送すべきデータが発生した場合、PHSでは状態読出信号SR1によってカウンタ2のカウント値CNTを読み出し、書き込み可能なデータ数を確認した後、書込データWDTをFIFOメモリ1に書き込む。一方、パソコン側では、周期的に状態読出信号SR2によってカウンタ2のカウント値CNTを読み出し、読み出し可能なデータ数を確認した後、FIFOメモリ1中のデータを読み出す。これにより、PHS側からパソコン側への非同期データ転送が行われる。
しかしながら、前記データ転送回路では、PHS側からFIFOメモリ1へ書込データWDTを書き込んでいるときに、パソコン側からカウンタ2のカウント値CNTを読み出すと、不確定なカウント値CNTが読み出され、実際に格納されているデータよりも多い読出データRDTを読み出してしまうという問題があった。同様に、パソコン側でFIFOメモリ1から読出データRDTを読み出しているときに、PHS側からカウンタ2のカウント値CNTを読み出すと、不確定なカウント値CNTが読み出され、空き領域を越える書込データWDTを書き込んでしまうという問題があった。
本発明は、不確定なカウント値CNTによるデータ転送の誤動作を防止し、確実なデータ転送が可能なデータ転送回路を提供することを目的としている。
本発明のデータ転送回路は、第1の装置から与えられるデータと書込制御信号に従って該データを順次格納し、第2の装置から与えられる読出制御信号に従って該格納されたデータをその格納された順に読み出すFIFOメモリと、前記書込制御信号に従ってカウントアップし、前記読出制御信号に従ってカウントダウンすることによって前記FIFOメモリに格納されているデータ数を出力するカウンタと、前記第2の装置が前記FIFOメモリからデータの読み出しを行っているときに、前記第1の装置から前記カウンタのカウント値を読み出すための第1の状態読出信号を検出した場合に、該カウンタのカウント値に拘らず該FIFOメモリが満杯であることを示す値を該第1の装置に出力する第1の衝突検出部と、前記第1の装置が前記FIFOメモリにデータの書き込みを行っているときに、前記第2の装置から前記カウンタのカウント値を読み出すための第2の状態読出信号を検出した場合に、該カウンタのカウント値に拘らず該FIFOメモリが空であることを示す値を該第2の装置に出力する第2の衝突検出部とを備えたことを特徴としている。
本発明では、第2の装置がFIFOメモリからデータの読み出しを行っているときに、第1の装置からカウンタのカウント値を読み出すための状態読出信号を検出した場合に、このカウンタのカウント値に拘らずFIFOメモリが満杯であることを示す値を第1の装置に出力する第1の衝突検出部と、第1の装置がFIFOメモリにデータの書き込みを行っているときに、第2の装置からカウンタのカウント値を読み出すための状態読出信号を検出した場合に、このカウンタのカウント値に拘らずFIFOメモリが空であることを示す値を第2の装置に出力する第2の衝突検出部を備えている。
これにより、アクセスが衝突した場合に、第1の装置ではFIFOメモリが満杯であると判断され、このFIFOメモリへの書き込みが抑制される。また、第2の装置では、FIFOメモリが空であると判断され、このFIFOメモリからの読み出しが抑制される。従って、不確定なカウント値に基づくデータ転送の誤動作が防止され、確実なデータ転送が可能になるという効果がある。
この発明の前記並びにその他の目的と新規な特徴は、次の、好ましい実施例の説明を添付図面と照らし合わせて読むと、より完全に明らかになるであろう。但し、図面は、もっぱら解説のためのものであって、この発明の範囲を限定するものではない。
図1は、本発明の実施例を示すデータ転送回路の構成図であり、図2中の要素と共通の要素には共通の符号が付されている。
このデータ転送回路は、例えば、図の左側に接続される第1の装置(例えば、PHS)から右側に接続される第2の装置(例えば、パソコン)へデータを転送するもので、図2と同様のFIFOメモリ1、カウンタ2、バッファ3及びセレクタ4に加えて、衝突検出部10,20を有している。
FIFOメモリ1は、PHS側から与えられる書込データWDTを、書込制御信号WENに従って順次格納し、パソコン側から与えられる読出制御信号RENに従って古いものから順番に読み出して、読出データRDTとして出力するものである。カウンタ2は、FIFOメモリ1に格納されているデータ数をカウント値CNTとして出力するもので、アップダウン・カウンタで構成され、書込制御信号WENが与えられるとカウント値CNTが1だけ増加し、読出制御信号RENが与えられるとこのカウント値CNTが1だけ減少するようになっている。
バッファ3は、PHS側から与えられる状態読出信号SR1に従って、衝突検出部10によって制御されたカウント値WCTを出力するものである。また、セレクタ4は、パソコン側から与えられる状態読出信号SR2に従って、FIFOメモリ1の読出データRDTまたは衝突検出部20で制御されたカウント値RCTを選択し、データDATとして出力するものである。
衝突検出部10は、例えばパソコン側でFIFOメモリ1から読出データRDTを読み出しているときに、PHS側からカウンタ2のカウント値CNTを読み出そうとした場合のアクセスの衝突を検出し、このPHSに対してFIFOメモリ1への書き込みを禁止するために、満杯状態を示すカウント値WCTを出力するものである。一方、衝突検出部20は、例えばPHS側でFIFOメモリ1に書込データWDTを書き込んでいるときに、パソコン側からカウンタ2のカウント値CNTを読み出そうとした場合のアクセスの衝突を検出し、このパソコンに対してFIFOメモリ1からの読み出しを禁止するために、空の状態を示すカウント値RCTを出力するものである。
衝突検出部10は、カウンタ2から出力されるカウント値CNTを保持するためのレジスタ(REG)11と、PHS側から与えられる状態読出信号SR1を所定時間だけ遅延させるための2段の遅延部(DLY)12,13と、パソコン側から与えられる読出制御信号RENを保持するためのフリップフロップ(以下、「FF」という)14,15を有している。
状態読出信号SR1は、遅延部12に与えられると共に、FF14のクロック端子Cに与えられるようになっている。遅延部12から出力される遅延信号DL1は、遅延部13の入力側とレジスタ11のクロック端子Cに与えられ、この遅延部13から出力される遅延信号DL2がFF15のクロック端子Cに与えられるようになっている。遅延信号DL2は、更にインバータ16で反転されて2入力の論理積ゲート(以下、「AND」という)17の一方の入力側に与えられ、このAND17の他方の入力側には、遅延信号DL1が与えられている。そして、AND17から出力されるセット信号ST1が、FF14,15のセット端子Sに与えられるようになっている。
FF14,15は、データ端子Dに与えられる読出制御信号RENを、それぞれ遅延信号DL1,DL2の立ち下がりのタイミングで保持して出力端子Qから出力し、セット端子Sにレベル“H”のセット信号ST1が与えられたときには、保持内容を強制的に“H”にセットするものである。FF14,15の出力端子Qは、2入力の否定的論理積ゲート(以下、「NAND」という)18の入力側に接続され、このNAND18から出力されるセット信号SETが、レジスタ11のセット端子Sに与えられている。
レジスタ11は、クロック端子Cに与えられる遅延信号DL1の立ち下がりのタイミングで、カウンタ2のカウント値CNTを保持し、セット端子Sに“H”のセット信号SETが与えられたときには、保持内容の全ビットを強制的に“H”にセットするものである。レジスタ11の保持内容は、カウント値WCTとしてバッファ3に与えられるようになっている。
衝突検出部20は、カウンタ2から出力されるカウント値CNTを保持するためのレジスタ21と、パソコン側から与えられる状態読出信号SR2を所定時間だけ遅延させるための2段の遅延部22,23と、PHS側から与えられる書込制御信号WENを保持するためのFF24,25を有している。
状態読出信号SR2は、遅延部22に与えられると共に、FF24のクロック端子Cに与えられるようになっている。遅延部22から出力される遅延信号DL3は、遅延部23の入力側とレジスタ21のクロック端子Cに与えられ、この遅延部23から出力される遅延信号DL4がFF25のクロック端子Cに与えられるようになっている。遅延信号DL3は、更にインバータ26で反転されて2入力のAND27の一方の入力側に与えられ、このAND27の他方の入力側には、状態読出信号SR2が与えられている。そして、AND27の出力側から出力されるセット信号ST2が、FF24,25のセット端子Sに与えられるようになっている。
FF24,25は、データ端子Dに与えられる書込制御信号WENを、それぞれ遅延信号DL3,DL4の立ち下がりのタイミングで保持して出力端子Qから出力し、セット端子Sに“H”のセット信号ST2が与えられたときには、保持内容を強制的に“H”にセットするものである。FF24,25の出力端子Qは、2入力のNAND28の入力側に接続され、このNAND28から出力されるリセット信号RSTが、レジスタ21のリセット端子Rに与えられるようになっている。
レジスタ21は、クロック端子Cに与えられる遅延信号DL3の立ち下がりのタイミングでカウンタ2のカウント値CNTを保持し、リセット端子Rに“H”のリセット信号RSTが与えられたときには、保持している全ビットを強制的にレベル“L”にリセットするものである。レジスタ21の保持内容は、カウント値RCTとしてセレクタ4に与えられるようになっている。
図3は、図1中の衝突検出部20における動作の一例を示す信号波形図である。以下、この図3を参照しつつ、図1の動作を説明する。
図1の時刻t0において、FIFOメモリ1へアクセスが全く行われていない場合、PHS側から出力される書込制御信号WEN及び状態読出信号SR1と、パソコン側から出力される読出制御信号REN及び状態読出信号SR2は、すべて“H”である。この時のカウンタ2のカウント値CNTは、cnt1とする。状態読出信号SR2は連続して“H”となっているので、遅延信号DL3,DL4も“H”であり、AND27から出力されるセット信号ST2は“L”である。後述するように、FF24,25は状態読出信号SR2の立ち上がりに従ってセットされるので、これらのFF24,25から出力される信号S24,S25も“H”である。従って、NAND28から出力されるリセット信号RSTは“L”となり、レジスタ21には前のタイミングで保持されたカウンタ2のカウント値CNT(=cnt0)がそのまま保持されて、カウント値RCTとして出力されている。
時刻t1において、パソコン側からカウンタ2の内容を読み出すために状態読出信号SR2が“L”にされる。この時、PHS側からFIFOメモリ1への書込動作が行われていなければ、書込制御信号WENは“H”である。状態読出信号SR2が“L”になったことにより、セレクタ4ではレジスタ21側が選択され、このレジスタ21から出力されたカウント値RCTがデータDATとしてパソコン側へ出力される。更に、状態読出信号SR2の立ち下がりによって、FF24には書込制御信号WENが保持されるが、このFF24から出力される信号S24は“H”のままである。
時刻t2において、遅延部22の遅延時間が経過すると、この遅延部22から出力される遅延信号DL3が“H”から“L”に変化する。これにより、レジスタ21には、カウンタ2のカウント値CNT(=cnt1)が保持され、セレクタ4を介してデータDATとして出力される。
時刻t3において、遅延部23の遅延時間が経過すると、この遅延部23から出力される遅延信号DL4が“H”から“L”に変化する。この遅延信号DL4の立ち下がりにより、FF25には書込制御信号WENが保持されるが、このFF25から出力される信号S25は“H”のままである。従って、NAND28から出力されるリセット信号RSTは“L”のまま変化せず、レジスタ21に保持されたカウンタ2のカウント値CNT(=cnt1)は、継続してカウント値RCTとして出力される。
時刻t4において、状態読出信号SR2が“H”に戻ると、セレクタ4から出力されるデータDATはFIFOメモリ1の読出データRDTに切り替えられる。一方、AND27から出力されるセット信号ST2が“H”となり、FF24,25がセットされる。この場合、FF24,25から出力される信号S24,S25は、既に“H”となっているので、変化しない。
時刻t5において、遅延部22の遅延時間が経過すると、この遅延部22から出力される遅延信号DL3が“L”から“H”に変化する。これにより、AND27から出力されるセット信号ST2が“L”となる。
更に、時刻t6において、遅延部23の遅延時間が経過すると、この遅延部23から出力される遅延信号DL4が“H”から“L”に変化する。これにより、時刻t0と同じ状態に戻る。
このように、PHS側とパソコン側のアクセスが衝突しない場合には、パソコン側でカウンタ2のカウント値CNTを正しく読み出すことができる。
次に、時刻t11において、パソコン側からカウンタ2の内容を読み出すために状態読出信号SR2が“L”にされる。この時、PHS側からFIFOメモリ1への書込動作が行われていなければ、書込制御信号WENは“H”である。状態読出信号SR2が“L”になったことにより、セレクタ4ではレジスタ21側が選択され、このレジスタ21から出力されるカウント値RCTがデータDATとして出力される。更に、この状態読出信号SR2の立ち下がりによって、FF24には書込制御信号WENが保持されるが、このFF24から出力される信号S24は“H”のままである。
時刻t12において、PHS側からFIFOメモリ1への書込動作が開始されると、この書込動作の開始に伴って書込制御信号WENが“L”となり、カウンタ2の値が更新される。これにより、カウンタ2のカウント値CNTは、不確定値(invalid)となる。
時刻t13において、遅延部22の遅延時間が経過すると、この遅延部22から出力される遅延信号DL3が“H”から“L”に変化する。これにより、レジスタ21には、カウンタ2のカウント値CNT(=invalid)が保持され、セレクタ4を介してデータDATとして出力される。
時刻t14において、遅延部23の遅延時間が経過すると、この遅延部23から出力される遅延信号DL4が“H”から“L”に変化する。この遅延信号DL4の立ち下がりにより、FF25には書込制御信号WENが保持され、このFF25から出力される信号S25は“L”となる。これにより、NAND28から出力されるリセット信号RSTが“H”となり、レジスタ21の保持内容はリセットされて“0”となって、この“0”がカウント値RCTとして出力される。パソコン側では、読み出されたカウント値RCTが“0”であるので、FIFOメモリ1にデータが存在しないと判断して、このFIFOメモリ1に対するデータの読出動作は行われない。但し、パソコン側では、一定周期でカウンタ2のカウント値CNTを読み出しているので、次の読み出しタイミングでPHS側との衝突が発生しなければ、正しいカウント値が読み出され、FIFOメモリ1に保持されたデータを読み出すことができる。
時刻t15において、状態読出信号SR2が“H”に戻ると、セレクタ4から出力されるデータDATはFIFOメモリ1の読出データRDTに切り替えられる。一方、AND27から出力されるセット信号ST2が“H”となり、FF24,25がセットされて信号S24,S25は“H”となる。
時刻t16において、遅延部22の遅延時間が経過すると、この遅延部22から出力される遅延信号DL3が“L”から“H”に変化する。これにより、AND27から出力されるセット信号ST2が“L”となる。
時刻t17において、遅延部23の遅延時間が経過すると、この遅延部23から出力される遅延信号DL4が“H”から“L”に変化する。
更に、時刻t18において、PHS側からFIFOメモリ1への書込動作が終了すると、書込制御信号WENが“H”となり、カウンタ2のカウント値CNTが更新されてcnt2となり、時刻t0と同じ状態に戻る。
なお、衝突検出部10の動作も、衝突検出部20とほぼ同様である。但し、衝突検出部10では、パソコン側のFIFOメモリ1の読出動作と、PHS側のカウンタ2の読出動作が衝突した場合に、PHS側へFIFOメモリ1が満杯であることを示すカウント値WCTが出力されるようになっている。
このように、本実施例のデータ転送回路は、一方の装置(例えば、パソコン)がカウンタ2のカウント値CNTを読み出すタイミングの直前と直後に、他方の装置(例えば、PHS)からFIFOメモリ1へのアクセスが行われていない場合に限り、この一方の装置へカウンタ2のカウント値CNTを出力し、それ以外の場合には、読み出しが不要、或いは書き込みが不可能であることを示すカウント値を出力する衝突検出部10,20を有している。これにより、アクセスの衝突によって不確定なカウント値CNTを読み出して、誤った読み出しや書き込み動作を行うことを防止することができるという利点がある。
なお、以上説明した実施例は、あくまでも、この発明の技術内容を明らかにするためのものである。この発明は、上記実施例にのみ限定して狭義に解釈されるものではなく、この発明の特許請求の範囲に述べる範囲内で、種々変更して実施することができる。その変形例としては、例えば、次のようなものがある。
(a) PHS側からパソコン側へデータ転送を行うためのデータ転送回路を説明したが、同様の回路を用いてパソコン側からPHS側へデータ転送を行うことができる。
(b) データ転送を行う装置は、PHSやパソコンに限定されない。
(c) 衝突検出部10,20の回路構成は、例示したものに限定されない。カウンタ2への同時アクセスを検出して、このカウンタ2のカウント値CNTを読み出そうとしている装置へ、データ転送を停止させるようなカウント値CNTを出力することができるものであれば、同様に適用可能である。
1 FIFOメモリ
2 カウンタ
10,20 衝突検出部
11,21 レジスタ
12,13,22,23 遅延部
14,15,24,25 FF(フリップフロップ)
16,26 インバータ
17,27 AND(論理積ゲート)
18,28 NAND(否定的論理積ゲート)
2 カウンタ
10,20 衝突検出部
11,21 レジスタ
12,13,22,23 遅延部
14,15,24,25 FF(フリップフロップ)
16,26 インバータ
17,27 AND(論理積ゲート)
18,28 NAND(否定的論理積ゲート)
Claims (2)
- 第1の装置から与えられるデータと書込制御信号に従って該データを順次格納し、第2の装置から与えられる読出制御信号に従って該格納されたデータをその格納された順に読み出す先入れ先出しメモリと、
前記書込制御信号に従ってカウントアップし、前記読出制御信号に従ってカウントダウンすることによって前記先入れ先出しメモリに格納されているデータ数を出力するカウンタと、
前記第2の装置が前記先入れ先出しメモリからデータの読み出しを行っているときに、前記第1の装置から前記カウンタのカウント値を読み出すための第1の状態読出信号を検出した場合に、該カウンタのカウント値に拘らず該先入れ先出しメモリが満杯であることを示す値を該第1の装置に出力する第1の衝突検出部と、
前記第1の装置が前記先入れ先出しメモリにデータの書き込みを行っているときに、前記第2の装置から前記カウンタのカウント値を読み出すための第2の状態読出信号を検出した場合に、該カウンタのカウント値に拘らず該先入れ先出しメモリが空であることを示す値を該第2の装置に出力する第2の衝突検出部とを、
備えたことを特徴とするデータ転送回路。 - 前記第1の衝突検出部は、
前記第1の状態読出信号を遅延させて第1の遅延信号を出力する第1の遅延部と、前記第1の遅延信号を遅延させて第2の遅延信号を出力する第2の遅延部と、前記第1の状態読出信号のタイミングで前記読出制御信号の状態を保持する第1の保持部と、前記第2の遅延信号のタイミングで前記読出制御信号の状態を保持する第2の保持部と、前記第1の遅延信号のタイミングで前記カウンタのカウント値を保持すると共に、前記第1及び第2の保持部の一方または両方に前記第2の装置が前記先入れ先出しメモリからデータの読み出しを行っていることを示す状態が保持されたときには、該カウンタのカウント値に代えて該先入れ先出しメモリが満杯であることを示す値を保持して前記第1の装置に出力する第1のレジスタとを備え、
前記第2の衝突検出部は、
前記第2の状態読出信号を遅延させて第3の遅延信号を出力する第3の遅延部と、前記第3の遅延信号を遅延させて第4の遅延信号を出力する第4の遅延部と、前記第2の状態読出信号のタイミングで前記書込制御信号の状態を保持する第3の保持部と、前記第4の遅延信号のタイミングで前記書込制御信号の状態を保持する第4の保持部と、前記第3の遅延信号のタイミングで前記カウンタのカウント値を保持すると共に、前記第3及び第4の保持部の一方または両方に前記第1の装置が前記先入れ先出しメモリにデータの書き込みを行っていることを示す状態が保持されたときには、該カウンタのカウント値に代えて該先入れ先出しメモリが空であることを示す値を保持して前記第2の装置に出力する第2のレジスタとを備えたことを特徴とする請求項1記載のデータ転送回路。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003414860A JP2005174090A (ja) | 2003-12-12 | 2003-12-12 | データ転送回路 |
KR1020040095617A KR101123087B1 (ko) | 2003-12-12 | 2004-11-22 | 데이터 전송회로 |
CNB2004101006853A CN100395741C (zh) | 2003-12-12 | 2004-12-08 | 数据传输电路 |
US11/008,120 US20050128834A1 (en) | 2003-12-12 | 2004-12-10 | Data transfer circuit having collision detection circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003414860A JP2005174090A (ja) | 2003-12-12 | 2003-12-12 | データ転送回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005174090A true JP2005174090A (ja) | 2005-06-30 |
Family
ID=34650552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003414860A Pending JP2005174090A (ja) | 2003-12-12 | 2003-12-12 | データ転送回路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20050128834A1 (ja) |
JP (1) | JP2005174090A (ja) |
KR (1) | KR101123087B1 (ja) |
CN (1) | CN100395741C (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100452626B1 (ko) * | 2001-07-27 | 2004-10-12 | 서석일 | 파두를 함유하는 바퀴벌레 퇴치제 |
CN104795081A (zh) * | 2015-04-23 | 2015-07-22 | 天脉聚源(北京)教育科技有限公司 | 一种读写pcm缓存中pcm数据的方法及装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4748656A (en) * | 1986-03-21 | 1988-05-31 | American Telephone And Telegraph Company | Personal computer--as an interface between a telephone station set and a business communication system |
JPH02112051A (ja) * | 1988-10-20 | 1990-04-24 | Nec Corp | データ転送方式 |
EP0469553B1 (en) * | 1990-07-30 | 1995-09-27 | Nec Corporation | Disk controller including format control unit instructing directly jump back operation |
KR100429865B1 (ko) * | 1997-07-23 | 2004-06-16 | 삼성전자주식회사 | 필 상태검사 회로 및 이를 이용한 fifo메모리 |
KR20000024812A (ko) * | 1998-10-02 | 2000-05-06 | 전주범 | 선입 선출 회로 및 그의 메모리 상태 검출 방법 |
EP1132820A3 (en) * | 2000-02-04 | 2003-01-22 | Microchip Technology Incorporated | Collision detection for dual port RAM operations on a microcontroller |
JP3815948B2 (ja) * | 2000-04-20 | 2006-08-30 | シャープ株式会社 | Fifoメモリ制御回路 |
US7072998B2 (en) * | 2003-05-13 | 2006-07-04 | Via Technologies, Inc. | Method and system for optimized FIFO full conduction control |
-
2003
- 2003-12-12 JP JP2003414860A patent/JP2005174090A/ja active Pending
-
2004
- 2004-11-22 KR KR1020040095617A patent/KR101123087B1/ko not_active Expired - Fee Related
- 2004-12-08 CN CNB2004101006853A patent/CN100395741C/zh not_active Expired - Fee Related
- 2004-12-10 US US11/008,120 patent/US20050128834A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CN100395741C (zh) | 2008-06-18 |
KR20050059413A (ko) | 2005-06-20 |
CN1627280A (zh) | 2005-06-15 |
US20050128834A1 (en) | 2005-06-16 |
KR101123087B1 (ko) | 2012-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7363436B1 (en) | Collision detection in a multi-port memory system | |
US6192428B1 (en) | Method/apparatus for dynamically changing FIFO draining priority through asynchronous or isochronous DMA engines in response to packet type and predetermined high watermark being reached | |
KR0123239B1 (ko) | 선입선출방식(fifo) 메모리 | |
US8291138B2 (en) | Skip based control logic for first in first out buffer | |
JP3645584B2 (ja) | データ転送同期装置 | |
EP2808800A1 (en) | Multiple data rate memory with read timing information | |
US6802036B2 (en) | High-speed first-in-first-out buffer | |
US7822906B2 (en) | Data flush methods | |
US20040022099A1 (en) | FIFO memory and semiconductor device | |
US6286072B1 (en) | System and method for synchronizing data communication between asynchronous buses | |
JP2005174090A (ja) | データ転送回路 | |
US7822905B2 (en) | Bridges capable of controlling data flushing and methods for flushing data | |
CN117406954A (zh) | 一种异步fifo电路 | |
US6486704B1 (en) | Programmable burst FIFO | |
US20040083309A1 (en) | FIFO device | |
CN100470531C (zh) | 桥接器及电子系统的数据清除方法 | |
JP4281367B2 (ja) | データ転送制御回路、電子機器及びデータ転送制御方法 | |
JP4478592B2 (ja) | メモリ回路 | |
JP2834948B2 (ja) | データ転送方式 | |
JP4511819B2 (ja) | Fifoメモリ制御装置及び方法 | |
US7945744B2 (en) | Interface circuit | |
JPWO2004051492A1 (ja) | 同一の入力値を圧縮する記憶装置 | |
JPH10276229A (ja) | 非同期転送制御方式 | |
JPH01240945A (ja) | 拡張メモリインタフェース回路 | |
JPH11259358A (ja) | メモリアクセス方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080513 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081209 |