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

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

Info

Publication number
JP2752076B2
JP2752076B2 JP63040109A JP4010988A JP2752076B2 JP 2752076 B2 JP2752076 B2 JP 2752076B2 JP 63040109 A JP63040109 A JP 63040109A JP 4010988 A JP4010988 A JP 4010988A JP 2752076 B2 JP2752076 B2 JP 2752076B2
Authority
JP
Japan
Prior art keywords
instruction
data
register
sequence
memory
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 - Lifetime
Application number
JP63040109A
Other languages
English (en)
Other versions
JPH01214902A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP63040109A priority Critical patent/JP2752076B2/ja
Priority to US07/313,562 priority patent/US5167025A/en
Publication of JPH01214902A publication Critical patent/JPH01214902A/ja
Priority to US07/869,508 priority patent/US5586337A/en
Application granted granted Critical
Publication of JP2752076B2 publication Critical patent/JP2752076B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Program control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

Landscapes

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明はシーケンス命令の高速演算実行を行ない得る
ようにしたプログラマブル・コントローラに関する。
(従来の技術) 第4図は、従来のプログラマブル・コントローラの一
例を示すブロック図である。第4図において、プログラ
ム・メモリ1と、データ・メモリ2と、シーケンス実行
制御部3は、共通のアドレス・バス4およびデータ・バ
ス5により接続されている。プログラム・メモリ1は、
命令部およびオペランド部からなるシーケンス命令群を
格納するものである。データ・メモリ2は、プロセス入
出力データ,内部出力等の演算データを格納するもので
ある。シーケンス実行制御部3は、プログラム・メモリ
1からフェッチした命令部とデータ・メモリ2からの演
算データとに基づいて、シーケンス演算を実行するもの
である。
すなわち、シーケンス実行制御部3は、命令ポインタ
6からアドレス・バス4を介してプログラム・アドレス
をプログラム・メモリ1に指示し、データ・バス5を介
してシーケンス命令を命令レジスタ7に取込む。次に、
データ・メモリ2のアドレスとなるシーケンス命令のオ
ペランド部を、命令レジスタ7からアドレス・バス4を
介してデータ・メモリ2に指示し、データ・バス5を介
してデータ・レジスタ8に取込む。そして最後に、命令
レジスタ7の内容とデータ・レジスタ8の内容とを基
に、ビット演算処理部9によってシーケンス命令の主体
である2値論理演算を実行する。
第5図は、この場合のプログラマブル・コントローラ
の動作を概念的に示したものである。第5図に示すよう
に、シーケンス命令の2値論理命令1命令の実行時間
は、命令フェッチ時間と,オペランド・データ・取込み
時間と,命令実行時間との総和となる。さらに、命令フ
ェッチやオペランド・データ・取込みのメモリ・アクセ
スに要する時間は、命令実行時間である2値論理演算に
要する時間に比べて長くなっている。
(発明が解決しようとする課題) 以上のことから、従来のプログラマブル・コントロー
ラでは、2値論理演算を主体とするシーケンス命令実行
時間中における、メモリ・アクセス時間の占める割合が
大きいため、ロス時間が生じてシーケンス命令の演算実
行を高速に行なえないという問題があった。
本発明の目的は、ロス時間を少なくしてシーケンス命
令の高速演算実行を行なうことが可能なプログラマブル
・コントローラを提供することにある。
[発明の構成] (課題を解決するための手段) 上記の目的を達成するために本発明のプログラマブル
・コントローラは、命令部およびオペランド部からなる
シーケンス命令群を格納するプログラム・メモリと、プ
ロセス入出力データ,内部出力等の演算データを格納す
るデータ・メモリと、プログラム・メモリからフェッチ
した命令部とデータ・メモリからの演算データとに基づ
いてシーケンス演算を実行するシーケンス実行制御部
と、シーケンス実行制御部がプログラム・メモリからの
ステップn+1の命令フェッチ時に、データ・メモリか
ら演算データの取込みを行なうためのアドレスとしてス
テップnのオペランド部を取込む保持レジスタとを有
し、前記シーケンス実行制御部がステップn+1の命令
フェッチを行なう際に、前記保持レジスタによるステッ
プnに係る演算データを取込むことと、前記保持レジス
タがステップn+1に応じたオペランド部を取込むため
のトランスペアレント状態になることとが並列して行な
われる。
(作用) 従って、本発明のプログラマブル・コントローラにお
いては、シーケンス実行制御部がプログラム・メモリか
らの命令フェッチ時に、オペランド部をデータ・メモリ
のアドレスとしてデータ・メモリから演算データの取込
みを行なうためのデータ・メモリ・アドレスを保持する
保持レジスタを備えていることにより、プログラム・メ
モリの命令部とデータ・メモリの演算データとを同時に
取込んで命令実行できる、すなわち次命令フェッチと現
命令実行とを同時に行なうことが可能となる。また、こ
のとき、シーケンス実行制御部がステップn+1の命令
フェッチを行なう際に、保持レジスタによるステップn
に係る演算データを取込むことと、保持レジスタがステ
ップn+1に応じたオペランド部を取込むためのトラン
スペアレント状態になることとが並列して行なわれる。
(実施例) 以下、本発明を図面に示す一実施例を参照して説明す
る。
第1図は、本発明によるプログラマブル・コントロー
ラの一実施例を示すブロック図である。第1図に示すよ
うに、本実施例のプログラマブル・コントローラは、プ
ログラム・メモリ10と、データ・メモリ11と、シーケン
ス実行制御部12と、保持レジスタであるパイプ・ライン
・レジスタ13とから構成している。また、シーケンス実
行制御部12は、命令ポインタ14と、命令レジスタ15と、
データ・レジスタ16と、ビット演算処理部17と、タイミ
ング制御部18とからなっている。一方、命令ポインタ14
とプログラム・メモリ10をプログラム・アドレス・バス
19−1により接続し、命令レジスタ15とプログラム・メ
モリ10とを第1のプログラム・データ・バス20−1によ
り接続している。また、プログラム・メモリ10とパイプ
・ライン・レジスタ13を第2のプログラム・データ・バ
ス20−2により接続し、データ・メモリ11とパイプ・ラ
イン・レジスタ13をオペランド・アドレス・バス19−2
により接続している。さらに、データ・メモリ11とデー
タ・レジスタ16をオペランド・データ・バス20−3によ
り接続している。
ここで、プログラム・メモリ10は、命令部(命令部1
〜N)およびオペランド部(オペランド部1〜N)から
なるシーケンス命令群を格納するものである。データ・
メモリ11は、プロセス入出力データ,内部出力等の演算
データを格納するものである。パイプ・ライン・レジス
タ13は、演算データのアドレスとなるオペランド部をラ
ッチするものである。シーケンス実行制御部12は、プロ
グラム・メモリ10からフェッチした命令部とデータ・メ
モリ11からの演算データとに基づいて、シーケンス演算
を実行するものである。
すなわち、シーケンス実行制御部12において、命令ポ
インタ14はプログラム・メモリ10にプログラム・アドレ
スを指示するものであり、命令レジスタ15はプログラム
・メモリ10の命令部をラッチするものである。また、デ
ータ・レジスタ16はデータ・メモリ11の演算データをラ
ッチするものであり、ビット演算処理部17は命令レジス
タ15の内容とデータ・レジスタ16の内容とを基に、シー
ケンス命令の主体である2値論理演算を実行するもので
ある。さらに、タイミング制御部18は内部のクロック信
号からタイミング信号Φ1,Φ2を作製し、タイミング信
号Φ1によって命令ポインタ14,命令レジスタ15,ビット
演算処理部17の動作を制御し、タイミング信号Φ2によ
ってデータ・レジスタ16,パイプ・ライン・レジスタ13
の動作を制御するものである。
次に、以上の如く構成したプログラマブル・コントロ
ーラの動作について説明する。
まず、命令ポインタ14の内容を更新するタイミング信
号Φ1にて、更新される前の命令ポインタ14の内容をア
ドレスとするプログラム・メモリ10の命令部およびオペ
ランド部が、命令レジスタ15およびパイプ・ライン・レ
ジスタ13にそれぞれ取込まれる。次に、タイミング信号
Φ2にて、パイプ・ライン・レジスタ13の内容をアドレ
スとするデータ・メモリ11の演算データが、データ・レ
ジスタ16に取込まれる。またこれと同時に、次命令の演
算データを取込むために、データ・メモリ11のメモリ・
アクセス時間を考慮してパイプ・ライン・レジスタ13が
トランスペアレント状態とされる。その後、既に取込ん
だ命令レジスタ15の内容とデータ・レジスタ16の内容と
を基に、ビット演算処理部17ではタイミング信号Φ1
て2値論理演算が実行される。またこれと同時に、タイ
ミング信号Φ1にて命令ポインタ14の内容が更新され
る。第2図は、この場合のプログラマブル・コントロー
ラの動作を概念的に示したものである。
次に、上述した動作について、第3図を用いてより詳
細に説明する。
まず、命令ポインタ14の内容がクロック信号の立上が
りタイミングで更新され、命令2アドレスが出力され
る。またこれと同時に、プログラム・メモリ10が既に出
力していた命令部1およびオペランド部1が、命令レジ
スタ15およびパイプ・ライン・レジスタ13にそれぞれラ
ッチされる。ここで、オペランド部1はクロック信号の
立下がりタイミングでトランスペアレント状態にて取込
みが開始されており、既にオペランド・アドレス・バス
19−2には演算データのアドレスであるオペランド部1
が出力されている。
次に、データ・レジスタ16ではクロック信号の立上が
りタイミングからトランスペアレント状態にて演算デー
タ1の取込みが開始されており、クロック信号の立下が
りタイミングでラッチされる。
その後、命令レジスタ15に取込まれた命令部1と,デ
ータ・レジスタ16に取込まれた演算データ1とを基に、
ビット演算処理部17ではクロック信号の立上がりタイミ
ング信号にて、シーケンス命令の主体である2値論理演
算が実行される。以後、上述の動作が繰返して行なわれ
る。
上述したように、本実施例のプログラマブル・コント
ローラにおいては、プログラム・アドレス・バス19−1
とオペランド・アドレス・バス19−2とを分離すると共
に、第1のプログラム・データ・バス20−1と第2のプ
ログラム・データ・バス20−2とオペランド・データ・
バス20−3とを分離し、かつ第2のプログラム・データ
・バス20−2とオペランド・アドレス・バス19−2とを
分離するパイプ・ライン・レジスタ13を備えているの
で、次命令フェッチと現命令実行との同時処理を行なう
ことが可能となる。すなわち、命令ポインタ14,プログ
ラム・アドレス・バス19−1,第1のプログラム・データ
・バス20−1,第2のプログラム・データ・バス20−2を
用いて次命令フェッチが行なわれ、またパイプ・ライン
・レジスタ13,オペランド・アドレス・バス19−2,オペ
ランド・データ・バス20−3,命令レジスタ15,データ・
レジスタ16,ビット演算処理部17を用いて現命令実行が
行なわれ、結果的に次命令フェッチと現命令実行とが同
時に行なわれる。
従って、2値論理演算を主体とするシーケンス命令実
行時間中における、メモリ・アクセス時間の占める割合
を小さくできるため、ロス時間を少なくしてシーケンス
命令の高速演算実行を行なうことが可能となる。これに
より、プログラマブル・コントローラの処理能力の増強
を図ることができ、さらにプログラマブル・コントロー
ラの制御対象に対する制御精度の向上を図ることができ
る。
[発明の効果] 以上説明したように本発明によれば、ロス時間を少な
くしてシーケンス命令の高速演算実行を行なうことが可
能なプログラマブル・コントローラが提供できる。
【図面の簡単な説明】
第1図は本発明によるプログラマブル・コントローラの
一実施例を示すブロック図、第2図は同実施例における
動作概念図、第3図は同実施例における動作タイムチャ
ート図、第4図は従来のプログラマブル・コントローラ
の構成例を示すブロック図、第5図は第4図における動
作概念図である。 10…プログラム・メモリ、11…データ・メモリ、12…シ
ーケンス実行制御部、13…パイプ・ライン・レジスタ、
14…命令ポインタ、15…命令レジスタ、16…データ・レ
ジスタ、17…ビット演算処理部、18…タイミング制御
部、19−1…プログラム・アドレス・バス、19−2…オ
ペランド・アドレス・バス、20−1…第1のプログラム
・データ・バス、20−2…第2のプログラム・データ・
バス、20−3…オペランド・データ・バス。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】命令部およびオペランド部からなるシーケ
    ンス命令群を格納するプログラム・メモリと、 プロセス入出力データ,内部出力等の演算データを格納
    するデータ・メモリと、 前記プログラム・メモリからフェッチした命令部と前記
    データ・メモリからの演算データとに基づいてシーケン
    ス演算を実行するシーケンス実行制御部と、 前記シーケンス実行制御部がプログラム・メモリからの
    ステップn+1の命令フェッチ時に、前記データ・メモ
    リから演算データの取込みを行なうためのアドレスとし
    てステップnのオペランド部を取込む保持レジスタとを
    有し、 前記シーケンス実行制御部がステップn+1の命令フェ
    ッチを行なう際に、前記保持レジスタによるステップn
    に係る演算データを取込むことと、前記保持レジスタが
    ステップn+1に応じたオペランド部を取込むためのト
    ランスペアレント状態になることとが並列して行なわれ
    ることを特徴とするプログラマブル・コントローラ。
JP63040109A 1988-02-23 1988-02-23 プログラマブル・コントローラ Expired - Lifetime JP2752076B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP63040109A JP2752076B2 (ja) 1988-02-23 1988-02-23 プログラマブル・コントローラ
US07/313,562 US5167025A (en) 1988-02-23 1989-02-22 Programmable controller generating plural alternating clocks with each clock controlling different parts of instruction sequencing mechanism
US07/869,508 US5586337A (en) 1988-02-23 1992-04-16 Programmable controller with timing control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63040109A JP2752076B2 (ja) 1988-02-23 1988-02-23 プログラマブル・コントローラ

Publications (2)

Publication Number Publication Date
JPH01214902A JPH01214902A (ja) 1989-08-29
JP2752076B2 true JP2752076B2 (ja) 1998-05-18

Family

ID=12571694

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63040109A Expired - Lifetime JP2752076B2 (ja) 1988-02-23 1988-02-23 プログラマブル・コントローラ

Country Status (2)

Country Link
US (2) US5167025A (ja)
JP (1) JP2752076B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3035828B2 (ja) * 1989-12-28 2000-04-24 甲府日本電気株式会社 情報処理装置
US5355457A (en) * 1991-05-21 1994-10-11 Motorola, Inc. Data processor for performing simultaneous instruction retirement and backtracking
DE4320263A1 (de) * 1993-06-18 1994-12-22 Gsf Forschungszentrum Umwelt Datenverarbeitungsmaschine
DE69513113T2 (de) * 1994-08-31 2000-06-21 Motorola, Inc. Verfahren zum synchronen Speicherzugriff
US5862401A (en) * 1994-10-11 1999-01-19 Crown International, Inc. Programmable central intelligence controller and distributed intelligence network for analog/digital control systems
JPH09311812A (ja) * 1996-05-24 1997-12-02 Oki Electric Ind Co Ltd マイクロコンピュータ
US6099585A (en) * 1998-05-08 2000-08-08 Advanced Micro Devices, Inc. System and method for streamlined execution of instructions
JP4451010B2 (ja) * 2001-04-09 2010-04-14 三菱電機株式会社 プログラマブルコントローラ

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4025771A (en) * 1974-03-25 1977-05-24 Hughes Aircraft Company Pipe line high speed signal processor
US4447873A (en) * 1977-09-13 1984-05-08 Westinghouse Electric Corp. Input-output buffers for a digital signal processing system
US4255785A (en) * 1978-09-25 1981-03-10 Motorola, Inc. Microprocessor having instruction fetch and execution overlap
US4257096A (en) * 1978-10-23 1981-03-17 International Business Machines Corporation Synchronous and conditional inter-program control apparatus for a computer system
US4616331A (en) * 1980-02-25 1986-10-07 Tsuneo Kinoshita Information processing system consisting of an arithmetic control unit formed into a one-chip typed by application of a highly-integrated semiconductor device
CA1174370A (en) * 1980-05-19 1984-09-11 Hidekazu Matsumoto Data processing unit with pipelined operands
US4418383A (en) * 1980-06-30 1983-11-29 International Business Machines Corporation Data flow component for processor and microprocessor systems
US4373180A (en) * 1980-07-09 1983-02-08 Sperry Corporation Microprogrammed control system capable of pipelining even when executing a conditional branch instruction
US4467444A (en) * 1980-08-01 1984-08-21 Advanced Micro Devices, Inc. Processor unit for microcomputer systems
US4407016A (en) * 1981-02-18 1983-09-27 Intel Corporation Microprocessor providing an interface between a peripheral subsystem and an object-oriented data processor
US4532587A (en) * 1981-08-26 1985-07-30 Texas Instruments Incorporated Single chip processor connected to an external memory chip
JPS59501684A (ja) * 1982-10-22 1984-10-04 インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン 目的命令ストリ−ムへ殆んど実時間で插入するためのソ−スおよび目的命令ストリ−ムの外部における加速式命令写像
US4704678A (en) * 1982-11-26 1987-11-03 Inmos Limited Function set for a microcomputer
JPS59146345A (ja) * 1983-02-10 1984-08-22 Masahiro Sowa コントロ−ルフロ−並列計算機方式
JPS59160593U (ja) * 1983-04-15 1984-10-27 丸山 静子 衣服の毛玉取器
US4574348A (en) * 1983-06-01 1986-03-04 The Boeing Company High speed digital signal processor architecture
US5146570A (en) * 1984-10-31 1992-09-08 International Business Machines Corporation System executing branch-with-execute instruction resulting in next successive instruction being execute while specified target instruction is prefetched for following execution
JPH0670773B2 (ja) * 1984-11-01 1994-09-07 富士通株式会社 先行制御方式
CA1250667A (en) * 1985-04-15 1989-02-28 Larry D. Larsen Branch control in a three phase pipelined signal processor
US4714994A (en) * 1985-04-30 1987-12-22 International Business Machines Corp. Instruction prefetch buffer control
US4791557A (en) * 1985-07-31 1988-12-13 Wang Laboratories, Inc. Apparatus and method for monitoring and controlling the prefetching of instructions by an information processing system
US4755935A (en) * 1986-01-27 1988-07-05 Schlumberger Technology Corporation Prefetch memory system having next-instruction buffer which stores target tracks of jumps prior to CPU access of instruction
JPS62180095U (ja) * 1986-05-01 1987-11-16
US4829425A (en) * 1986-10-21 1989-05-09 Intel Corporation Memory-based interagent communication mechanism
US5036454A (en) * 1987-05-01 1991-07-30 Hewlett-Packard Company Horizontal computer having register multiconnect for execution of a loop with overlapped code
US4918587A (en) * 1987-12-11 1990-04-17 Ncr Corporation Prefetch circuit for a computer memory subject to consecutive addressing

Also Published As

Publication number Publication date
JPH01214902A (ja) 1989-08-29
US5167025A (en) 1992-11-24
US5586337A (en) 1996-12-17

Similar Documents

Publication Publication Date Title
JPH0769791B2 (ja) マイクロプロセッサ
JP2752076B2 (ja) プログラマブル・コントローラ
JP2685245B2 (ja) プログラマブルコントローラ
JPH05342084A (ja) データ記憶装置及びデータ記憶方法
US5276822A (en) System with enhanced execution of address-conflicting instructions using immediate data latch for holding immediate data of a preceding instruction
JPH0740244B2 (ja) マイクロプロセツサ
JPS6242301B2 (ja)
JP2552738B2 (ja) データ処理装置
JP3511691B2 (ja) 演算処理装置
JPH0222413B2 (ja)
JPH024010B2 (ja)
JP2758624B2 (ja) マイクロプログラムの調速方式
JPH082727Y2 (ja) プログラマブルシ−ケンサ
JPH04370832A (ja) プロセッサ回路
JPH0743649B2 (ja) 演算回路
JPH0512009A (ja) デイジタル信号処理装置
JPS61194534A (ja) マイクロプロセツサ
JP2020140290A (ja) 中央演算処理装置
JPS6368924A (ja) マイクロプロセッサ
JPH0399338A (ja) マイクロプロセッサ
JPS63293665A (ja) デ−タ処理装置
JPH0620071A (ja) データ駆動型情報処理装置
JPS6326733A (ja) パイプライン式命令実行制御装置
JPH01255037A (ja) 電子計算機
JPH0311423A (ja) ストリングデータ処理機構

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term