(57)【要約】【課題】低速のバックアップＲＡＭを備えるＰＬＣにおいて、その制御動作を高速化すること。【解決手段】本ＰＬＣは、ＣＰＵ４ａと高速ＲＡＭ４ｂとバックアップＲＡＭ９との三者間に介在するＦＰＧＡ１０を具備し、ＦＰＧＡ１０は、ＣＰＵ４ａから次々に送られるバックアップデータを高速ＲＡＭ４ｂに次々に書き込んでは消去することでバックアップデータの高速書き込みを可能とする一方、高速ＲＡＭ４ｂに順次書き込んだバックアップデータを上記消去前にバックアップＲＡＭ９にその速度に合わせて順次にコピーする制御を行う。【選択図】図１
2010039737.tif 000002
【特許請求の範囲】
【請求項１】
シーケンスプログラムを実行するＣＰＵと、バックアップデータを高速で書き込み動作することが可能な小容量の高速ＲＡＭと、バックアップ電源でバックアップデータが保持されるものでその書き込み動作が高速ＲＡＭよりも低速で高速ＲＡＭよりも大容量のバックアップＲＡＭと、を備えたプログラマブルコントローラにおいて当該プログラマブルコントローラの高速化方式であって、
上記ＣＰＵと高速ＲＡＭとバックアップＲＡＭとの三者間にＦＰＧＡを介在させ、上記ＦＰＧＡにより、上記ＣＰＵから順次送られるバックアップデータを高速ＲＡＭに順次書き込んでは消去することでバックアップデータの高速書き込みを可能とする一方、高速ＲＡＭに順次書き込んだバックアップデータを上記消去前に上記バックアップＲＡＭに当該バックアップＲＡＭの速度に合わせて順次にコピーする制御を行う、プログラマブルコントローラ高速化方式。
【請求項２】
上記ＦＰＧＡは、バックアップＲＡＭ内のメモリ領域を高速ＲＡＭの容量単位で、複数に分割し、各分割メモリ領域それぞれにアドレスを付ける一方、高速ＲＡＭからの書き込み・読み込みアクセスとバックアップＲＡＭへの書き込みアクセスを同一アドレスに管理すると共に、上記ＣＰＵからバックアップデータが送られるごとに高速ＲＡＭへの書き込み・読み込みアドレスをバックアップＲＡＭ内の分割メモリ領域それぞれの書き込みアドレス上を移動させていく制御を行う、請求項１に記載の方式。
【請求項３】
請求項１または２に記載の方式を有するプログラマブルコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザが作成したシーケンスプログラムに基づいてシーケンス制御を行うプログラマブルコントローラ（ＰＬＣ）にかかわり、特にはＰＬＣの高速化方式に関するものである。
【背景技術】
【０００２】
ＰＬＣはシーケンスプログラムを実行してそれに接続された制御機器をシーケンス制御するようになっている。このようなプログラマブルコントローラには、ＣＰＵモジュールにはＰＬＣバスを介して複数の入出力モジュール等の各種モジュールが接続されている。ＣＰＵモジュール内のＣＰＵは、シーケンスプログラムの実行により、例えば入出力モジュールは、ＣＰＵからのデータ送信要求に応答してセンサなどの入力デバイスからのデータをＣＰＵに送信したり、ＣＰＵからの制御指令に応答してアクチュエータなどの出力デバイスを制御する。
【０００３】
このようなＰＬＣについて図４を参照して説明すると、このＰＬＣは、モジュールバス１に、ＣＰＵモジュール２と、Ｉ／Ｏモジュール３とが接続されている。図面では図解の都合でＩ／Ｏモジュールは１つ示す。また、他の形式のモジュールの図示を略している。ＣＰＵモジュール２は、ＣＰＵ４ａと高速ＲＡＭ４ｂとを含むＭＣＵ（マイクロコントロールユニット）４と、システムプログラムを格納するシステムＲＯＭ５と、シーケンスプログラムを格納するプログラムＲＯＭ６と、ＣＰＵの作業等に用いるワークＲＡＭ７と、を備えると共に、二次電池等のバックアップ電源８でバックアップが必要なデータを保存するバックアップＲＡＭ９とを備える。バックアップＲＡＭ９にバックアップされるデータは、例えばＰＬＣで用いるレジスタ、タイマ、カウンタ等の各種変数のパラメータである。ＰＬＣが次の立ち上げ時に、前回のデータが必要となる場合があり、そのため、バックアップＲＡＭ９にはそのデータがバックアップされるのである。ところで、バックアップＲＡＭ９は容量は大きいが書き込み速度が低速であるために、ＰＬＣの制御動作が低速化しているという課題がある。
【０００４】
そして、一方、高速ＲＡＭ４ｂはＣＰＵ４ａに付属されたＲＡＭであり、高速で書き込み動作が可能であるものの、小容量であるためにユーザにはほとんど使用されていないＲＡＭとなっていた。なお、バックアップＲＡＭ９を備えたプログラマブルコントローラの特許文献として特開２００１−３５０５０８号がある。
【特許文献１】特開２００１−３５０５０８号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、低速のバックアップＲＡＭより高速の各種メモリを備えたＰＬＣにおいて、その制御動作を高速化することである。
【課題を解決するための手段】
【０００６】
本発明によるプログラマブルコントローラ高速化方式は、シーケンスプログラムを実行するＣＰＵと、バックアップデータを高速で書き込み動作することが可能な小容量の高速ＲＡＭと、バックアップ電源でバックアップデータが保持されるものでその書き込み動作が高速ＲＡＭよりも低速で高速ＲＡＭよりも大容量のバックアップＲＡＭと、を備えたプログラマブルコントローラにおいて当該プログラマブルコントローラの高速化方式であって、上記ＣＰＵと高速ＲＡＭとバックアップＲＡＭとの三者間にＦＰＧＡを介在させ、上記ＦＰＧＡにより、上記ＣＰＵから次々に送られるバックアップデータを高速ＲＡＭに次々に書き込んでは消去することでバックアップデータの高速書き込みを可能とする一方、高速ＲＡＭに順次書き込んだバックアップデータを上記消去前に上記バックアップＲＡＭに当該バックアップＲＡＭの速度に合わせて順次にコピーする制御を行うことを特徴とするものである。
【０００７】
本発明において、好ましい態様は、上記ＦＰＧＡは、バックアップＲＡＭ内のメモリ領域を高速ＲＡＭの容量単位で、複数に分割し、各分割メモリ領域それぞれにアドレスを付ける一方、高速ＲＡＭからの書き込み・読み込みアクセスとバックアップＲＡＭへの書き込みアクセスを同一アドレスに管理すると共に、上記ＣＰＵからバックアップデータが送られるごとに高速ＲＡＭへの書き込み・読み込みアドレスをバックアップＲＡＭ内の分割メモリ領域それぞれの書き込みアドレス上を移動させていくことである。
【０００８】
本発明によれば、ＣＰＵからはバックアップデータをバックアップＲＡＭに直接書き込むのではなく、高速ＲＡＭに書き込んでから、バックアップＲＡＭにコピーしていくようにしているので、ＰＬＣとしてはバックアップデータを高速で書き込むことができる結果となり、ＰＬＣの制御動作の高速化を図ることができる。そして、上記態様では、高速ＲＡＭは小容量であるものの、高速ＲＡＭに書き込んでは消去し、その消去前には、高速ＲＡＭよりも容量が大きいバックアップＲＡＭにコピーすると共に、そのバックアップＲＡＭのアドレス上を移動させてコピーさせていくので、ＰＬＣの制御動作の高速化が可能となる。
【発明の効果】
【０００９】
本発明によると、低速のバックアップＲＡＭにバックアップデータを保持するＰＬＣにおいて、その制御動作を高速化することができる。
【発明を実施するための最良の形態】
【００１０】
以下、添付した図面を参照して、本発明の実施の形態に係るＰＬＣ高速化方式を説明する。
【００１１】
図１は実施の形態の方式を備えたプログラマブルコントローラの概略構成を示し、同図において、１はモジュールバス、２はＣＰＵモジュール、３はＩ／Ｏモジュールである。ＣＰＵモジュール２は、ＣＰＵ４ａと高速ＲＡＭ４ｂとを含むＭＣＵ４と、システムＲＯＭ５と、プログラムＲＯＭ６と、ワークＲＡＭ７と、バックアップ電源８でバックアップされるバックアップＲＡＭ９とを含むと共に、ＣＰＵ４ａと高速ＲＡＭ４ｂとバックアップＲＡＭ８との三者間に介在するアドレスと書き込みデータとを管理するＦＰＧＡ（Field Programmable Gate Arrayの略称で、エフ・ピー・ジー・エイと称する）１０と、を具備している。なお、ＦＰＧＡ１０のコンフィグレーションデータのメモリの図示を略している。ＦＰＧＡ１０は、ＳＲＡＭセル方式のものであり、論理ブロックと入出力ブロックと配線とを有する書換え可能な半導体集積回路により構成されている。ＦＰＧＡ１０は、コンフィグレーションデータメモリに記憶された回路構成のデータを読み込んで所望の回路構成にコンフィグレーションされる。
【００１２】
以下、図２、図３を参照してバックアップＲＡＭ９へのバックアップデータの書き込み動作を説明する。ＣＰＵ４ａは、Ｉ／Ｏモジュール３等からのデータをワークＲＡＭ７等に書き込んだりして各種作業を実行する一方、ＰＬＣの動作に必要とする各種変数のパラメータを次の立ち上げ時のためにバックアップすべくバックアップＲＡＭ９に書き込むようにしている。そしてＣＰＵ４ａからＦＰＧＡ１０には、その書き込みアドレスと、バックアップデータとが次々に送られてくる。ＦＰＧＡ１０は、そのバックアップデータをバックアップＲＡＭ９ではなく高速ＲＡＭ４ｂに次々に書き込んでは消去させていく一方で、高速ＲＡＭ４ｂに順次書き込んだバックアップデータを上記消去前にバックアップＲＡＭ９にその速度に合わせて順次にコピーする制御を行うようになっている。
【００１３】
ＦＰＧＡ１０の制御動作を詳しく説明すると、バックアップＲＡＭ９は、図２のごとく、バックアップＲＡＭ９内のメモリ領域を高速ＲＡＭ４ｂの容量単位で複数に分割され、各分割メモリ領域それぞれにアドレスを付ける。例えばバックアップＲＡＭ９の容量が５１２ＫＢで、高速ＲＡＭ４ｂの容量が３２ＫＢであれば、バックアップＲＡＭ９は１６個の分割メモリ領域に分割される。そしてそれぞれのアドレスをＡＤＤ１，ＡＤＤ２，ＡＤＤ３，…と付けていく。なお、１回のアクセス単位でデータをバックアップするのに必要なメモリ容量は高速ＲＡＭ４ｂの容量以下で例えば好ましくは数ＫＢ程度を前提とする。
【００１４】
ＦＰＧＡ１０は、さらに、高速ＲＡＭ４ｂへの書き込み・読み出しアクセスとバックアップＲＡＭへの書き込みアクセスとを同一アドレスに管理する。これにより、ＦＰＧＡ１０は、高速ＲＡＭ４ｂにおけるバックアップデータの書き込みと読み出しアドレスをバックアップＲＡＭ９の分割メモリ領域のアドレス上を移動させながら、高速で高速ＲＡＭ４ｂにバックアップデータを順次書き込ませる一方で、順次読み出してはＣＰＵ４ａからのバックアップデータをバックアップＲＡＭ９内の各アドレス上の分割メモリ領域にコピーさせていく。
【００１５】
すなわち、図２で示すように、バックアップＲＡＭ９のアドレスＡＤＤ１，ＡＤＤ２，ＡＤＤ３，…上の各メモリ領域にはデータＡ，Ｂ，Ｃ，…が保持されている。そして、図３（ａ）で示すようにＦＰＧＡ１０はＣＰＵ４ａからデータＡ´をバックアップＲＡＭ９の所定の実アドレス上のメモリ領域に書き込むための実アドレスを管理する。
【００１６】
そしてＦＰＧＡ１０は、データＡ´をバックアップＲＡＭ９のアドレスＡＤＤ１上に書き込むために、高速ＲＡＭ４ｂの書き込み・読み込みアドレスをバックアップＲＡＭ９の書き込みアドレスＡＤＤ１と同一のアドレスＡＤＤ１として高速ＲＡＭ４ｂにデータＡ´を書き込み、この書き込みが終了すると、高速ＲＡＭ４ｂからデータＡ´を同一アドレスＡＤＤ１で読み出し、読み出したデータＡ´をバックアップＲＡＭ９のアドレスＡＤＤ１のメモリ領域に書き込みコピーする（リードモディファイライト動作）。そしてこのコピーの後に、高速ＲＡＭ４ｂに書き込まれていたデータＡ´を消去して次のデータＢ´の書き込みに備える。この場合、ＦＰＧＡ１０は、読み出したデータＡ´をバックアップＲＡＭ９の速度に合わせてそのアドレスＡＤＤ１に書き込む。
【００１７】
そして、次に、図３（ｂ）で示すように、ＦＰＧＡ１０はＣＰＵ４ａからデータＢ´をバックアップＲＡＭ９の所定の実アドレス上のメモリ領域に書き込む実アドレスを管理すると共に、データＢ´をバックアップＲＡＭ９のアドレスＡＤＤ２上に書き込むために、高速ＲＡＭ４ｂの書き込み・読み込みアドレスをアドレスＡＤＤ２（リロケータブルアドレス）として高速ＲＡＭ４ｂにデータＢ´を書き込み、この書き込みが終了すると、高速ＲＡＭ４ｂからアドレスＡＤＤ２でデータＢ´を読み出すと共に、バックアップＲＡＭ９のアドレスＡＤＤ２のメモリ領域にデータＢ´をコピーする。そしてこのコピーの後に、高速ＲＡＭ４ｂに書き込まれていたデータＢ´を消去して次のデータＣ´の書き込みに備える。この場合、ＦＰＧＡ１０は、読み出したデータＢ´をバックアップＲＡＭ９の速度に合わせてそのアドレスＡＤＤ１に書き込む。
【００１８】
以降、次のデータＣ´を図３（ｃ）で示すように、またそれ以降のデータも同様にバックアップＲＡＭ９の各アドレス領域に書き込んでいく。
【００１９】
なお、ＰＬＣが次の立ち上げでＣＰＵ４ａが実アドレスでバックアップＲＡＭ９内のデータＡ´、Ｂ´、Ｃ´…を読み出す場合、ＦＰＧＡ１０は、バックアップＲＡＭ９からはその実アドレスに対応するアドレスＡＤＤ１，ＡＤＤ２，ＡＤＤ３…に書き込まれているバックアップデータを読み出すように管理する。
【００２０】
こうして、実施の形態では、ＣＰＵ４ａからはバックアップデータをバックアップＲＡＭ９に直接書き込むのではなく、高速ＲＡＭ４ｂに書き込んでから、バックアップＲＡＭ９にコピーしていくようにしているので、ＰＬＣとしてはバックアップデータを高速で書き込むことができる結果となり、ＰＬＣの制御動作の高速化を図ることができる。
【図面の簡単な説明】
【００２１】
【図１】図１は本発明の実施形態に係る方式を備えたプログラマブルコントローラの概略構成を示す図である。
【図２】図２は図１のバックアップＲＡＭの分割メモリ領域を示す図である。
【図３】図３は高速ＲＡＭからバックアップＲＡＭへのデータの書き込みの説明に供する図である。
【図４】図４は従来のプログラマブルコントローラシステムの構成を示す図である。
【符号の説明】
【００２２】
１  モジュールバス
２  ＣＰＵモジュール
３  Ｉ／Ｏモジュール
４  ＭＣＵ（ＣＰＵ４ａと高速ＲＡＭ４ｂとを含む）
９  バックアップＲＡＭ
１０  ＦＰＧＡ
【図１】
2010039737.tif 000003
【図２】
2010039737.tif 000004
【図３】
2010039737.tif 000005
【図４】
2010039737.tif 000006