JP2005182312A - Device control circuit - Google Patents

Device control circuit Download PDF

Info

Publication number
JP2005182312A
JP2005182312A JP2003420054A JP2003420054A JP2005182312A JP 2005182312 A JP2005182312 A JP 2005182312A JP 2003420054 A JP2003420054 A JP 2003420054A JP 2003420054 A JP2003420054 A JP 2003420054A JP 2005182312 A JP2005182312 A JP 2005182312A
Authority
JP
Japan
Prior art keywords
control
data
cpu
address
device control
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
Application number
JP2003420054A
Other languages
Japanese (ja)
Inventor
Toshinaka Suzuki
敏中 鈴木
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.)
NEC Engineering Ltd
Original Assignee
NEC Engineering 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 NEC Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP2003420054A priority Critical patent/JP2005182312A/en
Publication of JP2005182312A publication Critical patent/JP2005182312A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To quicken device control processing by eliminating or decreasing the WAIT of a CPU at the time of controlling a device control circuit. <P>SOLUTION: Device control circuits 21 to 2N control a slave control target circuit 8 based on control data received by polling from a CPU 10. Then, FIFO memories 5 and 6 write and store the control data corresponding to the address of the same device and the address of the device based on a write enable signal WE from the CPU, and reads the stored data to the control target circuit based on a data request signal from the control target circuit. An up-down counter 7 counts up according to the writing in the FIFO memory, and counts down according to the data request signal from the device, and outputs the count value as a response signal to the CPU. When a response signal ACK is contents to notify write control stop, the output of the write enable signal WE is stopped. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、CPUから受けた制御データに基づいてデバイスを制御し、デバイスからの状態データをCPUへ出力するデバイス制御回路に関する。   The present invention relates to a device control circuit that controls a device based on control data received from a CPU and outputs status data from the device to the CPU.

従来のこの種のデバイス制御装置の例を図6に示す(文献公知発明に係るものではない)。このデバイス制御装置は、CPU10とn個のデバイス制御回路31〜3nとで構成されており、CPU10とn個のデバイス制御回路31〜3nは、データバスDBU,アドレスバスABU,ライトイネーブル信号WEおよびリードイネーブル信号REでマルチ接続されている。   An example of a conventional device control apparatus of this type is shown in FIG. 6 (not related to the literature known invention). This device control apparatus comprises a CPU 10 and n device control circuits 31 to 3n. The CPU 10 and n device control circuits 31 to 3n include a data bus DBU, an address bus ABU, a write enable signal WE and Multiple connections are made by the read enable signal RE.

CPU10はデバイス制御回路31〜3nを指定するためのアドレスを制御データと共に順次に送出することにより、デバイス制御回路31〜3nをポーリングする。デバイス制御回路31〜3nは、CPUから受けた制御データに基づいて、配下の光アンプ等ノン・インテリゼンスなデバイス(図示省略)を制御する。また、デバイスからデバイスの状態を示す状態データを受け取るとCPU10に読み出される。なお、デバイス制御回路31〜3nの一般的な記述をするときは、以下、参照番号30を使用する。   The CPU 10 polls the device control circuits 31 to 3n by sequentially sending addresses for designating the device control circuits 31 to 3n together with the control data. The device control circuits 31 to 3n control non-intelligent devices (not shown) such as subordinate optical amplifiers based on control data received from the CPU. Also, when status data indicating the status of the device is received from the device, it is read out to the CPU 10. Note that the reference numeral 30 is used in the following when describing the device control circuits 31 to 3n in general.

データバスDBUは、CPU10が制御データをデバイス制御回路30に書き込み、またはデバイス制御回路30から状態データを読み出すために使用される。アドレスバスABUは、CPU10がアクセスするデバイス制御回路30を選択するために使用される。ライトイネーブル信号WEはデバイス制御回路30への制御データの書込みを行うタイミング、リードイネーブル信号REはデバイス制御回路30からの状態データの読出しを行うタイミングである。   The data bus DBU is used by the CPU 10 to write control data to the device control circuit 30 or read status data from the device control circuit 30. The address bus ABU is used to select the device control circuit 30 that the CPU 10 accesses. The write enable signal WE is a timing for writing control data to the device control circuit 30, and the read enable signal RE is a timing for reading state data from the device control circuit 30.

図7は、図6に示したデバイス制御回路31,32,33への制御データの書込み制御タイミングを示す。デバイス制御回路31,32,33は、アドレスバスABUを常時モニタし、自回路を示すアドレス値を検出すると、ライトイネーブル信号WEの立下り変化点でデータバスDBU上の制御データ31,32,33を取り込む。そして、デバイス制御回路31,32,33は、制御データ31,32,33により配下のデバイスの制御を行う。   FIG. 7 shows the write control timing of control data to the device control circuits 31, 32, and 33 shown in FIG. When the device control circuits 31, 32, and 33 constantly monitor the address bus ABU and detect an address value indicating its own circuit, the control data 31, 32, and 33 on the data bus DBU at the falling change point of the write enable signal WE. Capture. The device control circuits 31, 32, and 33 control the subordinate devices based on the control data 31, 32, and 33.

図8は、図6に示したデバイス制御回路31,32,33からの状態データの読出し制御タイミングを示す。デバイス制御回路31,32,33は、アドレスバスABUを常時モニタし、自回路を示すアドレス値を検出すると、リードイネーブル信号REがLOWレベルの間、データバスDBUに出力データ31,32,33をデータバスDBUへ出力する。CPU10は、データバスDBU上のデータを状態データとして取り込み、デバイス制御回路31,32,33の状態を検知することが可能となる。   FIG. 8 shows the timing for reading the status data from the device control circuits 31, 32, and 33 shown in FIG. When the device control circuits 31, 32, and 33 constantly monitor the address bus ABU and detect an address value indicating its own circuit, the device control circuits 31, 32, and 33 output the output data 31, 32, and 33 to the data bus DBU while the read enable signal RE is at the LOW level. Output to data bus DBU. The CPU 10 can take in data on the data bus DBU as status data and detect the status of the device control circuits 31, 32, and 33.

