CoqDRAM - A Foundation for Designing Formally Proven Memory Controllers - Equipe Autonomic and Critical Embedded Systems
Thèse Année : 2024

CoqDRAM - A Foundation for Designing Formally Proven Memory Controllers

CoqDRAM - Une Fondation pour la Conception de Contrôleurs de Mémoire Formellement Prouvés

Résumé

Recently proposed real-time memorycontrollers tackle the performance-predictability tradeoffby trying to offer the best of both worlds. However,as a consequence, designs have become complexand often present mathematical developmentsthat are lengthy, hard to read and review, incomplete,and rely on unclear assumptions. Given thatsuch components are often designed as part microarchitecturesthat are used in safety-critical real-timesystems, a high degree of confidence that systemsbehave correctly is required in order to meet certificationgoals. To address that problem, we proposea new framework written in the Coq theorem provernamed CoqDRAM, in which we model DRAM devicesand controllers and their expected behaviour asa formal specification. The framework is intended toaid the design of correct-by-construction, trustworthyDRAM scheduling algorithms. The CoqDRAM specificationcaptures correctness criteria according to theJEDEC standards and states other high-level properties,such as fairness and sequential consistency. Followingsuch approach, paper-and-pencil mathematicaldevelopments are replaced by machine-checkedproofs, which increase confidence that the design isindeed correct.We showcase CoqDRAM’s usability bymodelling and proving two proof of concept schedulingalgorithms: one based on the First-in First-Out (FIFO) arbitration policy and the other on Time-Division Multiplexing (TDM). Moreover, using Coq-DRAM, we propose a new DRAM scheduling algorithmcalled TDMShelve, which extends and improvesprevious work on work-conserving dynamic TDM arbitration.More specifically, TDMShelve exploits informationabout the internal state of the memory at requestscheduling level, thus providing a good balancebetween predictability and average-case latency formixed-criticality real-time systems. Finally, we connectthe algorithms written in CoqDRAM to software andhardware simulation environments. These environmentsare used to perform simulation runs that furthervalidate the correctness of the CoqDRAM model.
Les contrôleurs mémoire temps-réel récemment proposés abordent le compromis entreperformance et prédictibilité en cherchant à offrir le meilleur des deux mondes. Cependant,en conséquence, les conceptions deviennent complexes et présentent souvent des développementsmathématiques qui sont longs, difficiles à lire et à examiner, incomplets, et reposent sur des hypothèses peu claires. Etant donné que de tels composants sont souvent conçus comme faisant partie de microarchitectures utilisées dans des systèmes temps réel critiques, un degré élevé de confiance dans le comportement correct du système est nécessairepour atteindre les objectifs de certification. Pour résoudre ce problème, nous proposons un nouveauframework, intitulé CoqDRAM, écrit dans l’assistant de preuves formelles Coq, dans lequel nousmodélisons les dispositifs DRAM et les contrôleurs et leur comportement attendu en tant que spécification formelle. Le framework est destiné à aider à la conception d’algorithmes d’ordonnancement DRAM corrects par construction et dignes de confiance. La spécification CoqDRAM capture les critères de correction selon les normes JEDEC et énonce d’autrespropriétés de haut niveau, telles que l’équité (fairness) et la cohérence séquentielle (sequential consistency).Suivant cette approche, les développements mathématiques sur papier-et-crayon sont remplacéspar des preuves vérifiées par machine, ce qui accroit la confiance que la conception est effectivement correcte. Nous présentons l’utilisabilité de Coq-DRAM en modélisant et en prouvant deux algorithmes d’ordonnancement de principe : l’un basé sur la politique d’arbitrage First-In First-Out (FIFO) et l’autre sur la multiplexage par répartition dans le temps (TDM). De plus, en utilisant CoqDRAM, nous proposons un nouvel algorithme d’ordonnancement DRAM appelé TDMShelf, qui étend et améliore les travaux précédents sur l’arbitrage work-conserving dynamique TDM. Plus précisément, TDMShelf exploite des informations sur l’état interne de la mémoire auniveau de l‘ordonnancement des requêtes mémoire, fournissant ainsi un bon équilibre entre prédictibilité et latence moyenne pour les systèmes temps réel à criticité mixte.
Fichier principal
Vignette du fichier
130943_LISBOA_2024_archivage.pdf (4.45 Mo) Télécharger le fichier
Origine Version validée par le jury (STAR)

Dates et versions

tel-04714818 , version 1 (30-09-2024)

Identifiants

  • HAL Id : tel-04714818 , version 1

Citer

Felipe Lisboa Malaquias. CoqDRAM - A Foundation for Designing Formally Proven Memory Controllers. Computer Science [cs]. Institut Polytechnique de Paris, 2024. English. ⟨NNT : 2024IPPAT020⟩. ⟨tel-04714818⟩
50 Consultations
4 Téléchargements

Partager

More