JP3093583B2 - Memory control circuit - Google Patents

Memory control circuit

Info

Publication number
JP3093583B2
JP3093583B2 JP06271349A JP27134994A JP3093583B2 JP 3093583 B2 JP3093583 B2 JP 3093583B2 JP 06271349 A JP06271349 A JP 06271349A JP 27134994 A JP27134994 A JP 27134994A JP 3093583 B2 JP3093583 B2 JP 3093583B2
Authority
JP
Japan
Prior art keywords
address
write
read
clock
bit
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.)
Expired - Fee Related
Application number
JP06271349A
Other languages
Japanese (ja)
Other versions
JPH08138369A (en
Inventor
浩司 大橋
晋一 稲葉
英巳 貝瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP06271349A priority Critical patent/JP3093583B2/en
Publication of JPH08138369A publication Critical patent/JPH08138369A/en
Application granted granted Critical
Publication of JP3093583B2 publication Critical patent/JP3093583B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、たとえば、データが書
き込まれた順序にて読み出されるFIFO(First-in First-
out)メモリを制御するメモリ制御回路に係り、特に、書
込みクロックと異なる速度の読出しクロックにてメモリ
を制御してデータを読み出すメモリ制御回路に関するも
のである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a FIFO (first-in first-
out) The present invention relates to a memory control circuit for controlling a memory, and more particularly to a memory control circuit for reading data by controlling the memory with a read clock having a different speed from a write clock.

【0002】[0002]

【従来の技術】たとえば、ディジタル交換機などには、
着信したパケットなどのデータを順次蓄積して、着信し
た順序にてデータを読み出して転送するFIFOメモリが採
用されているものがある。このようなFIFOメモリでは、
所定の速度の書込みクロックに同期してデータが書き込
まれ、伝送による遅延などを回復するために書込みクロ
ックより速い、たとえば2倍速以上の読出しクロックに
てデータの読み出しが実行される。
2. Description of the Related Art For example, in digital exchanges,
There is a type that employs a FIFO memory that sequentially accumulates data such as incoming packets and reads and transfers the data in the order of arrival. In such a FIFO memory,
Data is written in synchronization with a write clock at a predetermined speed, and data is read out at a read clock faster than the write clock, for example, at twice or more the speed of the write clock in order to recover delay due to transmission.

【0003】このようなFIFOメモリのメモリ制御回路で
は、最新の書込みアドレスと読出しアドレスとを比較し
てデータの蓄積量を随時検出し、読み出しの継続を行な
うか否かを判定しつつ、データを読み出す制御が行なわ
れる。この場合、書込みクロックにて駆動される書込み
アドレスと読出しクロックにて駆動される読出しアドレ
スとの同期をとった後に、それらの比較を行なわなけれ
ばならない。
In such a memory control circuit of a FIFO memory, the latest write address is compared with the read address to detect the amount of accumulated data at any time, and to determine whether to continue reading, and to determine whether to continue reading. Read control is performed. In this case, the write address driven by the write clock and the read address driven by the read clock must be synchronized and then compared.

【0004】従来、書込みアドレスと読出しアドレスと
の同期をとって比較する場合、たとえば、書込みアドレ
スを読出しクロックに同期するように変換して、これと
読出しアドレスを比較する次のような同期変換方式が知
られている。まず、FIFOメモリに供給される書込みアド
レスを順次検出して、これらを複数の直列な遅延素子を
通すことにより、それぞれの書込みアドレスに徐々に位
相差を与える。それぞれの遅延素子からの位相が異なる
書込みアドレスと位相を与えていない書込みアドレスと
は、1つのホールド回路にそれぞれホールドされる。こ
の場合、書込みアドレスの最大遅延期間は、少なくとも
書込みクロックの1周期以下になるように設定する。そ
れぞれの書込みアドレスの遅延期間差は、ホールド回路
のセットアップ時間およびホールド時間のそれぞれ必要
最低限の時間の和より長くして、ホールド回路のセット
アップ期間およびホールド期間の規定に合わない信号を
少なくとも1種類のみになるように設定する。
Conventionally, when a write address and a read address are compared in synchronization with each other, for example, a write address is converted so as to be synchronized with a read clock, and the read address is compared with the following synchronous conversion method. It has been known. First, write addresses supplied to the FIFO memory are sequentially detected, and these are sequentially passed through a plurality of serial delay elements to gradually give a phase difference to each write address. A write address having a different phase from each delay element and a write address to which no phase is given are respectively held by one hold circuit. In this case, the maximum delay period of the write address is set to be at least one cycle or less of the write clock. The difference between the delay periods of the write addresses is longer than the sum of the minimum required times of the setup time and the hold time of the hold circuit, and at least one type of signal that does not meet the requirements of the setup period and the hold period of the hold circuit. Set to only.

【0005】ホールド回路にそれぞれの書込みアドレス
がホールドされると、ホールド回路は読出しクロックに
て駆動されて、複数の位相差の書込みアドレスが読出し
クロックのいずれかのクロックに同期するように出力さ
れる。これらホールド回路からの複数のアドレスは、有
意信号判定部に供給される。この有意信号判定部は、複
数のアドレスの中から一致したものを読出しクロックに
正常に同期した有意な書込みアドレスとして選択する。
すなわち、たとえば位相を与えていないアドレスと1回
の遅延を与えたアドレスが一致した場合、それぞれホー
ルド回路のセットアップ時間およびホールド時間ともに
満足している信号と判定して、位相を与えていないアド
レスが有効な書込みアドレスとして選択される。これが
一致せずに1回の遅延および2回の遅延を与えたアドレ
スが一致した場合は、位相を与えていないアドレスにて
セットアップ時間またはホールド時間のいずれかが規定
を満足していないと判定して、それぞれの規定を満足し
ていると判定される1回の遅延および2回の遅延を与え
たアドレスのうち1回の遅延を与えたアドレスを選択す
る。同様に、2回の遅延、3回の遅延、4回の遅延・・
・を順次与えたアドレスのうち一致するアドレスを選択
する。この場合、現在の書込みアドレスに近い遅延の回
数が少ないアドレスを優先して選択している。これによ
り、複数の書込みアドレスのうちいずれかが読出しクロ
ックに正確に同期した信号として読み出されて、これと
読出しアドレスとを比較してデータ残量を検出するよう
にしていた。
When each write address is held by the hold circuit, the hold circuit is driven by a read clock, and write addresses having a plurality of phase differences are output so as to be synchronized with any one of the read clocks. . A plurality of addresses from these hold circuits are supplied to a significant signal determination unit. The significant signal determination unit selects a matching address from among the plurality of addresses as a significant write address normally synchronized with the read clock.
That is, for example, when an address to which no phase is applied matches an address to which one delay is applied, it is determined that the signal satisfies both the setup time and the hold time of the hold circuit. Selected as a valid write address. If the addresses do not match and the addresses with one delay and two delays match, it is determined that either the setup time or the hold time does not satisfy the regulation at the address to which no phase is given. Then, an address given one delay is selected from addresses given one delay and two delays determined to satisfy the respective rules. Similarly, two delays, three delays, four delays ...
Select the matching address from the addresses sequentially given. In this case, an address with a small number of delays close to the current write address is preferentially selected. As a result, one of the plurality of write addresses is read as a signal accurately synchronized with the read clock, and the read address is compared with the read address to detect the remaining data amount.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、上述し
た従来の技術では、書込みアドレスの遅延期間に、動作
環境の変化による、たとえばゲート遅延、配線遅延など
の不安定な遅延時間が加算されるので、判定を誤る可能
性があるという問題があった。誤りを低減するために遅
延段数を増加させて、比較するアドレスの数を増加させ
ることが考えられるが、これは回路を複雑にするだけで
あり以前不安定性は残り、高速処理にも適さなくなると
いう問題点があった。
However, in the above-mentioned conventional technique, an unstable delay time such as a gate delay and a wiring delay due to a change in the operating environment is added to the delay period of the write address. There is a problem that the judgment may be erroneous. In order to reduce errors, it is conceivable to increase the number of delay stages to increase the number of addresses to be compared. However, this only complicates the circuit, and the previous instability remains, making it unsuitable for high-speed processing. There was a problem.

【0007】本発明はこのような従来技術の欠点を解消
し、回路の動作環境の影響が少なくかつ、高速処理に適
した信頼性の高いメモリ制御回路を提供することを目的
とする。
SUMMARY OF THE INVENTION It is an object of the present invention to solve the above-mentioned drawbacks of the prior art and to provide a highly reliable memory control circuit which is less affected by the circuit operating environment and suitable for high-speed processing.

【0008】[0008]

【課題を解決するための手段】本発明によるメモリ制御
回路は上述の課題を解決するために、データ蓄積部への
データの書き込みおよび読み出しを制御するメモリ制御
回路において、この回路は、所定の速度の書込みクロッ
クに同期して順次歩進する書込みアドレスを生成してデ
ータ蓄積部に供給する書込制御部と、書込制御部からの
書込みクロックの速度と異なる速度の読出しクロックに
同期して順次歩進する読出しアドレスを生成してデータ
蓄積部に供給する読出制御部と、書込制御部からの書込
みアドレスと読出制御部からの読出しアドレスとに基づ
いてデータ蓄積部のデータ蓄積量を随時検出して読出制
御部でのデータ読み出しの開始および停止を判定する読
出判定部とを含み、読出判定部は、書込制御部から順次
出力される書込みアドレスを検出して、それぞれ読出し
クロックに同期した書込みアドレスに変換する同期変換
部であって、読出しクロックに同期させた書込みアドレ
スのビット誤りを検出し、その誤りを訂正しつつクロッ
ク同期変換した書込みアドレスを形成する同期変換部
と、同期変換部からの読出しクロックに同期した書込み
アドレスと読出制御部からの読出しクロックに同期した
読出しアドレスとを比較してデータ蓄積部でのデータ残
量を検出する残量検出部とを有することを特徴とする。
In order to solve the above-mentioned problems, a memory control circuit according to the present invention is a memory control circuit for controlling writing and reading of data to and from a data storage section. A write control unit for generating a write address that sequentially advances in synchronization with the write clock of the write control unit and supplying the generated write address to the data storage unit; and sequentially synchronizing with a read clock having a speed different from the speed of the write clock from the write control unit. A read control unit that generates a read address to be incremented and supplies it to the data storage unit, and detects a data storage amount of the data storage unit as needed based on a write address from the write control unit and a read address from the read control unit. And a read determination unit for determining the start and stop of data reading in the read control unit. A synchronous conversion unit that detects a bit address of a write address synchronized with the read clock, and corrects the error while correcting the error. A synchronous converter for forming an address, and a write address synchronized with a read clock from the synchronous converter and a read address synchronized with the read clock from the read controller are compared to detect a remaining amount of data in the data storage unit. And a remaining amount detection unit.

【0009】この場合、同期変換部は、書込制御部から
の書込みアドレスをラッチして順次読出しクロックに同
期して入力する入力手段と、入力手段からの読出しクロ
ックに同期した書込みアドレスのビット誤りを訂正する
誤り訂正手段と、誤り訂正手段からの誤り訂正した書込
みアドレスを読出クロックに同期して出力する出力手段
とを含み、誤り訂正手段は入力手段を介して入力した現
時点の書込みアドレスのうち隣接するビットおよび出力
手段から出力される前時点の書込みアドレスを受けて、
これらに基づいて現時点の書込みアドレスのビット誤り
を訂正するとよい。
In this case, the synchronous conversion unit latches the write address from the write control unit and sequentially inputs the write address in synchronization with the read clock, and a bit error of the write address synchronized with the read clock from the input unit. Error correcting means, and output means for outputting an error-corrected write address from the error correcting means in synchronization with the read clock, wherein the error correcting means includes a current write address input through the input means. In response to the adjacent bit and the write address at the time before output from the output means,
It is preferable to correct the bit error of the current write address based on these.

【0010】また、入力手段および出力手段は、書込み
アドレスのそれぞれのビットに対応して設けられた読出
しクロックに同期して動作する複数のフリップフロップ
回路であるとよい。さらに、誤り訂正手段は、書込みア
ドレスのそれぞれのビットに対応して設けられ、論理式
E=A・B~+C・D~ (ただし、B~,D~ は反転B、反転Dを表わ
す)にて得られるそれぞれの論理出力ビット(E) を得る
複数の組合せ論理回路であって、入力(C) が対応する入
力側のフリップフロップ回路の出力に接続されて、入力
(B,D) がそれぞれ対応するフリップフロップ回路に隣接
する入力側のフリップフロップ回路の出力に接続され、
入力(A) が該当ビットに隣接するビットの出力側のフリ
ップフロップ回路に接続され、入力(C) のビット誤りを
訂正した論理出力(E) を対応する出力側のフリップフロ
ップ回路に供給する組合せ回路であるとよい。
Preferably, the input means and the output means are a plurality of flip-flop circuits which operate in synchronization with a read clock provided corresponding to each bit of the write address. Further, the error correction means is provided corresponding to each bit of the write address,
A plurality of combinational logic circuits for obtaining respective logic output bits (E) obtained by E = A · B ~ + C · D ~ (where B ~ and D ~ represent inverted B and inverted D, respectively) , The input (C) is connected to the output of the corresponding input side flip-flop circuit,
(B, D) are connected to the outputs of the input-side flip-flop circuits adjacent to the corresponding flip-flop circuits, respectively.
A combination in which the input (A) is connected to the flip-flop circuit on the output side of the bit adjacent to the corresponding bit, and the logical output (E) in which the bit error of the input (C) is corrected is supplied to the corresponding flip-flop circuit on the output side It may be a circuit.

【0011】一方、本発明のメモリ制御回路は、書込制
御部および読出制御部からのそれぞれのアドレス信号を
残量検出部にてアドレス比較するために、いずれか1つ
のビットが"1" の値をとる所定の形態のアドレス信号に
デコードして残量判定部に供給するデコード手段を有す
るとよい。
On the other hand, in the memory control circuit of the present invention, any one bit is set to "1" in order to compare the address signals from the write control unit and the read control unit with the remaining amount detection unit. It is preferable to have a decoding unit that decodes the address signal into a predetermined form that takes a value and supplies the address signal to the remaining amount determination unit.

【0012】この場合、読出しクロックは、書込みクロ
ックの2倍以上の速度にて発生されるクロックを含み、
デコード手段は、それぞれのアドレス信号が10進数の"
0" を表わす場合に、それぞれのビット値がA0=1, A1〜A
N=0となり、アドレス信号が10進数の"1" を表わす場合
にA0=0,A1=1,A2〜AN=0となり、アドレス信号が10進数
の"N" を表わす場合に、A0〜A(N-1)=0,AN=1 となるアド
レス信号A0〜ANにデコードするとよい。
In this case, the read clock includes a clock generated at twice or more the speed of the write clock,
Decoding means that each address signal is a decimal "
When "0" is represented, each bit value is A0 = 1, A1 to A
N = 0, A0 = 0, A1 = 1, A2 to AN = 0 when the address signal represents decimal "1", and A0 to A when the address signal represents decimal "N" It is preferable to decode the address signals A0 to AN such that (N-1) = 0 and AN = 1.

【0013】また、読出しクロックは、書込みクロック
のM倍以上の速度にて供給されるクロックを含み、デコ
ード手段は、それぞれのアドレス信号が10進数の"0"
〜"M"を表わす場合に、それぞれのビット値がA0=1, A1
〜AN=0となり、アドレス信号が10進数の"M+1" 〜"2M"を
表わす場合にA0=0,A1=1,A2〜AN=0となり、アドレス信号
が10進数の"2M+1"〜"3M"を表わす場合にA0,A1=0,A2=1,
A3〜AN=0となり、アドレス信号が10進数の"(N-1)M+1"
〜"NM"にて表わされる場合にA0〜A(N-1)=0,AN=1 となる
アドレス信号A0〜ANにデコードするとよい。
Further, the read clock includes a clock supplied at a speed of M times or more the write clock, and the decoding means determines that each address signal is a decimal "0".
When representing "M", the respective bit values are A0 = 1, A1
~ AN = 0, and when the address signal represents decimal "M + 1" to "2M", A0 = 0, A1 = 1, A2 to AN = 0, and the address signal is decimal "2M + 1" A0, A1 = 0, A2 = 1,
A3 ~ AN = 0, and the address signal is decimal ("(N-1) M + 1")
It is preferable to decode the address signals into A0 to AN, where A0 to A (N-1) = 0 and AN = 1 when represented by .about. "NM".

【0014】[0014]

【作用】本発明のメモリ制御回路によれば、書込みクロ
ックに応動して順次歩進された書込みアドレスが書込制
御部からデータ蓄積部に供給されて、それぞれのアドレ
スにデータが順次蓄積されていく。データ蓄積部に所定
のデータ量が蓄積されると、読出制御部にて書込みクロ
ックと異なる速度の読出しクロックに応動して順次歩進
される読出アドレスがデータ蓄積部に供給されて、順次
データ蓄積部に書き込まれた順序にてデータが読み出さ
れる。この際に、書込制御部から出力される書込みアド
レスと読出制御部から出力される読出しアドレスは、読
出判定部にて順次比較されて、データ蓄積部のデータ残
量が検出される。この場合、読出判定部では同期変換部
にて検出した書込みアドレスを読出しクロックに同期し
たアドレスに変換して、これと読出しアドレスとを残量
検出部にて比較する。
According to the memory control circuit of the present invention, the write addresses sequentially incremented in response to the write clock are supplied from the write control unit to the data storage unit, and the data is sequentially stored at each address. Go. When a predetermined amount of data is stored in the data storage unit, a read address that is sequentially increased in response to a read clock at a different speed from the write clock in the read control unit is supplied to the data storage unit, and the data is sequentially stored. The data is read in the order in which the data was written in the section. At this time, the write address output from the write control unit and the read address output from the read control unit are sequentially compared by the read determination unit, and the remaining amount of data in the data storage unit is detected. In this case, the read determination unit converts the write address detected by the synchronous conversion unit into an address synchronized with the read clock, and compares this with the read address in the remaining amount detection unit.

【0015】同期変換部にて書込みアドレスを読出しク
ロックに同期させる場合には、現入力の書込みアドレス
を一旦読出しクロックに同期させ、その現時点の書込み
アドレスをこれを歩進する前の前時点にて読出しクロッ
クに同期して出力された書込みアドレスと比較して、歩
進ビットの重複および欠落ビットを検出して、その誤り
ビットを現時点の書込みアドレスにて訂正して、さらに
読出しクロックに同期させて残量検出部に順次供給す
る。これにより、残量検出部では、ビット訂正された読
出しクロックに同期した書込みアドレスとその時点での
読出しアドレスとを比較して、たとえば一致する場合に
は、読出制御部に読み出しを停止する信号を送り、デー
タの読み出しを一時停止させる。
When the write address is synchronized with the read clock by the synchronous conversion unit, the write address of the current input is once synchronized with the read clock, and the current write address is changed to the previous time before the write address is advanced. In comparison with the write address output in synchronization with the read clock, duplicate and missing bits of the stepped bits are detected, the erroneous bits are corrected at the current write address, and further synchronized with the read clock. It is sequentially supplied to the remaining amount detection unit. Thus, the remaining amount detection unit compares the write address synchronized with the bit-corrected read clock with the read address at that time, and if the addresses match, for example, sends a signal to the read control unit to stop reading. To pause the reading of data.

【0016】その後、データ蓄積部に所定の量のデータ
が再び蓄積されると、読出制御部から読出しクロックに
同期した読出しアドレスがデータ蓄積部に供給されてデ
ータの読み出しが開始され、さらに書込みアドレスと読
出しアドレスが比較されてデータ残量を検出しつつ読み
出しを停止するか否かが随時判定される。
Thereafter, when a predetermined amount of data is again stored in the data storage unit, a read address synchronized with a read clock is supplied from the read control unit to the data storage unit, and data reading is started. And the read address are compared to determine whether to stop reading while detecting the remaining amount of data.

【0017】[0017]

【実施例】次に添付図面を参照して本発明によるメモリ
制御回路の実施例を詳細に説明する。図1には、本発明
によるメモリ制御回路が適用されたFIFO(First-in Firs
t-out)メモリ装置の一実施例が示されている。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an embodiment of a memory control circuit according to the present invention; FIG. 1 shows a FIFO (First-in Firs) to which a memory control circuit according to the present invention is applied.
One embodiment of a t-out) memory device is shown.

【0018】本実施例のメモリ制御回路は、書込みクロ
ックWCL に同期する書込みアドレスWAを順次歩進してデ
ータ蓄積部60にアドレス順にデータを書き込み、書込み
クロックWCL よりも短い周期の読出しクロックRCL に同
期する読出しアドレスを順次歩進して書き込んだ順序に
てデータ蓄積部60からデータを読み出すFIFOメモリの制
御回路である。特に、本実施例では書込みアドレスWAと
読出しアドレスRAとを比較してデータ残量を検出しつつ
読み出しの続行を行なうか否かを判定する。この際に、
書込みクロックWCL を読出しクロックRCL に同期変換
し、そのビット誤りを検出して訂正しつつ正確に同期変
換させた書込みアドレスを形成して、これと読出しアド
レスを比較する残量検出機能を有するメモリ制御回路で
ある。
The memory control circuit of the present embodiment sequentially advances the write address WA synchronized with the write clock WCL and writes data in the data storage section 60 in address order, and outputs the data to the read clock RCL having a shorter cycle than the write clock WCL. This is a control circuit of a FIFO memory that reads data from the data storage unit 60 in the order in which synchronous read addresses are sequentially increased and written. In particular, in the present embodiment, the write address WA and the read address RA are compared to determine whether to continue reading while detecting the remaining amount of data. At this time,
A memory control having a remaining amount detection function that synchronously converts a write clock WCL to a read clock RCL, forms a write address accurately and synchronously converted while detecting and correcting the bit error, and compares the write address with the read address. Circuit.

【0019】詳細には、本実施例のメモリ制御回路は、
書込制御部10と、読出制御部20と、デコーダ30,40 と、
読出判定部50とを含み、特に、読出判定部50は、同期変
換部52と、残量検出部54とを含む。書込制御部10に供給
される書込みクロックWCL はたとえば、データINの入力
転送クロックに同期したクロックであり、データを供給
する外部装置から所定の速度にて書込制御部10に供給さ
れる。この書込制御部10は、書込みクロックWCL にて順
次歩進するアドレスカウンタを含み、歩進した複数ビッ
トの書込みアドレスWAを書込みクロックWCL に同期して
パラレルにデータ蓄積部60に供給するアドレス生成部で
ある。書込みアドレスWAは、データ蓄積部60の蓄積容量
によりそのビット数が設定されている。本実施例では、
たとえばデータ蓄積部60に1バイト単位にてデータINが
書き込まれ、書込みアドレスWAはその論理アドレスを順
次歩進して指定するアドレスである。
More specifically, the memory control circuit according to the present embodiment comprises:
A write control unit 10, a read control unit 20, decoders 30 and 40,
In particular, the read determination unit 50 includes a synchronization conversion unit 52 and a remaining amount detection unit 54. The write clock WCL supplied to the write control unit 10 is, for example, a clock synchronized with the input transfer clock of the data IN, and is supplied to the write control unit 10 at a predetermined speed from an external device that supplies data. The write control unit 10 includes an address counter that sequentially advances in accordance with a write clock WCL, and generates an address that supplies the multi-stepped write address WA to the data storage unit 60 in parallel in synchronization with the write clock WCL. Department. The number of bits of the write address WA is set according to the storage capacity of the data storage unit 60. In this embodiment,
For example, the data IN is written in the data storage unit 60 in units of 1 byte, and the write address WA is an address for sequentially specifying the logical address.

【0020】読出しクロックRCL は、書込みクロックWC
L の2分の1以下の周期、つまり、2倍以上の速度を有
するクロックであり、たとえば書込みクロックWCL を分
周して形成してもよく、その速度は採用される装置に応
じて任意に設定される。読出制御部20は、読出しクロッ
クRCL にて順次歩進するアドレスカウンタを含み、歩進
した複数ビットの読出しアドレスRAを順次読出しクロッ
クRCL に同期してパラレルにデータ蓄積部60に供給す
る。読出しアドレスRAは、書込みアドレスWAと同じビッ
ト数に設定され、書込みアドレスWAと同様に順次歩進さ
れてデータ蓄積部60からバイト単位にデータOUT を読み
出す論理アドレスである。
The read clock RCL is equal to the write clock WC
A clock having a period equal to or less than one half of L, that is, a clock having a speed twice or more, may be formed by dividing the write clock WCL, for example, and the speed may be arbitrarily determined according to the device used. Is set. The read control unit 20 includes an address counter that sequentially advances in accordance with the read clock RCL, and supplies the read multiple-bit read address RA to the data storage unit 60 in parallel in synchronization with the sequential read clock RCL. The read address RA is a logical address that is set to the same number of bits as the write address WA, and that is sequentially advanced like the write address WA to read the data OUT from the data storage unit 60 in byte units.

【0021】データ蓄積部60は、所定の容量を有するRA
M(Random Access Memory) などのメモリ回路であり、書
込制御部10からの書込みアドレスWAにて布勢されたアド
レスにデータINが順次書き込まれ、読出しアドレスRAに
て布勢されたアドレスからデータOUTが順次読み出され
るFIFOメモリ回路を形成する。
The data storage unit 60 has an RA having a predetermined capacity.
A memory circuit such as M (Random Access Memory), in which data IN is sequentially written to an address activated at a write address WA from the write control unit 10, and data OUT is output from an address activated at a read address RA. Form a FIFO memory circuit that is read sequentially.

【0022】デコーダ30,40 は、書込制御部10からの書
込みアドレスWAまたは読出制御部20からの読出しアドレ
スRAをそれぞれの比較のために所定の形態のアドレス信
号X,Z にデコードするアドレス変換部であり、本実施例
では書込制御部10および読出制御部20にて歩進されるア
ドレスWA,RA に対して1つのビットのみ"1" が立つアド
レス信号A0〜AN(Nは自然数)に変換するアドレスデコ
ーダである。たとえばアドレス値が10進数にて"0" を表
わす場合、A0〜ANにて表わされるアドレス信号のうちA0
ビットのみを"1" とし、10進数にて"1" を表わす場合に
A1ビットのみを"1" とし、10進数にて"N" を表わす場合
にANビットのみを"1" とする。
The decoders 30 and 40 perform an address conversion for decoding the write address WA from the write control unit 10 or the read address RA from the read control unit 20 into address signals X and Z of a predetermined form for respective comparisons. In this embodiment, the address signals A0 to AN (N is a natural number) in which only one bit is set to "1" for the address WA, RA incremented by the write control unit 10 and the read control unit 20. This is an address decoder that converts the data into an address. For example, when the address value represents "0" in decimal, A0 of the address signals represented by A0 to AN
When only bits are "1" and "1" is represented in decimal
Only the A1 bit is set to "1", and when representing "N" in decimal, only the AN bit is set to "1".

【0023】読出判定部50は、読出制御部20での読み出
しの開始時期および停止時期を判定する判定回路であ
り、デコーダ30,40 にて変換されたアドレス信号X,Z に
基づいてデータ蓄積部60のデータ蓄積量を検出し、その
判定信号Rを読出制御部20に供給する残量判定部であ
る。本実施例ではデコーダ30を介して供給される書込み
アドレスXを読出しクロックRCL に同期変換した書込み
アドレスYとして出力する同期変換部52と、同期変換さ
れた書込みアドレスYとデコーダ40を介して供給される
読出制御部20からの読出しアドレスZとを比較してその
判定結果を読出制御部20に供給する残量検出部54とを含
む。
The read judging section 50 is a judging circuit for judging the start time and the stop time of the read in the read control section 20, and based on the address signals X, Z converted by the decoders 30, 40, the data storage section. The remaining amount determination unit detects the amount of accumulated data of 60 and supplies the determination signal R to the read control unit 20. In this embodiment, a synchronous conversion section 52 outputs the write address X supplied via the decoder 30 as a write address Y synchronously converted to the read clock RCL, and the synchronously converted write address Y and the synchronous address are supplied via the decoder 40. And a remaining amount detection unit 54 for comparing the read address Z from the read control unit 20 and supplying the determination result to the read control unit 20.

【0024】特に、本実施例の同期変換部52は、入力し
た書込みアドレスXを同期変換した際にそれぞれのビッ
ト毎の誤りを検出して、これらを訂正しつつ読出しクロ
ックRCLに乗せ替えて書込みアドレスYとして残量検出
部54に供給する誤り訂正機能を含む。この同期変換部52
は、たとえば、図2に示すように複数の入力側フリップ
フロップ回路(入力FF)F1〜Fmと、複数の組合せ論理回
路K1〜Kmと、複数の出力側フリップフロップ回路(出力
FF)G1〜Gmとを有している。
In particular, the synchronous conversion section 52 of this embodiment detects errors for each bit when the input write address X is synchronously converted, and corrects these errors while replacing them with the read clock RCL to perform the write operation. An error correction function to be supplied to the remaining amount detection unit 54 as the address Y is included. This synchronous converter 52
For example, as shown in FIG. 2, a plurality of input-side flip-flop circuits (input FFs) F1 to Fm, a plurality of combinational logic circuits K1 to Km, and a plurality of output-side flip-flop circuits (output
FF) G1 to Gm.

【0025】入力側フリップフロップ回路F1〜Fmは、書
込みアドレスXのそれぞれのビットX(1)〜X(m)をラッチ
して一旦読出しクロックRCL に同期させた現時点のアド
レス信号W(1)〜W(m)を形成するそれぞれ第1のクロック
変換部である。より具体的には、それぞれD(Delay)-フ
リップフロップにて形成された1入力1出力の論理回路
であり、デコーダ30を介して供給される書込みアドレス
X(1)〜X(m)をラッチする入力端子(D) と、読出しクロッ
クRCL が供給されるクロック端子と、これに同期してラ
ッチしたそれぞれのビットを読み出す出力端子(Q) とを
有するそれぞれラッチ回路である。
The input-side flip-flop circuits F1 to Fm latch the respective bits X (1) to X (m) of the write address X and temporarily synchronize the current address signals W (1) to W (1) to X (m) with the read clock RCL. Each is a first clock converter that forms W (m). More specifically, it is a one-input one-output logic circuit formed by a D (Delay) -flip-flop, and a write address supplied via a decoder 30.
It has an input terminal (D) for latching X (1) to X (m), a clock terminal to which a read clock RCL is supplied, and an output terminal (Q) for reading each bit latched in synchronization with the input terminal (D). Each is a latch circuit.

