Operator Library: Hardware Platform
The DmaToPC operator is the image interface between a VisualApplets applet and the host PC. The DMAToPC operator transfers images from the applet to the host PC. Image transfer is performed using direct memory access, i.e., the image data is directly written to the host PC memory.
Multitple color formats, bit widths and Parallelism are supported. The allowed combinations depend on the used hardware platform:
-
imaFlex 2 Dual 100:
-
The product of the bit width and Parallelism must be an integer multiple of 8 and must be less than or equal to 512.
-
The product of the maximal image width and the maximal image height must be divisible by 4 bytes.
-
-
imaFlex CXP-12 Quad and imaFlex CXP-12 Penta:
-
The product of the bit width and Parallelism must be an integer multiple of 8 and must be less than or equal to 256.
-
The product of the maximal image width and the maximal image height must be divisible by 4 bytes.
-
-
microEnable 5 marathon VCLx, microEnable 5 marathon VCL, microEnable 5 marathon VCX-QP, microEnable 5 marathon VF2, and LightBridge VCL:
The link properties of the operator input depend on the PCIe mode that is supported by the applet. The supported PCIe mode you can select in operator AppletProperties, parameter PcieInterfaceType.
Multiple color formats, bit widths and Parallelism are supported. The maximum of the product Parallelism x Bit Width must be a multiple of 8 and depends on the PCIe mode you selected in operator AppletProperties:
- Generation_1: Parallelism x Bit Width <= 64 Bit.
- Generation_2: Parallelism x Bit Width <= 128 bit
The product of the maximal image width and the maximal image height must be divisible by 4 bytes.
-
microEnable 5 ironman VD8-PoCL, microEnable 5 ironman VQ8-CXP6D (DIN connector) and microEnable 5 ironman VQ8-CXP6B (BNC connector):
-
When parameter PcieInterfaceType in the operator AppletProperties is set to Generation_1, the product of the bit width and the Parallelism must be a multiple of 8 and less or equal to 128.
-
When parameter PcieInterfaceType in the operator AppletProperties is set to Generation_2, the product of the bit width and the Parallelism must be a multiple of 8 and less or equal to 256.
-
![]() |
RGB is converted to BGR |
|---|---|
|
The operator converts RGB data to BGR data (i.e., the components R and B are switched before DMA transfer). After DMA transfer, the former RGB image is available as a BGR image in the PC's RAM. This conversion is carried out to ease further processing with software tools, as most software tools directly support BGR format. |
| 하드웨어 플랫폼별 사용 가능 여부 |
|---|
| imaFlex 2 Dual 100 |
| imaFlex CXP-12 Penta |
| imaFlex CXP-12 Quad |
| microEnable 5 marathon VCLx |
| microEnable 5 marathon VCL |
| microEnable 5 marathon VCX-QP |
| microEnable 5 marathon VF2 |
| LightBridge VCL |
| microEnable 5 ironman VQ8-CXP6D/-CXP6B |
| microEnable 5 ironman VD8-PoCL |
자료
The operator uses one VisualApplets resource.
imaFlex 2 Dual 100:
imaFlex 2 Dual 100 플랫폼의 경우, 연산자는 DmaToHostPort 유형의 VisualApplets 리소스 하나를 사용합니다. 플랫폼에서 최대 5개의 DmaToPC 연산자를 사용할 수 있습니다. 리소스 인덱스는 엄격하게 단조 증가해야 합니다(예: 0 → 1 → 2 → 3 → 4). 첫 번째 연산자는 항상 인덱스 0을 가져야 하며, 이후 각 연산자는 다음 인덱스(+1)를 가져야 합니다. 리소스 인덱스에 누락된 부분이 없어야 하며 인덱스는 항상 0에서 시작합니다. 리소스 대화 상자에서 연산자의 리소스 인덱스를 설정하십시오. 자세한 내용은 'Allocation of Device Resources'를 참조하십시오.
imaFlex CXP-12 Quad and imaFlex CXP-12 Penta:
imaFlex CXP-12 Quad 및 imaFlex CXP-12 Penta 플랫폼의 경우, 연산자는 DMA 유형의 VisualApplets 리소스 하나를 사용합니다. 리소스 대화 상자에서 연산자의 리소스 인덱스를 설정하십시오. 자세한 내용은 'Allocation of Device Resources'를 참조하십시오.
| Link Parameter | Input Link I |
|---|---|
| Bit Width | 설명 참조 |
| Arithmetic | unsigned |
| Parallelism | 설명 참조 |
| Kernel Columns | 1 |
| Kernel Rows | 1 |
| Img Protocol | VALT_IMAGE2D |
| Color Format | {VAF_COLOR, VAF_GRAY} |
| Color Flavor | {FL_NONE, FL_RGB} If VAF_GRAY selected: FL_NONE; If VAF_COLOR selected: FL_RGB |
| Max. Img Width | any |
| Max. Img Height | any |
| CurrentTransferLength | ||||
|---|---|---|---|---|
| Type | 동적 읽기 파라미터 | |||
| Default | ||||
| Range | [0; 2^34-1] | |||
|
이 파라미터는 처리 중인 프레임에서 이미 전송된 바이트의 양을 반영합니다. 이 정보를 통해 전체 프레임이 전송되기 전에 소프트웨어 애플리케이션에서 DMA 버퍼 데이터를 분석할 수 있습니다.
|
||||
연산자 DmaToPC의 사용법은 다음 예제에 나와 있습니다.
-
시작하기
-
그림 29, '간단한 VisualApplets 디자인'
기본 원칙 - VisualApplets의 개념 이해하기
-
데이터 흐름 - VisualApplets에서 사용되는 파이프라인 구조 이해하기
-
오퍼레이터의 디바이스 리소스 할당에 대해 알아봅니다.
-
기본 가이드 - 하나의 카메라에 여러 DMA 채널 출력 사용.
-
'Color Plane Separation Option 1 - Three DMAs'
RGB 컬러 평면을 세 개의 DMA 채널 출력으로 분할합니다.
-
'JPEG_Encoder 연산자를 이용한 JPEG 압축'
예시 - JPEG_Encoder 연산자의 사용법을 보여주는 간단한 예시입니다.
-
'User Library 요소를 사용한 JPEG 컬러 압축'
Examples - 컬러 JPEG 압축을 위한 JPEG user library 요소의 사용법을 보여주는 간단한 예제입니다.
-
Examples - microEnable4 및 5 플랫폼용으로 지원이 중단된 JPEG_Encoder_Gray 오퍼레이터의 사용법을 보여주는 간단한 예제입니다.
-
예제 - imaFlex 플랫폼의 보조 프로세서 기능이 표시됩니다. 예제로 Median Filter가 계산됩니다.
-
'Co-Processor Large Filter Calculation'
예시 - imaFlex 플랫폼의 보조 프로세서 기능을 보여줍니다. 예시로 대형 필터 커널이 계산됩니다.
-
예제 - 하드웨어에서 내부 데이터 흐름 제어를 디버깅하고 보정하기 위한 목적입니다.
-
예시 - High Speed의 견고한 레이저 라인 감지 알고리즘입니다. 이 알고리즘은 서브픽셀 해상도 결과를 얻기 위해 무게 중심 좌표를 결정합니다.

![[참고]](../common/images/admon/note.png)
이전

