high speed adder

24
HIGH SPEED ADDER Dagrious Anak Jihob Bachelor of Engineering with Honours (Electronics and Telecommunications Engineering) 2008/2009

Upload: others

Post on 07-Jan-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: HIGH SPEED ADDER

HIGH SPEED ADDER

Dagrious Anak Jihob

Bachelor of Engineering with Honours

(Electronics and Telecommunications Engineering)

2008/2009

Page 2: HIGH SPEED ADDER

UNIVERSITI MALAYSIA SARAWAK

R13a

BORANG PENGESAHAN STATUS TESIS

Judul: HIGH SPEED ADDER

SESI PENGAJIAN: 2008/2009

Saya DAGRIOUS ANAK JIHOB

(HURUF BESAR)

mengaku membenarkan tesis * ini disimpan di Pusat Khidmat Maklumat Akademik, Universiti Malaysia Sarawak

dengan syarat-syarat kegunaan seperti berikut:

1. Tesis adalah hakmilik Universiti Malaysia Sarawak.

2. Pusat Khidmat Maklumat Akademik, Universiti Malaysia Sarawak dibenarkan membuat salinan untuk

tujuan pengajian sahaja.

3. Membuat pendigitan untuk membangunkan Pangkalan Data Kandungan Tempatan.

4. Pusat Khidmat Maklumat Akademik, Universiti Malaysia Sarawak dibenarkan membuat salinan tesis ini

sebagai bahan pertukaran antara institusi pengajian tinggi.

5. ** Sila tandakan ( ) di kotak yang berkenaan

SULIT (Mengandungi maklumat yang berdarjah keselamatan atau kepentingan

Malaysia seperti yang termaktub di dalam AKTA RAHSIA RASMI 1972).

TERHAD (Mengandungi maklumat TERHAD yang telah ditentukan oleh organisasi/

badan di mana penyelidikan dijalankan).

TIDAK TERHAD

Disahkan oleh

(TANDATANGAN PENULIS) (TANDATANGAN PENYELIA)

Alamat tetap: D3-3B, Demak Laut

Commercial Centre, Jln Bako, 93050

Kuching, Sarawak ENCIK NURHUZAIMIN JULAI

Nama Penyelia

Tarikh: 6 APRIL 2009 Tarikh:

CATATAN * Tesis dimaksudkan sebagai tesis bagi Ijazah Doktor Falsafah, Sarjana dan Sarjana Muda.

** Jika tesis ini SULIT atau TERHAD, sila lampirkan surat daripada pihak berkuasa/organisasi

berkenaan dengan menyatakan sekali sebab dan tempoh tesis ini perlu dikelaskan sebagai

SULIT dan TERHAD.

Page 3: HIGH SPEED ADDER

This Final Year Project attached here:

Title : High Speed Adder

Student Name : Dagrious Anak Jihob

Matric No : 13923

has been read and approved by:

__________________________ ______________________

Mr. Nurhuzaimin Julai Date

(Supervisor)

Page 4: HIGH SPEED ADDER

HIGH SPEED ADDER

DAGRIOUS ANAK JIHOB

This project is submitted in partial fulfilment of

The requirements for the degree of Bachelor of Engineering with Honours

(Electronics and Telecommunications Engineering)

Faculty of Engineering

UNIVERSITI MALAYSIA SARAWAK

2008/2009

Page 5: HIGH SPEED ADDER
Page 6: HIGH SPEED ADDER

Dedicated to my beloved parent, family members and friends who

was supported and encouraged me

Thank you for all the support and encouragement

Page 7: HIGH SPEED ADDER

ii

ACKNOWLEDGEMENT

First of all, I would like to thank God, with His guidance and wishes that this

final year project can be completed successfully. I also wish to express my sincere

gratitude to my project supervisor Encik Nurhuizaimin Julai for his excellent patience,

guidance, advice and valuable experience throughout this project.

In particular, I wish to express my appreciation towards the other electronics

lecturers, and staff of the Faculty of Engineering, UNIMAS for contributed their

commitment, their bright ideas, their valuable time, and their energy towards the

development of this project.

Finally, I would like to express my greatest appreciation to my friends, my

girlfriend, course mates and my lovely family for their constant cooperation,

encouragement, understanding, and supports.

Page 8: HIGH SPEED ADDER

iii

ABSTRAK

Terdapat beberapa jenis kumpulan rekaan penambahan di bawah keluarga rekaan

penambahan berkelajuan tinggi. Setiap kumpulaan ada kelebihan dan kebaikan

tersendiri. Untuk projek ini, tiga ciri-ciri penambah berkelajuan tinggi akan di

bandingkan dan dinilaikan dari segi saiz bit, keluasan rekaaan dan perlengahan masa.

Matlamat projek ini adalah untuk mereka salah satu kumpulan dari keluarga

penambahan berkelajuan tinggi menggunakan perisisan komputer yang berkaitan. Jadi,

kemampuan untuk cara mencipta Penambahan Berkelajuan Tinggi yang dipersembahkan

dalam projek ini akan dibuktikan. Kepekaan dalam perlengahan masa untuk

membezakan proses dan pelbagai persekitaran telah disentuh dengan lebih lanjut dalam

perlaksanaan keputusan. Oleh itu, daripada keputusan eksperimen menunjukkan bahawa

elemen Penambah Berkelajuan Tinggi mampu memberikan jumlah perlengahan masa

yang dapat diterima tanpa menggunakan kuasa yang besar. Dengan itu, daripada

perbandingan keputusan yang akan ditunjukkan dalam projek ini nanti akan

membuktikan bahawa memilih elemen perlengahan masa yang terbaik adalah sangat

berguna untuk diaplikasikan di mana keperluan dalam bentuk masa itu sendiri beroperasi

ke arah rekaan penambahan berkelajuan tinggi.

Page 9: HIGH SPEED ADDER

iv

ABSTRACT

There are various group of adder design under high speed adder family design.

Each group has its own advantages and disadvantages. For this project, three important

criteria of high speed adder will be compared and analyzed: bit size, design’s area, and

propagation delay. The aim of this project is to design one group member of high speed

adder’s family using related software. Thus, the capability for the methodology by

designing the Brent Kung Adder(s) is presented in this project by which to proven. The

sensitivity of the delay elements to different process and environmental variations is

studied from the simulation results. Therefore, the experimental result represent that the

high speed adder elements gave a reasonable amount of delay without large power costs.

So, from the comparison results presented in this project will prove useful for selecting

the best delay element to apply which is the essential part for self-timed operation in

high speed adder.

Page 10: HIGH SPEED ADDER

i

TABLE OF CONTENTS

Content Page

Dedication i

Acknowledgement ii

Abstrak iii

Abstract iv

Table of Contents i

List of Tables v

List of Figures vi

List of Abbreviations ix

CHAPTER 1: INTRODUCTION

1.0 Background 1

1.1 Objectives of Project 3

1.2 Project Outline 4

1.3 Thesis Outline of Project 5

CHAPTER 2: LITERATURE REVIEW

2.0 Introduction 7

2.1 Half Adder 8

2.2 Full Adder 10

Page 11: HIGH SPEED ADDER

ii

2.3 Ripple Carry Adder 13

2.4 Carry Look-Ahead Adder 15

2.5 Parallel Prefix Adder 17

2.6 Kogge-Stone Adder 21

2.7 Brent-Kung Adder 23

2.8 Brent Kung Adder Ideology Design 25

2.8.1 Propagate-Generate –Block 27

2.8.2 Fundamental Carry Operator 28

Block

2.8.3 Parallel Prefix Carry Block 30

2.8.4 Parallel Prefix Sum Block 31

2.8.5 BKA design for 8-bit and 32

16 bit word length

2.8.6 BKA design for 32-bit length 35

2.8.7 BKA design for 64-bit length 36

2.9 Design Sofware 36

CHAPTER 3: METHODOLOGY

3.0 Project Process Flow 38

3.1 Project Design Flow 40

3.1.1 Design Entry Project 41

3.1.2 Generate VHDL source code 41

3.1.3 Compilation 44

3.1.4 Simulation 44

Page 12: HIGH SPEED ADDER

iii

3.1.5 Analysis and Synthesis 45

3.1.6 Modification and Implementation 45

Process

CHAPTER 4: RESULTS, ANALYSIS & DISCUSSIONS

4.0 Discussion on BKA-8, BKA-16, BKA-32 46

and BKA-64 bit design

4.2 BKA-8 bit simulation functional waveform 47

results

4.3 Discussion on BKA-8 bit simulation functional 48

waveform results

4.4 BKA-16 bit simulation functional waveform 49

results

4.5 Discussion on BKA-16 bit simulation functional 50

waveform results

4.6 BKA-32 bit simulation functional waveform 51

results

4.7 Discussion onBKA-32 bit simulation functional 52

waveform results

4.8 BKA-64 bit simulation functional waveform 53

results

4.9 Discussion on BKA-64 bit simulation functional 54

waveform results

4.10 Results of BKA n-bit timing analysis 58

Page 13: HIGH SPEED ADDER

iv

4.11 Discussion on the BKA n-bit timing analysis 60

results

4.12 Problem Encounter 64

4.13 Problem Solution 64

CHAPTER 5: CONCLUSION AND RECOMMENDATION

5.0 Conclusion 65

5.1 Future Work 68

5.2 Recommendation 69

REFERENCES 70

APPENDIX 74

Page 14: HIGH SPEED ADDER

v

LIST OF TABLES

Table Page

Table 2.1: HA truth table 10

Table 2.2: FA truth table 13

Table 4.1: Comparison between BKA ‘n’-bit versus internal blocks 46

Table 4.2: Representative values of Decimal, Hexadecimal and Binary 54

Table 4.3: Comparison between worst case propagation delays of 61

BKA bit size designed

Page 15: HIGH SPEED ADDER

vi

LIST OF FIGURES

Figure Page

Figure 1.1: Datapath Bit-Sliced Organization in IC designs 2

Figure 1.2: Evaluating High Speed Adder Block Diagram 6

Figure 2.1: HA Structure 8

Figure 2.2: Schematic HA gate logic 9

Figure 2.3: FA structure 11

Figure 2.4: Schematic FA gate logic 12

Figure 2.5: RCA structure 14

Figure 2.6: Calculation with carry operation 15

Figure 2.7: CLA structure 16

Figure 2.8: PPA derivation Block Diagram 17

Figure 2.9: Parallel prefix product with prefix operator (€) 19

Figure 2.10: PPAs network example 21

Figure 2.11: Basic structure of 16 bit radix-2 KSA 22

Figure 2.12: Basic structure of 16 bit radix-2 BKA 24

Figure 2.13: BK Prefix Parallel computation structure 26

Figure 2.14: Schematic view of PG block 28

Figure 2.15: Schematic View of FCO block 29

Figure 2.16: Schematic View of ppC block 31

Page 16: HIGH SPEED ADDER

vii

Figure 2.17: Schematic view of ppS block 32

Figure 2.18: BK-PPA design for 8-bit length 33

Figure 2.19: BK-PPA design for 16-bit length 34

Figure 2.20: BK-PPA design for 32-bit length 35

Figure 2.21: BK-PPA design for 64-bit length 36

Figure 3.1: Project Flow Chart 39

Figure 3.2: The Design Flow of each project stage 40

Figure 4.1: BKA-8 bit simulation functional waveform results 47

Figure 4.2: Sample from BKA-8 bit simulation waveform 48

Figure 4.3: BKA-16 bit simulation functional waveform 49

Figure 4.4: sample from BKA-16 bit simulation waveform 50

Figure 4.5: BKA-32 bit simulation functional waveform results 51

Figure 4.6: sample from BKA-32 bit simulation functional 52

Figure 4.7: BKA-64 bit simulation functional waveform results 53

Figure 4.8: Sample from BKA-64 bit simulation waveform 56

Figure 4.9: Sample from BKA-64 bit simulation waveform 57

Figure 4.10: BKA 8-bit worst-case propagation delay 58

Figure 4.11: BKA 16-bit worst-case propagation delay 58

Figure 4.12: BKA 32-bit worst-case propagation delay 59

Figure 4.13: BKA 64-bit worst-case propagation delay 59

Figure 4.14: BKA bit size versus worst-case propagation delay 62

Figure 4.15: Graph of BKA n-bit stages versus propagation delay 63

Figure 5.1: High Speed Adder design derivation Block Diagram 66

Page 17: HIGH SPEED ADDER

ix

LIST OF ABBREVIATIONS

IC - Integrated Circuits

CPU - Central Processing Unit

ALU - Arithmetic Logic Unit

HSA - High Speed Adder

FA - Full Adder

HA - Half Adder

RCA - Ripple Carry Adder

CLA - Carry Lookahead Adder

PPA - Parallel Prefix Adder

BKA - Brent Kung Adder

KSA - Kogge-Stone Adder

Ci - Carry in

Co - Carry out

S - Sum

PFA - Partial Full Adder

Gi - Generates function

Pi - Propagate function

L - Number of lookahead levels in the design

FPGA - Field-Programmable Gate Array

LUTs - Slice Look-Up Tables

Page 18: HIGH SPEED ADDER

x

€ - Carry Operator

PG - Propagate-Generate function

FCO - Fundamental Carry Operator

ppC - parallel prefix Carry

ppS - parallel prefix Sum

CPLD - Complex Programmable Logic Devices

EDA - Electronic Design Automation

LPM - Library of Parameterized Modules

IP - Intellectual Property

EDIF - Electronic Design Interchange Format

SDC - Synopsys Design Constraint

GUI - Graphical Unit Interface

SRAM - Random Access Memory

tpd - Propagation delay

Page 19: HIGH SPEED ADDER