【0026】同様に、出力側フリップフロップ回路G1〜
Gmは、それぞれD−フリップフロップにて形成された1
入力1出力の論理回路であり、組合せ論理回路K1〜Kmか
らの出力E(1)〜E(m)をそれぞれラッチする入力端子(D)
と、読出しクロックRCL が供給されるクロック端子と、
これに同期してラッチしたそれぞれのビットを読み出す
出力Q端子(Q) とを有し、組合せ論理回路K1〜Kmにて誤
り訂正したアドレス信号E(1)〜E(m)をラッチして再び読
出しクロックRCL に同期させた書込みアドレスY(1)〜Y
(m)を出力する第2のクロック変換部である。
Similarly, output-side flip-flop circuits G1 to G1
Gm is 1 formed by each D-flip-flop.
An input terminal (D) for latching outputs E (1) to E (m) from combinational logic circuits K1 to Km.
A clock terminal to which a read clock RCL is supplied;
An output Q terminal (Q) for reading out each bit latched in synchronization with this, the address signals E (1) to E (m) corrected by the combinational logic circuits K1 to Km are latched and Write addresses Y (1) to Y synchronized with read clock RCL
(m) is a second clock converter.

【0027】組合せ論理回路K1〜Kmは、所定の組み合わ
せ論理に基づいて入力側フリップフロップF1〜Fmからの
アドレス信号W(1)〜W(m)のビット誤りをそれぞれ訂正し
た出力E(1)〜E(m)を得る誤り訂正回路であり、本実施例
では前ビットの値の時間的な変化および次ビットの値に
基づいて該当ビットを誤り訂正した出力を得る。より具
体的には、それぞれ4入力1出力の論理回路であり、4
つの入力A〜Dの値に基づいて論理式E=A・B~+C・D~ (た
だし、B~,D~ はそれぞれ反転B、反転Dを表わす)にて
演算した結果の出力(E) を得る論理回路である。この場
合、第1の入力(A) には対応するビットの前ビットの出
力側フリップフロップ回路Gm,G1 〜Gm-1の出力(Q)がそ
れぞれ接続され、第2の入力(B) には前ビットの入力側
フリップフロップFm,F1 〜Fm-1の出力(Q) がそれぞれ接
続され、第3の入力(C) には対応する入力側フリップフ
ロップF1〜Fmの出力(Q) がそれぞれ接続され、第4の入
力(D) には次ビットの入力側フリップフロップF2〜Fm,F
1 の出力(Q) がそれぞれ接続されている。また、その内
部構成は、たとえばNOT 回路、AND 回路およびOR回路あ
るいはNAND回路、NOR 回路などの論理素子を組み合わせ
た、上記論理式を満足する論理回路である。
The combinational logic circuits K1 to Km output the output E (1) in which the bit errors of the address signals W (1) to W (m) from the input side flip-flops F1 to Fm are corrected based on a predetermined combinational logic. EE (m). In this embodiment, the error correction circuit obtains an error-corrected output based on the temporal change of the value of the previous bit and the value of the next bit. More specifically, each of the logic circuits has four inputs and one output.
The output (E) of the result calculated by the logical expression E = A ・ B ~ + C ・ D ~ (where B ~ and D ~ represent inverted B and inverted D, respectively) based on the values of the two inputs A to D ). In this case, the outputs (Q) of the output-side flip-flop circuits Gm, G1 to Gm-1 of the preceding bit of the corresponding bit are respectively connected to the first input (A), and the second input (B) is connected to the second input (B). The outputs (Q) of the input flip-flops Fm, F1 to Fm-1 of the previous bit are respectively connected, and the outputs (Q) of the corresponding input flip-flops F1 to Fm are connected to the third input (C), respectively. And the fourth input (D) has input-side flip-flops F2 to Fm, Fm of the next bit.
1 outputs (Q) are connected. The internal configuration is a logic circuit that satisfies the above-mentioned logical formula, for example, combining logic elements such as a NOT circuit, an AND circuit and an OR circuit or a NAND circuit or a NOR circuit.

【0028】ちなみに、論理式Eの右辺第1項目(A・B~)
は、前ビットにてその値が前時点から変化しているか否
かを表わし、第2項目(C・D~)が該当ビットと次ビットに
て値が変化しているか否かを表わし、これらの論理和を
とることにより、隣接ビットとの間にて重複および欠落
しているビットエラーが訂正された値Eが得られる。つ
まり、入力側のフリップフロップF1〜Fmから供給される
書込みアドレスW(1)〜W(m)は、それぞれの時点でのアド
レスX(1)〜X(m)のラッチのタイミングと読出しクロック
RCL の発生タイミングとにより図3〜図6に示すように
同期ずれなどのビットエラーが生じている場合がある。
図3に示された波形は、書込みクロックWCL に同期した
書込みアドレスX(k),X(k+1) を表わしており、図4の波
形は正常に読出しクロックRCL に同期させた書込みアド
レスW(k),W(k+1) を表わし、図5の波形は読出しクロッ
クRCL に同期させた際に書込みアドレスW(k),W(k+1) が
重複した状態を表わし、図6の波形は同様に同期変換し
た際に書込みアドレスW(k),W(k+1) 間に欠落がある状態
を表わしている。
By the way, the first item on the right side of the logical expression E (A.B ~)
Indicates whether or not the value has changed from the previous time in the previous bit, and the second item (C ・ D か) indicates whether or not the value has changed in the corresponding bit and the next bit. Is obtained, a value E in which a bit error that is duplicated or missing between adjacent bits is corrected is obtained. That is, the write addresses W (1) to W (m) supplied from the input-side flip-flops F1 to Fm are based on the latch timing of the addresses X (1) to X (m) and the read clock at each time.
Depending on the timing of the occurrence of RCL, bit errors such as out-of-sync may occur as shown in FIGS.
The waveform shown in FIG. 3 represents the write addresses X (k) and X (k + 1) synchronized with the write clock WCL, and the waveform of FIG. 4 shows the write address W normally synchronized with the read clock RCL. (k) and W (k + 1), and the waveform in FIG. 5 shows a state where the write addresses W (k) and W (k + 1) overlap when synchronized with the read clock RCL. The waveform similarly shows a state where there is a gap between the write addresses W (k) and W (k + 1) when the synchronous conversion is performed.

【0029】組合せ論理回路Kkは、このような書込みア
ドレスW(k)のビットエラーを上記組み合わせ論理にて誤
り訂正した論理出力E(k)を得る。この場合、時間tの際
の出力E(k,t)は次式(1) にて表わされる。 E(k,t)=Y(k,t+1) =Y(k-1,t)・W~(k-1,t)+W(k,t)・W~(k+1,t) ・・・・・(1) ただし、式(1) において、k=1 のとき、Y(k-1,t)=Y(m,
t),W(k-1,t)=W(m,t-1) 、k=m のとき、W(k+1,t)=W(1,t)
である。図7には、たとえば、m=3 の場合のアドレスW
(k),E(k),Y(k)が示されている。たとえば、時間t3にて
第2ビットW(2)は、第1のビットW(1)と重複している。
この場合、破線にて示す前時点の第1の出力Y(1)="1"と
第1のビットW(1)="1"とからA・B~="0"となる。また第2
のビットW(2)="1"と第3のビットW(3)="0"とからC・D~="
1"となる。この結果、それらの論理和である論理出力E
(2)="1"となる。同様に、第1のビットW(1)は、前時点
の第3の出力Y(3)="0"と第3のビットW(3)="0"からA・B~
="0"、第1のビットW(1)="1"および第2のビットW(2)="
1"からC・D~="0"であり、この結果の論理出力E(1)="0"
となる。これにより、時間t3にて重複しているアドレス
W(1),W(2) が論理出力E(1)="0"と論理出力E(2)="1"とな
って誤り訂正される。なお、論理出力E(1),E(2) は出力
側フリップフロップG1,G2 にてラッチされ、破線で示す
ように次のクロックt4にて1クロック遅れた出力ビット
Y(1),Y(2) として出力される。
The combinational logic circuit Kk obtains a logical output E (k) obtained by correcting such a bit error of the write address W (k) by the combinational logic. In this case, the output E (k, t) at the time t is represented by the following equation (1). E (k, t) = Y (k, t + 1) = Y (k-1, t) ・ W ~ (k-1, t) + W (k, t) ・ W ~ (k + 1, t ) (1) where, in the equation (1), when k = 1, Y (k-1, t) = Y (m,
t), W (k-1, t) = W (m, t-1) and when k = m, W (k + 1, t) = W (1, t)
It is. FIG. 7 shows, for example, the address W when m = 3.
(k), E (k), and Y (k) are shown. For example, at time t3, second bit W (2) overlaps with first bit W (1).
In this case, from the first output Y (1) = "1" and the first bit W (1) = "1" at the previous time indicated by the broken line, AB is "0". Also the second
From the bit W (2) = "1" of the first bit and the third bit W (3) = "0", CD · =
1 ". As a result, the logical output E which is the logical sum of them is
(2) = "1". Similarly, the first bit W (1) is obtained from the third output Y (3) = "0" and the third bit W (3) = "0" at the previous point in time by AB.
= "0", first bit W (1) = "1" and second bit W (2) = "
From 1 ", C ・ D ~ =" 0 ", and the resulting logical output E (1) =" 0 "
Becomes As a result, the address that is duplicated at time t3
W (1) and W (2) become logical output E (1) = "0" and logical output E (2) = "1", and error correction is performed. The logical outputs E (1) and E (2) are latched by the output flip-flops G1 and G2, and output bits delayed by one clock at the next clock t4 as shown by the broken line.
Output as Y (1), Y (2).

【0030】図1に戻って残量検出部54は、同期変換部
52からの書込みアドレスYおよびデコーダ40からの読み
出しアドレスZに基づいて読出制御部20にデータの読出
開始および停止を指示する指示回路であり、同期変換部
52からの書込みアドレスXの値をカウントするカウンタ
と、これをデコーダ40からの読み出しアドレスZと比較
する比較回路を含む。たとえば、データの蓄積開始時点
では書込みアドレスXが所定の値になるまでカウントし
て所定の値になると、読出開始を指示する判定信号Rを
出力し、読出開始後には書込みアドレスXと読出アドレ
スYとの比較結果が一致すると、読出制御部20に読出停
止を表わす判定信号Rを出力する判定回路である。
Returning to FIG. 1, the remaining amount detection unit 54 is a synchronous conversion unit.
An instruction circuit for instructing the read control unit 20 to start and stop reading data based on the write address Y from the read address 52 and the read address Z from the decoder 40;
A counter for counting the value of the write address X from 52 and a comparison circuit for comparing the counter with the read address Z from the decoder 40 are included. For example, at the start of data accumulation, the write address X counts until it reaches a predetermined value, and when the count reaches a predetermined value, a determination signal R instructing the start of reading is output. Is a determination circuit that outputs a determination signal R indicating read stop to the read control unit 20 when the result of the comparison is equal.

