VisualApplets Release 3.8.0 已知问题#
常规#
| 摘要: | 对于 mE5 平台和 imaFlex 平台,资源估算可能过低 |
|---|---|
| 描述: | 对于 mE5 和 imaFlex 平台,某些算子(即 Blob 和 Histogram) 可能会低估所使用的 block RAM 数量。根据模块配置,block RAM 资源的实际使用量可能会高出 50% 以上。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | 297790 |
| 摘要: | 将设计转换为不同的硬件平台时,硬件相关算子库可能不可用 |
|---|---|
| 描述: | 将 VisualApplets 设计转换为不同的硬件平台时,在某些情况下,目标平台的硬件相关算子库可能不可用。 |
| 解决方案: | 要解决此问题,请重新启动 VisualApplets。 |
| 单号 ID: | – |
| 摘要: | *.va 文件名仅支持 ASCII 字符 |
|---|---|
| 描述: | 在为 *.va 文件命名时,只能使用基于 ASCII 字符的字体;这意味着文件名不支持亚洲语言字体、西里尔字母、希腊语或阿拉伯语字体等。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | – |
| 摘要: | 针对 CXP 的 SDK:对 SISO_GenICam 库的访问必须由用户编写程序实现 |
|---|---|
| 描述: | CXP SDK:对 SISO_GenICam 库的访问不是自动生成的,必须由用户进行编程。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | – |
| 摘要: | 提高 FPGA 设计时钟频率可能会导致构建变慢 |
|---|---|
| 描述: | 提高 FPGA 设计时钟频率可能会导致构建流程耗时极长甚至失败,因为无法满足时序约束。这很大程度上取决于 VisualApplets 设计的内容。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | 8513 |
| 摘要: | imaFlex 平台上的自定义算子不支持 Memory Interface Write Flags |
|---|---|
| 描述: | 在 imaFlex 平台上,自定义算子的内存接口不支持写入标志。内存接口端口 ivMemWrFlag 和 iMemWrFlagValid 始终设置为零。 |
| 解决方案: | 实现一个不需要写入标志的内存访问方案。 |
| 单号 ID: | 361865 |
设计规则检查 (DRC)#
| 摘要: | 当层次框中的 M 型算子直接连接到输入端口时出现 Design Rules Check 错误 |
|---|---|
| 描述: | 如果使用层次框,在某些特定情况下,Design Rules Check 可能会出现以下错误消息:“算子 ABC(层次框)的输入 XYZ 必须连接到 O 型算子,例如 NOP。”原因是放置在层次框中的某些 M 型算子不能直接连接到层次框的输入端口。这仅适用于某些特定的 M 型算子。 |
| 解决方案: | 您可以通过在层次框的输入端口和 M 型算子的输入端口之间放置一个 NOP 算子来解决此问题(在层次框内)。 |
| 单号 ID: | – |
| 摘要: | 使用逐行 1D 模拟模式时出现 Design Rules Check 错误 |
|---|---|
| 描述: | 对于在早期版本的 VisualApplets 中通过 Design Rules Check 的某些设计,可能会报告有关最大图像高度的链接错误。特别是当涉及 1D 处理并且激活了新的逐行仿真模式(默认)时,可能会发生这种情况。原因是在逐行模式下,某些算子将输入链接的最大图像高度传播到输出链接的方式与以前不同。 |
| 解决方案: | 您可以通过切换到旧版模拟模式或添加 SetDimension 模块来调整最大图像高度值,从而解决此问题。 |
| 单号 ID: | – |
仿真#
| 摘要: | 使用逐行 1D 模拟模式时运行时间增加 |
|---|---|
| 描述: | 对于某些设计,模拟运行时间可能比早期版本的 VisualApplets 长得多。特别是,当涉及 1D 处理、激活了新的逐行模拟模式(默认)且设计包含许多模拟探针时,可能会发生这种情况。 |
| 解决方案: | 您可以通过切换到旧版模拟模式或减少模拟探针的数量来解决此问题。 |
| 单号 ID: | – |
| 摘要: | 大图像未显示在模拟探针中 |
|---|---|
| 描述: | 当模拟探针包含非常大的图像时,VisualApplets 可能会因内存限制而无法正确显示这些图像。在这种情况下,将显示灰色图像(即所有像素的值均为 205 (0xCD))。 |
| 解决方案: | 使用较小的图像进行模拟。 |
| 单号 ID: | 6822 |
| 摘要: | 模拟仅支持小于 2 GB 的图像 |
|---|---|
| 描述: | 在模拟过程中,任何图像的内部缓冲区大小都限制为 2 GB。对于大于 2 GB 的图像模拟,模拟会停止并显示错误消息。 |
| 解决方案: | 使用小于 2 GB 的图像进行模拟。 |
| 单号 ID: | 240989 |
| 摘要: | 加载到模拟探针查看器中的 RGB 图像可能会保存为单色图像(8 位) |
|---|---|
| 描述: | 在 Simulation Probe Viewer 中,各个颜色通道包含相同数值的 RGB 图像将保存为单色图像(即 8 位图像),而不会保存为 24 位图像。 |
| 解决方案: | 若要保留通道,请将图像保存为 BMP 文件格式。 |
| 单号 ID: | 266977 |
Xilinx#
| 摘要: | 使用低于 2026.1 版本的 Vivado 构建 imaFlex 设计可能会在 Optimize 步骤中失败 |
|---|---|
| 描述: | 有时,使用低于 2026.1 版本的 Vivado 构建 imaFlex 设计会在 Optimize 步骤中失败。重新运行构建过程即可解决此问题。 |
| 解决方案: | 使用 Vivado 版本 2026.1 构建您的设计。此版本至少需要 Vivado Design Suite 的 Core 级别。同时也支持更高别(PRO、Enterprise 或 Gold)。免费的 Basic 级别则不适用。或者,重新运行构建过程。构建目录的路径应尽可能简短。您可以在 System Settings 对话框中的 Global Build 类别 > 设置 Path for building applets 中明确设置构建目录。 |
| 单号 ID: | 341870 |
| 摘要: | Xilinx ISE 构建工具链不支持 Windows 11 |
|---|---|
| 描述: | Xilinx ISE 构建工具链不支持 Windows 11。因此,无法使用 Xilinx ISE 构建 VisualApplets 设计。 |
| 解决方案: | 使用 Xilinx Vivado 构建 Applet(Vivado 支持 Windows 11)。请参阅 系统要求 主题,了解 Vivado 支持哪些平台。 在此 论坛讨论 中,您可以找到一些关于如何在 Windows 11 下安装 ISE 的技巧(尽管官方并不支持)。 |
| 单号 ID: | 236990 |
| 摘要: | VisualApplets 禁止使用 Vivado 2025.1 和 2025.2 为 imaFlex CXP-12 平台构建设计 |
|---|---|
| 描述: | VisualApplets 不支持使用 Vivado 2025.1 和 2025.2 为 imaFlex CXP-12 平台构建设计,因为使用这些版本创建的设计无法正常工作。 |
| 解决方案: | 使用 2023.2 至 2024.2 之间或 2026.1 及更高版本的 Vivado 构建所有 imaFlex CXP-12 平台。唯一的例外是 imaFlex 2 Dual 100 平台:此平台的设计必须使用 Vivado 2025.2 或更高版本进行构建。Vivado Design Suite 2026.1 或更高版本至少需要 Core 级别。同时也支持更高别(PRO、Enterprise 或 Gold)。免费的 Basic 级别则不适用。 |
| 单号 ID: | 341684 / 348084 |
| 摘要: | 无法使用某些 Xilinx Vivado 版本为 mE 5 marathon VCL 和 mE 5 marathon VCLx 平台构建 Applet |
|---|---|
| 描述: | 无法使用 2020.2 到 2021.1 之间的 Vivado 版本为 microEnable 5 marathon VCL 和 microEnable 5 marathon VCLx 平台构建 Applet。 |
| 解决方案: | 该问题已在 Xilinx Vivado 2021.2 版本中得到修复。因此,为避免此问题,请使用 Vivado 2021.2 或更高版本。 |
| 单号 ID: | 217879 |
| 摘要: | 构建 applet 时出现 Xilinx Vivado 警告 |
|---|---|
| 描述: | 当您使用 Xilinx Vivado 工具构建 Applet 时,可能会收到严重警告(在 LinkDesign 构建步骤中)。这些警告是由于 Xilinx 工具链中的问题引起的。Xilinx 已知晓此问题,修复工作正在进行中。示例: |
| 解决方案: | 请忽略这些警告。此问题对于在 VisualApplets 中创建的设计并不严重。 |
| 单号 ID: | – |
Library Blob#
Blob_Analysis_1D 算子#
| 摘要: | Blob_Analysis_1D Operator 设置对象大小超过最大值标志不符合预期 |
|---|---|
| 描述: | 如果对象因超出由 max_object_height_bits 参数定义的最大尺寸而被截断,则相应的 object size exceeds maximum 标志设置在截断的对象中,而不是前一个对象中。 |
| 解决方案: | 请使用新的 BlobDetector1D 应改用算子。此问题已在新算子中得到解决。 |
| 单号 ID: | 9685 |
| 摘要: | Blob_Analysis_1D Operator 不设置标签溢出标志 |
|---|---|
| 描述: | 即: label overflow 指示所有标签均在使用中且当前对象无法被标记的标志从未被置位。 |
| 解决方案: | 请使用新的 BlobDetector1D 应改用算子。此问题已在新算子中得到解决。 |
| 单号 ID: | 9691 |
| 摘要: | Blob_Analysis_1D Operator 每行允许的标签数比定义少 20 个 |
|---|---|
| 描述: | 由 Label_bits 参数定义的可用标签数量减少了 20 个。例如,如果 Label_bits 定义的可用标签数量设置为 5 时,仅有 12 个(2^5 - 20)标签可用,而不是预期的 32 个(2^5)。 |
| 解决方案: | 请使用新的 BlobDetector1D 应改用算子。此问题已在新算子中得到解决。 |
| 单号 ID: | 9688 |
| 摘要: | Blob_Analysis_1D Operator 的仿真与硬件行为不一致 |
|---|---|
| 描述: | 对象特征输出的顺序在硬件和软件中可能有所不同。这是因为硬件输出取决于无法在 VisualApplets 中进行仿真的数据时序。此外,FlushI 输入与图像数据输入是异步的,因此完成输出帧的操作可能无法以真实的方式进行仿真。 |
| 解决方案: | 请使用新的 BlobDetector1D 应改用算子。此问题已在新算子中得到解决。 |
| 单号 ID: | 7709 |
Library Color#
| 摘要: | 某些色彩转换无法按预期工作 |
|---|---|
| 描述: | 以下算子 彩色 库中的算子应谨慎使用:某些色彩转换的工作方式可能与用户的假设不符:
|
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | – |
ColorTransform 算子#
| 摘要: | 负变换系数的限制 |
|---|---|
| 描述: | 即: ColorTransform 算子仅在输入格式为有符号数或系数为静态时才支持负转换系数。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | 251344 |
BAYER5x5Linear 算子#
| 摘要: | VisualApplets 中 BAYER5x5Linear 的资源估算与 Xilinx 中的估算不同 |
|---|---|
| 描述: | BAYER5x5Linear:在某些情况下,VisualApplets 中该算子的资源评估(在 FPGA 资源使用情况 对话框中)可能与布线后(Place & Route)由 Xilinx 工具显示的评估结果不同。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | 6426 |
Library Compression#
JPEG_Encoder 算子#
| 摘要: | JPEG_Encoder 算子的输出传输开始时间早于实际图像数据传输 |
|---|---|
| 描述: | 算子:为了优化其图像吞吐率(带宽),算子会在激活标头生成时立即输出标头——甚至在图像数据到达算子输入之前。通过这种方式,标头数据的传输不会中断图像数据的传输,因为标头是提前传输的。这种做法的缺点是,算子的输出传输开始时间早于实际图像数据传输。在特定情况下,这可能会引起异常: 如果您使用 SourceSelector 算子直接在 JPEG_Encoder: SourceSelector 算子之后,一旦获取到标头数据,就会将部分处理过的帧进行登记。因此,如果 SourceSelector 切换为从 JPEG_Encoder, SourceSelector 无法切换到任何其他源,因为它总是检测到未完成的帧。此外,当启用标头生成且 SourceSelector 从另一个源切换到 JPEG_Encoder 通道时,第一幅图像将丢失。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | – |
Library Filter#
FIRKernelNxM 算子#
| 摘要: | FIRKernelNxM 算子可能会导致处理错误 |
|---|---|
| 描述: | 即: FIRKernelNxM 算子在以下情况下可能会导致处理错误: EdgeHandling 参数设置为常量,列数 > 2*parallelism,卷积核列数为偶数,且 parallelism > 1。该错误可以在图像左边界处监视到,此时帧内的卷积核位置使用了错误的像素数据。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | 2939 |
Library Hardware Platforms#
触发算子#
| 摘要: | 触发算子可能会在触发输出线上产生毛刺 |
|---|---|
| 描述: | 在将 applet 加载到采集卡上的初始化阶段,触发算子可能会在触发输出线上产生毛刺。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | – |
ImageBufferMultiRoiDyn 算子#
| 摘要: | 小图像的时序错误 |
|---|---|
| 描述: | 即: ImageBufferMultiRoiDyn 算子在输入图像非常小的情况下可能会导致时序错误。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | – |
Memory Library#
| 摘要: | 使用 URAM 的算子可能无法满足时序要求 |
|---|---|
| 描述: | 当以下模块的 ImageFifo, LineMemory, FrameMemory或 LUT 算子使用了多个 UltraRAM (URAM) FPGA 资源时,在构建 applet 时设计可能会无法满足时序要求。例如,当算子级联 URAM 资源以构建深层缓冲区时,可能会发生这种情况。 |
| 解决方案: | 暂无可用解决方案。 |
| 单号 ID: | 364659 |
CoefficientBuffer Operator#
| 摘要: | CoefficientBuffer 算子在仿真中生成 48 位 RGB 图像时无法加载 24 位 RGB 图像 |
|---|---|
| 描述: | 当您使用 CoefficientBuffer 算子生成 48 位 RGB 图像时,您无法在仿真中加载 24 位 RGB 图像来初始化算子。运行时同样不支持将 24 位 RGB 映射到 48 位 RGB。 |
| 解决方案: | 将 CoefficientBuffer 算子的输出链路设置为单色格式。将图像数据转换为单色,以便可以将数据加载到 CoefficientBuffer 模块中。然后转换 CoefficientBuffer 算子的输出链路设置为 RGB48。 |
| 单号 ID: | 215233 |