主要内容

准备导入的IP-XACT文件

要定制想要生成的组件的TLM接口,可以将自己的IP-XACT XML文件导入TLM生成器。

有关导入IP-XACT文件的详细信息,请参见选择TLM Mapping Options

导入IP-XACT文件所需信息

所有IP-XACT XML文件必须包含特定于MathWorks的信息®,在组件内的元素中定义。如果没有此信息,TLM生成器将无法解析IP-XACT文件。

以下参数名称-值对是必需的<精神:组件>

  • <精神:参数>

    <精神:名称>MWVendor< /精神:名称>

    <精神:值>MathWorks> < /精神:价值

    < /精神:参数>

  • <精神:参数>

    <精神:名称>MWVersion< /精神:名称>

    <精神:值>1.0> < /精神:价值

    < /精神:参数>

  • <精神:参数>

    <精神:名称>MWModel< /精神:名称>

    <精神:值>name_of_model> < /精神:价值

    < /精神:参数>

  • <精神:参数>

    <精神:名称>MWBlock< /精神:名称>

    <精神:值>name_of_block> < /精神:价值

    < /精神:参数>

该图像显示了IP-XACT XML文件中的这些必需元素。

没有内存映射的总线接口定义

一般的指导方针

根据IEEE为您的模型编写总线定义®IP-XACT 1685-2009标准。

如果你想使用Simulink金宝app®所有包含Simulink映射的总线接口都必须是从接口。金宝app

对于Simulink映射,每个没有内存映射的总线接口必须有以下元素安排之一:金宝app

  • 没有映射到Simulink金宝app

  • 映射到Simulink金宝app输入,Simulink输出,或输入和输出的混合

  • 映射到Simulink金宝app可调参数

尽管每个总线接口只能有一个安排,但IP-XACT文件可以包含多个总线接口定义,每个定义都有不同的安排。

金宝app没有内存映射的映射

每一个<精神:busInterface >包含Simulink映射的定义被映射到TLM目标金宝app套接字。在<精神:参数>标签,添加<精神:参数>定义Simulink映射的名称-值对。金宝app例如:

 MWMapInput input_1 

这个图像显示了映射到Simulink输入的一些总线接口。金宝app

输入被映射到一个总线接口定义中。输出在一个单独的总线接口中。过滤器系数在另一个,单独的总线接口。

或者,您可以在单个总线接口定义中一起定义输入和输出。然而,过滤系数必须保持在它们自己单独的总线接口定义中。

带有内存映射的总线接口定义

一般的指导方针

根据IP-XACT 1685-2009的IEEE标准为您的模型编写总线定义。适用以下权限:

  • 输入寄存器-只写或读写

  • 输出寄存器-只读或读写

  • 参数寄存器—只读、只写或读写,取决于您的需求

使每个寄存器的精灵大小(以位为单位)大于或等于那个Simulink输入、输出或参数的大小。金宝app

如果您想使用Simulink映射,那么所有包含金宝appSimulink映射的总线接口都必须是从接口。

金宝app内存映射中的映射

如果您在总线接口中有一个内存映射引用,那么您必须在内存映射中而不是在总线接口中表达Simulink映射。金宝app

每个寄存金宝app器的Simulink映射可以由以下元素安排组成:

  • 没有到Simulink的映射金宝app(即,在寄存器中不需要映射信息)

  • 映射到Simulink金宝app输入,Simulink输出,或输入和输出的混合

  • 映射到Simulink金宝app可调参数

寄存器不能有多个输入输出。但是,总线接口可以映射到多个寄存器,每个寄存器有不同的安排。

要向IP-XACT文件添加输入、输出或参数,请执行以下步骤。

  1. 每一个<精神:busInterface >包含Simulink映射的定义被映射到TLM目标金宝app套接字。添加一个<精神:参数>名称-值对,它指示TLM生成器在内存映射中有Simulink映射。金宝app

     MWMap true 
  2. 在每一个<精神:memoryMap >部分,在每一个<精神:注册>定义,在<精神:参数>标签,添加一个<精神:参数>名称-值对与Simulink映射。金宝app

     MWMapInput input1 

    这个图像演示了Simulink输入的这种安排。金宝app

  3. 要可选地指定寄存器中的字段位置,请指定> <精神:字段定义的<精神:注册>.使用<精神:进行><精神:bitOffset >标签来定义每个> <精神:字段.包括<精神:参数>中的Simulink映射的名称-值对金宝app> <精神:字段定义。

    <精神:字段> <精神:名称> OUTPUT_1 < /精神:名称> <精神:bitOffset > 32 < /精神:bitOffset > <精神:进行> 32 < /精神:进行> < >精神:访问只读< /精神:访问> <精神:参数> <精神:参数> <精神:名称> MWMapOutput < /精神:名称> <精神:价值> OUTPUT_1 < /精神:值> < /精神:参数> < /精神:参数> < /精神:字段>
  4. 要从Simulink映射中选择性地排除寄存器,可以添加一个金宝app<精神:参数>的名称-值对<精神:注册>定义。指定名称为MWMap值为从内存映射中排除寄存器。

     EXCLUDED_REG_1 0x38 64 read-only   0x38 64 read-only  MWMap false < /精神:参数> < /精神:注册>

    要从Simulink内存映射中排除一个地址块,添加一个金宝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 false   

有关Simulink内存映射到TLM组件的完整示例,金宝app请参见带内存映射的导入IP-XACT

映射到信号端口

您可以生成未注册的sc_signal端口。的当前值sc_in,将它们全部传递给阶跃函数,执行阶跃函数并将阶跃函数的结果写入sc_out港口。

要添加输入和输出端口,请在IP-XACT文件中指定以下内容:

  1. 指定端口为<精神:端口>类型的<精神:线>

  2. 指定端口方向为> <精神:方向.设置方向为,生成sc_in端口。设置方向生成一个sc_out端口。

  3. 缺省情况下,端口的数据类型与子系统的输入或输出相同。中描述端口的数据类型,可以为该端口定义数据类型<精神:wireTypeDef >

  4. 要定义TLM端口到Simulink输入或输出的映射,请指定名称-值对金宝appMWMapInputMWMapOutput在一个<精神:vendorExtension > <精神:参数> <参数>精神:标签。

该图像显示了映射到端口的示例。

相关的话题

外部网站