【0031】次に上記のような構成における本実施例の
メモリ制御回路の動作を説明する。まず、データINがFI
FOメモリに順次転送されると、たとえば、その転送クロ
ックに応動した書込みクロックWCL が書込制御部10に供
給される。これにより、書込みクロックWCL に応動して
順次歩進された書込みアドレスWAが書込制御部10からデ
ータ蓄積部60に供給される。この結果、それぞれのアド
レスにデータINが順次蓄積されていく。この際に、読出
判定部50では書込制御部10からの書込みアドレスXをデ
コーダ30を介して受け、書込みアドレスXが所定の値に
なると、読出制御部20に読出開始を指示する判定信号R
を供給する。
Next, the operation of the memory control circuit according to the present embodiment having the above configuration will be described. First, data IN is FI
When sequentially transferred to the FO memory, for example, a write clock WCL corresponding to the transfer clock is supplied to the write control unit 10. As a result, the write address WA sequentially incremented in response to the write clock WCL is supplied from the write control unit 10 to the data storage unit 60. As a result, data IN is sequentially stored at each address. At this time, the read determination unit 50 receives the write address X from the write control unit 10 via the decoder 30, and when the write address X reaches a predetermined value, the determination signal R instructing the read control unit 20 to start reading.
Supply.

【0032】読出開始を表わす信号Rを受けた読出制御
部20では、書込みクロックWCL の2倍以上の速度の読出
しクロックRCL に応動して順次歩進した読出アドレスRA
を生成して、データ蓄積部60に供給する。これにより、
データ蓄積部60に蓄積されたデータがそのアドレス順に
読出しクロックRCL の速度に応動して読み出されてい
く。この際に、読出制御部20から出力される読出しアド
レスRAは、順次デコーダ40にて所定の形態のアドレスZ
にデコードされた信号として読出判定部50の残量検出部
54に供給され、同様にデコードされて同期変換された書
込みアドレスYと順次比較されて、データ蓄積部60のデ
ータ残量が検出される。
In the read control unit 20, which has received the signal R indicating the start of reading, the read address RA sequentially stepped up in response to the read clock RCL at twice or more the speed of the write clock WCL.
Is generated and supplied to the data storage unit 60. This allows
The data stored in the data storage unit 60 is read out in the order of the addresses in response to the speed of the read clock RCL. At this time, the read address RA output from the read control unit 20 is sequentially converted into a predetermined address Z by the decoder 40.
Remaining amount detection unit of read determination unit 50 as a signal decoded to
The data remaining in the data storage section 60 is detected by sequentially comparing the write address Y supplied to the write address Y, which is similarly decoded and synchronously converted.

【0033】この場合、書込みアドレスYは、デコーダ
30からの書込みアドレスXが同期変換部52にて読出しク
ロックRCL に同期するように変換され、そのとき生じる
ビットエラーが検出されて、これを誤り訂正した書込み
アドレスYを残量検出部54に供給している。詳しくは、
同期変換部54にて書込みアドレスXを読出しクロックRC
L に同期させる場合に、現入力の書込みアドレスXのそ
れぞれのビットX(1)〜X(m)は、入力側フリップフロップ
F1〜Fmにて順次ラッチされる。次に、それぞれのフリッ
プフロップF1〜Fmに読出しクロックRCL が供給される
と、これに同期してそれぞれのラッチされたビットW(1)
〜W(m)が組合せ論理回路K1〜Kmに出力される。このと
き、出力側フリップフロップG1〜Gmでは読出しクロック
RCL に同期して前時点の書込みアドレスY(1)〜Y(m)が出
力されて、組合せ論理回路K1〜Kmの入力(A) に供給され
る。これにより、論理回路K1〜Kmは入力A〜Dから論理
出力E=A・B~+C・D~にて演算した結果を得て、論理出力E
(1)〜E(m)をそれぞれ出力側フリップフロップG1〜Gmに
供給する。この結果の出力E(1)〜E(m)は現時点のアドレ
スW(1)〜W(m)の同期ずれなどのビットエラーがそれぞれ
訂正された出力となっている。
In this case, the write address Y is
The write address X from 30 is converted by the synchronous converter 52 so as to be synchronized with the read clock RCL, a bit error occurring at that time is detected, and the error-corrected write address Y is supplied to the remaining amount detector 54. doing. For more information,
The write address X is read by the synchronous converter 54 and the read clock RC
When synchronizing to L, each bit X (1) to X (m) of the write address X of the current input is
It is sequentially latched at F1 to Fm. Next, when the read clock RCL is supplied to each of the flip-flops F1 to Fm, each of the latched bits W (1) is synchronized with this.
WW (m) are output to the combinational logic circuits K11Km. At this time, the read clocks are output from the output side flip-flops G1 to Gm.
The previous write addresses Y (1) to Y (m) are output in synchronization with RCL, and supplied to the inputs (A) of the combinational logic circuits K1 to Km. As a result, the logic circuits K1 to Km obtain the operation results from the inputs A to D at the logical outputs E = A.B to + C.D.
(1) to E (m) are supplied to output side flip-flops G1 to Gm, respectively. The resulting outputs E (1) to E (m) are outputs in which bit errors such as the out-of-sync of the current addresses W (1) to W (m) have been corrected.

【0034】たとえば、図7に示すように、3ビットの
アドレスX(1),X(2),X(3)が同期変換部52に供給されたと
して考えると、時間t1にてそれぞれが第1のクロックに
て入力側フリップフロップF1〜F3からビットW(1),W(2),
W(3)="1,0,0"として出力される。この時点にて出力側フ
リップフロップG1〜G3から前時点のビットY(1),Y(2),Y
(3)="0,0,1"を出力する。これにより、組合せ論理回路K
1〜K3は、それぞれ論理出力、E(1)=Y(3)・W~(3)+W(1)・W~
(2)と、E(2)=Y(1)・W~(1)+W(2)・W(3) と、E(3)=Y(2)・W~
(2)+W(3)・W~(1)とを求める。この結果の出力は、アドレ
スW(1),W(2),W(3)に重複、欠落などのビット誤りが含ま
れないので、これと同様の論理出力E(1),E(2),E(3)="1,
0,0"が得られる。これらは、出力側フリップフロップG1
〜G3にラッチされて、次のクロックにてY(1),Y(2),Y(3)
として出力される。
For example, as shown in FIG. 7, assuming that 3-bit addresses X (1), X (2), and X (3) are supplied to the synchronous conversion unit 52, each of them becomes the first at the time t1. Bits W (1), W (2),
Output as W (3) = "1,0,0". At this time, the bits Y (1), Y (2), Y
(3) Outputs "0,0,1". Thereby, the combinational logic circuit K
1 to K3 are logical outputs, respectively, E (1) = Y (3) ・ W ~ (3) + W (1) ・ W ~
(2) and E (2) = Y (1) ・ W ~ (1) + W (2) ・ W (3) and E (3) = Y (2) ・ W ~
(2) + W (3) · W ~ (1) is obtained. Since the output of this result does not include bit errors such as duplication and omission in the addresses W (1), W (2) and W (3), the same logical outputs E (1) and E (2) , E (3) = "1,
0,0 ". These are output flip-flops G1
~ G3, and Y (1), Y (2), Y (3) at the next clock
Is output as

【0035】次いで、時間t2にて第2のクロックがそれ
ぞれに供給されると、ビットW(1),W(2),W(3)はそのまま
の状態であり、出力Y(1),Y(2),Y(3)は前時点にて求めら
れたE(1),E(2),E(3)から破線にて示すように"1,0,0" に
変化して出力される。しかし論理結果は、アドレスW
(1),W(2),W(3)にビット誤りがないので、論理出力E(1),
E(2),E(3)="1,0,0"のままである。すなわち、論理式E
(1)=Y(3)・W~(3)+W(1)・W~(2)にてY(3)が"1" から"0" と
なるがビットW(1),W~(2)が"1","0" のままであるのでE
(1)="1"は変わらない。E(2)=Y(1)・W~(1)+W(2)・W(3)
と、E(3)=Y(2)・W~(2)+W(3)・W~(1)ではそれぞれY(3)を含
まないので、E(2)="0",E(3)="0" の状態のままである。
Next, when the second clocks are supplied at time t2, the bits W (1), W (2) and W (3) remain unchanged, and the outputs Y (1) and Y (1) (2), Y (3) is changed from E (1), E (2), E (3) obtained at the previous time to "1,0,0" as shown by the broken line and output. You. But the logical result is that the address W
Since there are no bit errors in (1), W (2), W (3), the logical output E (1),
E (2), E (3) = "1,0,0" remain. That is, the logical expression E
(1) = Y (3) ・ W ~ (3) + W (1) ・ W ~ (2) changes Y (3) from "1" to "0", but bit W (1), W ~ Since (2) remains "1" and "0", E
(1) = "1" does not change. E (2) = Y (1) ・ W ~ (1) + W (2) ・ W (3)
And E (3) = Y (2) · W ~ (2) + W (3) · W ~ (1) do not include Y (3), so E (2) = "0", E ( 3) The state of "0" remains.

【0036】次いで、時間t3にて第3のクロックがそれ
ぞれに供給されると、第2のビットW(2)が"0" から"1"
に変化して、第1のビットW(1)と重複している。この場
合、前時点の出力Y(1),Y(2),Y(3)="1,0,0"であるから論
理出力E(2)=Y(1)・W~(1)+W(2)・W(3)=1・1~+1・0~="1" とな
る。同様に、論理出力E(1)=Y(3)・W~(3)+W(1)・W~(2)=0・0
~+0・0~="0"となる。この結果、第1のビットと第2のビ
ットの重複エラーが訂正された論理出力E(1),E(2) が得
られる。この場合、第2のビットW(2)の立ち上がりが前
時点での読出しクロックに同期することはなく、第1の
ビットW(2)の立ち下がりが時間t3に同期せずに、時間t4
のクロックに遅れて同期していると考えられるので、こ
の時点t3にて論理出力E(1)を"0" に訂正して、論理出力
E(2)を"1" に立ち上げる結果は正確な値に戻したと考え
られる。
Next, when the third clocks are respectively supplied at time t3, the second bit W (2) changes from "0" to "1".
To overlap with the first bit W (1). In this case, since the output Y (1), Y (2), Y (3) at the previous time is 1,0,0, the logical output E (2) = Y (1) · W ~ (1) + W (2) · W (3) = 1 · 1 to + 1.0 · = “1”. Similarly, logic output E (1) = Y (3) ・ W ~ (3) + W (1) ・ W ~ (2) = 0 ・ 0
~ + 0 · 0 ~ = "0". As a result, logical outputs E (1) and E (2) in which the duplication error between the first bit and the second bit is corrected are obtained. In this case, the rising of the second bit W (2) does not synchronize with the read clock at the previous time, and the falling of the first bit W (2) does not synchronize with the time t3.
Since it is considered that the clock is synchronized with the delay of the clock, the logical output E (1) is corrected to "0" at the time t3, and the logical output is
The result of raising E (2) to "1" is considered to have returned to the correct value.

【0037】次に、時間t4では、第1のビットW(1)が"
0" となり、前時点の出力Y(1),Y(2)がそれぞれ"0","1"
に変化する。この結果の論理出力E(1),E(2),E(3)は、入
力ビットW(1),W(2),W(3)にビット誤りがないので、"0,
1,0" の出力となる。同様に時間t5では、それぞれのビ
ットに変化がなく時間t4の状態がそれぞれ継続される。
次いで、時間t6では第2のビットW(2)が"0" から"1" に
変化するが、次の第3のビットW(3)が同期がとれず立ち
上がらずに、第2のビットと第3のビットとの間に欠落
エラーが生じている。この結果の出力は、E(2)=Y(1)・W~
(1)+W(2)・W(3)=0・0~+0・0~="0" となり、E(3)=Y(2)・W~
(2)+W(3)・W(1)=1・0~+0・0~="1" となる。これは第2の論
理出力E(2)が立ち下がった際に、第3の論理出力E(3)が
立ち上げられて、それらの間の欠落エラーが訂正された
結果となっている。この場合、第2のビットW(2)の立ち
下がりが早くクロックに同期した可能性よりも、第3の
ビットW(3)が時間t6のクロックに同期せずに遅れて時間
t7のクロックに同期したと考えられるので、時間t6にて
第2の論理出力E(2)を立ち下げ、第3の論理出力E(3)を
訂正して立ち上げる結果は正確な元の値に戻したと考え
られる。
Next, at time t4, the first bit W (1)
0 ", and the previous outputs Y (1) and Y (2) are" 0 "and" 1 "respectively.
Changes to The logical outputs E (1), E (2), and E (3) of this result are "0, 0" since the input bits W (1), W (2), W (3) have no bit errors.
1,0 ". Similarly, at time t5, each bit remains unchanged and the state at time t4 is continued.
Next, at time t6, the second bit W (2) changes from "0" to "1", but the next third bit W (3) is not synchronized and does not rise, and the second bit W (2) does not rise. A missing error has occurred with the third bit. The output of this result is E (2) = Y (1) · W ~
(1) + W (2) ・ W (3) = 0 ・ 0 ~ + 0 ・ 0 ~ = "0", E (3) = Y (2) ・ W ~
(2) + W (3) · W (1) = 1 · 0 to + 0 · 0 to = “1” This is a result that when the second logical output E (2) falls, the third logical output E (3) rises, and a missing error between them is corrected. In this case, the third bit W (3) is not synchronized with the clock at time t6 but is delayed later than the possibility that the falling of the second bit W (2) is earlier synchronized with the clock.
Since it is considered to be synchronized with the clock of t7, at time t6, the second logical output E (2) falls, and the third logical output E (3) is corrected and started. It is considered to have been returned to.

【0038】次に、時間t7では第3のビットW(3)が正常
に"1" となるが、時間t6にてE(3)が"1" となっているの
で、それぞれの論理出力E(1),E(2),E(3)は状態が保持さ
れて正常出力となる。以下、時間t8,t9 では、入力に変
化がなく、その出力も変化がない状態が保たれる。この
場合、3入力であるので、状態変化は再び時間t1に戻
り、以降、書込みアドレスWAが歩進されるたびに入力ビ
ットX(1),X(2),X(3)が順次"1" の値を交互に繰り返して
供給される。これを入力側ラッチ回路F1〜F3にて一旦、
読出しクロックRCL に同期して読み出したビットW(1),W
(2),W(3)を形成しその際のビット誤りを組合せ論理回路
K1〜K3にて隣接するビットW(1),W(2),W(3)および前時点
の論理出力を表わすY(1),Y(2),Y(3)に基づいて訂正し
て、出力ラッチ回路G1〜G3に供給する。この結果、同期
変換部52の出力Yは、正確に読出しクロックRCL に同期
変換された書込みアドレスYとして順次残量検出部54に
供給される。
Next, at time t7, the third bit W (3) normally becomes "1", but at time t6, E (3) becomes "1". The states of (1), E (2), and E (3) are maintained and become normal outputs. Hereinafter, at times t8 and t9, the input remains unchanged and the output remains unchanged. In this case, since there are three inputs, the state change returns to time t1 again, and thereafter, each time the write address WA advances, the input bits X (1), X (2), X (3) are sequentially set to "1". Is supplied alternately and repeatedly. This is temporarily input by the input side latch circuits F1 to F3.
Bits W (1), W read in synchronization with read clock RCL
Combinational logic circuit that forms (2) and W (3) and uses bit errors at that time
Correction based on adjacent bits W (1), W (2), W (3) and Y (1), Y (2), Y (3) representing the logic output of the previous time point in K1 to K3 , To the output latch circuits G1 to G3. As a result, the output Y of the synchronous converter 52 is sequentially supplied to the remaining amount detector 54 as a write address Y accurately converted synchronously with the read clock RCL.

【0039】以上のように読出しクロックRCL に同期す
る書込みアドレスYと読出しアドレスZを受けた残量検
出部54では、たとえば、これらが一致した場合に読出制
御部20に読出停止を表わす判定信号Rを供給してデータ
蓄積部60からのデータの読み出しを一時停止させる。こ
の後、書込制御部20にてさらにデータの書き込みが行な
われてデータ蓄積量が所定の値になると、書込みアドレ
スXを検出している読出判定部50から再び読み出しを開
始する判定信号Rを読出制御部20に送り、データOUT の
読み出しが以前に停止した次の読出しアドレスRAに歩進
されて再びデータの読み出しが開始される。以降、上記
と同様に書込みアドレスYと読出しアドレスZの比較を
行ないつつ読み出しの停止および開始を繰り返して、デ
ータ蓄積部60でのデータの先入先出制御が順次有効に繰
り返される。
As described above, in the remaining amount detector 54 receiving the write address Y and the read address Z synchronized with the read clock RCL, for example, when they match, the determination signal R indicating stop of the read is sent to the read controller 20. To temporarily stop reading data from the data storage unit 60. Thereafter, when the data is further written in the write control unit 20 and the data storage amount reaches a predetermined value, the read determination unit 50 that detects the write address X sends a determination signal R to start reading again. The data is sent to the read control unit 20, and the reading of the data OUT is stepped to the next read address RA at which the reading was previously stopped, and the data reading is started again. Thereafter, the stop and start of the read are repeated while comparing the write address Y and the read address Z in the same manner as described above, and the first-in first-out control of the data in the data storage unit 60 is sequentially and effectively repeated.

【0040】以上詳細に説明したように本実施例のメモ
リ制御回路によれば、順次歩進される書込みアドレスWA
をそのアドレス値に対応して順次1つのビットが立つア
ドレスXにデコードして、これを読出しクロックRCL に
同期するアドレス信号Wに1つのラッチのみにて一旦同
期させ、これを隣接ビットおよび前時点のアドレスY(t
-1)とから誤り訂正して、さらに読出しクロックRCL に
同期させた正確な書込みアドレスYとして残量検出部54
に供給することができ、ほとんど動作環境の変化などに
左右されない同期変換を実行することができる。この結
果、信頼性の高いメモリ制御を実現することができる。
また、本実施例の同期変換部52は、入力および出力のフ
リップフロップ回路F1〜Fm,G1 〜Gmおよび組合せ論理回
路K1〜Kmのすべてクロック端子にて同一のクロックにて
同期させることができる簡単な回路にて構成することが
できる。
As described in detail above, according to the memory control circuit of the present embodiment, the write address WA sequentially incremented
Is decoded to an address X in which one bit is sequentially set corresponding to the address value, and this is temporarily synchronized with only one latch to an address signal W synchronized with the read clock RCL, and this is synchronized with the adjacent bit and the previous time. Address Y (t
-1), the remaining amount is detected by the remaining amount detection unit 54 as an accurate write address Y synchronized with the read clock RCL.
To perform synchronous conversion that is hardly affected by changes in the operating environment. As a result, highly reliable memory control can be realized.
Further, the synchronization conversion unit 52 of the present embodiment can easily synchronize the input and output flip-flop circuits F1 to Fm, G1 to Gm and the combinational logic circuits K1 to Km with the same clock at all clock terminals. It can be composed of simple circuits.

【0041】ちなみに、図8には本実施例の同期変換部
52の有利性を明確にするために、従来の同期変換部70の
一例が示されている。この例では、パラレルに供給され
る書込みアドレスXを3個の直列に接続された遅延素子
2,4,6 にてそれぞれ書込みクロックWAの1周期の間にそ
れぞれ遅延を与え、これらを遅延を与えていないアドレ
スA-1 とともにホールド回路8の入力A-1 〜D-1 にそれ
ぞれ供給する。ホールド回路8ではホールドした複数の
アドレスA-1 〜D-1 を読出しクロックRCL に同期させて
出力する。この場合、遅延素子2,4,6 のそれぞれの遅延
差は、ホールド回路8のセットアップ時間およびホール
ド時間の最小限必要な時間の和より長くしておく。これ
により、遅延による位相差を含む複数の書込みアドレス
A-1 〜D-1 のうちのいずれかが位相が一致して有意信号
判定部9に供給される。この有意信号性判定部9は、4
つのアドレスをそれぞれ比較して、たとえば排他的論理
和などの論理により一致するアドレスA〜Dを検出し
て、これを有意な書込みアドレスYとして選択して出力
Qから残量検出部54などに供給する。この場合、遅延の
少ないアドレスを優先的に選択する。
FIG. 8 shows the synchronous converter of this embodiment.
To clarify the advantages of 52, an example of a conventional synchronization converter 70 is shown. In this example, the write address X supplied in parallel is divided into three delay elements connected in series.
At 2, 4, and 6, delays are given during one cycle of the write clock WA, and these are supplied to the inputs A -1 to D -1 of the hold circuit 8 together with the address A -1 to which no delay is given. . The hold circuit 8 outputs the plurality of held addresses A -1 to D -1 in synchronization with the read clock RCL. In this case, the delay difference between the delay elements 2, 4, and 6 is set longer than the sum of the minimum required time of the setup time and the hold time of the hold circuit 8. As a result, a plurality of write addresses including a phase difference due to delay
Any one of A -1 to D -1 has the same phase and is supplied to the significant signal determination unit 9. This significant signal determining section 9 has 4
The two addresses are compared with each other, and the matching addresses A to D are detected by a logic such as an exclusive OR, and these are selected as a significant write address Y and supplied from the output Q to the remaining amount detection unit 54 and the like. I do. In this case, an address with a small delay is preferentially selected.

【0042】このように図8に示す比較例では、遅延素
子2,4,6 などにてアドレスを遅延させるので、アドレス
信号が書込制御部10からその同期変換部70までに転送さ
れるまでの各種ゲートおよび線路などの遅延を考慮して
おかなければならず、回路設計が難しくなる。この場
合、それぞれの要因は回路の動作環境によって遅延時間
が変化するので、さらに回路構成が難しくなり、それぞ
れの箇所の材質、素子など環境の影響を受けにくい高価
なものを採用しなければならなくなる。本実施例では、
回路構成および環境の変化の影響によるビット誤りを訂
正するので、それらの影響を受けることがほとんどな
く、かつ簡単な回路構成にて実現することができる。ま
た、比較例では遅延素子の数を増加させて、比較するア
ドレスの数を多くすれば、動作環境の変化などによる影
響を少なくすることができるが、ホールド回路8および
有意信号判定部9では複数ビットの複数アドレスを比較
するので、回路規模が大きくなり、また動作速度も遅く
なってしまう。本実施例では、アドレスを1つづつ入力
して、簡単な論理計算のみにて出力を得ることができる
ので、高速かつ正確に読出しアドレスRCL に同期したア
ドレスを得ることができる。以上のように本実施例のメ
モリ制御回路は簡単な構成にて正確かつ高速にメモリ制
御を実現することができる。
As described above, in the comparative example shown in FIG. 8, since the address is delayed by the delay elements 2, 4, 6, etc., the address signal is transferred from the write control unit 10 to the synchronous conversion unit 70. The delay of various gates and lines must be taken into account, and circuit design becomes difficult. In this case, since each factor changes the delay time depending on the operating environment of the circuit, the circuit configuration becomes more difficult, and expensive materials, such as materials and elements of each part, which are not easily affected by the environment, must be used. . In this embodiment,
Since a bit error due to the influence of the change in the circuit configuration and the environment is corrected, the bit error is hardly affected by the correction and the circuit can be realized with a simple circuit configuration. In the comparative example, if the number of delay elements is increased and the number of addresses to be compared is increased, the influence of changes in the operating environment can be reduced. Since a plurality of bit addresses are compared, the circuit scale becomes large and the operation speed becomes slow. In this embodiment, an address can be input one by one and an output can be obtained only by a simple logical calculation. Therefore, an address synchronized with the read address RCL can be obtained quickly and accurately. As described above, the memory control circuit according to the present embodiment can realize accurate and high-speed memory control with a simple configuration.

【0043】なお、上記実施例では、デコーダ30,40 に
てアドレスWA,RA が1つ歩進される毎に対応する1つの
ビットを"1" とする構成であったが、本発明においては
たとえば読出しクロックが書込みアドレスのM倍以上の
速度を有する場合、アドレス比較を高速に行なうため
に、アドレス値が10進数の"0" 〜"M" を表わす場合にア
ドレスA0ビットのみを"1" とし、アドレス値が10進数
の"M+1" 〜"2M"を表わす場合にA1ビットのみを"1" と
し、アドレス値が10進数の"2M+1"〜"3M"を表わす場合に
A2ビットのみを"1" とし、以降、アドレス値が10進数
の"(N-1)M+1"〜"NM"を表わす場合にANビットのみを"1"
とするアドレス信号A0〜ANにデコードするようにしても
よい。
In the above embodiment, one bit is set to "1" each time the address WA, RA is incremented by one in the decoders 30, 40, but in the present invention, For example, if the read clock has a speed that is M times or more as fast as the write address, in order to perform the address comparison at a high speed, only the address A0 bit is set to "1" when the address value represents a decimal number "0" to "M". When the address value represents decimal "M + 1" to "2M", only the A1 bit is set to "1", and when the address value represents decimal "2M + 1" to "3M"
Only the A2 bit is set to "1". Thereafter, when the address value represents a decimal number from "(N-1) M + 1" to "NM", only the AN bit is set to "1".
May be decoded to address signals A0 to AN.

【0044】また、上記実施例では、組合せ論理回路K1
〜Kkの内部構成をAND 回路やOR回路などの論理素子にて
形成する例を挙げて説明したが、本発明においてはこれ
に限ることなく、たとえばR-S フリップフロップ回路や
J-K フリップフロップ回路などの論理回路を組み合わせ
て上記論理式の演算を行なう組合せ論理回路を構成して
もよい。
In the above embodiment, the combinational logic circuit K1
Although the example in which the internal configuration of ~ Kk is formed by a logic element such as an AND circuit or an OR circuit has been described, the present invention is not limited to this. For example, an RS flip-flop circuit or
A combinational logic circuit that performs the operation of the above logical expression may be configured by combining logic circuits such as a JK flip-flop circuit.

【0045】[0045]

【発明の効果】このように本発明のメモリ制御回路によ
れば、書込みクロックに同期して生成された書込みアド
レスを読出しクロックに乗せ替えた際に、隣接ビットと
の重複、欠落によるビット誤まりを訂正しつつ読出しク
ロックに同期させた書込みアドレスを形成して、データ
残量を検出するようにしたので、動作環境の変化による
影響をほとんど受けることなく、高速かつ正確に処理を
実行することができる。また、それぞれのアドレス毎に
誤り訂正および同期変換を実行するので、回路構成も簡
単かつ小型に形成することができる。したがって、信頼
性の高い、小型かつ高速なメモリ制御回路を実現できる
優れた効果を奏する。
As described above, according to the memory control circuit of the present invention, when a write address generated in synchronization with a write clock is replaced with a read clock, bit errors due to duplication or omission of adjacent bits are caused. The write address synchronized with the read clock is formed while correcting the error, and the remaining amount of data is detected, so that the processing can be executed at high speed and accurately without being substantially affected by changes in the operating environment. it can. In addition, since error correction and synchronous conversion are performed for each address, the circuit configuration can be made simple and small. Therefore, an excellent effect that a small, high-speed memory control circuit with high reliability can be realized is achieved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明によるメモリ制御回路が適用されたFIFO
メモリ装置の一実施例を示すブロック図である。
FIG. 1 is a FIFO to which a memory control circuit according to the present invention is applied;
FIG. 2 is a block diagram showing one embodiment of a memory device.

【図2】図1の実施例による同期変換部の内部構成を示
すブロック図である。
FIG. 2 is a block diagram showing an internal configuration of a synchronization converter according to the embodiment of FIG.

【図3】図1の実施例にて書込みクロックに同期した正
常な書込みアドレスを示すタイムチャートである。
FIG. 3 is a time chart showing a normal write address synchronized with a write clock in the embodiment of FIG. 1;

【図4】図1の実施例にて正常に同期変換された書込み
アドレスを示すタイムチャートである。
FIG. 4 is a time chart showing write addresses that have been normally synchronously converted in the embodiment of FIG. 1;

【図5】図1の実施例にて同期変換した際に重複ビット
が現れた書込みアドレスを示すタイムチャートである。
FIG. 5 is a time chart showing a write address where a duplicate bit appears when synchronous conversion is performed in the embodiment of FIG. 1;

【図6】図1の実施例にて同期変換した際に欠落ビット
が現れた書き込みアドレスを示すタイムチャートであ
る。
FIG. 6 is a time chart showing a write address at which a missing bit appears when synchronous conversion is performed in the embodiment of FIG. 1;

【図7】図2の実施例にて要部のアドレス波形を示すタ
イムチャートである。
FIG. 7 is a time chart showing an address waveform of a main part in the embodiment of FIG. 2;

【図8】本実施例の同期変換部の比較例を示すブロック
図である。
FIG. 8 is a block diagram illustrating a comparative example of the synchronous conversion unit of the present embodiment.

【符号の説明】[Explanation of symbols]

10 書込制御部 20 読出制御部 30,40 デコーダ 50 読出判定部 52 同期変換部 54 残量検出部 60 データ蓄積部 F1〜Fm 入力側フリップフロップ G1〜Gm 出力側フリップフロップ K1〜Km 組合せ論理回路 10 Write control unit 20 Read control unit 30, 40 Decoder 50 Read determination unit 52 Synchronization conversion unit 54 Remaining amount detection unit 60 Data storage unit F1 to Fm Input side flip-flop G1 to Gm Output side flip-flop K1 to Km Combinational logic circuit

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平5−189955(JP,A) 特開 昭61−283925(JP,A) (58)調査した分野(Int.Cl.7,DB名) G11C 7/00 318 G06F 5/06 WPI(DIALOG)────────────────────────────────────────────────── ─── Continuation of the front page (56) References JP-A-5-189955 (JP, A) JP-A-61-283925 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) G11C 7/00 318 G06F 5/06 WPI (DIALOG)

Claims (7)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 データ蓄積部へのデータの書き込みおよ
び読み出しを制御するメモリ制御回路において、該回路
は、 所定の速度の書込みクロックに同期して順次歩進する書
込みアドレスを生成して前記データ蓄積部に供給する書
込制御部と、 該書込制御部からの書込みクロックの速度と異なる速度
の読出しクロックに同期して順次歩進する読出しアドレ
スを生成して前記データ蓄積部に供給する読出制御部
と、 前記書込制御部からの書込みアドレスと前記読出制御部
からの読出しアドレスとに基づいて前記データ蓄積部の
データ蓄積量を随時検出して、前記読出制御部でのデー
タ読み出しの開始および停止を判定する読出判定部とを
含み、 該読出判定部は、前記書込制御部から順次出力される書
込みアドレスを検出して、それぞれ読出しクロックに同
期した書込みアドレスに変換する同期変換部であって、
読出しクロックに同期させた書込みアドレスのビット誤
りを検出して、その誤りを訂正しつつクロック同期変換
した書込みアドレスを形成する同期変換部と、 該同期変換部からの読出しクロックに同期した書込みア
ドレスと前記読出制御部からの読出しクロックに同期し
た読出しアドレスとを比較して前記データ蓄積部でのデ
ータ残量を検出する残量検出部とを有することを特徴と
するメモリ制御回路。
1. A memory control circuit for controlling writing and reading of data to and from a data storage section, wherein the circuit generates a write address that sequentially advances in synchronization with a write clock at a predetermined speed, and generates the write address. A write control unit for supplying a read address which sequentially increases in synchronization with a read clock having a speed different from the speed of the write clock from the write control unit and supplying the read address to the data storage unit Unit, based on the write address from the write control unit and the read address from the read control unit, detects the amount of data stored in the data storage unit as needed, and starts the data read by the read control unit and A read judging unit for judging a stop, wherein the read judging unit detects write addresses sequentially output from the write control unit, and reads each of the read addresses. A synchronous converter for converting the write address in synchronization with the click,
A synchronous converter for detecting a bit error of the write address synchronized with the read clock, forming a write address subjected to clock synchronous conversion while correcting the error, and a write address synchronized with the read clock from the synchronous converter. A memory control circuit, comprising: a remaining amount detection unit that compares a read address synchronized with a read clock from the read control unit and detects a remaining amount of data in the data storage unit.
【請求項2】 請求項1に記載のメモリ制御回路におい
て、前記同期変換部は、前記書込制御部からの書込みア
ドレスを順次ラッチして読出しクロックに同期して入力
する入力手段と、該入力手段からの読出しクロックに同
期した書込みアドレスのビット誤りを訂正する誤り訂正
手段と、該誤り訂正手段からの書込みアドレスを順次ラ
ッチして読出クロックに同期して出力する出力手段とを
含み、前記誤り訂正手段は、前記入力手段を介して入力
した現時点の書込みアドレスのうち隣接するビットおよ
び前記出力手段から出力される前時点の書込みアドレス
を受けて、これらに基づいて現時点の書込みアドレスの
ビット誤りを訂正することを特徴とするメモリ制御回
路。
2. The memory control circuit according to claim 1, wherein said synchronization conversion unit sequentially latches a write address from said write control unit and inputs the write address in synchronization with a read clock; Error correction means for correcting a bit error of a write address synchronized with a read clock from the means; and output means for sequentially latching the write address from the error correction means and outputting the write address in synchronization with the read clock. The correction means receives adjacent bits of the current write address input through the input means and the previous write address output from the output means, and based on these, corrects a bit error of the current write address. A memory control circuit characterized by correcting.
【請求項3】 請求項2に記載のメモリ制御回路におい
て、前記入力手段および出力手段は、書込みアドレスの
それぞれのビットに対応して設けられた読出しクロック
に同期して動作するそれぞれ複数のフリップフロップ回
路を含むことを特徴とするメモリ制御回路。
3. The memory control circuit according to claim 2, wherein said input means and output means operate in synchronism with a read clock provided corresponding to each bit of a write address. A memory control circuit including a circuit.
【請求項4】 請求項3に記載のメモリ制御回路におい
て、前記誤り訂正手段は、書込みアドレスのそれぞれの
ビットに対応して設けられて、論理式E=A・B~+C・D~ (た
だし、B~,D~ は反転B、反転Dを表わす)にて得られる
それぞれの論理出力ビット(E) を得る複数の組合せ論理
回路であって、入力(C) が対応する前記入力側のフリッ
プフロップ回路の出力に接続され、入力(B,D) が対応す
るフリップフロップ回路に隣接する入力側のフリップフ
ロップ回路のそれぞれの出力に接続され、入力(A) が該
当ビットに隣接するビットの出力側のフリップフロップ
回路に接続されて、入力(C) のビット誤りを訂正した論
理出力(E) を対応の出力側フリップフロップに供給する
組合せ論理回路を含むことを特徴とするメモリ制御回
路。
4. The memory control circuit according to claim 3, wherein said error correction means is provided corresponding to each bit of a write address, and a logical expression E = AAB ~ + C ・ D ~ ( Here, B ~ and D ~ are a plurality of combinational logic circuits for obtaining respective logical output bits (E) obtained by inverting B and D), and an input (C) corresponds to the corresponding input side. The inputs (B, D) are connected to the outputs of the flip-flop circuits, the inputs (B, D) are connected to the respective outputs of the input-side flip-flop circuits adjacent to the corresponding flip-flop circuit, and the input (A) is connected to the bit adjacent to the corresponding bit. A memory control circuit connected to an output flip-flop circuit and comprising a combinational logic circuit for supplying a logical output (E) in which a bit error of an input (C) is corrected to a corresponding output flip-flop.
【請求項5】 請求項1ないし4のいずれかに記載のメ
モリ制御回路において、該回路は、前記書込制御部およ
び前記読出制御部からのそれぞれのアドレス信号を前記
残量検出部にてアドレス比較するために、いずれか1つ
のビットが"1"の値をとる所定の形態のアドレス信号に
デコードして前記残量判定部に供給するデコード手段を
有することを特徴とするメモリ制御回路。
5. The memory control circuit according to claim 1, wherein said memory control circuit sends each address signal from said write control unit and said read control unit to said remaining amount detection unit. A memory control circuit, comprising: decoding means for decoding to a predetermined form of an address signal in which one bit takes a value of "1" for comparison and supplying the address signal to the remaining amount determination unit.
【請求項6】 請求項5に記載のメモリ制御回路におい
て、前記読出しクロックは、前記書込みクロックの2倍
以上の速度にて発生されるクロックを含み、前記デコー
ド手段は、それぞれのアドレス信号が10進数の"0" を表
わす場合に、それぞれのビット値がA0=1, A1〜AN=0とな
り、アドレス信号が10進数の"1" を表わす場合にA0=0,A
1=1,A2〜AN=0となり、アドレス信号が10進数の"N" を表
わす場合にA0〜A(N-1)=0,AN=1 の値となるアドレス信号
A0〜ANにデコードすることを特徴とするメモリ制御回
路。
6. The memory control circuit according to claim 5, wherein said read clock includes a clock generated at a speed twice or more as high as said write clock, and said decoding means outputs a signal having a value of 10 or more. When representing a decimal "0", the respective bit values are A0 = 1, A1 to AN = 0, and when the address signal represents a decimal "1", A0 = 0, A
1 = 1, A2 to AN = 0, and the address signal becomes A0 to A (N-1) = 0, AN = 1 when the address signal represents decimal "N"
A memory control circuit characterized by decoding to A0 to AN.
【請求項7】 請求項5に記載のメモリ制御回路におい
て、前記読出しクロックは、前記書込みクロックのM倍
以上の速度にて供給されるクロックを含み、前記デコー
ド手段は、それぞれのアドレス信号が10進数の"0" 〜"
M" を表わす場合に、それぞれのビット値がA0=1, A1〜A
N=0となり、アドレス信号が10進数の"M+1"〜"2M"を表わ
す場合にA0=0,A1=1,A2〜AN=0となり、アドレス信号が10
進数の"2M+1"〜"3M"を表わす場合にA0,A1=0,A2=1, A3〜
AN=0となり、アドレス信号が10進数の"(N-1)M+1"〜"NM"
にて表わされる場合にA0〜A(N-1)=0,AN=1 の値となるア
ドレス信号A0〜ANにデコードすることを特徴とするメモ
リ制御回路。
7. The memory control circuit according to claim 5, wherein said read clock includes a clock supplied at a speed of M times or more higher than said write clock, and said decoding means outputs a signal having a value of 10 or more. Hexadecimal "0" ~ "
M ", each bit value is A0 = 1, A1 ~ A
When N = 0 and the address signal represents the decimal number "M + 1" to "2M", A0 = 0, A1 = 1, A2 to AN = 0 and the address signal becomes 10
A0, A1 = 0, A2 = 1, A3-when representing base 2M + 1 to 3M
AN = 0, and the address signal is in decimal "(N-1) M + 1" to "NM"
A memory control circuit for decoding to address signals A0 to AN having values of A0 to A (N-1) = 0 and AN = 1 when expressed by:
JP06271349A 1994-11-04 1994-11-04 Memory control circuit Expired - Fee Related JP3093583B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06271349A JP3093583B2 (en) 1994-11-04 1994-11-04 Memory control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06271349A JP3093583B2 (en) 1994-11-04 1994-11-04 Memory control circuit

Publications (2)

Publication Number Publication Date
JPH08138369A JPH08138369A (en) 1996-05-31
JP3093583B2 true JP3093583B2 (en) 2000-10-03

Family

ID=17498833

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06271349A Expired - Fee Related JP3093583B2 (en) 1994-11-04 1994-11-04 Memory control circuit

Country Status (1)

Country Link
JP (1) JP3093583B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7454538B2 (en) * 2005-05-11 2008-11-18 Qualcomm Incorporated Latency insensitive FIFO signaling protocol
TW200717246A (en) * 2005-06-24 2007-05-01 Koninkl Philips Electronics Nv Self-synchronizing data streaming between address-based producer and consumer circuits
US10614747B2 (en) * 2017-01-31 2020-04-07 Synaptics Incorporated Device and method for driving display panel in response to image data

Also Published As

Publication number Publication date
JPH08138369A (en) 1996-05-31

Similar Documents

Publication Publication Date Title
JP3156813B2 (en) Buffer control circuit
JPH0421944B2 (en)
JP3093583B2 (en) Memory control circuit
JP3076205B2 (en) First in first out buffer device
US6075833A (en) Method and apparatus for counting signal transitions
US6973155B2 (en) Highly scalable glitch-free frequency divider
JP2641276B2 (en) Two-stage synchronizer
JP4794059B2 (en) Semiconductor device
JPH0431211B2 (en)
JPH10340596A (en) Data storage device and semiconductor memory
JP3711730B2 (en) Interface circuit
JP3989099B2 (en) Phase adjustment circuit
JP2857810B2 (en) Clock transfer circuit for asynchronous data
JP2000315381A (en) Circuit and method for generating pointer
JP2000353939A (en) Clock signal synchronous flip flop circuit
JP2819955B2 (en) In-device error monitoring circuit
KR0172459B1 (en) Method and device for reproducing clock signal
JP4079974B2 (en) Delay circuit
JP2000011637A (en) Fifo-type storage
JP2551331B2 (en) Memory circuit
JP4061841B2 (en) Semiconductor memory device
JPH1028109A (en) Bit protection circuit
JPH08125494A (en) Moving average filter
CN117992382A (en) Double-wire interface and synchronous detection and synchronous resetting method thereof
JPS6350719B2 (en)

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000704

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080728

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090728

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees