JP2007188428A - 半導体ストレージ装置およびストレージシステム - Google Patents

半導体ストレージ装置およびストレージシステム Download PDF

Info

Publication number
JP2007188428A
JP2007188428A JP2006007718A JP2006007718A JP2007188428A JP 2007188428 A JP2007188428 A JP 2007188428A JP 2006007718 A JP2006007718 A JP 2006007718A JP 2006007718 A JP2006007718 A JP 2006007718A JP 2007188428 A JP2007188428 A JP 2007188428A
Authority
JP
Japan
Prior art keywords
bus
memory
storage device
semiconductor storage
error
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.)
Withdrawn
Application number
JP2006007718A
Other languages
English (en)
Inventor
Takeshi Kamimura
健 上村
Norihiko Kuroishi
範彦 黒石
Atsushi Kitamura
淳 北村
Kunihiro Seno
訓啓 瀬野
Seiji Suzuki
星児 鈴木
Shinobu Koseki
忍 小関
Masaru Kijima
勝 木島
Junji Okada
純二 岡田
Yoshihide Sato
嘉秀 佐藤
Kenichi Kobayashi
健一 小林
Masao Funada
雅夫 舟田
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2006007718A priority Critical patent/JP2007188428A/ja
Priority to US11/505,267 priority patent/US7890682B2/en
Publication of JP2007188428A publication Critical patent/JP2007188428A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】高性能かつ高信頼性を有する半導体ストレージ装置およびストレージシステムを提供する。
【解決手段】このストレージシステム1は、サーバ2と半導体ストレージ装置4の外部入出力ポート10とを、サーバ2内のCPU2a,メモリ2b等を接続する周辺バス,メモリバス,内部バス等のシステムバス2cを外部に延長してプロトコル変換を行わない高速のシリアルインタフェース3として接続したものである。半導体ストレージ装置4は、シリアルインタフェース3上で伝送エラーが生じたり、半導体ストレージ装置4内でエラーが生じると、それらのエラーを検出し、検出結果を外部からアクセス可能なレジスタに記憶する。
【選択図】図1

Description

本発明は、半導体ストレージ装置およびストレージシステムに関する。
従来のストレージシステムは、一般的な構成として、サーバにSCSI(Small Computer System Interface)バスを介してハードディスク(HDD)を接続している(例えば、特許文献1参照。)。
このストレージシステムでは、サーバの内部信号をプロトコル変換によりSCSIバスに適合した信号に変換してHDDに接続している。
特開平8−153014号公報
しかし、従来のストレージシステムによると、信頼性の高い伝送が可能であるが、信号変換にはオーバーヘッドがあるため、レスポンスが遅い、SCSIバスの伝送性能は、HDDのアクセス速度に合わせた仕様になっているため、伝送帯域が十分でない等の問題がある。
従って、本発明の目的は、高性能かつ高信頼性を有する半導体ストレージ装置およびストレージシステムを提供することにある。
本発明の第1の態様は、上記目的を達成するため、サーバ内のシステムバスを外部に延長し、前記システムバスがシリアルインタフェースとして直接接続された外部入出力ポートを備えたことを特徴とする半導体ストレージ装置。
さらに、前記シリアルインタフェースにおいて初期化時に接続に成功したシリアル伝送リンクのうち、予め設定されたリンク数を用いて前記サーバと接続する装置コントローラを備えた構成とすることができる。
前記装置コントローラは、接続に成功したシリアル伝送リンクを検出する外部リンク検出部と、前記外部リンク検出部の検出結果を記憶し、外部からアクセス可能な第1のレジスタとを備えた構成とすることができる。シリアルインタフェース上の伝送エラーを検出することにより、信頼性が高くなる。
前記装置コントローラは、制御バスおよびメモリバスを介してメモリコントローラが接続され、前記メモリコントローラは、前記メモリバスの下り方向伝送におけるエラーを検出する下りバスエラー検出部と、メモリへのアクセスに関するエラーを検出するメモリエラー検出部と、前記下りバスエラー検出部および前記メモリエラー検出部の検出結果を記憶し、外部から前記制御バスを介してアクセス可能な第3のレジスタとを備え、前記装置コントローラは、前記メモリバスの上り方向伝送におけるエラーを検出する上りバスエラー検出部と、前記上りバスエラー検出部の検出結果を記憶し、外部からアクセス可能な第2のレジスタとを備えた構成とすることができる。シリアルインタフェース上の伝送エラー、および装置内のエラーを検出することにより、信頼性がより高くなる。
前記装置コントローラは、前記第1乃至3のレジスタの内容を読み出し、あらかじめ設定されたビットが有効である場合にデータ転送を終了し、前記サーバに対してエラー割込信号を出力する構成とすることができる。
前記シリアルインタフェースは、2本の信号線を1レーンとして使用する差動伝送方式による構成とすることができる。
本発明の第2の態様は、上記目的を達成するため、ストレージサーバと、前記ストレージサーバに接続された半導体ストレージ装置とを有するストレージシステムにおいて、前記半導体ストレージ装置は、前記ストレージサーバ内のシステムバスを外部に延長し、前記システムバスがシリアルインタフェースとして直接接続された外部入出力ポートを備えたことを特徴とするストレージシステムを提供する。
さらに、磁気ストレージ装置を備え、前記ストレージサーバは、前記磁気ストレージ装置を接続する第1の外部入出力ポートと、前記半導体ストレージ装置を接続する第2の外部入出力ポートとを備え、前記第2の外部入出力ポートの各ポート当たりの伝送帯域は、前記第1の外部入出力ポートの各ポート当たりの伝送帯域よりも高いものを用いることができる。
前記半導体ストレージは、さらに、前記シリアルインタフェースにおいて初期化時に接続に成功したシリアル伝送リンクのうち、予め設定されたリンク数を用いて前記ストレージサーバと接続する装置コントローラを備えた構成とすることができる。
前記装置コントローラは、制御バスおよびメモリバスを介してメモリコントローラが接続され、前記シリアルインタフェースにおいて接続に成功したシリアル伝送リンクを検出する外部リンク検出部と、前記外部リンク検出部の検出結果を記憶し、外部からアクセス可能な第1のレジスタと、前記メモリバスの上り方向伝送におけるエラーを検出する上りバスエラー検出部と、前記上りバスエラー検出部の検出結果を記憶し、外部からアクセス可能な第2のレジスタとを備え、
前記メモリコントローラは、前記メモリバスの下り方向伝送におけるエラーを検出する下りバスエラー検出部と、メモリへのアクセスに関するエラーを検出するメモリエラー検出部と、前記下りバスエラー検出部および前記メモリエラー検出部の検出結果を記憶し、外部から前記制御バスを介してアクセス可能な第3のレジスタとを備え、
前記ストレージサーバは、前記第2の外部入出力ポートから前記第1乃至3のレジスタを定期的に読み出し、あらかじめ設定されたビットが有効である場合に、該当する前記半導体ストレージ装置に対し関連するデータ転送を終了するようにしてもよい。
前記ストレージサーバは、前記第2の外部入出力ポートからエラー割込信号を検出した場合、該当する前記半導体ストレージ装置に対し関連するデータ転送を終了するようにしてもよい。
前記ストレージサーバは、前記半導体ストレージ装置を外部記憶装置として機能させるようにしてもよい。
前記ストレージサーバは、前記半導体ストレージ装置を前記磁気ストレージ装置のキャッシュメモリとして機能させるキャッシュ制御手段を備えた構成とすることができる。
前記キャッシュ制御手段は、前記ストレージサーバ上のソフトウェアにより実現されるようにしてもよい。
前記半導体ストレージ装置は、アクセス対象ブロックがキャッシュにヒットしたか否かを確認するブロックアドレス検索処理手段を備えた構成とすることができる。
前記ブロックアドレス検索処理手段は、前記装置コントローラもしくは前記メモリコントローラに設けることができる。
上記第1および第2の態様によれば、サーバ内のシステムバスをシリアルインタフェースとして外部入出力ポートに直接接続することにより、シリアルインタフェースとしてプロトコル変換を行わない高速のインタフェースを用いることができる。
本発明によれば、高性能かつ高信頼性を有する半導体ストレージ装置およびストレージシステムを提供することができる。
[第1の実施の形態]
図1は、本発明の第1の実施の形態に係るストレージシステムを示す。このストレージシステム1は、サーバ2と半導体ストレージ装置4の外部入出力ポート10とを、サーバ2内のCPU2a,メモリ2b等をインターフェース2cを介して接続する周辺バス,メモリバス,内部バス等のシステムバス2dを外部に延長してプロトコル変換を行わない高速のシリアルインタフェース3として接続したものである。
図2は、半導体ストレージ装置の内部構成を示す。この半導体ストレージ装置4は、上記の外部入出力ポート10、装置コントローラ20、外部リンク検出部21、上りバスエラー検出部22、メモリコントローラ30、下りバスエラー検出部31、メモリ32(32a,32b,32c)、メモリバス120、および制御バス130を有して構成されている。
シリアルインタフェース3は、例えば、PCI Express(登録商標)、HyperTransport(登録商標)、NumaLink(登録商標)等の高速なインタフェース(I/F)を用いることができる。しかし、この構成では、シリアルインタフェース3上で伝送エラーが生じたり、半導体ストレージ装置4内でエラーが生じると、最悪サーバ2が停止する危険性があり、システム全体としての信頼性を確保できないおそれがある。そこで、本実施の形態では、後述するように伝送エラーを検出して対応処理を施すことで、高信頼性を実現している。
外部入出力ポート10は、シリアルインタフェース3を介して受信する外部入出力信号100を各独立信号110〜113に変換して装置コントローラ20との間で入出力を行う。外部入出力信号100は、サーバ2との間の複数の独立なシリアル伝送リンクに相当する。なお、本実施の形態では、外部入出力信号100は、独立な4本のシリアル伝送リンクから構成され、外部入出力ポート10と装置コントローラ20との間の信号も4本(信号110〜113)としているが、1本でも、何本でも構わない。
装置コントローラ20は、外部とのインタフェースを司ると共に、メモリバス120および制御バス130の制御を行う。メモリコントローラ30は、メモリ32とのインタフェースを司る。また、装置コントローラ20は、初期化時に接続に成功したシリアル伝送リンクのうち、予め設定されたリンク数を用いてサーバ2と接続する。
外部リンク検出部21は、サーバ2との間で接続が確立できたシリアル伝送リンクを検出する。上りバスエラー検出部22は、訂正検出回路を備え、上り方向の伝送エラーを検出する。下りバスエラー検出部31は、訂正検出回路を備え、下り方向の伝送エラーを検出する。
メモリ32は、DRAM、SRAM等の揮発性メモリや、不揮発性メモリを用いることができる。また、メモリ32は、同図では3つ接続されているが、3つに限定されない。
(第1の実施の形態の動作)
次に、第1の実施の形態の動作を場合を分けて説明する。
(1)接続時
本装置4とサーバ2との接続時に、まず、サーバ2は、各シリアル伝送リンクの接続確認を行う。外部入出力ポート10は、サーバ2との間の外部入出力信号100を内部信号110〜113と接続する。装置コントローラ20は、外部入出力ポート10からの信号110〜113を各々受信し、これらから得られた各同期信号を信号114として外部リンク検出部21に出力する。
外部リンク検出部21は、信号114を基にサーバ2との間で接続が確立できたシリアル伝送リンクを判定し、その判定結果を装置コントローラ20に出力する。装置コントローラ20は、外部リンク検出部21からの判定結果を、装置コントローラ20内部に設けた、外部からアクセス可能な第1のレジスタ20aに格納する。
PCI Express規格Ver1.0aにおいては、伝送帯域が2.5Gbpsであるシリアル伝送リンクを1レーン、4レーン、8レーンといった単位で束ねて1つの入出力ポートを構成する。例えば、4レーンを用いた接続の確認において、何らかの原因により1レーンの接続に失敗し、残り3レーンが接続に成功したとすると、以降の伝送は成功した3レーンのうちの1レーンのみを用いて行われる(3レーンで通信する規格は無いため)。例えば本装置4が4レーンでないと動作しない場合、このような状況を検出して再度サーバ2との接続をやり直す必要がある。外部リンク検出部21はそのために設けたものである。
(2)初期化時
本装置4の初期化時に、装置コントローラ20は、メモリバス120および制御バス130にテスト信号を伝送し、装置コントローラ20とメモリコントローラ30との間の上り伝送に関する確認を行う。すなわち、上りバスエラー検出部22は、上り方向のテスト信号の受信に関して伝送エラー等が発生したかどうかを判定し、その判定結果を装置コントローラ20に出力する。装置コントローラ20は、上りバスエラー検出部22からの判定結果を、外部からアクセス可能な第2のレジスタ20bに格納する。
また、メモリコントローラ30は、装置コントローラ20とメモリコントローラ30との間の下り伝送に関する確認を行う。すなわち、下りバスエラー検出部31は、下り方向のテスト信号の受信に関して伝送エラー等が発生したかどうかを判定し、その判定結果をメモリコントローラ30に出力する。メモリコントローラ30は、下りバスエラー検出部31からの判定結果を、外部から制御バス130を介してアクセス可能な第3のレジスタ33に格納する。制御バス130は、メモリバス120に比べて低速かつ信頼性の高いバスであるので、レジスタにアクセスする場合は、制御バス130を介して行うようにしている。
(3)通常動作時
上りバスエラー検出部22および下りバスエラー検出部31は、伝送誤りの訂正検出回路を備えており、本装置4の初期化時だけでなく、通常動作時においても伝送エラーの発生を検出し、初期化時と同様の処理を行う。
(4)エラー検出後の処理
外部リンク検出部21、上りバスエラー検出部22、下りバスエラー検出部31によって検出されたエラーは、いずれも外部からアクセス可能な第1乃至第3のレジスタ20a,20b,33に格納されている。装置コントローラ20は、レジスタ20a,20b,33の内容を読み出し、それが致命的なエラーである場合は、直ちにデータ転送を強制終了し、サーバ2に対して外部入出力信号100によりエラー割込信号を伝送する。なお、サーバ2に実装されたデバイスドライバが定期的にレジスタ20a,20b,33の内容を読み出し、エラーを検出した場合にデータ転送を終了させてもよい。
(第1の実施の形態の効果)
上述した第1の実施の形態によれば、以下の効果が得られる。
(イ)PCI Expressのように、サーバ2内のシステムバス2cを複数のシリアル伝送リンクを用いて延長することにより、伝送帯域を向上させることができる。
(ロ)半導体ストレージ装置に接続する際に問題となる各シリアル伝送リンクの接続エラーの検知と通知、半導体ストレージ装置内部のエラーの通知を実現することにより、エラー発生時のサーバ停止といったトラブルを回避し、システム全体の信頼性を向上させることができる。
[第2の実施の形態]
図3は、本発明の第2の実施の形態に係る半導体ストレージ装置を示す。本実施の形態は、第1の実施の形態において、メモリバス120を下りメモリバス125と、上りメモリバス126に置き換えたものであり、他は第1の実施の形態と同様に構成されている。この構成によれば、上りに関しては各メモリコントローラ30と装置コントローラ20が1対1に接続されるため、各メモリから同時に読み出しを行うことができる。
[第3の実施の形態]
図4は、本発明の第3の実施の形態に係るストレージシステムを示す。このストレージシステム1は、ストレージサーバ50、磁気ストレージ装置60、第1又は第2の実施の形態の半導体ストレージ装置4と同様に構成された半導体ストレージ装置70を有して構成されている。なお、半導体ストレージ装置70は、図4では、1つ接続しているが、複数でもよい。
ストレージサーバ50は、2つの磁気ストレージ装置60a,60bを第1のインタフェース600a,600bによって接続する第1の外部入出力ポート群51と、半導体ストレージ装置70を第2のインタフェース700によって接続する第2の外部入出力ポート群52とを備える。
第2の外部入出力ポート群52の各ポート当たりの伝送帯域は、第1の外部入出力ポート群51の各ポート当たりの伝送帯域よりも高いものとする。第2のインタフェース700としては、PCI Express、HyperTransport、NumaLinkなど、第1のインタフェース600a,600bとしては、ファイバーチャネル、SCSIなどを用いることができる。第2のインタフェース700も、第1の実施の形態と同様に、ストレージサーバ50内のシステムバスを第2の外部入出力ポート群52を介して外部に延長して構成されている。
磁気ストレージ装置60は、半導体以外によるストレージ装置であれば構わない。例えば、光ディスク、磁気テープなどでもよい。
半導体ストレージ装置70は、次に述べるように磁気ストレージ装置60に比べてアクセス頻度の高いデータの格納に用いることで、ストレージサーバ50として高性能化を実現することができる。そのためには伝送帯域の高いインタフェースで接続することが必要である。
半導体ストレージ装置70にデータを格納する際に、半導体ストレージ装置70を外部記憶装置として用いる方法と、磁気ストレージ用キャッシュメモリとして用いる方法との2通りがある。
(a)外部記憶装置として用いる方法
この場合、半導体ストレージ装置70をスワップファイル(別名ページファイル)の格納に用いる。スワップファイルとは、使われていないメモリ領域を一時的に保存するために、ストレージ上に用意されたファイルを意味する。必要メモリ容量に比べて、サーバに搭載されているメモリ容量が少ないと大きなスワップファイルが作成され、メモリとスワップファイル間で頻繁にデータ交換が発生し、全体性能の低下を招く。このような状況でも、スワップファイルを半導体ストレージ装置70に格納することで、メモリ容量を拡張した場合に比べて遜色ない性能が得られる。
(b)磁気ストレージ用キャッシュメモリとして用いる方法
磁気ストレージ装置60に格納されているデータのうち、アクセス頻度の高いデータを一時的に格納するキャッシュメモリとして半導体ストレージ装置70を用いる。これを実現するキャッシュ制御の実現手段(キャッシュ制御手段)として、ストレージサーバ50、半導体ストレージ装置70もしくは磁気ストレージ装置60のいずれかに設けられたキャッシュコントローラによる方法、ストレージサーバ50のCPUのソフトウェア処理による方法などがある。また、半導体ストレージ装置70の装置コントローラ20又はメモリコントローラ30は、アクセス対象ブロックがキャッシュにヒットしたか否かを確認するブロックアドレス検索処理手段としての機能を有する。
図5は、半導体ストレージ装置70を磁気ストレージ用キャッシュメモリとして用いる方法のフローチャート、および半導体ストレージ装置70に格納されている管理テーブルを示す。
半導体ストレージ装置70に格納されている管理テーブル71には、ブロックに関する情報、すなわち、ブロックアドレス、ブロックデータ、アクセス頻度、ダーティ/クリーンの4つの属性情報が登録されている。クリーンとは、半導体ストレージ装置70と磁気ストレージ装置60の間でブロックデータが一致しているという意味である。半導体ストレージ装置70のみ更新された場合にダーティとなる。テーブル初期化時、及び新規に半導体ストレージ装置70へ書込が行われた場合、属性の初期値としてアクセス頻度をゼロ、ダーティ/クリーンをクリーンとして初期設定する。なお、管理テーブル71のフォーマットとして、上記以外にアクセス時刻、ユーザ属性等の他の属性が追加されても構わない。
キャッシュコントローラによる方法の場合、管理テーブル71はキャッシュコントローラからアクセス可能なメモリ32に設ける。ストレージサーバ50のCPUのソフトウェア処理による方法の場合、管理テーブル71はストレージサーバ50上のメモリに設ける。
なお、ブロック読出命令、ブロック書込命令、終了命令のいずれかが与えられるものとする。また、書込方式は、ライトスルー方式(キャッシュメモリと磁気ストレージ装置60を同タイミングで更新)、ライトバック方式(キャッシュメモリのみを更新し、当該ブロックがキャッシュメモリから追い出されるタイミングで磁気ストレージ装置60を更新)に大別されるが、ここではライトバック方式を想定したフローチャートを示す。
管理テーブル71を初期化した後(S80)、命令を受け付ける(S81)。受け付けた命令がブロック読出命令の場合は(S82:Yes)、管理テーブル71を参照し、半導体ストレージ装置70に実現されたキャッシュメモリにヒットするかどうかを確認する(S83)。ヒットした場合は(S83:Yes)、半導体ストレージ装置70にアクセスして読出しを行い、管理テーブル71のアクセス頻度を更新する(S84)。
上記ステップS83において、ヒットしない場合は(S83:No)、磁気ストレージ装置60にアクセスし(S85)、半導体ストレージ装置70の更新を行う。すなわち、半導体ストレージ装置70にブロック追加が可能か否かを判断し(S86)、ブロックの追加が可能な場合は(S86:Yes)、半導体ストレージ装置70にブロックを書き込み、ブロックに関する情報を管理テーブル71に新規追加する(S87)。ブロックの追加ができない場合は(S86:No)、アクセス頻度が最も低いブロックを磁気ストレージ装置60に書き込み(クリーンなら不要)、半導体ストレージ装置70から消去し、管理テーブル71の該当部分も消去する(S88)。
上記ステップS82において、受け付けた命令がブロック読出命令ではなく(S82:No)、ブロック書込命令の場合は(S89:Yes)、管理テーブル71を参照し、半導体ストレージ装置70に実現されたキャッシュメモリにヒットするかどうかを確認する(S90)。ヒットした場合は(S90:Yes)、半導体ストレージ装置70にアクセスして書込みを行い、管理テーブル71のアクセス頻度を更新、ダーティとする(S91)。
上記ステップS89において、受けた命令がブロック書込命令でない場合は(S89:No)、それが終了命令かどうかを判断し(S93)、終了命令の場合は(S93:Yes)、ダーティとされたブロックを全て磁気ストレージ装置60に書き込む(S94)。
なお、上記ステップS83、S90の処理は、半導体ストレージ装置70に内蔵された装置コントローラ20あるいはメモリコントローラ30が担当することにより、高速化を図ることができる。具体的には外部からのブロック読出命令またはブロック書込命令で与えられるブロックアドレスが、管理テーブル71に存在するかを検索、ハッシング等により確認する。
また、上記ステップS88において、アクセス頻度の最も低いブロックをキャッシュメモリから追い出すとしたが、追い出すブロックの決定アルゴリズムは何でも構わない。他に例えばLRU(Least Recently Used)アルゴリズムなども適用可能である。
(第3の実施の形態の効果)
上述した第3の実施の形態によれば、以下の効果が得られる。
(イ)伝送帯域の高いインタフェースで半導体ストレージ装置70を接続することが可能となり、従来のファイバーチャネル等の磁気ストレージ装置60用のインタフェース接続に比べて高い入出力性能が得られる。特に、半導体ストレージ装置70をサーバに接続して外部記憶装置として用いる場合や、磁気ストレージ装置60と併用して磁気ストレージ用キャッシュメモリとして用いる場合、ストレージシステムとしての入出力性能を高めることができる。
(ロ)更に半導体ストレージ装置70を磁気ストレージ用キャッシュメモリとして用いる際、アクセスされるブロックがキャッシュにヒットするかどうかを調べるため、該当ブロックが半導体ストレージ装置70に格納されているかどうか検索する必要があり、ブロックアドレスの検索(ハッシング)を行う。それを半導体ストレージ装置70の装置コントローラもしくはメモリコントローラが実行することにより、処理が高速化され、かつキャッシュコントローラもしくはサーバのCPUの負荷を軽減することができる。
なお、サーバ側へのエラー通知方法は、半導体ストレージ装置からの割り込みでも、サーバによる定期的なアドレス読出による方法のいずれでも構わない。
[他の実施の形態]
なお、本発明は、上記各実施の形態に限定されず、本発明の趣旨を逸脱しない範囲内で種々な変形が可能である。また、本発明の趣旨を逸脱しない範囲内で、各実施の形態の構成要素を任意に組み合わせることができる。
図2および図3の構成において、メモリバスに光バスを用いて構成してもよい。この場合、入射側光ファイバと、光導波路と、および複数の出射側光ファイバを光学的に接続し、入射側光ファイバの入射側に電気−光変換器を配置し、出射側光ファイバの出射側に光−電気変換器を配置する。これにより、耐ノイズ性が向上し、さらに信頼性が高くなる。
本発明の第1の実施の形態に係るストレージシステムを示すブロック図である。 図1に示す半導体ストレージ装置の内部構成を示すブロック図である。 本発明の第2の実施の形態に係る半導体ストレージ装置の内部構成を示すブロック図である。 本発明の第3の実施の形態に係るストレージシステムを示すブロック図である。 本発明の第3の実施の形態に係るストレージシステムの動作を示すフローチャートである。
符号の説明
1 ストレージシステム
2 サーバ
2a CPU
2b メモリ
2c インターフェース
2d システムバス
3 シリアルインタフェース
4 半導体ストレージ装置
10 外部入出力ポート
20 装置コントローラ
20a 第1のレジスタ
20b 第2のレジスタ
21 外部リンク検出部
22 バスエラー検出部
30 メモリコントローラ
31 バスエラー検出部
32 メモリ
33 第3のレジスタ
50 ストレージサーバ
51 外部入出力ポート群
52 外部入出力ポート群
60 磁気ストレージ装置
70 半導体ストレージ装置
71 管理テーブル
100 外部入出力信号
110〜113 独立信号
114,115 信号
120,125,126 メモリバス
130 制御バス
600a,600b 第1のインタフェース
700 第2のインタフェース

Claims (16)

  1. サーバ内のシステムバスを外部に延長し、前記システムバスがシリアルインタフェースとして直接接続された外部入出力ポートを備えたことを特徴とする半導体ストレージ装置。
  2. さらに、前記シリアルインタフェースにおいて初期化時に接続に成功したシリアル伝送リンクのうち、予め設定されたリンク数を用いて前記サーバと接続する装置コントローラを備えたことを特徴とする請求項1に記載の半導体ストレージ装置。
  3. 前記装置コントローラは、接続に成功したシリアル伝送リンクを検出する外部リンク検出部と、前記外部リンク検出部の検出結果を記憶し、外部からアクセス可能な第1のレジスタとを備えたことを特徴とする請求項2に記載の半導体ストレージ装置。
  4. 前記装置コントローラは、制御バスおよびメモリバスを介してメモリコントローラが接続され、
    前記メモリコントローラは、前記メモリバスの下り方向伝送におけるエラーを検出する下りバスエラー検出部と、メモリへのアクセスに関するエラーを検出するメモリエラー検出部と、前記下りバスエラー検出部および前記メモリエラー検出部の検出結果を記憶し、外部から前記制御バスを介してアクセス可能な第3のレジスタとを備え、
    前記装置コントローラは、前記メモリバスの上り方向伝送におけるエラーを検出する上りバスエラー検出部と、前記上りバスエラー検出部の検出結果を記憶し、外部からアクセス可能な第2のレジスタとを備えたことを特徴とする請求項3に記載の半導体ストレージ装置。
  5. 前記装置コントローラは、前記第1乃至3のレジスタの内容を読み出し、あらかじめ設定されたビットが有効である場合にデータ転送を終了し、前記サーバに対してエラー割込信号を出力することを特徴とする請求項4に記載の半導体ストレージ装置。
  6. 前記シリアルインタフェースは、2本の信号線を1レーンとして使用する差動伝送方式によることを特徴とする請求項1に記載の半導体ストレージ装置。
  7. ストレージサーバと、前記ストレージサーバに接続された半導体ストレージ装置とを有するストレージシステムにおいて、
    前記半導体ストレージ装置は、前記ストレージサーバ内のシステムバスを外部に延長し、前記システムバスがシリアルインタフェースとして直接接続された外部入出力ポートを備えたことを特徴とするストレージシステム。
  8. さらに、磁気ストレージ装置を備え、
    前記ストレージサーバは、前記磁気ストレージ装置を接続する第1の外部入出力ポートと、前記半導体ストレージ装置を接続する第2の外部入出力ポートとを備え、前記第2の外部入出力ポートの各ポート当たりの伝送帯域は、前記第1の外部入出力ポートの各ポート当たりの伝送帯域よりも高いことを特徴とする請求項7に記載のストレージシステム。
  9. 前記半導体ストレージは、さらに、前記シリアルインタフェースにおいて初期化時に接続に成功したシリアル伝送リンクのうち、予め設定されたリンク数を用いて前記ストレージサーバと接続する装置コントローラを備えたことを特徴とする請求項7に記載のストレージシステム。
  10. 前記装置コントローラは、制御バスおよびメモリバスを介してメモリコントローラが接続され、前記シリアルインタフェースにおいて接続に成功したシリアル伝送リンクを検出する外部リンク検出部と、前記外部リンク検出部の検出結果を記憶し、外部からアクセス可能な第1のレジスタと、前記メモリバスの上り方向伝送におけるエラーを検出する上りバスエラー検出部と、前記上りバスエラー検出部の検出結果を記憶し、外部からアクセス可能な第2のレジスタとを備え、
    前記メモリコントローラは、前記メモリバスの下り方向伝送におけるエラーを検出する下りバスエラー検出部と、メモリへのアクセスに関するエラーを検出するメモリエラー検出部と、前記下りバスエラー検出部および前記メモリエラー検出部の検出結果を記憶し、外部から前記制御バスを介してアクセス可能な第3のレジスタとを備え、
    前記ストレージサーバは、前記第2の外部入出力ポートから前記第1乃至3のレジスタを定期的に読み出し、あらかじめ設定されたビットが有効である場合に、該当する前記半導体ストレージ装置に対し関連するデータ転送を終了することを特徴とする請求項9に記載のストレージシステム。
  11. 前記ストレージサーバは、前記第2の外部入出力ポートからエラー割込信号を検出した場合、該当する前記半導体ストレージ装置に対し関連するデータ転送を終了することを特徴とする請求項8に記載のストレージシステム。
  12. 前記ストレージサーバは、前記半導体ストレージ装置を外部記憶装置として機能させることを特徴とする請求項8に記載のストレージシステム。

  13. 前記ストレージサーバは、前記半導体ストレージ装置を前記磁気ストレージ装置のキャッシュメモリとして機能させるキャッシュ制御手段を備えたことを特徴とする請求項8に記載のストレージシステム。
  14. 前記キャッシュ制御手段は、前記ストレージサーバ上のソフトウェアにより実現されることを特徴とする請求項13に記載のストレージシステム。
  15. 前記半導体ストレージ装置は、アクセス対象ブロックがキャッシュにヒットしたか否かを確認するブロックアドレス検索処理手段を備えたことを特徴とする請求項13に記載のストレージシステム。
  16. 前記ブロックアドレス検索処理手段は、前記装置コントローラもしくは前記メモリコントローラに設けられたことを特徴とする請求項15に記載のストレージシステム。
JP2006007718A 2006-01-16 2006-01-16 半導体ストレージ装置およびストレージシステム Withdrawn JP2007188428A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006007718A JP2007188428A (ja) 2006-01-16 2006-01-16 半導体ストレージ装置およびストレージシステム
US11/505,267 US7890682B2 (en) 2006-01-16 2006-08-16 Semiconductor storage device and storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006007718A JP2007188428A (ja) 2006-01-16 2006-01-16 半導体ストレージ装置およびストレージシステム

Publications (1)

Publication Number Publication Date
JP2007188428A true JP2007188428A (ja) 2007-07-26

Family

ID=38264587

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006007718A Withdrawn JP2007188428A (ja) 2006-01-16 2006-01-16 半導体ストレージ装置およびストレージシステム

Country Status (2)

Country Link
US (1) US7890682B2 (ja)
JP (1) JP2007188428A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009116732A (ja) * 2007-11-08 2009-05-28 Sony Corp 情報処理装置及び情報処理方法
JP2009169854A (ja) * 2008-01-18 2009-07-30 Nec Corp コンピュータシステム、障害処理方法および障害処理プログラム
US8295161B2 (en) 2008-12-24 2012-10-23 Fujitsu Limited Network apparatus that determines whether data is written into buffer based on detection of a memory error
WO2014115257A1 (ja) * 2013-01-23 2014-07-31 株式会社 日立製作所 PCI-Express接続ソリッドステートドライブを適用したストレージ装置
US9304842B2 (en) 2013-09-24 2016-04-05 Hitachi, Ltd. Computer system, control method for computer system and coupling module

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8464145B2 (en) * 2009-07-16 2013-06-11 Cypress Semiconductor Corporation Serial interface devices, systems and methods
US9852096B2 (en) * 2014-03-25 2017-12-26 Hewlett Packard Enterprise Development Lp High speed serial link in-band lane fail over for RAS and power management

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845061A (en) 1994-10-31 1998-12-01 Hitachi, Ltd. Redundant client server system
JPH08153014A (ja) 1994-11-30 1996-06-11 Hitachi Ltd クライアントサーバシステム
US6446141B1 (en) * 1999-03-25 2002-09-03 Dell Products, L.P. Storage server system including ranking of data source
US6496878B1 (en) * 1999-11-03 2002-12-17 International Business Machines Corporation Transfer progress alert module
US8019901B2 (en) * 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
US6751703B2 (en) * 2000-12-27 2004-06-15 Emc Corporation Data storage systems and methods which utilize an on-board cache
JP4059473B2 (ja) * 2001-08-09 2008-03-12 株式会社ルネサステクノロジ メモリカード及びメモリコントローラ
US6938188B1 (en) * 2002-01-29 2005-08-30 Advanced Digital Information Corporation Method for verifying functional integrity of computer hardware, particularly data storage devices
US7181578B1 (en) * 2002-09-12 2007-02-20 Copan Systems, Inc. Method and apparatus for efficient scalable storage management
US20040078508A1 (en) * 2002-10-02 2004-04-22 Rivard William G. System and method for high performance data storage and retrieval
US6816917B2 (en) * 2003-01-15 2004-11-09 Hewlett-Packard Development Company, L.P. Storage system with LUN virtualization
US6880047B2 (en) * 2003-03-28 2005-04-12 Emulex Design & Manufacturing Corporation Local emulation of data RAM utilizing write-through cache hardware within a CPU module
JP4294353B2 (ja) * 2003-03-28 2009-07-08 株式会社日立製作所 ジョブ管理機能を有するストレージ系障害管理方法及び装置
US7676600B2 (en) * 2003-04-23 2010-03-09 Dot Hill Systems Corporation Network, storage appliance, and method for externalizing an internal I/O link between a server and a storage controller integrated within the storage appliance chassis
JP2005070993A (ja) * 2003-08-22 2005-03-17 Fujitsu Ltd 転送モード異常検出機能を有する装置並びにストレージ制御装置および同装置用インターフェイスモジュール
US7099968B2 (en) * 2003-09-02 2006-08-29 Intel Corporation System and method for generating bus requests in advance based on speculation states
EP1690185A4 (en) * 2003-10-20 2007-04-04 Rhode Island Education UPPER MEMORY MEMORY STRUCTURE FOR STORAGE SERVERS
JP4508608B2 (ja) * 2003-11-13 2010-07-21 株式会社日立製作所 統合キャッシュを備えた記憶装置アダプタ
US8566828B2 (en) * 2003-12-19 2013-10-22 Stmicroelectronics, Inc. Accelerator for multi-processing system and method
US7370243B1 (en) * 2004-06-30 2008-05-06 Sun Microsystems, Inc. Precise error handling in a fine grain multithreaded multicore processor
JP2006072717A (ja) * 2004-09-02 2006-03-16 Hitachi Ltd ディスクサブシステム
US20060236033A1 (en) * 2005-04-18 2006-10-19 Dell Products L.P. System and method for the implementation of an adaptive cache policy in a storage controller
US7444540B2 (en) * 2005-06-21 2008-10-28 Hewlett-Packard Development Company, L.P. Memory mirroring apparatus and method
CN1956095B (zh) * 2005-10-28 2010-08-25 鸿富锦精密工业(深圳)有限公司 支持多通讯接口的存储装置
JP4786312B2 (ja) * 2005-11-22 2011-10-05 株式会社日立製作所 記憶制御装置及び記憶制御装置のエラー情報管理方法
US7724645B2 (en) * 2006-06-27 2010-05-25 Intel Corporation Method and apparatus for serial link down detection
US8078918B2 (en) * 2008-02-07 2011-12-13 Siliconsystems, Inc. Solid state storage subsystem that maintains and provides access to data reflective of a failure risk

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009116732A (ja) * 2007-11-08 2009-05-28 Sony Corp 情報処理装置及び情報処理方法
JP2009169854A (ja) * 2008-01-18 2009-07-30 Nec Corp コンピュータシステム、障害処理方法および障害処理プログラム
US8295161B2 (en) 2008-12-24 2012-10-23 Fujitsu Limited Network apparatus that determines whether data is written into buffer based on detection of a memory error
WO2014115257A1 (ja) * 2013-01-23 2014-07-31 株式会社 日立製作所 PCI-Express接続ソリッドステートドライブを適用したストレージ装置
JP5898790B2 (ja) * 2013-01-23 2016-04-06 株式会社日立製作所 PCI−Express接続ソリッドステートドライブを適用したストレージ装置
US9304842B2 (en) 2013-09-24 2016-04-05 Hitachi, Ltd. Computer system, control method for computer system and coupling module

Also Published As

Publication number Publication date
US7890682B2 (en) 2011-02-15
US20070168584A1 (en) 2007-07-19

Similar Documents

Publication Publication Date Title
US10002085B2 (en) Peripheral component interconnect (PCI) device and system including the PCI
US10031820B2 (en) Mirroring high performance and high availablity applications across server computers
JP4477906B2 (ja) ストレージシステム
US7426588B2 (en) Storage apparatus
US20110145452A1 (en) Methods and apparatus for distribution of raid storage management over a sas domain
CN102223394A (zh) 远程直接存储设备访问
US20160283303A1 (en) Reliability, availability, and serviceability in multi-node systems with disaggregated memory
KR100984981B1 (ko) 계층적 캐시 메모리 시스템
JP2007188428A (ja) 半導体ストレージ装置およびストレージシステム
US11537536B2 (en) Memory controller configured to transmit interrupt signal if volatile memory has no data corresponding to address requested from source
JP2010282324A (ja) ストレージ制御装置、ストレージシステムおよびストレージ制御方法
US20050198438A1 (en) Shared-memory multiprocessor
US7752340B1 (en) Atomic command retry in a data storage system
US7353158B2 (en) Inter integrated circuit extension via shadow memory
US10853255B2 (en) Apparatus and method of optimizing memory transactions to persistent memory using an architectural data mover
US7757016B2 (en) Data transfer device, semiconductor integrated circuit, and processing status notification method
US7698500B2 (en) Disk array system, host interface unit, control method for disk array system, and computer program product for disk array system
US20160006808A1 (en) Electronic system with memory network mechanism and method of operation thereof
US20060155895A1 (en) Data transferring apparatus and data transferring method
US20060277326A1 (en) Data transfer system and method
US7979644B2 (en) System controller and cache control method
US20140365736A1 (en) Hardware Based Cache Scan with Divert Node Handling
JP2004220220A (ja) バスブリッジ回路、バス接続システム、及びバスブリッジ回路のデータエラー通知方法
JP2011192053A (ja) ディスクアレイ装置、ディスクアレイシステム、及びキャッシュ制御方法
CN100587676C (zh) 探测标记的控制装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081225

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090828