×

SPARC指令集体系结构和TSO内存模型的Isabelle/HOL形式化。 (英语) Zbl 07356982号

摘要:SPARC指令集体系结构(ISA)已用于工作站、嵌入式系统以及航空和航天工程等关键任务行业的各种处理器。因此,重要的是要提供正式的框架,以便于验证运行在这些处理器上或与这些处理器接口的硬件和软件。在这项工作中,我们在Isabelle/HOL中给出了多核SPARC ISA和Total Store Ordering(TSO)内存模型的第一个形式化模型。我们为ISA提供了两个级别的建模:低级ISA模型是可执行的,它涵盖了SPARC处理器特有的许多特性,例如控制寄存器的延迟写入、窗口化通用寄存器和更复杂的内存访问。我们在LEON3模拟板上对模型进行了广泛测试,测试包括程序的单步执行和顺序执行。我们还证明了我们的形式模型的一些重要性质,包括LEON3处理器的不干涉性质。高级ISA模型是低级模型的抽象,它为多核处理器中的内存操作提供了接口。在高级ISA模型之上,我们形式化了两个TSO内存模型:一个是公理SPARC TSO模型的改编[P.S.信德湖等,“内存模型的形式规范”,in:可扩展共享内存多处理器。马萨诸塞州波士顿:斯普林格。25–41 (1992;/doi.org/10.1007/978-1-4615-3604-8_2);SPARC国际公司。,SPARC体系结构手册。第8版(1992年),http://gaisler.com/doc/sparcv8.pdf]另一种是一种新的可操作TSO模型,适用于验证执行结果。我们证明,相对于公理模型,操作模型是健全和完整的。最后,我们用SPARCv9手册中的两个案例研究给出了验证示例。

MSC公司:

68伏15 定理证明(自动和交互式定理证明、演绎、解析等)
PDF格式BibTeX公司 XML格式引用
全文: 内政部 链接

参考文献:

[1] 阿尔格拉夫,J。;Maranget,L。;Sarkar,S。;Sewell,P.,《弱记忆模型中的栅栏》,258-272(2010),柏林:施普林格出版社,柏林·Zbl 1247.68155号
[2] 阿尔格拉夫,J。;Maranget,L。;Tautschnig,M.,《放牧猫:弱记忆的建模、模拟、测试和数据挖掘》,ACM Trans。程序。语言系统。,36, 2, 1-74 (2014) ·doi:10.1145/2627752
[3] 阿斯皮诺,D。;Ševčík,J.,《正式实现Java的无数据竞赛保证》,22-37(2007),柏林:施普林格,柏林·Zbl 1144.68304号
[4] Atkey,R.:CoqJVM:使用依赖类型的Java虚拟机的可执行规范。收录于:TYPES,LNCS,第18-32页。斯普林格(2005)·Zbl 1138.68344号
[5] Boudol,G.,Petri,G.:放松记忆模型:一种操作方法。摘自:第36届ACM SIGPLAN-SIGACT编程语言原理研讨会论文集,2009年POPL,2009年1月21日至23日,美国佐治亚州萨凡纳,第392-403页(2009)·Zbl 1315.68173号
[6] 伯克哈特,S。;Musuvathi,M.,《放松记忆模型的有效程序验证》,107-120(2008),柏林:施普林格出版社,柏林·Zbl 1155.68428号
[7] Campbell,B.,Stark,I.:使用SMT求解器状态生成对微处理器模型进行随机测试。收录于:FMICS 2014,第185-199页。施普林格(2014)
[8] Cock,D.、Klein,G.、Sewell,T.:安全的微内核、状态单元和可扩展的精化。在:《高阶逻辑中的定理证明》,LNCS第5170卷,第167-182页。施普林格(2008)·Zbl 1165.68454号
[9] Crary,K.,Sullivan,M.J.:放松记忆的微积分。摘自:第42届ACM SIGPLAN-SIGACT编程语言原理年度研讨会论文集,POPL’15,第623-636页。ACM(2015年)·Zbl 1346.68048号
[10] Dasgupta,S.、Park,D.、Kasampalis,T.、Adve,V.S.、Rošu,G.:x86-64用户级指令集体系结构的完整形式语义。摘自:第40届ACM SIGPLAN编程语言设计与实现会议记录,PLDI 2019,美国纽约州纽约市,第1133-1148页。计算机协会(2019)
[11] El Kady,S.、Khater,M.、Alhafnawi,M.:MIPS、ARM和SPARC架构比较。摘自:《世界工程大会论文集》,第1卷(2014年)
[12] 欧洲航天局。ESA LEON处理器。http://www.esa.int/Our_Activities/Space_Engineering_Technology/LEON_the_Space_chip_that_Europe_built (2017). 2016年6月19日访问
[13] Flur,S。;格雷,KE;普特,C。;Sarkar,S。;塞兹金,A。;Maranget,L。;执事,W。;Sewell,P.,建模armv8架构,操作:并发和ISA,SIGPLAN Not。,51, 1, 608-621 (2016) ·doi:10.1145/2914770.2837615
[14] Fox,A.:ARM6的正式规范和验证。在:《高阶逻辑中的定理证明》,LNCS第2758卷,第25-40页。斯普林格(2003)
[15] Fox,A.,ISA规范中的方向,338-344(2012),柏林:施普林格,柏林
[16] Fox,A.:改进了对HOL4中机器代码反编译的工具支持。互动。In:交互式定理证明,第187-202页(2015)·Zbl 1465.68048号
[17] Fox,A.,Myreen,M.O.:ARMv7指令集体系结构的值得信赖的一元形式化。In:交互式定理证明,pp.243-258(2010)·Zbl 1291.68341号
[18] 富士通。K计算机。http://www.top500.org/system/177232 (2017). 2016年6月19日访问
[19] 盖斯勒。LEON3处理器。http://www.gaisler.com/index.php/products/processors/lion3 (2017). 2017年6月19日访问
[20] Goel,S.:基于经验证的x86 ISA模型的应用程序和系统程序的正式验证。德克萨斯大学奥斯汀分校博士论文(2016)
[21] Goel,S.、Hunt,W.A.、Kaufmann,M.:抽象Stobjs及其在ISA建模中的应用。收录于:ACL2 2013,第54-69页(2013)
[22] Gray,K.E.,Kernis,G.,Mulligan,D.,Pulte,C.,Sarkar,S.,Sewell,P.:针对IBM POWER多处理器的集成并发和core-ISA体系结构信封定义,以及测试oracle。摘自:第48届国际微体系结构研讨会论文集,MICRO-48,第635-646页。ACM(2015)
[23] Hangal,S。;瓦希亚,D。;马诺维特,C。;Lu,J-YJ,Tsotool:使用内存一致性模型验证内存系统的程序,SIGARCH Compute。阿基特。新闻,32,2,114(2004)·数字对象标识代码:10.1145/1028176.1006710
[24] Higham,L.,Kawash,J.,Verwaal,N.:定义和比较内存一致性模型。摘自:《第十届并行和分布式计算系统国际会议论文集》,第349-356页(1997)
[25] Hou,Z.、Sanán,D.、Tiu,A.、Liu,Y.、Hoa,K.C.:sparcv8指令集体系结构的可执行形式化:LEON3处理器的案例研究。收录于:FM 2016:正式方法第21届国际研讨会,2016年,会议记录,第388-405页(2016)
[26] Khakpour,N.,Schwarz,O.,Dam,M.:ARMv7指令级隔离属性的机器辅助证明。收录于:认证课程和证明,第8307卷,第276-291页。LNCS(2013)·Zbl 1426.68286号
[27] Leroy,X.:编译器后端的正式认证,或者:使用校对助手对编译器进行编程。在:诉讼中。第33届ACM程序设计语言原理研讨会(2006年)·Zbl 1369.68124号
[28] Leroy,X.:CompCert C验证的编译器。http://compcert.inria.fr/man/manual.pdf (2015). 2016年1月29日访问
[29] Lim,J.等人。;Reps,T.,Tsl:生成抽象解释器的系统及其在机器代码分析中的应用,ACM Trans。程序。语言系统。,35, 1, 1-59 (2013) ·doi:10.1145/2450136.2450139
[30] Liu,H.,Moore,J.S.:用于分析推理的可执行JVM模型:一项研究。摘自:2003年口译、虚拟机和模拟器研讨会论文集,第15-23页。ACM(2003)
[31] Loewenstein,P.,Chaudhry,S.:多处理器内存模型验证。In:Proceedings Automated Formal Methods中。FLoC研讨会(2006年)
[32] Lustig,D.,Pellauer,M.,Martonosi,M.:Pipecheck:指定和验证内存一致性模型的微体系结构实施。2014年第47届IEEE/ACM国际微体系结构研讨会(MICRO),美国加利福尼亚州洛斯阿拉米托斯,第635-646页。IEEE计算机学会(2014)
[33] ISAs的L3规范语言。http://www.cl.cam.ac.uk/acjf3/l3/。2015年12月9日查阅
[34] Mulligan,D.P.,Owens,S.,Gray,K.E.,Ridge,T.,Sewell,P.:Lem:现实世界语义的可重用工程。摘自:第19届ACM SIGPLAN函数编程国际会议记录,第175-188页(2014)·Zbl 1346.68123号
[35] Owens,S.:关于在x86-tso上实现并发抽象的推理。在:第24届欧洲面向对象编程会议论文集,ECOOP’10,pp.478-503(2010)
[36] 欧文斯,S。;Sarkar,S。;Sewell,P.,《更好的x86内存模型:x86 TSO》,391-407(2009),柏林:施普林格,柏林
[37] Park,S.,Dill,D.L.:RMO(宽松内存顺序)的可执行规范、分析器和验证器。摘自:《第七届ACM并行算法和架构研讨会论文集》,1995年SPAA,第34-41页。ACM(1995)
[38] Petri,G.:放松记忆模型的操作语义(2010)。论文
[39] Pult,C.、Flur,S.、Deacon,W.、French,J.、Sarkar,S.和Sewell,P.:简化arm并发:armv8的多副本原子公理和操作模型。收录:《ACM编程语言学报》,2(POPL)(2017年)
[40] RISC-V架构。https://riscv.org/。2016年8月10日访问
[41] 罗什·G。;öerbţnu෥Ťů,TF,K语义框架概述,J.Log。阿尔盖布。程序。,79, 6, 397-434 (2010) ·Zbl 1214.68188号 ·doi:10.1016/j.jlap.2010.03.012
[42] 罗什·G。;⑩tefnescu,A。;Czumaj,A。;Mehlhorn,K。;Pitts,A。;Wattenhofer,R.,《走向操作语义和公理语义的统一理论》,《自动机、语言和编程》,351-363(2012),柏林:施普林格出版社,柏林·Zbl 1367.68075号 ·doi:10.1007/978-3-642-31585-5_33
[43] 罗伊,A。;Zeisset,S。;CJ弗莱肯斯坦;Huang,JC,《快速和广义多项式时间记忆一致性验证》,503-516(2006),柏林:施普林格出版社,柏林
[44] Santoro,A.、Park,W.、Luckham,D.:Rapide的SPARC-V9架构规范。技术报告,斯坦福,加利福尼亚州,美国(1995年)
[45] Sarkar,S.、Sewell,P.、Nardelli,F.Z.、Owens,S.,Ridge,T.、Braibant,T、Myreen,M.O.、Algale,J.:x86-CC多处理器机器代码的语义。摘自:第36届美国计算机学会编程语言原理研讨会论文集,第379-391页。ACM(2009)
[46] 确保安全。安全:微内核验证。http://securify.scse.ntu.edu.sg/MicroVer/。2020年3月20日访问
[47] 休厄尔,P。;Sarkar,S。;欧文斯,S。;新西兰纳德利;密苏里州Myreen,MO,X86-tso:X86多处理器的严格且可用的程序员模型,Commun。ACM,53、7、89-97(2010年)·数字对象标识代码:10.1145/1785414.1785443
[48] 辛杜,PS;弗莱隆,J-M;Cekleov,M.,《记忆模型的形式规范》,25-41(1992),波士顿:斯普林格出版社,波士顿
[49] Smith,G.:安全信息流分析原理。摘自:恶意软件检测,第291-307页(2007年)
[50] SPARC公司。SPARC体系结构手册版本8。http://gaisler.com/doc/sparcv8.pdf (1992). 2015年10月27日查阅
[51] 斯巴达。SPARC体系结构手册第9版。https://cr.yp.to/2005-590/sparcv9.pdf (1994). 2017年6月12日访问
[52] 天河二号。http://top500.org/system/177999。2016年1月27日访问
[53] 斯特拉图。Xtratum管理程序。http://www.xtratum.org/ (2017). 2017年6月19日访问
[54] Yang,Y.、Gopalakrishnan,G.、Lindstrom,G.和Slind,K.:Nemos:内存一致性模型公理化和可执行规范的框架。2004年第18届国际并行和分布式处理研讨会。会议记录(2004年)
[55] Zhao,Y.,Sanán,D.,Zhang,F.,Liu,Y.:基于信道通信的分离内核信息流安全推理。收录于:TACAS 2016,第9636卷,第791-810页。斯普林格(2016)
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。