図9および図10は、図6に示したデバイス制御回路30に書込み制御と読出し制御を連続で行った場合のタイミングを示す。   FIG. 9 and FIG. 10 show timings when write control and read control are continuously performed on the device control circuit 30 shown in FIG.

図9は、制御データ31に基づくデバイスにおけるデータ処理が速く、WAIT無しで次の制御可能な場合を示している。この場合は、デバイス制御回路31に対する制御データ31による制御が完了した次のサイクルで状態データ31が読み出せるため、デバイス制御回路32に対する制御データ32による制御に直ちに移ることができることを示している。   FIG. 9 shows a case where data processing in the device based on the control data 31 is fast and the next control is possible without WAIT. In this case, since the status data 31 can be read in the next cycle after the control by the control data 31 for the device control circuit 31 is completed, it is possible to immediately shift to the control by the control data 32 for the device control circuit 32.

図10は、制御データ31に基づくデバイスにおけるデータ処理が遅く、次の制御にはWAITが必要な場合を示している。この場合は、デバイス制御回路31に対する制御データ31による制御が完了するまで状態データ31の読出しを待つ必要があるため、それまではデバイス制御回路32に対する制御データ32よる制御が停止していることを示している。   FIG. 10 shows a case where data processing in the device based on the control data 31 is slow and WAIT is necessary for the next control. In this case, since it is necessary to wait for the status data 31 to be read until the control by the control data 31 for the device control circuit 31 is completed, the control by the control data 32 for the device control circuit 32 has been stopped until then. Show.

なお、本願発明に関連すると思えるものとして、2つのマイクロプロセッサの間に接続され相互のDMA転送によるデータの受渡しを行うFIFOメモリと、一方のマイクロプロセッサがFIFOメモリにデータを書き込むとカウントアップし、他方のマイクロプロセッサがFIFOメモリからデータを読み出すとカウントダウンするアップダウンカウンタを備えたものが知られている(例えば、特許文献1参照)。   As to what seems to be related to the present invention, a FIFO memory connected between two microprocessors for transferring data by mutual DMA transfer, and counting up when one microprocessor writes data to the FIFO memory, One having an up / down counter that counts down when the other microprocessor reads data from the FIFO memory is known (see, for example, Patent Document 1).

また、FIFOメモリとアップダウンカウンタを備え、書込みクロックと読出しクロックの周波数のどちらが高いかが既値でない場合に、非同期読出し書込み可能なFIFOメモリ制御回路に関する技術も公知である(例えば、特許文献2参照)
平2−112051(第1頁ー第4頁、図1) 特開2001−307476(第1頁ー第頁、図1)
Also, a technique related to a FIFO memory control circuit that includes a FIFO memory and an up / down counter and can perform asynchronous read / write when the higher one of the write clock frequency and the read clock frequency is not already known is also known (see, for example, Patent Document 2). )
2-11205 (1st page-4th page, Fig. 1) JP 2001-307476 (first page-first page, FIG. 1)

上述した従来技術では、CPU側はあるデバイス制御回路に制御データを書き込んだ後、デバイス制御回路側が制御を完了した結果を受け取るまで、次のデバイス制御回路に対する制御の実行を待つ処理(WAIT処理)を行う必要があるため、CPU側の制御速度がデバイス制御回路側の処理速度よりも高速な場合、多数のデバイス制御回路をポーリングで制御を行う際には、多くのデバイス制御回路の内の一つが低速であるだけで全てのデバイス制御回路に対する制御が遅くなってしまうという第1の問題点がある。   In the above-described conventional technology, the CPU side writes control data to a certain device control circuit, and then waits for execution of control for the next device control circuit until the device control circuit side receives a result of completion of control (WAIT processing) Therefore, when the control speed on the CPU side is faster than the processing speed on the device control circuit side, when controlling many device control circuits by polling, one of many device control circuits is required. There is a first problem that the control of all the device control circuits is slow only by the low speed of the device.

また、 第1の問題点を解決するためにCPUの処理にWAITを入れると、デバイス制御回路側の改善によりWAITが不要となってもソフトウェアを更新しない限り高速化できないという第2の問題点がある。一般にCPUのWAITはプログラムによって制御されるからである。   In addition, if WAIT is added to the CPU process to solve the first problem, the second problem is that even if WAIT is not required due to improvements on the device control circuit side, the speed cannot be increased unless software is updated. is there. This is because CPU WAIT is generally controlled by a program.

本発明の主な目的は、デバイス制御回路の制御時におけるCPUのWAITを無くするか、または減少させることによりデバイス制御処理の高速化を図ることにある。   A main object of the present invention is to speed up device control processing by eliminating or reducing CPU WAIT during control of a device control circuit.

なお、特許文献1記載の発明は、DMA転送においてデータバス上のデータ転送衝突による待合せを無くすることを目的とし、特許文献2記載の発明は、書込みクロックと読出しクロックの周波数が異なる場合に、データの上書きによるデータの消失た同一データの2度読みを防止することを目的とする。   The invention described in Patent Document 1 aims to eliminate waiting due to a data transfer collision on the data bus in DMA transfer. The invention described in Patent Document 2 is used when the frequency of the write clock and that of the read clock are different. The object is to prevent twice reading of the same data lost due to data overwriting.

請求項1記載の発明は、CPU(図1の10)からのポーリングにより受けた制御データに基づいて配下のデバイス(図2の8)を制御する各デバイス制御回路(図1の21〜2N)において、CPUからのライトイネーブル信号WEに基づいて、同一デバイスのアドレス対応に制御データおよびデバイスの当該アドレスを書き込んで保持し、デバイスからのデータ要求信号により保持データをデバイスへ読み出すFIFOメモリ(図2の5,6)と、FIFOメモリへの書込みによりカウントアップし、またデバイスからのデータ要求信号によりカウントダウンし、そのカウント値を応答信号としてCPUへ出力するアップダウンカウンタ(図2の7)を備え、応答信号ACKが書込み制御停止を通知する内容である場合、当該書込みサイクルではライトイネーブル信号WEのCPUからの出力が停止されることを特徴とするデバイス制御回路である。   According to the first aspect of the present invention, each device control circuit (21 to 2N in FIG. 1) controls the subordinate device (8 in FIG. 2) based on control data received by polling from the CPU (10 in FIG. 1). In the FIFO memory (FIG. 2), the control data and the corresponding address of the device are written and held corresponding to the address of the same device based on the write enable signal WE from the CPU, and the held data is read to the device by the data request signal from the device. 5) and 6), and an up / down counter (7 in FIG. 2) that counts up by writing to the FIFO memory, counts down by a data request signal from the device, and outputs the count value to the CPU as a response signal. If the response signal ACK is the content that informs the write control stop, the write enable signal WE from the CPU in the write cycle concerned. A device control circuit, wherein the output is stopped.

請求項2記載の発明は、請求項1記載の発明において、ライトイネーブル信号のCPUからの出力が停止されるときのカウント値は、FIFOメモリの深度数であることを特徴とするデバイス制御回路である。   The invention according to claim 2 is the device control circuit according to claim 1, wherein the count value when the output of the write enable signal from the CPU is stopped is the depth number of the FIFO memory. is there.

本発明による制御回路は、CPUとデバイス制御回路の間に、データバス、アドレスバス、ライトイネーブル信号、リードイネーブル信号に加えて、デバイス制御回路からCPUに対して、応答信号ACKが出力されていることと、デバイス制御回路側において、CPUからのデータとアドレスを保持するFIFOメモリと、FIFOメモリの使用状況を監視し、応答信号ACKを出力するアップダウンカウンタから構成されている。この回路の働きによりCPUのWAITを減少させる効果が得られる。   In the control circuit according to the present invention, a response signal ACK is output from the device control circuit to the CPU in addition to the data bus, address bus, write enable signal, and read enable signal between the CPU and the device control circuit. In addition, the device control circuit side includes a FIFO memory that holds data and addresses from the CPU, and an up / down counter that monitors the use status of the FIFO memory and outputs a response signal ACK. The effect of reducing the CPU WAIT is obtained by the function of this circuit.

以上説明したような構成を採用したことによって、デバイス制御回路に対する制御の際のCPUのWAITを無くすか、または減らすことが可能になり、ポーリング制御の際の速度向上が可能になる。   By adopting the configuration as described above, it becomes possible to eliminate or reduce the WAIT of the CPU when controlling the device control circuit, and to increase the speed during the polling control.

また、CPU側はデバイス制御回路からの応答信号ACKの状態のみで制御の際のWAITがコントロールできるため、ハードウェアの動作速度が変化することに伴うソフトウェアの調整を省略することが可能になる。   Further, since the CPU side can control the WAIT during the control only by the state of the response signal ACK from the device control circuit, it is possible to omit the software adjustment accompanying the change in the hardware operation speed.

本発明は、CPUからのポーリングにより受けた制御データに基づいて配下のデバイスを制御する各デバイス制御回路において、CPUからのライトイネーブル信号WEに基づいて、同一デバイスのアドレス対応に制御データおよびデバイスの当該アドレスを書き込んで保持し、デバイスからのデータ要求信号により保持データをデバイスへ読み出すFIFOメモリと、FIFOメモリへの書込みによりカウントアップし、またデバイスからのデータ要求信号によりカウントダウンし、そのカウント値を応答信号としてCPUへ出力するアップダウンカウンタを備え、応答信号ACKが書込み制御停止を通知する内容である場合、当該書込みサイクルではライトイネーブル信号WEのCPUからの出力が停止されることを特徴とする。   The present invention provides each device control circuit that controls a subordinate device based on control data received by polling from the CPU, and controls the control data and the device's address corresponding to the address of the same device based on the write enable signal WE from the CPU. Write and hold the address, FIFO memory that reads the retained data to the device by the data request signal from the device, and counts up by writing to the FIFO memory, counts down by the data request signal from the device, and counts the count value An up / down counter that outputs to the CPU as a response signal is provided, and when the response signal ACK is a content to notify the stop of the write control, the output of the write enable signal WE from the CPU is stopped in the write cycle. .

本発明の上記目的、特徴および利点を明確にすべく、以下、添付した図面を参照しながら、本発明の実施例につき詳細に説明する。図1は本発明のデバイス制御装置の構成例を示す。   In order to clarify the above objects, features and advantages of the present invention, embodiments of the present invention will be described in detail below with reference to the accompanying drawings. FIG. 1 shows a configuration example of a device control apparatus of the present invention.

このデバイス制御装置は、CPU10とn個のデバイス制御回路21〜2nとで構成されており、CPU10とn個のデバイス制御回路21〜2Nは、データバスDBU,アドレスバスABU,ライトイネーブル信号WEおよびリードイネーブル信号REでマルチ接続されている。また、デバイス制御回路21〜2NからCPU10に対して、個別に応答信号ACK1〜ACKNが出力されている。   This device control apparatus comprises a CPU 10 and n device control circuits 21 to 2n. The CPU 10 and n device control circuits 21 to 2N include a data bus DBU, an address bus ABU, a write enable signal WE and Multiple connections are made by the read enable signal RE. In addition, response signals ACK1 to ACKN are individually output from the device control circuits 21 to 2N to the CPU 10.

CPU10は、デバイス制御回路21〜2Nを指定するためのアドレスを制御データと共に順次に送出することにより、デバイス制御回路21〜2Nをポーリングする。デバイス制御回路21〜2Nは、CPU10から受けた制御データに基づいて、配下の光アンプ等ノン・インテリゼンスなデバイスを制御する。また、デバイスからの状態データを受け取るとCPU10に読み出される。   The CPU 10 polls the device control circuits 21 to 2N by sequentially sending addresses for designating the device control circuits 21 to 2N together with the control data. The device control circuits 21 to 2N control non-intelligent devices such as subordinate optical amplifiers based on the control data received from the CPU 10. When the status data from the device is received, it is read out to the CPU 10.

応答信号ACK1〜ACKNは制御データがデバイス制御回路21〜2Nに書込み可能であることをCPU10に通知するものである。CPU10は、応答信号ACK1〜ACKNが書込み制御停止を通知する内容である場合、当該書込みサイクルではライトイネーブル信号WEの出力を抑止する。なお、デバイス制御回路21〜2Nの一般的な記述をするときは、以下、参照番号20を使用する。   The response signals ACK1 to ACKN notify the CPU 10 that the control data can be written to the device control circuits 21 to 2N. When the response signals ACK1 to ACKN are contents for notifying write control stop, the CPU 10 suppresses the output of the write enable signal WE in the write cycle. Note that the reference numeral 20 is used in the following description when describing the device control circuits 21 to 2N in general.

データバスDBUは、CPU10が制御データをデバイス制御回路20に書き込み、またはデバイス制御回路20から状態データを読み出すために使用される。アドレスバスABUは、CPU10がアクセスするデバイス制御回路20を選択するために使用される。ライトイネーブル信号WEはデバイス制御回路20への制御データの書込みを行うタイミング、リードイネーブル信号REはデバイス制御回路20からの状態データの読出しを行うタイミングである。応答信号ACKはデバイス制御側回路20においてCPU10から書き込まれた制御データの処理が完了したか否かをCPU10に通知するために使用される。   The data bus DBU is used for the CPU 10 to write control data to the device control circuit 20 or read status data from the device control circuit 20. The address bus ABU is used to select the device control circuit 20 that the CPU 10 accesses. The write enable signal WE is a timing for writing control data to the device control circuit 20, and the read enable signal RE is a timing for reading state data from the device control circuit 20. The response signal ACK is used to notify the CPU 10 whether or not the processing of the control data written from the CPU 10 is completed in the device control side circuit 20.

図2は、デバイス制御回路20の一実施例の詳細をデバイスである制御対象回路8と共に示す。このデバイス制御回路20は、双方向バッファ1,アドレスデコーダ2,オアゲート3,オアゲート4,データ保持FIFOメモリ5,アドレス保持FIFOメモリ6およびアップダウンカウンタ7から構成されている。オアゲート3とオアゲート4は実質的にはアンドゲートとして機能する。   FIG. 2 shows details of an embodiment of the device control circuit 20 together with a control target circuit 8 which is a device. The device control circuit 20 includes a bidirectional buffer 1, an address decoder 2, an OR gate 3, an OR gate 4, a data holding FIFO memory 5, an address holding FIFO memory 6, and an up / down counter 7. The OR gate 3 and the OR gate 4 substantially function as AND gates.

双方向バッファ1は、CPU10からデータバスDBUを経由した制御データをデータ保持FIFOメモリ5に書き込み、また制御対象回路8からの出力データを状態データとしてデータバスDBU経由でCPU10へ送出する。データの書込みと読出しの方向の切替えは、オアゲート4からのリードイネーブル信号RENによって行われる。   The bidirectional buffer 1 writes control data from the CPU 10 via the data bus DBU to the data holding FIFO memory 5 and sends output data from the control target circuit 8 to the CPU 10 via the data bus DBU as status data. Switching between data writing and reading directions is performed by a read enable signal REN from the OR gate 4.

アドレスデコーダ2は、アドレスバスABU上のアドレスを解読し、アドレス値が自回路を示しているか否かを識別する。オア回路3は、アドレスデコーダ2の出力が自回路を示しており、かつデータの書込みタイミングを規定するライトイネーブル信号WEが有効であるときはライトイネーブル信号WENをデータ保持FIFOメモリ5,アドレス保持FIFOメモリ6およびアップダウンカウンタ7へ出力する。つまり、ライトイネーブル信号WEはCPU10がデバイス制御回路20の書込み制御を行うための信号であるのに対して、ライトイネーブル信号WENはアドレスデコーダ2の出力とライトイネーブル信号WEから生成され、デバイス制御回路20回路内の書込み制御を行うための信号である。   The address decoder 2 decodes the address on the address bus ABU and identifies whether the address value indicates its own circuit. The OR circuit 3 indicates the write enable signal WEN as the data holding FIFO memory 5 and the address holding FIFO when the output of the address decoder 2 indicates its own circuit and the write enable signal WE defining the data write timing is valid. Output to the memory 6 and up / down counter 7. That is, the write enable signal WE is a signal for the CPU 10 to perform the write control of the device control circuit 20, whereas the write enable signal WEN is generated from the output of the address decoder 2 and the write enable signal WE, and the device control circuit This is a signal for performing write control in 20 circuits.

また、オア回路4は、アドレスデコーダ2の出力が自回路を示しており、かつデータの読出しタイミングを規定するリードイネーブル信号REが有効であるときはリードイネーブル信号RENを双方向バッファ1および制御対象回路8へ出力する。つまり、リードイネーブル信号REはCPU10がデバイス制御回路20の読出し制御を行うための信号であるのに対して、リードイネーブル信号RENはアドレスデコーダ2の出力とリードイネーブル信号REから生成され、デバイス制御回路20の回路内の読出し制御を行うための信号である。   The OR circuit 4 indicates the read enable signal REN as the bidirectional buffer 1 and the control target when the output of the address decoder 2 indicates its own circuit and the read enable signal RE defining the data read timing is valid. Output to circuit 8. That is, the read enable signal RE is a signal for the CPU 10 to perform the read control of the device control circuit 20, whereas the read enable signal REN is generated from the output of the address decoder 2 and the read enable signal RE, and the device control circuit This is a signal for performing read control in 20 circuits.

データ保持FIFOメモリ5は、双方向バッファ1からの制御データを一時保持するm段の深さを持つFIFO(First In First Out:先入れ先出し)メモリである。データ保持FIFOメモリ5は、ライトイネーブル信号WENに応答して制御データを書き込み、制御対象回路8からのデータ要求信号に応答して制御データを制御対象回路8へ読み出す。   The data holding FIFO memory 5 is a FIFO (First In First Out) memory having a depth of m stages for temporarily holding control data from the bidirectional buffer 1. The data holding FIFO memory 5 writes the control data in response to the write enable signal WEN, and reads the control data to the control target circuit 8 in response to the data request signal from the control target circuit 8.

アドレス保持FIFOメモリ6は、制御データと同期したアドレス(制御アドレス)を一時保持するデータ保持FIFOメモリ5と同じ深さを持つFIFOである。アドレス保持FIFOメモリ6は、ライトイネーブル信号WENに応答して、アドレスバスABU上のアドレスを書き込み、制御対象回路8からのデータ要求信号に応答して制御アドレスを制御対象回路8へ読み出す。制御アドレスは制御対象回路8の内で制御データによる制御の対象となる箇所を指定するアドレスである。   The address holding FIFO memory 6 is a FIFO having the same depth as the data holding FIFO memory 5 that temporarily holds an address (control address) synchronized with the control data. The address holding FIFO memory 6 writes the address on the address bus ABU in response to the write enable signal WEN, and reads the control address to the control target circuit 8 in response to the data request signal from the control target circuit 8. The control address is an address that designates a location to be controlled by the control data in the control target circuit 8.

アップダウンカウンタ7は、ライトイネーブル信号WENに応答してカウントアップし、制御対象回路8からのデータ要求信号に応答してカウントダウンする。これによって、アップダウンカウンタ7は、データ保持FIFOメモリ5内に書き込まれている制御データの数を0からmまで計数し、その計数値を応答信号ACKとしてCPU10に通知する。   The up / down counter 7 counts up in response to the write enable signal WEN and counts down in response to the data request signal from the control target circuit 8. Accordingly, the up / down counter 7 counts the number of control data written in the data holding FIFO memory 5 from 0 to m, and notifies the CPU 10 of the counted value as a response signal ACK.

制御対象回路8は、データ保持FIFOメモリ5から読み出された制御データによる制御が完了する毎に、次の制御データをデバイス制御回路20に要求する。この要求は、データ要求信号をデータ保持FIFOメモリ5とアドレス保持FIFOメモリ6へ送出することにより行う。また、制御対象回路8は、リードイネーブル信号RENに応答して、そのときのアドレスバスABU上のアドレスにより指定されるアドレスの出力データを双方向バッファ1へ送出する。出力データは、制御データによる制御対象回路8における制御の結果としてのデータである。   The control target circuit 8 requests the device control circuit 20 for the next control data every time the control by the control data read from the data holding FIFO memory 5 is completed. This request is made by sending a data request signal to the data holding FIFO memory 5 and the address holding FIFO memory 6. Further, in response to the read enable signal REN, the control target circuit 8 sends the output data at the address specified by the address on the address bus ABU at that time to the bidirectional buffer 1. The output data is data as a result of control in the control target circuit 8 by the control data.

図3はデータ保持FIFOメモリ5への制御データおよび保持FIFOメモリ6へのアドレス書込み時のフローチャートである。なお、以下の説明では負論理を採用しており、信号の“0”は有効、“1”は無効を意味する。   FIG. 3 is a flowchart when writing control data to the data holding FIFO memory 5 and an address to the holding FIFO memory 6. In the following description, negative logic is adopted, and “0” of the signal means valid and “1” means invalid.

アドレスデコーダ2が、アドレスバスABU上のアドレスは自回路のアドレスであることを検出し(図3のステップS1でY)、かつライトイネーブル信号WENが“0”であり(ステップS2)、かつアップダウンカウンタ7のカウント値が最大値mでなければ(ステップS3でN)、アップダウンカウンタ7は応答信号ACKは書込み制御停止を通知する内容ではない(ステップS4)。これにより、CPU10は、ライトイネーブル信号WEを出力するので、データ保持FIFOメモリ5への制御データの書込みとアドレス保持FIFOメモリ6へのアドレスの書込みを同期して行うことができる(ステップS5)。また、ライトイネーブル信号WENに応答してアップダウンカウンタ7のカウント値はプラス1する(ステップS6)。   The address decoder 2 detects that the address on the address bus ABU is an address of its own circuit (Y in step S1 in FIG. 3), the write enable signal WEN is “0” (step S2), and is up If the count value of the down counter 7 is not the maximum value m (N in step S3), the up / down counter 7 does not indicate that the response signal ACK is a write control stop notification (step S4). Thereby, since the CPU 10 outputs the write enable signal WE, it is possible to synchronously write the control data to the data holding FIFO memory 5 and the address to the address holding FIFO memory 6 (step S5). In response to the write enable signal WEN, the count value of the up / down counter 7 is incremented by 1 (step S6).

ステップS1,S2またはS3における判定の結果が上述と異なる場合、すなわち、アドレスバスABU上のアドレスが自回路のアドレスでない場合(ステップS1でN)、またはライトイネーブル信号WENが“1”である場合(ステップS2)、またはアップダウンカウンタ7のカウント値が最大値mである場合(ステップS3でY)は、データ保持FIFOメモリ5への制御データの書込みとアドレス保持FIFOメモリ6へのアドレスの書込みは行われない。   When the result of determination in step S1, S2 or S3 is different from the above, that is, when the address on the address bus ABU is not the address of its own circuit (N in step S1), or when the write enable signal WEN is “1” (Step S2), or when the count value of the up / down counter 7 is the maximum value m (Y in Step S3), the writing of control data to the data holding FIFO memory 5 and the writing of the address to the address holding FIFO memory 6 Is not done.

これは、FIFOメモリ5,6への書込みはFIFOメモリ5,6の深さmビットまで実施されるため、FIFOメモリ5,6のm段全てがデータで埋まるとアップダウンカウンタ7の働きにより応答信号ACK“1”を出力となるので、CPU10側でこのデバイス制御回路20に対する制御を停止することを意味する。   This is because writing to the FIFO memories 5 and 6 is performed up to m bits in the depth of the FIFO memories 5 and 6, so if all m stages of the FIFO memories 5 and 6 are filled with data, the up / down counter 7 responds. Since the signal ACK “1” is output, this means that the control on the device control circuit 20 is stopped on the CPU 10 side.

しかし、特定のデバイス制御回路20においてFIFOメモリ5,6への書込みが行われなくても、図3のフローはステップS1に戻り、他のデバイス制御回路20について改めてステップS1〜ステップS3の条件を満たすかが調べられる。その結果、これらの条件をクリアできれば、ステップS5においてFIFOメモリ5,6への書込みが行われ、かつステップS6においてアップダウンカウンタ7のカウント値がプラス1される。このようにして、1つのデバイス制御回路20でFIFOメモリ5,6への書込み制御停止となっていても、そのために他のデバイス制御回路20においてまでも無条件にFIFOメモリ5,6への書込み制御停止となるものではない。   However, even if writing to the FIFO memories 5 and 6 is not performed in the specific device control circuit 20, the flow of FIG. 3 returns to step S1, and the conditions of steps S1 to S3 are changed for the other device control circuits 20 again. It is examined whether it meets. As a result, if these conditions can be cleared, writing to the FIFO memories 5 and 6 is performed in step S5, and the count value of the up / down counter 7 is incremented by 1 in step S6. In this way, even if writing control to the FIFO memories 5 and 6 is stopped by one device control circuit 20, writing to the FIFO memories 5 and 6 is unconditionally performed even in other device control circuits 20. It does not stop the control.

図4はデータ保持FIFOメモリ5からの制御データ読出しおよびアドレス保持FIFOメモリ6からの制御アドレス読出し時のフローチャートである。   FIG. 4 is a flowchart for reading control data from the data holding FIFO memory 5 and reading a control address from the address holding FIFO memory 6.

制御対象回路8からデータ要求信号が入力すると(図4のステップT1でY)、データ保持FIFOメモリ5からは制御データ、保持FIFOメモリ6からは制御アドレスがそれぞれ1段分だけ制御対象回路8に読み出される(ステップT2)。また、アップダウンカウンタ7のカウント値はマイナス1される(ステップT3)。   When a data request signal is input from the control target circuit 8 (Y in step T1 in FIG. 4), the control data from the data holding FIFO memory 5 and the control address from the holding FIFO memory 6 to the control target circuit 8 by one stage respectively. Read (step T2). Further, the count value of the up / down counter 7 is decremented by 1 (step T3).

図5はデバイス制御回路20に対するCPU10からの書込み制御と読出し制御における動作タイミングを示す。ここでは、FIFOメモリの深さは3段、応答信号ACKはが2ビットであるとし、全てがデバイス制御回路20に対する制御であることとして説明する。したがって、WEとWENとは同じであることになる。当初はデータ保持FIFOメモリ5およびアドレス保持FIFOメモリ6が空であり、アップダウンカウンタ7のカウント値は“0”、応答信号ACKは“00”となっている。   FIG. 5 shows operation timings in writing control and reading control from the CPU 10 to the device control circuit 20. Here, it is assumed that the depth of the FIFO memory is 3 stages, the response signal ACK is 2 bits, and all control is for the device control circuit 20. Therefore, WE and WEN are the same. Initially, the data holding FIFO memory 5 and the address holding FIFO memory 6 are empty, the count value of the up / down counter 7 is “0”, and the response signal ACK is “00”.

CPU10からアドレスバスABUにアドレスA0、データバスDBUに制御データD00が送出されている状態で、タイミングt1においてライトイネーブル信号WE=WENが“0”になると、データ保持FIFOメモリ5に制御データD00、アドレス保持FIFOメモリ6にアドレスA0が書き込まれる。また、アップダウンカウンタ7のカウント値は“1”、応答信号ACKは“01”となる。   When the write enable signal WE = WEN becomes “0” at timing t1 while the address A0 is sent from the CPU 10 to the address bus ABU and the control data D00 is sent to the data bus DBU, the control data D00, The address A0 is written into the address holding FIFO memory 6. The count value of the up / down counter 7 is “1”, and the response signal ACK is “01”.

タイミングt2でデータ要求信号が“0”になると、データ保持FIFOメモリ5から制御データD00、アドレス保持FIFOメモリ6からアドレスA0が制御対象回路8へ読み出され、データ保持FIFOメモリ5およびアドレス保持FIFOメモリ6が空になる。また、カウントダウンカウンタ7のカウント値は“0”、応答信号ACKは“00”に復帰する。これは、制御対象回路8において、制御データD00によるアドレスA0が正常に行われたケースであることを物語っている。   When the data request signal becomes “0” at timing t2, the control data D00 from the data holding FIFO memory 5 and the address A0 from the address holding FIFO memory 6 are read to the control target circuit 8, and the data holding FIFO memory 5 and the address holding FIFO are read. The memory 6 becomes empty. Further, the count value of the countdown counter 7 is reset to “0”, and the response signal ACK is reset to “00”. This shows that the address A0 by the control data D00 is normally performed in the control target circuit 8.

次に、CPU10からアドレスバスABUにアドレスA1、データバスDBUに制御データD01が送出されている状態で、タイミングt3においてライトイネーブル信号WE=WENが“0”になると、データ保持FIFOメモリ5に制御データD01、アドレス保持FIFOメモリ6にアドレスA1が書き込まれる。また、アップダウンカウンタ7のカウント値は“1”、応答信号ACKは“01”となる。   Next, when the write enable signal WE = WEN becomes “0” at timing t3 while the address A1 is sent from the CPU 10 to the address bus ABU and the control data D01 is sent to the data bus DBU, the data holding FIFO memory 5 is controlled. The address A1 is written to the data D01 and the address holding FIFO memory 6. The count value of the up / down counter 7 is “1”, and the response signal ACK is “01”.

