[vhdl_group2] Re: trunk: Testsystem fertig

  • From: Christoph Eisner <chr.eisner@xxxxxx>
  • To: vhdl_group2@xxxxxxxxxxxxx
  • Date: Thu, 12 Feb 2009 15:29:23 +0100

Seh ich genauso... Ob da jetzt ein zwei Befehle mehr oder weniger implementiert sind ist ziemlich egal...

Solange die funktionieren, die wir implementiert haben.
Wichtig ist nur, das die strukturelle Implementierung läuft.
Wir sollten uns noch Gedanken machen, wie wir das testen...
Können wir das alte Testsystem nicht irgendwie auf das neue System umbauen?
Gibts eine Möglichkeit, wie wir den Speicher laden?


LG Christoph

Am 12.02.2009 um 13:56 schrieb Johannes Boch:

Hallo,

meiner Ansicht nach ist die strukturelle Implementation entscheident, bin mir da aber nicht sicher. Aus zeitlichen Gründen sollten wir aber zusehen, diese möglichst schnell fertig zu bekommen, d.h. in den trunk bräuchtest du keine Energie mher zu stecken.

Tom, Christoph, was sagt ihr dazu?


Johannes

Original Message:

Hi Johannes,
<br />
<br />ich werd am WE die beiden Sachen verheiraten. Soll ich noch weitere <br />Energie in die Tests für trunk/ stecken, oder wird der nicht mehr weiter <br />gebraucht? Mir ist nämlich aufgefallen, dass noch einige opcodes (v.a. <br />branch-Befehle) nicht implementiert sind. Müssen wir die noch einbauen
<br />oder reicht es, wenn am Ende die strukturelle Beschreibung die
<br />geforderten Features hat?
<br />
<br />Viele Grüße,
<br />Johannes
<br />
<br />
<br />-------- Original Message  --------
<br />Subject: [vhdl_group2] Re: [vhdl_group2] trunk: Testsystem fertig
<br />From: Johannes Boch
<br />To: vhdl_group2@xxxxxxxxxxxxx
<br />Date: 12.02.2009 10:35
<br />
<br />> Hallo Johannes,
<br />>
<br />> im neuesten trunk2 sollte sich eine Datei namens "System.vhdl" befinden. Dort sind CPU, Mainbus und Speicher zusammengefügt.
<br />>
<br />> 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. <br />> Die entsprechenden Interface-Signale sind dort bereits vorhanden, du brauchst sie also nur noch "anzuzapfen".
<br />>
<br />> Gruß,
<br />>
<br />> Johannes
<br />>
<br />>
<br />>
<br />> Original Message:
<br />>
<br />> Hallo,
<br />> <br />
<br />> <br />etwas länger gedauert als geplant hat die Testschreiberei, dafür läuft <br />> <br />jetzt aber alles automatisch. Probiert bitte alle aus, ob bei euch die <br />> <br />Tests auch durchlaufen. Ich hoffe es ist kein Problem, dass das <br />> <br />Testskript in Perl geschrieben ist; falls doch, kann ich versuchen es
<br />> <br />als Batch-Skript umzuschreiben.
<br />> <br />
<br />> <br />Kurzform:
<br />> <br />1. Per "perl runtests.pl" Tests durchlaufen lassen
<br />> <br />2. Per "perl runtests.pl clean" können alle Testergebnisdateien wieder
<br />> <br />entfernt werden.
<br />> <br />
<br />> <br />
<br />> <br />Langform:
<br />> <br />"perl runtests.pl" sollte zu folgender Ausgabe bei euch führen:
<br />> <br />> Test name            | Result     | Comment
<br />> <br />> ---------------------+------------ +---------------------
<br />> <br />> tests/01-lw-add-sw   | Success    |
<br />> <br />> tests/02-lw-sub-sw   | Success    |
<br />> <br />> tests/03-bltz        | Success    |
<br />> <br />> tests/04-logic       | Success    |
<br />> <br />
<br />> <br />Es passiert folgendes: Für jede *.hex-Datei, die im tests/-Ordner ist, <br />> <br />werden das Programm selbst (*.hex) sowie das Soll- Speicherbild nach <br />> <br />Programmlauf (*.res für result) ins Stammverzeichnis kopiert und die <br />> <br />Simulation ausgeführt. Danach wird das tatsächliche Speicherabbild <br />> <br />(*.dump) per diff mit der *.res verglichen. Bei Gleichheit wird <br />> <br />"Success" ausgegeben, andernfalls wird das diff- Ergebnis als *.diff <br />> <br />abgespeichert. Damit man im Fehlerfall auch einen Anhaltspunkt hat, wird <br />> <br />das *.trace ebenfalls gesichert. Anschließend werden alle Dateien in den <br />> <br />tests-Ordner kopiert und tragen den Testnamen. Damit ihr vor dem
<br />> <br />Herumschicken wieder Ordnung bekommt, könnt ihr mit
<br />> <br />
<br />> <br />   "perl runtest.pl clean"
<br />> <br />
<br />> <br />alle vom Testlauf erzeugten Dateien entfernen lassen, sodass wieder der
<br />> <br />"Auslieferungszustand" hergestellt ist.
<br />> <br />
<br />> <br />Welche Funktionen momentan getestet werden:
<br />> <br />01: lw, add, sw, jr
<br />> <br />02: lw, sub, sw, jr
<br />> <br />03: lw, bltz, jr
<br />> <br />04: and, or, xor, nor (lw, sw natürlich auch)
<br />> <br />
<br />> <br />Könnt ihr mir ein wenig unter die Arme greifen und mir sagen, wo ich <br />> <br />anpacken muss, um mit dem Testsystem die strukturelle Beschreibung zu
<br />> <br />testen?
<br />> <br />
<br />> <br />Viele Grüße,
<br />> <br />Johannes
<br />> <br />
<br />> <br />
<br />> <br />
<br />>
<br />
<br />
<br />

--

Christoph Eisner

Am Müllnerberg 17
83129 Höslwang

Tel.: 08055/969004
Mobil: 0176/63398849


Other related posts: