Xilinx Blockset Gateway In 和Gateway out模块使用及参数配置

目录

  • 一、Gateway In
    • Simulink数据到System Generator数据的转换
    • Gateway Blocks
    • Block Parameters(模块参数)
      • Basic选项卡参数
      • Implementation选项卡参数
  • 二、Gateway Out
    • Gateway Blocks
    • Block Parameters(模块参数)
      • Basic选项卡参数
      • Implementation选项卡参数

一、Gateway In

该块在以下Xilinx Blockset库中列出:Basic Elements, Data Types, FloatingPoint, and Index。

Xilinx Gateway In模块是您的Simulink®设计的Xilinx部分的输入。这些模块将Simulink®整数、双精度和定点数据类型转换为System Generator定点类型。每个模块在HDL设计中定义一个由System Generator生成的顶层输入端口或接口。
在这里插入图片描述

Simulink数据到System Generator数据的转换

Gateway In的输入支持许多不同的Simulink数据类型。支持的数据类型包括:int8、uint8、int16、uint16、in32、uint32、single、double和Simulink定点数据类型(如果有Simulink定点数据类型license)。在所有原因中,输入数据被转换为网关内部的double类型,然后转换为网关In块上指定的目标数据类型(定点,浮点或布尔值)。当从内部double表示转换为固定点时,量化和溢出将按照Block GUI中指定的方式进一步处理。对于溢出,选项是饱和到最大的正值/最小的负值,包装(例如,丢弃最重要的可表示位左侧的位),或者在模拟期间将溢出标记为Simulink错误。对于量化,选项是舍入到最接近的可表示值(或者如果有两个等距的最接近的可表示值,则取离零最远的值),或者截断(例如,丢弃最不重要的可表示位右侧的位)。重要的是要认识到转换、溢出和量化并不发生在硬件中,它们只发生在模块的仿真模型中。

Gateway Blocks

如下所列,Xilinx Gateway In块用于提供许多功能:

  • 在Simulink仿真期间,将数据从Simulink整数、双精度和定点类型转换为System Generator定点类型。
  • 定义由System Generator生成的HDL设计中的顶层输入端口或接口。
  • 在System Generator中选中“Create Testbench架”复选框时定义测试台架。在这种情况下,在HDL代码生成期间,在Simulink仿真期间发生的块输入被记录为数据文件中的逻辑向量。在HDL仿真期间,插入到顶层测试台中的实体根据预期结果检查该向量和Gateway Out块产生的相应向量。
  • 在顶级HDL实体中命名相应的端口。

Block Parameters(模块参数)

可以通过双击Simulink模型中的图标来调用块参数对话框。

Basic选项卡参数

“Basic”选项卡的具体参数如下。

  • Output Type:指定输出数据类型。可以是布尔型、定点型或浮点型。
  • Arithmetic Type:如果输出类型指定为定点,则可以选择Signed (2 's comp)或Unsigned作为算术类型。
  • Fixed-point Precision
    • Number of bits:指定块输出数据位数。
    • Binary point:指定二进制点的位位置,其中位0是最低有效位
  • Floating-point Precision:
    • Single:指定单精度(32位)。
    • Double:指定双精度(64位)。
    • Custom:激活下面的字段,以便您可以指定指数宽度和分数宽度。
      • Exponent Width:指定指数宽度。
      • Fraction Width:指定分数宽度。
  • Quantization:当小数位数的数量不足以表示一个值的小数部分时,就会出现量化错误。选项是截断(Truncate)(例如,丢弃可表示的最低有效位右侧的位),或四舍五入(无偏置:+/- inf)(Round(unbiased: +/- inf))或(Round (unbiased: even values))(无偏:偶数值)。
    • Round(unbiased: +/- inf):也被称为Symmetric Round (towards +/- inf)或Symmetric Round (away fromzero)。这类似于MATLAB®round()函数。该方法将值舍入到离零最近的所需位,当两个可能的舍入值之间的中点存在值时,将选择幅度较大的值。例如,将01.0110四舍五入为Fix_4_2,将得到01.10,因为01.0110正好在01.01和01.10之间,而后者离零更远。
  • Overflow:当值位于可表示范围之外时,会发生溢出错误。对于溢出,选项是饱和(Saturate)到最大的正值/最小的负值,包裹(Wrap)(例如,丢弃最重要的可表示位左侧的位),或在模拟期间标记为错误(作为Simulink®错误的溢出)。错误标志(Flag as error)是一个模拟特性。生成的硬件与选择Wrap时相同。
    在这里插入图片描述

Implementation选项卡参数

Implementation选项卡的参数如下所示。

  • Interface Options:
    • Interface:
      • None:意味着在HDL网表生成过程中,这个网关In将被转换为顶层的输入端口。
      • AXI4-Lite:这意味着在生成HDL Netlist期间,将创建一个AXI4- lite接口,并将此Gateway In映射到AXI4-Lite接口中的一个寄存器。
    • Auto assign address offset:如果Gateway In被配置为一个AXI4-Lite接口,该选项允许将地址偏移量自动分配给Gateway In映射到的AXI4-Lite接口中的寄存器。
    • Address offset:如果未选中“Auto assign address offset”,则此输入框允许显式指定要使用的地址偏移量。必须是4的倍数。
    • Interface Name:如果网关接口配置为AX4-Lite接口,则为该接口分配唯一的名称。此名称可用于区分多个设计中的AXI4-Lite接口。当使用IP Catalog流时,您可以期望在System Generator使用该名称创建的IP中看到名为< design_name > _ < interface_name > _ s_axi的接口。注意:接口名称只能由字母数字(小写字母)或下划线(_)组成,且必须以小写字母开头。axi4_lite1是可以接受的,而1Axi4-Lite则不行。
    • Description:关于此Gateway In的其他设计内容注释在接口文档中捕获。
  • Constraints:
    • IOB Timing Constraint:在硬件中,Gateway In被实现为一组输入/输出缓冲区(IOBs)。有三种方法可以限制IOBs的时间:None,Data Rate和Data Rate, Set ‘FAST’ Attribute。
      • 如果选择None,则不会在System Generator生成的用户约束文件中放置IOBs的时间约束。这意味着从iIOB到同步元素的路径不受约束。
      • 如果选择“Data Rate”,IOB将被约束在IOB运行的数据速率上。速率由System Generator令牌提供的“System Clock Period”和和网关相对于设计中其他采样周期的采样率共同决定。
      • 如果选择Data Rate, Set ‘FAST’属性,则产生上述约束。此外,为每个IOB生成一个FAST转换率属性。这减少了延迟,但增加了噪音和功耗。
    • Specify IOB location constraints:检查此选项允许指定IOB位置约束和I/O标准。
    • IOB pad locations, e.g. {‘MSB’, …, ‘LSB’}:IOB引脚位置可以在此编辑框中指定为字符串的单元格数组。这些位置是特定于包的。
    • IO Standards, e.g. {‘MSB’, …, ‘LSB’}:可以将I/O标准指定为此编辑框中的字符串单元格数组。这些位置是特定封装的。
      在这里插入图片描述

二、Gateway Out

该块在以下Xilinx® Blockset库中列出:Basic Elements, Data Types, FloatingPoint, and Index.。

Xilinx Gateway Out模块是Simulink®设计中Xilinx部分的输出。该块将System Generator的定点或浮点数据类型转换为Simulink的整数、单、双或定点数据类型。
在这里插入图片描述
根据其配置,Gateway Out块既可以定义由System Generator生成的HDL顶层设计的输出端口,也可以简单地用作从硬件表示中裁剪出来的测试点。

Gateway Blocks

如下所示,Xilinx Gateway Out模块用于提供以下功能:

  • 将来自System Generator定点或浮点数据类型的数据转换为Simulink整数、单、双或定点数据类型。
  • 定义由System Generator生成的HDL顶层设计的I/O端口。一个Gateway Out块定义了一个顶级输出端口。
  • 当选中“Create Testbench”复选框时,定义测试工作台结果向量。在这种情况下,在HDL代码生成期间,在Simulink仿真期间发生的块输出作为逻辑向量记录在数据文件中。对于每个顶级端口HDL组件被插入到顶层测试台中,该测试台在HDL模拟期间根据预期结果检查此向量。
  • 在顶级HDL实体上命名相应的输出端口。

Block Parameters(模块参数)

Basic选项卡参数

“Basic”选项卡的具体参数如下:

  • Propagate data type to output:这个选项在实例化System Generator设计作为子系统纳入Simulink设计时很有用。默认情况下,System Generator数据类型不是使用Simulink double作为输出数据类型,而是根据下表将其传播为适当的Simulink数据类型:
    在这里插入图片描述
  • Translate into Output Port:选中此框可以防止网关在转换为硬件时成为实际的输出端口。默认情况下,此复选框处于打开状态,启用输出端口。如果不选择此选项,则仅在调试期间使用Gateway Out块,其目的是与Simulink Sink块通信,以探测设计的部分。在这种情况下,Gateway Out块将变为灰色,表明网关不会被转换为输出端口。
    在这里插入图片描述

Implementation选项卡参数

  • Interface Options:
    • Interface:
      • None:在HDL Netlist生成过程中,此Gateway Out将被转换为顶层的输出端口。
      • AXI4-Lite:在生成HDL网表期间,将创建一个AXI4-Lite接口,并将Gateway Out映射到AXI4-Lite接口中的一个寄存器。
      • Interrupt:在IP Catalog生成期间,此网关输出将被标记为当System Generator设计被打包成可包含在Vivado®IP目录中的IP模块时,中断输出端口。
    • Auto assign address offset:如果将Gateway Out配置为AXI4-Lite接口,则该选项允许将地址偏移量自动分配给Gateway Out映射到的AXI4-Lite接口中的寄存器。
    • Address offset:如果未选中“Auto assign address offset”,则此输入框允许显式指定要使用的地址偏移量。必须是4的倍数。
    • Interface Name:如果Gateway Out配置为AX4-Lite接口,则为该接口分配唯一的名称。此名称可用于区分多个设计中的AXI4-Lite接口。当使用IP Catalog流时,您可以期望在System Generator使用该名称创建的IP中看到名为< design_name > _ < interface_name > _ s_axi的接口。注意:接口名称只能由字母数字(小写字母)或下划线(_)组成,且必须以小写字母开头。axi4_lite1是可以接受的,而1Axi4-Lite则不行。
    • Description:关于此Gateway In的其他设计内容注释在接口文档中捕获。
  • Constraints:
    • IOB Timing Constraint:在硬件中,Gateway Out被实现为一组输入/输出缓冲区(IOBs)。有三种方法可以限制IOBs的时间:None,Data Rate和Data Rate, Set ‘FAST’ Attribute。
      • 如果选择None,则不会在System Generator生成的用户约束文件中放置IOBs的时间约束。这意味着从iIOB到同步元素的路径不受约束。
      • 如果选择“Data Rate”,IOB将被约束在IOB运行的数据速率上。速率由System Generator令牌提供的“System Clock Period”和和网关相对于设计中其他采样周期的采样率共同决定。例如,以下OFFSET = OUT约束是为一个名为“Dout”的网关输出生成的,该网关输出在系统周期为10 ns的情况下运行:
        在这里插入图片描述
      • 如果选择Data Rate, Set ‘FAST’属性,则产生上述约束。此外,为每个IOB生成一个FAST转换率属性。这减少了延迟,但增加了噪音和功耗。对于前面的示例,将以下附加属性添加到约束文件中。
        在这里插入图片描述
    • Specify IOB Location Constraints:选中此选项允许指定IOB位置约束。
    • IOB Pad Locations, e.g. {‘MSB’, …, ‘LSB’}:IOB引脚位置可以在此编辑框中指定为字符串的单元格数组。这些位置是特定封装的。
      在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/923852.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

三格电子—EtherNet IP转Modbus RTU网关

EtherNet/IP转Modbus RTU网关 SG-EIP-MOD-210 产品用途 SG-EIP-MOD-210网关可以实现将Modbus接口设备连接到 EtherNet/IP网络中。用户不需要了解具体的Modbus和 EtherNet/IP协议即可实现将Modbus设备挂载到 EtherNet/IP接口的PLC上&#xff0c;并和Modbus设备进行数据交互。拓…

使用 Jina Embeddings v2 在 Elasticsearch 中进行后期分块

作者&#xff1a;来自 Elastic Gustavo Llermaly 在 Elasticsearch 中使用 Jina Embeddings v2 模型并探索长上下文嵌入模型的优缺点。 在本文中&#xff0c;我们将配置和使用 jina-embeddings-v2&#xff0c;这是第一个开源 8K 上下文长度嵌入模型&#xff0c;首先使用 semant…

【西瓜书】剪枝与样本值处理——预剪枝、后剪枝、连续值、缺失值

目录 预剪枝 后剪枝 处理连续值 处理缺失值 剪枝&#xff08;pruning&#xff09;是决策树学习算法对付“过拟合”的主要手段。 在决策树学习过程中&#xff0c;有时会造成决策树分枝过多&#xff0c;就可能造成过拟合&#xff0c;可通过主动去掉一些分支来降低过离合的风…

【NLP高频面题 - 分布式训练】ZeRO1、ZeRO2、ZeRO3分别做了哪些优化?

【NLP高频面题 - 分布式训练】ZeRO1、ZeRO2、ZeRO3分别做了哪些优化&#xff1f; 重要性&#xff1a;★★ NLP Github 项目&#xff1a; NLP 项目实践&#xff1a;fasterai/nlp-project-practice 介绍&#xff1a;该仓库围绕着 NLP 任务模型的设计、训练、优化、部署和应用&am…

H3C OSPF 多区域实验

目录 前言 实验拓扑 实验需求 实验解析 路由器配置 测试 前言 此篇文章为 OSPF多区域试验&#xff0c;建议先食用OSPF单区域实验&#xff0c;理解实验原理 学习基本配置&#xff0c;再来使用此篇&#xff0c;效果更佳&#xff01;&#xff08;当然如果你已经了解原理与基…

基于Spring Boot的装饰工程管理系统论文

摘 要 如今社会上各行各业&#xff0c;都喜欢用自己行业的专属软件工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。新技术的产生&#xff0c;往往能解决一些老技术的弊端问题。因为传统装饰工程项目信息管理难度大&#xff0c;容错率低&#x…

DNS高速缓存污染

DNS高速缓存污染&#xff0c;也称为DNS缓存投毒&#xff0c;是一种网络攻击手段&#xff0c;攻击者通过篡改DNS服务器中的缓存记录&#xff0c;使得用户访问的域名被错误地解析到攻击者控制的IP地址&#xff0c;从而将用户重定向到恶意网站或阻止用户访问目标网站。这种攻击破坏…

一文详解“分治—快排“在算法中的应用

找往期文章包括但不限于本期文章中不懂的知识点&#xff1a; 个人主页&#xff1a;我要学编程(ಥ_ಥ)-CSDN博客 所属专栏&#xff1a; 优选算法专题 分治算法是利用分而治之的思想来实现的。典型代表&#xff0c;递归&#xff0c;将一个大问题转换为多个与其类似的小问题&#…

【三维生成】Edify 3D:可扩展的高质量的3D资产生成(英伟达)

标题&#xff1a;Edify 3D: Scalable High-Quality 3D Asset Generation 项目&#xff1a;https://research.nvidia.com/labs/dir/edify-3d demo&#xff1a;https://build.nvidia.com/Shutterstock/edify-3d 文章目录 摘要一、前言二、多视图扩散模型2.1.消融研究 三、重建模型…

基于机器视觉的表面缺陷检测

基于机器视觉的表面缺陷检测存在的问题与难点 - AVT相机|AVT红外相机|万兆网相机EVT|VIEWORKS线扫相|映美精相机|Specim多光谱相机|Adimec相机|Basler相机|富士能FUJINON镜头|理光RICOH镜头|OPTO远心镜头|SPO远心镜头|Navtar镜头|VST镜头|CCS光源|3D视觉引导机床上下料系统 (完…

SpringBoot整合MQTT利用EMQX完成消息的发布与接收+Python模拟硬件测试通信

教程说明 本教程主要内容为使用SpringBoot整合MQTT利用EMQX代理服务完成MQTT的消息发送与接收&#xff0c;然后用Python模拟硬件与SpringBoot应用进行了MQTT消息的通信&#xff0c;教程详细&#xff0c;并在最后讲解了开发中的注意事项&#xff0c;本教程适用于物联网领域、Ja…

IntelliJ IDEA 中,自动删除无用导包

在 IntelliJ IDEA 中&#xff0c;自动删除无用导包是一个提升代码整洁性和开发效率的重要功能。以下是实现这一功能的详细步骤&#xff1a; 一、通过快捷键手动删除无用导包 打开Java文件&#xff1a;在IDEA中打开你需要操作的Java文件。 使用快捷键&#xff1a; 在Windows系…

表格数据处理中大语言模型的微调优化策略研究

论文地址 Research on Fine-Tuning Optimization Strategies for Large Language Models in Tabular Data Processing 论文主要内容 这篇论文的主要内容是研究大型语言模型&#xff08;LLMs&#xff09;在处理表格数据时的微调优化策略。具体来说&#xff0c;论文探讨了以下…

如何编写一个 Vue 3 应用:模板插值示例

Vue.js 是一个渐进式的 JavaScript 框架&#xff0c;用于构建用户界面。在本篇博客中&#xff0c;我们将通过一个简单的示例来学习如何使用 Vue 3 创建一个基本的应用。这个示例将展示如何使用 Vue 的模板插值和事件处理来构建一个简单的点击计数器。 步骤 1: 准备工作 首先&…

基于混合ABC和A*算法复现

基于混合ABC和A*算法复现 一、背景介绍二、算法原理&#xff08;一&#xff09;A*算法原理&#xff08;二&#xff09;人工蜂群算法原理&#xff08;三&#xff09;混合ABC和A*算法策略 三、代码实现&#xff08;一&#xff09;数据准备&#xff08;二&#xff09;关键函数实现…

2024 APMCM亚太数学建模C题 - 宠物行业及相关产业的发展分析和策略(详细解题思路)

在当下&#xff0c; 日益发展的时代&#xff0c;宠物的数量应该均为稳步上升&#xff0c;在美国出现了下降的趋势&#xff0c; 中国 2019-2020 年也下降&#xff0c;这部分变化可能与疫情相关。需要对该部分进行必要的解释说明。 问题 1: 基于附件 1 中的数据及您的团队收集的额…

鸿蒙MVVM模式介绍与使用

文章目录 鸿蒙MVVM模式介绍与使用背景MVVM模式介绍相关装饰器介绍State状态变量Prop、Link的作用 MVVM架构模式的实现以及相关装饰器的使用具体实现效果 总结 鸿蒙MVVM模式介绍与使用 背景 最近在学习鸿蒙开发,想到了以前写安卓移动端应用时经常会用到的MVVM架构模式,就想着能…

Jmeter测试工具的安装和使用,mac版本,jmeter版本5.2.1

Jmeter测试工具的安装和使用JSON格式请求 一、安装1、安装jdk包和设置java环境2、去官网下载Jmeter3、解压后&#xff0c;打开mac终端&#xff0c;进入apache-jmeter的bin文件开启jmeter 二、使用jmeter1、添加线程2、添加HTTP请求3、配置请求的协议、IP地址、端口号、请求方法…

Spring Boot教程之十: 使用 Spring Boot 实现从数据库动态下拉列表

使用 Spring Boot 实现从数据库动态下拉列表 动态下拉列表&#xff08;或依赖下拉列表&#xff09;的概念令人兴奋&#xff0c;但编写起来却颇具挑战性。动态下拉列表意味着一个下拉列表中的值依赖于前一个下拉列表中选择的值。一个简单的例子是三个下拉框&#xff0c;分别显示…

Vue前端开发2.3.6 列表渲染指令

在Vue.js中&#xff0c;v-for指令是渲染列表的关键工具&#xff0c;支持从数组、对象、数字和字符串中生成列表。它简化了商品列表等重复元素的创建。为了优化性能&#xff0c;key属性为每个列表项提供唯一标识&#xff0c;帮助Vue追踪节点身份&#xff0c;实现元素重用。实战中…