丸め処理

Versal ACAP DSP エンジン アーキテクチャ マニュアル (AM004)

Document ID
AM004
Release Date
2022-09-11
Revision
1.2.1 日本語

演算における丸め処理とは、計算結果を適切に量子化することをいいます。丸めの方法を選択する際には、精度の低下が最も少なくなる実装が望まれます。ただしザイリンクスの DSP を使用する場合を含め、ほとんどのハードウェア実装では各種丸め手法で生じるオーバーヘッドを考慮し、デザインのトレードオフを適切に実行する必要があります。2 進数の小数点位置と丸めが発生するビット位置は互いに独立していますが、設計者の目的は小数ビットを整数値に丸めることです。

丸めの 1 つの方法として、単純な切り捨てがあります。これは、計算結果の不要な下位ビットを除去して、少ないビット数の結果を得るという方法です。切り捨てによってビットを除去すると、計算結果の DC データが負の数に向かってシフトするため、好ましくありません。たとえば 10 進数の 2.8 の小数部を切り捨てると、結果は 2 となります。この場合、元の値は 2 よりも 3 に近いため、単純に切り捨てて 2 とするよりも 3 に丸めた方がよいことになります。

ここからは、対称丸めや収束丸めなど、より好ましい量子化の方法について説明します。