C-Based System Level Design

发布时间:2024-11-21

C Based System Level Design

Thomas Komarek

Agenda&System

level design challenges&SystemC - A modeling environment for hardware and software&CoCentricTM System Studio&Conclusions

System Level Design Challenges

System Level Design in the System-on-a-Chip World< 0.25µ Geometries

Manage the DetailsSystem on a Chip

Manage the ComplexityHigher Levels of Abstraction Design Reuse

SLD

Millions of Gates

Higher Design Complexity Requirements&Specify,

simulate and optimise systems at higher levels of abstraction– Performance– Behavior

&Create

new and reuse old IP&Efficiently traverse the path to hardware/software implementations&Use a design environment that supports your design flow

System Level Design FlowAlgorithm Product Specification Architecture

Functional Validation

Architectural Validation

Algorithmic Models

Co-Design

Architectural Models

Software

CoVerification

Hardware

Performance Modeling&Abstract performance models– Enable trade-off estimations– Examples: Modeling of power consumption, delay&Performance

models with behavioral

functionality– Scheduling of functions not fully specified– Resource bindings not fully specified

Behavioral Modeling&Untimed functional– Reactive control– Dataflow

space

&Timed functional space– Behavioral process– RTL process

The Major Challenges in System Level Design&Tight

coupling of dataflow and control&Reuse of IP at high abstraction levels&Structured methods to communicate and handle the system complexity– Software– Architecture

How real systems look ...

control

dataflow

control

control

dataflow

SystemC A Modeling Environment for Hardware and Software

SystemC A Modeling Environment for Hardware and Software&What

is SystemC?&Language overview&System simulation in SystemC&Example&What is SystemC useful for?

SystemC A C++ Class Based ApproachProcess 3

sc_signalsc_ sig naProcess 2

Process 1

sc_signed sc_logic

l

sc_sync sc_aproc

sc_async

&System

description: Multiple concurrent Processes&Communication: Signals, clocks, reset&Rich variety of hardware data types&Model at all levels of abstraction

System Simulation in SystemC&SystemC consists of– Set of header files describing the C++ classes– Link library that contains a cycle-based simulation kernel&An

ANSI C++ compliant compiler can compile SystemC, together with your program&The resulting executable serves as a simulator for the system described

Language Overview: Modules and Processes&Modules

contain other modules or processes&Processes are used to describe functionality&Communication between processes depends on signals, no global variables&Processes can be reactive to any input signal or to a clock signal

Process Types&Synchronous processes– Timing control statements like wait() implement synchronization and writing– Instructions between timing control statements are executed without delay&Asynchronous processes– I

nstructions are executed without delay– Local variables are redefined each time the block is invoked

Various Levels of Abstraction&The

more details you have to simulate, the slower is the simulation&Pure functionality of the system, algorithm&Software and testbenches can be described in C++&Hardware implementation– Behavioral, RTL style models– Handshaking, clock, reset possible

SystemC System Level

Algorithm Behavioral RTL

C-Based System Level Design.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219