主要内容

准备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文件,遵循这些步骤。

  1. 每一个<精神:busInterface >定义包含一个模型映射映射到TLM目标插座。金宝app添加一个<精神:参数>名称-值对,表明TLM生成器模型映射的内存映射。金宝app

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

    <精神:参数> <精神:名称> MWMapInput < /精神:名称> <精神:价值> input1 < /精神:值> < /精神:参数>

    这张图片展示了模型输入这样的安排。金宝app

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

    <精神:字段> <精神:名称> OUTPUT_1 < /精神:名称> <精神:bitOffset > 32 < /精神:bitOffset > <精神:进行> 32 < /精神:进行> <精神:访问>只读< /精神:访问> <精神:参数> <精神:参数> <精神:名称> MWMapOutput < /精神:名称> <精神:价值> OUTPUT_1 < /精神:值> < /精神:参数> < /精神:参数> < /精神:字段>
  4. 从模型映射选择排除注册,添加一个金宝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文件中:

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

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

  3. 默认情况下,数据类型港口是一样的子系统的输入或输出。您可以定义一个数据类型的端口通过描述它<精神:wireTypeDef >

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

这张图片显示了一个示例的映射端口。

相关的话题

外部网站