JPH0612107A - シーケンス演算プロセッサおよびシーケンス演算処理装置 - Google Patents

シーケンス演算プロセッサおよびシーケンス演算処理装置

Info

Publication number
JPH0612107A
JPH0612107A JP4141677A JP14167792A JPH0612107A JP H0612107 A JPH0612107 A JP H0612107A JP 4141677 A JP4141677 A JP 4141677A JP 14167792 A JP14167792 A JP 14167792A JP H0612107 A JPH0612107 A JP H0612107A
Authority
JP
Japan
Prior art keywords
address
data
sequence
processor
port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4141677A
Other languages
English (en)
Inventor
Teruo Nakagawa
照夫 中川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP4141677A priority Critical patent/JPH0612107A/ja
Priority to US08/070,296 priority patent/US5978897A/en
Priority to DE4318317A priority patent/DE4318317A1/de
Publication of JPH0612107A publication Critical patent/JPH0612107A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【目的】 コイル出力演算等のメモリへの書き込み時間
を見かけ上小さくし、演算実行サイクルを高速化したシ
ーケンス演算プロセッサおよびシーケンス演算処理装置
を得る。 【構成】 マルチ・ポートRAM2のリードポートアド
レスとライトポートアドレスを比較するアドレス比較器
12からのアドレス一致信号13とデータレジスタ有効
信号15の状態により、演算に使用するデータをマルチ
・ポートRAM2から読み出したデータ、あるいはプロ
セッサ内部のデータレジスタ6のデータのどちらかから
選択するようにしたものである。 【効果】 マルチ・ポートRAM2の個数が増えても、
リードアドレスとライトアドレスが一致する場合におい
ても、演算に使用するデータのリードと演算結果のライ
トが同時に可能となり、高速に演算できる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、シーケンス演算を実行
するシーケンス演算用のプロセッサおよびシーケンス演
算処理装置に関し、特に演算データ格納にマルチ・ポー
トRAMを使用することにより、演算実行サイクルを高
速化したシーケンス演算プロセッサおよびシーケンス演
算処理装置に関するものである。
【0002】
【従来の技術】シーケンス演算処理装置はPLC(プロ
グラマブル・ロジック・コントローラ)とも呼ばれ、工
作機械、産業機械等に広く使用されている。シーケンス
演算処理装置においては図10のようなラダープログラ
ムと呼ばれるプログラム形式が一般に使用されている。
図において、X5、X12、M15はリレーの接点を表
し、M6、Y34、Y35はリレーのコイルを表してお
り、各々1ビットのデータである。
【0003】図10のようなラダープログラムの処理は
以下のような演算処理を行う。 命令 デバイス 処理時間 LD X5 (接点入力) t1 OUT M13(コイル出力) t1+t2 LDI X12(接点入力) t1 OUT M6 (コイル出力) t1+t2 LDI M15(接点入力) t1 OUT Y34(コイル出力) t1+t2 OUT M35(コイル出力) t1+t2
【0004】図8は特開平1−304570号公報記載
の従来のシーケンス演算処理装置を示すシステム構成図
である。図において、31はマイクロプロセッサ、32
はアドレスデコーダ、33はメモリ、34はシーケンス
演算プロセッサであるコ・プロセッサ、35はマイクロ
プロセッサ31とアドレスデコーダ32等を接続する第
1のバス、36はメモリ33とコ・プロセッサ34を接
続する第2のバス、37はアドレスデコーダ32から出
力されるコ・プロセッサ34に対するチップセレクト信
号である。
【0005】次に従来のシーケンス演算処理装置の動作
について説明する。図9は従来のシーケンス演算処理装
置のコ・プロセッサのタイミングチャートである。図に
おいて接点入力の演算時にはまず、マイクロプロセッサ
31からビット演算に対応するアドレスが第1のバス3
5に出力される。アドレスデコーダ32は第1のバス3
5のアドレスがシーケンス命令空間に対応している時、
コ・プロセッサ34にチップセレクト信号37を出力し
てビット位置および命令コードをラッチさせる。また、
メモリ33から読み出されたデータをコ・プロセッサ3
4は内部に読み込みビット演算を実行している。同様に
コイル出力の演算時にはメモリ33から読みだしたデー
タをコ・プロセッサ34に取り込み演算した後、続くサ
イクルで演算結果を再びメモリ33に書き込んでいる。
【0006】従って、メモリ33のデータの読みだし時
間をt1、データの書き込み時間をt2とすると図10
のラダープログラムを処理する時間は合計7t1+4t
2の時間を必要とする。このために処理を高速化するた
めには、データの読みだし時間t1、書き込み時間t2
をより小さくすることで対応していた。
【0007】データの読みだし時間t1を小さくできる
RAMとして、図11の特開平2−113492号公報
に示されたものがある。図において、210は外部アド
レスバス222と書き込みアドレスレジスタ212から
の内部アドレスバス224をマルチプレクスしてバス2
20を介して書き込みアドレスレジスタ212への信号
を発生させるマルチプレクサ、214は書き込みイネー
ブル信号230によってRAMアレー254に対するア
ドレスバス234を外部アドレスバス222と内部アド
レスバス224のどちらかを選択するマルチプレクサ、
216は外部アドレスバス222と内部アドレスバス2
24の状態を比較してアドレス一致信号238を出力す
る比較器、250はチップイネーブル信号226により
外部データバス262あるいは内部データバス264を
選択してバス260に出力するマルチプレクサ、252
は書き込みデータレジスタ、268はRAMアレー25
4からのデータバス、256は出力イネーブル信号27
2とアドレス一致信号238の状態からデータバス26
8と内部データバス264のどちらかを選択するととも
に外部データバス262に出力するマルチプレクサであ
る。
【0008】図11のRAMを図8のシーケンス演算処
理装置に使用した場合について説明すると、今回のシー
ケンス演算に指定されたデータのアドレスが最後に実行
されたコイル出力演算で指定されたデータのアドレスに
等しい時、RAM33内部の書き込みアドレスレジスタ
212の内容(すなわち内部アドレスバス224の内
容)と外部データバス222の内容が同じなため、比較
器216はアドレス一致信号238を出力することによ
りRAM33は書き込みデータレジスタ252の内容を
外部データバスに出力する。これにより通常読み出すよ
り短い時間t3でデータを出力することが可能となる。
【0009】この時コ・プロセッサ34にもRAM33
と同様の書き込みアドレスレジスタ212およびアドレ
ス比較器216、およびアドレス入力(従来例ではA1
5−0)が必要であり、アドレス比較器216でアドレ
スが一致したと判定された場合には一致しなかったと判
断される場合に比べて短い時間t3でデータを取り込み
シーケンス演算を開始することができ、コイル出力演算
の場合はt3+t2で実行可能となる。
【0010】
【発明が解決しようとする課題】従来のシーケンス演算
処理装置においては、上記のように構成されているの
で、コイル出力の演算時にはメモリ33からデータを読
みだし演算を実行後、演算結果をメモリ33に書き込む
ため、コイル出力演算の実行時間はt1+t2、あるい
はt3+t2より短くすることはできないという問題点
があった。
【0011】本発明の目的は上記のような問題点を解決
するためのもので、シーケンス演算実行用のデータメモ
リとしてマルチ・ポートRAMを使用することにより、
コイル出力演算等のメモリへの書き込み時間を見かけ上
小さくし、演算実行サイクルを高速化したシーケンス演
算プロセッサおよびシーケンス演算処理装置を得ること
である。
【0012】
【課題を解決するための手段】この発明に係わるシーケ
ンス演算プロセッサは、少なくとも2組のアドレスポー
トを持つマルチ・ポートRAMの、1つのポートに対す
るアドレスと他のポートに対するアドレスを比較しアド
レスが等しい時アドレス一致信号を出力するアドレス比
較器と、マルチ・ポートRAMに書き込んだデータを保
持するデータ・レジスタと、アドレス一致信号と命令デ
コーダからのデコード信号からシーケンス演算の動作に
応じてデータレジスタ有効信号とマルチ・ポートRAM
に対するリード信号とライト信号を出力する内部シーケ
ンス制御回路とを有し、アドレス比較器からの一致信号
とデータレジスタ有効信号の状態により、シーケンス演
算実行時には演算回路にマルチ・ポートRAMから読み
だしたデータあるいはデータ・レジスタのデータのいず
れかを選択し演算するようにしたものである。
【0013】この発明に係わるシーケンス演算処理装置
は、少なくとも前記シーケンス演算プロセッサを含む2
個以上のプロセッサを有し、他のプロセッサが前記シー
ケンス演算プロセッサをバイパスしてマルチ・ポートR
AMにデータを書き込む時に前記シーケンス演算プロセ
ッサ内部のアドレスレジスタにはデータの書き込みアド
レスを、データレジスタにはマルチ・ポートRAMに書
き込むデータを設定することによりマルチ・ポートRA
Mにデータを設定した後、前記シーケンス演算プロセッ
サがシーケンス演算処理を行い、他の処理を他のプロセ
ッサが行うように構成したものである。
【0014】
【作用】この発明のシーケンス演算プロセッサはシーケ
ンス演算結果を書き込むアドレスと次のシーケンス演算
に使用するデータの読みだしアドレスが異なる場合には
演算結果をマルチ・ポートRAMの1つのポートに書き
込むと同時に、次のシーケンス演算に使用するデータを
他のポートから読みだし演算回路に入力するようにし、
シーケンス演算結果を書き込むアドレスと次のシーケン
ス演算に使用するデータの読みだしアドレスが同じ場合
には、演算結果をマルチ・ポートRAMとデータレジス
タに書き込み、次のシーケンス演算に使用するデータは
データレジスタから読み出すようにしたので、コイル出
力演算等の実行においても高速に処理ができる。
【0015】この発明のシーケンス演算処理装置におい
ては、他のプロセッサが前記シーケンス演算プロセッサ
をバイパスしてマルチ・ポートRAMにデータを書き込
む時に前記シーケンス演算プロセッサ内部のアドレスレ
ジスタにはデータの書き込みアドレスを、データレジス
タにはマルチ・ポートRAMに書き込むデータを設定す
ることによりマルチ・ポートRAMにデータを設定した
後、前記のシーケンス演算プロセッサを使用して、この
プロセッサをシーケンス演算処理専用に使用し、他の処
理を他のプロセッサによって処理させることにより、シ
ーケンス演算処理装置全体の処理速度の向上を図るとと
もにマルチ・ポートRAMへのアクセスはシーケンス演
算プロセッサをバイパスすることによりマルチ・ポート
RAMへアクセスする時のバッファが必要ないので実装
密度を向上することができる。
【0016】
【実施例】以下、本発明の一実施例を図1について説明
する。1はシーケンス演算プロセッサであり、2a,2
bはシーケンス演算に使用するデータが格納されたマル
チ・ポートRAMである。3は演算回路、4は命令デコ
ーダ、5は演算結果を格納するアキュムレータ、6はマ
ルチ・ポートRAM2に書き込んだデータを保持するデ
ータレジスタ、7はマルチ・ポートRAM2に対する第
1のデータバス、8はマルチ・ポートRAM2にデータ
を書き込んだ時のアドレスを保持する第1のアドレスレ
ジスタ、9は第1のアドレスレジスタから出力されるマ
ルチ・ポートRAM2に対する第1のアドレスバス、1
0はシーケンス演算のために読み出すデータのアドレス
を保持する第2のアドレスレジスタ、11は第2のアド
レスレジスタから出力されるマルチ・ポートRAM2に
対する第2のアドレスバス、12は第1のアドレスバス
9と第2のアドレスバスを比較し同じアドレスの場合ア
ドレス一致信号13を出力するアドレス比較器、14は
アドレス一致信号13と命令デコーダ4からのデコード
信号とからシーケンス演算の動作に応じてデータレジス
タ有効信号15とマルチ・ポートRAM2に対するリー
ド信号16とライト信号17を出力する内部シーケンス
制御回路、18はアドレス一致信号13とデータレジス
タ有効信号15がともに有効な場合、マルチ・ポートR
AM2から読みだしたデータ19とデータレジスタ6の
内容の内、データレジスタ6の内容を選択するようにセ
レクタ20を制御するデータセレクタ信号、21はマル
チ・ポートRAM2a,2bに対するチップセレクト信
号22a,22b,22c,22dを出力するアドレス
デコーダである。尚、この発明に直接関係のない部分は
省略して示してある。
【0017】次に動作について、図10のラダープログ
ラムと図1と図2の命令コードをもとにマルチ・ポート
RAM2a,2bとのデータのやり取りを中心に説明す
る。
【0018】図2の命令コードにおいて、上位7ビット
はシーケンス演算命令であることを示すビットである。
次の5ビットはシーケンス演算の種類を示すビットであ
り、LD命令、OUT命令等の命令を指定する。次の4
ビットは処理すべきデータのビット位置を示す。下位の
16ビットはシーケンス演算に使用するデータの格納ア
ドレスに対応している。シーケンス演算実行時には上位
16ビットの情報は命令デコーダ4に格納され、下位1
6ビットは第2のアドレスレジスタ10に格納される。
【0019】図10のラダープログラムの実行について
説明する。まずLD X5命令に対応するシーケンス演
算命令が命令デコーダ4と第2のアドレスレジスタ10
に各々格納される。命令デコーダ4からのデコード信号
は内部シーケンス制御回路14に送られ、内部シーケン
ス制御回路14は決められたタイミングでマルチ・ポー
トRAM2にリード信号17を出力し、第2のアドレス
レジスタ10で指定されるアドレスをアドレスデコーダ
21とマルチ・ポートRAM2a,2bに出力する。ア
ドレスデコーダ21は入力されたアドレスによりマルチ
・ポートRAM2aに対するチップセレクト信号22a
を出力しマルチ・ポートRAM2aからデータを読み出
す。この時、第2のアドレスレジスタ10に格納された
アドレスが第1のアドレスレジスタ8に保持されている
アドレスと異なる場合にはアドレス比較器12からアド
レス一致信号13が出力されないので、内部シーケンス
制御回路14からのデータレジスタ有効信号15が無効
となり、データセレクタ信号18は演算回路3にマルチ
・ポートRAM2から読みだしたデータを選択するよう
になっており、演算回路3はマルチ・ポートRAM2か
らのデータを使用して演算を実行する。
【0020】次のシーケンス演算サイクルで第2のアド
レスレジスタ10の内容を第1のアドレスレジスタ8に
複写した後、OUT M13命令が命令デコーダ4と第
2のアドレスレジスタ10に格納される。この時はLD
X5命令と同様の動作の後、マルチ・ポートRAM2
bからのデータを選択し、シーケンス演算を実行する。
【0021】同様にして、次のシーケンス演算サイクル
でLDI X12命令が命令デコーダ4と第2のアドレ
スレジスタ10に格納される。この時、前回のOUT
M13命令で得られた演算結果を第1のアドレスレジス
タ8で指定されたマルチ・ポートRAM2bに対応した
アドレスに書き込むと同時にデータレジスタ6にも書き
込む。そして第2のアドレスレジスタ10で指定された
アドレスからデータを読み出す。この時、第1のアドレ
スレジスタ8の内容と第2のアドレスレジスタ10の内
容が異なり図3に示すようにアドレス比較器12からの
アドレス一致信号13は無効なのでデータセレクト信号
18も無効となり、演算回路3に入力されるデータはマ
ルチ・ポートRAM2aから読み出されたデータとな
る。
【0022】次にOUT M6命令の次にLDI M1
5命令を実行する場合について説明する。LDI M1
5命令の演算サイクルでは、前回のOUT M6命令で
得られた演算結果を第1のアドレスレジスタ8で指定さ
れたマルチ・ポートRAM2bに対応したアドレスに書
き込むと同時にデータレジスタ6にも書き込む。第1の
アドレスレジスタ8の内容は、第2のアドレスレジスタ
10の内容と等しいため、図4に示すようにアドレス比
較器12からのアドレス一致信号13が有効となり、O
UT M6命令実行に伴いデータレジスタ有効信号15
が有効となっているため、データセレクト信号18はデ
ータレジスタ6の内容を演算回路3に入力するように出
力されシーケンス演算が実行される。
【0023】次のOUT Y34,OUT Y35の命
令においても同様である。このようにしてコイル出力演
算実行時にもリード時間t1あるいはライト時間t2の
大きい方の時間で実行可能であり、高速に処理できる。
【0024】ここで、マルチ・ポートRAM2a,2b
に特開平2−113492号公報記載の機能を適用した
場合と本実施例との差異について述べる。アドレス比較
器12、データレジスタ6等がマルチ・ポートRAM2
a,2bだけにあり、シーケンス演算プロセッサ1にな
い場合についてOUT M6命令の次にLDI M15
命令を実行する場合には、シーケンス演算プロセッサ1
内部にアドレス比較器12、データレジスタ6等を設け
て実行する場合に比べて、シーケンス演算プロセッサ1
の出力バッファ、シーケンス演算プロセッサ1とマルチ
・ポートRAM2a,2bとの配線容量、マルチ・ポー
トRAM2a,2bの入力バッファ、マルチ・ポートR
AM2a,2bの出力バッファ、シーケンス演算プロセ
ッサ1の入力バッファによる各信号遅延が生じ、特にマ
ルチ・ポートRAMの個数が増加した場合には配線容量
による信号遅延が増加するため、より高速のマルチ・ポ
ートRAM2a,2bを使用する必要がある。また、シ
ーケンス演算処理装置全体で考えるとアドレス比較器1
2、データレジスタ6、書き込みアドレスレジスタおよ
び各マルチプレクサがマルチ・ポートRAM2の個数分
ありコストを上昇させる要因となる。
【0025】本実施例のようにシーケンス演算プロセッ
サ1内部にアドレス比較器12、データレジスタ6等を
設けた場合には、上記の信号遅延の影響がないので、よ
り低速のマルチ・ポートRAMを使用できる。また、図
1のマルチ・ポートRAM2a,2bがリードとライト
のアドレス競合が禁止されている場合には、図5に示す
ようにライト信号16を有効にし、リード信号17を無
効にすることによりアドレスが一致した場合は強制的に
リード動作を無効にしマルチ・ポートRAM2a,2b
からデータを読み出す代わりにデータレジスタ6の内容
を演算に使用するようにし、また、リードアドレスとラ
イトアドレスが同じ場合、先着側ポートに優先権を与え
て無条件にアクセスを受け付けるとともに、後着側のポ
ートが書き込みモードの場合には先着側ポートのアクセ
スが終わるまで受付けないポート・アービトレーション
機能を持っている場合には、リード信号17を無効とす
ることによりポート・アービトレーション機能が働かな
いようにすることにより色々なマルチ・ポートRAMを
使用することができる。
【0026】図6は上記に述べたシーケンス演算プロセ
ッサを使用した本発明の一実施例のシーケンス演算処理
装置のシステム構成図である。図において、41は汎用
のプロセッサであり、シーケンス演算処理装置全体の制
御およびシーケンス演算以外の論理演算および数値演
算、シーケンス演算プロセッサ1が対応できない機能命
令処理などを実行する。42はシーケンス演算処理全体
を制御するプログラムが記憶されている第1のROM、
43はシーケンス演算処理装置全体を制御するためのデ
ータやパラメータ等が記憶されている第1のRAM、4
4は表示制御回路であり、データ等を表示するための表
示装置45およびプログラム、データ等を入力するため
の入力装置46を制御するためのものである。47は入
出力インターフェースであり、工作機械等を制御するた
めの信号や他のシステムとの通信等に使用される。
【0027】48はバスアービターであり、汎用プロセ
ッサ41がシーケンス演算プロセッサ1のバスにアクセ
スする場合の制御に使用される。汎用プロセッサ41が
シーケンス演算プロセッサ1のバスにアクセスする場合
に、汎用プロセッサ41からバスアービター48に対し
てアクセス要求を送るとバスアービター48はシーケン
ス演算プロセッサ1に対してバスリクエスト信号49を
出力する。シーケンス演算プロセッサ1はバスリクエス
ト信号49を受けると現在実行中のサイクルが終わりバ
スを解放できる状態になるとバスアービター48にバス
・アクノリッジ信号50を出力し汎用プロセッサ41は
シーケンス演算プロセッサ1のバスにアクセスできるよ
うになる。また、シーケンス演算プロセッサ1が処理で
きない機能命令や何等かのエラーが発生した場合には、
シーケンス演算プロセッサ1は汎用プロセッサ41に対
して割込信号51を発生し、汎用プロセッサ41が処理
を実行することができるように構成されているので、シ
ーケンス演算プロセッサ1はもっぱらシーケンス演算を
高速に処理することができる。
【0028】52はシーケンス演算プロセッサ1が処理
するシーケンス演算プログラム(図10のラダープログ
ラム)が格納されている第2のROMである。これはま
た、バッテリバックアップされたRAMやEEPROM
等の不揮発性メモリでも良い。53は第2のRAMであ
りシーケンス演算プロセッサ1がシーケンス演算に使用
するデータの一部やサブルーチン処理などでスタックさ
れる情報が格納されている。
【0029】シーケンス演算プロセッサ1は起動が掛か
ると第2のROM52から命令を読みだし、解読した命
令がマルチ・ポートRAM2a,2bのデータを使用す
る命令である場合にはただちにシーケンス演算を実行す
る、読み込んだ命令が機能命令等の場合は割込信号51
を発生して汎用プロセッサ41に割り込みを掛ける。汎
用プロセッサ41は割り込みを受け付けるとバスアービ
ター48に対してバスの使用を要求する。バスアービタ
ー48はシーケンス演算プロセッサ1に対してバスリク
エスト信号49を出力する。シーケンス演算プロセッサ
1はバスリクエスト信号49を受けると現在実行中のサ
イクルが終わりバスを解放できる状態になるとバスアー
ビター48にバス・アクノリッジ信号50を出力し汎用
プロセッサ41はシーケンス演算プロセッサ1のバスに
アクセスできるようになり、シーケンス演算プロセッサ
1や第2のROM52、マルチ・ポートRAM2a,2
b、第2のRAM53から命令、データを読みだし機能
命令、割り込み処理等を実行する。汎用プロセッサ41
での処理が終わるとシーケンス演算プロセッサ1に起動
を掛けることにより、再びシーケンス演算処理を続行す
ることができる。
【0030】シーケンス演算処理装置の動作としては図
7のように実行される。まず、汎用プロセッサ41が入
出力インタフェース47から入力信号を読み込み、その
データの内、特に高速処理が要求されるものについては
マルチ・ポートRAM2a,2bに書き込み、あまり高
速性が要求されないデータは第2のRAM53に書き込
む。汎用プロセッサ41がマルチ・ポートRAM2a,
2bにデータを書き込む時、シーケンス演算プロセッサ
1内部の第1のアドレスレジスタ8にアドレスをセット
するとともにデータレジスタ6にマルチ・ポートRAM
2a,2bに書き込むデータをセットし内部シーケンス
制御回路14から出力されるデータレジスタ有効信号1
5を有効にするような構成となっている。
【0031】次にシーケンス演算プロセッサ1が第2の
ROM52から読みだした命令に従いマルチ・ポートR
AM2a,2bあるいは第2のRAM53に書き込まれ
たデータをもとにシーケンス演算処理を実行し、演算結
果をマルチ・ポートRAM2a,2bあるいは第2のR
AM52に書き込む。全ての命令が終了すると、汎用プ
ロセッサ41がマルチ・ポートRAM2a,2bと第2
のRAM53から演算結果を読みだし、これを入出力イ
ンタフェース47から出力する。以上のことを繰り返す
ことによりシーケンス演算処理を実行していく。
【0032】以上述べたようにシーケンス演算プロセッ
サ1はマルチ・ポートRAM2a,2bに対してデータ
の入力と演算結果の出力を同時に行い、特に入力アドレ
スと出力アドレスが同じ場合にはマルチ・ポートRAM
2a,2bに対し結果の書き込みを行い、データの読み
だしは内部のデータレジスタのデータを使用して演算を
行うので高速に処理ができる。また、シーケンス演算を
シーケンス演算プロセッサ1が実行し他の処理を他のプ
ロセッサが行うことによりシーケンス演算処理装置全体
の処理を高速に実行できる。
【0033】
【発明の効果】以上のように、この発明におけるシーケ
ンス演算プロセッサはシーケンス演算結果を書き込むア
ドレスと次のシーケンス演算に使用するデータの読みだ
しアドレスが異なる場合には演算結果をマルチ・ポート
RAMの1つのポートに書き込むと同時に、次のシーケ
ンス演算に使用するデータを他のポートから読みだし演
算結果に入力するようにし、シーケンス演算結果を書き
込むアドレスと次のシーケンス演算に使用するデータの
読みだしアドレスが同じ場合には、演算結果をマルチ・
ポートRAMとデータレジスタに書き込み、次のシーケ
ンス演算に使用するデータはデータレジスタから読み出
すようにし演算を実行するようにしたので、コイル出力
演算等の実行においても高速に処理ができる効果があ
る。また、アドレスの比較はシーケンス演算プロセッサ
内部で実行するので外部に接続されるRAM等が増加し
ても信号の伝搬時間の増加の影響を低減することがで
き、より低速のマルチ・ポートRAMを使用することが
できる。
【0034】また、アドレス比較器および書き込みアド
レスレジスタ、データレジスタはシーケンス演算プロセ
ッサ内に1組あればよいためシステム全体のコストを低
減できる。また、リード・ポートとライト・ポートのア
ドレス競合が禁止されたマルチ・ポートRAMやポート
・アービトレーション機能を持ったマルチ・ポートRA
Mを使用することができ、システム構成上の柔軟性を持
つことができる。
【0035】また、この発明におけるシーケンス演算処
理装置においては、前記のシーケンス演算プロセッサを
使用して、このプロセッサをシーケンス演算処理専用に
使用し、他の処理を他のプロセッサによって処理させる
ことにより、シーケンス演算処理装置全体の処理速度の
向上を図ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例によるシーケンス演算プロセ
ッサを示す図である。
【図2】本発明のシーケンス演算プロセッサの命令コー
ドを示す図である。
【図3】本発明のシーケンス演算プロセッサにおいてリ
ードアドレスとライトアドレスが異なる場合の動作を説
明するための図である。
【図4】本発明のシーケンス演算プロセッサにおいてリ
ードアドレスとライトアドレスが同じ場合の動作を説明
するための図である。
【図5】本発明の他の実施例のシーケンス演算プロセッ
サにおいてリードアドレスとライトアドレスが同じ場合
の動作を説明するための図である。
【図6】本発明の一実施例によるシーケンス演算処理装
置を示す図である。
【図7】本発明シーケンス演算処理装置の流れを示す図
である。
【図8】従来のシーケンス演算処理装置を示す図であ
る。
【図9】従来のシーケンス演算処理装置の動作を説明す
る図である。
【図10】ラダープログラムを示す図である。
【図11】従来のRAMの構成を示す図である。
【符号の説明】
1 シーケンス演算プロセッサ 2a,2b マルチ・ポートRAM 3 演算回路 4 命令デコーダ 5 アキュムレータ 6 データレジスタ 7 第1のデータバス 8 第1のアドレスレジスタ 9 第1のアドレスバス 10 第2のアドレスレジスタ 11 第2のアドレスバス 12 アドレス比較器 13 アドレス一致信号 14 内部シーケンス制御回路 15 データレジスタ有効信号 16 ライト信号 17 リード信号 18 データセレクタ信号 19 第2のデータバス 20 セレクタ 21 アドレスデコーダ 21a,21b,21c,21d チップセレクト 31 マイクロプロセッサ 32 アドレスデコーダ 33 メモリ 34 コ・プロセッサ 35 マイクロプロセッサ1とアドレスデコーダ2等を
接続する第1のバス 36 メモリ33とコ・プロセッサ34を接続する第2
のバス 37 コ・プロセッサ34に対するチップセレクト信号 41 汎用のプロセッサ 42 第1のROM 43 第1のRAM 44 表示制御回路 45 表示装置 46 入力装置 47 入出力インタフェース 48 バスアービター 49 バスリクエスト信号 50 バス・アクノリッジ信号 51 割込信号 52 第2のROM 53 第2のRAM 210,214,250,256 マルチプレクサ 212 書き込みアドレスレジスタ 216 比較器 220,260 バス 222 外部アドレスバス 224 内部アドレスバス 226 チップイネーブル信号 230 書き込みイネーブル信号 234 アドレスバス 238 アドレス一致信号 254 RAMアレー 262 外部データバス 264 内部データバス 268 データバス 272 出力イネーブル信号

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 シーケンス演算を実行するシーケンス演
    算プロセッサにおいて、少なくとも2組のアドレスポー
    トを持つマルチ・ポートRAMの、1つのポートに対す
    るアドレスを保持する第1のアドレスレジスタと他のポ
    ートに対するアドレスを保持する第2のアドレスレジス
    タと、第1のアドレスレジスタと第2のアドレスレジス
    タの内容を比較しアドレスが等しい時アドレス一致信号
    を出力するアドレス比較器と、マルチ・ポートRAMに
    書き込んだデータを保持するデータ・レジスタと、アド
    レス一致信号と命令デコーダからのデコード信号からシ
    ーケンス演算の動作に応じてデータレジスタ有効信号と
    マルチ・ポートRAMに対するリード信号とライト信号
    とを制御する内部シーケンス制御回路とを有し、アドレ
    ス比較器からの一致信号とデータレジスタ有効信号の状
    態により、シーケンス演算実行時には演算回路にマルチ
    ・ポートRAMから読み出したデータあるいはデータ・
    レジスタのデータのいずれかを選択して入力したことを
    特徴とするシーケンス演算プロセッサ。
  2. 【請求項2】 2個以上のプロセッサを持ち処理を実行
    するシーケンス演算処理装置において、少なくとも請求
    項1記載のシーケンス演算プロセッサを含み、他のプロ
    セッサがシーケンス演算プロセッサをバイパスしてマル
    チ・ポートRAMにデータを書き込む時にシーケンス演
    算プロセッサ内部のアドレスレジスタにはデータの書き
    込みアドレスを、データレジスタにはマルチ・ポートR
    AMに書き込むデータを設定することによりマルチ・ポ
    ートRAMにデータを設定した後、シーケンス演算プロ
    セッサがシーケンス演算処理を実行し、他の処理を他の
    プロセッサが行うように構成したことを特徴とするシー
    ケンス演算処理装置。
