Global training solutions for engineers creating the world's electronics
Menu

SystemC Modeling Using TLM-2.0

Intermediate Level - 3 Tage

view dates and locations
In English

Wie Viel SystemC Training brauchen Sie? Bitte sehen Sie sich das Video an!

SystemC Modeling using TLM-2.0 ist der am geltenden Branchenstandard orientierte 3-tägige Trainingskurs zur endgültigen Version des im Juni 2008 veröffentlichten OSCI TLM-2.0 Standards für Transaction-Level Modelling (TLM). Entwickelt wurde der Kurs von den Autoren des IEEE 1666 Referenzhandbuchs zu SystemC und des Benutzerhandbuchs TLM-2.0.

Aufbauend auf dem Doulos Kurs Comprehensive SystemC werden Entwickler in diesem Training auf Praxisprojekte mit Transaction-Level Modelling mit SystemC und TLM-2.0 vorbereitet. Der OSCI TLM-2.0 Standard ermöglicht die Interoperabilität zwischen Transaction-Level -Modellen aus unterschiedlichen Quellen ohne Abstriche bei der hohen Simulationsgeschwindigkeit, die für virtuelle Prototypen benötigt wird. Die Features von TLM-2.0 werden den Kursteilnehmern von Experten erläutert, die selbst direkt an der Entwicklung des OSCI-Standards beteiligt waren. Mit der Kodierung unterschiedlicher gängiger Anwendungsfälle kommt auch der praktische Aspekt nicht zu kurz.

Als Grundlage für Ihre ersten Versuche und Projekte werden vollständige Arbeitsbeispiele zur Verfügung gestellt.

Da Doulos herstellerunabhängig ist, können die Kursteilnehmer in der Regel ihre Designtools in den Workshops frei wählen. Die Workshops nehmen ca. 50% der Unterrichtszeit ein und basieren auf sorgfältig ausgearbeiteten übungen, die die Kursteilnehmer in ihren neu erworbenen Kenntnissen herausfordern und das Erlernte untermauern.

Doulos engagiert sich seit 2000 im Bereich SystemC-basierte Methoden und nimmt damit eine weltweit führende Rolle im toolübergreifenden Know-how für SystemC ein. Wir haben in über 170 Unternehmen weltweit Trainingskurse für SystemC abgehalten und Entwickler bei ihrer Projektarbeit unterstützt - bis hin zur aktiven Beteiligung an der Methoden- und Toolentwicklung in Unternehmen wie Arm, Cadence, CoWare, Mentor Graphics und Synopsys.

Zielgruppe

Entwickler von Hardware, Software und Systemen mit guten Grundkenntnissen in C++ und SystemC, die ihre Arbeit am OSCI TLM-2.0 Standard ausrichten möchten

Kursinhalt

  • SystemC für effektive Transaction-Level Modelling
  • Optimale Verwendungsweise der Features aus dem OSCI TLM-2.0 Standard
  • TLM-2.0 Interfaces, Sockets und Payload für schnelle, interoperable Modelle
  • Abwägung von Simulationsgeschwindigkeit und Genauigkeit bei Wahrung der Interoperabilität
  • Funktionsmodellierung gängiger Bus-Protokolle

 

Voraussetzungen

Der effektive Einsatz von SystemC setzt drei Lernschritte voraus:

  • Schritt 1
    Kenntnisse zu C++, erworben durch die Teilnahme an Essential C++ (oder einem gleichwertigen Kurs)
  • Schritt 2
    Kenntnisse zu SystemC, erworben durch die Teilnahme an Fundamentals of SystemC (oder einem gleichwertigen Kurs)
    Comprehensive SystemC comprises Essential C++ and Fundamentals of SystemC
  • Schritt 3
    Kenntnisse zur Transaction-Level Modelling, erworben durch die Teilnahme an SystemC Modeling Using TLM-2.0


Entwickler von Hardware oder embedded Software, die bislang eher mit Verilog, VHDL oder C gearbeitet haben, müssen in der Regel innerhalb einiger Wochen oder Monate sowohl den Kurs Comprehensive SystemC (mit Essential C++ und Fundamentals of SystemC) als auch den Kurs SystemC Modeling using TLM-2.0 belegen

Entwickler mit ausgezeichneten Kenntnissen in C++ (oder einer anderen objektorientierten Programmiersprache) können möglicherweise einige Lernschritte überspringen. Wenden Sie sich bitte direkt an Doulos, um Ihren Erfahrungs- und Kenntnisstand zu erörtern und einzustufen.

Trainingsunterlagen

Die Doulos Trainingsunterlagen sind allgemein für ihren umfassenden Informationsgehalt und die benutzerfreundliche Präsentation bekannt. In Aufbau, Inhalt und Themenbehandlung sind sie einzigartig im EDA Trainingsbereich, was sie auch zu begehrten Nachschlagewerken gemacht hat. In den Kursgebühren sind enthalten:

  • Kursskripte mit vollständigem Stichwortverzeichnis, die ein umfassendes Referenzhandbuch darstellen
  • Ein Arbeitsbuch mit vielen praktischen Beispielen und Lösungen aus der Praxis als Unterstützung bei der Wissensanwendung
  • Doulos SystemC Golden Reference Guide für Sprache, Syntax, Semantik und Tipps

 

Struktur und Inhalte

Tag 1
Introduction

Role of SystemC and TLM • Evolution of TLM within OSCI • TLM requirements and use cases • Coding styles • TLM-2.0 structure and architecture • Interoperability layer • Utilities • The OSCI TLM-2.0 release kit and documentation

TLM-2.0 Architecture

Initiators, targets, and interconnect • Initiator and target sockets • Pass-by-reference • Forward and backward paths • TLM-2 core interfaces • Blocking versus non-blocking transport • Standard socket classes • Socket binding • Introduction to the generic payload and base protocol

Blocking Transport Interface

Blocking transport interface • Timing annotation • Temporal decoupling • Quantum keeper • Global quantum • Synchronization-on-demand • Loosely-timed coding style

Generic Payload

Generic payload attributes • Mutability • Command, address and data attributes • Byte enables • Streaming • Response status • Generic payload memory management

Tag 2

Non-blocking Transport Interface

Non-blocking transport interfaces • tlm_sync_enum • Forward, backward and return paths • Phases • AT timing model • Base protocol rules • Early completion • Pre-emption • AT timing annotation • Payload event queues • Approximately-timed coding style • Request and response exclusion rules • Back-pressure • AT interconnect

Convenience Sockets

Simple sockets • b/nb conversion • Tagged sockets • Multi-sockets • Coding interconnects and address translation • Hierarchical binding • Passthrough sockets

Direct Memory and Debug Transport Interface

Direct memory versus debug interfaces • Direct memory interface • DMI transaction type • DMI descriptor • Rules for granting and denying DMI • Generic payload DMI hint • Address translation for DMI transactions • Debug transport interface • Debug transport transaction type

Tag 3

Extensions

Kinds of extension · The extension mechanism • Generic payload extension methods • Extension base class • Low-level extension programming • deep_copy_from • update_extensions_from • Extension memory management • Auto extensions • Sticky extensions • Memory-manager-agnostic extensions • Instance-specific extensions

Endianness

TLM-2 endianness principles • Organisation of the data array • Mixed-endian systems • Address alignment issues • Part-word transfers • Width conversions • Endianness helper functions • Endianness conversion functions • Arithmetic mode • Byte order mode • Tuning for simulation speed

Protocol types

tlm_phase • Extended phases • Ignorable phases • Protocol types • tlm_base_protocol_types • Defining new traits classes • Guidelines for protocol creation • Bridges • Bus snooping using DMI extensions

Analysis ports

Analysis interface • Analysis port • Subscribers • When to deep-copy transaction objects

Other examples

Source code examples to use in your own projects • AT initiator types • AT target types • Permutations of the forward, backward and return paths • Full AT interconnect implementation • Implementing exclusion rules and transaction queuing • Mixed AT/LT components • Base protocol checker • Atomic operations and transaction locking using extensions

Course Dates:
July 22nd, 2019 Ringwood, UK   Enquire
August 12th, 2019 San Jose, CA   Enquire
October 8th, 2019 Munich, DE   Enquire
indicates CONFIRMED TO RUN courses.

Looking for team-based training, or other locations?
Complete an on-line form and a Doulos representative will get back to you »

 

Upcoming Live Webinars

Image 1

Getting Started with UVM

Wednesday October 16 2024

1 hour session (All Time Zones)

This webinar will introduce you to the Universal Verification Methodology. The aim is to provide you with a base to start learning the rest of UVM, starting at why you would want to use it and the key components of a UVM test bench.

Register Now

Image 1

Deep Learning with FPGAs

Friday October 18 2024

1 hour session (All Time Zones)

This webinar examines Deep Learning with particular emphasis on the use of FPGAs as inference engines for convolutional neural networks.

Register Now

Image 1

C/C++ Memory Management: Heap Memory

Wednesday October 30 2024

1 hour session (All Time Zones)

This webinar explores the key features of C++ and shows where they provide useful advantages over traditional C approaches while producing code with comparable size and performance.

Register Now

Image 1

Clock Domain Crossing

Wednesday November 06 2024

1 hour session (All Time Zones)

This webinar discusses situations in which CDC problems can occur and more importantly presents solutions for the most frequent scenarios.

Register Now