基于模型的SystemC代码生成方法技术

技术编号:14756471 阅读:177 留言:0更新日期:2017-03-02 23:11
本发明专利技术公开了一种基于模型的SystemC代码生成方法,涉及工业电子工具技术领域。该方法,通过继承Modelook中行为逻辑模型数据,实现模型数据SystemC代码的自动生成,直接对行为逻辑模型数据进行数字化仿真验证,大大缩小了经济成本,节约了时间。另外,采用软硬件协同设计语言对行为逻辑模型数据进行验证,实现了对工业电子系统硬件功能和软件功能的集成仿真验证。

【技术实现步骤摘要】

本专利技术涉及工业电子工具
,涉及工业电子嵌入式系统建模至仿真过程中仿真代码的自动生成方法,尤其涉及一种基于模型的SystemC代码生成方法
技术介绍
自动代码生成技术作为一个新兴的工程实现技术,在国外航空航天国防领域、汽车领域、工业控制及自动化等领域,得到了广泛的应用。20世纪90年代,随着软件设计工具的发展,国外广泛采用基于模型的设计方法,大大提高了系统的开发效率,基于模型的开发方法中,一项核心的技术就是自动代码生成技术,在快速原型及系统实现等方面做出了巨大贡献。在航空航天国防领域,有两个优秀的设计软件工具——MathWorks公司的MATLAB和Esterel公司的SCADE,在自动代码生成技术方面得到了众多厂商的青睐。目前,自动代码生成技术多为C++代码自动生成或Java代码自动生成,而工业电子系统需要软硬件协作完成任务,这就使得单一的C++代码和Java代码无法全面的完成工业电子系统的仿真工作,此外,软硬件行为逻辑模型的验证,也亟需通过数字化的手段实现。
技术实现思路
本专利技术的目的在于提供一种基于模型的SystemC代码生成方法,从而解决现有技术中存在的前述问题。为了实现上述目的,本专利技术采用的技术方案如下:一种基于模型的SystemC代码生成方法,包括如下步骤:S1,将Simox仿真系统中不同的模型数据,分别使用不同的数据库表单和字段进行存储;S2,逐一读取各数据库表单中的字段信息,并将所述字段信息转化为相应的SystemC代码;并将所有的SystemC代码合并组成为符合SystemC标准的完整函数体;S3,生成能够在所述完整函数体中调用的与Simox仿真系统中的模型对应的主函数;S4,生成端口描述代码。优选地,S1中,所述Simox仿真系统中的模型包括:场景模型,包含完整的仿真模型;设备模型,为仿真场景中用的设备,模拟真实设备;信号模型,为仿真场景中设备间的联系、触发关系,模拟真实环境中的信号逻辑模型,为仿真场景中,设备间信号的逻辑关系;激励模型,为驱动整个仿真场景运行的初始条件或初始值;监控模型,记录仿真过程中,完整的数据信息、计算过程和显示结果;仿真控制模型,用于控制仿真过程中的步长、时间、触发条件、运行速度和算法信息;S1中,所述数据库表单包括:场景表单、设备表单、信号表单、逻辑表单、激励表单、监控表单和仿真控制表单。优选地,S2具体为:读取所述场景表单中的字段信息,转化为场景描述代码和场景代码文件;读取所述设备表单中的字段信息,转化为设备描述代码和设备代码文件;读取所述信号表单中的字段信息,转化为信号描述代码和信号代码文件;读取所述逻辑表单中的字段信息,转化为逻辑描述代码和逻辑代码文件;读取所述激励表单中的字段信息,转化为激励描述代码和激励代码文件;读取所述监控表单中的字段信息,转化为监控描述代码和监控代码文件,在所述监控描述代码中自动添加逻辑计算结果、输入、输出功能代码,组成符合SystemC标准的完整的用于获取及显示仿真代码运行结果数据的一个函数体;读取所述仿真控制表单的字段信息,转化为仿真控制描述代码和仿真控制代码文件,并将所述设备描述代码、信号描述代码、逻辑设备描述代码和仿真控制描述代码合并组成符合SystemC标准的用于仿真运行、运算的多个完整函数体。优选地,S3具体为,在S2中读取到的所有字段信息中,单独提取基本信息,并添加函数头,生成能够在所述完整函数体中调用的与Simox仿真系统中的模型对应的主函数。优选地,所述基本信息包括名称。优选地,所述主函数包括设备函数、信号函数、逻辑函数、激励函数、监控函数和仿真控制函数。优选地,S4具体为,将信号的输入输出关系及信号的类型,转换为SystemC代码中的端口类型,并把名称统一,保留类型,生成端口描述代码。本专利技术的有益效果是:本专利技术实施例提供的一种基于模型的SystemC代码的生成方法,通过继承Modelook中行为逻辑模型数据,实现模型数据SystemC代码的自动生成,直接对行为逻辑模型数据进行数字化仿真验证,大大缩小了经济成本,节约了时间。另外,采用软硬件协同设计语言对行为逻辑模型数据进行验证,实现了对工业电子系统硬件功能和软件功能的集成仿真验证。附图说明图1是本专利技术实施例提供的一种基于模型的SystemC代码生成方法流程示意图;图2是具体实施例的方法流程示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,本专利技术实施例提供了一种基于模型的SystemC代码生成方法,包括如下步骤:S1,将Simox仿真系统中不同的模型数据,分别使用不同的数据库表单和字段进行存储;S2,逐一读取各数据库表单中的字段信息,并将所述字段信息转化为相应的SystemC代码;并将所有的SystemC代码合并组成为符合SystemC标准的完整函数体;S3,生成能够在所述完整函数体中调用的与Simox仿真系统中的模型对应的主函数;S4,生成端口描述代码。其中,S1中,所述Simox仿真系统中的模型包括:场景模型,包含完整的仿真模型;设备模型,为仿真场景中用的设备,模拟真实设备;信号模型,为仿真场景中设备间的联系、触发关系,模拟真实环境中的信号逻辑模型,为仿真场景中,设备间信号的逻辑关系;激励模型,为驱动整个仿真场景运行的初始条件或初始值;监控模型,记录仿真过程中,完整的数据信息、计算过程和显示结果;仿真控制模型,用于控制仿真过程中的步长、时间、触发条件、运行速度和算法信息;S1中,所述数据库表单包括:场景表单、设备表单、信号表单、逻辑表单、激励表单、监控表单和仿真控制表单。S2具体可以为:读取所述场景表单中的字段信息,转化为场景描述代码和场景代码文件;读取所述设备表单中的字段信息,转化为设备描述代码和设备代码文件;读取所述信号表单中的字段信息,转化为信号描述代码和信号代码文件;读取所述逻辑表单中的字段信息,转化为逻辑描述代码和逻辑代码文件;读取所述激励表单中的字段信息,转化为激励描述代码和激励代码文件;读取所述监控表单中的字段信息,转化为监控描述代码和监控代码文件,在所述监控描述代码中自动添加逻辑计算结果、输入、输出功能代码,组成符合SystemC标准的完整的用于获取及显示仿真代码运行结果数据的一个函数体;读取所述仿真控制表单的字段信息,转化为仿真控制描述代码和仿真控制代码文件,并将所述设备描述代码、信号描述代码、逻辑设备描述代码和仿真控制描述代码合并组成符合SystemC标准的用于仿真运行、运算的多个完整函数体。其中,生成的代码,里面包括了可描述模型完整信息的函数、运算、参数、条件、参数类型等信息,可在VC6.0的环境中编译及运行,并可利用VC6.0环境中的查错功能,在编译过程中定位自动生成代码的格式错误,并可设置断点。编译通过后,代码可直接运行,在运行过程中,通过生成的激励代码中的条件或数字参数,在函数运算中进行运算,输出运算结果,并用监控代码读取输出的结果并在VC6.0的环境下显示,观察系统运行状态和结果,实现了基于模型的数字化的系统的代码生成和模拟运行。代码文件是作为在环境中运行的参数、条本文档来自技高网...
基于模型的SystemC代码生成方法

【技术保护点】
一种基于模型的SystemC代码生成方法,其特征在于,包括如下步骤:S1,将Simox仿真系统中不同的模型数据,分别使用不同的数据库表单和字段进行存储;S2,逐一读取各数据库表单中的字段信息,并将所述字段信息转化为相应的SystemC代码;并将所有的SystemC代码合并组成为符合SystemC标准的完整函数体;S3,生成能够在所述完整函数体中调用的与Simox仿真系统中的模型对应的主函数;S4,生成端口描述代码。

【技术特征摘要】
1.一种基于模型的SystemC代码生成方法,其特征在于,包括如下步骤:S1,将Simox仿真系统中不同的模型数据,分别使用不同的数据库表单和字段进行存储;S2,逐一读取各数据库表单中的字段信息,并将所述字段信息转化为相应的SystemC代码;并将所有的SystemC代码合并组成为符合SystemC标准的完整函数体;S3,生成能够在所述完整函数体中调用的与Simox仿真系统中的模型对应的主函数;S4,生成端口描述代码。2.根据权利要求1所述的基于模型的SystemC代码生成方法,其特征在于,S1中,所述Simox仿真系统中的模型包括:场景模型,包含完整的仿真模型;设备模型,为仿真场景中用的设备,模拟真实设备;信号模型,为仿真场景中设备间的联系、触发关系,模拟真实环境中的信号逻辑模型,为仿真场景中,设备间信号的逻辑关系;激励模型,为驱动整个仿真场景运行的初始条件或初始值;监控模型,记录仿真过程中,完整的数据信息、计算过程和显示结果;仿真控制模型,用于控制仿真过程中的步长、时间、触发条件、运行速度和算法信息;S1中,所述数据库表单包括:场景表单、设备表单、信号表单、逻辑表单、激励表单、监控表单和仿真控制表单。3.根据权利要求2所述的基于模型的SystemC代码生成方法,其特征在于,S2具体为:读取所述场景表单中的字段信息,转化为场景描述代码和场景代码文件;读取所述设备表单中的字段信息,转化为设备描述代码和设备代码文件;读取所述信号表单中的字段信...

【专利技术属性】
技术研发人员:刘阳李昊泽杨栋吴伟李晋章磊曹勇
申请(专利权)人:杭州杉石科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1