Operator ImageValve

Operator Library: Synchronization

此運算子可作為閥門,用以控制輸入鏈路的数据流。 訊號輸入「OpenValve」用於控制該閥門。 因此,此運算子可影響 I 與 O 之間像素、行及幀的數據流。 限制最大頻寬是此運算子的主要目的。 廣義而言,此運算子用於阻斷及控制影像處理的速度。 例如,此運算子可與 CreateBlankImage 來實現一個 輸出幀率可控的 影像產生器。

若閥門處於關閉狀態,VisualApplets 流量控制將阻擋所有傳入資料。 此時,輸入管線將會被阻塞。 若使用無法停止處理的運算子, 請確保使用容量足夠的緩衝區。例如連接至幀擷取卡的自由運行攝影機。 若操作元的輸出被任何後續的操作元阻塞,該操作元 將把此阻塞狀態轉發至輸入端。 在此情況下,開啟閥門並不會產生任何影響。 請勿將閥門與閘門混淆。閘門操作元在關閉時會捨棄輸入資料。

該閥門由訊號輸入「OpenValve」及操作員的參數所控制。 若「OpenValve」設定為 1,則操作員將允許傳輸 「SequenceLength」個像素、行或幀,具體取決於 「Mode」參數的設定。

若將OpenValve設定為恆定值 1,則操作員會允許 影像資料從輸入鏈路 I 無阻礙地傳輸至輸出鏈路 O,也就是說,閥門始終處於開啟狀態。

若在操作員的閥門仍處於開啟狀態時,將第二個脈衝設定為「OpenValve」,且 正在處理某個序列,則該脈衝將被忽略。 若在目前正在處理序列時,透過參數SequenceLength 變更序列長度,操作員會先完成前一個 序列,之後才會採用新值。

VisualApplets 中的高階模擬會將所有輸入影像 直接傳遞至輸出端,因為並未進行時序模擬。 輸入連結「OpenValve」中的任何數值均會被忽略。

I/O Properties

Property Value
Operator Type M
Input Links I,資料輸入
OpenValve,控制訊號輸入
Output Link O,資料輸出

Supported Link Format

Link Parameter Input Link I 輸入連結 OpenValve Output Link O
Bit Width [1, 64]1 1 as I
Arithmetic {unsigned, signed} 無號數 as I
Parallelism any 1 as I
Kernel Columns any 1 as I
Kernel Rows any 1 as I
Img Protocol {VALT_IMAGE2D, VALT_LINE1D, VALT_PIXEL0D} VALT_SIGNAL as I
Color Format any VAF_GRAY as I
Color Flavor any FL_NONE as I
Max. Img Width any any as I
Max. Img Height any any as I

1

無號輸入的 Bit Width 範圍為 [1, 64]。 有號輸入的範圍為 [2, 64]。 無號彩色輸入的範圍為 [3, 63],有號彩色輸入的範圍為 [6, 63]。

Synchronous and Asynchronous Inputs

  • 所有輸入彼此非同步。

Parameters

Mode
Type 動態/靜態讀寫參數
Default FRAME
Range {PIXEL, LINE, FRAME}

設定運算子的模式。 根據此參數,閥門將開啟SequenceLength 個像素、行或幀。

LINE 和 FRAME 模式是否可用,取決於輸入鏈路 I 的影像協定。

序列長度位元
Type 靜態參數
Default 10
Range [1, 64]

設定用以表示序列長度的位元數。

此參數僅在參數SequenceLength 設定為「動態」時才會啟用。

序列長度
Type 動態/靜態讀寫參數
Default 1
Range 動態:[1, 2^SequenceLengthBits - 1],靜態:[1, 2^64 - 1]

設定序列的長度。 若該運算子處於開啟狀態,則會根據參數Mode, 輸出指定數量的像素、 行或幀。

若「模式」設定為「PIXEL」,則該值必須能被並行度整除。

ImplementationType
Type 靜態寫入參數
Default AUTO
Range (AUTO, EmbeddedALU, LUT)

參數「實作類型」(ImplementationType) 會影響運算子的實作策略,也就是說, 會使用哪些邏輯元件來實作該運算子。

您可以選擇下列其中一個值:

AUTO: 當運算子被實例化時,系統會根據參數 SequenceLengthBits 自動選擇最佳的實作策略。

嵌入式算術邏輯單元(EmbeddedALU): 此運算子使用 FPGA 中非基於 LUT 的嵌入式算術邏輯單元。

LUT: 該運算子採用 FPGA 的 LUT 邏輯。

[注意] 一般建議使用 AUTO

通常,此參數應設定為 AUTO。 在特殊情況下,例如設計中某種 FPGA 資源不足時, 您可以透過設定EmbeddedALU或LUT 值,手動調整 FPGA 資源管理。 若設計中出現時序問題,請使用LUT來改善時序。

Examples of Use

以下範例展示了運算子 ImageValve 的使用方式:

  • 'Hardware Test'

    DMA、RAM、GPIO、觸發與 LED 硬體自我測試的範例。

  • 「Image Flow Control」

    範例 - 用於對硬體中的設計內部資料流控制進行偵錯以及進行可能的補償。