JPH10269134A - Data transfer system - Google Patents
Data transfer systemInfo
- Publication number
- JPH10269134A JPH10269134A JP7715697A JP7715697A JPH10269134A JP H10269134 A JPH10269134 A JP H10269134A JP 7715697 A JP7715697 A JP 7715697A JP 7715697 A JP7715697 A JP 7715697A JP H10269134 A JPH10269134 A JP H10269134A
- 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.)
- Pending
Links
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明はプログラマブルコン
トローラのように、制御装置と制御対象となる被制御装
置との間に一定間隔でデータ転送が必要な計算機システ
ムに関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computer system, such as a programmable controller, which requires data transfer at regular intervals between a control device and a controlled device to be controlled.
【0002】[0002]
【従来の技術】従来より、産業設備を構成する様々な装
置を制御するプログラマブルコントローラでは、各装置
の状態を報告するセンサからの情報を取り込み、各装置
のアクチュエータに指示を与えることにより産業設備を
制御している。このプログラマブルコントローラ上で実
行される制御プログラムを作り易くすることを目的とし
て、プログラマブルコントローラ内に制御メモリと呼ば
れるメモリを置き、この制御メモリ上の各ビットに制御
対象となる各装置のセンサ情報やアクチュエータ情報を
マッピングする。プログラマブルコントローラは、ネッ
トワークを介して定期的に各装置と通信を行い、センサ
情報は装置側からプログラマブルコントローラ側に、ア
クチュエータ情報は反対にプログラマブルコントローラ
側から装置側にデータを転送することにより、この制御
メモリの内容と装置のセンサ情報やアクチュエータ情報
の状態との一致を図っている。このような特徴を持つ制
御メモリをプログラマブルコントローラが備えることに
より、制御プログラムは、この制御メモリをアクセスす
るだけで各装置の制御を行うことが可能となる。2. Description of the Related Art Conventionally, a programmable controller for controlling various devices constituting an industrial facility has been configured to receive information from a sensor for reporting the status of each device and to give instructions to actuators of each device to thereby control the industrial facility. Controlling. For the purpose of facilitating the creation of a control program to be executed on the programmable controller, a memory called a control memory is placed in the programmable controller, and each bit on the control memory stores sensor information and actuator information of each device to be controlled. Map information. The programmable controller communicates with each device periodically via a network, and sensor information is transferred from the device to the programmable controller, and actuator information is transferred from the programmable controller to the device. The contents of the memory are matched with the states of the sensor information and actuator information of the device. By providing the programmable controller with a control memory having such characteristics, the control program can control each device only by accessing the control memory.
【0003】ところが、近年になって産業設備の大型化
高性能化に伴いプログラマブルコントローラの制御対象
となる装置数の増加と共に各装置におけるセンサ数やア
クチュエータ数が増加した。これにより、プログラマブ
ルコントローラと各装置との間でネットワークを流れる
データ転送量が増加すると共に制御プログラムの処理も
増加して、制御サイクルと呼ばれる制御プログラムが実
行の開始から次の制御プログラムの実行が開始されるま
での時間が長くなった。この制御サイクルを短縮するた
め、制御プログラムの実行時間の短縮に加えてプログラ
マブルコントローラと各装置との間のデータ転送時間を
短縮することが必要となった。However, in recent years, as the number of devices to be controlled by a programmable controller has increased with the increase in size and performance of industrial equipment, the number of sensors and actuators in each device has also increased. As a result, the amount of data transferred through the network between the programmable controller and each device is increased, and the processing of the control program is also increased. The time before it was longer. 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 the time required to execute the control program.
【0004】このデータ転送時間を短縮する方法とし
て、高速なネットワークを使用する方法とデータ転送の
効率化を図る方法の2つが挙げられる。There are two methods for reducing the data transfer time: a method using a high-speed network and a method for improving the efficiency of data transfer.
【0005】高速ネットワークを使用する方法はプログ
ラマブルコントローラと各装置との間で行われるデータ
転送が高速となるため、データ転送時間の短縮を実現で
きる。また、データ転送の効率化としては制御メモリを
センサ情報を格納するセンサ領域とアクチュエータ情報
を格納するアクチュエータ領域との2つに分割する方法
がある。制御メモリ上にセンサ情報とアクチュエータ情
報が混在していると制御メモリの各アドレスのデータが
センサ情報かアクチュエータ情報かを示すテーブルがプ
ログラマブルコントローラ内に必要となる。この場合、
プログラムコントローラと各装置間の転送時にそのテー
ブルをひかなければならないため、余分なオーバーヘッ
ドがかかってしまう。また、装置側でプログラマブルコ
ントローラから送られて来た情報がセンサ情報であるか
アクチュエータ情報であるかの判定を行う場合にはプロ
グラマブルコントローラは余計なデータであるセンサ情
報までも装置側に転送しなければならないため、データ
転送量が増加して転送時間がかかってしまう。同様にセ
ンサ情報に関しても同じことが言える。しかし制御メモ
リの領域を分割することでこのセンサ情報かアクチュエ
ータ情報であるかの判定のオーバーヘッドやプログラマ
ブルコントローラと各装置との間に余計なデータ転送を
省くことができるため、プログラマブルコントローラと
各装置との間のデータ転送時間の短縮が実現できる。In a method using a high-speed network, data transfer between the programmable controller and each device is performed at a high speed, so that the data transfer time can be reduced. In order to improve the efficiency of data transfer, there is a method of dividing the control memory into two parts, 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 data at each address of the control memory is sensor information or actuator information is required in the programmable controller. in this case,
Since the table must be checked during transfer between the program controller and each device, extra overhead is required. When the device determines whether the information sent from the programmable controller is sensor information or actuator information, the programmable controller must also transfer the sensor information, which is unnecessary data, to the device. Therefore, the amount of data transfer increases and the transfer time increases. Similarly, the same can be said for the sensor information. However, by dividing the area of the control memory, the overhead of determining whether the information is sensor information or actuator information and unnecessary data transfer between the programmable controller and each device can be omitted. , The data transfer time can be reduced.
【0006】[0006]
【発明が解決しようとする課題】上記の通り、データ転
送時間の高速化を図るためには高速なネットワークを使
用する方法と、余計なオーバーヘッドやデータ転送を省
くことにより転送効率を向上させる方法がある。As described above, in order to shorten the data transfer time, there are a method using a high-speed network and a method for improving the transfer efficiency by eliminating unnecessary overhead and data transfer. is there.
【0007】前者の高速なネットワークを使用する方法
は高速なネットワーク自体が高価であり、速い転送速度
を実現するため高速なアクセスタイムを持つメモリを制
御メモリとして使用しなければならないため、プログラ
マブルコントローラ本体が高価となってしまう。In the former method using a high-speed network, the high-speed network itself is expensive, and a memory having a high access time must be used as a control memory in order to realize a high transfer rate. Would be expensive.
【0008】次にデータ転送の効率化の方法では制御メ
モリをセンサ領域とアクチュエータ領域とに2分割する
ため同じ装置に属するセンサ情報とアクチュエータ情報
を、ひと固まりとして制御メモリ上の連続したアドレス
に配置することができないため、各装置の情報の管理が
装置単位で行えず、たくさんの装置を制御する場合には
ユーザーインターフェースが悪くなり、制御プログラム
の作成やプログラマブルコントローラ上での制御プログ
ラムの動作を確認することが困難になる。Next, in the method of increasing the efficiency of data transfer, the control memory is divided into a sensor area and an actuator area so that sensor information and actuator information belonging to the same device are arranged as a group at continuous addresses on the control memory. Information cannot be managed on a device-by-device basis, and when controlling a large number of devices, the user interface deteriorates, creating a control program and confirming the operation of the control program on the programmable controller. It becomes difficult to do.
【0009】また、もう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 not by digital but by analog, the analog signal is converted to a 12-bit or 16-bit signal by using an A / D (analog / digital) converter.
Convert to a digital signal of bits. However, when the data bus of the control memory is 8 bits, the access to the analog data composed of 16 bits is twice per byte. If an access from the communication processor enters between the first access and the second access from the controller, and the upper 8 bits and lower 8 bits of the analog data impair the data synchronization, the control is performed correctly. There is no problem. Therefore, the data bus of the control memory often uses a 16-bit bus in accordance with it. As described above, the number of pins of the LSI and the memory constituting the controller increases, and therefore, a large LSI package is required, resulting in a problem that the cost is increased.
【0010】上記問題点に鑑みて、本発明では低コスト
で制御装置と被制御装置間のデータ転送効率を向上させ
た制御システムを提供することを目的とする。In view of the above problems, it is an object of the present invention to provide a control system in which the data transfer efficiency between a control device and a controlled device is improved at low cost.
【0011】[0011]
【課題を解決するための手段】上記目的を達成するため
に本発明は、少なくとも制御対象の状態を表す状態デー
タと制御対象を制御するための制御データとを格納する
メモリと、メモリに格納された状態データに基づいて制
御対象の制御データを求める計算機と、メモリに格納さ
れた状態データを読み出すと共に、読み出した状態デー
タに計算機で求められたデータを書き込み上記メモリに
格納するメモリコントローラと、制御内容を変更するた
めにメモリコントローラにより書き換えられたデータを
メモリから読み出して送信するデータ転送装置とを有す
ることを特徴とする。In order to achieve the above object, the present invention provides a memory for storing at least state data representing the state of a control target and control data for controlling the control target, and a memory for storing the control data for controlling the control target. A computer for obtaining control data of a control target based on the read state data, a memory controller for reading state data stored in the memory, writing data obtained by the computer in the read state data, and storing the data in the memory, A data transfer device for reading data rewritten by the memory controller to change the contents from the memory and transmitting the data.
【0012】また上記目的を達成するために本発明は、
少なくとも制御対象の状態を表すデータと制御対象を制
御するためのデータとを格納するメモリと、メモリに格
納された制御対象の状態を表すデータに基づいて制御対
象の制御データを求める計算機と、メモリに格納された
データから複数ビットからなる1ワードのデータを読み
出すと共に、制御対象のデータを計算機に転送し、読み
出した1ワードのデータに計算機で求められた制御のた
めのデータを書き込みメモリに格納するメモリコントロ
ーラと、メモリコントローラにより書き換えられたデー
タをメモリから読み出して送信するデータ転送装置とを
有する制御装置と、複数の制御対象と、制御対象の状態
を計測する複数のセンサと、制御対象を制御するための
複数のアクチュエータと、複数のセンサにより計測され
た制御対象の状態を表すデータを送出し、制御装置から
送られた制御のためのデータを複数のアクチュエータに
転送する入出力装置とを有する被制御装置とを有するこ
とを特徴とする。[0012] To achieve the above object, the present invention provides:
A memory for storing at least data representing the state of the control target and data for controlling the control target, a computer for obtaining control data of the control target based on the data representing the state of the control target stored in the memory, and a memory Reads one-word data consisting of a plurality of bits from the data stored in the memory, transfers the data to be controlled to the computer, and stores the data for control obtained by the computer in the read one-word data in the write memory. A control device having a memory controller, a data transfer device that reads data rewritten by the memory controller from the memory and transmits the read data, a plurality of control targets, a plurality of sensors for measuring a state of the control target, and a control target. Multiple actuators for control and the state of the controlled object measured by multiple sensors Data representative sent, and having a controlled device having an input and output device for transferring a plurality of actuators data for control sent from the control device.
【0013】また、上記目的を達成するために本発明
は、少なくともプロセス状態や制御データを格納したメ
モリと、メモリに格納されたプロセス情報に基づいて制
御データを生成するコントローラと、メモリ及びコント
ローラと接続され、複数のビットデータを保持するレジ
スタを有し、コントローラからのリードアクセスに対し
て、リードアクセスの対象となる第1のデータ及び第1
のデータに続く第2のデータをメモリから読み出すと共
に、第1のデータをコントローラに転送すると共に、第
2のデータをレジスタに保持するデータ制御装置とを有
することを特徴とする。According to another aspect of the present invention, there is provided a memory for storing at least a process state and control data, a controller for generating control data based on process information stored in the memory, a memory and a controller. A first data and a first data to be read-accessed in response to a read access from the controller;
And a data controller for reading out second data following the data from the memory, transferring the first data to the controller, and holding the second data in the register.
【0014】また上記目的を達成するために本発明で
は、少なくともプロセス状態や制御データを格納したメ
モリと、メモリに格納されたプロセス情報に基づいて制
御データを生成するコントローラと、メモリ及びコント
ローラと接続され、複数のビットデータを保持するレジ
スタを有し、コントローラからの第1のライトアクセス
に対して、第1のライトアクセスの対象となる第1のデ
ータを上記レジスタに保持し、コントローラからの第2
のライトアクセスに対して、第2のライトアクセスの対
象となる第2のデータとレジスタに保持された第1のデ
ータとを連続してメモリに格納するデータ制御装置とを
有することを特徴とする。According to the present invention, there is provided a memory for storing at least a process state and control data, a controller for generating control data based on process information stored in the memory, and a connection between the memory and the controller. And a register for holding a plurality of bit data. In response to a first write access from the controller, the first data to be subjected to the first write access is held in the register. 2
A data control device that continuously stores the second data to be subjected to the second write access and the first data held in the register in the memory for the write access. .
【0015】[0015]
【発明の実施の形態】以下、本発明の説明を図1〜図2
7を用いて説明する。BRIEF DESCRIPTION OF THE DRAWINGS FIG.
7 will be described.
【0016】図2は、プログラマブルコントローラを使
用した制御システムを示したものである。制御システム
は、制御装置1000,被制御装置2000,制御装置
1000と被制御装置2000との間はネットワーク120
0を介して接続されている。制御装置1000は、内部
に計算装置101,制御メモリ201,制御データ転送
装置301,内部に内容更新判定装置4002を持つメ
モリコントローラ401からなる。また、被制御装置2
000は、入出力装置2001,センサ2101,アク
チュエータ2102,装置3000からなる。FIG. 2 shows a control system using a programmable controller. The control system includes a control device 1000, a controlled device 2000, a control device
A network 120 is provided between the network 1000 and the controlled device 2000.
0. The control device 1000 includes a computing device 101, a control memory 201, a control data transfer device 301, and a memory controller 401 having a content update determination device 4002 therein. The controlled device 2
000 comprises an input / output device 2001, a sensor 2101, an actuator 2102, and a device 3000.
【0017】次に、制御装置1000と被制御装置20
00との間のデータの流れを説明する。Next, the control device 1000 and the controlled device 20
The flow of data between 00 and 00 will be described.
【0018】制御装置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を介してアクセス単位ごとに被制御装置20
00に転送され、入出力装置2001でアクセス単位に
まとめられた複数のアクチュエータ情報をアクチュエー
タごとにデータを分割し、アクチュエータ2102に転
送する。そして、アクチュエータ2102は、入出力装
置2001から転送されたデータに基づいて装置300
0に対して動作を行う。以上のようにして、制御装置1
000による被制御装置2000の装置3000の制御
が可能となる。Information flowing between the control device 1000 and the controlled device 2000 is based on sensor information from one or more sensors 2101 attached to the device 3000 and the device 3000.
Is the actuator information to one or more actuators 2102 that control the operation of. Also, the control device 1000
The sensor information from the sensor 2101 and the actuator information to the actuator 2102 are assigned to each address of the control memory 201 within the control memory 201. When the control program executed by the control device 1000 needs information from a specific sensor, The sensor information is obtained by reading the address where the sensor information is held. When it is desired to control a particular actuator, the actuator is similarly controlled by writing the actuator information to an address of the control memory 201 where the actuator information is held. In addition, the sensor information has a bit length that varies depending on the type of sensor, and may have a bit length of one bit or several bits. Since the data length is various, the sensor information is input and output by the input / output device 2001. Bytes (8
The data is collected into access units such as bits (bits) and words (16 bits), and sent 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 a corresponding address of the control memory 201. As for the actuator information, a plurality of pieces of actuator information are grouped into access units in the same manner as the sensor information, and written into the assigned addresses of the control memory. Thereafter, the actuator information is stored in the controlled device 20 for each access unit via the network 1200.
The data is transferred to the actuator 2102 by dividing the data of a plurality of pieces of actuator information, which are transferred to the input / output device 2001 and compiled in access units by the input / output device 2001, for each actuator. Then, the actuator 2102 transmits the data to the device 300 based on the data transferred from the input / output device 2001.
The operation is performed for 0. As described above, the control device 1
000 can control the device 3000 of the controlled device 2000.
【0019】ここで、被制御装置2000の例としてモ
ータ制御を挙げて、図2における制御システム全体の動
作を説明する。被制御装置2000のモータを装置30
00,モータの回転数を調べるセンサ2101,モータ
に与える電流を制御する電流制御装置をアクチュエータ
2102とする。Here, the operation of the entire control system in FIG. 2 will be described using motor control as an example of the controlled device 2000. The motor of the controlled device 2000 is
00, a sensor 2101 for checking the number of rotations of the motor, and a current control device for controlling a current supplied to the motor are referred to as an actuator 2102.
【0020】制御装置1000内の計算装置101で実
行される制御プログラムは、センサ2101によりモー
タの回転数を読み取り、規定値と比較し、高ければアク
チュエータ2102にモータへの供給電流を減らしてモ
ータの回転数を下げるように指示し、反対に低ければア
クチュエータ2102にモータへの供給電流を増やして
モータの回転数を上げるように指示する。このようにモ
ータに与える電流を制御することによりモータの回転数
を規定値になるように制御する。The control program executed by the calculation device 101 in the control device 1000 reads the number of rotations of the motor by the sensor 2101 and compares it with a specified value. It instructs to decrease the rotation speed, and if it is lower, instructs the actuator 2102 to increase the current supplied to the motor to increase the rotation speed of the motor. By controlling the current supplied to the motor in this way, the rotation speed of the motor is controlled to a specified value.
【0021】アクセス単位については、計算装置101
が制御メモリ201から一度に読み出せるビット数であ
り、ここでは16ビットとする。For the access unit, the computer 101
Is the number of bits that can be read from the control memory 201 at one time, and here is 16 bits.
【0022】このモータ制御プログラムはラダー図によ
り与えられる。図2におけるデータの流れは次のように
なる。センサ2101はモータの回転数を測定し、アナ
ログ値として入出力装置2001に出力する。入出力装
置2001では、それをA/D(アナログ/ディジタ
ル)変換器を介して16ビットのディジタルデータに変
換する。変換されたモータの回転数のデータはネットワ
ーク1200を介して制御装置1000に送られる。制
御装置1000では次のようにして、アクチュエータ2
102に対するアクチュエータ情報を計算する。制御デ
ータ転送装置301でディジタル化されたモータの回転数
データを受信し、制御メモリ201のa番地に書き込
む。計算装置101は制御メモリ201のa番地を読み
出して、モータの回転数情報を入手する。次に規定値
と、モータの回転数情報とを比較し、規定値に比べてモ
ータの回転数が高いか低いかを判定し、モータへの電流
制御装置であるアクチュエータ2102へのアクチュエ
ータ情報を制御メモリ201に2ビットデータを書き込
む。モータの回転数が規定値よりも高い場合にはモータ
への供給電流を下げるために2ビット情報で10を、反
対に低い場合にはモータへの供給電流を上げるために2
ビット情報で01を、モータの回転数が規定値と同じな
らば00を制御メモリ201のb番地に書き込む。b番
地に書き込まれたアクチュエータ2102へのアクチュ
エータ情報は制御データ転送装置301により読み出さ
れ、ネットワーク1200を介して被制御装置2000
に送信する。被制御装置2000では、入出力装置20
01が制御データ転送装置301によって送られたアク
チュエータ情報を受信し、アクチュエータ2102にそ
の受信したアクチュエータ情報を転送する。アクチュエ
ータ2102は入出力装置2001から転送されたアク
チュエータ情報が01ならばモータへの供給電流を減ら
し、反対にアクチュエータ情報が10ならばモータへの
供給電流を増やす。このようにすることで、モータの回
転数を規定値に保つことができる。This motor control program is given by a ladder diagram. The data flow in FIG. 2 is as follows. The sensor 2101 measures the number of rotations of the motor and outputs the measured value to the input / output device 2001 as an analog value. The input / output device 2001 converts the data into 16-bit digital data via an A / D (analog / digital) converter. The converted data on the number of rotations of the motor is sent to the control device 1000 via the network 1200. In the control device 1000, the actuator 2
Calculate actuator information for 102. The motor rotation speed data digitized by the control data transfer device 301 is received and written into the address a of the control memory 201. The computing device 101 reads the address a in the control memory 201 and obtains information on the number of rotations of the motor. Next, the specified value is compared with the information on the number of revolutions of the motor, and it is determined whether the number of revolutions of the motor is higher or lower than the specified value. Write 2-bit data to the memory 201. If the rotation speed of the motor is higher than a specified value, 10 is used to reduce the supply current to the motor, and if the rotation speed is lower, 2 is used to increase the supply current to the motor.
01 is written in the bit information, and 00 is written to the address b of the control memory 201 if the number of rotations of the motor is the same as the specified value. The actuator information for the actuator 2102 written at the address b is read by the control data transfer device 301, and is controlled via the network 1200 by the controlled device 2000.
Send to In the controlled device 2000, the input / output device 20
01 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 decreases the current supplied to the motor if the actuator information transferred from the input / output device 2001 is 01, and increases the current supplied to the motor if the actuator information is 10. By doing so, the number of rotations of the motor can be maintained at the specified value.
【0023】次に、計算装置101と制御メモリ201
の間のデータ転送について説明する。図1に示すように
計算装置101はメモリコントローラ401を介して制
御メモリ201とつながっている。図3に、このメモリ
コントローラ401の内部の構造を示す。メモリコント
ローラ401を介しての計算装置101から制御メモリ
201へのアクセス方法はリード,ライト,リードモデ
ィファイライトの3種類ある。リードアクセスは制御メ
モリ201からデータを読み込むアクセス,ライトアク
セスは制御メモリ201へのデータ書き込みアクセス,
リードモディファイライトアクセスは制御メモリ201
上の1ビットのみを書き換えるアクセスである。先述し
たアクチュエータ2102へのアクチュエータ情報は2
ビットである。そのため、いま、同じb番地の他のビッ
トに他のアクチュエータへのアクチュエータ情報が割り
当てられていると、単にb番地にアクチュエータ210
2へのアクチュエータ情報を書き込んでしまうと、他の
アクチュエータ情報もいっしょに書き換えられてしま
う。そこで、一度アクチュエータ2102のデータを含
むb番地を制御メモリ201から読み出し(リード)、
そのうちのアクチュエータ2102へのデータの部分の
みを書き換え(モディファイ)、書き換えたデータを制
御メモリ201のb番地に書き戻す(ライト)処理を行
うことにより、アクチュエータ2102への制御データ
のみを書き換えることができる。さらに、このメモリコ
ントローラ401にはリードモディファイライトアクセ
ス時に制御メモリ201から読み込んだデータと書き込
むデータとを比較することにより、リードモディファイ
ライトアクセスによって、データ内容が更新されたかを
判定する機能である内容更新判定機能を有する。この内
容更新判定機能により、制御データ転送装置301での
データ転送時にデータの内容が更新されているデータの
みを被制御装置2000に転送することができ、送信デ
ータの削減を実現でき、データ送信時間を短くすること
ができる。Next, 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 methods for accessing the control memory 201 from the computing device 101 via the memory controller 401: read, write, and read-modify-write. Read access is access for reading data from the control memory 201, write access is data write access to the control memory 201,
The read-modify-write access is performed in the control memory 201.
This access is for rewriting only the upper one bit. The actuator information for the actuator 2102 described above is 2
Is a bit. Therefore, if actuator information for another actuator is assigned to another bit of the same address b, the actuator 210 is simply assigned to the address b.
When the actuator information is written in the second actuator information, the other actuator information is also rewritten together. Therefore, the address b including the data of the actuator 2102 is once read from the control memory 201 (read),
Only the data portion to the actuator 2102 is rewritten (modify), and the rewritten data is written back to the address b of the control memory 201 (write), whereby only the control data to the actuator 2102 can be rewritten. . Further, the memory controller 401 compares the data read from the control memory 201 with the data to be written at the time of the read-modify-write access to determine whether the data content has been updated by the read-modify-write access. Has a judgment function. With this content update determination function, only data whose data content has been updated can be transferred to the controlled device 2000 at the time of data transfer in the control data transfer device 301, so that transmission data can be reduced and data transmission time can be reduced. Can be shortened.
【0024】次にメモリコントローラ401の構造につ
いて説明する。メモリコントローラ401にはラッチ4
011,4012,4021、4022,2つの入力の
うちどちらかを選択するセレクタ4201,2入力1出
力であり、一方の入力がアクセス単位のビット幅で、も
う一方の入力が1ビットで入力されたアクセス単位のう
ちの任意の1ビットをもう一方の入力である1ビットと
置き換えるアクセス単位の出力を行うビットマージ42
02,バスが双方向バスのため出力同士が衝突するバス
ファイトを防ぐための3状態バッファ4301,430
2,4303,リードモディファイライト時のデータ内
容が更新されたかを判定する内容更新判定装置400
2,以上のリソースを制御しメモリコントローラとして
動作させるシーケンサ4001から構成される。Next, the structure of the memory controller 401 will be described. The memory controller 401 has a latch 4
011, 4012, 4021, 4022, and selectors 4201, 2 and 1 output for selecting one of two inputs. One input is input unit bit width, and the other input is 1 bit input. A bit merge 42 that outputs an access unit that replaces an arbitrary one bit of the access unit with one bit that is the other input.
02, three-state buffers 4301 and 430 for preventing bus fights in which outputs collide because the bus is a bidirectional bus
2,4303, a content update determination device 400 for determining whether the data content at the time of read-modify-write has been updated
It comprises a sequencer 4001 that controls two or more resources and operates as a memory controller.
【0025】計算装置101からのアドレス出力である
アドレスバス141はラッチ4011を介してアドレスバス
241となり制御メモリ201のアドレス入力となる。
同様に計算装置101からのデータ入出力バス142は
シーケンサ4001とラッチ4012を介してセレクタ
4201,ビットマージ4202に接続され、セレクタ
4201の出力は3状態バッファ4301を介して制御
メモリのデータバス242に接続され、また、データバ
ス242はラッチ4021を介して3状態バッファ43
02,ビットマージ4202,内容更新判定装置400
2に接続されており、該3状態バッファ4302の出力
は該データバス142に接続される。メモリ制御信号1
43はシーケンサ4001に入力され、制御メモリ20
1のメモリ制御信号244に変換される。双方向バスで
ある内容更新判定ビットバス243への出力は内容更新
判定装置4002の出力4131を3状態バッファ43
03を介して出力され、入力はラッチ4022を介して
内容更新判定装置4002に入力される。ビットマージ
4202はラッチ4021の出力の任意の1ビットをラ
ッチ4012の下位1ビットと置き換えてセレクタ42
01に接続される。シーケンサ4001の出力である制
御信号はラッチ4011,4012,4021,402
2のラッチタイミング、3状態バッファ4301,43
02,4303の状態(出力、ハイインピーダンス)、
セレクタ4201のセレクト信号,ビットマージ420
2のセレクト信号,内容更新判定装置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 becomes an address input of 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. And the data bus 242 is connected to the three-state buffer 43 via the latch 4021.
02, bit merge 4202, content update determination device 400
2 and the output of the tri-state buffer 4302 is connected to the data bus 142. Memory control signal 1
43 is input to the sequencer 4001 and the control memory 20
It is converted into one memory control signal 244. The output to the content update determination bit bus 243, which is a bidirectional bus, is based on the output 4131 of the content update determination device 4002 and the three-state buffer 43.
03, and the input is input to the content update determination device 4002 via the latch 4022. The bit merge 4202 replaces any one bit of the output of the latch 4021 with the lower one bit of the latch 4012 and selects the selector 42.
01 is connected. Control signals, which are outputs of the sequencer 4001, are latches 4011, 4012, 4021, and 402.
Latch timing of 2, 3-state buffers 4301, 43
02, 4303 state (output, high impedance),
Select signal of selector 4201, bit merge 420
2 and a determination enable signal of the content update determination device 4002 are output.
【0026】メモリコントローラ401の動作を説明す
る。メモリコントローラ401にはリード・ライト・リ
ードモディファイライトの3種類の動作が存在し、計算
装置101からアドレスバス141,データバス14
2,メモリ制御信号143により起動する。The operation of the memory controller 401 will be described. The memory controller 401 has three types of operations: read / write / read-modify-write.
2. It is started by the memory control signal 143.
【0027】リードアクセスは計算装置101からアド
レスをメモリ制御信号143からリード要求が出力され
て起動する。シーケンサ4001はラッチ4011,40
21にラッチ信号を、3状態バッファ4302へ出力信号
を、他の3状態バッファ4301,4303にはハイインピ
ーダンス信号、制御メモリ201へのメモリ制御信号2
44にリード信号を出力し、アドレスバス241へは計
算装置101からのアドレス出力が出力される。制御メ
モリ201では、アドレスバス241で指定されたアド
レスの内容のデータがデータバス242に、内容更新ビ
ット情報が内容更新ビットバス243に出力される。デ
ータバス242の内容はラッチ4021,3状態バッフ
ァ4302を介してデータバス142に出力されリード
アクセスは終了する。The read access is started when the address is read from the computer 101 and the read request is output from the memory control signal 143. Sequencer 4001 has latches 4011 and 40
21, a latch signal, an output signal to the three-state buffer 4302, a high impedance signal to the other three-state buffers 4301 and 4303, and a memory control signal 2 to the control memory 201.
A read signal is output to 44, and an address output from the computing device 101 is output to the address bus 241. In the control memory 201, data of the content of 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 latch 4021 and the 3-state buffer 4302, and the read access ends.
【0028】次にライトアクセスについて説明する。ラ
イトアクセスは計算装置101からアドレスバス141
にアドレスをデータバス142に書き込みデータを、メ
モリ制御信号143にライト要求を出力し、メモリコン
トローラ401が起動される。シーケンサ4001は、
メモリ制御信号244にライト要求を、ラッチ4011,4
012にラッチ信号を、セレクタ4201にラッチ41
02側を選択させ、アドレスバス241,データバス2
42にそれぞれ、アドレスバス141,データバス14
2の内容を出力し、アドレスバス241で指定された番
地にデータバス242の内容が書き込まれる。最後にリ
ードモディファイライトアクセスについて説明する。計
算装置101からアドレスバス141にアドレス、デー
タバス142に図4に示すフォーマットを持つデータ
を、メモリ制御信号143にリードモディファイライト
要求を出力されて、メモリコントローラ401が起動す
る。シーケンサ4001はまず、ラッチ4011,40
12,4021,4022にラッチ信号を、制御メモリ
201へのメモリ制御信号244にリード信号を出力
し、アドレスバス241にアドレスバス141の内容を
出力する。制御メモリ201はアドレスバス241で指
定されたアドレスのデータを242に、内容更新ビット
を内容更新ビットバス243に出力し、それぞれラッチ
4021,4022にラッチされる。次にシーケンサ400
1は制御メモリ201へのメモリ制御信号244をライ
ト要求に、3状態バッファ4301,4303を出力状
態に、4302をハイインピーダンス状態に設定し、セ
レクタ4021をビットマージ4022の出力側に選択
させ、ビットマージ4022に図8に示したビットアド
レス901の内容をビットデータ902に置き換えさせ
るとともに内容更新判定装置4002に判定イネーブル
信号を出力する。内容更新判定装置4002ではリード
データであるラッチ4021の出力とライトデータであ
るビットマージ4202のデータを比較し、ラッチ40
22との値を考慮して制御メモリ201へ書き込む内容
更新ビットを演算し4131に出力する。またビットマ
ージ4202の出力はセレクタ4201、3状態バッファ4
301を介してデータバス242に出力され、制御メモ
リ201のアドレスバス241で指定されたアドレスに
データバス242と内容更新ビットバス243の内容が
書き込まれる。以上がメモリコントローラ401の動作
である。このメモリコントローラ401のタイムチャー
トを図10から図14に挙げる。Next, write access will be described. Write access is performed from the computing device 101 to the address bus 141.
Then, an address is written to the data bus 142, data is written to the memory control signal 143, and the memory controller 401 is activated. Sequencer 4001 is
A write request is sent to the memory control signal 244, and the latch 4011, 4
012 and the latch signal to the selector 4201.
02, the address bus 241 and the data bus 2
42, an address bus 141 and a data bus 14
2 is output, and the content of the data bus 242 is written to the address specified by the address bus 241. Finally, read-modify-write access will be described. An address is output to the address bus 141 from the computing device 101, data having the format shown in FIG. 4 is output to the data bus 142, and a read-modify-write request is output to the memory control signal 143, and the memory controller 401 is activated. First, the sequencer 4001 has latches 4011 and 40
12, 4021, 4022, a read signal as a memory control signal 244 to the control memory 201, and the contents of the address bus 141 to the address bus 241. The control memory 201 outputs the data at the address designated by the address bus 241 to 242 and the content update bit to the content update bit bus 243, and the data is latched by the latches 4021 and 4022, respectively. Next, sequencer 400
1 sets the memory control signal 244 to the control memory 201 to a write request, sets the three-state buffers 4301 and 4303 to the output state, sets the four-state buffer 4302 to the high impedance state, and makes the selector 4021 select the output side of the bit merge 4022, It causes the merge 4022 to replace 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 the read data with the data of the bit merge 4202 that is the write data.
A content update bit to be written to the control memory 201 is calculated in consideration of the value of “22” and output to 4131. The output of the bit merge 4202 is supplied to the selector 4201, the 3-state buffer 4
The data is output to the data bus 242 via the interface 301, 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. The above is the operation of the memory controller 401. Time charts of the memory controller 401 are shown in FIGS.
【0029】図5は内容更新判定装置4002の概要を
示したものである。この内容更新判定装置4002はリ
ードモディファイライトアクセス時の制御メモリ201
からのリードデータ4121と制御メモリ201へ書き
込むデータ4111とを比較し、リードモディファイラ
イトによるデータの変化を検出し、変化があれば出力4
131に1を出力する。このとき、すでに制御メモリ2
01のデータの内容更新ビットが1であった場合にはそ
の情報を保存するため、論理和を計算するオアゲート5
002がある。比較回路5001の動作は次のとおりで
ある。比較回路5001には4つの入力があり、入力A
4111と入力B4121,シーケンサ4001からの
制御信号である比較イネーブル信号4141と非比較時
の出力信号を与える信号4142からなっている。比較
器5001の出力は図6に示すとおりであり、比較イネ
ーブル信号4141が0の時、比較器5001は入力A
4111と入力B4121が一致すれば1、不一致なら
ば0を出力し、比較イネーブル信号4141が1なら
ば、非比較時の出力信号4142の値をそのまま出力す
る。比較回路5001の出力を反転したものとラッチ4
022との出力との論理和をとることで、リードモディ
ファイライトによるデータの内容が変化したかどうかを
示す信号を生成することができる。FIG. 5 shows an outline of the content update judging device 4002. The content update determination device 4002 controls the control memory 201 at the time of read-modify-write access.
Is compared with the data 4111 to be written to the control memory 201 to detect a change in the data due to the read-modify-write.
1 is output to 131. At this time, the control memory 2
When the content update bit of the data 01 is 1, the OR gate 5 for calculating the logical sum stores the information.
002. The operation of the comparison circuit 5001 is as follows. The comparison circuit 5001 has four inputs.
4111, an input B 4121, a comparison enable signal 4141 which is a control signal from the sequencer 4001, and a signal 4142 for providing 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
If 4111 and the input B 4121 match, 1 is output. If they do not match, 0 is output. If the comparison enable signal 4141 is 1, the value of the output signal 4142 at the time of non-comparison is output as it is. Inverted output of comparison circuit 5001 and latch 4
By taking the logical sum with the output of the data 022, the signal indicating whether the content of the data by the read-modify-write has changed can be generated.
【0030】図7にシーケンサ4001の概要を示す。
シーケンサ4001は計算装置101からの読み込み,書
き込み,リードモディファイライト(メモリ制御信号1
43)に対してアドレスバス241,データバス142
からの入力から、各ラッチ4011,4012,4021,
4022のラッチタイミングやセレクタ4201,ビッ
トマージ4202への選択信号,3状態バッファ430
1,4302,4303への出力イネーブル信号,内容
更新判定装置4002への比較タイミング信号414
1,出力選択信号4142,制御メモリ201への読み
込み、書き込みタイミング信号2441,2442の生
成を行う。この内容更新判定装置4002への出力選択
信号4142は図1に示す制御装置1000では0に固
定されている。あとで説明する図15に示す計算装置1
01と制御データ転送装置301をCPU501が兼ねる場合
にこの出力選択信号4142が使用される。メモリ制御
信号143はリード要求信号1431(以下:RD信
号),ライト要求信号1432(以下:WR信号),リ
ードモディファイライト信号1433(以下:RMW信
号),メモリアクセスが終了していないことを示すウェ
イト信号1434(以下:WAIT信号)から構成さ
れ、RD信号1431,WR信号1432,RMW信号
1433はシーケンサ4001の入力,WAIT信号1
434はシーケンサ4001の出力となっている。メモ
リ制御信号244は出力イネーブル信号2441(以下:O
E信号),ライトイネーブル信号2442(以下:WE
信号)からなり、OE信号2441,WE信号2442
ともシーケンサ4001の出力である。内容更新判定装
置への出力信号は比較イネーブル信号4141,比較し
ないときの出力設定信号4142である。FIG. 7 shows an outline of the sequencer 4001.
The sequencer 4001 reads / writes / reads / modifies / writes from the computer 101 (memory control signal 1
43), the address bus 241 and the data bus 142
From each of the latches 4011, 4012, 4021,
Latch timing of 4022, selection signal to selector 4201, bit merge 4202, 3-state buffer 430
1, 4302, 4303, and a comparison timing signal 414 to the content update determination device 4002.
1, an output selection signal 4142, reading into the control memory 201, and generation of write timing signals 2441 and 2442 are performed. The output selection signal 4142 to the content update determination device 4002 is fixed to 0 in the control device 1000 shown in FIG. Calculation device 1 shown in FIG. 15 described later
The output selection signal 4142 is used when the CPU 501 also serves as the control data transfer device 301 and the control data transfer device 301. The memory control signal 143 includes a read request signal 1431 (hereinafter, RD signal), a write request signal 1432 (hereinafter, WR signal), a read modify write signal 1433 (hereinafter, RMW signal), and a wait indicating that memory access has not been completed. RD signal 1431, WR signal 1432, and RMW signal 1433 are input to sequencer 4001 and WAIT signal 1
Reference numeral 434 denotes an output of the sequencer 4001. The memory control signal 244 is an output enable signal 2441 (hereinafter: O)
E signal), write enable signal 2442 (hereinafter: WE
OE signal 2441, WE signal 2442
Both are the outputs of the sequencer 4001. Output signals to the content update determination device are a comparison enable signal 4141 and an output setting signal 4142 when no comparison is made.
【0031】図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 from the computing device 101 to the data bus 142 at the time of RMW. The data format 900 has the least significant bit of 0.
The bit consists of write bit data 902 and 901 indicating the address of the bit to be rewritten in a word. For the data in the control memory 201 specified by the address output from the computing device 101, the memory controller 401 Reading (read), one bit in the data specified by the address 901 in the word is replaced with 1-bit data 902 (modify), and a process of writing back (write) to the same address is performed.
【0032】図9に制御データ転送装置301の構成を
示す。制御データ転送装置301は制御メモリ201か
らデータを読み出し、内容更新ビットバス233の値が
1ならば、データバス232のデータをネットワーク1
200に出力する。また、ネットワーク1200からデ
ータを受信した場合には、該受信データを制御メモリ2
01へ書き込む。アドレスバス231,出力イネーブル
信号2341,書き込みイネーブル信号2342からな
るメモリ制御信号234は転送制御装置3002の出力であ
り、データバス232は転送回路3001に、内容更新
ビットバス233は転送回路3001とラッチ3202に
つながっており、ラッチ3202の出力は3状態バッフ
ァ3201につながっている。この3状態バッファ32
01は、データバス232が双方向バスであるため、該
データバス232上で制御メモリ201からの出力とラ
ッチ3202の出力が衝突しないためラッチ3202の
出力側に挿入されている。また、転送装置3001と転
送制御装置3002はデータ線3100でつながってい
る。FIG. 9 shows the configuration of the control data transfer device 301. The control data transfer device 301 reads data from the control memory 201 and, if the value of the content update bit bus 233 is 1, transfers the data of the data bus 232 to the network 1
Output to 200. When data is received from the network 1200, the received data is stored in the control memory 2.
Write to 01. 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 connected to the transfer circuit 3001, and the content update bit bus 233 is connected to the transfer circuit 3001 and the latch 3202. The output of the latch 3202 is connected to a tri-state buffer 3201. This three-state buffer 32
01 is inserted on the output side of the latch 3202 because the output from the control memory 201 and the output from the latch 3202 do not collide on the data bus 232 because the data bus 232 is a bidirectional bus. The transfer device 3001 and the transfer control device 3002 are connected by a data line 3100.
【0033】転送装置3001は内部に転送判定回路3
011を持ち、内容更新ビットバス233の値を見てデ
ータバス232のデータをネットワーク1200へ出力
するかどうかを判定する。また、転送制御装置3002
は内部に制御メモリ201のアドレスを指すカウンタ3
012を持ち、このカウンタにより制御メモリ201の
内容を順にネットワーク1200に出力する。The transfer device 3001 includes therein a transfer determination circuit 3
011 and determines whether to output data on the data bus 232 to the network 1200 by looking at the value of the content update bit bus 233. Also, the transfer control device 3002
Is a counter 3 internally pointing to the address of the control memory 201
012, and the contents of the control memory 201 are sequentially output to the network 1200 by this counter.
【0034】次にこの制御装置1000内のデータの流
れを説明する。計算装置101はアドレスバス141,
データバス142,メモリ制御信号143を介してメモ
リコントローラにアクセス要求を出力し制御メモリ20
1とデータをやり取りする。メモリコントローラ401
の動作のタイミングチャートを図10〜図12に挙げ
る。図10は読み込み時、図11は書き込み時、図12
はリードモディファイライト時のタイミングチャートで
ある。各タイミングチャートとも計算装置101がアクセ
ス開始するクロックタイミングをT0とする。Next, the flow of data in the control device 1000 will be described. The computing device 101 has an address bus 141,
An access request is output to the memory controller via the data bus 142 and the memory control signal 143, and the control memory 20
Exchange data with 1. Memory controller 401
10 to 12 are timing charts of the operation. 10 is for reading, FIG. 11 is for writing, FIG.
Is a timing chart at the time of read-modify-write. In each of the timing charts, the clock timing at which the computing device 101 starts accessing is T0.
【0035】読み込み時のタイムチャートを図10に示
す。T0のタイミングで、計算装置101はアドレスバ
ス141にアドレスを出力し、RD信号1431をアサ
ートする。T1のタイミングではシーケンサ4001は
T1の頭でラッチ4011にラッチ信号を送り、ラッチ
4011にアドレスバス141の値をラッチさせ、WA
IT信号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の動作である。FIG. 10 shows a time chart at the time of reading. At the timing of T0, the computing device 101 outputs an address to the address bus 141 and asserts the RD signal 1431. At timing 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
The IT signal 1434 and the OE signal 2441 are asserted.
Address to the control memory 201, address to the address bus 241
An OE signal 2441 is output as 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 to latch the value of the data bus 242, and the WAIT signal 1434 and the OE signal 2441.
, And sends an enable signal to the three-state buffer 4302 to read the data of the output 4121 of the latch 4021 into the data bus 142 and output the data. At the timing of T3, the computing device 101 sends the WAIT signal 1434
Is confirmed, the output to the address bus 141 is stopped, the RD signal 1431 is negated, and the contents of the data bus 142 are fetched. 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.
【0036】図11に書き込み時のタイムチャートを示
す。T0のタイミングで、計算装置101はアドレスバ
ス141にアドレスをデータバス242に書き込みデー
タを出力し、WR信号1432をアサートする。T1の
タイミングではシーケンサ4001はT1の頭でラッチ
4011,4012にラッチ信号を送り、ラッチ401
1にアドレスバス141の値をラッチ4012にデータ
バス142の値をそれぞれラッチさせ、WAIT信号1
434,WE信号2442をアサートし、セレクタ42
01にラッチ4012の出力4102を選択させる選択
信号を、3状態バッファ4301,4303にイネーブ
ル信号を送る。これにより、アドレスバス241にアド
レス,データバス242にデータ,内容更新ビットバス
243に内容更新ビット情報,メモリ制御信号244にW
E信号2442が出力され、制御メモリ201はアドレ
スバス241で指定されたアドレスにデータバス242と
内容更新ビットバス243の内容が書き込まれる。T2
のタイミングではシーケンサ4001はWAIT信号1
434,WE信号2442をネゲートし、3状態バッフ
ァ4301,4303のイネーブル信号を止め、データ
バス242,内容更新ビットバス243へのデータ出力
を止める。T3のタイミングでは計算装置101はWA
IT信号1434がネゲートされたのを確認し、アドレ
スバス141,データバス142への出力を止め、WR
信号1432をネゲートする。以上が書き込み時のメモ
リコントローラ401の動作である。FIG. 11 shows a time chart at the time of writing. At timing T0, the computing device 101 writes an address on the address bus 141 and outputs data on the data bus 242, and asserts the WR signal 1432. At timing T1, the sequencer 4001 sends a latch signal to the latches 4011 and 4012 at the beginning of T1, and
1 and the value of the data bus 142 are latched by the latch 4012 and the value of the data bus 142, respectively.
434, the WE signal 2442 is asserted, and the selector 42
01 and an enable signal to the three-state buffers 4301 and 4303. Thus, the address bus 241 has the address, the data bus 242 has the data, and the content update bit bus.
243 indicates the content update bit information, and W indicates the memory control signal 244.
An E signal 2442 is output, and the control memory 201 writes the contents of the data bus 242 and the content update bit bus 243 to the address specified by the address bus 241. T2
At the timing of, the sequencer 4001
434, the WE signal 2442 is negated, the enable signals of the three-state buffers 4301 and 4303 are stopped, and the data output to the data bus 242 and the content update bit bus 243 is stopped. At the timing of T3, the computing device 101
After confirming that the IT signal 1434 has been negated, the output to the address bus 141 and the data bus 142 is stopped, and WR
The signal 1432 is negated. The above is the operation of the memory controller 401 at the time of writing.
【0037】図12にリードモディファイライト時のタ
イムチャートを示す。T0のタイミングで、計算装置1
01はアドレスバス141にアドレスを、データバス2
42に書き込みデータを出力し、RMW信号1433を
アサートする。T1のタイミングではシーケンサ400
1は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にビットマージ420
2の出力4111を選択させる選択信号を、ビットマー
ジ4202に置き換えるビットアドレスを、3状態バッ
ファに4301,4303にイネーブル信号を送り、内
容更新判定装置4002へのイネーブル信号4141と
WE信号2442をアサートし、WAIT信号1434
をネゲートする。これにより、アドレスバス241にア
ドレス,データバス242にデータ,内容更新ビットバ
ス243に内容更新情報,メモリ制御信号244にWE
信号2442が出力され、制御メモリ201はアドレス
バス241で指定されたアドレスにデータバス242と内
容更新ビットバス243の内容が書き込まれる。T4の
タイミングではシーケンサ4001はイネーブル信号4
141,WAIT信号1434,WE信号2442をネ
ゲートし、3状態バッファ4301,4303のイネー
ブル信号を止め、データバス242,内容更新ビットバ
ス243へのデータ出力を止める。T5のタイミングで
は計算装置101はWAIT信号1434がネゲートさ
れたのを確認し、アドレスバス141,データバス14
2への出力を止め、RMW信号1433をネゲートす
る。以上がリードモディファイライト時のメモリコント
ローラ401の動作である。FIG. 12 is a time chart at the time of read-modify-write. At the timing of T0, the computing device 1
01 is an address on the address bus 141 and data bus 2
The write data is output to 42 and the RMW signal 1433 is asserted. At the timing of T1, the sequencer 400
1 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, and asserts the WAIT signal 1434 and the OE signal 2441. To the control memory 201, an address is output to an address bus 241, and an OE signal 2441 is output to a memory control signal 244. The control memory 201 outputs the content 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, the latch 4022 to latch the value of the content update bit bus 243, and negates the OE signal 2441. I do. At the timing of T3, the sequencer 4001 sends the bit merge 420 to the selector 4201.
A bit address for replacing the selection signal for selecting the output 4111 of 2 with the bit merge 4202 is sent to the 3-state buffer 4301 and 4303, and the enable signal 4141 and the WE signal 2442 to the content update determination device 4002 are asserted. , WAIT signal 1434
To negate. Thereby, the address is transmitted to the address bus 241, the data is transmitted to the data bus 242, the content update information is transmitted to the content update bit bus 243, and the WE is transmitted to the memory control signal 244.
A signal 2442 is output, and the control memory 201 writes the contents of the data bus 242 and the content update bit bus 243 to the address specified by the address bus 241. At the timing of T4, the sequencer 4001 outputs the enable signal 4
141, the WAIT signal 1434 and the WE signal 2442 are negated, the enable signals of the three-state buffers 4301 and 4303 are stopped, and the data output to the data bus 242 and the content update bit bus 243 is stopped. At the timing of T5, the computing device 101 confirms that the WAIT signal 1434 has been negated, and the address bus 141, the data bus 14
2 and the RMW signal 1433 is negated. The above is the operation of the memory controller 401 at the time of read-modify-write.
【0038】内容更新判定装置4002での動作は次の
とおりである。The operation of the content update determining device 4002 is as follows.
【0039】リードモディファイライト動作時は制御メ
モリ201の同じアドレスに対して読み出してから制御
メモリ201の内容を書き換えて書き戻す。リードモデ
ィファイライト時には比較回路5001のイネーブル信
号4141がアサートされ、比較回路5001の2つの
入力である制御メモリ201から読み込んだデータであ
るA4111と制御メモリ201へ書き込むデータであ
るB4121とが一致すれば、出力5101に1が、4
111と4121が不一致ならば0が出力される。ま
た、リードモディファイライトアクセスのリード時に内
容更新ビットバス243の内容をラッチ4022にラッ
チさせ、ライト時にラッチ4022の内容と比較回路5
001の比較結果と論理和をとることにより、リードモ
ディファイライトによる内容更新ビットの欠落が発生す
るのを防ぐ。At the time of the read-modify-write operation, data is read from the same address in the control memory 201, and then the contents of the control memory 201 are rewritten and rewritten. At the time of read-modify-write, the enable signal 4141 of the comparison circuit 5001 is asserted. 1 for output 5101, 4
If 111 and 4121 do not match, 0 is output. Also, the content of the content update bit bus 243 is latched by the latch 4022 at the time of read of the read-modify-write access, and the content of the latch 4022 is compared with the content of the comparison circuit 5 at the time of write.
By taking the logical sum with the comparison result of 001, it is possible to prevent the occurrence of the loss of the content update bit due to the read modify write.
【0040】読み込み時,書き込み時では比較回路50
01のイネーブル信号4141はネゲートされており、
図4に示される真理値表から比較回路5001の出力51
01には0が出力されるため、オアゲート5002の出力
4131には4132の値にかかわらず、1が出力され
る。書き込み時にはリード動作を伴わないため内容更新
判定ができないため、内容更新ビットを1に設定する。At the time of reading and writing, the comparison circuit 50 is used.
01 enable signal 4141 is negated,
From the truth table shown in FIG.
Since 0 is output to 01, 1 is output to the output 4131 of the OR gate 5002 regardless of the value of 4132. The content update bit is set to 1 because the content update determination cannot be performed at the time of writing because no read operation is involved.
【0041】制御メモリ201と制御データ転送装置3
01とのデータの流れはアドレスバス231,データバ
ス232,内容更新ビットバス233,メモリ制御信号
234を介して被制御装置2000から転送されたセンサ
データを制御メモリ201に書き込むと共に、制御メモ
リ201上のアクチュエータ情報を被制御装置2000に転
送する。Control memory 201 and control data transfer device 3
The data flow with 01 is the address bus 231, the data bus 232, the content update bit bus 233, and the memory control signal.
The sensor data transferred from the controlled device 2000 via 234 is written into the control memory 201, and the actuator information on the control memory 201 is transferred to the controlled device 2000.
【0042】図13,図14に制御データ転送装置30
1が制御メモリ201へのアクセス動作のタイミングチ
ャートを挙げる。図13が制御メモリ201への読み込
み、図14が制御メモリ201への書き込み時のタイミ
ングチャートである。制御装置1000から被制御装置
2000へアクチュエータデータを転送する際には制御
データ転送装置301から制御メモリ201へアドレス
バス231にアドレス情報,メモリ制御信号234に出
力イネーブル信号を送り、制御メモリ201からアドレ
スバス241で指定されたアドレスのデータがデータバ
ス232に内容更新ビット情報が内容更新ビットバス2
33に出力される。制御データ転送装置301はこの内
容更新ビットバス233の値を見て、0ならば前回の被
制御装置2000への転送からデータは内容更新されて
いないと判断し被制御装置2000へのデータ転送を行う必
要はない。一方、内容更新ビットバス233の値が1な
らば、このデータは前回の転送から内容更新されたと判
断しネットワーク1200を介して被制御装置2000
へこのデータを転送すると同時に内容更新ビット情報を
0にリセットする。また、被制御装置2000側からコ
ントローラ側にセンサデータ転送が行われる際には制御
データ転送装置301から制御メモリ201へアドレス
バス231にアドレス情報,データバス232に制御デ
ータ転送装置301がネットワーク1200から受け取
ったデータ情報,メモリ制御信号234に書き込み信号を
送り、制御メモリ201のアドレスバス231で指定さ
れたアドレスに当該データを書き込む。この際内容更新
ビットの内容は0である。この内容更新判定ビットを利
用することにより、制御メモリ201のデータは計算装
置101のアクセスによって変更されたデータのみが被
制御装置2000側へ転送されるため余分なデータ転送
を省くことができデータ転送時間の短縮が可能となる。FIGS. 13 and 14 show the control data transfer device 30.
1 shows a timing chart of an access operation to the control memory 201. 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 the actuator data is transferred from the control device 1000 to the controlled device 2000, the control data transfer device 301 sends address information to the address bus 231 to the control memory 201 to the address bus 231 and an output enable signal to the memory control signal 234. The data of the address specified by the bus 241 is stored in the data bus 232 and the content update bit information is stored in the content update bit bus 2.
33. The control data transfer device 301 looks at the value of the content update bit bus 233, and if it is 0, determines that the data has not been updated since the previous transfer to the controlled device 2000, and performs data transfer to the controlled device 2000. No need to do. On the other hand, if the value of the content update bit bus 233 is 1, it is determined that the content has been updated since the previous transfer, and the controlled device 2000 via the network 1200.
At the same time, the content update bit information is reset to 0. When sensor data is transferred from the controlled device 2000 to the controller, the control data transfer device 301 sends address information to the control memory 201 via the address bus 231 and the data bus 232 sends the control data transfer device 301 from the network 1200. A write signal is sent to the received data information and the 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 the content update determination bit, as for the data in the control memory 201, only the data changed by the access of the computing device 101 is transferred to the controlled device 2000 side, so that unnecessary data transfer can be omitted and the data transfer can be performed. Time can be reduced.
【0043】図13に示す読み込み時のタイミングチャ
ートはT0のタイミングで転送制御装置3002はカウ
ンタ3002の値をアドレスバス231に出力し、OE
信号2341をアサートする。制御メモリ201はアド
レスバス231で指定されたアドレスの内容がデータバ
ス232に、内容更新ビット情報が内容更新ビットバス
233に出力される。T1のタイミングで、転送制御回
路3002はバッファ3201,ラッチ3202にラッ
チ信号を送り、データバス232,内容更新ビットバス
233の値がそれぞれバッファ3201,ラッチ320
2にラッチさせ、OE信号2341をネゲートする。内
容判定回路3001はラッチ3202の内容を見て、0
ならば転送をしないと判定し、カウンタ3012をカウ
ントアップしアドレスバス231へのアドレス出力を止
め、読み込み動作が終了する。1ならば当該データを被
制御装置2000へ当該データを転送するため、T2の
タイミングで当該データをネットワーク1200へ出力
すると共に、転送制御装置3002はWE信号2342
をアサートし、3状態バッファ3211にイネーブル信
号を送り、読み込みデータを保持しているラッチ320
2の内容をデータバス232に内容更新ビットバス23
3に0を出力し、制御メモリ201の当該アドレスの内
容更新ビットをリセットする。T3のタイミングで転送
制御装置3002はWE信号2342をネゲートすると共に
アドレスバス241へのアドレス出力を止めてタイミン
グチャートが終了する。In the timing chart at the time of reading shown in FIG. 13, the transfer control device 3002 outputs the value of the counter 3002 to the address bus 231 at the timing of T0,
Assert signal 2341. In the control memory 201, the content of the address specified by the address bus 231 is output to the data bus 232, and the content update bit information is output to the content update bit bus 233. At the timing of T1, the transfer control circuit 3002 sends a latch signal to the buffer 3201, the latch 3202, and the values of the data bus 232 and the content update bit bus 233 are stored in the buffer 3201, the latch 320, respectively.
2 and the OE signal 2341 is negated. The content determination circuit 3001 looks at the content of the latch 3202, and
In this case, it is determined that the transfer is not performed, the counter 3012 is counted up, the address output to the address bus 231 is stopped, and the read operation ends. If it is 1, the data is transferred to the network 1200 at the timing of T2 in order to transfer the data to the controlled device 2000, and the transfer control device 3002 outputs the WE signal 2342
And sends an enable signal to the tri-state buffer 3211 to latch the read data.
2 to the data bus 232 and the content update bit bus 23
3 is output as 0, and the content update bit of the corresponding 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, and the timing chart ends.
【0044】図14に示す書き込みタイミングチャート
は被制御装置2000からのデータをネットワーク12
00を介して転送回路3001が受取ると、転送制御装
置にデータを受取った旨を3100を通じて知らせて、
書き込みタイミングチャートが開始される。T0のタイ
ミングで転送制御回路3002がアドレスバス231に
アドレスを出力し、WE信号234をアサートし、転送
回路3001がデータバス232に受取ったデータを、
内容更新ビットバスに0を出力し、スキャンメモリのア
ドレスバス231で指定されたアドレスに当該データを
書き込む。T1のタイミングで転送制御回路3002は
WE信号2342をネゲートし書き込み動作が終了す
る。The write timing chart shown in FIG.
When the data is received by the transfer circuit 3001 via the "00", the transfer control device is notified via the 3100 that the data has been received.
The write timing chart starts. At the timing of T0, the transfer control circuit 3002 outputs an address to the address bus 231, asserts the WE signal 234, and transfers the data received by the transfer circuit 3001 to the data bus 232
It outputs 0 to the content update bit bus, and writes the data to the address specified by the address bus 231 of the scan memory. At the timing of T1, the transfer control circuit 3002 negates the WE signal 2342, and the write operation ends.
【0045】図15に他の実施例としてCPU501が図1に
おける計算装置101と制御データ転送装置301を兼
ねるコントローラ1100を示す。CPU501とメモリコン
トローラ401はアドレスバス451,データバス45
2,メモリ制御信号453,内容更新ビットバス251
でつながっており、メモリコントローラ401と制御メ
モリ201はアドレスバス261,データバス262,
メモリ制御信号263,内容更新ビットバス251とで
接続されている。制御メモリ201,メモリコントロー
ラ401の構成は図3と同じであり、アドレスバス45
1,データバス452,メモリ制御信号453は図2の
アドレスバス141,データバス142,メモリ制御信
号453に対応し、アドレスバス261,データバス2
62,メモリ制御信号263,内容更新ビットバス25
1はそれぞれ図2のアドレスバス241,データバス2
42,メモリ制御信号244,内容更新ビットバス24
3に対応する。CPU501は図1の計算装置101と制御デ
ータ転送装置301の処理を兼ねるため、図16に示す
とおり、制御メモリ201のメモリ空間6000をCPU5
01のアドレス空間のCPU501が制御プログラム実行時にア
クセスする制御プログラム実行領域6001とCPU501が
被制御装置2000にデータ転送する際にアクセスする
データ転送領域6002にそれぞれマッピングする。シ
ーケンサ4001はアドレス入力241をデコードして、CP
U501からのアクセスが領域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 also serves as the computing 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 to an address bus 451 and a data bus 45.
2, memory control signal 453, content update bit bus 251
The memory controller 401 and the control memory 201 are connected by an address bus 261, a data bus 262,
The memory control signal 263 and the content update bit bus 251 are connected. The configurations of the control memory 201 and the memory controller 401 are the same as those in FIG.
1, the data bus 452 and the memory control signal 453 correspond to the address bus 141, the data bus 142 and the memory control signal 453 of FIG.
62, memory control signal 263, content update bit bus 25
1 is an address bus 241 and a data bus 2 in FIG.
42, memory control signal 244, content update bit bus 24
Corresponds to 3. As shown in FIG. 16, the CPU 501 allocates the memory space 6000 of the control memory 201 to the CPU 5 as shown in FIG.
In the address space 01, the control program execution area 6001 is accessed when the CPU 501 executes the control program, and the data transfer area 6002 is accessed when the CPU 501 transfers data to the controlled device 2000. Sequencer 4001 decodes address input 241 and outputs CP
Judge whether the access from the U501 is to the area 6001 or the area 6002, and output 0 as the access to the area 6001 and 1 as the access to the area 6002 as the control signal 4142 to the content update judging device 4002. Then, the content update determination device 4002 outputs 1 as the content update bit when accessing the area 6001 and 0 when accessing the area 6002 at the time of writing. This allows the CPU 501 to
Operation equivalent to the calculation device 101 and the control data transfer device 301 can be performed.
【0046】CPU501がメモリコントローラ401を介し
て制御メモリ201へアクセスする際のタイムチャート
は制御プログラム実行時にアクセスする領域6001へ
のアクセス時の動作のタイミングチャートは図10〜図
12と同じで、図10〜図12におけるアドレスバス1
41,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 to be accessed when the control program is executed. 10 to address bus 1 in FIG.
41 and 241 are address buses 451 and 261 respectively, and data buses 142 and 242 are data buses 452 and 242, respectively.
262 and the memory control signals 143 and 244 are the memory control signals 453 and 263 and the content update bit bus 243, respectively.
Correspond to the content update bit bus 251. In addition, the timing chart of the operation at the time of accessing the area 6002 accessed at the time of data transfer is the same as that of FIG. 17 at the time of reading and FIG. 18 at the time of writing, and similarly, the address bus 231 is an address bus. . Although the operation itself is the same as that of the control data transfer device 301, the operation is complicated because the operation is performed via the memory controller 401.
【0047】図17にCPU501が転送データを制御メモリ
201から読み込む際のタイムチャートを示す。T0の
タイミングで、CPU501はアドレスバス451にアドレス
を、データバス452に書き込みデータを出力し、RD
信号4531をアサートする。T1のタイミングではシ
ーケンサ4001はT1の頭でラッチ4011にラッチ
信号を送り、ラッチ4011にアドレスバス451の値
をラッチさせ、WAIT信号1434,OE信号2441を
アサートする。制御メモリ201へ、アドレスバス26
1にアドレス,メモリ制御信号244にOE信号263
1が出力され、制御メモリ201はアドレスバス261
で指定されたアドレスの内容がデータバス262に、内
容更新ビット情報が内容更新ビットバス251に出力さ
れる。FIG. 17 is a time chart when the CPU 501 reads the transfer data from the control memory 201. At the timing of T0, the CPU 501 outputs an address to the address bus 451 and outputs write data to the data bus 452.
Assert 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. Address bus 26 to control memory 201
1 for the address, OE signal 263 for the memory control signal 244
1 is output, and the control memory 201
Are output to the data bus 262, and the content update bit information is output to the content update bit bus 251.
【0048】T2のタイミングではシーケンサ4001
はT2の頭でラッチ4021,4022にラッチ信号を送
り、ラッチ4021にデータバス262の値を、ラッチ
4022に内容更新ビットバス251の値をラッチさ
せ、OE信号2631をネゲートする。T3のタイミン
グではシーケンサ4001はセレクタ4201にビット
マージ4202の出力4111を選択させる選択信号
を、ビットマージ4202に4121の値を出力411
1にスルーさせる信号を、3状態バッファに4301,
4303にイネーブル信号を送り、内容更新判定装置4
002への出力設定信号4142に1を出力すると共
に、WE信号2631をアサートし、WAIT信号45
34をネゲートする。これにより、アドレスバス261
にアドレス,データバス262にラッチ4021にラッ
チされているデータ,内容更新ビットバス251に0,
メモリ制御信号263にWE信号が出力され、制御メモ
リ201はアドレスバス261で指定されたアドレスに
データバス262と内容更新ビットバス251の内容が
書き込まれる。T4のタイミングではシーケンサ400
1は、WAIT信号4534,WE信号2632をネゲ
ートし、3状態バッファ4301,4303のイネーブル信
号を止め、データバス262,内容更新ビットバス25
1へのデータ出力を止める。T5のタイミングではCPU5
01は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, the latch 4022 to latch the value of the content update bit bus 251 and negates the OE signal 2631. At timing T3, the sequencer 4001 outputs a selection signal for causing the selector 4201 to select the output 4111 of the bit merge 4202, and outputs the value of 4121 to the bit merge 4202.
The signal to be passed to 1 is passed to the three-state buffer 4301,
Send an enable signal to the content update determination device 4303
In addition to outputting 1 to the output setting signal 4142 to 002, the WE signal 2631 is asserted, and the WAIT signal 45
34 is negated. Thereby, the address bus 261
, The data latched on the latch 4021 on the data bus 262, 0 on the content update bit bus 251,
The WE signal is output as the memory control signal 263, and the control memory 201 writes the contents of the data bus 262 and the content update bit bus 251 to the address specified by the address bus 261. At the timing of T4, the sequencer 400
1 negates the WAIT signal 4534 and the WE signal 2632, stops the enable signals of the three-state buffers 4301 and 4303, and sets the data bus 262 and the content update bit bus 25.
Stop data output to 1. CPU5 at the timing of T5
01 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 the transfer data.
【0049】図18に、被制御装置2000から転送さ
れたデータを制御メモリ201に書き込む際のタイムチ
ャートを示す。T0のタイミングで、CPU501はアドレス
バス451にアドレスをデータバス452に書き込みデ
ータを出力し、WR信号4532をアサートする。T1のタ
イミングではシーケンサ4001はT1の頭でラッチ4
011,4012にラッチ信号を送り、ラッチ4011
にアドレスバス451の値をラッチ4012にデータバ
ス452の値をそれぞれラッチさせ、WAIT信号45
34,WE信号2632をアサートし、セレクタ420
1にラッチ4012の出力4102を選択させる選択信
号を、内容更新判定装置4002への出力選択信号41
42に1を出力し、3状態バッファ4301,4303
にイネーブル信号を送る。これにより、アドレスバス2
61にアドレス,データバス262にデータ,内容更新
ビットバス251に0,メモリ制御信号263にWE信
号2632が出力され、制御メモリ201はアドレスバ
ス261で指定されたアドレスにデータバス262と内
容更新ビットバス251の内容が書き込まれる。T2の
タイミングではシーケンサ4001はWAIT信号45
34,WE信号2632をネゲートし、3状態バッファ
4301,4303のイネーブル信号を止め、データバ
ス262,内容更新ビットバス251へのデータ出力を
止める。T3のタイミングではCPU501はWAIT信号4
534がネゲートされたのを確認し、アドレスバス45
1,データバス452への出力を止め、WR信号453
2をネゲートする。以上が書き込み時のメモリコントロ
ーラ401の動作である。FIG. 18 is a time chart for writing data transferred from the controlled device 2000 to the control memory 201. At the timing of T0, the CPU 501 writes an address on the address bus 451 and outputs data on the data bus 452, and asserts the WR signal 4532. At timing T1, sequencer 4001 latches at the beginning of T1.
011, 4012 and the latch 4011
The value of the address bus 451 is latched by the latch 4012, and the value of the data bus 452 is latched by the latch 4012.
34, the WE signal 2632 is asserted, and the selector 420 is asserted.
1 to select the output 4102 of the latch 4012, and the output selection signal 41 to the content update determination device 4002.
1 is output to 42 and the 3-state buffers 4301 and 4303
The enable signal. Thereby, the address bus 2
An address 61, data on the data bus 262, 0 on the content update bit bus 251 and a WE signal 2632 on the memory control signal 263 are output. The contents of the bus 251 are written. At the timing of T2, the sequencer 4001 outputs the WAIT signal 45
34, negates 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 sets the WAIT signal 4
534 is confirmed to be negated, and the address bus 45
1, output to the data bus 452 is stopped, and the WR signal 453 is output.
Negate 2. The above is the operation of the memory controller 401 at the time of writing.
【0050】次にコスト問題に対する実施の形態につい
て図19〜図27を用いて説明する。Next, an embodiment for the cost problem will be described with reference to FIGS.
【0051】図19に示すように、プロセス制御装置1
0000はコントローラ10001とプロセスデータ制
御装置10002,メモリ10003,通信プロセッサ
10004,入出力装置10005,センサ1000
6,電流計10007,表示ランプ10008から構成
され、プロセスデータ制御装置10002はそれぞれ、
コントローラ10001とはIOデータバス21000
により、メモリ10003とはメモリデータバス230
00により、通信プロセッサ10004とは通信データ
バス24000により、接続されている。As shown in FIG. 19, the process control device 1
0000 is a controller 10001, a process data control device 10002, a memory 10003, a communication processor 10004, an input / output device 10005, a sensor 1000
6, an ammeter 10007 and a display lamp 10008, and the process data control device 10002
The controller 10001 is an IO data bus 21000
Thus, the memory 10003 is connected to the memory data bus 230
00 and a communication processor 10004 by a communication data bus 24000.
【0052】また、通信プロセッサ10004はシリア
ル線を介して入出力装置10005と接続されており、
入出力装置10005はセンサ10006と電流計1000
6と表示ランプ10008と接続されている。このプロ
セス制御装置ではセンサ10006から情報が来ると電
流計10007の電流値を調べ、基準値より低ければO
Kのサインとしてランプ10008を点灯させる動作を
行うものとする。プロセス制御装置10000でのデー
タの動きは次の通りである。The communication processor 10004 is connected to an input / output device 10005 via a serial line.
The input / output device 10005 includes a sensor 10006 and an ammeter 1000
6 and the display lamp 10008 are connected. In this process control device, when information is received from the sensor 10006, the current value of the ammeter 10007 is checked.
An operation of lighting the lamp 10008 as a sign of K is performed. The data movement in the process control device 10000 is as follows.
【0053】コントローラ10001はプロセスデータ
制御装置10002を介してメモリ10003からセン
サ10006のデータを読み出し、センサ10006の
情報が1ならば、電流計10007のデータをプロセス
データ制御装置10002を介してメモリ10003か
ら読み出す。読み出された電流計10007のデータが
基準値より低ければ1を高ければ0をランプ10008
へのデータとしてプロセスデータ制御装置10002を
介してメモリ10003に書き込む。この一連の処理を
一定間隔でコントローラ10001は実行する。一方通
信プロセッサ10004は一定間隔で入出力装置に起動
をかけ、センサ10006と電流計10007のデータ
を読み込み、プロセスデータ制御装置を介して当該セン
サ10006と電流計10007のデータをメモリ10
003に書き込むと共に、プロセスデータ制御装置10
002を介してランプ10008のデータをメモリ10
003より読み出し、PIO装置10005に転送す
る。PIO装置10005は通信プロセッサから起動をかけ
られると、センサ10006と電流計10007 からデータ
を取り込み、電流計10007のデータをA/D変換器
を用いて2バイトのディジタル情報に変換し、通信プロ
セッサ10004に転送する。また通信プロセッサ10
004から転送されたランプ10008へのデータを取
り込み、当該データが1ならばランプを点灯させ、0な
らば、ランプを消灯させる。以上のようにプロセス制御
装置10000を動作する。The controller 10001 reads the data of the sensor 10006 from the memory 10003 via the process data controller 10002. If the information of the sensor 10006 is 1, the data of the ammeter 10007 is read from the memory 10003 via the process data controller 10002. read out. If the read data of the ammeter 10007 is lower than the reference value, 1 is increased, and if the data is higher, 0 is ramped.
Is written to the memory 10003 via the process data control device 10002 as data to 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, and stores the data of the sensor 10006 and the ammeter 10007 via the process data control device into the memory 10.
003 and the process data control device 10
002 via the memory 10
003 and transferred to the PIO device 10005. When activated by the communication processor, the PIO device 10005 fetches data from the sensor 10006 and the ammeter 10007, converts the data of the ammeter 10007 into 2 bytes of digital information using an A / D converter, and Transfer to The communication processor 10
The data transferred from 004 to the lamp 10008 is fetched. If the data is 1, the lamp is turned on, and if the data is 0, the lamp is turned off. The process control device 10000 operates as described above.
【0054】まず、コントローラ10001からのアク
セスについて説明する。コントローラ10001からプ
ロセスデータ制御装置10002を介してのメモリ1000
3 へのアクセスは2バイト単位で行われる。図20に示
すように、コントローラ10001のIOアドレス空間
の一部にプロセスデータ制御装置10002のアクセス
空間を割り当て、このIO空間を介してコントローラ1
0001はメモリ10003をアクセスする。当該IO
空間はプロセスデータ制御装置10002内の2バイト
アドレスポインタを構成するアドレスポインタ上位バイ
ト12001 ,アドレスポインタ下位バイト12002,コ
ントローラ10001がメモリ10003へのライトア
クセス時に使用する上位バイトライトバッファ12002 ,
メモリライトバッファ12003、同じくコントローラ
10001がメモリ10003へのリードアクセス時に
使用する上位バイトリードバッファ12005 ,メモリリー
ドバッファ12006から構成され、コントローラ10
001はこれら12001〜12006の6バイトから
なる空間をアクセスし、メモリ10003へのアクセスを行
う。First, access from the controller 10001 will be described. The memory 1000 from the controller 10001 via the process data control device 10002
Access to 3 is performed in 2-byte units. 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 1 is connected via this IO space.
0001 accesses the memory 10003. The IO
The space is composed of an address pointer upper byte 12001 constituting a 2-byte address pointer in the process data control device 10002, an address pointer lower byte 12002, and an upper byte write buffer 12002 used by the controller 10001 for write access to the memory 10003,
The memory write buffer 12003 is composed of an upper byte read buffer 12005 and a memory read buffer 12006 which are also used by the controller 10001 for read access to the memory 10003.
Reference numeral 001 accesses a space composed of these 6 bytes of 12001 to 12006, and accesses the memory 10003.
【0055】コントローラ10001がメモリ1000
3へアクセスする方法を図21に示す。コントローラ1
0001がメモリ10003へのライトアクセスを行う
には、コントローラ10001はメモリ10003上の
アクセスしたいアドレスの上位バイトをアドレスポイン
タ上位バイト12001に、同じく下位バイトをアドレ
スポインタ下位バイト12002に書き込む(1300
1)。次にコントローラ10001は13001でセッ
トしたアドレスへ書き込みたい2バイトデータの上位バ
イトを上位バイトライトバッファ12003に書き込む
(13003)。そして、同じく書き込みたい2バイトデ
ータの下位バイトをメモリライトバッファ12004に
書き込む(13003)ことにより、プロセスデータ制
御装置10002はアドレスポインタ上位バイト120
01とアドレスポインタ下位バイト12002からなる
アドレスポインタで示されたアドレスにメモリライトバ
ッファ12004の値を、アドレスポインタにより示さ
れたその次のアドレスに上位バイトライトバッファ12
003の値をメモリ10003に連続して書き込む。The controller 10001 has the memory 1000
3 is shown in FIG. Controller 1
In order for 0001 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 upper byte 12001 of the address pointer, and similarly writes the lower byte to the lower byte 12002 of the address pointer (1300).
1). Next, the controller 10001 writes the upper byte of the 2-byte data to be written to the address set in 13001 into the upper byte write buffer 12003.
(13003). Then, the process data control device 10002 writes the lower byte of the two-byte data to be written to the memory write buffer 12004 (13003).
01 and the value of the memory write buffer 12004 at the address indicated by the address pointer composed of the address pointer lower byte 12002, and the value of the upper byte write buffer 12 at the next address indicated by the address pointer.
The value of 003 is continuously written to the memory 10003.
【0056】コントローラ10001がメモリ1000
3からデータをリードする際にはライト時と同様にし
て、コントローラ10001はメモリ10003から読
み込みたいデータのアドレスをアドレスポインタ上位バ
イト12001・下位バイト12002に値をセット
(13011)し、先程のライト時とは異なり、先ずコ
ントローラ10001はメモリリードバッファ1200
6を読み込む。するとプロセスデータ制御装置1000
2はメモリ10003に対してメモリ10003からア
ドレスポインタ上位バイト12001と下位バイト12
002からなるアドレスポインタで示されたアドレスの
値をメモリリードバッファ12006に、アドレスポイ
ンタで示されたアドレスの次のアドレスの値を上位バイ
トリードバッファ12005に連続して読み込む(13
012)。したがって、コントローラ10001がメモ
リリードバッファ12006をリードするとコントロー
ラ10001はアドレスポインタで示されたメモリ10
003上のアドレスの値を読み出すことができる。次に
コントローラ10001は上位バイトリードバッファ1
2005をリードし、上位バイトを読み込み、リードア
クセスは終了する(13013)。以上のようにコント
ローラ10001からのアクセスをプロセスデータ制御
装置10002がメモリ10003に対して2バイト単
位でアクセスすることにより、2バイトデータの同時性
を保証する。また、コントローラ10001からのリー
ドライトバッファ12003〜12006へのアクセス
によりプロセスデータ制御装置10002がメモリ10
003へ1バイトデータをアクセスするごとにアドレス
ポインタをインクリメントするアドレスポインタにオー
トインクリメント機能を持たせることで、コントローラ
10001は一度アドレスポインタにアドレスをセット
すれば、あとはリードライトバッファ12003〜1200
6へアクセスするだけで、コントローラ10001はア
ドレスポインタ12001,12002に新たにアドレ
スををセットすることなしにメモリ10003の連続ア
ドレスにアクセスできる。The controller 10001 has the memory 1000
When the data is read from the memory 1000, 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) in the same manner as at the time of writing. Unlike the first embodiment, the controller 10001 first operates the memory read buffer 1200
Read 6. Then, the process data control device 1000
2 is an address pointer upper byte 12001 and a lower byte 12 from the memory 10003 to the memory 10003.
The value of the address indicated by the address pointer 002 is successively read into the memory read buffer 12006, and the value of the address next to the address indicated by the address pointer is successively read into the upper byte read buffer 12005 (13).
012). Therefore, when the controller 10001 reads the memory read buffer 12006, the controller 10001 returns to the memory 10 indicated by the address pointer.
003 can be read. Next, the controller 10001 sends the upper byte read buffer 1
2005 is read, the upper byte is read, and the read access ends (13013). As described above, the process data control device 10002 accesses the memory 10003 in units of 2 bytes for access from the controller 10001, thereby guaranteeing the synchronization of 2-byte data. The process data control device 10002 accesses the read / write buffers 12003 to 12006 from the controller 10001 to
The controller 10001 sets the address once in the address pointer by providing the address pointer with an auto-increment function for incrementing the address pointer every time 1-byte data is accessed to 003.
6, the controller 10001 can access consecutive addresses in the memory 10003 without setting new addresses in the address pointers 12001 and 12002.
【0057】一方、通信プロセッサ10004からのメ
モリ10003へのアクセスはコントローラ10001
からアクセスとは異なり、メモリ10003の全メモリ
空間を通信プロセッサからのアドレス出力によって指定
でき、かつ通信データバス24000が2バイトである
ため、通信プロセッサ10004からのメモリ1000
3へのアドレス出力は偶数アドレス(アドレスの最下位
ビットが0)となる。次に通信プロセッサ10004か
らメモリ10003へのアクセス方法を示す。On the other hand, the access from the communication processor 10004 to the memory 10003 is performed by the controller 10001.
Unlike the access from the communication processor 10004, since the entire memory space of the memory 10003 can be specified by an address output from the communication processor and the communication data bus 24000 is 2 bytes,
The address output to 3 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.
【0058】通信プロセッサ10004からメモリ10
003へのライトアクセス時には通信プロセッサ100
04はプロセスデータ制御装置10002に対して、メ
モリ10003へのアドレスと通信データバス2400
0に2バイトのライトデータを出力する。プロセスデー
タ制御装置10002はメモリ10003へのライトア
クセスはメモリデータバス23000のバス幅が1バイ
ト幅であるため、先ずメモリ10003に対して2バイ
トからなる通信データバス24000の下位バイトを通
信プロセッサ10004から指定されたアドレス(偶数
アドレス)に書き込み、次に通信データバス24000
の上位バイトをその次のアドレス(奇数アドレス:当該
アドレスの最下位ビットを1にする)に書き込む2回連
続ライトアクセスを行い、プロセスデータ制御装置10
002はメモリ10003に対する通信プロセッサ10
004からのライトアクセスを終了する。From the communication processor 10004 to the memory 10
At the time of write access to 003, the communication processor 100
Reference numeral 04 denotes an address to the memory 10003 and a communication data bus 2400 to the process data control device 10002.
Output 2-byte write data to 0. Since the bus width of the memory data bus 23000 is 1 byte for write access to the memory 10003, the process data control device 10002 first transfers the lower byte of the communication data bus 24000 consisting of 2 bytes to the memory 10003 from the communication processor 10004. Write to the specified address (even address) and then the communication data bus 24000
Is written twice to the next address (odd address: the least significant bit of the address is set to 1), and the process data control device 10
002 is the communication processor 10 for the memory 10003
The write access from 004 ends.
【0059】次に通信プロセッサ10004からのメモ
リ10003へのリードアクセス時には、ライト時と同
様に通信プロセッサ10004,プロセスデータ制御装
置10002に対してメモリ10003へのアドレスを
出力する。プロセスデータ制御装置10002はメモリ
データバス24000が1バイトバスであるため、通信
プロセッサ10004から指定されたアドレス(偶数ア
ドレス)で示されたメモリ10003の内容を読み出し
これを下位バイトとして、続く次のアドレスの内容を
(奇数アドレス:当該アドレスの最下位ビットを1)をメ
モリ10003から読み出し、これを上位バイトとし、
合わせて2バイトデータとして通信プロセッサ1000
4に出力する2回連続リードを行うことにより、プロセ
スデータ制御装置10002はメモリ10003に対す
る通信プロセッサ10004からのリードアクセスを終
了する。Next, at the time of read access from the communication processor 10004 to the memory 10003, 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 out the contents of the memory 10003 indicated by the specified address (even address) from the communication processor 10004 and uses this as the lower byte, and the next next address The contents of
(Odd address: the least significant bit of the address is 1) from the memory 10003, and this is set as the upper byte,
Communication processor 1000 as 2-byte data in total
The process data control device 10002 terminates the read access from the communication processor 10004 to the memory 10003 by performing the continuous read twice to output the data to the memory 1000.
【0060】以上のようにして通信プロセッサ1000
4からメモリ10003へのアクセスは行われる。さら
にプロセスデータ制御装置10002ではコントローラ
10001と通信プロセッサ10004とは非同期で動
作しているため、コントローラ10001と通信プロセ
ッサ10004から同時にプロセスデータ制御装置10
002にアクセス要求が発生する場合(メモリ1000
3へのアクセス競合)が存在する。この競合の解消方法
としてプロセス制御装置10000ではテストアンドセ
ット等のソフトウエアによる競合解消ではなく、プロセ
スデータ制御装置10002内に競合解消回路を持た
せ、ハードウエアで競合をすばやく解消し競合によるメ
モリアクセス時のオーバーヘッドを小さくしている。こ
の競合解消によりメモリ10003へのアクセスの排他
性を2バイトアクセス単位で実現し、2バイトデータの
同時性を保証する。As described above, the communication processor 1000
4 accesses the memory 10003. Further, in the process data control device 10002, since the controller 10001 and the communication processor 10004 operate asynchronously, the controller 10001 and the communication processor 10004 simultaneously transmit the process data control device
002 when an access request occurs (memory 1000
3). As a method of resolving the conflict, the process controller 10000 does not use a software such as test and set to resolve the conflict. Instead, a conflict resolution circuit is provided in the process data controller 10002 to quickly resolve the conflict by hardware and access the memory by the conflict. Time overhead is reduced. By this conflict resolution, the exclusiveness of the access to the memory 10003 is realized in units of 2-byte access, and the simultaneousness of 2-byte data is guaranteed.
【0061】図22にプロセスデータ制御装置1000
2の構成を示す。プロセスデータ制御装置10002は
コントローラ10001とはIOデータバス21000
とIOアドレスバスとで、通信プロセッサ10004と
は通信データバス24000 と通信アドレスバスとで、メモ
リ10003とはメモリデータバス23000とメモリ
アドレスバスとで接続されており、IOデータバス21
000,通信データバス24000,メモリデータバス
23000はそれぞれ、1バイト幅,2バイト幅,1バ
イト幅の双方向バスであり、IOアドレスバス,通信ア
ドレスバス,メモリアドレスバスはすべて2バイト幅で
ある。このプロセスデータ制御装置10002はコント
ローラ10001からのIOアドレス出力をデコードす
るIOデコーダ10021とコントローラ10001か
らアクセス時のデータを制御し2バイト同時保証を行う
2バイト同時保証回路10023と、コントローラ10
001からのアクセス時にメモリへのアドレスを保持す
るアドレスポインタ10024と通信プロセッサからの
アクセス時のデータを制御するメモリシーケンサ100
25と2バイト同時保証回路10023からの出力デー
タとメモリシーケンサ10025からの出力データをセ
レクトしメモリデータバス23000に出力するセレク
タ10027と、アドレスポインタ10024からのア
ドレス出力と通信プロセッサ10004からのアドレス
出力をセレクトし、メモリアドレスバスに出力するセレ
クタ10026,2バイト同時保証回路からIOデータ
バス21000への出力を制御する3状態バッファ11
001,同じくメモリシーケンサ10025から通信デ
ータバス24000への出力を制御する3状態バッファ
11003、同じくセレクタ10027の出力をメモリ
データバス23000への出力を制御する3状態バッファ1
1002、また、これらを制御する制御装置10022
から構成される。FIG. 22 shows a process data control device 1000.
2 is shown. The process data control device 10002 is connected to the controller 10001 by an IO data bus 21000.
The communication processor 10004 is connected to the communication data bus 24000 and the communication address bus, and the memory 10003 is connected to the memory data bus 23000 and the memory address bus.
000, a communication data bus 24000, and a memory data bus 23000 are bidirectional buses having a 1-byte width, a 2-byte width, and a 1-byte width, respectively. The IO address bus, the communication address bus, and the memory address bus are all 2-byte widths. . The process data control device 10002 includes an IO decoder 10021 for decoding an IO address output from the controller 10001, a 2-byte simultaneous guarantee circuit 10023 for controlling data at the time of access from the controller 10001, and guaranteeing 2 bytes simultaneously,
An address pointer 10024 for holding an address to a memory at the time of access from 001 and a memory sequencer 100 for controlling data at the time of access from a communication processor
A selector 10027 that selects output data from the 25 and 2-byte simultaneous guarantee circuit 10023 and output data from the memory sequencer 10025 and outputs the selected data to the memory data bus 23000, an address output from the address pointer 10024, and an address output from the communication processor 10004. Selector 1002 for selecting and outputting to memory address bus 3-state buffer 11 for controlling output to IO data bus 21000 from simultaneous 2-byte guarantee circuit
001, a three-state buffer 11003 that also controls the output from the memory sequencer 10025 to the communication data bus 24000, and a three-state buffer 1 that also controls the output of the selector 10027 to the memory data bus 23000.
1002 and a control device 10022 for controlling them.
Consists of
【0062】IOデコーダ10021はコントローラ1
0001からのプロセスデータ制御装置10002への
アクセス時にIOアドレスをデコードし、プロセスデー
タ制御装置10002へのアクセスであれば、アドレス
ポインタ10024へのアクセスかメモリ10003へ
のアクセスかを判定する。コントローラ10001から
のアクセスがアドレスポインタ10024へのアクセス
の場合にはアドレスポインタ10024に対してアドレ
スポインタの上位または下位バイトへのデータセット信
号を出力する。また、メモリアクセス(メモリライトバ
ッファ12004 ,メモリリードバッファ12006へのア
クセス)の場合には制御回路10022にアクセス要求
を出力する。制御回路10022は内部に競合判定回路
10221 を持っており、メモリ10003へのアクセスに
おける競合が発生するか否かを判定する。メモリ100
03への競合が発生する場合にはメモリシーケンサ1002
5からのメモリ10003へのアクセスが終了するまで
待たせてから、競合が発生しなればアクセス許可を2バ
イト同時保証回路10023に与えるとともに、セレク
タ10026にアドレスポインタ10024の出力を選
択させる。さらに、コントローラ10001からのアク
セスがリードアクセスの場合にはメモリ10003に対
して2回連続してリード要求を出力すると共に、IOデ
ータバス21000への3状態バッファ11001を出
力状態にする。またコントローラ10001からのアク
セスがライトアクセスの場合にはメモリ10003に対
して2回連続してライト要求を出力するとともにセレク
タ10027に2バイト同時制御回路の出力を選択さ
せ、メモリデータバス23000への3状態バッファ1
1002をドライブする。2バイト同時保証回路100
23は制御回路10022よりアクセス許可を得てメモリ1
0003に対してアクセスを開始する。The IO decoder 10021 is connected to the controller 1
When the process data control device 10002 is accessed from 0001, the IO address is decoded, and if the process data control device 10002 is accessed, it is determined whether the access is to the address pointer 10024 or the memory 10003. When the access from the controller 10001 is the access to the address pointer 10024, a data set signal to 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 the memory read buffer 12006), an access request is output to the control circuit 10022. The control circuit 10022 has a conflict determination circuit inside.
10221, and determines whether or not a conflict occurs in access to the memory 10003. Memory 100
If a conflict occurs with the memory sequencer 1002
After waiting until the access to the memory 10003 from 5 is completed, if no conflict occurs, access permission is given to the 2-byte simultaneous assurance circuit 10023 and the selector 10026 is made to select the output of the address pointer 10024. Further, when the access from the controller 10001 is a read access, a read request is output twice consecutively to the memory 10003, and the three-state buffer 11001 to the IO data bus 21000 is set to the output state. If the access from the controller 10001 is a write access, the memory 10003 outputs a write request to the memory 10003 twice in succession and causes the selector 10027 to select the output of the 2-byte simultaneous control circuit. Status buffer 1
Drive 1002. 2-byte simultaneous guarantee circuit 100
Reference numeral 23 denotes a memory 1 which has been granted access permission from the control circuit 10022 and
Access to 0003 is started.
【0063】また、通信プロセッサ10004からのア
クセス時にはメモリシーケンサ10025が制御回路1
0022にアクセス要求を出力し、制御回路10022
が持っている競合判定回路10221がメモリ1000
3へのアクセス競合が発生するかを判定し、競合が発生
するならば2バイト同時保証回路10023がメモリ1
0003へのアクセスが終了するまでまたせ、メモリ1
0003へのアクセス競合が発生しなければ、制御回路
10022はメモリシーケンサ10025にアクセス許
可を与えるとともに、セレクタ10026に通信プロセ
ッサ10004のアドレス出力を選択させる。さらに、通信
プロセッサ10004からのアクセスがリードアクセス
の場合にはメモリ10003に対して2回連続してリー
ド要求を出力すると共に通信データバス24000への
3状態バッファ11003をドライブする。また、通信
プロセッサ10004からのアクセスがライトアクセス
の場合にはメモリ10003に対して2回連続ライト要
求を出力すると共にセレクタ10027にメモリシーケ
ンサ10025の出力を選択させ、メモリデータバス2
3000への3状態バッファ11002をドライブす
る。When accessing from the communication processor 10004, the memory sequencer 10025
An access request is output to the control circuit 10022
Of the memory 1000
It is determined whether a contention for access to the memory 1 occurs.
0003 until the access to 0003 is completed.
If there is no contention for access to 0003, the control circuit 10022 grants access to the memory sequencer 10025 and causes the selector 10026 to select 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 consecutively 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 caused to select the output of the memory sequencer 10025.
Drive the three state buffer 11002 to 3000.
【0064】図23に2バイト同時保証回路10023
の構成を示す。2バイト同時保証回路10023は同時
保証制御回路10231とメモリ10003へのライト
時に上位バイトデータを保持するラッチ10232とメ
モリ10003へのライトデータを選択するセレクタ1
0235、また、メモリ10003へのリード時に上位
バイトデータを保持するラッチ10233,下位バイト
を保持するラッチ10234,コントローラ10001
へのリードデータを選択するセレクタ10236から構
成されている。この2バイト同時保証回路100023
は制御回路10022からのアクセス許可を受けて起動
し、IOデコーダ10021から、上位バイトライトバ
ッファ12003,メモリライトバッファ12004,
上位バイトリードバッファ12005,メモリリードバ
ッファ12006のどれへのアクセスかを受け取る。同
時保証制御回路10231の動作は次のとおりである。
上位バイトライトバッファ12003へのアクセスの場
合には同時保証制御回路10231はラッチ10232
にラッチ信号を出力しラッチ10232にIOデータバ
ス21000のデータをラッチさせる。上位バイトリー
ドバッファ12005へのアクセスの場合には同時保証
制御回路10231はセレクタ10236にラッチ10
234の出力を選択させ、IOデータバス21000に
ラッチ10234に保持された上位バイトデータを出力
させる。また、メモリライトバッファ12004へのア
クセス時には同時保証制御回路10231は制御回路1
0022に対してメモリ10003へのライト要求を出
力し、同制御回路10022からアクセス許可をもらう
のを待つ、同時保証制御回路10231は制御回路10
022からアクセス許可をもらうと、セレクタ1023
5にIOデータバス21000を選択させ、メモリ10
003にメモリライトバッファ12004への書き込み
データを書き込み、続いて同時保証制御回路10231
はセレクタ10235をラッチ10232を選択させ、
上位バイトリードバッファの値をメモリ10003に出
力し、ラッチ10232のデータを書き込むことによ
り、2バイトデータを連続してメモリ10003へ書き
込む。FIG. 23 shows a 2-byte simultaneous guarantee circuit 10023.
Is shown. The 2-byte simultaneous guarantee circuit 10023 includes a simultaneous guarantee control circuit 10231 and a latch 10232 for holding upper byte data when writing to the memory 10003 and a selector 1 for selecting write data to the memory 10003.
0235, a latch 10233 for holding upper byte data at the time of reading to the memory 10003, a latch 10234 for holding lower byte, and a controller 10001.
And a selector 10236 for selecting read data to be read. This 2-byte simultaneous guarantee circuit 100023
Are activated upon receiving an access permission from the control circuit 10022, and are transmitted from the IO decoder 10021 to the upper byte write buffer 12003 and the memory write buffer 12004.
It receives which of the upper byte read buffer 12005 and the memory read buffer 12006 is accessed. The operation of the simultaneous guarantee control circuit 10231 is as follows.
In the case of accessing the upper byte write buffer 12003, the simultaneous guarantee control circuit 10231
And the latch 10232 causes the latch 10232 to latch the data on the IO data bus 21000. In the case of accessing the upper byte read buffer 12005, the simultaneous assurance control circuit 10231 causes the selector 10236 to
234 is selected, and the upper byte data held in the latch 10234 is output to the IO data bus 21000. When accessing the memory write buffer 12004, the simultaneous guarantee control circuit 10231
The simultaneous guarantee control circuit 10231 outputs a write request to the memory 10003 and waits for access permission from the control circuit 10022.
022, the selector 1023
5 selects the IO data bus 21000, and
In 003, write data to the memory write buffer 12004 is written.
Causes selector 10235 to select latch 10232,
By outputting the value of the upper byte read buffer to the memory 10003 and writing the data of the latch 10232, the 2-byte data is continuously written to the memory 10003.
【0065】メモリリードバッファ12006へのアク
セス時には、同様にして制御回路10022に対してメ
モリ10003へのリード要求を出力し、同制御回路1
0022からアクセス許可をもらうのを待つ。同時保証
制御回路10231は制御回路10022からアクセス
許可をもらうと、制御装置10022から2回連続して
リード要求が出力されるので、同時保証制御回路102
31はラッチ10233にラッチ信号を出力し最初のリ
ードデータ(下位バイトデータ)をラッチ10233に保
持させ、続いて、ラッチ10234にラッチ信号を出力
し続くメモリ10003からのリードデータ(上位バイ
ト)を10234に保持させる。また、同時保証回路1
0231はセレクタ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.
Wait for permission from 0022. When the simultaneous guarantee control circuit 10231 receives an access permission from the control circuit 10022, the control device 10022 outputs a read request twice consecutively.
Numeral 31 outputs a latch signal to the latch 10233 to cause the latch 10233 to hold the first read data (lower byte data). To be held. Simultaneous guarantee circuit 1
Reference numeral 0231 selects the output of the selector 10235 to the latch 10233, and outputs the lower byte data to the IO data bus 21000.
【0066】図24にアドレスポインタ10024の概
要を示す。アドレスポインタ10024はメモリ10003
へ出力するアドレスの上位バイトを保持するラッチ1024
1 と下位バイトを保持するラッチ10242、また、メ
モリ10003へのオートインクリメントを行う16ビ
ット(2バイト)インクリメンタ10243,セレクタ
10244,10245から構成され、セレクタ102
44,10245はそれぞれ、ラッチ10241,10
242への入力データをIOデータバス21000か、16
ビットインクリメンタ10243の出力かを選択する。
セレクタ10244,10245は通常は16ビットインクリ
メンタ10243の出力を選択しているが、コントロー
ラ10001がアドレスポインタをアクセスする際には
セレクタ10244,10245共にIOデータバス2
1000側を選択する。コントローラ10001がアド
レスポインタ上位バイト12001をアクセス時にはI
Oデコーダ10021からラッチ10241にラッチ信
号が出力され、ラッチ10241にIOデータバス21
000の値が、また、コントローラ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. Address pointer 10024 is in memory 10003
Latch 1024 that holds the upper byte of the address to be output to
A latch 10242 for holding 1 and the lower byte, a 16-bit (2-byte) incrementer 10243 for performing auto-increment to the memory 10003, and selectors 10244 and 10245.
44 and 10245 are latches 10241 and 10241, respectively.
Input data to 242 is transferred to IO data bus 21000 or 16
It selects whether it is the output of the bit incrementer 10243.
The selectors 10244 and 10245 normally select the output of the 16-bit incrementer 10243. However, when the controller 10001 accesses the address pointer, both the selectors 10244 and 10245 use the IO data bus 2.
Select 1000 side. When the controller 10001 accesses the upper byte 12001 of the address pointer,
A latch signal is output from the O decoder 10021 to the latch 10241, and the IO data bus 21 is supplied to the latch 10241.
000 when the controller 10001 accesses the lower byte 12002 of the address pointer.
A latch signal is output from the decoder 10021 to the latch 10242, and the IO data bus 21000 is supplied to the latch 10242.
Is written. 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. Since 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, the memory access can be performed correctly.
【0067】図25にメモリシーケンサ10025の概
要を示す。メモリシーケンサ10025は通信プロセッサ1
0004のライト時に2バイト幅の通信データバス2400
0 のライトデータの上位バイト,下位バイトを選択しメ
モリデータバス23000に出力するセレクタ1025
2と、通信プロセッサ10004のリード時に上位バイ
トを保持するラッチ10253と下位バイトを保持する
ラッチ10254とこれらを制御するメモリシーケンサ
制御回路10251から構成される。通信プロセッサ1
0004からのライト時にはメモリシーケンサ制御回路
10251は制御回路10022にライト要求信号を出
力し、同制御回路10022からのアクセス許可が来る
のを待つ。同制御回路10022からのアクセス許可が
来ると、メモリシーケンサは制御回路10022から出
力されるメモリ10003への2回連続のライトアクセ
ス要求に対してセレクタ10254を最初のライトアク
セス時には下位バイトを続く次のライトアクセス時には
上位バイトを選択すると同時にアドレスの最下位ビット
を最初のライトアクセス時には0を次のライトアクセス
時には1を出力することにより、メモリ10003の連
続したアドレスに通信データバス24000上のデータ
を書き込む。また、通信プロセッサ10004 がメモリ10
003からリードするときには、制御回路10022に
ライト要求信号を出力し、同制御回路10022からの
アクセス許可が来るのを待つ。同制御回路10022は
メモリシーケンサ制御回路10251にアクセス許可が
与えると共に、メモリ10003に対して2回連続して
リードアクセス要求を出力する。メモリシーケンサ10
251は制御回路10022からアクセス許可をもらう
と、最初のメモリ10003からのリードデータをラッ
チ10253に、続く次のリードデータをラッチ102
54に保持させるようにラッチ10253,10254
にラッチ信号を出力し、通信データバス24000にラ
ッチ10253 ,10254の出力からなるに2バイトデー
タを出力する。以上のようにして通信プロセッサ100
04からのメモリアクセスに対しても2バイト同時保証
を実現する。FIG. 25 shows an outline of the memory sequencer 10025. Memory sequencer 10025 is communication processor 1
2400-byte communication data bus 2400 when writing 0004
Selector 1025 that selects the upper byte and lower byte of write data of 0 and outputs it to memory data bus 23000
2, a latch 10253 for holding the upper byte when reading the communication processor 10004, a latch 10254 for holding the lower byte, and a memory sequencer control circuit 10251 for controlling these. Communication processor 1
At the time of writing from 0004, the memory sequencer control circuit 10251 outputs a write request signal to the control circuit 10022 and waits for an access permission from the control circuit 10022. When the access permission is received from the control circuit 10022, the memory sequencer sets the selector 10254 in response to the two consecutive write access requests to the memory 10003 output from the control circuit 10022, at the time of the first write access, to the next lower byte. The data on the communication data bus 24000 is written to consecutive addresses of the memory 10003 by selecting the upper byte at the time of write access and outputting the least significant bit of the address as 0 at the first write access and 1 at the next write access. . Also, the communication processor 10004 stores the memory 10
When reading from 003, a write request signal is output to the control circuit 10022 and the control circuit 10022 waits for an access permission. The control circuit 10022 gives an access permission to the memory sequencer control circuit 10251 and outputs a read access request to the memory 10003 twice consecutively. Memory sequencer 10
251 receives the access permission from the control circuit 10022 and latches the first read data from the memory 10003 to the latch 10253 and the next read data from the memory 1023 to the latch 1023.
Latches 10253 and 10254
, And a 2-byte data consisting of the outputs of the latches 10253 and 10254 is output to the communication data bus 24000. As described above, the communication processor 100
A 2-byte simultaneous guarantee is also realized for the memory access from 04.
【0068】図26にコントローラ10001からのメ
モリ10003へのアクセス時のタイムチャートを図2
7に通信プロセッサ10004からのメモリ10003
へのアクセス時のタイムチャートを挙げる。FIG. 26 is a time chart when the controller 10001 accesses the memory 10003 in FIG.
7, the memory 10003 from the communication processor 10004
Here is a time chart at the time of access to.
【0069】以上のようにしてプロセスデータ制御装置
10002は動作することにより、コントローラ100
01に対して2バイトデータの同時性を保証する。The process data control device 10002 operates as described above, and
01 guarantees the simultaneity of 2-byte data.
【0070】[0070]
【発明の効果】以上詳述したように、本発明では産業シ
ステムを制御するコントローラにおいて、コントローラ
内の制御メモリとI/Oとのデータ転送量を減らすた
め、制御メモリとI/O内のメモリのアクセス単位毎に
そのメモリ内のデータの内容が更新されたか否かを示す
内容更新ビットを付加し、内容が更新されたデータのみ
を転送することで転送量を減らすことを可能とした。ま
た、メモリへのアクセスがリードモディファイライトが
ほとんどであることに注目し、リードアクセスの次のラ
イトアクセスは同じアドレスに対して行われる確率が高
く、この方式は有効である。また、この内容が更新され
たかどうかの判定は、このリードモディファイライトア
クセス中にオーバーラップさせることにより判定のため
のオーバーヘッドなしに行うことが可能である。また、
コントローラとプロセスデータ制御装置との接続を専用
バスではなく汎用性のあるIOバスで接続すると共に、
コントローラからのデータバスのバス幅を1バイトにす
ることによりLSIのピン数を減らし、プロセス制御装
置全体のコストを下げることを実現した。通常アナログ
データは2バイトで扱われるため2バイトデータの同時
性を保証する方式を示した。また、コントローラとプロ
セスデータ制御装置はIOバスで接続されているため、
プロセスデータを保持しているメモリの全空間をIOバ
ス上にマッピングが困難である。そこで、プロセスデー
タ制御装置内にアドレスポインタを設けこのアドレスポ
インタを用いた間接アドレス方式を採用することで、I
Oバス空間の狭さを克服することが可能となった。As described above in detail, according to the present invention, in the controller for controlling the industrial system, the control memory and the memory in the I / O are used to reduce the amount of data transfer between the control memory and the I / O in the controller. By adding a content update bit indicating whether or not the content of the data in the memory has been updated for each access unit, it is possible to reduce the amount of transfer by transferring only the data with the updated content. Also, it is noted that the access to the memory is mostly read-modify-write, and there is a high probability that the next write access following the read access is performed to the same address, and this method is effective. Also, the determination as to whether or not the content has been updated can be made without any overhead for the determination by overlapping during the read-modify-write access. Also,
The connection between the controller and the process data control device is connected not with a dedicated bus but with a versatile IO bus.
By reducing the bus width of the data bus from the controller to 1 byte, the number of pins of the LSI is reduced and the cost of the entire process control device is reduced. Normally, analog data is handled in two bytes, so that a method for guaranteeing the simultaneity of two-byte data has been described. Also, since the controller and the process data control device are connected by an IO bus,
It is difficult to map the entire space of the memory holding the process data on the IO bus. Therefore, by providing an address pointer in the process data control device and employing an indirect addressing method using the address pointer,
It has become possible to overcome the narrowness of the O-bus space.
【図1】本発明であるデータ転送方式の適用例1の概要
図。FIG. 1 is a schematic diagram of an application example 1 of a data transfer method according to the present invention.
【図2】プログラマブルコントローラを用いた制御シス
テムの概要図。FIG. 2 is a schematic diagram of a control system using a programmable controller.
【図3】図1のメモリコントローラの詳細図。FIG. 3 is a detailed view of the memory controller in FIG. 1;
【図4】図3の内容更新判定装置の詳細図制御メモリ。FIG. 4 is a detailed view control memory of the content update determination device of FIG. 3;
【図5】図4の比較回路の真理値表。FIG. 5 is a truth table of the comparison circuit of FIG. 4;
【図6】制御メモリのアクセス単位を示す図。FIG. 6 is a diagram showing an access unit of a control memory.
【図7】図4のシーケンサの概要図。FIG. 7 is a schematic diagram of the sequencer of FIG. 4;
【図8】リードモディファイライト時のデータフォーマ
ットを示す図。FIG. 8 is a diagram showing a data format at the time of read modify write.
【図9】図1の転送装置の概要図。FIG. 9 is a schematic diagram of the transfer device of FIG. 1;
【図10】読み込み時のメモリコントローラの動作タイ
ミングチャート図。FIG. 10 is an operation timing chart of the memory controller at the time of reading.
【図11】書き込み時のメモリコントローラの動作タイ
ミングチャート図。FIG. 11 is an operation timing chart of the memory controller at the time of writing.
【図12】リードモディファイライト時のメモリコント
ローラの動作タイミングチャート図。FIG. 12 is an operation timing chart of the memory controller at the time of read modify write.
【図13】転送装置の制御メモリへの読み込み動作タイ
ミングチャート図。FIG. 13 is a timing chart of an operation of reading data from a transfer device into a control memory.
【図14】転送装置の制御メモリへの書き込み動作タイ
ミングチャート。FIG. 14 is a timing chart of a write operation to a control memory of the transfer device.
【図15】本発明のデータ転送方式の適用例2の概要
図。FIG. 15 is a schematic diagram of a second application example of the data transfer method of the present invention.
【図16】図15のCPU501のメモリマップ。FIG. 16 is a memory map of the CPU 501 of FIG.
【図17】図15のCPU501のデータ送信時のメモリコン
トローラ401の動作タイミングチャート。17 is an operation timing chart of the memory controller 401 when the CPU 501 in FIG. 15 transmits data.
【図18】図15のCPU501のデータ受信時のメモリコン
トローラ401の動作タイミングチャート。18 is an operation timing chart of the memory controller 401 when the CPU 501 in FIG. 15 receives data.
【図19】プロセス制御装置の概要図。FIG. 19 is a schematic diagram of a process control device.
【図20】図19のコントローラから見えるIOアドレ
スマッピング。FIG. 20 is an IO address mapping viewed from the controller of FIG. 19;
【図21】図19のコントローラからプロセス制御装置
を介してのメモリアクセス手順。FIG. 21 shows a memory access procedure from the controller of FIG. 19 via the process control device.
【図22】図19のプロセスデータ制御装置の概要図。FIG. 22 is a schematic diagram of the process data control device in FIG. 19;
【図23】図22の2バイト同時保証回路の概要図。FIG. 23 is a schematic diagram of the 2-byte simultaneous guarantee circuit of FIG. 22;
【図24】図22のアドレスポインタの概要図。FIG. 24 is a schematic diagram of the address pointer of FIG. 22;
【図25】図22のメモリシーケンサの概要図。FIG. 25 is a schematic diagram of the memory sequencer of FIG. 22;
【図26】図19のコントローラからのメモリアクセス
のタイムチャート。FIG. 26 is a time chart of memory access from the controller of FIG. 19;
【図27】図19の通信プロセッサからのメモリアクセ
スのタイムチャート。FIG. 27 is a time chart of memory access from the communication processor of FIG. 19;
101…計算装置、141,231,241,261,
451…アドレスバス、142,232,242,26
2,452…データバス、143,234,244,2
63,453…メモリ制御信号、201…制御メモリ、
233,243,251…内容更新ビットバス、301
…制御データ転送装置、401…メモリコントローラ、
501…CPU、1000…制御装置、1200…ネッ
トワーク、2000…被制御装置、2001…入出力装
置、2101…センサ、2102…アクチュエータ、3
000…装置、4001…シーケンサ、4002…内容
更新判定装置、4011,4012,4022…ラッ
チ、4201…セレクタ、4202…ビットマージ、4
301,4302,4303…3状態バッファ、500
1…比較回路、5002…オアゲート。101 ... calculator, 141, 231, 241, 261
451: Address bus, 142, 232, 242, 26
2,452: data bus, 143, 234, 244, 2
63,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 controlled device, 2001 input / output device, 2101 sensor, 2102 actuator, 3
000 device, 4001 sequencer, 4002 content update determination device, 4011, 4012, 4022 latch, 4201 selector 4202 bit merge, 4
301,4302,4303 ... 3-state buffer, 500
1: comparison circuit, 5002: OR gate.
───────────────────────────────────────────────────── フロントページの続き (72)発明者 岡本 正 茨城県日立市大みか町五丁目2番1号 株 式会社日立製作所大みか工場内 (72)発明者 宮崎 義弘 茨城県日立市大みか町五丁目2番1号 株 式会社日立製作所大みか工場内 ──────────────────────────────────────────────────続 き Continued on the front page (72) Inventor Tadashi Okamoto 5-2-1 Omika-cho, Hitachi City, Ibaraki Prefecture Inside the Omika Plant of Hitachi, Ltd. (72) Yoshihiro Miyazaki 5-chome, Omika-cho, Hitachi City, Ibaraki Prefecture No. 1 Inside the Omika Plant of Hitachi, Ltd.
Claims (6)
タと制御対象を制御するための制御データとを格納する
メモリと、 上記メモリに格納された状態データに基づいて制御対象
の制御データを求める計算機と、 上記メモリに格納された状態データを読み出すと共に、
上記読み出した状態データに上記計算機で求められたデ
ータを書き込み上記メモリに格納するメモリコントロー
ラと、 制御内容を変更するために上記メモリコントローラによ
り書き換えられたデータを上記メモリから読み出して送
信するデータ転送装置とを有することを特徴とする制御
装置。1. A memory for storing at least state data representing a state of a control target and control data for controlling the control target, and a computer for obtaining control data of the control target based on the state data stored in the memory. And reading the status data stored in the memory,
A memory controller that writes the data obtained by the computer into the read state data and stores the data in the memory; A control device comprising:
に上記計算機で求められた制御データを書き込む際に、
データの内容が変化したことを示すデータを上記メモリ
に格納することを特徴とする制御装置。2. The memory controller according to claim 1, wherein the memory controller writes control data obtained by the computer into the read state data.
A control device storing data indicating that the content of data has changed in the memory.
制御対象を制御するためのデータとを格納するメモリ
と、 上記メモリに格納された制御対象の状態を表すデータに
基づいて制御対象の制御データを求める計算機と、 上記メモリに格納されたデータから複数ビットからなる
1ワードのデータを読み出すとともに、制御対象のデー
タを上記計算機に転送し、上記読み出した1ワードのデ
ータに上記計算機で求められた制御のためのデータを書
き込み上記メモリに格納するメモリコントローラと、 上記メモリコントローラにより書き換えられたデータを
上記メモリから読み出して送信するデータ転送装置とを
有する制御装置と、 複数の制御対象と、 上記制御対象の状態を計測する複数のセンサと、 上記制御対象を制御するための複数のアクチュエータ
と、 上記複数のセンサにより計測された上記制御対象の状態
を表すデータを送出し、上記制御装置から送られた制御
のためのデータを上記複数のアクチュエータに転送する
入出力装置とを有する被制御装置とを有することを特徴
とする制御システム。3. A memory for storing at least data representing a state of the control target and data for controlling the control target, and control data of the control target based on the data representing the state of the control target stored in the memory. And a computer that reads one-word data consisting of a plurality of bits from the data stored in the memory, transfers the data to be controlled to the computer, and obtains the one-word data read by the computer. A control device having a memory controller that writes data for control and stores the data in the memory, a data transfer device that reads data rewritten by the memory controller from the memory and transmits the data, a plurality of control targets, and the control A plurality of sensors for measuring the state of the object and a plurality of sensors for controlling the control object. An input / output device for transmitting data representing the state of the control target measured by the plurality of sensors and transmitting data for control sent from the control device to the plurality of actuators; A control system, comprising: a control device.
納したメモリと、 上記メモリに格納されたプロセス情報に基づいて制御デ
ータを生成するコントローラと、 上記メモリ及びコントローラと接続され、複数のビット
データを保持するレジスタを有し、上記コントローラか
らのリードアクセスに対して、上記リードアクセスの対
象となる第1のデータ及び上記第1のデータに続く第2
のデータを上記メモリから読み出すと共に、上記第1の
データを上記コントローラに転送すると共に、上記第2
のデータを上記レジスタに保持するデータ制御装置とを
有することを特徴とするプロセス制御装置。4. A memory for storing at least process status and control data; a controller for generating control data based on process information stored in the memory; A first data to be read-accessed and a second data following the first data in response to a read access from the controller.
Is read from the memory, the first data is transferred to the controller, and the second data is transferred to the controller.
And a data control device for holding the data of the register in the register.
納したメモリと、 上記メモリに格納されたプロセス情報に基づいて制御デ
ータを生成するコントローラと、 上記メモリ及びコントローラと接続され、複数のビット
データを保持するレジスタを有し、上記コントローラか
らの第1のライトアクセスに対して、上記第1のライト
アクセスの対象となる第1のデータを上記レジスタに保
持し、上記コントローラからの第2のライトアクセスに
対して、上記第2のライトアクセスの対象となる第2の
データと上記レジスタに保持された第1のデータとを連
続して上記メモリに格納するデータ制御装置とを有する
ことを特徴とするプロセス制御装置。5. A memory for storing at least process status and control data, a controller for generating control data based on the process information stored in the memory, a memory connected to the memory and the controller, and holding a plurality of bit data. A first data to be subjected to the first write access in the register in response to a first write access from the controller, and a second write access from the controller. And a data controller for continuously storing the second data to be subjected to the second write access and the first data held in the register in the memory. Control device.
ントローラからのアクセスに対して上記メモリの対応す
るアドレスポインタで示されたアドレスにアクセスする
間接アクセスであることを特徴するプロセス制御装置。6. The data control device according to claim 4, wherein said data control device has an address pointer, and is an indirect access for accessing an address indicated by a corresponding address pointer of said memory in response to access from said controller. A process control device characterized in that:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7715697A JPH10269134A (en) | 1997-03-28 | 1997-03-28 | Data transfer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7715697A JPH10269134A (en) | 1997-03-28 | 1997-03-28 | Data transfer system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006238436A Division JP4363431B2 (en) | 2006-09-04 | 2006-09-04 | Data transfer method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10269134A true JPH10269134A (en) | 1998-10-09 |
Family
ID=13625940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7715697A Pending JPH10269134A (en) | 1997-03-28 | 1997-03-28 | Data transfer system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10269134A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008176790A (en) * | 2007-01-18 | 2008-07-31 | Xerox Corp | Time multiplexed bidirectional bus |
-
1997
- 1997-03-28 JP JP7715697A patent/JPH10269134A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008176790A (en) * | 2007-01-18 | 2008-07-31 | Xerox Corp | Time multiplexed bidirectional bus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3637054B2 (en) | Apparatus and method for maintaining cache / main memory consistency | |
US5564008A (en) | An enhanced processor buffered interface for multiprocessor systems | |
US4524416A (en) | Stack mechanism with the ability to dynamically alter the size of a stack in a data processing system | |
US5327570A (en) | Multiprocessor system having local write cache within each data processor node | |
US4378591A (en) | Memory management unit for developing multiple physical addresses in parallel for use in a cache memory | |
US5642489A (en) | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management | |
US5524268A (en) | Flexible processor-driven control of SCSI buses utilizing tags appended to data bytes to determine SCSI-protocol phases | |
US4424561A (en) | Odd/even bank structure for a cache memory | |
US5664117A (en) | Apparatus and method for prefetching data to load buffers in a bridge between two buses in a computer | |
US5224214A (en) | BuIffet for gathering write requests and resolving read conflicts by matching read and write requests | |
US5809280A (en) | Adaptive ahead FIFO with LRU replacement | |
US5347636A (en) | Data processor which efficiently accesses main memory and input/output devices | |
EP0515165B1 (en) | A Memory access device | |
US4445172A (en) | Data steering logic for the output of a cache memory having an odd/even bank structure | |
US20090248973A1 (en) | System and method for providing address decode and virtual function (VF) migration support in a peripheral component interconnect express (PCIE) multi-root input/output virtualization (IOV) environment | |
GB2075226A (en) | Cpu-to-memory interface unit | |
US8190794B2 (en) | Control function for memory based buffers | |
JPS61165154A (en) | Data processing system with pipelined cash memory | |
US4392201A (en) | Diagnostic subsystem for a cache memory | |
US4363095A (en) | Hit/miss logic for a cache memory | |
US5640517A (en) | Method and apparatus for masters to command a slave whether to transfer data in a sequential or non-sequential burst order | |
US4907149A (en) | Dynamic redirection of interrupts | |
US6738837B1 (en) | Digital system with split transaction memory access | |
US5455925A (en) | Data processing device for maintaining coherency of data stored in main memory, external cache memory and internal cache memory | |
WO2004088461A2 (en) | Local emulation of data ram utilizing write-through cache hardware within a cpu module |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Effective date: 20050221 Free format text: JAPANESE INTERMEDIATE CODE: A971007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050426 |
|
A521 | Written amendment |
Effective date: 20050627 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060417 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060704 |