10 research outputs found

    Ein Kalkül für die Formale Schaltungssynthese

    Get PDF

    Das FPGA-Entwicklungssystem CHDL

    Get PDF
    In dieser Arbeit wurde das Konzept der C++-basierten Hardwarebeschreibung für Field Programmable Gate Arrays (FPGAs) weiterentwickelt und optimiert. Ergebnis ist ein homogenes System, das eine deutlich verbesserte Unterstützung für FPGA-Koprozessoren bietet als bisher verfügbare Werkzeuge: Das FPGA-Entwicklungssystem CHDL. CHDL integriert mehrere parallel einsetzbare Beschreibungsebenen von der detaillierten strukturellen Spezifikation über Zustandsmaschinen bis hin zur Hochsprachenbeschreibung. Die Simulation kann durch Nachbilden der Hardwareumgebung mittels C++-Funktionen das gesamte zu untersuchende System umfassen. Auch die Softwarekomponente des FPGA-Koprozessors ist in die Simulation einbezogen. Zusätzlich wird die Anwendung moderner Debugging-Verfahren wie Readback und partielle Rekonfiguration unterstützt. Die Ausgabe der Netzlisten erfolgt direkt im XNF- oder EDIF-Format. Beim Einsatz von CHDL muß der Entwickler nur eine einzige Sprache beherrschen, um Anwendungen für FPGA-Koprozessoren zu implementieren: C++. Ein handelsüblicher C++-Kompiler sowie die Place&Route-Software des FPGA-Herstellers reichen aus, um mit CHDL FPGA-Anwendungen zu entwickeln. Es werden keine weiteren Werkzeuge benötigt, insbesondere keine VHDL-Kompiler

    Effizienter Entwurfsfluss durch neue Verfahren der Logiksynthese und Technologieabbildung von VHDL-Hardwarebeschreibungen

    Get PDF
    Neben der tatsächlichen Leistungsfähigkeit von Synthesewerkzeugen hinsichtlich Synthesegeschwindigkeit und Güte der produzierten Ergebnisse ist auch die durch den Benutzer notwendige Interaktion zur Erzeugung eines befriedigenden Produktes ein wichtiger Faktor bei der Frage, wie schnell eine vorgegebene Aufgabe umgesetzt werden kann (Time to Market). Zwei grundlegende Designschwächen bestehender Synthesewerkzeuge werden untersucht, welche eine permanente Aufmerksamkeit seitens des Entwicklers erfordern. Die erste Designschwäche betrifft die automatische Logiksynthese. Sie kann zu einem unterschiedlichen Verhalten der generierten Schaltung im Vergleich zu einer vorher durchgeführten Simulation führen. Diese Synthesefehler sind oft nur schwer zu erkennen. Die Vermeidung solcher Fehler seitens des Entwicklers ist nur bei der strengen Einhaltung eines gegebenen Coding-Styles möglich. Dieser wird von den meisten Werkzeugen nur oberflächlich geprüft und verkompliziert zusätzlich die Beschreibung bestimmter Baugruppen erheblich. Es werden die Ursachen für dieses Verhalten beschrieben und ein alternatives vom Coding-Style unabhängiges Logiksyntheseverfahren "SibaS" (Simulation-based-Synthesis) vorgestellt. Dieses Verfahren verwendet, insbesondere bei der Synthese von sequentiellen Schaltungen, einen anderen Ansatz als aktuelle VHDL-Syntheseverfahren. Im Gegensatz zu diesen wird dabei nicht versucht, aus der Struktur der beschriebenen Schaltung auf den Schaltungstyp zu schließen, stattdessen wird die zu übersetzende Beschreibung einer speziellen Simulation unterworfen und anhand der Ergebnisse eine entsprechende Schaltung generiert. Die zweite Designschwäche betrifft die Schnittstelle zwischen Logiksynthese und Technologieabbildung. Die Verwendung von VHDL an dieser Stelle erlaubt zwar die beliebige Kombination von Werkzeugen, führt aber zum Verlust abstrakter Designinformation, wie z. B. von arithmetischen Strukturen, was durch den Einsatz zusätzlicher Werkzeuge und damit verbundener Entwicklungszeit ausgeglichen werden muss. Die Integration von Logiksynthese und Technologieabbildung ermöglicht es, eine neue Schnittstelle "A-RTL" (Arithmetic-RTL) zu schaffen, um diese abstrakten Informationen zu bewahren und innerhalb der Technologieabbildung "ALTeM" (Arithmetic and Logic Technology Mapping) zu nutzen. Die entwickelten Verfahren wurden innerhalb einer beispielhaften Implementierung eines kompletten Synthesewerkzeugs "Square-Dance" integriert und untersucht. Im Vergleich zu den verfügbaren VHDL-Synthesewerkzeugen zeichnet sich Square-Dance durch eine fehlerfreie Synthese, unabhängig vom verwendeten Coding-Style, und die Möglichkeit der unmittelbaren Generierung effizienter arithmetischer Strukturen aus

    Untersuchungen zur Kostenoptimierung für Hardware-Emulatoren durch Anwendung von Methoden der partiellen Laufzeitrekonfiguration

    Get PDF
    Der vorliegende Band der wissenschaftlichen Schriftenreihe Eingebettete Selbstorganisierende Systeme widmet sich der Optimierung von Hardware Emulatoren durch die Anwendung von Methoden der partiellen Laufzeitrekonfiguration. An aktuelle Schaltkreis- und Systementwürfe werden zunehmend divergente Anforderungen gestellt. Einer sehr kurzen Entwicklungszeit für eine schnelle Markteinführung steht, um teure und aufwändige Re-Desings zu verhindern, eine möglichst umfangreiche Testabdeckung des Entwurfs gegenüber. Um die Zeit für die Tests zu reduzieren, kommen überwiegend FPGA-basierte HW-Emulatoren zum Einsatz. Durch den Einfluss der steigenden Komplexität aktueller Entwürfe auf die Emulator-Plattform reduziert sich jedoch signifikant die Performance der Emulatoren. Die in Emulatoren eingesetzten FPGAs sind aber zunehmend partiell zur Laufzeit rekonfigurierbar. Der in der vorliegenden Arbeit umgesetzte Ansatz behandelt die Anwendung von Methoden der Laufzeitrekonfiguration auf dem Gebiet der Hardware-Emulation. Dafür ist zunächst eine Partitionierung des zu testenden Entwurfs in möglichst funktional unabhängige Systemteile notwendig. Für eine optimierte und ressourceneffiziente Platzierung der einzelnen HW-Module während der Emulation, ist ein ebenfalls auf dem FPGA platziertes Kommunikationsnetzwerk implementiert. Der vorgestellte Ansatz wird an verschiedenen Beispielen anschaulich illustriert. So kann der Leser die Mächtigkeit der entwickelten Methodik nachvollziehen und wird motiviert, das Verfahren auch auf weitere Anwendungsfälle zu übertragen.Current circuit and system designs consist a lot of gate numbers and divergent requirements. In contrast to a short development and time to market schedule, the needs for perfect test coverage and quality are rising. One approach to cover this problem is the FPGA based functional test of electronic circuits. State of the art FPGA platforms doesn't consist enough gates to support fully custom designs. The thesis catches this problem and gives some approaches to use partial dynamic reconfiguration to solve the size problem. A fully automated design flow demonstrates partial partitioning of designs, modifications to use dynamic reconfiguration and its schedule. At the end of the work, some examples demonstrates the power of the approach

    Preemptive Multitasking auf FPGA-Prozessoren

    Get PDF
    In dieser Arbeit wird die Umsetzung eines multitaskingfähigen Betriebssystems für FPGA-Prozessoren vorgestellt. Mit diesem Betriebssystem ist es möglich, die Resource FPGA-Prozessor durch mehrere unabhängige Anwendungen gleichzeitig zu nutzen. Der wesentliche Teil der Arbeit beschäftigt sich mit der schnellen Zustandsermittlung einer Schaltung auf dem FPGA-Baustein und zugleich mit der schnellen Zustandsrekonstruktion bei erneuter Ausführung der Schaltung auf dem FPGA-Prozessor. Basierend auf diesen grundlegenden Funktionen ist ein Betriebssystem entstanden, das sowohl effektiv als auch flexibel die Verarbeitung mehrerer unabhängiger Anwendungen auf verschiedenen FPGA-Prozessoren ermöglicht. Zur weiteren Steigerung der Leistungsfähigkeit wurde im Rahmen der Arbeit ein spezieller multitaskingunterstützender FPGA-Prozessor erstellt, der durch seinen Aufbau die Prozesswechselzeiten auf ein Minimum reduziert. Durch den neuartigen Aufbau dieses FPGA-Prozessors kann die Ausführung der Anwendungen nach neuen Modellen erfolgen, die durch parallel arbeitende Schritte den FPGA-Prozessor effektiver nutzen

    Ressourceneffiziente Hardware-Software-Kombinationen für Kryptographie mit elliptischen Kurven

    Get PDF
    Puttmann C. Ressourceneffiziente Hardware-Software-Kombinationen für Kryptographie mit elliptischen Kurven. Bielefeld: Universität Bielefeld; 2014.In der heutigen Informationsgesellschaft spielt die sichere Übertragung von elektronischen Daten eine immer wichtigere Rolle. Die hierfür eingesetzten Endgeräte beschränken sich mittlerweile nicht mehr auf klassische, stationäre Computer, sondern es setzen zunehmend mobile Alltagsgegenstände (z.B. Smartphone oder Reisepass) eine sichere Datenübertragung zwingend voraus. Die Anforderungen bezüglich der Ressourcen einer Hardware-Software-Kombination variieren dabei für verschiedene Anwendungsszenarien sehr stark. Kryptographie auf Basis von elliptischen Kurven stellt eine attraktive Alternative zu etablierten asymmetrischen Verfahren dar und wird vermehrt eingesetzt, um sicherheitskritische Daten zu ver- bzw. entschlüsseln sowie deren Integrität und Authentizität sicherzustellen. Im Rahmen dieser Arbeit werden, am Beispiel von Algorithmen für die Kryptographie mit elliptischen Kurven, verschiedene Methoden vorgestellt, um ressourceneffiziente Hardware-Software-Kombinationen zu entwickeln. Es wird eine automatisierte Testumgebung vorgestellt, welche die systematische Entwicklung von ressourceneffizienten Hardware-Software-Kombinationen ermöglicht. Um verschiedene Implementierungen im Hinblick auf ein spezielles Anwendungsszenario miteinander vergleichen zu können, wird eine allgemeine Bewertungsmetrik eingeführt, welche die drei wesentlichen Parameter (Chipfläche, Verlustleistung, Ausführungsdauer) des Entwurfsraumes einer ASIC-Entwicklung berücksichtigt. Basierend auf einer hierarchisch entwickelten, skalierbaren Systemarchitektur wird eine Entwurfsraumexploration für zwei exemplarische Anwendungsszenarien durchgeführt. Mit den angewandten Konzepten der Instruktionssatzerweiterung, der Parallelisierung sowie eines Coprozessor-Ansatzes wird die Ressourceneffizienz auf unterschiedlichen Hierarchieebenen der zugrundeliegenden Systemarchitektur anwendungsspezifisch optimiert. Die Ergebnisse werden mit Hilfe einer FPGA-basierten Entwicklungsumgebung prototypisch evaluiert sowie durch eine ASIC-Realisierung in einer 65-nm-CMOS-Standardzellentechnologie praktisch belegt

    Dynamisch partielle Rekonfiguration in fehlertoleranten FPGA-Systemen

    Get PDF
    Korf S. Dynamisch partielle Rekonfiguration in fehlertoleranten FPGA-Systemen. Bielefeld: Universität Bielefeld; 2017.Die Anforderungen an mikroelektronische Systeme steigen kontinuierlich. Rekonfigurierbare Architekturen bieten einen Kompromiss zwischen der Leistungsfähigkeit anwendungsspezifischer Schaltungen (ASICs) und der Flexibilität heutiger Prozessoren. Sogenannte im Feld programmierbare Gatter-Arrays (engl. Field-Programmable Gate Arrays, FPGAs) haben sich hierbei in den letzten Jahrzehnten besonders etabliert. Die Konfigurationsart dynamisch partielle Rekonfiguration (DPR) moderner SRAM-basierter FPGAs verdeutlicht die gewonnene System-Flexibilität. DPR wird in verschiedensten Anwendungsgebieten aus unterschiedlichsten Motivationen heraus eingesetzt. Die Hauptanwendung der DPR ist die Erstellung eines Systems, welches Veränderungen an der Schaltung auf dem FPGA zur Laufzeit erlaubt. Obwohl viele FPGA-Familien bereits seit zwei Jahrzehnten DPR hardwareseitig ermöglichen, ist die Unterstützung durch die Hersteller-Software und insbesondere die Eigenschaften des daraus resultierenden DPR-Systems verbesserungswürdig. Um das Potenzial der verfügbaren Hardware-Flexibilität ausnutzen zu können, wird in dieser Dissertation ein neuer Entwurfsablauf (INDRA 2.0, INtegrated Design Flow for Reconfigurable Architectures) vorgestellt. Dieser Entwurfsablauf ermöglicht die Erstellung eines flexiblen DPR-Systems mit geringem Speicher-, Verwaltungs- und Wartungsaufwand. Für Anwendungen mit Homogenitätsanforderungen wird mit DHHarMa (Design Flow for Homogeneous Hard Macros) ein Entwurfsablauf vorgestellt, der die Transformation eines zunächst inhomogenen Designs in ein homogenes Design ermöglicht. Bei dieser Design-Homogenisierung ergibt sich die Fragestellung nach möglichen Auswirkungen bezüglich des FPGA-Ressourcenbedarfs und der Leistungsfähigkeit durch die einzelnen Homogenisierungsschritte. Die einzelnen DHHarMa-Softwarekomponenten wurden daher detailliert durch verschiedene Bewertungsmaße analysiert. Hierbei konnte festgehalten werden, dass die Homogenisierungsschritte im Mittel einen, teils deutlichen, positiven Einfluss auf den FPGA-Ressourcenbedarf jedoch teils einen geringen negativen Einfluss auf die Leistungsfähigkeit hat. Die verwendete FPGA-Architektur hat hierbei auf beide Größen einen entscheidenden Einfluss. Zusätzlich wird in Anwendungsgebieten mit Strahlungseinfluss die DPR-Funktionalität in Verfahren zur Abschwächung von durch Strahlung induzierten Fehlern eingesetzt. In der Dissertation wird mit der Readback Scrubbing Unit eine Komponente vorgestellt, welche eine Einbitfehlerkorrektur und Zweibitfehlererkennung im FPGA-Konfigurationsspeicher implementiert. Durch integrierte Fehlerstatistikmechanismen wird eine Analyse des Systems zur Laufzeit realisiert. Zusätzlich ist die Erstellung von Readback Scrubbing Schedules möglich, sodass die Fehlererkennung und -korrektur zum einen autonom und zum anderen zur Laufzeit angepasst werden kann. Zusätzlich wird mit OLT(RE)² (On-Line on-demand Testing approach for permanent Radiation Effects in REconfigurable systems) ein Selbsttest für ein SRAM-basiertes FPGA vorgestellt. Dieser Selbsttest ermöglicht zur Systemlaufzeit eine Überprüfung einer FPGA-Fläche vor der Verwendung auf permanente Fehler in den Verdrahtungsressourcen

    Realisierung einer adaptiven parallelen Hardwarearchitektur für hochperformante OFDMA

    Get PDF
    Die vorliegende Arbeit beschreibt ein OFDMA basiertes Kommunikationssystem für Zugangsnetzwerke. Wichtigstes Ziel der vorgestellten Implementierung ist die Erzielung einer hohen Kommunikationsbandbreite von mehr als 50 GBit/s. Gleichzeitig wird das präsentierte System jedoch auch umfassend betrachtet und realisiert, so dass echte Kommunikationsdaten in Form von Ethernetpaketen das Netzwerk passieren können
    corecore