EE382N: Embedded System Design and Modeling

嚜激E382N: Embedded Sys Dsgn/Modeling

Lecture 8

EE382N:

Embedded System Design and Modeling

Lecture 8 每 Computation Modeling & Refinement

Andreas Gerstlauer

Electrical and Computer Engineering

University of Texas at Austin

gerstl@ece.utexas.edu

Lecture 8: Outline

? Processor layers

? Application

? Task/OS

? Firmware

? Hardware

? Processor synthesis

? Software synthesis

? Hardware synthesis

EE382N: Embedded Sys Dsgn/Modeling, Lecture 8

? 2015 A. Gerstlauer

? 2015 A. Gerstlauer

2

1

EE382N: Embedded Sys Dsgn/Modeling

Lecture 8

General Processor Micro-Architecture

? Basic computation component is a processor (PE)

? Programmable, general-purpose software processor (CPU)

? Programmable special-purpose processor (e.g. DSPs)

? Application-specific instruction set processor (ASIP)

? Custom hardware processor

Bus interface

PE

Controller

?t

Status lines

CLK

Datapath

Control signals

? Functionality and timing (and power and #)

EE382N: Embedded Sys Dsgn/Modeling, Lecture 8

? 2015 A. Gerstlauer

3

Computation Modeling (1)

? Structural RTL models

Load/store unit

CPU

Controller

PC

Fetch

CLK

Datapath

Memory

(data &

progr.)

Register

file

Bus interface

HW

Controller

Next

state

logic

CLK

Datapath

Register

file

Memory

State

IR

ALU

Decode

Software processor

Output

logic

FU1

Hardware processor

? Sub-cycle accurate

EE382N: Embedded Sys Dsgn/Modeling, Lecture 8

? 2015 A. Gerstlauer

? 2015 A. Gerstlauer

4

2

EE382N: Embedded Sys Dsgn/Modeling

Lecture 8

Computation Modeling (2)

Binary

? Behavioral RTL models (FSMD)

? Instruction-set simulation (ISS) models

? Purely functional (binary translation) [QEMU,#]

? Micro-architectural (RTL in C) [GEM5,#]

App.

RTOS

HAL

CPU

HW

ISS

CPU_CLK

HW_CLK

Instruction set simulation (ISS)

FSMD

? Cycle or timing accurate

EE382N: Embedded Sys Dsgn/Modeling, Lecture 8

? 2015 A. Gerstlauer

5

Computation Modeling (3)

? Host-compiled models

? Source-level application model

每 Compile & execute natively

每 Fast functional simulation

? Back-annotate timing and

other metrics

? Abstract OS and processor

models

? Transaction-level model

(TLM) backplane

? C-based discrete-event

simulation kernel

[SpecC,SystemC]

? Fast and accurate full-system simulation

EE382N: Embedded Sys Dsgn/Modeling, Lecture 8

? 2015 A. Gerstlauer

? 2015 A. Gerstlauer

6

3

EE382N: Embedded Sys Dsgn/Modeling

Lecture 8

Host-Compiled Computation Layers

Process B1()

{



waitfor(15000);



waitfor(25000);



};

? Application

? Process execution (C code)

? Execution timing

CPU

? OS & processor

? Operating system

P1

P2

OS

HAL Drv ISR

每 Real-time multi-tasking (RTOS model)

每 Bus drivers (C code)

? Hardware abstraction layer (HAL)

每 Interrupt handlers

每 Media accesses

? Processor hardware

Bus

Interrupts

每 Bus interfaces (I/O state machines)

每 Interrupt suspension and timing

EE382N: Embedded Sys Dsgn/Modeling, Lecture 8

? 2015 A. Gerstlauer

7

Application Layer

? High-level, abstract programming model

? Hierarchical process graph

每 ANSI C leaf processes

每 Parallel-serial composition

? Abstract, typed inter-process

communication

每 Channels

每 Shared variables

CPU

B1

B2

C1







B3

C2

? Timed simulation of application functionality

? Annotate timing, energy, #

每 Granularity?

每 Compiler optimizations?

每 Dynamic architecture effects?

? Source profiling [SCE]

? Back-annotate from ISS

? Predict from host activity

EE382N: Embedded Sys Dsgn/Modeling, Lecture 8

? 2015 A. Gerstlauer

Logical time

...

void f() {

waitfor(5);

...

}

...

0

? 2015 A. Gerstlauer

5

10

8

4

EE382N: Embedded Sys Dsgn/Modeling

Lecture 8

Source-Level Back-Annotation

? Retargetable backannotation flow

? Intermediate

representation (IR)

a=b=c=0;

if(a ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download