论文部分内容阅读
符号BDD(BinaryDecisionDiagram,二叉决策图)是布尔函数的一种表达方法,可对目标数据进行层次划分与表示。基于BDD的符号算法已被广泛应用于图的表示与处理、装配序列规划、组合电路综合与验证等领域。 随着目标数据规模及其计算量的递增,现有计算环境对数据处理时间逐渐增大,其时间消耗越来越难满足用户需求,如何加快符号技术对数据的处理速度受到了越来越多的学者关注。现阶段基于通用处理器环境的软件处理方式对频繁的数据操作仍存在较大时间消耗;基于GPU计算环境的符号操作运算尽管能获得可观的速度,但在成本敏感的嵌入式领域难以适应。故设计面向符号BDD专用处理器的硬件加速技术成为减少信息处理时间的一种有效方法。 本文结合BDD对图的信息处理原理,从数据结构、操作算法、指令系统及其计算架构等多个角度对其计算过程进行改进,并设计专用处理器实现其信息处理过程,达到信息处理的加速目的。本文主要工作有: (1)依据数据的物理存取过程,提出一种基于二叉静态链表的BDD数据表式。该表示以四元组表示节点信息,兼顾传统的顺序存储与链式存储的优点,利于硬件电路对数据的快速存取。依据所提出的节点四元化二叉静态链表结构,以层次遍历机制重新演绎BDD的操作算法,包括Apply、ITE、置换、量化、求值、等价性判定以及可满足性问题求解算法。分析层次机制内的节点信息与地址的几何特征以减少节点操作过程的计算量,同时,炼所演绎操作算法常用的原子操作。 (2)引入ASIP(ApplicationSpecificInstruction-setProcessor,应用专用指令集处理器)技术,依据所提出的原子操作设计专用指令集合,结合部分通用指令共同组成专用处理器控制器,增设映射数据专用存储器,搭建专用CPU架构级计算系统。以Xilinx平台的Vertex5E系列FPGA(Field-ProgrammableGatesArray,现场可编程门阵列)综合并该处理器框架,以特殊指令描述操作算法并载入处理器运行与仿真,以经典ARM指令同时运行操作算法,对比两者指令周期消耗。 (3)为了缓解在内存限制条件下,四元化层次遍历机制的冗余节点计算问题及递归算法的映射方式中内存碎片问题,提出基于状态分析机制的操作算法。该算法基于四元化节点的序列下标作为映射关键字,以均匀化操作算法过程的映射表,避免冗余节点产生并提高微处理器环境下的内存利用率。