{"id":627,"date":"2015-10-17T15:16:39","date_gmt":"2015-10-17T15:16:39","guid":{"rendered":"http:\/\/coolt.ch\/notizen\/?p=627"},"modified":"2015-11-12T15:43:54","modified_gmt":"2015-11-12T15:43:54","slug":"testbench-ausfuehren","status":"publish","type":"post","link":"https:\/\/coolt.ch\/notizen\/testbench-ausfuehren\/","title":{"rendered":"Testbench compile.do ausf\u00fchren"},"content":{"rendered":"<p>Die Testbench wird am einfachsten \u00fcber die <strong>Konsole<\/strong> \u00fcber das Script gestartet. (Mit <em>tab<\/em> selbst\u00e4ndig vervollst\u00e4ndigen)<\/p>\n<pre class=\"lang:sh decode:true\">QuestaSim&gt;   do &lt;pfad&gt;.\/compile_&lt;projekt&gt;.do<\/pre>\n<pre class=\"lang:sh decode:true\">QuestaSim&gt;   do ..\/simulation\/script\/compile_&lt;projekt&gt;.do<\/pre>\n<p><strong><br \/>\nScript <\/strong><br \/>\nDas Script <em>compile.do<\/em> , gibt den Befehl zum Einbinden der Bibliothek, zum Kompilieren der Dateien und startet schlussendlich die testbench.<br \/>\nDas Script liegt im <a href=\"http:\/\/coolt.ch\/notizen\/testbench\/\">Ordner Work<\/a> . Alle Pfade bezieht sich vom Ort des Scripts aus.<\/p>\n<pre class=\"lang:sh decode:true\"># create work library\r\nvlib work\r\n\r\n# compile files\r\nvcom -<strong>2008<\/strong> -explicit -work work ..\/..\/source\/counter.vhdl\r\nvcom -2008 -explicit -work work &lt;pfad&gt;\/componente_1.vhd\r\nvcom -2008 -explicit -work work &lt;pfad&gt;\/top_level.vhd\r\n\r\n# compile testbench\r\nvcom -2008 -explicit -work work &lt;pfad&gt;\/testbench_top_level.vhd\r\n\r\n# <strong>run the simulation<\/strong>\r\n<strong>vsim<\/strong> -t 1ns -lib work <strong>work.testbench_entity<\/strong>\r\n\r\ndo ..\/scripts\/wave_projekt.do\r\n\r\nrun 3000.0 ns<\/pre>\n<p>Die <strong>Reihenfolge<\/strong> der zu kompilierenden Dateien <strong>spielt eine Rolle<\/strong>:<br \/>\n&#8211; Zuerst die Bibliotheken und Packete<br \/>\n&#8211; Dann VHDL: tiefstes Level (spezfischste Komponente)<br \/>\n&#8211; Dann VHDL: h\u00f6heres Level (Zusammenf\u00fcgender Block)<br \/>\n&#8211; Am Schluss: Top-Level<br \/>\n&#8211; Testbench<\/p>\n<p>Beim Kompilieren spielt die Version eine Rolle. Gebraucht man process(all), so wird mit der Version 2008 kompiliert. F\u00fcr die std_textio-Bibliothek braucht man oft 2002, damit man keine Probleme der Doppeldefinition erh\u00e4lt.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Testbench wird am einfachsten \u00fcber die Konsole \u00fcber das Script gestartet. (Mit tab selbst\u00e4ndig vervollst\u00e4ndigen) QuestaSim&gt; do &lt;pfad&gt;.\/compile_&lt;projekt&gt;.do QuestaSim&gt; do ..\/simulation\/script\/compile_&lt;projekt&gt;.do Script Das Script compile.do , gibt den Befehl zum Einbinden der Bibliothek, zum Kompilieren der Dateien und startet schlussendlich die testbench. Das Script liegt im Ordner Work . Alle Pfade bezieht sich vom &hellip; <a href=\"https:\/\/coolt.ch\/notizen\/testbench-ausfuehren\/\" class=\"more-link\"><span class=\"screen-reader-text\">Testbench compile.do ausf\u00fchren<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[60,59],"tags":[],"_links":{"self":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts\/627"}],"collection":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/comments?post=627"}],"version-history":[{"count":14,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts\/627\/revisions"}],"predecessor-version":[{"id":936,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts\/627\/revisions\/936"}],"wp:attachment":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/media?parent=627"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/categories?post=627"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/tags?post=627"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}