Global training solutions for engineers creating the world's electronics

Comprehensive Verilog

Standard Level - 4 Tage

 view dates and locations
 In English

Comprehensive Verilog® ist ein 4-tägiges Training, in dem die Anwendung der Hardwarebeschreibungssprache Verilog für PLD- und ASIC-Design vermittelt wird.

Das Kursprogramm umfasst die Sprache Verilog, das Codieren für RTL-Synthese (Register Transfer Level), Entwickeln von Text-Fixtures und die Arbeit mit Verilog-Tools. Darüber hinaus wird in SystemVerilog eingeführt.

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.

Zielgruppe

  • Ingenieure, die kurz vor ihrem ersten Verilog-Designprojekt stehen
  • Hardwaredesigner, die bereits einige Praxiserfahrungen im Einsatz von Verilog gesammelt haben, die ihre Kenntnisse jedoch in einer Schulungsumgebung mit den Tools ihrer Wahl festigen und erweitern möchten
  • Designer, die VHDL beherrschen, die sich jedoch in der Anwendung von und Interaktion mit Verilog HDL ebenfalls die entsprechenden Fähigkeiten aneignen müssen

Kursinhalte

  • Verilog im FPGA/ASIC-Design-Flow
  • Einsatz der Sprache Verilog für Hardwaredesign und Logiksynthese
  • Schreiben umfassender Verilog-Text-Fixtures zur Designprüfung
  • Vermeiden häufiger Fehler beim Codieren von Verilog für die Synthese

Voraussetzungen

Die Kursteilnehmer müssen am Kurs „Essential Digital Design Techniques“ (oder einem gleichwertigen Kurs) teilgenommen haben oder über gute Grundkenntnisse in digitalem Hardwaredesign verfügen. Vorkenntnisse in VHDL oder Erfahrungen mit Softwaresprachen sind nicht erforderlich.

Kursunterlagen

Die Doulos Kursunterlagen sind für ihren umfassenden Informationsgehalt und die äußerst benutzerfreundliche Präsentation allgemein bekannt. In ihrem Aufbau, Inhalt und ihrer Themenbehandlung sind sie einzigartig im HDL-Schulungsbereich, was sie zu begehrten Nachschlagewerken hat werden lassen. In den Kursgebühren sind enthalten:
  • Kursskripte mit vollständigem Stichwortverzeichnis, die ein komplettes Referenzhandbuch darstellen
  • Ein Arbeitsbuch mit nützlichen Beispielen zur Unterstützung bei der Wissensanwendung
  • Der ‚Doulos Golden Reference Guide‘ für Verilog-Sprache, -Syntax, -Semantik und Tipps
  • Tool Tour Guides (zur Unterstützung der Tools und Technologien Ihrer Wahl)


Structure and Content

Introduction to Verilog

What is Verilog? • Scope of Verilog • Design flow for ASICs, CPLDs and FPGAs • Introduction to synthesis • Synchronous design • Timing constraints • Verilog books and internet resources

Modules

Modules & ports • Continuous assignments • Wire assignments • Comments • Names • Nets and strengths • Design hierarchy • Module instances • Primitive instances • Text fixtures • $monitor • Initial blocks • Variables

Nets and Values

Primitives • Wire assignments • Net types • Drive strengths • Logic values • Vectors • Numbers • Truncation • Signed numbers

Formatting, Timescale and Always

Output formatting • Timescales • Always blocks • $stop and $finish • Using wires and registers correctly

Always Blocks

RTL always blocks • Event control • Combinational logic sensitivity • If statements • Begin-end • Incomplete assignment and latches • FPGAs and latches • Unknown and don’t care • Conditional operator • Tristates

Procedural Statements

Case • casez • casex • full_case • parellel_case • For, repeat, while and forever loops • integers • Self-disabling blocks • Combinational logic synthesis

Clocks and Flipflops

Synthesising flip-flops & latches • Avoiding simulation race hazards • Nonblocking assignments • Asynchronous & synchronous resets • Clock enables • Synthesizable always templates • RTL synthesis technology • Inferring flip-flops • Making best use of RTL synthesis

Operators and Parameters

Bitwise, reduction, logical and equality operators • Part selects • Concatenation & replication • Shift registers • Conditional compilation • include • Parameters • localparam • Hierarchical names

FSM Synthesis

State transition diagrams • State machine architectures • FSM timing • Coding FSMs in Verilog • State encoding • One-hot state machines • Unreachable states & safe design practices

Arithmetic and Synthesis

Arithmetic operators and their synthesis • Vector arithmetic • Bit-length of expressions • Signed and unsigned values • Adder architectures • WYSIWYG arithmetic synthesis • Arithmetic optimization • Resource sharing

Tasks, Functions and Memories

Tasks • Task argument passing • Static vs automatic storage • Synthesis of tasks • Functions • Verilog memories • RAM modelling and synthesis • Inference vs instantiation • $readmemb and $readmemh • generate for/if/case •

File I/O

Writing to files • $display • $strobe • $write • $monitor • Opening a closing files • File descriptors • Reading from files • $fscanf • Raw file I/O • $fgets • $fgetc • $fseek • $ftell

Functional Simulation

Design flow through to P&R • Gate-level simulation • Back annotation using SDF.• PLD and ASIC design flow • Verilog libraries • Command-line options • Test benches • Comparing actual vs expected outputs • Behavioural modelling

Behavioural Verilog

Algorithmic coding • real • event control • wait • Named events • Fork & join • External disable • Intra-assignment timing controls • Overcoming clock skew • Continuous procedural assignment • defparam • Hierarchical names

Specialised Topics

Structural Verilog • Using built-in primitives • Gate, net & path delays • Specify blocks • State-dependent delays • Pulse rejection • Cell library modelling • library • liblist • config • The Verilog PLI • PLI applications • PLI routines • The PLI in practice • The VPI

SystemVerilog

Overview of SystemVerilog • Status of SystemVerilog • RTL enhancements • Interfaces • Assertions • Testbenches • C interface

Verilog® is a registered trade mark of Cadence Design Systems Inc
Course Dates:
May 28th, 2019 Ringwood, UK   Enquire
June 3rd, 2019 San Jose, CA   Enquire
July 2nd, 2019 Munich, DE   Enquire
October 7th, 2019 San Jose, CA   Enquire
October 21st, 2019 Ringwood, UK   Enquire
November 5th, 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 »


Price on request


 Back to top

Upcoming Live Webinars

Image 1

What is an SBOM and why should I care?

Wednesday December 11 2024

1 hour session (All Time Zones)

In this webinar we are going to explain in as few words as possible what a Software Bill Of Materials (SBOM) is and why we need to know about them in embedded systems development.

Register Now

Image 1

The Keys to SystemC & TLM-2.0

Friday December 13 2024

1 hour session (All Time Zones)

This webinar is aimed at hands-on hardware or software engineers who might know Verilog or C but have no previous experience of SystemC. It will explain what you need to know to be successful with SystemC.

Register Now

Image 1

Designing with AMD Kria SOMs

Tuesday December 17 2024

1 hour session (All Time Zones)

This webinar will walk through the design process for using AMD Kria SOMs, including the use of Vivado and Vitis.

Register Now

Image 1

C/C++ Memory Management: Design and Debugging

Wednesday December 18 2024

1 hour session (All Time Zones)

This webinar explores best practices for avoiding memory issues in design and debugging memory usage issues in C and C++.

Register Now