Digital Logic Lecture 1

Post on 02-Dec-2015

222 views 1 download

Tags:

description

Digital Logic Lecture 1

Transcript of Digital Logic Lecture 1

DR. UMAR SHAHBAZ KHANumarshahbaz@gmail.com

Digital Logic Design Computer Architecture Programming Microcontrollers

Introduction to Embedded Systems Processor Technology Single purpose and General purpose

processors Embedded Systems Hardware and

Software Interfacing IC Technology Design Technology

Programmable logic devices like, Programmable array logic (PAL) Programmable logic array (PLA), complex Programming logic device (CPLD), Application Specific Integrated Circuits (ASIC) and Field Programmable Gate Arrays (FPGA)

Software for embedded systems: Introduction to development environment: FPGA development kit (Spartan-III), Introduction to Verilog

Development of various applications  like Mux, Demux, counters, registers, ALU etc

Embedded System Design: A unified Hardware/Software Introduction. By Frank Vahid & Tony D. Givarigis

Computer Architecture, A Quantitative approach by Dr. David A. Patterson and Dr. Paul Hennessey, - Digital Computer Electronics by Malvino & Brown.

Embedded System Design. Hardware/ Software System, by P. Marwedel

FPGA prototyping by VHDL examples: Xilinx Spartan-3 version, By Pong P. Chu - Wiley-Interscience. 

Quiz : 10% Assignment: 05% Projects : 05% 2 x Sessional Exams: 30% Final Exam : 50 %

An electronic device that includes a programmable computer, but is not itself intended to be a general-purpose computer

It is not your desktop PC or portable PC. Some examples are Fax machines Digital cameras Mobile phones etc.

Millions of desktop PCs are manufactured every year

Billions of embedded computer systems are manufactured every year

A combination of hardware and software which together form a component of a larger machine. An embedded system is designed to run on its own without human intervention, and may be required to respond to events in real time. Embedded systems are used in industrial machines, automobiles, medical equipment, cameras, household appliances, airplanes, vending machines, cellular phone, PDA’s, toys and many other devices.

Microcontroller

CCD preprocessor Pixel coprocessorA2D

D2A

JPEG codec

DMA controller

Memory controller ISA bus interface UART LCD ctrl

Display ctrl

Multiplier/Accum

Digital camera chip

lens

CCD

Single-functioned -- always a digital cameraTightly-constrained -- Low cost, low power, small, fastReactive and real-time -- only to a small extent

This top of the range car may contain more than 200 dedicated embedded systems

Definition: Mechatronics is the synergistic combination of precision mechanical engineering, electronic controls and systems engineering in the design of products and processes

Embedded Sensors/actuators/ processors are integral parts of mechatronic systems

Dedicated to specific tasks Real-time constraints Cost sensitive Power sensitive Short design times Harsh operating environments Fail-safe operations

Restricted design and development tools Sophisticated algorithms Complex and reactive user interfaces Complex testing requirements

How much “hardware” do we need? How much “software” do we need? What is the optimum balance between

hardware and software? How do we meet operational deadlines? How do we minimize power consumption? How do we design for upgradeability? How do we convince people that the

system works properly?

Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost

NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system.

Size: the physical space required by the system.

Performance: the execution time or throughput of the system.

Power: the amount of power consumed by the system.

Flexibility: the ability to change the functionality of the system without incurring heavy NRE cost

Time-to-prototype: the time needed to build a working version of the system.

Time-to-market: the time required to develop a system to the point that it can be released and sold to customers.

Maintainability: the ability to modify the system after its initial release

Correctness, safety, many more Improving one design metric may worsen

other

The hardware and software are normally developed together in order to satisfy the system requirements: Correct functionality Cost Size Performance Power consumption Time-to-Market etc.

Real Time Systems are typically monitoring and/or control systems The external environment (system or

machine) is often termed the Controlled System

The Real Time System (including its hardware/OS) is known as the Controlling System

Surface to air missiles Detect aircraft, initiate launch, track target.... bang!

Cardiac Pacemaker Sense heartbeat Deliver electrical stimulus to heart on basis of sensed

„heart events‟ Rate of stimulation and duration of stimulus controlled

by the system Digital cellular telephony

Compress/ decompress speech, error coding, manage radio transmission, manage power consumption

Like many Real Time Systems, above are all embedded in some larger system that they control

Processor technology

IC technology

Design technology

The architecture of the computation engine used to implement a system’s desired functionality

Application-specific

Registers

CustomALU

DatapathController

Program memory

Assembly code for: total = 0 for i =1 to …

Control logic and State register

Datamemory

IR PC

Single-purpose (“hardware”)

DatapathController

Control logic

State register

Datamemory

index

total

+

IR PC

Registerfile

GeneralALU

DatapathController

Program memory

Assembly code for:

total = 0 for i =1 to …

Control logic and State

register

Datamemory

General-purpose (“software”)

Programmable device used in a variety of applications Also known as

“microprocessor” Features

Program memory General datapath with large

register file and general ALU User benefits

Low time-to-market and NRE costs

High flexibility “Pentium” the most well-

known, but there are hundreds of others

IR PC

Registerfile

GeneralALU

DatapathController

Program memory

Assembly code for:

total = 0 for i =1 to …

Control logic and

State register

Datamemory

Digital circuit designed to execute exactly one program a.k.a. coprocessor, accelerator or

peripheral Features

Contains only the components needed to execute a single program

No program memory Benefits

Fast Low power Small size

DatapathController

Control logic

State register

Datamemory

index

total

+

Programmable processor optimized for a particular class of applications having common characteristics Compromise between general-

purpose and single-purpose processors

Features Program memory Optimized datapath Special functional units

Benefits Some flexibility, good performance,

size and power

IR PC

Registers

CustomALU

DatapathController

Program memory

Assembly code for:

total = 0 for i =1 to …

Control logic and

State register

Datamemory

The manner in which a digital (gate-level) implementation is mapped onto an IC IC: Integrated circuit, or “chip” IC technologies differ in their

customization to a design IC’s consist of numerous layers (perhaps

10 or more) IC technologies differ with respect to who

builds each layer and when

source drainchanneloxidegate

Silicon substrate

IC package IC

Full-custom/VLSI

Semi-custom ASIC (gate array and standard cell)

PLD (Programmable Logic Device)

Full custom IC design often referred to as Very Large Scale Integration (VLSI) design.

All layers are optimized for an embedded system’s particular digital implementation Placing transistors Sizing transistors Routing wires

Benefits Excellent performance, small size, low power

Drawbacks High NRE cost (e.g., $300k), long time-to-market

28

Very Large Scale Integration (VLSI) Placement

Place and orient transistors Routing

Connect transistors Sizing

Make fat, fast wires or thin, slow wires May also need to size buffer

Design Rules “simple” rules for correct circuit function

Metal/metal spacing, min poly width…

Also referred to as Application-specific IC (ASIC).

Lower layers are fully or partially built Designers are left with routing of wires and maybe

placing some blocks Benefits

Good performance, good size, less NRE cost than a full-custom implementation (perhaps $10k to $100k)

Drawbacks Still require weeks to months to develop

30

Gate Array Array of prefabricated gates “place” and route Higher density, faster time-to-market Does not integrate as well with full-custom

Standard Cell A library of pre-designed cell Place and route Lower density, higher complexity Integrate great with full-custom

31

Most popular design style

Jack of all trade Good

Power, time-to-market, performance, NRE cost, per-unit cost, area…

Master of none Integrate with full custom

for critical regions of design

33

Programmable Logic Device Programmable Logic Array, Programmable Array Logic, Field

Programmable Gate Array All layers already exist

Designers can purchase an IC To implement desired functionality

Connections on the IC are either created or destroyed to implement Benefits

Very low NRE costs Great time to market

Drawback High unit cost, bad for large volume Power

Except special PLA slower

1600 usable gate, 7.5 ns$7 list price

34

The most important trend in embedded systems Predicted in 1965 by Intel co-founder Gordon

Moore IC transistor capacity has doubled roughly

every 18 months for the past several decades

10,000

1,000

100

10

1

0.1

0.01

0.001

Logic transistors per chip

(in millions)

1981

1983

1985

1987

1989

1991

1993

1995

1997

1999

2001

2003

2005

2007

2009

The manner in which we convert our concept of desired system functionality into an implementation

Libraries/IP: Incorporates pre-designed implementation from lower abstraction level into higher level.

Systemspecification

Behavioralspecification

RTspecification

Logicspecification

To final implementation

Compilation/Synthesis: Automates exploration and insertion of implementation details for lower level.

Test/Verification: Ensures correct functionality at each level, thus reducing costly iterations between levels.

Compilation/Synthesis

Libraries/IP

Test/Verification

Systemsynthesis

Behaviorsynthesis

RTsynthesis

Logicsynthesis

Hw/Sw/OS

Cores

RTcomponents

Gates/Cells

Model simulate./checkers

Hw-Swco simulators

HDL simulators

Gate simulators

Exponential increase over the past few decades

100,000

10,000

1,000

100

10

1

0.1

0.01

1983

1981

1987

1989

1991

1993

1985

1995

1997

1999

2001

2003

2005

2007

2009

Pro

duct

ivit

y(K

) T

rans

./Sta

ff –

Mo.

In the past: Hardware and software

design technologies were very different

Recent maturation of synthesis enables a unified view of hardware and software

Hardware/software “co design”

The choice of hardware versus software for a particular function is simply a tradeoff among various design metrics, like performance, power, size, NRE cost, and especially flexibility;

there is no fundamental difference between what hardware or software can implement.

Implementation

Assembly instructions

Machine instructions

Register transfers

Compilers(1960's,1970's)

Assemblers, linkers(1950's, 1960's)

Behavioral synthesis(1990's)

RT synthesis(1980's, 1990's)

Logic synthesis(1970's, 1980's)

Microprocessor plus program bits: “software”

VLSI, ASIC, or PLD implementation: “hardware”

Logic gates

Logic equations / FSM's

Sequential program code (e.g., C, VHDL)

Basic tradeoff General vs. custom With respect to processor technology or IC technology The two technologies are independent

General-purpose

processor

ASIPSingle-purpose

processor

Semi-customPLD Full-custom

General,providing improved:

Customized, providing improved:

Power efficiencyPerformance

SizeCost (high volume)

FlexibilityMaintainability

NRE costTime- to-prototype

Time-to-marketCost (low volume)

While designer productivity has grown at an impressive rate over the past decades, the rate of improvement has not kept pace with chip capacity

10,000

1,000

100

10

1

0.1

0.01

0.001

Logic transistors per chip

(in millions)

100,000

10,000

1000

100

10

1

0.1

0.01

Productivity(K) Trans./Staff-Mo.

1981

1983

1985

1987

1989

1991

1993

1995

1997

1999

2001

2003

2005

2007

2009

IC capacity

productivity

Gap

Adaptive Cruise Control Drive by wire XM Satellite Radio Telematics (OnStar) Software drive train Software body control Rain-sensing Wipers

In-vehicle entertainment Generation II ABS Heads-up display Night Vision Back-up collision sensor Navigation Tire Pressure Monitor

Gasoline to hybrid to fuel cell Mechanical connection to “Drive-by-wire” Proprietary electrical/hardware/software system to

standardized “architectures” Adoption and implementation of IT standards in the

technology of the car (XML, Web Services, etc.) “On-demand” to “Always-on” vehicle connectivity to the

Internet

Measuring physical variables (sensing) Storing data Processing sensor signals and data Influencing physical variables

(actuating) Monitoring, Supervision Enable manual and automatic

operation