60
Digital Design Digital Design and Synthesis and Synthesis COEN 6501 COEN 6501

Digital Design and Synthesis COEN 6501

Embed Size (px)

DESCRIPTION

Digital Design and Synthesis COEN 6501. Lecture_1 In this lecture we will review: The Digital Design process Introduce and review Adders The Carry Ripple Through Adder The Carry Look Ahead Adder. System Design Description. Systems are described in terms of three domains: - PowerPoint PPT Presentation

Citation preview

Page 1: Digital Design and Synthesis COEN 6501

Digital Design and Digital Design and SynthesisSynthesis COEN 6501COEN 6501

Page 2: Digital Design and Synthesis COEN 6501

Lecture_1

In this lecture we will review:

The Digital Design process

Introduce and review Adders

a) The Carry Ripple Through Adder

b) The Carry Look Ahead Adder

Page 3: Digital Design and Synthesis COEN 6501

System Design Description

Systems are described in terms of three domains:

Behavioural domainStructural domainPhysical domain

Page 4: Digital Design and Synthesis COEN 6501

StructuralStructuralBehaviouralBehavioural

PhysicalPhysical

Logic SynthesisLogic Synthesis

PhysicalPhysicalSynthesisSynthesis

Page 5: Digital Design and Synthesis COEN 6501

StructuralStructuralBehaviouralBehavioural

PhysicalPhysical

SystemSystem

AlgorithmicAlgorithmic

Micro architectureMicro architecture

Logic Logic

CircuitCircuit

RectanglesRectangles

CellsCells

Macro-cellsMacro-cells

ModulesModules

Chips, boards… Chips, boards…

ProcessorProcessor

Hardware modulesHardware modules

ALU, registersALU, registersGates, F/FsGates, F/Fs

TransistorsTransistors

SystemsSystemsAlgorithmsAlgorithmsRegister transferRegister transfer

LogicLogicTransfer functionTransfer function

Logic synthesisLogic synthesis

PhysicalPhysicalsynthesissynthesis

Page 6: Digital Design and Synthesis COEN 6501

Level Transformation Expected Power Saving

Algorithmic Algorithm selection Orders of magnitude

Behavioural Concurrency Several times

Register Transfer Level Structural transformations ~10 - 15%

  Clock control ~10 - 90%

Data/signal encoding   ~20%

Technology independent Extraction/decomposition ~15%

Technology dependant Technology mapping ~20%

  Gate sizing ~20%

Layout Placement 20%

 

Optimization Levels

Page 7: Digital Design and Synthesis COEN 6501

Design Process:Design Process:

It starts with behavioural It starts with behavioural

description, decomposingdescription, decomposing

the high level of constructs the high level of constructs

into more precise functionalinto more precise functional

units, then mapping these units, then mapping these

units into physical elements. units into physical elements.

System SpecificationSystem Specification

Architectural DesignArchitectural Design(behavioural)(behavioural)

AnalysisAnalysis

Design ImplementationDesign Implementation(structural)(structural)

AnalysisAnalysis

Design ImplementationDesign Implementation(Physical)(Physical)

AnalysisAnalysis

Page 8: Digital Design and Synthesis COEN 6501

Design Strategies

Hierarchy A repeated process of dividing large modules

into smaller sub-modules until the complexity of sub-modules are at an appropriately comprehensible level of detail.

Parallel hierarchy is implemented in all domains.

Page 9: Digital Design and Synthesis COEN 6501

Regularity Divide the hierarchy in to similar building blocks

whenever possible. Some programmability could be added to achieve

regularity.

Modularity Well defined behavioural, structural and physical

interface. Helps: divide tasks into well defined modules, design

integration, aids in team design.

Locality Internals of the modules are unimportant to any exterior

interface.

A Structured Design

Page 10: Digital Design and Synthesis COEN 6501

System Design MethodologySystem Design Methodology

Market AnalysisMarket Analysis

System SpecificationsSystem Specifications

System ArchitectureSystem Architecture

System PartitioningSystem Partitioning

Market windowsMarket windowsSystem features & requirementsSystem features & requirementsStandardsStandards

FunctionalFunctionalElectricalElectricalMechanicalMechanicalEnvironmentalEnvironmental

StrategiesStrategiesModellingModellingVerificationVerification

Dictated by complexity, I/O pins, off-the-Dictated by complexity, I/O pins, off-the- shelf components, special requirementsshelf components, special requirementsPartitioning guidelinesPartitioning guidelinesPartitioning approaches: vertical, Partitioning approaches: vertical, horizontal, functional, performancehorizontal, functional, performance

Page 11: Digital Design and Synthesis COEN 6501

TestabilityTestability

Technology SelectionTechnology Selection

Detailed DesignDetailed Design

ImplementationImplementation

Strategies, chip testing, board Strategies, chip testing, board testingtestingTestability featuresTestability featuresPenaltiesPenalties

Dictated by: speed, power Dictated by: speed, power dissipation, driving capability,dissipation, driving capability, cost, lead timecost, lead time

Logic design/synthesisLogic design/synthesisOptimizationOptimizationVerificationVerification

Off-the-shelf ICsOff-the-shelf ICsApplication Specific ICsApplication Specific ICs

Page 12: Digital Design and Synthesis COEN 6501

AssemblyAssembly

TestingTesting

DocumentationDocumentation

ProductionProduction

Decide on packaging technical componentsDecide on packaging technical componentsDesign/manufactureDesign/manufactureComponentsComponentsElectrical/mechanical assemblyElectrical/mechanical assemblyMechanical assembly & components salesMechanical assembly & components sales

FunctionalFunctionalDC testDC testAC testAC testBurn-inBurn-in

Technical documentsTechnical documentsH/W & S/W & mechanicalH/W & S/W & mechanicalUser manualUser manualTest documentTest document

Page 13: Digital Design and Synthesis COEN 6501

IC Design Methodology

Requirement specification most important function which impacts the

ultimate success of an IC relates to how firm and clear the device specifications are.

Device specification may be updated throughout the design cycle.

Main items in the specifications are:· functional intent: brief description of the device, the

technology and the task it performs.· Packaging specification

� device port number� package type, dimension, material

Page 14: Digital Design and Synthesis COEN 6501

Functional description

• high-level block diagram: all major blocks including intra block connections and connections to pin-outs indicating direction and signal flow.

• Intra block signal function: description of how blocks interact with each other supported with timing diagram where necessary.

• Internal block description of internal operation of each block. Where necessary, the following to be included: timing diagram, state diagram, truth table.

Functional Description

Page 15: Digital Design and Synthesis COEN 6501

I/O specifications• pin-out diagram• I/O functional description• loading• ESD requirements• latch-up protection

D.C. specifications• absolute maximum ratings for: supply voltage, pin

voltages• main parameters: VIL and VIH for each input, VOL

and VOH for each output, input loading, output drive, leakage current for tri-state operation, quiescent current, power-down current (if applicable)

Specifications

Page 16: Digital Design and Synthesis COEN 6501

AC specifications• inputs: set-up and hold times, rise and fall times• outputs: propagation delays, rise and fall times,

relative timing• critical thinking

Environmental requirements• operating temperature, storage temperature,

humidity condition (if applicable)

Testing

Specification, continued

Page 17: Digital Design and Synthesis COEN 6501

Device Specification

Functional intent: briefly describe the device, the technology, and the circuits it will replace as well as the task it will perform.

Design conceptpin-out diagram: describe the device using a block

diagram of the external view of the chip - basically, a box with all the I/O pins labelled and numbered

I/O description: use a chart to define the I/O signals shown in the pin-out diagram

Page 18: Digital Design and Synthesis COEN 6501

Example:

Pin # Pin Name I/O Type Function

P1 VDD PowerSupply

PowerSupply, +5Vdc withrespect toVSS

P2 TXCLK Input TransmitClock, 5.12MHz rate

P3 TXP1 Output Transmitoutput –channel 1,+ve polarity

Page 19: Digital Design and Synthesis COEN 6501

· internal block diagram: draw blocks for major functions, show all connections including: connection to all pin-outs, connections between blocks, and direction of signal flow

· Inter-block signal function: describe how the blocks interact with each other and support this with timing diagrams where necessary

· internal block description: describe the internal operation of each block. When necessary, include: timing diagrams, state diagrams, and truth table

Logic description: circuit schematic or logic diagram using standard cell library components

Package description: device port number, package type, dimensions, materials

Functional Specification

Page 20: Digital Design and Synthesis COEN 6501

Operating characteristics Absolute maximum stress ratings.

Example:

Parameter Symbol Min. Max. Unit

Storage T Ts -65 +150 OCOperating T TA -40 +85 OC

Supply V VDD -0.5 7 V

Input V VI -0.3 VDD + 3 V

Supply I IDD 5 mA

Page 21: Digital Design and Synthesis COEN 6501

Operating power and environmental requirement:

· power supply voltage · operating supply current (specify conditions, e.g.,

power up, power down, frequency, output conditions)· storage temperature· operating temperature· humidity conditions (if applicable)

Requirements

Page 22: Digital Design and Synthesis COEN 6501

Input characteristics. Example chart:(V reference is VSS = 0, temperature range is 0oC to 70oC)

Pins Symbol Para-meter

Min nom Max Units Comments

TXDAT2TXDAT2

VIL Inputlow V

-0.3 0.4 0.8 VTXCKTXFRM

VIH Inputhigh V

2.0 2.4 VCC +0.3

VENB1ENB2ICKLFPMCSBL

CI Input Cto VSS

10 pF Imputsprotectedagainststaticdamage

IIL Inputlow I

+/- 10 A Vin =0V

IIH Inputhigh I

+/- 10 A Vin =5.25V

RX1N1RX1N2

VIP Inputpeak V

VDD +0.3

V ACcoupledinput

Page 23: Digital Design and Synthesis COEN 6501

Output Interface CharacteristicsExample chart: (VSS = 0, T range 0oC to 70oC

Pinnames

Parameter

Symbol min max units Testcondns

LABUS<0..15>,

High levelVout

VOH VDD – 0.1 volt IO<=1microA

RABUS<0..15>

Low levelVout

VOL 0.1 volt IO<=1microA

High levelIout

IOH 0.251.6

mAmA

VO = 4.6V

VO = 2.5V

Low levelIout

IOL 1.63.4

mAmA

VO = 0.4V

VO = 2.5V

High leveltristate Ioutleakage

IOIH 10 microA VO = VDD

Low leveltristate Ioutleakge

IOIL 10 microA VO = 0V

Cout CO 10 pF

Page 24: Digital Design and Synthesis COEN 6501

AC descriptionTiming diagram: include well-labelled signal drawings of all significant input and output relationships, rise and fall times, data set-up and hold times. Indicate the voltage range over which timing must be guaranteed

Definitions:Definitions:

CoutCout

inputinput

outputoutput

VIHVIH

VILVIL

Set-upSet-up holdhold

holdhold

VIHVIH

VILVIL

Page 25: Digital Design and Synthesis COEN 6501

Example: timing diagram and chart

RXCKRXCK

RXFRMRXFRM

RXINRXIN

t19t19 t20t20

t22t22

t21t21

t17t17t18t18

t16t16

Page 26: Digital Design and Synthesis COEN 6501

pins symbol Parameter

min nom max units

RXCK t19 Clockhigh 68 110 ns

t20 Clocklow 68 110 ns

t16 Period 195.3125 ns

t16 Period 194 197 ns

t22 RXIN toRXCKdelay

90 ns

RXFRM t17 Framedelay ns

t18 Framehold ns

T18

Specs (continued)

Page 27: Digital Design and Synthesis COEN 6501

Critical Path

1. Signal paths with ‘tight’ timings (if applicable)

2. potential ‘race’ conditions (if applicable)3. any set of paths with the same source and

destination such as a clock signal and its complement (if applicable)

Page 28: Digital Design and Synthesis COEN 6501

Test Description

1. Test strategy: written description of functions to be tested. This section is a guide for determining and explaining simulation patterns

2. simulation input/output patterns: timing diagrams which include stimulus to be applied to input pins and the expected response on the output pins

Page 29: Digital Design and Synthesis COEN 6501

Example :

Multiplicand = 100010012 = 8916

Multiplier = 101010112 = AB16

Expected Result = 1011011100000112 =5B8316

Page 30: Digital Design and Synthesis COEN 6501

System Level Design

Top down approach Using behavioural constructs, top level

architecture is defined Design validation is technology independent Use HDL to model the design (e.g., VHDL

and Verilog) RTL is efficient for describing data flow

Page 31: Digital Design and Synthesis COEN 6501

Timing verification is difficult unless structure logic is defined

VHDL representation can be changed into structural logic through - manual design, design synthesis: automated process which involves the conversion of VHDL/RTL into a set of registers and combinational circuits

System Level design (Continued)

Page 32: Digital Design and Synthesis COEN 6501

Synthesis report

Page 33: Digital Design and Synthesis COEN 6501

Area report after Synthesis

Page 34: Digital Design and Synthesis COEN 6501

Power report after Synthesis

Page 35: Digital Design and Synthesis COEN 6501

Timing Report After Synthesis

Page 36: Digital Design and Synthesis COEN 6501

Logic Design

Evaluation of library constructs (basic & macro) function, timing, area

Logic minimization NAND/NOR transformation Buffering Fan-out reduction Fan-in reduction

Page 37: Digital Design and Synthesis COEN 6501

Critical timing Priority routing I/O compatibility Logic optimization Cost function: area, speed, power, or a

combination

Logic Level design (Continued)

Page 38: Digital Design and Synthesis COEN 6501

Logic Simulation

Simulation is the process of exercising a theoretical model of the design as a function of time for some applied input sequence

Logic simulation is to aid in verification of a digital system

Page 39: Digital Design and Synthesis COEN 6501

Components

models: functional, timing connectivity: a description of how the basic

components are connected together stimulus: 1’s and 0’s that are applied at

specific times to the primary inputs of the design

simulation control States: basic (0, 1, X), strength could be

combined with basic; strong (S), resistive (R), high impedance (Z), indeterminate (I)

Logic Simulation (Continued)

Page 40: Digital Design and Synthesis COEN 6501

Simulation modelSimulation model

- logical- logical

********************************************************************************************************** Library:Library: ACMEACME**** Technology:Technology: 2u CMOS2u CMOS**** Part:Part: fdrcfdrc******** Description:Description: D flip-flop with rising edge, async. ClearD flip-flop with rising edge, async. Clear******************************************************************************************************

model model fdrc: tablefdrc: tableinput d, rn;input d, rn;edge_sense input cp;edge_sense input cp;output q, qn;output q, qn;

Page 41: Digital Design and Synthesis COEN 6501

State_tableState_table

rn,rn, cp,cp, d,d, qq :::: q,q, qn;qn;********** ------------------------------------------------------------------------------------------------------------------------

0,0, (??),(??), ?,?, ?? :::: 0,0, 1,1,1,1, (01),(01), ?,?, ?? :::: (d),(d), !(d);!(d);1,1, (?0),(?0), ?,?, ?? :::: N,N, !(q);!(q);1,1, (1?),(1?), ?,?, ?? :::: N,N, !(q);!(q);

end (fdrc:end (fdrc: table);table);

Page 42: Digital Design and Synthesis COEN 6501

Timing Verification Process of making accurate delay

prediction and to detect timing violation in the design. These violations include set-up time, hold time, races and spikes.

Delay through the circuit is a function of: intrinsic delay number of loads connected to each net temperature voltage process variation, layout

Typically, best and worst case scenarios should be considered.

Page 43: Digital Design and Synthesis COEN 6501

Simulator uses a set of equations to calculate exact delays

Fan-out td = t(int) + K*L t(int) = intrinsic delay K = drive factor L = sum of equivalent loads

Page 44: Digital Design and Synthesis COEN 6501

temperature td = td/FT FT = (T2/T1) -M

voltage t’d = td/[VDDr(1 + 0.0f)]

process t’d = td(1 + 0.01Fp), Fp = = processing

variation factor

layout information is normally supplied in two forms:

pre-layout estimation post-layout: back annotation

Timing Verification (Continued)

Page 45: Digital Design and Synthesis COEN 6501

hazards spikes: inertial and transport delays

set-up time/hold time/minimum pulse width

tPLH = 2tPLH = 2tPHL = 1tPHL = 1

inertialinertial

transporttransport

Timing

Page 46: Digital Design and Synthesis COEN 6501

Critical path analysis detection of timing violation for data path structure the process is simply adding up path delays and compute

the result with the period of the clock at the destination (F/F)

path analysis is not simulation and does not utilize information about the functionality of the device

look for two parameters· hold slack = clock period - hold path time· set up slack = clock period - set up path time· slack >= 0· paths are chosen to provide the least amount of available set up

or hold times

Timing

Page 47: Digital Design and Synthesis COEN 6501

Structural layout synthesis

Floor planning it is the exercise of arranging blocks of layout

within a chip to minimize area or to maximize speed

floor plan editors provide graphical feedback about the size and placement of modules (without showing details), also the connectivity information between the modules in the form rat’s-not

floor planning could be done manually, or automatically with manual intervention

factors influencing floor planning (core & I/Os)

Page 48: Digital Design and Synthesis COEN 6501

AA

BB

CC

DD

Page 49: Digital Design and Synthesis COEN 6501

Placement and routing

Placement: is the task of placing modules adjacent to each other to minimize area or cycle time

two algorithms: min-cut, simulated annealing

routing: a router takes a module placement and a list of connections, connects the modules with wires

types of routers: channel, switch box, maze

Page 50: Digital Design and Synthesis COEN 6501

invinv invinv regreg nd2nd2 nd2nd2

nd2nd2nd2nd2 nd2nd2 nd2nd2 nd2nd2

nd2nd2 invinvinvinv invinv

invinv

invinvregreg

nd3nd3

nd3nd3

nd3nd3

Channel routeChannel route

Channel routeChannel route

Page 51: Digital Design and Synthesis COEN 6501

Other layout tools synthesis compaction

Layout verification design rule checking layout extraction layout vs. schematic

Back annotation of post layout simulation

Layout

Page 52: Digital Design and Synthesis COEN 6501

to verify the correct operation of the device by exercising it by a set of test patterns, and then to check the output patterns to see whether they are identical to the ones predicted by the simulator

tester also verifies DC and AC parameters on the pins of the device

comparatorcomparator

DUTDUTX 0 1 1X 0 1 10 1 0 10 1 0 1Z 1 1 1Z 1 1 1 : : : :: : : :

0 10 11 01 00 10 1: :: :

from from simulatorsimulator

o/po/p i/pi/p

Testing

Page 53: Digital Design and Synthesis COEN 6501

Tester operates in a periodic fashion input signals charge states at the beginning of

the test period output signals are strobed at the end of the

period to determine whether the measured values matches the simulated values..

T0T0 T0T0 T0T0Test Test cyclecycle

i/pi/p

o/po/p

strobestrobe

Timing Analysis

Page 54: Digital Design and Synthesis COEN 6501

Types of Testing

Functional (mostly at lower speeds) static dynamic (refresh if required)

DC test continuity leakage, power consumption high/low voltage levels, drive capability

AC test rise/fall times, propagation delays set-up and hold times, access times

Page 55: Digital Design and Synthesis COEN 6501

Functional unitFunctional unit

Functional unitFunctional unit Functional unitFunctional unit

Processor Processor

registeregisterr

registeregisterr

registeregisterr

LOGICLOGIC

CIRCUITCIRCUIT

LAYOUTLAYOUT

FABRICATIONFABRICATION

COEN 7501COEN 7501Formal VerificationFormal Verification

ENCS 6521ENCS 6521Design for TestabilityDesign for Testability

ELEC 6231ELEC 6231

COEN 6531COEN 6531ASIC Synthesis ASIC Synthesis

ENCS 6511ENCS 6511

ELEC 6241ELEC 6241

ELEC 6501ELEC 6501

COEN 7741Advance Comp. Arch

Page 56: Digital Design and Synthesis COEN 6501

Binary Arithmetic

operation unsigned Signedmagnitude

One’scomplement

Two’scomplement

No change If +ve thenMSB = 0 elseMSB = 1

If –ve thenflip bits

If –ve thenflip bits, add1

3 = 0011 0011 0011 0011

-3 = NA 1011 1100 1101

Zero = 0000 0000 or1000

1111 or0000

0000

Max. +ve = 1111 = 15 0111 = 7 0111 = 7 0111 = 7

Page 57: Digital Design and Synthesis COEN 6501

Max. – ve = 0000 = 0 1111 = -7 1000 = -7 1000 = -8

Addition = S =A + B =addend +augend SG(A)= sign of A

S= A + B If SG(A) =SG(B) then S= A+ B else {ifB<A then S =A – B else S =B – A}

S = A + B +COUT(MSB)COUT ISCARRY OUT

S = A + B

Addition result :OV = overflow,OR = out ofrange

OR =COUT(MSB)COUT isCARRY OUT

If SG(A) = SG(B)then OV =COUT(MSB) elseOV = 0(impossible)

OV =XOR{COUT(MSB), COUT(MSB –1)}

Ov =XOR{COUT(MSB), COUT(MSB –1)}

SG(S) =sign of S, S= A + B

NAIf SG(A) =SG(B) thenSG(S) = SG(A)else {if B<Athen SG(S) =SG(A) elseSG(S) = SG(B)}

NA NA

Page 58: Digital Design and Synthesis COEN 6501

Subtraction =D = A – B =minuend -subtrahend

D = A – B SG(B) =NOT(SG(B));D = A + B

Z = -B(negate); D =A + Z

Z = -B(negate); D =A + Z

Subtractionresult : OV =overflow,OR = out ofrange

OR =BOUT(MSB)BOUT isborrow out

As inaddition

As inaddition

As inaddition

Negation : Z= -A (negate)

NA Z = A;SG(Z) =NOT(SG(A))

Z = NOT(A) Z = NOT(A)+ 1

Page 59: Digital Design and Synthesis COEN 6501

Example: design an addition overflow circuit, in accordance with the following specification:

When the operation is addition and both addend and augend are +ve, overflow is indicated by a carry from the most significant digit (MSD)

when the operation is addition and both addend and augend are -ve, overflow is indicated by the absence of carry from the MSD

when the operation is subtraction and the minuend is +ve and the subtrahend -ve, overflow is indicated by a carry from the MSD

when the operation is subtraction and the minuend is -ve and subtrahend is +ve, overflow is indicated by absence of a carry from the MSD

Page 60: Digital Design and Synthesis COEN 6501

THE THE ENDEND