跳转到内容

VisualApplets 3.0.6 中的更改和修复的问题#

Operators#

TrgBoxLine#

操作员 TrgBoxLine (库 Prototype):

  • 参数的值范围 ImgTrgDelay has been extended to {0;65535} lines. (6848)
  • 算子的输出端口 Exsync 现在可以正常工作。(6608)

Memory 运算符#

Memory 算子允许 Kernel Size >1

  • 算子 LineMemory, LineMemoryRandomRd, FrameMemory,和 FrameMemoryRandomRead (库 内存) 现在允许内核大小 > 1。(2369)

PixelNeighbours1xM#

  • 操作员 PixelNeighbours1xM 现在甚至在仿真期间也支持可变行长度。在早期版本中,仅在硬件中支持可变行长度。(7170)

用户库元素实例#

改进了更改处理

经过用户修改的用户库元素实例现在会显示特殊的图标。此外,当在此类实例上启动来自用户库的更新或快速更新时,将出现一条相应的消息,通知用户如果执行更新,对此实例所做的所有更改都将丢失。这样一来,已更改的用户库实例就不会再被意外覆盖。

Parameters Library#

VisualApplets 可以检测到由于参数化错误导致的情况 DisplayHierarchy 和 Display Name 参考/转换算子模块试图向设计的进程添加算子参数(这是不允许的)。在早期版本中,这可能导致 VisualApplets 崩溃,或在运行时导致小程序崩溃。现已修复。VisualApplets 现在会通过错误消息提示如何正确参数化参考/转换算子。(7053)

详情:如果参考/转换算子位于设计的最高层级(进程级)且 DisplayHierarchy 为空, DisplayName 也必须为空,因为进程本身不是层级框,无法获取参数。现在,VisualApplets 可以检测到此类情况并抛出相应的错误消息 DisplayName 当 DisplayHierarchy 指向进程级时,必须为空。在早期版本中,可以在 Display Name 下定义参数,即使 Display Hierarchy 指向进程级(即参考/转换算子位于设计的最高层级且 Display Hierarchy 为空)。这可能导致 VisualApplets 崩溃或运行时小程序崩溃。此问题现已修复。

Blob 运算符#

在 VisualApplets 3.0.4 版本中,算子 Blob_Analysis_1D 和 Blob_Analysis_2D 在被阻塞时会导致死锁。此问题现已修复。(6702)

DIV#

DIV 运算符(库 Arithmetics)的时序收敛已得到改进。在早期版本中,在某些特定情况下,DIV operator 会在构建期间导致时序错误。此问题已修复。(6900)

RamLUT#

初始化文件的新错误代码

如果 RamLUT 算子的初始化文件大小不正确,该算子现在会返回错误代码 FG_INVALID_FILESIZE。在早期版本中,此类情况下会输出错误代码 FG_ERR_RANGE_ERROR。新错误代码 FG_INVALID_FILESIZE 可与 Basler 运行时软件 5.4.4.1 或更高版本配合使用。(6422)

LineMemory#

操作员 LineMemory 已得到纠正。在早期版本中,在极少数情况下,算子 LineMemory中可能会出现数据损坏。此问题现已修复。(6436)

FIRoperator#

通过上下文菜单向算子(如 BRANCH)插入节点可能会导致后续 FIRoperator 模块中的系数丢失。此问题现已修复。(5450)

新进程 0 中也包含强制运算符#

针对 ironman、marathon 或 LightBridge 的设计:如果您删除进程 0,然后从头开始创建新的进程 0,则强制算子 AppletProperties 和 BoardStatus 将自动插入到新的进程 0 设计中。(在早期版本中,删除并重新创建进程 0 后,会缺少强制算子。现已修复。)(5720)

ADD#

ADD 算子已得到修正,现在允许使用两个位宽为带符号 63 位的输入端口。(在早期版本中,ADD 算子错误地不允许使用两个位宽为带符号 63 位的输入端口。现已修复。)(7138)

CoefficientBuffer#

操作员 CoefficientBuffer 现在允许将参数 Ylength 设置为 1。(1763, 3924)

