Usage of System C - Vienna University of Technology

Download Report

Transcript Usage of System C - Vienna University of Technology

Usage of System C
Marco Steffan
0215884
Overview



Standard
Existing Tools
Companies using SystemC
Common Standards



Open SystemC Initiative (OSCI)
IEEE 1666-2005 Standard SystemC
Language Reference Manual (LRM)
Members

Intel, ARM, Cadence,
CoWare, Synopsys,
STMicroElectronics
Canon, NEC, Infineon
Tools






Forte Design Systems: Cynthesizer
Synopsys: System Studio
Veritools (Verilator)
CISC Semiconductor Design+Consulting
GmbH: System Architect Designer (SyAD)
Mentor Graphics
Candence
Companies using SystemC






Nokia
Infineon Technology AG
Motorola
Intel
HP
Texas Instruments
Nokia






Modelling networks on mobile platforms
Basic block approach (like LEGO)
Combine blocks (SpaceWire)
Build own Network-Simulator from
scratch
Start with SystemC 2.0.1
Extended to mySystemC
Infineon Technology AG




Impact of different Datatypes on
performance
Appropriate type-selection gains 2x and
more simulation speed improvements
Available libraries provide almost all
needed features
Gcc-version has almost no impact on
speedup
Motorola



Early systems architecture exploration
Corner case study
Design change impact evaluation
Calls for Improvement
(Motorola)


Enhance model components portability
Data flow interface


Inter-module functional communication and
simulation flow control


Generic TLM bus interface preserving accuracy and providing
flexibility in bus models selection
Off-module process triggering and dynamic parameters
sharing
User interface



Model components configuration
Simulation result representation
User-friendly
Intel

Modeling interconnect & non-processor components



Architecture models (“Architect’s View”)
Functional models (“Programmer’s View”)
Above are mixed and integrated with processor
models for:




Architecture exploration
Early software development
Early (post-Si) system validation readiness
Early RTL verification
 Testbench* and test development (with ESL DUT)
 Application of system-level stimulus
 Co-simulation
 Co-emulation
* Testbenches primarily developed in SystemVerilog
HP

SystemC Usage







RTL Verification
Modeling (UTF,TF, BA/CA)
System Simulation (no RTL)
FW development on SW
model
Architectural Verification
Deployment of System
Verilog
Applications




Enterprise Level Servers
Embedded Processors
ASSP’s
Algorithms (FFT, DCT,
Wireless, etc.)

Reasons for SystemC:





Non proprietary, IEEE Std.,
LRM
Industry Support
TLM, AVM, SCV, etc.
Proven capabilities
Cost Effective
Calls for Improvement (HP)







Mixed Signal Libraries
Topology / Configuration generation (similar to
generate function)
More Academic Proliferation
Keep entry price low (benefits start ups, small
companies)
More industry donations
Tools to support higher abstraction (formal
verification, advanced assertions)
Increase interactions with System Verilog(common
TLM API’s?)
Texas Instruments

Usage Areas:





High level architectural modeling (PV/PVT)
Low level architectural/SoC modeling (CC)
Synthesis (experimental)
Internal SystemC user group meetings
Bus models, CPU models, peripheral
models, configuration, statistics, debug
Call for Improvements (TI)

SystemC has poor support for
asynchronous events



Interrups/resets/power-downs
Cooperative co-routines/threads
For full support would require every
method and every thread to add async
events to their sensitivity lists


Possible to use, but very inconvenient
Need kernel support
Conclusion




Missing features / libraries
Still in initial stage
Not for every kind of simulation
Personal impression: „Would like to use,
but...“
Thank you!
References

IEEE 1666 Standard
http://standards.ieee.org/getieee/1666/download/1666-2005.pdf

Tools


European SystemC Users Group


http://www.asic-world.com/systemc/
SystemC Community


http://en.wikipedia.org/wiki/Systemc
ASIC-World


http://www-ti.informatik.uni-tuebingen.de/~systemc/systemc.html
Wikipedia.org


http://www.asic-world.com/systemc/tools.html
http://www.systemc.org
Mentor Graphics

http://www.mentor.com/products/