JP4363431B2 - Data transfer method - Google Patents

Data transfer method Download PDF

Info

Publication number
JP4363431B2
JP4363431B2 JP2006238436A JP2006238436A JP4363431B2 JP 4363431 B2 JP4363431 B2 JP 4363431B2 JP 2006238436 A JP2006238436 A JP 2006238436A JP 2006238436 A JP2006238436 A JP 2006238436A JP 4363431 B2 JP4363431 B2 JP 4363431B2
Authority
JP
Japan
Prior art keywords
data
memory
control
controller
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006238436A
Other languages
Japanese (ja)
Other versions
JP2006344244A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006238436A priority Critical patent/JP4363431B2/en
Publication of JP2006344244A publication Critical patent/JP2006344244A/en
Application granted granted Critical
Publication of JP4363431B2 publication Critical patent/JP4363431B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明はプログラマブルコントローラのように、制御装置と制御対象となる被制御装置との間に一定間隔でデータ転送が必要な計算機システムに関する。   The present invention relates to a computer system that requires data transfer at regular intervals between a control device and a controlled device to be controlled, such as a programmable controller.

従来より、産業設備を構成する様々な装置を制御するプログラマブルコントローラでは、各装置の状態を報告するセンサからの情報を取り込み、各装置のアクチュエータに指示を与えることにより産業設備を制御している。このプログラマブルコントローラ上で実行される制御プログラムを作り易くすることを目的として、プログラマブルコントローラ内に制御メモリと呼ばれるメモリを置き、この制御メモリ上の各ビットに制御対象となる各装置のセンサ情報やアクチュエータ情報をマッピングする。プログラマブルコントローラは、ネットワークを介して定期的に各装置と通信を行い、センサ情報は装置側からプログラマブルコントローラ側に、アクチュエータ情報は反対にプログラマブルコントローラ側から装置側にデータを転送することにより、この制御メモリの内容と装置のセンサ情報やアクチュエータ情報の状態との一致を図っている。このような特徴を持つ制御メモリをプログラマブルコントローラが備えることにより、制御プログラムは、この制御メモリをアクセスするだけで各装置の制御を行うことが可能となる。   Conventionally, in a programmable controller that controls various devices constituting an industrial facility, the industrial facility is controlled by taking in information from a sensor that reports the state of each device and giving an instruction to an actuator of each device. For the purpose of facilitating the creation of a control program executed on the programmable controller, a memory called a control memory is placed in the programmable controller, and sensor information and actuators of each device to be controlled are stored in each bit on the control memory. Map information. The programmable controller periodically communicates with each device via a network, and sensor information is transferred from the device side to the programmable controller side, and actuator information is transferred from the programmable controller side to the device side. The contents of the memory are matched with the state of the sensor information and actuator information of the device. By providing the control memory with such characteristics in the programmable controller, the control program can control each device only by accessing the control memory.

ところが、近年になって産業設備の大型化高性能化に伴いプログラマブルコントローラの制御対象となる装置数の増加と共に各装置におけるセンサ数やアクチュエータ数が増加した。これにより、プログラマブルコントローラと各装置との間でネットワークを流れるデータ転送量が増加すると共に制御プログラムの処理も増加して、制御サイクルと呼ばれる制御プログラムが実行の開始から次の制御プログラムの実行が開始されるまでの時間が長くなった。この制御サイクルを短縮するため、制御プログラムの実行時間の短縮に加えてプログラマブルコントローラと各装置との間のデータ転送時間を短縮することが必要となった。   However, in recent years, with the increase in size and performance of industrial equipment, the number of sensors and actuators in each device has increased with the increase in the number of devices to be controlled by the programmable controller. As a result, the amount of data transferred through the network between the programmable controller and each device increases and the processing of the control program also increases, so that the control program called a control cycle starts executing from the start of execution of the next control program It took a long time to be done. In order to shorten the control cycle, it is necessary to shorten the data transfer time between the programmable controller and each device in addition to shortening the execution time of the control program.

このデータ転送時間を短縮する方法として、高速なネットワークを使用する方法とデータ転送の効率化を図る方法の2つが挙げられる。   There are two methods for shortening the data transfer time: a method using a high-speed network and a method for improving the efficiency of data transfer.

高速ネットワークを使用する方法はプログラマブルコントローラと各装置との間で行われるデータ転送が高速となるため、データ転送時間の短縮を実現できる。また、データ転送の効率化としては制御メモリをセンサ情報を格納するセンサ領域とアクチュエータ情報を格納するアクチュエータ領域との2つに分割する方法がある。制御メモリ上にセンサ情報とアクチュエータ情報が混在していると制御メモリの各アドレスのデータがセンサ情報かアクチュエータ情報かを示すテーブルがプログラマブルコントローラ内に必要となる。この場合、プログラムコントローラと各装置間の転送時にそのテーブルをひかなければならないため、余分なオーバーヘッドがかかってしまう。また、装置側でプログラマブルコントローラから送られて来た情報がセンサ情報であるかアクチュエータ情報であるかの判定を行う場合にはプログラマブルコントローラは余計なデータであるセンサ情報までも装置側に転送しなければならないため、データ転送量が増加して転送時間がかかってしまう。同様にセンサ情報に関しても同じことが言える。しかし制御メモリの領域を分割することでこのセンサ情報かアクチュエータ情報であるかの判定のオーバーヘッドやプログラマブルコントローラと各装置との間に余計なデータ転送を省くことができるため、プログラマブルコントローラと各装置との間のデータ転送時間の短縮が実現できる。   In the method using the high-speed network, the data transfer performed between the programmable controller and each device becomes high speed, so that the data transfer time can be shortened. In order to improve the efficiency of data transfer, there is a method in which the control memory is divided into a sensor area for storing sensor information and an actuator area for storing actuator information. If sensor information and actuator information are mixed on the control memory, a table indicating whether the data of each address in the control memory is sensor information or actuator information is required in the programmable controller. In this case, since the table has to be drawn at the time of transfer between the program controller and each device, extra overhead is applied. In addition, when determining whether the information sent from the programmable controller on the device side is sensor information or actuator information, the programmable controller must also transfer sensor information, which is extra data, to the device side. Therefore, the amount of data transfer increases and it takes a long transfer time. The same can be said for sensor information. However, by dividing the area of the control memory, it is possible to eliminate the overhead of determining whether it is sensor information or actuator information and unnecessary data transfer between the programmable controller and each device. Data transfer time can be shortened.

上記の通り、データ転送時間の高速化を図るためには高速なネットワークを使用する方法と、余計なオーバーヘッドやデータ転送を省くことにより転送効率を向上させる方法がある。   As described above, in order to increase the data transfer time, there are a method of using a high-speed network and a method of improving transfer efficiency by eliminating extra overhead and data transfer.

前者の高速なネットワークを使用する方法は高速なネットワーク自体が高価であり、速い転送速度を実現するため高速なアクセスタイムを持つメモリを制御メモリとして使用しなければならないため、プログラマブルコントローラ本体が高価となってしまう。   In the former method using a high-speed network, the high-speed network itself is expensive, and in order to realize a high transfer speed, a memory having a high access time must be used as a control memory. turn into.

次にデータ転送の効率化の方法では制御メモリをセンサ領域とアクチュエータ領域とに2分割するため同じ装置に属するセンサ情報とアクチュエータ情報を、ひと固まりとして制御メモリ上の連続したアドレスに配置することができないため、各装置の情報の管理が装置単位で行えず、たくさんの装置を制御する場合にはユーザーインターフェースが悪くなり、制御プログラムの作成やプログラマブルコントローラ上での制御プログラムの動作を確認することが困難になる。   Next, in the method of improving data transfer efficiency, since the control memory is divided into the sensor area and the actuator area, the sensor information and the actuator information belonging to the same device can be arranged as a group at consecutive addresses on the control memory. Because it is not possible to manage the information of each device, it is not possible to manage each device, and when many devices are controlled, the user interface deteriorates, and it is possible to check the creation of the control program and the operation of the control program on the programmable controller. It becomes difficult.

また、もう1つの問題としてコストの問題がある。制御する対象となる機器が増加することによって、センサやアクチュエータ数が増加し、制御メモリの容量が多くなる。また、被制御回路をディジタルではなくアナログで制御する場合、アナログ信号はA/D(アナログ/ディジタル)変換器を用いて12ビットや16ビットのディジタル信号に変換する。しかし、制御メモリのデータバスが8ビットの場合、16ビットで構成されるアナログデータへのアクセスは1バイトごとの2回のアクセスになってしまう。もし、コントローラからの1回目のアクセスと2回目のアクセスの間に通信プロセッサからのアクセスが入り込み、アナログデータの上位8ビットと下位8ビットでデータの同時性が損なわれると、正しく制御が行われない問題が発生する。そのため、制御メモリのデータバスもそれに合わせて16ビットバスを用いるものも多い。このように、コントローラを構成する
LSIやメモリのピン数が増大し、そのため大きなLSIパッケージが必要となり、コストが高くなってしまうという問題があった。
Another problem is cost. As the number of devices to be controlled increases, the number of sensors and actuators increases, and the capacity of the control memory increases. When the controlled circuit is controlled by analog instead of digital, the analog signal is converted into a 12-bit or 16-bit digital signal by using an A / D (analog / digital) converter. However, when the data bus of the control memory is 8 bits, access to analog data composed of 16 bits is performed twice for each byte. If the access from the communication processor enters between the first access and the second access from the controller, and data simultaneity is lost in the upper 8 bits and lower 8 bits of the analog data, the control is performed correctly. No problems occur. Therefore, many control memory data buses use 16-bit buses accordingly. As described above, the number of pins of the LSI and the memory constituting the controller is increased, so that there is a problem that a large LSI package is required and the cost is increased.

上記問題点に鑑みて、本発明では低コストで制御装置と被制御装置間のデータ転送効率を向上させた制御システムを提供することを目的とする。   In view of the above problems, an object of the present invention is to provide a control system that improves the data transfer efficiency between a control device and a controlled device at low cost.

上記目的を達成するために、本発明は、少なくともプロセス状態や制御データを格納したメモリと、上記メモリに格納されたプロセス情報に基づいて制御データを生成するコントローラと、上記メモリにプロセス情報を格納する動作を行うと共に、上記メモリに格納された制御データ読み出す動作を行うプロセッサと、上記メモリ、上記コントローラ及び上記プロセッサと接続され、上記コントローラのアクセスデータ及び上記プロセッサのアクセスデータを同時期に格納可能に構成されて複数のビットデータを保持するレジスタを有し、上記コントローラ及びプロセッサからのリードアクセスに対して、上記メモリと接続されるバスのサイズの制約に対して、上記リードアクセスのデータサイズで必要となる回数に分けて、上記リードアクセスの対象となるデータを連続的に上記メモリから読み出し、上記複数に分けて読み出したデータは上記コントローラからのデータか上記プロセッサからのデータかを識別できるようにレジスタに格納し、上記複数に分けての連続的なレジスタへの格納と並列的で少なくともその一部は時間的に重なるように、上記レジスタに格納されたデータを上記コントローラ及びプロセッサのうちのアクセスを受けた方に転送するデータ制御装置とを有するように構成した。 In order to achieve the above object , the present invention provides a memory storing at least a process state and control data, a controller for generating control data based on the process information stored in the memory, and storing process information in the memory. Connected to the memory, the controller, and the processor, and the controller access data and the processor access data can be stored at the same time. Configured to hold a plurality of bit data, and with respect to read access from the controller and processor, the data size of the read access corresponds to the restriction on the size of the bus connected to the memory. The above lead acces are divided into the required number of times. The data to be processed is continuously read from the memory, divided into a plurality of data, stored in a register so that the data from the controller or the processor can be identified, and divided into the plurality of data. Data control for transferring the data stored in the register to the accessed one of the controller and processor so that at least part of the data is stored in parallel with at least a part of the data stored in the continuous register. Device.

上記目的を達成するために、本発明は、少なくともプロセス状態や制御データを格納したメモリと、上記メモリに格納されたプロセス情報に基づいて制御データを生成するコントローラと、上記メモリにプロセス情報を格納する動作を行うと共に、上記メモリに格納された制御データ読み出す動作を行うプロセッサと、上記メモリ、上記コントローラ及び上記プロセッサと接続され、上記コントローラのアクセスデータ及び上記プロセッサのアクセスデータを同時期に格納可能に構成されて複数のビットデータを保持するレジスタを有し、上記メモリと接続されるバスサイズの制約を超えるデータサイズである上記コントローラ或いはプロセッサからのライトアクセスに対して、上記ライトアクセスのデータサイズで必要となる上記メモリへの転送回数分に分けられるように上記ライトアクセスの対象となる上記ライトデータを上記レジスタに格納し、上記格納したライトデータは上記コントローラからのデータか上記プロセッサからのデータかを識別できるように格納しており、前記上記メモリへ転送するために分けられるライトデータのいずれもが上記レジスタに格納された後に、上記レジスタに格納されたライトデータを、分けられる単位で順々に上記メモリに書き込むデータ制御装置とを有するように構成したIn order to achieve the above object , the present invention provides a memory storing at least a process state and control data, a controller for generating control data based on the process information stored in the memory, and storing process information in the memory. Connected to the memory, the controller, and the processor, and the controller access data and the processor access data can be stored at the same time. The write access data size for a write access from the controller or processor, which has a register configured to hold a plurality of bit data and has a data size that exceeds a bus size constraint connected to the memory To the memory required for The write data subject to the write access is stored in the register so that it can be divided into the number of transfers, and the stored write data is stored so that it can be identified whether the data is from the controller or the processor. Data control for writing the write data stored in the register to the memory sequentially in divided units after any of the write data to be transferred to the memory is stored in the register. Device .

以上のように、本発明では、産業システムを制御するコントローラにおいて、プロセスデータ制御装置が動作することにより、コントローラに対してデータの同時性を保証する。

As described above , in the present invention, the process data control device operates in the controller that controls the industrial system, thereby guaranteeing data simultaneity to the controller.

以下、本発明の説明を図1〜図27を用いて説明する。   Hereinafter, the present invention will be described with reference to FIGS.

図2は、プログラマブルコントローラを使用した制御システムを示したものである。制御システムは、制御装置1000,被制御装置2000,制御装置1000と被制御装置2000との間はネットワーク1200を介して接続されている。   FIG. 2 shows a control system using a programmable controller. In the control system, the control device 1000, the controlled device 2000, and the control device 1000 and the controlled device 2000 are connected via a network 1200.

制御装置1000は、内部に計算装置101,制御メモリ201,制御データ転送装置301,内部に内容更新判定装置4002を持つメモリコントローラ401からなる。また、被制御装置2000は、入出力装置2001,センサ2101,アクチュエータ2102,装置3000からなる。   The control device 1000 includes a calculation device 101, a control memory 201, a control data transfer device 301, and a memory controller 401 having a content update determination device 4002 inside. The controlled device 2000 includes an input / output device 2001, a sensor 2101, an actuator 2102, and a device 3000.

次に、制御装置1000と被制御装置2000との間のデータの流れを説明する。   Next, a data flow between the control device 1000 and the controlled device 2000 will be described.

制御装置1000と被制御装置2000との間を流れる情報は装置3000に取り付けられた1つ以上のセンサ2101からのセンサ情報と装置3000の動作を制御する1つ以上のアクチュエータ2102へのアクチュエータ情報である。また、制御装置1000内の制御メモリ201の各アドレスに、センサ2101からのセンサ情報やアクチュエータ2102へのアクチュエータ情報を割り当て、制御装置1000で実行される制御プログラムが特定のセンサからの情報が欲しい時には制御メモリ201の当該センサ情報が保持されているアドレスを読むことで当該センサ情報を得る。また、特定のアクチュエータを制御したいときには同様に制御メモリ201のそのアクチュエータ情報が保持されているアドレスにアクチュエータ情報を書き込むことで当該アクチュエータの制御を行う。また、センサ情報はセンサの種類によってビット長が異なり、1ビットをはじめ、数ビット長になるものまであり、データ長がさまざまであるため、センサ情報は入出力装置2001で、複数のセンサ情報を制御装置1000が処理しやすいバイト(8ビット)やワード(16ビット)等のアクセス単位にまとめ、アクセス単位ごとにネットワーク1200を介して制御装置1000に送られる。制御装置1000では被制御装置2000から送られるアクセス単位にまとめられたセンサ情報を制御メモリ201の該当するアドレスに書き込む。アクチュエータ情報についても、センサ情報と同様に複数のアクチュエータ情報をアクセス単位にまとめて、制御メモリの割り当てられたアドレスに書き込まれる。その後、アクチュエータ情報はネットワーク1200を介してアクセス単位ごとに被制御装置2000に転送され、入出力装置2001でアクセス単位にまとめられた複数のアクチュエータ情報をアクチュエータごとにデータを分割し、アクチュエータ2102に転送する。そして、アクチュエータ2102は、入出力装置2001から転送されたデータに基づいて装置
3000に対して動作を行う。以上のようにして、制御装置1000による被制御装置
2000の装置3000の制御が可能となる。
Information flowing between the control device 1000 and the controlled device 2000 is sensor information from one or more sensors 2101 attached to the device 3000 and actuator information to one or more actuators 2102 that control the operation of the device 3000. is there. Further, when the sensor information from the sensor 2101 or the actuator information to the actuator 2102 is assigned to each address of the control memory 201 in the control device 1000 and the control program executed by the control device 1000 wants information from a specific sensor. The sensor information is obtained by reading the address where the sensor information is stored in the control memory 201. Similarly, when it is desired to control a specific actuator, the actuator is controlled by writing the actuator information to an address in the control memory 201 where the actuator information is held. In addition, the bit length of sensor information varies depending on the type of sensor, including 1 bit and several bit lengths. Since the data length varies, the sensor information is input / output device 2001. The control device 1000 collects access units such as bytes (8 bits) and words (16 bits) that can be easily processed, and sends the access units to the control device 1000 via the network 1200 for each access unit. The control device 1000 writes the sensor information collected in the access unit sent from the controlled device 2000 to the corresponding address in the control memory 201. Similarly to the sensor information, a plurality of actuator information is grouped into access units, and the actuator information is written to the assigned address in the control memory. Thereafter, the actuator information is transferred to the controlled device 2000 for each access unit via the network 1200, and the plurality of actuator information collected in the access unit by the input / output device 2001 is divided for each actuator and transferred to the actuator 2102. To do. The actuator 2102 performs an operation on the device 3000 based on the data transferred from the input / output device 2001. As described above, the control device 1000 can control the device 3000 of the controlled device 2000.

ここで、被制御装置2000の例としてモータ制御を挙げて、図2における制御システム全体の動作を説明する。被制御装置2000のモータを装置3000,モータの回転数を調べるセンサ2101,モータに与える電流を制御する電流制御装置をアクチュエータ2102とする。   Here, taking the motor control as an example of the controlled device 2000, the operation of the entire control system in FIG. 2 will be described. A motor 3000 of the controlled device 2000 is a device 3000, a sensor 2101 for checking the rotation speed of the motor, and a current control device for controlling a current applied to the motor are an actuator 2102.

制御装置1000内の計算装置101で実行される制御プログラムは、センサ2101によりモータの回転数を読み取り、規定値と比較し、高ければアクチュエータ2102にモータへの供給電流を減らしてモータの回転数を下げるように指示し、反対に低ければアクチュエータ2102にモータへの供給電流を増やしてモータの回転数を上げるように指示する。このようにモータに与える電流を制御することによりモータの回転数を規定値になるように制御する。   The control program executed by the calculation device 101 in the control device 1000 reads the rotation speed of the motor by the sensor 2101 and compares it with a specified value. If it is higher, the supply current to the motor is reduced to the actuator 2102 to reduce the rotation speed of the motor. If it is low, the actuator 2102 is instructed to increase the motor current by increasing the current supplied to the motor. By controlling the current applied to the motor in this way, the number of revolutions of the motor is controlled to a specified value.

アクセス単位については、計算装置101が制御メモリ201から一度に読み出せるビット数であり、ここでは16ビットとする。   The access unit is the number of bits that the computing device 101 can read from the control memory 201 at a time, and is 16 bits here.

このモータ制御プログラムはラダー図により与えられる。図2におけるデータの流れは次のようになる。センサ2101はモータの回転数を測定し、アナログ値として入出力装置2001に出力する。入出力装置2001では、それをA/D(アナログ/ディジタル)変換器を介して16ビットのディジタルデータに変換する。変換されたモータの回転数のデータはネットワーク1200を介して制御装置1000に送られる。制御装置1000では次のようにして、アクチュエータ2102に対するアクチュエータ情報を計算する。制御データ転送装置301でディジタル化されたモータの回転数データを受信し、制御メモリ201のa番地に書き込む。計算装置101は制御メモリ201のa番地を読み出して、モータの回転数情報を入手する。次に規定値と、モータの回転数情報とを比較し、規定値に比べてモータの回転数が高いか低いかを判定し、モータへの電流制御装置であるアクチュエータ2102へのアクチュエータ情報を制御メモリ201に2ビットデータを書き込む。モータの回転数が規定値よりも高い場合にはモータへの供給電流を下げるために2ビット情報で10を、反対に低い場合にはモータへの供給電流を上げるために2ビット情報で01を、モータの回転数が規定値と同じならば00を制御メモリ201のb番地に書き込む。b番地に書き込まれたアクチュエータ2102へのアクチュエータ情報は制御データ転送装置301により読み出され、ネットワーク1200を介して被制御装置2000に送信する。   This motor control program is given by a ladder diagram. The data flow in FIG. 2 is as follows. The sensor 2101 measures the rotational speed of the motor and outputs it to the input / output device 2001 as an analog value. The input / output device 2001 converts it into 16-bit digital data via an A / D (analog / digital) converter. The converted rotational speed data of the motor is sent to the control device 1000 via the network 1200. The controller 1000 calculates actuator information for the actuator 2102 as follows. The control data transfer device 301 receives the digitized motor rotational speed data and writes it to the address a of the control memory 201. The calculation device 101 reads the address a in the control memory 201 and obtains the rotation speed information of the motor. Next, the specified value is compared with the rotation speed information of the motor, it is determined whether the rotation speed of the motor is higher or lower than the specified value, and the actuator information to the actuator 2102 which is a current control device for the motor is controlled. Write 2-bit data into the memory 201. When the number of rotations of the motor is higher than the specified value, 10 is set by 2-bit information to decrease the supply current to the motor, and when it is low, 01 is set by 2-bit information to increase the supply current to the motor. If the rotation speed of the motor is the same as the specified value, 00 is written in the address b of the control memory 201. Actuator information for the actuator 2102 written at address b is read by the control data transfer device 301 and transmitted to the controlled device 2000 via the network 1200.

被制御装置2000では、入出力装置2001が制御データ転送装置301によって送られたアクチュエータ情報を受信し、アクチュエータ2102にその受信したアクチュエータ情報を転送する。アクチュエータ2102は入出力装置2001から転送されたアクチュエータ情報が01ならばモータへの供給電流を減らし、反対にアクチュエータ情報が10ならばモータへの供給電流を増やす。このようにすることで、モータの回転数を規定値に保つことができる。   In the controlled device 2000, the input / output device 2001 receives the actuator information sent by the control data transfer device 301 and transfers the received actuator information to the actuator 2102. The actuator 2102 reduces the supply current to the motor if the actuator information transferred from the input / output device 2001 is 01, and conversely increases the supply current to the motor if the actuator information is 10. By doing in this way, the rotation speed of a motor can be kept at a regulation value.

次に、計算装置101と制御メモリ201の間のデータ転送について説明する。図1に示すように計算装置101はメモリコントローラ401を介して制御メモリ201とつながっている。図3に、このメモリコントローラ401の内部の構造を示す。メモリコントローラ401を介しての計算装置101から制御メモリ201へのアクセス方法はリード,ライト,リードモディファイライトの3種類ある。リードアクセスは制御メモリ201からデータを読み込むアクセス,ライトアクセスは制御メモリ201へのデータ書き込みアクセス,リードモディファイライトアクセスは制御メモリ201上の1ビットのみを書き換えるアクセスである。先述したアクチュエータ2102へのアクチュエータ情報は2ビットである。そのため、いま、同じb番地の他のビットに他のアクチュエータへのアクチュエータ情報が割り当てられていると、単にb番地にアクチュエータ2102へのアクチュエータ情報を書き込んでしまうと、他のアクチュエータ情報もいっしょに書き換えられてしまう。そこで、一度アクチュエータ2102のデータを含むb番地を制御メモリ
201から読み出し(リード)、そのうちのアクチュエータ2102へのデータの部分のみを書き換え(モディファイ)、書き換えたデータを制御メモリ201のb番地に書き戻す(ライト)処理を行うことにより、アクチュエータ2102への制御データのみを書き換えることができる。さらに、このメモリコントローラ401にはリードモディファイライトアクセス時に制御メモリ201から読み込んだデータと書き込むデータとを比較することにより、リードモディファイライトアクセスによって、データ内容が更新されたかを判定する機能である内容更新判定機能を有する。この内容更新判定機能により、制御データ転送装置301でのデータ転送時にデータの内容が更新されているデータのみを被制御装置2000に転送することができ、送信データの削減を実現でき、データ送信時間を短くすることができる。
Next, data transfer between the computing device 101 and the control memory 201 will be described. As shown in FIG. 1, the computing device 101 is connected to a control memory 201 via a memory controller 401. FIG. 3 shows the internal structure of the memory controller 401. There are three types of access methods from the computing device 101 to the control memory 201 via the memory controller 401: read, write, and read modify write. Read access is access to read data from the control memory 201, write access is data write access to the control memory 201, and read modify write access is access to rewrite only one bit on the control memory 201. The actuator information to the actuator 2102 described above is 2 bits. Therefore, if actuator information for another actuator is assigned to another bit at the same address b, if the actuator information for the actuator 2102 is simply written at address b, the other actuator information will be rewritten together. It will be. Therefore, the address b including the data of the actuator 2102 is once read (read) from the control memory 201, only the data portion to the actuator 2102 is rewritten (modified), and the rewritten data is written back to the address b of the control memory 201. By performing the (write) process, only the control data to the actuator 2102 can be rewritten. Further, the memory controller 401 has a function of determining whether the data content has been updated by the read-modify-write access by comparing the data read from the control memory 201 and the data to be written at the time of the read-modify-write access. Has a judgment function. With this content update determination function, it is possible to transfer only the data whose data content has been updated at the time of data transfer in the control data transfer device 301 to the controlled device 2000, so that the transmission data can be reduced, and the data transmission time Can be shortened.

次にメモリコントローラ401の構造について説明する。メモリコントローラ401にはラッチ4011,4012,4021,4022、2つの入力のうちどちらかを選択するセレクタ4201,2入力1出力であり、一方の入力がアクセス単位のビット幅で、もう一方の入力が1ビットで入力されたアクセス単位のうちの任意の1ビットをもう一方の入力である1ビットと置き換えるアクセス単位の出力を行うビットマージ4202,バスが双方向バスのため出力同士が衝突するバスファイトを防ぐための3状態バッファ4301,4302,4303,リードモディファイライト時のデータ内容が更新されたかを判定する内容更新判定装置4002,以上のリソースを制御しメモリコントローラとして動作させるシーケンサ4001から構成される。   Next, the structure of the memory controller 401 will be described. The memory controller 401 has latches 4011, 4012, 4021, 4022, selectors 4201, 2 inputs and 1 output for selecting one of the two inputs, one input having the bit width of the access unit, and the other input being the input. Bit merge 4202 that outputs an access unit that replaces any one bit in an access unit that is input in one bit with one bit that is the other input. Bus fight in which outputs collide because the bus is a bidirectional bus. 3 state buffers 4301, 4302, and 4303 for preventing data, a content update determination device 4002 for determining whether the data content at the time of read-modify-write has been updated, and a sequencer 4001 that controls the above resources and operates as a memory controller. .

計算装置101からのアドレス出力であるアドレスバス141はラッチ4011を介してアドレスバス241となり制御メモリ201のアドレス入力となる。同様に計算装置
101からのデータ入出力バス142はシーケンサ4001とラッチ4012を介してセレクタ4201,ビットマージ4202に接続され、セレクタ4201の出力は3状態バッファ4301を介して制御メモリのデータバス242に接続され、また、データバス
242はラッチ4021を介して3状態バッファ4302,ビットマージ4202,内容更新判定装置4002に接続されており、該3状態バッファ4302の出力は該データバス142に接続される。メモリ制御信号143はシーケンサ4001に入力され、制御メモリ201のメモリ制御信号244に変換される。双方向バスである内容更新判定ビットバス243への出力は内容更新判定装置4002の出力4131を3状態バッファ4303を介して出力され、入力はラッチ4022を介して内容更新判定装置4002に入力される。ビットマージ4202はラッチ4021の出力の任意の1ビットをラッチ4012の下位1ビットと置き換えてセレクタ4201に接続される。シーケンサ4001の出力である制御信号はラッチ4011,4012,4021,4022のラッチタイミング、3状態バッファ4301,4302,4303の状態(出力、ハイインピーダンス)、セレクタ4201のセレクト信号,ビットマージ4202のセレクト信号,内容更新判定装置
4002の判定イネーブル信号を出力する。
An address bus 141, which is an address output from the computing device 101, becomes an address bus 241 via a latch 4011 and serves as an address input to the control memory 201. Similarly, the data input / output bus 142 from the computing device 101 is connected to the selector 4201 and the bit merge 4202 via the sequencer 4001 and the latch 4012, and the output of the selector 4201 is connected to the data bus 242 of the control memory via the three-state buffer 4301. The data bus 242 is connected to the three-state buffer 4302, the bit merge 4202, and the content update determination device 4002 via the latch 4021, and the output of the three-state buffer 4302 is connected to the data bus 142. . The memory control signal 143 is input to the sequencer 4001 and converted into a memory control signal 244 of the control memory 201. The output to the content update determination bit bus 243 which is a bidirectional bus is output from the output 4131 of the content update determination device 4002 via the three-state buffer 4303, and the input is input to the content update determination device 4002 via the latch 4022. . The bit merge 4202 is connected to the selector 4201 by replacing any one bit of the output of the latch 4021 with the lower 1 bit of the latch 4012. The control signal which is the output of the sequencer 4001 is the latch timing of the latches 4011, 4012, 4021 and 4022, the state of the three-state buffers 4301, 4302 and 4303 (output, high impedance), the select signal of the selector 4201, and the select signal of the bit merge 4202 , The determination enable signal of the content update determination device 4002 is output.

メモリコントローラ401の動作を説明する。メモリコントローラ401にはリード・ライト・リードモディファイライトの3種類の動作が存在し、計算装置101からアドレスバス141,データバス142,メモリ制御信号143により起動する。   The operation of the memory controller 401 will be described. The memory controller 401 has three types of operations of read / write / read-modify-write, and is activated from the computing device 101 by an address bus 141, a data bus 142, and a memory control signal 143.

