CN107688704A - 基于Petri网模型的ASIP行为逻辑综合方法 - Google Patents

基于Petri网模型的ASIP行为逻辑综合方法 Download PDF

Info

Publication number
CN107688704A
CN107688704A CN201710743348.3A CN201710743348A CN107688704A CN 107688704 A CN107688704 A CN 107688704A CN 201710743348 A CN201710743348 A CN 201710743348A CN 107688704 A CN107688704 A CN 107688704A
Authority
CN
China
Prior art keywords
text
name
transition
pnml
petri
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710743348.3A
Other languages
English (en)
Inventor
朱勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinling Institute of Technology
Original Assignee
Jinling Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jinling Institute of Technology filed Critical Jinling Institute of Technology
Priority to CN201710743348.3A priority Critical patent/CN107688704A/zh
Publication of CN107688704A publication Critical patent/CN107688704A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/10Processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种计算机体系结构的设计,特别是涉及一种针对专用指令集处理器的体系结构的设计,具体来说包括如下三个步骤:步骤1.建立基于Petri网的ASIP流水线行为模型,并采用PNML进行规范性描述;步骤2.根据Petri网与状态机的有机关联机映射为状态机视图后,实现逻辑综合;步骤3.将EDA工具链生成的硬联逻辑,下载到真实物理环境SoC中检验与运行,进行性能评估,优化流水线设计。本方法作为一种极具潜力的系统级设计方法,获得了规范的Petri网模型语义与行为,可以预期验证系统功能的正确性,还能作为综合工具的输入以及系统技术文档标准,并且可以通过第三方工具扩展其可执行描述功能。

Description