この状態でデータ要求信号が“0”にならないうちに、アドレスバスABUではアドレスA2、データバスDBUでは制御データD10に切り替わり、タイミングt4においてライトイネーブル信号WE=WENが“0”になると、データ保持FIFOメモリ5に制御データD10、アドレス保持FIFOメモリ6にアドレスA2が書き込まれる。また、アップダウンカウンタ7のカウント値は“2”、応答信号ACKは“10”となる。これは、FIFOメモリ5,6に2つのデータが蓄積されたことを意味する。このように、FIFOメモリ5,6のの段数(この例では3)分はWAIT無しで連続して書込みを行うことができる。   Before the data request signal becomes “0” in this state, the address bus ABU switches to the address A2, and the data bus DBU switches to the control data D10. When the write enable signal WE = WEN becomes “0” at the timing t4, the data is held. The control data D10 is written in the FIFO memory 5 and the address A2 is written in the address holding FIFO memory 6. Further, the count value of the up / down counter 7 is “2”, and the response signal ACK is “10”. This means that two data are stored in the FIFO memories 5 and 6. In this way, the number of stages (3 in this example) of the FIFO memories 5 and 6 can be continuously written without WAIT.

この状態でデータ要求信号が“0”にならないうちに、更に、アドレスバスABUではアドレスA0、データバスDBUでは制御データD10に切り替わり、タイミングt5においてライトイネーブル信号WE=WENが“0”になると、データ保持FIFOメモリ5に制御データD10、アドレス保持FIFOメモリ6にアドレスA0が書き込まれる。また、アップダウンカウンタ7のカウント値は“3”、応答信号ACKは“11”となる。このように、読出しが行われなくともFIFOメモリ5,6のの段数(この例では3)分はWAIT無しで連続して書込みを行うことができる。   Before the data request signal becomes “0” in this state, the address bus ABU switches to the address A0 and the data bus DBU switches to the control data D10. When the write enable signal WE = WEN becomes “0” at the timing t5, The control data D10 is written in the data holding FIFO memory 5 and the address A0 is written in the address holding FIFO memory 6. Further, the count value of the up / down counter 7 is “3”, and the response signal ACK is “11”. In this way, even if the reading is not performed, the number of stages (3 in this example) of the FIFO memories 5 and 6 can be continuously written without WAIT.

しかし、アップダウンカウンタ7のカウント値が“3”、応答信号ACKが“11”に達すると、FIFOメモリ5,6に3つのデータが蓄積されて満杯となったので、これ以降は、読出しが行われてなければ書込み制御は停止される。FIFOメモリ5,6に空きが生じるまでは、この回路に対する書き込み制御が停止される。   However, when the count value of the up / down counter 7 reaches “3” and the response signal ACK reaches “11”, three data are stored in the FIFO memories 5 and 6 and become full. If not, write control is stopped. Until the FIFO memories 5 and 6 are vacant, the write control for this circuit is stopped.

タイミングt6に到って、データ要求信号が“0”になっているので、アップダウンカウンタ7のカウント値が“2”、応答信号ACKが“10”となって、FIFOメモリ5,6に1つの空きが生じている。このため、タイミングt7でライトイネーブル信号WE=WENが“0”になると、この時の制御データD00がデータ保持FIFOメモリ5に、また、この時のアドレスA3がアドレス保持FIFOメモリ6に書き込まれる。   Since the data request signal is “0” at timing t 6, the count value of the up / down counter 7 is “2”, the response signal ACK is “10”, and 1 is stored in the FIFO memories 5 and 6. There are two spaces. Therefore, when the write enable signal WE = WEN becomes “0” at timing t7, the control data D00 at this time is written in the data holding FIFO memory 5 and the address A3 at this time is written in the address holding FIFO memory 6.

次に、書込み制御が禁止されている状態においてもCPU10がリードイネーブル信号REを“0”に設定すれば、制御対象回路8の状態を読み出すことができる。すなわち、図2において、CPU10がに設定することにより、リードイネーブル信号RENが“0”になると、オアゲート4から制御対象回路8へ出力制御信号が入力する。読み出すべきアドレスはアドレスバッファABU上のこの時のアドレスであり出力アドレスとして制御対象回路8へ供給される。これに応答して、制御対象回路8は状態データである出力データを双方向バッファ1へ出力する。この状態データはデータバッファDBU上に現れるので、CPU10が取り込むことができる。   Next, even when the write control is prohibited, if the CPU 10 sets the read enable signal RE to “0”, the state of the control target circuit 8 can be read. That is, in FIG. 2, when the CPU 10 sets the read enable signal REN to “0”, an output control signal is input from the OR gate 4 to the control target circuit 8. The address to be read is the address on the address buffer ABU at this time, and is supplied to the control target circuit 8 as an output address. In response to this, the control target circuit 8 outputs output data, which is state data, to the bidirectional buffer 1. Since this status data appears on the data buffer DBU, the CPU 10 can capture it.

このように、状態データの読出しは、制御データの書込みとは無関係に行われるので、WAITは必要ない。この場合のタイミングチャートは、図8および図9に示した従来技術の場合と同様である。また、読出しの際に応答信号ACKの値を調べることで、読み出されるデータが制御完了済みのものか否かを知ることができる。図2のデバイス制御回路20では、応答信号ACKが“00”であれば、CPU10から行った制御は全て完了していることになる。   As described above, since the reading of the state data is performed regardless of the writing of the control data, WAIT is not necessary. The timing chart in this case is the same as that in the case of the prior art shown in FIGS. Further, by checking the value of the response signal ACK at the time of reading, it is possible to know whether or not the data to be read has already been controlled. In the device control circuit 20 of FIG. 2, if the response signal ACK is “00”, all the control performed by the CPU 10 is completed.

なお、本発明が上記各実施例に限定されず、本発明の技術思想の範囲内において、各実施例は適宜変更され得ることは明らかである。   It should be noted that the present invention is not limited to the above-described embodiments, and it is obvious that the embodiments can be appropriately changed within the scope of the technical idea of the present invention.

本発明のデバイス制御装置の構成例を示すブロック図The block diagram which shows the structural example of the device control apparatus of this invention 本発明のデバイス制御回路の一実施例示すブロック図The block diagram which shows one Example of the device control circuit of this invention 図2に示したデバイス制御回路におけるFIFOメモリへのデータ書込み時のフローチャートFlowchart at the time of data writing to the FIFO memory in the device control circuit shown in FIG. 図2に示したデバイス制御回路におけるFIFOメモリからのデータ読出し時のフローチャートFlowchart when reading data from FIFO memory in device control circuit shown in FIG. 図2に示したデバイス制御回路に対するCPUからの書込み制御と読出し制御における制御タイミングチャートControl timing chart in write control and read control from CPU for device control circuit shown in FIG. 従来のデバイス制御装置の構成例を表すブロック図Block diagram showing a configuration example of a conventional device control apparatus 図6に示したデバイス制御回路への書込み制御タイミングチャートWrite control timing chart to the device control circuit shown in FIG. 図6に示したデバイス制御回路からの読出し制御タイミングチャートRead control timing chart from the device control circuit shown in FIG. 図6に示したデバイス制御回路に書込み/読出しをWAIT無しで連続で実行する場合のタイミングチャートTiming chart when writing / reading to the device control circuit shown in FIG. 6 continuously without WAIT 図6に示したデバイス制御回路に書込み/読出しをWAITを入れて連続で実行する場合のタイミングチャートTiming chart when writing / reading to the device control circuit shown in FIG.

符号の説明Explanation of symbols

1 双方向バッファ
2 アドレスデコーダ
3 オアゲート
4 オアゲート
5 データ保持FIFOメモリ
6 アドレス保持FIFOメモリ
7 アップダウンカウンタ
8 制御対象回路
10 CPU
21〜2N デバイス制御回路
ABU アドレスバス
ACK 応答信号
DBU データバス
RE リードイネーブル信号
REN リードイネーブル信号
WE ライトイネーブル信号
WEN ライトイネーブル信号
1 Bidirectional buffer 2 Address decoder 3 OR gate 4 OR gate 5 Data holding FIFO memory 6 Address holding FIFO memory 7 Up / down counter 8 Control target circuit
10 CPU
21 to 2N device control circuit
ABU address bus
ACK response signal
DBU data bus
RE Read enable signal
REN Read enable signal
WE Write enable signal
WEN Write enable signal

Claims (2)

CPUからのポーリングにより受けた制御データに基づいて配下のデバイスを制御する各デバイス制御回路において、
CPUからのライトイネーブル信号に基づいて、同一デバイスのアドレス対応に前記制御データおよび前記デバイスの当該アドレスを書き込んで保持し、前記デバイスからのデータ要求信号により保持データをデバイスへ読み出すFIFOメモリと、
前記FIFOメモリへの書込みによりカウントアップし、また前記デバイスからのデータ要求信号によりカウントダウンし、そのカウント値を応答信号としてCPUへ出力するアップダウンカウンタを備え、
前記応答信号が書込み制御停止を通知する内容である場合、当該書込みサイクルでは前記ライトイネーブル信号のCPUからの出力が停止されることを特徴とするデバイス制御回路。
In each device control circuit that controls subordinate devices based on the control data received by polling from the CPU,
Based on a write enable signal from the CPU, a FIFO memory that writes and holds the control data and the address of the device corresponding to the address of the same device, and reads the held data to the device by a data request signal from the device;
Counting up by writing to the FIFO memory, counting down by a data request signal from the device, and having an up / down counter that outputs the count value to the CPU as a response signal,
The device control circuit according to claim 1, wherein when the response signal has a content for notifying the stop of the write control, the output of the write enable signal from the CPU is stopped in the write cycle.
前記ライトイネーブル信号のCPUからの出力が停止されるときの前記カウント値は、前記FIFOメモリの深度数であることを特徴とする請求項1記載のデバイス制御回路。 2. The device control circuit according to claim 1, wherein the count value when the output of the write enable signal from the CPU is stopped is a depth number of the FIFO memory.
JP2003420054A 2003-12-17 2003-12-17 Device control circuit Pending JP2005182312A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003420054A JP2005182312A (en) 2003-12-17 2003-12-17 Device control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003420054A JP2005182312A (en) 2003-12-17 2003-12-17 Device control circuit

Publications (1)

Publication Number Publication Date
JP2005182312A true JP2005182312A (en) 2005-07-07

Family

ID=34781741

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003420054A Pending JP2005182312A (en) 2003-12-17 2003-12-17 Device control circuit

Country Status (1)

Country Link
JP (1) JP2005182312A (en)

Similar Documents

Publication Publication Date Title
US7502896B2 (en) System and method for maintaining the integrity of data transfers in shared memory configurations
JP4998519B2 (en) Asynchronous interface circuit and asynchronous data transfer method
JP2004171209A (en) Shared memory data transfer device
US6754786B2 (en) Memory control circuit and method for arbitrating memory bus
JP4903801B2 (en) Subscriber interface connecting FlexRay communication module and FlexRay subscriber device, and method of transmitting message via subscriber interface connecting FlexRay communication module and FlexRay subscriber device
JP6602579B2 (en) Semiconductor device and system
JP2007525766A (en) Collision detection in multiport memory systems
US20120047299A1 (en) Data transfer device, method of transferring data, and image forming apparatus
JP2006113689A (en) Bus bridge device and data transfer method
US6782433B2 (en) Data transfer apparatus
JP3444154B2 (en) Memory access control circuit
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
JP6142783B2 (en) Memory controller, information processing apparatus, and memory controller control method
KR100606163B1 (en) Direct memory access device, system and method for transmitting and receiving data through direct memory access device
JP2005182312A (en) Device control circuit
JP4696003B2 (en) Data transfer circuit
JP4633334B2 (en) Information processing apparatus and memory access arbitration method
JPH03147157A (en) Information processor
JP4592944B2 (en) CPU interface circuit
JP4071225B2 (en) Transfer circuit
JP2005250683A (en) Microcomputer
JP2010244408A (en) Memory controller and memory interface method
JP2003323335A (en) Memory device and its control method
JP3201439B2 (en) Direct memory access control circuit
JP2007011884A (en) Data transfer unit