JP3185649B2 - プログラマブルコントローラ - Google Patents

プログラマブルコントローラ

Info

Publication number
JP3185649B2
JP3185649B2 JP03848596A JP3848596A JP3185649B2 JP 3185649 B2 JP3185649 B2 JP 3185649B2 JP 03848596 A JP03848596 A JP 03848596A JP 3848596 A JP3848596 A JP 3848596A JP 3185649 B2 JP3185649 B2 JP 3185649B2
Authority
JP
Japan
Prior art keywords
instruction
memory
bit processing
address
programmable controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP03848596A
Other languages
English (en)
Other versions
JPH09231074A (ja
Inventor
達男 増田
明 薮田
宏史 坂井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Electric Works Co Ltd
Original Assignee
Matsushita Electric Works Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Works Ltd filed Critical Matsushita Electric Works Ltd
Priority to JP03848596A priority Critical patent/JP3185649B2/ja
Priority to US08/721,181 priority patent/US5933651A/en
Priority to CNB961211032A priority patent/CN1137421C/zh
Priority to DE69621091T priority patent/DE69621091T2/de
Priority to KR1019960042852A priority patent/KR100260012B1/ko
Priority to EP96115647A priority patent/EP0766155B1/en
Publication of JPH09231074A publication Critical patent/JPH09231074A/ja
Application granted granted Critical
Publication of JP3185649B2 publication Critical patent/JP3185649B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Programmable Controllers (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はビット処理を主とす
る基本命令と、複数ビットの応用命令処理を行うプログ
ラマブルコントローラに関し、特に基本命令と応用命令
を両方処理することのできる命令処理部を有するプログ
ラマブルコントローラに関するものである。
【0002】
【従来の技術】プログラマブルコントローラは産業用装
置、機械、FA機器の制御に広く用いられており、対象
となる装置の複雑化、高速化に応じて、より多数の入出
力信号を高速に処理することが求められている。このた
め、ビット処理を主とする基本命令と、複数ビットの応
用命令処理を行うことのできる専用ハードウェア(プロ
セッサ)で高速化を実現し、通信処理・周辺処理などを
行う汎用マイクロプロセッサと組み合わせてプログラマ
ブルコントーラを構成している。この専用ハードウェア
(プロセッサ)の構造として、従来は、以下のような3
段パイプライン構造で命令を実行していた。
【0003】第1ステージ:命令フェッチ 第2ステージ:命令デコード、レジスタフェッチ、算術
論理演算、データアドレス計算、分岐先計算、 第3ステージ:メモリアクセス(リード/ライト)、分
岐、ビット演算、レジスタ書き込み
【0004】
【発明が解決しようとする課題】上記の3段パイプライ
ン構造では、各ステージのうち一番遅い実行ステージの
処理速度で、全体の命令実行速度が決まってしまう。こ
のようなパイプライン処理の高速化のためには、各ステ
ージの処理速度を均等にする必要があるが、この例では
命令メモリとデータメモリに同じアクセス時間のメモリ
を使用すると、第1ステージに対して第3ステージの方
がビット演算を行う分、処理時間が必要になるというア
ンバランスがある。実行速度向上のためには、パイプラ
インステージをさらに分割して多段にすれば良い。そこ
で、本発明者らは、専用ハードウェア(プロセッサ)の
命令実行サイクルを以下のような5段に要素分割した、
5段パイプライン構造を持ったプログラマブルコントロ
ーラを開発した。
【0005】第1ステージ:命令フェッチ 第2ステージ:命令デコード、レジスタフェッチ 第3ステージ:算術論理演算、データアドレス計算、分
岐先計算 第4ステージ:メモリアクセス(リード/ライト) 第5ステージ:分岐、ビット演算、レジスタ書き込み この5段パイプライン構造を採用すると、従来の3段パ
イプライン構造のプログラマブルコントローラに比べて
パイプラインステージ間のアンバランスが改善され、パ
イプラインステージ1段あたりの所要時間も短縮される
ため、全体の命令実行速度を向上させることができる。
この5段パイプライン構造のプログラマブルコントロー
ラの概略構成図を、図3に示す。
【0006】図で、IF(Instruction F
etch)で示される第1ステージは、命令メモリIM
から命令レジスタIRヘ次に実行する命令を読み込む命
令フェッチ処理を行うステージで、命令を格納する命令
メモリIMと、プログラムカウンタ制御のためのアドレ
ス計算回路ADDRCALCからの信号を受けて、次に
実行する命令が格納された命令メモリIMのアドレスを
計数するプログラムカウンタPCとで構成されている。
プログラムカウンタPCのアドレス指定に従って命令メ
モリIMから読み出された命令が格納される命令レジス
タIRは、第1ステージIFの実行結果を保存して、次
の第2ステージであるIDにその結果を伝える、パイプ
ラインレジスタIF/IDを兼ねている。
【0007】ID(Instruction Deco
de)で示される第2ステージは、命令デコーダDCに
よる命令デコード、及び、レジスタファイルRFを構成
する複数の汎用レジスタのいずれかより値を取り出すレ
ジスタフェッチ処理を行うステージで、命令のオペレー
ションコード部を解読するデコーダDCと、複数の汎用
レジスタで構成された汎用レジスタファイルRFとで構
成されている。汎用レジスタファイルRFには、2つの
出力が設けられており、一方の出力はパイプラインレジ
スタID/EXのS1に接続され、他方の出力はパイプ
ラインレジスタID/EXのS2に接続されている。ま
た、命令デコーダDCで解読された値もパイプラインレ
ジスタID/EXの所定の箇所に格納される。
【0008】次に、EX(EXecute)で示される
第3ステージは、算術論理演算ユニットALUによっ
て、算術論理演算またはデータアドレス計算または分岐
先の実効アドレスを計算する分岐先計算を行うステージ
で、算術論理演算ユニットALUの一方の入力は、パイ
プラインレジスタID/EXのS1の出力に接続され、
他方の入力は、パイプラインレジスタID/EXのS2
の出力に接続されている。また、算術論理演算ユニット
ALUは、パイプラインレジスタID/EXの所定の箇
所に格納された、デコードされた命令の値によって制御
され、算術論理演算ユニットALUの出力は、パイプラ
インレジスタEX/MEMのDの箇所に格納される。
【0009】次に、MEM(MEMory acces
s)で示される第4ステージは、データメモリDMヘの
メモリアクセス処理を行うステージで、パイプラインレ
ジスタEX/MEMのDの箇所に格納されていた値は、
データメモリDMの所定アドレスのメモリに格納される
と共に、パイプラインレジスタMEM/WBの所定箇所
に出力される。または、データメモリDMの所定アドレ
スに格納されていた値がパイプラインレジスタMBM/
WBの所定箇所に格納される。
【0010】最後に、WB(Write Back)で
示される第5ステージは、ビット演算または汎用レジス
タへの書き込み処理または分岐処理を行うステージで、
汎用レジスタへの書き込み処理の場合は、パイプライン
レジスタMEM/WBの所定箇所に格納されていた値
が、レジスタファイルRFの所定の汎用レジスタに格納
される。但し、図3では本発明に関する部分のみ図示し
ており、他の構成は図示を省略している。
【0011】ところで、プログラマブルコントローラに
必要とされる機能の中には、データメモリ1ワード中の
ある1ビットの値を参照、更新したり、命令実行中に複
数ワードのデータメモリの参照、更新を行うビット処理
命令がある。このビット処理命令を実行するには複数の
メモリアクセスサイクルが必要となるため、上記の5段
パイプライン構造をそのまま用いた場合には、これらの
ビット処理命令を実行させることができない。
【0012】また、プログラマブルコントローラには入
力の立ち上がりや立ち下がりを検出する微分命令と呼ば
れるものがあり、この微分命令用に入力信号の前回スキ
ャン時の値を記録するためのメモリが必要となり、従来
例の3段パイプライン構造で命令を実行するプログラマ
ブルコントローラでは命令メモリと同じアドレスを有す
る1ビット幅のメモリを設けている(特開平5−189
014号、同189015号参照)。例えば、入力X0
がオフからオンに立ち上がると、出力Y1がオンになる
というような処理を行う場合、今回の入力X0がオンで
あるかオフであるかを調べるだけでは入力X0の立ち上
がりを検出することができない。前回の入力X0を記憶
しておいて、前回の入力X0がオフであり、且つ今回の
入力X0がオンであるときに、入力X0が立ち上がった
と判定される。そして、一旦、入力X0がオンになる
と、それが記憶されることにより、次のスキャン時に入
力X0がオンであっても、入力X0が立ち上がったとは
判定されない。このように、入力の立ち上がりや立ち下
がりを検出する微分命令では、入力信号の前回スキャン
時の値を記録するためのメモリが必要となり、そのため
に、命令メモリと同じアドレスを有する1ビット幅のメ
モリを設けているものである。この方式はアドレス管理
が容易になるという利点があり、今回開発した高速動作
が可能な5段パイプライン構造を持つプログラマブルコ
ントローラでもこれを採用し、命令メモリのアドレスバ
スと微分命令用のデータメモリのアドレスバスを共有さ
せて信号線の数の低減を図っているが、この構成にする
と微分命令のメモリ書き戻し時にパイプライン動作が乱
れて、必要な命令の実行が行われなくなるという問題が
発生する。
【0013】本発明はこのような問題に鑑みてなされた
ものであり、ビット処理命令専用のメモリアドレス計算
ブロックとパイプラインレジスタ以外に、ビット処理命
令演算ブロックからメモリアクセスに必要なデータを受
け渡しするためのデータバスと、ビット処理命令実行中
に必要に応じてビット処理命令の後続命令の実行を停止
させる制御回路を設け、複数のメモリアクセスサイクル
が必要なビット処理命令と、それ以外の命令の両方を高
速に実行させることが可能な5段パイプライン構造を持
つプログラマブルコントローラを提供するものである。
また、微分命令のメモリ書き戻し時に必要に応じて命令
の実行を停止させる制御回路を設け、すべての命令を矛
盾なく実行することが可能な5段パイプライン構造を持
つプログラマブルコントローラを提供するものである。
【0014】
【課題を解決するための手段】本発明のプログラマブル
コントローラにあっては、上記の課題を解決するため
に、図1に示すように、命令メモリIMから命令を取り
出す命令フェッチ処理を行う第1ステージIFと、命令
デコード処理及び汎用レジスタから値を取り出すレジス
タフェッチ処理を行う第2ステージIDと、算術論理演
算処理またはデータアドレス演算処理または分岐先の実
効アドレス計算処理または分岐条件の判定処理を行う第
3ステージEXと、データメモリDMへのメモリアクセ
ス処理または分岐処理を行う第4ステージMEMと、ビ
ット演算処理または前記汎用レジスタへの書き込み処理
または分岐処理を行う第5ステージWBの、5つのステ
ージをパイプライン実行する5段パイプライン構造のプ
ログラマブルコントローラであって、図4に示すよう
に、ロード命令やストア命令などのメモリアクセス命令
とは別に、ビット処理命令を実行するために、ビット処
理命令専用のメモリアドレス計算ブロックBPUADR
を有することを特徴とするものである(請求項1)。こ
のビット処理命令専用のメモリアドレス計算ブロックB
PUADRに、複数のパイプラインサイクルにわたって
データメモリDMのアドレスを計算させ、メモリアクセ
ス要求を発行させることにより、連続する複数のパイプ
ラインステージでメモリアクセスを行うことを可能とす
る(請求項2)。また、ビット処理命令を実行する専用
の回路ブロックBPUを備え、この回路ブロックからメ
モリアドレスとメモリ読み出し要求を発行し、これによ
りデータメモリDMの読み出しを実行する、あるいは、
メモリアドレスとメモリの書き込みデータとメモリ書き
込み要求を発行し、これによりデータメモリDMへの書
き込みを実行する(請求項3、4)。
【0015】次に、図6に示すように、命令デコードの
結果を受けて、パイプラインレジスタ上に該当命令がビ
ット処理命令であることを示す制御信号を設け、これに
より、ビット処理命令の後続命令の実行を停止させる必
要があるときには、プログラムカウンタPCのインクリ
メントを停止させる(請求項5)。あるいは、ビット処
理命令を実行する専用の回路ブロックBPUから制御信
号を発行し、これにより、ビット処理命令の後続命令の
実行を停止させる必要があるときには、プログラムカウ
ンタPCのインクリメントを停止させる(請求項7)。
プログラムカウンタPCのインクリメントを停止させる
だけでは命令の実行を停止させることができない場合で
も、命令をデコードした結果をさらに書き換えて、ビッ
ト処理命令の後続命令の実行を停止させる(請求項6、
8)。
【0016】次に、図12に示すように、入力が変化し
たときにのみ実行される微分命令専用のデータメモリB
Mを設け、そのメモリのアドレスバスを命令メモリIM
のアドレスバスと共有させる(請求項9)。この場合、
命令フェッチ時の命令メモリIMのアドレスをパイプラ
インレジスタに取り込み、パイプラインレジスタ上を順
次転送して、ビット処理命令を実行する専用の回路ブロ
ックに入力し、微分命令専用のデータメモリBMに書き
戻すときに、前記転送された命令メモリIMのアドレス
をメモリ書き込み用のアドレスとして用いる(請求項1
0)。また、微分命令専用のデータメモリに書き戻すと
きにプログラムカウンタのインクリメントを停止させ、
命令をフェッチできなくなることを防止する(請求項1
1)。さらに、微分命令専用のデータメモリに書き戻す
ときに命令メモリから取り込まれる命令を、後続動作に
影響しない命令に書き換える(請求項12)。また、請
求項5乃至8、11及び12の処理が同時に発生すると
き、必要に応じて命令の実行を停止させ、命令をフェッ
チできなくなることを防止する(請求項13)。
【0017】
【発明の実施の形態】図1は本発明の実施の形態を示す
5段パイプライン構造のプログラマブルコントローラの
全体構成を示すブロック図である。図3の従来例の構造
と比較すれば明らかなように、本発明では、ビット処理
命令を処理するBPU(Bit Processing
Unit)のブロックと、ビット処理演算により更新
されるレジスタ:BITACC(Bit Accumu
lator)を追加した構造となっている。
【0018】本発明で採用した5段パイプライン構造を
持つプログラマブルコントローラでは、例えば、図2
(a)に示すように、IF:命令フェッチ、ID:命令
デコード、レジスタフェッチ、EX:算術論理演算、デ
ータアドレス計算、分岐先計算、MEM:メモリアクセ
ス(リード/ライト)、WB:分岐、レジスタ書き込み
のように、1つの命令を5つのパイプラインステージに
分けて実行する。このような命令に加えて、プログラマ
ブルコントローラに必要とされる命令として、データメ
モリ1ワード中のある1ビットの値を参照したり更新し
たりする“ビット処理命令”というものが存在する。ビ
ット処理命令と呼ばれる命令には様々なものがあり、読
み込んだデータメモリ1ワードのあるビットの状態によ
りプログラマブルコントローラ内部のレジスタ:BIT
ACC(ビットアキュムレータ)を更新したり、このレ
ジスタBITACCの更新に加えてデータメモリ中のあ
る1ビットの値も更新する命令が存在する。このビット
処理命令のパイプラインステージの様子を、図2
(b),(c)に示す。図のように、ビット処理命令以
外の命令がレジスタ書き込みなどを行っていたWBステ
ージに相当する部分に、MEMステージで読み込んだデ
ータメモリの値によりBITACCの更新やデータメモ
リ中のある1ビットの値の更新、データメモリ書き込み
等の動作を行うBPUステージが存在する。ビット処理
命令には多くの種類の命令があり、命令に応じて必要と
なるBPUステージの数も図2(b),(c)に示すよ
うに変わってくる。
【0019】また、ビット処理命令の中には、データメ
モリを1ワードだけ読み込むのではなく、1つの命令を
実行するために複数ワードのデータメモリを読み込む必
要があるものも存在する。単にデータメモリの読み出
し、書き込みを行うロード命令、ストア命令の場合は、
例えばメモリアドレスは指定されたレジスタの内容と即
値データを加算すると得られるというような単純な命令
語の構造になっているため、メモリアクセス用のアドレ
ス計算にはレジスタ間演算などで算術演算などを行うA
LUを用いると、効率よく回路を実現することができ
る。しかしビット処理命令の場合にはロード/ストアの
ように単純にメモリアドレスが求められるとは限らない
ので、ALUでアドレス計算を行うような構成にすると
かえって回路が複雑になってしまう。そこでALUとは
別にビット処理命令専用にアドレス計算ブロックを設
け、ビット処理命令実行時にはここでメモリアドレスの
計算を行うようにする(請求項1)。
【0020】また、ビット処理命令がロード/ストア命
令とは異なり複数のメモリアクセスが必要な場合には、
ロード/ストア命令のようにEXステージで1回だけメ
モリアドレスの計算を行うだけでは命令を実行すること
ができないので、上記アドレス計算ブロック内部にビッ
ト処理命令の命令語のうち、アドレス計算に必要な部分
を記録する機構を設け、連続して複数のパイプラインサ
イクルにわたってアドレスを計算する機能を持たせて、
あわせてメモリアクセス用の制御信号も発行させて、複
数のパイプラインサイクルにわたってメモリアクセスを
実施できる機能を提供する(請求項2)。
【0021】ビット処理命令がパイプラインレジスタ上
を移動し、ビット処理命令を実行する回路ブロックBP
Uに到達すると、ビット処理命令のメモリアクセス用の
アドレス計算は、上記請求項1、2のアドレス計算ブロ
ック以外にBPUで実行することも可能になる。ビット
処理命令の後続命令の実行の都合上、請求項1、2のア
ドレス計算ブロックでアドレス計算を行うよりもBPU
でアドレス計算を行った方がいい場合もあるため、BP
Uで求めたアドレスとデータメモリ読み出し要求を用い
てデータメモリからの読み出しができるようなデータパ
スを設ける(請求項3)。
【0022】また、ビット処理命令がデータメモリを更
新するような命令の場合、BPUがデータメモリに書き
込む値を求めることになるので、BPUで求めたメモリ
の書き込み値とアドレスとデータメモリ書き込み要求を
用いて、データメモリへの書き込みができるようなデー
タパスを設ける(請求項4)。
【0023】以上の請求項1〜4の機能を実現するため
の回路構成を図4に示す。図4では5段パイプライン構
造のうち、EX、MEM、WB(BPU)の3つのステ
ージのうち、特にデータメモリアクセスに関する部分を
示している。図4のEXステージにおいて、ロード命令
やストア命令でメモリアドレスを計算させていたALU
とは別に、ビット処理命令専用のアドレス計算ブロック
BPUADRを設け、ビット処理命令実行時にはALU
の出力ではなく、BPUADRの出力をメモリアクセス
用のアドレスに用いる。そのために、マルチプレクサM
UXを設けて、ALUの出力とBPUADRの出力を選
択してパイプラインレジスタEX/MEMのアドレス部
分ADに書き込んでいる。ビット処理命令では、ビット
処理命令専用のアドレス計算ブロックBPUADRによ
りメモリアクセス用のアドレスを計算し、マルチプレク
サMUXを介してパイプラインレジスタEX/MEMの
アドレス部分ADに書き込むものである。また、メモリ
のアクセスが読み出しである場合には、パイプラインレ
ジスタEX/MEMのメモリ読み出し制御信号RDを1
とし、メモリのアクセスが書き込みである場合には、パ
イプラインレジスタEX/MEMのメモリ書き込み制御
信号WTを1とする。このように、ビット処理命令で
は、ビット処理命令専用のアドレス計算ブロックBPU
ADRがデータメモリDMのアドレスADDRを計算
し、読み出し制御信号RD又は書き込み制御信号WTを
発行する。なお、ロード命令やストア命令ではALUに
よりメモリアドレスを計算させて、マルチプレクサMU
Xを介してパイプラインレジスタEX/MEMのアドレ
ス部分ADに書き込む。ロード命令の場合には、パイプ
ラインレジスタEX/MEMのメモリ読み出し制御信号
RDが1となり、ストア命令の場合には、パイプライン
レジスタEX/MEMのメモリ書き込み制御信号WTが
1となる。
【0024】また、EXパイプラインサイクルで計算し
た値だけでなく、ビット処理命令を実行するブロックB
PUからデータメモリDMのアドレスADDRや書き込
み値WTDT、メモリの制御信号RD、WTを発行し、
それを元にメモリアクセスを実行することができるよう
なデータパスをMEMステージに設けている。図4で
は、メモリの制御信号RD、WTは「1の時に実行」を
意味するものとし、パイプラインレジスタEX/MEM
の上のメモリ制御信号WTやRDの値が0であっても、
ビット処理命令実行回路ブロックBPUからメモリアク
セス要求を発行することにより、メモリアクセスを実行
することができる。すなわち、ビット処理命令実行回路
ブロックBPUからデータメモリDMを読み出すときに
は、マルチプレクサMUXを切り替えて、パイプライン
レジスタEX/MEMのアドレス部分ADに代えて、ビ
ット処理命令実行回路ブロックBPUからデータメモリ
DMにメモリアドレスADDRを与えると共に、ビット
処理命令実行回路ブロックBPUからORゲートを介し
てデータメモリDMにメモリ読み出し制御信号RDを与
える。これにより、データメモリDMから読み出された
データRDDTは、パイプラインレジスタMEM/WB
を介してビット処理命令実行回路ブロックBPUに入力
される。また、ビット処理命令実行回路ブロックBPU
からデータメモリDMに書き込むときには、マルチプレ
クサMUXを切り替えて、パイプラインレジスタEX/
MEMのアドレス部分ADに代えて、ビット処理命令実
行回路ブロックBPUからデータメモリDMにメモリア
ドレスADDRを与えると共に、マルチプレクサMUX
を切り替えて、パイプラインレジスタEX/MEMのデ
ータ部分DTに代えて、ビット処理命令実行回路ブロッ
クBPUからデータメモリDMに書き込みデータWTD
Tを与え、さらに、ビット処理命令実行回路ブロックB
PUからORゲートを介してデータメモリDMにメモリ
書き込み制御信号WTを与える。これにより、ビット処
理命令実行回路ブロックBPUからデータメモリDMに
データを書き込むことが可能となる。
【0025】以上の請求項1〜4の発明のタイムチャー
トを図5に示す。図5の(a)はロード/ストア命令
を、(b)は命令実行時にデータメモリを3ワード読み
込んで、3ワード書き込むようなビット処理命令を示し
ている。図5(a)では、EXステージのALUでアド
レス計算を行い、MEMステージでメモリのRead/
Writeを行っている。それに対して図5(b)では
EXステージのBPUADRでアドレス計算を行い、そ
の値を元にMEMステージでメモリReadを行ってい
る。さらにBPUADRはアドレス計算に必要なビット
処理命令の命令語の一部を自分の内部に記憶し、MEM
ステージの直後のパイプラインサイクルでもメモリRe
adができるよう、EXステージに続いてMEMステー
ジでもアドレス計算を実行し、併せてメモリRead要
求を発行することで、BPU1ステージでもメモリRe
adを実行している。さらにもう1ワードのメモリRe
adが必要になるが、BPU1ステージになるとビット
処理命令の命令語はパイプラインレジスタ上を移動して
BPUに到達しているので、BPU2サイクルのメモリ
Readは必要な信号をすべてBPUから発行し、実現
させている。その後の3ワードのメモリ書き込みも、必
要な値をすべてBPUから発行し、3サイクルにわたる
メモリWriteを実行している。
【0026】上記請求項1〜4の発明により、命令実行
時に複数のメモリアクセスが必要となるビット処理命令
を、5段パイプライン構造を持つプログラマブルコント
ローラで実行させることができるようになるが、ビット
処理命令が複数のパイプラインサイクルにわたってデー
タメモリを占有するため、ビット処理命令の後続命令が
データメモリにアクセスできるようになるまで、後続命
令の実行を停止させる必要がある。そこで、パイプライ
ンレジスタ上に該当命令がビット処理命令であることを
示す制御信号を設け、それをもとにプログラムカウンタ
のインクリメントを停止させる機能を追加する(請求項
5)。また、プログラムカウンタのインクリメントを停
止させただけでは後続命令の実行を止めることができな
い場合は、パイプラインレジスタ上に設けられた該当命
令がビット処理命令であることを示す制御信号をもと
に、命令をデコードした結果を上書きして命令を無効化
する機能を追加する(請求項6)。
【0027】また、上記請求項5の制御信号だけでは必
要な後続命令の実行停止ができない場合に対して、BP
Uからビット処理命令を実行中であることを示す制御信
号を発行しそれをもとにプログラムカウンタのインクリ
メントを停止させる機能を追加する(請求項7)。同様
に、プログラムカウンタのインクリメントを停止させた
だけでは後続命令の実行を止めることができない場合
は、BPUから発行されるビット処理命令を実行中であ
ることを示す制御信号をもとに、命令をデコードした結
果を上書きして命令を無効化する機能を追加する(請求
項8)。
【0028】以上の請求項5〜8の機能を実現するため
の回路構成を図6に示す。図6のIFステージで命令メ
モリIMから取り込んだ命令語はパイプラインレジスタ
IF/ID上のインストラクションレジスタIRに格納
される。それをIDステージのデコーダブロックDCで
解読し、解読した結果をパイプラインレジスタID/E
Xに書き込む。ここで解読した命令がビット処理命令で
あった場合、パイプラインレジスタ上に設けた制御信号
BPUに1を書き込むことにする。この制御信号BPU
は、パイプラインレジスタID/EX、EX/MEM、
MEM/WB上を順次転送され、これらの制御信号はハ
ザード検出ブロックHDUに与えられる。ハザード検出
ブロックHDUはハザード信号HZD_PC、HZD_
ID、HZD_EXを生成し、これらの信号はそれぞれ
HZD_PCによりプログラムカウンタPCのインクリ
メント停止、HZD_IDによりIDステージでデコー
ドした結果のうち、メモリアクセス、レジスタ書き込み
を無効にする、そして、HZD_EXによりEXステー
ジでデコードした結果のうち、メモリアクセス、レジス
タ書き込みを無効にする、という働きをする。パイプラ
インレジスタ上の制御信号BPUに加えて、ビット処理
命令実行ブロックBPUからもビット処理命令を実行中
であることを示す制御信号を発行し、これも併せてハザ
ード検出ブロックHDUで処理してハザード信号を生成
する。
【0029】次に命令を実行したときのタイミングチャ
ートを示して、請求項5〜8の動作の説明をする。ま
ず、図7のように、データメモリを1ワード読み込み、
その中の1ビットに変更を加えて再びデータメモリに書
き戻すようなビット処理命令の場合を考える。図7では
命令メモリの番地にビット処理命令が、それ以降の
番地、番地に後続命令が格納されているものとする。
ここで示すビット処理命令は、まずMEMステージでデ
ータメモリを読み込んで、BPU1ステージでその中の
1ビットデータを操作して、BPU2ステージでデータ
メモリに値を書き戻している。このため後続命令のメモ
リアクセスは、ビット処理命令のBPU2以降に行わな
いと、複数の命令が同時にメモリをアクセスしてしまう
ことになる。命令メモリ番地のビット処理命令がID
ステージの時、後続の番地の命令はIFステージに入
っているので、後続命令がフェッチされるのを停止させ
ることはできない。そして番地の命令のMEMステー
ジを先行するビット処理命令のBPU2ステージの後に
実行させなければならないので、パイプラインサイクル
2つ分だけ命令の実行を停止させなければならない。
【0030】図7の命令を実行させたときの回路内部の
信号のタイミングチャートを図8に示す。時刻1で命令
メモリ番地のビット処理命令のフェッチが完了し、パ
イプラインレジスタIF/ID上のインストラクション
レジスタIRに命令語が取り込まれる。それを解読し
て、時刻2にパイプラインレジスタID/EX上の制御
信号BPUに該当命令がビット処理命令であるという情
報が現れ、この制御信号BPUはパイプラインレジスタ
EX/MEM、MEM/WBへと伝達される。この制御
信号BPUがパイプラインレジスタID/EXとEX/
MEMにあるときに、ハザード検出ブロックHDUはハ
ザード信号HZD_PCを発行し、このためプログラム
カウンタPCのインクリメントが2サイクルの間停止
し、時刻2から時刻5までインストラクションレジスタ
IRには命令メモリ番地の命令がフェッチされ続け
る。フェッチした命令をそのままデコードしても先行す
るビット処理命令に影響がでなければこのままで良い
が、もしデコードした場合に誤動作するようなときは、
ハザード信号HZD_PCと同じタイミングでハザード
信号HZD_IDも発行する。このハザード信号HZD
_IDはインストラクションレジスタIRをデコードし
た結果をパイプラインレジスタID/EXに書き込むと
き、メモリアクセスやレジスタ書き込みに関する制御信
号MEM、WB、EXを無効にするハザード信号で、ハ
ザード信号HZD_IDが発生しているときにはパイプ
ラインレジスタID/EXにはNOP命令がデコードさ
れたのと同じような状態になる。このハザード信号HZ
D_IDをハザード信号HZD_PCと一緒に用いるこ
とで、図7の命令のように、パイプラインサイクル2
つ分だけ命令の実行を停止させ、ビット処理命令のメモ
リアクセスが完了するまで後続命令のメモリアクセスを
発生させないという制御が実現される(請求項5、
6)。
【0031】次に、命令を実行する際に3ワードのメモ
リ読み込みとメモリ書き込みを行うようなビット処理命
令の場合を考える。このビット処理命令が命令メモリI
Mの番地に格納され、後続の番地、番地にも別の
命令が格納されているものとする。図9に示すように、
このビット処理命令は連続する6サイクルの間メモリ
アクセスを実行し、後続の命令は命令のBPU6の
ステージまでMEMステージの実行を遅らせなければな
らない。この場合、パイプラインレジスタ上を伝搬する
制御信号BPUだけでは、後続命令の実行を止めること
はできないので、図10に示すようにビット処理命令実
行ブロックBPUからビット処理命令を実行中であるこ
とを示す制御信号を発行させ、これも併せてハザード信
号HZD_PCの生成に用いれば、この場合でも必要な
だけ後続命令の実行を停止させることができる。また必
要に応じてハザード信号HZD_IDを生成すれば、フ
ェッチした命令のデコード結果を無効にすることもでき
る(請求項7、8)。
【0032】次に、プログラマブルコントローラには入
力の立ち上がりや立ち下がりを検出する微分命令と呼ば
れるものがあり、この微分命令用に入力信号の前回スキ
ャン時の値を記録するためのメモリが必要となる。そこ
で、従来、3段パイプライン構造で命令を実行するプロ
グラマブルコントローラで採用した、命令メモリと同じ
アドレスを有する1ビット幅のメモリを設け、この微分
命令用のデータメモリのアドレスバスと命令メモリのア
ドレスバスを共有させて信号線の数の低減を図り、従来
よりも高速動作が可能な5段パイプライン構造を持つプ
ログラマブルコントローラにおいても従来と同様の微分
命令を実行させることを可能にする(請求項9)。
【0033】上記のような構成で微分命令用のメモリを
設けたので、微分命令実行時のメモリ書き戻しアドレス
は、微分命令が格納されていた命令メモリのアドレスと
同じものになる。この書き戻しアドレスを保存する方法
としては、微分命令をフェッチしたときのプログラムカ
ウンタの値をスタックに格納し、微分命令のメモリ書き
戻し時にアドレスを取り出すなどの構成も考えられる
が、制御が複雑になることと、分岐命令用などにEXス
テージまでプログラムカウンタPCの値を伝達させてい
ることから、ここではパイプラインレジスタを用いて命
令メモリのアドレス(=PCの値)をビット処理命令実
行ブロックBPUまで転送し、このBPUが微分命令実
行時にメモリに書き戻す際に再びそれを用いるという構
成を採用することにする(請求項10)。
【0034】この微分命令のメモリ書き戻し時には、命
令メモリのアドレスは微分命令用メモリの書き戻しアド
レスの値になってしまい、そのまま命令をフェッチし続
けるとすると、本来フェッチするはずだった命令の代わ
りに、いまメモリに値を書き込もうとしている微分命令
を再びフェッチしてしまうことになる。そこで、微分命
令がメモリに値を書き戻しているパイプラインサイクル
はプログラムカウンタPCのインクリメントを停止さ
せ、実行するべき命令をフェッチできなくなるというこ
とが起こらないようにする(請求項11)。
【0035】また、プログラムカウンタPCのインクリ
メントを止めただけでは不正な命令が実行されることを
阻止できないので、回路の構成上、デコード結果を無効
にできない場合には、命令フェッチ時に命令メモリから
取り込まれた値をさらにNOP(No OPerati
on:ノーオペレーション命令)で上書きした結果をイ
ンストラクションレジスタIRに取り込み、不正な命令
が実行されることを防止する(請求項12)。
【0036】上記請求項9〜12を、微分命令を実行し
たときのタイムチャート及び関連する部分のブロック図
で説明する。図11に命令実行時のタイムチャートを、
図12にIF、IDステージのブロック図を示す。実施
例では、命令メモリの番地に微分命令が存在し、続く
番地以降にビット処理命令以外の命令が格納され、
番地の微分命令から命令が実行されているものとする。
微分命令はBPU2ステージでメモリに値を書き戻し、
このときはBPUブロックからメモリのアドレスとメモ
リ書き込み要求を発行する。そこで、図11に示すよう
に微分命令がメモリ書き戻しを行っているパイプライン
サイクルでは、プログラムカウンタPCのインクリメン
トを停止させるためにハザード信号HZD_PCを発生
させ、命令メモリ番地の命令をフェッチできなくなる
ことを防止する。ところで、PCのインクリメントを停
止させるだけだと、微分命令がメモリ書き戻しをしてい
るときは命令メモリのアドレスが番地になり、番地
の命令が再びフェッチされてしまう。これをIDステー
ジで無効にする構成も考えられるが、ここではフェッチ
時に命令メモリから取り込んだ値の代わりにNOP(ノ
ーオペレーション命令)を表す値をインストラクション
レジスタIRに書き込むことにより、不正な命令が実行
されることを防止する。
【0037】この微分命令のメモリ書き戻し時のハザー
ド処理は、命令デコード時にどう処理するべきかを決定
できる他の命令のハザード処理とは異なり、命令の実行
が終了する直前にハザード処理が必要になる。このため
命令の組み合わせによってはハザード処理に矛盾が発生
し、プログラマブルコントローラが誤動作する原因にな
る。そこで、ハザード検出ブロックHDUにおいて各種
ハザードの発生状況を監視し、微分命令のハザード処理
を行う際に矛盾が発生する場合には、命令の実行をもう
1サイクル余分に停止させ、回路が誤動作するのを防止
するようにする(請求項13)。
【0038】どのような矛盾が発生するのかを、図13
に示す。図13では、命令メモリの番地に微分命令
を、番地にデータメモリを1ワード読み書きする図7
に示したビット処理命令を、番地と番地以降にビッ
ト処理命令以外の命令を配置し、番地の微分命令から
実行させている。ハザード信号はハザード検出ブロック
HDU内部の信号を表すものとする。ハザード信号HZ
D_IDとハザード信号HZD_PC1は、番地のビ
ット処理命令に関するハザード信号で、ハザード信号H
ZD_PC2とハザード信号HZD_IFは、番地の
微分命令に関するハザード信号である。ハザード検出ブ
ロックHDUから出力されるハザード信号HZD_PC
は、ハザード信号HZD_PC1とハザード信号HZD
_PC2のORをとったものであり、プログラムカウン
タPCは、時刻4〜5、時刻5〜6の2サイクルにわた
って、インクリメントが停止する。また、ハザード信号
HZD_PC1により、命令がデコードされて時刻5と
時刻6にパイプラインレジスタID/EXに書き込まれ
た値は、NOP(ノーオペレーション命令)で上書きさ
れた状態になっている。一方、微分命令のハザード処理
であるハザード信号HZD_IFにより、時刻6の時点
でインストラクションレジスタIRに取り込まれた命令
は、NOPで上書きされている。これら2つのハザード
処理をそのまま実行すると、番地の命令がデコードさ
れず実行もされない。このようなハザード処理の矛盾が
発生する場合には、ハザード検出ブロックHDUの内部
でハザード信号HZD_PCをもう1サイクル長く発生
させるような処理を施し、実行されない命令をなくす必
要がある。
【0039】
【発明の効果】本発明によれば、5段パイプライン型の
構造を持つプログラマブルコントローラにおいて、命令
メモリの1ビットを更新したり、命令実行時に複数ワー
ドのメモリの読み書きが必要になるビット処理命令と呼
ばれる命令を実行する場合、請求項1〜4で述べたアド
レス計算とメモリアクセスの方式を採用することによ
り、無駄なパイプラインサイクルを浪費することなく効
率的に命令を実行させることが可能になる。また、請求
項5〜8で述べた制御方式を採用することにより、ビッ
ト処理命令が複数のメモリアクセスを行っている際に、
命令メモリにNOP命令を挿入することなくビット処理
命令の後続命令を矛盾なく実行させることが可能にな
る。また、請求項9の形式のメモリを採用することで、
従来の3段パイプライン構造を持つプログラマブルコン
トローラよりも高速実行が可能な5段パイプライン構造
を持つプログラマブルコントローラにおいて、従来と同
様の微分命令を実行させることが可能になり、アドレス
バス用の信号線の数を減らすことができる。また、請求
項10のように微分命令のメモリ書き戻しアドレスを扱
うと、微分命令実行時の制御が非常に容易になる。請求
項11、12で述べた制御方法を採用することにより、
命令メモリにNOP命令を挿入することなく、微分命令
がメモリに書き戻しているときにプログラマブルコント
ローラが誤動作してしまうことを防ぐことができる。ま
た請求項13で述べた制御を施すことにより、請求項5
の処理と請求項11、12で述べた処理が衝突した
ときにも、矛盾なく命令を実行させることが可能にな
る。
【図面の簡単な説明】
【図1】本発明の5段パイプライン構造のプログラマブ
ルコントローラの全体構成を示すブロック図である。
【図2】本発明のプログラマブルコントローラによるパ
イプラインステージを示す説明図である。
【図3】従来のプログラマブルコントローラのブロック
図である。
【図4】請求項1〜4の機能を実現するための回路構成
を示すブロック図である。
【図5】図4の回路の動作を示すタイムチャートであ
る。
【図6】請求項5〜8の機能を実現するための回路構成
を示すブロック図である。
【図7】図6の回路でデータメモリを1ワード読み込
み、その中の1ビットに変更を加えて再びデータメモリ
に書き戻すビット処理命令のタイミングチャートであ
る。
【図8】図7のビット処理命令を実行させたときの回路
内部の信号のタイミングチャートである。
【図9】図6の回路で命令を実行する際に3ワードのメ
モリ読み込みとメモリ書き込みを行うようなビット処理
命令のタイミングチャートである。
【図10】図9のビット処理命令を実行させたときの回
路内部の信号のタイミングチャートである。
【図11】本発明のプログラマブルコントローラで微分
命令を実行したときの動作を示すタイムチャートであ
る。
【図12】請求項9〜12の機能を実現するための回路
構成を示すブロック図である。
【図13】本発明のプログラマブルコントローラで微分
命令のハザード処理を行う際に矛盾が発生する場合を説
明するためのタイミングチャートである。
【符号の説明】
IM 命令メモリ DM データメモリ PC プログラムカウンタ ALU 算術論理演算ユニット DC 命令デコーダ RF レジスタファイル BPU ビット処理命令実行回路ブロック BITACC ビットアキュムレータ BPUADR ビット処理命令専用アドレス計算ブロッ
フロントページの続き (56)参考文献 特開 平9−97180(JP,A) 特開 平9−128235(JP,A) 特開 平9−128237(JP,A) 特開 平8−76996(JP,A) 特開 平5−189013(JP,A) 特開 平5−189014(JP,A) 特開 平5−180915(JP,A) 特開 平5−204415(JP,A) 特開 平7−168715(JP,A) 特開 平6−250711(JP,A) 特開 平3−196204(JP,A) 特開 平5−341820(JP,A) 特開 平5−73113(JP,A) 特開 平4−363704(JP,A) 特開 平1−245306(JP,A) 特開 昭63−95503(JP,A) ヘネシー&パターソン「コンピュー タ・アーキテクチャ −設計・実現・評 価の定量的アプローチ−」、日経BP 社、平成5年(1993年)5月31日、p. 243−345 武良丈治外3名「PC(FP10,FP 10S)の高速処理技術」松下電工技報51 号(1995年6月)p.40−45 (58)調査した分野(Int.Cl.7,DB名) G06F 9/38 G05B 19/05

Claims (13)

    (57)【特許請求の範囲】
  1. 【請求項1】 命令メモリから命令を取り出す命令フ
    ェッチ処理を行う第1ステージと、命令デコード処理及
    び汎用レジスタから値を取り出すレジスタフェッチ処理
    を行う第2ステージと、算術論理演算処理またはデータ
    アドレス演算処理または分岐先の実効アドレス計算処理
    または分岐条件の判定処理を行う第3ステージと、デー
    タメモリへのメモリアクセス処理または分岐処理を行う
    第4ステージと、ビット演算処理または前記汎用レジス
    タへの書き込み処理または分岐処理を行う第5ステージ
    の、5つのステージをパイプライン実行する5段パイプ
    ライン構造のプログラマブルコントローラであって、ロ
    ード命令やストア命令などのメモリアクセス命令とは別
    に、ビット処理命令を実行するために、ビット処理命令
    専用のメモリアドレス計算ブロックを有することを特徴
    とするプログラマブルコントローラ。
  2. 【請求項2】 前記ビット処理命令専用のメモリアド
    レス計算ブロックに、複数のパイプラインサイクルにわ
    たってデータメモリのアドレスを計算させ、メモリアク
    セス要求を発行させることにより、連続する複数のパイ
    プラインステージでメモリアクセスを行うことが可能な
    機能を有することを特徴とする請求項1記載のプログラ
    マブルコントローラ。
  3. 【請求項3】 ビット処理命令を実行する専用の回路
    ブロックを備え、この回路ブロックからメモリアドレス
    とメモリ読み出し要求を発行し、これによりデータメモ
    リの読み出しを実行することを特徴とする請求項1記載
    のプログラマブルコントローラ。
  4. 【請求項4】 ビット処理命令を実行する専用の回路
    ブロックを備え、この回路ブロックからメモリアドレス
    とメモリの書き込みデータとメモリ書き込み要求を発行
    し、これによりデータメモリへの書き込みを実行するこ
    とを特徴とする請求項1記載のプログラマブルコントロ
    ーラ。
  5. 【請求項5】 パイプラインレジスタ上に該当命令が
    ビット処理命令であることを示す制御信号を設け、これ
    により、ビット処理命令の後続命令の実行を停止させる
    必要があるときには、プログラムカウンタのインクリメ
    ントを停止させる機能を有することを特徴とする請求項
    1記載のプログラマブルコントローラ。
  6. 【請求項6】 請求項5において、プログラムカウン
    タのインクリメントを停止させるだけでは命令の実行を
    停止させることができない場合でも、命令をデコードし
    た結果をさらに書き換えて、ビット処理命令の後続命令
    の実行を停止させる機能を有することを特徴とするプロ
    グラマブルコントローラ。
  7. 【請求項7】 ビット処理命令を実行する専用の回路
    ブロックを備え、この回路ブロックから制御信号を発行
    し、これにより、ビット処理命令の後続命令の実行を停
    止させる必要があるときには、プログラムカウンタのイ
    ンクリメントを停止させる機能を有することを特徴とす
    る請求項1記載のプログラマブルコントローラ。
  8. 【請求項8】 請求項7において、プログラムカウン
    タのインクリメントを停止させるだけでは命令の実行を
    停止させることができない場合でも、命令をデコードし
    た結果をさらに書き換えて、ビット処理命令の後続命令
    の実行を停止させる機能を有することを特徴とするプロ
    グラマブルコントローラ。
  9. 【請求項9】 入力が変化したときにのみ実行される
    微分命令専用のデータメモリを設け、そのメモリのアド
    レスバスを命令メモリのアドレスバスと共有させること
    を特徴とする請求項1記載のプログラマブルコントロー
    ラ。
  10. 【請求項10】 命令フェッチ時の命令メモリのアド
    レスをパイプラインレジスタに取り込み、パイプライン
    レジスタ上を順次転送して、ビット処理命令を実行する
    専用の回路ブロックに入力し、微分命令専用のデータメ
    モリに書き戻すときに、前記転送された命令メモリのア
    ドレスをメモリ書き込み用のアドレスとして用いること
    を特徴とする請求項9記載のプログラマブルコントロー
    ラ。
  11. 【請求項11】 微分命令専用のデータメモリに書き
    戻すときにプログラムカウンタのインクリメントを停止
    させ、命令をフェッチできなくなることを防止する機能
    を有することを特徴とする請求項9又は10記載のプロ
    グラマブルコントローラ。
  12. 【請求項12】 微分命令専用のデータメモリに書き
    戻すときに命令メモリから取り込まれる命令を、後続動
    作に影響しない命令に書き換える機能を有することを特
    徴とする請求項1記載のプログラマブルコントローラ。
  13. 【請求項13】 パイプラインレジスタ上に該当命令
    がビット処理命令であることを示す制御信号を設け、こ
    れにより、ビット処理命令の後続命令の実行を停止させ
    る必要があるときには、プログラムカウンタのインクリ
    メントを停止させる第1の機能と、 第1の機能により、プログラムカウンタのインクリメン
    トを停止させるだけでは命令の実行を停止させることが
    できない場合でも、命令をデコードした結果をさらに書
    き換えて、ビット処理命令の後続命令の実行を停止させ
    る第2の機能と、 ビット処理命令を実行する専用の回路ブロックを備え、
    この回路ブロックから制御信号を発行し、これにより、
    ビット処理命令の後続命令の実行を停止させる必要があ
    るときには、プログラムカウンタのインクリメントを停
    止させる第3の機能と、 第3の機能により、プログラムカウンタのインクリメン
    トを停止させるだけでは命令の実行を停止させることが
    できない場合でも、命令をデコードした結果をさらに書
    き換えて、ビット処理命令の後続命令の実行を停止させ
    る第4の機能とを有し、 入力が変化したときにのみ実行される微分命令専用のデ
    ータメモリを設け、そのメモリのアドレスバスを命令メ
    モリのアドレスバスと共有させ、命令フェッチ時の命令
    メモリのアドレスをパイプラインレジスタに取り込み、
    パイプラインレジスタ上を順次転送して、ビット処理命
    令を実行する専用の回路ブロックに入力し、微分命令専
    用のデータメモリに書き戻すときに、前記転送された命
    令メモリのアドレスをメモリ書き込み用のアドレスとし
    て使用し、 微分命令専用のデータメモリに書き戻すときにプログラ
    ムカウンタのインクリメントを停止させ、命令をフェッ
    チできなくなることを防止するとともに、命令メモリか
    ら取り込まれる命令を、後続動作に影響しない命令に書
    き換える第5の機能を有し、 第1〜第4のいずれかの機能を実現するための処理と、
    第5の機能を実現するための処理とが同時に発生すると
    き、必要に応じて命令の実行を停止させ、命令をフェッ
    チできなくなることを防止する機能を有することを特徴
    とする請求項 1記載の プログラマブルコントローラ。
JP03848596A 1995-09-29 1996-02-26 プログラマブルコントローラ Expired - Fee Related JP3185649B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP03848596A JP3185649B2 (ja) 1996-02-26 1996-02-26 プログラマブルコントローラ
US08/721,181 US5933651A (en) 1995-09-29 1996-09-27 Programmable controller
CNB961211032A CN1137421C (zh) 1995-09-29 1996-09-29 可编程控制器
DE69621091T DE69621091T2 (de) 1995-09-29 1996-09-30 Programmierbare Steuerung
KR1019960042852A KR100260012B1 (ko) 1995-09-29 1996-09-30 프로그래머블 컨트롤러
EP96115647A EP0766155B1 (en) 1995-09-29 1996-09-30 Programmable controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03848596A JP3185649B2 (ja) 1996-02-26 1996-02-26 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JPH09231074A JPH09231074A (ja) 1997-09-05
JP3185649B2 true JP3185649B2 (ja) 2001-07-11

Family

ID=12526571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03848596A Expired - Fee Related JP3185649B2 (ja) 1995-09-29 1996-02-26 プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JP3185649B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116187455A (zh) * 2022-12-16 2023-05-30 中国人民解放军战略支援部队信息工程大学 一种经典及量子混合指令流水线设计方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ヘネシー&パターソン「コンピュータ・アーキテクチャ −設計・実現・評価の定量的アプローチ−」、日経BP社、平成5年(1993年)5月31日、p.243−345
武良丈治外3名「PC(FP10,FP10S)の高速処理技術」松下電工技報51号(1995年6月)p.40−45

Also Published As

Publication number Publication date
JPH09231074A (ja) 1997-09-05

Similar Documents

Publication Publication Date Title
US6115808A (en) Method and apparatus for performing predicate hazard detection
US7043416B1 (en) System and method for state restoration in a diagnostic module for a high-speed microprocessor
TW201737066A (zh) 程式迴圈控制
KR100303712B1 (ko) 파이프라인기계에서의어드레스파이프라인을위한방법및장치
JP2620511B2 (ja) データ・プロセッサ
RU2282235C2 (ru) Блокирование исходных регистров в устройстве обработки данных
JP3185649B2 (ja) プログラマブルコントローラ
KR100930332B1 (ko) 프로세서 및 그 제어 방법
US6243806B1 (en) Program execution method and apparatus employing data flags for branching determination
JPH08137751A (ja) プロセッサ装置及びその制御方法
JPH1049373A (ja) パイプライン・デジタル・プロセッサにおいて多重で高精度の事象を操作する方法と装置
JP3000857B2 (ja) プログラマブルコントローラ
JP2001014161A (ja) プログラマブルコントローラ
JPH03175548A (ja) マイクロプロセッサ及びアドレス制御方式
JPH02123442A (ja) 高速化メモリ
JP3145545B2 (ja) メモリアクセス装置
JP3206394B2 (ja) 5段パイプライン構造のプログラマブルコントローラ
JPH02197924A (ja) 中央演算処理装置
JP3405106B2 (ja) プログラマブルコントローラ
JP3063593B2 (ja) プログラマブルコントローラ
JP3748191B2 (ja) 計算機とその制御方法
JP3762597B2 (ja) 計算機とその制御方法
JP2622026B2 (ja) 中央処理装置におけるレジスタ書込制御方式
JP3414579B2 (ja) プログラマブルコントローラ
JP3481039B2 (ja) プログラマブルコントローラ

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080511

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090511

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090511

Year of fee payment: 8

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20090511

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20100511

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100511

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110511

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 11

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 11

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 12

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 12

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees