<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Value_Change_Dump</id>
	<title>Value Change Dump - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Value_Change_Dump"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Value_Change_Dump&amp;action=history"/>
	<updated>2026-05-30T07:15:07Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Value_Change_Dump&amp;diff=1810169&amp;oldid=prev</id>
		<title>imported&gt;Tom md: HC: Entferne Kategorie:IEEE-Norm</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Value_Change_Dump&amp;diff=1810169&amp;oldid=prev"/>
		<updated>2021-03-15T09:40:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=WP:HC&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;WP:HC (Seite nicht vorhanden)&quot;&gt;HC&lt;/a&gt;: Entferne &lt;a href=&quot;/index.php/Kategorie:IEEE-Norm&quot; title=&quot;Kategorie:IEEE-Norm&quot;&gt;Kategorie:IEEE-Norm&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Value Change Dump&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;VCD&amp;#039;&amp;#039;&amp;#039;) ist ein [[ASCII]]-basiertes Format für sogenannte [[Dumpfile]]s, die zum Beispiel von einem [[Electronic Design Automation|EDA]]-Tool generiert werden. Das Standard-VCD-Format mit [[Mehrwertige Logik|vierwertiger Logik]] wurde 1995 im Zusammenhang mit der [[Verilog]]-[[Hardwarebeschreibungssprache]] als [[IEEE]]-Standard 1364–1995 verabschiedet. Eine Erweiterung des VCD-Formats sechs Jahre später in Form des IEEE-Standards 1364–2001 unterstützt auch die Aufzeichnung von Signalstärke und -richtung. Die einfache und kompakte Struktur des VCD-Formats machte es zum universellen und unumgänglichen Dateiformat auch für Nicht-Verilog-Tools, wie z.&amp;amp;nbsp;B. [[Very High Speed Integrated Circuit Hardware Description Language|VHDL]], den freien Simulator [[GHDL]] und diverse [[Kernel (Betriebssystem)|Kernel]]-[[Ablaufverfolgung|Tracer]].&lt;br /&gt;
&lt;br /&gt;
== Struktur ==&lt;br /&gt;
Die VCD-Datei besitzt einen Kopfteil (header), der einen Zeitstempel, die [[Simulation|Simulator]]-Versionsnummer und eine Zeitskala-Definition enthält. Weiter gibt es einen Variablen-Definitionsbereich und einen Werteänderungsbereich. Die Bereiche sind nicht explizit voneinander getrennt, können aber anhand der [[Schlüsselwort (Programmierung)|Schlüsselwörter]] unterschieden werden.&lt;br /&gt;
&lt;br /&gt;
Der Variablendefinitionsbereich enthält Anzeigeinformationen und die Liste der instantiierten Signale. Jeder Variable wird ein beliebiger, kompakter ASCII-Bezeichner zur Verwendung im Änderungsbereich zugewiesen. Die Anzeigetypeinstellung folgt dem Verilog-Konzept und beinhaltet die Typen &amp;#039;&amp;#039;module&amp;#039;&amp;#039;, &amp;#039;&amp;#039;task&amp;#039;&amp;#039;, &amp;#039;&amp;#039;function&amp;#039;&amp;#039; und &amp;#039;&amp;#039;fork&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Der Änderungsbereich enthält eine Serie von zeitgeordneten Werteänderungen der Signale des Simulationsmodells.&lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
VCD-[[Schlüsselwort (Programmierung)|Schlüsselwörter]] werden mit einem &amp;#039;&amp;#039;$&amp;#039;&amp;#039; markiert. Grundsätzlich leiten Schlüsselwörter eine Sektion ein, die durch das Schlüsselwort &amp;#039;&amp;#039;$end&amp;#039;&amp;#039; beendet wird.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$timescale 1 ns $end&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für eine VCD-Datei:&lt;br /&gt;
&lt;br /&gt;
 [[Datei:Gtkwave vcdExample.png|miniatur|Anzeige der Beispieldatei]]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 $timescale 1ps $end&lt;br /&gt;
 $scope module logic $end&lt;br /&gt;
 $var wire 8 # data $end&lt;br /&gt;
 $var wire 1 $ data_valid $end&lt;br /&gt;
 $var wire 1 % en $end&lt;br /&gt;
 $var wire 1 &amp;amp; rx_en $end&lt;br /&gt;
 $var wire 1 &amp;#039; tx_en $end&lt;br /&gt;
 $var wire 1 ( empty $end&lt;br /&gt;
 $var wire 1 ) underrun $end&lt;br /&gt;
 $upscope $end&lt;br /&gt;
 $enddefinitions $end&lt;br /&gt;
 #0&lt;br /&gt;
 b10000001 #&lt;br /&gt;
 0$&lt;br /&gt;
 1%&lt;br /&gt;
 0&amp;amp;&lt;br /&gt;
 1&amp;#039;&lt;br /&gt;
 0(&lt;br /&gt;
 0)&lt;br /&gt;
 #2211&lt;br /&gt;
 0&amp;#039;&lt;br /&gt;
 #2296&lt;br /&gt;
 b0 #&lt;br /&gt;
 1$&lt;br /&gt;
 #2302&lt;br /&gt;
 0$&lt;br /&gt;
 #2303&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Code oben definiert sieben Signale mittels &amp;#039;&amp;#039;$var&amp;#039;&amp;#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$var Typ Bitbreite ID Name&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die ID wird anschließend im Änderungsteil zur Kennzeichnung verwendet, der nach dem Schlüsselwort &amp;#039;&amp;#039;$enddefinitions $end&amp;#039;&amp;#039; beginnt. Der Bereich basiert auf Zeitstempeln (S), die mit &amp;#039;&amp;#039;#&amp;#039;&amp;#039; beginnen und den Simulationszeitpunkt (t) mithilfe der Skaladefinition (D) und &amp;lt;math&amp;gt;t = S \cdot D&amp;lt;/math&amp;gt; festlegen, z.&amp;amp;nbsp;B. &amp;#039;&amp;#039;D&amp;#039;&amp;#039; = 1 ns, &amp;#039;&amp;#039;S&amp;#039;&amp;#039; = 500 → &amp;#039;&amp;#039;t&amp;#039;&amp;#039; = 500 ns.&lt;br /&gt;
&lt;br /&gt;
Nach jedem Zeitstempel sind nur die Werte und das zugeordnete Signal gelistet, welche sich zu dem Zeitpunkt des Stempels ändern.&lt;br /&gt;
&lt;br /&gt;
Die Änderung wird durch folgende Zeile beschrieben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Neuer_Wert ID&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der [[Whitespace (Programmiersprache)|Leerraum]] bzw. das [[Leerzeichen]] muss allerdings weggelassen werden (vgl. Codebeispiel oben).&lt;br /&gt;
&lt;br /&gt;
Alle VCD-[[Token (Übersetzerbau)|Tokens]] werden hingegen von einem Leerraum abgegrenzt.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{Literatur&lt;br /&gt;
   |Hrsg=IEEE Computer Society&lt;br /&gt;
   |Titel=1364-2001 IEEE Standard Verilog Hardware Description Language&lt;br /&gt;
   |TitelErg=Offizieller Standard&lt;br /&gt;
   |Datum=2001&lt;br /&gt;
   |ISBN=0-7381-2826-0&lt;br /&gt;
   |Sprache=en&lt;br /&gt;
   |Online=[http://ieeexplore.ieee.org/servlet/opac?punumber=7578 ieeexplore.ieee.org]&lt;br /&gt;
   |DOI=10.1109/IEEESTD.2001.93352&lt;br /&gt;
   |Abruf=2010-08-25}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Computersimulation]]&lt;br /&gt;
[[Kategorie:Mikroelektronik]]&lt;br /&gt;
[[Kategorie:Digitaltechnik]]&lt;br /&gt;
[[Kategorie:Computer Aided Engineering]]&lt;br /&gt;
[[Kategorie:Benutzerschnittstelle]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Tom md</name></author>
	</entry>
</feed>