Refine
Document Type
- Bachelor Thesis (6) (remove)
Has Fulltext
- yes (6)
Keywords
- RTLIL (2)
- Synthese (2)
- XML (2)
- Yosys (2)
- AST (1)
- Autonomer Roboter (1)
- Beweisrahmen (1)
- DTD (1)
- Definition (1)
- Frontend (1)
Faculty
- Fakultät 07 / Institut für Nachrichtentechnik (6) (remove)
Diese Arbeit beschäftigt sich mit der Realisierung eines Parsers, der mathematische Beweise aus „TeXmacs“ in eine zu erstellende XML-Struktur umwandelt. Die Struktur der XML-Datei wird durch eine ebenfalls zu entwickelnde DTD-Datei vorgegeben. TeXmacs ist ein WYSIWYG-Editor zum Beschreiben von mathematischen Texten. Die Arbeit findet im Rahmen der Forschungsgruppe Naproche statt. Langfristig soll das Ergebnis der Arbeit in Naproche eingesetzt werden, um mathematische Beweise besser auf ihre logischen Aussagen zu überprüfen. Zu klären ist also, ob die logische Abfolge des erfassten TeXmacs-Beweises richtig in eine XMLStruktur umgesetzt wurde und alle dokumentierten Voraussetzungen und Beweisschritte im XML-Dokument syntaktisch richtig sind. Die Anwender, die direkt in TeXmacs mit Beweisen arbeiten, sollen eine Rückmeldung erhalten. Bei einer fehlerhaften Rückmeldung soll auch die Stelle im Beweis gekennzeichnet werden, an der der Fehler aufgetreten ist. Dieser kann so schnellstmöglich korrigiert werden. Tritt keine Fehlermeldung auf, wird auch das als Information ausgegeben. Diese Bachelorarbeit befasst sich mit der Realisierung des ersten Teils: Aus einer von TeXmacs erzeugten SCM-Datei soll mit einem Java-Programm die Struktur des mathematischen Textes ermittelt werden; es soll also eine Trennung von mathematischen Formelanteilen (Formeln, Gleichungen/Ungleichungen, mathematische Symbole, usw.) und beschreibenden Texten durchgeführt werden. Diese Struktur wird mit den Regeln einer DTD in ein XML-Format so umgewandelt, dass das resultierende XML-Dokument von den nachfolgenden Modulen des Naproche-Projekts bearbeitet werden kann.
Das Ziel der vorliegenden Arbeit besteht darin, die Frage zu beantworten wie Yosys Verilog einliest und daraus RTLIL generiert. Mit der Beantwortung dieser Frage, soll die Datenstruktur RTLIL und die Verknüpfung zu einem Verilog Design besser verstanden werden. Dafür wurde das Frontend von Yosys untersucht und die Datenstruktur RTLIL näher eleuchtet. Als Ergebnis konnte festgehalten werden, dass die AstNode Datenstruktur eine wesentliche Rolle bei der Konvertierung von Verilog zu RTLIL spielt, und mit deren Hilfe beim Einlesen ein abstrakter Syntaxbaum gebildet wird. Allein der Typ des Knotens beeinflusst, wie der RTLIL Generator damit umgeht. Weiter ist die Generierung von RTLIL::Cell Objekten als erster Schritt zur Synthese zu verstehen, da sie durch Technologie Mapping reale Komponenten abbilden können
Untersuchung der Yosys Hardwaresynthese von der internen Datenstruktur RTLIL bis zur Netzliste
(2023)
Das Ziel dieser Arbeit ist die Beantwortung der Frage "Wie funktioniert Synthese?". Yosys ist ein offenes Synthesewerkzeug, welches untersucht wurde, um diese Frage zu beantworten. Yosys implementiert eine Datenstruktur RTLIL, mit der ein Entwurf in allen Synthesephasen dargestellt wird. Yosys ist modular aufgebaut, was dem Nutzer ermöglicht, das Programm zu erweitern. Die Synthese in Yosys ist auf Pässe unterteilt, die jeweils eine bestimmte Aufgabe erfüllen. Im Rahmen der Arbeit wurde die Datenstruktur und die Passes im einzelnen analysiert. Es wurde auch untersucht, wie in Yosys Erweiterungen zu implementieren sind. Die Analyse hat gezeigt, dass ein wichtiger Teil der Synthese die Umwandlung von Prozessen in eine RTL-Beschreibung darstellt. Im Rahmen der Synthese werden die, von einem Frontend vorläufig erzeugten RTL-Komponenten, umgewandelt. Der letzte Schritt der Synthese ist das Technologiemapping, welches die umgewandelten Komponente auf die verwendete Hardware anpasst.
Die Grundlage für diese Arbeit ist das opensource Roboterkettenfahrzeug SRV1 der Firma Surveyor [www-surveyor]. Im Auslieferungszustand ist es möglich, das Fahrzeug über ein Steuerungsprogramm fernzusteuern. Dies entspricht dem Funktionsumfang eines normalen ferngesteuerten Fahrzeugs, erweitert um eine Kamera, jedoch ohne jegliche Autonomie oder Intelligenz. Da das Fahrzeug auf einem embedded Board aufgebaut ist, welches über eine WLAN Verbindung verfügt, bietet es einen guten Ausgangspunkt für Erweiterungen. Ziel dieser Arbeit ist es eine Grundlage für autonome Fahrten zu schaffen. Als Betriebssystem wird uClinux, ein Linux für embedded Plattformen genutzt. Das Fahrzeug soll um einen zur Orientierung dienenden Kompass erweitert werden. Außerdem kommt ein RFID-Reader zum Einsatz, mit dessen Hilfe werden RFID-Transponder auf einer Teststrecke als künstliche Landmarken zur Positionsbestimmung genutzt. Es wird eine Software für autonome Fahrten entwickelt, die es ermöglicht, durch Verwendung der erweiterten Hardware, den Roboter eigenständig Punkte der Teststrecke anfahren zu lassen. Hierzu ist es erst notwendig alle Hardware im Betriebssystem, beispielsweise durch Treiber verfügbar zu machen.