• ベストアンサー

DRAMのアドレス線が10本だと、なぜ2^10で1024本の行からなっているとなるのでしょうか?

次の問題があります。 ESのH18の午前問11です。  アドレス線が 10 本で,1 M 語の容量をもつ DRAM がある。リフレッシュのた めに DRAM 内の全 ROW アドレスを 51.2 ミリ秒の間に少なくとも 1 回は選択す る必要がある。このときの平均リフレッシュ周期は何マイクロ秒か。  ア 0.049  イ 12.8  ウ 50  エ 2,560 解説を読むとアドレス線が10本(10ビット)なので、 2^10で1024本の行または列からなっていると書かれていました。 アドレス線というものをうまく理解していないのかもしれませんが、 線が10本あったら、それに対応する行も10本になるように思えるのですが、 違うんですよね。。。 この点がうまく理解できません。 また1M「語」の容量を持つとありますが、 この「語」という単位はどういうものなのでしょうか? 合わせて教えて頂けませんか? よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.3

アドレス線が10本(10ビット)なら,各bitのON/OFF(1/0)の組合せによって表現できる全パターンは,0000000000~1111111111 の「2の10乗=1024」。 行(row)アドレスと列(column)アドレスについては回答No.2を参照。 http://itpro.nikkeibp.co.jp/article/COLUMN/20090305/325993/?ST=platform&P=2 語(ワード,word)という用語についてはこちらを。 http://www.atmarkit.co.jp/icd/root/25/121402925.html http://ja.wikipedia.org/wiki/ワード よって容量は 1024×1024 = 1k×1k = 1M語。

rock123
質問者

お礼

リンクを付けてご説明頂きありがとうございました。 とても分かりやすかったです。 ご回答ありがとうございました。

その他の回答 (2)

  • e3tatsu
  • ベストアンサー率51% (78/151)
回答No.2

DRAMでは同一の信号線でローアドレスとカラムアドレスの 2回に分けて一意のアドレスを指定します。 これをマルチプレックスアドレス方式と言います。 「1語」というのは「1アドレス」のことです。 1アドレスは一般的には8ビットですが、 そうではない処理系も世の中には存在します。 アドレス線の本数を減らすために語長を32ビットとして いる処理系もあるという話を聞いた覚えもあります。

rock123
質問者

お礼

ご回答ありがとうございました。 ローとカラムの掛け算になるのですね。 納得できました。 ありがとうございました。

  • semikuma
  • ベストアンサー率62% (156/251)
回答No.1

私も全然詳しくありませんが、以下のように想像します。 あくまで想像ですので、間違ってたらごめんなさい。 先ず「語」ですが、これはよく聞く「word」の直訳でしょう。 多分、メモリーの1つのアドレスに格納できるビット数かと思います。 CPUもメモリーの一種ですが、昔々まだ「マイコン」と呼ばれていた時代のCPUは8ビットが1単位だったので、コマンド8ビット+アドレス8ビットを1セットとしてプログラムを書いていました。 但し全部二進数表記すると人間には非常に判りにくいし非効率なので、4ビットずつに区切って16進数表記するのは今でも行われているかと思います。 またコマンド部分は16進数表記でも判りにくいので、get、put、addなどの簡単な命令語に置き換えていました。 例えばget5Aと書くと、アドレス5A(二進数表記で0101 1010)番地の内容(8ビット)をレジスターに読み込め、という命令となります。 尚、メモリーのアドレスを表記するビット数と、内容のビット数とは必ずしも一致しませんが、一致した方が効率的となるのはお分かりかと思います。 その後CPUも、16ビット、32ビットと進化して、ゲーム機ではニンテンドー64から64ビットとなりました。 パソコンではVISTAから漸く64ビット対応となりました。 言うまでもなくビット数が多いほど、1度に処理できるデータの数も増えるので、例えば高精細画像を高速に処理できるようになります。 余談ですが、半角英数字は8ビット(256通り)で表現されますが、日本語はこれでは足りないので、全角の16ビット(65,536通り)で表現されます。 CPUの能力が8ビットの時代は、全角1文字の処理に2回の操作をしていたことになります。 ここまで読めばお分かりかと思いますが、アドレスは本来二進数表記されます。 アドレス線とは、多分1本ごとに1ビットずつ、low, highで0,1を表現してアドレスを指定するものでしょう。 問題文には「全 ROW アドレスを」と書いてあるので、もう一組columnアドレスを指定する線が10本あって(または同じ線をもう一度使って)、1024×1024=1,048,576(1M)wordの容量があるものと思います。

rock123
質問者

お礼

ありがとうございます。 納得できました。 とても詳しいご説明ありがとうございました。

関連するQ&A