操作员Library: Memory
此算子可用于在基于 FPGA 的 Memory 中缓存相对少量的像素。 该算子不需要 RAM 类型的 VisualApplets 资源。 相反,该算子使用 FPGA 内部 Memory。 这可以是 FPGA 内部块 RAM、FPGA 分布式 RAM (LUT RAM) 或 UltraRAM memory(URAM 仅适用于 imaFlex CXP-12 Quad 和 imaFlex CXP-12 Penta 平台)。具体使用哪种 Memory 可以通过参数 ImplementationType 手动设置,或者由算子根据其配置自动选择。
ImageFifo 算子通常用于在同步之前缓存行或像素。 由于 FPGA 内部 Memory 有限,在不超出可用资源的情况下缓存全分辨率帧的可能性不大。
有关运算符延迟的信息,请参阅表 46,“库内存中运算符的各个延迟” 。
参数 EntitiesToStore 和 EntityType 用于定义最大可用缓冲区大小。 该算子是一种先进先出 Memory (FIFO)。 任何输入数据都会立即转发到输出端。 但是,如果输出端被阻塞(例如因为后续算子无法处理输入带宽),算子将存储数据。 因此,只有在算子无法输出数据时,才会填充 Memory。
为了测量缓冲区的 Fill 级别,算子提供了参数 FillLevel。 FillLevel 显示 Fifo 的百分比 Fill 级别。
参数 InfiniteSource 用于指定算子是直接连接到相机还是与其他 Memory 算子串联。 如果禁用 InfiniteSource,算子就不会进入溢出状态。 请参阅 'Infinite Sources / Connecting Cameras' 了解更多信息。
参数 ImplementationType 允许指定算子要使用的硬件 Memory。
| EntitiesToStore | |
|---|---|
| 键入 | 静态参数 |
| 默认 | 1 |
| 范围 | 任何 |
|
此参数定义最多需要存储多少个像素、行或帧。 实体类型使用参数 EntityType 进行定义。 |
|
| EntityType | |
|---|---|
| 键入 | 静态参数 |
| 默认 | FRAME |
| 范围 | {FRAME, LINE, PIXEL} |
|
此参数定义要存储的实体类型。 该参数可以缓存 EntitiesToStore 个 EntityType 单位。 仅当输入链接图像协议为 VALT_IMAGE2D 时才能选择 FRAME。 协议 VALT_LINE2D 和 VALT_LINE1D 可以选择 LINE,而 PIXEL 则始终处于启用状态。 |
|
| ImplementationType | |||||||
|---|---|---|---|---|---|---|---|
| 键入 | 静态写入参数 | ||||||
| 默认 | AUTO | ||||||
| 范围 | (AUTO, BRAM, LUTRAM, URAM) | ||||||
|
参数 ImplementationType 影响算子的实现策略,即用于实现算子的 Memory 元素。 您可以选择以下值之一: AUTO: 根据所连 link 的参数配置,自动选择最佳实现策略。 BRAM: 算子使用 FPGA 的 Block RAM。
LUTRAM: 算子使用 FPGA 的 LUT RAM。 URAM: 算子使用 FPGA 的 UltraRAM。
|
|||||||
| FillLevel | |
|---|---|
| 键入 | 动态读取参数 |
| 默认 | 0 |
| 范围 | [0%, 100%] |
|
此参数提供缓冲区的 Fill 级别。 算子会高效利用 FPGA 资源。在某些配置中,缓冲区中存储的数据量可能会超过 100%。 |
|
| InfiniteSource | |
|---|---|
| 键入 | 静态参数 |
| 默认 | ENABLED |
| 范围 | {ENABLED, DISABLED} |
|
该参数激活对相机等无限源运算符的支持。 有关更多信息,请参阅 '无限源 / 连接相机'。 |
|
以下示例展示了 ImageFifo 算子的使用方法:
-
Synchronization - 避免死锁。
-
示例 - 使用该算子缓存一行以进行行复制。
-
“Bayer Demosaicing Algorithm According to Laroche”
示例 - Laroche 拜耳去马赛克滤波器
-
“Modified Laroche Bayer Demosaicing Algorithm ”
示例 - 资源优化型 Laroche 拜耳去马赛克滤波器
-
Sequential DMA output of the color planes. The color separations is performed using operator ImageBufferMultiROI. An additional pre-sorting optimizes the bandwdith and resources.
-
示例 - 测量图像尺寸并可用于分析设计流程。
-
示例 - 用于调试设计中硬件的内部数据流控制以及可能的补偿。
-
示例 - 展示如何拆分和合并图像流。向图像追加尾部数据。
-
示例 - Scaling A Line Scan Image
-
'High Dynamic Range and Low Dynamic Range Example Using Camera Response Function'
示例 - 基于 Debevec 的 HDR (High Dynamic Range)
-
'High Dynamic Range and Low Dynamic Range Example with a Weighted Linear Ansatz'
示例 - 带有线性 Ansatz 的 HDR (High Dynamic Range)
-
示例 - 滚动平均值 - 循环


![[注意]](../common/images/admon/note.png)
上一页

