JP7460743B1 - メモリコントローラ及びメモリコントローラ制御方法 - Google Patents
メモリコントローラ及びメモリコントローラ制御方法 Download PDFInfo
- Publication number
- JP7460743B1 JP7460743B1 JP2022209200A JP2022209200A JP7460743B1 JP 7460743 B1 JP7460743 B1 JP 7460743B1 JP 2022209200 A JP2022209200 A JP 2022209200A JP 2022209200 A JP2022209200 A JP 2022209200A JP 7460743 B1 JP7460743 B1 JP 7460743B1
- Authority
- JP
- Japan
- Prior art keywords
- interface
- readjustment
- memory controller
- unit
- 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.)
- Active
Links
- 230000015654 memory Effects 0.000 title claims abstract description 306
- 238000000034 method Methods 0.000 title claims description 86
- 230000005540 biological transmission Effects 0.000 claims abstract description 51
- 230000004044 response Effects 0.000 claims abstract description 38
- 230000008569 process Effects 0.000 claims description 69
- 238000004891 communication Methods 0.000 claims description 65
- 238000012937 correction Methods 0.000 claims description 37
- 238000005259 measurement Methods 0.000 claims description 35
- 230000008859 change Effects 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 18
- 239000004065 semiconductor Substances 0.000 claims description 7
- 230000001360 synchronised effect Effects 0.000 description 40
- 238000010586 diagram Methods 0.000 description 33
- 230000006870 function Effects 0.000 description 25
- 238000012986 modification Methods 0.000 description 22
- 230000004048 modification Effects 0.000 description 22
- 230000000694 effects Effects 0.000 description 9
- 230000010365 information processing Effects 0.000 description 8
- 101100327917 Caenorhabditis elegans chup-1 gene Proteins 0.000 description 5
- 239000000470 constituent Substances 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
まず、本開示の第1の実施形態について、図面を使用して詳細に説明する。
図1は、本開示の第1の実施形態に係るメモリコントローラの構成の例を表すブロック図である。図1に示す例では、本開示の第1の実施形態に係るメモリコントローラ10は、分散共有メモリを実現するメモリコントローラであって、通知送信部12と、再調整部13と、を備える。
図2は、本開示の第1の実施形態に係るメモリコントローラの動作の例を表すフローチャートである。図2に示す例では、まず、通知送信部12が、他のメモリコントローラに、再調整開始通知を送信する(ステップS11)。次に、再調整部13は、インタフェースの初期化を行う(ステップS12)。また、再調整開始通知を受信した他のメモリコントローラは、再調整開始通知を受信した他のメモリコントローラのインタフェースの初期化を行う(ステップS13)。
以上で説明した本実施形態には、メモリコントローラのインタフェースの再調整の時間をさらに短縮できるという効果がある。その理由は、再調整開始通知が他のメモリコントローラに送信された後、再調整部13がインタフェースの初期化を行い、再調整開始通知を受信した他のメモリコントローラが、他のメモリコントローラのインタフェースの初期化を行うからである。これにより、複数のメモリコントローラのインタフェースを並列の初期化できる。そのため、複数のメモリコントローラのインタフェースを順番に初期化する場合と比較して、メモリコントローラのインタフェースの再調整の時間をさらに短縮できる。
次に、本開示の第2の実施形態について、図面を使用して詳細に説明する。
図3は、本開示の第2の実施形態に係るマルチプロセッサシステム1の構成の例を表すブロック図である。本実施形態に係るマルチプロセッサシステム1は、複数のセルを含む、分散共有メモリ型マルチプロセッサである。図3に示す例では、本具体例に係るマルチプロセッサは、4つのセル(すなわち、セル#0、セル#1、セル#2、セル#3)を含む。複数のセルの各々は、プロセッサ(Processor:以下Procとも表記)300と、メモリコントローラ(MCとも表記)100と、システムキャッシュコントローラ(System Cache Controller:以下、SCとも表記)200、メモリ(Memory;以下Memとも表記)400などを含む。本説明では、システムキャッシュコントローラ200は、単に、キャッシュコントローラ200とも表記される。
図4は、本開示の第2の実施形態に係るメモリコントローラ(MC)100の構成の例を表すブロック図である。図4に示す例では、本実施形態に係るMC100は、再調整制御部110、MMI制御部120、タグメモリ(TAG)130、MMI受信制御部140、MMI送信制御部150、SMI受信制御部160、SMI送信制御部170、ソースシンクロナスインタフェースIO(Input/Output)マクロを含む。なお、スレーブセルのMC100は、再調整制御部110を含んでいなくてよい。
図5は、本開示の第2の実施形態に係るシステムキャッシュコントローラ(SC)200の構成の例を表すブロック図である。図5に示す例では、SC200は、キャッシュ制御部210、システムキャッシュ220、SMI受信制御部230、SMI送信制御部240、ソースシンクロナスインタフェースIOマクロを含む。
図6は、本実施形態のマルチプロセッサシステム1の通常時の動作の例を説明するための図である。図6では、矩形が、動作の主体となる、マルチプロセッサシステム1の構成要素を表す。矢印は、構成要素による処理における、トランザクション、返信される結果等のデータの流れを表す。矢印の起点の矩形が、矢印が示す処理の主体の構成要素である。矢印の終点の矩形が、処理においてトランザクション等のデータを送信する対象である構成要素である。角括弧([])によって囲まれている数字は、異なるセルに含まれる同じ種類の構成要素を区別するために図6において使用される符号である。例えば、MC[403]は、セル#0に含まれるMC100である。
スレーブセルの各々のM_RX140は、MMI開始用専用トランザクションを受信すると、出力調停を再開する指示(以下、出力調停再開指示と表記)を、M_TX150に送信する。スレーブセルの各々のM_TX140は、出力調停再開指示を受け取ると、出力調停を再開する。
本実施形態には、メモリコントローラのインタフェースの再調整の時間をさらに短縮できるという効果がある。その理由は、マスタセルのMC100のMMI制御部120が、MMI停止用専用トランザクションを、MMIに発行するからである。MMIに発行されたMMI停止用専用トランザクションは、スレーブセルの各々のMC100に送信される。そして、マスタセルのMC100と、スレーブセルの各々のMC100は、再調整、すなわち、IOマクロのインタフェースの初期化を実行する。これにより、IOマクロのインタフェースの初期化が並列に行われる。よって、メモリコントローラのインタフェースの再調整の時間をさらに短縮できる。
以上で説明した第2の実施形態を模式的に表す、第2の実施形態の模式例について説明する。
図9は、本開示の第2の実施形態の模式例に係るマスタセルのメモリコントローラ10Aの構成を模式的に表す図である。図9に示す例では、メモリコントローラ10A(すなわち、MC10A)の構成要素の再調整時における機能、及び、MC10Aの再調整時に初期化が行われる構成要素が、部として描かれている。図9に例示するメモリコントローラ10Aは、第2の実施形態のマスタセル(セル#0)のメモリコントローラ100に対応する。
再調整制御部11は、再調整を開始するタイミングを制御する。言い換えると、再調整制御部11は、再調整を開始するタイミングを決定する。再調整制御部11は、決定した、再調整を開始するタイミングで、再調整開始指示を通知送信部12に送信する。本実施形態では、再調整を開始するタイミングは、所定の時間長の再調整間隔である。再調整制御部11は、第2の実施形態の再調整制御部110と同様である。すなわち、再調整制御部11は、第2の実施形態の再調整制御部110と同様の機能を持つ。そして、再調整制御部11は、第2の実施形態の再調整制御部110と同様の動作を行う。
通知送信部12は、再調整制御部11から再調整開始指示を受け取る。通知送信部12は、再調整制御部11から再調整開始指示を受け取ると、スレーブセルのMC10Aに、再調整開始通知を送信する。本説明において、スレーブセルのMC10Aは、他のメモリコントローラ10Aとも表記される。再調整開始通知は、第2の実施形態のMMI制御部120によって発行される、MMI停止用専用トランザクションに対応する。
再調整部13は、通知送信部12から再調整開始指示が送信されるのに応じて、インタフェース部14の初期化を開始する。再調整部13による初期化は、第2の実施形態のMC100の各IOマクロ(SS_RX141、SS_TX151、SS_RX161、SS_TX171)が、インタフェースの初期化を行うことに対応する。
インタフェース部14は、MC10AがスレーブセルのMC(後述のMC10B)及びマスタセルのSC20と通信を行うためのインタフェースである。インタフェース部14は、第2の実施形態のM_RX140、SS_RX141、M_TX150、SS_TX151、S_RX160、SS_RX161、S_TX170、SS_TX171の、再調整に関わらない機能に対応する。
通知受信部15は、マスタセルのMC10Aの通知送信部12から、再調整開始通知を受信する。上述のように、再調整開始通知は、第2の実施形態のMMI制御部120によって発行される、MMI停止用専用トランザクションに対応する。通知受信部15が再調整開始通知を受信することは、第2の実施形態のスレーブセルのM_RX140がMMI停止用専用トランザクションを受信することに対応する。
再調整部13は、通知受信部15が再調整開始指示を受信するのに応じて、インタフェース部14の初期化を開始する。再調整部13による初期化は、第2の実施形態のMC100の各IOマクロ(SS_RX141、SS_TX151、SS_RX161、SS_TX171)が、インタフェースの初期化を行うことに対応する。
通知送信部12は、通知受信部15が再調整開始指示を受信すると、後述のシステムキャッシュコントローラ20に、第2再調整開始通知を送信する。この第2再調整開始通知は、第2の実施形態のSS_TX171によって発行される、再調整通知トランザクションに対応する。
インタフェース部14は、MC10BがMC10A、他のスレーブセルのMC10B、及び、インタフェース部14と接続されているSC20と通信を行うためのインタフェースである。インタフェース部14は、第2の実施形態のM_RX140、SS_RX141、M_TX150、SS_TX151、S_RX160、SS_RX161、S_TX170、SS_TX171の、再調整に関わらない機能に対応する。
通知受信部25は、インタフェース部24を介して、第2再調整開始通知を受信する。上述のように、第2再調整開始通知は、第2の実施形態のSS_TX171によって発行される、再調整通知トランザクションに対応する。
再調整部23は、通知受信部25が第2再調整開始指示を受信するのに応じて、インタフェース部24の初期化を開始する。再調整部23による初期化は、第2の実施形態のSC200の各IOマクロ(SS_RX231、SS_TX241)が、インタフェースの初期化を行うことに対応する。
以下では、本開示の第2の実施形態のマルチプロセッサシステム1Aの、再調整を行う動作について説明する。
本模式例には、第1の実施形態と同じ効果がある。その理由は、第1の実施形態の効果が生じる理由と同様である。
図17は、本開示の第2の実施形態の第1の変形例に係るメモリコントローラ10Cの構成の例を表すブロック図である。本変形例のメモリコントローラ10Cは、再調整制御部11と、通知送信部12と、再調整部13と、インタフェース部14と、測定情報収集部16とを含む。測定情報収集部16は、センサ500と接続されている。
図18は、本開示の第2の実施形態の第2の変形例に係るメモリコントローラ10Dの構成の例を表すブロック図である。本変形例のメモリコントローラ10Dは、再調整制御部11と、通知送信部12と、再調整部13と、インタフェース部14と、エラー訂正部17と、エラー情報収集部18とを含む。
図19は、本開示の第2の実施形態の第3の変形例に係るメモリコントローラ10Eの構成の例を表すブロック図である。本変形例のメモリコントローラ10Dは、再調整制御部11と、通知送信部12と、再調整部13と、インタフェース部14と、測定情報収集部16と、エラー訂正部17と、エラー情報収集部18とを含む。測定情報収集部16は、センサ500と接続されている。
第1の実施形態のメモリコントローラ10、第2の実施形態のMC100及びSC200、第2の実施形態の模式例のMC10A、MC10B、SC20、第2の実施形態の第1の変形例のMC10C、第2の実施形態の第2の変形例のMC10Dは、それぞれ、回路などのハードウェアによって実現できる。
分散共有メモリを実現するメモリコントローラであって、
前記メモリコントローラに接続され当該メモリコントローラと共に前記分散共有メモリを実現する他のメモリコントローラに、再調整開始通知を送信する通知送信部と、
前記再調整開始通知が送信されるのに応じて、インタフェースの初期化を行う再調整部と、
を備え、
前記他のメモリコントローラは、
前記再調整開始通知を受け取ると、前記他のメモリコントローラのインタフェースの初期化を行う
メモリコントローラ。
前記メモリコントローラは、前記分散共有メモリのキャッシュを制御するキャッシュコントローラと接続され、
前記通知送信部は、さらに、前記キャッシュコントローラに、第2再調整開始通知を送信し、
前記キャッシュコントローラは、第2再調整開始通知を受信すると、当該キャッシュコントローラのインタフェースの初期化を行い、
前記他のメモリコントローラは、前記分散共有メモリのキャッシュを制御する他のキャッシュコントローラに接続され、前記再調整開始通知を受け取ると、前記他のキャッシュコントローラに第2再調整開始通知を送信し、
前記他のキャッシュコントローラは、前記第2再調整開始通知を受信すると、前記他のキャッシュコントローラのインタフェースの初期化を行う
付記1に記載のメモリコントローラ。
前記インタフェースにおいて送受信されるデータのエラーを検出し、検出されたエラーを訂正するエラー訂正部と、
エラーが訂正された回数である訂正回数をカウントするエラー情報収集部と、
を備え、
前記通知送信部は、前記訂正回数が閾値を超えた場合、前記再調整開始通知を送信する
付記1又は2に記載のメモリコントローラ。
前記メモリコントローラが含まれる半導体装置の温度を測定する温度センサから、測定された温度の情報を取得する測定情報取得部
を備え、
前記通知送信部は、前記温度の単位時間当たりの変化の大きさが所定温度変化の大きさを超えた場合、前記再調整開始通知を送信する
付記1又は2に記載のメモリコントローラ。
前記メモリコントローラが含まれる半導体装置に印加される電圧を測定する電圧センサから、測定された電圧の情報を取得する測定情報取得部
を備え、
前記通知送信部は、前記電圧の単位時間当たりの変化の大きさが所定電圧変化の大きさを超えた場合、前記再調整開始通知を送信する
付記1又は2に記載のメモリコントローラ。
前記再調整部は、前記再調整開始通知が送信されるのに応じて、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースの状態を、前記インタフェースを介した通信が可能である状態に設定し、
前記他のメモリコントローラは、前記再調整開始通知を受け取ると、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースの状態を、前記インタフェースを介した通信が可能である状態に設定する
付記1又は2に記載のメモリコントローラ。
前記再調整部は、前記再調整開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を停止する処理を行った後に、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、前記インタフェースの前記初期化を行い、
前記他のメモリコントローラは、前記再調整開始通知を受け取るとメモリのデータへのアクセスの制御を停止する処理を行った後に、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、
前記通知送信部は、前記インタフェースの状態が、前記インタフェースを介した通信が可能な状態に設定されるのに応じて、動作開始通知を前記他のメモリコントローラに送信し、
前記再調整部は、前記動作開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を再開する処理を行い、
前記他のメモリコントローラは、前記動作開始通知を受け取ると、メモリのデータへのアクセスの制御を再開する処理を行う
付記6に記載のメモリコントローラ。
前記キャッシュコントローラは、当該キャッシュコントローラの前記インタフェースを通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースを通信が可能である状態に設定し、
前記他のキャッシュコントローラは、当該他のキャッシュコントローラの前記インタフェースを通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースを通信が可能である状態に設定する
付記2に記載のメモリコントローラ。
前記再調整部は、前記再調整開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を停止する処理を行った後に、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、前記インタフェースの前記初期化を行い、
前記他のメモリコントローラは、前記再調整開始通知を受け取るとメモリのデータへのアクセスの制御を停止する処理を行った後に、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、
前記通知送信部は、前記インタフェースの状態が、前記インタフェースを介した通信が可能な状態に設定されるのに応じて、動作開始通知を前記他のメモリコントローラに送信し、
前記再調整部は、前記動作開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を再開する処理を行い、
前記他のメモリコントローラは、前記動作開始通知を受け取ると、メモリのデータへのアクセスの制御を再開する処理を行う
付記8に記載のメモリコントローラ。
前記他のメモリコントローラと、
付記1又は2に記載のメモリコントローラと、
を含むマルチプロセッサシステム。
分散共有メモリを実現するメモリコントローラの制御方法であって、
前記メモリコントローラに接続され当該メモリコントローラと共に前記分散共有メモリを実現する他のメモリコントローラに、再調整開始通知を送信し、
前記再調整開始通知が送信されるのに応じて、インタフェースの初期化を行い、
前記他のメモリコントローラは、
前記再調整開始通知を受け取ると、前記他のメモリコントローラのインタフェースの初期化を行う
メモリコントローラ制御方法。
前記メモリコントローラは、前記分散共有メモリのキャッシュを制御するキャッシュコントローラと接続され、
さらに、前記キャッシュコントローラに、第2再調整開始通知を送信し、
前記キャッシュコントローラは、第2再調整開始通知を受信すると、当該キャッシュコントローラのインタフェースの初期化を行い、
前記他のメモリコントローラは、前記分散共有メモリのキャッシュを制御する他のキャッシュコントローラに接続され、前記再調整開始通知を受け取ると、前記他のキャッシュコントローラに第2再調整開始通知を送信し、
前記他のキャッシュコントローラは、前記第2再調整開始通知を受信すると、前記他のキャッシュコントローラのインタフェースの初期化を行う
付記11に記載のメモリコントローラ制御方法。
前記インタフェースにおいて送受信されるデータのエラーを検出し、検出されたエラーを訂正し、
エラーが訂正された回数である訂正回数をカウントし、
前記訂正回数が閾値を超えた場合、前記再調整開始通知を送信する
付記11又は12に記載のメモリコントローラ制御方法。
前記メモリコントローラが含まれる半導体装置の温度を測定する温度センサから、測定された温度の情報を取得し、
前記温度の単位時間当たりの変化の大きさが所定温度変化の大きさを超えた場合、前記再調整開始通知を送信する
付記11又は12に記載のメモリコントローラ制御方法。
前記メモリコントローラが含まれる半導体装置に印加される電圧を測定する電圧センサから、測定された電圧の情報を取得し、
前記電圧の単位時間当たりの変化の大きさが所定電圧変化の大きさを超えた場合、前記再調整開始通知を送信する
付記11又は12に記載のメモリコントローラ制御方法。
前記再調整開始通知が送信されるのに応じて、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースの状態を、前記インタフェースを介した通信が可能である状態に設定し、
前記他のメモリコントローラは、前記再調整開始通知を受け取ると、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースの状態を、前記インタフェースを介した通信が可能である状態に設定する
付記11又は12に記載のメモリコントローラ制御方法。
前記再調整開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を停止する処理を行った後に、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、前記インタフェースの前記初期化を行い、
前記他のメモリコントローラは、前記再調整開始通知を受け取るとメモリのデータへのアクセスの制御を停止する処理を行った後に、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、
前記インタフェースの状態が、前記インタフェースを介した通信が可能な状態に設定されるのに応じて、動作開始通知を前記他のメモリコントローラに送信し、
前記動作開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を再開する処理を行い、
前記他のメモリコントローラは、前記動作開始通知を受け取ると、メモリのデータへのアクセスの制御を再開する処理を行う
付記16に記載のメモリコントローラ制御方法。
前記キャッシュコントローラは、当該キャッシュコントローラの前記インタフェースを通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースを通信が可能である状態に設定し、
前記他のキャッシュコントローラは、当該他のキャッシュコントローラの前記インタフェースを通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースを通信が可能である状態に設定する
付記12に記載のメモリコントローラ制御方法。
前記再調整開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を停止する処理を行った後に、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、前記インタフェースの前記初期化を行い、
前記他のメモリコントローラは、前記再調整開始通知を受け取るとメモリのデータへのアクセスの制御を停止する処理を行った後に、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、
前記インタフェースの状態が、前記インタフェースを介した通信が可能な状態に設定されるのに応じて、動作開始通知を前記他のメモリコントローラに送信し、
前記動作開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を再開する処理を行い、
前記他のメモリコントローラは、前記動作開始通知を受け取ると、メモリのデータへのアクセスの制御を再開する処理を行う
付記18に記載のメモリコントローラ制御方法。
1A マルチプロセッサシステム
10 メモリコントローラ
10A メモリコントローラ
10B メモリコントローラ
10C メモリコントローラ
10D メモリコントローラ
10E メモリコントローラ
11 再調整制御部
12 通知送信部
13 再調整部
14 インタフェース部
15 通知受信部
16 測定情報収集部
17 エラー訂正部
18 エラー情報収集部
20 システムキャッシュコントローラ
23 再調整部
24 インタフェース部
25 通知受信部
100 メモリコントローラ
110 再調整制御部
120 MMI制御部
130 タグメモリ
140 MMI受信制御部
141 ソースシンクロナスインタフェースIOマクロ
150 MMI送信制御部
151 ソースシンクロナスインタフェースIOマクロ
160 SMI受信制御部
161 ソースシンクロナスインタフェースIOマクロ
170 SMI送信制御部
171 ソースシンクロナスインタフェースIOマクロ
200 システムキャッシュコントローラ
210 キャッシュ制御部
220 システムキャッシュ
230 SMI受信制御部
231 ソースシンクロナスインタフェースIOマクロ
240 SMI送信制御部
241 ソースシンクロナスインタフェースIOマクロ
300 プロセッサ
400 メモリ
500 センサ
1000 コンピュータ
1001 プロセッサ
1002 メモリ
1003 記憶装置
1004 I/Oインタフェース
1005 記憶媒体
Claims (9)
- 分散共有メモリを実現するメモリコントローラであって、
前記メモリコントローラに接続され当該メモリコントローラと共に前記分散共有メモリを実現する他のメモリコントローラに、再調整開始通知を送信する通知送信部と、
前記再調整開始通知が送信されるのに応じて、インタフェースの初期化を行う再調整部と、
を備え、
前記メモリコントローラは、前記分散共有メモリのキャッシュを制御するキャッシュコントローラと接続され、
前記通知送信部は、さらに、前記キャッシュコントローラに、第2再調整開始通知を送信し、
前記キャッシュコントローラは、第2再調整開始通知を受信すると、当該キャッシュコントローラのインタフェースの初期化を行い、
前記他のメモリコントローラは、
前記分散共有メモリのキャッシュを制御する他のキャッシュコントローラに接続され、
前記再調整開始通知を受け取ると、前記他のメモリコントローラのインタフェースの初期化を行い、前記他のキャッシュコントローラに第2再調整開始通知を送信し、
前記他のキャッシュコントローラは、前記第2再調整開始通知を受信すると、前記他のキャッシュコントローラのインタフェースの初期化を行う
メモリコントローラ。 - 前記インタフェースにおいて送受信されるデータのエラーを検出し、検出されたエラーを訂正するエラー訂正部と、
エラーが訂正された回数である訂正回数をカウントするエラー情報収集部と、
を備え、
前記通知送信部は、前記訂正回数が閾値を超えた場合、前記再調整開始通知を送信する
請求項1に記載のメモリコントローラ。 - 前記メモリコントローラが含まれる半導体装置の温度を測定する温度センサから、測定された温度の情報を取得する測定情報取得部
を備え、
前記通知送信部は、前記温度の単位時間当たりの変化の大きさが所定温度変化の大きさを超えた場合、前記再調整開始通知を送信する
請求項1に記載のメモリコントローラ。 - 前記メモリコントローラが含まれる半導体装置に印加される電圧を測定する電圧センサから、測定された電圧の情報を取得する測定情報取得部
を備え、
前記通知送信部は、前記電圧の単位時間当たりの変化の大きさが所定電圧変化の大きさを超えた場合、前記再調整開始通知を送信する
請求項1に記載のメモリコントローラ。 - 前記再調整部は、前記再調整開始通知が送信されるのに応じて、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースの状態を、前記インタフェースを介した通信が可能である状態に設定し、
前記他のメモリコントローラは、前記再調整開始通知を受け取ると、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースの状態を、前記インタフェースを介した通信が可能である状態に設定する
請求項1に記載のメモリコントローラ。 - 前記再調整部は、前記再調整開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を停止する処理を行った後に、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、前記インタフェースの前記初期化を行い、
前記他のメモリコントローラは、前記再調整開始通知を受け取るとメモリのデータへのアクセスの制御を停止する処理を行った後に、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、
前記通知送信部は、前記インタフェースの状態が、前記インタフェースを介した通信が可能な状態に設定されるのに応じて、動作開始通知を前記他のメモリコントローラに送信し、
前記再調整部は、前記動作開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を再開する処理を行い、
前記他のメモリコントローラは、前記動作開始通知を受け取ると、メモリのデータへのアクセスの制御を再開する処理を行う
請求項5に記載のメモリコントローラ。 - 前記キャッシュコントローラは、当該キャッシュコントローラの前記インタフェースを通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースを通信が可能である状態に設定し、
前記他のキャッシュコントローラは、当該他のキャッシュコントローラの前記インタフェースを通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、当該初期化が完了してから、前記インタフェースを通信が可能である状態に設定する
請求項1に記載のメモリコントローラ。 - 前記再調整部は、前記再調整開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を停止する処理を行った後に、前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、前記インタフェースの前記初期化を行い、
前記他のメモリコントローラは、前記再調整開始通知を受け取るとメモリのデータへのアクセスの制御を停止する処理を行った後に、当該他のメモリコントローラの前記インタフェースの状態を、前記インタフェースを介した通信が可能でない状態に設定してから、当該インタフェースの前記初期化を行い、
前記通知送信部は、前記インタフェースの状態が、前記インタフェースを介した通信が可能な状態に設定されるのに応じて、動作開始通知を前記他のメモリコントローラに送信し、
前記再調整部は、前記動作開始通知が送信されるのに応じて、メモリのデータへのアクセスの制御を再開する処理を行い、
前記他のメモリコントローラは、前記動作開始通知を受け取ると、メモリのデータへのアクセスの制御を再開する処理を行う
請求項7に記載のメモリコントローラ。 - 分散共有メモリを実現するメモリコントローラの制御方法であって、
前記メモリコントローラに接続され当該メモリコントローラと共に前記分散共有メモリを実現する他のメモリコントローラに、再調整開始通知を送信し、
前記再調整開始通知が送信されるのに応じて、インタフェースの初期化を行い、
前記メモリコントローラに接続されたキャッシュコントローラであって、前記分散共有メモリのキャッシュを制御する前記キャッシュコントローラに、第2再調整開始通知を送信し、
前記キャッシュコントローラは、第2再調整開始通知を受信すると、当該キャッシュコントローラのインタフェースの初期化を行い、
前記他のメモリコントローラは、
前記分散共有メモリのキャッシュを制御する他のキャッシュコントローラに接続され、
前記再調整開始通知を受け取ると、前記他のメモリコントローラのインタフェースの初期化を行い、前記他のキャッシュコントローラに第2再調整開始通知を送信し、
前記他のキャッシュコントローラは、前記第2再調整開始通知を受信すると、前記他のキャッシュコントローラのインタフェースの初期化を行う
メモリコントローラ制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022209200A JP7460743B1 (ja) | 2022-12-27 | 2022-12-27 | メモリコントローラ及びメモリコントローラ制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022209200A JP7460743B1 (ja) | 2022-12-27 | 2022-12-27 | メモリコントローラ及びメモリコントローラ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP7460743B1 true JP7460743B1 (ja) | 2024-04-02 |
JP2024093066A JP2024093066A (ja) | 2024-07-09 |
Family
ID=90474259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022209200A Active JP7460743B1 (ja) | 2022-12-27 | 2022-12-27 | メモリコントローラ及びメモリコントローラ制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7460743B1 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006309332A (ja) | 2005-04-26 | 2006-11-09 | Nec Corp | 計算機システム、メモリ初期化方法、および計算機システムのプログラム |
JP2006323845A (ja) | 2005-05-17 | 2006-11-30 | Internatl Business Mach Corp <Ibm> | メモリ・ブロックを初期設定するためのプロセッサ、データ処理システム、および方法 |
JP2009116398A (ja) | 2007-11-01 | 2009-05-28 | Nec Computertechno Ltd | ノードコントローラ、分散共有メモリ型情報処理装置、キャッシュコヒーレンシ制御方法 |
JP2013512509A (ja) | 2009-11-24 | 2013-04-11 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 分散型多重コアメモリ初期化 |
CN113867803A (zh) | 2020-06-30 | 2021-12-31 | 华为技术有限公司 | 一种内存初始化装置、方法及计算机系统 |
-
2022
- 2022-12-27 JP JP2022209200A patent/JP7460743B1/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006309332A (ja) | 2005-04-26 | 2006-11-09 | Nec Corp | 計算機システム、メモリ初期化方法、および計算機システムのプログラム |
JP2006323845A (ja) | 2005-05-17 | 2006-11-30 | Internatl Business Mach Corp <Ibm> | メモリ・ブロックを初期設定するためのプロセッサ、データ処理システム、および方法 |
JP2009116398A (ja) | 2007-11-01 | 2009-05-28 | Nec Computertechno Ltd | ノードコントローラ、分散共有メモリ型情報処理装置、キャッシュコヒーレンシ制御方法 |
JP2013512509A (ja) | 2009-11-24 | 2013-04-11 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 分散型多重コアメモリ初期化 |
CN113867803A (zh) | 2020-06-30 | 2021-12-31 | 华为技术有限公司 | 一种内存初始化装置、方法及计算机系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5265211A (en) | Arbitration control logic for computer system having dual bus architecture | |
US7386768B2 (en) | Memory channel with bit lane fail-over | |
US5255374A (en) | Bus interface logic for computer system having dual bus architecture | |
US5659696A (en) | Method and apparatus for determining address location and taking one of two actions depending on the type of read/write data transfer required | |
JP5815349B2 (ja) | ライトバック順序付けによるコヒーレンス制御 | |
US5761533A (en) | Computer system with varied data transfer speeds between system components and memory | |
US20040250153A1 (en) | Data signal redrive with dynamic sampling adjustment | |
US7516349B2 (en) | Synchronized memory channels with unidirectional links | |
US20090276559A1 (en) | Arrangements for Operating In-Line Memory Module Configurations | |
US8176261B2 (en) | Information processing apparatus and data transfer method | |
US9697145B2 (en) | Memory interface system | |
JP2018005902A (ja) | メモリ装置へのアクセスを制御するための装置及びそのような装置内においてメンテナンス作業を行う方法 | |
US5673414A (en) | Snooping of I/O bus and invalidation of processor cache for memory data transfers between one I/O device and cacheable memory in another I/O device | |
US20060236032A1 (en) | Data storage system having memory controller with embedded CPU | |
US6389554B1 (en) | Concurrent write duplex device | |
JP7460743B1 (ja) | メモリコントローラ及びメモリコントローラ制御方法 | |
JP2006512634A (ja) | 同期または非同期にクロック制御される処理ユニットを同期化する方法および回路装置 | |
US6023748A (en) | Multiple client memory arbitration system capable of operating multiple configuration types | |
JP2024093066A (ja) | メモリコントローラ及びメモリコントローラ制御方法 | |
KR0175742B1 (ko) | 이중화 시스템에서 동작 분리 고속 데이타 전송장치 | |
US20060143403A1 (en) | Early coherency indication for return data in shared memory architecture | |
US11942184B2 (en) | Programmable logic circuit, information processing apparatus, and non-transitory computer readable medium | |
US9612931B2 (en) | System and method for synchronously controlling LED on multiple control modules based on a register synchronized with synchronous packets | |
US20020174282A1 (en) | Multiprocessor system | |
US7302508B2 (en) | Apparatus and method for high speed data transfer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240215 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240321 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7460743 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |