Top Banner
DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar – Dr. Tuan D. A. Nguyen
74

DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

Apr 07, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

DSE-14-E14EMBEDDED HARDWARE SYSTEMS DESIGN

LECTURE 1 - INTRODUCTIONSummer Semester – 2019Lecturer: Prof. Dr. Akash Kumar – Dr. Tuan D. A. Nguyen

Page 2: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Prof. Dr. Akash Kumar Head at Chair for Processor Design (from 2015) Assistant Professor at National University of Singapore, Singapore PhD from Eindhoven University of Technology, Netherland India

Dr. Tuan D. A. Nguyen Postdoc at Chair for Processor Design (from 2018) PhD from National University of Singapore, Singapore Some industrial experiences in SoC for datacenter and high-frequency

trading domain Vietnam

Who we are

Page 3: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

3

https://cfaed.tu-dresden.de/pd-about Helmholtzstrasse 18, 3rd Floor room

BARIII73-74, BARIII76 Research interests:

Analysis, design and resource management of novel predictable low-power (multi-)processor architectures

Approximate computing Thermal-aware 3D architectures Reliable/fault-tolerant multiprocessor

systems

Chair for Processor Design

Page 4: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

4

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 5: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

5

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 6: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

6

You may wonder: “I’m a software guy, why do I need to take this module?” “What is hardware?”

Why this “hardware design”?

Page 7: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

7

Heterogeneous Cloud Computing

Request Service A

VM0

VM2 VMn

Scale-out HorizontallyScale-out Vertically

VM1

o o o

VM1 FPGA

Service AService A

OpenStack/

Hypervisor

Scale-out Vertically

VM1 GPGPU

Service A

Page 8: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

8

Cloud with FPGAs

Amazon F1 Microsoft Catapult

Baidu

Huawei

IBM

Ericsson

Plunify

Accelize

Analog Design

Napatech

Falcon Computing

NGCodecDeephi

Maxeler

ARM

Page 9: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

9

Cloud with FPGAs

https://www.microsoft.com/en-us/research/uploads/prod/2018/03/mi0218_Chung-2018Mar25.pdf

Page 10: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

10

Objective of this Module

VM2 VMnVM1

o o o

VM1 FPGA FPGA

Tile 3

Tile 2

Tile 1

Main PLB Bus Plane

ICAP TIMER SYSACE - - -

Master Processor

Master Ctrl

MPMC (DDR)

Tile Mem n

Tile Mem 1- - -MDM

Partial Reconfigurable Regions

Network-on-Chip PlaneNoCInterface

(FSL/AXIS)

- - - Tile n-1

Tilen

Clock/Reset Control

Debug Interface

BRAM_PORTS

Page 11: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

11

In fact, FPGAs on the cloud are some sort of “embedded systems”

Already “high” about cloud?Why embedded systems?

Page 12: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

12

Embedded Systems Definition

An embedded system is nearly any computing system (other than a general-purpose computer) with the following characteristics Single-functioned Typically, is designed to perform predefined functions

Tightly constrained Tuned for low cost Single-to-fewer components based Performs functions fast enough Consumes minimum power

Reactive and real-time Must continually monitor the desired environment and react to changes

Hardware and software co-existence

Page 13: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

13

Embedded Systems Examples

Page 14: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

14

DragonFly+: An FPGA-based quad-camera visual SLAM system for autonomous vehicles (Shaoshan Liu - PerceptIn)

Single-functioned Typically, is designed to

perform predefined function Tightly constrained

Tuned for low cost Single-to-fewer components

based Performs functions fast enough Consumes minimum power

Reactive and real-time Must continually monitor the

desired environment and react to changes

Hardware and software co-existence

Embedded Systems Example

Page 15: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

15

Major Factors to be Considered

Time-to-market Technology Performance Cost Power consumption Reliability Testability Availability of CAD tools,

libraries, IP's ...

Page 16: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

16

Major Factors to be Considered

Time-to-market Technology Performance Cost Power consumption Reliability Testability Availability of CAD tools,

libraries, IP's ...

J. A. Debardelaben, V. K. Madisetti and A. J. Gadient, "Incorporating cost modeling in embedded-system design," in IEEE Design & Test of Computers, vol. 14, no. 3, pp. 24-35, July-Sept. 1997.

Page 17: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

17

Major Factors to be Considered

International Business Strategies," www.ibs-inc.net, 2012.

https://www.actualtech.io/programmable-asics-will-change-infrastructure-investments/

Time-to-market Technology Performance Cost Power consumption Reliability Testability Availability of CAD tools,

libraries, IP's ...

Page 18: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

18

Major Factors to be Considered

Time-to-market Technology Performance Cost Power consumption Reliability Testability Availability of CAD tools,

libraries, IP's ...

https://www.timesofisrael.com/plant-world-to-get-israeli-internet-of-things-tech/

Page 19: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

19

Major Factors to be Considered

Time-to-market Technology Performance Cost Power consumption Reliability Testability Availability of CAD tools,

libraries, IP's ...

https://www.evaluationengineering.com/instrumentation/article/13013319/systems-and-software-address-testability

Page 20: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

20

Major Factors to be Considered

Time-to-market Technology Performance Cost Power consumption Reliability Testability Availability of CAD tools,

libraries, IP's ...

https://www.semiwiki.com/forum/content/3534-non-separation-power-performance.html

Page 21: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Designing Embedded Systems21

Embedded System Design with CAD Tools

We will examine the design methodologies to implement computations (algorithms) on platforms.

PlatformsComputations

tmp0 = a + b;tmp1 = c * d;tmp2 = tmp0 * tmp1;tmp3 = tmp0 + tmp2;e = tmp2 * tmp3;

Page 22: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Algorithm Functional Modeling

Problem Partitioning

Sw Func. Model Sw. Dev Application Source Code Processor

SW/HW Interface

SW/HW Interface

Hw Func. Model

Architectural Synthesis

Logic/Physical Synthesis

Application Specific

Hardware

Simplified and General Embedded System Design Methodology

22

Page 23: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Algorithm Functional Modeling

Problem Partitioning

Sw Func. Model Sw. Dev Application Source Code Processor

SW/HW Interface

SW/HW Interface

Hw Func. Model

Architectural Synthesis

Logic/Physical Synthesis

Application Specific

Hardware

Who Contribute to Embedded System Designs23

Frontend (UX/UI)Backend

(Database, Network, etc.)

Backend (Driver, OS, HW/SW Interface, etc.)

QA/QC

Frontend (Macro/Micro Architecture)

Backend (Synthesis, Timing

Analysis, Placement and

Routing)

Hardware Design (Board)

Verification /Validation

Page 24: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

24

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 25: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

25

Textbook For This Module

Giovanni De Micheli, Synthesis and Optimization

of Digital Circuits, International Edition,

Year: 1994, ISBN: 0-07-113271-6, McGraw-Hill.

Please focus on Chapters 1, 3, 4, 7, 9, and 11

Classic textbook on VLSI Design Automation.

Page 26: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

26

Part 1 (6 lectures): General introduction to embedded hardware system design FPGA architecture and EDA System Specifications and Modeling System Specifications with High-level Language Architectural Behavioral Synthesis

Part 2 (6 lectures): Logic Synthesis Logic Minimization Technology Mapping Physical Synthesis

Schedule: Thursdays, 11.10-12.40 (Computer Science Faculty, room APB E009)

Dates: 4.4. / 11.4. / 18.4. / 25.4. / 2.5. / 9.5. / 16.5. / 23.5. / 6.6. / 27.6. / 4.7. / 11.7.

Lecture Plan

Page 27: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

27

Next semester, practical module will be offered as follow-up to get the hands-on on the FPGA

Lecture Plan

Page 28: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

28

Self-study Groups of 1-2 students Select/propose topics Meet every 2 weeks Foundation for the practical module next semester (learn one, get three ) Plan

First month: topic definition, techniques exploration, literature survey, ideas Second month: implementation Third month: report, demonstration

Register here or later via email [email protected] Header: [ESD19][Seminar]….

Seminar

Page 29: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

29

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 30: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

30

A piece of silicon

Integrated Circuit

Transistors

Page 31: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

31

Integrated Circuit

http://bugbookmuseum.blogspot.com/2015/07/discrete-component-electronics-to.html

Here is a look at the inside of a 1965 transistor radio made with 7 transistors.

In 2007 one large memory IC contained a sufficient number of transistors to make more than one billion of these radios.

Page 32: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

32

Moore’s Law

Moore's law is the observation that the number of transistors in a dense integrated circuit doubles about every two years.

(Gordon Moore, the co-founder of Fairchild Semiconductor and CEO of Intel) Christopher Batten. ECE 5950 Complex Digital ASIC Design

Course Overview

Page 33: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

33

Or EDA – Electronic Design Automation tools

Computer programs that automate parts of the design process

CAD – Computer-Aided Design Tools

https://en.wikipedia.org/wiki/Physical_design_(electronics)

Page 34: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

34

Intel 4004 (1971) 10 um 2300 Transistors

CAD – Computer-Aided Design

https://web.archive.org/web/20110723120701/http://www.flylogic.net/blog/?p=63https://en.wikichip.org/wiki/intel/microarchitectures/skylake_(client)#Dual-core

Intel Dual-core GT2 Skylake (2015) 14 nm 1.7 Billions Transistors

Page 35: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

35

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 36: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

36

CMOS BiCMOS

Circuit Taxonomy - Material

Page 37: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

37

Analog Continuous

Circuit Taxonomy - Behavior

ADC – Analog Digital Converter

DAC – Digital Analog Converter

Digital Discrete

Page 38: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

38

ADC - DAC

Page 39: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

39

Synchronous Operations are

synchronized to one (or more) global signal - clock

Asynchronous No clock is needed

Digital Circuit

Page 40: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

40

Circuit Taxonomy - Summary

IC

Digital

Asynchronous Synchronous

Combinational

Sequential

Analog

Material

?

Page 41: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

41

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 42: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

42

Full-custom vs. Semi-custom design style Affected by conflicting factors

Projected volume Expected pricing Circuit performance Reliability Time Etc.

Circuit Design Implementation Styles

Page 43: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

43

All (or most) of the design processes are handcrafted Specifying the layout of each individual transistor and the

interconnections between them

Tremendous efforts and time However, very high-quality circuits Only benefit with extremely high volume Now only found in crucial CPU blocks which are

reused across a large number of product lines

Full-Custom Design

Page 44: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

44

The circuit primitives are > transistors Blocks or gates Relies on EDA tools to assemble them

Semi-custom Design

Page 45: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

45

Semi-custom Design Variants

Semi-custom

Cell-based

Standard Cells

Macro Cells

Memory

Arithmetic

Etc.

Array-based

Masked-programmable

Gate arrays

Sea of gates

Field-programmable

Anti-fused based

Memory-based

Page 46: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

46

Possible Platforms

https://docs.microsoft.com/en-us/azure/machine-learning/service/concept-accelerate-with-fpgas

General Purpose Reconfigurable Application Specific

Page 47: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

47

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 48: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

48

A model of a circuit is an abstraction A representation with features of interest without associated details

Synthesis is a process of generating a more detailed model from a less detailed one

Circuit Models

Algorithm Functional Modeling

Problem Partitioning

Sw Func. Model

SW/HW Interface

Hw Func. Model Architectural Synthesis

Logic/Physical Synthesis

Application Specific

Hardware

Page 49: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

49

Levels of Abstractions

Algorithm Functional Modeling

Problem Partitioning

Sw Func. Model

SW/HW Interface

Hw Func. Model Architectural Synthesis

Logic/Physical Synthesis

Application Specific

Hardware

Architectural Level

Logic Level

Geometrical Level

Page 50: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

50

Example

tmp0 = a + b;tmp1 = c * d;tmp2 = tmp0 * tmp1;tmp3 = tmp0 + tmp2;e = tmp2 * tmp3;

*5

+1

*2

*3

a

e

b c d

+4

Architectural Level Logic Level Geometrical Level

Page 51: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

51

Views of a Model

tmp0 = a + b;tmp1 = c * d;tmp2 = tmp0 * tmp1;tmp3 = tmp0 + tmp2;e = tmp2 * tmp3;

MULT

ADD

MEM

CONTROL

Behavioral View Structural View Physical View

Page 52: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

52

Views Behavioral Structural Physical

Abstractions Architectural level Logic level Geometrical level

Views and Levels of Abstractions

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Gajski and Kahn’s Y-chart

Page 53: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

53

Views and Levels of Abstractions

tmp0 = a + b;tmp1 = c * d;tmp2 = tmp0 * tmp1;tmp3 = tmp0 + tmp2;e = tmp2 * tmp3;

*5

+1

*2

*3

a

e

b c d

+4

Architectural Level Logic Level Geometrical Level

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Page 54: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

54

Views and Levels of Abstractions

Architectural Level Logic Level Geometrical Level

MULT

ADD

MEM

CONTROL

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Page 55: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

55

Views and Levels of Abstractions

Architectural Level Logic Level Geometrical Level

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Page 56: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

56

1. Why and What is “Embedded Hardware”?2. Module plans3. Integrated Circuit4. Circuit Taxonomy5. Circuit Design Implementation Styles6. Circuit Models7. Synthesis

Agenda

Page 57: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Synthesis

Synthesis can be seen as a set of transformation between two axial views Architectural synthesis Logic synthesis Physical synthesis

57

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Gajski and Kahn’s Y-chart

Page 58: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Architectural Synthesis

Identify hardware resources that can implement the operations

Schedule the execution of the operations

Bind operations to resources Data Path and Control Unit Data Path: interconnection of

resources Control Unit: issuing control signals

to the data path according to the schedule

58

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Page 59: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

59

Architectural Synthesis – Input

tmp0 = a + b;tmp1 = c * d;tmp2 = tmp0 * tmp1;tmp3 = tmp0 + tmp2;e = tmp2 * tmp3;

Page 60: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

60

0 0

1 1

2 2

3 3

4 4

5

*5

+1

*2

*3

a

e

b c d

+4

+1

*2

*3

+4

*5

clock cycles+1

*2

*3

+4

*5

One ALU as either an adder or a multiplier

is available

One adder and one multiplier are

available

schedule 1 schedule 2

tmp0 = a + b;tmp1 = c * d;tmp2 = tmp0 * tmp1;tmp3 = tmp0 + tmp2;e = tmp2 * tmp3;

Architectural Synthesis - Example

Page 61: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

61

0 0

1 1

2 2

3 3

4 4

5

+1

*2

*3

+4

*5

clock cycles+1

*2

*3

+4

*5

One ALU as either an adder or a multiplier

is available

One adder and one multiplier are

available

schedule 1 schedule 2

tmp0 = a + b;tmp1 = c * d;tmp2 = tmp0 * tmp1;tmp3 = tmp0 + tmp2;e = tmp2 * tmp3;

Architectural Synthesis - Example

MULT

ADD

MEM

CONTROL

Behavioral View Structural View

Page 62: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Logic Synthesis

Transforming the high-level description of the logic to the actual combination of logic gates and their connections through a series of logic optimizations

62

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Page 63: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Logic Synthesis - Input

Logic-level model of a circuit can be provided by a state transition diagram or finite-state machine (FSM), circuit schematic or equivalent by High-level Description Language (HDL)

Specified by designers or synthesized from an architectural level model

63

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Page 64: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Logic Synthesis - Input64

0 0

1 1

2 2

3 3

4 4

5

+1

*2

*3

+4

*5

clock cycles+1

*2

*3+4

*5

One ALU as either an adder

or a multiplier is available

One adder and one multiplier are available

schedule 1 schedule 2

*5

+1

*2

*3

a

e

b c d

+4

State Machine HDL

Page 65: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

65

Primary Outputs

Primary Inputs

Primary Outputs

Primary Inputs

Logic synthesis will do various optimizations to simplify the logic expressions

Logic Optimization

Page 66: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Logic Synthesis - Example66

Page 67: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Physical Synthesis

Technology mapping Generating the layout of the chip Place the gates/transistors Route (connect) the components

67

Structural View

Physical View

Behavioral View

Architectural Level

Logic Level

Geometrical Level

Page 68: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Technology Mapping

A process of taking a logic expression and converting that representation into a new logic representation that can be implemented by cells in standard cell library or FPGA resources Determining a collection of

various covers which are decided from pattern recognition

Choosing a particular set such that a desired metric is optimized such as area or delay.

68

Primary Outputs

Primary Inputs

Primary Outputs

Primary Inputs

Original Gate Netlist Mapped Gate Netlist

Page 69: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Technology Mapping - Example69

Logic Cells

Flip-flops

Page 70: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Layout and Placement

Placement is to map the shape of a cell to a physical place in the layout

Cells that have many connections with each other should be placed close to each other so as to minimize delays

70

Primary Outputs

Primary Inputs

Mapped Gate Netlist Placed Gate Netlist

Page 71: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Playout and Placement - Example71

ALU

Control Logic

Page 72: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Routing

Routing is to map the logic connection between cells to a physical interconnect in the layout.

The physical route for each logic connection should be as short as possible to minimize delays

72

Placed Gate Netlist Routed Gate Netlist

Logic connection physical connection

Page 73: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Routing - Example73

ALU

Control Logic

Page 74: DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN …...DSE-14-E14 EMBEDDED HARDWARE SYSTEMS DESIGN LECTURE 1 - INTRODUCTION Summer Semester – 2019 Lecturer: Prof. Dr. Akash Kumar –

© Akash Kumar

Summary

There are many contributing factors in designing embedded hardware systems

HW and SW operations are optimized to work hand-in-hand Hardware platforms can be general purpose, reconfigurable or

application specific depending on the requirements There are many steps involved during the design process EDA tools play a very important role

74