JP6112412B2 - I / O control circuit and synchronization control method in I / O control circuit - Google Patents

I / O control circuit and synchronization control method in I / O control circuit Download PDF

Info

Publication number
JP6112412B2
JP6112412B2 JP2013145144A JP2013145144A JP6112412B2 JP 6112412 B2 JP6112412 B2 JP 6112412B2 JP 2013145144 A JP2013145144 A JP 2013145144A JP 2013145144 A JP2013145144 A JP 2013145144A JP 6112412 B2 JP6112412 B2 JP 6112412B2
Authority
JP
Japan
Prior art keywords
input
control
register
cpu
expansion device
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.)
Active
Application number
JP2013145144A
Other languages
Japanese (ja)
Other versions
JP2015018408A (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.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2013145144A priority Critical patent/JP6112412B2/en
Publication of JP2015018408A publication Critical patent/JP2015018408A/en
Application granted granted Critical
Publication of JP6112412B2 publication Critical patent/JP6112412B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、入出力制御回路及び入出力制御回路における同期制御方法に関し、特に、バスの同一チャンネル上に複数のIO拡張デバイスが接続された入出力制御回路及び当該入出力制御回路における複数のIO拡張デバイスの同期制御方法に関する。   The present invention relates to an input / output control circuit and a synchronization control method in the input / output control circuit, and more particularly to an input / output control circuit in which a plurality of IO expansion devices are connected on the same channel of a bus and a plurality of IOs in the input / output control circuit. The present invention relates to an expansion device synchronization control method.

CPU(Central Processing Unit)で制御できるIO信号(GPIO:General Purpose Input/Output)数は限られており、必要な信号の全てをCPUのGPIOで制御することが困難な場合がある。そのような場合に用いられるものとしてIO拡張デバイスがある。IO拡張デバイスは、CPUのある特定のインタフェースに接続され、インタフェースを経由したIO拡張デバイスへのアクセス(レジスタ制御)によって、その入出力が制御される。   The number of IO signals (GPIO: General Purpose Input / Output) that can be controlled by a CPU (Central Processing Unit) is limited, and it may be difficult to control all necessary signals with the GPIO of the CPU. An IO expansion device is used in such a case. The IO expansion device is connected to a specific interface of the CPU, and its input / output is controlled by access (register control) to the IO expansion device via the interface.

このようなIO拡張デバイスはインタフェースの1つのチャンネルに対して1個接続されるのが一般的である。しかしながら、仮にIO拡張デバイスで制御すべき信号が増えた場合、IO拡張デバイスを回路容量又はIO数の多いデバイスに変更しなければならず、大きなコストアップを招く。そこで、IO拡張デバイスを変更せずに、制御できる信号を増やすための様々な方法が提案されている。   In general, one IO expansion device is connected to one channel of the interface. However, if the number of signals to be controlled by the IO expansion device increases, the IO expansion device must be changed to a device with a large circuit capacity or a large number of IOs, resulting in a large cost increase. Therefore, various methods have been proposed for increasing the number of signals that can be controlled without changing the IO expansion device.

例えば、下記特許文献1には、入出力方向の制御可能な入出力共有手段と、前記入出力共有手段を入力点とするか出力点とするかを設定する設定手段と、前記入出力共有手段が入力点として機能する場合に入力データを内部処理手段に転送し、前記入出力共有手段が出力点として機能する場合に内部処理手段からの出力データを前記入出力共有手段に転送する転送手段と、を有するデータ入出力制御方式が開示されている。この公報では、各IOポートをSWで択一的に割り付け可能とし、任意の同期入出力装置の任意の信号を入力または出力として自由に組み合わせできるようにしている。   For example, the following Patent Document 1 discloses an input / output sharing unit that can control an input / output direction, a setting unit that sets whether the input / output sharing unit is an input point or an output point, and the input / output sharing unit. Transfer means for transferring input data to the internal processing means when the functions as an input point, and transferring output data from the internal processing means to the input / output sharing means when the input / output sharing means functions as an output point; , A data input / output control method is disclosed. In this publication, each IO port can be selectively assigned by SW, and any signal of any synchronous input / output device can be freely combined as an input or output.

また、下記特許文献2には、入出力と割込み制御を行う制御部を備えたI/Oデバイスに関し、前記I/Oデバイスは第1のバスを備え、前記制御部は、前記第1のバスのコマンド線を用いてコマンドを受け付けて応答を返すコマンド制御部と、前記第1のバスのデータ線を用いてデータの送受信を行うデータ制御部と、前記第1のバスのデータ線を用いて割り込みをホストコントローラへ伝送する割り込み制御部を備え、前記I/Oデバイスは1以上の第2のバスと、前記I/Oデバイスと前記ホストコントローラとの通信のためのデバイス番号を設定するデバイス番号設定手段と、前記I/Oデバイスの動作モードを設定するモード設定手段を備える構成が開示されている。この公報では、動作モードがマスタモードに設定されたI/Oデバイスをハブとして追加し、このハブがコマンド応答や割り込みの調定を行うことにより、複数I/Oデバイスの接続を可能としている。   Patent Document 2 below relates to an I / O device including a control unit that performs input / output and interrupt control, and the I / O device includes a first bus, and the control unit includes the first bus. A command control unit that receives a command using a command line and returns a response, a data control unit that transmits and receives data using the data line of the first bus, and a data line of the first bus An interrupt control unit configured to transmit an interrupt to the host controller, and the I / O device is a device number for setting one or more second buses and a device number for communication between the I / O device and the host controller A configuration comprising setting means and mode setting means for setting an operation mode of the I / O device is disclosed. In this publication, an I / O device whose operation mode is set to the master mode is added as a hub, and the hub makes a command response and interrupt adjustment, thereby enabling connection of a plurality of I / O devices.

また、下記特許文献3には、シリアルインタフェースを備えるワンチップマイコンと、前記ワンチップマイコンから出力されるシリアルデータを複数ビットのパラレルデータに変換する汎用シフトレジスタICとを備え、前記汎用シフトレジスタICは、複数ビットのパラレルデータを出力する複数の汎用ロジックICがカスケード接続されており、前記カスケード接続された一番目の汎用ロジックICに前記シリアルデータが入力され、前記各汎用ロジックICは、前記シリアルデータをラッチして複数ビットのパラレルデータとして出力すると共に、ラッチのタイミング前に入力されたシリアルデータを後段の汎用ロジックICに出力するI/O拡張回路が開示されている。この公報では、複数のシフトレジスタをカスケード接続することにより、出力信号を拡張している。   Patent Document 3 below includes a one-chip microcomputer provided with a serial interface, and a general-purpose shift register IC that converts serial data output from the one-chip microcomputer into a plurality of bits of parallel data. A plurality of general-purpose logic ICs that output a plurality of bits of parallel data are cascade-connected, and the serial data is input to the first general-purpose logic IC that is cascade-connected. There is disclosed an I / O expansion circuit that latches data and outputs it as a plurality of bits of parallel data, and outputs serial data input before the latch timing to a general-purpose logic IC in the subsequent stage. In this publication, an output signal is expanded by cascading a plurality of shift registers.

また、下記特許文献4には、コンピュータから出力された印刷データを複数の印刷装置に分配出力するデータ分配器であって、前記コンピュータに設けられた周辺機器接続用のポートと接続するためのコンピュータ側ポートと、前記印刷装置と接続するための複数の印刷装置側ポートと、前記それぞれの印刷装置側ポートに対応付けられたポートバッファと、前記コンピュータ側ポートに入力された印刷データを複数のポートバッファに複製出力する分配部とを備える構成が開示されている。この公報では、PCからのデータ出力をリピータハブのようなデバイスで受信し、各プリンタにリピート出力している。   Patent Document 4 listed below is a data distributor that distributes and outputs print data output from a computer to a plurality of printing apparatuses, and is a computer for connecting to a peripheral device connection port provided in the computer. Port, a plurality of printing device side ports for connecting to the printing device, a port buffer associated with each printing device side port, and a plurality of ports for printing data input to the computer side port A configuration including a distribution unit that duplicates and outputs to a buffer is disclosed. In this publication, data output from a PC is received by a device such as a repeater hub and is repeatedly output to each printer.

特開平07−319592号公報JP 07-319592 A 特開2009−123141号公報JP 2009-123141 A 特開2011−197981号公報JP 2011-197981 A 特開2003−076522号公報Japanese Patent Application Laid-Open No. 2003-075522

しかしながら、1つのチャンネルに複数のIO拡張デバイスを接続した場合、個々のIO拡張デバイスを適切に制御することができないという問題が生じる。例えば、CPUからのリードアクセスでは、複数のIO拡張デバイスの各々がCPUに対してデータを出力するため、CPUは、どのデータが所定のIO拡張デバイスに接続される特定の外部機器から取得したデータであるのかを判断することができない。また、CPUからのライトアクセスでは、複数のIO拡張デバイスの各々にデータが書き込まれるため、所定のIO拡張デバイスに接続される特定の外部機器のみを制御することができない。また、特許文献の技術を利用し、SWやハブを用いて複数のIO拡張デバイスを切り換えることも可能であるが、この方法では切り換え制御が必要になり、回路構成が複雑になる。   However, when a plurality of IO expansion devices are connected to one channel, there arises a problem that individual IO expansion devices cannot be appropriately controlled. For example, in the read access from the CPU, each of the plurality of IO expansion devices outputs data to the CPU. Therefore, the CPU acquires data acquired from a specific external device connected to a predetermined IO expansion device. It is not possible to judge whether it is. Further, in the write access from the CPU, data is written to each of the plurality of IO expansion devices, so that it is not possible to control only a specific external device connected to a predetermined IO expansion device. In addition, it is possible to switch between a plurality of IO expansion devices using SW and a hub by using the technique of the patent document, but this method requires switching control and complicates the circuit configuration.

また、複数のIO拡張デバイスに同じ信号が入力されるようにすると、追加したIO拡張デバイスで拡張できるIOを最大限に利用することができないという問題も生じる。すなわち、入力機能を割り当てたIO拡張デバイスと出力機能を割り当てたIO拡張デバイスとに同じ信号が入力されるようにした場合、出力機能を割り当てたIO拡張デバイスに対するリード信号や、入力機能を割り当てたIO拡張デバイスに対するライト信号など、必須ではない信号を入力するためにIOが使用され、その分、拡張できるIO数が減ってしまう。   Further, if the same signal is input to a plurality of IO expansion devices, there is a problem that the IO that can be expanded by the added IO expansion device cannot be used to the maximum extent. That is, when the same signal is input to the IO expansion device to which the input function is assigned and the IO expansion device to which the output function is assigned, the read signal and the input function are assigned to the IO expansion device to which the output function is assigned. IO is used to input a non-essential signal such as a write signal for the IO expansion device, and the number of IOs that can be expanded correspondingly decreases.

本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、バスの同一チャンネル上に複数のIO拡張デバイスが接続される構成において、各々のIO拡張デバイスを適切に制御することができ、また、IO拡張デバイスで拡張できるIOを最大限に利用することができる入出力制御回路及び入出力制御回路における同期制御方法を提供することにある。   The present invention has been made in view of the above problems, and its main object is to appropriately control each IO expansion device in a configuration in which a plurality of IO expansion devices are connected on the same channel of a bus. It is another object of the present invention to provide an input / output control circuit that can make maximum use of an IO that can be expanded by an IO expansion device and a synchronization control method in the input / output control circuit.

本発明の一側面は、CPUの特定バスの同一チャンネル上に、複数のIO拡張デバイスが接続された入出力制御回路であって、前記複数のIO拡張デバイスは、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとで構成され、各々の前記IO拡張デバイスは、同一回路で構成されたレジスタ制御部を有し、前記出力制御用のIO拡張デバイスには、リード用の制御信号が入力されておらず、前記CPUからのライトアクセスでは、前記入力制御用のIO拡張デバイス及び前記出力制御用のIO拡張デバイスに、前記CPUから出力されるデータが書き込まれ、前記CPUからのリードアクセスでは、前記入力制御用のIO拡張デバイスのみが、前記レジスタ制御部が管理するレジスタの値を応答出力することを特徴とする。   One aspect of the present invention is an input / output control circuit in which a plurality of IO expansion devices are connected to the same channel of a specific bus of a CPU, and the plurality of IO expansion devices include an IO expansion device for input control. Each of the IO expansion devices has a register control unit configured of the same circuit, and the output control IO expansion device has a read control signal. In the write access from the CPU that is not input, the data output from the CPU is written in the IO expansion device for input control and the IO expansion device for output control, and the read access from the CPU Then, only the IO expansion device for input control outputs the value of the register managed by the register control unit as a response.

本発明の一側面は、CPUの特定バスの同一チャンネル上に、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとで構成される、複数のIO拡張デバイスが接続された入出力制御回路における前記複数のIO拡張デバイスの同期制御方法であって、各々のIO拡張デバイスに、同一回路で構成されたレジスタ制御部を設け、前記出力制御用のIO拡張デバイスには、リード用の制御信号を入力せず、前記CPUからのライトアクセスでは、前記入力制御用のIO拡張デバイス及び前記出力制御用のIO拡張デバイスに、前記CPUから出力されるデータを書き込み、前記CPUからのリードアクセスでは、前記入力制御用のIO拡張デバイスのみが、前記レジスタ制御部が管理するレジスタの値を応答出力することを特徴とする。   One aspect of the present invention is an input / output control in which a plurality of IO expansion devices, each including an input control IO expansion device and an output control IO expansion device, are connected to the same channel of a specific CPU bus. A method for synchronous control of the plurality of IO expansion devices in a circuit, wherein each IO expansion device is provided with a register control unit composed of the same circuit, and the output control IO expansion device has a read control. In the write access from the CPU without inputting a signal, the data output from the CPU is written in the IO expansion device for input control and the IO expansion device for output control, and in the read access from the CPU In addition, only the IO expansion device for input control outputs a register value managed by the register control unit as a response. .

本発明の入出力制御回路及び入出力制御回路における同期制御方法によれば、バスの同一チャンネル上に複数のIO拡張デバイスが接続される構成において、各々のIO拡張デバイスを適切に制御することができ、また、IO拡張デバイスで拡張できるIOを最大限に利用することができる。   According to the input / output control circuit and the synchronization control method in the input / output control circuit of the present invention, each IO expansion device can be appropriately controlled in a configuration in which a plurality of IO expansion devices are connected to the same channel of the bus. The IO that can be expanded by the IO expansion device can be utilized to the maximum extent.

その理由は、CPUの特定バスの同一チャンネル上に、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとで構成される複数のIO拡張デバイスが接続される場合に、出力制御用のIO拡張デバイスにはリード用の制御信号を入力せず、CPUからのライトアクセスでは、複数のIO拡張デバイスにCPUから出力されるデータを書き込み、CPUからリードアクセスでは、入力制御用のIO拡張デバイスのみがCPUにレジスタ値を応答出力するようにし、出力制御用のIO拡張デバイスに書き込んだデータを確認する場合には、入力制御用のIO拡張デバイスが出力制御用のIO拡張デバイスに代わってレジスタ値を応答出力するからである。   The reason is that when a plurality of IO expansion devices composed of an input control IO expansion device and an output control IO expansion device are connected to the same channel of a specific bus of the CPU, the output control A read control signal is not input to the IO expansion device. In write access from the CPU, data output from the CPU is written to a plurality of IO expansion devices. In read access from the CPU, an IO control device for input control is written. When only the register value is output to the CPU as a response and the data written to the output control IO expansion device is confirmed, the input control IO expansion device replaces the output control IO expansion device with a register. This is because the value is output as a response.

また、入力制御用のIO拡張デバイスにはライト用の制御信号を入力せず、出力制御用のIO拡張デバイスに入力されるリード用の制御信号は、当該IO拡張デバイス内で非アクティブな論理レベルに固定し、CPUからのライトアクセスでは、出力制御用のIO拡張デバイスのみにCPUから出力されるデータを書き込み、CPUからリードアクセスでは、アクティブなリード用の制御信号が入力される入力制御用のIO拡張デバイスのみがレジスタ値を応答出力するからである。   In addition, the write control signal is not input to the input control IO expansion device, and the read control signal input to the output control IO expansion device has an inactive logic level in the IO expansion device. In the write access from the CPU, the data output from the CPU is written only in the IO expansion device for output control. In the read access from the CPU, the active read control signal is input. This is because only the IO expansion device outputs the register value as a response.

本発明の一実施形態に係る入出力制御回路におけるIO拡張デバイスへのライトアクセス及びリードアクセスを説明する図である。It is a figure explaining the write access and read access to the IO expansion device in the input / output control circuit according to one embodiment of the present invention. 本発明の一実施形態に係る他の入出力制御回路におけるIO拡張デバイスへのライトアクセス及びリードアクセスを説明する図である。It is a figure explaining the write access and read access to the IO expansion device in the other input / output control circuit which concerns on one Embodiment of this invention. 本発明の一実施例に係る入出力制御回路の構成を示す図である。It is a figure which shows the structure of the input-output control circuit which concerns on one Example of this invention. 本発明の一実施例に係るIO拡張デバイス間の同期制御方法を説明する図である。It is a figure explaining the synchronous control method between IO expansion devices which concern on one Example of this invention. 本発明の一実施例に係るIO拡張デバイスで拡張できるIO数(ポーリング方式の場合)を説明する図である。It is a figure explaining the IO number (in the case of a polling system) which can be expanded with the IO expansion device which concerns on one Example of this invention. 本発明の一実施例に係るIO拡張デバイスで拡張できるIO数(集合割り込み方式の場合)を示す図である。It is a figure which shows the IO number (in the case of a collective interrupt system) which can be expanded with the IO expansion device which concerns on one Example of this invention. 本発明の一実施例に係る入出力制御回路で使用されるレジスタを示す図である。It is a figure which shows the register | resistor used with the input / output control circuit based on one Example of this invention. 本発明の一実施例に係る入出力制御回路における入力拡張IO制御方法を示すフローチャート図である。It is a flowchart figure which shows the input expansion IO control method in the input / output control circuit based on one Example of this invention. 本発明の一実施例に係る入出力制御回路における出力拡張IO制御方法(書き込み時)を示すフローチャート図である。It is a flowchart figure which shows the output expansion IO control method (at the time of writing) in the input / output control circuit based on one Example of this invention. 本発明の一実施例に係る入出力制御回路における出力拡張IO制御方法(確認時)を示すフローチャート図である。It is a flowchart figure which shows the output expansion IO control method (at the time of confirmation) in the input / output control circuit which concerns on one Example of this invention. 従来の回路におけるIO拡張デバイスへのライトアクセス及びリードアクセスを説明する図である。It is a figure explaining the write access and read access to the IO expansion device in the conventional circuit. 従来の他の回路におけるIO拡張デバイスへのライトアクセス及びリードアクセスを説明する図である。It is a figure explaining the write access and read access to the IO expansion device in other conventional circuits.

背景技術で示したように、入出力制御回路ではIO拡張デバイスが利用されているが、IO拡張デバイスで制御すべき信号が増えた場合に、IO拡張デバイスを回路容量やIO数の多いデバイスに変更するとコストアップを招いてしまう。また、IO拡張デバイスを変更せずに、複数のIO拡張デバイスを使用した場合、各々のIO拡張デバイスを適切に制御することができず、また、拡張できるIOを最大限に利用することができないという問題があった。この問題について、図面を参照して説明する。   As shown in the background art, the IO expansion device is used in the input / output control circuit. However, when the number of signals to be controlled by the IO expansion device increases, the IO expansion device is changed to a device with a large circuit capacity and the number of IOs. Changing it will incur an increase in cost. Further, when a plurality of IO expansion devices are used without changing the IO expansion device, each IO expansion device cannot be appropriately controlled, and the IO that can be expanded cannot be used to the maximum extent. There was a problem. This problem will be described with reference to the drawings.

例えば、図11に示すように、CPUが3チャンネルのパラレルバスを有しており、チャンネル1にデバイスAが接続され、チャンネル2にデバイスBが接続され、チャンネル3にデバイスC(IO拡張デバイス)が接続されているとする。この構成において、図11(a)に示すCPUからのライトアクセスでは、CPUからのセレクト信号Cとライト信号がデバイスCに入力され、デバイスCにCPUから出力されるデータが書き込まれる。また、図11(b)に示すCPUからのリードアクセスでは、CPUからのセレクト信号Cとリード信号がデバイスCに入力され、デバイスCはCPUにデータを出力する。従って、この構成では、CPUはIO拡張デバイスを適切に制御することができる。   For example, as shown in FIG. 11, the CPU has a 3-channel parallel bus, device A is connected to channel 1, device B is connected to channel 2, and device C (IO expansion device) is connected to channel 3. Is connected. In this configuration, in the write access from the CPU shown in FIG. 11A, the select signal C and the write signal from the CPU are input to the device C, and the data output from the CPU is written to the device C. In the read access from the CPU shown in FIG. 11B, the select signal C and the read signal from the CPU are input to the device C, and the device C outputs data to the CPU. Therefore, in this configuration, the CPU can appropriately control the IO expansion device.

この図11の構成において、デバイスC(IO拡張デバイス)で制御すべき信号が増えた場合、図12に示すように、チャンネル3にデバイスC1とデバイスC2の2つのIO拡張デバイスを接続することは可能である。   In the configuration of FIG. 11, when the number of signals to be controlled by the device C (IO expansion device) increases, it is possible to connect two IO expansion devices of the device C1 and the device C2 to the channel 3 as shown in FIG. Is possible.

しかしながら、図12(a)に示すCPUからのライトアクセスでは、デバイスC1とデバイスC2とが同一チャンネルに接続されており、CPUからのセレクト信号Cとライト信号がデバイスC1とデバイスC2に入力されるため、デバイスC1とデバイスC2には共にCPUから出力されるデータが書き込まれてしまう。また、図12(b)に示すCPUからのリードアクセスでは、デバイスC1とデバイスC2とが同一チャンネルに接続されており、CPUからのセレクト信号Cとリード信号がデバイスC1とデバイスC2に入力されるため、デバイスC1とデバイスC2は共にCPUにデータを出力してしまう。そのため、CPUは所望のIO拡張デバイスのみを適切に制御することができない。   However, in the write access from the CPU shown in FIG. 12A, the device C1 and the device C2 are connected to the same channel, and the select signal C and the write signal from the CPU are input to the device C1 and the device C2. Therefore, data output from the CPU is written to both the device C1 and the device C2. In the read access from the CPU shown in FIG. 12B, the device C1 and the device C2 are connected to the same channel, and the select signal C and the read signal from the CPU are input to the device C1 and the device C2. Therefore, both the device C1 and the device C2 output data to the CPU. Therefore, the CPU cannot appropriately control only the desired IO expansion device.

また、図12に示すように、IO拡張デバイスが入力制御用であるか出力制御用であるかに関わらず、デバイスC1とデバイスC2に同じ信号を入力すると、デバイスC1やデバイスC2が拡張できるIOを最大限に利用することができない。すなわち、出力制御用のIO拡張デバイスは必ずしもCPUにデータを出力する必要はないが、出力制御用のIO拡張デバイスにもリード信号を入力すると、その分、拡張できるIO数が減ってしまう。同様に、入力制御用のIO拡張デバイスには必ずしもCPUから出力されるデータを書き込む必要はないが、入力制御用のIO拡張デバイスにもライト信号を入力すると、その分、拡張できるIO数が減ってしまう。   Also, as shown in FIG. 12, regardless of whether the IO expansion device is for input control or output control, if the same signal is input to the device C1 and the device C2, the device C1 and the device C2 can be expanded. Cannot be used to the maximum. That is, the output control IO expansion device does not necessarily output data to the CPU, but if a read signal is input to the output control IO expansion device, the number of IOs that can be expanded is reduced accordingly. Similarly, it is not always necessary to write the data output from the CPU to the input control IO expansion device, but if a write signal is input to the input control IO expansion device, the number of IOs that can be expanded decreases accordingly. End up.

そこで、本発明の一実施の形態では、バスの同一チャンネル上に複数のIO拡張デバイスが接続され、各々のIO拡張デバイスに入力/出力機能が割り当てられる入出力制御回路において、出力機能が割り当てられた出力制御用のIO拡張デバイスにはリード信号が入力しないようにするか、または、入力機能が割り当てられた入力制御用のIO拡張デバイスにはライト信号が入力しないようにする。   Therefore, in one embodiment of the present invention, an output function is assigned in an input / output control circuit in which a plurality of IO expansion devices are connected on the same channel of the bus and an input / output function is assigned to each IO expansion device. In addition, a read signal is not input to the output control IO expansion device, or a write signal is not input to the input control IO expansion device to which the input function is assigned.

すなわち、前者の場合は、ホスト(CPU)からのライトアクセスは、入力/出力機能が割り当てられた双方のIO拡張デバイスにデータが書き込まれるようにし、かつ、CPUからのリードアクセスでは、入力機能が割り当てられた入力制御用のIO拡張デバイスのみがデータを応答出力するようにする。具体的には、図1に示すように、CPUが3チャンネルのパラレルバスを有しており、チャンネル1にデバイスAが接続され、チャンネル2にデバイスBが接続され、チャンネル3に入力制御用のデバイスC1と出力制御用のデバイスC2の2つのIO拡張デバイスが接続されている構成において、入力制御用のデバイスC1にはセレクト信号Cとライト信号とリード信号が入力されるようにし、出力制御用のデバイスC2にはセレクト信号Cとライト信号のみが入力されるようにする。   That is, in the former case, the write access from the host (CPU) allows data to be written to both IO expansion devices to which the input / output function is assigned, and the read function from the CPU does not have the input function. Only the assigned IO expansion device for input control outputs data as a response. Specifically, as shown in FIG. 1, the CPU has a 3-channel parallel bus, device A is connected to channel 1, device B is connected to channel 2, and channel 3 is used for input control. In the configuration in which the two IO expansion devices of the device C1 and the output control device C2 are connected, the select signal C, the write signal, and the read signal are input to the input control device C1 for output control. Only the select signal C and the write signal are input to the device C2.

この場合、図1(a)に示すCPUからのライトアクセスでは、デバイスC1とデバイスC2とが同一チャンネルに接続されており、CPUからのセレクト信号Cとライト信号が双方に入力されるため、デバイスC1とデバイスC2には共にCPUから出力されるデータが書き込まれる。また、図1(b)に示すCPUからのリードアクセスでは、CPUからのセレクト信号CはデバイスC1とデバイスC2に入力されるが、リード信号はデバイスC1のみに入力されるため、デバイスC1のみがCPUにデータを出力する。この構成では、CPUからのライトアクセスでは、デバイスC1とデバイスC2の双方にデータが書き込まれるが、デバイスC1は入力制御用であり、書き込まれたデータを外部機器に出力しないため問題は生じない。また、デバイスC1とデバイスC2の双方に同じデータが書き込まれるため、デバイスC1に対するリードアクセスを利用する(すなわち、デバイスC1にデバイスC2の代理応答をさせる)ことにより、デバイスC2に書き込まれたデータを確認することができる。従って、CPUは所望のIO拡張デバイスのみを適切に制御することができる。   In this case, in the write access from the CPU shown in FIG. 1A, the device C1 and the device C2 are connected to the same channel, and the select signal C and the write signal from the CPU are input to both. Data output from the CPU is written in both C1 and device C2. In the read access from the CPU shown in FIG. 1B, the select signal C from the CPU is input to the device C1 and the device C2. However, since the read signal is input only to the device C1, only the device C1 has Data is output to the CPU. In this configuration, in the write access from the CPU, data is written to both the device C1 and the device C2, but the device C1 is used for input control and does not output the written data to the external device, so no problem occurs. Further, since the same data is written to both the device C1 and the device C2, by using read access to the device C1 (that is, making the device C1 make a proxy response of the device C2), the data written to the device C2 is changed. Can be confirmed. Therefore, the CPU can appropriately control only the desired IO expansion device.

また、後者の場合は、CPUからのリードアクセスは、入力/出力機能が割り当てられた双方のIO拡張デバイスがデータを応答出力するようにし、かつ、CPUからのライトアクセスでは、出力機能が割り当てられた特定のIO拡張デバイスのみにデータが書き込まれるようにする。具体的には、図2に示すように、デバイスC1にはセレクト信号とリード信号のみが入力されるようにし、デバイスC2にはセレクト信号とライト信号とリード信号が入力されるようにする。   In the latter case, read access from the CPU causes both IO expansion devices to which the input / output function is assigned to output data as a response, and output access is assigned to the write access from the CPU. Data is written only to a specific IO expansion device. Specifically, as shown in FIG. 2, only the select signal and the read signal are input to the device C1, and the select signal, the write signal, and the read signal are input to the device C2.

この場合、図2(a)に示すCPUからのライトアクセスでは、デバイスC1とデバイスC2が同一チャンネルに接続されており、CPUからのセレクト信号CはデバイスC1とデバイスC2に入力されるが、ライト信号はデバイスC2のみに入力されるため、デバイスC2のみにデータが書き込まれる。また、図2(b)に示すCPUからのリードアクセスでは、CPUからのセレクト信号Cとリード信号はデバイスC1とデバイスC2に入力されるが、後述するようにデバイスC2に入力されるリード信号をデバイスC2内で非アクティブな論理レベルに固定することによって、アクティブなリード信号が入力されるデバイスC1のみがCPUにデータを出力する。従って、CPUは所望のIO拡張デバイスのみを適切に制御することができる。   In this case, in the write access from the CPU shown in FIG. 2A, the device C1 and the device C2 are connected to the same channel, and the select signal C from the CPU is input to the device C1 and the device C2. Since the signal is input only to the device C2, data is written only to the device C2. In the read access from the CPU shown in FIG. 2B, the select signal C and the read signal from the CPU are input to the device C1 and the device C2, but the read signal input to the device C2 is used as described later. By fixing to an inactive logic level in the device C2, only the device C1 to which an active read signal is input outputs data to the CPU. Therefore, the CPU can appropriately control only the desired IO expansion device.

このように、バスの同一チャンネル上に入力機能が割り当てられたIO拡張デバイスと出力機能が割り当てられたIO拡張デバイスとが接続されている場合であっても、CPUからは1つのIO拡張デバイスが接続されているように見えるため、所望のIO拡張デバイスのみを適切に制御することができる。また、出力機能が割り当てられたIO拡張デバイスにはリード信号を入力しない、または、入力機能が割り当てられたIO拡張デバイスにはライト信号を入力しないため、追加したIO拡張デバイスのIOを最大限に利用することができる。更に、複数のIO拡張デバイス内の回路(レジスタを制御するレジスタ制御部)は共通化することができるため、設計効率を向上させることができ、コストアップを抑制することができる。   As described above, even when the IO expansion device to which the input function is assigned and the IO expansion device to which the output function is assigned are connected to the same channel of the bus, one IO expansion device is connected from the CPU. Since it appears to be connected, only the desired IO expansion device can be properly controlled. In addition, since no read signal is input to the IO expansion device to which the output function is assigned or no write signal is input to the IO expansion device to which the input function is assigned, the IO of the added IO expansion device is maximized. Can be used. Furthermore, since the circuits (register control units that control the registers) in the plurality of IO expansion devices can be shared, the design efficiency can be improved and the cost increase can be suppressed.

上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る入出力制御回路及び入出力制御回路における同期制御方法について、図3乃至図10を参照して説明する。図3は、本実施例の入出力制御回路の構成を示す図であり、図4は、本実施例のIO拡張デバイス間の同期制御方法を説明する図である。また、図5及び図6は、IO拡張デバイスで拡張できるIO数を説明する図であり、図7は、IO拡張デバイスのレジスタを示す図である。また、図8は、本実施例の入出力制御回路における入力拡張IO制御を示すフローチャート図であり、図9及び図10は、出力拡張IO制御を示すフローチャート図である。   In order to describe the above-described embodiment of the present invention in further detail, an input / output control circuit according to an embodiment of the present invention and a synchronous control method in the input / output control circuit will be described with reference to FIGS. . FIG. 3 is a diagram illustrating a configuration of the input / output control circuit of the present embodiment, and FIG. 4 is a diagram illustrating a synchronization control method between IO expansion devices of the present embodiment. 5 and 6 are diagrams illustrating the number of IOs that can be expanded by the IO expansion device, and FIG. 7 is a diagram illustrating registers of the IO expansion device. FIG. 8 is a flowchart showing input expansion IO control in the input / output control circuit of this embodiment, and FIGS. 9 and 10 are flowcharts showing output expansion IO control.

本実施例の入出力制御回路は、CPU(正確には外部インタフェース機能を持ったCPUであり、SoC(System-on-a-chip)と呼ばれる。)と、入力制御用及び出力制御用の2つのIO拡張デバイスとを含む。ここでは、実施形態と同様の構成とし、図3に示すように、CPU10と、CPU10によって制御される4つのデバイス(デバイスA、デバイスB、デバイスC1、デバイスC2)とで構成されるものとする。   The input / output control circuit of this embodiment includes a CPU (specifically, a CPU having an external interface function, called SoC (System-on-a-chip)), and 2 for input control and output control. One IO expansion device. Here, the configuration is the same as that of the embodiment, and as illustrated in FIG. 3, the configuration includes a CPU 10 and four devices (device A, device B, device C1, and device C2) controlled by the CPU 10. .

CPU10は、本実施例では、3チャンネルのパラレルバスを有しており、チャンネル1にデバイスA、チャンネル2にデバイスB、チャンネル3にデバイスC1、C2が接続されている。デバイスA、Bは、例えばNor-Flashメモリであり、チャンネル1に接続されるNor-Flashメモリ20にはブート用データが格納され、チャンネル2に接続されるNor-Flashメモリ30にはブート以外のFW(firmware)が格納されている。デバイスC1、C2は、ロジックデバイス(以下、CPLD:Complex Programmable Logic Device)であり、CPLD1(デバイスC1)は、入力制御用のIO拡張デバイス40として予め割り当てられ、CPLD2(デバイスC2)は、出力制御用のIO拡張デバイス50として予め割り当てられている。   In this embodiment, the CPU 10 has a three-channel parallel bus, and device A is connected to channel 1, device B is connected to channel 2, and devices C1 and C2 are connected to channel 3. The devices A and B are, for example, Nor-Flash memories, the boot data is stored in the Nor-Flash memory 20 connected to the channel 1, and the non-boot memory is connected to the Nor-Flash memory 30 connected to the channel 2. FW (firmware) is stored. The devices C1 and C2 are logic devices (hereinafter referred to as CPLD: Complex Programmable Logic Device). The CPLD1 (device C1) is assigned in advance as an IO expansion device 40 for input control, and the CPLD2 (device C2) is output controlled. Is assigned in advance as an I / O expansion device 50.

また、CPU10は、各チャンネルに接続されたデバイスを選択するためのセレクト信号(セレクト信号A〜C)と、デバイスにデータを書き込むためのライト信号と、デバイスからデータを読み込むためのリード信号と、を出力する。デバイスAには、セレクト信号Aとライト信号とリード信号とが入力され、デバイスBには、セレクト信号Bとライト信号とリード信号とが入力される。また、本実施例では、実施形態の図1で示した構成を前提とし、CPLD1(デバイスC1)には、セレクト信号Cとライト信号とリード信号とが入力され、CPLD2(デバイスC2)には、セレクト信号Cとライト信号とが入力される。   Further, the CPU 10 selects a device connected to each channel (select signals A to C), a write signal for writing data to the device, a read signal for reading data from the device, Is output. The device A receives the select signal A, the write signal, and the read signal, and the device B receives the select signal B, the write signal, and the read signal. Further, in this example, on the assumption of the configuration shown in FIG. 1 of the embodiment, a select signal C, a write signal, and a read signal are input to CPLD1 (device C1), and CPLD2 (device C2) A select signal C and a write signal are input.

図4は、CPLD1(デバイスC1)とCPLD2(デバイスC2)の構成を示している。CPLD1は、レジスタ制御部41を有し、CPLD2は、レジスタ制御部51を有している。このレジスタ制御部41、51は、RTL(Register Transfer Level)やHDL(Hardware Description Language)などで記述された共通のHW回路である。また、レジスタ制御部41には、入力制御レジスタ42と出力制御レジスタ43とが設けられ、レジスタ制御部51には、入力制御レジスタ52と出力制御レジスタ53とが設けられている。そして、CPLD1の出力制御レジスタ43とCPLD2と出力制御レジスタ53とは同期が取られている。   FIG. 4 shows the configuration of CPLD1 (device C1) and CPLD2 (device C2). The CPLD 1 has a register control unit 41, and the CPLD 2 has a register control unit 51. The register control units 41 and 51 are common HW circuits described in RTL (Register Transfer Level), HDL (Hardware Description Language), and the like. The register control unit 41 includes an input control register 42 and an output control register 43, and the register control unit 51 includes an input control register 52 and an output control register 53. The output control register 43, CPLD2, and output control register 53 of CPLD1 are synchronized.

CPLD1には、主に外部からのセンサ信号(入力信号1〜3)などが入力される。一方、CPLD2には、電源制御用の信号(出力信号1〜3)などが出力される。ここで、CPLD2は、出力制御用のIO拡張デバイス50であり、入力を制御する必要はないため、実施形態の図2の構成を採用する場合には、CPLD2の入力制御レジスタ52に対して入力されるリード信号を非アクティブな論理レベルに固定しておくことでライト信号のみを使用できるようにする。   CPLD1 mainly receives external sensor signals (input signals 1 to 3). On the other hand, power control signals (output signals 1 to 3) and the like are output to CPLD2. Here, CPLD2 is an IO expansion device 50 for output control, and it is not necessary to control input. Therefore, when adopting the configuration of FIG. 2 of the embodiment, input to the input control register 52 of CPLD2 is performed. The read signal to be read is fixed at an inactive logic level so that only the write signal can be used.

このような構成の入出力制御回路において、CPU10からのライトアクセスでは、CPLD1とCPLD2とが同一のチャンネル3に接続されており、CPU10からのセレクト信号Cとライト信号がCPLD1とCPLD2の双方に入力されるため、CPLD1とCPLD2は共に自分へのライトアクセスであると判断してデータを出力制御レジスタ43、53に取り込む。その際、CPLD1の出力制御レジスタ43は外部に接続されておらず、取り込んだデータを外部に出力することはない。従って、CPU10は、出力制御用として予め割り当てられたCPLD2のみを適切に制御することができる。例えば、入出力制御回路がMFP(Multi Function Peripheral)などの画像形成装置に組み込まれる場合は、CPUの電源制御やパネルの電源制御、FAXの電源制御などを行うことができる。   In the input / output control circuit having such a configuration, in the write access from the CPU 10, CPLD1 and CPLD2 are connected to the same channel 3, and the select signal C and the write signal from the CPU 10 are input to both CPLD1 and CPLD2. Therefore, CPLD1 and CPLD2 both determine that they are write accesses to themselves, and fetch data into the output control registers 43 and 53. At this time, the output control register 43 of the CPLD 1 is not connected to the outside, and the fetched data is not output to the outside. Therefore, the CPU 10 can appropriately control only the CPLD 2 assigned in advance for output control. For example, when the input / output control circuit is incorporated in an image forming apparatus such as an MFP (Multi Function Peripheral), CPU power control, panel power control, FAX power control, and the like can be performed.

また、CPU10からのリードアクセスでは、CPLD1とCPLD2が同一のチャンネル3に接続されており、CPU10からのセレクト信号Cは、CPLD1とCPLD2に入力されるが、リード信号はCPLD1のみに入力されるため、CPLD1のみが自分へのリードアクセスであると判断して入力制御レジスタ42に保持したデータをCPU10に出力する。従って、CPU10は、入力制御用として予め割り当てられたCPLD1のみを適切に制御することができる。例えば、入出力制御回路がMFPなどの画像形成装置に組み込まれる場合は、紙詰まりなどを検知するセンサ、扉の開閉を検知するセンサ、用紙トレイに設けられたセンサなどからの信号を取得することができ、MFPの状態を判断することができる。   In read access from the CPU 10, CPLD1 and CPLD2 are connected to the same channel 3, and the select signal C from the CPU 10 is input to CPLD1 and CPLD2, but the read signal is input only to CPLD1. Only the CPLD 1 judges that it is a read access to itself and outputs the data held in the input control register 42 to the CPU 10. Therefore, the CPU 10 can appropriately control only the CPLD 1 assigned in advance for input control. For example, when an input / output control circuit is incorporated in an image forming apparatus such as an MFP, a signal from a sensor for detecting a paper jam, a sensor for detecting opening / closing of a door, a sensor provided on a paper tray, or the like is acquired. And the state of the MFP can be determined.

なお、実施形態の図2の構成(ライト信号がCPLD2のみに入力される構成)の場合、CPU10からのライトアクセスでは、CPLD1とCPLD2が同一のチャンネル3に接続されており、CPU10からのセレクト信号Cは、CPLD1とCPLD2に入力されるが、ライト信号はCPLD2のみに入力されるため、CPLD2のみが自分へのライトアクセスであると判断してデータを出力制御レジスタ53に取り込む。従って、出力制御用として予め割り当てられたCPLD2のみを適切に制御することができる。   In the configuration of FIG. 2 of the embodiment (a configuration in which the write signal is input only to the CPLD 2), in the write access from the CPU 10, the CPLD 1 and CPLD 2 are connected to the same channel 3, and the select signal from the CPU 10 C is input to CPLD 1 and CPLD 2, but the write signal is input only to CPLD 2, so that only CPLD 2 is determined to be a write access to itself and data is taken into output control register 53. Therefore, it is possible to appropriately control only the CPLD 2 assigned in advance for output control.

また、CPU10からのリードアクセスでは、CPLD1とCPLD2が同一のチャンネル3に接続されており、CPU10からのセレクト信号Cとリード信号がCPLD1とCPLD2の双方に入力されるため、CPLD1とCPLD2は共に自分へのリードアクセスであると判断するが、CPLD2ではリード信号は非アクティブな論理レベルに固定されており、CPU10にデータを出力しない。従って、CPU10は、入力制御用として予め割り当てられたCPLD1のみを適切に制御することができる。   In the read access from the CPU 10, CPLD1 and CPLD2 are connected to the same channel 3, and the select signal C and the read signal from the CPU 10 are input to both CPLD1 and CPLD2. However, in CPLD2, the read signal is fixed at an inactive logic level, and data is not output to the CPU 10. Therefore, the CPU 10 can appropriately control only the CPLD 1 assigned in advance for input control.

次に、IO拡張デバイスのIO数について説明する。図5は、IO拡張デバイスが使用できるIO数を説明する図であり、図5(a)は、入力/出力制御用のIO拡張デバイスを2つ接続した場合のIO数、(b)、(c)は、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとを接続した場合のIO数を示している。なお、図5は、CPU10が一定周期で入力制御用のIO拡張デバイスに対してリードを行うことで、CPLD1に入力されている各センサ信号の状態を取得するポーリング方式を採用した場合の例である。   Next, the number of IOs of the IO expansion device will be described. FIG. 5 is a diagram for explaining the number of IOs that can be used by the IO expansion device. FIG. 5A shows the number of IOs when two IO expansion devices for input / output control are connected, (b), ( c) shows the number of IOs when the IO expansion device for input control and the IO expansion device for output control are connected. FIG. 5 shows an example in which a polling method is used in which the CPU 10 reads the state of each sensor signal input to the CPLD 1 by reading the IO expansion device for input control at a constant period. is there.

各々のIO拡張デバイスには、デバイスバスに接続するために、セレクト信号、ライト信号、リード信号、データ信号が入力される。図5(a)の入力/出力制御用のIO拡張デバイスの場合、拡張IOとして使用できるIOがN本であるとすると、同じ構成の入力/出力制御用のIO拡張デバイスを追加すると、追加したIO拡張デバイスにもセレクト信号、ライト信号、リード信号、データ信号が入力されるため、拡張IOとして使用できるIOは同様にN本となる。   Each IO expansion device receives a select signal, a write signal, a read signal, and a data signal for connection to the device bus. In the case of the IO expansion device for input / output control in FIG. 5A, assuming that there are N IOs that can be used as expansion IOs, an IO expansion device for input / output control having the same configuration is added. Since the select signal, write signal, read signal, and data signal are also input to the IO expansion device, the number of IOs that can be used as the expansion IO is similarly N.

一方、図5(b)の場合、入力制御用IO拡張デバイスには、セレクト信号、ライト信号、リード信号、データ信号が入力され、入力制御用IO拡張デバイスが拡張IOとして使用できるIOはN本となるが、出力制御用IO拡張デバイスにはリード信号を入力しないため、出力制御用IO拡張デバイスが拡張IOとして使用できるIOはN+1本となる。同様に図5(c)の場合、出力制御用IO拡張デバイスにはセレクト信号、ライト信号、データ信号が入力され、出力制御用IO拡張デバイスが拡張IOとして使用できるIOはN本となるが、入力制御用IO拡張デバイスにはライト信号を入力しないため、入力制御用IO拡張デバイスが拡張IOとして使用できるIOはN+1本となる。従って、本実施例の構成では、IO拡張デバイスのIOを最大限に利用することができる。   On the other hand, in the case of FIG. 5B, a select signal, a write signal, a read signal, and a data signal are input to the input control IO expansion device, and the input control IO expansion device can use N IO as expansion IO. However, since no read signal is input to the output control IO expansion device, the output control IO expansion device can use N + 1 IOs as expansion IOs. Similarly, in the case of FIG. 5C, a select signal, a write signal, and a data signal are input to the output control IO expansion device, and the output control IO expansion device can use N expansion IOs. Since no write signal is input to the input control IO expansion device, the input control IO expansion device can use N + 1 IOs as expansion IOs. Therefore, in the configuration of this embodiment, the IO of the IO expansion device can be utilized to the maximum extent.

図5では、ポーリング方式を採用した場合のIO拡張デバイスのIO数について示したが、ポーリングではCPU10が一定周期でリードを行う必要があるため、CPU10の負荷が増大してしまう。一方、このポーリング方式とは別に割り込み方式と呼ばれる方式が存在する。割り込み方式は、CPLD1内で入力されている各センサ信号の変化を検出し、変化を検出した場合に割り込み信号によってCPU10に通知する方式であり、この方式ではCPU10の負荷を軽減することができる。   FIG. 5 shows the number of IOs of the IO expansion device when the polling method is adopted. However, in the polling, the CPU 10 needs to read at a constant cycle, so that the load on the CPU 10 increases. On the other hand, apart from this polling method, there is a method called an interrupt method. The interrupt method is a method of detecting a change in each sensor signal input in the CPLD 1 and notifying the CPU 10 by an interrupt signal when the change is detected. In this method, the load on the CPU 10 can be reduced.

図6は、割り込み方式を採用した場合のIO拡張デバイスが使用できるIO数を具体的に説明する図であり、複数のセンサ信号の検出を1本の割り込みによってCPU10に通知する集合割り込みの場合を示している。この場合、CPLD1及びCPLD2は割り込みを制御する割り込みコントローラ機能を有し、CPLD1の割り込みコントローラ機能は、センサ信号を検出するとCPU10に集合割り込み信号を出力し、CPU10はこの集合割り込み信号を受け取ると、CPLD1をリードして、どのセンサ信号に変化があったかを判断する。   FIG. 6 is a diagram for specifically explaining the number of IOs that can be used by the IO expansion device when the interrupt method is adopted. In the case of a collective interrupt in which the detection of a plurality of sensor signals is notified to the CPU 10 by one interrupt. Show. In this case, CPLD1 and CPLD2 have an interrupt controller function for controlling interrupts. The CPLD1 interrupt controller function outputs a collective interrupt signal to the CPU 10 when it detects a sensor signal, and when the CPU 10 receives the collective interrupt signal, the CPLD1 To determine which sensor signal has changed.

CPLD1及びCPLD2は汎用ロジックデバイスであり、電源・GND、クロック入力が必須である。残りのIOはユーザIOと呼ばれ、ユーザが自由に使用可能であり、CPLD1及びCPLD2のユーザIOが共に25本であるとする。CPLD1では、セレクト信号、ライト信号、リード信号、8本のデータ信号、3本のアドレス信号、集合割り込み信号で合計15本となるため、残りの10本を拡張IO(入力0〜9)として使用することができる。一方、CPLD2では、セレクト信号、ライト信号、8本のデータ信号、3本のアドレス信号で合計13本となるため、残りの12本を拡張IO(出力0〜11)として使用することができる。従って、割り込み方式では、追加したIO拡張デバイスが使用できるIO数を更に増やすことができる。なお、本実施例ではデータ信号を8本としているが、データ信号は8本に限定されるものではない。また、本実施例ではアドレス信号を3本としているが、アドレス信号も3本に限定されるものではない。   CPLD1 and CPLD2 are general-purpose logic devices, and power supply / GND and clock input are essential. The remaining IOs are called user IOs, and can be freely used by users. Assume that there are 25 user IOs in CPLD1 and CPLD2. In CPLD1, there are a total of 15 select signals, write signals, read signals, 8 data signals, 3 address signals, and collective interrupt signals, so the remaining 10 are used as expansion IOs (inputs 0 to 9). can do. On the other hand, in CPLD2, since the select signal, the write signal, the eight data signals, and the three address signals are 13 in total, the remaining 12 can be used as the expansion IO (outputs 0 to 11). Therefore, in the interrupt method, the number of IOs that can be used by the added IO expansion device can be further increased. In this embodiment, the number of data signals is eight, but the number of data signals is not limited to eight. In this embodiment, three address signals are used, but the number of address signals is not limited to three.

図7は、上記集合割り込み方式を採用する場合に、CPLD1及びCPLD2に設けられるレジスタの一例である。CPLD1及びCPLD2には、3本のアドレス信号で規定される3ビット分(8個)のレジスタ、例えば、出力制御レジスタ1、出力制御レジスタ2、入力制御レジスタ1、入力制御レジスタ2、割り込み要因レジスタ1、割り込み要因レジスタ2、割り込み要因クリアレジスタ1、割り込み要因クリアレジスタ2が用意される。   FIG. 7 is an example of a register provided in CPLD1 and CPLD2 when the collective interrupt method is employed. CPLD1 and CPLD2 have three bits (eight) registers defined by three address signals, for example, output control register 1, output control register 2, input control register 1, input control register 2, interrupt factor register 1, an interrupt factor register 2, an interrupt factor clear register 1, and an interrupt factor clear register 2 are prepared.

出力制御レジスタ1(000)は、8ビットレジスタであり、各ビットが出力制御用IO拡張デバイスの拡張IOの8本と対応しており、各ビットを書き換えることでCPLD2から出力される拡張IO信号(出力0〜7)を制御することができる。   The output control register 1 (000) is an 8-bit register, and each bit corresponds to eight expansion IOs of the output control IO expansion device, and the expansion IO signal output from the CPLD 2 by rewriting each bit. (Outputs 0 to 7) can be controlled.

出力制御レジスタ2(001)は、8ビットレジスタであり、各ビットが出力制御用IO拡張デバイスの拡張IOの4本と対応している。レジスタとしては8ビットであるが、実際に使用するのは下位4ビットのみであり、各ビットを書き換えることでCPLD2から出力される拡張IO信号(出力8〜11)を制御することができる。   The output control register 2 (001) is an 8-bit register, and each bit corresponds to four expansion IOs of the output control IO expansion device. Although the register has 8 bits, only the lower 4 bits are actually used, and the extended IO signals (outputs 8 to 11) output from the CPLD 2 can be controlled by rewriting each bit.

入力制御レジスタ1(010)は、8ビットレジスタであり、各ビットが入力制御用IO拡張デバイスの拡張IOの8本と対応しており、各ビットを読み出すことでCPLD1に入力されている拡張IO信号(入力0〜7)の状態を知ることができる。   The input control register 1 (010) is an 8-bit register, and each bit corresponds to eight expansion IOs of the input control IO expansion device. By reading each bit, the expansion IO input to the CPLD1 It is possible to know the state of the signals (inputs 0 to 7).

入力制御レジスタ2(011)は、8ビットレジスタであり、各ビットが入力制御用IO拡張デバイスの拡張IOの2本と対応している。レジスタとしては8ビットであるが、実際に使用するのは下位2ビットのみであり、各ビットを読み出すことでCPLD1に入力されている拡張IO信号(入力8、9)の状態を知ることができる。   The input control register 2 (011) is an 8-bit register, and each bit corresponds to two expansion IOs of the input control IO expansion device. Although the register is 8 bits, only the lower 2 bits are actually used, and the state of the extended IO signal (inputs 8 and 9) input to the CPLD 1 can be known by reading each bit. .

割り込み要因レジスタ1(100)は、入力制御レジスタ1の8ビットのうち、いずれかのセンサ信号の状態が変化した際に、対応するビットの値が”1”になる。後述の割り込み要因レジスタ2を含む、いずれかのビットの値が”1”である場合に、CPLD1はCPU10に対して集合割り込み信号を出力する。また、CPU10からのリードアクセスに対してCPLD1は割り込み要因レジスタ1の値を返す。   In the interrupt factor register 1 (100), when the state of any one of the 8 bits of the input control register 1 changes, the value of the corresponding bit becomes “1”. When the value of any of the bits including the interrupt factor register 2 described later is “1”, the CPLD 1 outputs a collective interrupt signal to the CPU 10. In response to read access from the CPU 10, the CPLD 1 returns the value of the interrupt factor register 1.

割り込み要因レジスタ2(101)は、入力制御レジスタ2の2ビットのうち、いずれかのセンサ信号の状態が変化した際に、対応するビットの値が”1”になる。前述の割り込み要因レジスタ1を含む、いずれかのビットの値が”1”である場合に、CPLD1はCPU10に対して集合割り込み信号を出力する。   In the interrupt factor register 2 (101), when the state of any one of the two bits of the input control register 2 changes, the value of the corresponding bit becomes “1”. When the value of any of the bits including the interrupt factor register 1 is “1”, the CPLD 1 outputs a collective interrupt signal to the CPU 10.

割り込み要因クリアレジスタ1(110)は、上記割り込み要因レジスタ1と対応しており、本レジスタの各ビットに”1”が書き込まれたときに、対応する割り込み要因レジスタ1のビットの値が”0”にクリアされる。   The interrupt factor clear register 1 (110) corresponds to the interrupt factor register 1, and when “1” is written to each bit of this register, the value of the bit of the corresponding interrupt factor register 1 is “0”. Cleared to "".

割り込み要因クリアレジスタ2(111)は、上記割り込み要因レジスタ2と対応しており、本レジスタの各ビットに”1”が書き込まれたときに、対応する割り込み要因レジスタ2のビットの値が”0”にクリアされる。   The interrupt factor clear register 2 (111) corresponds to the interrupt factor register 2, and when “1” is written to each bit of this register, the value of the bit of the corresponding interrupt factor register 2 is “0”. Cleared to "".

次に、図7の構成のレジスタを用いて、図6の構成のCPLD1及びCPLD2を制御する方法について説明する。まず、入力拡張IO制御(入力制御用のIO拡張デバイス40の制御)について、図8のフローチャート図を参照して説明する。   Next, a method of controlling CPLD1 and CPLD2 having the configuration shown in FIG. 6 using the register having the configuration shown in FIG. 7 will be described. First, input expansion IO control (control of the IO expansion device 40 for input control) will be described with reference to the flowchart of FIG.

まず、CPLD1のレジスタ制御部41は、CPLD1に入力されている拡張IO信号(入力0〜9)のいずれかの状態が変化したら(S101)、CPU10に集合割り込み信号を出力する(S102)。   First, when one of the extended IO signals (inputs 0 to 9) input to CPLD1 changes (S101), register control unit 41 of CPLD1 outputs a collective interrupt signal to CPU 10 (S102).

CPU10は、集合割り込み信号を検出したら(S103)、割り込み要因レジスタ1をリードし(S104)、割り込み要因レジスタ1のいずれかのビットの値が”1”であるかを判断する(S105)。割り込み要因レジスタ1のいずれかのビットの値が”1”の場合は、CPU10は、入力制御レジスタ1をリードして入力信号の状態を確認し(S106)、各ビットに対応した処理を実行した後、割り込み要因レジスタ1をクリアし(S107)、S104に戻る。   When detecting the collective interrupt signal (S103), the CPU 10 reads the interrupt factor register 1 (S104), and determines whether the value of any bit of the interrupt factor register 1 is “1” (S105). When the value of any bit of the interrupt factor register 1 is “1”, the CPU 10 reads the input control register 1 to check the state of the input signal (S106), and executes processing corresponding to each bit. Thereafter, the interrupt factor register 1 is cleared (S107), and the process returns to S104.

一方、割り込み要因レジスタ1の全てのビットの値が”0”の場合は、CPU10は、割り込み要因レジスタ2をリードし(S108)、割り込み要因レジスタ2のいずれかのビットの値が”1”であるかを判断する(S109)。割り込み要因レジスタ2のいずれかのビットの値が”1”の場合は、CPU10は、入力制御レジスタ2をリードして入力信号の状態を確認し(S110)、各ビットに対応した処理を実行した後、割り込み要因レジスタ2をクリアし(S111)、S108に戻る。   On the other hand, when the values of all the bits of the interrupt factor register 1 are “0”, the CPU 10 reads the interrupt factor register 2 (S108), and the value of any bit of the interrupt factor register 2 is “1”. It is determined whether or not there is (S109). When the value of any bit of the interrupt factor register 2 is “1”, the CPU 10 reads the input control register 2 to check the state of the input signal (S110), and executes processing corresponding to each bit. Thereafter, the interrupt factor register 2 is cleared (S111), and the process returns to S108.

上記フローについて、本実施例の入出力制御回路がMFPに組み込まれた場合を例にして説明する。図6に示した入力1〜10の内の入力4の状態が変化したとする。ここで、入力4はMFPのフロントカバー開閉センサからの信号とする。入力4の状態が変化すると、割り込み要因レジスタ1のビット4の値が”1”になり、CPU10に対して集合割り込み信号が出力される。CPU10は、この集合割り込み信号を検出すると、割り込み要因レジスタ1及び2をリードし、どの入力信号が変化したかを特定する。入力信号を特定した後、入力制御レジスタ1をリードして、現在入力4が”0”又は”1”のどちらの状態にあるかを確認する。状態を確認した後、対応した処理(ここでは「フロントカバーが開いています」といった表示処理)を行い、最後に割り込み要因クリアレジスタ1のビット4に”1”を書き込むことによって割り込み要因レジスタ1をクリアする。   The above flow will be described by taking as an example a case where the input / output control circuit of this embodiment is incorporated in an MFP. Assume that the state of the input 4 among the inputs 1 to 10 shown in FIG. 6 has changed. Here, the input 4 is a signal from the front cover opening / closing sensor of the MFP. When the state of the input 4 changes, the value of bit 4 of the interrupt factor register 1 becomes “1”, and a collective interrupt signal is output to the CPU 10. When detecting the collective interrupt signal, the CPU 10 reads the interrupt factor registers 1 and 2 and specifies which input signal has changed. After specifying the input signal, the input control register 1 is read to check whether the input 4 is currently in the “0” or “1” state. After checking the status, perform the corresponding processing (here, “front cover is open” display processing), and finally write “1” to bit 4 of interrupt factor clear register 1 to set interrupt factor register 1 clear.

次に、出力拡張制御(出力制御用のIO拡張デバイス50の制御)について、図9及び図10のフローチャート図を参照して説明する。出力拡張IO制御は、データの書き込みと出力値の確認(読み出し)とで構成される。   Next, output expansion control (control of the IO expansion device 50 for output control) will be described with reference to the flowcharts of FIGS. The output expansion IO control includes data writing and output value confirmation (reading).

データの書き込みでは、CPU10によるライトアクセスにより、CPLD1及びCPLD2の双方の出力制御レジスタにデータが書き込まれる(S201)。この時、CPLD2からは信号が出力されないため、CPLD2から出力される出力信号のみが変化する(S202)。また、出力値の確認では、CPU10は出力制御レジスタをリードする(S301)。この時、CPLD2にはリード信号が入力されないため、CPLD1がCPLD2に代わって出力制御レジスタの値を返す(S302)。   In the data writing, data is written to the output control registers of both CPLD1 and CPLD2 by the write access by the CPU 10 (S201). At this time, since no signal is output from CPLD2, only the output signal output from CPLD2 changes (S202). In confirming the output value, the CPU 10 reads the output control register (S301). At this time, since no read signal is input to CPLD2, CPLD1 returns the value of the output control register instead of CPLD2 (S302).

上記フローについて、具体例を挙げて説明する。図6に示した出力0の状態を”1”から”0”に変化させたいとする。ここで、出力0の信号は、あるデバイスの電源をOFFするための制御信号とする。CPU10は、出力制御レジスタ1のビット0に”0”を書き込む。このとき、CPLD1内の出力制御レジスタの値も同時に書き換えられる。CPLD2は出力制御レジスタ1のビット0が”0”に変化したのを受けて、CPLD2から出力される出力0の信号が”0”に変化する。   The above flow will be described with a specific example. Assume that the state of output 0 shown in FIG. 6 is to be changed from “1” to “0”. Here, the signal of output 0 is a control signal for turning off the power of a certain device. The CPU 10 writes “0” in bit 0 of the output control register 1. At this time, the value of the output control register in CPLD1 is also rewritten at the same time. In response to the bit 0 of the output control register 1 being changed to “0”, the CPLD 2 changes the output 0 signal output from the CPLD 2 to “0”.

CPU10が出力0の信号が正しく変化したかを確認する場合、出力制御レジスタに対してリードする。本実施例の構成ではCPLD2にはリード信号が接続されていないため、CPLD2がリード要求に対して出力制御レジスタのレジスタ値を応答することができない。しかしながら、CPLD1の出力制御レジスタにはCPLD2の出力制御レジスタと同じ値が保持されているため、CPLD1がレジスタ値を返すことができる。これにより、CPU10は、実際はCPLD2から出力されている出力制御レジスタのレジスタ値をCPLD1から読み出して確認することができる。   When the CPU 10 confirms whether the output 0 signal has changed correctly, it reads the output control register. In the configuration of this embodiment, since the read signal is not connected to CPLD2, CPLD2 cannot respond to the register value of the output control register in response to the read request. However, since the output control register of CPLD1 holds the same value as the output control register of CPLD2, CPLD1 can return the register value. Thereby, the CPU 10 can read and confirm the register value of the output control register actually output from the CPLD2 from the CPLD1.

なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、入出力制御回路の構成や制御は適宜変更可能である。   The present invention is not limited to the above embodiment, and the configuration and control of the input / output control circuit can be changed as appropriate without departing from the spirit of the present invention.

例えば、上記実施例では、CPU10は3チャンネルのパラレルバスを有し、チャンネル1にデバイスA、チャンネル2にデバイスB、チャンネル3にデバイスC1、C2が接続される構成としたが、バスの同一チャンネル上に、入力制御用のIO拡張デバイス40と出力制御用のIO拡張デバイス50とが接続される限りにおいて、CPU10が有するバスの数や各チャンネルに接続されるデバイスは任意である。   For example, in the above embodiment, the CPU 10 has a three-channel parallel bus, and device A is connected to channel 1, device B is connected to channel 2, and devices C1 and C2 are connected to channel 3. Further, as long as the input control IO expansion device 40 and the output control IO expansion device 50 are connected, the number of buses of the CPU 10 and the devices connected to the respective channels are arbitrary.

本発明は、バスの同一チャンネル上に複数のIO拡張デバイスが接続された入出力制御回路及び当該入出力制御回路における複数のIO拡張デバイスの同期制御方法に利用可能である。   The present invention can be used for an input / output control circuit in which a plurality of IO expansion devices are connected on the same channel of a bus, and a synchronization control method for a plurality of IO expansion devices in the input / output control circuit.

10 CPU
20 Nor-Flashメモリ
30 Nor-Flashメモリ
40 入力制御用のIO拡張デバイス
41 レジスタ制御部
42 入力制御レジスタ
43 出力制御レジスタ
50 出力制御用のIO拡張デバイス
51 レジスタ制御部
52 入力制御レジスタ
53 出力制御レジスタ
10 CPU
20 Nor-Flash memory 30 Nor-Flash memory 40 IO expansion device for input control 41 Register control unit 42 Input control register 43 Output control register 50 IO expansion device for output control 51 Register control unit 52 Input control register 53 Output control register

Claims (14)

CPUの特定バスの同一チャンネル上に、複数のIO拡張デバイスが接続された入出力制御回路であって、
前記複数のIO拡張デバイスは、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとで構成され、
各々の前記IO拡張デバイスは、同一回路で構成されたレジスタ制御部を有し、
前記出力制御用のIO拡張デバイスには、リード用の制御信号が入力されておらず、
前記CPUからのライトアクセスでは、前記入力制御用のIO拡張デバイス及び前記出力制御用のIO拡張デバイスに、前記CPUから出力されるデータが書き込まれ、
前記CPUからのリードアクセスでは、前記入力制御用のIO拡張デバイスのみが、前記レジスタ制御部が管理するレジスタの値を応答出力する、
ことを特徴とする入出力制御回路。
An input / output control circuit in which a plurality of IO expansion devices are connected to the same channel of a specific bus of a CPU,
The plurality of IO expansion devices are configured with an IO expansion device for input control and an IO expansion device for output control,
Each of the IO expansion devices has a register control unit configured with the same circuit,
No read control signal is input to the output control IO expansion device,
In the write access from the CPU, the data output from the CPU is written to the IO expansion device for input control and the IO expansion device for output control.
In the read access from the CPU, only the IO expansion device for input control responds and outputs the value of the register managed by the register control unit.
An input / output control circuit characterized by that.
前記ライトアクセスでは、前記入力制御用のIO拡張デバイスの前記レジスタ制御部が管理するレジスタ、及び、前記出力制御用のIO拡張デバイスの前記レジスタ制御部が管理するレジスタに、前記データが書き込まれ、
前記リードアクセスでは、前記CPUは、前記入力制御用のIO拡張デバイスの前記レジスタの値を読み込むことにより、前記出力制御用のIO拡張デバイスの前記レジスタに書き込まれた前記データを確認できる、
ことを特徴とする請求項1に記載の入出力制御回路。
In the write access, the data is written to a register managed by the register control unit of the IO expansion device for input control and a register managed by the register control unit of the IO expansion device for output control,
In the read access, the CPU can check the data written in the register of the output control IO expansion device by reading the value of the register of the input control IO expansion device.
The input / output control circuit according to claim 1.
各々の前記IO拡張デバイスは、外部から入力される入力信号の変化を検出し、前記入力信号が変化したら、割り込み信号を前記CPUに通知する割り込みコントローラ機能を有する、
ことを特徴とする請求項1又は2に記載の入出力制御回路。
Each of the IO expansion devices has an interrupt controller function that detects a change in an input signal input from the outside and notifies the CPU of an interrupt signal when the input signal changes.
The input / output control circuit according to claim 1 or 2.
前記入力制御用のIO拡張デバイスに複数の入力信号が入力されており、
前記入力制御用のIO拡張デバイスの前記割り込みコントローラ機能は、各々の入力信号の状態に応じた値を特定レジスタの各ビットに書き込み、いずれかのビットの値が変化したら、集合割り込み信号を前記CPUに通知し、
前記CPUは、前記集合割り込み信号を受信した後、前記特定レジスタの各ビットの値を読み込むことにより、状態が変化した入力信号を特定できる、
ことを特徴とする請求項3に記載の入出力制御回路。
A plurality of input signals are input to the IO control device for input control,
The interrupt controller function of the IO expansion device for input control writes a value corresponding to the state of each input signal to each bit of the specific register, and when the value of any bit changes, the collective interrupt signal is sent to the CPU Notify
The CPU can identify an input signal whose state has changed by reading the value of each bit of the specific register after receiving the collective interrupt signal.
The input / output control circuit according to claim 3.
前記CPUは、前記特定レジスタとは異なる他のレジスタの所定のビットに所定の値を書き込むことにより、前記他のレジスタの前記所定のビットに対応する前記特定レジスタのビットの値を初期化できる、
ことを特徴とする請求項4に記載の入出力制御回路。
The CPU can initialize a value of a bit of the specific register corresponding to the predetermined bit of the other register by writing a predetermined value to a predetermined bit of another register different from the specific register.
The input / output control circuit according to claim 4.
CPUの特定バスの同一チャンネル上に、複数のIO拡張デバイスが接続された入出力制御回路であって、
前記複数のIO拡張デバイスは、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとで構成され、
各々の前記IO拡張デバイスは、同一回路で構成されたレジスタ制御部を有し、
前記入力制御用のIO拡張デバイスには、ライト用の制御信号が入力されておらず、前記出力制御用のIO拡張デバイスに入力されるリード用の制御信号は、当該出力制御用のIO拡張デバイス内で非アクティブな論理レベルに固定されており、
前記CPUからのライトアクセスでは、前記出力制御用のIO拡張デバイスのみに、前記CPUから出力されるデータが書き込まれ、
前記CPUからのリードアクセスでは、アクティブなリード用の制御信号が入力される前記入力制御用のIO拡張デバイスのみが、前記レジスタ制御部が管理するレジスタの値を応答出力する、
ことを特徴とする入出力制御回路。
An input / output control circuit in which a plurality of IO expansion devices are connected to the same channel of a specific bus of a CPU,
The plurality of IO expansion devices are configured with an IO expansion device for input control and an IO expansion device for output control,
Each of the IO expansion devices has a register control unit configured with the same circuit,
No write control signal is input to the input control IO expansion device, and the read control signal input to the output control IO expansion device is the output control IO expansion device. Is fixed to an inactive logic level within
In write access from the CPU, data output from the CPU is written only in the IO expansion device for output control.
In the read access from the CPU, only the IO control device for input control to which an active read control signal is input responds and outputs the value of the register managed by the register control unit.
An input / output control circuit characterized by that.
各々の前記IO拡張デバイスは、外部から入力される入力信号の変化を検出し、前記入力信号が変化したら、割り込み信号を前記CPUに通知する割り込みコントローラ機能を有する、
ことを特徴とする請求項6に記載の入出力制御回路。
Each of the IO expansion devices has an interrupt controller function that detects a change in an input signal input from the outside and notifies the CPU of an interrupt signal when the input signal changes.
The input / output control circuit according to claim 6.
CPUの特定バスの同一チャンネル上に、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとで構成される、複数のIO拡張デバイスが接続された入出力制御回路における前記複数のIO拡張デバイスの同期制御方法であって、
各々のIO拡張デバイスに、同一回路で構成されたレジスタ制御部を設け、
前記出力制御用のIO拡張デバイスには、リード用の制御信号を入力せず、
前記CPUからのライトアクセスでは、前記入力制御用のIO拡張デバイス及び前記出力制御用のIO拡張デバイスに、前記CPUから出力されるデータを書き込み、
前記CPUからのリードアクセスでは、前記入力制御用のIO拡張デバイスのみが、前記レジスタ制御部が管理するレジスタの値を応答出力する、
ことを特徴とする同期制御方法。
The plurality of IO expansions in an input / output control circuit in which a plurality of IO expansion devices are connected to each other on the same channel of a specific bus of the CPU, the IO expansion devices for input control and the IO expansion devices for output control. A device synchronization control method comprising:
Each IO expansion device is provided with a register control unit composed of the same circuit,
The output control IO expansion device does not input a read control signal,
In the write access from the CPU, the data output from the CPU is written in the IO expansion device for input control and the IO expansion device for output control.
In the read access from the CPU, only the IO expansion device for input control responds and outputs the value of the register managed by the register control unit.
A synchronization control method characterized by the above.
前記ライトアクセスでは、前記入力制御用のIO拡張デバイスの前記レジスタ制御部が管理するレジスタ、及び、前記出力制御用のIO拡張デバイスの前記レジスタ制御部が管理するレジスタに、前記データを書き込み、
前記リードアクセスでは、前記CPUは、前記入力制御用のIO拡張デバイスの前記レジスタの値を読み込むことにより、前記出力制御用のIO拡張デバイスの前記レジスタに書き込まれた前記データを確認する、
ことを特徴とする請求項8に記載の同期制御方法。
In the write access, the data is written to a register managed by the register control unit of the IO expansion device for input control and a register managed by the register control unit of the IO expansion device for output control,
In the read access, the CPU confirms the data written in the register of the output control IO expansion device by reading the value of the register of the input control IO expansion device.
The synchronization control method according to claim 8, wherein:
各々の前記IO拡張デバイスに割り込みコントローラ機能を設け、
前記入力制御用のIO拡張デバイスの前記割り込みコントローラ機能は、外部から入力される入力信号の変化を検出し、前記入力信号が変化したら、割り込み信号を前記CPUに通知する、
ことを特徴とする請求項8又は9に記載の同期制御方法。
Provide an interrupt controller function for each IO expansion device,
The interrupt controller function of the IO control device for input control detects a change in an input signal input from the outside, and notifies the CPU of an interrupt signal when the input signal changes.
The synchronous control method according to claim 8 or 9, characterized in that
前記入力制御用のIO拡張デバイスに複数の入力信号が入力される場合、
前記入力制御用のIO拡張デバイスの前記割り込みコントローラ機能は、特定レジスタの各ビットに、各々の入力信号の状態に応じた値を書き込み、いずれかのビットの値が変化したら、集合割り込み信号を前記CPUに通知し、
前記CPUは、前記集合割り込み信号を受信した後、前記特定レジスタの値を読み込むことにより、状態が変化した入力信号を特定する、
ことを特徴とする請求項10に記載の同期制御方法。
When a plurality of input signals are input to the IO control device for input control,
The interrupt controller function of the IO expansion device for input control writes a value corresponding to the state of each input signal to each bit of the specific register, and when the value of any bit changes, the collective interrupt signal is Notify the CPU,
The CPU specifies the input signal whose state has changed by reading the value of the specific register after receiving the collective interrupt signal.
The synchronous control method according to claim 10.
前記CPUは、前記特定レジスタとは異なる他のレジスタの所定のビットに所定の値を書き込むことにより、前記他のレジスタの前記所定のビットに対応する前記特定レジスタのビットの値を初期化する、
ことを特徴とする請求項11に記載の同期制御方法。
The CPU initializes a value of a bit of the specific register corresponding to the predetermined bit of the other register by writing a predetermined value to a predetermined bit of another register different from the specific register.
The synchronization control method according to claim 11, wherein:
CPUの特定バスの同一チャンネル上に、入力制御用のIO拡張デバイスと出力制御用のIO拡張デバイスとで構成される、複数のIO拡張デバイスが接続された入出力制御回路における前記複数のIO拡張デバイスの同期制御方法であって、
各々の前記IO拡張デバイスに、同一回路で構成されたレジスタ制御部を設け、
前記入力制御用のIO拡張デバイスには、ライト用の制御信号を入力せず、かつ、前記出力制御用のIO拡張デバイスに入力するリード用の制御信号を、当該出力制御用のIO拡張デバイス内で非アクティブな論理レベルに固定し、
前記CPUからのライトアクセスでは、前記出力制御用のIO拡張デバイスのみに、前記CPUから出力されるデータを書き込み、
前記CPUからのリードアクセスでは、アクティブなリード用の制御信号が入力される前記入力制御用のIO拡張デバイスのみが、前記レジスタ制御部が管理するレジスタの値を応答出力する、
ことを特徴とする同期制御方法。
The plurality of IO expansions in an input / output control circuit in which a plurality of IO expansion devices are connected to each other on the same channel of a specific bus of the CPU, the IO expansion devices for input control and the IO expansion devices for output control. A device synchronization control method comprising:
Each of the IO expansion devices is provided with a register control unit configured with the same circuit,
A write control signal is not input to the input control IO expansion device, and a read control signal input to the output control IO expansion device is input to the output control IO expansion device. To the inactive logic level,
In the write access from the CPU, the data output from the CPU is written only in the IO expansion device for output control.
In the read access from the CPU, only the IO control device for input control to which an active read control signal is input responds and outputs the value of the register managed by the register control unit.
A synchronization control method characterized by the above.
各々の前記IO拡張デバイスに割り込みコントローラ機能を設け、
前記入力制御用のIO拡張デバイスの前記割り込みコントローラ機能は、外部から入力される入力信号の変化を検出し、前記入力信号が変化したら、割り込み信号を前記CPUに通知する、
ことを特徴とする請求項13に記載の同期制御方法。
Provide an interrupt controller function for each IO expansion device,
The interrupt controller function of the IO control device for input control detects a change in an input signal input from the outside, and notifies the CPU of an interrupt signal when the input signal changes.
The synchronous control method according to claim 13, wherein:
JP2013145144A 2013-07-11 2013-07-11 I / O control circuit and synchronization control method in I / O control circuit Active JP6112412B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013145144A JP6112412B2 (en) 2013-07-11 2013-07-11 I / O control circuit and synchronization control method in I / O control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013145144A JP6112412B2 (en) 2013-07-11 2013-07-11 I / O control circuit and synchronization control method in I / O control circuit

Publications (2)

Publication Number Publication Date
JP2015018408A JP2015018408A (en) 2015-01-29
JP6112412B2 true JP6112412B2 (en) 2017-04-12

Family

ID=52439341

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013145144A Active JP6112412B2 (en) 2013-07-11 2013-07-11 I / O control circuit and synchronization control method in I / O control circuit

Country Status (1)

Country Link
JP (1) JP6112412B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111752188A (en) * 2020-05-28 2020-10-09 南京南瑞继保电气有限公司 IO configuration method and system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6160822B2 (en) * 2013-08-09 2017-07-12 コニカミノルタ株式会社 I / O expansion device group and I / O expansion device
CN113704157B (en) * 2021-08-04 2024-04-02 威创集团股份有限公司 System for controlling multipath reset signals with different levels based on bus

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5864534A (en) * 1981-10-14 1983-04-16 Fuji Electric Co Ltd Data transfer system of computer device
JPH11250007A (en) * 1998-03-05 1999-09-17 Hitachi Ltd Serial access system and device used for the same
JP2004341683A (en) * 2003-05-14 2004-12-02 Sony Corp Data bus communication system and data bus communication control method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111752188A (en) * 2020-05-28 2020-10-09 南京南瑞继保电气有限公司 IO configuration method and system

Also Published As

Publication number Publication date
JP2015018408A (en) 2015-01-29

Similar Documents

Publication Publication Date Title
USRE44270E1 (en) System for providing access of multiple data buffers to a data retaining and processing device
US10140242B2 (en) General purpose input/output (GPIO) signal bridging with I3C bus interfaces and virtualization in a multi-node network
CN100405352C (en) Apparatus for interconnecting a plurality of process nodes by serial bus
JP5209461B2 (en) Data transfer between devices in an integrated circuit
US8700835B2 (en) Computer system and abnormality detection circuit
KR20160060527A (en) Pci device and pci system including the same
US8775712B2 (en) Bus connecting device for connecting host with external device
JP2011070655A (en) Information processing apparatus, memory dump system and memory dump method
JP6112412B2 (en) I / O control circuit and synchronization control method in I / O control circuit
JP2003296267A (en) Bus system and information processing system including bus system
CN115208752A (en) Network device configuration based on slave device type
JP2005293596A (en) Arbitration of data request
CN115562738A (en) Port configuration method, component and hard disk expansion device
KR100938612B1 (en) Transfer device, information processing apparatus having transfer device, and controlling method
JP2006126938A (en) Data transfer system and its data transfer method
US7716392B2 (en) Computer system having an I/O module directly connected to a main storage for DMA transfer
US9442788B2 (en) Bus protocol checker, system on chip including the same, bus protocol checking method
JP2007508620A (en) Communication steering for use in a multi-master shared resource system
JP2003022212A (en) Bi-directional ram
JP5640941B2 (en) Process data monitoring system
JP2005010966A (en) Lsi device
JP6535516B2 (en) Multi-programmable device system and control method thereof
JP2001027920A (en) Bus bridge circuit and its power management method
JP6213029B2 (en) Communication device and communication system
JP2014026454A (en) Bridge circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160328

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170131

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170302

R150 Certificate of patent or registration of utility model

Ref document number: 6112412

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150