没有合适的资源?快使用搜索试试~ 我知道了~
RTL构造的编码:MathSAT的初步报告
理论计算机科学电子笔记144 Electronic Notes in Theoretical Computer Science 144(2006)www.elsevier.com/locate/entcsEncoding RTL Constructs forMathSAT : A Preliminary( 英文 )报告Marco BozzanoA作者 : Roberto BruttnomatoA作者 AlessandroCimattiAAndersFr年Z´en A,C,zi yAD汉娜 HannaB,z乌拉 布Khasides h威利B,饰Amit PaltiB,且 RobertoSebastianCA地址 : Via Sommarive 18 , 38050 Povo , Trento Italy{潘文,潘文,潘文。FRanZen}@itc. itBLogic 逻辑And Validation技术 ,Intel 的Architecture 建筑 学Group of Haifa ,以色列{ziyad . hanna , amit . palti , zur ( 英语 : ziyad . hanna )AB .khasidASHVili}@intEl.itCDIT,一 个i维尔it`ADiTrENTO,ViASoMMARivE14,38050鸡蛋,TrENTO,ItAly罗伯特 · 塞巴 斯蒂 亚尼dit.unitn.itabstract在寄存器传输级别(RTL)进行正式检查当前是硬件电路设计中的一个基本步骤。Most tools forformal checking,however,work at the boolean level,which is not expressive enough to capturethe abstract,high level(通常是形式检查、严格控制、低效率工作的工具,否则无法获取抽象的高级水平)RTL设计的结构,文字级别信息。形式检查工具是指当他们将“影响”下降到布尔级别时,那么apresidinant part of their computational e {l}是浪费在每—forming useless布尔搜索中的完整数据和算术操作的bitwise encoding。in这个Paper 纸we出席A way 方式of Encoding RTL constructs INTO SMT公式 ,that is ; booleancombinations of boolean variables and quanti folier free constraints in integer linear arithmetic.(在整数线性算术中结合布尔变量和量子自由变量)寿司公式 可以BE handled 的by The MAATH SAT tool( And others )直接,without 没有Flattening关于 Boolean Level ,SO that TO减少戏剧 性The Computational这 是 轮胎 。当 控制 变量 被 编码 为 布尔 型 变量 时 , 数据 变量 被 编码 为 布尔 型 变量 , 数据 变量 被 编码 为整数 型 变量 ; 控制 结构 被 控制 为 布尔 型 变量 与 预测 型 变量 的 组合 , 数据 路径 结构 被 编码 为可能 的 , 是 可能 的 。变量 。Keywords:可 定义 性 模块 理论 , 决策 过程 , 真正 的 定义RTL Design 设计1571 - 0661 © 2005 爱思 唯 尔 B . V.开放 存取 Under Access CC BY-NC - ND许可 证 。doi:10.1016/j.entcs.2005.12.0014M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-141Introduction 介绍形式方法 论are Widely适用 于as powerful 的真正 的And Early debug - gingtechniques in the development of complex industrial systems 复杂 的 工业系统 开发 过程 中 的 技术 进步 。在 par - ticular 中 , 在 寄存 器 传输 级别上 进行 形式 检查 ( RTL )currently a fun - damental step in the design ofhardware circuits 当前 有趣 - 硬件 电路 设计 中 的 危险 步骤 。A numberof techniques and tools have been developed ,able to carry outequivalencecheckingandpropertycheckingofcombinationalandsequential 数量 的 技术 和 工具 已经 进行 了 开发 , 可以 进行 等价 的 检查马戏 团Most工具为形式checking ,however ,Work AT The boolean Level ,Which is not expressive enough to capture the abstract , high level ( 抽象 的 , 高级 的 )RTL设计的结构,文字级别信息。形式 检查 工具 是 如何与 问题 进行 比较 的 , 因为 它们 会 “ 影响 ” 下降 到 布尔 水平( 注 :e.g. , integer data values are encoded and manipulated as arrays ofbooleans ( 数据 价值 是 编码 的 , 操纵 的 是 布尔 人 的 阵列 )A占 主导地 位 part 部 分 of their Computational 关 于Globor is Wasted 的 inperforming useless boolean search on the bitwise encoding of integer data andarithmetical 使用 无 限制 的 布尔 搜索operations( 注 : e.g. , up TO A 232因素in The amount of boolean Search 搜索为A 32 位值(integer value)。 In particular , notice that boolean solvers are " bad at" 在 粒子 中 , 注意 到 布尔 人 的 溶剂 是 " 坏 的妈妈 -Matics ” , in The Sense that Reasoning 的 on The boolean Encoding ofarithmetical operations (英) sums )causes a blowup of thecomputational 计算 中 的 逻辑这 是 轮胎 。We want to invinciate enhanced sat based techniques for RTL 形式 检查And TO deliver better真正 的工具为RTL设计 。 These工具 will avoid 的Flattening by working直接AT A Level 水平of表达 性higher由于 布尔 反应 , 它 将 是 可 分析 的 RTL 尺度设计 。在 这个 方向 上 的 第 五 步 是 发展 的M AATH SAT tool , an , andfrigiccient SAT - based tool for sability module theories ( SMT ) 有效 的模块 理论 工具 , 易于 使用boolean combinations of boolean原子And多 花免费原子in the 理论of Equality 平等And Uninterpreted 的Functions)EUF),在 splumerence Logic 逻辑)DL 2009 年 , 《 线性 算术 》( Linear Arithmetic ) (LA 2 ) ) , 则 tan (LA( 三 ) 结合 理论( And on combined theories )EUF + DL,EUF + LA( r ) ,EUF +M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-145LA) ( z ) (4,3].As a second step in this direction,in this paper we present a way ofen—coding RTL constructs into SMT formulas在这篇文章中,我们目前有一种方法LA(Z)或EUF + LA(Z)。寿司 配方CAN BE handled 的by TheM AATH SAT tool( And others )直接,没有 flattening to boolean level ,so that to reduce drastically the computational and numort . ( 推断 到 布尔 级 , 所以 是 简化 到 计算 )Themain idea is TO partition年RTL Circuit设计 Design INTO control控 制 And 路 径 - Path components , And TO encode The former INTOboolean formula,SO that to be handled 的by The SAT Solver implies 嵌入式in M AATH SAT,And TO encode( as最 佳 答案 : Much As Possible TheLatter Into terms in LA( Z ) So that to be handled directly by LA( Z )Solver in M AATH SAT , thus Avoiding 的 bit-blasting 的 as Much aspossible 。6M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-142基本 符号 和AssumptionsinThe后续we use 使用资本Symbols 象征A , B ,... TO represent boolean10 . 比 特 币 ( Bits ) , Underlined Capital Symbols A , B , , torepresent word variables(英语:to represent word variables)首页〉外文书〉文学〉西洋文学〉and Lower Case Symbols a,b,represent integer变量。如果我们没有定义,我们会假设我们有这个词。n bits(e. g),n( 32 ) , 且that integer变量CAN假设positive 积极 的integer价值 观within 其他The Range[ 0 ],..., 2 n-1 ] 。 in The后续 ,如果Not otherwise专门 的 ,we假设thatL ,MAre integer values s.t.(英文)0 ≤l≤M≤n-1.如果Ais A word ,we Denote 的as A[i] The boolean Variable 的Representing 介绍The i- Bit Of A;1饰 Denote by A[M:l], 则 sin (M-l 1.BitSubword ( 英语 : Bit Subword of )A从 The l- th to the M- th bit , thatis , the word obtained by concatenating ( 第 一 个 字节 , 这 就是 )A[M]A[M( 1 ) ]... A[l+1]A[l].如果A is an integer variable , we denote . 是 的 ,是 的 , 是 的 。A( Same Symbol , Capitalized )AndUnderlined )The 关键 词 : 可变 匹配 Bitwise 编码A. consequently , wedenote by 。A[i] a boolean variable representing the ( 布尔 变量 )i- THBITof the word corresponding to the bitwise encoding of 的 相关 文章A我们 否认A[i]年integerVariable 的S.T. 0 ≤ A[i]≤ 1 Representing 介绍( the integer Value价值of )The i- TH BITofITSw遵命COre SPONDINGTOTheBi twiSEnotation 说明ofA,thAtiS,A=粤n-12i·A;i = 0[i]wEDenote 的ByA[M:l]Thei n ntegervARIABLEin[ 0 ],..., 2M-l+1-1]恢复nntinGThewordA [M:l].在 序列 电路 中 , 我们 使用 未 初始 化 的 符号A,C第 一 个 符号 FirstSymbols像AJ,CJTO Appreciation 说明current 当前And Next Next →价值观of either bits of Words 。3linearizable 编码constructsWe partition an RTL circuit design 我们 参与 了 RTL 电路 设计control 控制Anddatapath 数据成分 。• Control Variables Are Encoded as Boolean Variables(控制变量是编码的布尔变量)原子命题(Atomic Proposes)控制结构是作为布尔组合的控制变量和预测数据路径变量进行操作的。(E.g.,在 “ and ” gateisM. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-147代表 作by The boolean连通 性( “ 九 ” ) 。• Datapath 历 史 变 量 are Encoded 编 码 as integer 变 量 in [ 0 ] , 2 n-( 1 ) 、n成为 The size 大小of The Words in The datapath 。 Datapath历 史 constructs are Encoded , 作 为 Much as possible , as lineararithmetical constraints over datapath 数据变量 。(Wecall 呼叫these constructs ,linear 线性.)The FEW other constructswhich 什么不是 不是linear 线性are Encoded 编码by bit-blasting ,或bymeans of未 解释 的 功能 ( see )§ 4).• someother constraint ,which 什么we call 呼叫接口constraints,are需要TO1We start 开始计数From 0, From The right TO The left 。 this means ,E.G. , that A[ 0 ] isTheleast 是 bit of 的 意思A而 that A[n( 1 ) ] is the most significant bit of 是 指A.8M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-14(重定向自Represent the Interface between the Control and datapathlines)(E.g.,in case of comparators , multiplexers , 或 in of 比较者 , 多 工 , 或( bit-blasting )曲名 : Notice that often the i- th bit of a datapath word 第 一 位 数据 字A关于 Some i可以 是 一 年input 中或The OUTPUT of control 控制猫 。 如果我 知道 ,The BIT requires 的two代表 作 : 年integer Variable 的A[i],Representing 介绍it as( 一 个BIT of )A datapath 数据word ,And原子 提议A[i] Representing it as a " control " wire ( which can be the ) ,即 表示 为 控制 。input 中或OUTPUT of some门 ) 。 then it is ADED年接口constraint inTheform :(1)A[i]→)A[i]=( 1 ),which 什么relates 相关The respective 相关价值 观of The two Representations .23.1Encoding Word 介绍Operations )如果 一 个 字A关于 length l is represented by 一 个 integer 的A then it isnecessary to add a subformula representing the ( 这 是 必要 的 )Range ofA:(2)( 0≤ A)但 Giu)A <2 l).inThe后续 ,为Every 的integer Variable 的ADED( included )dummyone )我们 承年隐含subformula像)2),which 什么will will Not BE报告为短 。3.1.1concatenation 关于Words让w1,...,w KBe Words Of Length 最 后 的 话l1,...,l K我们 希望 , 并 让wBe the result of串联The Words w K,..,w1,that is ; w:= w K... w1.Given The变量 integer w1, ,w K整数 变量 ( integer variable )w is builtas follows :粤K PJ-1(3))w=2)i= 1li)·w J).J = 13.1.2提取of Subwords 字体We需要 ED extracting 的The integer Variable 的A[M : l]From The integerVariable 的A( 注 : e.e. ,to represent the subword相关A[M:l] of a word关于A).依赖 于 价值 观 Depending on the Values l And M我们 必须 以 宽容M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-149来 区分 。案例 :(i) EXtrACtthELeast[MOt] 含 义 nntsuBworDA[M:0][A[n-1:M+1]]wEIntroduction two变量A[M: 0 )And A[n-1 :M+1 ],And ADD The后续for -MULAS :(4))A = A[M: 0 )+ 2 M+1·A[n-1 :M+1 ]).2注意 这A[i] can be implemented from the formula by substituting all ocurrences of ( 可以 将其 从 定义 公式 替换 为 所有 需求 )A[i]WIT h)A[i]=1)ANDByeliminAting)1),thAtiS,φ但 Giu)A[i]→)A[i]=1))=本科φ[A[i]|)A[i]=(1)].10M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-14(ii) EXTRACT年中介 人Subword 子 词A[M:l]We Introduction三 个变量A[l( 1 : 0 ),A[M:l]And A[n-1 :M+1 ]And ADD The后续formulas :(5))A = A[l( 1 : 0 )+ 2 l·A[M:l]+ 2 M+1·A[n-1 :M+1 ]).通告thatA[n-1:M+1],[A[M:0]]in)4)An nDA[l-1:0]AndA[M:l]in)5)MAyBEAdummy variables , unless they are explicitly 愚蠢 的 变量 , 没有其他 的 可能Required 的 。3.1.3签名if a n-bit word 关键 词Ais assigned the value of another n 位 字B, this factis simply 编码as(6))A = B).如果TheASSign MEn ntisPErfor MEDBEtween nSuBw遵命S,E. g 。 An 位w遵命 A[M1 : l1]isA SSign EDThev 欧 盟Alueofanoth Ern- bitwoRDB[M2 :l2]suChthAtM1-l1=M2-l2=n , tHEn nitiS 菲 奥 RStn nECESSArytoexTrac tA[M1:l1]AndB[M2:l2]asin)4),(5).3.1.4李 sAnd Multiplexers 多 工An李命令in The形式”A = d , ( d ,B,C),D成为A BIT And A,BAndC成为n 位Words ,is Encoded 编码简单as :(7))D→)A = B)但 Giu(D→)A = C)).如果BAnd C相互 独特 的 价值 观A( 注 : e.g. ,BAnd Csign it may be helpto explicitly add a mutex ( 可能 会 有 帮助 )Condition :(8))D →)A = B))但 Giu(D →)A = C))但 Giu) (A = B)cn)(A = C)),Latter Force(a = c)to ⊥ And D TO T as soon as(a = b)is assigned to(必须是) T反之亦然。(From Now on we will call the combination of anite statement 现在 我们 将 调用 通讯 的 组合同A mutex条件as in)8),年《 ITEX 》Statement ) 。In the case of nested ite's,like,e. g.在记忆中,你喜欢,你”A, 且 t( d , e ,B,C) ( a ) ( f ) ( f ) ( f )G,H) ” ,D,E And F存在 bits and A,B,C,GAnd Hbeing n-bit words , it is and ficcient toencode multiple conditions ( 加入 N 位 词 , 有效 地 编码 多 个 条件 )直接 :(9)((D但 Giu E)→)A = B))但 Giu((D但 Giu ★E)→)A =C))但 Giu( ?D但 Giu F)→)A = G))但 Giu( ?D但 Giu ★F)→)A =h)).M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-1411如果The李is表演 过among Subwords 的then it is菲里斯 特必要TO extractthe subwords , as described ( 英语 : extract the subwords )above 。3.1.5LATCHESIn sequential circuits , the result 在 序 电路 中 , 输出lof a word latch isupdated to its input 的 值Dat every clock tick 每 一 个 时钟If we keep theclock signal implicit , this fact can be encoded simply 如果 我们 保持 时钟信号 暗示 , 那么 这 件 事 就 可以 被 编码 简单as(10))lJ= D).12M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-14If we use an explicit representation of clock 如果 我们 使用 一 个 explicit 时ck我们 可以 编码 这个 。by(11) lJ=李)CKJ, DJ,l).(In 将军 ,there are many类型of State 状态Elements ,但是all CAN BE减少latches plus 组合 式logic ) 。3.1.6right 正确And左Shift 转换让BBE The result 结果of right shifting 的Aof K bits ,K≤ n. Bis The链接Ktimes 时间Cocks文件夹0... 0A[n-1 :K]Andthus it CAN BE Encoded 编码简单as :(12))B = A[n-1 :K]).何处A[n-1 :K]is EXTTED 的as in)4).让BBe the result of left shift 的 意义Aof K bits ,K≤n. B这 是 一 个concate -Nation 国家A [n-K( 1 : 0 )Andthus it CAN BE Encoded 编码简单as :Ktimes 时间Cocks文件夹0... 0(13))B = 2K·A[n-K( 1 : 0 )),何处A[n-K( 1 : 0 )在 这里 你 可以 玩 Is extected as in .)4).3.2Encoding Mixed bit 混合 位&Word Operations )3.2.1bit 作曲( bith-blasting )TO报告年integer Variable 的A同The boolean变量of ITS BitWise 的DE -Composition作曲A[n(1)]... A[ 1 ]A[ 0 ]我们 需要 引入 N 个 辅助 整数 变量A[n( 1 ) ],...,A[ 0 ]S.T. A[i]∈ [ 0 ],( 1 )为Every 的i,And then ADD Theconstraints :(14)n粤-1)A =2 i·A[i])但 Giui= 0(15))A[i]→)A[i]=( 1 ) ).i1 , 则 tan (1) , The i- th bit has two representations : the integerM. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-1413variable ( 可能 只有 两 个 )A[i]代表 作为 ( 一 位 ) 一 个 datapath 字 ,在 原子 命题 之后A[i] Represents it as A“ 控制 ”威尔 The接口constraints(15) 请参阅以下内容:The respective values of the two representations.332014 年 , Alternative (15是 ( )i)A[i]= ITEX)A[i]; 1 ?( 0 ) “ 。14M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-14i =13.2.2提取of single 单身bitsTheEXTRATION of The i- TH BIT of A word CAN BE 表 演 过 byextracting 的 菲 里 斯 特 最 重 要 的 含 义 subword A[i :0 ) And henceextracting the most 的 意思Bit 关于A[i: 0 ):(16)(17))A = A[i: 0 )+2i+1·A[n-1 :i+1 ])但 Giu)A[i]→)A[i: 0 )≥2 i)).3.2.3Addition and Multiplication By 更多 内容constant让DBe the result of the sum between be the result of the sum between be的 结果AAnd BAnd the carry-in bit 而 在 那边CIN, 且 let Cout be thecarry-out bit 是 什么 意思To encode this , we need an extra integer value( 我们 需要 一 个 额外 的 整数 值 )CIN∈ [ 0 :[ 1 ] :(18) CIN→)CIN =( 1 )(19) Cout→)A + B + CIN≥ 2 n)(20) D =李)A + B + CIN≥ 2 n, a + B + CIN-2 n, a + B + CIN)解析 : 解析 函数 y (18) , 且 (19我们 需要 的 只是 必要 的 如果 我们需要Carry-in And carry out成为explicitly代表 作as boolean变量 。如果not ,年Alternative 替代Encoding [5] is(21))D = A + B + CIN-σ·2 n), σ ∈ [ 0 ],( 1 ).thisis particularly convenient 方便因为it Prevents M AATH SAT From splitting在 第 二 个 条件 下 , (A + B + CIN≥ 2 n) , 则 sin (20). 1 , 则 tan(21) is that it CAN BE easily Generalized 一般TO The case of multiple 复数SUMS of K WordsKi= 1 Ai:”(22))D =粤KA i-σ·2 n), σ ∈ [ 0 ], k-( 1 ).Similarly ,let DBE The result 结果of The product 产品between AAnd Aconstant C. 我们 可以 将 它 编码 为 :(23) )D = A·C-σ·2 n),σ ∈ [ 0 ], c-( 1 ).在 (21) , (22) , (23 if a boolean variable ( 布尔 变量 的Crepresenting over fllow is explicitly needed , we can encode this fact bythe additional interface 以上 的 界面 是 需要 的 , 我们 可以 将 这 一 事实编码constraintD=粤M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-1415(24) C→)σ≥( 1 ).3.2.4unary 的And ,或And NotTheunary 的And of The word A,Written &A,is true我 铜all The bits ofAare true 。We can encode this fact 我们 可以 编码 这个 事实by :(25))A = 2 n-( 1 ).Similarly ,The unary 的或of The word A,Written |A,is true我 铜ATleast ONE of the 的bits of Ais true 。 We CAN encode这个事实by :16M. Bozzano et Al 。 /Electronic Notes in理论计算机science 科学144( 2006 )3-14CCCiMiiii(26))A≥( 1 ).Theunary 的Not of The n 位word A,Written! A,is The n 位word互补所有 位 ( Companing all bits in )A. We can encode this fact by 我们 可以编码 这 件 事 的 事实expression 表达(27)( 2 n--1 -A).Thus,E.G.,如果B是 ! A《 我们 写 的 》B = ( 2 )n--1 -A)".3.2.5饰 Bitwiseoperations by constantsletw1:=wopCBETherE SULToFAbi twi S EoPERationop∈{&&,||,^^}betweenA word wAnd A constant word C. We CAN分解CINTO A链接C1C0... C1C0of sequences 结果of 1 S And 0 ' s of lengths l1l0... l1l0KK00令人怀念的,M1+ l1- 1 M1M0+ l0- 1 M0KK0 0M1+ l1- 1 M1M0+ l0- 1 M0KKKKKK...000000,111...111000...000`返回 CocuresX`返回 CocuresX111...111000...000`返回 CocuresX`返回CocuresX1010KK00同The intended 意思meaning that M J+ l J-J And M Jare The Indexes 的RespectivelyiiiofThe msb And LSB of CJ,为Every 的i ,J,And that l J= 0 代表 the事实iithat CJ是 一 个 Empty sequence .如果op is The BitWise 的And”&&",then we HAVE粤(28))w1=12i ·w[M1+l1-1 :M1]).i= 0... k ,l1≥ 0iii如果op is the bitwise or " ( 是 的 , 是 的 )||” ( Then We )HAVE粤11粤K0(29))w1=2Mi·( 2li-( 1 )+2Mi
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功