Advanced Digital Circuit Design

30
1 Advanced Digital Circuit Design Prof. Dr. Berna Örs Yalçın Istanbul Technical University Faculty of Electrical and Electronics Engineering Department of Electronics and Communication Engineering [email protected]

Transcript of Advanced Digital Circuit Design

Page 1: Advanced Digital Circuit Design

1

Advanced Digital Circuit Design

Prof. Dr. Berna Örs Yalçın

Istanbul Technical University

Faculty of Electrical and Electronics Engineering

Department of Electronics and CommunicationEngineering

[email protected]

Page 2: Advanced Digital Circuit Design

2

Outline• Introduction to Digital Systems• Hardware Description Languages (HDLs)• Programmable Logic Devices• Introduction to VHDL

• HDL Models of Combinational Circuits• Test Benches for Combinational Circuits• HDL Models of Synchronous Sequential Logic

• State Reduction and Assignment• Register Transfer Level & Design with ASM• Simple Processor Design

• RF & Datapath & Single Cycle Control• Basic Pipelining

• Asyncronous Sequential Digital Circuit Design

Page 3: Advanced Digital Circuit Design

3

Grading• Projects will be given every two weeks about the topics

of related weeks. • Projects will be desribed by VHDL and implemented

by using Xilinx Vivado• 7 projects in total

• A written final exam will take place during final periodin academic semester.

Term grade=0,7*Average Project Grades+0,3*Final Exam Grade

Page 4: Advanced Digital Circuit Design

4

Digital Systems / Motivation

• Digital systems surround us– Electronic system operating on 0s and 1s– Typically implemented on an Integrated Circuit

(IC) – "chip"• Desktop/laptop computers ("PCs") are the most

popular examples• Other increasingly common examples

– Consumer electronics: Cell phones, portable music players, cameras, video game consoles, electronic music instruments, ...

– Medical equipment: Hearing aids, pacemakers, life support systems, ...

– Automotive electronics: Engine control, brakes, ...

– Military equipment– Networking components: Routers, switches, ... – Many, many more...

Page 5: Advanced Digital Circuit Design

Why Digital?

• Ease of Design• Low Idea-to-Product Time

3.03.2021 5

Page 6: Advanced Digital Circuit Design

Why Digital?

• Ease of Design• Portability

3.03.2021 6

Page 7: Advanced Digital Circuit Design

Why Digital?

• Ideal World• Immunity to Noise

3.03.2021 7

Page 8: Advanced Digital Circuit Design

Why Digital?

• Ideal World• Only mathematical and logical operations

• Zero error for some operations

• Customizable precision

3.03.2021 8

Page 9: Advanced Digital Circuit Design

Why Digital?• Ideal World

• Easy Signal Processing

3.03.2021 9

Page 10: Advanced Digital Circuit Design

Why Digital?

• Programmability• Can be programmable on the fly

• Can change the behavior completely

3.03.2021 10

Page 11: Advanced Digital Circuit Design

Why Digital?• Technology (scaling) driven

3.03.2021 11

Page 12: Advanced Digital Circuit Design

Why NOT Digital?

• Sound

• Electromagnetic Waves• Light etc.

• All other sensory data• Pressure

• Temperature

• Humidity etc.

• Short, The World is ANALOG

3.03.2021 12

Page 13: Advanced Digital Circuit Design

Considerations of Digital Technology

3.03.2021 13

Power

Speed Area

Trade-off Triangle

Page 14: Advanced Digital Circuit Design

Limitations of Digital Technology• Total Power = Dynamic Power + Static Power

• Dynamic Power → C.f.VDD2

• Static Power → Leakage Currents

3.03.2021 14

Page 15: Advanced Digital Circuit Design

Limitations of Digital Technology• Power Density = Power Consumption per Unit Area

3.03.2021 15

Page 16: Advanced Digital Circuit Design

Limitations of Digital Technology

• Subthreshold Leakage Currents

3.03.2021 16

Page 17: Advanced Digital Circuit Design

References

• http://download.intel.com/pressroom/kits/45nm/pin.jpg

• http://www.clipartheaven.com/show/clipart/tools_&_hardware/wheelbarrow-gif.html

• http://www.topnews.in/health/files/Aircraft-noise.jpg

• http://www.ami.ac.uk/courses/ami4822_dsi/u02/index.asp

• http://en.wikipedia.org/wiki/Digital_signal_processor

• http://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Digital.signal.svg/567px-Digital.signal.svg.png

• http://upload.wikimedia.org/wikipedia/en/2/24/Lenna.png

• http://ixbtlabs.com/articles2/intel-65nm/

• http://www.tomshardware.com/reviews/cheap-thrills,1335.html

3.03.2021 17

Page 18: Advanced Digital Circuit Design

18

Hardware Description Languages (HDLs)

Page 19: Advanced Digital Circuit Design

19

Digital Systems and HDLs

• Typical digital components per IC– 1960s/1970s: 10-1,000

– 1980s: 1,000-100,000

– 1990s: Millions

– 2000s: Billions

• 1970s– IC behavior documented using

combination of schematics, diagrams, and natural language (e.g., English)

• 1980s– Simulating circuits becoming

more important•Schematics commonplace

•Simulating schematic helped ensure circuit was correct before costly implementation

Combinational

logic

State register

s1 s0

n1

n0

xb

clk

FSM

inp

uts FSM

ou

tpu

ts

n1

n0

s0s1

clk

Combinational Logic

State register

b x

"The system has four

states. When in state Off,

the system outputs 0 and

stays in state Off until the

input becomes 1. In that

case, the system enters

state On1, followed by

On2, and then On3, in

which the system outputs

1. The system then

returns to state Off."

Inputs: b; Outputs: x

On2On1 On3

Off

x=1x=1x=1

x=0

b’

b

diagrams

schematicsnatural language

100,000

10,000

1,000

100

10

19

97

20

00

20

03

20

06

20

09

20

12

20

15

20

18Tr

ansi

sto

rs p

er IC

(m

illio

ns)

Page 20: Advanced Digital Circuit Design

20

HDLs for Simulation

• Hardware description languages (HDLs) –Machine-readable textual languages for describing hardware– Text language

could be more efficient means of circuit entry than graphical language

10 20 30 4050 70

B_s

X_s

Clk_s

Rst_s

60 8090 110100

// CombLogic

process(State, B) begin

case State is

when S_Off =>

X <= ‘0’;

if B = ‘0’ then

StateNext <= S_Off;

else

StateNext <= S_On1;

end if;

when S_On1 =>

X <= 1;

StateNext <= S_On2;

when S_On2 =>

X <= 1;

StateNext <= S_On3;

when S_On3 =>

X <= 1;

StateNext <= S_Off;

end case;

end process;

Simulation

Page 21: Advanced Digital Circuit Design

21

HDLs for Design and Synthesis• HDLs became increasingly used for

designing ICs using top-down design process– Design: Converting a higher-level

description into a lower-level one

– Describe circuit in HDL, simulate•Physical design tools automatically convert to low-level IC design

– Describe behavior in HDL, simulate•e.g., Describe addition as A = B + C, rather than as circuit of hundreds of logic gates

–Compact description, designers get function right first

•Design circuit –Manually, or

–Using synthesis tools, which automatically convert HDL behavior to HDL circuit

–Simulate circuit, should match

1020304050 70

b_s

x_s

Clk_s

Rst_s

60 8090 110100

HDL circuit

Physical design

Synthesis

HDL behavior

1020304050 70

b_s

x_s

Clk_s

Rst_s

60 8090 110100

HDL

HDL

Page 22: Advanced Digital Circuit Design

22

HDLs for Synthesis

• Use of HDLs for synthesis is growing

– Circuits are more complex

– Synthesis tools are maturing

• But HDLs originally defined for simulation

– General language

– Many constructs not suitable for synthesis

•e.g., delays

– Behavior description may simulate, but not synthesize, or may synthesize to incorrect or inefficient circuit

• Not necessarily synthesis tool's fault!

HDL circuit

Synthesis

HDL behavior

1020304050 70

b_s

x_s

Clk_s

Rst_s

60 8090 110100

Simulate

Page 23: Advanced Digital Circuit Design

23

HDLs for Synthesis• Consider the English language

– General and complex; many uses– But use for cooking recipes is greatly

restricted•Chef understands: stir, blend, eggs, bowl, ...

•Chef may not understand: bludgeon, harmonic, forthright, castigate, ..., even if English grammar is correct

–If the meal turns out bad, don't blame the chef!

• Likewise, consider HDL language– General and complex; many uses– But use for synthesizing circuits is greatly

restricted•Synthesis tool understands: sensitivity lists, if statements, ...

•Synthesis tool may not understand: wait statements, while loops, ..., even if the HDL simulates correctly

–If the circuit is bad, don't blame the synthesis tool!

– This course emphasizes on the use of VHDLfor design and synthesis

HDL circuit

Synthesis

HDL behavior

1020304050 70

b_s

x_s

Clk_s

Rst_s

60 8090 110100

Simulate

Page 24: Advanced Digital Circuit Design

24

Programmable Logic Devices

– FPGAs – Field Programmable Gate Array

– Virtex 4, 5, 6, 7 !

– Spartan 3, Spartan 6

– Consist of configurable logic blocks

– Provides look-up tables to implement logic

– Storage devices to implement flip-flops and latches

Page 25: Advanced Digital Circuit Design

25

Overview of XILINX FPGA Architecture

Page 26: Advanced Digital Circuit Design

Logic Synthesis

26

A process which takes a digital circuit description andtranslates it into a gate level design, optimized for aparticular implementation technology.

Page 27: Advanced Digital Circuit Design

XILINX Design Process

27

Page 28: Advanced Digital Circuit Design

XILINX Design Flow (Xilinx)

28

Page 29: Advanced Digital Circuit Design

29

Textbook & References

• Textbooks– M. Morris Mano and Michael D. Ciletti “Digital Design”,

Fifth Edition, Prentice Hall, 2013.

– Frank Vahid and Roman Lysecky ”VHDL for Digital Design”, Wiley 2007.

Page 30: Advanced Digital Circuit Design

Xilinx WebPACK

30

Xilinx Vivado WebPACK

You must first register, and then downloadand install the WebPack.