运算符 Library: Synchronization
M 型算子 PixelReplicator 用于复制输入链接 I 处的像素。输入 Replicate 处的值可设置输入链接 I 处每个像素的复制次数。输入链接 Replicate 处的值为“0”意味着将删除输入链接 I 处的像素。两个输入链接处的像素数量必须相同。允许使用可变行长、空图像和异步输入。输入端的 Parallelism 为 1。输出端的 Parallelism 可以是任意值。
以下示例将解释此算子的功能。
在此,输出端的 Parallelism 为 4,输入端(一如既往)为 1。如上图所示,由于 Replicate 处的输入为“2”,输入链接 I 处的像素“1”被复制。输入链接 I 处的像素“2”也发生了同样的情况。由于 Parallelism 为 4,复制的像素“1”和“2”会立即转发到输出链接 O。由于输入 Replicate 处为“0”,输入链接处的像素“3”被删除。像素“4”将被复制 9 次。由于 Parallelism 小于复制率,输入管线将被保持,直到所有值都复制完毕。未使用的输出像素在输出链接 O 处未定义(在上图中用“x”标记)。
![]() |
警告 |
|---|---|
|
输入链接 I 和 Replicate 处的图像尺寸必须相同。否则仿真将报错。如果在硬件中运行小程序期间违反此规范使用了该算子,则算子行为将未定义。请确保两个输入传输的像素数量完全相同。如果无法做到这一点,请在之前使用一个 SYNC 算子。 |
|
with Replicate.BitWidth + log2(I.MaxImageWidth) <= 31. |
|
|
输入 Replicate 处的 Bit Width |
|
|
向上取整到 Parallelism 的下一个倍数。 |
同步和异步输入
- 两个输入可以彼此异步。

![[警告]](../common/images/admon/warning.png)




上一页

