(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-05
(45)【発行日】2024-08-14
(54)【発明の名称】記憶装置、方法、電子機器及び記憶媒体
(51)【国際特許分類】
G06F 12/00 20060101AFI20240806BHJP
【FI】
G06F12/00 571A
(21)【出願番号】P 2023051902
(22)【出願日】2023-03-28
【審査請求日】2023-03-28
(31)【優先権主張番号】202210547370.1
(32)【優先日】2022-05-11
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】522123315
【氏名又は名称】地平▲線▼(上海)人工智能技▲術▼有限公司
(74)【代理人】
【識別番号】100105924
【氏名又は名称】森下 賢樹
(72)【発明者】
【氏名】ハオ ルアン
(72)【発明者】
【氏名】チャン フアン
(72)【発明者】
【氏名】ユー ヤオ
(72)【発明者】
【氏名】シュアン ドン
【審査官】松平 英
(56)【参考文献】
【文献】特開2010-287058(JP,A)
【文献】特開2011-054184(JP,A)
【文献】特開2003-308248(JP,A)
【文献】特開2010-262429(JP,A)
【文献】特開2004-246862(JP,A)
【文献】特開2014-021952(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/06-3/08
9/30-9/38
12/00-12/128
13/00-13/42
(57)【特許請求の範囲】
【請求項1】
第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するための第1の分割論理モジュールと、
少なくとも2つのメモリーアレイモジュールと、を含み、
前記少なくとも2つのメモリーアレイモジュールにおける各前記メモリーアレイモジュールは、前記第1の分割論理モジュールの前記少なくとも2つの第2のアクセスコマンドにおける1つの第2のアクセスコマンドに基づき、対応するアクセス動作を実行するために用いら
れ、
前記第1の分割論理モジュールは、少なくとも1つの第3の分割論理ユニットと、各前記第3の分割論理ユニットに対応する少なくとも2つの第4の分割論理ユニットとを含み、
前記少なくとも1つの第3の分割論理ユニットの各前記第3の分割論理ユニットは、独立したバスを介して1つのマスターに接続され、各前記第4の分割論理ユニットは、前記少なくとも2つのメモリーアレイモジュールに接続され、
各前記第3の分割論理ユニットは、前記マスターにより生成された前記第1のアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、前記第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、前記少なくとも2つの第1のサブアクセスコマンドを前記第3の分割論理ユニットに対応する前記少なくとも2つの第4の分割論理ユニットに並行に伝送し、
各前記第4の分割論理ユニットは、前記第3の分割論理ユニットの前記第1のサブアクセスコマンドのアクセスアドレス及び前記プリセットのアドレスのコード配列規則に基づき、前記第1のサブアクセスコマンドを少なくとも2つの第2のサブアクセスコマンドに分割し、各前記第2のサブアクセスコマンドを1つの前記第2のアクセスコマンドとし、各前記第2のアクセスコマンドを各前記メモリーアレイモジュールに並行に伝送するために用いられ、
前記少なくとも2つのメモリーアレイモジュールは、前記プリセットのアドレスのコード配列規則に基づき、少なくとも1つのアレイクラスタを形成し、同一の前記第3の分割論理ユニットにおける異なる第4の分割論理ユニットは、異なるアレイクラスタに対応し、同一の前記第3の分割論理ユニットにおける各前記第4の分割論理ユニットは、対応する前記アレイクラスタにおける各メモリーアレイモジュールに接続される、記憶装置。
【請求項2】
前記第1の分割論理モジュールは、
少なくとも1つの段の分割論理ユニットを含み、前記少なくとも1つの段の分割論理ユニットの各段の分割論理ユニットは、少なくとも1つの第1の分割論理ユニットを含み、ここで、第1段の分割論理ユニットの各前記第1の分割論理ユニットは、対応する前記第1のアクセスコマンドに対して第1段の分割を行い、少なくとも2つの第1のサブアクセスコマンドを取得するために用いられ、中間段の各段の分割論理ユニットの各前記第1の分割論理ユニットは、それに対応する前段のサブアクセスコマンドに対して分割を行い、少なくとも2つの現在段のサブアクセスコマンドを取得するために用いられ、最終段の分割論理ユニットの各前記第1の分割論理ユニットは、それに対応する前段のサブアクセスコマンドを分割し、前記少なくとも2つの第2のアクセスコマンドを取得するために用いられる、請求項1に記載の装置。
【請求項3】
前記メモリーアレイモジュールは、
少なくとも1つのメモリーモジュールを含み、前記少なくとも1つのメモリーモジュールにおける各前記メモリーモジュールは、少なくとも1つの記憶ユニットを含み、
各前記メモリーモジュールは、当該メモリーモジュールにアクセスする第2のアクセスコマンドに応答し、対応する動作を実行するために用いられる、請求項1に記載の装置。
【請求項4】
前記メモリーアレイモジュールは、
前記少なくとも1つのメモリーモジュールにおける各メモリーモジュールに対応するメモリーモジュールアービタをさらに含み、
各前記メモリーモジュールアービタは、プリセットのアービトレーション規則に基づき、当該メモリーモジュールアービタに対応するメモリーモジュールにアクセスする目標第2のアクセスコマンドを決定し、対応する当該メモリーモジュールを前記目標第2のアクセスコマンドに応答させるために用いられる、請求項3に記載の装置。
【請求項5】
前記メモリーアレイモジュールは、
前記第1の分割論理モジュールに接続された配布論理ユニットをさらに含み、前記配布論理ユニットは、各前記メモリーモジュールアービタにさらに接続され、前記第2のアクセスコマンドのアクセスアドレスに基づき、前記第2のアクセスコマンドを対応するメモリーモジュールのメモリーモジュールアービタに配布するために用いられる、請求項4に記載の装置。
【請求項6】
前記第1の分割論理モジュールは、
少なくとも1つの第2の分割論理ユニットを含み、各前記第2の分割論理ユニットは、独立バスを介して1つのマスターに接続され、各前記第2の分割論理ユニットは、前記少なくとも2つのメモリーアレイモジュールに接続され、
前記第2の分割論理ユニットは、前記マスターにより生成された前記第1のアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、前記第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、前記少なくとも2つの第1のサブアクセスコマンドを前記少なくとも2つの第2のアクセスコマンドとして対応するメモリーアレイモジュールに並行に伝送するために用いられる、請求項1に記載の装置。
【請求項7】
前記メモリーアレイモジュールは、
当該メモリーアレイモジュールに接続された各前記第4の分割論理ユニットに対応する配布論理ユニットと、
少なくとも1つのメモリーモジュールアービタ、及び各前記メモリーモジュールアービタに対応するメモリーモジュールと、を含み、
各前記メモリーモジュールは、少なくとも1つの記憶ユニットを含み、
各前記配布論理ユニットは、前記少なくとも1つのメモリーモジュールアービタにおける各メモリーモジュールアービタに接続され、
各前記配布論理ユニットは、当該配布論理ユニットに対応する前記第4の分割論理ユニットの前記第2のアクセスコマンドのアクセスアドレスに基づき、前記第2のアクセスコマンドを対応するメモリーモジュールのメモリーモジュールアービタに配布するために用いられ、
前記少なくとも1つのメモリーモジュールアービタにおける各前記メモリーモジュールアービタは、プリセットのアービトレーション規則に基づき、当該メモリーモジュールアービタに対応するメモリーモジュールにアクセスする目標第2のアクセスコマンドを決定するために用いられ、
各前記メモリーモジュールは、当該メモリーモジュールにアクセスする前記目標第2のアクセスコマンドに応答し、対応する動作を実行するために用いられる、請求項
1に記載の装置。
【請求項8】
前記第1の分割論理モジュールは、
バスプロトコルチェックを行うためのプロトコルチェックユニットをさらに含む、請求項1に記載の装置。
【請求項9】
前記第1の分割論理モジュールは、
前記メモリーアレイモジュールにより返信されたアクセス結果に基づき、対応するマスターがバースト内部ディスオーダーをサポートすることに応じて、前記アクセス結果を前記マスターに伝送し、前記マスターがバースト内部ディスオーダーをサポートしないことに応じて、前記アクセス結果をソートした後に前記マスターに伝送するための応答ユニットをさらに含む、請求項1に記載の装置。
【請求項10】
前記少なくとも1つの段の分割論理ユニットにおける異なる段の分割論理ユニットは、同一又は異なる動作周波数を採用し、及び/又は、
前記少なくとも1つの段の分割論理ユニットは、前記少なくとも2つのメモリーアレイモジュールと同一又は異なる動作周波数を採用する、請求項2に記載の装置。
【請求項11】
プロセッサーに各ステップを実行させる記憶方法であって、
第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するステップと、
それぞれ前記少なくとも2つの第2のアクセスコマンドにおける各前記第2のアクセスコマンドに基づき、前記第2のアクセスコマンドに対応するメモリーアレイモジュールに並行にアクセスし、前記メモリーアレイモジュールに、対応する動作を実行させるステップと、を含
み、
前記少なくとも2つのメモリーアレイモジュールは、プリセットのアドレスのコード配列規則に基づき、少なくとも1つのアレイクラスタを形成し、
第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割する前記ステップは、
少なくとも1つのマスターにおける各前記マスターにより生成された第1のアクセスコマンドに対して、少なくとも1つの第1のアクセスコマンドを取得し、前記少なくとも1つの第1のアクセスコマンドにおける各前記第1のアクセスコマンドに対して、下記方式で並行に分割を行うステップであって、各前記第1のアクセスコマンドのアクセスアドレス及び前記プリセットのアドレスのコード配列規則に基づき、前記第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、前記少なくとも2つの第1のサブアクセスコマンドにおける各前記第1のサブアクセスコマンドのアクセスアドレス及び前記プリセットのアドレスのコード配列規則に基づき、前記第1のサブアクセスコマンドを少なくとも2つの第2のサブアクセスコマンドに分割し、各前記第2のサブアクセスコマンドを1つの前記第2のアクセスコマンドとし、前記少なくとも2つの第2のアクセスコマンドを取得するステップを含む、記憶方法。
【請求項12】
第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割する前記ステップは、
前記第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドに対して少なくとも1つの段の分割を行って、前記少なくとも2つの第2のアクセスコマンドを取得するステップであって、そのうち、第1段の分割は、前記第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、中間段の分割の各段は、現在段の前段の分割により得られた少なくとも2つの前段のサブアクセスコマンドにおける対応する前段のサブアクセスコマンドを少なくとも2つの現在段のサブアクセスコマンドに分割し、最終段の分割は、その前段の分割により得られた前段のサブアクセスコマンドを前記少なくとも2つの第2のアクセスコマンドに分割するステップを含む、請求項
11に記載の方法。
【請求項13】
第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割する前記ステップは、
少なくとも1つのマスターにおける各前記マスターにより生成された第1のアクセスコマンドに対して、少なくとも1つの第1のアクセスコマンドを取得し、前記少なくとも1つの第1のアクセスコマンドにおける各前記第1のアクセスコマンドに対して、下記方式で並行に分割を行うステップであって、各前記第1のアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、前記第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、前記少なくとも2つの第1のサブアクセスコマンドを前記少なくとも2つの第2のアクセスコマンドとするステップを含む、請求項
11に記載の方法。
【請求項14】
アクセス結果に基づき、対応するマスターがバースト内部ディスオーダーをサポートすることに応じて、前記アクセス結果を前記マスターに伝送し、前記マスターがバースト内部ディスオーダーをサポートしないことに応じて、前記アクセス結果をソートした後に前記マスターに伝送するステップをさらに含む、請求項
11に記載の方法。
【請求項15】
上記請求項
11~14のいずれか1項に記載の記憶方法を実行するためのコンピュータプログラムを記憶した、コンピュータ可読記憶媒体。
【請求項16】
電子機器であって、
プロセッサーと、
前記プロセッサーにより実行可能な命令を記憶するためのメモリーと、を含み、
前記プロセッサーは、前記メモリーから前記実行可能な命令を読み取り、前記命令を実行して、上記請求項
11~14のいずれか1項に記載の記憶方法を実現するために用いられる、電子機器、
又は、
請求項1~
10のいずれか1項に記載の記憶装置を含む、電子機器。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、記憶技術に関し、特に、記憶装置、方法、電子機器及び記憶媒体に関するものである。
【背景技術】
【0002】
自動運転技術の急速な発展に伴い、自動運転指向の深層学習チップは、通常、マルチコア異種、大計算力、大帯域幅、高並行の記憶要求を有し、関連技術では、加速器又はプロセッサコアなどのマスター(master)は、バスを介してメモリーにアクセスし、同時に複数のマスターがメモリーにアクセスする場合、バスを介して読み書きのアクセスバースト(burst)の長さでアービトレーションを行うことで、各マスターによるメモリーモジュールに対するアクセス順序を決定する必要があり、メモリーが順に各マスターのアクセスコマンドに応答し、それによりマスターによるメモリーに対する読み書きアクセスの時間が長くなり、読み書きアクセスの効率が低い。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本開示は、上記読み書きアクセスの効率が低いなどの技術的問題を解決するために提案されたものである。本開示の実施例は、記憶装置、方法、電子機器及び記憶媒体を提供する。
【課題を解決するための手段】
【0004】
本開示の実施例の1つの態様にて提供される記憶装置は、第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するための第1の分割論理モジュールと、少なくとも2つのメモリーアレイモジュールと、を含み、前期少なくとも2つのメモリーアレイモジュールにおける各メモリーアレイモジュールは、前記第1の分割論理モジュールの前記少なくとも2つの第2のアクセスコマンドにおける1つの第2のアクセスコマンドに基づき、対応するアクセス動作を実行するために用いられる。
【0005】
本開示の実施例の別の態様にて提供される記憶方法は、第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するステップと、前記少なくとも2つの第2のアクセスコマンドに基づき、対応するアクセス動作を実行するステップと、を含む。
【0006】
本開示の実施例のさらに別の態様にて提供されるコンピュータ可読記憶媒体は、本開示の上記実施例のいずれかに記載の記憶方法を実行するためのコンピュータプログラムを記憶する。
【0007】
本開示の実施例のさらなる別の態様にて提供される電子機器は、プロセッサーと、前記プロセッサー実行可能命令を記憶するためのメモリーと、を含み、前記プロセッサーは、前記メモリーから前記実行可能命令を読み取り、前記命令を実行し、本開示の上記実施例のいずれかに記載の記憶方法を実現するために用いられ、又は、前記電子機器は、上記実施例のいずれかに記載の記憶装置を含む。
【発明の効果】
【0008】
本開示の上記実施例にて提供される記憶装置、方法、電子機器及び記憶媒体に基づき、第1の分割論理モジュールにより、ロングバーストの第1のアクセスコマンドを、より小さな粒度の第2のアクセスコマンドに分割し、少なくとも2つのメモリーアレイモジュールに並行にアクセスすることで、少なくとも2つのメモリーアレイモジュールが並行に応答することができ、ロングバーストの第1のアクセスコマンドの応答時間を効果的に低減することができ、それにより複数のマスターが並行にアクセスする場合、各マスターがアクセスするアクセス時間を効果的に低減し、それによりアクセス効率を向上させることができる。
【0009】
以下、図面及び実施例により、本開示の技術的解決手段をさらに詳細に記述する。
図面と組み合わせて、本開示の実施例をより詳細に記述することで、本開示の上記及びその他の目的、特徴及び優位性がより明らかになる。図面は、本開示の実施例をさらに理解するように提供するために用いられ、本明細書の一部を構成するものであり、本開示の実施例とともに本開示を解釈するために用いられ、本開示を限定するものではない。図面において、同一の参照符号は、通常、同一の構成要素又はステップを表す。
【図面の簡単な説明】
【0010】
【
図1】本開示にて提供される記憶装置の1つの例示的な応用シーンである。
【
図2】本開示の1つの例示的な実施例にて提供される記憶装置の構造の概略図である。
【
図3】本開示の1つの例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【
図4】本開示の別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【
図5】本開示のさらに別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【
図6】本開示の1つの例示的な実施例にて提供される第1の分割論理モジュール201とメモリーアレイモジュール202との接続の概略図である。
【
図7】本開示の別の例示的な実施例にて提供される第1の分割論理モジュール201とメモリーアレイモジュール202との接続の概略図である。
【
図8】本開示の1つの例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【
図9】本開示の別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【
図10】本開示のさらに別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【
図11】本開示のさらなる別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【
図12】本開示のさらなる別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【
図13】本開示の1つの例示的な実施例にて提供されるアドレスのコード配列の概略図である。
【
図14】本開示のさらに別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【
図15】本開示のさらなる別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【
図16】本開示の1つの例示的な実施例にて提供されるアレイクラスタ区画の概略図である。
【
図17】本開示のさらに別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【
図18】本開示の別の例示的な実施例にて提供される記憶装置の構造の概略図である。
【
図19】本開示のさらに別の例示的な実施例にて提供される記憶装置の構造の概略図である。
【
図20】本開示の1つの例示的な実施例にて提供される記憶方法のフローチャートである。
【
図21】本開示の別の例示的な実施例にて提供される記憶方法のフローチャートである。
【
図22】本開示の1つの例示的な実施例にて提供されるステップ501のフローチャートである。
【
図23】本開示の別の例示的な実施例にて提供されるステップ501のフローチャートである。
【
図24】本開示のさらに別の例示的な実施例にて提供される記憶方法のフローチャートである。
【
図25】本開示の電子機器の1つの応用実施例の構造の概略図である。
【
図26】本開示の電子機器の別の応用実施例の構造の概略図である。
【発明を実施するための形態】
【0011】
以下、図面を参照して、本開示による例示的な実施例を詳細に記述する。明らかに、記述された実施例は、本開示の一部の実施例に過ぎず、本開示の全ての実施例ではなく、本開示は、本明細書に記述された例示的な実施例に限定されないことが理解されるべきである。
【0012】
特に具体的に説明しない限り、これらの実施例に論述された構成要素及びステップの相対的な配置、数字表現式及び数値は、本開示の範囲を限定しないことが注意されるべきである。
【0013】
当業者であれば、本開示の実施例における「第1」、「第2」などの用語は、単に異なるステップ、機器、又はモジュールなどを区別するために用いられ、いかなる特定の技術的意味も表すものではなく、それらの間の必然的な論理的順序を示すものでもないことが理解される。
【0014】
本開示の実施例において、「複数」は、2つ以上を指してもよく、「少なくとも1つ」は、1つ、又は2つ以上を指してもよいことがさらに理解されるべきである。
【0015】
また、本開示における「及び/又は」という用語は、単に関連するオブジェクトを記述するための関連関係であり、3つの関係が存在することができることを示し、例えば、A及び/又はBは、Aが単独で存在すること、AとBが同時に存在すること、Bが単独で存在することの3つの場合を示すことができる。また、本開示において、「/」という文字は、一般に、前後に関係するオブジェクトが「又は」の関係であることを示す。
【0016】
本開示の各実施例の記述は、各実施例の間の相違点を主に強調し、それらの同一又は類似のものは、互いに参照することができ、簡潔さのために、一々説明しないことがさらに理解されるべきである。
【0017】
少なくとも1つの例示的な実施例の以下の記述は、実際的に単に説明のためのものであり、本開示、及びその適用、又は使用に対するいかなる限定とするものではない。
【0018】
当業者に知られている技術、方法、及び機器に対して、詳細に討論されないことがあるが、適切な場合、前記技術、方法、及び機器は、本明細書の一部として見なされるべきである。
【0019】
なお、類似の番号及びアルファベットは、以下の図面において、類似の項目を示しており、従って、ある項目が一度1つの図面において定義されると、それ以降の図面においてそれについてさらに討論される必要がない。
【0020】
本開示の実施例は、端末機器、コンピュータシステム、サーバなどの電子機器に適用することができ、それが多くの他の汎用又は専用のコンピューティングシステム環境又は構成とともに動作することができる。これらの電子機器とともに使用される周知の端末機器、コンピューティングシステム、環境及び/又は構成の例としては、パーソナルコンピュータシステム、サーバコンピュータシステム、シンクライアント、シッククライアント、ハンドヘルド又はラップトップ機器、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブル家庭用電化製品、ウェブパーソナルコンピュータ、ミニコンピュータシステム、メインフレームコンピュータシステム、及び上記いかなるシステムを含む分散クラウドコンピューティング技術環境などを含むが、これらに限定されない。
【0021】
本開示の概要
本開示を実現する過程において、自動運転指向深層学習チップは、通常、マルチコア異種、大計算力、大帯域幅、高並行の記憶要求を有し、加速器又はプロセッサコアなどのマスターがバスを介してメモリーにアクセスし、同時に複数のマスターがメモリーにアクセスする場合、バスを介して読み書きのアクセスバーストの長さでアービトレーションを行うことで、各マスターによるメモリーモジュールに対するアクセス順序を決定する必要があり、バーストとは、1つのバスサイクル内で連続する複数の記憶アドレスにアクセスすることを指し、例えば、1つのバーストのアクセスコマンドは、アクセスしようとする開始アドレス及びアクセス長さを含み、当該開始アドレスから開始して、アクセス長さに等しい数量の連続する記憶アドレスをアクセスすることを示し、メモリーが順に各マスターのアクセスコマンドに応答し、マスターによるメモリーに対する読み書きアクセスの時間が長くなり、読み書きアクセスの効率が低いことを発明者が発見した。
【0022】
例示的な概要
図1は、本開示にて提供される記憶装置の1つの例示的な応用シーンである。
【0023】
当該シーンで、N(Nは正の整数)個のマスターは、本開示の記憶装置におけるメモリーアレイモジュールにアクセスすることができ、マスターは、加速器、プロセッサコアなどのオンチップにおけるメモリーへのアクセスを必要とする任意の部分であってもよい。本開示の記憶装置に基づき、第1の分割論理モジュールにより、マスターの第1のアクセスコマンドのアクセスアドレスに基づき、第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割することができ、少なくとも2つのメモリーアレイモジュールにより、分割された少なくとも2つの第2のアクセスコマンドに並行に応答し、ロングバーストの第1のアクセスコマンドの応答時間を効果的に低減することができ、それにより複数のマスターが並行にアクセスする場合、各マスターがアクセスするアクセス時間を効果的に低減し、アクセス効率を向上させることができる。メモリーアレイモジュールは、少なくとも1つのメモリーモジュール(例えば、DDR等)を含むことができ、各メモリーモジュールは、マスターがメモリーにアクセスする基本単位である記憶ユニット(storage unit)を少なくとも1つ含むことができる。メモリーモジュールに具体的に含まれる記憶ユニットの数量は、実際の要求に応じて設定されてもよい。メモリーモジュールのビット幅は、実際の要求に応じて設定されてもよく、例えば、バスデータ幅と同一であるように設定されてもよく、実際の要求に応じて、バスデータ幅よりも大きいか、又は小さいように設定されてもよく、具体的に限定されない。第1の分割論理モジュールの具体的な分割規則は、実際の要求に応じて、記憶アドレスのコード配列と組み合わせて設定されてもよい。記憶アドレスのコード配列方式は、インターリーブ配列であってもよいが、これに限定されない。
【0024】
例示的な装置
図2は、本開示の1つの例示的な実施例にて提供される記憶装置の構造の概略図である。当該実施例の装置は、本開示に対応する方法の実施例を実現するために用いられることができ、
図2に示す装置は、第1の分割論理モジュール201と、少なくとも2つのメモリーアレイモジュール202と、を含む。
【0025】
第1の分割論理モジュール201は、第1のアクセスコマンドのアクセスアドレスに基づき、前記第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するために用いられ、前記少なくとも2つのメモリーアレイモジュールにおける各前記メモリーアレイモジュール202は、前記第1の分割論理モジュール201の前記少なくとも2つの第2のアクセスコマンドにおける1つの第2のアクセスコマンドに基づき、対応するアクセス動作を実行するために用いられる。
【0026】
ここで、第1のアクセスコマンドは、いずれかのマスターにより生成されたアクセスコマンドであってもよい。第1のアクセスコマンドは、例えば、アクセス開始アドレス及びアクセス長さなどのアクセスアドレスを含むことができる。第1のアクセスコマンドの分割は、第1のアクセスコマンドのアクセスアドレスに基づいて分割することができ、例えば、第1のアクセスコマンドのアクセス開始アドレス及びアクセス長さに基づき、第1のアクセスコマンドを少なくとも2つの短い長さの第2のアクセスコマンドに分割し、第2のアクセスコマンドは、同様にアクセス開始アドレス及びアクセス長さを含み、第2のアクセスコマンドのアクセス長さは、第1のアクセスコマンドよりも短い。例えば、第1のアクセスコマンドは、アクセス開始アドレスが2000であり、アクセス長さが8であり、2つの第2のアクセスコマンドに分割され、1つの第2のアクセスコマンドは、開始アドレスが2000であり、アクセス長さが4であり、もう1つの第2のアクセスコマンドは、開始アドレスが2004であり、アクセス長さが4である。分割して得られた第2のアクセスコマンドの数量は、実際の要求に応じて設定されてもよく、第2のアクセスコマンドの数量は、メモリーアレイモジュール202の数量と同一であり、それにより各第2のアクセスコマンドの並行応答を実現することができる。メモリーアレイモジュール202は、少なくとも1つのメモリーモジュールを含むことができ、各メモリーモジュールは、少なくとも1つの記憶ユニットを含むことができ、具体的なメモリーアレイモジュール202の区画は、実際の要求に応じて設定されてもよい。第1の分割論理モジュール201は、処理機能を有する任意のデバイスを採用して実現することができ、本開示では限定されない。
【0027】
1つの選択可能な例では、1つ又は複数のマスターが同時にアクセスすることができ、即ち、1つ又は複数の第1のアクセスコマンドを同時に有する。
【0028】
1つの選択可能な例で、複数の第1のアクセスコマンドに対して、バスを介して読み書きのアクセスバーストの長さでアービトレーションを行うことで、各マスターの第1のアクセスコマンドのアクセス順序を決定することができ、各第1のアクセスコマンドを順に分割し、各メモリーアレイモジュール202に伝送し、各メモリーアレイモジュール202の並行応答により、各マスターのアクセス時間を低減し、それによりアクセス効率を向上させる。
【0029】
1つの選択可能な例で、複数の第1のアクセスコマンドに対して、並行分割であってもよく、即ち、各第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに並行に分割し、第2のアクセスコマンドのアクセスアドレス及びメモリーアレイモジュール202のアドレス配列規則に基づき、対応するメモリーアレイモジュール202に伝送し、メモリーアレイモジュール202に、それにアクセスする第2のアクセスコマンドに応答させる。並行分割により、アクセス効率をさらに向上させることができる。メモリーアレイモジュール202のアドレス配列規則は、実際の要求に応じて設定されてもよく、具体的には限定されない。例えば、少なくとも2つの異なるマスターの第2のアクセスコマンドが同時に同一のメモリーアレイモジュール202にアクセスする必要がある場合、メモリーアレイモジュール202でアービトレーションを行い、各第2のアクセスコマンドのアクセス順序を決定することができ、メモリーアレイモジュール202は、順に各第2のアクセスコマンドに応答する。アービトレーションは、小さな粒度(granularity)の第2のアクセスコマンド段階において行うことであり、各第2のアクセスコマンドの応答時間がいずれも小さく、少なくとも2組の第2のアクセスコマンドが並行に応答されるため、従来の複数のマスターが同時にアクセスすることに対して、本開示の記憶装置は、各マスターのアクセス時間を効果的に低減し、アクセス効率を向上させることができる。
【0030】
1つの選択可能な例で、第1の分割論理モジュール201による第1のアクセスコマンドの分割は、1段又は多段の分割を含むことができ、具体的な分割段数及び各段の分割粒度は、実際の要求に応じて設定されてもよい。例えば、1段分割は、第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割することができ、2段分割は、最終的に第1のアクセスコマンドを少なくとも4つの第2のアクセスコマンドに分割することができ、3段分割は、最終的に少なくとも8つの第2のアクセスコマンドに分割することができ、以下同様である。各段の分割は、その前段の分割後のアクセスコマンドを再分割することである。
【0031】
1つの選択可能な例で、各第2のアクセスコマンドは、アクセスアドレスに基づいて対応するメモリーアレイモジュール202におけるメモリーモジュールにアクセスする。メモリーアレイモジュール202は、少なくとも1つのメモリーモジュールを含むことができるため、複数の第2のアクセスコマンドが同時に同一のメモリーアレイモジュール202にアクセスする場合、メモリーアレイモジュール202における各メモリーモジュールの前にさらにアービトレーションを行うことができ、このように、複数の第2のアクセスコマンドは、当該メモリーアレイモジュール202における異なるメモリーモジュールにアクセスする場合、キューイングする必要がなく、即ち、タイムリーに応答することができ、アクセス効率をさらに向上させることができる。メモリーアレイモジュール202内に到達した後にも、複数の第2のアクセスコマンドが同時に同一のメモリーモジュールにアクセスすることが発生し、メモリーモジュール段階のアクセスコマンドのバースト粒度が小さく、待ち時間をより短くさせるため、アクセス効率を効果的に向上させることができる。
【0032】
本実施例にて提供される記憶装置は、第1の分割論理モジュールにより、ロングバーストの第1のアクセスコマンドを、より小さい粒度の第2のアクセスコマンドに分割し、少なくとも2つのメモリーアレイモジュールに並行にアクセスすることで、少なくとも2つのメモリーアレイモジュールが並行に応答することができ、ロングバーストの第1のアクセスコマンドの応答時間を効果的に低減することができ、それにより複数のマスターが並行にアクセスする場合、各マスターがアクセスするアクセス時間を効果的に低減し、それによりアクセス効率を向上させることができる。
【0033】
1つの選択可能な例で、
図3は、本開示の1つの例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。本例で、第1の分割論理モジュール201は、少なくとも1つの段の分割論理ユニットを含み、前記少なくとも1つの段の分割論理ユニットの各段の分割論理ユニットは、少なくとも1つの第1の分割論理ユニットを含み、ここで、第1段の分割論理ユニットの各前記第1の分割論理ユニットは、対応する前記第1のアクセスコマンドに対して第1段の分割を行い、少なくとも2つの第1のサブアクセスコマンドを取得するために用いられ、中間段の各段の分割論理ユニットの各前記第1の分割論理ユニットは、それに対応する前段(真ん前の段)のサブアクセスコマンドに対して分割を行い、少なくとも2つの現在段のサブアクセスコマンドを取得するために用いられ、最終段の分割論理ユニットの各前記第1の分割論理ユニットは、それに対応する前段のサブアクセスコマンドを分割し、前記少なくとも2つの第2のアクセスコマンドを取得するために用いられる。
【0034】
ここで、分割論理ユニットの段数は、実際の要求に応じて設定されてもよい。1つの段の分割論理ユニットを含む場合、中間段及び最終段が存在せず、第1段の分割論理ユニットにより分割して得られた第1のサブアクセスコマンドが、第2のアクセスコマンドになる。2つの段の分割論理ユニットを含む場合、中間段の分割論理ユニットが存在せず、最終段の分割論理ユニットが、第2段の分割論理ユニットになり、第1段の分割論理ユニットにより分割して得られた各第1のサブアクセスコマンドが第2段の分割論理ユニットに伝送され、第2段の分割論理ユニットは、各第1のサブアクセスコマンドを分割し、各第1のサブアクセスコマンドは、少なくとも2つの第2のサブアクセスコマンドに分割され、全ての第1のサブアクセスコマンドが分割されて得られた第2のサブアクセスコマンドを上記少なくとも2つの第2のアクセスコマンドとする。各段の分割論理ユニットに含まれる第1の分割論理ユニットの数量及び異なる段の第1の分割論理ユニットの間の接続関係は、実際の要求に応じて設定されてもよい。少なくとも3つの段の分割論理ユニットを含む場合、中間段の分割論理ユニットは、少なくとも1つの段の分割論理ユニットを含み、具体的には、実際の要求に応じて設定されてもよく、ここではその説明が省略される。
【0035】
例示的に、
図4は、本開示の別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。ここで、各段の分割論理ユニットにおける各第1の分割論理ユニット2011は、その前段の1つの第1の分割論理ユニット2011に接続される。第1段の分割論理ユニットの各第1の分割論理ユニットは、少なくとも1つのマスターに接続されてもよい。最終段の分割論理ユニットの各第1の分割論理ユニット2011は、少なくとも2つのメモリーアレイモジュール202に接続される。最終段の分割論理ユニットの異なる第1の分割論理ユニット2011は、同一のメモリーアレイモジュール202に接続されてもよく、異なるメモリーアレイモジュール202に接続されてもよく、具体的には、メモリーアレイモジュールのアドレスのコード配列規則及び実際の要求に応じて設定されてもよく、接続原則は、各マスターが全てのメモリーアレイモジュールにアクセスすることができるように保証することである。図中において、中間段の分割論理ユニットにおける各段間の接続関係、及び中間段と最終段との接続関係の一部は、示されていない。
【0036】
例示的に、
図5は、本開示のさらに別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。本例で、第1段の分割論理ユニットの各第1の分割論理ユニット2011は、少なくとも1つのマスターに接続されてもよく、第1段の分割論理ユニットの各第1の分割論理ユニット2011は、その次段の各第1の分割論理ユニット2011のいずれにも接続され、中間段の分割論理ユニットの各第1の分割論理ユニット2011は、その次段の各第1の分割論理ユニット2011のいずれにも接続される。最終段の分割論理ユニットの各第1の分割論理ユニット2011は、少なくとも2つのメモリーアレイモジュール202に接続される。最終段の分割論理ユニットの異なる第1の分割論理ユニット2011は、同一のメモリーアレイモジュール202に接続されてもよく、異なるメモリーアレイモジュール202に接続されてもよく、具体的には、メモリーアレイモジュールのアドレスのコード配列規則及び実際の要求に応じて設定されてもよく、各マスターが全てのメモリーアレイモジュールにアクセスすることができればよい。
【0037】
例示的に、
図6は、本開示の1つの例示的な実施例にて提供される第1の分割論理モジュール201とメモリーアレイモジュール202との接続の概略図である。本例で、最終段の分割論理ユニットにおける各第1の分割論理ユニット2011は、各メモリーアレイモジュール202のいずれにも接続される。図中において、一部の第1の分割論理ユニット2011とメモリーアレイモジュールとの接続関係のみが示され、その他が示されておらず、その接続関係は既に示されたものと類似である。
【0038】
例示的に、
図7は、本開示の別の例示的な実施例にて提供される第1の分割論理モジュール201とメモリーアレイモジュール202との接続の概略図である。本例で、最終段の分割論理ユニットの各第1の分割論理ユニット2011は、プリセットの規則に基づき、少なくとも2組に分けられ、対応するメモリーアレイモジュール202は、アレイクラスタを形成し、各組が1つのアレイクラスタに対応し、アレイクラスタの区画は、実際の要求に応じて設定されてもよく、各段の分割論理ユニットにおける異なる第1の分割論理ユニットの並行分割を容易にし、また、より多くのメモリーアレイモジュールの並行応答をサポートすることを目的とし、各マスターが全てのメモリーアレイモジュールを共有することができるように保証する状況で、本開示の記憶装置を超大規模且つ高トラフィックのマルチポートの並行アクセスに適用させることができる。
【0039】
本開示は、メモリーアレイモジュール前の多段分割により、より大きな粒度の第1のアクセスコマンドを非常に小さな粒度の第2のアクセスコマンドに分割し、複数のメモリーアレイモジュールを並行に応答させることができ、アクセス効率を向上させるとともに、大規模且つ高トラフィックのマルチポートの並行アクセスを実現することができる。
【0040】
1つの選択可能な例で、
図8は、本開示の1つの例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。本例で、メモリーアレイモジュール202は、少なくとも1つのメモリーモジュール2021を含む。
【0041】
前記少なくとも1つのメモリーモジュールにおける各前記メモリーモジュール2021は、少なくとも1つの記憶ユニットを含み、各前記メモリーモジュールは、当該メモリーモジュールにアクセスする第2のアクセスコマンドに応答し、対応する動作を実行するために用いられる。
【0042】
ここで、メモリーモジュール2021に含まれる記憶ユニットの数量は、実際の要求に応じて設定されてもよく、本開示では限定されない。記憶ユニットは、マスターがメモリーにアクセスする基本単位であり、具体的な原理については、その説明が省略される。メモリーモジュールは、実際の要求に応じて設定された、小さな粒度のバーストアクセスコマンドの応答モジュールである。
【0043】
実際の応用で、メモリーモジュールは、チップ設計のレイアウトプラン(floorplan)及びチップの電力消費状況に応じて決定されてもよい。メモリーモジュールがバス論理よりも低い周波数で動作しても、ビッグデータのアクセスや記憶性能に影響を与えない。
【0044】
図9は、本開示の別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【0045】
1つの選択可能な例で、本開示のメモリーアレイモジュール202は、
前記少なくとも1つのメモリーモジュールにおける各メモリーモジュール2021に対応するメモリーモジュールアービタ2022をさらに含み、
各前記メモリーモジュールアービタ2022は、プリセットのアービトレーション規則に基づき、当該メモリーモジュールアービタ2022に対応するメモリーモジュール2021にアクセスする目標第2のアクセスコマンドを決定し、対応する当該メモリーモジュール2021を前記目標第2のアクセスコマンドに応答させるために用いられる。
【0046】
ここで、プリセットのアービトレーション規則は、実際の要求に応じて設定されてもよく、例えば、プリセットのアービトレーション規則は、たらい回し、先着順などであってもよい。具体的には限定されない。少なくとも2つの第2のアクセスコマンドが同一のメモリーモジュールアービタ2022に到達する場合、当該メモリーモジュールアービタ2022は、プリセットのアービトレーション規則に基づき、当該少なくとも2つの第2のアクセスコマンドのアクセス順序を決定し、アクセス順序に応じて、当該メモリーモジュールアービタ2022に対応するメモリーモジュール2021に現在アクセスする第2のアクセスコマンドを目標第2のアクセスコマンドとして決定することができる。現在、1つの第2のアクセスコマンドのみがメモリーモジュールアービタ2022に到達する場合、直接目標第2のアクセスコマンドとすることができる。
【0047】
図10は、本開示のさらに別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【0048】
1つの選択可能な例で、前記メモリーアレイモジュール202は、前記第1の分割論理モジュールに接続された配布論理ユニット2023をさらに含み、前記配布論理ユニット2023は、各前記メモリーモジュールアービタ2022にさらに接続され、前記第2のアクセスコマンドのアクセスアドレスに基づき、前記第2のアクセスコマンドを対応するメモリーモジュール2021のメモリーモジュールアービタ2022に配布するために用いられる。
【0049】
ここで、配布論理ユニット2023は、少なくとも1つ設けられてもよく、具体的には、実際の要求に応じて設けられてもよい。複数の配布論理ユニット2023に対して、そのうちの各配布論理ユニット2023がいずれも各メモリーモジュールアービタ2022に接続される。各配布論理ユニット2023は、第1の分割論理モジュール201にさらに接続され、第1の分割論理モジュール201から伝送された第2のアクセスコマンドを対応するメモリーモジュールアービタに配布するために用いられる。例示的に、
図11は、本開示のさらなる別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。本例で、メモリーアレイモジュール202は、複数の配布論理ユニット2023を含む。
【0050】
選択可能に、複数の配布論理ユニットにおける各配布論理ユニット2023は、異なるマスターにそれぞれ対応し、当該メモリーアレイモジュール202に到達する異なるマスターの第2のアクセスコマンドを、アクセスアドレスに基づいて対応するメモリーモジュール2021のメモリーモジュールアービタ2022にそれぞれ配布することを実現することができる。この場合に対して、相応に、第1の分割論理モジュール201は、異なるマスターにそれぞれ対応する第1の分割論理ユニットを有して、異なるマスターの第1のアクセスコマンドの並行分割を実現し、各マスターの分割後の第2のアクセスコマンドが、対応するメモリーアレイモジュール202における対応する配布論理ユニット2023に並行に到達し、さらに対応するメモリーモジュールアービタ2022に並行に配布することができる。それにより複数のマスターバーストアクセスの並行応答を実現し、アクセス効率を大幅に向上させ、本開示の記憶装置を超大規模且つ高トラフィックのマルチポートの並行アクセスに適用させることができる。
【0051】
図12は、本開示のさらなる別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【0052】
1つの選択可能な例で、前記第1の分割論理モジュール201は、少なくとも1つの第2の分割論理ユニット2012を含む。
【0053】
少なくとも1つの第2の分割論理ユニット2012における各前記第2の分割論理ユニット2012は、独立バスを介して1つのマスターに接続され、各前記第2の分割論理ユニット2012は、前記少なくとも2つのメモリーアレイモジュール202に接続され、前記第2の分割論理ユニット2012は、前記マスターにより生成された前記第1のアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、前記第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、前記少なくとも2つの第1のサブアクセスコマンドを前記少なくとも2つの第2のアクセスコマンドとして対応するメモリーアレイモジュール202に並行に伝送するために用いられる。
【0054】
ここで、バスは、任意の実施可能なバスを採用することができ、具体的には、実際の要求に応じて設けられてもよい。バスは、アドレスバス、データバス、及び制御バスを含むことができ、具体的なバスの構造及び原理については、その説明が省略される。プリセットのアドレスのコード配列規則は、実際の要求に応じて設定されてもよく、目的は、各マスターの第1のアクセスコマンドから分割して得られた各第2のアクセスコマンドのアクセスアドレスを異なるメモリーアレイモジュール202に対応させ、各第2のアクセスコマンドに並行応答することを保証することである。例えば、プリセットのアドレスのコード配列規則は、インターリーブ配列、上位クロス配列、下位クロス配列などであってもよい。具体的には限定されない。
【0055】
例示的に、
図13は、本開示の1つの例示的な実施例にて提供されるアドレスのコード配列の概略図である。本例では、インターリーブ配列方式でアドレスのコード配列を行い、例えば、第1のアクセスコマンドは、アクセス開始アドレスが2000であり、アクセス長さが16であり、分割によりアクセス長さが4の4つの第2のアクセスコマンドを取得し、アクセス開始アドレスは、それぞれ2000、2004、2008及び200Cであり、この4つの第2のアクセスコマンドは、4つの異なるメモリーアレイモジュール202に対応し、この4つのメモリーアレイモジュールは、この4つの第2のアクセスコマンドに並行に応答することができる。ここでは例示的な配列だけであり、記憶装置に含まれるメモリーアレイモジュール数量及び各メモリーアレイモジュールに係るアドレス数量は、いずれも実際の要求に応じて設定されてもよい。
【0056】
本開示で、各第2の分割論理ユニット2012は、独立バスを介して1つのマスターに接続され、各第2の分割論理ユニット2012は、少なくとも2つのメモリーアレイモジュール202に接続され、各マスター間で相対的に独立してアクセスすることを実現し、アクセス効率を効果的に向上させるとともに、アクセスの安定性をさらに向上させることができる。
【0057】
図14は、本開示のさらに別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【0058】
1つの選択可能な例で、前記第1の分割論理モジュール201は、少なくとも1つの第3の分割論理ユニット2013と、各前記第3の分割論理ユニット2013に対応する少なくとも2つの第4の分割論理ユニット2014とを含み、前記少なくとも1つの第3の分割論理ユニットの各前記第3の分割論理ユニット2013は、独立したバスを介して1つのマスターに接続され、各前記第4の分割論理ユニット2014は、前記少なくとも2つのメモリーアレイモジュール202に接続され、各前記第3の分割論理ユニット2013は、前記マスターにより生成された前記第1のアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、前記第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、前記少なくとも2つの第1のサブアクセスコマンドを前記第3の分割論理ユニット2013に対応する前記少なくとも2つの第4の分割論理ユニット2014に並行に伝送し、各前記第4の分割論理ユニット2014は、前記第3の分割論理ユニット2013の前記第1のサブアクセスコマンドのアクセスアドレス及び前記プリセットのアドレスのコード配列規則に基づき、前記第1のサブアクセスコマンドを少なくとも2つの第2のサブアクセスコマンドに分割し、各前記第2のサブアクセスコマンドを1つの前記第2のアクセスコマンドとし、各前記第2のアクセスコマンドを各前記メモリーアレイモジュール202に並行に伝送するために用いられる。
【0059】
ここで、プリセットのアドレスのコード配列規則は、実際の要求に応じて設定されてもよい。本例で、第1の分割論理モジュール201は、2段の分割論理ユニットを含み、第1段の分割論理ユニットは、少なくとも1つの第3の分割論理ユニット2013を含み、各第3の分割論理ユニット2013は、独立したバスを介して1つのマスターに接続され、異なるマスターの第1のアクセスコマンドが並行に分割されることができることを実現する。各第3の分割論理ユニット2013は、第2段の分割論理ユニットにおいて、対応する少なくとも2つの第4の分割論理ユニット2014を有する。異なるマスターの第1のアクセスコマンドが、2段の並列分割により対応する第2のアクセスコマンドを取得することを実現する。各第4の分割論理ユニット2014は、少なくとも2つのメモリーアレイモジュールにおける各メモリーアレイモジュール202に接続される。明確に表示するために、図中において、一部の第4の分割論理ユニット2014とメモリーアレイモジュール202との接続のみが示され、その他の第4の分割論理ユニット2014は、同様に各メモリーアレイモジュール202に接続されるが、示されていない。
【0060】
図15は、本開示のさらなる別の例示的な実施例にて提供される第1の分割論理モジュール201の構造の概略図である。
【0061】
1つの選択可能な例で、前記少なくとも2つのメモリーアレイモジュール202は、前記プリセットのアドレスのコード配列規則に基づき、少なくとも1つのアレイクラスタを形成し、同一の前記第3の分割論理ユニット2013における異なる第4の分割論理ユニット2014は、異なるアレイクラスタに対応し、同一の前記第3の分割論理ユニット2013における各前記第4の分割論理ユニット2014は、対応する前記アレイクラスタにおける各メモリーアレイモジュール202に接続される。
【0062】
ここで、アレイクラスタに含まれるアレイモジュール202の数量は、実際の要求に応じて設定されてもよい。例えば、各アレイクラスタは、2、3、4などの数量のメモリーアレイモジュールを含むことができる。アレイクラスタの区画は、各マスターの第3の分割論理ユニット2013の第2段における対応する第4の分割論理ユニット2014の数量に応じて決定されてもよく、各第1のアクセスコマンドの多段分割後の全ての第2のアクセスコマンドが、異なるメモリーアレイモジュールにそれぞれ対応するように保証し、異なるマスターの第1のアクセスコマンドは、異なるアドレスにアクセスする時に互いに隔離することができる。異なるマスターの第1のアクセスコマンドは、同一のアドレスにアクセスする時、多段分割により、より多くのメモリーアレイモジュールに対応することができ、より小さな粒度の並行応答を行い、アクセス効率をさらに向上させ、記憶装置をより大規模且つより大きいトラフィックのマルチポート並行アクセスに適用させることができる。メモリーアレイモジュールを大きい数量に設定し、アレイクラスタ分割を行った後、異なるマスターのアクセスが同時に同一のメモリーアレイモジュールにおける同一のメモリーモジュールに到達することがほとんどなく、キューイングしてアクセスする状況を効果的に低減し、アクセスの安定性を向上させる。
【0063】
例示的に、
図16は、本開示の1つの例示的な実施例にて提供されるアレイクラスタ区画の概略図である。本例では、合計で8つのメモリーアレイモジュール202を含み、4つのアレイクラスタに区画され、第1段の分割論理ユニットにおける各第3の分割論理ユニット2013は、第1のアクセスコマンドを4つの第1のサブアクセスコマンドに分割し、例えば、第1のアクセスコマンドは、開始アクセスアドレスが2000であり、アクセス長さが32であり、第3の分割論理ユニット2013は、第1のアクセスコマンドを、開始アドレスがそれぞれ2000、2008、2010、2018であり、アクセス長さが8である4つの第1のサブアクセスコマンドに分割し、第2段の第4の分割論理ユニット2014に並行に配布し、そのうちの1つの第4の分割論理ユニットは、開始アドレスが2000である第1のサブアクセスコマンドを、開始アドレスがそれぞれ2000及び2004であり、アクセス長さが4である2つの第2のサブアクセスコマンドに分割し、各第2のサブアクセスコマンドを1つの第2のアクセスコマンドとし、2つの第2のアクセスコマンドは、対応するアレイクラスタ(図中における第1のアレイクラスタ)における2つのメモリーアレイモジュールにそれぞれ伝送される。他の3つの第1のサブアクセスコマンドにそれぞれ対応する他の3つの異なるアレイクラスタについても同様である。複数のマスターが同時にロングバーストアクセスを行う場合、各マスターのロングバーストの第1のアクセスコマンドは、独立して分割することができ、異なるマスター間には互いに影響しない。各マスターは、いずれも各メモリーアレイモジュールにアクセスすることができ、異なるマスターによる各メモリーアレイモジュールの共有を実現する場合、アクセス時間を大幅に低減し、アクセス効率を向上させる。
【0064】
本例で、各マスターは、各メモリーアレイモジュールにアクセスするための独立したチャネルを有し、異なるマスター間には互いに独立し、これに基づき、多段分割とメモリーアレイモジュールのコード配列と組み合わせることで、超大規模且つ超高トラフィックのマルチポートのロングバーストアクセスを実現することができる。
【0065】
図17は、本開示のさらに別の例示的な実施例にて提供されるメモリーアレイモジュール202の構造の概略図である。
【0066】
1つの選択可能な例で、前記メモリーアレイモジュール202は、当該メモリーアレイモジュール202に接続された各前記第4の分割論理ユニット2014に対応する配布論理ユニット2023と、少なくとも1つのメモリーモジュールアービタ2022、及び各前記メモリーモジュールアービタ2022に対応するメモリーモジュール2021と、を含み、各前記メモリーモジュール2021は少なくとも1つの記憶ユニット20211を含み、各前記配布論理ユニット2023は、前記少なくとも1つのメモリーモジュールアービタにおける各メモリーモジュールアービタ2022に接続され、各前記配布論理ユニット2023は、当該配布論理ユニット2023に対応する前記第4の分割論理ユニット2014の前記第2のアクセスコマンドのアクセスアドレスに基づき、前記第2のアクセスコマンドを対応するメモリーモジュール2021のメモリーモジュールアービタ2022に配布するために用いられ、前記少なくとも1つのメモリーモジュールアービタにおける各前記メモリーモジュールアービタ2022は、プリセットのアービトレーション規則に基づき、当該メモリーモジュールアービタ2022に対応するメモリーモジュール2021にアクセスする目標第2のアクセスコマンドを決定するために用いられ、各前記メモリーモジュール2021は、当該メモリーモジュール2021にアクセスする前記目標第2のアクセスコマンドに応答し、対応する動作を実行するために用いられる。
【0067】
ここで、メモリーモジュールの数量は、実際の要求に応じて設定されてもよい。配布論理ユニットの数量は、当該メモリーアレイモジュールに接続された第4の分割論理ユニット2014の数量と同一である。同一のメモリーアレイモジュールに接続された第4の分割論理ユニット2014の数量は、実際の要求に応じて設定されてもよく、前記内容を参照し、ここではその説明が省略される。メモリーモジュールが目標第2のアクセスコマンドに応答して対応する動作を実行することは、読み出し動作又は書き込み動作を実行することを含むことができ、具体的には、第2のアクセスコマンドのアクセスタイプに基づいて実行する。具体的な読み書き原理については、その説明が省略される。
【0068】
本例で、異なる第4の分割論理ユニット2014の第2のアクセスコマンドは、異なる配布論理ユニットにより対応するメモリーモジュールのメモリーモジュールアービタに配布されることで、複数の第2のアクセスコマンドの並行配布を実現することができる。複数のマスターに対応する第2のアクセスコマンドが当該メモリーアレイモジュールに同時にアクセスする場合、メモリーアレイモジュール内部で並行配布を実現し、アクセス効率をさらに向上させる。配布後に複数の第2のアクセスコマンドが同一のメモリーモジュールにアクセスする場合、当該メモリーモジュールに対応するメモリーモジュールアービタでアービトレーションを行い、アクセス順序を決定する。
【0069】
1つの選択可能な例で、
図18は、本開示の別の例示的な実施例にて提供される記憶装置の構造の概略図である。ここで、1つのメモリーアレイモジュール202の構造のみを展開して表示し、他のメモリーアレイモジュール202は、当該メモリーアレイモジュールと構造原理が同一であり、ここではその説明が省略され、本例では、各マスターは、メモリーモジュールアービタに接続された独立したチャネルを有し、当該独立したチャネルは、第3の分割論理ユニット2013と、当該第3の分割論理ユニット2013に接続された少なくとも2つの第4の分割論理ユニット2014と、当該少なくとも2つの第4の分割論理ユニットにおける各第4の分割論理ユニット2014に接続された配布論理ユニットと、を含む。相対的に独立したチャネルに基づいて各マスターの第1のアクセスコマンドの独立分割及び配布を実現し、メモリーモジュール段階に至ってキューイングしてアクセスすることに出会う可能性があり、当該出会う確率は、アドレスのコード配列及びメモリーモジュール、メモリーアレイモジュール、アレイクラスタなどの設定により、より小さく低減し、それにより超大規模、超高トラフィックのマルチポートの並行アクセスのアクセス効率を保証することができる。
【0070】
例示的に、マルチコア深層学習チップにおいて、一般的なシーンは、記憶中のデータの一部(例えば重みパラメータ)が、複数(例えばX個)の加速コア(マスター)により繰り返して読み取られることである。本開示の記憶装置に基づき、例えば、メモリーアレイモジュールがM個のアレイクラスタに区画され、各アレイクラスタがN個のメモリーアレイモジュールを含み、各メモリーアレイモジュールがK個のメモリーモジュールを含む場合、M*N*K個のメモリーモジュールがこのX個の加速コアのこの一部のアドレス要求にともに応答することを実現することができ、アクセス時間を大幅に低減し、アクセス効率を向上させる。マスターがバースト内部ディスオーダー(in-burst out of order)機能を有する場合、複数の加速コアが同時に読み取る場合が発生しても、いずれかの加速コアもアクセスや記憶性能が、1つの加速コアのみがアクセスして読み取る場合に比べて大幅に低下する状況が発生しない。マスターのバースト内部ディスオーダー機能とは、読み取った異なるアドレスのデータを順に返信する必要がないことを許し、どれが返信できれば、どれが先に返信することであり、マスターは、異なる返信結果をその必要なデータに組み込むことができる。従来技術では、複数の加速コアが同時に読み取る場合、読み取り性能が1/Xに低下するが、読み取り性能が1/Xに低下することを避けるために、ソフトウェアによる追加のアクセスや記憶時間ずらしの最適化を使用しなければならなかったり、又は同組のデータが複数部にコピーされて別々に記憶されることによるリソース浪費をしなければならない。分かるように、本開示の記憶装置は、従来技術に比べて、アクセス効率を大幅に向上させるだけでなく、ソフトウェアによる追加のアクセスや記憶時間ずらしの最適化を使用する必要もなく、複数部が記憶されることによってリソースを浪費する必要もない。
【0071】
1つの選択可能な例で、第1の分割論理モジュール201の分割段数及び各段の分割粒度は、レイアウトプラン(floorplan)の状況と記憶要求、及び並行マスターのデータに応じて具体的に決定されてもよく、上記
図18の2つの段の分割に限定されない。例えば、深層学習加速チップは、多くのメモリーアレイモジュールを必要とし、大きな面積を占め、マルチマスターの並行アクセスに合わせ、巻線による輻輳(congestion)が面積のボトルネックとなる可能性があり、この場合、floorplanに基づいてメモリーアレイモジュール外のバス配布の段数及び各段の分割の粒度を柔軟に決定し、最もマッチするマスターの数及び物資実現の組み合わせを決定することができる。
【0072】
1つの選択可能な例で、メモリーアレイモジュール202における各メモリーモジュールに対して、実際の要求に応じて横方向又は縦方向にさらに区画してもよく、複数の第2のアクセスコマンドが同一のメモリーモジュールに同時にアクセスする場合、2つの第2のアクセスコマンドのアクセスアドレスが異なると、それぞれメモリーモジュールにおける異なる領域の記憶ユニットが応答し、アクセス効率をさらに向上させることができる。
【0073】
1つの選択可能な例で、1つのメモリーモジュール2021は、1つの記憶ユニットとすることができ、各マスターは、独立したバスを介して1つの第3の分割論理ユニット2013に接続され、1つの第3の分割論理ユニットは、それぞれ、バスを介して少なくとも2つの第4の分割論理ユニット2014に並行に接続され、各第4の分割論理ユニット2014は、1つのメモリーアレイモジュール202における1つの配布論理ユニット2023に接続され、各配布論理ユニット2023は、それぞれ、バスを介してそれが位置するメモリーアレイモジュールにおける各メモリーモジュール2021に接続され、各マスターが独立した多段配布バスを有することを実現し、それによりマスターのロングバースト伝送を小さな粒度伝送に分解して対応するメモリーアレイモジュールに並行に伝送し、メモリーアレイモジュールのアドレスのコード配列により、同一のバーストに対して、複数の単メモリーモジュール伝送が同一のメモリーアレイモジュールにできないことを保証する。メモリーアレイモジュール202において、各マスターは、自体の独立した配布バスを有し、アドレスのコード配列に基づき、単メモリーモジュールアクセスをメモリーアレイモジュールにおける対応する記憶ユニットに伝送し、複数のマスターのアクセスは、各記憶ユニットに至ってこそアービトレーションを行い、アービトレーションする前の通路は、いずれも独立し、より高い並行度を保証し、異なるマスター間の相互影響を低減するだけでなく、より良好なハードウェア隔離を実現し、それによりISO26262に対する効果的な互換とサポートを実現することができる。メモリーアレイモジュール外の多段配布及びメモリーアレイモジュール内の1から複数への配布により、メモリーアレイモジュールによる同一のマスターの帯域幅並行度を実現して向上させる。
【0074】
本発明の記憶装置に基づき、プリセットのアドレスのコード配布規則は、チップの具体的な要求に応じて多様なモードに設定されてもよい。仮想化又はハードウェア隔離などの安全性要求があるシーンに対して、アドレスのコード配布により、異なるマスターが同一のメモリーアレイモジュールにアクセスしないようにすることを実現することができる。異なるマスターが完全に独立したバス及び配布論理を使用することと組み合わせて、異なるマスターの完全な物理的な分離をさらに実現することができる。隔離の要求がないシーンでは、フルアドレス空間コードにより、ロングバーストアクセスを異なるメモリーモジュールに分散することができ、全てのメモリーモジュールが非極性シーンで平均的な利用率があるように保証し、そのような均一な使用の効果は、ハードウェアにより保証され、ソフトウェアは、追加の適合作業を行う必要がなく、ソフトウェア使用の優しさ及び開発の柔軟性を向上させ、ソフトウェア開発の作業量を大幅に低減し、ソフトウェア最適化の不足に起因するそれ以後のデバッグの必要性及びリスクを低減する。
【0075】
図19は、本開示のさらに別の例示的な実施例にて提供される記憶装置の構造の概略図である。
【0076】
1つの選択可能な例で、前記第1の分割論理モジュール201は、バスプロトコルチェックを行うためのプロトコルチェックユニット2015をさらに含む。
【0077】
ここで、プロトコルチェックユニット2015は、アクセス応答状況に応じて、例えば、タイムアウトのチェック、エンドツーエンドECCコードのチェックなどのバスプロトコルチェックを行うことができ、具体的には、実際の要求に応じて設定されてもよい。
【0078】
例示的には、安全性要求が高いチップに対して、プロトコルチェックユニット2015が設けられてもよい。
【0079】
1つの選択可能な例で、プロトコルチェックユニット2015は、第1段の分割論理ユニットにおける分割論理ユニット(例えば、上記第1の分割論理ユニット2011、第2の分割論理ユニット2012、及び第3の分割論理ユニット2013)に設置されてもよく、第1段の分割論理ユニットにおける分割論理ユニットとは独立したユニットであってもよく、具体的には、実際の要求に応じて設置されてもよい。
【0080】
1つの選択可能な例で、前記第1の分割論理モジュール201は、前記メモリーアレイモジュール202により返信されたアクセス結果に基づき、対応するマスターがバースト内部ディスオーダーをサポートすることに応答し、前記アクセス結果を前記マスターに伝送し、前記マスターがバースト内部ディスオーダーをサポートしないことに応答し、前記アクセス結果をソートした後に前記マスターに伝送するための応答ユニット2016をさらに含む。
【0081】
ここで、バースト内部ディスオーダーとは、ディスオーダー伝送であり、例えば、書き込み伝送に対して、同一のマスターから送信された書き込みアドレス及び書き込みデータがディスオーダーであり、例えば、m1は、順に2つの書き込みコマンドCMD1とCMD2を送信して、S1とS2にそれぞれアクセスし、この時にまずS2に書き込みデータを送信してからS1に書き込みデータを送信することができ、読み取り伝送に対して、同一のスレーブ(slave、例えば本開示の記憶装置)が受信した読み取りアドレスは、返信された読み取りデータとディスオーダーであることができ、同一のマスターから送信された書き込みコマンド又は同一のスレーブが受信した読み取りコマンドに対して、バースト(burst)間のクロス型のディスオーダー伝送は、例えば、m1が順に2つの書き込みコマンドCMD1及びCMD2を送信し、データを書き込む時にCMD1のデータの送信が完了しない場合にCMD2のデータを送信することができる。具体的なバースト内部ディスオーダーの原理については、その説明が省略される。マスターの内部ディスオーダーと組み合わせ、本開示のメモリーアレイモジュール202から返信されたアクセス結果をタイムリにマスターに返信することができ、それにより各メモリーアレイモジュールの応答効率をさらに向上させることができる。
【0082】
高並行度の記憶応答、及びバースト内部ディスオーダーをサポートする機能を利用し、本開示の記憶装置は、複数のマスターが同時に同一のアドレス空間にアクセスするアクセス衝突による遅延影響を効果的に低減することができ、安定的な高帯域幅と低遅延を提供すると同時に、複数のメモリーモジュールの並行応答も単一の記憶ユニット効率によるアクセスや記憶性能への影響を低減し、メモリーモジュールの動作周波数を低減してもビッグデータブロックのアクセス性能に影響を与えない。例えばSRAM(Static Random-Access Memory、スタティック・ランダム・アクセス・メモリー)は、バスに対して非同期であってもよく、又は1/Fで動作するバス周波数であってもよく、Fは、いかなる有効な整数であってもよい。実際のチップ周波数とプロセスに応じて、面積と消費電力がより理想的なSRAMメモリーモジュールを選択することができる。
【0083】
1つの選択可能な例で、応答ユニット2016は、第1段の分割論理ユニットにおける分割論理ユニット(例えば、上記第1の分割論理ユニット2011、第2の分割論理ユニット2012、及び第3の分割論理ユニット2013)に設置されてもよく、第1段の分割論理ユニットにおける分割論理ユニットとは独立したユニットであってもよく、具体的には、実際の要求に応じて設定されてもよい。
【0084】
1つの選択可能な例で、多段の分割論理ユニットにおける各段の分割論理ユニットの各分割論理ユニット(例えば、上記各段の第1の分割論理ユニット2011、第2の分割論理ユニット2012、第3の分割論理ユニット2013、及び第4の分割論理ユニット2014)にいずれも応答ユニット2016が設けられ、下段から返信されたアクセス結果を上段に報告するために用いられる。メモリーアレイモジュール202の配布論理ユニット2023にも対応する応答ユニットが設けられてもよく、メモリーモジュールから返信されたアクセス結果を、それと接続された分割論理ユニットに報告するために用いられ、具体的には、実際の要求に応じて設置されてもよい。各段階の返信結果は、バスを介して伝送されてもよく、具体的な伝送原理については、その説明が省略される。
【0085】
1つの選択可能な例で、本開示の記憶装置における異なる段の第1の分割論理ユニット2011間の接続、及び最終段の第1の分割論理ユニット2011と対応するメモリーアレイモジュール202との接続は、バスを介して接続されることができる。第2の分割論理ユニット2012と各メモリーアレイモジュール202との接続は、バスを介して接続されることができる。第3の分割論理ユニット2013と第4の分割論理ユニット2014との間の接続、及び第4の分割論理ユニット2014と各メモリーアレイモジュール202との間の接続も、バスを介して接続されることができる。各第4の分割論理ユニット2014と配布論理ユニット2023との間には、バスを介して接続される。これに応じて、マスターの第1のアクセスコマンドがメモリーモジュールに分割して配布された後、メモリーモジュールの応答結果がアクセス過程と同一の経路の返信チャネルを経て上向きに段階的に返信し、最終的にマスターに返信する。具体的なバス伝送原理については、ここではその説明が省略される。本開示におけるバスは、AMBA(Advanced Microcontroller Bus Architecture、高度なマイクロコントローラアーキテクチャ)バスのように、実際の要求に応じて設置されてもよい。
【0086】
1つの選択可能な例で、少なくとも1段の分割論理ユニットにおける異なる段の分割論理ユニットは、同一又は異なる動作周波数を採用し、及び/又は、前記少なくとも1段の分割論理ユニットは、前記少なくとも2つのメモリーアレイモジュールと同一又は異なる動作周波数を採用する。
【0087】
ここで、動作周波数は、同期であっても非同期であってもよく、具体的には、実際の要求に応じて設定されてもよい。具体的には、各段の分割論理ユニットは、実際の要求に応じて、それに対応する動作周波数が設定されてもよく、他段の分割論理ユニットと同一であってもよく、他段の分割論理ユニットと異なってもよく、各段の分割論理ユニットとメモリーアレイモジュールの動作周波数は、同一であってもよく、異なってもよく、具体的には限定されない。例示的に、第1段の分割論理ユニットは、1GHz(ギガヘルツ)の動作周波数を採用し、第2段の分割論理ユニットは、0.5GHz(ギガヘルツ)の動作周波数を採用し、ここでは単に例示的な説明であり、実際の動作周波数に対する限定ではなく、実際の応用において、各段の分割論理ユニット及びメモリーアレイモジュールの動作周波数は、実際の要求に応じて任意の必要の周波数値に設定されてもよく、本開示では限定されない。
【0088】
1つの選択可能な例で、ある程度の安全性要求があるチップに対して、プリセットのコードに基づいて記憶データを保護することができ、例えば、パリティ(parity)又はECC(Error Correcting Code、誤り訂正符号)などを設定することで記憶データを保護することができる。この場合、プリセットのアドレスのコード配列規則に基づき、対応する分割規則が設定されてもよく、例えば、128ビットの数に対して、2つの64+8ビットの数に分割して、保護して記憶することができ、アクセス効率を向上させ、具体的な分割は、実際の要求に応じて設定されてもよい。
【0089】
本開示の記憶装置は、多段の分割及び配布論理により、ロングバーストのアクセスを小さな粒度に分解してアクセスし、アドレスのコード配列を使用して、小さな粒度のアクセスを多数の並行のメモリーモジュールに均等に配信する。高並行度により、マルチマスターの並行アクセス衝突による影響を相殺し、マルチコア並行実行環境下でのデータアクセスの安定的な高トラフィックを実現し、アクセス遅延の確実可能性及びソフトウェア使用の高い透明性を保証する。本開示の記憶装置は、超大規模な高トラフィックのマルチポート並列オンチップ共有記憶システムに用いることができる。また、本開示の記憶装置は、モジュール化、高構造化により、高拡張性と実現容易性を実現し、大容量メモリアクセスの一貫性と確実性を保証する。本開示の記憶装置は、FPGA(Field Programmable Gate Array、フィールド・プログラマブル・ゲート・アレイ)、SoC(System on Chip、システム・オン・チップ)、ASIC(Application Specific Integrated Circuit、特定用途向け集積回路)などに実現することができる。
【0090】
例示的な方法
図20は、本開示の1つの例示的な実施例にて提供される記憶方法のフローチャートである。本実施例は、電子機器、具体的に自動運転の車載コンピューティングプラットフォームなどに適用されてもよく、本開示の記憶方法は、上記の実施例又は選択可能な例のいずれかにて提供される記憶装置により実行されてもよく、
図20に示すように、以下のステップを含む。
【0091】
ステップ501において、第1のアクセスコマンドのアクセスアドレスに基づき、第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割する。
【0092】
ステップ502において、少なくとも2つの第2のアクセスコマンドに基づき、対応するアクセス動作を実行する。
【0093】
上記各ステップの具体的な動作は、前記実施例を参照し、ここではその説明が省略される。
【0094】
本実施例にて提供される記憶方法は、ロングバーストの第1のアクセスコマンドを、より小さな粒度の第2のアクセスコマンドに分割し、少なくとも2つのメモリーアレイモジュールに並行にアクセスすることで、少なくとも2つのメモリーアレイモジュールが並行に応答することができ、ロングバーストの第1のアクセスコマンドの応答時間を効果的に低減し、それによりマルチマスターが並行にアクセスする場合に、各マスターがアクセスするアクセス時間を効果的に低減し、それによりアクセス効率を向上させることができる。
【0095】
図21は、本開示の別の例示的な実施例にて提供される記憶方法のフローチャートである。
【0096】
1つの選択可能な例で、ステップ501においての、第1のアクセスコマンドのアクセスアドレスに基づき、第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するステップは、以下を含む。
【0097】
ステップ5011aにおいて、第1のアクセスコマンドのアクセスアドレスに基づき、第1のアクセスコマンドに対して少なくとも1段の分割を行い、少なくとも2つの第2のアクセスコマンドを取得し、ここで、第1段の分割は、第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、中間段の分割の各段は、現在段の前段の分割により得られた少なくとも2つの前段のサブアクセスコマンドにおける対応する前段のサブアクセスコマンドを少なくとも2つの現在段のサブアクセスコマンドに分割し、最終段の分割は、その前段の分割により得られた前段のサブアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割する。
【0098】
1つの選択可能な例で、ステップ502においての、少なくとも2つの第2のアクセスコマンドに基づき、対応するアクセス動作を実行するステップは、以下を含む。
【0099】
5021aにおいて、それぞれ少なくとも2つの第2のアクセスコマンドにおける各第2のアクセスコマンドに基づき、第2のアクセスコマンドに対応するメモリーアレイモジュールに並行にアクセスし、メモリーアレイモジュールに、対応する動作を実行させる。
【0100】
1つの選択可能な例で、5021aにおいての、それぞれ前記少なくとも2つの第2のアクセスコマンドにおける各前記第2のアクセスコマンドに基づき、前記第2のアクセスコマンドに対応するメモリーアレイモジュールに並行にアクセスし、前記メモリーアレイモジュールに、対応する動作を実行させる前記ステップは、各前記第2のアクセスコマンドに対して、プリセットのアービトレーション規則に基づき、当該メモリーアレイモジュールにおけるメモリーモジュールにアクセスする目標第2のアクセスコマンドを決定し、各メモリーモジュールに前記目標第2のアクセスコマンドに応答して対応する動作を実行させることを含む。
【0101】
図22は、本開示の例示的な実施例にて提供されるステップ501のフローチャートである。
【0102】
1つの選択可能な例で、ステップ501においての、第1のアクセスコマンドのアクセスアドレスに基づき、第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するステップは、以下を含む。
【0103】
ステップ5011bにおいて、少なくとも1つのマスターにおける各マスターにより生成された第1のアクセスコマンドに対して、少なくとも1つの第1のアクセスコマンドを取得する。
【0104】
ステップ5012bにおいて、少なくとも1つの第1のアクセスコマンドにおける各第1のアクセスコマンドに対して、下記方式で並行に分割する。すなわち、各第1のアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、少なくとも2つの第1のサブアクセスコマンドを少なくとも2つの第2のアクセスコマンドとする。
【0105】
図23は、本開示の別の例示的な実施例にて提供されるステップ501のフローチャートである。
【0106】
1つの選択可能な例で、ステップ501においての、第1のアクセスコマンドのアクセスアドレスに基づき、第1のアクセスコマンドを少なくとも2つの第2のアクセスコマンドに分割するステップは、以下を含む。
【0107】
ステップ5011cにおいて、少なくとも1つのマスターにおける各マスターにより生成された第1のアクセスコマンドに対して、少なくとも1つの第1のアクセスコマンドを取得する。
【0108】
ステップ5012cにおいて、少なくとも1つの第1のアクセスコマンドにおける各第1のアクセスコマンドに対して、下記ステップで並列に分割を行い、各第1のアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、第1のアクセスコマンドを少なくとも2つの第1のサブアクセスコマンドに分割し、少なくとも2つの第1のサブアクセスコマンドにおける各第1のサブアクセスコマンドのアクセスアドレス及びプリセットのアドレスのコード配列規則に基づき、各第1のサブアクセスコマンドを少なくとも2つの第2のサブアクセスコマンドに分割し、各第1のアクセスコマンドにおける各第2のサブアクセスコマンドを1つの第2のアクセスコマンドとし、少なくとも2つの第2のアクセスコマンドを取得する。
【0109】
図24は、本開示のさらに別の例示的な実施例にて提供される記憶方法のフローチャートである。
【0110】
1つの選択可能な例で、本開示の方法は、以下をさらに含む。
【0111】
ステップ503において、アクセス結果に基づき、対応するマスターがバースト内部ディスオーダーをサポートすることに応答し、アクセス結果をマスターに伝送し、マスターがバースト内部ディスオーダーをサポートしないことに応答し、アクセス結果をソート(sort)した後にマスターに伝送する。
【0112】
1つの選択可能な例で、本開示の方法は、バスプロトコルチェックを行うことをさらに含むことができる。
【0113】
本開示の上記各ステップの具体的な動作は、前記装置の実施例を参照し、ここではその説明が省略される。
【0114】
1つの選択可能な例で、本開示の少なくとも1段の分割における異なる段の分割は、同一又は異なる動作周波数を採用することができ、及び/又は、少なくとも1段の分割及びメモリーアレイモジュールは、同一又は異なる動作周波数を採用することができる。動作周波数は、同期であっても非同期であってもよい。
【0115】
本開示の実施例にて提供される記憶方法のいずれかは、適切なデータ処理能力を有する任意の機器により実行することができ、端末機器及びサーバなどを含むが、それらに限定されない。又は、本開示の実施例にて提供される記憶方法のいずれかは、プロセッサーにより実行することができ、例えば、プロセッサーは、メモリーに記憶された対応する命令を呼び出すことで本開示の実施例に言及する記憶方法のいずれかを実行する。以下、その説明が省略される。
【0116】
例示的な電子機器
本開示の実施例にてさらに提供される電子機器は、コンピュータプログラムを記憶するためのメモリーと、
前記メモリーに記憶されたコンピュータプログラムを実行するためのプロセッサーと、を含み、前記コンピュータプログラムが実行されると、本開示の上記の実施例のいずれかに記載の記憶方法を実現する。
【0117】
図25は、本開示の電子機器の1つの応用実施例の構造の概略図である。本実施例で、当該電子機器10は、1つ以上のプロセッサー11及びメモリー12を含む。
【0118】
プロセッサー11は、中央処理装置(CPU)又はデータ処理能力及び/又は命令実行能力を有する他の形態の処理ユニットであってもよく、電子機器10における他のコンポーネントを制御して所望の機能を実行することができる。
【0119】
メモリー12は、例えば、揮発性メモリー及び/又は不揮発性メモリーなどの様々な形態のコンピュータ可読記憶媒体を含むことができる1つ以上のコンピュータプログラム製品を含むことができる。前記揮発性メモリーは、例えば、ランダムアクセスメモリー(RAM)及び/又はキャッシュ(cache)などを含むことができる。前記不揮発性メモリはー、例えば、リードオンリーメモリー(ROM)、ハードディスク、フラッシュメモリーなどを含むことができる。前記コンピュータ可読記憶媒体には1つ又は複数のコンピュータプログラム命令を記憶することができ、プロセッサー11は、前記プログラム命令を実行して、上述した本開示の各実施例の方法及び/又は他の所望の機能を実現することができる。前記コンピュータ可読記憶媒体には、入力信号、信号成分、ノイズ成分などの様々なコンテンツをさらに記憶することができる。
【0120】
一例で、電子機器10は、入力装置13及び出力装置14をさらに含むことができ、これらのコンポーネントは、バスシステム及び/又は他の形態の接続機構(図示せず)により互いに接続される。
【0121】
例えば、当該入力装置13は、音源の入力信号を取り込むための上記マイクロホン又はマイクロホンアレイなどであってもよい。
【0122】
また、当該入力装置13は、例えば、キーボードやマウスなどをさらに含むことができる。
【0123】
当該出力装置14は、決定された距離情報、方向情報などを含む様々な情報を外部に出力することができる。当該出力装置14は、例えば、ディスプレイ、スピーカー、プリンター、通信ネットワーク及びそれらが接続された遠隔出力機器などを含むことができる。
【0124】
当然ながら、簡略化のため、
図25では、当該電子機器10のうち、本開示に係るコンポーネントの一部のみを示し、バス、入力/出力インタフェースなどのコンポーネントは省略される。これに加えて、具体的な応用状況に応じて、電子機器10は、その他の任意の適切なコンポーネントをさらに含むことができる。
【0125】
1つの選択可能な例で、
図26は、本開示の電子機器の別の応用実施例の構造の概略図である。本例で、当該電子機器10は、以上の実施例のいずれかにて提供される記憶装置を含む。
【0126】
例示的なコンピュータプログラム製品及びコンピュータ可読記憶媒体
上記の方法及び機器に加えて、本開示の実施例は、プロセッサーにより実行されると、前記プロセッサーに、本明細書の上記の「例示的な方法」の部分で記述された本開示の様々な実施例による方法におけるステップを実行させる、コンピュータプログラムコマンドを含む、コンピュータプログラム製品であってもよい。
【0127】
前記コンピュータプログラム製品は、Java(登録商標)、C++などのオブジェクト指向プログラミング言語、及び「C」言語又は類似のプログラミング言語などの従来の手続き型プログラミング言語を含む、1つ又は複数のプログラミング言語の任意の組み合わせで、本開示の実施例の動作を実行するためのプログラムコードを作成することができる。プログラムコードは、完全にユーザコンピューティング機器上で実行され、部分的にユーザコンピューティング機器上で実行され、スタンドアロンソフトウェアパッケージとして実行され、部分的にユーザコンピューティング機器上で、部分的にリモートコンピューティング機器上で実行され、又は完全にリモートコンピューティング機器又はサーバ上で実行されることができる。
【0128】
さらに、本開示の実施例は、プロセッサーにより実行されると、前記プロセッサーに、本明細書の上記「例示的な方法」の部分で記述された本開示の様々な実施例による方法におけるステップを実行させる、コンピュータプログラムコマンドを記憶したコンピュータ可読記憶媒体であってもよい。
【0129】
前記コンピュータ可読記憶媒体は、1つ又は複数の可読媒体の任意の組み合わせを採用することができる。可読媒体は、可読信号媒体又は可読記憶媒体であってもよい。可読記憶媒体は、例えば、電気、磁気、光学、電磁、赤外線、又は半導体のシステム、装置、又はデバイス、又は以上の任意の組み合わせを含むことができるが、これらに限定されない。可読記憶媒体のより具体的な例(非網羅的なリスト)としては、1つ以上のワイヤを有する電気接続、ポータブルディスク、ハードディスク、ランダムアクセスメモリー(RAM)、リードオンリメモリー(ROM)、消去可能プログラマブルリードオンリメモリー(EPROM又はフラッシュメモリー)、光ファイバー、ポータブルコンパクトディスクリードオンリメモリー(CD-ROM)、光記憶デバイス、磁気記憶デバイス、又は上記任意の適切な組み合わせを含む。
【0130】
以上、具体的な実施例と組み合わせて、本開示の基本原理を記述したが、本開示で言及された利点、優位性、効果などは、例に過ぎず、限定的なものではなく、それらの利点、優位性、効果などは、本開示の各実施例が必ず備えると考えるべきではないことに指摘される必要がある。また、上記開示の具体的な詳細は、例示的な作用及び理解を容易にするための作用に過ぎず、限定的なものではなく、上記詳細は、本開示が必ず上記具体的な詳細で実現されることを限定するものではない。
【0131】
本開示に係るデバイス、装置、機器、システムのブロック図は、単に例示的な例に過ぎず、必ずブロック図に示される方式で接続、配置、構成を行うことを要求又は暗示することを意図していない。当業者であれば、これらのデバイス、装置、機器、システムを任意の方式で接続、配置、構成することができることを認識する。「含む」、「含有する」、「有する」などの単語は、開放性語彙であり、「含むが限定されない」ことを意味し、それらと交換して使用することができる。本明細書で使用される「又は」及び「及び」という語彙は、「及び/又は」という語彙を指し、文脈が明らかにそうでないことを示さない限り、それらと交換して使用することができる。ここで使用される「例えば」という語彙は、「例えば、しかし、これに限定されない」という連語を指し、それらと交換して使用することができる。また、本開示の装置、機器及び方法において、各構成要素又は各ステップは、分解されてもよく、及び/又は再結合されてもよい。これらの分解及び/又は再結合は、本開示の均等手段と見なされるべきである。