<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="static/style.xsl"?><OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd"><responseDate>2026-09-21T21:14:18Z</responseDate><request verb="GetRecord" identifier="oai:www.repository.cam.ac.uk:1810/389436" metadataPrefix="uketd_dc">https://api.repository.cam.ac.uk/server/oai/request</request><GetRecord><record><header><identifier>oai:www.repository.cam.ac.uk:1810/389436</identifier><datestamp>2025-09-24T01:42:49Z</datestamp><setSpec>com_1810_219481</setSpec><setSpec>com_1810_256065</setSpec><setSpec>col_1810_219482</setSpec></header><metadata><uketd_dc:uketddc xmlns:uketd_dc="http://naca.central.cranfield.ac.uk/ethos-oai/2.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:uketdterms="http://naca.central.cranfield.ac.uk/ethos-oai/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:doc="http://www.lyncode.com/xoai" xsi:schemaLocation="http://naca.central.cranfield.ac.uk/ethos-oai/2.0/ http://naca.central.cranfield.ac.uk/ethos-oai/2.0/uketd_dc.xsd">
   <dc:title>Arm systems semantics</dc:title>
   <dc:identifier xsi:type="dcterms:DOI">https://doi.org/10.17863/CAM.121319</dc:identifier>
   <dc:creator>Simner, Ben</dc:creator>
   <uketdterms:authoridentifier xsi:type="uketdterms:ORCID">0009000084319577</uketdterms:authoridentifier>
   <uketdterms:advisor>Sewell, Peter</uketdterms:advisor>
   <dcterms:abstract>Computing relies on architecture specifications to decouple hardware and software development. Historically these have been prose documents, with all the problems that entails, but research over the last ten years has developed rigorous and executable-as-test-oracle specifications of mainstream architecture instruction sets and 'user-mode' concurrency, clarifying architectures and bringing them into the scope of programming-language semantics and verification.

However, the system semantics, of address translation and TLB maintenance, instruction-fetch and its required cache maintenance, and exceptions and interrupts, remains mostly obscure, leaving us without a solid foundation for verification of security-critical systems software.

We develop precise mathematical models, for those aspects of the Arm A-class architecture. We implement these models as executable models, in both microarchitectural-flavoured operational and  declarative axiomatic style formats. We validate these models, against currently available hardware through the production and evaluation of hardware test harnesses and test suites, and against the architectural intent through discussions with Arm architects. We give a variety of hand-written and machine-generated litmus tests, exercising parts of the architecture previously unexplored.

We discuss the nature of developing such models, and the challenges that writing specifications of existing systems entails.  We briefly touch on how these models have evolved over time, and how we imagine they will evolve in the future as the remaining questions are resolved.</dcterms:abstract>
   <uketdterms:institution>University of Cambridge</uketdterms:institution>
   <dcterms:issued>2025-04-15</dcterms:issued>
   <dc:type>Thesis</dc:type>
   <uketdterms:qualificationlevel>Doctoral</uketdterms:qualificationlevel>
   <uketdterms:qualificationname>Doctor of Philosophy (PhD)</uketdterms:qualificationname>
   <dc:language>eng</dc:language>
   <uketdterms:sponsor>Arm/EPSRC iCASE PhD studentship</uketdterms:sponsor>
   <dcterms:isReferencedBy xsi:type="dcterms:URI">https://www.repository.cam.ac.uk/handle/1810/389436</dcterms:isReferencedBy>
   <dc:identifier xsi:type="dcterms:URI">https://www.repository.cam.ac.uk/bitstreams/b37a1aa9-354d-4d5e-8d80-3d10d5891ce8/download</dc:identifier>
   <uketdterms:checksum xsi:type="uketdterms:MD5">c0283494ff427dba080a059a64a4eb11</uketdterms:checksum>
   <dcterms:license>https://www.repository.cam.ac.uk/bitstreams/30b6133e-0a07-458c-b22f-22cc0a160146/download</dcterms:license>
   <uketdterms:checksum xsi:type="uketdterms:MD5">87eda9de84448d1f82354d60eee3eb5f</uketdterms:checksum>
   <dc:rights>https://creativecommons.org/licenses/by/4.0/</dc:rights>
   <dc:subject>computer architecture</dc:subject>
   <dc:subject>programming languages</dc:subject>
   <dc:subject>semantics</dc:subject>
</uketd_dc:uketddc>
</metadata></record></GetRecord></OAI-PMH>