JP4528491B2 - Information processing device - Google Patents

Information processing device Download PDF

Info

Publication number
JP4528491B2
JP4528491B2 JP2003062144A JP2003062144A JP4528491B2 JP 4528491 B2 JP4528491 B2 JP 4528491B2 JP 2003062144 A JP2003062144 A JP 2003062144A JP 2003062144 A JP2003062144 A JP 2003062144A JP 4528491 B2 JP4528491 B2 JP 4528491B2
Authority
JP
Japan
Prior art keywords
memory
bit
data
slot
memory slot
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
JP2003062144A
Other languages
Japanese (ja)
Other versions
JP2004272576A (en
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003062144A priority Critical patent/JP4528491B2/en
Publication of JP2004272576A publication Critical patent/JP2004272576A/en
Application granted granted Critical
Publication of JP4528491B2 publication Critical patent/JP4528491B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Description

【0001】
【発明の属する利用分野】
本発明は、パーソナルコンピュータやワークステーション等の主たる情報処理装置(マスタ装置)のメモリバスやメモリスロットなどに装着されるネットワークインタフェースやコプロセッサ等の情報処理装置に関する。
【0002】
【従来の技術】
従来、DSPなどをDIMMに代表されるメモリモジュールに搭載するための規格であるプロセッサ搭載メモリモジュール(PEMM)の仕様が制定され、パソコンのノースブリッジ側をメモリモジュール側から待たせるための信号が定義されている(例えば、非特許文献1参照)。しかし、PEMM規格に準拠したノースブリッジは開発されておらず、その見通しも立っていない。
【0003】
PCIバス等のI/Oバスの限界を超える高性能なネットワークインタフェースのアーキテクチャとして、パソコンのメモリスロットに装着されるネットワークインタフェースが提案されており、PEMM規格に準拠していない通常のSDRタイプのDIMMスロットに装着されるDIMMnet−1プロトタイプが試作され、論文等で発表された(例えば、非特許文献2参照)。DIMMnet−1では、低遅延なFET型バススイッチを用い、ホスト側アクセスを優先する制御を行うことで、パソコンのBIOSで設定されたタイミングで必ずリードやライトを行えるように設計されていた。
【0004】
一方、パソコンのメモリスロットはSDR型からDDR型へと高速化が進んでおり、メモリスロット装着型ネットワークインタフェースにおいてもDDR型のメモリスロットのような高速化に追随できる方式が望まれている。
【0005】
この従来のDIMMnet−1では、複数のFET型バススイッチを介して複数のSO−DIMMモジュールやLSIがDIMMスロットに接続される構成をとることで、ネットワーク側とホスト側とで共有されるメモリ領域を実現している。そのため、DIMMnet−1の構成では、メモリモジュールのみがメモリスロットに搭載される場合の容量性負荷の値よりも大きな容量性負荷がバスに接続されてしまい、タイミングマージンの少ないDDR等の高速なメモリに対応することは困難であった。
【0006】
タイミング的問題の解決においては、フリップフロップで受け取ってから次のサイクルで転送をすることが有効なケースが多いが、同期DRAMモジュールへのリードアクセスでは、アクセス要求からホストのBIOSで規定される所定のクロックサイクル後に要求されたデータをメモリバスに出力しなければならない。そのため、メモリスロットとメモリモジュールとの間にフリップフロップを挿入することは、とりわけリードに対するBIOSで規定できる制限の範囲におさめることが困難であった。
【0007】
さらに、上記のタイミング的制約があるために、従来のDIMMnet−1においては、マザーボードごとに異なる、ノースブリッジチップ等に搭載されるメモリ制御部とメモリスロットと間の配線規則のばらつきに対して、ハード的に対応ができず、データ線のねじれに関してはホストとなるパソコン上でのソフト的な修正が必要になり、これが性能低下の原因となっていた。ROWアドレスとCOLUMNアドレスに折畳まれて出力される物理アドレスの再構成についても、処理上のタイミングに制約があることから、汎用な再構成を行うことができる回路を備えることは困難であった。
【0008】
さらに、上記のタイミング的制約があるために、従来のDIMMnet−1においては、搭載するメモリバンク数を二つより多くすることができなかった。また、ノースブリッジが想定する一つのメモリスロットに割り当てられる記憶容量の制限があるために、それを越える記憶容量をDIMMnet−1に持たせることができなかった。このようなアドレス空間の狭さという制約を解決するために、類似した従来技術としてはEMS(Expanded Memory Specification)がある。しかし、これを利用できるシステムでは例えば4GBをリニアにアドレシングできるCPUであるi80386等のハード的には広い空間をアドレシングできるようにパーソナルコンピュータ本体にあらかじめ構成されたハードウェアの使用が必要であり、狭い領域へのアドレス手段しか持たないメモリスロットという既にあるハードに対して後付けされるメモリモジュールへの容量拡張を行うものではない。
【0009】
また、通常のメモリモジュールやDIMMnet−1を含む、従来のメモリスロットに搭載されるデバイスは、ホストのCPUからアクセスされるにあたって、キャッシングされる領域に関してはキャッシュライン単位でのアクセスがなされるために、多次元配列のアクセス時に多発する等間隔アクセスなどの不連続アクセスに関しては不必要なデータまでCPUのキャッシュに転送することになり、キャッシュやメモリバスの利用効率の低下を招いていた。ベクトル型スーパーコンピュータにはこのような問題を回避する等間隔アクセスやリストベクトルアクセスを支援するベクトルロードストアパイプラインやベクトルレジスタが存在するが、通常、PCクラスタを構成する汎用のパーソナルコンピュータには、このようなベクトルレジスタや特殊なメモリコントローラを装備されていない。そこで、汎用のパーソナルコンピュータ上で上記の問題を回避する方式が望まれる。
【0010】
【非特許文献1】
日本電子機械工業会 “日本電子機械工業会規格:プロセッサ搭載メモリ・モジュール(PEMM)動作仕様標準”, EIAJ ED−5514 (Jul. 1998)
【0011】
【非特許文献2】
田邊, 山本, 濱田, 中條, 工藤, 天野 : DIMMスロット搭載型ネットワークインタフェースDIMMnet−1とその高バンド幅通信機構BOTF, 情報処理学会論文誌, Vol.43, No.4, pp.866−878 (Apr. 2002)
【0012】
【発明が解決しようとする課題】
以上説明したように、メモリバスに装着される情報処理装置において、DDR等の高速な周波数に対応することは困難であった。また、マザーボードごとに異なる、ノースブリッジチップ等に搭載されるメモリ制御部とメモリスロットとの間の配線規則のばらつきに対して、ハード的に対応することも困難であった。アドレス再構成についても柔軟な再構成回路を挿入することが困難であった。さらに、デバイス上に搭載するメモリバンク数を二つより多くして記憶容量拡張を行うことも困難であった。さらに、汎用のパーソナルコンピュータ上で不連続アクセスを行った場合に無駄なデータをCPUのキャッシュに取り込んでしまうという問題があった。
【0013】
本発明は、上記事情を考慮してなされたもので、マスタ装置に接続される情報処理装置において、容量性負荷を増やすことなく高周波化に追随できる情報処理装置を提供することを目的とする。
【0014】
また、本発明は、マザーボードごとに異なるメモリ制御部とメモリスロットとの間の配線規則のばらつきに対してもハード的に対応できる情報処理装置を提供することを目的とする。
【0015】
また、本発明は、アドレスの表現方法であるチップセットごとに異なるアドレス重畳規則のばらつきに対しても、柔軟に対応できる情報処理装置を提供することを目的とする。
【0016】
また、本発明は、利用できる半導体メモリ容量も大きくできる情報処理装置を提供することを目的とする。
【0017】
また、本発明は、等間隔アクセス等の不連続アクセスを効率的に行える情報処理装置を提供することを目的とする。
【0018】
【課題を解決するための手段】
本発明は、主装置との間でタイミング調整可能な制御信号がない伝送路で接続される情報処理装置において、情報処理に必要なデータを記憶するための外部メモリと、前記主装置から与えられる第1の要求に応答して、前記外部メモリに記憶したデータを含む応答データを前記主装置へ転送できる状態に準備する準備手段と、前記準備が完了したか否かを示す状態情報を保持する保持手段と、前記準備手段による準備が完了した後に、前記状態情報を読み取ることによって前記準備が完了したことを確認した前記主装置から与えられる第2の要求に応答して、前記応答データを前記主装置へ転送する転送手段と、前記主装置に設けられたメモリスロットに装着するための手段と、前記主装置を構成する基板上のメモリ制御部と前記メモリスロットとの間を結ぶ各信号線の対応関係の不整合を解消するための整合手段を備え、前記整合手段は、前記不整合の解消のための初期化動作として、前記不整合を解消するために用いる、前記メモリ制御部の信号線と前記メモリスロットの信号線との対応関係を示すマルチプレクサ制御情報を、前記メモリスロットを介して前記主装置から入力する初期化手段を含み、前記マルチプレクサ制御情報は、未だ前記不整合が解消されていない状態において、前記メモリスロットを介して、1ビットずつ順番に転送されてくるものであり、かつ、前記マルチプレクサ制御情報の各ビットの転送にあたっては、前記メモリスロットの全信号線から同時に当該ビットの値と同一の値のデータが転送されてくるものであり、前記初期化手段は、前記マルチプレクサ制御情報の各ビットを入力するにあたって、前記メモリスロットの全信号線のうちの任意の信号線からのデータを当該ビットのデータとして取り込むことを特徴とする。
また、本発明は、主装置との間でタイミング調整可能な制御信号がない伝送路で接続される情報処理装置において、情報処理に必要なデータを記憶するための外部メモリと、前記主装置から与えられる第1の要求に応答して、前記外部メモリに記憶したデータを含む応答データを前記主装置へ転送できる状態に準備する準備手段と、前記準備手段による準備が完了した後に、前記第1の要求を発してから前記準備が完了することが保証されるものとして予め定められた待機時間が経過するのを待って第2の要求を発する前記主装置から第2の要求を与えられた場合に、該第2の要求に応答して、前記応答データを前記主装置へ転送する転送手段と、前記主装置に設けられたメモリスロットに装着するための手段前記主装置を構成する基板上のメモリ制御部と前記メモリスロットとの間を結ぶ各信号線の対応関係の不整合を解消するための整合手段を備え、前記整合手段は、前記不整合の解消のための初期化動作として、前記不整合を解消するために用いる、前記メモリ制御部の信号線と前記メモリスロットの信号線との対応関係を示すマルチプレクサ制御情報を、前記メモリスロットを介して前記主装置から入力する初期化手段を含み、前記マルチプレクサ制御情報は、未だ前記不整合が解消されていない状態において、前記メモリスロットを介して、1ビットずつ順番に転送されてくるものであり、かつ、前記マルチプレクサ制御情報の各ビットの転送にあたっては、前記メモリスロットの全信号線から同時に当該ビットの値と同一の値のデータが転送されてくるものであり、前記初期化手段は、前記マルチプレクサ制御情報の各ビットを入力するにあたって、前記メモリスロットの全信号線のうちの任意の信号線からのデータを当該ビットのデータとして取り込むことを特徴とする。
【0019】
本発明によれば、容量性負荷を増やすことなく高周波化に追随できるようになる。
【0021】
また、好ましくは、前記準備手段は、前記外部メモリに対するアドレスから見て不連続なアクセスを行って、前記主装置へのデータ転送を抑制する手段を含むようにしてもよい。
【0022】
本発明によれば、マザーボードごとに異なる、ノースブリッジチップ等に搭載されるメモリ制御部とメモリスロットとの間の配線規則のばらつきに対してもハード的に対応できるようになる。
【0023】
また、好ましくは、前記外部メモリが、前記メモリスロットに装着されると前記主装置が想定する第1の記憶領域を持つメモリモジュールに記憶可能なデータ量よりも多くの量のデータを記憶できる第2の記憶領域を備える場合に、該第2の記憶領域を前記第1の記憶領域より小さい記憶領域に分割し、前記第1の記憶領域に該分割した記憶領域を割り当てることによって、前記メモリスロットを介して前記主装置から前記外部メモリの記憶領域全てをアクセス可能にする手段を更に備えるようにしてもよい。
【0024】
本発明によれば、利用できる半導体メモリ容量も大きくできるようになる。
【0025】
また、好ましくは、前記マスタ装置を構成する基板上のメモリ制御部と前記メモリスロットとの間の各信号線の対応関係の不整合を解消する整合手段を更に備えるようにしてもよい。
【0026】
また、好ましくは、前記主装置が出力したアドレス情報を情報処理装置が認識できたかどうかを知得し、アドレスの再構成を行うための制御情報を生成する手段と、その制御情報をもとに物理アドレスの再構成を行う手段を更に備えるようにしてもよい。
【0027】
本発明によれば、外部メモリに対するアドレス的に等間隔なアクセスといった不連続なアクセスについても効率的なアクセスが可能となる。
【0029】
【発明の実施の形態】
以下、図面を参照しながら発明の実施の形態を説明する。
【0030】
(第1の実施形態)
以下では、情報処理装置の一例としてメモリバス装着型のネットワークインタフェース装置に本発明を適用した場合を例にとって説明する。
【0031】
図1に、本実施形態に係るメモリバス装着型ネットワークインタフェース装置(情報処理装置)の構成例を示す。
【0032】
図1に示されるように、マスタ装置となるホストコンピュータのCPU1のメモリバス10上に、本発明を適用したメモリバス装着型のネットワークインタフェース100が配置される。
【0033】
ネットワークインタフェース100には、ネットワーク制御部110と、プリフェッチ制御機能付メモリバスインタフェース120(以下、プリフェッチ制御機能付を省略してメモリバスインタフェース120と呼ぶ)と、外部メモリ制御部130と、この例では4個の外部メモリ140〜143とが搭載されている。また、メモリバスインタフェース120は、バッファメモリ125を含む。なお、図1では、ネットワーク制御部110とメモリバスインタフェース120と外部メモリ制御部130とは1つのLSI150上に形成される場合を例示している。
【0034】
外部メモリ140〜143には、送受信に関わるデータの全部又は一部が記憶される。CPU1及びネットワークインタフェース100のネットワーク制御部110は、この外部メモリ140〜143にアクセスして送受信に関わるデータを読み書きする。さらに、CPU1が制御用のデータをネットワーク制御部110に対して読み書きすることにより、ネットワーク制御部110が外部メモリ140〜143にアクセスしつつ、CPU1から指令された通信を実行することでネットワークインタフェースとしての機能を果たす。
【0035】
通常、パーソナルコンピュータ等のホストコンピュータは、メモリ制御部(図示せず)を有するノースブリッジ2と称される量産型のVLSIによって、CPU1と主記憶4,5との間が接続されており、あるいはまた、一部のものでは該メモリ制御部がCPU1に搭載されており、いずれにしても、該メモリ制御部が直接メモリバス10に接続され、主記憶4,5をアクセスする。組み込み用のボードコンピュータでもパーソナルコンピュータ用に開発された量産型ノースブリッジを用いていることが多い。
【0036】
これらのような量産型ノースブリッジを用いているホストコンピュータでは、BIOS設定によって若干のタイミング修正が可能であるものの、リード要求開始から応答データがメモリバス10上に出力されるまでのタイミングを柔軟に変更することはできない。
【0037】
図1のようにCPU1が外部メモリ140〜143にリードアクセスするためにメモリバスインタフェース120を構成するLSIを通過して応答データを返す場合は、BIOS設定によるタイミング修正では間に合わなくなる可能性が高いし、かりにBIOS設定によるタイミング修正で間に合ったとしても、通常の主記憶4,5の全体まで遅くなってしまう。他方、バッファメモリ125は、メモリバスインタフェース120と緊密な位置に配置される高速なメモリであるため、バッファメモリ125にあるデータをCPU1がリードする場合は、BIOS設定によるタイミングでアクセスが可能である。
【0038】
そこで、本実施形態では、応答データを確実に転送できる状態に整えるためのプリフェッチ要求フェーズと、応答データが確実に転送できる状態に整った後にこれをマスタ装置に転送するためのデータ転送フェーズとを設けている。
【0039】
まず、プリフェッチ要求フェーズでは、「CPU1からの所定のアクセス(例えばプリフェッチ要求を指示するために割り当てられた領域への書き込みなど)によって指定されるアドレスにあるデータを、メモリバスインタフェース120が、(外部メモリから)バッファメモリ125まで移動すること」を要求する。
【0040】
そして、データ転送フェーズでは、上記要求を発してから、ソフトウェア的に挿入される所定の遅延の後に、実際のリード要求をCPU1が行うと、メモリバスインタフェース120は、BIOSで規定される所定のタイミングで、応答データをバッファメモリ125からメモリバス10に出力する。
【0041】
本実施形態における方式は、バッファメモリ125まで必要なデータがプリフェッチされている状態で実際のリード要求を出した場合に正しく動作するが、プリフェッチされる前にCPU1がリード要求を出した場合には正しいデータがデータバスに正しいタイミングで出力されない。ソフトウェア的に挿入される所定の遅延を正しく動作できる量にするためには種々の方式があり得る。
【0042】
例えば、アドレスや状態によらず、ある時間以上の遅延を挿入すればよいメモリをアクセスする場合は、通常の同期DRAMを主記憶とするパーソナルコンピュータのBIOS設定のようにその遅延値を初期値として設定しておき、必ずその値以上の遅延値を実現するループやNOP命令を実行後に実際のリード要求を実行すればよい。
【0043】
一方、アドレスや状態によってバッファメモリ125まで必要なデータがプリフェッチされるまでの時間が大きく変動して最大遅延値を与えられない構成の場合は、例えば、その一部のデータブロック(例えば8バイト)ごとにプリフェッチが完了したか否かを示すフラグを設け、CPU1は、そのフラグをリードして、そのフラグの状態がプリフェッチ完了を示す値になったどうかを監視し、プリフェッチ完了を示す値になったことが確認された場合に限り、実際のリード要求を出すようにすればよい。このようにすれば、柔軟なプリフェッチ遅延に対応することが可能になる。ここで、フラグは、メモリバスインタフェース120に緊密な位置に配置されたレジスタで実装されるなどして、遅延をはさまなくてもCPU1からリードできるようにするのが望ましい。
【0044】
複数(例えば64ビット)のフラグの状態を1回のリードアクセスにより取得可能な場合は、複数(例えば64ブロック)のプリフェッチ状態を1回のリードアクセスにより取得可能となるので、例えばバッファメモリが64個の8バイトブロックからなり64ブロック分のプリフェッチ要求を出しておくことで、1回のフラグチェックによって最高で64ブロックがプリフェッチ完了状態にあることがわかるようになるため、フラグチェックのオーバーヘッドを減少させることが可能である。
【0045】
ここで、図4に、従来のメモリバス装着型ネットワークインタフェースを示す。2個の外部メモリ1148,1149、外部メモリ制御部1131、FETスイッチ130〜133、メモリバスインタフェース1121、ネットワーク制御部1110から構成されるネットワークインタフェースが、メモリスロットに装着されることで、メモリバスに接続される。メモリバスには、FETスイッチ1130,1131とメモリスロットインタフェース1121が負荷として接続されることになる。
【0046】
これに対して図1で例示した本実施形態のメモリバス装着型ネットワークインタフェースおいては、プリフェッチ制御機能付メモリバスインタフェース120のみがメモリバス10に接続されることになるので、従来よりも周波数の高いメモリバス10に対しても適用可能となる。
【0047】
また、図4の従来例では、これ以上メモリバスへの容量性負荷を増やすことが困難であったために、外部メモリを3個以上に増設することができなかった。
【0048】
これに対して本実施形態では、外部メモリ増設における容量性負荷の増加の問題がないので、従来と異なり、3個以上の外部メモリを搭載することも可能になる。例えば、図1の構成例では、4個の外部メモリ140〜143を搭載しているが、そのことでホスト1上のメモリバス10への容量性負荷の増加を発生させることはない。
【0049】
なお、本実施形態では、マスタ装置であるパーソナルコンピュータ本体の基板上に実装されたネットワークインタフェースへの適用について示したが、メモリスロットに装着可能な形式に変形することもできるし、ネットワーク制御部が無い大容量かつ高機能な拡張用メモリモジュールとして変形することもできるし、ネットワーク制御部をDSPやリコンフィギャブルプロセッサなどの他の形態の処理装置に置き換えたコプロセッサモジュールとして変形することもできる。
【0050】
(第2の実施形態)
以下では、情報処理装置の一例としてメモリスロット装着型のネットワークインタフェース装置に本発明を適用した場合を例にとって説明する。
【0051】
図2に、本実施形態に係るメモリスロット装着型ネットワークインタフェース装置(情報処理装置)の構成例を示す。
【0052】
図1(第1の実施形態)の構成例では、マスタ装置であるパーソナルコンピュータ本体の基板上にネットワークインタフェースが実装されている場合を例にとって示しているが、図2では、メモリスロットに装着可能な形式となっており、不連続領域プリフェッチ機能付メモリスロットインタフェース121(以下、不連続領域プリフェッチ機能付を省略してメモリスロットインタフェース121と呼ぶ)を備えている。なお、プリフェッチ要求フェーズとデータ転送フェーズとを使用できるようにしている点は、第1の実施形態と同様である。
【0053】
さらに、メモリスロットインタフェース121は、ノースブリッジチップ(図1参照)又はCPU(図1参照)に搭載されるメモリ制御部(第1の実施形態参照)とメモリスロットとの間の配線のねじれを解消するための、ねじれ解消回路200並びにねじれ検出値出力回路210及びねじれ設定値入力回路220を含んでいる。また、外部メモリ制御部としては、アドレス拡張機能付きの外部メモリ制御部131を備えている。
【0054】
ここでいう配線のねじれとは、メモリ制御部が想定する信号線とメモリスロットに装着されるメモリモジュールの設計上定まる信号線との関係が異なっている状態を指す。通常のメモリモジュールの場合、たとえば複数あるデータ線のうち、1のデータ線がメモリスロット上に装着されたメモリモジュールのデータ線に割り当てられたいずれのビットに接続されていても構わない。データ線であればそれがメモリモジュールのいずれのビットに接続されていても、メモリ制御部に接続されたデータ線で見たときにデータの書き込み時に与えた情報と読み出した時の情報とが同一であれば利用上なんら問題とならないからである。このため、同一規格のメモリモジュールであっても、メモリ制御部の設計によってはデータ線とメモリモジュールの結線関係が異なる場合があるのである。
【0055】
なお、メモリ制御部がノースブリッジチップに搭載される場合を想定して説明するが、メモリ制御部がCPUに搭載される場合も同様である。
【0056】
ホストとなるパソコンにおいて、メモリ制御部すなわちノースブリッジチップとメモリスロットとの間の配線は、そのマザーボードによっては図3に例示するように必ずしも、ノースブリッジチップのデータビット0がメモリスロットのデータビット0に接続されているとは限らない。図3の配線例では、64ビット幅データのメモリバスについて示しており、ND00〜ND77の8進数二桁で区別できるノースブリッジチップ側の各ビット線がD00〜D77の8進数二桁で区別できるメモリスロット側の各ビット線にバイト単位のねじれとビット単位のねじれの組み合わせによって複雑にねじれて接続されている様子を示している。
【0057】
メモリスロットに装着可能な形式の場合、従来のメモリスロット装着型ネットワークインタフェースにおいては、このようなマザーボードごとに異なるノースブリッジチップとメモリスロットとの間の配線規則のばらつきに対して、BIOSで設定されるタイミングでリードの応答を返す必要性から、このような多様にして複雑なねじれをハード的に対応するだけのタイミング的余裕ができず、データ線のねじれに対してはホストとなるパソコン上でのソフト的な修正が必要になり、これが性能低下の原因となっていた。
【0058】
一方、図2の構成例では、第1の実施形態と同様にプリフェッチ要求フェーズとデータ転送フェーズの使用によって、リードに対するタイミング制約が緩和されるので、ノースブリッジチップとメモリスロットとの間の配線のねじれを解消するねじれ解消回路200を具備したとしても、タイミング制約を満たすことが可能になる。
【0059】
このように本実施形態によれば、高い周波数で動作するメモリバスを持つ種々のマザーボードに対応可能なメモリスロット装着型情報処理装置を構築することが可能になる。
【0060】
ねじれ解消回路200としては、最も柔軟性が大きいのはメモリバスのデータバスビット幅の入力と出力を有するクロスバースイッチによって実現するケースであるが、回路規模がデータバスビット幅の2乗に比例するため大きくなってしまう。一方、通常のマザーボードではバイト単位での主記憶への書き込みを許しているために、バイト単位で設置される書き込みイネーブル信号があり、このためバイト単位で同一のメモリチップに導かれる必要があり、配線規則もその制約を守っているのが一般的である。
【0061】
そこで、その性質を利用して、ねじれ解消回路200の中に、バイト単位配線ねじれ解消部とビット単位配線ねじれ解消部とを設けるようにしてもよい。例えば、64ビット幅のメモリバスに対応可能なねじれ解消回路200としては、フルクロスバースイッチ方式で実装すると64入力1出力のマルチプレクサが64個必要になり、クロスポイント換算で4096個のスイッチが必要である。これに対して、バイト単位配線ねじれ解消部とビット単位配線ねじれ解消部とを設けた場合は、バイト単位配線ねじれ解消には8入力1出力のマルチプレクサが64個必要であり、ビット単位配線ねじれ解消にも8入力1出力のマルチプレクサが64個必要であり、クロスポイント換算で1024個のスイッチが必要である。このように、バイト単位配線ねじれ解消部とビット単位配線ねじれ解消部とを設けることによって、回路規模を節約することが可能となる。メモリバスのビット幅が増加すると、この差はさらに大きなものになる。
【0062】
上記の場合において、マルチプレクサの制御情報は、マザーボード毎に異なるのが一般的であり、どのようにねじれているのかを知らないとねじれ解消を正しく行える設定が不可能である。これを総当り式に設定を試して正しく動作するかという試行錯誤から突き止めるには、64ビット幅のデータバスの場合は8の128乗回の試行が必要であり、現実的ではない。
【0063】
そこで、図2の構成例では、1ビットだけ他のビットと異なるデータをメモリスロットに出力する初期化動作を行うためのねじれ検出値出力回路210を設ける。所定のタイミングで所定のビットの値のみを他の全てのビットの値(例えば0)と異なる値(例えば1)にするための制御については、例えば、LSIの入出力セルにスキャンパスが組み込まれている場合にはそれを利用してもよいし、あるいは、専用の状態機械を設けて初期化の際にホストからの読み出しを受けて1ビットだけ他のビットと異なるデータをメモリスロットに出力させるようにしてもよい。このようにして、ホスト側ではLSIのどのビット線がホストのチップセット側のどのデータ線に接続されているかということを認識することが可能になる。
【0064】
上記の過程等によって得られたマルチプレクサ制御情報は、外部ROMや保守用のシリアルバスから入力する方式もあり得るが、それらは別途ハードウェアが必要であり、柔軟性にも欠ける。一方、データ配線がねじれた状態では、データ幅全てを使って設定情報を正しく入力することは不可能である。
【0065】
そこで、本実施形態では、全ビットが同一なデータをメモリバスから入力する初期化動作を行うねじれ設定値入力回路220を設ける。これにより、メモリバス装着型情報処理装置側では、データ配線がいかなるねじれ方をしていても、それを冗長なシリアル通信路と解釈して任意のビットのデータ線のデータを取り込むことで、ホストから正しく情報を受け取ることが可能である。こうして伝達されたマルチプレクサ制御情報を設定した後は、データバスの全ビットがねじれ解消回路200によって正しい位置に修正されるので、全ビットのバンド幅を使ってホストとのデータ授受を行うことが可能になる。
【0066】
本実施形態では、マザーボードごとに異なるデータ線のねじれに対応する回路について述べたが、チップセットごとに異なるアドレス重畳規則に対応する回路にも、本発明によるタイミング制約の緩和は貢献する。例えば従来例であるDIMMnet−1では、タイミング制約が厳しかったこともあり、予めアドレス重畳規則の仕様がデータシートから判明している既存の少数のノースブリッジのみに対応する簡素なアドレス再構成回路しか挿入できなかった。
【0067】
それに対し、本発明によればアドレス再構成のための制約が緩和され、あらゆる重畳規則にも対応できる柔軟なアドレス再構成回路を挿入することができる。
好ましくは、ノースブリッジが二回に分けて出力した物理アドレスを情報処理装置側で保持し、それを例えばスキャンパスなどを使ってチップの外に出力し、ホストから1ビットだけ1のアドレスをアドレスのビット幅の回数だけ出力して、出力された位置とそれが何回目かとを検査することでアドレス再構成回路制御情報を生成することができる。その制御情報にもとづけばアドレスを再構成するアドレス再構成回路を挿入することもできる。このようにすると、あらゆる重畳規則にも対応することが可能である。
【0068】
また、本実施形態では、外部メモリ制御部131にアドレス拡張機能が備えられている。例えば、本メモリスロット装着型ネットワークインタフェースを装着するマスタ装置であるパーソナルコンピュータのメモリスロットが1個あたり上限512MBまでのモジュールを受容できるものである場合、本ネットワークインタフェースに対してホストからある瞬間にアクセスできるのは上限512MBまでに制限される。一方、外部メモリとして用いられるメモリモジュールとしては例えば512MBのものまで入手できるとしても、図4に示されるような2個の外部メモリモジュール1148,1149を搭載する従来例では、該2個の外部メモリモジュール1148,1149には上限512MBしかホストからアクセス可能な状態で利用することはできなかった。実際には、ネットワーク制御部などをホストからアクセス可能な空間にマップする必要があるので、メモリとして利用できる容量はさらに制限される。よって、主記憶として用いられるべきメモリスロットを一つネットワークインタフェースのために使用してしまったことにより、主記憶を大量に用いるアプリケーションの実行時にはハードディスクへのアクセスの増加に伴い処理性能が大幅に低下してしまう。
【0069】
これに対して本実施形態のアドレス拡張機能付外部メモリ制御部131では、ある瞬間にはホスト側に見えていない領域へのアクセスを行う際に切り替えを行うことで、ホストとなるパーソナルコンピュータのメモリスロット容量制限よりも多くの外部メモリをホストからもアクセスできる。
【0070】
また、例えば上限512MBのメモリスロットに装着する場合でも、外部メモリモジュールとしては512MBのメモリモジュールを4枚搭載して、例えば各外部メモリの1/4ずつをホスト側にアクセスできるようにマップするようにしてもよい。その領域以外の合計1.5GBのメモリをホスト側からアクセスする場合は、ホスト側からの制御語の書き込み等によりマップの切り替えを行った後にアクセスする。その運用方法としては、例えば4プロセスに1/4ずつの領域を割り当て、プロセス切り替えに際にマップを切り替えてもよいし、一つのプロセスが全メモリ領域を割り当てられ、必要になったときに随時、マップを切り替えてアクセスすることで、ハードディスクをアクセスしなくても主記憶容量制約を超越する領域を高速にアクセスできる拡張大容量記憶として用いてもよい。このようにすれば、例えば2GBまでの主記憶容量制約を持つパーソナルコンピュータ上で、主記憶に1.5GBと本ネットワークインタフェース上の拡張大容量記憶に2GBの合計3.5GBの、ハードディスクをアクセスしなくても、アクセスできる記憶容量が実現でき、本ネットワークインタフェースを使うことによってハードディスクアクセスが増えないばかりでなく、逆にハードディスクアクセスを大幅に減らすことも可能になる。
【0071】
また、本実施形態では、不連続領域プリフェッチ機能付きのメモリスロットインタフェース121を備えているので、プリフェッチ要求フェーズでは、「ホストコンピュータからの所定のアクセス(例えばプリフェッチ要求を指示するために割り当てられた領域のアドレスおよびアクセスパターンバリエーションからなるプリフェッチ要求指示語を書き込むアクセス)によって指定されるアドレスのデータを、不連続領域プリフェッチ制御機能付メモリバスインタフェース121が、(外部メモリから)バッファメモリ125まで移動すること」を要求する。アクセスパターンバリエーションとしては、等間隔アクセスを指定するデータ間隔やブロック長や語数などの種々のものがあり得る。これによって、マスタ装置への不必要なデータ転送を抑制する先取りを行うプリフェッチを行うことができ、等間隔アクセス等の不連続アクセスを効率的に行うことができる。
【0072】
なお、本実施形態において、2つのフェイズによるプリフェッチ制御機能を実施することを前提として、ねじれ解消機能と、アドレス拡張機能と、不連続アクセス機能とは、独立して実施することが可能である。
【0073】
なお、各実施形態で例示した構成は一例であって、それ以外の構成を排除する趣旨のものではなく、例示した構成の一部を他のもので置き換えたり、例示した構成の一部を省いたり、例示した構成に別の機能を付加したり、それらを組み合わせたりすることなどによって得られる別の構成も可能である。また、例示した構成と論理的に等価な別の構成、例示した構成と論理的に等価な部分を含む別の構成、例示した構成の要部と論理的に等価な別の構成なども可能である。また、例示した構成と同一もしくは類似の目的を達成する別の構成、例示した構成と同一もしくは類似の効果を奏する別の構成なども可能である。
【0074】
また、各種構成部分についての各種バリエーションは、適宜組み合わせて実施することが可能である。
【0075】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【0076】
【発明の効果】
本発明によれば、容量性負荷を増やすことなく高周波化に追随できる情報処理装置を実現することができる。
【図面の簡単な説明】
【図1】 本発明の一実施形態に係る情報処理装置の構成例を示す図
【図2】 同実施形態に係る情報処理装置の他の構成例を示す図
【図3】 マスタ装置上のノースブリッジチップとメモリスロットとの間の配線のねじれ方の例を示す図
【図4】 従来の情報処理装置について説明するための図
【符号の説明】
1…CPU、2…ノースブリッジ、3…サウスブリッジ、4,5…主記憶、10…メモリバス、100…ネットワークインタフェース、110…ネットワーク制御部、120…プリフェッチ制御機能付メモリバスインタフェース、121…不連続領域プリフェッチ制御機能付メモリスロットインタフェース、125…バッファメモリ、130…外部メモリ制御部、131…アドレス拡張機能付メモリ制御部、140,141,142,143…外部メモリ、150…LSI、200…ねじれ解消回路、210…ねじれ検出値出力回路、220…ねじれ設定値入力回路
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing device such as a network interface or a coprocessor mounted on a memory bus or a memory slot of a main information processing device (master device) such as a personal computer or a workstation. In place Related.
[0002]
[Prior art]
Conventionally, the specifications of a processor-mounted memory module (PEMM), which is a standard for mounting a DSP or the like on a memory module typified by a DIMM, has been established, and a signal for waiting the north bridge side of a personal computer from the memory module side has been defined. (For example, refer nonpatent literature 1). However, the North Bridge conforming to the PEMM standard has not been developed and the prospect has not been established.
[0003]
As a high-performance network interface architecture that exceeds the limits of I / O buses such as the PCI bus, a network interface to be installed in a memory slot of a personal computer has been proposed, and a normal SDR type DIMM that does not conform to the PEMM standard A DIMMnet-1 prototype to be installed in the slot was prototyped and published in a paper (for example, see Non-Patent Document 2). The DIMMnet-1 is designed so that reading and writing can always be performed at the timing set by the BIOS of the personal computer by using a low-latency FET bus switch and performing control giving priority to host-side access.
[0004]
On the other hand, the speed of a memory slot of a personal computer has been increased from the SDR type to the DDR type, and a method capable of following the speed increase like a DDR type memory slot is desired also in a memory slot mounting type network interface.
[0005]
In this conventional DIMMnet-1, a memory area shared by the network side and the host side is obtained by adopting a configuration in which a plurality of SO-DIMM modules and LSIs are connected to a DIMM slot via a plurality of FET type bus switches. Is realized. Therefore, in the configuration of DIMMnet-1, a capacitive load larger than the capacitive load value when only the memory module is mounted in the memory slot is connected to the bus, and a high-speed memory such as a DDR with a small timing margin. It was difficult to deal with.
[0006]
In solving timing problems, it is often effective to transfer data in the next cycle after it is received by the flip-flop. However, in read access to the synchronous DRAM module, the predetermined request specified by the host BIOS from the access request. The requested data must be output to the memory bus after a number of clock cycles. For this reason, it is difficult to insert a flip-flop between the memory slot and the memory module, particularly within the limits that can be defined by the BIOS for the leads.
[0007]
Furthermore, due to the timing constraints described above, in the conventional DIMMnet-1, with respect to variations in the wiring rules between the memory control unit mounted on the north bridge chip or the like and the memory slot, which are different for each motherboard, It was not possible to deal with hardware, and twisting of the data line required software correction on the host personal computer, which caused performance degradation. It is difficult to provide a circuit that can perform general-purpose reconfiguration for reconfiguration of physical addresses that are folded and output to a ROW address and a COLUMN address due to restrictions on processing timing. .
[0008]
Furthermore, due to the above timing constraints, the conventional DIMMnet-1 cannot have more than two memory banks. Further, since there is a limitation on the storage capacity allocated to one memory slot assumed by the North Bridge, it was not possible to provide the DIMMnet-1 with a storage capacity exceeding that limit. In order to solve the restriction of such a narrow address space, there is EMS (Expanded Memory Specification) as a similar conventional technique. However, in a system that can use this, it is necessary to use hardware pre-configured in the personal computer main body so that a wide space in hardware such as i80386, which is a CPU capable of linearly addressing 4 GB, can be addressed. This is not intended to expand the capacity of a memory module that is retrofitted to existing hardware called a memory slot having only address means for the area.
[0009]
In addition, when a device mounted in a conventional memory slot including a normal memory module and DIMMnet-1 is accessed from the host CPU, the cached area is accessed in units of cache lines. As for discontinuous access such as equidistant access that occurs frequently when accessing a multi-dimensional array, unnecessary data is transferred to the CPU cache, resulting in a decrease in the efficiency of use of the cache and memory bus. Vector supercomputers have vector load store pipelines and vector registers that support equidistant access and list vector access to avoid such problems, but general-purpose personal computers that make up a PC cluster usually have It is not equipped with such vector registers or special memory controllers. Therefore, a method for avoiding the above problem on a general-purpose personal computer is desired.
[0010]
[Non-Patent Document 1]
Japan Electronic Machinery Manufacturers Association “Japan Electronic Machinery Manufacturers Standard: Processor Mounted Memory Module (PEMM) Operation Specification Standard”, EIAJ ED-5514 (Jul. 1998)
[0011]
[Non-Patent Document 2]
Tanabe, Yamamoto, Iwata, Nakajo, Kudo, Amano: DIMM slot-mounted network interface DIMMnet-1 and its high bandwidth communication mechanism BOTF, Transactions of Information Processing Society of Japan, Vol. 43, no. 4, pp. 866-878 (Apr. 2002)
[0012]
[Problems to be solved by the invention]
As described above, it has been difficult for an information processing device mounted on a memory bus to support high-speed frequencies such as DDR. In addition, it is difficult to cope with variations in wiring rules between a memory control unit and a memory slot mounted on a north bridge chip or the like, which are different for each motherboard. It is difficult to insert a flexible reconfiguration circuit for address reconfiguration. Furthermore, it has been difficult to expand the storage capacity by increasing the number of memory banks mounted on the device more than two. In addition, when discontinuous access is performed on a general-purpose personal computer, there is a problem that unnecessary data is taken into the CPU cache.
[0013]
The present invention has been made in consideration of the above circumstances, and in an information processing apparatus connected to a master apparatus, an information processing apparatus capable of following a higher frequency without increasing a capacitive load. Place The purpose is to provide.
[0014]
In addition, the present invention provides an information processing device that can cope with a variation in wiring rules between a memory control unit and a memory slot that are different for each motherboard. Place The purpose is to provide.
[0015]
The present invention also provides an information processing apparatus that can flexibly cope with variations in address superposition rules that differ for each chipset, which is an address expression method. Place The purpose is to provide.
[0016]
In addition, the present invention provides an information processing apparatus that can increase the available semiconductor memory capacity. Place The purpose is to provide.
[0017]
The present invention also provides an information processing device that can efficiently perform discontinuous access such as equidistant access. Place The purpose is to provide.
[0018]
[Means for Solving the Problems]
The present invention provides an external memory for storing data required for information processing, and the main device, in an information processing device connected by a transmission path without a control signal capable of timing adjustment with the main device. Responding to the first request, holding means for preparing response data including data stored in the external memory so that it can be transferred to the main device, and status information indicating whether the preparation has been completed are held. In response to a second request given from the main device that has confirmed that the preparation is completed by reading the status information after the preparation by the holding unit and the preparation unit is completed, the response data is Transfer means for transferring to the main device, and means for mounting in a memory slot provided in the main device And a matching means for eliminating the mismatch of the correspondence relationship of each signal line connecting the memory control unit on the substrate constituting the main device and the memory slot. Preparation The matching unit is a multiplexer that indicates a correspondence relationship between the signal line of the memory control unit and the signal line of the memory slot, which is used to eliminate the mismatch as an initialization operation for eliminating the mismatch. Initialization means for inputting control information from the main unit via the memory slot, and the multiplexer control information is bit by bit via the memory slot in a state where the inconsistency has not yet been resolved. In addition, when transferring each bit of the multiplexer control information, data having the same value as the value of the bit is transferred simultaneously from all signal lines of the memory slot. And the initialization means inputs all bits of the multiplexer control information in order to input all bits of the memory slot. Capturing data from any signal line of the data of the bit It is characterized by that.
Also, The present invention In an information processing apparatus connected via a transmission path without a control signal capable of timing adjustment with the main apparatus, an external memory for storing data necessary for information processing and a first request given from the main apparatus In response to the preparation means for preparing the response data including the data stored in the external memory so that it can be transferred to the main device, and after the preparation by the preparation means is completed, after issuing the first request When a second request is given from the main unit that issues a second request waiting for a predetermined waiting time to elapse to be guaranteed, the second request Transfer means for transferring the response data to the main device in response to a request, and means for mounting the memory in a memory slot provided in the main device When , Matching means for eliminating the mismatch of the correspondence of each signal line connecting the memory control unit on the substrate constituting the main device and the memory slot Preparation The matching unit is a multiplexer that indicates a correspondence relationship between the signal line of the memory control unit and the signal line of the memory slot, which is used to eliminate the mismatch as an initialization operation for eliminating the mismatch. Initialization means for inputting control information from the main unit via the memory slot, and the multiplexer control information is bit by bit via the memory slot in a state where the inconsistency has not yet been resolved. In addition, when transferring each bit of the multiplexer control information, data having the same value as the value of the bit is transferred simultaneously from all signal lines of the memory slot. And the initialization means inputs all bits of the multiplexer control information in order to input all bits of the memory slot. Capturing data from any signal line of the data of the bit It is characterized by that.
[0019]
According to the present invention, it becomes possible to follow high frequency without increasing the capacitive load.
[0021]
Preferably, the preparation means may include means for suppressing data transfer to the main device by performing discontinuous access as viewed from the address to the external memory.
[0022]
According to the present invention, it is possible to cope with a variation in wiring rules between a memory control unit mounted on a north bridge chip or the like and a memory slot, which are different for each motherboard.
[0023]
Preferably, the external memory stores a larger amount of data than can be stored in a memory module having a first storage area assumed by the main device when the external memory is installed in the memory slot. The memory slot by dividing the second storage area into storage areas smaller than the first storage area and allocating the divided storage area to the first storage area. There may be further provided means for making the entire storage area of the external memory accessible from the main apparatus via
[0024]
According to the present invention, the available semiconductor memory capacity can be increased.
[0025]
In addition, preferably, a matching unit may be further provided to eliminate mismatching of the correspondence relationship between the signal lines between the memory control unit on the substrate constituting the master device and the memory slot.
[0026]
Preferably, means for generating whether or not the information processing apparatus has recognized the address information output from the main apparatus and generating control information for reconfiguring the address, and based on the control information A means for reconfiguring the physical address may be further provided.
[0027]
According to the present invention, it is possible to efficiently access discontinuous access such as access to an external memory at an equal interval in address.
[0029]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the invention will be described with reference to the drawings.
[0030]
(First embodiment)
Hereinafter, a case where the present invention is applied to a network interface device with a memory bus as an example of the information processing device will be described as an example.
[0031]
FIG. 1 shows a configuration example of a memory bus-mounted network interface device (information processing device) according to the present embodiment.
[0032]
As shown in FIG. 1, a memory bus-mounted network interface 100 to which the present invention is applied is arranged on a memory bus 10 of a CPU 1 of a host computer serving as a master device.
[0033]
The network interface 100 includes a network control unit 110, a memory bus interface 120 with a prefetch control function (hereinafter referred to as the memory bus interface 120 with the prefetch control function omitted), an external memory control unit 130, Four external memories 140 to 143 are mounted. The memory bus interface 120 includes a buffer memory 125. 1 illustrates a case where the network control unit 110, the memory bus interface 120, and the external memory control unit 130 are formed on one LSI 150.
[0034]
The external memories 140 to 143 store all or part of data related to transmission / reception. The CPU 1 and the network control unit 110 of the network interface 100 access the external memories 140 to 143 to read / write data related to transmission / reception. Further, the CPU 1 reads / writes control data from / to the network control unit 110, so that the network control unit 110 accesses the external memories 140 to 143 and executes communication instructed by the CPU 1 to form a network interface. Fulfills the function of
[0035]
Usually, a host computer such as a personal computer is connected between the CPU 1 and the main memories 4 and 5 by a mass-produced VLSI called a north bridge 2 having a memory control unit (not shown), or In some cases, the memory control unit is mounted on the CPU 1. In any case, the memory control unit is directly connected to the memory bus 10 and accesses the main memories 4 and 5. Many of the embedded board computers use a mass-produced north bridge developed for personal computers.
[0036]
In a host computer using such a mass production type north bridge, although the timing can be slightly modified by setting the BIOS, the timing from the start of the read request to the output of response data onto the memory bus 10 is flexible. It cannot be changed.
[0037]
As shown in FIG. 1, when the CPU 1 returns response data through the LSI constituting the memory bus interface 120 for read access to the external memories 140 to 143, there is a high possibility that the timing correction by BIOS setting will not be in time. Even if the timing is corrected by BIOS setting, the entire main memories 4 and 5 are delayed. On the other hand, since the buffer memory 125 is a high-speed memory arranged at a close position to the memory bus interface 120, when the CPU 1 reads data in the buffer memory 125, it can be accessed at a timing set by the BIOS. .
[0038]
Therefore, in the present embodiment, there are a prefetch request phase for preparing a state where response data can be reliably transferred, and a data transfer phase for transferring the response data to the master device after the response data is ready to be reliably transferred. Provided.
[0039]
First, in the prefetch request phase, “the memory bus interface 120 transfers data at an address specified by a predetermined access from the CPU 1 (for example, writing to an area allocated to instruct a prefetch request) (external "Move from memory to buffer memory 125".
[0040]
In the data transfer phase, when the CPU 1 issues an actual read request after a predetermined delay inserted in software after issuing the above request, the memory bus interface 120 has a predetermined timing defined by the BIOS. The response data is output from the buffer memory 125 to the memory bus 10.
[0041]
The method according to the present embodiment operates correctly when an actual read request is issued in a state where necessary data up to the buffer memory 125 is prefetched, but when the CPU 1 issues a read request before prefetching, Correct data is not output to the data bus at the correct timing. There are various methods for setting the predetermined delay inserted in software to an amount that can be operated correctly.
[0042]
For example, when accessing a memory in which a delay of a certain time or more is inserted regardless of an address or a state, the delay value is set as an initial value like a BIOS setting of a personal computer having a normal synchronous DRAM as a main memory. An actual read request may be executed after executing a loop or a NOP instruction that always realizes a delay value equal to or greater than that value.
[0043]
On the other hand, in the case of a configuration in which the time until prefetching of necessary data to the buffer memory 125 varies greatly depending on the address and state and the maximum delay value cannot be given, for example, a part of the data block (for example, 8 bytes) Each time, a flag indicating whether or not prefetching is completed is provided, and the CPU 1 reads the flag and monitors whether the state of the flag becomes a value indicating completion of prefetching, and becomes a value indicating completion of prefetching. It is only necessary to issue an actual read request only when it has been confirmed. In this way, it is possible to cope with a flexible prefetch delay. Here, it is desirable that the flag can be read from the CPU 1 without interposing a delay by, for example, being mounted by a register arranged at a close position on the memory bus interface 120.
[0044]
When a plurality of (for example, 64 bits) flag states can be acquired by a single read access, a plurality of (for example, 64 blocks) prefetch states can be acquired by a single read access. By making a prefetch request for 64 blocks consisting of 8 8-byte blocks, it becomes possible to know that at most 64 blocks are in the prefetch completion state by one flag check, so the flag check overhead is reduced. It is possible to make it.
[0045]
Here, FIG. 4 shows a conventional memory bus-mounted network interface. A network interface including two external memories 1148 and 1149, an external memory control unit 1131, FET switches 130 to 133, a memory bus interface 1121, and a network control unit 1110 is attached to the memory slot, so that the memory bus Connected. FET switches 1130 and 1131 and a memory slot interface 1121 are connected to the memory bus as loads.
[0046]
On the other hand, in the memory bus-mounted network interface of this embodiment illustrated in FIG. 1, only the memory bus interface 120 with the prefetch control function is connected to the memory bus 10, so that the frequency is higher than that of the conventional one. The present invention can also be applied to the high memory bus 10.
[0047]
Further, in the conventional example of FIG. 4, it is difficult to increase the capacitive load on the memory bus any more, so that it is not possible to increase the number of external memories to three or more.
[0048]
On the other hand, in the present embodiment, there is no problem of an increase in the capacitive load due to the expansion of the external memory, so that it is possible to mount three or more external memories unlike the conventional case. For example, in the configuration example of FIG. 1, four external memories 140 to 143 are mounted, but this does not cause an increase in capacitive load to the memory bus 10 on the host 1.
[0049]
In the present embodiment, the application to the network interface mounted on the board of the personal computer main body which is the master device has been described. However, the embodiment can be modified to a format that can be mounted in the memory slot, and the network control unit It can be modified as an expansion memory module having no large capacity and high function, or can be modified as a coprocessor module in which the network control unit is replaced with another type of processing device such as a DSP or a reconfigurable processor.
[0050]
(Second Embodiment)
Hereinafter, as an example of the information processing apparatus, a case where the present invention is applied to a memory slot-mounted network interface apparatus will be described as an example.
[0051]
FIG. 2 shows a configuration example of the memory slot-mounted network interface device (information processing device) according to the present embodiment.
[0052]
In the configuration example of FIG. 1 (first embodiment), a case where a network interface is mounted on a board of a personal computer main body which is a master device is shown as an example. However, in FIG. And a memory slot interface 121 with a discontinuous area prefetch function (hereinafter referred to as a memory slot interface 121 with the discontinuous area prefetch function omitted). The point that the prefetch request phase and the data transfer phase can be used is the same as in the first embodiment.
[0053]
Further, the memory slot interface 121 eliminates the twist of wiring between the memory control unit (see the first embodiment) mounted on the north bridge chip (see FIG. 1) or the CPU (see FIG. 1) and the memory slot. For this purpose, a twist elimination circuit 200, a twist detection value output circuit 210, and a twist set value input circuit 220 are included. The external memory control unit includes an external memory control unit 131 with an address expansion function.
[0054]
The twisting of the wiring here refers to a state in which the relationship between the signal line assumed by the memory control unit and the signal line determined by the design of the memory module installed in the memory slot is different. In the case of a normal memory module, for example, one data line among a plurality of data lines may be connected to any bit assigned to the data line of the memory module mounted on the memory slot. If it is a data line, even if it is connected to any bit of the memory module, the information given at the time of data writing and the information at the time of reading are the same when viewed from the data line connected to the memory control unit If so, there will be no problem in use. For this reason, even for memory modules of the same standard, the connection relationship between the data lines and the memory modules may differ depending on the design of the memory control unit.
[0055]
Although the description will be made assuming that the memory control unit is mounted on the north bridge chip, the same applies to the case where the memory control unit is mounted on the CPU.
[0056]
In the personal computer serving as the host, the wiring between the memory control unit, that is, the north bridge chip and the memory slot, is not necessarily the data bit 0 of the north bridge chip, as illustrated in FIG. It is not always connected to. In the wiring example of FIG. 3, a 64-bit width data memory bus is shown, and each bit line on the north bridge chip side, which can be distinguished by two octal digits of ND00 to ND77, has two octal digits of D00 to D77. A state is shown in which each bit line on the memory slot side that can be distinguished is connected by being twisted in a complicated manner by a combination of a twist in byte units and a twist in bit units.
[0057]
In the case of a type that can be mounted in a memory slot, in the conventional memory slot-mounted network interface, such a variation in wiring rules between the north bridge chip and the memory slot that are different for each motherboard is set by the BIOS. Because there is a need to return the response of the lead at the timing of the data, there is not enough time to handle such various complicated twists in hardware. It was necessary to modify the software, and this caused performance degradation.
[0058]
On the other hand, in the configuration example of FIG. 2, the timing constraint on the read is relaxed by using the prefetch request phase and the data transfer phase as in the first embodiment, so that the wiring between the north bridge chip and the memory slot is reduced. Even if the twist elimination circuit 200 for eliminating the twist is provided, the timing constraint can be satisfied.
[0059]
As described above, according to the present embodiment, it is possible to construct a memory slot-mounted information processing apparatus that can be used for various motherboards having a memory bus that operates at a high frequency.
[0060]
The twisting elimination circuit 200 is most flexible when it is realized by a crossbar switch having a data bus bit width input and output of the memory bus, but the circuit scale is proportional to the square of the data bus bit width. Will become bigger. On the other hand, since a normal motherboard allows writing to the main memory in byte units, there is a write enable signal installed in byte units, and thus it is necessary to be guided to the same memory chip in byte units. In general, the wiring rules also observe the restrictions.
[0061]
Therefore, by utilizing this property, a bit unit wiring twist eliminating unit and a bit unit wiring twist eliminating unit may be provided in the twist eliminating circuit 200. For example, the twist elimination circuit 200 that can handle a 64-bit width memory bus requires 64 multiplexers with 64 inputs and 1 output when implemented in a full crossbar switch system, and requires 4096 switches in terms of cross points. It is. On the other hand, when the byte unit wiring twist eliminating unit and the bit unit wiring twist eliminating unit are provided, 64 8-input 1-output multiplexers are required to eliminate the byte unit wiring twist, and the bit unit wiring twist elimination. In addition, 64 8-input 1-output multiplexers are required, and 1024 switches are required in terms of cross points. Thus, by providing the byte unit wiring twist eliminating part and the bit unit wiring twist eliminating part, it becomes possible to save the circuit scale. This difference becomes even greater as the bit width of the memory bus increases.
[0062]
In the above case, the control information of the multiplexer is generally different for each motherboard, and it is impossible to make a setting that can correct the twist without knowing how it is twisted. In order to ascertain this from trial and error as to whether the operation is performed correctly by trying the brute force setting, in the case of a 64-bit data bus, trials of 8 128 times are necessary, which is not practical.
[0063]
Therefore, in the configuration example of FIG. 2, a twist detection value output circuit 210 is provided for performing an initialization operation for outputting data different from the other bits by one bit to the memory slot. Regarding control for changing only the value of a predetermined bit at a predetermined timing to a value (for example, 1) different from the values of all other bits (for example, 0), for example, a scan path is incorporated in an input / output cell of an LSI. If this is the case, it may be used, or a dedicated state machine is provided to read data from the host during initialization and output data that differs from other bits by one bit to the memory slot. You may do it. In this way, on the host side, it is possible to recognize which bit line of the LSI is connected to which data line on the chip set side of the host.
[0064]
The multiplexer control information obtained by the above process may be input from an external ROM or a maintenance serial bus, but these require separate hardware and lack flexibility. On the other hand, when the data wiring is twisted, it is impossible to correctly input the setting information using the entire data width.
[0065]
Therefore, in the present embodiment, a twist set value input circuit 220 that performs an initialization operation for inputting data having the same all bits from the memory bus is provided. As a result, on the memory bus-mounted information processing device side, even if the data wiring is twisted in any way, it interprets it as a redundant serial communication path and takes in data on the data line of an arbitrary bit. Can receive information correctly. After the multiplexer control information thus transmitted is set, all bits of the data bus are corrected to the correct positions by the twist elimination circuit 200, so that data transmission / reception with the host can be performed using the bandwidth of all bits. become.
[0066]
In the present embodiment, the circuit corresponding to the twist of the data line that differs for each motherboard has been described. However, the relaxation of the timing constraint according to the present invention also contributes to the circuit corresponding to the address superposition rule that differs for each chip set. For example, in the conventional example DIMMnet-1, timing constraints were severe, and only a simple address reconfiguration circuit corresponding to only a small number of existing north bridges whose address superposition rule specifications were previously known from the data sheet. Could not insert.
[0067]
On the other hand, according to the present invention, restrictions for address reconfiguration are relaxed, and a flexible address reconfiguration circuit that can cope with any superposition rule can be inserted.
Preferably, the physical address output by the North Bridge divided into two times is held on the information processing device side, and is output to the outside of the chip using, for example, a scan path, and the address of 1 only 1 bit is addressed from the host. The address reconfiguration circuit control information can be generated by outputting the same number of times as the bit width and checking the output position and how many times it is output. Based on the control information, an address reconfiguration circuit for reconfiguring the address can be inserted. In this way, any superposition rule can be handled.
[0068]
In this embodiment, the external memory control unit 131 is provided with an address expansion function. For example, if the memory slot of a personal computer, which is a master device to which this memory slot mounting type network interface is mounted, can accept modules of up to 512 MB per module, the host can access this network interface at a certain moment. What can be done is limited to an upper limit of 512 MB. On the other hand, even if a memory module of 512 MB can be obtained as an external memory, in the conventional example in which two external memory modules 1148 and 1149 as shown in FIG. 4 are mounted, the two external memories are used. The modules 1148 and 1149 could only be used in a state where only the upper limit of 512 MB was accessible from the host. Actually, since it is necessary to map the network control unit or the like to a space accessible from the host, the capacity that can be used as a memory is further limited. Therefore, because one memory slot that should be used as the main memory has been used for the network interface, the processing performance significantly decreases with the increase in access to the hard disk when executing applications that use a large amount of main memory. Resulting in.
[0069]
On the other hand, in the external memory control unit 131 with an address extension function of this embodiment, the memory of the personal computer serving as the host is switched by performing switching when accessing an area not visible to the host side at a certain moment. More external memory than the slot capacity limit can be accessed from the host.
[0070]
For example, even when a memory slot with an upper limit of 512 MB is installed, four 512 MB memory modules are mounted as external memory modules, and for example, a map is made so that 1/4 of each external memory can be accessed on the host side. It may be. When accessing a memory of 1.5 GB in total other than that area from the host side, the access is made after switching the map by writing a control word from the host side. As an operation method, for example, an area of ¼ each may be allocated to four processes, and a map may be switched at the time of process switching. By switching the map for access, it may be used as an extended mass storage that allows high-speed access to an area that exceeds the main storage capacity constraint without accessing the hard disk. In this way, for example, on a personal computer with a main storage capacity limitation of 2 GB, a hard disk of 1.5 GB in total for main memory and 2 GB for extended mass storage on this network interface, totaling 3.5 GB, is accessed. Even if it is not, it is possible to realize an accessible storage capacity. By using this network interface, not only hard disk access is not increased, but also hard disk access can be greatly reduced.
[0071]
In the present embodiment, since the memory slot interface 121 with the discontinuous area prefetch function is provided, in the prefetch request phase, “predetermined access from the host computer (for example, an area allocated for instructing a prefetch request”). The memory bus interface 121 with the discontinuous area prefetch control function moves (from the external memory) to the buffer memory 125 at the address designated by the prefetch request instruction word consisting of the address and the access pattern variation. ". As the access pattern variations, there can be various types such as a data interval, a block length, and a word number for designating equidistant access. As a result, prefetching that performs prefetching to suppress unnecessary data transfer to the master device can be performed, and discontinuous access such as equidistant access can be performed efficiently.
[0072]
In the present embodiment, on the premise that the prefetch control function by two phases is performed, the twist elimination function, the address expansion function, and the discontinuous access function can be performed independently.
[0073]
Note that the configuration illustrated in each embodiment is an example, and is not intended to exclude other configurations, and a part of the illustrated configuration may be replaced with another, or a part of the illustrated configuration may be omitted. Other configurations obtained by adding another function to the illustrated configuration or combining them are also possible. Also, another configuration that is logically equivalent to the exemplified configuration, another configuration that includes a portion that is logically equivalent to the exemplified configuration, another configuration that is logically equivalent to the main part of the illustrated configuration, and the like are possible. is there. Further, another configuration that achieves the same or similar purpose as the illustrated configuration, another configuration that achieves the same or similar effect as the illustrated configuration, and the like are possible.
[0074]
Various variations of various components can be implemented in appropriate combination.
[0075]
The present invention is not limited to the embodiment described above, and can be implemented with various modifications within the technical scope thereof.
[0076]
【The invention's effect】
According to the present invention, it is possible to realize an information processing apparatus that can follow high frequency without increasing the capacitive load.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration example of an information processing apparatus according to an embodiment of the invention.
FIG. 2 is a view showing another configuration example of the information processing apparatus according to the embodiment;
FIG. 3 is a diagram illustrating an example of how to twist wiring between a north bridge chip on a master device and a memory slot;
FIG. 4 is a diagram for explaining a conventional information processing apparatus;
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... CPU, 2 ... North bridge, 3 ... South bridge, 4, 5 ... Main memory, 10 ... Memory bus, 100 ... Network interface, 110 ... Network control part, 120 ... Memory bus interface with a prefetch control function, 121 ... Non Memory slot interface with continuous area prefetch control function, 125 ... buffer memory, 130 ... external memory control unit, 131 ... memory control unit with address expansion function, 140, 141, 142, 143 ... external memory, 150 ... LSI, 200 ... twist Cancellation circuit, 210 ... Twist detection value output circuit, 220 ... Twist setting value input circuit

Claims (2)

主装置との間でタイミング調整可能な制御信号がない伝送路で接続される情報処理装置において、
情報処理に必要なデータを記憶するための外部メモリと、
前記主装置から与えられる第1の要求に応答して、前記外部メモリに記憶したデータを含む応答データを前記主装置へ転送できる状態に準備する準備手段と、
前記準備が完了したか否かを示す状態情報を保持する保持手段と、
前記準備手段による準備が完了した後に、前記状態情報を読み取ることによって前記準備が完了したことを確認した前記主装置から与えられる第2の要求に応答して、前記応答データを前記主装置へ転送する転送手段と、
前記主装置に設けられたメモリスロットに装着するための手段と、
前記主装置を構成する基板上のメモリ制御部と前記メモリスロットとの間を結ぶ各信号線の対応関係の不整合を解消するための整合手段を備え
前記整合手段は、
前記不整合の解消のための初期化動作として、前記不整合を解消するために用いる、前記メモリ制御部の信号線と前記メモリスロットの信号線との対応関係を示すマルチプレクサ制御情報を、前記メモリスロットを介して前記主装置から入力する初期化手段を含み、
前記マルチプレクサ制御情報は、未だ前記不整合が解消されていない状態において、前記メモリスロットを介して、1ビットずつ順番に転送されてくるものであり、かつ、前記マルチプレクサ制御情報の各ビットの転送にあたっては、前記メモリスロットの全信号線から同時に当該ビットの値と同一の値のデータが転送されてくるものであり、
前記初期化手段は、前記マルチプレクサ制御情報の各ビットを入力するにあたって、前記メモリスロットの全信号線のうちの任意の信号線からのデータを当該ビットのデータとして取り込むことを特徴とする情報処理装置。
In an information processing device connected via a transmission line that does not have a control signal that can be adjusted with the main device,
An external memory for storing data necessary for information processing;
In response to a first request given from the main device, preparing means for preparing response data including data stored in the external memory so that it can be transferred to the main device;
Holding means for holding state information indicating whether or not the preparation is completed;
After the preparation by the preparation means is completed, the response data is transferred to the main apparatus in response to a second request given from the main apparatus that has confirmed that the preparation has been completed by reading the status information. Transfer means to
Means for mounting in a memory slot provided in the main unit ;
Comprising a matching means for eliminating the mismatch of the correspondence of each signal line connecting between the memory control unit on the substrate constituting the main device and the memory slot ;
The alignment means includes
As an initialization operation for eliminating the inconsistency, multiplexer control information indicating a correspondence relationship between the signal line of the memory control unit and the signal line of the memory slot, which is used to eliminate the inconsistency, Initializing means for inputting from the main unit via a slot,
The multiplexer control information is sequentially transferred bit by bit through the memory slot in a state where the inconsistency has not yet been resolved, and for transferring each bit of the multiplexer control information. Is that data having the same value as the value of the bit is simultaneously transferred from all the signal lines of the memory slot,
The initialization means takes in data from an arbitrary signal line among all signal lines of the memory slot as data of the bit when inputting each bit of the multiplexer control information. .
主装置との間でタイミング調整可能な制御信号がない伝送路で接続される情報処理装置において、
情報処理に必要なデータを記憶するための外部メモリと、
前記主装置から与えられる第1の要求に応答して、前記外部メモリに記憶したデータを含む応答データを前記主装置へ転送できる状態に準備する準備手段と、
前記準備手段による準備が完了した後に、前記第1の要求を発してから前記準備が完了することが保証されるものとして予め定められた待機時間が経過するのを待って第2の要求を発する前記主装置から第2の要求を与えられた場合に、該第2の要求に応答して、前記応答データを前記主装置へ転送する転送手段と、
前記主装置に設けられたメモリスロットに装着するための手段
前記主装置を構成する基板上のメモリ制御部と前記メモリスロットとの間を結ぶ各信号線の対応関係の不整合を解消するための整合手段を備え
前記整合手段は、
前記不整合の解消のための初期化動作として、前記不整合を解消するために用いる、前記メモリ制御部の信号線と前記メモリスロットの信号線との対応関係を示すマルチプレクサ制御情報を、前記メモリスロットを介して前記主装置から入力する初期化手段を含み、
前記マルチプレクサ制御情報は、未だ前記不整合が解消されていない状態において、前記メモリスロットを介して、1ビットずつ順番に転送されてくるものであり、かつ、前記マルチプレクサ制御情報の各ビットの転送にあたっては、前記メモリスロットの全信号線から同時に当該ビットの値と同一の値のデータが転送されてくるものであり、
前記初期化手段は、前記マルチプレクサ制御情報の各ビットを入力するにあたって、前記メモリスロットの全信号線のうちの任意の信号線からのデータを当該ビットのデータとして取り込むことを特徴とする情報処理装置。
In an information processing device connected via a transmission line that does not have a control signal that can be adjusted with the main device,
An external memory for storing data necessary for information processing;
In response to a first request given from the main device, preparing means for preparing response data including data stored in the external memory so that it can be transferred to the main device;
After the preparation by the preparation means is completed, the second request is issued after waiting for a predetermined waiting time to pass after the first request is issued and the preparation is guaranteed to be completed. A transfer means for transferring the response data to the main device in response to the second request when a second request is given from the main device;
And means for mounting the memory slots provided in the main apparatus,
Comprising a matching means for eliminating the mismatch of the correspondence of each signal line connecting between the memory control unit on the substrate constituting the main device and the memory slot ;
The alignment means includes
As an initialization operation for eliminating the inconsistency, multiplexer control information indicating a correspondence relationship between the signal line of the memory control unit and the signal line of the memory slot, which is used to eliminate the inconsistency, Initializing means for inputting from the main unit via a slot,
The multiplexer control information is sequentially transferred bit by bit through the memory slot in a state where the inconsistency has not yet been resolved, and for transferring each bit of the multiplexer control information. Is that data having the same value as the value of the bit is simultaneously transferred from all the signal lines of the memory slot,
The initialization means takes in data from an arbitrary signal line among all signal lines of the memory slot as data of the bit when inputting each bit of the multiplexer control information. .
JP2003062144A 2003-03-07 2003-03-07 Information processing device Expired - Fee Related JP4528491B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003062144A JP4528491B2 (en) 2003-03-07 2003-03-07 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003062144A JP4528491B2 (en) 2003-03-07 2003-03-07 Information processing device

Publications (2)

Publication Number Publication Date
JP2004272576A JP2004272576A (en) 2004-09-30
JP4528491B2 true JP4528491B2 (en) 2010-08-18

Family

ID=33124146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003062144A Expired - Fee Related JP4528491B2 (en) 2003-03-07 2003-03-07 Information processing device

Country Status (1)

Country Link
JP (1) JP4528491B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384818B2 (en) 2005-04-21 2016-07-05 Violin Memory Memory power management
KR101271245B1 (en) * 2005-04-21 2013-06-07 바이올린 메모리 인코포레이티드 Interconnection System
JP2007041811A (en) * 2005-08-02 2007-02-15 Toshiba Corp Information processing system, information processor and information processing method
US8402186B2 (en) * 2009-06-30 2013-03-19 Intel Corporation Bi-directional handshake for advanced reliabilty availability and serviceability

Also Published As

Publication number Publication date
JP2004272576A (en) 2004-09-30

Similar Documents

Publication Publication Date Title
US7386649B2 (en) Multiple processor system and method including multiple memory hub modules
EP1652058B1 (en) Switch/network adapter port incorporating selectively accessible shared memory resources
EP3896574B1 (en) System and method for computing
US20020087614A1 (en) Programmable tuning for flow control and support for CPU hot plug
US20180074757A1 (en) Switch and memory device
KR100847968B1 (en) Dual-port semiconductor memories
KR20060133071A (en) Memory hub and method for providing memory sequencing hints
EP2911065B1 (en) Distributed procedure execution and file systems on a memory interface
US20050283546A1 (en) Switch/network adapter port coupling a reconfigurable processing element to one or more microprocessors for use with interleaved memory controllers
US11023410B2 (en) Instructions for performing multi-line memory accesses
KR20040030049A (en) Memory device having different burst order addressing for read and write operations
WO2009025713A1 (en) An optical solution to control data channels
US10216685B1 (en) Memory modules with nonvolatile storage and rapid, sustained transfer rates
CN108139989B (en) Computer device equipped with processing in memory and narrow access port
JP4528491B2 (en) Information processing device
AU2003296986A1 (en) Switch/network adapter port coupling a reconfigurable processing element for microprocessors with interleaved memory controllers
JP2007041813A (en) Information processing system and information processing method
US8244929B2 (en) Data processing apparatus
US20220027294A1 (en) Storage card and storage device
Seo et al. Design and implementation of a mobile storage leveraging the DRAM interface
JP2945525B2 (en) Processor, memory, and data processing device
CN118069037A (en) Memory controller, electronic system, and method of controlling memory access
KR20240076574A (en) Memory controller, electronic system including the same and method of controlling memory access
US20150154034A1 (en) Circuitry for configuring entities
KR19990043388A (en) ROM interface device in processor board of communication processing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060314

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061010

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061211

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070320

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070419

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070525

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100408

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

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

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4528491

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees