연산자 DmaToPC

오퍼레이터 라이브러리: 하드웨어 플랫폼

DmaToPC 연산자 는 ‘ VisualApplets ’ 애플릿과 호스트 PC 간의 이미지 인터페이스입니다. DmaToPC 연산자는 애플릿에서 호스트 PC로 이미지를 전송합니다. 이미지 전송은 직접 메모리 액세스(DMA)를 사용하여 수행되며, 즉 이미지 데이터가 호스트 PC 메모리에 직접 기록됩니다.

다양한 색상 형식, 비트 폭 및 병렬 처리가 지원됩니다. 허용되는 조합은 사용 중인 하드웨어 플랫폼에 따라 달라집니다:

  • imaFlex 2 Dual 100:

    • 비트 폭과 병렬 처리 수의 곱은 8의 정수배여야 하며, 512 이하여야 합니다.

    • 최대 이미지 너비와 최대 이미지 높이의 곱은 4바이트로 나누어 떨어져야 합니다.

  • imaFlex CXP-12 Quad 및 imaFlex CXP-12 Penta:

    • 비트 폭과 병렬 처리 수를 곱한 값은 8의 정수 배수여야 하며, 256 이하여야 합니다.

    • 최대 이미지 너비와 최대 이미지 높이의 곱은 4바이트로 나누어 떨어져야 합니다.

  • microEnable 5 marathon VCLx, microEnable 5 marathon VCL, microEnable 5 marathon VCX-QP , microEnable 5 marathon VF2, 및 LightBridge VCL:

    운영자 입력의 링크 속성은 애플릿에서 지원하는 PCIe 모드에 따라 달라집니다. 지원되는 PCIe 모드는 운영자 AppletProperties의 PcieInterfaceType 매개변수에서 선택할 수 있습니다.

    다양한 색상 형식, 비트 폭 및 병렬 처리가 지원됩니다. Parallelism 와 Bit Width 의 곱의 최대값은 8의 배수여야 하며, 이는 연산자 AppletProperties에서 선택한 PCIe 모드에 따라 달라집니다:

    • Generation_1: Parallelism x Bit Width <= 64 Bit.
    • Generation_2: Parallelism x Bit Width <= 128 bit

    이미지의 최대 너비와 최대 높이의 곱은 4바이트로 나누어 떨어져야 합니다.

  • microEnable 5 ironman VD8-PoCL , microEnable 5 ironman VQ8-CXP6D (DIN 커넥터) 및 microEnable 5 ironman VQ8-CXP6B (BNC 커넥터):

    • 매개변수 PcieInterfaceType 가 연산자 AppletProperties 의 매개변수PcieInterfaceType이 Generation_1로 설정된 경우, 비트 폭과 병렬 처리 수의 곱은 8의 배수여야 하며 128 이하여야 합니다.

    • 매개변수 PcieInterfaceType 가 AppletProperties 의 매개변수PcieInterfaceType이 Generation_2로 설정된 경우, 비트 폭과 병렬 처리 수의 곱은 8의 배수이어야 하며 256 이하여야 합니다.

[참고] RGB가 BGR로 변환됩니다.

이 연산자는 RGB 데이터를 BGR 데이터로 변환합니다(즉, DMA 전송 전에 R과 B 성분이 서로 바뀌게 됩니다). DMA 전송이 완료되면, 원래의 RGB 이미지는 PC의 RAM에서 BGR 이미지로 사용할 수 있게 됩니다. 대부분의 소프트웨어 도구가 BGR 형식을 직접 지원하기 때문에, 이 변환은 소프트웨어 도구를 이용한 후속 처리를 용이하게 하기 위해 수행됩니다.

지원되는 하드웨어 플랫폼
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

리소스

이 연산자는 하나의 VisualApplets 리소스를 사용합니다.

imaFlex 2 Dual 100:

imaFlex 2 Dual 100 플랫폼의 경우, 연산자는 DmaToHostPort 유형의 VisualApplets 리소스 하나를 사용합니다. 이 플랫폼에서는 최대 5개의 DmaToPC 연산자를 사용할 수 있습니다. 리소스 인덱스는 엄격하게 단조 증가해야 합니다(예: 0 → 1 → 2 → 3 → 4). 첫 번째 오퍼레이터는 항상 인덱스 0을 가져야 하며, 그 이후의 각 오퍼레이터는 다음 인덱스(+1)을 가져야 합니다. 리소스 인덱스에는 간격이 없어야 하며, 인덱스는 항상 0부터 시작해야 합니다. 리소스 대화 상자에서 오퍼레이터의 리소스 인덱스를 설정하십시오. 자세한 내용은 '장치 리소스 할당'을 참조하십시오.

imaFlex CXP-12 Quad 및 imaFlex CXP-12 Penta:

imaFlex CXP-12 Quad 및 imaFlex CXP-12 Penta 플랫폼의 경우, 운영자는 DMA 유형의 VisualApplets 리소스 하나를 사용합니다. 리소스 대화 상자에서 해당 연산자에 대한 리소스 인덱스를 설정하십시오. 자세한 내용은 ‘장치 리소스 할당’을 참조하십시오.

I/O Properties

Property Value
Operator Type M
입력 링크 I, 이미지 데이터 입력

지원되는 Link Format

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

Parameters

현재 전송 길이
Type dynamic read parameter
Default
Range [0; 2^34-1]

이 매개변수는 현재 처리 중인 프레임 중에서 이미 전송된 바이트 수를 나타냅니다. 이 정보를 통해 전체 프레임이 전송되기 전에 소프트웨어 애플리케이션에서 DMA 버퍼 데이터를 분석할 수 있습니다.

[참고] 재고 현황

mE5 marathon VCLx, mE5 marathon VCL, mE5 marathon VCX-QP , mE5 marathon VF2, LightBridge VCL, mE5 ironman VQ8-CXP6D , 그리고 mE5 ironman VQ8-CXP6B

사용 예

다음 예제에서는 DmaToPC 연산자의 사용법을 보여줍니다: