浮動小数点演算ユニットとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > デジタル大辞泉 > 浮動小数点演算ユニットの意味・解説 

ふどうしょうすうてんえんざん‐ユニット〔フドウセウスウテンエンザン‐〕【浮動小数点演算ユニット】

読み方:ふどうしょうすうてんえんざんゆにっと

エフ‐ピー‐ユーFPU


FPU

(浮動小数点演算ユニット から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/02/05 09:41 UTC 版)

FPUFloating Point Unit浮動小数点(演算処理)装置)とは、浮動小数点演算を専門に行う処理装置のこと。[1]コンピュータの周辺機器のようなアーキテクチャのものもあれば、主プロセッサと一体化したコプロセッサのようなアーキテクチャのものもある。

AMDではAm9511をAPU (Arithmetic Processing Unit) と呼んでおり(2011年以降はAPUをAccelerated Processing Unitの略称として使用)、インテルではx87NDPNumeric data processor, 数値演算コプロセッサ)、またその命令についてNPXNumeric Processor eXtension)とも呼んでいる。

マイクロプロセッサにおいては、Apple IIの頃は完全に周辺機器のようなアーキテクチャだったが、8087の頃には命令の一体化など、CPUの拡張装置のようなアーキテクチャになった。

1990年代中盤以降の高性能プロセッサではFPUはプロセッサ内部のサブユニットとなっている。[1]インテルのx86系CPUでは独立ユニットのFPUは387386用)が最後となり、486からは同一のチップ内に内蔵された(486の初期には、FPUを内蔵しない廉価版と、事実上はオーバードライブプロセッサであった487もあった)。同様に、モトローラの68000系でもMC68040以降はチップ内に内蔵している。プロセッサに内蔵されたFPUはスーパースカラーで他ユニットと並列動作させることができるなど様々なメリットがあるため、現在ではFPUを単体で用いることは珍しくなっている。

接続の形式

I/Oプロセッサ形式

FPUをI/Oポートに接続して、通常の周辺機器と同様にI/Oポートを介してデータのやり取りを行なう形式。たとえばAm9511はこの形式で設計されている。FPUは周辺機器として扱われるので、CPUと同じメーカのFPUを使わなくてもよく、8ビットCPUの時代には、コストのかかるAm9511などの代わりに別メーカの電卓用CPUをI/Oポートに接続して使うことがホビイストの間で実験的に行なわれた。

また、対応機種として設計されていない組み合わせ、たとえばモトローラMC68881MC68020/MC68030用FPU)や、インテル287286用FPU)を、MC68000MC68010に接続する場合は、データの入出力をプログラム上で明示的に行わなくてはならない。そのマシンに対応した数値演算ライブラリを使用すれば、アプリケーションソフトウェアのプログラミングにおいては、FPUを使用することを意識する必要は無いが、I/Oポートを介してデータをやり取りするため直接接続されている場合に比べて、大きなオーバヘッドが生ずる。逆に利点としては、主プロセッサと、副プロセッサの動作速度を個別に設定できるなど、自由度が高い点がある。

2018年現在では、Graphics Processing Unit及びそれをベースにしたプロセッサを用い、暗号通貨や各種演算処理に用いられる事が増え、グラフィックボードが品薄になる程の需要が生じている。

コプロセッサ方式

CPUとFPUがアドレスバスとデータバスを共有し、協調して動作する方式。ユーザから見るとCPUの命令が拡張されたように見える。 8087ではデコーダを独立して内蔵しており、真の意味でコプロセッサだったが、287以降はCPUのデコード結果を専用I/Oポートを介し引き渡す方式を採った。8086/87では次の浮動小数点命令を実行する前に、直前の(8087の)命令が終わるまで待つための(8086の) wait 命令が必要[2]だったが、286/287からは必要なくなっている。

モトローラMC68881MC68882を同社MC68020またはMC68030と組み合わせる場合、専用に用意された制御線を使用して接続すれば、ソフトウェアの変更は必要なく、プログラマからは単純にCPUの機能が拡張されたように扱える。MC68020の場合、厳密にはコプロセッサの存在を示すフラグが立つ。

乗っ取り形

コプロセッサ方式の発展形。コプロセッサが実際にはCPUとしての全機能を持っており、制御は完全にコプロセッサ側に渡してしまい、既存のCPUは停止させてしまう。

487がこれで、要するにFPUというのは名前だけで、実態はオーバードライブプロセッサである。

脚注・出典

  1. ^ a b FPUとは - IT用語辞典”. IT用語辞典 e-Words. 2024年2月5日閲覧。
  2. ^ 浅野泰之、壁谷正洋、金磯善博、桑野雅彦「第5章 8087(数値演算プロセッサ)」『PC-9801システム解析(下)』アスキー、1983年12月1日、156頁。ISBN 4-87148-715-6 

関連項目


浮動小数点演算ユニット

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/03/28 10:14 UTC 版)

Alpha 21064」の記事における「浮動小数点演算ユニット」の解説

浮動小数点演算ユニットは浮動小数点数レジスタファイル (FRF) と F-box構成されるFRFには32本の64ビットレジスタがあり、リードポートが3つ、ライトポートが2つある。F-box には浮動小数点演算パイプラインパイプライン化されていない除算ユニットがある。除算ユニットは1サイクル1ビット結果出力する第4ステージでは、浮動小数点数レジスタファイルからデータ読み込むと、それを仮数部、指数部符号フォーマットする。加算命令場合、まず加算器指数部差分計算し結果正規化するために仮数部のあわせを行う準備をする。 第5および第6ステージで、加減算場合正規化のためのシフト行いスティッキービット計算を行う。乗算パイプライン化され2ウェイ・インターリーブされた配列使い基数8のブースの乗算アルゴリズム使用する第8ステージ最後加算行い並行して丸め実施する第10ステージ結果FRF書き込む。 このパイプライン実行される命令レイテンシは6サイクルとなる。単精度32ビット)と倍精度64ビット)の除算パイプライン化されていない除算ユニット使用しレイテンシそれぞれ31サイクル61サイクルである。

※この「浮動小数点演算ユニット」の解説は、「Alpha 21064」の解説の一部です。
「浮動小数点演算ユニット」を含む「Alpha 21064」の記事については、「Alpha 21064」の概要を参照ください。

ウィキペディア小見出し辞書の「浮動小数点演算ユニット」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「浮動小数点演算ユニット」の関連用語

浮動小数点演算ユニットのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



浮動小数点演算ユニットのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのFPU (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのAlpha 21064 (改訂履歴)、Alpha 21164 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS