[vhdl_group2] Re: [vhdl_group2] trunk: Testsystem fertig

  • From: Johannes Boch <johannes.boch@xxxxxxxx>
  • To: <vhdl_group2@xxxxxxxxxxxxx>
  • Date: Thu, 12 Feb 2009 10:35:51 +0100

Hallo Johannes,

im neuesten trunk2 sollte sich eine Datei namens "System.vhdl" befinden. Dort 
sind CPU, Mainbus und Speicher zusammengefügt.

Mein Vorschlag: Dort die "Init_Memory" einfügen, um das Testprogramm mittels 
"access_bus" in den Speicher zu schreiben. Nach Ablauf des Programmes wieder 
mittels "access_bus" den Speicher auslesen und mit dem Sollwert vergleichen.
Die entsprechenden Interface-Signale sind dort bereits vorhanden, du brauchst 
sie also nur noch "anzuzapfen".

Gruß,

Johannes

 

Original Message:

Hallo,
<br />
<br />etwas länger gedauert als geplant hat die Testschreiberei, dafür läuft 
<br />jetzt aber alles automatisch. Probiert bitte alle aus, ob bei euch die 
<br />Tests auch durchlaufen. Ich hoffe es ist kein Problem, dass das 
<br />Testskript in Perl geschrieben ist; falls doch, kann ich versuchen es 
<br />als Batch-Skript umzuschreiben.
<br />
<br />Kurzform:
<br />1. Per "perl runtests.pl" Tests durchlaufen lassen
<br />2. Per "perl runtests.pl clean" können alle Testergebnisdateien wieder 
<br />entfernt werden.
<br />
<br />
<br />Langform:
<br />"perl runtests.pl" sollte zu folgender Ausgabe bei euch führen:
<br />> Test name            | Result     | Comment             
<br />> ---------------------+------------+---------------------
<br />> tests/01-lw-add-sw   | Success    |                     
<br />> tests/02-lw-sub-sw   | Success    |                     
<br />> tests/03-bltz        | Success    |                     
<br />> tests/04-logic       | Success    |                     
<br />
<br />Es passiert folgendes: Für jede *.hex-Datei, die im tests/-Ordner ist, 
<br />werden das Programm selbst (*.hex) sowie das Soll-Speicherbild nach 
<br />Programmlauf (*.res für result) ins Stammverzeichnis kopiert und die 
<br />Simulation ausgeführt. Danach wird das tatsächliche Speicherabbild 
<br />(*.dump) per diff mit der *.res verglichen. Bei Gleichheit wird 
<br />"Success" ausgegeben, andernfalls wird das diff-Ergebnis als *.diff 
<br />abgespeichert. Damit man im Fehlerfall auch einen Anhaltspunkt hat, wird 
<br />das *.trace ebenfalls gesichert. Anschließend werden alle Dateien in den 
<br />tests-Ordner kopiert und tragen den Testnamen. Damit ihr vor dem 
<br />Herumschicken wieder Ordnung bekommt, könnt ihr mit
<br />
<br />   "perl runtest.pl clean"
<br />
<br />alle vom Testlauf erzeugten Dateien entfernen lassen, sodass wieder der 
<br />"Auslieferungszustand" hergestellt ist.
<br />
<br />Welche Funktionen momentan getestet werden:
<br />01: lw, add, sw, jr
<br />02: lw, sub, sw, jr
<br />03: lw, bltz, jr
<br />04: and, or, xor, nor (lw, sw natürlich auch)
<br />
<br />Könnt ihr mir ein wenig unter die Arme greifen und mir sagen, wo ich 
<br />anpacken muss, um mit dem Testsystem die strukturelle Beschreibung zu 
<br />testen?
<br />
<br />Viele Grüße,
<br />Johannes
<br />
<br />
<br />

-- 

Other related posts:

  • » [vhdl_group2] Re: [vhdl_group2] trunk: Testsystem fertig - Johannes Boch