内蔵RAMとは何ですか?
内部ランダムアクセスメモリ(RAM)は、コンピューターの中央処理装置(CPU)などのマイクロコントローラーのチップに直接組み込まれているコンピューターメモリです。 プログラマーはこれを使用して、内部RAMを直接アドレス指定することでプログラム機能の速度を向上させ、重要なプロセスをCPUによってより高速かつ高い優先度でキューに入れて処理できるようにします。 これは、頻繁に使用される命令を外部RAMから描画するよりもはるかに高速にCPUに渡すことができるため、プロセッサ集約型アプリケーションを大幅に高速化できます。
CPUには3レベルのキャッシュ、または内部RAMがあります。 プロセッサキャッシュは、静的RAM(SRAM)で構成されています。これは、マザーボードに搭載されているダイナミックRAM(DRAM)と呼ばれる一般的なメモリとは異なります。 CPUはデータを探すとき、最初にレベル1(L1)キャッシュ、次にレベル2(L2)、次にレベル3(L3)をチェックします。 その後のみ、DRAMからデータを取得します。
プロセッサ内では、L1キャッシュはプロセッサ自体のすべてのコアに割り当てられます。 これは、処理を要求するプログラムの指示に従って各プロセッサコアに渡される命令のバッファとして機能するため、最速の内部RAMです。 マルチコアプロセッサでは、L1キャッシュリクエストを介して複数のコアが個別にアドレス指定されると、処理速度が大幅に向上します。
L2キャッシュはCPUパッケージにあるため、内部RAMと見なされます。 L1キャッシュのように、実際のCPUチップに直接組み込まれていません。 各コアはまだ専用の独自のL2キャッシュを持っているため、L2速度を利用して並行して動作できます。 ただし、L2キャッシュはL1キャッシュよりも低速です。
L3キャッシュはCPUパッケージ内にないため、内部RAMとは見なされず、代わりに機能します。 これは、コンピューター内で利用可能な最速の外部RAMです。 すべてのCPUコアはL3キャッシュを共有します。
プロセス全体は、外部DRAMから内部RAM、最後に実際の処理命令へのデータのキューイングおよびブレークダウンと見なすことができます。 プログラム内の特定の機能は他の機能よりも高い優先度で確立され、それらは個々のプログラムの最適化の一部としてキューの先頭に移動されます。 最高の優先度のデータは、最速の処理のためにL1キャッシュに直接アドレス指定され、最低の優先度のデータはプロセス全体を通してキューに入れられます。 主な違いは、キャッシュが「待機キューからのプル」方式で処理される点です。内部RAMはソフトウェアでアドレス指定できるため、個々の内部RAMレベルにデータを明確に割り当てることができます。