JP5099342B2 - Plc用の部品実装基板 - Google Patents

Plc用の部品実装基板 Download PDF

Info

Publication number
JP5099342B2
JP5099342B2 JP2007322819A JP2007322819A JP5099342B2 JP 5099342 B2 JP5099342 B2 JP 5099342B2 JP 2007322819 A JP2007322819 A JP 2007322819A JP 2007322819 A JP2007322819 A JP 2007322819A JP 5099342 B2 JP5099342 B2 JP 5099342B2
Authority
JP
Japan
Prior art keywords
memory
sram
mode
asic
data
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
Application number
JP2007322819A
Other languages
English (en)
Other versions
JP2009146168A (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2007322819A priority Critical patent/JP5099342B2/ja
Publication of JP2009146168A publication Critical patent/JP2009146168A/ja
Application granted granted Critical
Publication of JP5099342B2 publication Critical patent/JP5099342B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Programmable Controllers (AREA)

Description

この発明は、通常用とバックアップ用との2つのIOメモリを備えたプログラマブル・コントローラ(以下、「PLC」という)に好適なPLC用の部品実装基板に関する。
通常用とバックアップ用との2つのデータメモリを備え、電源断時に信頼性を向上させたPLCは従来より知られている(特許文献1参照)。
このようなPLCに採用されるPLC用の部品実装基板の一例が図9に示されている。同図に示されるように、このPLC用の部品実装基板100は、ユーザプログラムを格納するためのユーザメモリ(以下、「UM」という)1と、システムプログラムを格納するためのシステムメモリ(以下、「SROM」という)2と、SROM2に格納されたシステムプログラムを実行することによりIOリフレッシュ機能や周辺サービス機能などのPLCに必要な諸機能を実現するマイクロプロセッサ(以下、「MPU」という)3と、UM1に格納されたユーザプログラムを実行するための演算実行回路が組み込まれたASIC(Application Specific IC)4と、通常用のIOメモリ(以下、「IOM」という)としてのメモリ容量を有する第1のSRAM5と、バックアップ用IOメモリ(以下、「BIOM」という)としてのメモリ容量を有する第2のSRAM6と、MPU3がSROM2内のシステムプログラムを実行する際にワークエリアとして使用するワークRAM(以下、「WRAM」という)7と、バックアップ用のユーザメモリ(以下、「BUM」という)8とを所定の回路基板上に搭載して構成されている。
メモリ1,2,5〜8の種別は次のように構成されている。すなわち、UM1としては高速同期SRAMが、SROM2としてはフラッシュメモリが、IOMとして機能する第1のSRAMとしては高速非同期SRAMが、BIOMとして機能する第2のSRAM6としてはバッテリによりバックアップされた中速SRAMが、WRAM7としてはバッテリによりバックアップされた中速SRAMが、BUM8としてはフラッシュメモリがそれぞれ採用されている。
ここで、当業者にはよく知られているように、高速SRAMは電流駆動型素子で構成され、その消費電力の関係から、バッテリにより長時間バックアップすることは困難である。これに対して、中速SRAMは比較的低消費電力素子が使用されるため、バッテリにより長時間バックアップすることが可能となる。
また、図9において、符号9aは周辺機器が接続されるコネクタ、9bはRS232をサポートする機器が接続されるコネクタ、9cはコンパクトフラッシュ(登録商標)デバイスのためのインタフェース、9dはIOユニットや各種の特殊機能ユニットが接続される内部バスとのコネクタである。
ASIC4の内部には、UM1に格納されたユーザプログラムを実行するための演算実行回路の他に、第2のSRAM6から第1のSRAM5へとIOデータを一括コピーする起動時処理(図10(a)参照)と、書き込み指令が与えられたときには、その書き込み指令に係るIOデータを第1のSRAM5と第2のSRAM6とに並列に書き込む一方、読み出し指令が与えられたときには、その読み出し指令に係るIOデータを第1のSRAM5のみから読み出すように仕組まれた演算実行時処理(図10(b)参照)と、BIOMとして機能する第2のSRAM6をバッテリによりバックアップする電断時処理(図10(c)参照)とをサポートするように仕組まれた制御回路が組み込まれている。
以上の構成によって、MPU3とASIC4とが動作することにより、PLCのCPUとしての機能が実現されると共に、IOMの内容は停電時にあっても保持され、しかも演算実行時にあっては、IOデータの読み出しは、高速非同期SRAMで構成された第1のSRAM5の側のみから行うことによって、読み出し速度の高速化を実現することができる。
ところで、昨今、IOMとして機能するSRAMが大容量化しかつ半導体プロセスの微細化が進んだ結果、IOMを構成するSRAM内のメモリセルbit反転によりPLCが誤動作する虞れが指摘されている。このようなSRAM内のメモリセルbit反転は、宇宙線等によるソフトエラーを起因とするものであることが推定されている。
PLCを構成する各種のメモリのうちで、IOMを除く他のメモリについては、主としてソフトウェアによる誤り検出並びに修正処理が採用されている。このソフトウェアによる誤り検出並びに修正処理は、SUM値による計算/比較などを行い、メモリの異常箇所の特定を行い、異常(メモリ化け)検出時には、安全のために「停止」状態にする場合や、修復可能な場合には修復を試みるといった処理である。しかし、IOデータの保存先であるIOMに関しては、MPU3とASIC4とから非同期で書き込みが行われるため、MPU3のファームウェアによるソフトウェア的な検出/修正は実質的に困難であり、メモリ化けに対して何等対策が施されていないのが現状である。
一方、パソコン(主としてサーバ系)のメインメモリにあっては、図11に示されるように、主メモリbに対して冗長メモリcを付加すると共に、演算処理部aと主メモリb及び冗長メモリcとの間にECC回路dを介在させ、メモリコントローラを用いてECC機能を実現するといったハードウェア的な誤り検出並びに訂正手法が採用されている。
この例では、16bitのデータ長に対して1bit誤り訂正、2bit誤り検出を可能とする冗長メモリとして6bit必要とする例を示している。図においてECC回路dと主メモリbとの間に記載の16bitはデータ長を表しており、データを送受するためのバス幅は主メモリbのデータ幅によって適宜設計される。また、ECC回路dと冗長メモリcとの間に記載の6bitはデータ長16bitのデータに対する1bit誤り訂正、2bit誤り検出を可能とするbit長が6bitであることを表している。データを送受するためのバス幅は冗長メモリcのデータ幅によって適宜設計される。
特開2002−341908号公報
しかしながら、上述のECC回路dによるハードウェア的な誤り検出並びに修正手法をPLCに採用しようとすると、以下のように、様々な問題点が生ずることが知見された。この問題点を、図12及び図13を参照して説明する。
従来の構成例が図12(a)に示されている。この例にあっては、第1及び第2のデータバスB1,B2としては32bit幅のものが使用され、これに対応して第1及び第2のSRAM5,6としてはそれぞれ16bit幅のものが採用されている。また、ASIC4の内部にはコア4aが組み込まれている。このコア4a内には、UM1に格納されたユーザプログラムを実行するための演算実行回路と図10に示される3つの処理をサポートするように仕組まれた制御回路が少なくとも組み込まれている。
上述の従来の構成例に対して、冗長メモリを単純に追加しただけの構成例が図12(b)に示されている。同図に示されるように、この例にあっては、ASIC4内にECC回路4b,4cを組み込む一方、主メモリである第1のSRAM5に対しては、冗長メモリであるSRAM5−1が、また主メモリである第2のSRAM6に対しては、冗長メモリであるSRAM6−1が設けられている。
なお、図において、主IOMとして機能する32bit幅のSRAM5は、上位16bit幅領域5aと下位16bit幅領域5bとに分離して示されており、これに対応して、冗長IOM−Pとして機能する16bit幅のSRAM5−1は、上位8bit幅領域5a−1と下位8bit幅領域5b−1とに分離して示されている。同様にして、主BIOMとして機能する32bit幅のSRAM6は、上位16bit幅領域6aと下位16bit幅領域6bとに分離して示されており、これに対応して、冗長BIOM−Pとして機能する16bit幅のSRAM6−1は、上位8bit幅領域6a−1と下位8bit幅領域6b−1とに分離して示されている。
また、B1はASIC4と第1のSRAM5とを結ぶ第1のデータバス、B2はASIC4と第2のSRAM6とを結ぶ第2のデータバス、B3はASIC4と冗長用のSRAM5−1とを結ぶ第3のデータバス、B4はASIC4と冗長用のSRAM6−1とを結ぶ第4のデータバスである。
製品仕様別の使用メモリ(SRAM)の構成例が図13に示されている。同図に示されるように、製品仕様が、「バックアップ機能付きのIOメモリ仕様」である場合、図12(a)に示されるように、IOMとしては高速SRAM(16+16bit)が、BIOMとしてはバッテリによりバックアップされた中速SRAM(16+16bit)がそれぞれ採用され、IOM用冗長メモリ及びBIOM用冗長メモリは何れも未実装とされる。これに対して、製品仕様が「ECC機能付きのIOメモリ仕様」である場合、IOMとしては高速SRAM(16+16bit)が、IOM用冗長メモリとしては高速SRAM(8+8bit)が、BIOMとしてはバッテリによりバックアップされた中速SRAM(16+16bit)が、BIOM用冗長メモリとしてはバッテリによりバックアップされた中速SRAM(16+16bit)が使用される。
このように、ECC回路を用いたハードウェアによる誤り検出並びに訂正手法をPLCにそのまま採用しようとすると、主メモリ(例えば16bit幅)に対して、8bit幅の冗長メモリが必要となり、全体で必要なメモリデバイスの個数及び種類が増加すると共に、新たに第3及び第4のデータバスB3,B4を敷設せねばならず、それらの要因によって、大幅な開発コストが必要となるという問題がある。加えて、図13に示されるように、2種類の製品仕様に対応するためには、ASICのピン数が増大し、また、回路基板の実装面積が確保できなくなるという問題も発生する。
この発明は、このような従来の問題点に着目してなされたものであり、その目的とするところは、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに低コストに対応可能としたPLC用の部品実装基板を提供することにある。
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
上述の技術的課題は、以下の構成を有するPLC用の部品実装基板によって解決することができる。
すなわち、このPLC用の部品実装基板は、ユーザプログラムを格納するためのユーザメモリと、システムプログラムを格納するためのシステムメモリと、システムメモリに格納されたシステムプログラムを実行することによりIOリフレッシュ機能や周辺サービス機能等のPLCに必要な諸機能を実現するマイクロプロセッサと、ユーザメモリに格納されたユーザプログラムを実行するための演算実行回路とが組み込まれたASICとが少なくとも搭載されている。
このPLC用の部品実装基板には、IOメモリとしてのメモリ容量を有する第1のSRAMが装着可能であって、かつ装着された第1のSRAMに対して、選択的にバッテリバックアップ可能とされた第1のメモリ装着部と、IOメモリとしてのメモリ容量を有する第2のSRAMが装着可能であって、かつ装着された第2のSRAMに対して、選択的にバッテリバックアップ可能とされた第2のメモリ装着部とが設けられる。
さらに、ASICと第1のメモリ装着部との間には第1のデータバスが敷設されており、かつASICと第2のメモリ装着部との間には第2のデータバスが敷設されている。
それにより、前記マイクロプロセッサと前記ASICとが動作することにより、PLCのCPUとしての機能が実現される。
加えて、前記ASICの内部には、書き込み指令が与えられたときには、その書き込み指令に係るIOデータに基づいて誤り訂正符号を生成する一方、読み出し指令が与えられたときには、その読み出し指令に係るデータに付された誤り訂正符号に基づいて誤り検出又は誤り訂正を行うように仕組まれたECC回路と、外部からのモード指定を受けて択一的に動作する第1モードの制御回路と第2モードの制御回路とが組み込まれている。
第1モードの制御回路は、書き込み指令が与えられたときには、その書き込み指令に係るIOデータを第1のSRAMと第2のSRAMとに並列に書き込む一方、読み出し指令が与えられたときには、その読み出し指令に係るIOデータを第1のSRAMのみから読み出すように仕組まれた演算実行時処理と、第2のSRAMから第1のSRAMへとIOデータを一括コピーする起動時処理とをサポートするように仕組まれている。
第2モードの制御回路は、書き込み指令が与えられたときには、その書き込み指令に係るIOデータをECC回路へと与えると共に、そのIOデータとECC回路にて生成された誤り訂正符号とを、第1のSRAMと第2のSRAMとから構成される記憶対象領域内に、所定のメモリ割付ルールに従って書き込む書き込み時処理と、読み出し指令が与えられたときには、その読み出し指令に係るIOデータと誤り符号とを、所定のメモリ割付ルールに従って、第1のSRAMと第2のSRAMとから構成される記憶対象領域から読み出し、これをECC回路へと与える読み出し時処理とをサポートするように仕組まれている。
それにより、ASICに対するモード指定の選択、第1及び第2のメモリ装着部に対して装着されるべきSRAM種別の選択、第1及び第2のメモリ装着部に対するバッテリバックアップ有無の選択、及び第2モード指定時のメモリ割付ルールの取り決めにより、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに対応可能としている。
このような構成によれば、ASICに対するモード指定の選択、第1及び第2のメモリ装着部に対して装着されるべきSRAM種別の選択、第1及び第2のメモリ装着部に対するバッテリバックアップ有無の選択、及び第2モード指定時のメモリ割付ルールの取り決めにより、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに対応するものであるから、双方の仕様に対応するについて、共通のASIC及び回路基板を使用することが可能となり、これにより2種類の製品仕様に対して低コストに対応することが可能となるのである。
好ましい実施の一形態としては、バックアップ機能付きのIOメモリ仕様に対応するためには、ASICに対するモード指定を第1モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、かつ第2のメモリ装着部に装着される中速SRAMをバッテリバックアップし、ECC機能付きのIOメモリ仕様に対応するためには、ASICのモード指定を第2モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、第1のメモリ装着部に装着される高速SRAM及び第2のメモリ装着部に装着される中速SRAMを何れもバッテリバックアップし、かつ第2モードのメモリ割付ルールが、2ワード分のIOデータを第1のメモリの各1アドレスに格納する一方、2ワード分の誤り訂正符号を第2のメモリの各1ワードに格納するものである。
このような構成によれば、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とを商品レベルで売り分けることができ、しかも回路基板を共用可能であって、メモリ部品の数も変わらないから、2つの製品仕様への対応を低コストに実現することができる。
好ましい更に他の実施の形態としては、バックアップ機能付きのIOメモリ仕様に対応するためには、ASICに対するモード指定を第1モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、かつ第2のメモリ装着部に装着される中速SRAMをバッテリバックアップし、ECC機能付きのIOメモリ仕様に対応するためには、ASICのモード指定を第2モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、かつ第2のメモリ装着部に装着される中速SRAMをバッテリバックアップし、かつ第2のメモリのメモリ割付ルールが、1ワード分のIOデータ及びその誤り訂正符号の双方を第1のメモリ及び第2のメモリの一連の各アドレスのそれぞれに格納するものである。
このような構成によっても、バッテリバックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とを商品レベルで売り分けることができ、しかも回路基板の共用が可能であって、メモリ部品の数も変わらないため、2種類の製品仕様を低コストに実現することができる。
本発明によれば、ASICに対するモード指定の選択、第1及び第2のメモリ装着部に対して装着されるべきSRAM種別の選択、第1及び第2のメモリ装着部に対するバッテリバックアップ有無の選択、及び第2モード指定時のメモリ割付ルールの取り決めにより、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに対応可能であるため、回路基板の共用化と使用メモリ部品数の同一化により、2種類の製品仕様への対応を低コストに実現することが可能となる。
以下に、この発明に係るPLC用の部品実装基板の好適な実施の一形態を添付図面(図1〜図8)を参照しながら詳細に説明する。
本発明の第1実施形態の構成図が図1に、同第1実施形態の説明図が図2にそれぞれ示されている。
本発明に係るPLC用の部品実装基板の全体の構成は、ASIC4及び2個のSRAM5,6の構成を除き、先に図9を参照して説明した従来の部品実装基板100の構成と同様である。但し、図9に示される部品実装基板100は16bitバスシステムであるのに対し、本発明の実施例の場合、32bitバスシステムとなっているが、これは両者の本質的な差異でないことは当業者であれば容易に理解されるであろう。
すなわち、図9に示される従来例と同様に、本発明に係る部品実装基板100は、ユーザプログラムを格納するためのUM1と、システムプログラムを格納するためのSROM2と、システムメモリに格納されたシステムプログラムを実行することによりIOリフレッシュ機能や周辺サービス機能等のPLCに必要な諸機能を実現するMPU3と、UM1に格納されたユーザプログラムを実行するための演算実行回路41が組み込まれたASIC4とが少なくとも搭載されている。
そして、この部品実装基板100には、IOメモリとしてのメモリ容量を有する第1のSRAM5が装着可能であって、かつ装着された第1のSRAMに対して、選択的にバッテリバックアップ可能とされた第1のメモリ装着部と、IOメモリとしてのメモリ容量を有する第2のSRAM6が装着可能であって、かつ装着された第2のSRAMに対して、選択的にバッテリバックアップ可能とされた第2のメモリ装着部とが設けられている。
ここで、「メモリ装着部」とあるのは、回路基板上に固定されたメモリパッケージ装着用のソケットや、メモリパッケージの半田付け固定用の端子パッド群の他、メモリ部品を装着するための様々な機構を全て総称するものである。また、「選択的にバッテリバックアップ可能」とあるのは、少なくとも回路基板上にバッテリバックアップ用の配線が敷設されており、これに予め或いは必要に応じてバッテリホルダが取り付けられ、装着されたメモリに対し停電時に電源供給が可能な構成を意味するものである。
さらに、ASIC4と第1のメモリ装着部(第1のSRAM5が装着される)との間には第1のデータバスB1が敷設されており、かつASIC4と第2のメモリ装着部(第2のSRAM6が装着される)との間には第2のデータバスB2が敷設されている。この例では、これらのデータバスB1,B2は32bit幅となされている。
ASIC4の内部には、先に説明した演算実行回路41の他に、フロントエンド回路42が組み込まれている。このフロントエンド回路42内には、後に詳細に説明するECC回路42aと、第1モードの制御回路42bと、第2モードの制御回路42cとが含まれている。
ECC回路42aは、演算実行回路41から書き込み指令が与えられたときには、その書き込み指令に係るIOデータに基づいて誤り訂正符号を生成する一方、読み出し指令が与えられたときには、その読み出し指令に係るデータに付された誤り訂正符号に基づいて誤り検出又は誤り訂正を行うように仕組まれている。
第1モードの制御回路42bと第2モードの制御回路42cとは、外部からのモード指定を受けて択一的に動作するように仕組まれている。ここで、外部からのモード指定の与え方については、従来より公知の様々な手法を採用すれば良い。例えば、ASIC4の外部端子の1つをモード指定用に割り当てておき、この外部端子の論理状態が“H”か“L”かによって、第1モードの制御回路42bと第2モードの制御回路42cとの何れか1つが能動化されるように構成することができる。
第1モードの制御回路42bは、第2のSRAM6から第1のSRAM5へとIOデータを一括コピーする起動時処理(図10(a)参照)と、書き込み指令が与えられた時には、その書き込み指令に係るIOデータを第1のSRAM5と第2のSRAM6とに並列に書き込む一方、読み出し指令が与えられた時には、その読み出し指令に係るIOデータを第1のSRAM5のみから読み出すように仕組まれた演算実行時処理(図10(b)参照)と、停電等によって電源が断たれた時に、第2のSRAM6をバッテリによりバックアップする電断時処理(図10(c)参照)とをサポートするように仕組まれている。
第2モードの制御回路42cは、書き込み指令が与えられた時には、その書き込み指令に係るIOデータをECC回路42aへ与えると共に、そのIOデータとECC回路42aにて生成された誤り訂正符号とを、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域内に、所定のメモリ割付ルール(詳細は後述)に従って書き込む書き込み時処理と、読み出し指令が与えられた時には、その読み出し指令に係るIOデータと誤り符号とを、所定のメモリ割付ルール(詳細は後述)に従って、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域から読み出し、これをECC回路42aへと与える読み出し時処理とをサポートするように仕組まれている。
以上の構成よりなる部品実装基板をバックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに対応させるための操作を図2を参照して説明する。
まず、本発明に係る部品実装基板を、バッテリバックアップ機能付きのIOメモリ仕様として構成するためには、図2(b)の表に示されるように、ASIC4の動作モードとしては「通常」モードを選択し、第1のSRAM5としては高速SRAMを装着し、第2のSRAM6としては中速SRAMを装着する。このようにして、動作モードの指定及び第1及び第2のSRAM5,6のメモリ種別選択を行うと、第1モードの制御回路42bが動作することによって、先に図10を参照して説明したように、IOMとBIOMとを用いたバックアップ方法が実行される。
これに対して、本発明に係る部品実装基板をECC機能付きのIOメモリ仕様とするためには、図2(b)の表に示されるように、ASIC4の動作モードの指定を「ECC有効」モードとし、第1のSRAM5のメモリ種別を中速SRAMとし、第2のSRAM6のメモリ種別を中速SRAMに設定する。
加えて、ECC有効モード時におけるメモリ割付ルールについては、図2(a)に示されるように設定する。すなわち、図2(a)において、51は第1のSRAM(32bit幅)5の上位16bit幅領域、52は同下位16bit幅領域、61は第2のSRAM(32bit幅)6の上位12bit幅領域の前半6bit領域、62は同後半6bit領域である。そして、図から明らかなように、第1のSRAMの上位16bit領域51にはIOデータが格納され、このIOデータに対応する誤り符号は、第2のSRAMの6bit領域61に格納され、一方第1のSRAMの下位16bit領域52にはIOデータが格納され、このIOデータに対応する誤り符号は、第2のSRAMの6bit幅領域62に格納される。このようなメモリ割付によれば、第1のSRAM5には全てのIOデータが格納される一方、第2のSRAM6にはIOデータに対応する誤り符号が格納される。
このように、図2(b)に示されるモード設定及びメモリ種別の選択、並びに、図2(a)に示されるメモリ割付を前提として、第2モードの制御回路42cが作動すれば、演算実行回路41から書き込み指令が与えられた時には、その書き込み指令に係るIOデータをECC回路42aへ与えると共に、そのIOデータとECC回路42aにて生成された誤り訂正符号とを、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域内に、所定のメモリ割付ルール(図2(a)参照)に従って書き込む書き込み時処理と、演算実行回路41から読み出し指令が与えられた時には、その読み出し指令に係るIOデータと誤り符号とを、所定のメモリ割付ルール(図2(a)参照)に従って、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域から読み出し、これをECC回路42aへと与える読み出し時処理とが実行され、これにより、ECC回路を使用したハードウェア的な誤り検出並びに誤り修正が行われて、PLCの動作信頼性が保たれることとなる。
加えて、この第1実施形態によれば、バッテリによりバックアップされることによって、第1のSRAM5自身がBIOMとしても機能することとなるため、停電時にあっても、IOデータが消失しないという利点がある。
次に、本発明に係る部品実装基板の第2実施形態の構成図が図3に、同説明図が図4にそれぞれ示されている。
この第2実施形態に示される部品実装基板と第1実施形態に示される部品実装基板との相違点は、図4(b)に示されるように、「通常」モードのみならず、「ECC有効」モードについても、第1のSRAM5として高速SRAMを使用した点にある。このような構成によれば、停電時における第1のSRAMの消費電力が多少増大するものの、使用者において「通常」モードと「ECC有効」モードを切り替えて使用することができる。
次に、本発明に係る部品実装基板の第3実施形態の構成図が図5に、同説明図が図6にそれぞれ示されている。
この第3実施形態においては、図5(b)及び図6(a)に示されるように、第1のSRAM5及び第2のSRAM6は、その前半16bit幅領域51,61が何れもIOデータ格納領域とされ、後半16bit幅領域52,62が誤り符号格納領域(冗長メモリ)とされている。そのため、第1及び第2のデータバスB1,B2は、その前半16bit幅領域がIOデータ送受信用、それに続く6bit幅領域が誤り符号送受信用とされている。
一方、この第3実施形態に係る部品実装基板を、バッテリバックアップ機能付きのIOメモリ仕様とするためには、図6(b)の表に示されるように、動作モード指定を「通常」モードとし、第1のSRAM5のメモリ種別を高速SRAMとし、第2のSRAM6のメモリ種別を中速SRAMとする。これにより、先に説明したように、当該部品実装基板は、バックアップ機能付きのIOメモリ仕様となる。
これに対して、同部品実装基板を、ECC機能付きのIOメモリ仕様とするためには、図6(b)の表に示されるように、動作モード指定については「ECC有効」モードとし、第1のSRAMのメモリ種別は高速SRAMとし、第2のSRAMのメモリ種別は中速SRAMとする。すなわち、この第3実施形態においては、「通常」モード及び「ECC有効」モードの何れにあっても、メモリの種別及びバッテリアックアップの仕様は同一である。
一方、先に説明したように、図6(a)に示されるように、「ECC有効」モード時のメモリ割付については、第1及び第2のSRAM5,6の何れにおいても、前半16bit幅領域51,61についてはIOデータが格納され、続く6bit幅領域52,62については誤り符号が格納されて冗長メモリとして機能することとなる。換言すれば、この第3実施形態にあっては、「ECC有効」モードのメモリ割付ルールが、1ワード(16bit)分のIOデータ及びその誤り訂正符号の双方を、第1のSRAM5及び第2のSRAM6の一連の各アドレスのそれぞれに格納するものであると言うことができる。
このような構成において、第2モードの制御回路42cが作動すると、演算実行回路41から書き込み指令が与えられた時には、その書き込み指令に係るIOデータをECC回路42aへ与えると共に、そのIOデータとECC回路42aにて生成された誤り訂正符号とを、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域内に、所定のメモリ割付ルール(図6(a)参照)に従って書き込む書き込み時処理と、演算実行回路41から読み出し指令が与えられた時には、その読み出し指令に係るIOデータと誤り符号とを、所定のメモリ割付ルール(図6(a)参照)に従って、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域から読み出し、これをECC回路42aへと与える読み出し時処理が実行され、その結果領域51,61に格納されたIOデータのビット反転は必要により修復され、これによりPLCの動作信頼性が向上することとなる。
なお、ECCを用いたエラー訂正処理については各種の文献で種々知られているため特段詳細には説明しないが、概略図示説明すれば、図7(a)に示されるように、書き込み時の処理にあっては、ホストからライトデータが与えられるのに応答して、ECC回路では、ハミングコード生成処理を実行し、ライトデータとパリティとを出力する。こうして出力されたライトデータ及びパリティは、主メモリと冗長メモリとにそれぞれ格納される。
一方、図7(b)に示されるように、読み出し時の処理にあっては、主メモリ及び冗長メモリからリードデータ及びパリティを読み出すと共に、これをECC回路に与える。するとECC回路では、パリティとリードデータに基づいて誤り検出及び訂正処理を実行し、訂正可能な場合にはリードデータをホストへと送り出すのに対し、訂正不能の場合にはその旨をホストへと通報するのである。
このとき、1bit誤り訂正、2bit誤り検出を行うための冗長メモリのビット幅については、図8に示されるように、バス幅(bit)に対し必要な冗長メモリ幅(bit)が与えられており、本実施形態におけるバス幅(16bit)の場合には、必要な冗長メモリ幅(bit)が6bitとされる。
以上詳細に説明したように、本発明に係るPLC用の部品実装基板100は、ユーザプログラムを格納するためのUM1と、システムプログラムを格納するためのSROM2と、SROM2に格納されたシステムプログラムを実行することによりIOリフレッシュ機能や周辺サービス機能などのPLCに必要な諸機能を実現するMPU3と、UMに格納されたユーザプログラムを実行するための演算実行回路41が組み込まれたASIC4とが少なくとも搭載されている(図9参照)。
また、この部品実装基板には、IOメモリとしてのメモリ容量を有する第1のSRAM5が装着可能であって、かつ装着された第1のSRAM5に対して、選択的にバッテリバックアップ可能とされた第1のメモリ装着部と、IOメモリとしてのメモリ容量を有する第2のSRAM6が装着可能であって、かつ装着された第2のSRAM6に対して選択的にバッテリバックアップ可能とされた第2のメモリ装着部とが設けられている。さらに、この部品実装基板には、ASIC4と第1のメモリ装着部との間には第1のデータバスB1が敷設されており、かつASIC4と第2のメモリ装着部との間には第2のデータバスB2が敷設されている(図1、図3、図5参照)。
それにより、MPU3とASIC4とが動作することにより、PLCのCPUとしての機能が実現されるものである。
そして、ASIC4の内部には、書き込み指令が与えられた時には、その書き込み指令に係るIOデータに基づいて誤り訂正符号を生成する一方、読み出し指令が与えられた時には、その読み出し指令に係るデータに付された誤り訂正符号に基づいて誤り検出又は誤り訂正を行うように仕組まれたECC回路(図7,図8参照)42aと、外部からのモード指定を受けて択一的に動作する第1モードの制御回路42bと第2のモードの制御回路42cとが組み込まれている(図1、図3、図5参照)。
第1モードの制御回路42bは、書き込み指令が与えられた時には、その書き込み指令に係るIOデータを第1のSRAM5と第2のSRAM6とに並列に書き込む一方、読み出し指令が与えられた時には、その読み出し指令に係るIOデータを第1のSRAM5のみから読み出すように仕組まれた演算実行時処理(図10(b)参照)と、第2のSRAM6から第1のSRAM5へとIOデータを一括コピーする起動時処理(図10(a)参照)とをサポートするように仕組まれている。
一方、第2モードの制御回路42cは、書き込み指令が与えられた時には、その書き込み指令に係るIOデータをECC回路42aへ与えると共に、そのIOデータとECC回路42aにて生成された誤り訂正符号とを、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域内に、所定のメモリ割付ルール(図2(a)、図4(a)、図6(a)参照)に従って書き込む書き込み時処理と、読み出し指令が与えられた時には、その読み出し指令に係るIOデータと誤り符号とを、所定のメモリ割付ルールに従って、第1のSRAM5と第2のSRAM6とから構成される記憶対象領域から読み出し、これをECC回路42aへと与える読み出し時処理とをサポートするように仕組まれている。
従って、本発明のPLC用の部品実装基板によれば、ASIC4に対するモード指定の選択、第1及び第2のメモリ装着部に対して装着されるべきSRAM5,6の種別の選択、第1及び第2のメモリ装着部に対するバッテリバックアップ有無の選択、及び第2モード指定時のメモリ割付ルールの取り決めにより、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに低コストで対応可能となるのである。
なお、以上の実施形態においては、本発明を32bitバスシステムに適用したが、本発明の適用はこれに限定されるものではなく、16bit幅、64bit幅、128bit幅などのその他のバスシステムにも応用可能であることは勿論である。
本発明によれば、ASICに対するモード指定の選択、第1及び第2のメモリ装着部に対して装着されるべきSRAM種別の選択、第1及び第2のメモリ装着部に対するバッテリバックアップ有無の選択、及び第2モード指定時のメモリ割付ルールの取り決めにより、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに低コストで対応可能となる利点がある。
本発明の第1実施形態の構成図である。 本発明の第1実施形態の説明図である。 本発明の第2実施形態の構成図である。 本発明の第2実施形態の説明図である。 本発明の第3実施形態の構成図である。 本発明の第3実施形態の説明図である。 ECCを用いたエラー訂正処理の説明図である。 1bit訂正、2bit検出を行うための冗長メモリ幅の説明図である。 CPUユニットの内蔵回路基板の搭載回路全体の構成図である。 IOMとBIOMとを用いたバックアップ方法の説明図である。 パソコン(主としてサーバ系)におけるECC機能実装例の説明図である。 本発明が解決しようとする課題の説明図(その1)である。 本発明が解決しようとする課題の説明図(その2)である。
符号の説明
1 ユーザメモリ
2 システムメモリ
3 マイクロプロセッサ
4 ASIC
5 第1のSRAM
6 第2のSRAM
7 ワークRAM
8 バッファユーザメモリ
9a,9b,9c,9d コネクタ
41 演算実行回路
42 フロントエンド回路
42a ECC回路
42b 第1モードの制御回路
42c 第2モードの制御回路
51 第1のSRAMの上位16bit領域
52 第1のSRAMの下位16bit領域
61 第2のSRAMの先頭12bitの前半6bit領域
62 第2のSRAMの先頭12bitの後半6bit領域
100 部品実装基板
B1 第1のデータバス
B2 第2のデータバス

Claims (5)

  1. ユーザプログラムを格納するためのユーザメモリと、システムプログラムを格納するためのシステムメモリと、システムメモリに格納されたシステムプログラムを実行することによりIOリフレッシュ機能や周辺サービス機能等のPLCに必要な諸機能を実現するマイクロプロセッサと、ユーザメモリに格納されたユーザプログラムを実行するための演算実行回路が組み込まれたASICとが少なくとも搭載され、
    IOメモリとしてのメモリ容量を有する第1のSRAMが装着可能であって、かつ装着された第1のSRAMに対して、選択的にバッテリバックアップ可能とされた第1のメモリ装着部と、
    IOメモリとしてのメモリ容量を有する第2のSRAMが装着可能であって、かつ装着された第2のSRAMに対して、選択的にバッテリバックアップ可能とされた第2のメモリ装着部と、が設けられ、さらに
    ASICと第1のメモリ装着部との間には第1のデータバスが敷設されており、かつASICと第2のメモリ装着部との間には第2のデータバスが敷設されており、
    それにより、前記マイクロプロセッサと前記ASICとが動作することにより、PLCのCPUとしての機能が実現されるPLC用の部品実装基板であって、
    前記ASICの内部には、
    書き込み指令が与えられたときには、その書き込み指令に係るIOデータに基づいて誤り訂正符号を生成する一方、読み出し指令が与えられたときには、その読み出し指令に係るデータに付された誤り訂正符号に基づいて誤り検出又は誤り訂正を行うように仕組まれたECC回路と、
    外部からのモード指定を受けて択一的に動作する第1モードの制御回路と第2モードの制御回路とが組み込まれており、
    第1モードの制御回路は、
    書き込み指令が与えられたときには、その書き込み指令に係るIOデータを第1のSRAMと第2のSRAMとに並列に書き込む一方、読み出し指令が与えられたときには、その読み出し指令に係るIOデータを第1のSRAMのみから読み出すように仕組まれた演算実行時処理と、第2のSRAMから第1のSRAMへとIOデータを一括コピーする起動時処理とをサポートするように仕組まれており、
    第2モードの制御回路は、
    書き込み指令が与えられたときには、その書き込み指令に係るIOデータをECC回路へ与えると共に、そのIOデータとECC回路にて生成された誤り訂正符号とを、第1のSRAMと第2のSRAMとから構成される記憶対象領域内に、所定のメモリ割付ルールにしたがって書き込む書き込み時処理と、読み出し指令が与えられたときには、その読み出し指令に係るIOデータと誤り符号とを、所定のメモリ割付ルールにしたがって、第1のSRAMと第2のSRAMとから構成される記憶対象領域から読み出し、これをECC回路へと与える読み出し時処理とをサポートするように仕組まれており、
    それにより、ASICに対するモード指定の選択、第1及び第2のメモリ装着部に対して装着されるべきSRAM種別の選択、第1及び第2のメモリ装着部に対するバッテリバックアップ有無の選択、及び第2モード指定時のメモリ割付ルールの取り決めにより、バックアップ機能付きのIOメモリ仕様とECC機能付きのIOメモリ仕様とに対応可能とした、ことを特徴とするPLC用の部品実装基板。
  2. バックアップ機能付きのIOメモリ仕様に対応するためには、
    ASICに対するモード指定を第1モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、かつ第2のメモリ装着部に装着される中速SRAMをバッテリバックアップし、
    ECC機能付きのIOメモリ仕様に対応するためには、
    ASICのモード指定を第2モードとし、第1のメモリ装着部及び第2のメモリ装着部にはいずれも中速SRAMを装着し、第1のメモリ装着部に装着される中速SRAM及び第2のメモリ装着部に装着される中速SRAMをいずれもバッテリバックアップし、かつ第2モードのメモリ割付ルールが、2ワード分のIOデータを第1のメモリの各1アドレスに格納する一方、2ワード分の誤り訂正符号を第2のメモリの各1ワードに格納するものである、ことを特徴とする請求項1に記載のPLC用の部品実装基板。
  3. バックアップ機能付きのIOメモリ仕様に対応するためには、
    ASICに対するモード指定を第1モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、かつ第2のメモリ装着部に装着される中速SRAMをバッテリバックアップし、
    ECC機能付きのIOメモリ仕様に対応するためには、
    ASICのモード指定を第2モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、第1のメモリ装着部に装着される高速SRAM及び第2のメモリ装着部に装着される中速SRAMをいずれもバッテリバックアップし、かつ第2モードのメモリ割付ルールが、2ワード分のIOデータを第1のメモリの各1アドレスに格納する一方、2ワード分の誤り訂正符号を第2のメモリの各1ワードに格納するものである、ことを特徴とする請求項1に記載のPLC用の部品実装基板。
  4. バックアップ機能付きのIOメモリ仕様に対応するためには、
    ASICに対するモード指定を第1モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、かつ第2のメモリ装着部に装着される中速SRAMをバッテリバックアップし、
    ECC機能付きのIOメモリ仕様に対応するためには、
    ASICのモード指定を第2モードとし、第1のメモリ装着部には高速SRAM、第2のメモリ装着部には中速SRAMをそれぞれ装着し、かつ第2のメモリ装着部に装着される中速RAMをバッテリバックアップし、かつ第2モードのメモリ割付ルールが、1ワード分のIOデータ及びその誤り訂正符号の双方を第1のメモリ及び第2のメモリの一連の各アドレスのそれぞれに格納するものである、ことを特徴とする請求項1に記載のPLC用の部品実装基板。
  5. 請求項1〜4のいずれかに記載の部品実装基板が装着されたPLC。
JP2007322819A 2007-12-14 2007-12-14 Plc用の部品実装基板 Expired - Fee Related JP5099342B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007322819A JP5099342B2 (ja) 2007-12-14 2007-12-14 Plc用の部品実装基板

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007322819A JP5099342B2 (ja) 2007-12-14 2007-12-14 Plc用の部品実装基板

Publications (2)

Publication Number Publication Date
JP2009146168A JP2009146168A (ja) 2009-07-02
JP5099342B2 true JP5099342B2 (ja) 2012-12-19

Family

ID=40916703

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007322819A Expired - Fee Related JP5099342B2 (ja) 2007-12-14 2007-12-14 Plc用の部品実装基板

Country Status (1)

Country Link
JP (1) JP5099342B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT509181B1 (de) * 2009-11-04 2015-09-15 Bachmann Gmbh Multifunktionales ein- und ausgangsmodul für speicherprogrammierbare steuerungen
JP6717059B2 (ja) 2016-06-06 2020-07-01 オムロン株式会社 制御システム
JP6812736B2 (ja) 2016-10-07 2021-01-13 オムロン株式会社 演算装置および制御装置
CN109061442A (zh) * 2018-08-13 2018-12-21 迈普通信技术股份有限公司 检测方法、装置及可编程芯片
JP6717420B1 (ja) * 2019-11-14 2020-07-01 富士電機株式会社 プログラマブルコントローラ用のベースボード及びプログラマブルコントローラシステム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63217455A (ja) * 1987-03-05 1988-09-09 Yokogawa Electric Corp Ramバツクアツプシステム
JPH04229302A (ja) * 1990-12-27 1992-08-18 Omron Corp 制御処理装置
JPH07121444A (ja) * 1993-10-21 1995-05-12 Fuji Xerox Co Ltd 補助記憶装置
JPH1125005A (ja) * 1997-07-07 1999-01-29 Fanuc Ltd メモリ制御方法
JP3827068B2 (ja) * 2001-05-18 2006-09-27 オムロン株式会社 コントローラ
JP2006039851A (ja) * 2004-07-26 2006-02-09 Toshiba Corp プログラマブルコントローラ

Also Published As

Publication number Publication date
JP2009146168A (ja) 2009-07-02

Similar Documents

Publication Publication Date Title
JP4994112B2 (ja) 半導体集積回路装置およびメモリ制御方法
JP5265654B2 (ja) システムにおけるメモリ冗長性の制御
US6785835B2 (en) Raid memory
US20060085671A1 (en) Error indication in a raid memory system
US20040168101A1 (en) Redundant memory system and memory controller used therefor
CN101246443B (zh) 用于恢复存储器故障的方法和系统
JPH07191915A (ja) コンピュータ・システム、メモリ・カード、及びその操作方法
CN104798059B (zh) 在检查点外部处理写入数据的多个计算机系统
JP5099342B2 (ja) Plc用の部品実装基板
US10319461B2 (en) Low-overhead mechanism to detect address faults in ECC-protected memories
JP2009516277A (ja) 少なくとも2つのレジスタ付き処理ユニットを有するシステムにおいてエラーを除去する装置および方法
TWI510912B (zh) 多核電路中之容錯
CN104077375A (zh) 一种cc-numa系统中节点的错误目录的处理方法和节点
JP2001249911A (ja) データ転送方法及びデータ処理システム
JP4050091B2 (ja) 半導体メモリ装置
JP2009505189A (ja) 少なくとも部分的に安全上重大なプロセスの制御または調節用マイクロプロセッサシステム
WO2021088368A1 (zh) 一种存储器的修复方法及装置
JPH1049448A (ja) 冗長化メモリのエラー訂正機構
US9043655B2 (en) Apparatus and control method
JP2009505188A (ja) 少なくとも部分的に安全上重大なプロセスの制御または調節用マイクロプロセッサシステム
JPWO2012046343A1 (ja) メモリモジュール冗長化方法、記憶処理装置、及びデータ処理装置
JP5964265B2 (ja) 半導体集積回路装置
JP2910692B2 (ja) ランダムアクセスメモリの試験の方法
JP2002006910A (ja) 更新機能付きプログラマブルコントローラおよびプログラマブルコントローラの機能拡張ユニットの機能更新方法
JP2005234855A (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101006

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: 20120829

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: 20120911

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151005

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5099342

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