Operator DmaToPC

Operator Library: Hardware Platform

DmaToPC 算子是 VisualApplets applet 与宿主 PC 之间的图像接口。DMAToPC 算子将图像从 applet 传输到宿主 PC。图像传输使用直接内存访问(Direct Memory Access)执行,即图像数据被直接写入宿主 PC Memory 中。

支持多种 Color Format、Bit Width 和 Parallelism。允许的组合取决于所使用的硬件平台:

  • imaFlex 2 Dual 100:

    • Bit Width 与 Parallelism 的乘积必须是 8 的整数倍,且必须小于或等于 512。

    • 最大图像宽度与最大图像高度的乘积必须能被 4 bytes 整除。

  • imaFlex CXP-12 Quad 和 imaFlex CXP-12 Penta:

    • Bit Width 与 Parallelism 的乘积必须是 8 的整数倍,且必须小于或等于 256。

    • 最大图像宽度与最大图像高度的乘积必须能被 4 bytes 整除。

  • microEnable 5 marathon VCLx, microEnable 5 marathon VCL, microEnable 5 marathon VCX-QP, microEnable 5 marathon VF2, and LightBridge VCL:

    算子输入的 link properties 取决于 applet 支持的 PCIe 模式。您可以在算子 AppletProperties 的 PcieInterfaceType 参数中选择支持的 PCIe 模式。

    支持多种 Color Format、Bit Width 和 Parallelism。乘积 Parallelism x Bit Width 的最大值必须是 8 的倍数,并且取决于您在算子 AppletProperties 中选择的 PCIe 模式:

    • Generation_1: Parallelism x Bit Width <= 64 Bit.
    • Generation_2: Parallelism x Bit Width <= 128 bit

    最大图像宽度与最大图像高度的乘积必须能被 4 bytes 整除。

  • microEnable 5 ironman VD8-PoCL, microEnable 5 ironman VQ8-CXP6D (DIN connector) and microEnable 5 ironman VQ8-CXP6B (BNC connector):

    • 当算子 AppletProperties 中的参数 PcieInterfaceType 设置为 Generation_1 时,Bit Width 与 Parallelism 的乘积必须是 8 的倍数且小于或等于 128。

    • 当算子 AppletProperties 中的参数 PcieInterfaceType 设置为 Generation_2 时,Bit Width 与 Parallelism 的乘积必须是 8 的倍数且小于或等于 256。

[注意] RGB 转换为 BGR

该算子将 RGB 数据转换为 BGR 数据(即在 DMA 传输之前切换 R 和 B 分量)。DMA 传输后,以前的 RGB 图像在 PC 的 RAM 中作为 BGR 图像可用。进行此转换是为了简化使用软件工具的进一步处理,因为大多数软件工具直接支持 BGR format。

适用于以下硬件平台
imaFlex 2 Dual 100
imaFlex CXP-12 Penta
imaFlex CXP-12 Quad
microEnable 5 marathon VCLx
microEnable 5 marathon VCL
microEnable 5 marathon VCX-QP
microEnable 5 marathon VF2
LightBridge VCL
microEnable 5 ironman VQ8-CXP6D/-CXP6B
microEnable 5 ironman VD8-PoCL

资源

该算子使用一个 VisualApplets 资源。

imaFlex 2 Dual 100:

对于 imaFlex 2 Dual 100 平台,该算子使用一个类型为 DmaToHostPort 的 VisualApplets 资源。该平台上最多可使用 5 个 DmaToPC 算子。资源索引必须严格单调递增,即 0 → 1 → 2 → 3 → 4。第一个算子的索引必须始终为 0,后续每个算子的索引必须为下一个索引(+1)。资源索引不得有任何间隙,且始终从 0 开始。在资源对话框中为算子设置资源索引。有关更多信息,请参见 'Allocation of Device Resources'。

imaFlex CXP-12 Quad 和 imaFlex CXP-12 Penta:

对于 imaFlex CXP-12 Quad 和 imaFlex CXP-12 Penta 平台,算子使用类型为 DMA 的一个 VisualApplets 资源。请在资源对话框中为算子设置资源索引。有关详细信息,请参阅 “分配设备资源”。

I/O Property

Property 值
Operator Type M
Input Link I, image data input

Supported Link Format

Link Parameter Input Link I
Bit Width 参见描述
Arithmetic unsigned
Parallelism 参见描述
Kernel Columns 1
Kernel Rows 1
Img Protocol VALT_IMAGE2D
Color Format {VAF_COLOR, VAF_GRAY}
Color Flavor {FL_NONE, FL_RGB} If VAF_GRAY selected: FL_NONE; If VAF_COLOR selected: FL_RGB
Max. Img Width any
Max. Img Height any

参数

CurrentTransferLength
键入 动态只读参数
默认
范围 [0; 2^34-1]

该参数反映了正在处理的帧中已经传输的字节数。此信息允许在整个帧传输完成之前,在软件应用程序中分析 DMA 缓冲区数据。

[注意] 可用性

mE5 marathon VCLx、mE5 marathon VCL、mE5 marathon VCX-QP、mE5 marathon VF2、LightBridge VCL、mE5 ironman VQ8-CXP6D 以及 mE5 ironman VQ8-CXP6B

使用示例

以下示例展示了 DmaToPC 算子的使用方法: