(57)【要約】      （修正有）【課題】イメージデータキューブを格納するように構成されたメモリのアクセスを提供する。【解決手段】メモリ１０とメモリ２０との間のデータ転送を管理する装置３０は、論理バンク、論理行および論理列を指定する論理開始アドレスならびにバーストサイズを有するメモリアクセス要求を受け取るように構成された入力側と、論理開始アドレスおよびバーストサイズに基づいて複数の物理メモリアドレスを生成するように構成され、異なるメモリ行にマッピングされた連続的な論理開始アドレスがいずれも異なるメモリバンクにマッピングされる、メモリアドレスジェネレータ１００と、を備える。【選択図】図１
2020166861.tif 000002
【特許請求の範囲】
【請求項１】
イメージデータキューブを格納するように構成されたメモリにアクセスする装置であって、前記メモリは、複数のメモリバンクを有し、各メモリバンクは、メモリ行およびメモリ列を有し、前記装置は、
論理バンク、論理行および論理列を指定する論理開始アドレス、ならびに、バーストサイズを有するメモリアクセス要求を受け取るように構成された入力側と、
前記論理開始アドレスおよび前記バーストサイズに基づいて複数の物理メモリアドレスを生成するように構成され、異なるメモリ行にマッピングされた連続的な論理開始アドレスがいずれも異なるメモリバンクにマッピングされるメモリアドレスジェネレータと、
を備える装置。
【請求項２】
前記メモリアドレスジェネレータは、さらに、異なるメモリ列、同じメモリ行かつ同じメモリバンクにマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、
請求項１記載の装置。
【請求項３】
前記メモリアドレスジェネレータは、さらに、同じメモリ列、同じメモリ行かつ異なるメモリバンクにマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、
請求項１記載の装置。
【請求項４】
前記メモリアドレスジェネレータは、さらに、メモリバンクのオーバフロー時に異なるメモリ行にマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、
請求項３記載の装置。
【請求項５】
前記メモリアドレスジェネレータは、さらに、異なるメモリ列、異なるメモリ行かつ異なるメモリバンクにマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、
請求項１記載の装置。
【請求項６】
前記イメージデータキューブは、レーダーイメージデータキューブであり、前記メモリ行、前記メモリバンクおよび前記メモリ列は、それぞれ、ドップラーデータ、仮想チャネルデータおよびレンジデータを格納するように構成されている、
請求項１記載の装置。
【請求項７】
前記メモリアドレスジェネレータは、さらに、奇数個のメモリバンクにアクセスするように構成されている、
請求項１記載の装置。
【請求項８】
前記メモリアドレスジェネレータは、さらに、１つのメモリバンクの一部分の物理メモリアドレスの生成をスキップして、前記一部分にいかなるイメージデータも格納しないように構成されている、
請求項１に記載の装置。
【請求項９】
前記メモリアドレスジェネレータは、さらに、１つのメモリバンクの物理メモリアドレスの生成をスキップして、前記スキップしたメモリバンクにいかなるイメージデータも格納しないように構成されている、
請求項８記載の装置。
【請求項１０】
前記装置は、複数のメモリバンクのそれぞれにおける１つのメモリ行を同時に開いておくように構成されている、
請求項１記載の装置。
【請求項１１】
前記装置は、前記複数のメモリバンクのうち１つのメモリバンクの１つのメモリ行が開いている間に、前記複数のメモリバンクのうち別のメモリバンクの１つのメモリ行を閉じて、別のメモリ行を開くように構成されている、
請求項１０記載の装置。
【請求項１２】
前記メモリは、動的ランダムアクセスメモリ（ＤＲＡＭ）である、
請求項１記載の装置。
【請求項１３】
前記ＤＲＡＭは、半導体技術協会（ＪＥＤＥＣ）に準拠している、
請求項１２記載の装置。
【請求項１４】
前記装置は、動的ランダムアクセスメモリ（ＤＲＡＭ）コントローラまたはダイレクトメモリアクセス（ＤＭＡ）コントローラである、
請求項１記載の装置。
【請求項１５】
イメージデータキューブを格納するように構成されたメモリにアクセスする方法であって、前記メモリは、複数のメモリバンクを有し、各メモリバンクは、メモリ行およびメモリ列を有し、前記方法は、
論理バンク、論理行および論理列を指定する論理開始アドレス、ならびに、バーストサイズを有するメモリアクセス要求を入力側で受け取るステップと、
メモリアドレスジェネレータによって、前記論理開始アドレスおよび前記バーストサイズに基づいて、複数の物理メモリアドレスを生成するステップと、
を含み、
異なるメモリ行にマッピングされる連続的な前記論理開始アドレスは、いずれも異なるメモリバンクにマッピングされる、
方法。
【請求項１６】
前記複数の物理メモリアドレスを生成するステップを、
異なるメモリ列、同じメモリ行かつ同じメモリバンクにマッピングされる連続的な論理開始アドレス、
同じメモリ列、同じメモリ行かつ異なるメモリバンクにマッピングされる連続的な論理開始アドレス、
メモリバンクのオーバフロー時に異なるメモリ行にマッピングされる連続的な論理開始アドレス、または、
異なるメモリ列、異なるメモリ行かつ異なるメモリバンクにマッピングされる連続的な論理開始アドレス、
に対して行う、
請求項１５記載の方法。
【請求項１７】
前記方法は、さらに、１つのメモリバンクの少なくとも一部分の物理メモリアドレスの生成をスキップして、前記一部分がいかなるイメージデータも格納しないようにするステップを含む、
請求項１５記載の方法。
【請求項１８】
前記方法は、さらに、１つのメモリバンクの物理メモリアドレスの生成をスキップして、前記スキップされたメモリバンクがいかなるイメージデータも格納しないようにするステップを含む、
請求項１５記載の方法。
【請求項１９】
複数のメモリバンクのそれぞれにおける１つのメモリ行を同時に開いておく、
請求項１５記載の方法。
【請求項２０】
前記方法は、さらに、前記複数のメモリバンクのうち１つのメモリバンクの１つのメモリ行が開いている間に、前記複数のメモリバンクのうち別のメモリバンクの１つのメモリ行を閉じて、別のメモリ行を開くステップを含む、
請求項１９記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
レーダー信号処理には、イメージデータを分析して、物体の位置、速度、角度およびタイプを特定することが伴う。イメージデータは、レーダーデータキューブの形で格納される。レーダーデータキューブの各次元は、レンジ、ドップラーおよび仮想チャネルである。
【背景技術】
【０００２】
レーダーデータキューブの次元は、レーダーのフロントエンド設計の進化とレーダー照射精度に起因して、増加傾向にある（例えば、自動運転車）。レーダーデータキューブは、もはや、静的ランダムアクセスメモリ（ＳＲＡＭ）であり得る内部（オンチップ）メモリには、納まりきらない。したがって、設計者らは、レーダーデータキューブを外部メモリに格納することを考えている。
【０００３】
内部メモリが不十分である場合、外部メモリとして動的ランダムアクセスメモリ（ＤＲＡＭ）を使用し得る。ただし、レーダーデータキューブは、従来のレーダー信号処理の性能を維持しながら、イメージデータの最大のスループットが得られるように、外部メモリに格納する必要がある。
【図面の簡単な説明】
【０００４】
【図１】本開示の態様による、イメージデータキューブを格納するように構成されたメモリにアクセスする装置の概略図である。
【図２Ａ】メモリバンクの割り当てが行われるレーダーデータキューブの概略図である。
【図２Ｂ】メモリバンクの割り当てが行われるレーダーデータキューブの概略図である。
【図２Ｃ】メモリバンクの割り当てが行われるレーダーデータキューブの概略図である。
【図２Ｄ】メモリバンクの割り当てが行われるレーダーデータキューブの概略図である。
【図３Ａ】ドップラー次元のベクトルにアクセスするときのレーダーデータキューブの概略図である。
【図３Ｂ】ドップラー次元のベクトルにアクセスするときのレーダーデータキューブの概略図である。
【図４Ａ】レンジ次元のベクトルにアクセスするときのレーダーデータキューブの概略図である。
【図４Ｂ】レンジ次元のベクトルにアクセスするときのレーダーデータキューブの概略図である。
【図５Ａ】仮想チャネル次元のベクトルにアクセスするときのレーダーデータキューブの概略図である。
【図５Ｂ】仮想チャネル次元のベクトルにアクセスするときのレーダーデータキューブの概略図である。
【図６Ａ】レンジ‐ドップラー平面のマトリクスにアクセスするときのレーダーデータキューブの概略図である。
【図６Ｂ】レンジ‐ドップラー平面のマトリクスにアクセスするときのレーダーデータキューブの概略図である。
【図７】イメージデータキューブを格納するように構成されたメモリにアクセスする方法のフローチャートである。
【発明を実施するための形態】
【０００５】
本開示は、論理開始アドレスおよびバーストサイズに基づいて物理メモリアドレスを生成するように構成され、１つのメモリの異なるメモリ行にマッピングされた連続的な論理開始アドレスがいずれも異なるメモリバンクにマッピングされる、メモリアドレスジェネレータを有する装置に関する。連続的なメモリアクセスにおいて同一のバンク内で行を開閉しないことにより、従来の性能を維持しながら、外部メモリを使用することの利点が達成され得る。
【０００６】
図１は、本開示の態様による、イメージデータキューブを格納するように構成されたメモリにアクセスする装置３０の概略図である。装置３０は、メモリ１０とメモリ２０との間のデータ転送を管理する。
【０００７】
メモリ１０は、例えば、内部（オンチップ）静的ランダムアクセスメモリ（ＳＲＡＭ）であってよい。ＳＲＡＭメモリ１０は、行、バンクおよび列を有するイメージデータキューブを格納するように構成されている。イメージデータキューブは、行がドップラーデータ、バンクが仮想チャネルデータ、列がレンジデータを格納する、レーダーデータキューブであってもよい。メモリ１０は内部のＳＲＡＭメモリとして記載しているが、本開示は、メモリ１０が内部メモリまたはＳＲＡＭであることに限定されない。メモリ１０は、内部メモリでも外部メモリでもよく、また、適用可能な任意のタイプのメモリであってよい。
【０００８】
メモリ２０は、例えば、外部の動的ランダムアクセスメモリ（ＤＲＡＭ）であってもよい。ＤＲＡＭメモリ２０は、ＳＲＡＭメモリ１０と同様に、レーダーデータキューブであってよいイメージデータキューブを格納するように構成されている。本開示のＤＲＡＭメモリ２０は、ＳＲＡＭメモリ１０とは異なるフォーマットでレーダーデータキューブを格納する。メモリ２０は外部のＤＲＡＭメモリとして記載しているが、本開示は、メモリ２０が外部メモリまたはＤＲＡＭであることに限定されない。メモリ２０は、内部メモリでも外部メモリでもよく、また、適用可能な任意のタイプのメモリであってよい。
【０００９】
装置３０は、例えば、メモリコントローラ（例えば、ＤＲＡＭコントローラ）または、ダイレクトメモリアクセス（ＤＭＡ）コントローラであってよい。装置３０は、ＤＲＡＭメモリ２０へのデータ転送およびＤＲＡＭメモリ２０からのデータ転送を管理するように構成されている。装置３０は、プロセッサ（例えば、レーダー処理ユニット）から受け取ったメモリアクセス要求をメモリコマンドシーケンスに変換する。装置３０は、コマンドシーケンスにおける指示のとおりに、開始アドレスから終了アドレスまで、バーストサイズに応じてＤＲＡＭメモリ２０にアクセスする。
【００１０】
ＤＲＡＭメモリのアクセスパターンおよび編成は、半導体技術協会（ＪＥＤＥＣ）によって定められている。本開示のメモリアドレスジェネレータ１００の詳細を説明する前に、次に、ＤＲＡＭの背景について一般的に説明する。
【００１１】
ＤＲＡＭは、複数のメモリバンクを備えることができる。ＪＥＤＥＣによれば、倍速タイプ３（ＤＤＲ３）のＤＲＡＭは８個のメモリバンクを備え、倍速第４世代（ＤＤＲ４）のＤＲＡＭは、８個または１６個のメモリバンクを備える。メモリバンクによって、複数の要求に同時に対応することが可能になる。各メモリバンクは、メモリ行とメモリ列のマトリクスに配置されたメモリセルを有する。各メモリセルは、データビットを保存するためにキャパシタおよびトランジスタを有する。キャパシタは、充電状態または非充電状態のどちらかにあり、バイナリ値を表す。トランジスタは、格納された値にアクセスするために使用される。
【００１２】
１つのメモリセルを読み出すことは、ＤＲＡＭの配置のために、このメモリセルのメモリ行の全体を読み出すことに等しい。メモリコントローラが、対応するアドレスラインをハイレベルに引き上げることによって、要求されたメモリ行を開く。センスアンプが、メモリ列アドレスライン上の信号を読み出す。該当するキャパシタが充電状態であれば、そのメモリ列アドレスラインはハイである。そうでない場合は、ラインはローのままである。次いで、読み出し結果がラッチに格納される。ラインを読み出した後に、各キャパシタは放電され、メモリコントローラはメモリ行をリフレッシュするが、これは、ラッチ内に格納されたすべてのデータをメモリセルに書き戻すことを意味する。同じメモリ行からの連続的な読み出しは、ラッチから直接に利用可能である。
【００１３】
同様に、１つのメモリセルへの書き込みは、メモリ行の全体の書き込みに等しい。まずラインが開かれ、センスアンプによって読み出される。書き込み対象のメモリ列のセンスアンプは、強制的に、対応するハイ値またはロー値となる。これにより、アクティブな行のキャパシタの充電状態が更新され、したがって、値が格納される。
【００１４】
各バンク内のメモリ行バッファが、現在アクティブな（開いている）メモリ行を格納する。メモリ行バッファは、メモリセルとメモリバスとの間に位置し、各メモリバンク内に存在する。ＤＲＡＭのマトリクス設計のために、値を読み出すたびにメモリ行全体をフェッチする必要がある。このために、メモリ行が開かれ、メモリ行バッファにコピーされる。開いているメモリ行からデータを読み出す場合、即座にデータを読み出すことができる。そうではなく、異なるメモリ行にアクセスする必要がある場合は、現在開いているメモリ行が閉じられる。このことは、メモリ行バッファ内に変更されたデータがある場合、まず、変更されたデータをメモリセルに書き戻さなければならないことを意味する。次に、新しいメモリ行が開かれ、フェッチされる。現在のメモリ行を閉じ、別のメモリ行を開き直す過程（プロセス）は、メモリ行コンフリクトと称されている。現在のメモリ行を書き戻してからでなければ新しいメモリ行をフェッチすることはできないので、メモリ行コンフリクトが起こると、メモリ行コンフリクトが起こらないときよりも、著しく多くの時間がかかる。現在開いているメモリ行のデータにアクセスするには約２０ｎｓかかり、メモリ行コンフリクトがある場合には、約６０ｎｓかかる。
【００１５】
図１を再び参照すると、装置３０は、入出力側（Ｉ／Ｏ）３２、Ｉ／Ｏ３４、およびメモリアドレスジェネレータ１００を備える。Ｉ／Ｏ３２は、ＳＲＡＭメモリ１０との間でデータ、コマンドおよびメモリアドレスを送受信するように構成されている。Ｉ／Ｏ３４は、ＤＲＡＭメモリ２０との間でデータ、コマンドおよびメモリアドレスを送受信するように構成されている。
【００１６】
メモリアドレスジェネレータ１００は本開示の主眼であり、下記にさらに詳細に説明するが、ＳＲＡＭメモリ１０とＤＲＡＭメモリ２０との間でメモリアドレスを生成（転置）するように構成される。メモリアドレスジェネレータ１００は、３次元のレーダーデータキューブをＳＲＡＭメモリ１０からＤＲＡＭメモリ２０へ書き込むように、また、ＤＲＡＭメモリ２０に格納されたレーダーデータキューブの２次元ベクトルを読み出すように、さらにＤＲＡＭメモリ２０から完全な３次元のレーダーデータキューブを読み出すように最適化されている。
【００１７】
装置１００の動作の概観として、Ｉ／Ｏ３２は、プロセッサ（例えば、図示されていないレーダー処理ユニット）から、ＤＲＡＭメモリ２０へのアクセスを要求するメモリアクセス要求を受け取るように構成されている。メモリアクセス要求は、論理バンク、論理行および論理列を指定する論理開始アドレスを有し、さらに、バーストサイズを有する。この場合、メモリアドレスジェネレータ１００は、論理開始アドレスおよびバーストサイズに基づいてＤＲＡＭメモリ２０の物理メモリアドレスを生成するように構成されている。Ｉ／Ｏ３４は、ＤＲＡＭメモリ２０へのコマンドシーケンスにおいて、生成した物理メモリアドレスを伝送するように構成されている。
【００１８】
図２Ａ〜図２Ｄは、メモリバンクの割り当てが行われるレーダーデータキューブ２００の概略図である。
【００１９】
上記のＤＲＡＭの検討において一般的に説明したとおり、ＪＥＤＥＣは、各アクセス要求（読み出しまたは書き込み）について、メモリバンクの数、各メモリ行のサイズ、およびアクセス特性を定めている。これらのＤＲＡＭアクセス特性の例には、メモリ行が既に開いている場合、このメモリ行へのアクセスが高速となることが含まれる。また、図２Ａに示すように、複数のメモリバンクがそれぞれ開いたメモリ行を同時に有することもあり、複数の異なるメモリバンクから開いたメモリ行へのアクセスも高速となる。ただし、メモリ行が閉じており、連続的なアクセス要求において同じバンク内の別のメモリ行が開いている場合には、このアクセスには著しく長い時間がかかる。
【００２０】
本明細書に開示しているＤＲＡＭメモリバンクの割り当ての結果、ＤＲＡＭメモリ２０の高速なアクセスが得られる。イメージデータキューブの１つの方向（ベクトル）への進行が行われるとき、この進行は、メモリ行の方向にだけ行われるわけではない。なぜならその場合著しく時間がかかるからである。換言すれば、ＤＲＡＭメモリ２０の連続的なアクセスにおいて、２つの異なるメモリ行は、同一のメモリバンクからはアクセスされない。その理由は、連続的なメモリアクセスの第２のアクセスを行う前に、開いたメモリ行を閉じてから別のメモリ行を開く必要はないからである。
【００２１】
図２Ｂおよび図２Ｃは、メモリバンクがスキップされるメモリバンクの割り当ての例を示す。
【００２２】
ＤＲＡＭメモリ２０の必ずしもすべてのメモリバンクがレーダーデータキューブを格納するために使用されるわけではない。ほとんどの用途で、ＤＲＡＭメモリ２０のメモリバンクの数は８個または４個である。レーダーデータキューブは、４個または８個のメモリバンクをすべて使用するのではなく、メモリバンクのうち１つを除くすべてのメモリバンク、すなわち、例えば７個（図２Ｂを参照）または３個（図２Ｃを参照）の奇数個のメモリバンクに格納されうる。メモリアドレスジェネレータ１００は、メモリバンクの物理メモリアドレスの生成をスキップして、スキップしたメモリバンクにいかなるイメージデータも格納しないように構成可能である。
【００２３】
図２Ｂは、バンク８がスキップされる例を示す。イメージデータキューブは、ベクトルごとに書き込まれる。ベクトル１はバンク１の行１に書き込まれ、ベクトル２はバンク２の行１に書き込まれ、以下同様に続く。ベクトル８は、通常の書き込み順に従ってバンク８の行１に書き込まれる代わりに、バンク１の行２に書き込まれる。このパターンが、バンク８をスキップして繰り返される。ＤＲＡＭメモリ２０からのイメージデータキューブの読み出しも、同じ順序に従う。
【００２４】
図２Ｃは、バンク４がスキップされる例を示す。この場合も、イメージデータキューブはベクトルごとに書き込まれる。ベクトル１（１１１  １１２  １１３  １１４）がバンク１の行１に書き込まれ、ベクトル２（２１１  ２１２  ２１３  ２１４）がバンク２の行１に書き込まれ、以下同様に続く。ベクトル４（４１１  ４１２  ４１３）は、通常の書き込み順に従ってバンク４の行１に書き込まれる代わりに、バンク１の行２に書き込まれる。このパターンが、バンク４をスキップして繰り返される。ＤＲＡＭメモリ２０からのイメージデータキューブの読み出しも、同じ順序に従う。
【００２５】
図２Ｄに示すように、バンクをスキップしながらのイメージデータキューブの読み出し／書き込みは、意図的なアドレスホールを残した線形アドレス空間と見ることもできる。また、メモリアドレスジェネレータ１００は、メモリバンクの一部分についての物理メモリアドレスの生成をスキップするように構成可能である。よって、そのようなアドレスホールは、完全なメモリバンクを含んでもよいし、付加的にもしくは代替的に、部分的なメモリバンクを含んでもよい。
【００２６】
バンク／アドレスのスキップにより、ＤＲＡＭメモリ２０を共有リソースとすることができる。ＤＲＡＭメモリ２０のうちイメージデータを格納していない部分は、イメージデータキューブのアクセスに影響を与えることなく他のアプリケーションに使用可能である。いずれにせよ、通常、イメージデータキューブはＤＲＡＭメモリ２０よりも小さい。
【００２７】
また、装置３０が、最適化された方式でアクセス要求をスケジュール可能であることが理解される。例えば、装置３０は、優先順位の高い別のアプリケーションが第１の部分を格納したメモリバンクにアクセスしているため、第１の部分より前に第２のデータ部分および第３のデータ部分を読み出すことができる。
【００２８】
図３Ａ〜図３Ｂ、図４Ａ〜図４Ｂ、図５Ａ〜図５Ｂ、および図６Ａ〜図６Ｂは、ＤＲＡＭメモリ２０のアクセスの例を示す。図３Ａ〜図３Ｂは、ドップラー次元のベクトルへのアクセスを示す。図４Ａ〜図４Ｂは、レンジ次元に沿うベクトルへのアクセスを示す。図５Ａ〜図５Ｂは、仮想チャネル次元のベクトルへのアクセスを示す。図６Ａ〜図６Ｂは、レンジ‐ドップラー平面のマトリクスへのアクセスを示す。これらの例のそれぞれで、異なるメモリ行にマッピングされる連続的な論理開始アドレスはいずれも、異なるメモリバンクにマッピングされる。
【００２９】
図３Ａ〜図３Ｂはドップラー（行）次元のベクトルにアクセスするときのレーダーデータキューブ３００の概略図である。
【００３０】
装置３０は、同時に複数のメモリバンクのそれぞれで１つのメモリ行を開いておくように構成される。図２Ａ〜図２Ｄに関して上記で説明したバンクの割り当てが行われるイメージデータキューブへの書き込みと同じ例の使用により、ドップラー（行）次元のベクトルの読み出しは、７個のバンク１〜７のそれぞれで、１つの行（例えばバンク１の行１、バンク２の行２など）を開くことを含む。ドップラー次元のベクトルは、異なるバンク１〜７から順に読み出される。つまり、バンク１の行１からデータブロック１、バンク２の行２からデータブロック２、バンク３の行３からデータブロック３、が読み出され、以下同様に続く。
【００３１】
また、装置３０は、複数のメモリバンクのうち１つのメモリバンクの１つのメモリ行が開いている間に、複数のメモリバンクのうち別のメモリバンクの１つのメモリ行を閉じて、別のメモリ行を開くように構成可能である。例えば、バンク４〜７から読み出している間に、バンク１内で行１を閉じて、新しい行Ｘを開くことが可能である。バンク７のデータブロック７を読み出した後、データブロック８がバンク１の行Ｘから読み出され（バンク８がスキップされる）、以下同様に続く。書き込みも、同じ順序に従う。
【００３２】
図４Ａ〜図４Ｂは、レンジ（列）次元のベクトルにアクセスするときのレーダーデータキューブ４００の概略図である。
【００３３】
メモリアドレスジェネレータ１００は、さらに、異なるメモリ列、同じメモリ行かつ同じメモリバンクにマッピングされる連続的な論理開始アドレスの物理メモリアドレスを生成するように、構成可能である。
【００３４】
図２Ａ〜図２Ｄに関して上記で説明したバンクの割り当てが行われるイメージデータキューブへの書き込みと同じ例の使用により、レンジ次元のベクトルの読み出しは、バンク１の行Ｙを開き、開いた行Ｙから、そのベクトルのすべてのデータブロックを順次に（例えば、データブロック１、データブロック２、データブロック３、・・・）読み出すことを含む。書き込みも、同じ順序に従う。
【００３５】
図５Ａ〜図５Ｂは、仮想チャネル（バンク）次元のベクトルにアクセスするときのレーダーデータキューブ５００の概略図である。
【００３６】
メモリアドレスジェネレータ１００は、さらに、同じメモリ列、同じメモリ行かつ異なるメモリバンクにマッピングされる連続的な論理開始アドレスの物理メモリアドレスを生成するように構成可能である。
【００３７】
図２Ａ〜図２Ｄに関して上記で説明したバンクの割り当てが行われるイメージデータキューブへの書き込みと同じ例の使用により、仮想チャネル次元のベクトルの読み出しは、７個のバンク１〜７のそれぞれで、１つの行（例えばバンク１の行１、バンク２の行１など）を開き、メモリバンクから順次に読み出しを行い、データブロック７の後に（メモリバンクのオーバフロー）、データブロック８をバンク１の行２から読み出し、以下同様に続けることが含まれる。書き込みも、同じ順序に従う。
【００３８】
ここでも、装置３０は、複数のメモリバンクのうち１つのメモリバンクの１つのメモリ行が開いている間に、複数のメモリバンクのうち別のメモリバンクの１つメモリ行を閉じて、別のメモリ行を開くように構成可能である。例えば、バンク４〜７を読み出す間に、バンク１の行１を閉じて、バンク１の行２を開いておくことが可能である。
【００３９】
図６Ａ〜図６Ｂは、レンジ‐ドップラー（列、行）平面のマトリクスにアクセスするときのレーダーデータキューブ６００の概略図である。
【００４０】
メモリアドレスジェネレータ１００は、さらに、異なるメモリ列、異なるメモリ行かつ異なるメモリバンクにマッピングされる連続的な論理開始アドレスの物理メモリアドレスを生成するように、構成可能である。
【００４１】
図２Ａ〜図２Ｄに関して上記で説明したバンクの割り当てが行われるイメージデータキューブへの書き込みと同じ例の使用により、レンジ‐ドップラー平面のマトリクスを読み出す。読み出しは、７個のバンク１〜７のそれぞれで１つの行（バンク１の行１、バンク２の行２など）を開き、バンク１の列Ｚの行１からデータブロック１を読み出し、次に、バンク１の列Ｚ＋１の行１からデータブロック２を読み出し、次に、バンク２の列Ｚの行２からデータブロック３を読み出し、次に、バンク２の列Ｚ＋１の行２からデータブロック４を読み出し、以下同様に続ける、というように、行と列でバンクから順次に読み出すことを含む。書き込みも、同じ順序に従う。
【００４２】
図７は、イメージデータキューブを格納するように構成されたＤＲＡＭメモリ２０にアクセスする方法７００のフローチャートである。上述したように、ＤＲＡＭメモリ２０は、イメージデータキューブを格納するように構成されている。メモリは複数のメモリバンクを有し、各メモリバンクは複数のメモリ行および複数のメモリ列を有する。
【００４３】
ステップ７１０で、論理バンク、論理行および論理列を指定する論理開始アドレス、ならびにバーストサイズを有するメモリアクセス要求を、装置２０が入力側３２で受け取る。
【００４４】
ステップ７２０で、メモリアドレスジェネレータ１００が、論理開始アドレスおよびバーストサイズに基づいて物理メモリアドレスを生成する。異なるメモリ行にマッピングされる連続的な論理開始アドレスはいずれも、異なるメモリバンクにマッピングされる。
【００４５】
ステップ７３０で、メモリアドレスジェネレータ１００は、１つのメモリバンクの少なくとも一部分の物理メモリアドレスの生成をスキップして、当該一部分にいかなるイメージデータも格納されないようにする。
【００４６】
本開示の技術は、下記の例としてさらに説明され得る。
［例１］
イメージデータキューブを格納するように構成されたメモリにアクセスする装置であって、前記メモリが複数のメモリバンクを有し、各メモリバンクがメモリ行およびメモリ列を有し、前記装置が、
論理バンク、論理行および論理列を指定する論理開始アドレス、ならびにバーストサイズを有するメモリアクセス要求を受け取るように構成された入力側と、
前記論理開始アドレスおよび前記バーストサイズに基づいて複数の物理メモリアドレスを生成するように構成され、異なるメモリ行にマッピングされた連続的な論理開始アドレスがいずれも異なるメモリバンクにマッピングされる、メモリアドレスジェネレータと
を備える、装置。
［例２］
前記メモリアドレスジェネレータは、さらに、異なるメモリ列、同じメモリ行かつ同じメモリバンクにマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、例１に記載の装置。
［例３］
前記メモリアドレスジェネレータは、さらに、同じメモリ列、同じメモリ行かつ異なるメモリバンクにマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、例１および２のいずれかの組み合わせに記載の装置。
［例４］
前記メモリアドレスジェネレータは、さらに、メモリバンクのオーバフロー時に異なるメモリ行にマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、例１から３までのいずれかの組み合わせに記載の装置。
［例５］
前記メモリアドレスジェネレータは、さらに、異なるメモリ列、異なるメモリ行かつ異なるメモリバンクにマッピングされる前記連続的な論理開始アドレスの物理メモリアドレスを生成するように構成されている、例１から４までのいずれかの組み合わせに記載の装置。
［例６］
前記イメージデータキューブはレーダーイメージデータキューブであり、前記メモリ行、前記メモリバンクおよび前記メモリ列は、それぞれ、ドップラーデータ、仮想チャネルデータおよびレンジデータを格納するように構成されている、例１から５までのいずれかの組み合わせに記載の装置。
［例７］
前記メモリアドレスジェネレータは、さらに、奇数個のメモリバンクにアクセスするように構成されている、例１から６までのいずれかの組み合わせに記載の装置。
［例８］
前記メモリアドレスジェネレータは、さらに、１つのメモリバンクの一部分の物理メモリアドレスの生成をスキップして、当該一部分にいかなるイメージデータも格納しないように構成されている、例１から７までのいずれかの組み合わせに記載の装置。
［例９］
前記メモリアドレスジェネレータは、さらに、１つのメモリバンクの物理メモリアドレスの生成をスキップして、当該スキップしたメモリバンクにいかなるイメージデータも格納しないように構成されている、例１から８までのいずれかの組み合わせに記載の装置。
［例１０］
前記装置は、複数のメモリバンクのそれぞれにおける１つのメモリ行を同時に開いておくように構成されている、例１から９までのいずれかの組み合わせに記載の装置。
［例１１］
前記装置は、前記複数のメモリバンクのうち１つのメモリバンクの１つのメモリ行が開いている間に、前記複数のメモリバンクのうち別のメモリバンクの１つのメモリ行を閉じて、別のメモリ行を開くように構成されている、例１から１０までのいずれかの組み合わせに記載の装置。
［例１２］
前記メモリは、動的ランダムアクセスメモリ（ＤＲＡＭ）である、例１から１１までのいずれかの組み合わせに記載の装置。
［例１３］
前記ＤＲＡＭは、半導体技術協会（ＪＥＤＥＣ）に準拠している、例１から１２までのいずれかの組み合わせに記載の装置。
［例１４］
前記装置は、動的ランダムアクセスメモリ（ＤＲＡＭ）コントローラまたはダイレクトメモリアクセス（ＤＭＡ）コントローラである、例１から１３までのいずれかの組み合わせに記載の装置。
［例１５］
イメージデータキューブを格納するように構成されたメモリにアクセスする方法であって、前記メモリが複数のメモリバンクを有し、各メモリバンクがメモリ行およびメモリ列を有し、
前記方法は、
論理バンク、論理行および論理列を指定する論理開始アドレス、ならびにバーストサイズを有するメモリアクセス要求を入力側で受け取るステップ、および
メモリアドレスジェネレータによって、前記論理開始アドレスおよび前記バーストサイズに基づいて、複数の物理メモリアドレスを生成するステップ
を含み、
異なるメモリ行にマッピングされる連続的な前記論理開始アドレスがいずれも異なるメモリバンクにマッピングされる、
方法。
［例１６］
前記複数の物理メモリアドレスを生成するステップを、
異なるメモリ列、同じメモリ行かつ同じメモリバンクにマッピングされる連続的な論理開始アドレス、
同じメモリ列、同じメモリ行かつ異なるメモリバンクにマッピングされる連続的な論理開始アドレス、
メモリバンクのオーバフロー時に異なるメモリ行にマッピングされる連続的な論理開始アドレス、または
異なるメモリ列、異なるメモリ行かつ異なるメモリバンクにマッピングされる連続的な論理開始アドレス、に対して行う、例１５に記載の方法。
［例１７］
前記方法は、さらに、１つのメモリバンクの少なくとも一部分の物理メモリアドレスの生成をスキップして、当該一部分にいかなるイメージデータも格納されないようにするステップを含む、例１５および１６のいずれかの組み合わせに記載の方法。
［例１８］
前記方法は、さらに、１つのメモリバンクの物理メモリアドレスの生成をスキップして、当該スキップしたメモリバンクにいかなるイメージデータも格納されないようにするステップを含む、例１５から１７までのいずれかの組み合わせに記載の方法。
［例１９］
複数のメモリバンクのそれぞれにおける１つのメモリ行を同時に開いておく、例１５から１８までのいずれかの組み合わせに記載の方法。
［例２０］
前記方法は、さらに、前記複数のメモリバンクのうち１つのメモリバンクの１つのメモリ行が開いている間に、前記複数のメモリバンクのうち別のメモリバンクの１つのメモリ行を閉じて、別のメモリ行を開くステップを含む、例１５から１９までのいずれかの組み合わせに記載の方法。
【００４７】
上記は例示的実施形態に関して説明されているが、「例示的」なる語は、最良または最適ではなく、単に一例の意味で使用していることを理解されたい。したがって、本開示は、本開示の範囲に含まれ得る代替形態、修正形態および等価形態も対象とすることを意図している。
【００４８】
本明細書においては特定の実施形態を図示および説明してきたが、さまざまな代替および／または等価の実装形態が、本開示の範囲を逸脱することなく、図示および説明した特定の実施形態に置き換え可能であることは当業者に理解されるであろう。本開示は、本明細書にて検討した特定の実施形態のすべての適応形態または変形形態をも対象とすることを意図している。
【図１】
2020166861.tif 000003
【図２Ａ】
2020166861.tif 000004
【図２Ｂ】
2020166861.tif 000005
【図２Ｃ】
2020166861.tif 000006
【図２Ｄ】
2020166861.tif 000007
【図３Ａ】
2020166861.tif 000008
【図３Ｂ】
2020166861.tif 000009
【図４Ａ】
2020166861.tif 000010
【図４Ｂ】
2020166861.tif 000011
【図５Ａ】
2020166861.tif 000012
【図５Ｂ】
2020166861.tif 000013
【図６Ａ】
2020166861.tif 000014
【図６Ｂ】
2020166861.tif 000015
【図７】
2020166861.tif 000016
【外国語明細書】
2020166861.tif 000017
2020166861.tif 000018
2020166861.tif 000019
2020166861.tif 000020
2020166861.tif 000021
2020166861.tif 000022
2020166861.tif 000023
2020166861.tif 000024
2020166861.tif 000025
2020166861.tif 000026
2020166861.tif 000027
2020166861.tif 000028
2020166861.tif 000029
2020166861.tif 000030
2020166861.tif 000031
2020166861.tif 000032
2020166861.tif 000033
2020166861.tif 000034
2020166861.tif 000035
2020166861.tif 000036
2020166861.tif 000037
2020166861.tif 000038
2020166861.tif 000039
2020166861.tif 000040
2020166861.tif 000041
2020166861.tif 000042
2020166861.tif 000043