This thesis describes a pipelined floating-point unit(FPU) for a low-power processor. The goal of this design is to achieve a low-power design and an area-optimized implementation, as it will be integrated on a single chip with a low-power processor core.
It consists of two major functional units, floating-point arithmatic logic unit (ALU) and floating-point multiplier/divider(MULDIV) unit. It supports both single precision format data and double precision format data. To reduce the required power, the upper half part of datapath is disabled when calculating the single precision data.
Many parts of the FPU are shared to reduce the area. For example, multiplier and divider uses the adder in ALU, and ALU consists of only one shifter and one adder, needs less area than conventional ones.
본 논문에서는 저전력 프로세서를 위한 math-coprocessor를 구현하는 과정과 그 구조에 관하여 기술하였다. 저전력 프로세서와 on-chip화 되어야 하므로 이 디자인에서는 적은 면적과 저전력의 구현이 가장 중요한 요건이 된다.
주어진 performance를 만족하는 한도내에서 최소한의 면적을 가지도록 구현하기 위해 ALU에서는 adder와 rounder를 하나의 adder로 구현하고 denormalizing shift와 normalizing shifter를 하나의 shifter로 구현하였으며 multiplier와 divider는 같은 하드웨어를 많이 공유할 수 있도록 설계하였다.
저전력을 위해서는 datapath를 반으로 나누어서 double precision data를 다룰 때는 fraction part를 모두 사용하고 single precision data를 다룰 때는 fraction part의 하위 부분만 사용하도록 하여 datapath에서의 불필요한 transition에 의한 전력 손실을 최소화할 수 있도록 설계하였다.