JP4141677A 1992-06-02 1992-06-02 シーケンス演算プロセッサおよびシーケンス演算処理装置 Pending JPH0612107A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP4141677A JPH0612107A (ja) 1992-06-02 1992-06-02 シーケンス演算プロセッサおよびシーケンス演算処理装置
US08/070,296 US5978897A (en) 1992-06-02 1993-06-02 Sequence operation processor employing multi-port RAMs for simultaneously reading and writing
DE4318317A DE4318317A1 (de) 1992-06-02 1993-06-02 Datenverarbeitungsvorrichtung und -verfahren zum Ausführen von Operationen in Folge

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4141677A JPH0612107A (ja) 1992-06-02 1992-06-02 シーケンス演算プロセッサおよびシーケンス演算処理装置

Publications (1)

Publication Number Publication Date
JPH0612107A true JPH0612107A (ja) 1994-01-21

Family

ID=15297638

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4141677A Pending JPH0612107A (ja) 1992-06-02 1992-06-02 シーケンス演算プロセッサおよびシーケンス演算処理装置

Country Status (3)

Country Link
US (1) US5978897A (ja)
JP (1) JPH0612107A (ja)
DE (1) DE4318317A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2717921B1 (fr) * 1994-03-24 1996-06-21 Texas Instruments France Dispositif de gestion de conflit d'accès entre un CPU et des mémoires.
US7206904B2 (en) * 2002-03-20 2007-04-17 Hewlett-Packard Development Company, L.P. Method and system for buffering multiple requests from multiple devices to a memory
KR100518567B1 (ko) * 2003-04-15 2005-10-04 삼성전자주식회사 독출 동작과 기입 동작이 동시에 수행되는 메모리 셀어레이 구조를 가지는 집적 회로
US8397034B1 (en) * 2003-06-27 2013-03-12 Cypress Semiconductor Corporation Multi-port arbitration system and method
US7813213B1 (en) 2005-05-04 2010-10-12 Cypress Semiconductor Corporation Pulsed arbitration system
US8447957B1 (en) * 2006-11-14 2013-05-21 Xilinx, Inc. Coprocessor interface architecture and methods of operating the same
DE102014206607B3 (de) 2014-04-04 2015-10-01 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungsgeräts, Prozessor zur Verwendung im Rahmen des Verfahrens und nach dem Verfahren arbeitendes Automatisierungsgerät und System

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6015746A (ja) * 1983-07-08 1985-01-26 Hitachi Ltd デ−タ処理装置
GB8401807D0 (en) * 1984-01-24 1984-02-29 Int Computers Ltd Pipelined data processing apparatus
US5001665A (en) * 1986-06-26 1991-03-19 Motorola, Inc. Addressing technique for providing read, modify and write operations in a single data processing cycle with serpentine configured RAMs
JPH01178193A (ja) * 1988-01-07 1989-07-14 Toshiba Corp 半導体記憶装置
US5123108A (en) * 1989-09-11 1992-06-16 Wang Laboratories, Inc. Improved cpu pipeline having register file bypass and working register bypass on update/access address compare
US5062081A (en) * 1989-10-10 1991-10-29 Advanced Micro Devices, Inc. Multiport memory collision/detection circuitry
US5111431A (en) * 1990-11-02 1992-05-05 Analog Devices, Inc. Register forwarding multi-port register file

Also Published As

Publication number Publication date
US5978897A (en) 1999-11-02
DE4318317A1 (de) 1993-12-16

Similar Documents

Publication Publication Date Title
US5418917A (en) Method and apparatus for controlling conditional branch instructions for a pipeline type data processing apparatus
JPH0869377A (ja) コプロセッサを使用するための電子回路及び方法
JPH0612107A (ja) シーケンス演算プロセッサおよびシーケンス演算処理装置
US4967339A (en) Operation control apparatus for a processor having a plurality of arithmetic devices
US4807178A (en) Programmable sequence controller having indirect and direct input/output apparatus
US7076641B2 (en) Programmable controller
EP0573071A2 (en) A microprocessor
JP3954159B2 (ja) 同期式ramのアクセス制御回路、データ処理プロセッサ及びその制御方法
JP3139310B2 (ja) ディジタル信号処理装置
JP2000029508A (ja) プログラマブルコントローラ
JPH0241770B2 (ja)
JPH08305564A (ja) マイクロコンピュータ
JPH02183332A (ja) プログラムド制御方式
JPH08297583A (ja) 割り込み処理装置およびその方法
JPH1049366A (ja) マイクロコンピュータ
JPS6156820B2 (ja)
JPH03214275A (ja) 半導体集積回路
JPH0192862A (ja) データ処理装置
JPH0683986A (ja) シングルチップ・マイクロコンピュータ
JPH09160786A (ja) マイクロプロセッサ
JPH04263322A (ja) マイクロコンピュータ
JPH0319570B2 (ja)
JPH08115214A (ja) ディジタル信号処理装置
JPH05100842A (ja) 命令処理装置
JPS63262744A (ja) 直接メモリ制御方式