Operator Library: Memory
此運算子可用於在基於 FPGA 的記憶體中緩衝少量的像素。 此運算子不需要類型為 RAM 的 VisualApplets 資源。 取而代之的是,該運算子使用 FPGA 內部記憶體。 這可以是 FPGA 內部塊 RAM、FPGA 分布式 RAM (LUT RAM) 或 UltraRAM 記憶體(URAM 僅適用於 imaFlex CXP-12 Quad 與 imaFlex CXP-12 Penta 平台)。要使用哪一種,可以透過參數 ImplementationType 手動設定,或由運算子根據運算子的組態自動選擇。
ImageFifo 運算子通常用於在同步之前緩衝行或像素。 由於 FPGA 內部記憶體有限,因此在不超出可用資源的情況下緩衝全解析度畫格的可能性很小。
有關 operator 延遲的資訊,請參閱 表 46「Library Memory 中各 operator 的個別延遲」。
參數 EntitiesToStore 與 EntityType 定義了最大可用緩衝區大小。 此運算子是一個先進先出記憶體 (FIFO)。 任何輸入資料都會立即轉發到輸出端。 然而,如果輸出遭到阻塞(例如因為後續運算子無法處理輸入頻寬),運算子將會儲存資料。 因此,只有在運算子無法輸出資料時,才會填滿記憶體。
為了測量緩衝區的 Fill 程度,運算子提供了參數 FillLevel。 FillLevel 顯示 Fifo 的 Fill 百分比。
參數 InfiniteSource 用於指定運算子是直接連接到相機,還是與其他記憶體運算子串聯。 如果停用了 InfiniteSource,運算子將不會進入溢位狀態。 請參閱 'Infinite Sources / Connecting Cameras' 以取得更多資訊。
參數 ImplementationType 允許指定運算子要使用的硬體記憶體。
| EntitiesToStore | |
|---|---|
| Type | static parameter |
| Default | 1 |
| Range | any |
|
此參數定義最多必須儲存多少個像素、行或畫格。 實體類型是使用參數 EntityType 來定義的。 |
|
| EntityType | |
|---|---|
| Type | static parameter |
| Default | FRAME |
| Range | {FRAME, LINE, PIXEL} |
|
此參數定義要儲存的實體類型。 該參數可以緩衝 EntitiesToStore 個 EntityType 單位。 只有當輸入連結影像協定為 VALT_IMAGE2D 時,才能選擇 FRAME。 LINE 可用於協定 VALT_LINE2D 與 VALT_LINE1D,而 PIXEL 則始終啟用。 |
|
| ImplementationType | |||||||
|---|---|---|---|---|---|---|---|
| Type | 靜態寫入參數 | ||||||
| Default | AUTO | ||||||
| Range | (AUTO, BRAM, LUTRAM, URAM) | ||||||
|
參數 ImplementationType 會影響運算子的實作策略, 即用於實作運算子的記憶體元素。 您可以選擇以下其中一個值: AUTO: 根據所連接連結的參數化, 自動選擇最佳的實作策略。 BRAM: Operator 使用 FPGA 的 Block RAM。
LUTRAM: Operator 使用 FPGA 的 LUT RAM。 URAM: 運算子使用 FPGA 的 UltraRAM。
|
|||||||
| FillLevel | |
|---|---|
| Type | 動態讀取參數 |
| Default | 0 |
| Range | [0%, 100%] |
|
此參數提供緩衝區的 Fill 程度。 運算子會有效率地使用 FPGA 資源。在某些組態中,可以在緩衝區中儲存超過 100%。 |
|
| InfiniteSource | |
|---|---|
| Type | static parameter |
| Default | ENABLED |
| Range | {ENABLED, DISABLED} |
|
此參數啟用對無限來源運算子(如 Camera 運算子)的支援。 如需更多資訊,請參閱 'Infinite Sources / Connecting Cameras'。 |
|
以下範例顯示了 ImageFifo 運算子的使用方式:
-
Synchronization - 避免死結。
-
範例 - 使用運算子緩衝一行以進行行複製。
-
「Bayer Demosaicing Algorithm According to Laroche」
範例 - Laroche Bayer Demosaicing 濾波器
-
「Modified Laroche Bayer Demosaicing Algorithm 」
範例 - 資源最佳化的 Laroche Bayer Demosaicing 濾波器
-
彩色平面的循序 DMA 輸出。 色彩分離是使用 ImageBufferMultiROI 運算子執行。 額外的預排序可最佳化頻寬與資源。
-
範例 - 測量影像尺寸,可用於分析設計流程。
-
範例 - 用於偵錯硬體中設計的內部資料流控制以及可能的補償。
-
範例 - 展示如何分割與合併影像串流。並在影像附加尾碼。
-
範例 - Scaling A Line Scan Image
-
「High Dynamic Range and Low Dynamic Range Example Using Camera Response Function」
範例 - 根據 Debevec 的 High Dynamic Range
-
'High Dynamic Range and Low Dynamic Range Example with a Weighted Linear Ansatz'
範例 - 採用 Linear Ansatz 的 High Dynamic Range
-
範例 - 移動平均 - 迴圈


![[備註]](../common/images/admon/note.png)
上一頁