リードアクセスは計算装置101からアドレスをメモリ制御信号143からリード要求が出力されて起動する。シーケンサ4001はラッチ4011,4021にラッチ信号を、3状態バッファ4302へ出力信号を、他の3状態バッファ4301,4303にはハイインピーダンス信号、制御メモリ201へのメモリ制御信号244にリード信号を出力し、アドレスバス241へは計算装置101からのアドレス出力が出力される。制御メモリ201では、アドレスバス241で指定されたアドレスの内容のデータがデータバス
242に、内容更新ビット情報が内容更新ビットバス243に出力される。データバス
242の内容はラッチ4021,3状態バッファ4302を介してデータバス142に出力されリードアクセスは終了する。
The read access is started by outputting an address from the computing device 101 and a read request from the memory control signal 143. The sequencer 4001 outputs a latch signal to the latches 4011 and 4021, an output signal to the three-state buffer 4302, a high-impedance signal to the other three-state buffers 4301 and 4303, and a read signal to the memory control signal 244 to the control memory 201. The address output from the computing device 101 is output to the address bus 241. In the control memory 201, the data at the address specified by the address bus 241 is output to the data bus 242 and the content update bit information is output to the content update bit bus 243. The contents of the data bus 242 are output to the data bus 142 via the latches 4021 and 3-state buffer 4302, and the read access ends.

次にライトアクセスについて説明する。ライトアクセスは計算装置101からアドレスバス141にアドレスをデータバス142に書き込みデータを、メモリ制御信号143にライト要求を出力し、メモリコントローラ401が起動される。シーケンサ4001は、メモリ制御信号244にライト要求を、ラッチ4011,4012にラッチ信号を、セレクタ4201にラッチ4102側を選択させ、アドレスバス241,データバス242にそれぞれ、アドレスバス141,データバス142の内容を出力し、アドレスバス241で指定された番地にデータバス242の内容が書き込まれる。最後にリードモディファイライトアクセスについて説明する。計算装置101からアドレスバス141にアドレス、データバス142に図4に示すフォーマットを持つデータを、メモリ制御信号143にリードモディファイライト要求を出力されて、メモリコントローラ401が起動する。シーケンサ4001はまず、ラッチ4011,4012,4021,4022にラッチ信号を、制御メモリ201へのメモリ制御信号244にリード信号を出力し、アドレスバス241にアドレスバス141の内容を出力する。制御メモリ201はアドレスバス241で指定されたアドレスのデータを242に、内容更新ビットを内容更新ビットバス243に出力し、それぞれラッチ4021,4022にラッチされる。次にシーケンサ4001は制御メモリ201へのメモリ制御信号244をライト要求に、3状態バッファ4301,4303を出力状態に、4302をハイインピーダンス状態に設定し、セレクタ4021をビットマージ4022の出力側に選択させ、ビットマージ4022に図8に示したビットアドレス901の内容をビットデータ902に置き換えさせるとともに内容更新判定装置4002に判定イネーブル信号を出力する。内容更新判定装置4002ではリードデータであるラッチ4021の出力とライトデータであるビットマージ4202のデータを比較し、ラッチ4022との値を考慮して制御メモリ201へ書き込む内容更新ビットを演算し4131に出力する。またビットマージ4202の出力はセレクタ4201、3状態バッファ4301を介してデータバス242に出力され、制御メモリ201のアドレスバス241で指定されたアドレスにデータバス242と内容更新ビットバス243の内容が書き込まれる。以上がメモリコントローラ401の動作である。このメモリコントローラ401のタイムチャートを図10から図14に挙げる。   Next, write access will be described. In the write access, an address is written from the computing device 101 to the address bus 141, write data is output to the data bus 142, and a write request is output to the memory control signal 143, and the memory controller 401 is activated. The sequencer 4001 causes the memory control signal 244 to write, the latches 4011 and 4012 to select the latch signal, the selector 4201 to select the latch 4102 side, the address bus 241 and the data bus 242 to respectively select the address bus 141 and the data bus 142. The contents are output, and the contents of the data bus 242 are written at the address specified by the address bus 241. Finally, read modify write access will be described. When the computer 101 outputs an address to the address bus 141, data having the format shown in FIG. 4 to the data bus 142, and a read modify write request to the memory control signal 143, the memory controller 401 is activated. The sequencer 4001 first outputs a latch signal to the latches 4011, 4012, 4021, and 4022, a read signal to the memory control signal 244 to the control memory 201, and outputs the contents of the address bus 141 to the address bus 241. The control memory 201 outputs the data at the address specified by the address bus 241 to 242 and the content update bit to the content update bit bus 243, which are latched in the latches 4021 and 4022, respectively. Next, the sequencer 4001 sets the memory control signal 244 to the control memory 201 as a write request, sets the three-state buffers 4301 and 4303 to the output state, sets the 4302 to the high impedance state, and selects the selector 4021 to the output side of the bit merge 4022. Then, the bit merge 4022 replaces the content of the bit address 901 shown in FIG. 8 with the bit data 902 and outputs a determination enable signal to the content update determination device 4002. The content update determination device 4002 compares the output of the latch 4021 that is read data with the data of the bit merge 4202 that is write data, calculates the content update bit to be written to the control memory 201 in consideration of the value of the latch 4022, and 4131 Output. The output of the bit merge 4202 is output to the data bus 242 via the selector 4201, the three-state buffer 4301, and the contents of the data bus 242 and the content update bit bus 243 are written to the address specified by the address bus 241 of the control memory 201. It is. The above is the operation of the memory controller 401. Time charts of the memory controller 401 are listed in FIGS.

図5は内容更新判定装置4002の概要を示したものである。この内容更新判定装置
4002はリードモディファイライトアクセス時の制御メモリ201からのリードデータ4121と制御メモリ201へ書き込むデータ4111とを比較し、リードモディファイライトによるデータの変化を検出し、変化があれば出力4131に1を出力する。このとき、すでに制御メモリ201のデータの内容更新ビットが1であった場合にはその情報を保存するため、論理和を計算するオアゲート5002がある。比較回路5001の動作は次のとおりである。比較回路5001には4つの入力があり、入力A4111と入力
B4121,シーケンサ4001からの制御信号である比較イネーブル信号4141と非比較時の出力信号を与える信号4142からなっている。比較器5001の出力は図6に示すとおりであり、比較イネーブル信号4141が0の時、比較器5001は入力A4111と入力B4121が一致すれば1、不一致ならば0を出力し、比較イネーブル信号4141が1ならば、非比較時の出力信号4142の値をそのまま出力する。比較回路5001の出力を反転したものとラッチ4022との出力との論理和をとることで、リードモディファイライトによるデータの内容が変化したかどうかを示す信号を生成することができる。
FIG. 5 shows an outline of the content update determination device 4002. The content update determination device 4002 compares the read data 4121 from the control memory 201 at the time of read-modify-write access with the data 4111 to be written to the control memory 201, detects a change in data due to the read-modify-write, and outputs if there is a change. 1 is output to 4131. At this time, if the content update bit of the data in the control memory 201 is already 1, there is an OR gate 5002 for calculating the logical sum in order to save the information. The operation of the comparison circuit 5001 is as follows. The comparison circuit 5001 has four inputs, and includes an input A 4111 and an input B 4121, a comparison enable signal 4141 that is a control signal from the sequencer 4001, and a signal 4142 that provides an output signal at the time of non-comparison. The output of the comparator 5001 is as shown in FIG. 6. When the comparison enable signal 4141 is 0, the comparator 5001 outputs 1 if the input A4111 and the input B4121 match, and outputs 0 if the input does not match. If 1, the value of the output signal 4142 at the time of non-comparison is output as it is. By taking the logical sum of the inverted output of the comparison circuit 5001 and the output of the latch 4022, a signal indicating whether or not the content of data by read-modify-write has changed can be generated.

図7にシーケンサ4001の概要を示す。シーケンサ4001は計算装置101からの読み込み,書き込み,リードモディファイライト(メモリ制御信号143)に対してアドレスバス241,データバス142からの入力から、各ラッチ4011,4012,4021,4022のラッチタイミングやセレクタ4201,ビットマージ4202への選択信号,3状態バッファ4301,4302,4303への出力イネーブル信号,内容更新判定装置4002への比較タイミング信号4141,出力選択信号4142,制御メモリ201への読み込み、書き込みタイミング信号2441,2442の生成を行う。この内容更新判定装置4002への出力選択信号4142は図1に示す制御装置1000では0に固定されている。あとで説明する図15に示す計算装置101と制御データ転送装置301をCPU501が兼ねる場合にこの出力選択信号4142が使用される。メモリ制御信号
143はリード要求信号1431(以下:RD信号),ライト要求信号1432(以下:WR信号),リードモディファイライト信号1433(以下:RMW信号),メモリアクセスが終了していないことを示すウェイト信号1434(以下:WAIT信号)から構成され、RD信号1431,WR信号1432,RMW信号1433はシーケンサ4001の入力,WAIT信号1434はシーケンサ4001の出力となっている。メモリ制御信号244は出力イネーブル信号2441(以下:OE信号),ライトイネーブル信号2442(以下:WE信号)からなり、OE信号2441,WE信号2442ともシーケンサ4001の出力である。内容更新判定装置への出力信号は比較イネーブル信号4141,比較しないときの出力設定信号4142である。
FIG. 7 shows an overview of the sequencer 4001. The sequencer 4001 reads, writes, and read-modify-write (memory control signal 143) from the computing device 101 based on inputs from the address bus 241 and data bus 142, and latch timings and selectors of the latches 4011, 4012, 4021, and 4022. 4201, selection signal to bit merge 4202, output enable signal to three-state buffers 4301, 4302, and 4303, comparison timing signal 4141 to content update determination device 4002, output selection signal 4142, and read / write timing to control memory 201 The signals 2441 and 2442 are generated. The output selection signal 4142 to the content update determination device 4002 is fixed to 0 in the control device 1000 shown in FIG. The output selection signal 4142 is used when the CPU 501 also serves as the calculation apparatus 101 and the control data transfer apparatus 301 shown in FIG. The memory control signal 143 includes a read request signal 1431 (hereinafter referred to as “RD signal”), a write request signal 1432 (hereinafter referred to as “WR signal”), a read modify write signal 1433 (hereinafter referred to as “RMW signal”), and a wait indicating that the memory access has not ended. The RD signal 1431, the WR signal 1432, and the RMW signal 1433 are inputs to the sequencer 4001, and the WAIT signal 1434 is an output from the sequencer 4001. The memory control signal 244 includes an output enable signal 2441 (hereinafter referred to as OE signal) and a write enable signal 2442 (hereinafter referred to as WE signal). Both the OE signal 2441 and the WE signal 2442 are outputs of the sequencer 4001. The output signal to the content update determination device is a comparison enable signal 4141 and an output setting signal 4142 when not comparing.

図8にRMW時の計算装置101がデータバス142に出力するデータフォーマット
900を示す。データフォーマット900は最下位ビットである0ビットが書き込みビットデータ902,書き換えるビットのワード内アドレスを示す901からなり、計算装置101から出力されたアドレスで指定された制御メモリ201のデータに対して、メモリコントローラ401は制御メモリ201からデータを読み出し(リード)、ワード内アドレス901で指定された、データ内の1ビットを1ビットデータ902と取り替え(モディファイ)、同じアドレスに書き戻す(ライト)処理を行う。
FIG. 8 shows a data format 900 output to the data bus 142 by the computing device 101 during RMW. In the data format 900, the least significant bit 0 is composed of write bit data 902, 901 indicating the address in the word of the bit to be rewritten, and for the data in the control memory 201 designated by the address output from the computing device 101, The memory controller 401 reads (reads) data from the control memory 201, replaces (modifies) one bit in the data designated by the in-word address 901 with 1-bit data 902, and writes back to the same address (write). Do.

図9に制御データ転送装置301の構成を示す。制御データ転送装置301は制御メモリ201からデータを読み出し、内容更新ビットバス233の値が1ならば、データバス232のデータをネットワーク1200に出力する。また、ネットワーク1200からデータを受信した場合には、該受信データを制御メモリ201へ書き込む。アドレスバス
231,出力イネーブル信号2341,書き込みイネーブル信号2342からなるメモリ制御信号234は転送制御装置3002の出力であり、データバス232は転送回路3001に、内容更新ビットバス233は転送回路3001とラッチ3202につながっており、ラッチ3202の出力は3状態バッファ3201につながっている。この3状態バッファ3201は、データバス232が双方向バスであるため、該データバス232上で制御メモリ201からの出力とラッチ3202の出力が衝突しないためラッチ3202の出力側に挿入されている。また、転送装置3001と転送制御装置3002はデータ線3100でつながっている。
FIG. 9 shows the configuration of the control data transfer apparatus 301. The control data transfer device 301 reads data from the control memory 201, and outputs the data on the data bus 232 to the network 1200 if the value of the content update bit bus 233 is 1. When data is received from the network 1200, the received data is written into the control memory 201. A memory control signal 234 including an address bus 231, an output enable signal 2341, and a write enable signal 2342 is an output of the transfer control device 3002. The data bus 232 is transferred to the transfer circuit 3001, and the content update bit bus 233 is transferred to the transfer circuit 3001 and the latch 3202. And the output of latch 3202 is connected to tristate buffer 3201. The tristate buffer 3201 is inserted on the output side of the latch 3202 because the output from the control memory 201 and the output of the latch 3202 do not collide with each other on the data bus 232 because the data bus 232 is a bidirectional bus. Further, the transfer device 3001 and the transfer control device 3002 are connected by a data line 3100.

転送装置3001は内部に転送判定回路3011を持ち、内容更新ビットバス233の値を見てデータバス232のデータをネットワーク1200へ出力するかどうかを判定する。また、転送制御装置3002は内部に制御メモリ201のアドレスを指すカウンタ
3012を持ち、このカウンタにより制御メモリ201の内容を順にネットワーク1200に出力する。
The transfer device 3001 has a transfer determination circuit 3011 inside, and determines whether to output the data on the data bus 232 to the network 1200 by looking at the value of the content update bit bus 233. Further, the transfer control device 3002 has a counter 3012 indicating the address of the control memory 201 inside, and outputs the contents of the control memory 201 to the network 1200 in order by this counter.

次にこの制御装置1000内のデータの流れを説明する。計算装置101はアドレスバス141,データバス142,メモリ制御信号143を介してメモリコントローラにアクセス要求を出力し制御メモリ201とデータをやり取りする。   Next, the flow of data in the control device 1000 will be described. The computing device 101 outputs an access request to the memory controller via the address bus 141, the data bus 142, and the memory control signal 143 to exchange data with the control memory 201.

メモリコントローラ401の動作のタイミングチャートを図10〜図12に挙げる。図10は読み込み時、図11は書き込み時、図12はリードモディファイライト時のタイミングチャートである。各タイミングチャートとも計算装置101がアクセス開始するクロックタイミングをT0とする。   Timing charts of the operation of the memory controller 401 are given in FIGS. FIG. 10 is a timing chart at the time of reading, FIG. 11 is a timing at the time of writing, and FIG. 12 is a timing chart at the time of read modify writing. In each timing chart, the clock timing at which the computing device 101 starts access is T0.

読み込み時のタイムチャートを図10に示す。T0のタイミングで、計算装置101はアドレスバス141にアドレスを出力し、RD信号1431をアサートする。T1のタイミングではシーケンサ4001はT1の頭でラッチ4011にラッチ信号を送り、ラッチ4011にアドレスバス141の値をラッチさせ、WAIT信号1434,OE信号2441をアサートする。制御メモリ201へ、アドレスバス241にアドレス、メモリ制御信号244にOE信号2441が出力され、制御メモリ201はアドレスバス241で指定されたアドレスの内容がデータバス242に出力される。T2のタイミングではシーケンサ4001はT2の頭でラッチ4021にラッチ信号を送り、データバス242の値をラッチさせ、WAIT信号1434,OE信号2441をネゲートし、3状態バッファ4302にイネーブル信号を送り、ラッチ4021の出力4121のデータをデータバス142に読み込みデータが出力される。T3のタイミングでは計算装置101はWAIT信号1434がネゲートされたのを確認し、アドレスバス141への出力を止め、RD信号1431をネゲートし、データバス142の内容を取り込む。シーケンサ4001は3状態バッファ
4302のイネーブル信号を止め、データバス142へのデータ出力を止める。以上が読み込み時のメモリコントローラ401の動作である。
A time chart at the time of reading is shown in FIG. At the timing of T0, the computing device 101 outputs an address to the address bus 141 and asserts the RD signal 1431. At the timing of T1, the sequencer 4001 sends a latch signal to the latch 4011 at the beginning of T1, causes the latch 4011 to latch the value of the address bus 141, and asserts the WAIT signal 1434 and the OE signal 2441. To the control memory 201, an address is output to the address bus 241 and an OE signal 2441 is output to the memory control signal 244. The control memory 201 outputs the contents of the address specified by the address bus 241 to the data bus 242. At the timing of T2, the sequencer 4001 sends a latch signal to the latch 4021 at the beginning of T2, latches the value of the data bus 242, negates the WAIT signal 1434 and the OE signal 2441, sends an enable signal to the tristate buffer 4302, and latches The data of the output 4121 of 4021 is read into the data bus 142 and the data is output. At the timing of T3, the computing apparatus 101 confirms that the WAIT signal 1434 has been negated, stops outputting to the address bus 141, negates the RD signal 1431, and captures the contents of the data bus 142. The sequencer 4001 stops the enable signal of the three-state buffer 4302 and stops outputting data to the data bus 142. The above is the operation of the memory controller 401 at the time of reading.

図11に書き込み時のタイムチャートを示す。T0のタイミングで、計算装置101はアドレスバス141にアドレスをデータバス242に書き込みデータを出力し、WR信号1432をアサートする。T1のタイミングではシーケンサ4001はT1の頭でラッチ4011,4012にラッチ信号を送り、ラッチ4011にアドレスバス141の値をラッチ4012にデータバス142の値をそれぞれラッチさせ、WAIT信号1434,
WE信号2442をアサートし、セレクタ4201にラッチ4012の出力4102を選択させる選択信号を、3状態バッファ4301,4303にイネーブル信号を送る。これにより、アドレスバス241にアドレス,データバス242にデータ,内容更新ビットバス243に内容更新ビット情報,メモリ制御信号244にWE信号2442が出力され、制御メモリ201はアドレスバス241で指定されたアドレスにデータバス242と内容更新ビットバス243の内容が書き込まれる。T2のタイミングではシーケンサ4001はWAIT信号1434,WE信号2442をネゲートし、3状態バッファ4301,
4303のイネーブル信号を止め、データバス242,内容更新ビットバス243へのデータ出力を止める。T3のタイミングでは計算装置101はWAIT信号1434がネゲートされたのを確認し、アドレスバス141,データバス142への出力を止め、WR信号1432をネゲートする。以上が書き込み時のメモリコントローラ401の動作である。
FIG. 11 shows a time chart at the time of writing. At the timing of T0, the computing device 101 outputs an address to the address bus 141, writes data to the data bus 242, and asserts a WR signal 1432. At the timing of T1, the sequencer 4001 sends a latch signal to the latches 4011 and 4012 at the beginning of T1, causes the latch 4011 to latch the value of the address bus 141 and the latch 4012 to latch the value of the data bus 142, respectively.
The WE signal 2442 is asserted, and a selection signal for causing the selector 4201 to select the output 4102 of the latch 4012 is sent to the tristate buffers 4301 and 4303. As a result, an address is output to the address bus 241, data is output to the data bus 242, content update bit information is output to the content update bit bus 243, and a WE signal 2442 is output to the memory control signal 244, and the control memory 201 is addressed by the address bus 241. The contents of the data bus 242 and the content update bit bus 243 are written into the memory. At the timing of T2, the sequencer 4001 negates the WAIT signal 1434 and the WE signal 2442, and tristate buffers 4301,
The enable signal of 4303 is stopped, and data output to the data bus 242 and the content update bit bus 243 is stopped. At the timing of T3, the computing apparatus 101 confirms that the WAIT signal 1434 has been negated, stops outputting to the address bus 141 and the data bus 142, and negates the WR signal 1432. The above is the operation of the memory controller 401 at the time of writing.

図12にリードモディファイライト時のタイムチャートを示す。T0のタイミングで、計算装置101はアドレスバス141にアドレスを、データバス242に書き込みデータを出力し、RMW信号1433をアサートする。T1のタイミングではシーケンサ4001はT1の頭でラッチ4011,4012にラッチ信号を送り、ラッチ4011にアドレスバス141の値をラッチ4012にデータバス142の値をそれぞれラッチさせ、WAIT信号1434,OE信号2441をアサートする。制御メモリ201へ、アドレスバス
241にアドレス,メモリ制御信号244にOE信号2441が出力され、制御メモリ
201はアドレスバス241で指定されたアドレスの内容がデータバス242に出力される。T2のタイミングではシーケンサ4001はT2の頭でラッチ4021,4022にラッチ信号を送り、ラッチ4021にデータバス242の値を、ラッチ4022に内容更新ビットバス243の値をラッチさせ、OE信号2441をネゲートする。T3のタイミングではシーケンサ4001はセレクタ4201にビットマージ4202の出力4111を選択させる選択信号を、ビットマージ4202に置き換えるビットアドレスを、3状態バッファに4301,4303にイネーブル信号を送り、内容更新判定装置4002へのイネーブル信号4141とWE信号2442をアサートし、WAIT信号1434をネゲートする。これにより、アドレスバス241にアドレス,データバス242にデータ,内容更新ビットバス243に内容更新情報,メモリ制御信号244にWE信号2442が出力され、制御メモリ201はアドレスバス241で指定されたアドレスにデータバス242と内容更新ビットバス243の内容が書き込まれる。T4のタイミングではシーケンサ
4001はイネーブル信号4141,WAIT信号1434,WE信号2442をネゲートし、3状態バッファ4301,4303のイネーブル信号を止め、データバス242,内容更新ビットバス243へのデータ出力を止める。T5のタイミングでは計算装置101はWAIT信号1434がネゲートされたのを確認し、アドレスバス141,データバス142への出力を止め、RMW信号1433をネゲートする。以上がリードモディファイライト時のメモリコントローラ401の動作である。
FIG. 12 shows a time chart during read-modify-write. At the timing of T0, the computing device 101 outputs an address to the address bus 141, outputs write data to the data bus 242, and asserts an RMW signal 1433. At the timing of T1, the sequencer 4001 sends a latch signal to the latches 4011 and 4012 at the beginning of T1, causes the latch 4011 to latch the value of the address bus 141 and the latch 4012 to latch the value of the data bus 142, respectively, and the WAIT signal 1434 and the OE signal 2441. Is asserted. To the control memory 201, an address is output to the address bus 241, and an OE signal 2441 is output to the memory control signal 244. The control memory 201 outputs the contents of the address specified by the address bus 241 to the data bus 242. At the timing of T2, the sequencer 4001 sends a latch signal to the latches 4021 and 4022 at the beginning of T2, causes the latch 4021 to latch the value of the data bus 242, causes the latch 4022 to latch the value of the content update bit bus 243, and negates the OE signal 2441. To do. At the timing of T3, the sequencer 4001 sends a selection signal that causes the selector 4201 to select the output 4111 of the bit merge 4202 and a bit address that replaces the bit merge 4202 with an enable signal to the four-state buffers 4301 and 4303, and the content update determination device 4002 The enable signal 4141 and the WE signal 2442 are asserted, and the WAIT signal 1434 is negated. As a result, an address is output to the address bus 241, data is output to the data bus 242, content update information is output to the content update bit bus 243, and a WE signal 2442 is output to the memory control signal 244, and the control memory 201 is set to the address specified by the address bus 241. The contents of the data bus 242 and the content update bit bus 243 are written. At the timing of T4, the sequencer 4001 negates the enable signal 4141, the WAIT signal 1434, and the WE signal 2442, stops the enable signal of the three-state buffers 4301 and 4303, and stops the data output to the data bus 242 and the content update bit bus 243. At the timing of T5, the calculation apparatus 101 confirms that the WAIT signal 1434 has been negated, stops outputting to the address bus 141 and the data bus 142, and negates the RMW signal 1433. The above is the operation of the memory controller 401 during read-modify-write.

内容更新判定装置4002での動作は次のとおりである。   The operation in the content update determination device 4002 is as follows.

リードモディファイライト動作時は制御メモリ201の同じアドレスに対して読み出してから制御メモリ201の内容を書き換えて書き戻す。リードモディファイライト時には比較回路5001のイネーブル信号4141がアサートされ、比較回路5001の2つの入力である制御メモリ201から読み込んだデータであるA4111と制御メモリ201へ書き込むデータであるB4121とが一致すれば、出力5101に1が、4111と
4121が不一致ならば0が出力される。また、リードモディファイライトアクセスのリード時に内容更新ビットバス243の内容をラッチ4022にラッチさせ、ライト時にラッチ4022の内容と比較回路5001の比較結果と論理和をとることにより、リードモディファイライトによる内容更新ビットの欠落が発生するのを防ぐ。
During a read-modify-write operation, the same address in the control memory 201 is read and then the contents of the control memory 201 are rewritten and written back. At the time of read-modify-write, the enable signal 4141 of the comparison circuit 5001 is asserted, and if A4111 that is data read from the control memory 201 that is two inputs of the comparison circuit 5001 and B4121 that is data to be written to the control memory 201 match, If the output 5101 is 1 and 4111 and 4121 do not match, 0 is output. In addition, the contents of the content update bit bus 243 are latched by the latch 4022 at the time of reading of the read modify write access, and the contents of the latch 4022 and the comparison result of the comparison circuit 5001 are logically summed at the time of writing, thereby updating the contents by the read modify write. Prevent missing bits.

読み込み時,書き込み時では比較回路5001のイネーブル信号4141はネゲートされており、図4に示される真理値表から比較回路5001の出力5101には0が出力されるため、オアゲート5002の出力4131には4132の値にかかわらず、1が出力される。書き込み時にはリード動作を伴わないため内容更新判定ができないため、内容更新ビットを1に設定する。   At the time of reading and writing, the enable signal 4141 of the comparison circuit 5001 is negated and 0 is output to the output 5101 of the comparison circuit 5001 from the truth table shown in FIG. Regardless of the value of 4132, 1 is output. Since the content update determination cannot be performed because no read operation is involved at the time of writing, the content update bit is set to 1.

制御メモリ201と制御データ転送装置301とのデータの流れはアドレスバス231,データバス232,内容更新ビットバス233,メモリ制御信号234を介して被制御装置2000から転送されたセンサデータを制御メモリ201に書き込むと共に、制御メモリ201上のアクチュエータ情報を被制御装置2000に転送する。   The flow of data between the control memory 201 and the control data transfer device 301 is based on the sensor data transferred from the controlled device 2000 via the address bus 231, the data bus 232, the content update bit bus 233, and the memory control signal 234. And the actuator information on the control memory 201 is transferred to the controlled device 2000.

図13,図14に制御データ転送装置301が制御メモリ201へのアクセス動作のタイミングチャートを挙げる。図13が制御メモリ201への読み込み、図14が制御メモリ201への書き込み時のタイミングチャートである。制御装置1000から被制御装置2000へアクチュエータデータを転送する際には制御データ転送装置301から制御メモリ201へアドレスバス231にアドレス情報,メモリ制御信号234に出力イネーブル信号を送り、制御メモリ201からアドレスバス241で指定されたアドレスのデータがデータバス232に内容更新ビット情報が内容更新ビットバス233に出力される。制御データ転送装置301はこの内容更新ビットバス233の値を見て、0ならば前回の被制御装置2000への転送からデータは内容更新されていないと判断し被制御装置2000へ
のデータ転送を行う必要はない。一方、内容更新ビットバス233の値が1ならば、このデータは前回の転送から内容更新されたと判断しネットワーク1200を介して被制御装置2000へこのデータを転送すると同時に内容更新ビット情報を0にリセットする。また、被制御装置2000側からコントローラ側にセンサデータ転送が行われる際には制御データ転送装置301から制御メモリ201へアドレスバス231にアドレス情報,データバス232に制御データ転送装置301がネットワーク1200から受け取ったデータ情報,メモリ制御信号234に書き込み信号を送り、制御メモリ201のアドレスバス
231で指定されたアドレスに当該データを書き込む。この際内容更新ビットの内容は0である。この内容更新判定ビットを利用することにより、制御メモリ201のデータは計算装置101のアクセスによって変更されたデータのみが被制御装置2000側へ転送されるため余分なデータ転送を省くことができデータ転送時間の短縮が可能となる。
FIG. 13 and FIG. 14 show timing charts of the access operation of the control data transfer apparatus 301 to the control memory 201. FIG. FIG. 13 is a timing chart when reading into the control memory 201, and FIG. 14 is a timing chart when writing into the control memory 201. When transferring actuator data from the control device 1000 to the controlled device 2000, the control data transfer device 301 sends address information to the address memory 231 and an output enable signal to the memory control signal 234 from the control memory 201 to the control memory 201. The data at the address specified by the bus 241 is output to the data bus 232 and the content update bit information is output to the content update bit bus 233. The control data transfer device 301 looks at the value of the content update bit bus 233. If the value is 0, the control data transfer device 301 determines that the data has not been updated from the previous transfer to the controlled device 2000 and transfers the data to the controlled device 2000. There is no need to do it. On the other hand, if the value of the content update bit bus 233 is 1, it is determined that the content of this data has been updated since the previous transfer, and this data is transferred to the controlled device 2000 via the network 1200 and at the same time the content update bit information is set to 0. Reset. When sensor data is transferred from the controlled device 2000 side to the controller side, the control data transfer device 301 sends the address information to the address memory 231 from the control memory 201 to the control memory 201, and the control data transfer device 301 sends data from the network 1200 to the data bus 232. A write signal is sent to the received data information and memory control signal 234, and the data is written to the address specified by the address bus 231 of the control memory 201. At this time, the content of the content update bit is 0. By using this content update determination bit, only data that has been changed by the access of the computing device 101 is transferred to the controlled device 2000 side, so that extra data transfer can be omitted. Time can be shortened.

図13に示す読み込み時のタイミングチャートはT0のタイミングで転送制御装置3002はカウンタ3002の値をアドレスバス231に出力し、OE信号2341をアサートする。制御メモリ201はアドレスバス231で指定されたアドレスの内容がデータバス
232に、内容更新ビット情報が内容更新ビットバス233に出力される。T1のタイミングで、転送制御回路3002はバッファ3201,ラッチ3202にラッチ信号を送り、データバス232,内容更新ビットバス233の値がそれぞれバッファ3201,ラッチ3202にラッチさせ、OE信号2341をネゲートする。内容判定回路3001はラッチ3202の内容を見て、0ならば転送をしないと判定し、カウンタ3012をカウントアップしアドレスバス231へのアドレス出力を止め、読み込み動作が終了する。1ならば当該データを被制御装置2000へ当該データを転送するため、T2のタイミングで当該データをネットワーク1200へ出力すると共に、転送制御装置3002はWE信号2342をアサートし、3状態バッファ3211にイネーブル信号を送り、読み込みデータを保持しているラッチ3202の内容をデータバス232に内容更新ビットバス233に0を出力し、制御メモリ201の当該アドレスの内容更新ビットをリセットする。T3のタイミングで転送制御装置3002はWE信号2342をネゲートすると共にアドレスバス241へのアドレス出力を止めてタイミングチャートが終了する。
In the read timing chart shown in FIG. 13, the transfer control device 3002 outputs the value of the counter 3002 to the address bus 231 and asserts the OE signal 2341 at the timing T0. The control memory 201 outputs the contents of the address designated by the address bus 231 to the data bus 232 and the contents update bit information to the contents update bit bus 233. At the timing of T1, the transfer control circuit 3002 sends a latch signal to the buffer 3201 and the latch 3202, the values of the data bus 232 and the content update bit bus 233 are latched in the buffer 3201 and the latch 3202, respectively, and the OE signal 2341 is negated. The content determination circuit 3001 looks at the content of the latch 3202 and determines that no transfer is made if it is 0, counts up the counter 3012, stops the address output to the address bus 231 and ends the read operation. If it is 1, in order to transfer the data to the controlled device 2000, the data is output to the network 1200 at the timing of T2, and the transfer control device 3002 asserts the WE signal 2342 and enables the three-state buffer 3211. A signal is sent, the content of the latch 3202 holding the read data is output to the data bus 232 as 0 to the content update bit bus 233, and the content update bit of the address in the control memory 201 is reset. At the timing of T3, the transfer control device 3002 negates the WE signal 2342 and stops outputting the address to the address bus 241 to complete the timing chart.

図14に示す書き込みタイミングチャートは被制御装置2000からのデータをネットワーク1200を介して転送回路3001が受取ると、転送制御装置にデータを受取った旨を3100を通じて知らせて、書き込みタイミングチャートが開始される。T0のタイミングで転送制御回路3002がアドレスバス231にアドレスを出力し、WE信号234をアサートし、転送回路3001がデータバス232に受取ったデータを、内容更新ビットバスに0を出力し、スキャンメモリのアドレスバス231で指定されたアドレスに当該データを書き込む。T1のタイミングで転送制御回路3002はWE信号2342をネゲートし書き込み動作が終了する。   In the write timing chart shown in FIG. 14, when the transfer circuit 3001 receives data from the controlled device 2000 via the network 1200, the transfer control device is notified through 3100 that the data has been received, and the write timing chart is started. . At the timing T0, the transfer control circuit 3002 outputs an address to the address bus 231, asserts the WE signal 234, and the transfer circuit 3001 outputs 0 to the content update bit bus, and outputs 0 to the content update bit bus. The data is written to the address designated by the address bus 231. At timing T1, the transfer control circuit 3002 negates the WE signal 2342, and the write operation is completed.

図15に他の実施例としてCPU501が図1における計算装置101と制御データ転送装置301を兼ねるコントローラ1100を示す。CPU501とメモリコントローラ401はアドレスバス451,データバス452,メモリ制御信号453,内容更新ビットバス251でつながっており、メモリコントローラ401と制御メモリ201はアドレスバス261,データバス262,メモリ制御信号263,内容更新ビットバス251とで接続されている。制御メモリ201,メモリコントローラ401の構成は図3と同じであり、アドレスバス451,データバス452,メモリ制御信号453は図2のアドレスバス141,データバス142,メモリ制御信号453に対応し、アドレスバス261,データバス262,メモリ制御信号263,内容更新ビットバス251はそれぞれ図2のアドレスバス241,データバス242,メモリ制御信号244,内容更新ビットバス
243に対応する。CPU501は図1の計算装置101と制御データ転送装置301の処理を兼ねるため、図16に示すとおり、制御メモリ201のメモリ空間6000をCPU501のアドレス空間のCPU501が制御プログラム実行時にアクセスする制御プログラム実行領域6001とCPU501が被制御装置2000にデータ転送する際にアクセスするデータ転送領域6002にそれぞれマッピングする。シーケンサ4001はアドレス入力241をデコードして、CPU501からのアクセスが領域6001か領域6002へのアクセスかを判断し、領域6001へのアクセスならば0を領域6002へのアクセスならば1を内容更新判定装置4002への制御信号4142に出力することで、内容更新判定装置4002は書き込み時に領域6001へのアクセスは1を、領域6002へのアクセスでは0を内容更新ビットとして出力する。これによりCPU501は図1の計算装置101と制御データ転送装置301と等価な動作を行うことが可能となる。
FIG. 15 shows a controller 1100 in which the CPU 501 serves as both the calculation device 101 and the control data transfer device 301 in FIG. 1 as another embodiment. The CPU 501 and the memory controller 401 are connected by an address bus 451, a data bus 452, a memory control signal 453, and a content update bit bus 251, and the memory controller 401 and the control memory 201 are connected to an address bus 261, a data bus 262, and a memory control signal 263. It is connected to the content update bit bus 251. The configurations of the control memory 201 and the memory controller 401 are the same as in FIG. 3, and the address bus 451, data bus 452, and memory control signal 453 correspond to the address bus 141, data bus 142, and memory control signal 453 in FIG. The bus 261, data bus 262, memory control signal 263, and content update bit bus 251 correspond to the address bus 241, data bus 242, memory control signal 244, and content update bit bus 243 in FIG. Since the CPU 501 also serves as the processing of the calculation device 101 and the control data transfer device 301 in FIG. 1, as shown in FIG. 16, the control program execution that the CPU 501 in the address space of the CPU 501 accesses the memory space 6000 of the control memory 201 is executed. The area 6001 and the CPU 501 map to the data transfer area 6002 that is accessed when data is transferred to the controlled device 2000. The sequencer 4001 decodes the address input 241 to determine whether the access from the CPU 501 is an access to the area 6001 or the area 6002. If the access to the area 6001 is 0, the content update determination is 0. By outputting the control signal 4142 to the device 4002, the content update determination device 4002 outputs 1 as the content update bit when accessing the region 6001 and 0 as the content update bit when accessing the region 6002. As a result, the CPU 501 can perform an operation equivalent to the calculation device 101 and the control data transfer device 301 of FIG.

CPU501がメモリコントローラ401を介して制御メモリ201へアクセスする際のタイムチャートは制御プログラム実行時にアクセスする領域6001へのアクセス時の動作のタイミングチャートは図10〜図12と同じで、図10〜図12におけるアドレスバス141,241がそれぞれアドレスバス451,261にデータバス142,242がそれぞれデータバス452,262、メモリ制御信号143,244がそれぞれメモリ制御信号453,263,内容更新ビットバス243が内容更新ビットバス251に対応している。また、データ転送時にアクセスする領域6002へのアクセス時の動作のタイミングチャートは読み込み時が図17、書き込み時が図18にあげる3,14と同じであり、同様にアドレスバス231がアドレスバスである。動作自体は制御データ転送装置
301と同じであるが、メモリコントローラ401を介するため、動作が複雑になる。
The time chart when the CPU 501 accesses the control memory 201 via the memory controller 401 is the same as the timing chart of the operation when accessing the area 6001 accessed when the control program is executed. 12, the address buses 141 and 241 are the address buses 451 and 261, the data buses 142 and 242 are the data buses 452 and 262, the memory control signals 143 and 244 are the memory control signals 453 and 263, and the content update bit bus 243 is the content. This corresponds to the update bit bus 251. The timing chart of the operation when accessing the area 6002 to be accessed at the time of data transfer is the same as 3 and 14 shown in FIG. 17 at the time of reading and FIG. 18 at the time of writing. Similarly, the address bus 231 is an address bus. . Although the operation itself is the same as that of the control data transfer apparatus 301, the operation is complicated because the memory controller 401 is used.

図17にCPU501が転送データを制御メモリ201から読み込む際のタイムチャートを示す。T0のタイミングで、CPU501はアドレスバス451にアドレスを、データバス452に書き込みデータを出力し、RD信号4531をアサートする。T1のタイミングではシーケンサ4001はT1の頭でラッチ4011にラッチ信号を送り、ラッチ4011にアドレスバス451の値をラッチさせ、WAIT信号1434,OE信号2441をアサートする。制御メモリ201へ、アドレスバス261にアドレス,メモリ制御信号244にOE信号2631が出力され、制御メモリ201はアドレスバス261で指定されたアドレスの内容がデータバス262に、内容更新ビット情報が内容更新ビットバス
251に出力される。
FIG. 17 shows a time chart when the CPU 501 reads transfer data from the control memory 201. At timing T0, the CPU 501 outputs an address to the address bus 451, write data to the data bus 452, and asserts an RD signal 4531. At the timing of T1, the sequencer 4001 sends a latch signal to the latch 4011 at the beginning of T1, causes the latch 4011 to latch the value of the address bus 451, and asserts the WAIT signal 1434 and the OE signal 2441. To the control memory 201, an address is output to the address bus 261, and an OE signal 2631 is output to the memory control signal 244. The control memory 201 updates the contents of the address specified by the address bus 261 to the data bus 262, and the contents update bit information updates the contents. The data is output to the bit bus 251.

T2のタイミングではシーケンサ4001はT2の頭でラッチ4021,4022にラッチ信号を送り、ラッチ4021にデータバス262の値を、ラッチ4022に内容更新ビットバス251の値をラッチさせ、OE信号2631をネゲートする。T3のタイミングではシーケンサ4001はセレクタ4201にビットマージ4202の出力4111を選択させる選択信号を、ビットマージ4202に4121の値を出力4111にスルーさせる信号を、3状態バッファに4301,4303にイネーブル信号を送り、内容更新判定装置4002への出力設定信号4142に1を出力すると共に、WE信号2631をアサートし、WAIT信号4534をネゲートする。これにより、アドレスバス261にアドレス,データバス262にラッチ4021にラッチされているデータ,内容更新ビットバス251に0,メモリ制御信号263にWE信号が出力され、制御メモリ201はアドレスバス261で指定されたアドレスにデータバス262と内容更新ビットバス251の内容が書き込まれる。T4のタイミングではシーケンサ4001は、WAIT信号4534,WE信号2632をネゲートし、3状態バッファ4301,4303のイネーブル信号を止め、データバス262,内容更新ビットバス251へのデータ出力を止める。T5のタイミングではCPU501はWAIT信号4534がネゲートされたのを確認し、アドレスバス451,データバス452への出力を止め、RD信号4533をネゲートする。以上が転送データ読み込み時のメモリコントローラ401の動作である。   At the timing of T2, the sequencer 4001 sends a latch signal to the latches 4021 and 4022 at the beginning of T2, causes the latch 4021 to latch the value of the data bus 262, causes the latch 4022 to latch the value of the content update bit bus 251 and negates the OE signal 2631. To do. At the timing of T3, the sequencer 4001 sends a selection signal for causing the selector 4201 to select the output 4111 of the bit merge 4202, a signal for causing the bit merge 4202 to pass the value 4121 to the output 4111, and an enable signal for 4301 and 4303 for the three-state buffer. 1 is output to the output setting signal 4142 to the content update determination device 4002, the WE signal 2631 is asserted, and the WAIT signal 4534 is negated. As a result, an address is output to the address bus 261, data latched to the data bus 262 is latched to the latch 4021, 0 is output to the content update bit bus 251, and a WE signal is output to the memory control signal 263. The control memory 201 is designated by the address bus 261. The contents of the data bus 262 and the content update bit bus 251 are written to the address thus set. At the timing of T4, the sequencer 4001 negates the WAIT signal 4534 and the WE signal 2632, stops the enable signals of the three-state buffers 4301 and 4303, and stops the data output to the data bus 262 and the content update bit bus 251. At timing T5, the CPU 501 confirms that the WAIT signal 4534 has been negated, stops outputting to the address bus 451 and the data bus 452, and negates the RD signal 4533. The above is the operation of the memory controller 401 when reading transfer data.

図18に、被制御装置2000から転送されたデータを制御メモリ201に書き込む際のタイムチャートを示す。T0のタイミングで、CPU501はアドレスバス451にアドレスをデータバス452に書き込みデータを出力し、WR信号4532をアサートする。T1のタイミングではシーケンサ4001はT1の頭でラッチ4011,4012にラッチ信号を送り、ラッチ4011にアドレスバス451の値をラッチ4012にデータバス452の値をそれぞれラッチさせ、WAIT信号4534,WE信号2632をアサートし、セレクタ4201にラッチ4012の出力4102を選択させる選択信号を、内容更新判定装置4002への出力選択信号4142に1を出力し、3状態バッファ4301,4303にイネーブル信号を送る。これにより、アドレスバス261にアドレス,データバス262にデータ,内容更新ビットバス251に0,メモリ制御信号263にWE信号2632が出力され、制御メモリ201はアドレスバス261で指定されたアドレスにデータバス262と内容更新ビットバス251の内容が書き込まれる。T2のタイミングではシーケンサ4001はWAIT信号4534,WE信号2632をネゲートし、3状態バッファ4301,4303のイネーブル信号を止め、データバス262,内容更新ビットバス251へのデータ出力を止める。T3のタイミングではCPU501はWAIT信号4534がネゲートされたのを確認し、アドレスバス451,データバス452への出力を止め、WR信号4532をネゲートする。以上が書き込み時のメモリコントローラ401の動作である。   FIG. 18 shows a time chart when the data transferred from the controlled device 2000 is written in the control memory 201. At the timing of T0, the CPU 501 outputs an address to the address bus 451, writes data to the data bus 452, and asserts a WR signal 4532. At the timing of T1, the sequencer 4001 sends a latch signal to the latches 4011 and 4012 at the beginning of T1, causes the latch 4011 to latch the value of the address bus 451 and the latch 4012 to latch the value of the data bus 452, respectively, and causes the WAIT signal 4534 and WE signal 2632 to be latched. Is output, 1 is output to the output selection signal 4142 to the content update determination device 4002, and an enable signal is sent to the three-state buffers 4301 and 4303. As a result, an address is output to the address bus 261, data is output to the data bus 262, 0 is output to the content update bit bus 251, and a WE signal 2632 is output to the memory control signal 263, and the control memory 201 outputs the data bus to the address specified by the address bus 261. 262 and the contents of the contents update bit bus 251 are written. At the timing of T2, the sequencer 4001 negates the WAIT signal 4534 and the WE signal 2632, stops the enable signals of the three-state buffers 4301 and 4303, and stops the data output to the data bus 262 and the content update bit bus 251. At the timing of T3, the CPU 501 confirms that the WAIT signal 4534 has been negated, stops outputting to the address bus 451 and the data bus 452, and negates the WR signal 4532. The above is the operation of the memory controller 401 at the time of writing.

次にコスト問題に対する実施の形態について図19〜図27を用いて説明する。   Next, an embodiment for the cost problem will be described with reference to FIGS.

図19に示すように、プロセス制御装置10000はコントローラ10001とプロセスデータ制御装置10002,メモリ10003,通信プロセッサ10004,入出力装置10005,センサ10006,電流計10007,表示ランプ10008から構成され、プロセスデータ制御装置10002はそれぞれ、コントローラ10001とはIOデータバス21000により、メモリ10003とはメモリデータバス23000により、通信プロセッサ10004とは通信データバス24000により、接続されている。   As shown in FIG. 19, the process control device 10000 includes a controller 10001, a process data control device 10002, a memory 10003, a communication processor 10004, an input / output device 10005, a sensor 10006, an ammeter 10007, and a display lamp 10008. The device 10002 is connected to the controller 10001 via an IO data bus 21000, to the memory 10003 via a memory data bus 23000, and to the communication processor 10004 via a communication data bus 24000.

また、通信プロセッサ10004はシリアル線を介して入出力装置10005と接続されており、入出力装置10005はセンサ10006と電流計10006と表示ランプ
10008と接続されている。このプロセス制御装置ではセンサ10006から情報が来ると電流計10007の電流値を調べ、基準値より低ければOKのサインとしてランプ
10008を点灯させる動作を行うものとする。
The communication processor 10004 is connected to an input / output device 10005 via a serial line, and the input / output device 10005 is connected to a sensor 10006, an ammeter 10006, and a display lamp 10008. In this process control apparatus, when information is received from the sensor 10006, the current value of the ammeter 10007 is checked, and if it is lower than the reference value, the lamp 10008 is turned on as an OK sign.

プロセス制御装置10000でのデータの動きは次の通りである。   The data movement in the process control device 10000 is as follows.

コントローラ10001はプロセスデータ制御装置10002を介してメモリ10003からセンサ10006のデータを読み出し、センサ10006の情報が1ならば、電流計
10007のデータをプロセスデータ制御装置10002を介してメモリ10003から読み出す。読み出された電流計10007のデータが基準値より低ければ1を高ければ0をランプ10008へのデータとしてプロセスデータ制御装置10002を介してメモリ10003に書き込む。この一連の処理を一定間隔でコントローラ10001は実行する。一方通信プロセッサ10004は一定間隔で入出力装置に起動をかけ、センサ10006と電流計10007のデータを読み込み、プロセスデータ制御装置を介して当該センサ
10006と電流計10007のデータをメモリ10003に書き込むと共に、プロセスデータ制御装置10002を介してランプ10008のデータをメモリ10003より読み出し、PIO装置10005に転送する。PIO装置10005は通信プロセッサから起動をかけられると、センサ10006と電流計10007からデータを取り込み、電流計10007のデータをA/D変換器を用いて2バイトのディジタル情報に変換し、通信プロセッサ10004に転送する。また通信プロセッサ10004から転送されたランプ10008へのデータを取り込み、当該データが1ならばランプを点灯させ、0ならば、ランプを消灯させる。以上のようにプロセス制御装置10000を動作する。
The controller 10001 reads the data of the sensor 10006 from the memory 10003 via the process data control device 10002, and if the information of the sensor 10006 is 1, reads the data of the ammeter 10007 from the memory 10003 via the process data control device 10002. If the read data of the ammeter 10007 is lower than the reference value, 1 is written to the memory 10003 through the process data control device 10002 as 0 to the lamp 10008 if 1 is high. The controller 10001 executes this series of processing at regular intervals. On the other hand, the communication processor 10004 starts the input / output device at regular intervals, reads the data of the sensor 10006 and the ammeter 10007, writes the data of the sensor 10006 and the ammeter 10007 into the memory 10003 via the process data control device, The data of the lamp 10008 is read from the memory 10003 via the process data control device 10002 and transferred to the PIO device 10005. When the PIO device 10005 is activated by the communication processor, it takes in data from the sensor 10006 and the ammeter 10007, converts the data of the ammeter 10007 into 2-byte digital information using an A / D converter, and the communication processor 10004. Forward to. Further, the data transferred to the lamp 10008 transferred from the communication processor 10004 is fetched. If the data is 1, the lamp is turned on. If the data is 0, the lamp is turned off. The process control device 10000 operates as described above.

まず、コントローラ10001からのアクセスについて説明する。コントローラ10001からプロセスデータ制御装置10002を介してのメモリ10003へのアクセスは2バイト単位で行われる。図20に示すように、コントローラ10001のIOアドレス空間の一部にプロセスデータ制御装置10002のアクセス空間を割り当て、このIO空間を介してコントローラ10001はメモリ10003をアクセスする。当該IO空間はプロセスデータ制御装置10002内の2バイトアドレスポインタを構成するアドレスポインタ上位バイト12001,アドレスポインタ下位バイト12002,コントローラ10001がメモリ10003へのライトアクセス時に使用する上位バイトライトバッファ12002,メモリライトバッファ12003、同じくコントローラ10001がメモリ10003へのリードアクセス時に使用する上位バイトリードバッファ12005,メモリリードバッファ12006から構成され、コントローラ10001はこれら12001〜12006の6バイトからなる空間をアクセスし、メモリ10003へのアクセスを行う。   First, access from the controller 10001 will be described. Access from the controller 10001 to the memory 10003 via the process data control device 10002 is performed in units of 2 bytes. As shown in FIG. 20, an access space of the process data control device 10002 is allocated to a part of the IO address space of the controller 10001, and the controller 10001 accesses the memory 10003 through this IO space. The IO space includes an address pointer upper byte 12001 that constitutes a 2-byte address pointer in the process data control device 10002, an address pointer lower byte 12002, an upper byte write buffer 12002 used by the controller 10001 during write access to the memory 10003, and a memory write. The buffer 10003 is composed of a high-order byte read buffer 12005 and a memory read buffer 12006 that the controller 10001 uses at the time of read access to the memory 10003. The controller 10001 accesses the space consisting of 6 bytes of these 12001 to 12006 and accesses the memory 10003. Access.

コントローラ10001がメモリ10003へアクセスする方法を図21に示す。コントローラ10001がメモリ10003へのライトアクセスを行うには、コントローラ
10001はメモリ10003上のアクセスしたいアドレスの上位バイトをアドレスポインタ上位バイト12001に、同じく下位バイトをアドレスポインタ下位バイト12002に書き込む(13001)。次にコントローラ10001は13001でセットしたアドレスへ書き込みたい2バイトデータの上位バイトを上位バイトライトバッファ12003に書き込む(13003)。そして、同じく書き込みたい2バイトデータの下位バイトをメモリライトバッファ12004に書き込む(13003)ことにより、プロセスデータ制御装置10002はアドレスポインタ上位バイト12001とアドレスポインタ下位バイト12002からなるアドレスポインタで示されたアドレスにメモリライトバッファ2004
の値を、アドレスポインタにより示されたその次のアドレスに上位バイトライトバッファ12003の値をメモリ10003に連続して書き込む。
FIG. 21 shows how the controller 10001 accesses the memory 10003. In order for the controller 10001 to perform write access to the memory 10003, the controller 10001 writes the upper byte of the address to be accessed on the memory 10003 to the address pointer upper byte 12001 and the lower byte to the address pointer lower byte 12002 (13001). Next, the controller 10001 writes the upper byte of the 2-byte data to be written to the address set in 13001 in the upper byte write buffer 12003 (13003). Similarly, by writing the lower byte of the 2-byte data to be written into the memory write buffer 12004 (13003), the process data control device 10002 has the address indicated by the address pointer consisting of the address pointer upper byte 12001 and the address pointer lower byte 12002. To memory write buffer 2004
The value of the upper byte write buffer 12003 is continuously written in the memory 10003 at the next address indicated by the address pointer.

コントローラ10001がメモリ10003からデータをリードする際にはライト時と同様にして、コントローラ10001はメモリ10003から読み込みたいデータのアドレスをアドレスポインタ上位バイト12001・下位バイト12002に値をセット
(13011)し、先程のライト時とは異なり、先ずコントローラ10001はメモリリードバッファ12006を読み込む。するとプロセスデータ制御装置10002はメモリ10003に対してメモリ10003からアドレスポインタ上位バイト12001と下位バイト12002からなるアドレスポインタで示されたアドレスの値をメモリリードバッファ12006に、アドレスポインタで示されたアドレスの次のアドレスの値を上位バイトリードバッファ12005に連続して読み込む(13012)。したがって、コントローラ10001がメモリリードバッファ12006をリードするとコントローラ10001はアドレスポインタで示されたメモリ10003上のアドレスの値を読み出すことができる。次にコントローラ10001は上位バイトリードバッファ12005をリードし、上位バイトを読み込み、リードアクセスは終了する(13013)。以上のようにコントローラ10001からのアクセスをプロセスデータ制御装置10002がメモリ10003に対して2バイト単位でアクセスすることにより、2バイトデータの同時性を保証する。また、コントローラ10001からのリードライトバッファ12003〜12006へのアクセスによりプロセスデータ制御装置10002がメモリ10003へ1バイトデータをアクセスするごとにアドレスポインタをインクリメントするアドレスポインタにオートインクリメント機能を持たせることで、コントローラ10001は一度アドレスポインタにアドレスをセットすれば、あとはリードライトバッファ12003〜12006へアクセスするだけで、コントローラ10001はアドレスポインタ12001,12002に新たにアドレスををセットすることなしにメモリ10003の連続アドレスにアクセスできる。
When the controller 10001 reads data from the memory 10003, the controller 10001 sets the address of the data to be read from the memory 10003 in the address pointer upper byte 12001 and lower byte 12002 (13011). Unlike the previous writing, the controller 10001 first reads the memory read buffer 12006. Then, the process data control device 10002 sends the address value indicated by the address pointer consisting of the address pointer upper byte 12001 and the lower byte 12002 from the memory 10003 to the memory read buffer 12006 with the address indicated by the address pointer. The next address value is continuously read into the upper byte read buffer 12005 (13012). Therefore, when the controller 10001 reads the memory read buffer 12006, the controller 10001 can read the value of the address on the memory 10003 indicated by the address pointer. Next, the controller 10001 reads the upper byte read buffer 12005, reads the upper byte, and the read access ends (13013). As described above, the process data control apparatus 10002 accesses the memory 10003 in units of 2 bytes for access from the controller 10001, thereby ensuring the simultaneity of 2-byte data. In addition, the process pointer is incremented every time the process data control device 10002 accesses 1-byte data to the memory 10003 by accessing the read / write buffer 12003 to 12006 from the controller 10001, thereby providing an auto-increment function. Once the controller 10001 sets an address in the address pointer, the controller 10001 simply accesses the read / write buffers 12003 to 12006, and the controller 10001 continues the memory 10003 without setting new addresses in the address pointers 12001 and 12002. You can access the address.

一方、通信プロセッサ10004からのメモリ10003へのアクセスはコントローラ10001からアクセスとは異なり、メモリ10003の全メモリ空間を通信プロセッサからのアドレス出力によって指定でき、かつ通信データバス24000が2バイトであるため、通信プロセッサ10004からのメモリ10003へのアドレス出力は偶数アドレス(アドレスの最下位ビットが0)となる。次に通信プロセッサ10004からメモリ
10003へのアクセス方法を示す。
On the other hand, the access from the communication processor 10004 to the memory 10003 is different from the access from the controller 10001, and the entire memory space of the memory 10003 can be specified by the address output from the communication processor, and the communication data bus 24000 is 2 bytes. An address output from the communication processor 10004 to the memory 10003 is an even address (the least significant bit of the address is 0). Next, a method for accessing the memory 10003 from the communication processor 10004 will be described.

通信プロセッサ10004からメモリ10003へのライトアクセス時には通信プロセッサ10004はプロセスデータ制御装置10002に対して、メモリ10003へのアドレスと通信データバス24000に2バイトのライトデータを出力する。プロセスデータ制御装置10002はメモリ10003へのライトアクセスはメモリデータバス23000のバス幅が1バイト幅であるため、先ずメモリ10003に対して2バイトからなる通信データバス24000の下位バイトを通信プロセッサ10004から指定されたアドレス(偶数アドレス)に書き込み、次に通信データバス24000の上位バイトをその次のアドレス(奇数アドレス:当該アドレスの最下位ビットを1にする)に書き込む2回連続ライトアクセスを行い、プロセスデータ制御装置10002はメモリ10003に対する通信プロセッサ10004からのライトアクセスを終了する。   During a write access from the communication processor 10004 to the memory 10003, the communication processor 10004 outputs an address to the memory 10003 and 2-byte write data to the communication data bus 24000 to the process data control device 10002. Since the memory data bus 23000 has a 1-byte bus width for write access to the memory 10003, the process data control device 10002 first sends the lower byte of the communication data bus 24000 consisting of 2 bytes from the communication processor 10004 to the memory 10003. Write to the specified address (even address), then perform two consecutive write accesses to write the upper byte of the communication data bus 24000 to the next address (odd address: the least significant bit of the address is 1), The process data control apparatus 10002 ends the write access from the communication processor 10004 to the memory 10003.

次に通信プロセッサ10004からのメモリ10003へのリードアクセス時には、ライト時と同様に通信プロセッサ10004,プロセスデータ制御装置10002に対してメモリ10003へのアドレスを出力する。プロセスデータ制御装置10002はメモリデータバス24000が1バイトバスであるため、通信プロセッサ10004から指定されたアドレス(偶数アドレス)で示されたメモリ10003の内容を読み出しこれを下位バイトとして、続く次のアドレスの内容を(奇数アドレス:当該アドレスの最下位ビットを1)をメモリ10003から読み出し、これを上位バイトとし、合わせて2バイトデータとして通信プロセッサ10004に出力する2回連続リードを行うことにより、プロセスデータ制御装置10002はメモリ10003に対する通信プロセッサ10004からのリードアクセスを終了する。   Next, at the time of read access to the memory 10003 from the communication processor 10004, the address to the memory 10003 is output to the communication processor 10004 and the process data control device 10002 in the same manner as at the time of writing. Since the memory data bus 24000 is a 1-byte bus, the process data control device 10002 reads the contents of the memory 10003 indicated by the address (even address) designated from the communication processor 10004, and uses this as the lower byte to continue to the next address Is read out from the memory 10003 (odd address: the least significant bit of the address is 1), and this is used as the upper byte, and is output to the communication processor 10004 as two-byte data in total, thereby performing a process twice. The data control device 10002 ends the read access from the communication processor 10004 to the memory 10003.

以上のようにして通信プロセッサ10004からメモリ10003へのアクセスは行われる。さらにプロセスデータ制御装置10002ではコントローラ10001と通信プロセッサ10004とは非同期で動作しているため、コントローラ10001と通信プロセッサ10004から同時にプロセスデータ制御装置10002にアクセス要求が発生する場合(メモリ10003へのアクセス競合)が存在する。この競合の解消方法としてプロセス制御装置10000ではテストアンドセット等のソフトウエアによる競合解消ではなく、プロセスデータ制御装置10002内に競合解消回路を持たせ、ハードウエアで競合をすばやく解消し競合によるメモリアクセス時のオーバーヘッドを小さくしている。この競合解消によりメモリ10003へのアクセスの排他性を2バイトアクセス単位で実現し、2バイトデータの同時性を保証する。   As described above, access from the communication processor 10004 to the memory 10003 is performed. Further, since the controller 10001 and the communication processor 10004 operate asynchronously in the process data control device 10002, when an access request is simultaneously generated from the controller 10001 and the communication processor 10004 to the process data control device 10002 (access contention to the memory 10003). ) Exists. As a method of resolving this conflict, the process control device 10000 does not solve the conflict by software such as test and set, but has a conflict resolution circuit in the process data control device 10002 to quickly resolve the conflict by hardware and to access the memory by the conflict. The overhead of time is reduced. By this conflict resolution, access exclusiveness to the memory 10003 is realized in 2-byte access units, and simultaneity of 2-byte data is guaranteed.

図22にプロセスデータ制御装置10002の構成を示す。プロセスデータ制御装置
10002はコントローラ10001とはIOデータバス21000とIOアドレスバスとで、通信プロセッサ10004とは通信データバス24000と通信アドレスバスとで、メモリ10003とはメモリデータバス23000とメモリアドレスバスとで接続されており、IOデータバス21000,通信データバス24000,メモリデータバス
23000はそれぞれ、1バイト幅,2バイト幅,1バイト幅の双方向バスであり、IOアドレスバス,通信アドレスバス,メモリアドレスバスはすべて2バイト幅である。このプロセスデータ制御装置10002はコントローラ10001からのIOアドレス出力をデコードするIOデコーダ10021とコントローラ10001からアクセス時のデータを制御し2バイト同時保証を行う2バイト同時保証回路10023と、コントローラ
10001からのアクセス時にメモリへのアドレスを保持するアドレスポインタ10024 と通信プロセッサからのアクセス時のデータを制御するメモリシーケンサ10025と2バイト同時保証回路10023からの出力データとメモリシーケンサ10025からの出力データをセレクトしメモリデータバス23000に出力するセレクタ10027と、アドレスポインタ10024からのアドレス出力と通信プロセッサ10004からのアドレス出力をセレクトし、メモリアドレスバスに出力するセレクタ10026,2バイト同時保証回路からIOデータバス21000への出力を制御する3状態バッファ11001,同じくメモリシーケンサ10025から通信データバス24000への出力を制御する3状態バッファ11003、同じくセレクタ10027の出力をメモリデータバス23000
への出力を制御する3状態バッファ11002、また、これらを制御する制御装置10022から構成される。
FIG. 22 shows the configuration of the process data control apparatus 10002. The process data control device 10002 is the controller 10001, the IO data bus 21000 and the IO address bus, the communication processor 10004 is the communication data bus 24000 and the communication address bus, and the memory 10003 is the memory data bus 23000 and the memory address bus. The IO data bus 21000, the communication data bus 24000, and the memory data bus 23000 are bidirectional buses of 1 byte width, 2 byte width, and 1 byte width, respectively. All address buses are 2 bytes wide. This process data control device 10002 has an IO decoder 10021 that decodes an IO address output from the controller 10001, a 2-byte simultaneous guarantee circuit 10023 that controls data at the time of access from the controller 10001, and guarantees 2-byte simultaneous guarantee, and an access from the controller 10001. Sometimes the address pointer 10024 for holding the address to the memory, the memory sequencer 10025 for controlling the data at the time of access from the communication processor, the output data from the 2-byte simultaneous guarantee circuit 10025, and the output data from the memory sequencer 10025 are selected and the memory data is selected. Select the selector 10027 to be output to the bus 23000, the address output from the address pointer 10024 and the address output from the communication processor 10004, and A selector 10026 for outputting to the bus, a 3-state buffer 11001 for controlling the output from the 2-byte simultaneous guarantee circuit to the IO data bus 21000, a 3-state buffer 11003 for controlling the output from the memory sequencer 10025 to the communication data bus 24000, and a selector 10027 outputs to memory data bus 23000
It comprises a three-state buffer 11002 that controls the output to and a control device 100022 that controls them.

IOデコーダ10021はコントローラ10001からのプロセスデータ制御装置
10002へのアクセス時にIOアドレスをデコードし、プロセスデータ制御装置10002へのアクセスであれば、アドレスポインタ10024へのアクセスかメモリ10003へのアクセスかを判定する。コントローラ10001からのアクセスがアドレスポインタ
10024へのアクセスの場合にはアドレスポインタ10024に対してアドレスポインタの上位または下位バイトへのデータセット信号を出力する。また、メモリアクセス(メモリライトバッファ12004,メモリリードバッファ12006へのアクセス)の場合には制御回路10022にアクセス要求を出力する。制御回路10022は内部に競合判定回路10221を持っており、メモリ10003へのアクセスにおける競合が発生するか否かを判定する。メモリ10003への競合が発生する場合にはメモリシーケンサ
10025からのメモリ10003へのアクセスが終了するまで待たせてから、競合が発生しなればアクセス許可を2バイト同時保証回路10023に与えるとともに、セレクタ10026にアドレスポインタ10024の出力を選択させる。さらに、コントローラ
10001からのアクセスがリードアクセスの場合にはメモリ10003に対して2回連続してリード要求を出力すると共に、IOデータバス21000への3状態バッファ
11001を出力状態にする。またコントローラ10001からのアクセスがライトアクセスの場合にはメモリ10003に対して2回連続してライト要求を出力するとともにセレクタ10027に2バイト同時制御回路の出力を選択させ、メモリデータバス23000への3状態バッファ11002をドライブする。2バイト同時保証回路10023は制御回路10022よりアクセス許可を得てメモリ10003に対してアクセスを開始する。
The IO decoder 10021 decodes the IO address when accessing the process data control device 10002 from the controller 10001, and determines whether the access is to the address pointer 10024 or the memory 10003 if the access is to the process data control device 10002. To do. When the access from the controller 10001 is an access to the address pointer 10024, a data set signal for the upper or lower byte of the address pointer is output to the address pointer 10024. In the case of memory access (access to the memory write buffer 12004 and memory read buffer 12006), an access request is output to the control circuit 10022. The control circuit 10022 has a contention determination circuit 10221 inside, and determines whether contention in access to the memory 10003 occurs. If a conflict with the memory 10003 occurs, the memory sequencer 10025 waits until the access to the memory 10003 is completed, and if the conflict does not occur, an access permission is given to the 2-byte simultaneous guarantee circuit 10027, and the selector 10026 causes the output of the address pointer 10024 to be selected. Further, when the access from the controller 10001 is a read access, a read request is continuously output twice to the memory 10003 and the three-state buffer 11001 to the IO data bus 21000 is set in an output state. If the access from the controller 10001 is a write access, a write request is output twice in succession to the memory 10003 and the selector 10027 is made to select the output of the 2-byte simultaneous control circuit, so that 3 is sent to the memory data bus 23000. The status buffer 11002 is driven. The 2-byte simultaneous guarantee circuit 10025 obtains access permission from the control circuit 10022 and starts accessing the memory 10003.

また、通信プロセッサ10004からのアクセス時にはメモリシーケンサ10025が制御回路10022にアクセス要求を出力し、制御回路10022が持っている競合判定回路10221がメモリ10003へのアクセス競合が発生するかを判定し、競合が発生するならば2バイト同時保証回路10023がメモリ10003へのアクセスが終了するまでまたせ、メモリ10003へのアクセス競合が発生しなければ、制御回路10022はメモリシーケンサ10025にアクセス許可を与えるとともに、セレクタ10026に通信プロセッサ10004のアドレス出力を選択させる。さらに、通信プロセッサ10004からのアクセスがリードアクセスの場合にはメモリ10003に対して2回連続してリード要求を出力すると共に通信データバス24000への3状態バッファ11003をドライブする。また、通信プロセッサ10004からのアクセスがライトアクセスの場合にはメモリ10003に対して2回連続ライト要求を出力すると共にセレクタ10027にメモリシーケンサ10025の出力を選択させ、メモリデータバス23000への3状態バッファ11002をドライブする。   Further, when accessing from the communication processor 10004, the memory sequencer 10025 outputs an access request to the control circuit 10022, and the contention determination circuit 10221 of the control circuit 10022 determines whether or not an access contention to the memory 10003 occurs. If this occurs, the 2-byte simultaneous guarantee circuit 10023 will wait until the access to the memory 10003 is completed. If there is no access contention to the memory 10003, the control circuit 10022 gives access permission to the memory sequencer 10025 and The control unit 10002 selects the address output of the communication processor 10004. Further, when the access from the communication processor 10004 is a read access, a read request is output twice in succession to the memory 10003 and the three-state buffer 11003 to the communication data bus 24000 is driven. If the access from the communication processor 10004 is a write access, a continuous write request is output twice to the memory 10003 and the selector 10027 is made to select the output of the memory sequencer 10025 to provide a three-state buffer to the memory data bus 23000. Drive 11002.

図23に2バイト同時保証回路10023の構成を示す。2バイト同時保証回路10023は同時保証制御回路10231とメモリ10003へのライト時に上位バイトデータを保持するラッチ10232とメモリ10003へのライトデータを選択するセレクタ10235、また、メモリ10003へのリード時に上位バイトデータを保持するラッチ10233,下位バイトを保持するラッチ10234,コントローラ10001へのリードデータを選択するセレクタ10236から構成されている。この2バイト同時保証回路100023は制御回路10022からのアクセス許可を受けて起動し、IOデコーダ10021から、上位バイトライトバッファ12003,メモリライトバッファ12004,上位バイトリードバッファ12005,メモリリードバッファ12006のどれへのアクセスかを受け取る。同時保証制御回路10231の動作は次のとおりである。上位バイトライトバッファ12003へのアクセスの場合には同時保証制御回路10231はラッチ10232にラッチ信号を出力しラッチ10232にIOデータバス21000のデータをラッチさせる。上位バイトリードバッファ12005へのアクセスの場合には同時保証制御回路10231はセレクタ10236にラッチ10234の出力を選択させ、IOデータバス21000にラッチ10234に保持された上位バイトデータを出力させる。また、メモリライトバッファ12004へのアクセス時には同時保証制御回路10231は制御回路10022に対してメモリ10003へのライト要求を出力し、同制御回路10022からアクセス許可をもらうのを待つ、同時保証制御回路10231は制御回路10022からアクセス許可をもらうと、セレクタ10235にIOデータバス21000を選択させ、メモリ
10003にメモリライトバッファ12004への書き込みデータを書き込み、続いて同時保証制御回路10231はセレクタ10235をラッチ10232を選択させ、上位バイトリードバッファの値をメモリ10003に出力し、ラッチ10232のデータを書き込むことにより、2バイトデータを連続してメモリ10003へ書き込む。
FIG. 23 shows the configuration of the 2-byte simultaneous guarantee circuit 10027. The 2-byte simultaneous guarantee circuit 10027 includes a simultaneous guarantee control circuit 10231, a latch 10232 for holding upper byte data when writing to the memory 10003, a selector 10235 for selecting write data to the memory 10003, and an upper byte when reading to the memory 10003. A latch 10233 for holding data, a latch 10234 for holding lower bytes, and a selector 10236 for selecting read data to the controller 10001 are configured. The 2-byte simultaneous guarantee circuit 100023 is activated upon receiving an access permission from the control circuit 10022, and from the IO decoder 10021 to any of the upper byte write buffer 12003, the memory write buffer 12004, the upper byte read buffer 12005, and the memory read buffer 12006. Receive access. The operation of the simultaneous guarantee control circuit 10231 is as follows. In the case of access to the upper byte write buffer 12003, the simultaneous guarantee control circuit 10231 outputs a latch signal to the latch 10232 and causes the latch 10232 to latch the data on the IO data bus 21000. In the case of access to the upper byte read buffer 12005, the simultaneous guarantee control circuit 10231 causes the selector 10236 to select the output of the latch 10234 and causes the IO data bus 21000 to output the upper byte data held in the latch 10234. At the time of accessing the memory write buffer 12004, the simultaneous guarantee control circuit 10231 outputs a write request to the memory 10003 to the control circuit 10022 and waits for access permission from the control circuit 10022. When access permission is received from the control circuit 10022, the selector 10235 causes the IO data bus 21000 to be selected, the write data to the memory write buffer 12004 is written to the memory 10003, and then the simultaneous guarantee control circuit 10231 causes the selector 10235 to latch 10232. By selecting, the value of the upper byte read buffer is output to the memory 10003, and the data of the latch 10232 is written, whereby the 2-byte data is continuously written to the memory 10003.

メモリリードバッファ12006へのアクセス時には、同様にして制御回路10022に対してメモリ10003へのリード要求を出力し、同制御回路10022からアクセス許可をもらうのを待つ。同時保証制御回路10231は制御回路10022からアクセス許可をもらうと、制御装置10022から2回連続してリード要求が出力されるので、同時保証制御回路10231はラッチ10233にラッチ信号を出力し最初のリードデータ(下位バイトデータ)をラッチ10233に保持させ、続いて、ラッチ10234にラッチ信号を出力し続くメモリ10003からのリードデータ(上位バイト)を10234に保持させる。また、同時保証回路10231はセレクタ10235をラッチ10233への出力を選択しIOデータバス21000に下位バイトデータを出力する。   When accessing the memory read buffer 12006, a read request to the memory 10003 is output to the control circuit 10022 in the same manner, and waiting for access permission from the control circuit 10022. When the simultaneous guarantee control circuit 10231 receives an access permission from the control circuit 10022, a read request is output continuously twice from the control device 10022. Therefore, the simultaneous guarantee control circuit 10231 outputs a latch signal to the latch 10233 and outputs the first read. Data (lower byte data) is held in the latch 10233, and subsequently, a latch signal is output to the latch 10234, and the read data (upper byte) from the memory 10003 is held in 10234. Further, the simultaneous guarantee circuit 10231 selects the selector 10235 to output to the latch 10233 and outputs the lower byte data to the IO data bus 21000.

図24にアドレスポインタ10024の概要を示す。アドレスポインタ10024はメモリ10003へ出力するアドレスの上位バイトを保持するラッチ10241と下位バイトを保持するラッチ10242、また、メモリ10003へのオートインクリメントを行う16ビット(2バイト)インクリメンタ10243,セレクタ10244,10245から構成され、セレクタ10244,10245はそれぞれ、ラッチ10241,10242への入力データをIOデータバス21000か、16ビットインクリメンタ10243の出力かを選択する。セレクタ10244,10245は通常は16ビットインクリメンタ10243の出力を選択しているが、コントローラ10001がアドレスポインタをアクセスする際にはセレクタ10244,10245共にIOデータバス21000側を選択する。コントローラ10001がアドレスポインタ上位バイト12001をアクセス時にはIOデコーダ10021からラッチ10241にラッチ信号が出力され、ラッチ10241にIOデータバス21000の値が、また、コントローラ10001がアドレスポインタ下位バイト12002をアクセス時にはIOデコーダ10021からラッチ10242にラッチ信号が出力され、ラッチ10242にIOデータバス21000の値が書き込まれる。また、コントローラ10001がメモリライトバッファ12004,メモリリードバッファ12006へのアクセス時には制御回路10022からメモリ10003へリード/ライト要求信号が出力されるとともにラッチ10241,10242にラッチ信号が出力され、メモリ10003へのアクセスごとにアドレスポインタの値がインクリメントされて、2回連続アクセスの際にアドレスポインタが1つずつインクリメントされるため、正しくメモリアクセスを行うことができる。   FIG. 24 shows an outline of the address pointer 10024. The address pointer 10024 includes a latch 10241 for holding an upper byte of an address to be output to the memory 10003 and a latch 10242 for holding a lower byte, a 16-bit (2 bytes) incrementer 10243 for performing auto-increment to the memory 10003, a selector 10244, The selectors 10244 and 10245 select whether the input data to the latches 10241 and 10242 is the output of the IO data bus 21000 or the 16-bit incrementer 10243, respectively. The selectors 10244 and 10245 normally select the output of the 16-bit incrementer 10243, but when the controller 10001 accesses the address pointer, both the selectors 10244 and 10245 select the IO data bus 21000 side. When the controller 10001 accesses the address pointer upper byte 12001, a latch signal is output from the IO decoder 10021 to the latch 10241, the value of the IO data bus 21000 is output to the latch 10241, and when the controller 10001 accesses the address pointer lower byte 12002, the IO decoder A latch signal is output from 10021 to the latch 10242, and the value of the IO data bus 21000 is written to the latch 10242. When the controller 10001 accesses the memory write buffer 12004 and the memory read buffer 12006, a read / write request signal is output from the control circuit 10022 to the memory 10003, and a latch signal is output to the latches 10241 and 10242. The value of the address pointer is incremented for each access, and the address pointer is incremented by one at the time of two consecutive accesses, so that memory access can be performed correctly.

図25にメモリシーケンサ10025の概要を示す。メモリシーケンサ10025は通信プロセッサ10004のライト時に2バイト幅の通信データバス24000のライトデータの上位バイト,下位バイトを選択しメモリデータバス23000に出力するセレクタ10252と、通信プロセッサ10004のリード時に上位バイトを保持するラッチ
10253と下位バイトを保持するラッチ10254とこれらを制御するメモリシーケンサ制御回路10251から構成される。通信プロセッサ10004からのライト時にはメモリシーケンサ制御回路10251は制御回路10022にライト要求信号を出力し、同制御回路10022からのアクセス許可が来るのを待つ。同制御回路10022からのアクセス許可が来ると、メモリシーケンサは制御回路10022から出力されるメモリ
10003への2回連続のライトアクセス要求に対してセレクタ10254を最初のライトアクセス時には下位バイトを続く次のライトアクセス時には上位バイトを選択すると同時にアドレスの最下位ビットを最初のライトアクセス時には0を次のライトアクセス時には1を出力することにより、メモリ10003の連続したアドレスに通信データバス
24000上のデータを書き込む。また、通信プロセッサ10004がメモリ10003からリードするときには、制御回路10022にライト要求信号を出力し、同制御回路
10022からのアクセス許可が来るのを待つ。同制御回路10022はメモリシーケンサ制御回路10251にアクセス許可が与えると共に、メモリ10003に対して2回連続してリードアクセス要求を出力する。メモリシーケンサ10251は制御回路10022からアクセス許可をもらうと、最初のメモリ10003からのリードデータをラッチ10253に、続く次のリードデータをラッチ10254に保持させるようにラッチ10253,
10254にラッチ信号を出力し、通信データバス24000にラッチ10253,
10254の出力からなるに2バイトデータを出力する。以上のようにして通信プロセッサ10004からのメモリアクセスに対しても2バイト同時保証を実現する。
FIG. 25 shows an outline of the memory sequencer 10025. The memory sequencer 10025 selects the upper byte and the lower byte of the write data of the communication data bus 24000 having a width of 2 bytes when the communication processor 10004 writes, and outputs the higher byte to the memory data bus 23000 and the upper byte when the communication processor 10004 reads. It comprises a latch 10253 for holding, a latch 10254 for holding the lower byte, and a memory sequencer control circuit 10251 for controlling them. At the time of writing from the communication processor 10004, the memory sequencer control circuit 10251 outputs a write request signal to the control circuit 10022 and waits for access permission from the control circuit 10022. When access permission is received from the control circuit 10022, the memory sequencer causes the selector 10254 to respond to two consecutive write access requests to the memory 10003 output from the control circuit 10022. Data on the communication data bus 24000 is written to consecutive addresses in the memory 10003 by selecting the upper byte at the time of write access and outputting 0 at the first write access and 1 at the next write access. . When the communication processor 10004 reads from the memory 10003, it outputs a write request signal to the control circuit 10022 and waits for access permission from the control circuit 10022. The control circuit 10022 gives access permission to the memory sequencer control circuit 10251 and outputs read access requests to the memory 10003 twice in succession. When the memory sequencer 10251 receives access permission from the control circuit 10028, the latch 10253, the latch 10253 holds the read data from the first memory 10003 in the latch 10253, and the next read data in the latch 10254.
A latch signal is output to 10254, and the latch 10253,
2-byte data is output consisting of 10254 outputs. As described above, 2-byte simultaneous guarantee is realized for memory access from the communication processor 10004.

図26にコントローラ10001からのメモリ10003へのアクセス時のタイムチャートを図27に通信プロセッサ10004からのメモリ10003へのアクセス時のタイムチャートを挙げる。   FIG. 26 shows a time chart when the controller 10001 accesses the memory 10003, and FIG. 27 shows a time chart when the communication processor 10004 accesses the memory 10003.

以上のようにしてプロセスデータ制御装置10002は動作することにより、コントローラ10001に対して2バイトデータの同時性を保証する。   As described above, the process data control apparatus 10002 operates to guarantee the 2-byte data simultaneity to the controller 10001.

本発明であるデータ転送方式の適用例1の概要図。The schematic diagram of the example 1 of application of the data transfer system which is this invention. プログラマブルコントローラを用いた制御システムの概要図。The schematic diagram of the control system using a programmable controller. 図1のメモリコントローラの詳細図。FIG. 2 is a detailed diagram of the memory controller of FIG. 1. 図3の内容更新判定装置の詳細図制御メモリ。FIG. 4 is a detailed control memory of the content update determination device of FIG. 3. 図4の比較回路の真理値表。The truth table of the comparison circuit of FIG. 制御メモリのアクセス単位を示す図。The figure which shows the access unit of control memory. 図4のシーケンサの概要図。FIG. 5 is a schematic diagram of the sequencer in FIG. 4. リードモディファイライト時のデータフォーマットを示す図。The figure which shows the data format at the time of read modify write. 図1の転送装置の概要図。FIG. 2 is a schematic diagram of the transfer device in FIG. 1. 読み込み時のメモリコントローラの動作タイミングチャート図。The operation | movement timing chart figure of the memory controller at the time of reading. 書き込み時のメモリコントローラの動作タイミングチャート図。The operation | movement timing chart figure of the memory controller at the time of writing. リードモディファイライト時のメモリコントローラの動作タイミングチャート図。The operation | movement timing chart figure of the memory controller at the time of read modify write. 転送装置の制御メモリへの読み込み動作タイミングチャート図。FIG. 4 is a timing chart of an operation for reading data into a control memory of a transfer device. 転送装置の制御メモリへの書き込み動作タイミングチャート。6 is a timing chart of the write operation to the control memory of the transfer apparatus. 本発明のデータ転送方式の適用例2の概要図。The schematic diagram of the example 2 of application of the data transfer system of this invention. 図15のCPU501のメモリマップ。The memory map of CPU501 of FIG. 図15のCPU501のデータ送信時のメモリコントローラ401の動作タイミングチャート。The operation | movement timing chart of the memory controller 401 at the time of the data transmission of CPU501 of FIG. 図15のCPU501のデータ受信時のメモリコントローラ401の動作タイミングチャート。FIG. 16 is an operation timing chart of the memory controller 401 when the CPU 501 in FIG. 15 receives data. FIG. プロセス制御装置の概要図。1 is a schematic diagram of a process control device. 図19のコントローラから見えるIOアドレスマッピング。The IO address mapping visible from the controller of FIG. 図19のコントローラからプロセス制御装置を介してのメモリアクセス手順。Memory access procedure from the controller of FIG. 19 via the process control device. 図19のプロセスデータ制御装置の概要図。FIG. 20 is a schematic diagram of the process data control device of FIG. 19. 図22の2バイト同時保証回路の概要図。FIG. 23 is a schematic diagram of the 2-byte simultaneous guarantee circuit of FIG. 22. 図22のアドレスポインタの概要図。FIG. 23 is a schematic diagram of the address pointer of FIG. 22. 図22のメモリシーケンサの概要図。FIG. 23 is a schematic diagram of the memory sequencer of FIG. 22. 図19のコントローラからのメモリアクセスのタイムチャート。FIG. 20 is a time chart of memory access from the controller of FIG. 19. FIG. 図19の通信プロセッサからのメモリアクセスのタイムチャート。FIG. 20 is a time chart of memory access from the communication processor of FIG. 19. FIG.

符号の説明Explanation of symbols

101…計算装置、141,231,241,261,451…アドレスバス、142,232,242,262,452…データバス、143,234,244,263,
453…メモリ制御信号、201…制御メモリ、233,243,251…内容更新ビットバス、301…制御データ転送装置、401…メモリコントローラ、501…CPU、1000…制御装置、1200…ネットワーク、2000…被制御装置、2001…入出力装置、2101…センサ、2102…アクチュエータ、3000…装置、4001…シーケンサ、4002…内容更新判定装置、4011,4012,4022…ラッチ、4201…セレクタ、4202…ビットマージ、4301,4302,4303…3状態バッファ、5001…比較回路、5002…オアゲート。
DESCRIPTION OF SYMBOLS 101 ... Computer, 141, 231, 241, 261, 451 ... Address bus, 142, 232, 242, 262, 452 ... Data bus, 143, 234, 244, 263
453 ... Memory control signal, 201 ... Control memory, 233,243,251 ... Content update bit bus, 301 ... Control data transfer device, 401 ... Memory controller, 501 ... CPU, 1000 ... Control device, 1200 ... Network, 2000 ... Control device, 2001 ... Input / output device, 2101 ... Sensor, 2102 ... Actuator, 3000 ... Device, 4001 ... Sequencer, 4002 ... Content update determination device, 4011, 4012, 4022 ... Latch, 4201 ... Selector, 4202 ... Bit merge, 4301 , 4302, 4303... Three-state buffer, 5001... Comparison circuit, 5002.

Claims (2)

少なくともプロセス状態や制御データを格納したメモリと、
上記メモリに格納されたプロセス情報に基づいて制御データを生成するコントローラと、
上記メモリにプロセス情報を格納する動作を行うと共に、上記メモリに格納された制御データ読み出す動作を行うプロセッサと、
上記メモリ、上記コントローラ及び上記プロセッサと接続され、上記コントローラのアクセスデータ及び上記プロセッサのアクセスデータを同時期に格納可能に構成されて複数のビットデータを保持するレジスタを有し、上記コントローラ及びプロセッサからのリードアクセスに対して、上記メモリと接続されるバスのサイズの制約に対して、上記リードアクセスのデータサイズで必要となる回数に分けて、上記リードアクセスの対象となるデータを連続的に上記メモリから読み出し、上記複数に分けて読み出したデータは上記コントローラからのデータか上記プロセッサからのデータかを識別できるようにレジスタに格納し、上記複数に分けての連続的なレジスタへの格納と並列的で少なくともその一部は時間的に重なるように、上記レジスタに格納されたデータを上記コントローラ及びプロセッサのうちのアクセスを受けた方に転送するデータ制御装置とを有することを特徴とするプロセス制御装置。
At least memory that stores process status and control data,
A controller that generates control data based on the process information stored in the memory;
A processor for performing an operation for storing process information in the memory and for performing an operation for reading control data stored in the memory;
The memory is connected to the controller and the processor, the access data of the access data and the processor of the controller is configured to be stored in the same time has a register for holding a plurality of bit data from the controller and processor For the read access, the data for the read access is continuously increased by dividing the number of times required by the data size of the read access against the restriction on the size of the bus connected to the memory. serial and read out from the memory, data read is divided into upper Symbol plurality is stored in the register so as to identify whether the data from the data or the processor from the controller, to a continuous register is divided into the plurality In parallel with the storage of at least a part of it in time. Process control device, characterized in that it comprises a data control unit for transferring the data stored in the data data to those who received the access of the controller and the processor.
少なくともプロセス状態や制御データを格納したメモリと、
上記メモリに格納されたプロセス情報に基づいて制御データを生成するコントローラと、
上記メモリにプロセス情報を格納する動作を行うと共に、上記メモリに格納された制御データ読み出す動作を行うプロセッサと、
上記メモリ、上記コントローラ及び上記プロセッサと接続され、上記コントローラのアクセスデータ及び上記プロセッサのアクセスデータを同時期に格納可能に構成されて複数のビットデータを保持するレジスタを有し、上記メモリと接続されるバスサイズの制約を超えるデータサイズである上記コントローラ或いはプロセッサからのライトアクセスに対して、上記ライトアクセスのデータサイズで必要となる上記メモリへの転送回数分に分けられるように上記ライトアクセスの対象となる上記ライトデータを上記レジスタに格納し、上記格納したライトデータは上記コントローラからのデータか上記プロセッサからのデータかを識別できるように格納しており、前記上記メモリへ転送するために分けられるライトデータのいずれもが上記レジスタに格納された後に、上記レジスタに格納されたライトデータを、分けられる単位で順々に上記メモリに書き込むデータ制御装置とを有することを特徴とするプロセス制御装置。
At least memory that stores process status and control data,
A controller that generates control data based on the process information stored in the memory;
A processor for performing an operation for storing process information in the memory and for performing an operation for reading control data stored in the memory;
Connected to the memory , the controller, and the processor, and configured to store the access data of the controller and the access data of the processor at the same time, and has a register that holds a plurality of bit data, and is connected to the memory The write access target is divided into the number of transfers to the memory required for the write access data size for the write access from the controller or processor having a data size exceeding the bus size constraint. The write data is stored in the register, and the stored write data is stored so that it can be identified whether the data is from the controller or the processor, and is divided for transfer to the memory. All of the write data After being stored in the static process control device, characterized in that it comprises a data control unit for writing the write data stored in the register, in the memory in sequence in units divided.
JP2006238436A 2006-09-04 2006-09-04 Data transfer method Expired - Fee Related JP4363431B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006238436A JP4363431B2 (en) 2006-09-04 2006-09-04 Data transfer method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006238436A JP4363431B2 (en) 2006-09-04 2006-09-04 Data transfer method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP7715697A Division JPH10269134A (en) 1997-03-28 1997-03-28 Data transfer system

Publications (2)

Publication Number Publication Date
JP2006344244A JP2006344244A (en) 2006-12-21
JP4363431B2 true JP4363431B2 (en) 2009-11-11

Family

ID=37641110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006238436A Expired - Fee Related JP4363431B2 (en) 2006-09-04 2006-09-04 Data transfer method

Country Status (1)

Country Link
JP (1) JP4363431B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298226A (en) * 2014-09-28 2015-01-21 中国石油大学(华东) Control system performance evaluation device and method based on state

Also Published As

Publication number Publication date
JP2006344244A (en) 2006-12-21

Similar Documents

Publication Publication Date Title
US5367639A (en) Method and apparatus for dynamic chaining of DMA operations without incurring race conditions
US5251312A (en) Method and apparatus for the prevention of race conditions during dynamic chaining operations
US5642489A (en) Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management
JP4887313B2 (en) Complex nonlinear data transfer control system
JP3136257B2 (en) Computer memory interface device
US5859990A (en) System for transferring data segments from a first storage device to a second storage device using an alignment stage including even and odd temporary devices
US8190794B2 (en) Control function for memory based buffers
US10540096B2 (en) Method and design for dynamic management of descriptors for SGL operation
JP2002140289A (en) Micro-controller dma operation with adjustable word size transfer and address array/increase
JP5128093B2 (en) Device that invalidates multiple address cache entries
JP4226085B2 (en) Microprocessor and multiprocessor system
JPH05173932A (en) Data transfer device
JP2001195384A (en) Processor and method for controlling input and output pin of the processor
US6738837B1 (en) Digital system with split transaction memory access
US20040068590A1 (en) Data processor
JP4363431B2 (en) Data transfer method
JP4741735B2 (en) System and method for disk controller memory architecture
JPH06348593A (en) Data transfer controller
US20200272588A1 (en) Programmable arbitrary sequence direct memory access controller for configuring multiple core independent peripherals
JPH11232213A (en) Data transfer system for input/output device
US6944725B2 (en) Reciprocally adjustable dual queue mechanism
JPH10269134A (en) Data transfer system
JP2001056793A (en) Information processor
US20220391336A1 (en) Semiconductor device
CN111742303B (en) Apparatus and method for accessing metadata when debugging a device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090625

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: 20090728

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090810

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

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130828

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees