准备IP-XACT文件导入
定制组件的TLM接口你想生成,您可以导入您自己的XML文件IP-XACT TLM生成器。
关于导入IP-XACT文件的更多信息,请参阅选择TLM映射选项。
对进口IP-XACT文件的所需信息
所有特定于MathWorks IP-XACT XML文件必须包含信息®,在组件中定义的元素。如果此信息不存在,TLM发电机不能解析IP-XACT文件。
以下所需参数名称-值对<精神:组件>
:
<精神:参数>
<精神:名称>
MWVendor< /精神:名称>
<精神:值>
MathWorks< /精神:值>
< /精神:参数>
<精神:参数>
<精神:名称>
MWVersion< /精神:名称>
<精神:值>
1.0< /精神:值>
< /精神:参数>
<精神:参数>
<精神:名称>
MWModel< /精神:名称>
<精神:值>
name_of_model
< /精神:值>
< /精神:参数>
<精神:参数>
<精神:名称>
MWBlock< /精神:名称>
<精神:值>
name_of_block
< /精神:值>
< /精神:参数>
这张图片显示了这些需要IP-XACT XML文件中的元素。
总线接口定义没有内存映射
一般的指导方针
写根据IEEE总线定义为您的模型®IP-XACT标准1685 - 2009。
如果你想使用仿真软件金宝app®映射,所有总线接口包含模型的映射必须奴隶接口。金宝app
每个总线接口没有内存映射必须有下列元素之一的安排模型映射:金宝app
没有映射到仿真软件金宝app
输入映射到仿真软件、仿金宝app真软件输出或混合的输入和输出
映射到仿真软件可调参数金宝app
尽管每个总线接口只能有一个安排,IP-XACT文件可以包含多个总线接口定义,每一方都有一个不同的安排。
金宝app没有内存映射的映射
每一个<精神:busInterface >
定义包含一个模型映射映射到TLM目标插座。金宝app在<精神:参数>
标签,添加<精神:参数>
名称-值对定义模型的映射。金宝app例如:
<精神:参数> <精神:名称> MWMapInput < /精神:名称> <精神:价值> input_1 < /精神:值> < /精神:参数>
这张图片显示了一些总线接口映射到仿真软件输入。金宝app
输入被映射在一个总线接口的定义。在一个单独的总线接口输出。滤波器系数在另一个单独的总线接口。
或者,您可以定义输入和输出在一个总线接口定义。然而,滤波器系数必须保持在自己的独立的总线接口定义。
总线接口定义内存映射
一般的指导方针
写总线定义为您的模型根据IP-XACT IEEE标准1685 - 2009。申请以下权限:
输入寄存器——只写或读写
输出寄存器,只读或读写
参数寄存器,只读只写,读写,这取决于您的需求
使精神每个寄存器的大小,在比特,大于或等于模型输入的大小,输出,或参数。金宝app
如果你想使用映射模型,包含模型的所有总线接口映金宝app射必须奴隶接口。
金宝app在一个内存映射的映射
如果你有一个内存映射在总线接口的引用,那么你必须表达模型映射的内存映射,而不是在总线接口。金宝app
每个注册金宝app的模型映射可以由这些元素的安排:
没有映射到仿真软件(即不需要金宝app映射信息登记)
输入映射到仿真软件、仿金宝app真软件输出或混合的输入和输出
映射到仿真软件可调参数金宝app
寄存器不能有多个输入输出。然而,总线接口可以被映射到多个寄存器,每一方都有一个不同的安排。
添加输入、输出或参数IP-XACT文件,遵循这些步骤。
每一个
<精神:busInterface >
定义包含一个模型映射映射到TLM目标插座。金宝app添加一个<精神:参数>
名称-值对,表明TLM生成器模型映射的内存映射。金宝app<精神:参数> <精神:名称> MWMap < /精神:名称> <精神:值> true < /精神:值> < /精神:参数>
在每一个
<精神:memoryMap >
部分,在每一个<精神:注册>
定义,在<精神:参数>
标签,添加一个<精神:参数>
名称-值对模型的映射。金宝app<精神:参数> <精神:名称> MWMapInput < /精神:名称> <精神:价值> input1 < /精神:值> < /精神:参数>
这张图片展示了模型输入这样的安排。金宝app
选择指定字段位置寄存器中,指定一个
<精神:字段>
定义的<精神:注册>
。使用<精神:进行>
和<精神:bitOffset >
标签定义每个<精神:字段>
。包括<精神:参数>
名称-值对的模型映射金宝app<精神:字段>
定义。<精神:字段> <精神:名称> OUTPUT_1 < /精神:名称> <精神:bitOffset > 32 < /精神:bitOffset > <精神:进行> 32 < /精神:进行> <精神:访问>只读< /精神:访问> <精神:参数> <精神:参数> <精神:名称> MWMapOutput < /精神:名称> <精神:价值> OUTPUT_1 < /精神:值> < /精神:参数> < /精神:参数> < /精神:字段>
从模型映射选择排除注册,添加一个金宝app
<精神:参数>
名称-值对的<精神:注册>
定义。指定名称MWMap
和价值假
排除从内存映射寄存器。<精神:注册> <精神:名称> EXCLUDED_REG_1 < /精神:名称> <精神:addressOffset > 0 x38 < /精神:addressOffset > <精神:大小> 64 < /精神:大小> <精神:访问>只读< /精神:访问> <精神:参数><精神:参数> <精神:名称> MWMap < /精神:名称> <精神:价值>假< /精神:值> < /精神:参数>< /精神:参数> < /精神:注册>
排除一个地址块的仿真软件内存映射,添加一个金宝app
<精神:参数>
名称-值对的<精神:addressblock >
定义。指定名称MWMap
和价值假
排除内存映射的地址块。<精神:addressBlock > <精神:名称> EXCLUDED_BANK < /精神:名称> <精神:baseAddress精神:id =“EXCLUDED_BANK_ADDR”精神:解决= "用户" > 0 x00030000 < /精神:baseAddress > <精神:范围> 128 < /精神:范围> <精神:宽度> 64 < /精神:宽度> <精神:使用>登记< /精神:使用> <精神:注册> <精神:名称> EXCLUDED_REG_2 < /精神:名称> <精神:addressOffset > 0 x00 < /精神:addressOffset > <精神:大小> 64 < /精神:大小> <精神:访问>只读< /精神:访问> < /精神:注册> <精神:注册> <精神:名称> EXCLUDED_REG_3 < /精神:名称> <精神:addressOffset >(< /精神:addressOffset > <精神:大小> 64 < /精神:大小> <精神:访问>只读< /精神:访问> < /精神:注册> <精神:参数> <精神:参数> <精神:名称> MWMap < /精神:名称> <精神:价值>假< /精神:值> < /精神:参数> < /精神:参数> < /精神:addressBlock >
一个完整的示例的仿真软件内存映射TLM组件,明白了金宝app进口IP-XACT内存映射。
映射到一个信号端口
你可以生成一个未注册的sc_signal
端口。阶跃函数执行时,它读取的当前值sc_in
港口,将它们传递给阶跃函数,执行阶跃函数和写的阶跃函数的结果sc_out
港口。
添加输入和输出端口,指定以下IP-XACT文件中:
指定的端口
<精神:端口>
类型的<精神:线>
。指定端口方向
<精神:方向>
。设置方向在
,生成一个sc_in
端口。设置方向出
生成一个sc_out
端口。默认情况下,数据类型港口是一样的子系统的输入或输出。您可以定义一个数据类型的端口通过描述它
<精神:wireTypeDef >
。定义的映射TLM仿真软件的输入或输出端口,指定名称-值对金宝app
MWMapInput
或MWMapOutput
在一个<精神:vendorExtension > <精神:参数> <精神:参数>
标签。
这张图片显示了一个示例的映射端口。