JP2004173119A - 半導体集積回路、記憶制御装置 - Google Patents
半導体集積回路、記憶制御装置 Download PDFInfo
- Publication number
- JP2004173119A JP2004173119A JP2002338711A JP2002338711A JP2004173119A JP 2004173119 A JP2004173119 A JP 2004173119A JP 2002338711 A JP2002338711 A JP 2002338711A JP 2002338711 A JP2002338711 A JP 2002338711A JP 2004173119 A JP2004173119 A JP 2004173119A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- input
- data
- data signal
- flip
- 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.)
- Granted
Links
Images
Landscapes
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
【解決手段】データ信号が入力される第1の素子24aと、前記データ信号に対応する検証コードが入力される第2の素子24bと、前記第1の素子の動作を制御する第1の制御回路と、前記第2の素子の動作を制御する第2の制御回路と、前記第1の素子によって制御された前記データ信号と前記第2の素子によって制御された前記検証コードとを対照した結果を出力する出力回路22と、を有する半導体集積回路。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、半導体集積回路並びにその半導体集積回路を備えた記憶制御装置に関する。
【0002】
【従来の技術】
コンピュータシステムや記憶制御装置等において、データ転送を伴う数多くの半導体集積回路(以下、「データ転送回路」と称する)が用いられる。データ転送回路は、データ信号の伝搬、選択、演算などの工程を経て、データ信号を転送するデータパス部と、データパス部において前述の工程に対応した素子の動作を制御する制御回路と、を備える構成となる。データ転送回路では、高い信頼性が要求されるため、同一内容の論理演算を行う等価な回路が二重化されるよう配置され、一方の回路が故障したときに直ちに他方の回路に切り換えるように構成される。
【0003】
個々のデータ転送回路では、パリティビット又は、ハミング符号やCRC(Cyclic Redundancy Code)等の誤り訂正符号(Error Correcting Code)がデータ信号に付加される。そして、データ信号に付加されたパリティビット又は誤り訂正符号を用いて、データ転送中等に発生するビット誤り等の障害を検出する仕組みが備わっている。しかし、この仕組みでは、データ転送回路において、制御回路自体の故障や、制御回路からデータパス部に対して制御信号を供給する際の障害等(これらを総称して、「制御系の障害」と称する)を検出できない。
【0004】
例えば、図6に示す従来のデータ転送回路20において、フリップフロップ24に供給されるクロックイネーブル信号(以下、CE信号と称す)の障害が検出できないことを、図7に示すタイミングチャートを用いて説明する。
【0005】
図7では、各クロックサイクル(T0〜T4期間)にわたって、フリップフロップ24に入力されるデータ信号(1Byte)とパリティビット(1bit)とに含まれる“1”(又は“0”)のビットを合計した数は、規定された偶数個(又は奇数個)であることを前提とする(以下、このように、データ信号(1Byte)とパリティビット(1bit)との間にて規定された関係のことを「パリティの関係」と称する)。
【0006】
まず、従来のデータ転送回路20において、CE信号が正常な場合での動作について説明する。CE信号は、T1期間にてLレベルからHレベルに切り替わり、フリップフロップ24に供給されるクロック信号は有効になるものとする。そして、T1期間でのクロック信号のエッジにて、フリップフロップ24に入力されるデータ信号t1及びパリティビットt1が保持される(図7:(A))。
【0007】
保持されたデータ信号t1及びパリティビットt1は、フリップフロップ24の次段となるパリティチェッカ22等に対して、T2期間での入力となる(図7:(B))。そして、パリティチェッカ22は、T3期間において、T2期間に入力されたデータ信号t1とパリティビットt1とを用いてパリティチェックする。ここで、データ信号t1とパリティビットt1との間のパリティの関係は正常であるため、パリティチェッカ22は、パリティチェックの結果を“no error”として、エラー検出信号を出力する(図7:(C))。
【0008】
つぎに、従来のデータ転送回路20において、CE信号に障害が発生した場合での動作について説明する。なお、T1期間において、CE信号がLレベルからHレベルに切り替わらず、Lレベルの状態を維持するといった障害を想定する。この場合、T1期間では、フリップフロップ24に供給されるクロック信号が無効となるので、データ信号t1及びパリティビットt1は保持されない(図7:(D))。
【0009】
そこで、T1期間の前のクロックサイクルにて保持されていたデータ信号t0及びパリティビットt0が、フリップフロップ24の次段となるパリティチェッカ22等に対して、T2期間での入力となる(図7:(E))。そして、パリティチェッカ22は、T3期間において、T2期間にて入力されたデータ信号t0とパリティビットt0とを用いてパリティチェックする。ここで、データ信号t0とパリティビットt0との間のパリティの関係は正常であるため、パリティチェッカ22は、パリティチェック結果を“no error”として、エラー検出信号を出力する(図7:(F))。
【0010】
このようにして、従来のデータ転送回路20では、CE信号に障害が発生したにも関わらず、その障害を検出できない(図7:(F))という不都合が生じていた。そこで、このような不都合を回避するために、正のデータ転送回路に対し、同一内容となる副のデータ転送回路を更に一つ配置する。そして、正、副のデータ転送回路の出力信号を比較して相違があれば障害として検出可能とする「完全二重化方式」と呼ばれる仕組みが提案されている(例えば、特許文献1参照)。
【0011】
【特許文献1】
特開2000−188553号公報
【0012】
【発明が解決しようとする課題】
ここで、例えば、図6に示すデータ転送回路20に対して、完全二重化方式を採用した構成を提案する(図8参照)。図8に示す構成により、比較器26において、正のデータパス部21a及び副のデータパス部21bの各出力信号を比較することによって、前述した制御系の障害が検出可能となる。しかしながら、完全二重化方式を採用することによって、同一内容の回路が更に追加された構成をとるので、データ転送回路の回路規模は著しく増大する。そして、回路規模の増大によって、実装面積が限られた基板上に収容される機能(ブロック)数が低減され、全体としての処理能力の低下を招くことになる。
【0013】
また、近年の微細化等の半導体技術の進展によって、データ転送回路の制御は複雑化してきており、それに伴って転送データ量も増大している。ここで、転送データ量は、転送ビットレート(単位時間当たりの転送ビット数)とデータパス幅との積で決定される。そのため、転送データ量の増大化に伴って、転送ビットレートと同時にデータパス幅を大きくしなければならない。しかしながら、完全二重化方式を採用すると、データパス幅を大きくすることによって、加速度的に回路規模が増大することとなる。
【0014】
本発明は、以上のような経緯に基づいてなされたものであり、半導体集積回路並びにその半導体集積回路を備えた記憶制御装置を提供することを目的とする。
【0015】
【課題を解決するための手段】
前記課題を解決するための主たる本発明は、
データ信号が入力される第1の素子と、
前記データ信号に対応する検証コードが入力される第2の素子と、
前記第1の素子の動作を制御する第1の制御回路と、
前記第2の素子の動作を制御する第2の制御回路と、
前記第1の素子によって制御された前記データ信号と、前記第2の素子によって制御された前記検証コードと、を対照した結果を出力する出力回路と、
を有する半導体集積回路である。
本発明の他の特徴については、添付図面及び本明細書の記載により明らかにする。
【0016】
【発明の実施の形態】
===開示の概要===
以下の開示により、少なくとも次のことが明らかにされる。
ここで、前述の「半導体集積回路」とは、例えば、後述の「データ転送回路」のことである。また、前述の「第1の素子」及び「第2の素子」とは、例えば、後述の「フリップフロップ」や「セレクタ回路」のことである。また、前述の「出力回路」とは、例えば、後述の「パリティチェッカ」のことである。また、前述のデータ信号と検証コードとの「対応」とは、例えば、検証コードをパリティビットとする場合、データ信号とパリティビットに含まれる“1”(又は“0”)のビットを合計した数が、偶数個(又は奇数個)となるように規定された関係となる。
【0017】
本発明によると、データ信号が入力される第1の素子とそのデータ信号の検証コードが入力される第2の素子とを分離し、第1の素子の動作と第2の素子の動作をそれぞれ独立に制御するために制御回路を個々に備える構成において、例えば、第1又は第2の制御回路の故障や、第1又は第2の制御回路から第1又は第2の素子へ制御信号を供給する際の障害などによって、第1又は第2の素子において制御される動作が正常に行われなかった場合を想定する。
【0018】
この場合、出力回路において、第1の素子によって制御されたデータ信号と第2の素子によって制御された検証コードとを対照すると、データ信号と検証コードとの前記対応が成立しないことが生じうる。そのため、第1又は第2の素子において制御された動作の障害を検出することが可能となり、半導体集積回路の信頼性を向上することができる。
【0019】
また、本発明では、完全二重化方式を採用した従来の半導体集積回路と比較すると、第1及び第2の素子を二重化しなくて済む等、回路規模の増大化を抑えつつ、第1又は第2の素子にて制御された動作の障害を検出することが可能となる。さらに、本発明では、完全二重化方式を採用した従来の半導体集積回路と比較すると、回路規模の増大化を抑えつつ、データパス幅を大きくする、すなわち、データ転送量を大きくすることができる。
【0020】
本発明の第2の態様として、前記データ信号と前記検証コードは、前記素子に対して同クロックサイクルにて入力され、前記出力回路は、前記素子によって制御された前記データ信号と前記検証コードとが同クロックサイクルにて入力され、前記同クロックサイクルにて入力された前記データ信号と前記検証コードとを対照した結果を出力してもよい。
【0021】
この構成により、第1又は第2の素子において制御された動作が当該クロックサイクルにて正常に行われなかった場合(障害が発生した場合)、出力回路においてデータ信号と検証コードとを対照すると、第1及び第2の素子に対してデータ信号と検証コードが入力された際のクロックサイクルが異なり、前記対応が成立しないことが生じうる。そのために、第1又は第2の素子において制御された動作の障害を検出することが可能となり、半導体集積回路の信頼性を向上することができる。
【0022】
本発明の第3の態様として、前記検証コードをパリティビット又は誤り訂正符号とし、前記出力回路は、前記第1の素子によって制御された前記データ信号と、前記第2の素子によって制御された前記パリティビット又は前記誤り訂正符号と、を対照した結果を出力してもよい。
ここで、前述した「誤り訂正符号」とは、例えば、後述の「ハミング符号」や「CRC(Cyclic Redundancy Code)」のことである。
【0023】
このようにして、第1又は第2の素子において制御された動作の障害以外にも、種々採用した誤り検出方式に応じて、データ転送中等に発生するビット誤り等の障害もあわせて検出できるので、半導体集積回路の信頼性を向上することができる。
【0024】
本発明の第4の態様として、前記第1の素子を、前記データ信号が入力される第1のフリップフロップとし、前記第2の素子を、前記検証コードが入力される第2のフリップフロップとし、前記第1の制御回路は、前記第1のフリップフロップの動作を制御し、前記第2の制御回路は、前記第2のフリップフロップの動作を制御してもよい。
【0025】
ここで、前述した「第1又は第2のフリップフロップの動作」とは、例えば、後述の「フリップフロップの出力信号を強制的にリセットするクリア動作」、「フリップフロップの出力信号を強制的に“H”又は“L”レベルにセットするプリセット動作」、「クロック信号の有効・無効を設定する動作」等である。すなわち、本発明によって、第1又は第2のフリップフロップにおいて制御されるクリア動作、プリセット動作、クロック信号の有効・無効を設定する動作などの障害を検出することができ、半導体集積回路の信頼性を向上させることができる。
【0026】
本発明の第5の態様として、前記第1の素子を、前記データ信号のデータ保持に用いられるクロック信号の有効・無効を制御可能な第1のフリップフロップとし、前記第2の素子を、前記検証コードのデータ保持に用いられるクロック信号の有効・無効を制御可能な第2のフリップフロップとし、前記第1の制御回路は、前記第1のフリップフロップに入力される前記クロック信号の有効・無効を制御し、前記第2の制御回路は、前記第2のフリップフロップに入力される前記クロック信号の有効・無効を制御してもよい。
【0027】
このようにして、第1又は第2のフリップフロップにおいて制御されたクロック信号の有効・無効を設定する動作の障害を検出することができ、半導体集積回路の信頼性を向上することができる。
【0028】
本発明の第6の態様として、前記第1の素子を、複数の前記データ信号をセレクト動作する第1のセレクト回路とし、前記第2の素子を、前記複数のデータ信号ごとに付加される複数の前記検証コードをセレクト動作する第2のセレクト回路とし、前記第1の制御回路は、前記第1のセレクト回路における前記セレクト動作を制御し、前記第2の制御回路は、前記第2のセレクト回路における前記セレクト動作を制御してもよい。
ここで、前述の「セレクト回路」とは、例えば、後述の「マルチプレクサ」や「デマルチプレクサ」のことである。このようにして、第1又は第2のセレクト回路において制御されたセレクト動作の障害を検出することができ、半導体集積回路の信頼性を向上することができる。
【0029】
本発明の第7の態様として、ホストコンピュータと記憶装置との間で授受されるデータを記憶しておくためのキャッシュメモリと、前記ホストコンピュータと前記キャッシュメモリとの間のデータ転送を制御するチャネル制御部と、前記キャッシュメモリと前記記憶装置との間のデータ転送を制御するディスク制御部と、前記キャッシュメモリを制御するキャッシュメモリ制御部と、前記チャネル制御部と前記ディスク制御部とを通信可能に接続するためのスイッチング制御部と、を有する記憶制御装置において、前記チャネル制御部、前記ディスク制御部、前記キャッシュメモリ制御部又は前記スイッチング制御部の少なくともいずれか一つは、データ信号が入力される第1の素子と、前記データ信号に対応する検証コードが入力される第2の素子と、前記第1の素子の動作を制御する第1の制御回路と、前記第2の素子の動作を制御する第2の制御回路と、前記第1の素子によって制御された前記データ信号と前記第2の素子によって制御された前記検証コードとを対照した結果を出力する出力回路と、を有する半導体集積回路を備えてもよい。
ここで、前述の「記憶制御装置」とは、例えば、後述の「ディスクアレイ装置」や「テープアレイ装置」のことである。
【0030】
このようにして、記憶制御装置は、従来の半導体集積回路に対しての回路修正や追加回路が少なく済み、第1又は第2の素子にて制御された動作の障害を検出可能な半導体集積回路を備えたことにより、低コストにて高信頼性を実現できる。
【0031】
===実施例の具体的な説明===
<データ転送回路のブロック図>
図1に本発明の一実施形態となるデータ転送回路の機能ブロック図を示す。図1に示すデータ転送回路20は、システムにおいて複数使用する内の一つであり、前段にデータ転送回路10が配置され、後段にデータ転送回路30が配置される。データ転送回路20は、前段のデータ転送回路10よりデータ信号が入力されると、データ信号の伝搬、選択、演算などの各工程を経て、後段のデータ転送回路30にデータ転送する機能を有する。なお、前段のデータ転送回路10から入力されるデータ信号(1Byte)に対しては、パリティビット(1bit:検証コード)が付加されるものとする。(なお、データ信号のサイズは、“1Byte”に限定されるものではない。)
データ転送回路20は、データパス部21と、制御回路23と、パリティチェッカ22と、を備える。
データパス部21は、パリティビット(1bit)が付加されたデータ信号(1Byte)の伝搬、選択、演算などの各工程を経て、データ転送する回路である。また、データパス部21は、データ信号(1Byte)が入力される第1の素子を有する第1のデータパス部と、パリティビット(1bit)が入力される第2の素子を有する第2のデータパス部と、に分離される。
【0032】
なお、図1には、第1及び第2の素子として、クロックイネーブル信号(以下、CE信号と称す)に基づいてクロック信号の有効・無効を制御可能な、クロックイネーブル端子付きDフリップフロップ24a(第1の素子)、24b(第2の素子)を示している。
【0033】
制御回路23は、データパス部21において前述の各工程(データ信号の伝搬、選択、演算など)に対応した素子の動作を制御する回路であり、例えば、ステートマシンによって実現される。また、制御回路23は、第1の素子の動作を制御するための第1の制御回路23aと、第2の素子の動作を制御するための第2の制御回路23bと、に分離される。
【0034】
ここで、第1の制御回路23aは、フリップフロップ24aに対してCE信号(第1のCE信号と称す)を出力する。また、第2の制御回路23bは、フリップフロップ24bにCE信号(第2のCE信号と称す)を、前述した第1のCE信号と同クロックサイクルにて出力するものとする。
【0035】
パリティチェッカ(出力回路)22では、フリップフロップ24aにて保持されたデータ信号(1Byte)と、フリップフロップ24bにて保持されたパリティビット(1Bit)と、が同クロックサイクルにて入力される。また、パリティチェッカ22は、同クロックサイクルにて入力されたデータ信号(1Byte)とパリティビット(1Bit)とを用いてパリティチェックし、その結果をエラー検出信号として出力する。
【0036】
なお、データ信号(1Byte)に付加するコードとして、パリティビット以外にも、ハミング符号やCRC(Cyclic Redundancy Code)等の誤り訂正符号(Error Correcting Code)を用いることができる。この場合、パリティチェッカ22は、採用する誤り検出方式に応じた回路に代替可能である。
【0037】
以上の説明により、データ転送回路20は、データ信号が入力される第1の素子(フリップフロップ24a等)と検証コード(パリティビットや誤り訂正符号等)が入力される第2の素子(フリップフロップ24b等)とを分離し、第1の素子の動作と第2の素子の動作をそれぞれ独立に制御するために第1の制御回路23aと第2の制御回路23bを個々に備える構成とする。
【0038】
この構成により、データ転送回路20は、図8に示したような完全二重化方式のデータ転送回路20と比較すると、データパス部21を二重化しないで済む等、回路規模の増大化を抑えつつ、制御回路23自体の故障や、制御回路23からデータパス部21に対して制御信号を供給する際の障害等(これらを総称して、制御系の障害と称す)を検出することができる。
【0039】
さらに、データ転送回路20は、図8に示すような完全二重化方式のデータ転送回路20と比較して、回路規模の増大化を抑えつつ、データパス幅を大きくする、すなわち、データ転送量を大きくすることができる。
【0040】
<データ転送回路の動作>
図2は、データ転送回路20のフリップフロップ24aへ供給される第1のCE信号の障害を例として、その検出動作を説明するための主要信号のタイミングチャートを示している。なお、フリップフロップ24bへ供給される第2のCE信号の障害の検出動作については、第1のCE信号の障害の検出動作と同様であるために、以下では説明を省略する。
【0041】
まず、データ転送回路20において、第1及び第2のCE信号が正常な場合の動作を説明する。なお、各クロックサイクル(T0〜T4期間)にわたって、フリップフロップ24a、24bに対して同クロックサイクルにて入力されるデータ信号(1Byte)とパリティビット(1bit)においては、“1”(又は“0”)のビットを合計した数が、規定された偶数個(又は奇数個)となることを前提とする。なお、このように、データ信号(1Byte)とパリティビット(1bit)との間にて規定された関係のことを「パリティの関係」と称する。
【0042】
また、第1及び第2のCE信号は、T1期間にてLレベルからHレベルに切り替わり、フリップフロップ24a、24bに供給されるクロック信号は有効な状態になるものとする。
【0043】
このような前提のもと、フリップフロップ24a、24bでは、T1期間でのクロック信号のエッジにて、データ信号t1及びパリティビットt1が保持される(図2:(A))。そして、保持されたデータ信号t1及びパリティビットt1は、フリップフロップ24a、24bの次段となるパリティチェッカ22等に対し、T2期間での入力となる(図2:(B))。
【0044】
パリティチェッカ22は、T3期間において、T2期間に入力されたデータ信号t1とパリティビットt1とを用いてパリティチェックする。ここで、データ信号t1とパリティビットt1の間のパリティの関係は正常であるため、パリティチェッカ22は、パリティチェックの結果を“no error”として、エラー検出信号を出力する(図2:(C))。
【0045】
つぎに、データ転送回路20において、第1のCE信号に障害が発生した場合の動作を説明する。なお、第1のCE信号の障害としては、T1期間において、第1のCE信号がLレベルからHレベルに切り替わらず、Lレベルの状態を維持するといった障害を想定する(図2:(D))。この場合、T1期間では、フリップフロップ24aに供給されるクロック信号が無効な状態となり、データ信号t1は保持されない。一方、フリップフロップ24bでは、第2のCE信号が正常であるので、パリティビットt1がT1期間において保持される(図2:(D))。
【0046】
そこで、パリティチェッカ22のT2期間における入力としては、フリップフロップ24aにてT1期間の前のクロックサイクルに保持されていたデータ信号t0と、フリップフロップ24bにてT1期間に保持されたパリティビットt1となる(図2:(E))。そして、T3期間において、パリティチェッカ22は、データ信号t0とパリティビットt1とを用いてパリティチェックする。ここで、パリティビットt1は、データ信号t0に基づいてパリティコード化されたものではないので、データ信号t0とパリティビットt1との間のパリティの関係は基本的には成立しない。そのため、パリティチェッカ22は、パリティチェックの結果を“error”としてエラー検出信号を出力し(図2:(F))、第1のCE信号の障害を検出する。
【0047】
以上の説明により、第1又は第2の素子(フリップフロップ24a、24b)において制御される動作が正常に行われなかった場合、出力回路(パリティチェッカ22等)において、第1の素子によって制御されたデータ信号と第2の素子によって制御された検証コードとを対照すると、データ信号と検証コードとの間の対応(パリティの関係等)が成立しないことが起こりうる。そのため、データ転送回路20は、第1又は第2の素子において制御された動作の障害を検出することが可能となり、前述したように回路規模の増大化を抑えつつ、高信頼性を実現できる。
【0048】
<セレクト回路>
図3に示すように、データパス部21を構成するセレクト回路25(マルチプレクサ、デマルチプレクサなど)に対して、セレクト動作を制御するためのセレクト制御信号の障害を検出することも可能である。
【0049】
同図によると、データパス部21の第1のデータパス部側では、データ信号(1Byte)を伝送するための信号線が組合せ回路(不図示)等で分岐されている。そして、その分岐された複数の信号線からフリップフロップ24a、24c等を介して伝送されてくるデータ信号(1Byte)をセレクト動作するセレクト回路25aを備える。
【0050】
また、データパス部21の第2のデータパス部側では、前述したデータ信号(1Byte)のパリティビット(1bit)を伝送するための信号線が組合せ回路(不図示)等で分岐されている。そして、その分岐された複数の信号線からフリップフロップ24b、24dなどを介して伝送されてくるパリティビット(1bit)をセレクト動作するセレクト回路25bを備える。
【0051】
このセレクト回路25a、25bに対して、第1の制御回路23aは、セレクト回路25aでのセレクト動作を制御するための第1のセレクト制御信号を出力する。また、第2の制御回路23bは、セレクト回路25bでのセレクト動作を制御するための第2のセレクト制御信号を、前述した第1のセレクト制御信号と同クロックサイクルにて出力するものとする。パリティチェッカ22では、セレクト回路25aにてセレクトされたデータ信号(1Byte)と、セレクト回路25bにてセレクトされたパリティビット(1bit)と、が同クロックサイクルにて入力される。
【0052】
パリティチェッカ22は、同クロックサイクルにて入力されたデータ信号(1Byte)とパリティビット(1bit)を用いてパリティチェックし、その結果をエラー検出信号として出力する。
【0053】
この構成により、データ転送回路20は、図6に示すような従来のデータ転送回路20と同様な回路規模にて、前述した制御系の障害を検出することができる。また、図8に示す完全二重化方式のデータ転送回路20と比較した場合、データパス部21を二重化しないで済む等、回路規模の増大化を抑えつつ、前述した制御系の障害を検出することができる。さらに、データ転送回路20は、図8に示すような完全二重化方式のデータ転送回路20と比較して、回路規模の増大化を抑えつつ、データパス幅を大きくする、すなわち、データ転送量を大きくすることができる。
【0054】
図4は、図3に示すデータ転送回路20において、セレクト回路25aへ供給される第1のセレクト制御信号の障害を例として、その検出動作を説明するための主要信号のタイミングチャートを示している。なお、第2のセレクト制御信号の障害の検出動作は、第1のセレクト制御信号の障害の検出動作と同様であるので、以下説明を省略する。
【0055】
図4に示すように、正常な場合では、第1及び第2のセレクト制御信号は、T2期間における所定のタイミングにてLレベルからHレベルに切り替わる。その結果として、セレクト回路25a、25bでは、D0端子入力からD1端子入力のセレクトに切り替わるものとする。
【0056】
ここで、T2期間において、第1のセレクト制御信号がLレベルからHレベルに切り替わらず、Lレベルの状態を維持するといった障害を想定する(図4:(A))。この場合、セレクト回路25aでは、D0端子入力のセレクトを維持することになる。一方、セレクト回路25bでは、第2のセレクト制御信号が正常であるので、D0端子入力からD1端子入力のセレクトに切り替わる。
【0057】
そこで、パリティチェッカ22のT2期間における入力としては、セレクト回路25aの出力であるデータ信号t2(0)と、セレクト回路25bの出力であるパリティビットt2(1)となる(図4:(B))。そして、T3期間において、パリティチェッカ22は、データ信号t2(0)の内容をパリティビットt2(1)に基づいてパリティチェックすることになる。
【0058】
ここで、パリティビットt2(1)は、データ信号t2(0)の内容に基づいてパリティコード化されたものではないので、データ信号t2(0)とパリティビットt2(1)との間のパリティの関係は基本的には成立しない。そこで、パリティチェッカ22は、パリティチェックの結果を“error”として、エラー検出信号を出力することとなる(図4:(C))。
【0059】
このようにして、データ転送回路20は、セレクト回路25aへ供給される第1又は第2のセレクト制御信号の障害を検出することができ、前述したように回路規模の増大化を抑えつつ、高信頼性を実現できる。
【0060】
<その他の素子>
また、本発明に係る実施形態において、データパス部21を構成するフリップフロップ24(D、JKフリップフロップ等)は、出力信号を強制的にリセットするためのリセット信号が入力されるクリア(リセット)端子や、出力信号を強制的に“H”又は“L”レベルにセットするためのセット信号が入力されるプリセット(セット)端子を備えているものとする。ここで、本発明に係る実施形態として、クリア端子に入力されるリセット信号や、プリセット端子に入力されるセット信号の障害を検出する構成も考えられる。
【0061】
この場合、第1の素子は、データ信号が入力されるクリア・プリセット端子付きフリップフロップ24aとなり、第2の素子は、パリティビット等の誤り検出(又は訂正)符号が入力されるクリア・リセット端子付きフリップフロップ24bとなる。そして、第1の制御回路23aは、フリップフロップ24aでのクリア・プリセット動作を制御し、第2の制御回路23bは、フリップフロップ24bでのクリア・プリセット動作を制御する構成となる。
【0062】
この構成により、データ転送回路20は、フリップフロップ24a、24bにおいて制御されたクリア・プリセット動作の障害を検出することができ、高信頼性を実現できる。
【0063】
<記憶制御装置>
本発明に係るデータ転送回路20を備えた記憶制御装置について説明する。なお、以下では、記憶制御装置はディスクアレイ装置40とし、そのディスクアレイ装置40を含めた記憶装置システムの構成を図5に示す。
【0064】
記憶装置システムにおいて、ホストコンピュータ50とディスクアレイ装置40とが、ESCON(登録商標)、LAN(Local Area Network)、SAN(Storage Area Network)等の通信手段60を介して接続している。ホストコンピュータ50は、メインフレームコンピュータ、パソコン又はワークステーション等のオープン系コンピュータである。
【0065】
ディスクアレイ装置40は、チャネル制御部41、ディスク制御部42、キャッシュメモリ43aを備えたキャッシュメモリ制御部43、ディスクドライブ45を備えて構成される。なお、チャネル制御部41、ディスク制御部42、キャッシュメモリ制御部43は、それぞれクロスバスイッチ等で構成されたスイッチング制御部44を介して通信可能に接続されている。
【0066】
チャネル制御部41は、ホストコンピュータ50との間の通信インタフェースを備え、ホストコンピュータ50とキャッシュメモリ43aとの間のデータ転送を制御する。ディスク制御部42は、キャッシュメモリ43aとディスクドライブ45との間のデータ転送を制御する。キャッシュメモリ43aは、チャネル制御部41とディスク制御部42の双方からアクセス可能であり、ディスクドライブ45の入出力データを記憶する。また、キャッシュメモリ制御部43は、キャッシュメモリ43aに対するアクセスを制御する。
【0067】
ディスクドライブ45は、RAID(Redundant Array of Inexpensive(or Independent) Disks)方式により制御されていることもある。また、ディスクドライブ45により提供される記録領域は、この記憶領域上に設定される論理的な記憶領域である論理ボリュームを用いて管理される。
【0068】
このような構成となるディスクアレイ装置40は、チャネル制御部41、ディスク制御部42、キャッシュメモリ制御部43又はスイッチング制御部44の少なくともいずれかに対し、本発明に係るデータ転送回路20を備える。例えば、チャネル制御部41において、データ信号が入力される第1の素子(フリップフロップ24a等)と、データ信号に対応する検証コードが入力される第2の素子(フリップフロップ24b等)と、第1の素子の動作を制御する第1の制御回路(第1の制御回路23a)と、第2の素子の動作を制御する第2の制御回路(第2の制御回路23b)と、第1の素子によって制御されたデータ信号と第2の素子によって制御された検証コードとを対照した結果を出力する出力回路(パリティチェッカ22等)と、を有する本発明に係るデータ転送回路20を備えることになる。
【0069】
ここで、本発明に係るデータ転送回路20は、前述したとおり、回路規模の増大化を抑えつつ、信頼性を向上させることができる。そのため、ディスクアレイ装置40は、従来のデータ転送回路20からの回路変更や追加回路が少なく済み、第1又は第2の素子にて制御された動作の障害を検出可能な本発明に係るデータ転送回路20を備えたことにより、低コストにて高信頼性を実現できる。
【0070】
なお、記憶制御装置としては、前述のディスクアレイ装置40に限定されず、例えば、カートリッジ型やオープン・リール型の磁気テープを対象としたテープアレイ装置としてもよい。
【0071】
以上、本発明の実施形態について、その実施形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【0072】
【発明の効果】
本発明によれば、半導体集積回路並びにその半導体集積回路を備えた記憶制御装置を提供することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る半導体集積回路(データ転送回路)の機能ブロック図である。
【図2】本発明の一実施形態に係る半導体集積回路(データ転送回路)の動作タイミングを説明するためのタイミングチャートである。
【図3】本発明のその他の一実施形態に係る半導体集積回路(データ転送回路)の機能ブロック図である。
【図4】本発明のその他の一実施形態に係る半導体集積回路(データ転送回路)の動作タイミングを説明するためのタイミングチャートである。
【図5】本発明に係る半導体集積回路(データ転送回路)を備えた記憶制御装置に関し、その記憶制御装置を含めたシステムの概略構成図である。
【図6】従来の半導体集積回路(データ転送回路)の機能ブロック図である。
【図7】従来の半導体集積回路(データ転送回路)の動作タイミングを説明するためのタイミングチャートである。
【図8】本発明に係る半導体集積回路(データ転送回路)に完全二重化方式を採用した場合の機能ブロック図である。
【符号の説明】
10、20、30 データ転送回路
21 データパス部
22 パリティチェッカ
23 制御回路
24 フリップフロップ
25 セレクト回路
40 ディスクアレイ装置
41 チャネル制御部
42 ディスク制御部
43 キャッシュメモリ制御部
44 スイッチング制御部
45 ディスクドライブ
50 ホストコンピュータ
60 通信手段
Claims (7)
- データ信号が入力される第1の素子と、
前記データ信号に対応する検証コードが入力される第2の素子と、
前記第1の素子の動作を制御する第1の制御回路と、
前記第2の素子の動作を制御する第2の制御回路と、
前記第1の素子によって制御された前記データ信号と、前記第2の素子によって制御された前記検証コードと、を対照した結果を出力する出力回路と、
を有することを特徴とする半導体集積回路。 - 前記データ信号と前記検証コードは、前記素子に対して同クロックサイクルにて入力され、
前記出力回路は、
前記素子によって制御された前記データ信号と前記検証コードとが同クロックサイクルにて入力され、
前記同クロックサイクルにて入力された前記データ信号と前記検証コードとを対照した結果を出力することを特徴とする請求項1に記載の半導体集積回路。 - 前記検証コードは、パリティビット又は誤り訂正符号であり、
前記出力回路は、
前記第1の素子によって制御された前記データ信号と、前記第2の素子によって制御された前記パリティビット又は前記誤り訂正符号と、を対照した結果を出力することを特徴とする請求項1又は2に記載の半導体集積回路。 - 前記第1の素子を、前記データ信号が入力される第1のフリップフロップとし、
前記第2の素子を、前記検証コードが入力される第2のフリップフロップとし、
前記第1の制御回路は、前記第1のフリップフロップの動作を制御し、
前記第2の制御回路は、前記第2のフリップフロップの動作を制御することを特徴とする請求項1乃至3のいずれかに記載の半導体集積回路。 - 前記第1の素子を、前記データ信号のデータ保持に用いられるクロック信号の有効・無効を制御可能な第1のフリップフロップとし、
前記第2の素子を、前記検証コードのデータ保持に用いられるクロック信号の有効・無効を制御可能な第2のフリップフロップとし、
前記第1の制御回路は、前記第1のフリップフロップに入力される前記クロック信号の有効・無効を制御し、
前記第2の制御回路は、前記第2のフリップフロップに入力される前記クロック信号の有効・無効を制御することを特徴とする請求項4に記載の半導体集積回路。 - 前記第1の素子は、複数の前記データ信号が入力され、
前記第1の素子を、前記入力された複数の前記データ信号をセレクト動作する第1のセレクト回路とし、
前記第2の素子は、前記複数のデータ信号ごとに付加される前記検証コードが複数入力され、
前記第2の素子を、前記入力された複数の前記検証コードをセレクト動作する第2のセレクト回路とし、
前記第1の制御回路は、前記第1のセレクト回路における前記セレクト動作を制御し、
前記第2の制御回路は、前記第2のセレクト回路における前記セレクト動作を制御する請求項1乃至5のいずれかに記載の半導体集積回路。 - ホストコンピュータと記憶装置との間で授受されるデータを記憶しておくためのキャッシュメモリと、前記ホストコンピュータと前記キャッシュメモリとの間のデータ転送を制御するチャネル制御部と、前記キャッシュメモリと前記記憶装置との間のデータ転送を制御するディスク制御部と、前記キャッシュメモリを制御するキャッシュメモリ制御部と、前記チャネル制御部と前記ディスク制御部とを通信可能に接続するためのスイッチング制御部と、を有する記憶制御装置において、
前記チャネル制御部、前記ディスク制御部、前記キャッシュメモリ制御部又は前記スイッチング制御部の少なくともいずれか一つは、
データ信号が入力される第1の素子と、
前記データ信号に対応する検証コードが入力される第2の素子と、
前記第1の素子の動作を制御する第1の制御回路と、
前記第2の素子の動作を制御する第2の制御回路と、
前記第1の素子によって制御された前記データ信号と前記第2の素子によって制御された前記検証コードとを対照した結果を出力する出力回路と、
を有する半導体集積回路を備えることを特徴とする記憶制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002338711A JP4067945B2 (ja) | 2002-11-22 | 2002-11-22 | 半導体集積回路、記憶制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002338711A JP4067945B2 (ja) | 2002-11-22 | 2002-11-22 | 半導体集積回路、記憶制御装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004173119A true JP2004173119A (ja) | 2004-06-17 |
JP2004173119A5 JP2004173119A5 (ja) | 2005-12-15 |
JP4067945B2 JP4067945B2 (ja) | 2008-03-26 |
Family
ID=32701846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002338711A Expired - Fee Related JP4067945B2 (ja) | 2002-11-22 | 2002-11-22 | 半導体集積回路、記憶制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4067945B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021135121A (ja) * | 2020-02-26 | 2021-09-13 | 株式会社東芝 | 故障検出回路および故障検出システム |
-
2002
- 2002-11-22 JP JP2002338711A patent/JP4067945B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021135121A (ja) * | 2020-02-26 | 2021-09-13 | 株式会社東芝 | 故障検出回路および故障検出システム |
Also Published As
Publication number | Publication date |
---|---|
JP4067945B2 (ja) | 2008-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2694099B2 (ja) | 大型耐故障不揮発性複数ポート・メモリー | |
EP1725941B1 (en) | Data communication module providing fault tolerance and increased stability | |
US7076618B2 (en) | Memory controllers with interleaved mirrored memory modes | |
US7444541B2 (en) | Failover and failback of write cache data in dual active controllers | |
US7130229B2 (en) | Interleaved mirrored memory systems | |
JP4519839B2 (ja) | ビットレーン・フェイルオーバーのあるメモリ・チャネル | |
US7644347B2 (en) | Silent data corruption mitigation using error correction code with embedded signaling fault detection | |
JP5078994B2 (ja) | 自動計算機のためのメモリ・システム | |
KR100640037B1 (ko) | 파일 제어 시스템 및 파일 제어 장치 | |
US7568119B2 (en) | Storage control device and storage control device path switching method | |
US7107343B2 (en) | Method and apparatus for improved RAID 1 write performance in low cost systems | |
JPH03182957A (ja) | 読み出しおよび書き込み用プロトコール | |
US8621281B2 (en) | Information processing apparatus and control method | |
JP2011188203A (ja) | 半導体集積回路 | |
CN113282231B (zh) | 存储装置以及相关闪存控制器 | |
JP4755050B2 (ja) | データ処理装置、モード管理装置、及びモード管理方法 | |
US7769966B2 (en) | Apparatus and method for judging validity of transfer data | |
US20090132866A1 (en) | Storage apparatus | |
JP4067945B2 (ja) | 半導体集積回路、記憶制御装置 | |
EP1683018B1 (en) | Autonomic bus reconfiguration for fault conditions | |
JPH10312340A (ja) | 半導体記憶装置におけるエラー検出,訂正方式 | |
JP2006260008A (ja) | 冗長化ディスクシステム | |
US7712004B1 (en) | Method of and system for error checking in a data storage system | |
US20120047397A1 (en) | Controlling apparatus, method for controlling apparatus and information processing apparatus | |
JP4388470B2 (ja) | 耐障害性ブロードキャストルータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040928 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051031 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051031 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20051031 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20051031 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070618 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070626 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070802 |
|
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: 20080108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080109 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110118 Year of fee payment: 3 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110118 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130118 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |