メモリ
投稿日: | |
---|---|
タグ: |
メモリ関連のメモ。
信号(1か0か)の記憶。入力や出力は次のように実装できる。
S-Rラッチ(NOR型)
- S
- Set信号
- R
- Reset信号
S | R | Q | ¬Q |
---|---|---|---|
0 | 0 | Q | ¬Q |
1 | 0 | 1 | 0 |
0 | 1 | 0 | 1 |
1 | 1 |
- ラッチ
- クロックがアサートされれば入力の変化に応じていつでも状態が変更される。
- フリップフロップ
- 基本的にラッチと同じだが,クロックのエッジ(立ち上がりか立ち下がりのどちらか)でのみ状態が変更される。フリップフロップはラッチをベースに構成されることが多い。
- Dラッチ
-
- D
- Data
- C
- Clock
- Dフリップフロップ
- レジスタファイル
- レジスタ群で構成され,レジスタ番号を指定して読み書きする。Dフリップフロップを並べたレジスタ配列と,読み込みと書き込みの各ポートのデコーダで実現できる。
- ROM(Read Only Memory)
- 読み出し専用メモリ。
- PROM(Programmable ROM)
- プログラム可能なROM。電気的に内容を書き込むことができる。
- 消去及び書き換え可能なPROM(erasable PROM)
- 紫外線を使用して内容を消去して書き換えることができるPROM。それには時間がかかるので通常はROMとして使用。消去・書き換えは設計やデバッグのときだけ。
- RAM(Random Access Memory)
- 読み書き可能なメモリ。
大容量の記憶媒体はSRAMまたはDRAMで構築される。
- SRAM(Static RAM) 典型的なCMOS SRAMセル(記憶ビット)はトランジスタ6個で構成されるが,DRAMよりも高速アクセス可能なRAM。電源供給さえしていればずっと記憶情報が保持される。
- DRAM(Dynamic RAM)
記憶ビットあたり1個のトランジスタで実装されるRAM。DRAMはキャパシタに電荷を蓄えることで情報を記録し,電源供給がなくなると記憶情報が失われる。また,時間の経過でも漏洩して失われるのでリフレッシュ(取り出して再び格納する機能)が必要であり,その分動的消費電力も高い。このリフレッシュ動作をもって,Dynamic RAMと呼ばれる。現在プロセッサではなくメモリコントローラがリフレッシュを行う。
DRAMでは,まず行アクセス,ついで列アクセスによってアドレスを指定する。また,そのための方法としてRAS(Row Access Strobe)とCAS(Column Access Strobe)という一対の信号が使用する。
ECC(Error Correcting Code:誤り訂正コード)
1ビットのパリティ・コードを持つ場合1ビットの誤り検出が可能であるが,ECC機能を持つ場合,2ビットの誤り検出や1ビットの誤り訂正ができる。
- SSRAM(Synchronous SRAM)
- SDRAM(Synchronous DRAM)
- 配列または行中の一連の順次アドレスからバースト(burst)を転送できる。シンクロナスRAMが高速性の利点を持つ理由は,アドレス・ビットを追加せずに,バースト内の一連のビットを転送できるため。アドレス・ビットを繰り返し指定する代わり,シンクロナスRAMでは,クロック周波数を使用してバースト内の一連のビットを転送する。アドレス・ビットを指定する必要がないため,データ・ブロック転送速度が大幅に改善された。
- DDR-SDRAM(Double Data Rate SDRAM)
- データ入出力をクロックの立ち上がりと立ち下がりの両方で行うことで,SDRAMの2倍のデータ転送速度となる。