Operator ImageTimingGenerator

Operator Library: Debugging

「ImageTimingGenerator」運算子可讓您模擬實際運作系統中真實攝影機所產生的影像時序。

此運算子會產生一個黑色影像輸出。它提供許多參數,讓您能夠定義 影像輸出的時間行為。

使用此運算子來測試後續的影像處理管線是否能處理資料流的特定時序。

您將能觀察到,某種特定的時序行為是否會造成瓶頸,或是您的設計中的管線是否能夠在 時序偏差的情況下仍處理這些影像。

線條生成設定與幀生成設定支援四種不同的生成模式:

  • FreeRun:FreeRun 模式可實現最快的生成速度。
  • JitterMode:JitterMode 的運作方式與 FreeRun 模式類似,但可讓您為時序產生設定抖動。
  • 固定頻率:固定頻率生成模式可讓您設定固定的時序。
  • ExternalTrigger:若要使用輸入訊號來觸發行和/或幀的產生, 請將行和/或幀的產生設定設為 ExternalTrigger 模式。

此外,您可以測試設計在圖片高度、圖片寬度、行間距及邊框間距發生變化時會如何反應。 您可以透過查表和可變的抖動設定來定義這些參數。

您也可以調整像素占空比,以模擬虛擬像素時鐘的減速。

ImageHeightJitter 和 FrameGapJitter 僅在 FrameGenerationMode 設定為 JitterMode 時才有效(才可使用)。 同樣地,ImageWidthJitter 和 LineGapJitter 僅在 LineGenerationMode = JitterMode 時才有效。

幀生成參數以及 ImageHeight 參數僅適用於 VALT_IMAGE2D 影像輸出協定。 此外,所有線段生成參數以及 ImageWidth 參數僅適用於 VALT_IMAGE2D 或 VALT_LINE1D 影像輸出協定。

[注意] 設計模擬期間(建置前)的行為

在設計模擬期間,僅會使用ImageHeightLut、ImageWidthLut、MaxImageSequenceLength及ImageSequenceLength這幾個參數。此運算子的所有其他參數及 LUT 條目,均不會影響模擬出的影像。這表示 在模擬期間,ImageTimingGenerator運算子的行為與CreateBlackImage 運算子相同。

此運算子的所有其他參數及 LUT 條目均不會影響模擬出的影像 (也就是說,在模擬過程中,ImageTimingGenerator運算子的行為與CreateBlackImage 運算子相同)。

[重要] 執行階段測試

此運算子專為在執行階段測試與分析您的設計而設計: 在您使用此運算子進行偵錯之前,必須先建置 (合成) 設計、将其載入目標硬體,並啟動實際的影像處理。

I/O Properties

Property Value
Operator Type M
Input Links TriggerLineI(可選),可選的外部行觸發訊號輸入。若未使用,請接地。
TriggerFrameI(可選),可選的外部幀觸發訊號輸入。若未使用,請接地。
Output Link O、Image data output

Supported Link Format

Link Parameter 輸入連結 TriggerLineI(可選) 輸入連結 TriggerFrameI(可選) Output Link O
Bit Width 1 1 1
Arithmetic 無 無 無號數
Parallelism 無 無 any
Kernel Columns 無 無 1
Kernel Rows 無 無 1
Img Protocol SIGNAL SIGNAL {VALT_IMAGE2D, VALT_LINE1D, VALT_PIXEL0D}
Color Format 無 無 GRAY
Color Flavor 無 無 無
Max. Img Width 無 無 any
Max. Img Height 無 無 any

Parameters

MaxImageSequenceLength
Type 靜態寫入參數
Default 1
Range [1, (2^14)-1]

定義 ImageHeightLUT、ImageWidthLUT、FrameGapLUT 及 LineGapLUT 的 LUT 大小。

ImageSequenceLength
Type dynamic write parameter
Default 1
Range [1, (2^MaxImageSequenceLength)-1 ]

設定從 LUT 中使用的條目數量。 若設定為 1,則僅使用每個 LUT 的第一個條目。 若設定為(例如)4,而 MaxImageSequenceLength 設定為(例如)7, 則所有 LUT 中的前四個條目將以輪詢方式被使用。

ImageHeightLUT
Type dynamic write parameter
Default 1024
Range [1, MaxImageHeight]

此 LUT 儲存用於生成輸出影像的影像高度值。在生成過程中,LUT 值會以 輪詢方式讀取。

ImageHeightJitter
Type dynamic write parameter
Default 0
Range [0, MaxImageHeightBitwidth-2]

在影像生成過程中,ImageHeightLUT 值中允許產生抖動的最低有效位元數。僅 在參數 FrameGenerationMode 設定為 JitterMode 時使用。

ImageWidthLUT
Type dynamic write parameter
Default 1024
Range [1, MaxImageWidth]

此 LUT 儲存用於生成輸出影像的影像寬度值。在生成過程中,LUT 值會以 循環輪替的方式讀取。

ImageWidthJitter
Type dynamic write parameter
Default 0
Range [0, MaxImageWidthBitwidth-2]

在影像生成過程中,ImageWidthLUT 值中允許進行抖動的最低有效位元數。僅 在「線生成模式」參數設定為「抖動模式」時使用。

PixelDutyCycle
Type dynamic write parameter
Default 100
Range [1, 100]

輸出流的像素占空比。100% 表示每個時鐘週期對應一個輸出像素。若設定為 20% 的像素 占空比,則每五個時鐘週期會產生一個輸出像素。

FrameGenerationMode
Type dynamic write parameter
Default FreeRun
Range {自由運行、抖動模式、固定頻率、外部觸發}

選取幀生成模式。

FreeRun:基於 ImageHeight 和 FrameGap 的最快影像生成模式。參數 FrameRate 將被忽略。

抖動模式:與 FreeRun 相同,但會使用 FrameGapJitter 參數。

固定頻率:透過 FrameRate 參數設定,產生固定頻率的影像幀率。

外部觸發器:可選的外部觸發輸入 TriggerFrameI 用於觸發新影像幀的生成。僅在 FrameTriggerI 埠已啟用時才可用。

當在當前影像生成尚未結束之前觸發了新的影像生成時,該請求將被忽略,且 SkippedFrame 計數器會遞增。此規則適用於所有幀生成模式。

幀率
Type dynamic write parameter
Default 10
Range [0.5, 1048576.0]

目標影像頻率(單位:赫茲)。僅當參數 FrameGenerationMode 設定為 FixedFrequency 時才會使用。最大幀率 受 LineRate 和 ImageHeight 的限制。

FrameGapLUT
Type dynamic write parameter
Default 1024
Range [1, 67108863]

查表條目用以定義兩幀影像之間的間隔。幀間隔值以時鐘 週期數來定義該間隔。在「固定頻率」生成模式下,此參數將被忽略。

幀間距抖動
Type dynamic write parameter
Default 0
Range [0, FrameGapBitwidth-2]

在影像生成過程中,FrameGapLUT 值中允許產生抖動的最低有效位元數。僅 在 JitterMode 幀生成時使用。

線條生成模式
Type dynamic write parameter
Default FreeRun
Range {自由運行、抖動模式、固定頻率、外部觸發}

選取線條生成模式。

FreeRun:基於 ImageWidth 和 LineGap 的最快影像生成模式。參數 LineRate 將被忽略。

抖動模式:與 FreeRun 相同,惟會使用 LineGapJitter 參數。

固定頻率:透過 LineRate 參數設定,產生固定頻率的線速。

外部觸發器:可選的外部觸發輸入 TriggerLineI 用於觸發新行生成。僅在埠 LineTriggerI 已啟用時才可用。

若當前行生成尚未結束,且觸發了新行的開始,則此請求將被忽略,並將 SkippedLine 計數器遞增。此規則適用於所有行生成模式。

LineRate
Type dynamic write parameter
Default 10
Range [0.5, 1048576.0]

目標線頻率(單位:赫茲)。僅用於「固定頻率」線生成模式。最大線速(LineRate)受線間距(LineGap) 及影像寬度(ImageWidth)所限制。

LineGapLUT
Type dynamic write parameter
Default 1024
Range [1, 67108863]

查表條目用來定義兩條線之間的間距。線間距值以像素為單位,表示 兩條線之間的距離。在「固定頻率」線生成模式下,此參數將被忽略。

行間距抖動
Type dynamic write parameter
Default 0
Range [0, 行間距位寬 - 2]

T 在影像生成過程中,允許 LineGapLUT 值中最低有效位元數進行抖動的位元數。僅 在 JitterMode 行生成期間使用。

SkippedLine
Type 動態讀取參數
Default 0
Range [0, 65535]

這是用於指示線條生成模式中設定衝突的錯誤計數器。

若當前行生成尚未結束,且觸發了新行的開始,則此請求將被忽略,並將 SkippedLine 計數器遞增。此規則適用於所有行生成模式。

SkippedFrame
Type 動態讀取參數
Default 0
Range [0, 65535]

這是用於指示幀生成模式中設定衝突的錯誤計數器。

若當前的影像生成尚未結束,且觸發了新的影像生成,則此請求將被忽略,並將 SkippedFrame 計數器遞增。此規則適用於所有幀生成模式。

LinesToSimulate
Type 靜態寫入參數
Default 1
Range [1, (2^32) - 1]

若輸出連結影像協定設定為 VALT_LINE1D,則必須指定模擬所需的行數。 此參數用於指定模擬影像的高度。有關一維模擬的更多資訊,請參閱「模擬」。此 參數僅在輸出影像協定設定為 VALT_LINE1D 時才能變更。

PixelsToSimulate
Type 靜態寫入參數
Default 1
Range [1, (2^32) - 1],步長 = 輸出並行度

若輸出連結影像協定設定為 VALT_PIXEL0D,則必須指定模擬所需的 像素流大小。此參數用於指定模擬像素流的寬度。有關 0D 模擬的更多資訊,請參閱「模擬」。此參數僅在輸出影像協定設定為 VALT_PIXEL0D 時方可變更。

Examples of Use

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