Please use this identifier to cite or link to this item: doi:10.22028/D291-26338
Title: Formal specification of the x86 instruction set architecture
Other Titles: Formelle Spezifizierung von dem x86-Befehlssatz
Author(s): Degenbaev, Ulan
Language: English
Year of Publication: 2012
SWD key words: AMD x86-64
Prozessor
Formalisierung
Programmiersprache
Speicher <Informatik>
Cache-Speicher
Free key words: x86
processor
formal specification
programming language
instruction set
memory model
DDC notations: 004 Computer science, internet
Publikation type: Dissertation
Abstract: In this thesis we specify the x86 instruction set architecture (ISA) by developing an abstract machine that models the behaviour of a modern computer with multiple x86 processors. Our model enables reasoning about low-level system software by providing formal interpretation of thousand pages of the processor vendor documentation written in informal prose. We show how to reduce the problem of ISA formalization to two simpler problems: memory model specification and instruction semantics specification. We solve the former problem by extending the classical Total Store Ordering memory model with caches, translation-lookaside buffers, memory fences, locks, and other features of the x86 processor. For the latter problem we design a new domain-specific language which makes instruction semantics specification readable and compact.
In dieser Arbeit spezifizieren wir den x86-Befehlssatz durch die Definition einer abstrakten Maschine, die das Verhalten eines modernen Computers mit mehreren x86-Prozessoren modeliert. Unser Modell bietet eine formale Interpretation der Prozessorherstellerdokumentationen, die über Tausend Seiten von informellen Spezifikationen enthalten. Wir zeigen, wie das Problem der Befehlssatz-Formalisierung in zwei einfachere Probleme zerlegt werden kann: Spezifikation von dem Speichermodell und spezifikation von der Maschinenbefehlsemantik. Wir lösen das erste Problem durch die Erweiterung des klassischen “Total Store Ordering” Speichermodells mit Caches, Translation-Lookaside Buffers, Memory Fences und Locks. Um die Maschinenbefehlsemantikspezifikation lesbar und kompakt zu machen, entwerfen wir ein neue domänenspezifische Sprache.
Link to this record: urn:nbn:de:bsz:291-scidok-47072
hdl:20.500.11880/26394
http://dx.doi.org/10.22028/D291-26338
Advisor: Paul, Wolfgang J.
Date of oral examination: 6-Feb-2012
Date of registration: 9-Mar-2012
Faculty: MI - Fakultät für Mathematik und Informatik
Department: MI - Informatik
Collections:SciDok - Der Wissenschaftsserver der Universität des Saarlandes

Files for this record:
File Description SizeFormat 
final_thesis.pdf1,49 MBAdobe PDFView/Open


Items in SciDok are protected by copyright, with all rights reserved, unless otherwise indicated.