第2回分

演算回路関係

積差演算回路は存在しますか.

残念ながら、あまり使い道がなさそうです。

累算器≒加算器ということは、どちらを使用してもいいのですか.

累算器とは、積和演算などの、演算の途中結果を加算していくときの 加算をする回路のことを言います。 つまり実体は、加算器なのですが、使い方によって このように呼びます。

ALUは加算のみで、乗算は別回路で計算するのですか.

なかなか鋭い質問です。 この講義の後半で詳しく触れますが、乗算器は、かなり大規模になるため、 一般にALUとは別の、専用の回路をもつことが多いです。

積和演算回路の具体的な数値計算はどうなっているのですか.

積和演算回路を制御して、具体的な数値演算をどうやるか、という 意味でしょうか? そうであれば、それは、プロセッサが、プログラムで制御することになります。

積和演算における行列式は、なぜわざわざ行列式なのですか.グラフィックとの関係は.

座標変換などで、行列の積の演算が多用されます。

板書では塁積器、プリントでは累算器とありますが、どちらが正しいですか.

ああ、すいません。どちらでも同じです。 が、累算器、と呼ぶことが多いですね。

乗加算器のアルゴリズム構成を詳しく知りたい.

積和演算回路自体は、お話したとおりです。 加算器と乗算器の中身は、次回以降、いやというほど詳しく・・・

行列の積は他にはどのように使われていますか.

図形がらみの操作では、ほとんどそうじゃないですかね。 また、フィルタリングなどのディジタル信号処理でも多用されます。

実行すべき命令はどのように選ぶのですか.

メモリ中の、いま実行すべき命令が入っている場所は、 プログラムカウンタ(PC)という特別なレジスタの値が使われます。

アドレスバスとデータバスそれぞれいろんな所にあるのですか.別々にあるのは効率のためですか.

基本的には、データの流れの効率化のためですね。 1本だけにしておいて、アドレスやデータで共用してもよいのですが、 バスは乗り合いですから、どうしても待ち時間が長くなってしまいます。 そこで、待ち時間を減らすために、複数用意するわけです。

プロセッサ内のメモリと、メモリ番地(外部メモリのこと?)はどう違うのですか.

プロセッサ内のメモリ(レジスタ)は、データの読み書きに要する 時間が短いので、よく使うデータは、そこにおいておくようにします。 ただし一般的にレジスタの容量は小さいので、 容量が大きいが、アクセスに時間を要する外部のメモリと 併用します。 (いわゆるメモリの階層構造)

内部のデータバスとはプロセッサ内のものでしょうか.

そのとおりです。

DSP関係

プロセッサ内であらかじめ命令がセットされていると思いますが,どれくらいの量ですか.

プロセッサの命令体系の設計方針には大きく2つあります。 1つは、できるだけ多くしようとするCISC (Complex Instruction Set Computer)で、 多いものは1000以上になります。 もう1つは、できるだけ少なくしようとするRISC (Reduced Instruction Set omputer)で、少ないものだと20程度になります。

DSPの基本構造は配列として行列を入れていくだけなのですか.

そういうことになりますね。

DSPの特徴は累算器が入っている以外にあるのですか.

講義では時間がなくてふれませんでしたが、 データを入れておくメモリとプログラムを入れておくメモリを 分ける、いわゆるハーバードアーキテクチャをとるものが多いのも 特徴の1つです。 また、その積和演算をする命令を持つのも、特徴の1つです。

DSPの入っているパソコンって何ですか.他には何で使われているのですか.

最近は携帯電話などでの音声信号処理では、DSPは多用されるように なっているようです。 例えばカーオーディオのノイズ低減処理などでも、DSPが使われている ものもあるようです。

DSPの欠点は何ですか.

積和演算をそれほど使わない用途では、それが無駄になる、 というあたりでしょうか。

DSPで、積・和を求める乗算器を一つずつ使うより複数使った方が効率が上がると思うのですが.

そのとおりです。 が、一般に乗算器は、回路が大きいので、あまりたくさん持つのは 現実的ではありません。 回路規模が許す限り多く持つ、という方針はありえます。

パイプライン処理関係

C(M)とZ(M-1)加算時にZ(M-1)は、出力されたばかりだと思うのですが問題ないのですか.

いえ、Z(M-1)は、前回の加算の結果として、レジスタ(reg)に保存されています。 その値を用いて加算してZ(M)を求め、次のタイミングで、それが 再び加算器の入力に戻されます。 このように、レジスタで1回ごとに切られているので、大丈夫です

乗算時は、桁が多いと時間がかかり効果が薄れるのではないですか.

そのとおりです。 乗算器の高速化のことは、この講義の後半でお話します。

二つの演算の時間のずれはどう処理するのですか.

両者を、レジスタ(reg)でタイミングをあわせているわけですね。

その他

バス型接続以外のμPは存在しますか.

あまり聞いたことがないですね。 昔は、I/O装置ごとに別々の信号線があるものあったようです。

メインメモリの速度がボトルネックになりμPの速度・効率に効いてくるのではないですか.

まったくそのとおりです。 そこをいかに解消するかが、ノイマン型コンピュータの 高性能化のカギになります。

現在ノイマン型以外のコンピュータは使われていないのですか.

コンピュータは「コンピュータ≒メモリ中のプログラムを実行する」ですが、他のもあるのですか.

昔の一時期、研究されていたこともあるのですが、 最近は、いろいろな高性能化の努力の効果もあって、 プログラムで動作を変更できる、という大きな利点を持つ ノイマン型コンピュータが主流になっているようです。

フラッシュメモリの速度はどれくらいでしょうか.また速くなる要因は何ですか.

読み出しは、100ns/バイト以下、というところえでしょうか。 書き込みは、原理的にあまり速くなく、1回当たり1ms近くかかるものも多いようです。 読み出しは、他のメモリと動作原理がほとんど同じなので、 回路構成の工夫などで高速化が可能で、実際研究もされていますが、 書き込みは、何バイトかをまとめて書き込むことで、 実質的な(1バイトあたりの)書き込み時間を短くする、 というのが現実的のようです。
戻る