JP2002202910A - 共有メモリへの相対的に再配置および/または反転されたデータおよびアドレス信号の自動検出および訂正 - Google Patents

共有メモリへの相対的に再配置および/または反転されたデータおよびアドレス信号の自動検出および訂正

Info

Publication number
JP2002202910A
JP2002202910A JP2001380943A JP2001380943A JP2002202910A JP 2002202910 A JP2002202910 A JP 2002202910A JP 2001380943 A JP2001380943 A JP 2001380943A JP 2001380943 A JP2001380943 A JP 2001380943A JP 2002202910 A JP2002202910 A JP 2002202910A
Authority
JP
Japan
Prior art keywords
address
data
line
processor
shared memory
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
JP2001380943A
Other languages
English (en)
Inventor
Christopher J Poletto
ジェイ、ポレット クリストファー
Judd E Heape
イー、ヒープ ジュード
Steven Trautmann
トロートマン スティーヴン
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JP2002202910A publication Critical patent/JP2002202910A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/768Data position reversal, e.g. bit reversal, byte swapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Logic Circuits (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 コンピュータシステムにおいてアドレス線お
よびデータ線の再配置および反転を正確に認識する手段
と、それに対応する修正手段とを提供する。 【解決手段】 第1のデジタル状態の1つのアドレスビ
ットと第1のデジタル状態とは逆の第2のデジタル状態
のすべての残りのアドレスビットとを含む各アドレス
に、第1のアドレス線を介して第1のデータプロセッサ
から共有メモリに書き込むステップと、上記各アドレス
から、第2のアドレス線を介して共有メモリから第2の
データプロセッサに読み出すステップと、読出しアドレ
ス線と書込みアドレス線との相関関係から再配置された
第1のアドレス線を決定するステップとを含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明の技術分野は、データ
プロセッサとメモリとの間の接続において反転および再
配置されたアドレス線またはデータ線の検出に関する。
【0002】
【従来の技術】典型的なコンピューティングシステム
は、主システム基板上のメモリまたはソケットに差し込
まれたメモリを備えている。ホストCPUおよびチップ
セット(第1のシステム)とメモリとの間で結線される
データビットは、一般に、第1のシステムのプリント基
板上で再配置される。その状態が図1に示されている。
書き込まれたデータは読出し時に逆マッピングされるの
で、データ線の再配置は一般にはあまり重要なことでは
ない。しかしながら、デバイスが同じデータ線を使用せ
ずにメモリ内のデータを第1のシステムと共有するため
には、このデータ線再配置を検討して改善する必要があ
る。また、例えばダイナミックRAM(DRAM)で用
いられているマルチプレックス行/列アドレッシング方
式や、行/列サイズの異なるDRAMをサポートする必
要性のため、第1のシステムは、一般的には、メモリア
ドレスのアドレスのビットを再配置しなければならな
い。同じアドレス線を使用せずにデバイスがメモリを第
1のシステムと共有しかつ連続アドレスマップを維持す
るために、このアドレス線再配置を検討して改善する必
要がある。また、いくつかのマザーボードは、一部のア
ドレスビットを反転し、かつ、原則としていくつかのデ
ータビットまたはすべてのデータビットを反転すること
ができる。同様に、デバイスが同じアドレス線を使用せ
ずに効果的にメモリを第1のシステムと共有するため
に、このアドレス線の反転を検討して改善する必要があ
る。同様に、原則的として、あらゆるデータ線の同様の
反転を検出して改善することができる。
【0003】
【発明が解決しようとする課題】標準メモリ(例えば、
DRAM)を使用する多くのシステムでは、アドレス線
およびデータ線の再配置および反転を含むいくつかの操
作が行われる。これらの操作の結果は、データはアドレ
ス線およびデータ線操作の詳しい知識なしでは認識でき
なくなりおよび/または位置指定できなくなり(not lo
catable)、別のアドレス線および/またはデータ線を
介してアクセスされたときに記憶データを使用不可能に
させる。
【0004】
【課題を解決するための手段】この状況を解消するため
に、本発明は、アドレス線および/またはデータ線の再
配置および/または反転の正確な性質を決定する手段
と、対応する訂正を行う手段とを提供する。
【0005】1つの応用例は、JEDEC標準およびE
IAJ標準の双方であるプロセッサ・エンハンスト・メ
モリ・モジュール(PEMM)である。このデバイス
は、標準的なパーソナルコンピュータPC上の標準デュ
アルインライン・メモリモジュールDIMMスロットに
差し込むが、プロセッサはホストPCからの別々のアド
レス線およびデータ線を使用する。
【0006】本発明の機能を利用しない場合、このデバ
イスは、アドレス線およびデータ線操作が先験的に知ら
れていてかつ決められた方法で補償されない限り、使用
することはできない。しかし、ここで記述する方法を使
用すれば、アドレス線およびデータ線操作が先験的に知
ることができずかつ前もって補償が決められていないP
CにおいてPEMMを使用することができる。
【0007】記憶装置が2組以上のアドレス線および/
またはデータ線を介してアクセスされ、かつ、1組(ま
たは複数組)の記憶線の正確な操作が前もって知られて
いない多くの状況においては、本発明は有用であること
が実証される。
【0008】
【実施の形態】本発明は、同じメモリへの独立のアドレ
ス線および/またはデータ線を備えた別のシステムに対
して第1のシステムにおけるアドレス線および/または
データ線の再配置および/または反転の正確な性質を自
動的に決定する1組の方法と、この相対的な再配置およ
び/または反転を自動的に訂正する1組の方法とを記述
する。
【0009】ブロック120,121で表されるデータ
線およびアドレス線再配置を有するシステムブロック図
が図1に示されている。データが下側メモリソケット1
01を通して送られる要素は、共有メモリ102と設定
可変クロスポイントスイッチ(CCS)素子103,1
04と第2のプロセッサ105とからなる。
【0010】ソケット110を介して主記憶装置111
に送られるデータおよびアドレス用の経路も示されてい
る。図1はアドレスおよびデータ・マップ訂正前のシス
テムを示しており、この場合のCCS素子は単純なポイ
ント・ツー・ポイント接続として構成される。
【0011】ホストシステムのデータ線およびアドレス
線のマッピングは、適切なパターンを共有メモリに書き
込んだのちに共有メモリからそれらを読み出すことによ
って決定され得る。どのプロセッサデバイスが書き込ん
でどのプロセッサデバイスが読み出すかということは重
要でなく、各デバイスは実際には読み書きすることがで
きる。1組のデータ線およびアドレス線を用いてデバイ
スによって書き込まれた各パターンが異なる組のデータ
線およびアドレス線を用いてデバイスによって読み出さ
れることが重要である。しかしながら、この場合には、
CSS素子の制御下にないプロセッサが、これらのパタ
ーンを書くプロセッサ(インスティゲーティング(inst
igating)・プロセッサ)である。したがって、CCS
素子の制御下にあるプロセッサが、共有メモリからこれ
らのパターンを読み込み、かつ、この例ではCCS素子
(ターゲット・プロセッサ)を構成することによってマ
ッピングを訂正するプロセッサである。したがって、図
1に示されるシステムでは、第2のプロセッサ105が
インスティゲーティング・プロセッサであり、第1のプ
ロセッサ100がターゲット・プロセッサである。CC
S素子が第2のプロセッサの次に置かれているので、こ
れは変則的に見えるかもしれない。しかし、この方法の
柔軟性を示すために、CCS素子の制御はこの例では第
1のプロセッサに与えられる。
【0012】第2のプロセッサ105は、決定論的な方
法でCCS素子103,104を構成するために第1の
プロセッサ100からの制御信号を単に解釈するだけで
ある。アドレスマップおよびデータマップが決定される
前に、両方のCCS素子は単純なポイント・ツー・ポイ
ント接続として構成され得る(図1参照)。その初期構
成とは無関係に、最終構成は、120および121で示
されるように、第1のプロセッサ100と共有メモリ1
02との間におけるデータ線およびアドレス線操作の差
異を補償するとともに、必要に応じて(図1では不要)
第2のプロセッサ105と共有メモリ102との間にお
ける非CCS操作も補償しなければならない。図2は、
204および205で適用される訂正を示す。
【0013】アドレスマッピング 表1は、20ビット・アドレス・ホストシステムにおい
てアドレスマッピングを決定するために使用されるイン
スティゲーティング・プロセッサによって書き込まれた
パターンを示す。たった1つのアドレスビットが各エン
トリーでハイ(論理“1”)になるだけであり、また、
ハイであるデータビットの数はハイ・アドレスビットの
値に一致することに留意されたい。各パターンがターゲ
ット・プロセッサ(第1のプロセッサ100)によって
読み出されるとき、プロセッサは、たった1つのハイビ
ットからなるアドレスを出力し、戻されたデータを調べ
る。戻されたハイ・データビットの数は、どのインステ
ィゲーティング・プロセッサ・アドレス線がターゲット
・プロセッサによってハイ・アドレス線出力にマッピン
グされるかをターゲット・プロセッサに示す。一旦ター
ゲット・プロセッサが20個のアドレスすべてに問い合
わせると、アドレスCSS素子は適切な反転マップで構
成され得る。
【0014】この方法を使うためには、データ線の数
は、与えられたホストシステムにおいてアドレス線の数
に等しいかそれ以上でなければならない。このことは、
今日のホストシステムの大部分では真実である。そうで
ない場合は、各元の出力アドレス以下のアドレスにオー
ル“0”を書き込み、各元の出力アドレス以上のアドレ
スに追加の“1”(または、追加の“1”がなければ、
オール“0”)を書き込むことによって、追加の“1”
の書込みがなされるであろう。
【0015】データビット自体の配置ではなく、各アド
レスでのデータビット“ハイ”の数だけが重要であるた
め、データマッピングはアドレスマッピングを決定する
ためには訂正される必要がないことに留意されたい。
【0016】アドレスバス・サイズが異なるホストシス
テムをサポートするためにこの方法が拡張されたり縮小
され得ることは明らかである。提案された方法は最も端
的なものであるであろうが、用いられ得る様々な変形が
あり、例えば、異なるアドレスにパターンを書き込み、
異なるビットを使用して直接に線を識別したり、また
は、互いに組み合わせるだけで個々のアドレス線を決定
するためにビットパターンを使用する方法さえもある。
【表1】
【0017】アドレス反転 アドレス線の簡単な(相対的)再配置に加えて、アドレ
ス線の大部分が反転されるシステムが存在する。この場
合でも、表1のパターンを使用することができる。しか
しながら、ターゲット・デバイスは、反転の性質に依存
して別のアドレス位置でパターンを探さなければならな
い。
【0018】アドレス線反転を伴うほとんどのコンピュ
ータ・マザーボードでは、A6よりも上の2本のアドレ
ス線だけが反転されない。これらは、ある特別な機能を
もつA10およびA11である。しかしながら、これら
の線はどこにでもあるように再配置され得ない。SDR
AM実用の性質により、これらの線はA7からA19ま
で(すなわち、14の可能な位置)にあり得るだけであ
る。我々はどの線がどれであるかを前もって知らないの
で、すべての可能性を検証しなければならない。14本
の線のうち12本が反転している場合を考えてみると、
91の可能性があることが分かる。非反転を“0”で反
転を“1”で表すと、2つの“0”と12個の“1”と
の組合せがどのくらいあるかが問題となる。ここで、ど
の“0”がA10またはA11を表すのかを知る必要は
ない。ここでの目的は、アドレス空間における位置を検
索して、アドレス線再配置を決定するために表1のパタ
ーンを調べることである。パターンが見つかれば、アド
レス線反転が決定されるので、それ以上のパターンは不
要である。第1の位置に第1の“0”を固定すると、残
りの13個の位置に第2の“0”を動かすことによって
作られる13個の可能なパターンがある。次に、第2の
位置の第1の“0”を固定すると、第2の“0”を再配
置することによって可能な新たな12個のパターンがあ
る。これらの方法を続けると、13+12+11+10
+9+8+7+6+5+4+3+2+1=91個の固有
可能性をカウントできる。
【0019】これは、パターンを探すときに使われるべ
き効率的で包括的な検索を可能にする。(各元のアドレ
スは、徹底的にチェックされるたった91個の可能な物
理アドレスだけにマッピングされ得るであろう。)
【0020】しかしながら、アドレス線反転の数が全く
分からないとすれば、少なくとも1つのパターンを見つ
けるのに共有メモリ全体にわたってロバスト検索を実行
する必要があるかもしれない。しかし、1つのパターン
が見つけられると、この位置とアドレス線の性質とを用
いて残りのパターンの検索を続けることにより、検索を
限定することができる。例えば、一旦アドレス線が見つ
かると、残りの検索ではその特定のアドレス線に一定信
号を供給することができるので、残りの検索を半分に抑
えることができる。
【0021】また、上記方法はアドレスパターンを見つ
けるプロセスを速くするために使用することができる
が、すべてのメモリ位置の単純スキャンだけでも機能す
る。一旦これらのパターンすべてが検出されると、実際
には、各アドレス線位置は“1”に設定された固有の数
のビットによってマークされており、したがって、十分
な情報が相対アドレス線の順序変更(reordering)およ
び/または反転の性質を完全に決定するために存在す
る。
【0022】データマッピング 表2は、32ビット・データシステムでデータマッピン
グを決定するために必要なインスティゲーティング・プ
ロセッサによって書き込まれたパターンを示す。
【表2】
【0023】各32ビットグループは同じデータ線順序
変更を有し(それらは同じ物理的データ線を使用し)か
つパターンが直交しているので、パターンは、ターゲッ
ト・プロセッサによって読み取られ結合されて、各32
ビットグループに適用された単一の固有順序変更を決定
することができる。これら特定のパターンは、0番目の
ビットが各グループから0信号を受信するように選択さ
れた。同様に、1番目のビットは、N番グループ〜(N
+3)番グループから0,0,0,0,1信号をそれぞ
れ受信し、N番グループ〜(N+3)番グループから
1,1,1,1,1信号をそれぞれ受信する31番目の
ビットまで同様である。これにより、ターゲットプロセ
ッサは、データ線がどのように相対的に配列されるかを
容易に分かる。例えば、5番目のデータ線では、N番グ
ループ〜(N+3)番グループから0,0,1,0,1
信号をそれぞれ受信した線は、(「反対側」の5番目の
線に対応する)正しいデータ線であるだろう。実際に、
アドレスNとアドレスN+4との間に書き込まれた2進
データのマトリックスを想定してそれを90度反時計回
りに回転させると、0〜32の2進値の表が作成され、
また、ターゲット・プロセッサがこのデータを読み出し
てこの回転を実行すると、作成された表は、各ターゲッ
ト・プロセッサ・データ線(0〜32)が各インスティ
ゲーティング・プロセッサ・データ線にどのようにマッ
ピングされるかを順に表す。データ線は同じであるか
ら、非シーケンシャルデータ位置でまたは異なる時間に
同じ位置でも、同様の方法を使用することができる。具
体的な例として、0番目のデータ線および1番目のデー
タ線だけが2つのプロセッサ間で相対的に再配置される
と仮定する。この場合、第1のプロセッサによって書き
込まれたパターンは、N番位置〜(N+3)番位置にお
ける第2のプロセッサから見ると、0xFFFF000
0,0xFF00FF00,0xF0F0F0F0,0
xCCCCCCCC,0xAAAAAAA9となって、
ちょうど0番目のビットを見ると、N番位置〜(N+
3)番位置における信号は0,0,0,0,1となり、
また、ちょうど1番目のビットを見ると、信号は同様に
0,0,0,0,0になり、これは0番目のビットと1
番目のビットとが相対的に再配置されていることを明確
に表す。このプロセス全体は、概念的には、受信パター
ンを互いの先頭に積み重ねることによって2進値のマト
リックスを作成し、それを90度回転させて、どのビッ
トがどのビットにマッピングされるかを表す表を作成す
るものと考えることができる。例えば、上記例におい
て、受信パターンは、表3に示すように書き込まれ得
る。
【表3】
【0024】また、これらを回転すると、表4に示すよ
うな相対ビットマッピングの表が得られる。
【表4】
【0025】データ反転 運よく、データ線が反転されるケースは遭遇されなかっ
た。データおよびアドレス・スクランブルの先頭でのデ
ータ線の任意の反転と任意のアドレス反転とは最終テス
トと考えられ得る。しかしながら、上述した原理は、こ
の「最悪事態」シナリオを解決するためにここでも適用
することができる。表1および表2のパターンを書き込
むことに加えて、メモリの残りが0x00000000
に設定されると、数字“0”は常に同じデータ反転およ
びスクランブリングによって同じ数にマッピングされる
ので、反転データビットは多くの繰返し任意数字を生じ
させる。一旦パターンを読むプロセッサが共有メモリの
大部分が同じ任意の数字を含むと判断すると、(いかな
るデータ線再配置もなしに)この数字におけるすべての
非ゼロビットの直接反転を適用することができる。その
後、この「反転マップ」は、共有メモリに読み書きされ
るすべての信号に適用され得る。これは、パターンは反
転されたデータビットに対して訂正されるので、データ
マッピング,アドレス線マッピングおよびアドレス線反
転に対するすべての方法が使用されることを可能にさせ
る。
【0026】結果 一旦相対的データ線順序変更および反転とアドレス線順
序変更および反転とが決定されると、必要な訂正が、パ
ターン生成側かパターン受信側のいずれかから、ハード
ウェアかソフトウェアのいずれかにおいて適用される。
例えば、訂正メカニズムは、パターン生成側でCCS素
子を使用して実行されていた。これらは、前に検出され
た相対的再配置を補償するハードウェアスイッチを構成
する特別なコードを受け取る。共有メモリ自体を使用す
る第2のシステムにこれらの命令を供給すると、第1の
システムは、命令が第2のシステムによって正確に認識
されるために任意のミスマッチを訂正するか、どんなミ
スマッチにもかかわらずロバストであるシステムを使用
しなければならない。1つのそのようなシステムは、同
じ位置にある連続したオール“1”またはオール“0”
のパターンである。この例では、第2のシステムによっ
て認識されるようにコードを事前訂正するために1層の
ソフトウェアが使用される。一旦CCS素子が適切なア
ドレスおよびデータ反転マップで適切に構成されると、
第1のプロセッサと第2のプロセッサとの間のメモリ共
有および通信が開始され得る。
【0027】図2は、図1のそれと同じシステムブロッ
ク図を示すが、アドレスおよびデータ・マップが訂正さ
れている。CCS素子は第1のシステムにあるアドレス
およびデータ・マップの正確な反転であるように構成さ
れる結果、データ線とアドレス線とは正しく整合され
る。この例では、アドレス反転またはデータ反転は示さ
れていないが、それは第1のシステム上のソフトウェア
で行われる。それは、いずれかのシステム上のハードウ
ェアで行われるか、第2のシステム上のソフトウェアで
行われる。
【0028】回路例 このセクションは、設定可変クロスポイントスイッチC
CSのタスクを実行する回路例を示す。理想的なCCS
は、今日入手可能なクロスバー集積回路によく似た、設
定可変ゼロ遅延スイッチのN×Mマトリックスからな
る。クロスバー技術が利用できないならば、マルチプレ
クサを用いて同様の回路を実現することができる。マル
チプレクサを用いる場合、ASICかFPGA技術を利
用することが望ましいかもしれない。その他の技術もこ
こで使用されてもよい。
【0029】データ訂正用のマルチプレクサベースCC
Sの例 図3は、典型的なホストシステムにあるデータマッピン
グを訂正するように設計されたマルチプレクサベース設
定可変クロスポイントスイッチ回路を示す。この回路は
完全に設定可変であるが、全バイトのみが32ビットワ
ード・ツイスター300内で再配置され得るという制限
がある。これらのバイト内では、各ビットはまた、バイ
ト・ツイスター310,311,312,313を用い
て再配置され得る。回路のバイト・ツイスター部は、そ
れぞれ24ビットからなる4つの制御ワード308を必
要とする。3ビットが、各バイトの各ビットの配置を制
御するために各マルチプレクサに配線される。回路のワ
ード・ツイスター部は、8ビットからなる1つの制御ワ
ード309を必要とする。2ビットが、ワードの各バイ
トの配置を制御するために各マルチプレクサに配線され
る。
【0030】共有メモリデータは8ビットバイト30
7,315,323,331に入力される。バイト・ツ
イスター310,311,312,313は、図4に示
されるように、入力305と出力ビット320,32
1,327を備えている。図3に示されたワード・ツイ
スターは、スレーブプロセッサ出力データをバイト34
7,355,363,371で供給する。ワード・ツイ
スターは、入力330,329,332,333および
出力バイト347,355,363,371を備えて図
5に示されている。
【0031】SDRAM制御線は常に最小粒度としての
データバイトでくくられる(bundle)ので、図3のよう
な回路構成はほとんどの従来システムに対して十分であ
る。単純化するために、この回路のすべてのデータ線は
双方向であると仮定される。いくつかのシステムは32
ビット境界の両側でバイトを再配置することに留意すべ
きである。この場合の補償として、1層のホストソフト
ウェアが、バイトが32ビット境界内でグループ化され
るようにバイトを再配置するのに使用される。この後、
ハードウェアはワード・ツイスティングおよびバイト・
ツイスティングを終了する。
【0032】アドレス訂正用のマルチプレクサベースC
CS 図6は、典型的なホストシステムにあるアドレスマッピ
ングを訂正するように設計されたマルチプレクサベース
回路を示す。この回路は完全に設定可変であるが、行ア
ドレスだけが完全なSDRAMアドレスワード(アドレ
ス・ツイスター部分)内で再配置され得ることに留意さ
れたい。この回路のアドレス・ツイスター部401は、
56ビットからなる1つの制御ワード402を必要とす
る。4ビットが、各行アドレス線の配置を制御するため
に各マルチプレクサに配線される。
【0033】8つの列アドレスビットしか使用されない
(x16SDRAM)ならばホストチップセットは一般
にSDRAM列アドレスビットを再配置しないので、そ
のような回路はほとんどの従来システムに対して十分で
ある。これらの回路は本発明の典型的な応用例である。
図7は、アドレス訂正用の図6に示されたマルチプレク
サベースCCSのアドレス部分を示す。
【0034】以上の説明に関して更に以下の項を開示す
る。 (1)第2のプロセッサが共有メモリにアクセスするた
めの第2のアドレス線に対する、第1のデータプロセッ
サが該共有メモリにアクセスするための第1のアドレス
線の再配置の存在を検出する方法であって、第1のデジ
タル状態にある1つのアドレスビットと該第1のデジタ
ル状態とは逆の第2のデジタル状態にあるすべての残り
のアドレスビットとを有する各アドレスに対して、前記
第1のアドレス線を介して前記第1のデータプロセッサ
から前記共有メモリに固有データを書き込むステップ
と、前記第1のデジタル状態にある1つのアドレスビッ
トと前記第2のデジタル状態にあるすべての残りのアド
レスビットとを有する各アドレスから、前記第2のアド
レス線を介して前記第2のデータプロセッサに前記共有
メモリから読み出すステップと、前記固有データを読み
出すための前記読出しアドレス線と前記固有データを書
き込むための前記書込みアドレス線とを互いに関係付け
ることによって、再配置された第1のアドレス線を決定
するステップと、を含む、方法。 (2)前記固有データが、前記第1のアドレス線を介し
た前記書込み時に前記第1のデジタル状態を有するビッ
ト位置に対応する複数の第1のデジタル状態のビットか
らなる、第1項記載の方法。 (3)前記第2のプロセッサによる前記共有メモリへの
次のアクセスのために前記決定された再配置された第1
のアドレス線に対応する前記第2のアドレス線を再配置
するステップを更に含む、第1項記載の方法。 (4)第2のプロセッサが共有メモリにアクセスするた
めの第2のアドレス線に対する、第1のデータプロセッ
サが該共有メモリにアクセスするための第1のアドレス
線の反転の存在を検出する方法であって、第1のデジタ
ル状態にある1つのアドレスビットと前記第1のデジタ
ル状態の固有データとは逆の第2のデジタル状態にある
すべての残りのアドレスビットとを有する各アドレス
に、前記第1のアドレス線を介して前記第1のデータプ
ロセッサから前記共有メモリに書き込むステップと、前
記第1のデジタル状態にある1つのアドレスビットと前
記第2のデジタル状態にあるすべての残りのアドレスビ
ットとを有する各アドレスから、前記第2のアドレス線
を介して前記第2のデータプロセッサに前記共有メモリ
から読み出すステップと、予期される反転された第1の
アドレス線の各組合せごとに、前記第1のデジタル状態
にある1つのアドレスビットと前記第2のデジタル状態
にあるすべての残りのアドレスビットとを有する各アド
レスから、前記第2のアドレス線を介して前記第2のデ
ータプロセッサに前記共有メモリから読み出すステップ
と、前記固有データを読み出すための前記読出しアドレ
ス線と前記固有データを書き込むための前記書込みアド
レス線とを互いに関係付けることによって、反転された
第1のアドレス線を決定するステップと、を含む、方
法。 (5)前記固有データが、前記第1のアドレス線を介し
た前記書込み時に前記第1のデジタル状態を有するビッ
ト位置に対応する複数の第1のデジタル状態のビットか
らなる、第4項記載の方法。 (6)前記第2のプロセッサによる前記共有メモリへの
次のアクセスのために、前記決定された反転された第1
のアドレス線に対応する前記第2のアドレス線を反転す
るステップを更に含む、第4項記載の方法。 (7)第2のプロセッサが共有メモリにアクセスするた
めの第2のデータ線に対する、第1のデータプロセッサ
が該共有メモリにアクセスするための第1のデータ線の
反転の存在を検出する方法であって、少なくとも1つの
所定のアドレスに、前記第1のデータ線を介して前記第
1のデータプロセッサから前記共有メモリに複数の所定
のデータワードを書き込むステップであって、第1のデ
ータワードが、第1のデジタル状態と第2のデジタル状
態とを交互するビットを含み、第2のデータワードが、
前記第1のデジタル状態と前記第2のデジタル状態とを
交互するビット対を有し、各後続のデータワードが、前
のデータワードのビット数の2倍の前記第1のデジタル
状態および前記第2のデジタル状態のビットの交互グル
ープを有し、最後のデータワードが、前記第1のデジタ
ル状態の最下位ビットの半数と前記第2のデジタル状態
の最上位ビットの半数とを含む、ステップと、前記少な
くとも1つの所定のアドレスのそれぞれからの前記複数
の所定のデータワードを前記第2のデータ線を介して前
記共有メモリから前記第2のデータプロセッサに読み出
すステップと、前記複数の所定のデータワードの特定の
ビットのビット値と第1のデータ線とを互いに関係付け
ることによって、再配置された第1のデータ線を決定す
るステップと、を含む、方法。 (8)前記少なくとも1つの所定のアドレスが単一アド
レスからなり、前記所定のアドレスに書き込み前記所定
のアドレスから読み出す前記ステップが、前記単一アド
レスへの各所定のデータワードの書き込みと前記単一ア
ドレスからの前記所定のデータワードの読出しとが連続
して行われる、第7項記載の方法。 (9)前記少なくとも1つの所定のアドレスが複数の連
続アドレスからなる、第7項記載の方法。 (10)前記第2のプロセッサによる前記共有メモリへ
の次のアクセスのために、前記決定された再配置された
第1のデータ線に対応する前記第2のデータ線を再配置
するステップを更に含む、第7項記載の方法。 (11)第2のプロセッサが共有メモリにアクセスする
ための第2のデータ線に対する、第1のデータプロセッ
サが該共有メモリにアクセスするための第1のデータ線
の反転の存在を検出する方法であって、メモリの各アド
レスに、前記第1のデータ線を介して前記第1のデータ
プロセッサから前記共有メモリに、全ビットが第1のデ
ジタル状態にある所定のデータワードを書き込むステッ
プと、前記メモリの各アドレスから、前記第2のデータ
線を介して前記第2のデータプロセッサに前記共有メモ
リから読み出すステップと、前記第1のデジタル状態と
は逆の第2のデジタル状態を読むための読出しデータ線
と前記所定のデータワードの対応ビットを書き込むため
の前記書込みデータ線とを互いに関係付けることによっ
て、反転された第1のデータ線を決定するステップと、
を含む、方法。 (12)前記第2のプロセッサによる前記共有メモリへ
の次のアクセスのために、前記決定された反転された第
1のデータ線に対応する前記第2のデータ線を反転する
ステップを更に含む、第11項記載の方法。 (13)1組の互いに関連する方法は、第2のプロセッ
サ(105)からメモリ(102)への第2の組のアド
レス線および/またはデータ線に対する、第1のプロセ
ッサ(100)から同じメモリ(102)へのアドレス
線(121)および/またはデータ線(120)の再配
置および/または反転の存在および正確な性質を検出す
る。第1のプロセッサ(100)とメモリ(102)と
の間に配線されたデータビットは、一般に、プリント回
路基板上に再配置される。これらの相対再配置および/
または反転を訂正する1組の関連方法は、アドレス設定
可変クロスポイントスイッチ(103)とデータ設定可
変クロスポイントスイッチ(104)として用いられ
る。これらの方法は、一つのプロセッサがメモリ(10
2)の所定のアドレスに所定のデータを書き込むことを
含む。他のプロセッサは、メモリ(102)からデータ
を読み出すことによって再配置を決定する。
【図面の簡単な説明】
【図1】アドレスおよびデータに対するマップ修正前の
システムブロック図。
【図2】アドレスおよびデータに対するマップ修正後の
システムブロック図。
【図3】マルチプレクサベースの設定可変型データ修正
用クロスポイントスイッチCCSを示す図。
【図4】マルチプレクサベースの設定可変型データ修正
用クロスポイントスイッチCCSのバイトツイスター部
を示す図。
【図5】マルチプレクサベースの設定可変型データ修正
用クロスポイントスイッチCCSのワードツイスター部
を示す図。
【図6】マルチプレクサベースの設定可変型アドレス修
正用クロスポイントスイッチ(CCS)を示す図。
【図7】マルチプレクサベースの設定可変型アドレス修
正用クロスポイントスイッチCCSのアドレス部を示す
図。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スティーヴン トロートマン 茨城県つくば市松代3−7−16 Fターム(参考) 5B060 MM06

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 第2のプロセッサが共有メモリにアクセ
    スするための第2のアドレス線に対する、第1のデータ
    プロセッサが該共有メモリにアクセスするための第1の
    アドレス線の再配置の存在を検出する方法であって、 第1のデジタル状態にある1つのアドレスビットと該第
    1のデジタル状態とは逆の第2のデジタル状態にあるす
    べての残りのアドレスビットとを有する各アドレスに対
    して、前記第1のアドレス線を介して前記第1のデータ
    プロセッサから前記共有メモリに固有データを書き込む
    ステップと、 前記第1のデジタル状態にある1つのアドレスビットと
    前記第2のデジタル状態にあるすべての残りのアドレス
    ビットとを有する各アドレスから、前記第2のアドレス
    線を介して前記第2のデータプロセッサに前記共有メモ
    リから読み出すステップと、 前記固有データを読み出すための前記読出しアドレス線
    と前記固有データを書き込むための前記書込みアドレス
    線とを互いに関係付けることによって、再配置された第
    1のアドレス線を決定するステップと、 を含む、方法。
JP2001380943A 2000-12-15 2001-12-14 共有メモリへの相対的に再配置および/または反転されたデータおよびアドレス信号の自動検出および訂正 Withdrawn JP2002202910A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US25585600P 2000-12-15 2000-12-15
US255856 2000-12-15

Publications (1)

Publication Number Publication Date
JP2002202910A true JP2002202910A (ja) 2002-07-19

Family

ID=22970144

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001380943A Withdrawn JP2002202910A (ja) 2000-12-15 2001-12-14 共有メモリへの相対的に再配置および/または反転されたデータおよびアドレス信号の自動検出および訂正

Country Status (3)

Country Link
US (1) US6701418B2 (ja)
EP (1) EP1215579A3 (ja)
JP (1) JP2002202910A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012248134A (ja) * 2011-05-31 2012-12-13 Ricoh Co Ltd メモリシステム、メモリ制御方法及びメモリ制御プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10352401A1 (de) * 2003-11-10 2005-06-16 Micronas Gmbh Verfahren zur Speicherung von Daten in einem Wahlzugriffspeicher und Verschlüsselungs- und Entschlüsselungsvorrichtung
US8577666B2 (en) * 2010-04-21 2013-11-05 Vixs Systems, Inc. Clock synchronization in a modular circuit emulation system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4740972A (en) 1986-03-24 1988-04-26 General Signal Corporation Vital processing system adapted for the continuous verification of vital outputs from a railway signaling and control system
US5095525A (en) * 1989-06-26 1992-03-10 Rockwell International Corporation Memory transformation apparatus and method
JPH04246745A (ja) * 1991-02-01 1992-09-02 Canon Inc 情報処理装置及びその方法
US6289429B2 (en) * 1996-03-11 2001-09-11 Matsushita Electric Industrial Co., Ltd Accessing multiple memories using address conversion among multiple addresses
US5987581A (en) * 1997-04-02 1999-11-16 Intel Corporation Configurable address line inverter for remapping memory
CA2341014A1 (en) * 1998-08-19 2000-03-02 Alexander Roger Deas A system and method for defining transforms of memory device addresses
US6327651B1 (en) * 1998-09-08 2001-12-04 International Business Machines Corporation Wide shifting in the vector permute unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012248134A (ja) * 2011-05-31 2012-12-13 Ricoh Co Ltd メモリシステム、メモリ制御方法及びメモリ制御プログラム

Also Published As

Publication number Publication date
US20020120825A1 (en) 2002-08-29
US6701418B2 (en) 2004-03-02
EP1215579A3 (en) 2009-05-20
EP1215579A2 (en) 2002-06-19

Similar Documents

Publication Publication Date Title
US7779215B2 (en) Method and related apparatus for accessing memory
KR920002575B1 (ko) 바이트 기입 에러코드 방법 및 장치
US7120754B2 (en) Synchronous DRAM with selectable internal prefetch size
US6021477A (en) Multiple mode memory module
KR20100015704A (ko) 비-ecc 컴포넌트에서의 ecc 구현
JP2005528712A (ja) トランスペアレントeccメモリシステム
US5307469A (en) Multiple mode memory module
JPH06243025A (ja) コンピュータ・メモリの構成を決定するための装置
US5179686A (en) Method for automatically detecting the size of a memory by performing a memory warp operation
KR20160068369A (ko) 패리티 체크 회로 및 이를 포함하는 메모리 장치
KR840001731A (ko) 순차적인 워어드가 정열된 어드레스 지정장치
US4103823A (en) Parity checking scheme for detecting word line failure in multiple byte arrays
CN114207592A (zh) 用于错误检测和校正的方法以及对应的系统和设备
US7293126B2 (en) Enhanced structure of extensible time-sharing bus capable of reducing pin number, extending memory capacity, and performing I/O mapping access and block access
KR970071302A (ko) 프로세서로부터의 프로그램가능한 판독/기록 억세스 신호 및 이 신호의 형성 방법
JP2002202910A (ja) 共有メモリへの相対的に再配置および/または反転されたデータおよびアドレス信号の自動検出および訂正
JP4322116B2 (ja) バーストモードをサポートする外部メモリとプロセッサとのインタフェース方法
KR950014176B1 (ko) 메모리 콘트롤라 및 데이타 처리 시스템
US20140108716A1 (en) Dynamic random access memory for storing randomized data and method of operating the same
CN115016981A (zh) 存储区域的设置方法、数据读取、写入方法及相关装置
KR20140049448A (ko) 랜덤화된 데이터를 저장하는 dram 및 이의 동작 방법
US20040034748A1 (en) Memory device containing arbiter performing arbitration for bus access right
JP2932790B2 (ja) ダイナミック型ランダムアクセスメモリ装置
US6834334B2 (en) Method and apparatus for address decoding of embedded DRAM devices
JP3224946B2 (ja) 半導体集積回路

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050301