[STM32F4] 6、SRAMとDRAMの違い


STM32F4では外部SRAMチップXM8A51216が使用されているのを見たので、SRAMとDRAMの違いを確認してここに記録しました。

一、ROM、RAM、SRAM、DRAM

1. ROMとRAMの関係は?

まず、Baiduによって与えられた定義を見てみましょう。

ROMとRAMはどちらも半導体メモリを指します。

ROM(読み取り専用メモリ)は読み取り専用メモリであり、事前に保存されたデータのみを読み取ることができ、システムの電源がオフになってもデータを保持できるソリッドステート半導体メモリです。

RAM(ランダムアクセスメモリ)はランダムアクセスメモリと呼ばれ、電源を切ると記憶内容が失われるため、主に短時間使用するプログラムの保存に使用されます。

上記の定義がよりあいまいな場合は、次の定義を見てみましょう:(出典:CSDNブロガー[7TribeZ]ブログ投稿:RAMとROMの違い

RAMは「ランダムアクセスメモリ」とも呼ばれ、CPUと直接データを交換する内部メモリであり、メインメモリ(メモリ)とも呼ばれます。いつでも読み取りと書き込みが可能で、非常に高速で、通常、オペレーティングシステムやその他の実行中のプログラムの一時的なデータストレージメディアとして使用されます。RAMは、電源をオフにするとデータを保持できません(電源をオフにするとデータが消えます)。データを保存する必要がある場合は、データを長期保存デバイス(ハードディスクなど)に書き込む必要があります。

ROM

ROMは「読み取り専用メモリ」とも呼ばれます。ROMに格納されたデータは、通常、マシン全体にロードする前に書き込まれ、すばやく実行できるランダムアクセスメモリとは異なり、マシン全体の作業プロセス中にのみ読み取ることができます。簡単にアクセスできます。書き直します。ROMに保存されているデータは安定しており、電源を切っても保存されているデータは変化しません。

RAMやROMと比較すると、RAMに保存されているデータは電源を切ると自動的に消えますが、ROMは自動的に消えず、長期間保存できるという違いがあります。

RAMはコンピュータのメモリROMはコンピュータのハードディスクとして理解できます。ただし、ROMとハードディスクは少し異なります。つまり、ROMの内容は、マシン全体にロードする前に事前に書き込まれます。コンピュータ作業中に変更することはできませんが、読み取り専用モードです。コンピュータのハードディスクはマシン全体の作業中に変更できますが、速度はメモリほど速くありません。

2. SRAMとDRAMの関係は?

まず、SRAMとDRAMはどちらもRAMであり、どちらもRAMのブランチです

SRAMとDRAMの唯一の違いは、一方が静的で、もう一方が動的であるということです。SRAMは回路をリフレッシュせずにデータを保存できるため、保存されているデータにアクセスする機能があります。また、DRAMは回路を絶えずリフレッシュする必要があります。そうしないと、内部データが失われます。

第二に、SRAMとDRAMの違いは?

参照

まず、SRAMとDRAMのハードウェア回路図は次のとおりです。

左の図に示すように、SRAMはビットを格納するために6つのトランジスタを必要としますが、右の図のDRAMは1つのコンデンサと1つのトランジスタのみを必要とします。

キャッシュは速度を追求するため、SRAMは通常キャッシュのキャッシュに使用されます。

メモリは容量を追求するため、同じスペースにより多くのコンテンツを格納でき、比較的安価なDRAMを選択してください。

SRAMは情報を保存するために何に依存していますか?

半導体メモリSRAMは情報の双安定ストレージに依存し、半導体メモリDRAMはコンデンサストレージに依存します。半導体スタティックメモリSRAMのストレージ原理は双安定回路に依存します。メモリ内の最小のストレージユニットは双安定半導体回路またはCMOSです。ストレージ要素ストレージユニットは複数のストレージ要素で構成され、メモリはプログラムやデータを保存するために使用される多くのストレージユニットで構成されます。

SRAMがデータ(フリップフロップ)を静的に格納する方法については説明しません。なぜDRAMを常にリフレッシュする必要があるのですか?

DRAMのデータは実際にはコンデンサに保存されています。ただし、コンデンサを長時間放置すると、内部の電荷が少なくなり、外部からの電位変化はありません。また、DRAMを読み取るときは、コンデンサと外界との間にループを形成し、電荷が流入または流出しているかどうかを確認して、ビットが1か0かを判断する必要があります。そのため、何があっても、読み取り操作で元のデータを破棄しました。したがって、読み取り操作が完了した後、データをDRAMに書き戻す必要があります。読み取りまたは書き込み操作サイクル全体で、コンピューターはDRAMをリフレッシュします。通常、リフレッシュサイクルは4ms〜64msです。

SRAMとDRAMのアドレッシングモードも異なります。通常、メモリは長い配列のように一次元に配置されていると思いますが、実際にはメモリは二次元配列の形で配置されており、各ユニットには行アドレスと列アドレスがあります。もちろんキャッシュは同じです。 。この2つの違いは、容量が小さいSRAMの場合、行アドレスと列アドレスを一度にSRAMに渡すことができ、DRAMでも同じことを行うと、多くのアドレスラインが必要になることです(容量が大きいほど)大きいほど、アドレスが長いほど、アドレスの桁数が多くなります)。そのため、行アドレスと列アドレスを別々にDRAMに転送することを選択します。最初に行全体を選択し、次にデータの行全体をラッチに格納し、列アドレスが送信されるのを待ってから、必要なデータを選択します。これが、SRAMがDRAMよりも高速である理由の1つです。

3、STM32F4-XM8A51216のSRAM

1.XM8A51216のピンの分類

XM8A51216のピンまたはラインは、主に3つの部分に分かれています

  • 住所欄
  • データライン
  • ラインを有効にする

XM8A51216のパッケージを次の図に示します。

ここに画像の説明を挿入
この図では、A0〜18はアドレスライン、合計19のアドレスライン(つまり、2 ^ 19 = 512K、1K = 1024)、DQ0〜15はデータライン、合計16のデータラインです。CEnは、低レベルでアクティブなチップイネーブル信号です。OEnは、低レベルでアクティブな出力イネーブル信号です。WEnは、低レベルでアクティブな書き込みイネーブル信号です。BLEnとBHEnは、それぞれ高バイト制御と低バイト制御の信号です。

2.アドレスラインとデータラインとは何ですか?

参照オリエンタルインフォメーションの記事:アドレスラインとデータライン、およびそれらとコンピュータメモリの関係は何ですか?

1.アドレスラインは、アドレス情報を送信するために使用されます。簡単な例を挙げると、CPUがメモリまたはハードディスクでデータを検索するとき、最初にアドレス行からアドレスを見つけ、次にデータ行からデータをフェッチします。ルートが32ある場合は、2の32乗バイト(4GB)にアクセスできます。

2.データケーブルは、データ送信または通信の目的を達成するためにモバイルデバイスとコンピューターを接続するために使用されます。素人の言葉で言えば、それはコンピュータとモバイルデバイスを接続してビデオ、着信音、写真などのファイルを転送するチャネルツールです。現在、エレクトロニクス産業の急速な発展に伴い、データラインは私たちの生活に欠かせないものになっています。

おすすめ

転載: blog.csdn.net/qq_39642978/article/details/112144265