1

CHAPTER 1

INTRODUCTION

1.0 Background

Computers, mobile phones, gaming devices or consoles, mp3 players,

televisions, digital cameras, digital watches and ATM machine are the few types of

technology that may came across almost every day. This technology operates with

functions of the Central Processing Unit (CPU) or some of it may as simple Integrated

Circuits (IC). Generally, the very basic component of either CPUs or ICs is the adder.

The search for hardware algorithms for addition has been started around year

1950. The addition function is the most basic and commonly used arithmetic operation

in our life. In terms of digital electronic engineering, adder is a device that will perform

the additional operation. Adder is a part of Arithmetic Logic Unit (ALU) in the

computer and some ALUs may consist of multiple adder. Adder performs addition

operation by using interior combination of primitive logic gate inside adder itself.

Page 20: HIGH SPEED ADDER

2

Although adder can be constructed in many other numerical representation but basically

in computation adder is operated on the binary representation.

As shown in Figure 1.1, the datapath of IC design, one of the very basic structure

implemented in IC design in Adder. Adder is widely used in the generic computer [2]

for the reason that it is very important for adding data in the processor. The processing

speeds of one’s computer turn out to be the most considerable requirement acquired by

ones technology users.

Figure 1.1: Datapath Bit-Sliced Organization in IC designs

Page 21: HIGH SPEED ADDER

3

In general, the purpose of adder designed is to strive with the Sum operation of

the Arithmetic Logic Unit (ALU). This operation is then applied to other arithmetic

operation such as: the subtraction, multiplication and the division function. These were

very basis operation in order to constructs programs which later are derived into more

advance and complex programs which alter into all technology which have been seen

nowadays. The performance and the reliability is the main key in order ones technology

to be acknowledge these days. As time passed by, the technology operation needs to

undergo with smoothly and efficiently. Time is Gold, even a delay of 1 second could

cost gargantuan losses, therefore to human always rushing for time, especially for

technology devices user, always demanding for the faster speed of technology.

1.1 Objectives of Project

Following are the objective of this project;

1. To design a group of adder which are belongs to High Speed Adder family

2. To design the High Speed Adder group with Quartus II program.

3. To designs and simulates several bit size of High Speed Adder.

Page 22: HIGH SPEED ADDER

4

1.2 Project Outline

The target of this project is to design a High Speed Adder with Quartus II Web

Edition Version 8 program. The Quartus II program is chosen because it includes all of

the design files, software source files, plus other related files that necessary for the

eventual implementation of a design in a programmable logic device.

Figure 1.2: Evaluating High Speed Adder Block Diagram

Since there are various type adder design categorize as High Speed Adder,

relevant evidence are acquired via comparing and evaluating each adders design in the

following viewpoint; intentional output speed, delay, bit size and area. The involvement

of bit size will concern in term of cost nowadays. The speed of the output and the delay

High Speed Adder

Viewpoint

Speed Delay Bit Size Area

Page 23: HIGH SPEED ADDER

5

point of view isthe verification of performance and the value of the design. While, bit

size are the requirement aspect in performance view whereas the design area is a factor

of reliability revelation.

As well, the circuitry design areas are also anxiety of the all cost design. All

these criteria agonize whether it worthwhile to acknowledge as HSA as well in the price

market nowadays. Afterward all the characteristics of high speed adders are compared

and the ones with greater advantage is agonize as HSA.

1.3 Thesis Outline of Project

This project is divided into 5 chapters in general and is prearranged as follows:

Chapter 1 of this project report are discusses on the introduction of the Adder

operation and the overview of the various types of adder design. In addition, this chapter

stated clearly the type of adder design to be research on. Plus, it also included a

viewpoint of the adder to be designs. Furthermore, the objective of this project will be

included to give a clear view and information needed.

Chapter 2 is the literature review of this project. There various type of High

Speed adder design as High speed adder is design stage by stage, starting with HA or FA

Page 24: HIGH SPEED ADDER

6

design stage until PPA design stage. Each design stage is review in the chapter. The

characteristics of a good performance of the High Speed Adder included.

Chapter 3 discusses the study of one type of High Speed Adder; it includes the

algorithm of the High Speed Adder. In addition, this chapter also contains the

performance comparison of each adder designed. Furthermore a revision method that

used in Chapter 1 and 2 is also included. Plus, the methodology of designing project is

also affirmed.

Chapter 4 contains the simulation results and a discussion which is comparison

and analysis of the delay element are made. Concern the approach and analysis to

achieve the objectives.

Chapter 5 concludes and summarizes the overall process and performance of the

project. In addition, further work which can be implemented or improve the project is

also being discussed for future improvement.