ロードストアアーキテクチャ
読み:ロード-ストア-アーキテクチャ
外語:Load Store architecture
メモリーにアクセスする命令を、ロード命令とストア命令だけに単純化したアーキテクチャーのこと。
RISC
アーキテクチャーの代表的な設計コンセプトであり、命令セットやアーキテクチャーをシンプルにすることが出来る。
目次
概要
RISC
CISC
特徴
単純化
レジスター
概要
RISCつまりロードストアアーキテクチャーの場合と、
CISC
との違いは、次のようになる。
RISC
RISCのロードストアアーキテクチャーでは、メモリーへアクセスするのはロード命令とストア命令だけである。
ロード命令は、指定したメモリーアドレスよりデータを読み取り、それをレジスターへ格納する。
ストア命令は、レジスターの内容を、指定したメモリーアドレスへ書き込む。
これ以外の命令は、
オペランド
には原則としてレジスターしか使用できない(一部には制限つきで
イミディエイト
(即値)が使える場合がある)。
例えば、加減乗除などの演算をすることを考える。この時、演算の対象は二つ存在する。演算命令の場合、オペランドには原則としてレジスターしか使用できないが、その代わり命令は単純化されており、効率的かつ高速となっている。
CISC
対してCISCでは、殆どの命令で、様々なアドレッシングモードが利用できる。
例えば、加減乗除などの演算をする時、二つ存在する演算対象は必ずしもレジスターである必要は無く、
イミディエイト
(即値)の場合や、時には指定したメモリーアドレスから読み出して演算するケースもある。
自由度が高く使いやすい代わり、命令ごとにアドレッシングモードの指定が必要で、アドレッシングモードによってはメモリーのアドレス指定等が加わる。命令長が一定しないため効率が悪く低速で、また演算前にメモリーアクセスが必要となるため命令の実行速度も一定しない。
特徴
単純化
ロードストアアーキテクチャーでは、演算命令のオペランドはレジスターだけを想定すれば良い。
このためCISCのような複雑なアドレッシングモードは必要がなく、全命令で命令長を固定にすることができる(例えば16ビット固定長)。また演算がレジスター同士だけなので、命令実行時間も同じにできる(例えば1ステートで実行)。
このため、
命令フェッチ
から解読、実行、結果の反映までに要する時間は殆どの命令で同じとなり、プロセッサーは制御回路を単純化することができる。
プロセッサーは、単純であればあるほど
クロック周波数
の向上などの高速化が可能なため、プロセッサーの単純化は高速化にも寄与する。
RISCは、このようにして命令の単純化→高速化を目指すアーキテクチャーである。
レジスター
RISCは、演算の全てをレジスターで行なう。また高速化を目指す目的から、演算結果を一々メモリーに書いたりせず、レジスターで持ち回す方が好ましい。
そこでRISCでは、CISCと比べて多くの汎用レジスターが用意されることが多い。
32ビットARM
や
SuperH
などでは16本、
64ビットARM
や
MIPS
や
SPARC
などでは32本の
汎用レジスター
が用意されているが、プロセッサーによっては更に多くのレジスターを用意するものがある。
再検索