JP2010039737A - プログラマブルコントローラ高速化方式およびこの方式によるプログラマブルコントローラ - Google Patents
プログラマブルコントローラ高速化方式およびこの方式によるプログラマブルコントローラ Download PDFInfo
- Publication number
- JP2010039737A JP2010039737A JP2008201501A JP2008201501A JP2010039737A JP 2010039737 A JP2010039737 A JP 2010039737A JP 2008201501 A JP2008201501 A JP 2008201501A JP 2008201501 A JP2008201501 A JP 2008201501A JP 2010039737 A JP2010039737 A JP 2010039737A
- Authority
- JP
- Japan
- Prior art keywords
- ram
- backup
- speed
- data
- cpu
- 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
Images
Landscapes
- Programmable Controllers (AREA)
Abstract
【課題】低速のバックアップRAMを備えるPLCにおいて、その制御動作を高速化すること。
【解決手段】本PLCは、CPU4aと高速RAM4bとバックアップRAM9との三者間に介在するFPGA10を具備し、FPGA10は、CPU4aから次々に送られるバックアップデータを高速RAM4bに次々に書き込んでは消去することでバックアップデータの高速書き込みを可能とする一方、高速RAM4bに順次書き込んだバックアップデータを上記消去前にバックアップRAM9にその速度に合わせて順次にコピーする制御を行う。
【選択図】図1
【解決手段】本PLCは、CPU4aと高速RAM4bとバックアップRAM9との三者間に介在するFPGA10を具備し、FPGA10は、CPU4aから次々に送られるバックアップデータを高速RAM4bに次々に書き込んでは消去することでバックアップデータの高速書き込みを可能とする一方、高速RAM4bに順次書き込んだバックアップデータを上記消去前にバックアップRAM9にその速度に合わせて順次にコピーする制御を行う。
【選択図】図1
Description
本発明は、ユーザが作成したシーケンスプログラムに基づいてシーケンス制御を行うプログラマブルコントローラ(PLC)にかかわり、特にはPLCの高速化方式に関するものである。
PLCはシーケンスプログラムを実行してそれに接続された制御機器をシーケンス制御するようになっている。このようなプログラマブルコントローラには、CPUモジュールにはPLCバスを介して複数の入出力モジュール等の各種モジュールが接続されている。CPUモジュール内のCPUは、シーケンスプログラムの実行により、例えば入出力モジュールは、CPUからのデータ送信要求に応答してセンサなどの入力デバイスからのデータをCPUに送信したり、CPUからの制御指令に応答してアクチュエータなどの出力デバイスを制御する。
このようなPLCについて図4を参照して説明すると、このPLCは、モジュールバス1に、CPUモジュール2と、I/Oモジュール3とが接続されている。図面では図解の都合でI/Oモジュールは1つ示す。また、他の形式のモジュールの図示を略している。CPUモジュール2は、CPU4aと高速RAM4bとを含むMCU(マイクロコントロールユニット)4と、システムプログラムを格納するシステムROM5と、シーケンスプログラムを格納するプログラムROM6と、CPUの作業等に用いるワークRAM7と、を備えると共に、二次電池等のバックアップ電源8でバックアップが必要なデータを保存するバックアップRAM9とを備える。バックアップRAM9にバックアップされるデータは、例えばPLCで用いるレジスタ、タイマ、カウンタ等の各種変数のパラメータである。PLCが次の立ち上げ時に、前回のデータが必要となる場合があり、そのため、バックアップRAM9にはそのデータがバックアップされるのである。ところで、バックアップRAM9は容量は大きいが書き込み速度が低速であるために、PLCの制御動作が低速化しているという課題がある。
そして、一方、高速RAM4bはCPU4aに付属されたRAMであり、高速で書き込み動作が可能であるものの、小容量であるためにユーザにはほとんど使用されていないRAMとなっていた。なお、バックアップRAM9を備えたプログラマブルコントローラの特許文献として特開2001−350508号がある。
特開2001−350508号
本発明は、低速のバックアップRAMより高速の各種メモリを備えたPLCにおいて、その制御動作を高速化することである。
本発明によるプログラマブルコントローラ高速化方式は、シーケンスプログラムを実行するCPUと、バックアップデータを高速で書き込み動作することが可能な小容量の高速RAMと、バックアップ電源でバックアップデータが保持されるものでその書き込み動作が高速RAMよりも低速で高速RAMよりも大容量のバックアップRAMと、を備えたプログラマブルコントローラにおいて当該プログラマブルコントローラの高速化方式であって、上記CPUと高速RAMとバックアップRAMとの三者間にFPGAを介在させ、上記FPGAにより、上記CPUから次々に送られるバックアップデータを高速RAMに次々に書き込んでは消去することでバックアップデータの高速書き込みを可能とする一方、高速RAMに順次書き込んだバックアップデータを上記消去前に上記バックアップRAMに当該バックアップRAMの速度に合わせて順次にコピーする制御を行うことを特徴とするものである。
本発明において、好ましい態様は、上記FPGAは、バックアップRAM内のメモリ領域を高速RAMの容量単位で、複数に分割し、各分割メモリ領域それぞれにアドレスを付ける一方、高速RAMからの書き込み・読み込みアクセスとバックアップRAMへの書き込みアクセスを同一アドレスに管理すると共に、上記CPUからバックアップデータが送られるごとに高速RAMへの書き込み・読み込みアドレスをバックアップRAM内の分割メモリ領域それぞれの書き込みアドレス上を移動させていくことである。
本発明によれば、CPUからはバックアップデータをバックアップRAMに直接書き込むのではなく、高速RAMに書き込んでから、バックアップRAMにコピーしていくようにしているので、PLCとしてはバックアップデータを高速で書き込むことができる結果となり、PLCの制御動作の高速化を図ることができる。そして、上記態様では、高速RAMは小容量であるものの、高速RAMに書き込んでは消去し、その消去前には、高速RAMよりも容量が大きいバックアップRAMにコピーすると共に、そのバックアップRAMのアドレス上を移動させてコピーさせていくので、PLCの制御動作の高速化が可能となる。
本発明によると、低速のバックアップRAMにバックアップデータを保持するPLCにおいて、その制御動作を高速化することができる。
以下、添付した図面を参照して、本発明の実施の形態に係るPLC高速化方式を説明する。
図1は実施の形態の方式を備えたプログラマブルコントローラの概略構成を示し、同図において、1はモジュールバス、2はCPUモジュール、3はI/Oモジュールである。CPUモジュール2は、CPU4aと高速RAM4bとを含むMCU4と、システムROM5と、プログラムROM6と、ワークRAM7と、バックアップ電源8でバックアップされるバックアップRAM9とを含むと共に、CPU4aと高速RAM4bとバックアップRAM8との三者間に介在するアドレスと書き込みデータとを管理するFPGA(Field Programmable Gate Arrayの略称で、エフ・ピー・ジー・エイと称する)10と、を具備している。なお、FPGA10のコンフィグレーションデータのメモリの図示を略している。FPGA10は、SRAMセル方式のものであり、論理ブロックと入出力ブロックと配線とを有する書換え可能な半導体集積回路により構成されている。FPGA10は、コンフィグレーションデータメモリに記憶された回路構成のデータを読み込んで所望の回路構成にコンフィグレーションされる。
以下、図2、図3を参照してバックアップRAM9へのバックアップデータの書き込み動作を説明する。CPU4aは、I/Oモジュール3等からのデータをワークRAM7等に書き込んだりして各種作業を実行する一方、PLCの動作に必要とする各種変数のパラメータを次の立ち上げ時のためにバックアップすべくバックアップRAM9に書き込むようにしている。そしてCPU4aからFPGA10には、その書き込みアドレスと、バックアップデータとが次々に送られてくる。FPGA10は、そのバックアップデータをバックアップRAM9ではなく高速RAM4bに次々に書き込んでは消去させていく一方で、高速RAM4bに順次書き込んだバックアップデータを上記消去前にバックアップRAM9にその速度に合わせて順次にコピーする制御を行うようになっている。
FPGA10の制御動作を詳しく説明すると、バックアップRAM9は、図2のごとく、バックアップRAM9内のメモリ領域を高速RAM4bの容量単位で複数に分割され、各分割メモリ領域それぞれにアドレスを付ける。例えばバックアップRAM9の容量が512KBで、高速RAM4bの容量が32KBであれば、バックアップRAM9は16個の分割メモリ領域に分割される。そしてそれぞれのアドレスをADD1,ADD2,ADD3,…と付けていく。なお、1回のアクセス単位でデータをバックアップするのに必要なメモリ容量は高速RAM4bの容量以下で例えば好ましくは数KB程度を前提とする。
FPGA10は、さらに、高速RAM4bへの書き込み・読み出しアクセスとバックアップRAMへの書き込みアクセスとを同一アドレスに管理する。これにより、FPGA10は、高速RAM4bにおけるバックアップデータの書き込みと読み出しアドレスをバックアップRAM9の分割メモリ領域のアドレス上を移動させながら、高速で高速RAM4bにバックアップデータを順次書き込ませる一方で、順次読み出してはCPU4aからのバックアップデータをバックアップRAM9内の各アドレス上の分割メモリ領域にコピーさせていく。
すなわち、図2で示すように、バックアップRAM9のアドレスADD1,ADD2,ADD3,…上の各メモリ領域にはデータA,B,C,…が保持されている。そして、図3(a)で示すようにFPGA10はCPU4aからデータA´をバックアップRAM9の所定の実アドレス上のメモリ領域に書き込むための実アドレスを管理する。
そしてFPGA10は、データA´をバックアップRAM9のアドレスADD1上に書き込むために、高速RAM4bの書き込み・読み込みアドレスをバックアップRAM9の書き込みアドレスADD1と同一のアドレスADD1として高速RAM4bにデータA´を書き込み、この書き込みが終了すると、高速RAM4bからデータA´を同一アドレスADD1で読み出し、読み出したデータA´をバックアップRAM9のアドレスADD1のメモリ領域に書き込みコピーする(リードモディファイライト動作)。そしてこのコピーの後に、高速RAM4bに書き込まれていたデータA´を消去して次のデータB´の書き込みに備える。この場合、FPGA10は、読み出したデータA´をバックアップRAM9の速度に合わせてそのアドレスADD1に書き込む。
そして、次に、図3(b)で示すように、FPGA10はCPU4aからデータB´をバックアップRAM9の所定の実アドレス上のメモリ領域に書き込む実アドレスを管理すると共に、データB´をバックアップRAM9のアドレスADD2上に書き込むために、高速RAM4bの書き込み・読み込みアドレスをアドレスADD2(リロケータブルアドレス)として高速RAM4bにデータB´を書き込み、この書き込みが終了すると、高速RAM4bからアドレスADD2でデータB´を読み出すと共に、バックアップRAM9のアドレスADD2のメモリ領域にデータB´をコピーする。そしてこのコピーの後に、高速RAM4bに書き込まれていたデータB´を消去して次のデータC´の書き込みに備える。この場合、FPGA10は、読み出したデータB´をバックアップRAM9の速度に合わせてそのアドレスADD1に書き込む。
以降、次のデータC´を図3(c)で示すように、またそれ以降のデータも同様にバックアップRAM9の各アドレス領域に書き込んでいく。
なお、PLCが次の立ち上げでCPU4aが実アドレスでバックアップRAM9内のデータA´、B´、C´…を読み出す場合、FPGA10は、バックアップRAM9からはその実アドレスに対応するアドレスADD1,ADD2,ADD3…に書き込まれているバックアップデータを読み出すように管理する。
こうして、実施の形態では、CPU4aからはバックアップデータをバックアップRAM9に直接書き込むのではなく、高速RAM4bに書き込んでから、バックアップRAM9にコピーしていくようにしているので、PLCとしてはバックアップデータを高速で書き込むことができる結果となり、PLCの制御動作の高速化を図ることができる。
1 モジュールバス
2 CPUモジュール
3 I/Oモジュール
4 MCU(CPU4aと高速RAM4bとを含む)
9 バックアップRAM
10 FPGA
2 CPUモジュール
3 I/Oモジュール
4 MCU(CPU4aと高速RAM4bとを含む)
9 バックアップRAM
10 FPGA
Claims (3)
- シーケンスプログラムを実行するCPUと、バックアップデータを高速で書き込み動作することが可能な小容量の高速RAMと、バックアップ電源でバックアップデータが保持されるものでその書き込み動作が高速RAMよりも低速で高速RAMよりも大容量のバックアップRAMと、を備えたプログラマブルコントローラにおいて当該プログラマブルコントローラの高速化方式であって、
上記CPUと高速RAMとバックアップRAMとの三者間にFPGAを介在させ、上記FPGAにより、上記CPUから順次送られるバックアップデータを高速RAMに順次書き込んでは消去することでバックアップデータの高速書き込みを可能とする一方、高速RAMに順次書き込んだバックアップデータを上記消去前に上記バックアップRAMに当該バックアップRAMの速度に合わせて順次にコピーする制御を行う、プログラマブルコントローラ高速化方式。 - 上記FPGAは、バックアップRAM内のメモリ領域を高速RAMの容量単位で、複数に分割し、各分割メモリ領域それぞれにアドレスを付ける一方、高速RAMからの書き込み・読み込みアクセスとバックアップRAMへの書き込みアクセスを同一アドレスに管理すると共に、上記CPUからバックアップデータが送られるごとに高速RAMへの書き込み・読み込みアドレスをバックアップRAM内の分割メモリ領域それぞれの書き込みアドレス上を移動させていく制御を行う、請求項1に記載の方式。
- 請求項1または2に記載の方式を有するプログラマブルコントローラ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008201501A JP2010039737A (ja) | 2008-08-05 | 2008-08-05 | プログラマブルコントローラ高速化方式およびこの方式によるプログラマブルコントローラ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008201501A JP2010039737A (ja) | 2008-08-05 | 2008-08-05 | プログラマブルコントローラ高速化方式およびこの方式によるプログラマブルコントローラ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010039737A true JP2010039737A (ja) | 2010-02-18 |
Family
ID=42012225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008201501A Pending JP2010039737A (ja) | 2008-08-05 | 2008-08-05 | プログラマブルコントローラ高速化方式およびこの方式によるプログラマブルコントローラ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010039737A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103187967A (zh) * | 2011-12-29 | 2013-07-03 | 深圳市汇川控制技术有限公司 | 基于fpga的plc高速脉冲计数实现系统及方法 |
KR101593835B1 (ko) * | 2014-10-30 | 2016-02-12 | 엘에스산전 주식회사 | Plc 시스템 |
CN111007983A (zh) * | 2018-10-05 | 2020-04-14 | 三星电子株式会社 | 在读取回收操作中使用缓冲存储器的存储设备 |
-
2008
- 2008-08-05 JP JP2008201501A patent/JP2010039737A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103187967A (zh) * | 2011-12-29 | 2013-07-03 | 深圳市汇川控制技术有限公司 | 基于fpga的plc高速脉冲计数实现系统及方法 |
CN103187967B (zh) * | 2011-12-29 | 2016-02-10 | 深圳市汇川控制技术有限公司 | 基于fpga的plc高速脉冲计数实现系统及方法 |
KR101593835B1 (ko) * | 2014-10-30 | 2016-02-12 | 엘에스산전 주식회사 | Plc 시스템 |
US10007245B2 (en) | 2014-10-30 | 2018-06-26 | Lsis Co., Ltd. | PLC system and operating method thereof |
CN111007983A (zh) * | 2018-10-05 | 2020-04-14 | 三星电子株式会社 | 在读取回收操作中使用缓冲存储器的存储设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5661227B2 (ja) | メモリコントローラ | |
JP4884382B2 (ja) | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法 | |
JP5021220B2 (ja) | 不揮発性メモリ装置及びそのマルチページコピーバック方法 | |
JP4713867B2 (ja) | メモリコントローラ,メモリ装置及びメモリコントローラの制御方法 | |
JP6554184B2 (ja) | ソフトプロセッサベースの画像信号ソースシステムおよび画像信号処理方法 | |
JP2006092019A (ja) | コントローラ、メモリカード及びその制御方法 | |
JP2005222228A (ja) | メモリカード及び半導体装置 | |
US7093071B2 (en) | Queued copy command | |
KR20070118533A (ko) | 불휘발성 메모리 | |
US20170269870A1 (en) | Memory controller, nonvolatile storage device, nonvolatile storage system, and memory control method | |
JP2003317489A (ja) | 不揮発性半導体記憶装置、そのデータ書き込み制御方法およびプログラム | |
CN101025711B (zh) | 控制闪存的设备和方法 | |
JP2010039737A (ja) | プログラマブルコントローラ高速化方式およびこの方式によるプログラマブルコントローラ | |
JP2010015316A (ja) | 数値制御装置 | |
JP2008027326A (ja) | システムコントローラ、該システムコントローラを有するフラッシュメモリシステム、フラッシュメモリモジュールの制御方法 | |
JP2006127623A (ja) | 半導体記憶装置とそのアクセス方法 | |
JP2012022479A (ja) | マイクロコントローラ及びその制御方法 | |
US20100329027A1 (en) | Nonvolatile memory device and method of operating the same | |
JP2008084288A (ja) | メモリ制御装置 | |
JP4382131B2 (ja) | 半導体ディスク装置 | |
JP2009223435A (ja) | データ記憶方法及び装置、並びにプログラム | |
JP2005202976A (ja) | 電子機器 | |
JP2019016124A (ja) | プログラマブルコントローラ | |
KR102254101B1 (ko) | 데이터 처리 시스템 및 이의 동작 방법 | |
KR100970933B1 (ko) | 오퍼레이팅 시스템의 고속 부팅장치 및 방법 |