(57)【要約】  本発明は、コンピュータ技術の分野に関し、多重チャネルメモリシステムの帯域幅リソースの比較的低い利用度によって引き起こされる比較的低いメモリアクセス帯域幅の問題を解決するために使用されるメモリモジュールアクセス方法及び装置を開示する。本発明で提供する方法は、第１のスケジューラによって、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するステップと、第１のスケジューラによって、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るステップとを含む。本発明は、コンピュータ技術の分野に適用可能であり、メモリモジュールアクセスを実施するために使用される。
2016531372.tif 000002
【特許請求の範囲】
【請求項１】
メモリシステムに適用されるメモリモジュールアクセス方法であって、前記メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、伝送リンクが前記第１のスケジューラと前記第２のスケジューラとの間に確立され、
前記方法が、
前記第１のスケジューラによって、前記第２のスケジューラの送る予定のメモリアクセス要求の量を取得するステップと、
前記第１のスケジューラによって、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送るステップと
を含む、方法。
【請求項２】
前記第１のスケジューラによって、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送る前記ステップが、
前記第１のスケジューラによって、少なくとも２つのメモリアクセス要求を受け取るステップを含み、前記少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
前記第１のメモリアクセス要求が前記第１のスケジューラに対応する前記第１のメモリチャネルを通して送られるとき、前記第２のメモリアクセス要求が、送る予定の状態にあり；前記第２のスケジューラに対応する前記第２のメモリチャネルがアイドル状態にある場合、前記第１のスケジューラが、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセスを送る、請求項１に記載の方法。
【請求項３】
前記第１のスケジューラによって、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップの前に、前記方法が、
前記第１のスケジューラによって、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するステップと、
前記第１のスケジューラによって、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るステップと
をさらに含む、請求項２に記載の方法。
【請求項４】
前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項３に記載の方法。
【請求項５】
前記第１のスケジューラが、少なくとも２つの経路を有し、前記少なくとも２つの経路を使用することによって前記第１のメモリチャネル及び前記第２のメモリチャネルへの接続を確立する、請求項１から４のいずれか一項に記載の方法。
【請求項６】
メモリシステムに適用されるメモリモジュールアクセス方法であって、前記メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、
前記方法が、
前記第１のスケジューラによって、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るステップと、
前記第１のスケジューラによって、前記第１のメモリチャネルを通して前記第１のメモリアクセス要求を送り、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るステップと
を含む、方法。
【請求項７】
前記第１のスケジューラによって、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップは、
前記第２のメモリチャネルがアイドル状態にあるとき、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るステップ
を含む、請求項６に記載の方法。
【請求項８】
前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップの前に、前記方法が、
前記第１のスケジューラによって、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するステップと、
前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るステップと
を含む、請求項７に記載の方法。
【請求項９】
前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項８に記載の方法。
【請求項１０】
各スケジューラが、複数の経路を有し、前記複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する、請求項６から９のいずれか一項に記載の方法。
【請求項１１】
メモリシステムに適用されるメモリモジュールアクセス方法であって、前記メモリシステムが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、
前記方法が、
第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るステップであり、前記第１のメモリアクセス要求及び前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、受け取るステップと、
前記第１のメモリチャネルを通して前記第１のメモリアクセス要求を送り、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るステップと
を含む、方法。
【請求項１２】
前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップは、前記第２のメモリチャネルがアイドル状態にあるとき、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るステップを含む、請求項１１に記載の方法。
【請求項１３】
前記メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが前記第１のメモリチャネルに対応しており、前記第２のスケジューラが前記第２のメモリチャネルに対応しており、
前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップの前に、前記方法が、
前記第１のスケジューラによって、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するステップと、
前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るステップと
をさらに含む、請求項１２に記載の方法。
【請求項１４】
各スケジューラが、複数の経路を有し、前記複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する、請求項１１から１３のいずれか一項に記載の方法。
【請求項１５】
少なくとも、第１のスケジューラと第２のスケジューラとを含む、メモリシステムに適用されるメモリコントローラであって、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、伝送リンクが前記第１のスケジューラと前記第２のスケジューラとの間に確立され、
前記第１のスケジューラが、前記第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
前記第１のスケジューラが、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送るようにさらに構成される、メモリコントローラ。
【請求項１６】
前記第１のスケジューラが、少なくとも２つのメモリアクセス要求を受け取るように構成され、前記少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
前記第１のスケジューラは、前記第２のメモリ要求が、送る予定の状態にあるとき、前記第２のスケジューラに対応する前記第２のメモリチャネルがアイドル状態にある場合、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るようにさらに構成される、請求項１５に記載のメモリコントローラ。
【請求項１７】
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するようにさらに構成され、
前記第１のスケジューラが、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項１６に記載のメモリコントローラ。
【請求項１８】
前記第１のスケジューラで受け取られた前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項１７に記載のメモリコントローラ。
【請求項１９】
前記第１のスケジューラが、少なくとも２つの経路を有し、前記少なくとも２つの経路を使用することによって前記第１のメモリチャネル及び前記第２のメモリチャネルへの接続を確立する、請求項１５から１８のいずれか一項に記載のメモリコントローラ。
【請求項２０】
少なくとも、第１のスケジューラと第２のスケジューラとを含むメモリコントローラであって、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリコントローラが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、
前記第１のスケジューラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、前記第１のメモリチャネルを通して前記第１のメモリアクセス要求を送り、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るように構成される、メモリコントローラ。
【請求項２１】
前記第１のスケジューラは、前記第２のメモリチャネルがアイドル状態にあるとき、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るように構成される、請求項２０に記載のメモリコントローラ。
【請求項２２】
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送り、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求し、
前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項２１に記載のメモリコントローラ。
【請求項２３】
前記第１のスケジューラで受け取られた前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項２２に記載のメモリコントローラ。
【請求項２４】
前記メモリコントローラの各スケジューラが、複数の経路を有し、前記複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する、請求項２０から２３のいずれか一項に記載のメモリコントローラ。
【請求項２５】
少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含むメモリコントローラであって、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリコントローラが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、
前記メモリコントローラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、前記第１のメモリアクセス要求及び前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置し、
前記メモリコントローラが、前記第１のメモリチャネルを通して前記第１のメモリアクセス要求を送り、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るようにさらに構成される、メモリコントローラ。
【請求項２６】
前記メモリコントローラは、具体的には、前記第２のメモリチャネルがアイドル状態にあるとき、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るように構成される、請求項２５に記載のメモリコントローラ。
【請求項２７】
前記メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが前記第１のメモリチャネルに対応しており、前記第２のスケジューラが前記第２のメモリチャネルに対応しており、
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するように構成され、
前記第１のスケジューラが、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項２６に記載のメモリコントローラ。
【請求項２８】
前記メモリコントローラの各スケジューラが、複数の経路を有し、前記複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する、請求項２５から２７のいずれか一項に記載のメモリコントローラ。
【請求項２９】
メモリコントローラを含む、メモリシステムに適用される中央処理装置ＣＰＵであって、前記メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、伝送リンクが前記第１のスケジューラと前記第２のスケジューラとの間に確立され、
前記第１のスケジューラが、前記第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
前記第１のスケジューラが、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送るようにさらに構成される、ＣＰＵ。
【請求項３０】
前記第１のスケジューラが、少なくとも２つのメモリアクセス要求を受け取るように構成され、前記少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
前記第１のスケジューラは、前記第２のメモリ要求が、送る予定の状態にあるとき、前記第２のスケジューラに対応する前記第２のメモリチャネルがアイドル状態にある場合、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るようにさらに構成される、請求項２９に記載のＣＰＵ。
【請求項３１】
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するようにさらに構成され、
前記第１のスケジューラが、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項３０に記載のＣＰＵ。
【請求項３２】
前記第１のスケジューラで受け取られた前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項３１に記載のＣＰＵ。
【請求項３３】
前記第１のスケジューラが、少なくとも２つの経路を有し、前記少なくとも２つの経路を使用することによって前記第１のメモリチャネル及び前記第２のメモリチャネルへの接続を確立する、請求項２９から３２のいずれか一項に記載のＣＰＵ。
【請求項３４】
メモリコントローラを含む中央処理装置ＣＰＵであって、前記メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリコントローラが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、
前記第１のスケジューラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、前記第１のメモリチャネルを通して前記第１のメモリアクセス要求を送り、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るように構成される、ＣＰＵ。
【請求項３５】
前記第１のスケジューラは、前記第２のメモリチャネルがアイドル状態にあるとき、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るように構成される、請求項３４に記載のＣＰＵ。
【請求項３６】
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送り、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求し、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項３５に記載のＣＰＵ。
【請求項３７】
前記第１のスケジューラで受け取られた前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項３６に記載のＣＰＵ。
【請求項３８】
前記メモリコントローラの各スケジューラが、複数の経路を有し、前記複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する、請求項３４から３７のいずれか一項に記載のＣＰＵ。
【請求項３９】
メモリコントローラを含む中央処理装置ＣＰＵであって、前記メモリコントローラが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリコントローラが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、
前記メモリコントローラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、前記第１のメモリアクセス要求及び前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置し、
前記メモリコントローラが、前記第１のメモリチャネルを通して前記第１のメモリアクセス要求を送り、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るようにさらに構成される、ＣＰＵ。
【請求項４０】
前記メモリコントローラは、具体的には、前記第２のメモリチャネルがアイドル状態にあるとき、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るように構成される、請求項３９に記載のＣＰＵ。
【請求項４１】
前記メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが前記第１のメモリチャネルに対応しており、前記第２のスケジューラが前記第２のメモリチャネルに対応しており、
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するように構成され、
前記第１のスケジューラが、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項４０に記載のＣＰＵ。
【請求項４２】
前記メモリコントローラの各スケジューラが、複数の経路を有し、前記複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する、請求項３９から４１のいずれか一項に記載のＣＰＵ。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、参照により全体が本明細書に組み込まれる、２０１３年９月１６日に中国特許庁に出願された、「ＭＥＭＯＲＹ  ＭＯＤＵＬＥ  ＡＣＣＥＳＳ  ＭＥＴＨＯＤ  ＡＮＤ  ＡＰＰＡＲＡＴＵＳ」という名称の中国特許出願第２０１３１０４２２９９３．７号の優先権を主張する。
【０００２】
本発明は、コンピュータ技術の分野に関し、特に、メモリモジュールアクセス方法及び装置に関する。
【背景技術】
【０００３】
コンピュータ技術の分野において、メモリアクセス帯域幅を改善するために、多重チャネルメモリシステムが多くのコンピュータで使用されている。多重チャネルメモリシステムは複数のメモリチャネルを含み、メモリコントローラは複数のメモリチャネルを使用することによってメモリモジュールと通信する。多重チャネルメモリシステムでは、メモリアドレスとチャネルと間のマッピング関係が、メモリモジュールのグルーピングに従って予め決められ、その結果、チャネルの負荷の平衡が保たれる。メモリアクセス要求が受け取られると、対応するチャネルが、メモリアクセス要求のメモリアドレスに応じて目標チャネルとして決定され、メモリアクセス要求は目標チャネルを通して送られる。メモリシステムが２つのメモリモジュールを含むと仮定すると、メモリアドレスとチャネルとの間のマッピング関係は、メモリアドレスの特定のビットの値によって決定することができる。例えば、メモリアドレスの７番目のビットが「０」であるメモリアクセス要求は、チャネル０を通して目標メモリモジュールに送られ、メモリアドレスの７番目のビットが「１」であるメモリアクセス要求は、チャネル１を通して目標メモリモジュールに送られる。
【０００４】
本発明の実施の間に、発明者は、先行技術が少なくとも以下の問題を有することを見いだしている。メモリモジュールとメモリコントローラとの間のチャネルが互いに独立しているので、複数の受け取られたメモリアクセス要求が複数のチャネルの間で不均衡な方法で分配されると、例えば、連続して受け取られたｎ個のメモリアクセス要求がすべてチャネル１を通して目標メモリモジュールに送られると、チャネル１は過度に詰め込まれる可能性があり、他のチャネルはアイドル状態にあり、それにより、帯域幅リソースの浪費が引き起こされ、さらに、比較的低いメモリアクセス帯域幅がもたらされる。
【発明の概要】
【０００５】
本発明の実施形態は、複数の受け取られたメモリアクセス要求が複数のチャネルの間に不均衡な方法で分配されると、帯域幅リソースの浪費が引き起こされ、それにより、比較的低いメモリアクセス帯域幅がもたらされるという先行技術の問題を解決することができるメモリモジュールアクセス方法及び装置を提供する。
【０００６】
前述の目的を達成するために、本発明の実施形態は以下の技術的解決策を使用する。
【０００７】
第１の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立され、
この方法は、
第１のスケジューラによって、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するステップと、
第１のスケジューラによって、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るステップと
を含む。
【０００８】
第１の可能な実施手法では、第１のスケジューラによって、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るステップは、
第１のスケジューラによって、少なくとも２つのメモリアクセス要求を受け取るステップを含み、ここで、少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、ここで、
第１のメモリアクセス要求が第１のスケジューラに対応する第１のメモリチャネルを通して送られるとき、第２のメモリアクセス要求が、送る予定の状態にあり；第２のスケジューラに対応する第２のメモリチャネルがアイドル状態にある場合、第１のスケジューラが、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセスを送る。
【０００９】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラによって、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップの前に、この方法は、
第１のスケジューラによって、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するステップと、
第１のスケジューラによって、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るステップと
を含む。
【００１０】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００１１】
第１の態様、又は第１の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、第１のスケジューラが、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００１２】
第２の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
この方法は、
第１のスケジューラによって、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るステップと、
第１のスケジューラによって、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップと
を含む。
【００１３】
第１の可能な実施手法では、第１のスケジューラによって、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップは、
第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップ
を含む。
【００１４】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップの前に、この方法は、
第１のスケジューラによって、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するステップと、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るステップと
をさらに含む。
【００１５】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００１６】
第２の態様、又は第２の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００１７】
第３の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
この方法は、
第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るステップであり、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する、受け取るステップと、
第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップと
を含む。
【００１８】
第１の可能な実施手法では、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップは、
第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップ
を含む。
【００１９】
第１の可能な実施手法を参照して、第２の可能な実施手法では、メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、
第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップの前に、この方法は、
第１のスケジューラによって、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するステップと、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るステップと
をさらに含む。
【００２０】
第３の態様、又は第３の態様の第１の可能な実施手法若しくは第２の可能な実施手法を参照して、第３の可能な実施手法では、各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００２１】
第４の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリコントローラを提供し、ここで、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立され、
第１のスケジューラが、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
第１のスケジューラが、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。
【００２２】
第１の可能な実施手法では、第１のスケジューラが、少なくとも２つのメモリアクセス要求を受け取るように構成され、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
第１のスケジューラは、第２のメモリ要求が、送る予定の状態にあるとき、第２のスケジューラに対応する第２のメモリチャネルがアイドル状態にある場合、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００２３】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００２４】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００２５】
第１の態様、又は第１の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、第１のスケジューラが、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００２６】
第５の態様によれば、本発明の一実施形態は、メモリコントローラを提供し、ここで、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
第１のスケジューラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００２７】
第１の可能な実施手法では、第１のスケジューラは、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００２８】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００２９】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００３０】
第５の態様、又は第５の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００３１】
第６の態様によれば、本発明の一実施形態は、メモリコントローラを提供し、ここで、メモリコントローラが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
メモリコントローラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置し、
メモリコントローラが、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００３２】
第１の可能な実施手法では、メモリコントローラは、具体的には、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００３３】
第１の可能な実施手法を参照して、第２の可能な実施手法では、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、
第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００３４】
第６の態様、又は第６の態様の第１の可能な実施手法若しくは第２の可能な実施手法を参照して、第３の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００３５】
第７の態様によれば、本発明の一実施形態は、メモリシステムに適用される中央処理装置ＣＰＵを提供し、ここで、ＣＰＵはメモリコントローラを含み、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立され、
第１のスケジューラが、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
第１のスケジューラが、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。
【００３６】
第１の可能な実施手法では、第１のスケジューラは、少なくとも２つのメモリアクセス要求を受け取るように構成され、少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
第１のスケジューラは、第２のメモリ要求が、送る予定の状態にあるとき、第２のスケジューラに対応する第２のメモリチャネルがアイドル状態にある場合、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００３７】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００３８】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置し、第１のメモリチャネルが、第１のスケジューラに対応するメモリチャネルである。
【００３９】
第７の態様、又は第７の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、第１のスケジューラが、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００４０】
第８の態様によれば、本発明の一実施形態は、メモリコントローラを含むＣＰＵを提供し、ここで、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
第１のスケジューラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００４１】
第１の可能な実施手法では、第１のスケジューラは、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００４２】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００４３】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００４４】
第８の態様、又は第８の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００４５】
第９の態様によれば、本発明の一実施形態は、メモリコントローラを含むＣＰＵを提供し、ここで、メモリコントローラが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
メモリコントローラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置し、
メモリコントローラが、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００４６】
第１の可能な実施手法では、メモリコントローラは、具体的には、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００４７】
第１の可能な実施手法を参照して、第２の可能な実施手法では、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、
第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００４８】
第９の態様、又は第９の態様の第１の可能な実施手法若しくは第２の可能な実施手法を参照して、第３の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００４９】
本発明のこの実施形態で提供するメモリモジュールアクセス方法及び装置によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、複数のメモリチャネルを通して送ることができる。本発明の実施形態で提供する方法を使用することによって、複数の受け取られたメモリアクセス要求が複数のメモリチャネルの間で不均衡な方法で分配される場合でさえ、複数の受け取られたメモリアクセス要求は、アイドル状態の別のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
【００５０】
本発明の実施形態又は先行技術の技術的解決策をより明確に説明するために、以下では、実施形態又は先行技術を説明するのに必要な添付図面を簡単に導入する。明らかに、以下の説明における添付図面は、本発明のいくつかの実施形態を示しているにすぎず、当業者は、さらに、創造的な努力なしにこれらの添付図面から他の図面を引き出すことができる。
【図面の簡単な説明】
【００５１】
【図１】本発明の実施形態１によるメモリモジュールアクセス方法の概略流れ図である。
【図２】本発明の実施形態１によるメモリモジュールアクセス方法の概略流れ図である。
【図３】本発明の実施形態２によるメモリコントローラの構造ブロック図である。
【図４】本発明の実施形態２によるメモリコントローラの構造ブロック図である。
【図５】本発明の実施形態３によるＣＰＵの構造ブロック図である。
【図６】本発明の実施形態３によるＣＰＵの構造ブロック図である。
【図７】本発明の実施形態４によるメモリモジュールアクセス方法の概略流れ図である。
【図８】本発明の実施形態４によるメモリモジュールアクセス方法の概略流れ図である。
【図９】本発明の実施形態５によるメモリコントローラの構造ブロック図である。
【図１０】本発明の実施形態６によるＣＰＵの構造ブロック図である。
【図１１】本発明の実施形態７によるメモリモジュールアクセス方法の概略流れ図である。
【図１２】本発明の実施形態７によるメモリモジュールアクセス方法の概略流れ図である。
【図１３】本発明の実施形態８によるメモリコントローラの構造ブロック図である。
【図１４】本発明の実施形態９によるＣＰＵの構造ブロック図である。
【図１５】本発明の実施形態９によるＣＰＵの構造ブロック図である。
【図１６】本発明の実施形態１０による二重チャネルメモリシステムの構造図である。
【図１７】本発明の実施形態１１による３チャネルメモリシステムの構造図である。
【発明を実施するための形態】
【００５２】
以下では、本発明の実施形態における技術的解決策が、本発明の実施形態の添付図面を参照して明確に完全に説明される。明らかに、説明される実施形態は、本発明の実施形態のすべてではなく一部にすぎない。創造的な努力なしに本発明の実施形態に基づいて当業者によって得られるすべての他の実施形態は、本発明の保護範囲内にあるものとする。
実施形態１
【００５３】
本発明のこの実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムは、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラは第１のメモリチャネルに対応しており、第２のスケジューラは第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立される。
【００５４】
図１に示すように、この方法は以下のものを含む。
１０１．第１のスケジューラは、第２のスケジューラの送る予定のメモリアクセス要求の量を取得する。
１０２．第１のスケジューラは、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送る。
【００５５】
この実施形態では、メモリシステムは複数のスケジューラを含み、通信リンクが複数のスケジューラ間に確立され、その結果、各スケジューラは別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、それゆえに、メモリアクセス要求を受け取った後、各スケジューラは、アイドルメモリチャネルを決定し、アイドルメモリチャネルを通してメモリアクセス要求を送ることができる。
【００５６】
さらに、図１に示す方法に基づいて、本発明のこの実施形態は、より詳細なメモリモジュールアクセス方法を提供する。図２に示すように、この方法は以下のものを含む。
２０１．第１のスケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を実時間で取得する。ここで、第１のスケジューラは複数のスケジューラ中の任意のスケジューラであり、別のスケジューラは、第１のスケジューラ以外の複数のスケジューラ中の残りのスケジューラである。
２０２．第１のスケジューラは、少なくとも２つのメモリアクセス要求を受け取る。ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。一般に、第１のスケジューラで受け取られるメモリアクセス要求の宛先アドレスはすべて第１のスケジューラに対応するメモリモジュールに位置し、すなわち、第１のスケジューラに対応するメモリチャネルが第１のメモリチャネルとしてマーク付けされている場合、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置することに留意すべきである。
２０３．第１のスケジューラが第１のメモリチャネルを通して第１のメモリアクセス要求を送る場合、第２のメモリアクセス要求は、送る予定の状態にある。
２０４．第１のスケジューラは、別のスケジューラに対応するメモリチャネルの状態を問い合わせて、補助スケジューラを決定する。ここで、補助スケジューラに対応するメモリチャネルはアイドル状態にある。
具体的には、第１のスケジューラは、以下の方法、すなわち、第１のスケジューラによって、別のスケジューラの送る予定のメモリアクセス要求の量を問い合わせるステップと、送る予定のメモリアクセス要求の量が０である補助スケジューラを補助スケジューラとして決定するステップとを使用することによって補助スケジューラを決定することができる。
理解しやすくするために、この実施形態では、決定された補助スケジューラは、第２のスケジューラとしてマーク付けされており、第２のスケジューラの現在の送る予定のメモリアクセス要求の量は０であり、第２のスケジューラに対応するメモリチャネルはアイドル状態にある。
第２のスケジューラの現在の送る予定のメモリアクセス要求の量が０であるということは、第２のスケジューラに対応するメモリチャネルが絶対的なアイドル状態にあるということを示していることに留意すべきである。オプションの解決策として、第２のスケジューラに対応するメモリチャネルが相対的なアイドル状態にある（例えば、第２のスケジューラの送る予定のメモリアクセス要求の量が０ではないが、第２のスケジューラの送る予定のメモリアクセス要求の量が第１のスケジューラの送る予定のメモリアクセス要求の量よりも非常に少ない）場合、第１のスケジューラは、やはり、第２のスケジューラを補助スケジューラとして決定し、受け取ったメモリアクセス要求の一部を、第２のスケジューラに対応するメモリチャネルを通して送ることが強調されるべきである。そのような方法を使用することによって、大量のメモリアクセス要求を受け取ると、第１のスケジューラは、第１のスケジューラの送る予定のメモリアクセス要求の一部を補助スケジューラに遅れずに移送することができ、その結果、第１のスケジューラはより多くのメモリアクセス要求をバッファに入れ、それによって、メモリシステムの通信能力を改善することができる。
２０５．第１のスケジューラは、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求する。
２０６．第２のスケジューラは、第２のスケジューラに対応するメモリチャネルがアイドル状態にあると決定し、第１のスケジューラが第２のスケジューラに対応する第２のメモリチャネルを占有することを許可し、メモリチャネル占有要求に応答して第１のスケジューラに確認応答を送る。
２０７．第１のスケジューラは、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取る。
２０８．第１のスケジューラは、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
２０９．第２のスケジューラに対応するメモリモジュールは、第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求の宛先アドレスに従って、メモリモジュール間の伝送リンクを通して、第２のメモリアクセス要求を宛先メモリモジュール、すなわち、第１のスケジューラに対応するメモリモジュールに送る。
【００５７】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。
【００５８】
この実施形態で提供するメモリモジュールアクセス方法は、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることが強調されるべきである。
【００５９】
好ましい解決策として、この実施形態の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００６０】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供する方法によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態２
【００６１】
メモリシステムに適用され、図１及び図２に示したメモリモジュールアクセス方法を実施することができるメモリコントローラを、本発明のこの実施形態は提供する。図３に示すように、メモリコントローラは、少なくとも、第１のスケジューラ３１と第２のスケジューラ３２とを含み、第１のスケジューラ３１は第１のメモリチャネルに対応しており、第２のスケジューラ３２は第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラ３１と第２のスケジューラ３２との間に確立される。
【００６２】
第１のスケジューラ３１は、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成される。
【００６３】
第１のスケジューラ３１は、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。図３の第１のスケジューラ３１及び第２のスケジューラ３２は、単に説明のための一例として使用されていることに留意すべきである。実際の用途では、メモリコントローラは、複数のスケジューラを含む。図４に示すように、メモリコントローラは、第３のスケジューラ３３、第４のスケジューラ３４などのような複数のスケジューラをさらに含むことができる。通信リンクが、メモリシステムのスケジューラ間に確立され、その結果、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができる。このようにして、メモリアクセス要求を受け取った後、各スケジューラは、アイドルメモリチャネルを決定し、アイドルメモリチャネルを通してメモリアクセス要求を送ることができる。
【００６４】
具体的には、第１のスケジューラ３１は、少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。
【００６５】
第１のスケジューラ３１は、第２のメモリアクセス要求が、送る予定の状態にあるとき、第２のスケジューラ３２に対応する第２のメモリチャネルがアイドル状態にある場合、第２のスケジューラ３２に対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００６６】
具体的には、第１のスケジューラ３１は、第２のスケジューラ３２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ３２に対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、第１のスケジューラ３１は、メモリチャネル占有要求に応答して第２のスケジューラ３２によって返される確認応答を受け取るようにさらに構成される。
【００６７】
一般に、第１のスケジューラ３１が、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ３１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ３１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【００６８】
オプションの解決策として、第１のスケジューラ３１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ３１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ３１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
【００６９】
第１のスケジューラ３１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００７０】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。例えば、第１のスケジューラ３１は、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００７１】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【００７２】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００７３】
本発明のこの実施形態で提供するメモリコントローラの各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供するメモリコントローラでは、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態３
【００７４】
メモリシステムに適用され、先の図１及び図２に示した方法を実施することができるＣＰＵを、本発明のこの実施形態は提供する。図５に示すように、ＣＰＵはメモリコントローラ５０を含み、ここで、メモリコントローラ５０は第１のスケジューラ５１と第２のスケジューラ５２とを含み、第１のスケジューラ５１は第１のメモリチャネルに対応しており、第２のスケジューラ５２は第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラ５１と第２のスケジューラ５２との間に確立される。
【００７５】
具体的には、第１のスケジューラ５１は、第２のスケジューラ５２の送る予定のメモリアクセス要求の量を取得するように構成される。
【００７６】
第１のスケジューラ５１は、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。図５の第１のスケジューラ５１及び第２のスケジューラ５２は、単に説明のための一例として使用されていることに留意すべきである。実際の用途では、メモリコントローラは、複数のスケジューラを含む。図６に示すように、メモリコントローラは、第３のスケジューラ５３、第４のスケジューラ５４などのような複数のスケジューラをさらに含むことができる。通信リンクがメモリシステムのスケジューラ間に確立され、その結果、各スケジューラは別のスケジューラの送る予定のメモリアクセス要求の量を取得することができる。このようにして、メモリアクセス要求を受け取った後、各スケジューラは、アイドルメモリチャネルを決定し、アイドルメモリチャネルを通してメモリアクセス要求を送ることができる。
【００７７】
具体的には、第１のスケジューラ５１は、少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。
【００７８】
第１のスケジューラ５１は、第２のメモリアクセス要求が、送る予定の状態にあるとき、第２のスケジューラ５２に対応するメモリチャネルがアイドル状態にある場合、第２のメモリアクセス要求を、第２のスケジューラ５２に対応するメモリチャネルを通して送るようにさらに構成される。
【００７９】
具体的には、第１のスケジューラ５１は、第２のスケジューラ５２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ５２に対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、
第１のスケジューラ５１は、メモリチャネル占有要求に応答して第２のスケジューラ５２によって返される確認応答を受け取るようにさらに構成される。
【００８０】
第１のスケジューラ５１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００８１】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【００８２】
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
【００８３】
この実施形態では、メモリコントローラの各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立することに留意すべきである。例えば、第１のスケジューラは、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００８４】
この実施形態で提供するＣＰＵは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【００８５】
好ましい解決策として、メモリコントローラ５０の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００８６】
本発明のこの実施形態で提供するＣＰＵはメモリコントローラを含む。メモリコントローラの各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供するＣＰＵでは、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態４
【００８７】
本発明のこの実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムは、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラは第１のメモリチャネルに対応しており、第２のスケジューラは第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立される。
【００８８】
図７に示すように、この方法は以下のものを含む。
７０１．第１のスケジューラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取る。
７０２．第１のスケジューラは、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
【００８９】
この実施形態で提供する方法によれば、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、それによって、メモリチャネルの帯域幅リソースの利用度が改善され得る。
【００９０】
さらに、図７に示した方法に基づいて、本発明のこの実施形態は、より詳細なメモリモジュールアクセス方法をさらに提供する。図８に示すように、この方法は以下のものを含む。
８０１．第１のスケジューラは、少なくとも２つのメモリアクセス要求を受け取る。ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。一般に、第１のスケジューラで受け取られたメモリアクセス要求の宛先アドレスはすべて第１のスケジューラに対応するメモリモジュールに位置し、すなわち、第１のスケジューラに対応するメモリチャネルが第１のメモリチャネルとしてマーク付けされている場合、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置することに留意すべきである。
８０２．第１のスケジューラが第１のメモリチャネルを通して第１のメモリアクセス要求を送る場合、第２のメモリアクセス要求は、送る予定の状態にある。
８０３．第１のスケジューラは、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求する。
第２のスケジューラは、メモリシステムの複数のスケジューラ中の任意のスケジューラであることに留意すべきである。複数のメモリアクセス要求を受け取ると、第１のスケジューラは、メモリシステムのすべてのスケジューラにメモリチャネル占有要求を送ることができる。この実施形態では、第２のスケジューラが、特定の説明のための一例として使用されている。
８０４．第２のスケジューラは、第２のスケジューラに対応するメモリチャネルがアイドル状態にあるかどうかを検出し、はいの場合、８０５を実行し、又はそうでない場合、８０９を実行する。
８０５．第２のスケジューラは、第１のスケジューラが第２のスケジューラに対応する第２のメモリチャネルを占有することを許可し、メモリチャネル占有要求に応答して第１のスケジューラに確認応答を送る。
８０６．第１のスケジューラは、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取る。
８０７．第１のスケジューラは、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
８０８．第２のスケジューラに対応するメモリモジュールは、第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求の宛先アドレスに従って、メモリモジュール間の伝送リンクを通して、第２のメモリアクセス要求を宛先メモリモジュール、すなわち、第１のスケジューラに対応するメモリモジュールに送る。
８０９．第２のスケジューラは、第１のスケジューラによって送られたメモリチャネル占有要求を拒否する。
【００９１】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。この実施形態で提供するメモリモジュールアクセス方法は、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることが強調されるべきである。
【００９２】
好ましい解決策として、この実施形態の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００９３】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、複数のメモリアクセス要求が受け取られると、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、複数のメモリアクセス要求が複数のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態５
【００９４】
本発明のこの実施形態は、図７及び図８に示した方法を実施することができるメモリコントローラを提供する。図９に示すように、メモリコントローラは、少なくとも、第１のスケジューラ９１と第２のスケジューラ９２とを含み、ここで、第１のスケジューラ９１は第１のメモリチャネルに対応しており、第２のスケジューラ９２は第２のメモリチャネルに対応しており、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、伝送リンクがメモリモジュール間に確立される。
【００９５】
第１のスケジューラ９１は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００９６】
具体的には、第１のスケジューラ９１は、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００９７】
さらに、第１のスケジューラ９１は、第２のスケジューラ９２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ９２に対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラ９２によって返される確認応答を受け取るようにさらに構成される。
【００９８】
第１のスケジューラ９１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００９９】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ９１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ９１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【０１００】
オプションの解決策として、第１のスケジューラ９１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ９１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ９１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するメモリコントローラによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
【０１０１】
具体的には、メモリコントローラの各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【０１０２】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１０３】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１０４】
本発明のこの実施形態で提供するメモリコントローラでは、複数のメモリアクセス要求が受け取られると、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、複数のメモリアクセス要求が複数のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態６
【０１０５】
この実施形態は、図７及び図８に示した方法を実施することができるＣＰＵを提供する。図１０に示すように、ＣＰＵはメモリコントローラ１０００を含み、ここで、メモリコントローラ１０００は、少なくとも、第１のスケジューラ１００１と第２のスケジューラ１００２とを含み、第１のスケジューラは第１のメモリチャネルに対応しており、第２のスケジューラは第２のメモリチャネルに対応しており、各スケジューラはメモリチャネルに対応しており、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、メモリコントローラは複数のメモリモジュールを含み、ここで、伝送リンクが、複数のメモリモジュール間に前もって確立されている。
【０１０６】
第１のスケジューラ１００１は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１０７】
具体的には、第１のスケジューラ１００１は、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１０８】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ１００１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ１００１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【０１０９】
オプションの解決策として、第１のスケジューラ１００１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ１００１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ１００１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するＣＰＵによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
【０１１０】
さらに、第１のスケジューラ１００１は、第２のスケジューラ１００２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ１００２に対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラ１００２によって返される確認応答を受け取るようにさらに構成される。
【０１１１】
第１のスケジューラ１００１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【０１１２】
この実施形態では、メモリコントローラ１０００の各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【０１１３】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１１４】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１１５】
本発明のこの実施形態で提供するＣＰＵによれば、複数のメモリアクセス要求が受け取られると、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、複数のメモリアクセス要求が複数のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態７
【０１１６】
本発明のこの実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムは、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立される。
【０１１７】
図１１に示すように、この方法は以下のものを含む。
１１０１．第１のスケジューラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
１１０２．第１のメモリチャネルを通して第１のメモリアクセス要求を送り、
第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
【０１１８】
この実施形態で提供するメモリモジュールアクセス方法によれば、複数のメモリアクセス要求を受け取ると、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、この実施形態の第２のスケジューラ）に対応するメモリチャネルを通して送ることができる。
【０１１９】
さらに、図１１に示す方法に基づいて、本発明のこの実施形態は、より詳細なメモリモジュールアクセス方法をさらに提供する。図１２に示すように、この方法は以下のものを含む。
１２０１．第１のスケジューラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取る。ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
１２０２．第１のスケジューラは、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリアクセス要求は、送る予定の状態にある。
１２０３．第１のスケジューラは、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求する。
第２のスケジューラは、メモリシステムの複数のスケジューラ中の任意のスケジューラであることに留意すべきである。複数のメモリアクセス要求を受け取ると、第１のスケジューラは、メモリシステムのすべてのスケジューラにメモリチャネル占有要求を送ることができる。この実施形態では、実施形態２が、特定の説明のための一例として使用される。
１２０４．第２のスケジューラは、第２のスケジューラに対応するメモリチャネルがアイドル状態にあるかどうかを検出し、はいの場合、１２０５を実行し、又はそうでない場合、１２０９を実行する。
１２０５．第２のスケジューラは、第１のスケジューラが第２のスケジューラに対応するメモリチャネルを占有することを許可し、メモリチャネル占有要求に応答して第１のスケジューラに確認応答を送る。
１２０６．第１のスケジューラは、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取る。
１２０７．第１のスケジューラは、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
１２０８．第２のスケジューラに対応するメモリモジュールは、第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求の宛先アドレスに従って、メモリモジュール間の伝送リンクを通して、第２のメモリアクセス要求を宛先メモリモジュール、すなわち、第１のスケジューラに対応するメモリモジュールに送る。
１２０９．第２のスケジューラは、第１のスケジューラによって送られたメモリチャネル占有要求を拒否する。
【０１２０】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。
【０１２１】
この実施形態で提供するメモリモジュールアクセス方法は、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１２２】
好ましい解決策として、この実施形態の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１２３】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、複数のメモリアクセス要求を受け取ると、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、第２のスケジューラ）に対応するメモリチャネルを通して送り、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態８
【０１２４】
本発明のこの実施形態は、図１０及び図１１に示した方法を実施することができるメモリコントローラを提供し、ここで、メモリコントローラは、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、メモリコントローラは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立される。
【０１２５】
具体的には、メモリコントローラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【０１２６】
メモリコントローラは、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【０１２７】
具体的には、メモリコントローラは、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１２８】
図１３に示すように、メモリコントローラは、少なくとも、第１のスケジューラ１３０１と第２のスケジューラ１３０２とを含み、ここで、第１のスケジューラ１３０１は第１のメモリチャネルに対応しており、第２のスケジューラ１３０２は第２のメモリチャネルに対応している。
【０１２９】
第１のスケジューラ１３０１は、第２のスケジューラ１３０２にメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラ１３０２に対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラ１３０１は、メモリチャネル占有要求に応答して第２のスケジューラ１３０２によって返される確認応答を受け取るようにさらに構成される。
【０１３０】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ１３０１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ１３０１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【０１３１】
オプションの解決策として、第１のスケジューラ１３０１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ１３０１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ１３０１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するメモリコントローラによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
【０１３２】
メモリコントローラの各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立することに留意すべきである。
【０１３３】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１３４】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１３５】
本発明のこの実施形態で提供するメモリコントローラによれば、複数のメモリアクセス要求を受け取ると、メモリコントローラの第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、第２のスケジューラ）に対応するメモリチャネルを通して送り、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態９
【０１３６】
本発明のこの実施形態は、図１０及び図１１に示した方法を実施することができるＣＰＵを提供する。図１４に示すように、ＣＰＵはメモリコントローラ１４００を含み、ここで、メモリコントローラ１４００は、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、メモリコントローラ１４００は複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立される。
【０１３７】
メモリコントローラ１４００は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【０１３８】
メモリコントローラ１４００は、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【０１３９】
さらに、メモリコントローラ１４００は、具体的には、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１４０】
図１５に示すように、メモリコントローラ１４００は、少なくとも、第１のスケジューラ１４０１と第２のスケジューラ１４０２とを含み、ここで、第１のスケジューラ１４０１は第１のメモリチャネルに対応しており、第２のスケジューラ１４０２は第２のメモリチャネルに対応している。
【０１４１】
第１のスケジューラ１４０１は、第２のスケジューラ１４０２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ１４０２に対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラ１４０１は、メモリチャネル占有要求に応答して第２のスケジューラ１４０２によって返される確認応答を受け取るようにさらに構成される。
【０１４２】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ１４０１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ１４０１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【０１４３】
オプションの解決策として、第１のスケジューラ１４０１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ１４０１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ１４０１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するＣＰＵによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態では限定されない。
【０１４４】
この実施形態では、メモリコントローラ１４００の各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立することに留意すべきである。この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１４５】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１４６】
本発明のこの実施形態で提供するＣＰＵはメモリコントローラを含む。複数のメモリアクセス要求を受け取ると、メモリコントローラの第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、第２のスケジューラ）に対応するメモリチャネルを通して送り、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態１０
【０１４７】
理解しやすくするために、この実施形態では、本発明で提供される技術的解決策を説明するために一例として２つのスケジューラが使用される。
【０１４８】
この実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供する。図１６に示すように、メモリシステムはスケジューラ０とスケジューラ１とを含み、ここで、スケジューラ０はメモリチャネル０に対応しており、スケジューラ１はメモリチャネル１に対応しており、メモリチャネル０は、メモリモジュール０、メモリモジュール２、及びメモリモジュール４に接続され、メモリチャネル１は、メモリモジュール１、メモリモジュール３、及びメモリモジュール５に接続される。
【０１４９】
具体的には、図１６に示すように、伝送リンク１６１がスケジューラ０とスケジューラ１との間に確立され、スケジューラ０とスケジューラ１との間の通信に使用され、スケジューラ０は経路１と経路２とを有し、ここで、経路１はメモリチャネル０に接続され、経路２はメモリチャネル１に接続され、スケジューラ１は経路１と経路２とを有し、ここで、経路１はメモリチャネル１に接続され、経路２はメモリチャネル０に接続され、伝送リンク１６２が、メモリモジュール０とメモリモジュール１との間に確立され、メモリモジュール０とメモリモジュール１との間の通信に使用される。
【０１５０】
図１６に示すメモリシステムを参照すると、この実施形態で提供するメモリモジュールアクセス方法は以下のものを含む。
Ｓ１．スケジューラ０及びスケジューラ１は、伝送リンク１６１を使用することによって、送る予定のメモリアクセス要求の量を互いに交換する。
Ｓ２．少なくとも２つのメモリアクセス要求を受け取ると、スケジューラ０は、経路１を通して第１のメモリアクセス要求を送り、さらに、スケジューラ１が、送られる必要があるメモリアクセス要求を現在有しているかどうかを検査し、スケジューラ１が、送られる必要があるメモリアクセス要求を現在有していない場合、同じスケジューリングタイムスロットで経路２を通して第２のメモリアクセス要求を送る。
一般に、スケジューラ０によって受け取られるメモリアクセス要求の宛先アドレスは、メモリチャネル０に対応するメモリモジュール、すなわち、メモリモジュール０、メモリモジュール２、又はメモリモジュール４に位置し、スケジューラ１によって受け取られるメモリアクセス要求の宛先アドレスは、メモリチャネル１に対応するメモリモジュール、すなわち、メモリモジュール１、メモリモジュール３、又はメモリモジュール５に位置することに留意すべきである。
Ｓ３．第２のメモリアクセス要求をスケジューラ０の経路２を通してメモリチャネル１に送り、メモリモジュール１は第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求を伝送リンク１５２を通してメモリモジュール０に転送し、メモリモジュール０を使用することによって第２のメモリアクセス要求を宛先メモリモジュールに転送する。
【０１５１】
前述のＳ１からＳ３において、スケジューラ０は、スケジューラ０で受け取ったメモリアクセス要求をスケジューラ１に対応するメモリチャネル（すなわち、メモリチャネル１）にオフロードすることに留意すべきである。同じ方法によれば、この実施形態のスケジューラ１は、スケジューラ１で受け取ったメモリアクセス要求をスケジューラ０に対応するメモリチャネルにオフロードすることができ、これは、本明細書では再度説明されない。
【０１５２】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供する方法によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられそれによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態１１
【０１５３】
図１６では、二重チャネルメモリシステムが、説明のための一例として使用されている。本発明で提供するメモリモジュールアクセス方法は、多重チャネルシステムに適用可能である。次に、この実施形態では、Ｎチャネルメモリシステムが、さらなる説明のための一例として使用される。
【０１５４】
Ｎチャネルメモリシステムは、Ｎ個のスケジューラ、Ｎ個のメモリチャネル、及びＮ個のメモリモジュールを含み、ここで、Ｎ個のスケジューラは、スケジューラ０、スケジューラ１、…、及びスケジューラＮ−１としてマーク付けすることができ、Ｎ個のメモリチャネルは、メモリチャネル０、メモリチャネル１、…、及びメモリチャネルＮ−１としてマーク付けされ、Ｎ個のメモリモジュールは、メモリモジュール０、メモリモジュール１、…、及びメモリモジュールＮ−１としてマーク付けされる。スケジューラ、メモリチャネル、及びメモリモジュールは、１対１対応があり、例えば、スケジューラ０はメモリチャネル０に対応しており、メモリチャネル０はメモリモジュール０に対応している。
【０１５５】
各スケジューラはＮ個の経路（経路１、経路２、…、及び経路Ｎとしてマーク付けすることができる）を有し、Ｎ個の経路は、それぞれ、Ｎ個のメモリチャネルに接続される。統計をとりやすくするために、経路とメモリチャネルとの間の接続関係は、事前設定規則に従って設定することができる。例えば、経路とメモリチャネルとの間の接続関係は、スケジューラｎ（０≦ｎ≦Ｎ−１）の経路ｍ（０≦ｍ≦Ｎ）がメモリチャネル（ｎ＋ｍ）ｍｏｄＮに接続される方法に従って設定することができ、ここで、ｍｏｄは、剰余を得ることを示すのに使用されている。
【０１５６】
ｘ個のメモリアクセス要求を受け取ったとき、Ｎチャネルがすべてアイドル状態にある場合、スケジューラｎは、局所的な経路１、経路２、…、及び経路（ｎ＋ｘ）ｍｏｄＮを使用することによってｘ個のメモリアクセス要求を連続的に送ることができる。ｘ≦Ｎのとき、ｘ個のメモリアクセス要求は、１つのスケジューリングタイムスロットでメモリモジュールに送ることができ、Ｎ＜ｘ≦２Ｎのとき、ｘ個のメモリアクセス要求は、２つのスケジューリングタイムスロットでメモリモジュールに送ることができる。残りは類推して導き出すことができ、これは、本明細書では再度説明されない。
【０１５７】
理解しやすくするために、次いで、３チャネルメモリシステムが、説明のための一例として使用される。図１７に示すように、メモリシステムは、スケジューラ０、スケジューラ１、及びスケジューラ２を含み、ここで、スケジューラ０はメモリチャネル０に対応しており、スケジューラ１はメモリチャネル１に対応しており、スケジューラ２はメモリチャネル２に対応しており、メモリチャネル０はメモリモジュール０に接続され、メモリチャネル１はメモリモジュール１に接続され、メモリチャネル２はメモリモジュール２に接続される。
【０１５８】
具体的には、図１７に示すように、伝送リンク１７１が、スケジューラ０とスケジューラ１との間に確立され、伝送リンク１７２が、スケジューラ１とスケジューラ２との間に確立され、伝送リンク１７３が、スケジューラ０とスケジューラ２との間に確立され、伝送リンク１７１から１７３は、スケジューラ０、スケジューラ１、及びスケジューラ２の間の通信に使用される。
【０１５９】
スケジューラ０は、経路１、経路２、及び経路３を有し、ここで、経路１はメモリチャネル０に接続され、経路２はメモリチャネル１に接続され、経路３はメモリチャネル２に接続され、スケジューラ１は、経路１、経路２、及び経路３を有し、ここで、経路１はメモリチャネル１に接続され、経路２はメモリチャネル３に接続され、経路３はメモリチャネル０に接続され、スケジューラ２は、経路１、経路２、及び経路３を有し、ここで、経路１はメモリチャネル２に接続され、経路２はメモリチャネル０に接続され、経路３はメモリチャネル１に接続される。
【０１６０】
伝送リンク１７４が、メモリモジュール０とメモリモジュール１との間に確立され、メモリモジュール０とメモリモジュール１との間の通信に使用され、伝送リンク１７５が、メモリモジュール１とメモリモジュール２との間に確立され、メモリモジュール１とメモリモジュール２との間の通信に使用される。
【０１６１】
図１７に示す３チャネルメモリシステムによれば、メモリモジュールアクセス方法が、具体的には、以下のように実施される。
（１）スケジューラｎが複数のメモリアクセス要求を受け取ると、経路１を使用することによって、送られる必要がある第１のメモリアクセス要求を送る。
（２）スケジューラｎが、送られる必要がある第２のメモリアクセス要求を有する場合、スケジューラ（ｎ＋１）ｍｏｄ３が、送られる必要があるメモリアクセス要求を現在有しているかどうかを検出し、有していなければ、送られる必要がある第２のメモリアクセス要求を経路２に送る。
スケジューラ（ｎ＋１）ｍｏｄ３が、送られる必要があるメモリアクセス要求を現在有している場合、スケジューラ（ｎ＋２）ｍｏｄ３が、送られる必要があるメモリアクセス要求を現在有しているかどうかを検出し、有していなければ、送られる必要がある第２のメモリアクセス要求を経路３に送る。
（３）スケジューラｎが、第３の準備のできた要求を有し、スケジューラ（ｎ＋１）ｍｏｄ３が、送る必要があるメモリアクセス要求を現在有しておらず、スケジューラ（ｎ＋２）ｍｏｄ３もまた送る必要があるメモリアクセス要求を現在有していない場合、スケジューラｎは、送られる必要がある第２のメモリを経路２に送り、送られる必要がある第３のメモリ要求を経路３に送る。
【０１６２】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供する方法によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
【０１６３】
実施手法の前述の説明に基づいて、当業者は、必要なユニバーサルハードウェアに加えてソフトウェアによって、又はハードウェアのみによって本発明が実施され得ることを明確に理解することができる。ほとんどの状況において、前者が好ましい実施手法である。そのような理解に基づいて、本発明の技術的解決策が本質的に、又は先行技術に寄与する部分が、ソフトウェア製品の形態で実施され得る。コンピュータソフトウェア製品は、コンピュータのフロッピーディスク、ハードディスク、又は光ディスクなどの可読記憶媒体に記憶され、本発明の実施形態で説明した方法を実行するためにコンピュータデバイス（パーソナルコンピュータ、サーバ、又はネットワークデバイスとすることができる）に指示するためのいくつかの命令を含む。
【０１６４】
前述の説明は、単に本発明の特定の実施手法であり、本発明の保護範囲を限定することは意図されていない。本発明で開示した技術的範囲内において当業者が容易に考え出すいかなる変形又は置換も本発明の保護範囲内にあるものとする。それゆえに、本発明の保護範囲は特許請求の範囲の保護範囲によって決まるものとする。
【図１】
2016531372.tif 000003
【図２】
2016531372.tif 000004
【図３】
2016531372.tif 000005
【図４】
2016531372.tif 000006
【図５】
2016531372.tif 000007
【図６】
2016531372.tif 000008
【図７】
2016531372.tif 000009
【図８】
2016531372.tif 000010
【図９】
2016531372.tif 000011
【図１０】
2016531372.tif 000012
【図１１】
2016531372.tif 000013
【図１２】
2016531372.tif 000014
【図１３】
2016531372.tif 000015
【図１４】
2016531372.tif 000016
【図１５】
2016531372.tif 000017
【図１６】
2016531372.tif 000018
【図１７】
2016531372.tif 000019
【手続補正書】
【提出日】平成28年4月21日(2016.4.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
メモリシステムに適用されるメモリモジュールアクセス方法であって、前記メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、伝送リンクが前記第１のスケジューラと前記第２のスケジューラとの間に確立され、
前記方法が、
前記第１のスケジューラによって、前記第２のスケジューラの送る予定のメモリアクセス要求の量を取得するステップと、
前記第１のスケジューラによって、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送るステップと
を含む、方法。
【請求項２】
前記第１のスケジューラによって、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送る前記ステップが、
前記第１のスケジューラによって、少なくとも２つのメモリアクセス要求を受け取るステップを含み、前記少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
前記第１のメモリアクセス要求が前記第１のスケジューラに対応する前記第１のメモリチャネルを通して送られるとき、前記第２のメモリアクセス要求が、送る予定の状態にあり；前記第２のスケジューラに対応する前記第２のメモリチャネルがアイドル状態にある場合、前記第１のスケジューラが、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る、請求項１に記載の方法。
【請求項３】
前記第１のスケジューラによって、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップの前に、前記方法が、
前記第１のスケジューラによって、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するステップと、
前記第１のスケジューラによって、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るステップと
をさらに含む、請求項２に記載の方法。
【請求項４】
前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項３に記載の方法。
【請求項５】
前記第１のスケジューラが、少なくとも２つの経路を有し、前記少なくとも２つの経路を使用することによって前記第１のメモリチャネル及び前記第２のメモリチャネルへの接続を確立する、請求項１から４のいずれか一項に記載の方法。
【請求項６】
メモリシステムに適用されるメモリモジュールアクセス方法であって、前記メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、
前記方法が、
前記第１のスケジューラによって、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るステップと、
前記第１のスケジューラによって、前記第１のメモリチャネルを通して前記第１のメモリアクセス要求を送り、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るステップと
を含む、方法。
【請求項７】
前記第１のスケジューラによって、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップは、
前記第２のメモリチャネルがアイドル状態にあるとき、前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るステップ
を含む、請求項６に記載の方法。
【請求項８】
前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送る前記ステップの前に、前記方法が、
前記第１のスケジューラによって、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するステップと、
前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るステップと
を含む、請求項７に記載の方法。
【請求項９】
前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項８に記載の方法。
【請求項１０】
各スケジューラが、複数の経路を有し、前記複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する、請求項６から９のいずれか一項に記載の方法。
【請求項１１】
少なくとも、第１のスケジューラと第２のスケジューラとを含む、メモリシステムに適用されるメモリコントローラであって、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、伝送リンクが前記第１のスケジューラと前記第２のスケジューラとの間に確立され、
前記第１のスケジューラが、前記第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
前記第１のスケジューラが、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送るようにさらに構成される、メモリコントローラ。
【請求項１２】
前記第１のスケジューラが、少なくとも２つのメモリアクセス要求を受け取るように構成され、前記少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
前記第１のスケジューラは、前記第２のメモリアクセス要求が、送る予定の状態にあるとき、前記第２のスケジューラに対応する前記第２のメモリチャネルがアイドル状態にある場合、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るようにさらに構成される、請求項１１に記載のメモリコントローラ。
【請求項１３】
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するようにさらに構成され、
前記第１のスケジューラが、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項１２に記載のメモリコントローラ。
【請求項１４】
前記第１のスケジューラで受け取られた前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項１３に記載のメモリコントローラ。
【請求項１５】
前記第１のスケジューラが、少なくとも２つの経路を有し、前記少なくとも２つの経路を使用することによって前記第１のメモリチャネル及び前記第２のメモリチャネルへの接続を確立する、請求項１１から１４のいずれか一項に記載のメモリコントローラ。
【請求項１６】
メモリコントローラを含む、メモリシステムに適用される中央処理装置ＣＰＵであって、前記メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、前記第１のスケジューラが第１のメモリチャネルに対応しており、前記第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、前記メモリシステムが複数のメモリモジュールを含み、伝送リンクが前記複数のメモリモジュール間に確立され、伝送リンクが前記第１のスケジューラと前記第２のスケジューラとの間に確立され、
前記第１のスケジューラが、前記第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
前記第１のスケジューラが、メモリアクセス要求を受け取り、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記メモリアクセス要求を送るようにさらに構成される、ＣＰＵ。
【請求項１７】
前記第１のスケジューラが、少なくとも２つのメモリアクセス要求を受け取るように構成され、前記少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
前記第１のスケジューラは、前記第２のメモリアクセス要求が、送る予定の状態にあるとき、前記第２のスケジューラに対応する前記第２のメモリチャネルがアイドル状態にある場合、前記第２のスケジューラに対応する前記第２のメモリチャネルを通して前記第２のメモリアクセス要求を送るようにさらに構成される、請求項１６に記載のＣＰＵ。
【請求項１８】
前記第１のスケジューラが、前記第２のスケジューラにメモリチャネル占有要求を送って、前記第２のメモリアクセス要求を送るために前記第２のスケジューラに対応する前記第２のメモリチャネルを占有することを要求するようにさらに構成され、
前記第１のスケジューラが、前記メモリチャネル占有要求に応答して前記第２のスケジューラによって返される確認応答を受け取るようにさらに構成される、請求項１７に記載のＣＰＵ。
【請求項１９】
前記第１のスケジューラで受け取られた前記第２のメモリアクセス要求の宛先アドレスが、前記第１のメモリチャネルに対応するメモリモジュールに位置する、請求項１８に記載のＣＰＵ。
【請求項２０】
前記第１のスケジューラが、少なくとも２つの経路を有し、前記少なくとも２つの経路を使用することによって前記第１のメモリチャネル及び前記第２のメモリチャネルへの接続を確立する、請求項１６から１９のいずれか一項に記載のＣＰＵ。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ技術の分野に関し、特に、メモリモジュールアクセス方法及び装置に関する。
【背景技術】
【０００２】
コンピュータ技術の分野において、メモリアクセス帯域幅を改善するために、多重チャネルメモリシステムが多くのコンピュータで使用されている。多重チャネルメモリシステムは複数のメモリチャネルを含み、メモリコントローラは複数のメモリチャネルを使用することによってメモリモジュールと通信する。多重チャネルメモリシステムでは、メモリアドレスとチャネルと間のマッピング関係が、メモリモジュールのグルーピングに従って予め決められ、その結果、チャネルの負荷の平衡が保たれる。メモリアクセス要求が受け取られると、対応するチャネルが、メモリアクセス要求のメモリアドレスに応じて目標チャネルとして決定され、メモリアクセス要求は目標チャネルを通して送られる。メモリシステムが２つのメモリモジュールを含むと仮定すると、メモリアドレスとチャネルとの間のマッピング関係は、メモリアドレスの特定のビットの値によって決定することができる。例えば、メモリアドレスの７番目のビットが「０」であるメモリアクセス要求は、チャネル０を通して目標メモリモジュールに送られ、メモリアドレスの７番目のビットが「１」であるメモリアクセス要求は、チャネル１を通して目標メモリモジュールに送られる。
【０００３】
本発明の実施の間に、先行技術が少なくとも以下の問題を有する。メモリモジュールとメモリコントローラとの間のチャネルが互いに独立しているので、複数の受け取られたメモリアクセス要求が複数のチャネルの間で不均衡な方法で分配されると、例えば、連続して受け取られたｎ個のメモリアクセス要求がすべてチャネル１を通して目標メモリモジュールに送られると、チャネル１は過度に詰め込まれる可能性があり、他のチャネルはアイドル状態にあり、それにより、帯域幅リソースの浪費が引き起こされ、さらに、比較的低いメモリアクセス帯域幅がもたらされる。
【発明の概要】
【０００４】
本発明の実施形態は、複数の受け取られたメモリアクセス要求が複数のチャネルの間に不均衡な方法で分配されると、帯域幅リソースの浪費が引き起こされ、それにより、比較的低いメモリアクセス帯域幅がもたらされるという先行技術の問題を解決することができるメモリモジュールアクセス方法及び装置を提供する。
【０００５】
前述の目的を達成するために、本発明の実施形態は以下の技術的解決策を使用する。
【０００６】
第１の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立され、
この方法は、
第１のスケジューラによって、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するステップと、
第１のスケジューラによって、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るステップと
を含む。
【０００７】
第１の可能な実施手法では、第１のスケジューラによって、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るステップは、
第１のスケジューラによって、少なくとも２つのメモリアクセス要求を受け取るステップを含み、ここで、少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、ここで、
第１のメモリアクセス要求が第１のスケジューラに対応する第１のメモリチャネルを通して送られるとき、第２のメモリアクセス要求が、送る予定の状態にあり；第２のスケジューラに対応する第２のメモリチャネルがアイドル状態にある場合、第１のスケジューラが、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
【０００８】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラによって、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップの前に、この方法は、
第１のスケジューラによって、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するステップと、
第１のスケジューラによって、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るステップと
を含む。
【０００９】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００１０】
第１の態様、又は第１の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、第１のスケジューラが、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００１１】
第２の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
この方法は、
第１のスケジューラによって、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るステップと、
第１のスケジューラによって、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップと
を含む。
【００１２】
第１の可能な実施手法では、第１のスケジューラによって、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップは、
第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップ
を含む。
【００１３】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップの前に、この方法は、
第１のスケジューラによって、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するステップと、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るステップと
をさらに含む。
【００１４】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００１５】
第２の態様、又は第２の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００１６】
第３の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
この方法は、
第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るステップであり、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する、受け取るステップと、
第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップと
を含む。
【００１７】
第１の可能な実施手法では、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップは、
第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップ
を含む。
【００１８】
第１の可能な実施手法を参照して、第２の可能な実施手法では、メモリシステムが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、
第２のメモリチャネルを通して第２のメモリアクセス要求を送るステップの前に、この方法は、
第１のスケジューラによって、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するステップと、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るステップと
をさらに含む。
【００１９】
第３の態様、又は第３の態様の第１の可能な実施手法若しくは第２の可能な実施手法を参照して、第３の可能な実施手法では、各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００２０】
第４の態様によれば、本発明の一実施形態は、メモリシステムに適用されるメモリコントローラを提供し、ここで、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立され、
第１のスケジューラが、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
第１のスケジューラが、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。
【００２１】
第１の可能な実施手法では、第１のスケジューラが、少なくとも２つのメモリアクセス要求を受け取るように構成され、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
第１のスケジューラは、第２のメモリアクセス要求が、送る予定の状態にあるとき、第２のスケジューラに対応する第２のメモリチャネルがアイドル状態にある場合、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００２２】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００２３】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００２４】
第４の態様、又は第４の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、第１のスケジューラが、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００２５】
第５の態様によれば、本発明の一実施形態は、メモリコントローラを提供し、ここで、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
第１のスケジューラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００２６】
第１の可能な実施手法では、第１のスケジューラは、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００２７】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００２８】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００２９】
第５の態様、又は第５の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００３０】
第６の態様によれば、本発明の一実施形態は、メモリコントローラを提供し、ここで、メモリコントローラが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
メモリコントローラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置し、
メモリコントローラが、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００３１】
第１の可能な実施手法では、メモリコントローラは、具体的には、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００３２】
第１の可能な実施手法を参照して、第２の可能な実施手法では、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、
第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００３３】
第６の態様、又は第６の態様の第１の可能な実施手法若しくは第２の可能な実施手法を参照して、第３の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００３４】
第７の態様によれば、本発明の一実施形態は、メモリシステムに適用される中央処理装置ＣＰＵを提供し、ここで、ＣＰＵはメモリコントローラを含み、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリシステムが複数のメモリモジュールを含み、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立され、
第１のスケジューラが、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成され、
第１のスケジューラが、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。
【００３５】
第１の可能な実施手法では、第１のスケジューラは、少なくとも２つのメモリアクセス要求を受け取るように構成され、少なくとも２つのメモリアクセス要求が、第１のメモリアクセス要求と第２のメモリアクセス要求とを含み、
第１のスケジューラは、第２のメモリアクセス要求が、送る予定の状態にあるとき、第２のスケジューラに対応する第２のメモリチャネルがアイドル状態にある場合、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００３６】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００３７】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置し、第１のメモリチャネルが、第１のスケジューラに対応するメモリチャネルである。
【００３８】
第７の態様、又は第７の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、第１のスケジューラが、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００３９】
第８の態様によれば、本発明の一実施形態は、メモリコントローラを含むＣＰＵを提供し、ここで、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
第１のスケジューラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００４０】
第１の可能な実施手法では、第１のスケジューラは、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００４１】
第１の可能な実施手法を参照して、第２の可能な実施手法では、第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００４２】
第２の可能な実施手法を参照して、第３の可能な実施手法では、第１のスケジューラで受け取られた第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００４３】
第８の態様、又は第８の態様の第１の可能な実施手法若しくは第２の可能な実施手法若しくは第３の可能な実施手法を参照して、第４の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００４４】
第９の態様によれば、本発明の一実施形態は、メモリコントローラを含むＣＰＵを提供し、ここで、メモリコントローラが、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルが１つのメモリモジュールに対応しており、メモリコントローラが複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、
メモリコントローラが、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスが、第１のメモリチャネルに対応するメモリモジュールに位置し、
メモリコントローラが、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００４５】
第１の可能な実施手法では、メモリコントローラは、具体的には、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００４６】
第１の可能な実施手法を参照して、第２の可能な実施手法では、メモリコントローラが、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラが第１のメモリチャネルに対応しており、第２のスケジューラが第２のメモリチャネルに対応しており、
第１のスケジューラが、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラが、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取るようにさらに構成される。
【００４７】
第９の態様、又は第９の態様の第１の可能な実施手法若しくは第２の可能な実施手法を参照して、第３の可能な実施手法では、メモリコントローラの各スケジューラが、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【００４８】
本発明のこの実施形態で提供するメモリモジュールアクセス方法及び装置によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、複数のメモリチャネルを通して送ることができる。本発明の実施形態で提供する方法を使用することによって、複数の受け取られたメモリアクセス要求が複数のメモリチャネルの間で不均衡な方法で分配される場合でさえ、複数の受け取られたメモリアクセス要求は、アイドル状態の別のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
【００４９】
本発明の実施形態又は先行技術の技術的解決策をより明確に説明するために、以下では、実施形態又は先行技術を説明するのに必要な添付図面を簡単に導入する。明らかに、以下の説明における添付図面は、本発明のいくつかの実施形態を示しているにすぎず、当業者は、さらに、創造的な努力なしにこれらの添付図面から他の図面を引き出すことができる。
【図面の簡単な説明】
【００５０】
【図１】本発明の実施形態１によるメモリモジュールアクセス方法の概略流れ図である。
【図２】本発明の実施形態１によるメモリモジュールアクセス方法の概略流れ図である。
【図３】本発明の実施形態２によるメモリコントローラの構造ブロック図である。
【図４】本発明の実施形態２によるメモリコントローラの構造ブロック図である。
【図５】本発明の実施形態３によるＣＰＵの構造ブロック図である。
【図６】本発明の実施形態３によるＣＰＵの構造ブロック図である。
【図７】本発明の実施形態４によるメモリモジュールアクセス方法の概略流れ図である。
【図８】本発明の実施形態４によるメモリモジュールアクセス方法の概略流れ図である。
【図９】本発明の実施形態５によるメモリコントローラの構造ブロック図である。
【図１０】本発明の実施形態６によるＣＰＵの構造ブロック図である。
【図１１】本発明の実施形態７によるメモリモジュールアクセス方法の概略流れ図である。
【図１２】本発明の実施形態７によるメモリモジュールアクセス方法の概略流れ図である。
【図１３】本発明の実施形態８によるメモリコントローラの構造ブロック図である。
【図１４】本発明の実施形態９によるＣＰＵの構造ブロック図である。
【図１５】本発明の実施形態９によるＣＰＵの構造ブロック図である。
【図１６】本発明の実施形態１０による二重チャネルメモリシステムの構造図である。
【図１７】本発明の実施形態１１による３チャネルメモリシステムの構造図である。
【発明を実施するための形態】
【００５１】
以下では、本発明の実施形態における技術的解決策が、本発明の実施形態の添付図面を参照して明確に完全に説明される。明らかに、説明される実施形態は、本発明の実施形態のすべてではなく一部にすぎない。創造的な努力なしに本発明の実施形態に基づいて当業者によって得られるすべての他の実施形態は、本発明の保護範囲内にあるものとする。
実施形態１
【００５２】
本発明のこの実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムは、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラは第１のメモリチャネルに対応しており、第２のスケジューラは第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立される。
【００５３】
図１に示すように、この方法は以下のものを含む。
１０１．第１のスケジューラは、第２のスケジューラの送る予定のメモリアクセス要求の量を取得する。
１０２．第１のスケジューラは、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送る。
【００５４】
この実施形態では、メモリシステムは複数のスケジューラを含み、通信リンクが複数のスケジューラ間に確立され、その結果、各スケジューラは別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、それゆえに、メモリアクセス要求を受け取った後、各スケジューラは、アイドルメモリチャネルを決定し、アイドルメモリチャネルを通してメモリアクセス要求を送ることができる。
【００５５】
さらに、図１に示す方法に基づいて、本発明のこの実施形態は、より詳細なメモリモジュールアクセス方法を提供する。図２に示すように、この方法は以下のものを含む。
２０１．第１のスケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を実時間で取得する。ここで、第１のスケジューラは複数のスケジューラ中の任意のスケジューラであり、別のスケジューラは、第１のスケジューラ以外の複数のスケジューラ中の残りのスケジューラである。
２０２．第１のスケジューラは、少なくとも２つのメモリアクセス要求を受け取る。ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。一般に、第１のスケジューラで受け取られるメモリアクセス要求の宛先アドレスはすべて第１のスケジューラに対応するメモリモジュールに位置し、すなわち、第１のスケジューラに対応するメモリチャネルが第１のメモリチャネルとしてマーク付けされている場合、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置することに留意すべきである。
２０３．第１のスケジューラが第１のメモリチャネルを通して第１のメモリアクセス要求を送る場合、第２のメモリアクセス要求は、送る予定の状態にある。
２０４．第１のスケジューラは、別のスケジューラに対応するメモリチャネルの状態を問い合わせて、補助スケジューラを決定する。ここで、補助スケジューラに対応するメモリチャネルはアイドル状態にある。
具体的には、第１のスケジューラは、以下の方法、すなわち、第１のスケジューラによって、別のスケジューラの送る予定のメモリアクセス要求の量を問い合わせるステップと、送る予定のメモリアクセス要求の量が０である補助スケジューラを補助スケジューラとして決定するステップとを使用することによって補助スケジューラを決定することができる。
理解しやすくするために、この実施形態では、決定された補助スケジューラは、第２のスケジューラとしてマーク付けされており、第２のスケジューラの現在の送る予定のメモリアクセス要求の量は０であり、第２のスケジューラに対応するメモリチャネルはアイドル状態にある。
第２のスケジューラの現在の送る予定のメモリアクセス要求の量が０であるということは、第２のスケジューラに対応するメモリチャネルが絶対的なアイドル状態にあるということを示していることに留意すべきである。オプションの解決策として、第２のスケジューラに対応するメモリチャネルが相対的なアイドル状態にある（例えば、第２のスケジューラの送る予定のメモリアクセス要求の量が０ではないが、第２のスケジューラの送る予定のメモリアクセス要求の量が第１のスケジューラの送る予定のメモリアクセス要求の量よりも非常に少ない）場合、第１のスケジューラは、やはり、第２のスケジューラを補助スケジューラとして決定し、受け取ったメモリアクセス要求の一部を、第２のスケジューラに対応するメモリチャネルを通して送ることが強調されるべきである。そのような方法を使用することによって、大量のメモリアクセス要求を受け取ると、第１のスケジューラは、第１のスケジューラの送る予定のメモリアクセス要求の一部を補助スケジューラに遅れずに移送することができ、その結果、第１のスケジューラはより多くのメモリアクセス要求をバッファに入れ、それによって、メモリシステムの通信能力を改善することができる。
２０５．第１のスケジューラは、第２のスケジューラにメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求する。
２０６．第２のスケジューラは、第２のスケジューラに対応するメモリチャネルがアイドル状態にあると決定し、第１のスケジューラが第２のスケジューラに対応する第２のメモリチャネルを占有することを許可し、メモリチャネル占有要求に応答して第１のスケジューラに確認応答を送る。
２０７．第１のスケジューラは、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取る。
２０８．第１のスケジューラは、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
２０９．第２のスケジューラに対応するメモリモジュールは、第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求の宛先アドレスに従って、メモリモジュール間の伝送リンクを通して、第２のメモリアクセス要求を宛先メモリモジュール、すなわち、第１のスケジューラに対応するメモリモジュールに送る。
【００５６】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。
【００５７】
この実施形態で提供するメモリモジュールアクセス方法は、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることが強調されるべきである。
【００５８】
好ましい解決策として、この実施形態の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００５９】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供する方法によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態２
【００６０】
メモリシステムに適用され、図１及び図２に示したメモリモジュールアクセス方法を実施することができるメモリコントローラを、本発明のこの実施形態は提供する。図３に示すように、メモリコントローラは、少なくとも、第１のスケジューラ３１と第２のスケジューラ３２とを含み、第１のスケジューラ３１は第１のメモリチャネルに対応しており、第２のスケジューラ３２は第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラ３１と第２のスケジューラ３２との間に確立される。
【００６１】
第１のスケジューラ３１は、第２のスケジューラの送る予定のメモリアクセス要求の量を取得するように構成される。
【００６２】
第１のスケジューラ３１は、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。図３の第１のスケジューラ３１及び第２のスケジューラ３２は、単に説明のための一例として使用されていることに留意すべきである。実際の用途では、メモリコントローラは、複数のスケジューラを含む。図４に示すように、メモリコントローラは、第３のスケジューラ３３、第４のスケジューラ３４などのような複数のスケジューラをさらに含むことができる。通信リンクが、メモリシステムのスケジューラ間に確立され、その結果、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができる。このようにして、メモリアクセス要求を受け取った後、各スケジューラは、アイドルメモリチャネルを決定し、アイドルメモリチャネルを通してメモリアクセス要求を送ることができる。
【００６３】
具体的には、第１のスケジューラ３１は、少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。
【００６４】
第１のスケジューラ３１は、第２のメモリアクセス要求が、送る予定の状態にあるとき、第２のスケジューラ３２に対応する第２のメモリチャネルがアイドル状態にある場合、第２のスケジューラ３２に対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【００６５】
具体的には、第１のスケジューラ３１は、第２のスケジューラ３２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ３２に対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、第１のスケジューラ３１は、メモリチャネル占有要求に応答して第２のスケジューラ３２によって返される確認応答を受け取るようにさらに構成される。
【００６６】
一般に、第１のスケジューラ３１が、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ３１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ３１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【００６７】
オプションの解決策として、第１のスケジューラ３１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ３１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ３１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するメモリコントローラによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
【００６８】
第１のスケジューラ３１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００６９】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。例えば、第１のスケジューラ３１は、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００７０】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【００７１】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００７２】
本発明のこの実施形態で提供するメモリコントローラの各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供するメモリコントローラでは、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態３
【００７３】
メモリシステムに適用され、先の図１及び図２に示した方法を実施することができるＣＰＵを、本発明のこの実施形態は提供する。図５に示すように、ＣＰＵはメモリコントローラ５０を含み、ここで、メモリコントローラ５０は第１のスケジューラ５１と第２のスケジューラ５２とを含み、第１のスケジューラ５１は第１のメモリチャネルに対応しており、第２のスケジューラ５２は第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラ５１と第２のスケジューラ５２との間に確立される。
【００７４】
具体的には、第１のスケジューラ５１は、第２のスケジューラ５２の送る予定のメモリアクセス要求の量を取得するように構成される。
【００７５】
第１のスケジューラ５１は、メモリアクセス要求を受け取り、第２のスケジューラに対応する第２のメモリチャネルを通してメモリアクセス要求を送るようにさらに構成される。図５の第１のスケジューラ５１及び第２のスケジューラ５２は、単に説明のための一例として使用されていることに留意すべきである。実際の用途では、メモリコントローラは、複数のスケジューラを含む。図６に示すように、メモリコントローラは、第３のスケジューラ５３、第４のスケジューラ５４などのような複数のスケジューラをさらに含むことができる。通信リンクがメモリシステムのスケジューラ間に確立され、その結果、各スケジューラは別のスケジューラの送る予定のメモリアクセス要求の量を取得することができる。このようにして、メモリアクセス要求を受け取った後、各スケジューラは、アイドルメモリチャネルを決定し、アイドルメモリチャネルを通してメモリアクセス要求を送ることができる。
【００７６】
具体的には、第１のスケジューラ５１は、少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。
【００７７】
第１のスケジューラ５１は、第２のメモリアクセス要求が、送る予定の状態にあるとき、第２のスケジューラ５２に対応するメモリチャネルがアイドル状態にある場合、第２のメモリアクセス要求を、第２のスケジューラ５２に対応するメモリチャネルを通して送るようにさらに構成される。
【００７８】
具体的には、第１のスケジューラ５１は、第２のスケジューラ５２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ５２に対応する第２のメモリチャネルを占有することを要求するようにさらに構成され、
第１のスケジューラ５１は、メモリチャネル占有要求に応答して第２のスケジューラ５２によって返される確認応答を受け取るようにさらに構成される。
【００７９】
第１のスケジューラ５１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００８０】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【００８１】
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するＣＰＵによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
【００８２】
この実施形態では、メモリコントローラの各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立することに留意すべきである。例えば、第１のスケジューラは、少なくとも２つの経路を有し、少なくとも２つの経路を使用することによって第１のメモリチャネル及び第２のメモリチャネルへの接続を確立する。
【００８３】
この実施形態で提供するＣＰＵは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【００８４】
好ましい解決策として、メモリコントローラ５０の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００８５】
本発明のこの実施形態で提供するＣＰＵはメモリコントローラを含む。メモリコントローラの各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供するＣＰＵでは、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態４
【００８６】
本発明のこの実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムは、少なくとも、第１のスケジューラと第２のスケジューラとを含み、第１のスケジューラは第１のメモリチャネルに対応しており、第２のスケジューラは第２のメモリチャネルに対応しており、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立され、伝送リンクが第１のスケジューラと第２のスケジューラとの間に確立される。
【００８７】
図７に示すように、この方法は以下のものを含む。
７０１．第１のスケジューラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取る。
７０２．第１のスケジューラは、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
【００８８】
この実施形態で提供する方法によれば、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、それによって、メモリチャネルの帯域幅リソースの利用度が改善され得る。
【００８９】
さらに、図７に示した方法に基づいて、本発明のこの実施形態は、より詳細なメモリモジュールアクセス方法をさらに提供する。図８に示すように、この方法は以下のものを含む。
８０１．第１のスケジューラは、少なくとも２つのメモリアクセス要求を受け取る。ここで、少なくとも２つのメモリアクセス要求は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む。一般に、第１のスケジューラで受け取られたメモリアクセス要求の宛先アドレスはすべて第１のスケジューラに対応するメモリモジュールに位置し、すなわち、第１のスケジューラに対応するメモリチャネルが第１のメモリチャネルとしてマーク付けされている場合、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置することに留意すべきである。
８０２．第１のスケジューラが第１のメモリチャネルを通して第１のメモリアクセス要求を送る場合、第２のメモリアクセス要求は、送る予定の状態にある。
８０３．第１のスケジューラは、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求する。
第２のスケジューラは、メモリシステムの複数のスケジューラ中の任意のスケジューラであることに留意すべきである。複数のメモリアクセス要求を受け取ると、第１のスケジューラは、メモリシステムのすべてのスケジューラにメモリチャネル占有要求を送ることができる。この実施形態では、第２のスケジューラが、特定の説明のための一例として使用されている。
８０４．第２のスケジューラは、第２のスケジューラに対応するメモリチャネルがアイドル状態にあるかどうかを検出し、はいの場合、８０５を実行し、又はそうでない場合、８０９を実行する。
８０５．第２のスケジューラは、第１のスケジューラが第２のスケジューラに対応する第２のメモリチャネルを占有することを許可し、メモリチャネル占有要求に応答して第１のスケジューラに確認応答を送る。
８０６．第１のスケジューラは、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取る。
８０７．第１のスケジューラは、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
８０８．第２のスケジューラに対応するメモリモジュールは、第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求の宛先アドレスに従って、メモリモジュール間の伝送リンクを通して、第２のメモリアクセス要求を宛先メモリモジュール、すなわち、第１のスケジューラに対応するメモリモジュールに送る。
８０９．第２のスケジューラは、第１のスケジューラによって送られたメモリチャネル占有要求を拒否する。
【００９０】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。この実施形態で提供するメモリモジュールアクセス方法は、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることが強調されるべきである。
【００９１】
好ましい解決策として、この実施形態の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【００９２】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、複数のメモリアクセス要求が受け取られると、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、複数のメモリアクセス要求が複数のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態５
【００９３】
本発明のこの実施形態は、図７及び図８に示した方法を実施することができるメモリコントローラを提供する。図９に示すように、メモリコントローラは、少なくとも、第１のスケジューラ９１と第２のスケジューラ９２とを含み、ここで、第１のスケジューラ９１は第１のメモリチャネルに対応しており、第２のスケジューラ９２は第２のメモリチャネルに対応しており、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、伝送リンクがメモリモジュール間に確立される。
【００９４】
第１のスケジューラ９１は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００９５】
具体的には、第１のスケジューラ９１は、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【００９６】
さらに、第１のスケジューラ９１は、第２のスケジューラ９２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ９２に対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラ９２によって返される確認応答を受け取るようにさらに構成される。
【００９７】
第１のスケジューラ９１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【００９８】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ９１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ９１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【００９９】
オプションの解決策として、第１のスケジューラ９１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ９１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ９１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するメモリコントローラによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
【０１００】
具体的には、メモリコントローラの各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【０１０１】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１０２】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１０３】
本発明のこの実施形態で提供するメモリコントローラでは、複数のメモリアクセス要求が受け取られると、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、複数のメモリアクセス要求が複数のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態６
【０１０４】
この実施形態は、図７及び図８に示した方法を実施することができるＣＰＵを提供する。図１０に示すように、ＣＰＵはメモリコントローラ１０００を含み、ここで、メモリコントローラ１０００は、少なくとも、第１のスケジューラ１００１と第２のスケジューラ１００２とを含み、第１のスケジューラは第１のメモリチャネルに対応しており、第２のスケジューラは第２のメモリチャネルに対応しており、各スケジューラはメモリチャネルに対応しており、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、メモリコントローラは複数のメモリモジュールを含み、ここで、伝送リンクが、複数のメモリモジュール間に前もって確立されている。
【０１０５】
第１のスケジューラ１００１は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１０６】
具体的には、第１のスケジューラ１００１は、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１０７】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ１００１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ１００１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【０１０８】
オプションの解決策として、第１のスケジューラ１００１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ１００１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ１００１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するＣＰＵによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
【０１０９】
さらに、第１のスケジューラ１００１は、第２のスケジューラ１００２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ１００２に対応する第２のメモリチャネルを占有することを要求し、
メモリチャネル占有要求に応答して第２のスケジューラ１００２によって返される確認応答を受け取るようにさらに構成される。
【０１１０】
第１のスケジューラ１００１で受け取られた第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【０１１１】
この実施形態では、メモリコントローラ１０００の各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立する。
【０１１２】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１１３】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１１４】
本発明のこの実施形態で提供するＣＰＵによれば、複数のメモリアクセス要求が受け取られると、複数のスケジューラで受け取られたメモリアクセス要求は、メモリシステムの複数のメモリチャネルを使用することによって分担され、複数のメモリアクセス要求が複数のメモリチャネルを通して送られ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態７
【０１１５】
本発明のこの実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供し、ここで、メモリシステムは、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルは１つのメモリモジュールに対応しており、メモリシステムは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立される。
【０１１６】
図１１に示すように、この方法は以下のものを含む。
１１０１．第１のスケジューラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取り、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
１１０２．第１のメモリチャネルを通して第１のメモリアクセス要求を送り、
第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
【０１１７】
この実施形態で提供するメモリモジュールアクセス方法によれば、複数のメモリアクセス要求を受け取ると、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、この実施形態の第２のスケジューラ）に対応するメモリチャネルを通して送ることができる。
【０１１８】
さらに、図１１に示す方法に基づいて、本発明のこの実施形態は、より詳細なメモリモジュールアクセス方法をさらに提供する。図１２に示すように、この方法は以下のものを含む。
１２０１．第１のスケジューラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取る。ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の両方の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
１２０２．第１のスケジューラは、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリアクセス要求は、送る予定の状態にある。
１２０３．第１のスケジューラは、第２のスケジューラにメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラに対応する第２のメモリチャネルを占有することを要求する。
第２のスケジューラは、メモリシステムの複数のスケジューラ中の任意のスケジューラであることに留意すべきである。複数のメモリアクセス要求を受け取ると、第１のスケジューラは、メモリシステムのすべてのスケジューラにメモリチャネル占有要求を送ることができる。この実施形態では、第２のスケジューラが、特定の説明のための一例として使用される。
１２０４．第２のスケジューラは、第２のスケジューラに対応するメモリチャネルがアイドル状態にあるかどうかを検出し、はいの場合、１２０５を実行し、又はそうでない場合、１２０９を実行する。
１２０５．第２のスケジューラは、第１のスケジューラが第２のスケジューラに対応するメモリチャネルを占有することを許可し、メモリチャネル占有要求に応答して第１のスケジューラに確認応答を送る。
１２０６．第１のスケジューラは、メモリチャネル占有要求に応答して第２のスケジューラによって返される確認応答を受け取る。
１２０７．第１のスケジューラは、第２のスケジューラに対応する第２のメモリチャネルを通して第２のメモリアクセス要求を送る。
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラは、第１の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
オプションの解決策として、第１のスケジューラは、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラに対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供する方法によれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
１２０８．第２のスケジューラに対応するメモリモジュールは、第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求の宛先アドレスに従って、メモリモジュール間の伝送リンクを通して、第２のメモリアクセス要求を宛先メモリモジュール、すなわち、第１のスケジューラに対応するメモリモジュールに送る。
１２０９．第２のスケジューラは、第１のスケジューラによって送られたメモリチャネル占有要求を拒否する。
【０１１９】
この実施形態では、各スケジューラは、複数の経路を有し、複数の経路を使用することによって複数のメモリチャネルへの接続を確立し、その結果、各スケジューラは、別のスケジューラに対応するメモリチャネルを通してメモリアクセス要求を送ることができることに留意すべきである。
【０１２０】
この実施形態で提供するメモリモジュールアクセス方法は、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１２１】
好ましい解決策として、この実施形態の複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１２２】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、複数のメモリアクセス要求を受け取ると、第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、第２のスケジューラ）に対応するメモリチャネルを通して送り、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態８
【０１２３】
本発明のこの実施形態は、図１０及び図１１に示した方法を実施することができるメモリコントローラを提供し、ここで、メモリコントローラは、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、メモリコントローラは複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立される。
【０１２４】
具体的には、メモリコントローラは、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【０１２５】
メモリコントローラは、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【０１２６】
具体的には、メモリコントローラは、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１２７】
図１３に示すように、メモリコントローラは、少なくとも、第１のスケジューラ１３０１と第２のスケジューラ１３０２とを含み、ここで、第１のスケジューラ１３０１は第１のメモリチャネルに対応しており、第２のスケジューラ１３０２は第２のメモリチャネルに対応している。
【０１２８】
第１のスケジューラ１３０１は、第２のスケジューラ１３０２にメモリチャネル占有要求を送り、第２のメモリアクセス要求を送るために第２のスケジューラ１３０２に対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラ１３０１は、メモリチャネル占有要求に応答して第２のスケジューラ１３０２によって返される確認応答を受け取るようにさらに構成される。
【０１２９】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ１３０１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ１３０１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【０１３０】
オプションの解決策として、第１のスケジューラ１３０１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ１３０１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ１３０１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するメモリコントローラによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
【０１３１】
メモリコントローラの各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立することに留意すべきである。
【０１３２】
この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１３３】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１３４】
本発明のこの実施形態で提供するメモリコントローラによれば、複数のメモリアクセス要求を受け取ると、メモリコントローラの第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、第２のスケジューラ）に対応するメモリチャネルを通して送り、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態９
【０１３５】
本発明のこの実施形態は、図１０及び図１１に示した方法を実施することができるＣＰＵを提供する。図１４に示すように、ＣＰＵはメモリコントローラ１４００を含み、ここで、メモリコントローラ１４００は、少なくとも、第１のメモリチャネルと第２のメモリチャネルとを含み、各メモリチャネルは１つ又は複数のメモリモジュールに対応しており、メモリコントローラ１４００は複数のメモリモジュールを含み、ここで、伝送リンクが複数のメモリモジュール間に確立される。
【０１３６】
メモリコントローラ１４００は、第１のメモリアクセス要求と第２のメモリアクセス要求とを含む少なくとも２つのメモリアクセス要求を受け取るように構成され、ここで、第１のメモリアクセス要求及び第２のメモリアクセス要求の宛先アドレスは、第１のメモリチャネルに対応するメモリモジュールに位置する。
【０１３７】
メモリコントローラ１４００は、第１のメモリチャネルを通して第１のメモリアクセス要求を送り、第２のメモリチャネルを通して第２のメモリアクセス要求を送るようにさらに構成される。
【０１３８】
さらに、メモリコントローラ１４００は、具体的には、第２のメモリチャネルがアイドル状態にあるとき、第２のメモリチャネルを通して第２のメモリアクセス要求を送るように構成される。
【０１３９】
図１５に示すように、メモリコントローラ１４００は、少なくとも、第１のスケジューラ１４０１と第２のスケジューラ１４０２とを含み、ここで、第１のスケジューラ１４０１は第１のメモリチャネルに対応しており、第２のスケジューラ１４０２は第２のメモリチャネルに対応している。
【０１４０】
第１のスケジューラ１４０１は、第２のスケジューラ１４０２にメモリチャネル占有要求を送って、第２のメモリアクセス要求を送るために第２のスケジューラ１４０２に対応する第２のメモリチャネルを占有することを要求するように構成され、
第１のスケジューラ１４０１は、メモリチャネル占有要求に応答して第２のスケジューラ１４０２によって返される確認応答を受け取るようにさらに構成される。
【０１４１】
一般に、１つのスケジューリングタイムスロットで複数のメモリアクセス要求を受け取ると、第１のスケジューラ１４０１は、第１の受け取ったメモリアクセス要求を、第１のスケジューラ１４０１に対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送る。
【０１４２】
オプションの解決策として、第１のスケジューラ１４０１は、さらに、第１の受け取ったメモリアクセス要求を、別のスケジューラに対応するメモリチャネルを通して送り、第２の受け取ったメモリアクセス要求を、第１のスケジューラ１４０１に対応するメモリチャネルを通して送ることができることに留意すべきである。別のオプションの解決策として、もし十分なアイドルメモリチャネルが存在すれば、第１のスケジューラ１４０１は、複数の受け取ったメモリアクセス要求を、他のスケジューラに対応するメモリチャネルを通して優先的に送ることができる。この実施形態で提供するＣＰＵによれば、任意のスケジューラで受け取られたメモリアクセス要求は、任意のアイドルメモリチャネルを通して送ることができ、メモリチャネルを割り当てる特定の方法は、この実施形態に限定されない。
【０１４３】
この実施形態では、メモリコントローラ１４００の各スケジューラは、複数の経路を有し、複数の経路を使用することによってすべてのメモリチャネルへの接続を確立することに留意すべきである。この実施形態で提供するメモリコントローラは、相互接続経路をもつ任意の多重チャネルメモリシステムに適用することができることに力点が置かれるべきである。
【０１４４】
好ましい解決策として、メモリコントローラの複数のスケジューラが、１つの総合的スケジューラとなるように統合され、それによって、複数のメモリチャネルの間の接続度合いがさらに改善され得る。総合的スケジューラは、メモリチャネルの利用度を最大にするようにメモリアクセス要求をすべてのメモリチャネルにスケジューリングする。
【０１４５】
本発明のこの実施形態で提供するＣＰＵはメモリコントローラを含む。複数のメモリアクセス要求を受け取ると、メモリコントローラの第１のスケジューラは、複数の受け取ったメモリアクセス要求を、別のスケジューラ（例えば、第２のスケジューラ）に対応するメモリチャネルを通して送り、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態１０
【０１４６】
理解しやすくするために、この実施形態では、本発明で提供される技術的解決策を説明するために一例として２つのスケジューラが使用される。
【０１４７】
この実施形態は、メモリシステムに適用されるメモリモジュールアクセス方法を提供する。図１６に示すように、メモリシステムはスケジューラ０とスケジューラ１とを含み、ここで、スケジューラ０はメモリチャネル０に対応しており、スケジューラ１はメモリチャネル１に対応しており、メモリチャネル０は、メモリモジュール０、メモリモジュール２、及びメモリモジュール４に接続され、メモリチャネル１は、メモリモジュール１、メモリモジュール３、及びメモリモジュール５に接続される。
【０１４８】
具体的には、図１６に示すように、伝送リンク１６１がスケジューラ０とスケジューラ１との間に確立され、スケジューラ０とスケジューラ１との間の通信に使用され、スケジューラ０は経路１と経路２とを有し、ここで、経路１はメモリチャネル０に接続され、経路２はメモリチャネル１に接続され、スケジューラ１は経路１と経路２とを有し、ここで、経路１はメモリチャネル１に接続され、経路２はメモリチャネル０に接続され、伝送リンク１６２が、メモリモジュール０とメモリモジュール１との間に確立され、メモリモジュール０とメモリモジュール１との間の通信に使用される。
【０１４９】
図１６に示すメモリシステムを参照すると、この実施形態で提供するメモリモジュールアクセス方法は以下のものを含む。
Ｓ１．スケジューラ０及びスケジューラ１は、伝送リンク１６１を使用することによって、送る予定のメモリアクセス要求の量を互いに交換する。
Ｓ２．少なくとも２つのメモリアクセス要求を受け取ると、スケジューラ０は、経路１を通して第１のメモリアクセス要求を送り、さらに、スケジューラ１が、送られる必要があるメモリアクセス要求を現在有しているかどうかを検査し、スケジューラ１が、送られる必要があるメモリアクセス要求を現在有していない場合、同じスケジューリングタイムスロットで経路２を通して第２のメモリアクセス要求を送る。
一般に、スケジューラ０によって受け取られるメモリアクセス要求の宛先アドレスは、メモリチャネル０に対応するメモリモジュール、すなわち、メモリモジュール０、メモリモジュール２、又はメモリモジュール４に位置し、スケジューラ１によって受け取られるメモリアクセス要求の宛先アドレスは、メモリチャネル１に対応するメモリモジュール、すなわち、メモリモジュール１、メモリモジュール３、又はメモリモジュール５に位置することに留意すべきである。
Ｓ３．第２のメモリアクセス要求をスケジューラ０の経路２を通してメモリチャネル１に送り、メモリモジュール１は第２のメモリアクセス要求を受け取り、第２のメモリアクセス要求を伝送リンク１６２を通してメモリモジュール０に転送し、メモリモジュール０を使用することによって第２のメモリアクセス要求を宛先メモリモジュールに転送する。
【０１５０】
前述のＳ１からＳ３において、スケジューラ０は、スケジューラ０で受け取ったメモリアクセス要求をスケジューラ１に対応するメモリチャネル（すなわち、メモリチャネル１）にオフロードすることに留意すべきである。同じ方法によれば、この実施形態のスケジューラ１は、スケジューラ１で受け取ったメモリアクセス要求をスケジューラ０に対応するメモリチャネルにオフロードすることができ、これは、本明細書では再度説明されない。
【０１５１】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供する方法によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられそれによって、帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
実施形態１１
【０１５２】
図１６では、二重チャネルメモリシステムが、説明のための一例として使用されている。本発明で提供するメモリモジュールアクセス方法は、多重チャネルシステムに適用可能である。次に、この実施形態では、Ｎチャネルメモリシステムが、さらなる説明のための一例として使用される。
【０１５３】
Ｎチャネルメモリシステムは、Ｎ個のスケジューラ、Ｎ個のメモリチャネル、及びＮ個のメモリモジュールを含み、ここで、Ｎ個のスケジューラは、スケジューラ０、スケジューラ１、…、及びスケジューラＮ−１としてマーク付けすることができ、Ｎ個のメモリチャネルは、メモリチャネル０、メモリチャネル１、…、及びメモリチャネルＮ−１としてマーク付けされ、Ｎ個のメモリモジュールは、メモリモジュール０、メモリモジュール１、…、及びメモリモジュールＮ−１としてマーク付けされる。スケジューラ、メモリチャネル、及びメモリモジュールは、１対１対応があり、例えば、スケジューラ０はメモリチャネル０に対応しており、メモリチャネル０はメモリモジュール０に対応している。
【０１５４】
各スケジューラはＮ個の経路（経路１、経路２、…、及び経路Ｎとしてマーク付けすることができる）を有し、Ｎ個の経路は、それぞれ、Ｎ個のメモリチャネルに接続される。理解をしやすくするために、経路とメモリチャネルとの間の接続関係は、事前設定規則に従って設定することができる。例えば、経路とメモリチャネルとの間の接続関係は、スケジューラｎ（０≦ｎ≦Ｎ−１）の経路ｍ（０≦ｍ≦Ｎ）がメモリチャネル（ｎ＋ｍ）ｍｏｄＮに接続される方法に従って設定することができ、ここで、ｍｏｄは、剰余を得ることを示すのに使用されている。
【０１５５】
ｘ個のメモリアクセス要求を受け取ったとき、Ｎチャネルがすべてアイドル状態にある場合、スケジューラｎは、局所的な経路１、経路２、…、及び経路（ｎ＋ｘ）ｍｏｄＮを使用することによってｘ個のメモリアクセス要求を連続的に送ることができる。ｘ≦Ｎのとき、ｘ個のメモリアクセス要求は、１つのスケジューリングタイムスロットでメモリモジュールに送ることができ、Ｎ＜ｘ≦２Ｎのとき、ｘ個のメモリアクセス要求は、２つのスケジューリングタイムスロットでメモリモジュールに送ることができる。残りは類推して導き出すことができ、これは、本明細書では再度説明されない。
【０１５６】
理解しやすくするために、次いで、３チャネルメモリシステムが、説明のための一例として使用される。図１７に示すように、メモリシステムは、スケジューラ０、スケジューラ１、及びスケジューラ２を含み、ここで、スケジューラ０はメモリチャネル０に対応しており、スケジューラ１はメモリチャネル１に対応しており、スケジューラ２はメモリチャネル２に対応しており、メモリチャネル０はメモリモジュール０に接続され、メモリチャネル１はメモリモジュール１に接続され、メモリチャネル２はメモリモジュール２に接続される。
【０１５７】
具体的には、図１７に示すように、伝送リンク１７１が、スケジューラ０とスケジューラ１との間に確立され、伝送リンク１７２が、スケジューラ１とスケジューラ２との間に確立され、伝送リンク１７３が、スケジューラ０とスケジューラ２との間に確立され、伝送リンク１７１から１７３は、スケジューラ０、スケジューラ１、及びスケジューラ２の間の通信に使用される。
【０１５８】
スケジューラ０は、経路１、経路２、及び経路３を有し、ここで、経路１はメモリチャネル０に接続され、経路２はメモリチャネル１に接続され、経路３はメモリチャネル２に接続され、スケジューラ１は、経路１、経路２、及び経路３を有し、ここで、経路１はメモリチャネル１に接続され、経路２はメモリチャネル３に接続され、経路３はメモリチャネル０に接続され、スケジューラ２は、経路１、経路２、及び経路３を有し、ここで、経路１はメモリチャネル２に接続され、経路２はメモリチャネル０に接続され、経路３はメモリチャネル１に接続される。
【０１５９】
伝送リンク１７４が、メモリモジュール０とメモリモジュール１との間に確立され、メモリモジュール０とメモリモジュール１との間の通信に使用され、伝送リンク１７５が、メモリモジュール１とメモリモジュール２との間に確立され、メモリモジュール１とメモリモジュール２との間の通信に使用される。
【０１６０】
図１７に示す３チャネルメモリシステムによれば、メモリモジュールアクセス方法が、具体的には、以下のように実施される。
（１）スケジューラｎが複数のメモリアクセス要求を受け取ると、経路１を使用することによって、送られる必要がある第１のメモリアクセス要求を送る。
（２）スケジューラｎが、送られる必要がある第２のメモリアクセス要求を有する場合、スケジューラ（ｎ＋１）ｍｏｄ３が、送られる必要があるメモリアクセス要求を現在有しているかどうかを検出し、有していなければ、送られる必要がある第２のメモリアクセス要求を経路２に送る。
スケジューラ（ｎ＋１）ｍｏｄ３が、送られる必要があるメモリアクセス要求を現在有している場合、スケジューラ（ｎ＋２）ｍｏｄ３が、送られる必要があるメモリアクセス要求を現在有しているかどうかを検出し、有していなければ、送られる必要がある第２のメモリアクセス要求を経路３に送る。
（３）スケジューラｎが、送られる必要がある第３のメモリアクセス要求を有し、スケジューラ（ｎ＋１）ｍｏｄ３が、送る必要があるメモリアクセス要求を現在有しておらず、スケジューラ（ｎ＋２）ｍｏｄ３もまた送る必要があるメモリアクセス要求を現在有していない場合、スケジューラｎは、送られる必要がある第２のメモリアクセス要求を経路２に送り、送られる必要がある第３のメモリアクセス要求を経路３に送る。
【０１６１】
本発明のこの実施形態で提供するメモリモジュールアクセス方法によれば、各スケジューラは、別のスケジューラの送る予定のメモリアクセス要求の量を取得することができ、複数のメモリアクセス要求を受け取ると、複数の受け取ったメモリアクセス要求を複数のメモリチャネルを通して送ることができる。本発明のこの実施形態で提供する方法によれば、複数のメモリアクセス要求が受け取られると、複数の受け取られたメモリアクセス要求は、送るために複数のメモリチャネルに割り当てられ、それによって、メモリチャネルの帯域幅リソースの利用度が改善され、メモリアクセス帯域幅が改善され得る。
【０１６２】
実施手法の前述の説明に基づいて、当業者は、必要なユニバーサルハードウェアに加えてソフトウェアによって、又はハードウェアのみによって本発明が実施され得ることを明確に理解することができる。ほとんどの状況において、前者が好ましい実施手法である。そのような理解に基づいて、本発明の技術的解決策が本質的に、又は先行技術に寄与する部分が、ソフトウェア製品の形態で実施され得る。コンピュータソフトウェア製品は、コンピュータのフロッピーディスク、ハードディスク、又は光ディスクなどの可読記憶媒体に記憶され、本発明の実施形態で説明した方法を実行するためにコンピュータデバイス（パーソナルコンピュータ、サーバ、又はネットワークデバイスとすることができる）に指示するためのいくつかの命令を含む。
【０１６３】
前述の説明は、単に本発明の特定の実施手法であり、本発明の保護範囲を限定することは意図されていない。本発明で開示した技術的範囲内において当業者が容易に考え出すいかなる変形又は置換も本発明の保護範囲内にあるものとする。それゆえに、本発明の保護範囲は特許請求の範囲の保護範囲によって決まるものとする。
【国際調査報告】
2016531372.tif 000020
2016531372.tif 000021
2016531372.tif 000022
2016531372.tif 000023