Huber, W. (2005). Design of an asynchronous processor based on code alternation logic - exploration of delay insensitivity [Dissertation, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-18234
E182 - Institut für Technische Informatik (Echtzeitsysteme, VLSI-Design)
-
Date (published):
2005
-
Number of Pages:
131
-
Keywords:
Prozessor; Asynchronbetrieb
de
Abstract:
Code Alternation Logic (CAL) basiert auf der Tatsache, dass "high" und "low" jeweils in zwei sich abwechselnden Phasen phi0 und phi1 dargestellt werden. Durch die Alternierung der Phasen kann die Zuordnung der Bits zu Datenwellen garantiert werden. Dargestellt werden diese vier Zustände entweder als vierwertige single-rails cal_logic, die in der Verhaltensbeschreibung deresigns verwendet werden, oder als jeweils zweiwertige dual-rail Logik -- cal_rail_logic -- für die Implementierung in Hardware. Der Designflow für CAL umfasst im Gegensatz zum synchronen Design zwei Syntheseschritte. Weiters wird die Designentwicklung durch Simulationsmodelle auf verschiedenen Abstraktionsstufen unterstützt. Als Zieltechnologie kommen Altera Apex FPGAs mit LUTs als kleinste Einheiten zum Einsatz. Um die Eigenschaften in Bezug auf delay insensitivity zu untersuchen, werden Hardwarestrukturen wie Pipelinestufen oder auch Basisgatter in Timed Automata transferiert, die mit dem Modelchecker Uppaal analysiert werden. Der Nachweis des delay insensitiven Verhaltens der Pipelinestufen und der Logik zwischen diesen Stufen wird in dieser Arbeit erbracht. Dieser stützt sich auf hardwareunabhängige Modelle der Basisgatter, die nach den CAL-spezifischen Regeln operieren. Der nächste Schritt in dieser Arbeit ist die Untersuchung der Implementierung dieser Basisgatter in der Zieltechnologie. Der Nachweis ebenso wie die Ermittlung der notwendigen Vorgaben für die Implementierung werden mittels Modelchecker für alle im Designflow verwendeten Basisgatter erbracht. Die gewonnen Erkenntnisse finden im überarbeiteten Designflow zur Implementierung des asynchronen Prozessors ASPEAR Anwendung. Der Funktionsnachweis der verbesserten Pipelines, der in Quartus vor-compilierten Gatter und der dadurch notwendige Einsatz einerneuen Bibliothek wird durch die erfolgreiche Implementierung des Prozessors erbracht.
de
Code Alternation Logic is based on the utilization of two representations of "high" and "low" in two different phases phi0 and phi1. The representations are used alternatively, so within a sequence of data words each bit can uniquely be assigned to the corresponding data word. In contrast to the conventional synchronous design flow, our CAL design flow comprises two synthesis steps. A main goal of this thesis is to analyze the delay insensitivity of a circuit implementation with CAL. For this purpose pipeline stages as well as basic gates are transformed to timed automata and analyzed with the model-checker Uppaal. In this thesis the delay insensitive behavior of pipeline structures and the correctness of the combinational logic between these stages is proven. Up to this point hardware independent models of the basic gates are used for constructing these combinational logic functions, which operate according to the CAL rules. As a next step the implementation of the basic gates in the target technology is investigated. The limitations with respect to delay insensitivity are pinpointed and appropriate design constraints are derived.<br />The impacts of the findings are used to improve the design flow.<br />Furthermore, the results have allowed us designing our asynchronous processor ASPEAR. The development of an improved pipeline concept, the application of pre-compiled basic gates using Quartus, and the new library providing these gates to the synthesis tools are verified with the successful implementation of the processor.<br />