Implementation of Efficient Fixed Point ALU with 32 Bit Processing Capability
Abstract— Exploiting computational precision can improve performance significantly without losing accuracy in many applications. To enable this, we propose an innovative arithmetic logic unit (ALU) architecture that supports true dynamic precision operations on the fly. The proposed architecture targets fixed-point ALUs. In this paper we focus mainly on the precision controlling mechanism and the corresponding implementations for fixed-point adders and multipliers. We implemented the architecture on Xilinx Virtex-5 XC5VLX110T FPGAs, and the results show that the area and latency overheads are 1% ~ 24% depending on the structure and configuration. This implies the overhead can be minimized if the ALU structure and configuration are chosen carefully for specific applications. The VHDL coded synthesizable RTL code of the Fixed Point Arithmetic core has a complexity. We verified the functions of the Fixed Point Arithmetic by a simulation with a single instruction test as the first step and implemented the Fixed Point Arithmetic with the FPGA.
Keywords—32-Processor, 32-bit fixed point Arithmetic, fixed point Processor RISC; VHDL
INTRODUCTION
The Arithmetic Logic Unit is one of the essential components of a computer. It performs arithmetic operations such as addition, subtraction, multiplication, division and various logical functions. In this paper ALU is simulated and analyzed on various parameters such as speed, power and number of logical blocks used by that ALU. The Arithmetic operations such as addition, subtraction, multiplication, division and the logical operations are realized using VHDL. Xilinx 8.1i software is used for writing the VHDL codes and the simulation is carried out with ModelSim 5.5f simulator. An arithmetic logic unit (ALU) is a combinational digital electronic circuit that performs arithmetic and bitwise operations on integer binary numbers. This is in contrast to a floating-point unit (FPU), which operates on floating point numbers. An ALU is a fundamental building block of many types of computing circuits, including the central processing unit (CPU) of computers, FPUs, and graphics processing units (GPUs). A single CPU, FPU or GPU may contain multiple ALUs.
Read More