基于Petri网模型的ASIP行为逻辑综合方法
技术领域
本发明涉及一种计算机体系结构的设计,特别是涉及一种针对ASIP(ApplicationSpecific Instruction Set Processor,专用指令集处理器)体系结构的设计。
背景技术
流水线是处理器的核心组成,并且设计及其优化极其复杂。除了教科书上提供基本运行原理外,不会给出实现细节。现有流水线设计主要采用传统的逻辑设计方法,设计其数据通道和控制器状态机,要靠设计者的经验;当然,采用先进的EDA软件可以部分提高设计效率。
现有设计方法中,将典型情形下的流水线信号时序组合定义为相应的状态,并通过状态机时序逻辑实现。由于直接面对最底层的信号时序,对于复杂(多发射、乱序、相关等)和特殊(ASIP用户定制指令)的行为,设计难度和周期就会增加;相应的验证、调试也就会更加困难,更不用说优化与扩展了。
本专利所要解决的技术问题是:
①建立Petri网流水线模型
采用Petri网模型中位所、迁移、托肯等元素建立流水线行为模型,并通过PNML(Petri网标记语言)描述其行为逻辑。
②状态机视图映射
利用Petri网模型与流水线状态机元素的有机关联,如位所与状态、迁移与转换、托肯与条件等,映射为状态机视图。状态机视图是流水线及其控制逻辑传统设计方法,从而保证了行为逻辑可以实现综合。
发明内容
本方法基于Petri网模型对ASIP流水线行为建模,并采用PNML进行规范性描述;进而根据Petri网与状态机的有机关联机映射为状态机视图后,实现逻辑综合;最终产生可以仿真验证的功能模块,进行性能评估,优化流水线设计。
具体来说包括如下三个步骤:步骤1.对ASIP流水线行为建立Petri网模型,并采用PNML进行规范性描述;步骤2.根据Petri网与状态机的有机关联机映射为状态机视图后,实现逻辑综合;步骤3.将EDA工具链生成的硬联逻辑,下载到真实物理环境SoC中检验与运行,进行性能评估,优化流水线设计。
有益效果
Petri网作为一种系统建模工具,特别适合描述系统的控制流、并发和异步特性,与状态机行为模型相比更具优势。本发明方法通过建模将复杂问题抽象化,借鉴Petri网强大的建模能力以及较完善的验证手段,建立流水线行为模型,并通过PNML进行描述,再映射为状态机视图,最终的综合逻辑直接用于ASIP功能模块设计及其硬件实现。
PNML语言严格定义了对象元模型的语义,并为对象结构、行为的捕获和通信提供了符号表示,是基于模型的系统级设计方法。同时,其规范化特性也为设计角色间互相交流消除了二义性,提高设计效率。
高级CPN模型中token可以带有信息,克服了传统Petri网中仅仅将其看作一般初始化的不足。在描述多种相关情形时,通过定义颜色集对进行模型简化和规整,加强了Petri网的建模能力。
本方法作为一种极具潜力的系统级设计方法,得了规范的Petri网模型语义与行为,可以预期验证系统功能的正确性,还能作为综合工具的输入以及系统技术文档标准,并且可以通过第三方工具扩展其可执行描述功能。
附图说明
下面结合附图对本发明的作进一步说明。
图1是RISC流水线Petri网模型;
图2是TTA流水线Petri(P/N)网模型;
图3是TTA流水线Petri(CPN)网模型;
具体实施方式
流水线行为逻辑及其ADL描述模型是处理器设计的关键问题之一,进一步得到基于Petri网模型的流水线ADL描述,即PNML,经第三方工具验证后综合为HDL,并在EDA和SoC环境中进行体系结构探索及优化。
在计算机体系结构中,可以用Petri网中的位置用来表示系统的局部状态,如队列、缓冲、资源等;变迁则用来描述引起系统状态改变的事件,如信息处理、存储器读写、数据收发等操作;弧表明状态和事件之间的关系,还能凭借位置容量和弧权表述其中的数量属性,从而给出基于Petri网模型的流水线行为。流水线的本质是部件、行为以及时序的集合,它们之间的映射关系便决定了流水线的结构。流水线结构中的元素可以分成两类:一类是寄存器,用于存储数据;另一类是执行部件,它反映了指令的功能行为。在Petri网模型中,可以用库所映射存储部件,用变迁表示功能执行,用扩展token的流动来模拟指令在流水线中的流动。
本发明专利的实现包括如下步骤:
步骤1.建立基于Petri网的ASIP流水线行为模型,并采用PNML进行规范性描述;
通过映射行为、构件和时序,Petri网流水线模型可描述不同的目标体系结构,它是一种有效的形式验证机制。基本的Petri网模型由一个三元组N=(P,T,F)构成。其中P为位置(也称库所)集合,包括Token标识,描述点火行为,T为迁移集合,F关系集合称作弧。基于Petri网模型将集合P={PC,IR,RF,MEM}映射为状态一系列的状态,可以描述流水线工作状态和物理对象;T={IF,ID,EXE,L/S,WB,stall}用于描述指令流水段行为,使得Petri网具有执行语义。3种典型流水线Petri网模型描述如下:
①RISC(精简指令集)流水线Petri网模型如图1所示:
流水线的基本对象有指令缓冲寄存器IR、数据缓冲寄存器DR、rs缓冲寄存器A、rt缓冲寄存器B以及ALU缓冲寄存器C,5段流水为IF、ID、EXE、L/S、WB。模型中全面表述了J(跳转)、B(分支)、R(寄存器)、I(立即数)和LS(存储器)各类指令行为。
②TTA(传输触发体系结构)流水线P/N Petri网模型如图2所示:
典型TTA包含3类基本寄存器,即操作数寄存器、触发寄存器和结果寄存器。其中触发寄存器触发数据传输,有效位V控制流水线功能阶段,逻辑单元则作为功能单元组合逻辑部分。
③TTA流水线CPN(着色网)Petri网模型如图3所示:
CPN使token着色,即具有数据属性,对于描述复杂对象非常有效。对于指令中源、目的寄存器采用统一译码,通过让token具有不同的数据属性来描述指令的具体功能。
与状态机相比Petri网模型更加强调了变迁的实质,很好地兼顾了流水线控制器与数据路径的描述与设计。
PNML描述
PNML是基于XML交换格式标准的Petri网模型描述的语言,它采用了UML元模型,即PNML Core Model来定义共享概念。它们之间映射的元素如表1所示:
表1 PNML Core Model元素表
参照图1RISC流水线Petri网模型,得到其PNML基本描述:
<place id="p1"><name><text>C</text></name></place>//RISC C库所
<place id="p2"><name><text>......</text></name></place>//RISC其它库所
<transition id="t1"><name><text>EXE</text></name></transition>//EXE迁移
<transition id="t2"><name><text>......</text></name></transition>//其它指令
参照图2TTA流水线Petri网模型,得到其PNML描述:
<place id="p3"><name><text>FU</text></name></place>//TTA FU库所
<transition id="t3"><name><text>TR</text></name></transition>//触发迁移
<transition id="t4"><name><text>V0</text></name></transition>//V=0迁移
<transition id="t5"><name><text>V1</text></name></transition>//V=1迁移
<transition id="t6"><name><text>R</text></name></transition>//读结果迁移
步骤2.根据Petri网与状态机的有机关联映射为状态机视图后,实现逻辑综合;
即PNML描述的Petri网流水线模型,以及传统方式描述的ASIP系统,如布尔方程式、真值表、状态机等都将通过EDA工具链自动综合为芯片对应的逻辑组件。
逻辑综合能够找到基于系统功能和性能需求,且支持结构单元库的系统架构的最优或可行性实现。针对采用上述ADL,即PNML描述的Petri网流水线模型,以及传统方式描述的ASIP系统,如布尔方程式、真值表、状态机等都将通过EDA工具链自动综合为芯片对应的逻辑组件,如寄存器和门级网表,最终下载到真实物理环境SoC中检验与运行。
Petri网比状态机更加适合模型行为描述。一个基本的三元Petri网模型N=(P,T,F)的HDL实体代码如下所示:
步骤3.将EDA工具链生成的硬联逻辑,下载到真实物理环境SoC中检验与运行,进行性能评估,优化流水线设计。
本发明的不局限于上述实施例所述的具体技术方案,凡采用等同替换形成的技术方案均为本发明要求的保护范围。

Claims (1)

1.一种基于基于Petri网模型的ASIP行为逻辑综合方法,其特征在于包括如下步骤:
步骤1.建立基于Petri网的ASIP流水线行为模型,并采用PNML进行规范性描述:
Petri网流水线模型通过映射行为、构件和时序描述不同的目标体系结构,由一个三元组N=(P,T,F)构成;其中P为位置(也称库所)集合,包括Token标识,描述点火行为,T为迁移集合,F关系集合称作弧。Petri网模型用集合P={PC,IR,RF,MEM}描述流水线工作状态和物理对象,集合T={IF,ID,EXE,L/S,WB,stall}用于描述指令流水段行为,进而映射为一系列的状态。
PNML是基于XML交换格式标准的Petri网模型描述的语言,它采用了UML元模型,即PNMLCore Model来定义共享概念。它们之间映射的元素如表1所示:
表1 PNML Core Model元素表
根据RISC流水线Petri网模型,得到其PNML基本描述:
<place id="p1"><name><text>C</text></name></place>//RISC C库所
<place id="p2"><name><text>......</text></name></place>//RISC其它库所
<transition id="t1"><name><text>EXE</text></name></transition>//EXE迁移
<transition id="t2"><name><text>......</text></name></transition>//其它指令
根据TTA流水线Petri网模型,得到其PNML描述:
<place id="p3"><name><text>FU</text></name></place>//TTA FU库所,
<transition id="t3"><name><text>TR</text></name></transition>//触发迁移,
<transition id="t4"><name><text>V0</text></name></transition>//V=0迁移,
<transition id="t5"><name><text>V1</text></name></transition>//V=1迁移,
<transition id="t6"><name><text>R</text></name></transition>//读结果迁移。
步骤2.根据Petri网与状态机的有机关联映射为状态机视图后,可以实现逻辑综合:
即PNML描述的Petri网流水线模型,以及传统方式描述的ASIP系统,都将通过EDA工具链自动综合为芯片对应的逻辑组件;
一个基本的三元Petri网模型N=(P,T,F)的HDL实体代码如下所示:
步骤3.将EDA工具链生成的硬联逻辑,下载到真实物理环境SoC中检验与运行,进行性能评估,优化流水线设计。
CN201710743348.3A 2017-08-25 2017-08-25 基于Petri网模型的ASIP行为逻辑综合方法 Pending CN107688704A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710743348.3A CN107688704A (zh) 2017-08-25 2017-08-25 基于Petri网模型的ASIP行为逻辑综合方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710743348.3A CN107688704A (zh) 2017-08-25 2017-08-25 基于Petri网模型的ASIP行为逻辑综合方法

Publications (1)

Publication Number Publication Date
CN107688704A true CN107688704A (zh) 2018-02-13

Family

ID=61154971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710743348.3A Pending CN107688704A (zh) 2017-08-25 2017-08-25 基于Petri网模型的ASIP行为逻辑综合方法

Country Status (1)

Country Link
CN (1) CN107688704A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110362A (zh) * 2019-03-29 2019-08-09 苏州冠讯电子科技有限公司 一种使用嵌入式命令设计芯片的方法
CN111211945A (zh) * 2020-01-09 2020-05-29 全球能源互联网研究院有限公司 计及信息时效的嵌入式装置安全通信协议验证方法和系统
CN112613199A (zh) * 2020-09-12 2021-04-06 山东科技大学 FPGA加速的有色Petri网仿真方法及Verilog HDL代码生成工具
CN117369867A (zh) * 2023-09-28 2024-01-09 中国人民解放军国防科技大学 面向指令集及工具链自动生成的指令集架构模型描述方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040006584A1 (en) * 2000-08-08 2004-01-08 Ivo Vandeweerd Array of parallel programmable processing engines and deterministic method of operating the same
CN101206687A (zh) * 2007-12-18 2008-06-25 同济大学 一种提高分布式机电装备的动态安全性的方法
CN101561833A (zh) * 2009-05-08 2009-10-21 东南大学 专用指令集处理器的设计方法
US20130268255A1 (en) * 2006-03-23 2013-10-10 Lockheed Martin Corporation Multiple-entity scenario simulation incorporating human interaction
CN103389704A (zh) * 2013-07-18 2013-11-13 重庆大学 基于Petri网控制流程建模的创建石膏砌块成型生产线方法
CN105844389A (zh) * 2016-03-17 2016-08-10 安徽理工大学 一种含有相关资源约束的fms无死锁调度控制新方法
CN105930573A (zh) * 2016-04-18 2016-09-07 金陵科技学院 基于可执行规约的红外热像仪设计方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040006584A1 (en) * 2000-08-08 2004-01-08 Ivo Vandeweerd Array of parallel programmable processing engines and deterministic method of operating the same
US20130268255A1 (en) * 2006-03-23 2013-10-10 Lockheed Martin Corporation Multiple-entity scenario simulation incorporating human interaction
CN101206687A (zh) * 2007-12-18 2008-06-25 同济大学 一种提高分布式机电装备的动态安全性的方法
CN101561833A (zh) * 2009-05-08 2009-10-21 东南大学 专用指令集处理器的设计方法
CN103389704A (zh) * 2013-07-18 2013-11-13 重庆大学 基于Petri网控制流程建模的创建石膏砌块成型生产线方法
CN105844389A (zh) * 2016-03-17 2016-08-10 安徽理工大学 一种含有相关资源约束的fms无死锁调度控制新方法
CN105930573A (zh) * 2016-04-18 2016-09-07 金陵科技学院 基于可执行规约的红外热像仪设计方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
YANYAN GAO .ECT: "Formal Verification of Bypassed Processor Pipelines", 《2008 THE 9TH INTERNATIONAL CONFERENCE FOR YOUNG COMPUTER SCIENTISTS》 *
YONG ZHU: "Study on the Pipeline Logic Based on Petri Net", 《2012 THIRD INTERNATIONAL CONFERENCE ON THEORETICAL AND MATHEMATICAL FOUNDATIONS OF COMPUTER SCIENCE(ICTMF 2012)》 *
朱勇: "TTA流水线Petri网模型", 《微电子学与计算机》 *
朱赟 等: "基于Petri网的ASIP体系结构形式化建模方法研究", 《小型微型计算机系统》 *
赵谦: "基于Petri网的ASIP流水线研究", 《中国硕士学位论文全文库》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110362A (zh) * 2019-03-29 2019-08-09 苏州冠讯电子科技有限公司 一种使用嵌入式命令设计芯片的方法
CN111211945A (zh) * 2020-01-09 2020-05-29 全球能源互联网研究院有限公司 计及信息时效的嵌入式装置安全通信协议验证方法和系统
CN112613199A (zh) * 2020-09-12 2021-04-06 山东科技大学 FPGA加速的有色Petri网仿真方法及Verilog HDL代码生成工具
CN112613199B (zh) * 2020-09-12 2022-05-24 山东科技大学 FPGA加速的有色Petri网仿真方法及Verilog HDL代码生成工具
CN117369867A (zh) * 2023-09-28 2024-01-09 中国人民解放军国防科技大学 面向指令集及工具链自动生成的指令集架构模型描述方法

Similar Documents

Publication Publication Date Title
Huang et al. OpenTimer v2: A new parallel incremental timing analysis engine
Bailey et al. ESL Models and their Application
CN101231589B (zh) 用于原位开发嵌入式软件的系统和方法
CN107688704A (zh) 基于Petri网模型的ASIP行为逻辑综合方法
US10248746B1 (en) Method and apparatus for estimating ideal power of an integrated circuit design
US11734480B2 (en) Performance modeling and analysis of microprocessors using dependency graphs
US7203915B2 (en) Method for retiming in the presence of verification constraints
Takach High-level synthesis: Status, trends, and future directions
Schmidt et al. A new formal verification approach for hardware-dependent embedded system software
US8160861B2 (en) System and method for modelling a hardware component of a data processing apparatus
Flake et al. Verilog HDL and its ancestors and descendants
Villarraga et al. Software in a Hardware View: New Models for HW-dependent Software in SoC Verification
Sinha et al. Correct-by-construction approaches for SoC design
Greaves System on Chip Design and Modelling
Schmidt et al. A computational model for SAT-based verification of hardware-dependent low-level embedded system software
Ul Ain et al. Formal timing analysis of digital circuits
Chen et al. Out-of-order parallel discrete event simulation for electronic system-level design
Sohofi et al. System‐level assertions: approach for electronic system‐level verification
Flake Why SystemVeriog?
Nepomnyashchy et al. High-Level Design Flows for VLSI Circuit
Kallel et al. Monitoring transaction level SystemC models using a generic and aspect-oriented framework
Possignolo et al. Automated pipeline transformations with Fluid Pipelines
Marschner et al. Assertion-based verification
Villarraga Formal Verification of Firmware-Based System-on-Chip Modules
Loitz et al. Formal hardware/software co-verification of application specific instruction set processors

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180213