Hardware

16 Bit Scientific Calculator on FPGA

FPGA

Project URL: https://github.com/rv2442/16BitScientificCalculator


16 Bit Scientific Calculator Using Xilinx ISE 14.7(Verilog) on Spartan 6 FPGA Dev Board


Intro

  1. A calculator's function is to do accurate calculations promptly. It is obvious that, to the greatest extent feasible, a calculator should free the user from the need to do mental calculations and rely on paper.
  2. Scientific calculators are extensively employed in circumstances where quick access to certain mathematical functions is required, particularly those that were previously looked up in mathematical tables, such as trigonometric functions and logarithms.
  3. They're also employed in astronomy, physics, and chemistry to calculate extremely large or extremely small values.
  4. For scientific computations a simple modern-day calculator cannot be used, here is when a Scientific Calculator comes into the picture. We are designing a scientific calculator using Verilog HDL.

What is an FPGA?

  • Field Programmable Gate Arrays (FPGAs) are semiconductor devices that are based around a matrix of configurable logic blocks (CLBs) connected via programmable interconnects.
  • FPGAs can be reprogrammed to desired application or functionality requirements after manufacturing.
  • This feature distinguishes FPGAs from Application Specific Integrated Circuits (ASICs), which are custom manufactured for specific design tasks.
  • Although one-time programmable (OTP) FPGAs are available, the dominant types are SRAM based which can be reprogrammed as the design evolves.

Transition Diagram

image


16 Bit Scientific Calculator

Cosine:

Cosine was Calculated for an angle of 40(in degrees) 'a' is the 16-bit output in decimal (up to 4 digits) 'select' 01101 is the select mode for Cosine

image


Division:

Division of 10000 by 3000 is performed which shows an output of 3.3333 'a' is the integer output of the division's Quotient 'b' is the decimal output of the division's Quotient 'select' 00011 is select the mode for division

image


Natural Logarithm:

Natural Log of 5 is performed and shows output 1.60 Output names are self-explanatory

image


4-Bit Arithmetic Calculator

The Development Board

image

Addition:

The addition of 2 4-bit numbers 12(1100) and 15(1111) is giving output 27(0001 1011)

image

Division

Floating point division of 2 4-bit numbers up to 2 decimals, 5(0101) and 3(0011) gives output 1.66 (5/3) LSB is 1(0000 0001) 4 LEDs on the Breadboard towards the left means 6(0110) 4 LEDs on the Breadboard towards the right means 6(0110)

image


REFERENCES:


COLLABORATORS: