Operator Library: Debugging
透過 ImageFlowControl operator,您可以控制從無限來源接收到的資料流。
若您的設計符合以下情況,ImageFlowControl operator 將特別有幫助:
- 由無法停止的(無限)來源提供資料,且未採用基於 RAM 的影像緩衝區。
- 包含迴圈,且您希望偵測並防止迴圈中的資料遺失。
使用此 operator,您可以確保後續管線中不會發生 FIFO 溢位。
此 operator 的運作方式類似 ImageFifo operator - 它具有內建的 FIFO。
此外,此 operator 還提供特定的溢位控制機制。若發生溢位:
- 影像會遭到裁切(且僅轉發影像的前半部分)。
- 只要溢位情況持續,影像就會被丟棄。(當溢位情況結束時,傳輸將從下一影格的第一個像素開始。)
透過這種方式,operator 可確保設計能夠順利執行。
特定的計數參數會告知您遺失了多少影格,以及有多少影格因在溢位情況下被裁切而導致轉發不完整。 這可讓您追蹤設計中(例如在迴圈中)的資料遺失情況。
此外,遺失的影格可以使用具有可選寬度和高度的虛擬影格(dummy frames)來補償。 如果在輸出連結處出現暫時的頻寬限制,此功能可保持進出影格的速率一致。 然而,這只有在產生的虛擬影格相較於遺失的影格足夠小的情況下才能運作。
![]() |
執行階段測試 |
|---|---|
|
此 operator 旨在於執行階段測試和分析您的設計:您需要建置(合成)設計、將其載入目標硬體,並啟動實際的影像處理,然後才能使用該 operator 進行偵錯。 此 operator 並非用於 VisualApplets 內的設計模擬。 |
| Property | Value |
|---|---|
| Operator Type | M |
| 輸入連結 | TerminateI(選用),外部終止訊號輸入。如果設為 1,目前的輸入影像將被終止,亦即
該 operator 會作為接收端(sink)。透過 CompensateLostFrames 參數可以啟用遺失影格的補償。 I,影像資料輸入 |
| 輸出連結 | O,影像資料輸出 StatusO(選用),statusO 連接埠與影像資料輸出連接埠 O 同步。此連接埠寬度為兩個位元。Bit 0:若設定,表示目前影格遭到截斷。Bit 1:若設定,表示為虛擬影格。僅必須評估影格內的最後一個資料字。 |
| Link Parameter | 輸入連結 TerminateI(選用) | Input Link I | Output Link O | 輸出連結 StatusO(選用) |
|---|---|---|---|---|
| Bit Width | 1 | [1, 64] | as I | 2 |
| Arithmetic | 無 | {unsigned, signed} | as I | as I |
| Parallelism | 無 | any | as I | as I |
| Kernel Columns | 無 | any | as I | as I |
| Kernel Rows | 無 | any | as I | as I |
| Img Protocol | SIGNAL | VALT_IMAGE2D | as I | as I |
| Color Format | 無 | any | as I | GRAY |
| Color Flavor | 無 | any | as I | 無 |
| Max. Img Width | 無 | any | as I | as I |
| Max. Img Height | 無 | any | as I | as I |
| EntitiesToStore | |
|---|---|
| Type | 靜態寫入參數 |
| Default | 8 |
| Range | [1, (2^32)-1] |
|
要儲存的 FIFO 實體數量。 |
|
| EntitiesType | |
|---|---|
| Type | 靜態寫入參數 |
| Default | LINE |
| Range | {FRAME, LINE, PIXEL} |
|
定義儲存實體。 |
|
| ImplementationType | |
|---|---|
| Type | 靜態寫入參數 |
| Default | AUTO |
| Range | {AUTO, BRAM, LUTRAM} |
|
定義 FIFO 實作類型。 |
|
| FifoFillLevel | |
|---|---|
| Type | 動態寫入參數 |
| Default | 0% |
| Range | [0%, 100%] |
|
以百分比表示的實際 FIFO Fill. |
|
| MaxFifoFillLevel | |
|---|---|
| Type | 動態寫入參數 |
| Default | 0% |
| Range | [0%, 100%] |
|
Stores the maximum fifo fill level ever reached. |
|
| CounterWidth | |
|---|---|
| Type | 靜態寫入參數 |
| Default | 16 |
| Range | [8, 32] |
|
設定此運算子內所有 Counter 的 Bit Width。 |
|
| LostFrameCount | |
|---|---|
| Type | 動態讀取參數 |
| Default | 16 |
| Range | [0, (2^CounterWidth)-1] |
|
計算因輸出鏈結阻塞或選用的 TerminateI 輸入而遺失的完整影格。ra> |
|
| IncompleteFrameCount | |
|---|---|
| Type | 動態讀取參數 |
| Default | 16 |
| Range | [0, (2^CounterWidth)-1] |
|
計算因提早終止而不完整的影格。 |
|
| FullFrameCount | |
|---|---|
| Type | 動態讀取參數 |
| Default | 16 |
| Range | [0, (2^CounterWidth)-1] |
|
計算傳遞至輸出鏈結的完整影格。 |
|
| ClearStatus | |
|---|---|
| Type | 動態寫入參數 |
| Default | 否 |
| Range | {Yes, No} |
|
如果設為 "yes",則會清除所有 Counter。 |
|
| CompensateLostFrame | |
|---|---|
| Type | 動態寫入參數 |
| Default | 否 |
| Range | {Yes, No} |
|
如果設為 Yes,則會透過插入虛擬影格(dummy frames)來補償所有遺失的影格。 |
|
| DummyFrameWidth | |
|---|---|
| Type | 動態寫入參數 |
| Default | 1024 |
| Range | [2, MaxImageWidth] |
|
所要產生的虛擬影格寬度。 |
|
| DummyFrameHeight | |
|---|---|
| Type | 動態寫入參數 |
| Default | 1 |
| Range | [1, MaxImageHeight] |
|
所要產生的虛擬影格高度。 |
|
| DummyFrameCount | |
|---|---|
| Type | 動態讀取參數 |
| Default | 0 |
| Range | [0,(2^CounterWidth)-1] |
|
計算所有產生的虛擬影格。 |
|
| EofDifferenceFrameCount | |
|---|---|
| Type | 動態讀取參數 |
| Default | 0 |
| Range | [-(2^CounterWidth), (2^CounterWidth)-1] |
|
傳出與傳入影格數量之間的差值:OutgoingEofCounter-IncomingEofCounter。 |
|

![[重要]](../common/images/admon/important.png)
上一頁

