基于平台的基于平台的CTG SoC系统建模方法系统建模方法
面向基于平台的SoC设计方法,本文提出约束任务流图模型(CTG)作为SoC系统模型,提出了基于平台的CTG
SoC系统建模方法,实现了SoC系统建模环境CPSME。
引言 引言
基于平台的设计
( 1) 只能描述功能,不能描述性能;
( 2) 粒度过细且不可变;
( 3)有的模型不支持系统原型代码生成,因此难以进行快速的系统仿真验证以及系统设计空间探索。
本文提出约束任务流图
基于平台的设计方法 基于平台的设计方法
在SoC系统软硬件协同设计领域,平台是关于虚拟组件(Virtual Component,又称为虚部件)与体系结构框架的库。在平台
中包含一些可集成的并且预先验证的软件IP与硬件IP块、模型、EDA工具与软件工具、库以及通过体系结构探索 /集成/验证来
支持快速产品开发的方法学。基于平台的设计方法是一种面向集成、强调系统级重用的SoC设计方法,可显著降低SoC系统开
发风险、代价与上市时间。
图1给出了我们基于层次平台的SoC系统设计方法Hi-PBD (Hierarchical PBD,简称Hi-PBD) ,它将SoC系统设计分为系统
模型层、虚部件层和实部件层,达到系统设计中功能与结构分离、计算与通讯分离的目的。该方法通过设计规划与虚实综合完
成三个设计层次之间的两次映射。Hi-PBD方法不仅重用三个层次的设计模板,而且重用设计层次间两次映射的结果,提高了
重用效率。此外,Hi-PBD方法支持在三个层次修改相应设计模板以增强设计灵活性,采用性能约束传播机制确保最终设计目
标满足性能要求。特别是SoC虚部件层的采用,使虚部件层作为SoC系统模型与实部件RTL描述之间的桥梁,可有效降低从
SoC系统模型直接映射到实部件RTL描述的难度。
图1 基于层次平台的SoC系统设计方法
约束任务流图模型 约束任务流图模型
定义 定义
(1) 任务:任务是为达到某一特定目标而指定的动作序列,此动作序列获取输入信息,引发任务内部某些状态的变化,并
产生输出信息。任务可以被划分到硬件或软件上实现。可描述为:Task = { InputSeq, ActionSeq, OutputSeq }
(2) 约束:这是一个包括时间、空间、功耗、面积、成本等代价的多元组。必须在所指定的代价范围内实现任务,并以约
束信息作为选择任务软硬件实现方式的依据。可描述为:Constraint = { TimeConstr, SpaceConstr,
PowerConstr,AreaConstr, PriceConstr.}
(3) 约束任务流图:约束任务流图CTG (Constrained Taskflow Graph,简称CTG)描述了任务间的层次关系与执行关系。
约束任务流图中的每个任务都有约束限制,作为SoC系统设计规划、软硬件划分、高层综合与软硬件协同仿真等过程中要求任
务必须满足的实现约束。可描述为: CTG = { TaskTree, CommunSet, SubtaskFSMSet, ConstraintSet} 。
用 用CTG模型描述模型描述SoC系统任务系统任务
任务封装
分别定义属性视图、约束视图、算法视图、细化视图与子任务执行控制机视图,将所有与任务相关的设计信息封装在一
起。
任务细化