JP4809497B2 - 複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ - Google Patents
複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ Download PDFInfo
- Publication number
- JP4809497B2 JP4809497B2 JP2011016083A JP2011016083A JP4809497B2 JP 4809497 B2 JP4809497 B2 JP 4809497B2 JP 2011016083 A JP2011016083 A JP 2011016083A JP 2011016083 A JP2011016083 A JP 2011016083A JP 4809497 B2 JP4809497 B2 JP 4809497B2
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic processing
- mpu
- processing circuits
- programmable controller
- instruction
- 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
Links
- 238000004088 simulation Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 14
- 238000000034 method Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Description
(1)MPU10、メモリ20、ASIC30のそれぞれ1個から構成されるハードウェアで、プログラム(1)〜プログラム(n)の複数本のプログラムを時分割して実行する(図1,図2を参照)。この構成のプログラマブルコントローラでは、一つ一つのプログラムを時系列的に処理することから、図2に示されるように、各プログラムを実行する処理時間の総和が長くなるという問題がある。
(2)MPU10、メモリ20、演算処理回路(1)〜演算処理回路(n)の複数個の演算処理回路および調停回路38を有するASIC30のそれぞれ1個から構成されるハードウェアで、プログラム(1)〜プログラム(n)の複数本のプログラムを並行して実行する(図3,図4を参照)。この構成のプログラマブルコントローラでは、複数のシーケンスプログラムを並行して実行することが可能である。図4に示されるように、プログラム(1)〜プログラム(n)を処理する時間は、プログラム(1)の実行時間である。つまり、処理時間が一番長いプログラムに、プログラムの実行時間が依存する。
また、(2)の技術では、図3に示されるように、複数本のシーケンスプログラムをASIC30内部の複数個の演算処理回路、及び、1台のMPU10で実行する。そのため、プログラムを構成する命令において、MPUが実行する命令の占める割合が大きいと、複数本のプログラムが同時にMPUに命令の実行を要求する可能性が高くなり、MPUの命令実行待ちでプログラムが停止することになるという問題があった。
請求項4に係る発明は、前記第1の転送手段に替えて、一つの前記演算処理回路から一つの前記MPUに前記第2の命令の情報を直接転送する第3の転送手段を有する構成を含むことを特徴とする請求項1から請求項3のいずれか一つに記載のプログラマブルコントローラである。
まず、本願の特許請求の範囲および課題を解決するための手段に記載される第1の転送手段と第2の転送手段について概略を説明する。第1の転送手段と第2の転送手段は、特許文献1に詳細に記述されているように、従来公知の技術であるため、詳細な説明は省略し、ここでは概略を説明する。
演算処理回路は、第2の命令が発生したときにMPU命令実行要求信号を出力し該MPU命令実行要求信号を出力してからMPUが該第2の命令を完了するまで停止状態となるMPU命令実行要求手段と、MPUが前記第2の命令の実行を完了した信号を受けてプログラム実行を再開する再開手段とを有する。
ただし、この図のプログラムの実行時間は、各プログラムが専用の演算処理回路及び専用のMPUで実行される、すなわち、各プログラムは、他のプログラムとの競合により、MPUの命令実行待ちとなって停止することがない、とした場合の実行時間である。
図12は、MPUと同数の調停回路の各々が調停する演算処理回路の数を変更できるようにし、並列実行するプログラムの内容に応じて、最適なハードウェア構成を選択できる本発明の第2の実施形態を説明する図である。
MPU2台の場合、調停回路2回路、演算処理回路n回路(n=2j、j=1,2,3,・・・)のハードウェア接続の組み合わせを以下のn/2通りに変更できるようにする。なお、複数のMPUに替えて、例えば、マルチコアMPUのように1チップに複数のコアを有するMPUを1台として構成してもよい。
[1]
MPU(1)、調停回路(1)、演算処理回路(1)を接続。
MPU(2)、調停回路(2)、演算処理回路(2)〜(n)を接続。
[2]
MPU(1)、調停回路(1)、演算処理回路(1),(2)を接続。
MPU(2)、調停回路(2)、演算処理回路(3)〜(n)を接続。
[3]
MPU(1)、調停回路(1)、演算処理回路(1)〜(3)を接続。
MPU(2)、調停回路(2)、演算処理回路(4)〜(n)を接続。
・
・
[n/2]
MPU(1)、調停回路(1)、演算処理回路(1)〜(n/2)を接続。
MPU(2)、調停回路(2)、演算処理回路(n/2 + 1)〜(n)を接続。
図18ではメモリ20は省略されている。第1の調停回路31には第1のMPU11が接続され、第2の調停回路32には第2のMPU12が接続される。第1の調停回路31は演算処理回路(1)〜(n/2)の調停を行なうことが可能で、MPU命令実行要求信号を第1のMPU11に出力する。また、第1のMPU11は命令の実行が完了すると、第1の調停回路31にMPU命令実行完了信号を出力する。第1の調停回路31は、このMPU命令実行完了信号をMPU命令実行要求信号を出力した演算処理回路に出力する。第2の調停回路32は、演算処理回路(2)〜(n)の調停を行なうことが可能で、MPU命令実行要求信号を第2のMPU12に出力する。
11 第1のMPU
12 第2のMPU
13 第3のMPU
14 第mのMPU
20 メモリ
30 ASIC
31 第1の調停回路
32 第2の調停回路
33 第3の調停回路
34 第mの調停回路
38,39 調停回路
40 レジスタ及びデコーダ
51,52,53,54,55,56,57,58,59 セレクタ
60,61,62 インバータ
a MPU命令実行要求信号及びデータ
b MPU命令実行完了信号
d セレクタ設定情報
Claims (4)
- 複数の独立したシーケンスプログラムを並行して実行するプログラマブルコントローラであって、
シーケンスプログラムの中の所定の第1の命令をハードウェアで実行する複数の演算処理回路と、
並行して実行されている複数の独立したシーケンスプログラムの中で、前記演算処理回路で実行できない第2の命令を実行する複数台のMPUと、
前記演算処理回路で発生した少なくとも1つの前記第2の命令の情報を、その命令の発生した順番に前記MPUに転送する第1の転送手段と、
前記MPUが実行した前記第2の命令の実行結果の情報を、前記第2の命令の情報の発生元である前記演算処理回路に転送する第2の転送手段とを備え、
前記複数の演算処理回路は、前記のMPUの数と同じ数の、少なくとも一つの演算処理回路を含んだグループに分けられ、
かつそれらのグループのうちの少なくとも一つは、少なくとも二つの演算処理回路を含み、前記第1及び第2の転送手段並びに前記MPUはこの少なくとも二つの演算処理回路を含むグループに対応して配され、
前記複数の演算処理回路を前記グループに分けて構成するときに、前記複数の演算処理回路の各々がどのグループに属するかを選択する選択手段を有することを特徴とする前記のプログラマブルコントローラ。 - 前記選択手段は、
前記演算処理回路の各々がどのグループに属するかを指定するデータを格納するレジスタと、
前記レジスタに格納されたデータに従って各々の前記演算処理回路を対応する各グループの前記MPUと前記第1の転送手段と前記第2の転送手段に関連づける選択回路と、を備えたことを特徴とする請求項1に記載のプログラマブルコントローラ。 - 前記演算処理回路の各々がどのグループに属するかを指定する前記データは、前記複数の独立したシーケンスプログラムを任意に前記グループに分けてシミュレーションを行い、前記複数のシーケンスプログラムの実行時間が最短となる組み合わせのデータであることを特徴とする請求項2に記載のプログラマブルコントローラ。
- 前記第1の転送手段に替えて、一つの前記演算処理回路から一つの前記MPUに前記第2の命令の情報を直接転送する第3の転送手段を有する構成を含むことを特徴とする請求項1から請求項3のいずれか一つに記載のプログラマブルコントローラ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011016083A JP4809497B2 (ja) | 2010-02-25 | 2011-01-28 | 複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010040996 | 2010-02-25 | ||
JP2010040996 | 2010-02-25 | ||
JP2011016083A JP4809497B2 (ja) | 2010-02-25 | 2011-01-28 | 複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011198356A JP2011198356A (ja) | 2011-10-06 |
JP4809497B2 true JP4809497B2 (ja) | 2011-11-09 |
Family
ID=44356993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011016083A Expired - Fee Related JP4809497B2 (ja) | 2010-02-25 | 2011-01-28 | 複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ |
Country Status (4)
Country | Link |
---|---|
US (1) | US8301869B2 (ja) |
JP (1) | JP4809497B2 (ja) |
CN (1) | CN102169332B (ja) |
DE (1) | DE102011011682B4 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105242611B (zh) * | 2015-10-31 | 2017-12-12 | 肖勤 | 一种时序再现循环控制器以及时序控制方法 |
JP6356736B2 (ja) | 2016-06-29 | 2018-07-11 | ファナック株式会社 | コントローラシステムおよび制御方法 |
JP6781191B2 (ja) | 2018-05-24 | 2020-11-04 | ファナック株式会社 | プログラマブルコントローラ及び機械学習装置 |
US11904399B2 (en) * | 2020-11-30 | 2024-02-20 | Metal Industries Research & Development Centre | Online prediction method of tool-electrode consumption and prediction method of machining accuracy |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748934A (en) * | 1996-05-31 | 1998-05-05 | Hewlett-Packard Company | Operand dependency tracking system and method for a processor that executes instructions out of order and that permits multiple precision data words |
JP2933026B2 (ja) * | 1996-08-30 | 1999-08-09 | 日本電気株式会社 | 複数命令並列発行/実行管理装置 |
US6901504B2 (en) * | 2002-01-22 | 2005-05-31 | International Business Machines Corporation | Result forwarding of either input operand to same operand input to reduce forwarding path |
JP4082706B2 (ja) * | 2005-04-12 | 2008-04-30 | 学校法人早稲田大学 | マルチプロセッサシステム及びマルチグレイン並列化コンパイラ |
JP4491439B2 (ja) * | 2006-06-30 | 2010-06-30 | 株式会社日立製作所 | 制御装置及び制御方法 |
US7984272B2 (en) * | 2007-06-27 | 2011-07-19 | International Business Machines Corporation | Design structure for single hot forward interconnect scheme for delayed execution pipelines |
JP4975586B2 (ja) * | 2007-11-02 | 2012-07-11 | ファナック株式会社 | 複数本のシーケンスプログラムを並列して実行可能なプログラマブルコントローラ |
US7930519B2 (en) * | 2008-12-17 | 2011-04-19 | Advanced Micro Devices, Inc. | Processor with coprocessor interfacing functional unit for forwarding result from coprocessor to retirement unit |
-
2011
- 2011-01-28 JP JP2011016083A patent/JP4809497B2/ja not_active Expired - Fee Related
- 2011-02-14 CN CN201110041373.XA patent/CN102169332B/zh not_active Expired - Fee Related
- 2011-02-18 DE DE102011011682.6A patent/DE102011011682B4/de not_active Expired - Fee Related
- 2011-02-18 US US13/030,431 patent/US8301869B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN102169332A (zh) | 2011-08-31 |
US20110208952A1 (en) | 2011-08-25 |
CN102169332B (zh) | 2013-08-07 |
JP2011198356A (ja) | 2011-10-06 |
US8301869B2 (en) | 2012-10-30 |
DE102011011682A1 (de) | 2011-08-25 |
DE102011011682B4 (de) | 2014-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5994679B2 (ja) | 処理装置、及び処理装置の制御方法 | |
JP2007041781A (ja) | リコンフィグ可能な集積回路装置 | |
US9043806B2 (en) | Information processing device and task switching method | |
JP4809497B2 (ja) | 複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ | |
US8060726B2 (en) | SIMD microprocessor, image processing apparatus including same, and image processing method used therein | |
JP5630798B1 (ja) | プロセッサーおよび方法 | |
JP6432348B2 (ja) | 演算装置及び演算方法 | |
US20070220236A1 (en) | Reconfigurable computing device | |
JP2001157049A5 (ja) | ||
CN111209230B (zh) | 数据处理装置、方法及相关产品 | |
US7076641B2 (en) | Programmable controller | |
JP2008102599A (ja) | プロセッサ | |
US10776139B2 (en) | Simulation apparatus, simulation method, and computer readable medium | |
JP2013242816A (ja) | Dspカード及びデータ転送方法 | |
US20080288952A1 (en) | Processing apparatus and device control unit | |
JP2010033336A (ja) | 信号処理装置及び信号処理方法 | |
JP3982077B2 (ja) | マルチプロセッサシステム | |
JP3558057B2 (ja) | 音声符号化装置及びその方法 | |
JP2010113442A (ja) | データ保持装置 | |
JP2004362446A (ja) | 計算機及び計算方法 | |
CN115964085A (zh) | 运算单元和矩阵转置及运算融合执行方法 | |
JP2007323491A (ja) | ダイレクトメモリアクセス制御装置および制御方法 | |
JPS6240737B2 (ja) | ||
JP4413905B2 (ja) | Simd型プロセッサ | |
JP2006146641A (ja) | マルチスレッドプロセッサ及びマルチスレッドプロセッサの割込み方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110704 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110726 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110818 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140826 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4809497 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |