ASIC 120: Digital Systems and Standard-Cell ASIC Design

Post on 09-Feb-2016

38 views 0 download

description

ASIC 120: Digital Systems and Standard-Cell ASIC Design. Tutorial 1: Introduction to Digital Circuits October 11, 2005. Outline. Digital Systems Combinational Logic NOT, AND, OR, XOR, NAND, etc. mux, half-adder, full-adder Sequential Logic flip-flop/register, shift register, counter - PowerPoint PPT Presentation

transcript

ASIC 120: Digital Systems and Standard-Cell ASIC Design

Tutorial 1: Introduction to Digital Circuits

October 11, 2005

Outline

• Digital Systems• Combinational Logic

– NOT, AND, OR, XOR, NAND, etc.– mux, half-adder, full-adder

• Sequential Logic– flip-flop/register, shift register, counter– state machines

Digital Systems

• Analog vs. Digital– continuously varying vs. discrete– imprecise vs. precise– 0..1 vs. 0 or 1

• Digital systems excel at…– repetitive calculations– large amounts of data– reproducible results

The Big Picture

The Big Picture

FreescalePowerPC

microprocessor(PPC)

MPC850 family

RAMXilinx

Spartan-IIXC2S30FPGA

AlteraPLD

Ethernet Connector

Combinational and Sequential Logic

• We can break a digital system into two types of logic

• Combinational– computation happens

in a linear fashion• Sequential

– computation involves a feedback loop (memory)

In Out

CombinationalInput Output

In Out

CombinationalInput Output

Feedback

Combinational Logic: NOT

A X0 1

1 0

Input Output

Truth Table

Combinational Logic: AND

A B X0 0 00 1 01 0 0

1 1 1

Combinational Logic: OR

A B X0 0 00 1 11 0 1

1 1 1

Combinational Logic: XOR

A B X0 0 00 1 11 0 1

1 1 0

Combinational Logic: NAND

A B X0 0 10 1 11 0 1

1 1 0

Combinational Logic: NOR, XNOR

A B X0 0 10 1 01 0 01 1 0

A B X0 0 10 1 01 0 01 1 1

Building Combinational CircuitsA B C X

0 0 0 00 1 0 01 0 0 1

1 1 0 10 0 1 00 1 1 11 0 1 01 1 1 1

Combinational Logic: MUX(multiplexer)

A B C X0 0 0 00 1 0 01 0 0 1

1 1 0 10 0 1 00 1 1 11 0 1 01 1 1 1

Half AdderA B S C

0 0 0 00 1 1 01 0 1 0

1 1 0 1

Full Adder

Full Adder

What I’ve Skipped

• Gates with more than two inputs• Boolean algebra• Karnaugh maps• Quine-McCluskey method• Binary arithmetic, base conversions• Practical digital circuits have more than 0s

and 1s• Transmission gates, tri-state buffers

Sequential Logic

In Out

CombinationalInput Output

In Out

CombinationalInput Output

Feedback

Basic Feedback Element: SR latch

S R Q Qnext

0 0 0 00 0 1 10 1 0 0

0 1 1 01 0 0 11 0 1 11 1 0 N/A1 1 1 N/A

D Flip-Flop or RegisterD Clk Q Qnext

0 0 0 00 0 1 11 0 0 0

1 0 1 10 01 0 00 01 1 01 01 0 11 01 1 1

Synchronous vs. Asynchronous

• Synchronous– circuit operation governed by a clock– currently more popular and practical

• Asynchronous– circuit operation independent of a clock– potentially faster than synchronous– lower power consumption– difficult to design

Sequential Constructs

• Shift register• Counter• State Machines

State Machines

• Useful abstract constructs for more complex sequential logic

What I’ve Skipped

• Other flip-flops (RS, T, JK)• Other interesting sequential circuits (barrel

shifters, etc.)

Hardware Description Languages (HDLs)

• HDL describes in text a digital circuit• Examples

– VHDL (we will look at this next time)– Verilog– AHDL– JHDL

Hardware Description Languages (HDLs)

• schematics are useful for…– drawing high level diagrams– manually working out simple pieces of logic

• HDLs are useful for…– describing complex digital systems

• HDLs are not...– software programming languages (C, Java,

assembly, etc.)

Summary

• Digital Systems• Combinational Logic

– NOT, AND, OR, XOR, NAND, etc.– mux, half-adder, full-adder

• Sequential Logic– flip-flop/register, shift register, counter– state machines

UW ASIC Design Team

• www.asic.uwaterloo.ca• reference material

– Bryce Leung’s tutorials (UW ASIC website)– Michael Goldsmith’s tutorials (UW ASIC

website)– your course notes

• my contact info:Jeff Wentworth,

jswentwo@engmail.uwaterloo.ca