目錄
- CoefficientBuffer
- CoefficientBufferMultiRoi (imaFlex)
- FrameBufferMultiRoi (imaFlex)
- FrameBufferMultiRoiDyn
- FrameBufferRandomRead
- FrameBufferRandomRead (imaFlex)
- FrameMemory
- FrameMemoryRandomRd
- ImageBuffer
- ImageBufferMultiRoI
- ImageBufferMultiRoIDyn
- ImageBufferSC
- ImageFifo
- KneeLUT
- LineBuffer (imaFlex)
- LineMemory
- LineMemoryRandomRd
- LUT
- RamLUT
- RamLUT (imaFlex)
- ROM
![]()
Memory library 包含用於資料緩衝、資料重新排序以及資料隨機存取的 operator。 這裡有許多不同的 operator。 它們各自實作了不同的記憶體存取方式。
如需關於記憶體元素與 latency 的實用指南,請參閱 Memory Elements 教學主題 以及 Latency 教學主題。
這些 operator 使用的是 frame grabber RAM (DRAM)、FPGA 內部 block RAM (BRAM 或 URAM),或是 FPGA distributed RAM (LUT RAM)。 下表概述了各個 operator 所使用的記憶體類型。
| 姓名 | Memory Type |
|---|---|
| CoefficientBuffer | Frame grabber RAM (DRAM) |
| CoefficientBufferMultiRoi | Frame grabber RAM (DRAM) |
| FrameBufferMultiRoi | Frame grabber RAM (DRAM) |
| FrameBufferMultiRoiDyn | Frame grabber RAM (DRAM) |
| FrameBufferRandomRead | Frame grabber RAM (DRAM) |
| FrameMemory | FPGA 內部 block RAM |
| FrameMemoryRandomRd | FPGA 內部 block RAM |
| ImageBuffer | Frame grabber RAM (DRAM) |
| ImageBufferMultiRoI | Frame grabber RAM (DRAM) |
| ImageBufferMultiRoIDyn | Frame grabber RAM (DRAM) |
| ImageBufferSC | Frame grabber RAM (DRAM) |
| ImageBufferSpatial | Frame grabber RAM (DRAM) |
| ImageFifo | FPGA 內部 RAM |
| ImageSequence | Frame grabber RAM (DRAM) |
| KneeLUT | FPGA 內部 block RAM |
| LineBuffer | Frame grabber RAM (DRAM) |
| LineMemory | FPGA 內部 RAM |
| LineMemoryRandomRd | FPGA 內部 block RAM |
| LUT | FPGA 內部 block RAM |
| RamLUT | Frame grabber RAM (DRAM) |
| ROM | FPGA 內部 block RAM |
表 45. Library Memory 中 operator 的記憶體類型
即使 operator 使用的是 frame grabber RAM (DRAM),也可能需要額外的 FPGA 內部 RAM 來進行緩衝。
The delay, i.e., latency of a memory operator, depends on the operator's implementation. Some operators only have a short pixel delay, while others have a line or frame delay. The following table lists the delay of the individual memory operators.
| 姓名 | 延遲 |
|---|---|
| CoefficientBuffer | 無:如果輸出未被阻擋,將始終輸出資料。 |
| CoefficientBufferMultiRoi | 無:如果輸出未被阻擋,將始終輸出資料。 |
| FrameBufferMultiRoi | 最少 1 張:在張資料完整寫入緩衝區後開始讀取。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| FrameBufferMultiRoiDyn | 最少 1 張:使用座標輸入的讀取作業會在張資料完整寫入緩衝區後開始。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| FrameBufferRandomRead | 最少 1 張:一旦張資料完整寫入,即開始使用位址輸入進行讀取。如果輸出被阻擋,operator 會對輸入資料進行緩衝。Latency 也取決於是否存在讀取位址資料。 |
| FrameMemory | 1 張:在張資料完整寫入緩衝區後開始讀取。 |
| FrameMemoryRandomRd | 1 張:在張資料完整寫入緩衝區後即可開始讀取。Latency 取決於是否存在讀取位址資料。 |
| ImageBuffer | 最少 1 行:一旦整行資料完整寫入緩衝區,輸出即開始讀取。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| ImageBufferMultiRoI | 最少 1 張:在張資料完整寫入緩衝區後開始讀取。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| ImageBufferMultiRoIDyn | 最少 1 張:使用座標輸入的讀取作業會在張資料完整寫入緩衝區後開始。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| ImageBufferSC | 最少 1 行:一旦整行資料完整寫入緩衝區,輸出即開始讀取。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| ImageBufferSpatial | 最少 1 行:一旦整行資料完整寫入緩衝區,輸出即開始讀取。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| ImageFifo | 無 latency。只有在輸出被阻擋時,operator 才會緩衝並延遲輸入資料。 |
| ImageSequence | 最少 SequenceLength 張:在某個序列的所有張資料完整寫入緩衝區後開始讀取。如果輸出被阻擋,operator 會對輸入資料進行緩衝。 |
| KneeLUT | 無 latency |
| LineBuffer | 1 行:在行完全寫入緩衝區後開始讀取。 |
| LineMemory | 1 行:在行完全寫入緩衝區後開始讀取。 |
| LineMemoryRandomRd | 1 行:在行完全寫入緩衝區後即可開始讀取。延遲取決於是否存在讀取位址資料。 |
| LUT | 無 latency |
| RamLUT | 僅有少數幾個時脈週期的延遲。取決於位址。 |
| ROM | 無延遲 |
Table 46. Individual Latencies of the Operators in Library Memory
以下清單總結了 Library Memory 的所有 Operator
| Operator Name | 短說明 | 推出時間 | |
|---|---|---|---|
| CoefficientBuffer |
允許將電腦中的影像檔案上傳至擷取卡,並將其用作影像來源。 |
版本 1.1 | |
| CoefficientBufferMultiRoi (imaFlex) |
此 Operator 在 frame grabber RAM (DRAM) 中實作一個緩衝區,可透過其參數以多個平行影像進行初始化,並讀出多個感興趣區域 (ROI)。 |
版本 3.6 | |
| FrameBufferMultiRoi (imaFlex) |
將輸入影像緩衝在 Frame Grabber RAM (DRAM) 中,並針對每個緩衝的影像輸出任意數量的 ROI。 |
版本 3.6 | |
| FrameBufferMultiRoiDyn |
將輸入影像緩衝在 Frame Grabber RAM (DRAM) 中,並針對每個緩衝的影像讀出多個動態感興趣區域 (ROI)。 |
版本 3.5 | |
| FrameBufferRandomRead |
FrameBufferRandomRead 是一個具有隨機讀取存取的記憶體緩衝區。 |
Version 1.3 | |
| FrameBufferRandomRead (imaFlex) |
FrameBufferRandomRead (imaFlex) 是適用於 imaFlex CXP-12 Quad 與 imaFlex CXP-12 Penta 平台的記憶體緩衝區,具備隨機讀取存取功能。 |
版本 3.3 | |
| FrameMemory |
FrameMemory 是一個具有隨機寫入存取的小型記憶體區塊。 |
版本 1.1 | |
| FrameMemoryRandomRd |
FrameMemoryRandomRd 是一個具有隨機讀取存取的小型記憶體區塊。 |
Version 1.3 | |
| ImageBuffer |
在具有 ROI 選擇功能的 Frame Grabber RAM (DRAM) 中緩衝影像。 |
版本 1.1 | |
| ImageBufferMultiRoI |
在 Frame Grabber RAM (DRAM) 中緩衝輸入影像串流,並從每個輸入影像輸出任意數量的 ROI。 |
版本 1.1 | |
| ImageBufferMultiRoIDyn |
在 Frame Grabber RAM (DRAM) 中緩衝輸入影像,並從每個影像傳輸任意數量的動態 ROI。 |
版本 1.1 | |
| ImageBufferSC |
在具有感測器校正與 ROI 選擇功能的 Frame Grabber RAM (DRAM) 中緩衝影像。 |
版本 1.1 | |
| ImageFifo |
在 FPGA 內部 RAM 中緩衝有限數量的像素。 |
版本 1.1 | |
| KneeLUT |
透過一系列節點實作對照表 (Lookup Table) 的近似值。 |
版本 1.1 | |
| LineBuffer (imaFlex) |
使用支援興趣區 (ROI) 的 Frame Grabber RAM (DRAM) 逐行緩衝影像資料。此 operator 僅適用於 imaFlex CXP-12 Quad 與 imaFlex CXP-12 Penta 平台。 |
版本 3.3 | |
| LineMemory |
LineMemory 是一個具有隨機寫入存取權的小型 Memory 區塊。 |
版本 1.1 | |
| LineMemoryRandomRd |
LineMemoryRandomRd 是一個具有隨機讀取存取權的小型 Memory 區塊。 |
Version 1.3 | |
| LUT |
實作動態內容的 Lookup Table。 |
版本 1.1 | |
| RamLUT |
基於 FPGA 外部 RAM(即 Frame Grabber RAM (DRAM))實作大型動態內容 Lookup Table。 |
Version 1.3 | |
| RamLUT (imaFlex) |
基於 FPGA 外部 RAM 實作大型動態內容 Lookup Table。 |
版本 3.3 | |
| ROM |
實作動態內容的 Lookup Table。 |
版本 1.1 | |
表 47. Library: Memory 的 operators

上一頁