Parameters Library#

增强的控制机制

如果库 Parameters 的运算符实例的参数化方式导致引用了 DisplayName 和 DisplayHierarchy 所请求的内容,将抛出新的错误消息 "DisplayName must be empty when DisplayHierarchy refers to process level"。

仿真#

  • RemovePixel 算子:模拟包含 RemovePixel 算子实例的设计现在可以顺利运行。在早期版本中,当模拟包含 RemovePixel 算子实例的设计时,偶尔会发生错误:移除图像的最后一个像素可能会导致内部错误,从而立即停止模拟并返回有关模拟数据损坏的消息。此问题现已修复。(6103)
  • 仿真控制:改进了仿真控制,适用于单张图像在图像处理管道中触发生成多张图像的情况。(6314)
  • 64 位分辨率像素数据:涉及 64 位分辨率像素数据的仿真结果计算现已能够正常运行。在早期版本中,此类计算的结果是错误的。该问题现已修复。(6878)
  • 操作员 RamLUT 现在在模拟设计时也支持可变行长度。模拟时图像不再必须为矩形,还可以包含空行和/或长度可变的行(例如三角形图像)。(6997)

删除库参数的引用运算符#

现在,即使库参数中的算子实例的参数仍被其他模块引用,也可以将其从设计中删除。(在早期版本中,如果删除模块的参数被其他模块的参数引用,可能会导致 VisualApplets 崩溃(包括由于 Property 'DisplayName' 引用的参数)。现已修复。)(6423)

整体资源估计已改进#

整体资源估计(在设计规则检查 2 后的 DRC 日志中的网表生成下显示,以及在启动构建过程后的构建硬件 Applet 对话框中显示)现在还将 RAM LUT 资源考虑在内。因此,计算出的资源量比以前的 VisualApplets 版本要高,在以前的版本中,整体资源估计忽略了 RAM LUT。现在,网表生成下的整体资源估计与 FPGA Resource Usage 对话框中的信息保持一致。(6487)

为 eVA 平台生成 GenICam XML 代码#

修复了生成 GenICam XML 代码时(仅适用于嵌入式 VisualApplets 目标)VisualApplets 崩溃的问题,该设计包含 ColorTransform 带有动态系数的算子。(6625)

运算符参考(文档)#

使用示例链接

运算符参考文档:Examples of Use 部分中包含的链接现在按预期直接链接到相应的示例。(7086)

在循环中加载和卸载 Applets#

在循环中加载和卸载小应用程序(使用 VisualApplets 3.0.6 或更高版本构建)不再导致 Memory 泄漏。当循环加载和卸载使用早期版本构建的小应用程序时,可能会观察到 Memory 泄漏。该问题现已修复。(6925)

ROI 修复 CXP 相机运算符(marathon 和 ironman)#

现在,ROI 设置可以与所有 CXP 相机型号正常配合使用。在早期版本中,某些 CXP 相机的 ROI 帧高度的某些设置会导致图像采集不正确。该问题现已修复。(6461)

PoCL 支持已改进#

改进了 marathon 和 LightBridge 采集卡 Camera Link Applets 中自动实现的 PoCL 支持:

  • PoCL 检测机制得到了进一步增强。
  • 改进了对时钟频率变化的 PoCL 相机的支持:Applets 可以更长时间地容忍相机发送的不稳定时钟信号(在相机重新配置时钟频率期间)。

改进了相机发送无效像素信号后的稳定性

当采集卡在开始采集之前收到来自相机的无效像素时,即使是通过触发开始采集,相机在开始采集后发送的第一行/帧也会被丢弃(由于实施了用于丢弃无效信号的过滤系统)。现已修复。过滤系统已得到改进,因此现在通过触发开始采集后,即使在开始采集之前相机发送了无效像素的情况下,也会处理相机发送的第一行/帧。此修复已实施到所有 mE5 marathon、mE 5 ironman 和 LightBridge Camera Link 采集卡,以及 microEnable IV AD4 CL/PoCL 和 microEnable IV VD4 CL/PoCL 中。