Low Power and Area Delay Efficient Carry Select Adder
Low Power and Area Delay Efficient Carry Select Adder
Low Power and Area Delay Efficient Carry Select Adder
ABSTRACT: Design of area and power-efficient high speed data path logic systems are one of
the most substantial areas of research in VLSI system design. In digital adders, the speed of
addition is limited by the time required to propagate a carry through the adder. The sum for each
bit position in an elementary adder is generated sequentially only after the previous bit position
has been summed and a carry propagated into the next position. The CSLA is used in many
computational systems to alleviate the problem of carry propagation delay by independently
generating multiple carries and then select a carry to generate the sum Carry Select Adder
(CSLA) is one of the fastest adders used in many data-processing processors to perform fast
Page 1
LIST OF CONTENTS
Page No
ABSTRACT
LIST OF FIGURES
ii
LIST OF TABLES
iv
LIST OF SYMBOLS
NOMENCLATURE
CHAPTER 1
INTRODUCTION
vi
1-5
1.1
Hybrid Control
1.3
1.4
CHAPTER 2
LITERATURE REVIEW
6-35
2.1
Distributed generation
2.2
2.3
Advantages of DG
2.4
Disadvantages of DG
2.5
2.5.1
2.6
10
2.7
14
2.7.1
14
2.7.2
15
2.7.3
16
2.8
2.9
18
2.8.1
Generators, IOU, PU
19
2.8.2
19
2.8.3
Distribution grid
19
21
2.9.1
22
H bridge inverter
24
2.9.3
25
2.9.4
27
Page 3
2.10
2.9.5
28
2.9.6
29
29
30
32
33
34
35
CHAPTER 3
3.1
PROPOSEDCONTROLSTRATEGY
36-49
37
3.1.1
Power stage
37
3.1.2
Basic idea
37
3.2
Control scheme
39
3.3
Operation principle of DG
42
3.3.1
Grid-tied mode
42
3.3.2
45
3.3.3
Islanded mode
48
3.3.4
49
CHAPTER 4
50-58
4.1
Steady state
51
4.2
Transient state
54
CHAPTER-5
59-67
68
BIBILOGRAPHY
69
PUBLISHED PAPER
LIST OF FIGURES
Page 4
S.No
Figure Details
Page No
Fig.2.2
10
Fig .2.4 (a) DC DER based PCS; (b) AC DER based PCS
11
Fig .2.5 (a) Top, Area EPSs of a Utility System showing DG interconnection
13
Fig. 2.5 (b)Black diagram of DER, PCS, Area EPS, and the grid interconnection 13
Fig.2.6
20
23
23
Fig.2.9
24
24
26
31
33
33
34
Fig. 3.1 Schematic diagram of the DG based on the proposed control strategy
38
Fig. 3.2 Overall block diagram of the proposed unified control strategy
38
40
Fig. 3.4 Simplified block diagram of the unified control strategy when DG
44
Fig. 3.5 Operation sequence during the transition from the grid-tied mode to
46
48
56
Fig.5.1
60
61
Fig.5.3
62
Fig.5.5
63
65
Fig .5.8
65
66
66
LIST OF TABLES
Page 6
67
S.No
Table1
Table title
Page No
Table2
13
23
Table3
32
Table4
56
Table5
66
CHAPTER 1
INTRODUCTION
INTRODUCTION
VLSI stands for Very large scale integration which refers to those integrated circuits that
contain more than 107transistors. Designing such circuit is difficult and that design needs to
overcome the VLSI design problem like Area, Speed, Power dissipation, Design time and
Testability. In digital adders, the speed of addition is limited by the time required to propagate a
Page 7
CHAPTER 3
BLOCK DIAGRAM
3.1 BLOCK DIAGRAM FOR REGULAR CSLA
Page 9
Page 11
The 4-bit BEC with 2:1 multiplexer, the inputs for the 2:1MUX are one is the output of
the 4-bit BEC and another input is output of 4- bit full adder with input carry equal to zero. The
selection line is carry of previous stage which select one of the input as output, if Cin=1 output is
4-bit BEC output.
Binary BEC
B3 B2 B1 B0 X3 X2 X1 X0
0 0 0 0 0 0 0 1
0 0 0 1 0 0 1 0
0 0 1 0 0 0 1 1
0 0 1 1 0 1 0 0
0 1 0 0 0 1 0 1
0 1 0 1 0 1 1 0
0 1 1 0 0 1 1 1
0 1 1 1 1 0 0 0
1 0 0 0 1 0 0 1
1 0 0 1 1 0 1 0
1 0 1 0 1 0 1 1
1 0 1 1 1 1 0 0
1 1 0 0 1 1 0 1
1 1 0 1 1 1 1 0
1 1 1 0 1 1 1 1
1 1 1 1 0 0 0 0
Table: 7.1Functional table of the 4-bit BEC
Page 13
MULTIPLEXER
In electronics, a multiplexer (or MUX) is a device that selects one of several analog or
digital input signals and forwards the selected input into a single line. multiplexer of 2n inputs
has n select lines, which are used to select which input line to send to the output. Multiplexers
are mainly used to increase the amount of data that can be sent over the network within a certain
amount of time and bandwidth. A multiplexer is also called a data selector. An electronic
multiplexer makes it possible for several signals to share one device or resource, for example one
A/D converter or one communication line, instead of having one device per input signal.
In digital circuit design, the selector wires are of digital value. In the case of a 2-to-1
multiplexer, a logic value of 0 would connect to the output while a logic value of 1 would
connect to the output. In larger multiplexers, the number of selector pins is equal to where is the
number of inputs. A 2-to-1 multiplexer has a Boolean equation where and are the two inputs, is
the selector input, and is the output:
Addition is the most common and often used arithmetic operation on microprocessor, digital
signal processor, especially digital computers. Also, it serves as a building block for synthesis all
other arithmetic operations. Therefore, regarding the efficient implementation of an arithmetic
unit, the binary adder structures become a very critical hardware unit. In any book on computer
arithmetic, someone looks that there exists a large number of different circuit architectures with
different performance characteristics and widely used in the practice. Although many researches
dealing with the binary adder structures have been done, the studies based on their comparative
performance analysis are only a few.
In this project, qualitative evaluations of the classified binary adder architectures are given.
Among the huge member of the adders we wrote VHDL (Hardware Description Language) code
for Ripple-carry, Carry-select and Carry-look ahead to emphasize the common performance
properties belong to their classes. In the following section, we give a brief description of the
studied adder architectures. With respect to asymptotic delay time and area complexity, the
binary adder architectures can be categorized into four primary classes as given in Table 1.1. The
given results in the table are the highest exponent term of the exact formulas, very complex for
the high bit lengths of the operands.
The first class consists of the very slow ripple-carry adder with the smallest area. In the second
class, the carry-skip, carry-select adders with multiple levels have small area requirements and
shortened computation times. From the third class, the carry-look ahead adder and from the
Page 14
Cell-based design techniques, such as standard-cells and FPGAs, together with versatile
hardware synthesis are rudiments for a high productivity in ASIC design. In the majority of
digital signal processing (DSP) applications the critical operations are the addition,
multiplication and accumulation. Addition is an indispensable operation for any digital system,
DSP or control system. Therefore a fast and accurate operation of a digital system is greatly
influenced by the performance of the resident adders. Adders are also very significant component
in digital systems because of their widespread use in other basic digital operations such as
subtraction, multiplication and division. Hence, improving performance of the digital adder
would extensively advance the execution of binary operations inside a circuit compromised of
such blocks. Many different adder architectures for speeding up binary addition have been
studied and proposed over the last decades. For cell-based design techniques they can be well
characterized with respect to circuit area and speed as well as suitability for logic optimization
and synthesis. Ripple Carry Adder (RCA)[1][2] is the simplest, but slowest adders with O(n) area
and O(n) delay, where n is the operand size in bits. Carry Look-Ahead (CLA)[3][4] have
O(nlog(n)) area and O(log(n)) delay, but typically suffer from irregular layout. On the other
hand, carry Addition, one of the most frequently used arithmetic operations, is employed to build
advanced operations such as multiplication and division. Theoretical research has found that the
lower bound on the critical path delay of the adder has complexity O(log n), where n is the adder
width. The design of high performance adders has been extensively studied [10] [15], and several
adders have achieved logarithmic delays. Whereas theoretical bounds indicate that no traditional
adder can achieve sub-logarithmic delay, it has been shown that speculative adders can achieve
sub-logarithmic delays by neglecting rare input patterns that exercise the critical paths [2, 11,
Page 15
Page 17
Page 18
(1.1)
The well known adder architecture, ripple carry adder is composed of cascaded full adders for nbit adder, as shown in figure.1.It is constructed by cascading full adder blocks in series. The
carry out of one stage is fed directly to the carry-in of the next stage. For an n-bit parallel adder it
requires n full adders.
Page 19
Not very efficient when large number bit numbers are used.
FIGURE 2.2 A Carry Select Adder with 1 level using n/2- bit RCA
Have a lesser delay than Ripple Carry Adders (half delay of RCA).
Hence we always go for Carry Select Adder while working with smaller no of bits.
Page 20
As we increase the no of bits in the Carry Look Ahead adders, the complexity increases
because the no. of gates in the expression Ci+1 increases. So practically its not desirable
to use the traditional CLA shown above because it increase the Space required and the
power too.
Instead we will use here Carry Look Ahead adder (less bits) in levels to create a larger
CLA. Commonly smaller CLA may be taken as a 4-bit CLA. So we can define carry
look ahead over a group of 4 bits. Hence now we redefine terms carry generate as
[Group Generated Carry] g[ i,i+3 ] and carry propagate as [Group Propagated Carry]
p[ i,i+3 ] which are defined below.
Page 22
Large bit sized multipliers requires multiple BEC and each of them requires the selection input
from the carry output of the preceding BEC.
Page 24
Figure. 2.4 The 5-bit Binary to Execss-1 Code Converter: (a) BEC (without carry), (b) BECWC
(with carry).
CHAPTER-3
Page 25
consumption are key factors in increasing portability and battery life. Even in servers and
desktop computers power dissipation is an important design constraint. Design of area- and
power-efficient high-speed data path logic systems are one of the most substantial areas of
research in VLSI system design. In digital adders, the speed of addition is limited by the time
required to propagate a carry through the adder.
3.1 BLOCK DIAGRAM FOR REGULAR CSLA
Page 30
In mobile electronics,
increasing portability and battery life. Even in servers and desktop computers power dissipation
is an important design constraint. Design of area- and power-efficient high-speed data path logic
systems are one of the most substantial areas of research in VLSI system design. In digital
adders, the speed of addition is limited by the time required to propagate a carrythrough the
adder. The sum for each bit position in an elementary adder is generated sequentially only after
the previous bit position has been summed and a carry propagated into the next position. Among
various adders, the CSA is intermediate regarding speed and area.
WHY WE REPLACED REGULAR CSLA WITH MODIFIED CSLA?
Regular CSLA has 2 ripple carry adders (rca) in each module for performing addition
depending on carry.
Page 32
CHAPTER-4
PROPOSED CONCEPT
4.1 INTRODUCTION
Low-Power, area-efficient, and high-performance VLSI systems are increasingly used in portable
and mobile devices, multi standard wireless receivers, and biomedical instrumentation [1], [2].
An adder is the main component of an arithmetic unit. A complex digital signal processing (DSP)
system involves several adders. An efficient adder design essentially improves the performance
of a complex DSP system. A ripple carry adder (RCA) uses a simple design, but carry
propagation delay (CPD) is the main concern in this adder. Carry look-ahead and carry select
(CS) methods have been suggested to reduce the CPD of adders. A conventional carry select
adder (CSLA) is an RCARCA configuration that generates a pair of sum words and output
carry bits corresponding the anticipated input-carry (cin = 0 and 1) and selects one out of each
pair for final-sum and final-output-carry [3]. A conventional CSLA has less CPD than an RCA,
but the design is not attractive since it uses a dual RCA. Few attempts have been made to avoid
dual use of RCA in CSLA design. Kim and Kim [4] used one RCA and one add-one circuit
instead of two RCAs, where the add-one circuit is implemented using a multiplexer (MUX). He
et al. [5] proposed a square-root (SQRT)-CSLA to implement large bit-width adders with less
delay. In a SQRT CSLA, CSLAs with increasing size are connected in a cascading structure. The
main objective of SQRT-CSLA design is to provide a parallel path for carry propagation that
Page 33
Page 34
Fig. 4.1. (a) Conventional CSLA; n is the input operand bit-width. (b) The logic operations of the
RCA is shown in split form, where HSG, HCG, FSG, and FCG represent half-sum generation,
half-carry generation, full-sum generation, and full-carry generation, respectively.
4.2.1 Logic Expressions of the SCG Unit of the
Conventional CSLA As shown in Fig. 4.1(a), the SCG unit of the conventional CSLA [3] is
composed of two n-bit RCAs, where n is the adder bit-width. The logic operation of the n-bit
RCA is performed in four stages: 1) half-sum generation (HSG); 2) half-carry generation (HCG);
3) full-sum generation (FSG); and 4) full carry generation (FCG). Suppose two n-bit operands
are added in the conventional CSLA, then RCA-1 and RCA-2 generate n-bit sum (s0 and s1) and
output-carry (c0 out and c1 out) corresponding to input-carry (cin = 0 and cin = 1), respectively.
Logic expressions of RCA-1 and RCA-2 of the SCG unit of the n-bit CSLA are given as
(4.1)
4.2.2 Logic Expression of the SCG Unit of the BEC-Based CSLA
Page 35
(4.2)
We can find from 4.2 that, in the case of the BEC-based CSLA, depends on, which otherwise
has no dependence on in the case of the conventional CSLA.
The BEC method therefore increases data dependence in the CSLA. We have considered logic
expressions of the conventional CSLA and made a further study on the data dependence to find
an optimized logic expression for the CSLA. It is interesting to note from 4.2 that logic
expressions of and are identical except the terms and since (= = s0). In addition, we find that
and depend on {s0, c0, cin}, where c0 = =. Since and have no dependence on and, the logic
operation of and can be scheduled before and, and the select unit can select one from the set (s0
1, s1 1) for the final-sum of the CSLA. We find that a significant amount of logic resource is
spent for calculating {,}, and it is not an efficient approach to reject one sum-word after the
calculation. Instead, one can select the required carry word from the anticipated carry words {c 0
and c1} to calculate the final-sum. The selected carry word is added with the half-sum (s 0) to
generate the final-sum (s). Using this method, one can have three design advantages:
Page 36
(4.3)
4.3 PROPOSED ADDER DESIGN
Fig. 4.3. (a) Proposed CS adder design, where n is the input operand bit-width, and [] represents
delay (in the unit of inverter delay), n = max (t, 3.5n + 2.7). (b) Gate-level design of the HSG. (c)
Page 37
Page 38
of 2 AND, 1 OR, and 2 NOT gates. The area and delay of the 2-input AND, 2-input OR, and
NOT gates (shown in Table I) are taken from the Synopsys Armenia Educational Department
(SAED) 90-nm standard cell library datasheet for theoretical estimation. The area and delay of a
design are calculated using the following relations:
(4.4)
where (Na, No, Ni) and (na, no, ni), respectively, represent the (AND, OR, NOT) gate counts of
the total design and its critical path. (a, r, i) and (Ta, To, Ti), respectively, represent the area and
delay of one (AND, OR, NOT) gate. We have calculated the (AOI) gate counts of each design
for area and delay estimation. Using (5a) and (5b), the area and delay of each design are
calculated from the AOI gate counts (Na, No, Ni), (na, no, ni), and the cell details of Table I.
where (Na, No, Ni) and (na, no, ni), respectively, represent the (AND, OR, NOT) gate counts of
the total design and its critical path. (a, r, i) and (Ta, To, Ti), respectively, represent the area and
delay of one (AND, OR, NOT) gate. We have calculated the (AOI) gate counts of each design for
area and delay estimation. Using (5a) and (5b), the area and delay of each design are calculated
from the AOI gate counts (Na, No, Ni), (na, no, ni), and the cell details of Table I. path of the
proposed CSLA, the delay of each intermediate and output signals of the proposed n-bit CSLA
design of Fig. 3 is shown in the square bracket against each signal. We can find from Table II that
the proposed n-bit single-stage CSLA adder involves 6n less number of AOI gates than the
CSLA of [6] and takes 2.7 and 6.6 units less delay to calculate final-sum and output-carry.
Compared with the CBL-based CSLA of [7], the proposed CSLA design involves n more AOI
gates, and it takes (n 4.7) unit less delay to calculate the output-carry.
Using the expressions of Table II and AOI gate details of Table I, we have estimated the area and
delay complexities of the proposed CSLA and the existing CSLA of [6][8], including the
Page 39
Fig. 4.4. Proposed SQRT-CSLA for n = 16. All intermediate and output signals are labeled with
delay
The multipath carry propagation feature of the CSLA is fully exploited in the SQRT-CSLA [5],
which is composed of a chain of CSLAs. CSLAs of increasing size are used in the SQRT-CSLA
to extract the maximum concurrence in the carry propagation path. Using the SQRT-CSLA
design, large-size adders are implemented with significantly less delay than a single-stage CSLA
Page 40
CHAPTER-5
SOFTWARE TOOLS
5.1 Introduction to FPGAs:
Field programmable gate arrays ( FPGA ) are a class of general purpose devices that can
be configured for a wide variety of applications. Field programmable gate arrays were first
Page 41
Page 43
Page 45
Page 46
Page 47
Page 48
Language for the Behavioral Model is the ISPS (Instruction Set Process
Specification) by G.Bell in 1971 from Carnegie Mellon University. It is the easy
and close to way the designer first thinks about the hardware behavior.
Language for the Structural Model or net list Model is the Verilog.
We use the test data for checking errors in the hardware i.e. using stimuli hardware
simulation is done..Generally, simulators are classified into oblivious and event
driven simulators.
Event driven simulator can simulate the components that are evaluated.
Silicon compilers arc used to generate layout from netlists. Testing of hard
includes fault simulation, fault collapsing, test generation, test application,
test compaction, fault dictionaries.
subsystems can be described at any level of abstraction ranging from the architecture
level to the gate level. Precise simulation semantics are associated with all the language
constructs, and therefore, models written in this language can be
verified using a
VHDL simulator.
The VHDL language can he regarded as an integrated amalgamation of the
following languages:
Sequential languages+
Concurrent language+
Net-list language+
Timing specifications+
Waveform generation language =>VHDL
Therefore the language has constructs that enable you to express the concurrent
or sequential behavior of a digital system with or without timing. It also allows you to
model the system as an interconnection of components. Test waveforms can also be
generated using the same constructs. The entire above constructs ma he combined to
pro a comprehensive description of the system in a single model. The language not
only defines the syntax hut also defines very clear simulation semantics for each
language construct.
VHDL is aiming at high level abstractions, portability, and design automation not
only is VHDL a description language but also a design methodology and environment.
Designers are building next- generation design technologies on VHDL. The emerging
field of electronic design automation will result in tools that allow developers to create
designs graphically at a high level of abstraction. Since
VHDL allows designing a circuit and later fabricated with the most advanced
technology VHDL is intended to provide a tool that can be used by the digital systems
Page 53
REQUIREMENTS
The following areVHDL requirements
General Features: It should he usable for design documentation, high-level design, simulation,
synthesis and testing of hardware and as a driver for physical design tools. The description
from system to gate level concurrency.
The language should provide access to various libraries user and system defined primitive and
descriptors reside in library system.
The language should provide software like sequential control Sequential & Procedural
capability is only for convenience and overall structure of VHDL remaining highly concurrent.
Languages should allow designer to configure the generic description include size, physical
Page 54
VHDL should allow integer, floating point, enumerate type as well as user defined types.
The languages should be strongly typed language and strong type checking.
Ability to specify timing at all levels is another requirement for VHDL language.
The language supports hierarchy that is, a digital s can he modeled as a set of interconnected
components: each component, in turn, can be modeled as a set of interconnected
subcomponents.
The language is publicly available human-readable, machine-readable, and above all, it is not
proprietary.
The language supports three basic different description styles: structural. Data flow and
Page 55
Test benches can he written using the same language to test other VHDL models.
The use of generics and attributes in the models facilitate back-annotation of static
information such as timing or placement information.
A model can not only describe the functionality of a design but can also contain information
about the design itself in terms of user-defined attributes, such as total area and speed.
Models written in this language can be verified by simulation since precise simulation
semantics are defined for each language construct.
BASIC TERMINOLOGY
VHDL is hardware description languages that can be used to model a digital
system. The digital system can be as simple as a logic gate or as complex as a complete
electronic system A hardware abstraction of this digital system is called an entity.
To describe an entity VHDL provides five different types of primary
constructs, called design units. They are:
1. Entity declaration
2.
Architecture body
3.
Configuration declaration
4.
Package declaration
5.
Package body
Page 56
Library Clause
The library clause makes visible the logical names of design libraries that can be referenced
within a design unit. The format of a library clause is library list-of-logical-library-names;
The following example of a library clause
library TTL, CMOS;
Page 57
Page 59
OPERATORS
The predefined operators in the language are classified into the following six categories:
1) Logical operators
1
2) Relational operators
3) Shift operators
4) Adding operators
5) Multiplying operators
6) Miscellaneous operators
1) Logical operators
The seven logical operators are: And
or
no
nand
or
xor
xnor not
These are defined for the predefined types BIT and BOOLEAN. During evaluation of
logical operators, bit value O and 1 are treated as FALSE and TRUE values of BOOLEAN
type, respectively.
2) Relational operators these are:
=
<
<=
>
>=
Page 67
/=
&
The operation for the - and operators must he of same type, with the result being of same
numeric type. The operands for the & operators can be either a one dimensional array type or an
element type.
5) Multiplying operators
These are:
*
.
/
mod
rem
The operation for the mod and rem operators on operands of integer type . with the result
being of same numeric type.
6) Miscellaneous operators
Page 68
BEHAVIORAL MODELING
In this modeling style, the behavior of the entity is expressed using sequentially executed,
procedural type code, that is very similar in syntax and. semantics to that of a high-level
programming language like C or Pascal. A process statement is the primary mechanism used to
model the procedural type behavior of an entity. This chapter describes the process statement and
the various kinds of sequential statements that can be used within a process statement to model
such behavior.
Irrespective of the modeling style used, every entity is represented using an entity
declaration and at least one architecture body. The first two sections describe these in detail.
Entity Declaration
An entity declaration describes the external interface of the entity, that is, it gives the black-box
view. It specifies the name of the entity, the names of interface ports, their mode (i.e., direction),
and the type of ports. The syntax for an entity declaration is
entity entity-name is
[ generic ( list-of-generics-and-their-types ) ; ]
[ port ( list-of-interface-port-names-and-their-types) ; ]
[ entity-item-declarations ]
[ begin
Page 69
component component-name
port ( list-of-interface-ports ) ;
end component;
The component-name may or may not refer to the name of an already ex-isfing entity in a
library. If it does not, it must be explicitly bound to an entity; otherwise, the model cannot be
simulated. This is done using a configuration. Configurations are discussed in the next chapter.
The list-of-interface-ports specifies the name, mode, and type for each port of the
component in a manner similar to that specified in an entity declaration. "The names of the ports
may also be different from the names of the ports in the entity to which it may be bound
(different port names can be mapped in a configuration). In this chapter, we will assume that an
entity of the same name as that of the component already exists and that the name, mode, and
type of each port matches the corresponding ones in the component. Some examples of
component declarations are
component NAND2
port (A, B: in MVL; Z: out MVL);
end component;
component MP
port (CK, RESET, RON, WRN: in BIT;
DATA_BUS: inout INTEGER range 0 to 255;
ADDR_BUS: in BIT_VECTOR(15 downto 0));
end component;
component RX
Page 79
Component Instantiation
A component instantiation statement defines a subcomponent of the entity in which it
appears. It associates the signals in the entity with the ports of that subcomponent. A format of a
component instantiation statement is
Component-label: component-name port map ( association-list) ',
The component-label can be any legal identifier and can be considered as the name of the
instance. The component-name must be the name of a component declared earlier using a
component declaration. The association-list associates signals in the entity, called actuals, with
the ports of a component, called locals. An actual must be an object of class signal. Expressions
or objects of class variable or constant are not allowed. An actual may also be the keyword open
to indicate a port that is not connected.
There are two ways to perform the association of locals with actuals:
1. Positional association,
2. named association.
In positional association, an association-list is of the form
actuali, actualg, actual3, . . ., actual
Each actual in the component instantiation is mapped by position with each port in the
component declaration. That is, the first port in the component declaration corresponds to the
first actual in the component instantiation, the second with the second, and so on. Consider an
instance of a NAND2 component.
-- Component declaration:
component NAND2
port (A, B: in BIT; Z: out BIT);
Page 81
analyzer and a simulator that are part of a VHDL system. The first step in the validation
process is analysis, the analyzer takes a file that contains one or more design units and
compiles them into an intermediate form. The format of this compiled intermediate
representation is not defined by the language. During compilation the analyzer validates
the syntax and performs static semantic checks. Thegenerated intermediate form is stored
in a specific design library that has been designated as the working library. A design
library is a location in the host environment, where compiled descriptions are stored.
SIMULATION:
Once the model description is successfully compiled into one or more design
libraries, the next step in the validation process is simulation. For a hierarchical entity to
be simulated, all of its lowest-level components must be described at the behavioral level.
A simulation can be performed on either one of the following:
An entity declaration and an architecture body pair. j
Page 83
linked, components are bound to entities in a library, and the top-level entity is built as a
network of behavioral models that is ready to be simulated.
2. INITIALIZATION PHASE: Driving and effective values for all explicitly declared
signals are computed, implicitly signals are assigned values, processes are executed once
until they suspended and simulation time is set to 0 ns.
Simulation commences by advancing time to that of the next event. Values that are
scheduled to be assigned to signals at this time are assigned.
DESIGN AUTOMATION:
The design phase is complete when idea is transformed to architecture or a data
path description. The remaining is a routine work and involves tasks that a machine can
do much faster than a talented engineer. Activities such as transforming one form to
another form of design & certification of each design stage and generating test data are
ref to as design automation. Modeling is an art and designer uses modeling tools for
representing an idea. Modeling tools include paper & pencil, schematic capture
programs, bread boarding felicities and hardware description Languages.
GENERAL PROCEDURE TO USE PROJECT NAVIGATOR
Go to New Project
Click on Next
Next
Next
Page 84
Type the VHDL code in the space and save and save
Observe that the xxxx .VHD file is added to the current project work space along
with the entity name
Check for errors in error window :. If any errors correct them again check syntax up to
get check syntax ok (-/)
Then you can get signal window, wave default window and structure window
Apply appropriate signals in signals window and observe signals on wave default
window after clicking Run icon (Jfj)
Page 85
CHAPTER-6
RESULTS
FIG 7.1 Comparison of areas
Page 86
Page 87
Page 88
Page 89
CHAPTER-7
CONCLUSION
CONCLUSION
Thus in order to reduce the area and power of SQRT CSLA architecture that we have
implemented in this Project, a simple approach has been used. In this work, the numbers of gates
Page 90
REFERENCES
[1] K. K. Parhi, VLSI Digital Signal Processing. New York, NY, USA: Wiley, 1998.
[2] A. P. Chandrakasan, N. Verma, and D. C. Daly, Ultralow-power electron ics for biomedical
applications, Annu. Rev. Biomed. Eng., vol. 10, pp. 247 274, Aug. 2008.
[3] O. J. Bedrij, Carry-select adder, IRE Trans. Electron. Comput., vol. EC-11, no. 3, pp. 340
344, Jun. 1962.
[4] Y. Kim and L.-S. Kim, 64-bit carry-select adder with reduced area, Electron. Lett., vol. 37,
no. 10, pp. 614615, May 2001.
[5] Y. He, C. H. Chang, and J. Gu, An area-efficient 64-bit square root carry select adder for low
power application, in Proc. IEEE Int. Symp. Circuits Syst., 2005, vol. 4, pp. 40824085.
[6] B. Ramkumar and H. M. Kittur, Low-power and area-efficient carry-select adder, IEEE
Trans. Very Large Scale Integr. (VLSI) Syst., vol. 20, no. 2,
Page 91
Page 92