(57)【要約】【課題】ＰＬＣのデータ処理速度等の特性の向上に貢献可能な技術を提供する。【解決手段】ＰＬＣ１ａにおいて、シーケンス制御を実行する演算部１０および内部メモリ２１を有した演算回路部１１と、バックアップ用データを記憶できる外部メモリ２３と、を備える。演算回路部１１は、演算部１０からの制御信号により、内部メモリ２１または外部メモリ２３をアクセス先として決定するアクセスコントローラ３２と、アクセスコントローラ３２からの制御信号により、アクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラ３５と、を備える。そして、メモリコントローラ３５により、内部メモリ２１と外部メモリ２３との両者間を接続し、当該内部メモリ２１に書き込まれるデータと同じものを外部メモリ２３に書き込む。【選択図】図１
2019016124.tif 000002
【特許請求の範囲】
【請求項１】
シーケンス制御を実行する演算部および内部メモリを有した演算回路部と、バックアップ用データを記憶できる外部メモリと、を備え、
演算回路部は、
演算部からの制御信号により、内部メモリまたは外部メモリをアクセス先として決定するアクセスコントローラと、
アクセスコントローラからの制御信号により、アクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラと、を備え、
メモリコントローラにより、内部メモリと外部メモリとの両者間が接続され、当該内部メモリに書き込まれるデータと同じものが外部メモリに書き込まれることを特徴とするプログラマブルコントローラ。
【請求項２】
メモリコントローラは、内部メモリと外部メモリとの両者のデータを双方向に読み書きすることを特徴とする請求項１記載のプログラマブルコントローラ。
【請求項３】
演算回路部は、
アクセスコントローラから出力されたデータを記憶し、メモリコントローラからの制御信号により当該データを外部メモリに出力するＦＩＦＯバッファと、
内部メモリおよび外部メモリの両者間に接続され、メモリコントローラからの制御信号により当該両者のデータをアクセスコントローラに対して選択的に入力するマルチプレクサと、を備えたことを特徴とする請求項１記載のプログラマブルコントローラ。
【請求項４】
演算回路部は、
内部メモリに書き込まれるデータのアドレスをそれぞれ１ビットで割り付けたビット群が記憶され、当該ビット群情報がメモリコントローラによって読み出される書き込みアドレスレジスタと、
内部メモリおよび外部メモリの両者間に接続され、メモリコントローラからの制御信号により当該両者のデータをアクセスコントローラに対して選択的に入力するマルチプレクサと、を備え、
メモリコントローラにより、内部メモリに記憶されているデータが外部メモリに出力されることを特徴とする請求項１記載のプログラマブルコントローラ。
【請求項５】
内部メモリは、２ポート式であることを特徴とする請求項３または４記載のプログラマブルコントローラ。
【請求項６】
演算回路部の電源断の状態を検出して当該演算回路部を制御する電源断検出回路を備えていることを特徴とする請求項１〜５の何れかに記載のプログラマブルコントローラ。
【請求項７】
シーケンス制御を実行する演算部および内部メモリを有した演算回路部と、バックアップ用データを記憶できる外部メモリと、を備え、
演算回路部は、ＦＰＧＡによって構成され、外部メモリに記憶されているコンフィグレーションデータによってコンフィグレーションし、
演算部からの制御信号により内部メモリまたは外部メモリをアクセス先として決定するアクセスコントローラと、
アクセスコントローラからの制御信号によりアクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラと、を構成し、
メモリコントローラにより、内部メモリと外部メモリとの両者間が接続され、当該内部メモリに書き込まれるデータと同じものが外部メモリに書き込まれ、
メモリコントローラは、内部メモリと外部メモリとの両者のデータを双方向に変換するデータ変換機能を有していることを特徴とするプログラマブルコントローラ。
【請求項８】
シーケンス制御を実行する演算部および内部メモリを有した演算回路部と、バックアップ用データを記憶できる外部メモリと、を備え、
演算回路部は、ＦＰＧＡによって構成され、外部メモリに記憶されているコンフィグレーションデータによってコンフィグレーションし、
演算部からの制御信号により内部メモリまたは外部メモリをアクセス先として決定するアクセスコントローラと、
アクセスコントローラからの制御信号によりアクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラと、を構成し、
メモリコントローラにより、内部メモリと外部メモリとの両者間に接続され、当該内部メモリに書き込まれるデータと同じものが外部メモリに書き込まれ、
外部メモリと演算回路部との両者間が、両者のデータを双方向に変換するデータ変換回路部によって接続されていることを特徴とするプログラマブルコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば各種機器の制御に適用されているプログラマブルコントローラに貢献する技術に係るものである。
【背景技術】
【０００２】
各種設備（水処理設備，電力設備等）のシーケンス制御に適用されているプログラマブルコントローラ（以下、単にＰＬＣと適宜称する）においては、演算部（ＣＰＵ等の演算処理装置）による所望の演算処理や各種データのバックアップ等を図るだけでなく、データ処理速度の高速化を図ることが検討されている。
【０００３】
例えば、演算回路部に内蔵されたメモリ（以下、単に内部メモリと適宜称する）や当該演算回路部の外部のメモリ（以下、単に外部メモリと適宜称する）を利用するだけでなく、演算部と各メモリとの間に介在するアクセスコントローラ，メモリコントローラ等を利用し、各メモリに対するデータの読み書きを適宜実施する構成が挙げられる。
【０００４】
例えばバックアップ用データ等の大容量のデータの保存には、比較的大容量の外部メモリが適用されているが、このような比較的大容量のメモリはアクセス速度が比較的低速のものが多い。一方、内部メモリにおいては、アクセス速度が比較的高速であるものの、比較的小容量のものが多い。
【０００５】
そこで、バックアップ用データの書き込みにおいては外部メモリおよび内部メモリを併用し、データの読出しは内部メモリから実施する手法（以下、単に従来手法と適宜称する）により、読み出し速度の高速化を図ることが検討されている（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−３４１９０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述のような従来手法によるバックアップ用データの書き込みに要する時間は、外部メモリへのデータ書き込みが完了するまでの時間になり易く、当該完了するまでの間は、演算部から内部メモリに対する動作が困難となる場合（例えばウェイト動作時間が長くなる場合）も起こり得る。その結果、ＰＬＣの特性（例えばデータ処理速度等）を向上することが困難になってしまう虞がある。
【０００８】
本発明は、前述のような課題を鑑みてなされたものであって、ＰＬＣの特性の向上に貢献可能な技術を提供することにある。
【課題を解決するための手段】
【０００９】
この発明に係るプログラマブルコントローラは、前述のような課題の解決に貢献できるものであり、その一態様としては、シーケンス制御を実行する演算部および内部メモリを有した演算回路部と、バックアップ用データを記憶できる外部メモリと、を備え、演算回路部は、演算部からの制御信号により、内部メモリまたは外部メモリをアクセス先として決定するアクセスコントローラと、アクセスコントローラからの制御信号により、アクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラと、を備え、メモリコントローラにより、内部メモリと外部メモリとの両者間が接続され、当該内部メモリに書き込まれるデータと同じものが外部メモリに書き込まれることを特徴とする。
【００１０】
メモリコントローラは、内部メモリと外部メモリとの両者のデータを双方向に読み書きすることを特徴とするものでも良い。また、演算回路部は、アクセスコントローラから出力されたデータを記憶し、メモリコントローラからの制御信号により当該データを外部メモリに出力するＦＩＦＯバッファと、内部メモリおよび外部メモリの両者間に接続され、メモリコントローラからの制御信号により当該両者のデータをアクセスコントローラに対して選択的に入力するマルチプレクサと、を備えたことを特徴とするものでも良い。また、演算回路部は、内部メモリに書き込まれるデータのアドレスをそれぞれ１ビットで割り付けたビット群が記憶され、当該ビット群情報がメモリコントローラによって読み出される書き込みアドレスレジスタと、内部メモリおよび外部メモリの両者間に接続され、メモリコントローラからの制御信号により当該両者のデータをアクセスコントローラに対して選択的に入力するマルチプレクサと、を備え、メモリコントローラにより、内部メモリに記憶されているデータが外部メモリに出力されることを特徴とするものでも良い。また、内部メモリは、２ポート式であることを特徴とするものでも良い。また、演算回路部の電源断の状態を検出して当該演算回路部を制御する電源断検出回路を備えていることを特徴とするものでも良い。
【００１１】
他の態様としては、シーケンス制御を実行する演算部および内部メモリを有した演算回路部と、バックアップ用データを記憶できる外部メモリと、を備え、演算回路部は、ＦＰＧＡによって構成され、外部メモリに記憶されているコンフィグレーションデータによってコンフィグレーションし、演算部からの制御信号により内部メモリまたは外部メモリをアクセス先として決定するアクセスコントローラと、アクセスコントローラからの制御信号によりアクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラと、を構成し、メモリコントローラにより、内部メモリと外部メモリとの両者間が接続され、当該内部メモリに書き込まれるデータと同じものが外部メモリに書き込まれ、メモリコントローラは、内部メモリと外部メモリとの両者のデータを双方向に変換するデータ変換機能を有していることを特徴とするものでも良い。
【００１２】
また、他の態様としては、シーケンス制御を実行する演算部および内部メモリを有した演算回路部と、バックアップ用データを記憶できる外部メモリと、を備え、演算回路部は、ＦＰＧＡによって構成され、外部メモリに記憶されているコンフィグレーションデータによってコンフィグレーションし、演算部からの制御信号により内部メモリまたは外部メモリをアクセス先として決定するアクセスコントローラと、アクセスコントローラからの制御信号によりアクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラと、を構成し、メモリコントローラにより、内部メモリと外部メモリとの両者間に接続され、当該内部メモリに書き込まれるデータと同じものが外部メモリに書き込まれ、
外部メモリと演算回路部との両者間が、両者のデータを双方向に変換するデータ変換回路部によって接続されていることを特徴とするものでも良い。
【発明の効果】
【００１３】
以上示したように本発明によれば、ＰＬＣの特性の向上に貢献可能となる。
【図面の簡単な説明】
【００１４】
【図１】実施例１によるＰＬＣ１ａを説明するための概略構成図。
【図２】実施例２によるＰＬＣ１ｂを説明するための概略構成図。
【図３】実施例３によるＰＬＣ１ｃを説明するための概略構成図。
【図４】実施例４によるＰＬＣ１ｄを説明するための概略構成図。
【図５】実施例５によるＰＬＣ１ｅを説明するための概略構成図。
【発明を実施するための形態】
【００１５】
本発明の実施形態のＰＬＣは、単なる従来手法のような構成とは全く異なるものであり、アクセスコントローラからの制御信号によりアクセス先に対するデータの読み書きを実行できるように動作するメモリコントローラを備え、そのメモリコントローラにより、内部メモリと外部メモリとの両者間が接続され、当該内部メモリに書き込まれるデータと同じものを、演算部に依らずに外部メモリに書き込むことが可能なものである。
【００１６】
この本実施形態のような構成によれば、例えば外部メモリに対してバックアップ用データ等の書き込み動作をしている間（例えば書き込みが完了する前）でも、演算部から内部メモリに対する動作が実行し易くなる。これにより、例えば全体的にデータ処理速度を高速化でき、ＰＬＣの特性の向上に貢献可能となる。
【００１７】
本実施形態のＰＬＣは、種々の分野（例えば各種設備で適用されているＰＬＣ技術や情報処理技術の分野）の技術常識を適宜適用して設計することが可能であり、その一例として以下に示すものが挙げられる。
【００１８】
《実施例１》
図１のＰＬＣ１ａは、本実施形態による実施例１を示すものであって、シーケンス制御を実行する演算部１０および内部メモリ２１を有した演算回路部１１と、ＰＬＣ１ａに係る所望のアプリケーションプログラム（演算部１０によって実行されるプログラム）が記憶されるプログラム用メモリ２２と、バックアップ用データの保存を想定した外部メモリ（バッテリバックアップまたは不揮発性メモリ等）２３と、演算回路部１１に接続された電源断検出回路２４と、を備えた構成となっている。
【００１９】
演算回路部１１は、演算部１０とプログラム用メモリ２２との両者間を接続するメモリコントローラ３１と、演算部１０からの動作指令（例えば、データの授受や、読み出し要求，書き込み要求等の指令）となる制御信号に応じてアクセス先（図１では内部メモリ２１，外部メモリ２３の何れか）を決定するアクセスコントローラ３２と、アクセスコントローラ３２と外部メモリ２３との両者間を接続するメモリコントローラ３３と、アクセスコントローラ３２と内部メモリ２１との両者間を接続するメモリコントローラ３４と、内部メモリ２１と外部メモリ２３との両者間を接続するメモリコントローラ３５と、を内蔵した構成となっている。
【００２０】
メモリコントローラ３１，３３〜３５は、種々の態様のものを適用することが可能であり、例えばアクセスコントローラ３２からの動作指令となる制御信号等に応じて、アクセス先に対するデータの読み書きを実行できるように、それぞれが独立して動作可能（図１では例えば内部メモリ２１や外部メモリ２３に対してデータの読み書き等が可能）なものが挙げられる。メモリコントローラ３５においては、内部メモリ２１と外部メモリ２３との両者間に接続され、後述するように適宜動作することにより、内部メモリ２１に書き込まれるデータと同じものを外部メモリ２３に書き込める構成となっている。
【００２１】
アクセスコントローラ３２も、種々の態様のものを適用することが可能であり、例えばアクセス先（内部メモリ２１および外部メモリ２３）における使用領域等のアドレスを記憶して管理し、演算部１０からの制御信号等に応じて決定したアクセス先に接続されているメモリコントローラ（図１では、例えばメモリコントローラ３３〜３５の何れか）に対し、データ，制御信号，アドレス等を適宜授受できるものが挙げられる（具体例としては後述の図２，３に示すような構成）。
【００２２】
電源断検出回路２４も、種々の態様のものを適用することが可能であり、例えば演算回路部１１が電源断する状態を検出して動作するものであって、内部メモリ２１および外部メモリ２３に記憶されているデータ内容が電源再投入時において互いに一致するように、当該電源断時に演算回路部１１の各動作を適宜制御（例えば演算回路部１１に制御信号を出力してメモリコントローラの動作等を適宜制限）できるものが挙げられる。
【００２３】
演算部１０，内部メモリ２１，外部メモリ２３においても、種々の態様のものを適用することが可能であり、例えば各種設備でのＰＬＣ技術や通信技術の分野で適用されているものが挙げられる。
【００２４】
演算回路部１１においては、前述のような構成であれば、種々の態様を適用することが可能であり、例えばＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）によって構成されたものが挙げられる。また、メモリアクセスに係るウェイト動作を要する場合、例えば演算部１０によって生成された制御信号や、アクセスコントローラ３２自身によって生成された制御信号により、当該ウェイト動作を適宜実行（例えばウェイト動作時間を適宜設定して実行）して制御できるようにした構成が挙げられる。
【００２５】
〈読み出し動作例〉
ＰＬＣ１ａの演算部１０による読み出し動作例を以下に説明する。まず、アクセスコントローラ３２は、演算部１０からの読み出し要求である制御信号を受けると、当該読み出し対象のデータが記憶されているアクセス先（図１では内部メモリ２１，外部メモリ２３の何れか）を決定し、その決定したアクセス先に接続されているメモリコントローラ（図１ではメモリコントローラ３３，３４の何れか）に、制御信号およびアドレス信号を出力する。
【００２６】
例えば、アクセス先が内部メモリ２１である読み出し要求に対し、アクセスコントローラ３２は、当該内部メモリ２１に係るメモリコントローラ３４に対して制御信号およびアドレス信号を出力する。次に、メモリコントローラ３４は、前述のような制御信号やアドレス信号に基づいて、内部メモリ２１から所望のデータを読み出し、そのデータをアクセスコントローラ３２に入力するように動作する。そして、アクセスコントローラ３２に対して入力されたデータが、演算部１０に送られて演算処理等に利用される。
【００２７】
アクセス先が外部メモリ２３である読み出し要求については、必要に応じてウェイト動作（例えば、演算部１０またはアクセスコントローラ３２で生成された制御信号によるウェイト動作）の状態としても良い。当該ウェイト動作完了後は、アクセスコントローラ３２が、外部メモリ２３に係るメモリコントローラ３３に対して制御信号およびアドレス信号を出力する。次に、メモリコントローラ３３が、前述のような制御信号やアドレス信号に基づいて、外部メモリ２３から所望のデータを読み出し、そのデータをアクセスコントローラ３２に入力するように動作する。そして、アクセスコントローラ３２に対して入力されたデータが演算部１０に送られて演算処理等に利用される。
【００２８】
〈書き込み動作例〉
ＰＬＣ１ａの演算部１０による書き込み動作例を以下に説明する。まず、アクセスコントローラ３２は、演算部１０からのデータおよび当該データの書き込み要求である制御信号を受けると、当該書き込み対象のアクセス先（図１では内部メモリ２１，外部メモリ２３の何れか）を決定し、その決定したアクセス先に接続されているメモリコントローラ（図１ではメモリコントローラ３３，３４の何れか）にデータ，制御信号，アドレス信号を出力する。
【００２９】
例えば、アクセス先が内部メモリ２１である書き込み要求に対し、アクセスコントローラ３２は、当該内部メモリ２１に係るメモリコントローラ３４に対してデータ，制御信号，アドレス信号を出力する。次に、メモリコントローラ３４によって、内部メモリ２１に対してデータの書き込みが行われ、その書き込みのあったアドレスは、例えばアクセスコントローラ３２にて管理されることとなる。そして、メモリコントローラ３５が、内部メモリ２１に書き込まれたデータを読み出し、例えば当該メモリコントローラ３５に一時的に記憶（例えば、後述の図２のような構成により一時的に記憶）し、外部メモリ２３に出力して記憶させる。
【００３０】
前述のように内部メモリ２１への書き込み要求に係る動作が行われている間において、アクセス先がメモリコントローラ３３経由の外部メモリ２３である書き込み要求については、必要に応じてウェイト動作（例えば、演算部１０またはアクセスコントローラ３２で生成された制御信号によるウェイト動作）の状態としても良い。そして、当該ウェイト動作完了後、例えばアクセスコントローラ３２が、当該外部メモリ２３に係るメモリコントローラ３３に対してデータ，制御信号，アドレス信号を出力し、当該メモリコントローラ３３によって、内部メモリ２１に対してデータの書き込みが行われ、その書き込みのあったアドレスは、例えばアクセスコントローラ３２にて管理されることとなる。
【００３１】
以上のようなＰＬＣ１ａによれば、従来手法による構成と比較して、例えば内部メモリ２１に対する読み出し速度の高速化に貢献することが可能となる。また、演算部１０に依らなくても、外部メモリ２３に対するバックアップ用データの書き込みが可能であるため、例えば内部メモリ２１に対してデータの書き込みを行う場合に、外部メモリ２３に対するバックアップ用データの書き込み動作の完了を待たずに、内部メモリ２１において次の動作を実行し易くなる。したがって、本実施例１によれば、ＰＬＣの特性の向上に貢献可能となる。
【００３２】
《実施例２》
図２のＰＬＣ１ｂは、本実施形態による実施例２を示すものであるが、実施例１と同様のものには同一符号を付する等により、その詳細な説明を適宜省略する。なお、図２（および後述の図３）では、アクセスコントローラ３２，ＦＩＦＯ（ｆｉｒｓｔ  ｉｎ  ，  ｆｉｒｓｔ  ｏｕｔ）バッファ４１（後述の図３ではアクセスコントローラ３２，内部メモリ２５）によるデータの入出力や、制御信号およびアドレス信号の入出力を把握し易くするために、各入出力位置を適宜区分した描写としている。
【００３３】
ＰＬＣ１ｂの演算回路部１２は、ＰＬＣ１ａの演算回路部１１と同様に演算部１０，内部メモリ２１，メモリコントローラ３１，アクセスコントローラ３２を有し、メモリコントローラ３３〜３５の替わりに、メモリコントローラ３６，ＦＩＦＯバッファ４１，マルチプレクサ４２ａ〜４２ｃを有した構成となっている。
【００３４】
メモリコントローラ３６は、メモリコントローラ３１，３３〜３５と同様に、アクセスコントローラ３２からの動作要求に応じて動作可能なものを適用することが挙げられる。図２のメモリコントローラ３６の場合は、ＦＩＦＯバッファ４１やマルチプレクサ４２ａ〜４２ｃを介して内部メモリ２１と外部メモリ２３との両者間に接続され、後述するように適宜動作し、内部メモリ２１に書き込まれるデータと同じものを外部メモリ２３に書き込める構成となっている。具体例としては、演算部１０からの読み出し要求である制御信号に基づいて、マルチプレクサ４２ａを介して内部メモリ２１，外部メモリ２３からのデータを選択的にアクセスコントローラ３２に入力させる構成となっている。また、演算部１０からの書き込み要求である制御信号に基づいて、ＦＩＦＯバッファ４１内のデータを外部メモリ２３に対して書き込ませる構成となっている。
【００３５】
ＦＩＦＯバッファ４１は、種々の態様のものを適用することが可能であり、図２では、アクセスコントローラ３２からのデータおよびアドレスを一時的に記憶し、メモリコントローラ３６によって、当該データを外部メモリ２３に書き込める構成となっている。また、図２のＦＩＦＯバッファ４１の場合、マルチプレクサ４２ｂを介してデータを出力し、マルチプレクサ４２ｃを介してアドレス信号を出力できる構成となっている。
【００３６】
演算回路部１２においては、メモリコントローラ３６やＦＩＦＯバッファ４１等を経由せずに、アクセスコントローラ３２から外部メモリ２３に対して直接的（図２中の矢印のように直接的）にデータの書き込みを行えるような構成となっている。
【００３７】
〈読み出し動作例〉
ＰＬＣ１ｂの演算部１０による読み出し動作は、前述のＰＬＣ１ａと同様に、アクセスコントローラ３２が、演算部１０からの読み出し要求である制御信号を受けると、当該読み出し対象のデータが記憶されているアクセス先を決定し、メモリコントローラ３６に制御信号およびアドレス信号を出力する。
【００３８】
例えば、アクセス先が内部メモリ２１である読み出し要求に対し、アクセスコントローラ３２は、当該内部メモリ２１のデータを読み出せるように、メモリコントローラ３６に対して制御信号を出力し、当該読み出し要求に対応するアドレス信号を内部メモリ２１に出力する。次に、メモリコントローラ３６は、内部メモリ２１の所望のデータがマルチプレクサ４２ａを介してアクセスコントローラ３２に出力するように、当該マルチプレクサ４２ａに制御信号を出力する。そして、アクセスコントローラ３２に対して入力されたデータが、演算部１０に送られて演算処理等に利用される。
【００３９】
前述のように内部メモリ２１への読み出し要求に係る動作が行われている間において、アクセス先が外部メモリ２３である読み出し要求に対しては、必要に応じてウェイト動作（例えば、演算部１０またはアクセスコントローラ３２で生成された制御信号によるウェイト動作）の状態としても良く、当該ウェイト動作完了後、当該読み出し要求に対する動作が適宜実行される。例えば、メモリコントローラ３６を経由する外部メモリ２３への読み出し要求に対し、アクセスコントローラ３２は、当該外部メモリ２３のデータを読み出せるように、メモリコントローラ３６に対して制御信号を出力し、当該読み出し要求に対応するアドレス信号を外部メモリ２３に出力（例えばＦＩＦＯバッファ４１等を経由せずに、マルチプレクサ４２ｃを介して直接的に出力）する。次に、メモリコントローラ３６は、外部メモリ２３の所望のデータがマルチプレクサ４２ａを介してアクセスコントローラ３２に出力するように、当該マルチプレクサ４２ａに制御信号を出力する。そして、アクセスコントローラ３２に対して入力されたデータが、演算部１０に送られて演算処理等に利用される。
【００４０】
〈書き込み動作例〉
ＰＬＣ１ｂの演算部１０による書き込み動作例を以下に説明する。まず、アクセスコントローラ３２は、演算部１０からのデータおよび当該データの書き込み要求である制御信号を受けると、当該書き込み対象のアクセス先を決定し、データ，制御信号，アドレス信号を適宜出力する。
【００４１】
例えば、アクセス先が内部メモリ２１である書き込み要求に対し、アクセスコントローラ３２は、当該内部メモリ２１に対しデータ，アドレス信号を出力して当該データの書き込みを行い、当該データ，アドレス信号をＦＩＦＯバッファ４１にも出力して一時的に記憶する。この場合、内部メモリ２１は、当該書き込みが完了した後に、次の動作に移行できる状態となる。
【００４２】
ＦＩＦＯバッファ４１においては、例えばメモリコントローラ３６の制御により、当該ＦＩＦＯバッファ４１に記憶されているデータ，アドレス信号を外部メモリ２３に出力して当該データを書き込むように動作する。このＦＩＦＯバッファ４１を経由する書き込み動作においては、例えばアクセスコントローラ３２からメモリコントローラ３６に出力した制御信号による動作（例えばライトバック処理）、電源断検出回路２４から出力（演算回路部１２が電源断する状態を検出して動作）した制御信号による動作が挙げられ、必要に応じて、ウェイト動作の状態としても良い。
【００４３】
また、前述のように内部メモリ２１への書き込み要求に係る動作が行われている間において、ＦＩＦＯバッファ４１を経由せずに外部メモリ２３に対して直接的に書き込む要求についても、必要に応じて、ウェイト動作の状態としても良い。そして、当該ウェイト動作完了後、アクセスコントローラ３２は、当該外部メモリ２３に対してデータ，アドレス信号を出力して書き込みむように動作する。
【００４４】
以上のようなＰＬＣ１ｂによれば、ＰＬＣ１ａと同様に、例えば内部メモリ２１に対する読み出し速度の高速化に貢献することが可能となる。また、演算部１０に依らなくても、外部メモリ２３に対するバックアップ用データの書き込みが可能であるため、例えば内部メモリ２１に対してデータの書き込みを行う場合に、外部メモリ２３に対するバックアップ用データの書き込み動作の完了を待たずに、内部メモリ２１において次の動作を実行し易くなる。したがって、本実施例２によれば、ＰＬＣの特性の向上に貢献可能となる。
【００４５】
《実施例３》
図３のＰＬＣ１ｃは、本実施形態による実施例３を示すものであるが、実施例１，２と同様のものには同一符号を付する等により、その詳細な説明を適宜省略する。また、ＰＬＣ１ｃによる読み込み動作や、メモリコントローラ３６を経由せずに外部メモリ２３に対して直接的に書き込む動作について、それぞれ実施例２と同様の手法によって実現可能なものであり、その詳細な説明を適宜省略する。
【００４６】
ＰＬＣ１ｃの演算回路部１３は、ＰＬＣ１ｂの演算回路部１２と同様に演算部１０，メモリコントローラ３１，３６，アクセスコントローラ３２，マルチプレクサ４２ａ〜４２ｃを有し、内部メモリ２１，ＦＩＦＯバッファ４１の替わりに、２ポート式の内部メモリ２５，書き込みアドレスレジスタ４３を有した構成となっている。
【００４７】
図３のメモリコントローラ３６の場合は、書き込みアドレスレジスタ４３やマルチプレクサ４２ａ，４２ｃを介して内部メモリ２１と外部メモリ２３との両者間に接続され、後述するように適宜動作し、内部メモリ２１に書き込まれるデータと同じものを外部メモリ２３に書き込める構成となっている。内部メモリ２５は、２ポート式のものであれば、種々の態様のものを適用することが可能であり、内部メモリ２１と同様に例えば各種設備でのＰＬＣ技術や通信技術の分野で適用されているものが挙げられる。図３の内部メモリ２５の場合、メモリコントローラ３６から入力された制御信号，アドレス信号によって、書き込まれたデータを外部メモリ２３に対して出力できる構成となっている。
【００４８】
書き込みアドレスレジスタ４３は、種々の態様のものを適用することが可能であり、メモリ等のようにデータを保存できる機能を有した態様であって、例えば内部メモリ２１に書き込まれるデータのアドレスをそれぞれ１ビットで割り付けたビット群を記憶でき、当該ビット群情報がメモリコントローラ３６によって読み出される構成が挙げられる。図３の書き込みアドレスレジスタ４３では、アクセスコントローラ３２からのアドレス信号に基づいて、各ビットが０または１にセットされ、そのセット状況をメモリコントローラ３６に出力でき、アドレスの分の領域（例えば、アドレス領域が００００〜ＦＦＦＦの場合には６５５３６ビットの領域）を具備した構成となっている。
【００４９】
〈書き込み動作例〉
ＰＬＣ１ｃの演算部１０による書き込み動作例を以下に説明する。まず、アクセスコントローラ３２は、演算部１０からのデータおよび当該データの書き込み要求である制御信号を受けると、当該書き込み対象のアクセス先を決定し、データ，制御信号，アドレス信号を適宜出力する。
【００５０】
例えば、アクセス先が内部メモリ２５である書き込み要求に対し、アクセスコントローラ３２は、当該内部メモリ２５に対しデータ，アドレス信号を出力して当該データの書き込みを行い、当該アドレス信号を書き込みアドレスレジスタ４３にも出力しアドレスに対応するビットを１にする。この場合、内部メモリ２５は、当該書き込みが完了した後に、次の動作に移行できる状態となる。
【００５１】
書き込みアドレスレジスタ４３においてビットが１にセットされたアドレスは、例えばアクセスコントローラ３２からの制御信号によって動作するメモリコントローラ３６により検出され、当該メモリコントローラ３６にてアドレスが生成される。そして、メモリコントローラ３６から内部メモリ２５に対して制御信号，アドレス信号が出力され、当該アドレスに係るデータが外部メモリ２３に出力されて書き込まれ、当該書き込みが完了後、書き込みアドレスレジスタ４３における当該データにかかるアドレスのビットが０にセットされることとなる。
【００５２】
メモリコントローラ３６は、前述のようにアクセスコントローラ３２からの制御信号によって動作するだけでなく、電源断検出回路２４から出力（演算回路部１２が電源断する状態を検出して動作）された制御信号によっても動作し、書き込みアドレスレジスタ４３において前述のように１にセットされているビットがいくつか存在している場合には、全てのビットが０になるまで（すなわち、ビットが１にセットされていたアドレスに係る内部メモリ２５のデータの全てが外部メモリ２３に書き込まれるように）動作する。
【００５３】
以上のようなＰＬＣ１ｃによれば、ＰＬＣ１ａ，１ｂと同様に、例えば内部メモリ２５に対する読み出し速度の高速化に貢献することが可能となる。また、演算部１０に依らなくても、外部メモリ２３に対するバックアップ用データの書き込みが可能であるため、例えば内部メモリ２５に対してデータの書き込みを行う場合に、外部メモリ２３に対するバックアップ用データの書き込み動作の完了を待たずに、内部メモリ２５において次の動作を実行し易くなる。
【００５４】
また、ＰＬＣ１ｂの場合には、ＦＩＦＯバッファ４１において、内部メモリ２５に対して書き込んだものと同じデータを保存できる大きさの領域や、当該データにかかるアドレス自体を保存できる大きさの領域が必要となるが、ＰＬＣ１ｃの書き込みアドレスレジスタ４３においては、各書き込みアドレスの分の領域を具備したものであれば良い。
【００５５】
したがって、本実施例３によれば、ＰＬＣの特性の向上に貢献できるだけでなく、当該ＰＬＣの小型化やコスト削減等にも貢献可能となる。
【００５６】
《実施例４》
前述のＰＬＣ１ａ〜１ｃにおいては、例えば演算回路部１１〜１３をＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）によって構成し、当該ＦＰＧＡの起動時（演算回路部１１〜１３の起動時）にコンフィグレーションデータ（以下、単にコンフィグデータと適宜称する）を読み込んでコンフィグレーションして適宜動作させることが可能であり、図４に示すＰＬＣ１ｄのように構成した場合には、例えばメモリの有効利用にも貢献できる。なお、図４において、実施例１〜３と同様のものには同一符号を付する等により、その詳細な説明を適宜省略する。
【００５７】
図４のＰＬＣ１ｄにおいては、例えば各種設備でのＰＬＣ技術や通信技術の分野で適用されているＦＰＧＡによって構成された演算回路部１４を備え、外部メモリ２３の替わりに、コンフィグデータが記憶される外部メモリ５１を備えたものとなっている。
【００５８】
外部メモリ５１は、コンフィグデータの他にバックアップ用データ等のデータを記憶できるものであれば、種々の態様のものを適用することができ、例えばＦＰＧＡのコンフィグレーションＲＯＭとして利用可能な不揮発性のもの（フラッシュメモリ等）が挙げられる。具体的に、一般的なＦＰＧＡのコンフィグレーションの場合、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）形式によって通信されるコンフィグデータ等のデータを授受することがあることから、図４の外部メモリ５１では、ＳＰＩ形式によるデータの授受が可能な構成（例えばＳＰＩインターフェースを持った構成）となっている。
【００５９】
演算回路部１４は、起動時に、外部メモリ５１に記憶されているコンフィグデータを読み込んでコンフィグレーションし所望の回路を構成できるものであれば、種々の態様を適用することが可能である。図４の演算回路部１４の場合、当該コンフィグレーションにより、ＰＬＣ１ａの演算回路部１１と同様の演算部１０，内部メモリ２１，メモリコントローラ３１，３４，アクセスコントローラ３２を構成し、メモリコントローラ３３，３５の替わりに、コンフィグレーションに対応して内部メモリ２１，アクセスコントローラ３２，外部メモリ５１の三者間を接続するメモリコントローラ３７を構成するものとなっている。
【００６０】
また、メモリコントローラ３７においては、コンフィグレーションに対応してコンフィグデータ等の授受ができるもの、例えば、単にアクセスコントローラ３２からの動作要求によって動作する構成ではなく、内部メモリ２１，アクセスコントローラ３２，外部メモリ５１の三者間で授受されるデータの形式等を考慮した構成が挙げられる。具体的に、一般的なＦＰＧＡに内蔵されている内部メモリではパラレル形式のデータが授受され、外部メモリ５１では前述のようにＳＰＩ形式のデータが授受されることを踏まえて、図４のメモリコントローラ３７では、パラレル形式のデータとＳＰＩ形式のデータを双方向に変換できる機能を持った構成となっている。
【００６１】
〈読み込み，書き込み動作例〉
ＰＬＣ１ｄの演算部１０による読み込み動作，書き込み動作は、基本的には実施例１〜３と同様の手法によって実現可能であるため、その詳細な説明は適宜省略し、以下ではメモリコントローラ３７を中心とした動作例を説明する。
【００６２】
まず、演算回路部１４は、起動時に、外部メモリ５１に記憶されているコンフィグデータを読み込んでコンフィグレーションし、メモリコントローラ３７等が動作可能な状態となる。
【００６３】
外部メモリ５１に記憶されているバックアップ用データ等は、例えばメモリコントローラ３７によって読み込んでパラレル形式に変換してから内部メモリ２１に書き込むことにより、通常動作時において、当該内部メモリ２１上での動作が可能となる。
【００６４】
また、例えばアクセスコントローラ３２からメモリコントローラ３４経由で内部メモリ２１に書き込まれたデータは、例えばメモリコントローラ３７によって読み込んでＳＰＩ形式に変換してから外部メモリ５１に書き込むことが可能である。
【００６５】
以上のようなＰＬＣ１ｄによれば、ＰＬＣ１ａ〜１ｃと同様に、例えば内部メモリ２１に対する読み出し速度の高速化に貢献することが可能となる。また、演算部１０に依らなくても、外部メモリ５１に対するバックアップ用データの書き込みが可能であるため、例えば内部メモリ２１に対してデータの書き込みを行う場合に、外部メモリ５１に対するバックアップ用データの書き込み動作の完了を待たずに、内部メモリ２１において次の動作を実行し易くなる。
【００６６】
また、ＰＬＣ１ｄの場合には、コンフィグデータが記憶される外部メモリ５１を、バックアップ用データを記憶するためにも適用（例えば、バックアップ用データの領域をコンフィグレーションＲＯＭと共有）し、メモリの有効利用を図ることができる。
【００６７】
したがって、本実施例４によれば、ＰＬＣの特性の向上に貢献できるだけでなく、当該ＰＬＣの小型化やコスト削減等にも貢献可能となる。
【００６８】
《実施例５》
図５のＰＬＣ１ｅは、本実施形態による実施例５を示すものであるが、実施例１〜４と同様のものには同一符号を付する等により、その詳細な説明を適宜省略する。
【００６９】
図５のＰＬＣ１ｅにおいては、ＰＬＣ１ｄと同様にＦＰＧＡによって構成された演算回路部１５を備え、外部メモリ５１の替わりに、コンフィグデータが記憶される外部メモリ５２と、データ変換回路部５３と、を備えたものとなっている。
【００７０】
外部メモリ５２は、コンフィグデータの他にバックアップ用データ等のデータを記憶できる不揮発性のものであれば、種々の態様のものを適用することが可能であり、例えば外部メモリ５１のようにコンフィグレーションＲＯＭ等に限定されることなく、汎用性のある不揮発性メモリ等であっても良い。図５では、コンフィグデータ，バックアップ用データ等をパラレル形式で記憶できる構成となっている。
【００７１】
データ変換回路部５３は、演算回路部１５と外部メモリ５２との両者間を接続し、パラレル形式のデータとＳＰＩ形式のデータを双方向に適宜変換できる機能を持った構成であれば、種々の態様を適用することが可能である。
【００７２】
演算回路部１５は、起動時に、外部メモリ５２に記憶されているコンフィグデータをデータ変換回路部５３経由により読み込んでコンフィグレーションし所望の回路を構成できるものであれば、種々の態様を適用することが可能である。図５の演算回路部１５の場合、当該コンフィグレーションにより、ＰＬＣ１ｄの演算回路部１４と同様の演算部１０，内部メモリ２１，メモリコントローラ３１，３４，アクセスコントローラ３２を構成し、メモリコントローラ３７の替わりに、内部メモリ２１，アクセスコントローラ３２，外部メモリ５２の三者間を接続するメモリコントローラ３８を構成するものとなっている。
【００７３】
メモリコントローラ３８は、メモリコントローラ３１，３３〜３５と同様に、アクセスコントローラ３２からの動作要求に応じて動作可能なものを適用することが挙げられ、例えば、ＰＬＣ１ｄのメモリコントローラ３７のようにＳＰＩ形式のコンフィグデータ等の授受を考慮する必要はない。図５のメモリコントローラ３８では、内部メモリ２１，アクセスコントローラ３２，外部メモリ５２の三者間で授受されるパラレル形式のデータの授受等を考慮した構成となっている。
【００７４】
〈読み込み，書き込み動作例〉
ＰＬＣ１ｅの演算部１０による読み込み動作，書き込み動作は、基本的には実施例１〜４と同様の手法によって実現可能であるため、その詳細な説明は適宜省略し、以下ではメモリコントローラ３８およびデータ変換回路部５３を中心とした動作例を説明する。
【００７５】
まず、起動時に、外部メモリ５２に記憶されているパラレル形式のコンフィグデータがデータ変換回路部５３によりＳＰＩ形式に変換され、その変換後のコンフィグデータを演算回路部１５によって読み込んでコンフィグレーションし、メモリコントローラ３８等が動作可能な状態となる。
【００７６】
外部メモリ５２に記憶されているパラレル形式のバックアップデータ等は、例えばメモリコントローラ３８によって読み込んで内部メモリ２１に書き込むことにより、通常動作時において、当該内部メモリ２１上での動作が可能となる。
【００７７】
また、例えばアクセスコントローラ３２からメモリコントローラ３４経由で内部メモリ２１に書き込まれたパラレル形式のデータは、例えばメモリコントローラ３８によって読み込んで、データ変換することなく外部メモリ５２に書き込むことが可能である。
【００７８】
以上のようなＰＬＣ１ｅによれば、ＰＬＣ１ａ〜１ｄと同様に、例えば内部メモリ２１に対する読み出し速度の高速化に貢献することが可能となる。また、演算部１０に依らなくても、外部メモリ５２に対するバックアップ用データの書き込みが可能であるため、例えば内部メモリ２１に対してデータの書き込みを行う場合に、外部メモリ５２に対するバックアップ用データの書き込み動作の完了を待たずに、内部メモリ２１において次の動作を実行し易くなる。
【００７９】
また、ＰＬＣ１ｅの場合には、コンフィグデータが記憶される外部メモリ５２を、バックアップ用データを記憶するためにも適用（例えば、バックアップ用データの領域をコンフィグレーションＲＯＭと共有）し、メモリの有効利用を図ることができる。また、例えば外部メモリ５２においては、コンフィグレーションＲＯＭ等に限定されることなく、汎用性のある不揮発性メモリ等を適用できるため、例えば回路設計等が容易になる。
【００８０】
したがって、本実施例５によれば、ＰＬＣの特性の向上に貢献できるだけでなく、当該ＰＬＣの小型化やコスト削減等にも貢献可能となる。
【００８１】
以上、本発明において、記載された具体例に対してのみ詳細に説明したが、本発明の技術思想の範囲で多彩な変更等が可能であることは、当業者にとって明白なことであり、このような変更等が特許請求の範囲に属することは当然のことである。
【００８２】
例えば、ＰＬＣ１ａ〜１ｅの演算回路部１１〜１５においては、使用可能な容量ブロック等を考慮して適宜設計変更することが可能である。具体例としては、実施例３の演算回路部１３において、実施例２のＦＩＦＯバッファ４１を加えて２ポート式の内部メモリ２５と適宜組み合わせ、アクセスコントローラ３２から出力されるアドレスを当該ＦＩＦＯバッファ４１に一時的に記憶し、そのアドレスを用いて内部メモリ２５のデータを外部メモリ２３に出力させて書き込むように構成することが挙げられる。このような構成においても、実施例２，３と同様の作用効果を奏することが可能となる。
【符号の説明】
【００８３】
１ａ〜１ｅ…ＰＬＣ
１０…演算部
１１〜１５…演算回路部
２１，２５…内部メモリ
２３，５１，５２…外部メモリ
２４…電源断検出回路
３１，３３〜３８…メモリコントローラ
３２…アクセスコントローラ
４１…ＦＩＦＯバッファ
４２…書き込みアドレスレジスタ
５３…データ変換回路部
【図１】
2019016124.tif 000003
【図２】
2019016124.tif 000004
【図３】
2019016124.tif 000005
【図４】
2019016124.tif 000006
【図５】
2019016124.tif 000007