Versatile Calculator - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

Versatile Calculator

Description:

... successful, now being used in many consumer and industrial applications. ... printer engines, set-top boxes, robots, handheld computers, Sony PlayStation 2 ... – PowerPoint PPT presentation

Number of Views:22
Avg rating:3.0/5.0
Slides: 24
Provided by: vlsi1E
Category:

less

Transcript and Presenter's Notes

Title: Versatile Calculator


1
Versatile Calculator
  • By
  • Dilip Patlolla
  • Roopa Channappa
  • Electrical and Computer Engineering
  • University of Tennessee
  • Knoxville

2
Versatile Calculator
  • This Project deals with the design of a block,
    which is part of the MIPS (Micro Computer without
    Interlocked Pipeline Stages) Processor
    architecture. In this project, a Data Path and
    Control Unit are implemented to carry the design.
    The block is designed to work as a calculator
    where the user provides the instruction and the
    data on which the operation is to be performed.

3
Design Flow

System Requirements
Architectural Specifications
Behavioral Description
Structural Description
Synthesis
Libraries
Simulation
Placement and Routing
Physical Implementation
4
Specifications
  • Instruction Memory
  • Splitter
  • Register
  • ALU
  • Display Controller
  • BIST
  • Clock

5
Block Diagram
BIST
Control Unit
opcode
input
go
digit
do
Instruction splitter
Register
ALU
Display Controller
data1
opcode
carry
RESET
Data 2
borrow
MUX
seg
Data 1
result
BIST
CLOCK
clock
Result to memory
6
System Requirements

Address(30) Slide switches(k13,k14,j13,J14)
4
8
FPGA
BIST(L13)
1
Seven Segment Display
8
1
DO(M13)
1
Go(M14)
8
Clock (T9)
Reset(L14)
7
Instruction Set Memory

8
Instruction set
15
0
9
4
10
Opcode
DATA 1
DATA 2
  • The instruction set is of 16 bit width
  • With three parts
  • DATA 1 of 6 bit length
  • DATA 2 of 6 bit length
  • Opcode of 4 bit length

9
Opcodes
  • Operations
  • 0001 add - data 1 data 2
  • 0010 subtract - data 1 data 2
  • 0011 increment - data1 1
  • 0100 decrement - data1 - 1
  • 1001 add - result data1
  • 1010 subtract - result - data 1
  • 1011 increment - result 1
  • 1100 decrement - result - 1

10
Instruction Splitter
  • This block splits the instruction set into
    the three parts of data1, data2 and op code

11
Register
12
Multiplexer
  • Sends the output based on the select input
    received from Control Unit

13
Arithmetic Logic Unit
14
ALU
  • Computes the result.
  • Indicates the Carry or Borrow based on the
    operation result
  • Output is zero when reset

15
Control Unit
  • Sends operation codes to ALU
  • Sends the required control codes to the
    Multiplexer and Memory based on the input opcode

16
Display Controller
  • Accepts a 6-bit binary number between 0 and 63
    (output of the ALU)
  • Converts binary number to a 2-digit BCD
    representation
  • Generates appropriate logic levels to drive
    7-segment display

17
Final Single Block Diagram
18
Xilinx Block Diagram
19
Difficulties
  • Timing issues
  • Implementing few Instructions

20
MIPS Processor
21
Summary and Conclusion
  • This is an approximate basic sub part of a MIPS
    processor which is shown to work as a calculator
    which can be further developed into a ready to
    use core in MIPS architecture.

22
Scope for Development
  • These cores can be mixed with add-in units such
    as SIMD systems, various input/output devices,
    etc.
  • MIPS cores have been commercially successful, now
    being used in many consumer and industrial
    applications. MIPS cores can be found in newer
    Cisco and Linksys routers, cable modems and ADSL
    modems, smartcards, laser printer engines,
    set-top boxes, robots, handheld computers, Sony
    PlayStation 2 and Sony PlayStation Portable.

23
  • THANK YOU
Write a Comment
User Comments (0)
About PowerShow.com