Operator CxpCameraMultiTap

Operator Library: Hardware Platform

이 연산자는 CXP 듀얼 탭 카메라와 VisualApplets 간의 이미지 데이터 인터페이스를 나타냅니다. 이 연산자는 단일 채널, 듀얼 채널 또는 쿼드 채널 CXP 인터페이스에 사용할 수 있습니다. ConnectionCount 매개변수를 사용하여 인터페이스 유형을 선택합니다. 이 연산자는 카메라가 어떤 형식으로 데이터를 전송하든 상관없이 각 탭 포트에 대한 원시 이미지 데이터를 출력합니다. 그런 다음 이 이미지 데이터를 카메라에서 전송하는 형식으로 변환해야 합니다. 이미지 데이터를 변환하려면 원시 바이트 값을 집계하고 픽셀 값으로 형변환하는 데 적합한 연산자를 사용하십시오. 작동 중 발생하는 특정 상황은 아래에 설명된 대로 이벤트 시스템을 통해 전달될 수 있습니다. 또한, 이 연산자에는 카메라와의 연결 상태를 알려주는 다양한 매개변수가 있습니다.

하드웨어 플랫폼별 지원 여부
imaFlex CXP-12 Penta
imaFlex CXP-12 Quad

CXP 표준 멀티탭 정의

일반적으로 이미지 픽셀은 왼쪽 위부터 오른쪽 아래로 순차적으로 스캔됩니다. 그러나 최신 이미지 센서의 픽셀 수가 꾸준히 증가함에 따라, 이러한 방식으로는 만족스러운 프레임 속도를 확보할 수 없게 되었습니다. 이 문제를 해결하기 위해 센서 제조사들은 여러 픽셀을 동시에 스캔하는 방식을 채택하고 있습니다. CXP 표준은 ‘탭(taps)’이라는 개념을 도입하여 탭(tap)라는 개념을 도입하여 이 기술을 수용합니다. 탭은 이미지 픽셀을 순차적으로 읽어들이는 스캔 장치로 볼 수 있습니다. 이미지가 스캔되는 방식은 '탭 기하 구조( Tap Geometry)'로 정의되며, 호스트는 이를 장치에서 읽어옵니다.

[참고] 탭 기능은 수직 스캔에만 적용됩니다.

탭은 수직 스캔에만 적용됩니다. 수평 스캔은 왼쪽에서 오른쪽으로 고정되어 있습니다.

CXP 표준에서는 프레임 그래버 호스트가 1X-1Y, 1X-1Y2 및 1X-2YE의 세 가지 탭 형식을 지원하도록 권장하고 있습니다. 탭 형식 1X-1Y는 이미지를 왼쪽 상단에서 오른쪽 하단으로 픽셀 단위로 스캔하는 기본 특성을 나타내는 반면, 다른 형식들은 다음 그림에 묘사된 두 가지 탭 기하학적 구조를 나타냅니다:

각 탭에서 수집된 데이터는 별도의 스트림으로 구성되지만, 스트림 ID와 탭 간에는 고정된 대응 관계가 없다는 점을 유의해야 합니다. 다만, 데이터 수집 기간 동안 이 대응 관계가 변하지 않는다고 가정해도 무방합니다. 이 TapG 코드, 그리고 이에 따라 이 매핑을 찾는 데 필요한 정보는 CXP 이미지 헤더에 포함되어 있으며, 이 헤더는 선택 사항인 MetaDataTap0/1 포트.

'서식'을 탭하세요 TapG 코드
1X-1Y 0x0000
1X-1Y2, 탭 1 0x0004
1X-1Y2, 탭 2 0x1004
1X-2YE, 탭 1 0x0041
1X-2YE, 탭 2 0x1041
[참고] 이미지의 하반부를 뒤집는 작업은 이 연산자의 역할이 아닙니다

1X-2YE 탭 형식의 경우, 이미지의 하반부를 뒤집는 작업은 이 CxpCameraMultiTap 연산자의 책임이 아닙니다. 사용자 애플리케이션은 추가적인 VisualApplets 연산자를 사용하여 tap(1)의 형식을 다시 지정해야 합니다.

VisualApplets에서의 인스턴스화

이 연산자는 출력 탭을 통해 이미지 데이터를 제공합니다. 이 출력은 항상 존재합니다. 단일 탭의 경우 1이며, 듀얼 탭 카메라의 경우 2로 설정해야 합니다. 이러한 표준 출력 포트 외에도, 각 탭 출력에 대해 CXP 헤더 메타데이터를 위한 선택적 메타데이터 출력을 , 즉 듀얼 탭 애플리케이션의 경우 최대 2개의 MetaDataTap 포트를 정의할 수 있습니다. 다음 팝업 대화 상자는 오퍼레이터 인스턴스화 중에 나타나며, 다음과 같은 조합으로 구성할 수 있습니다:

이 구성은 O 출력만 있고 메타데이터가 없는, 더 단순한 CxpCamera 연산자와 동일합니다.

그림 419. 이 구성은 출력 O개만 있고 메타데이터가 없는, 더 단순한 CxpCamera 연산자와 동일합니다.


이 구성은 포트 O와 MetaDataO가 선택된, 더 간단한 CxpCamera 연산자와 동일합니다.

그림 420. 이 구성은 포트 O와 MetaDataO가 선택된 , 더 단순한 CxpCamera 연산자와 동일합니다.


이 구성에서는 탭 0에 대한 데이터와 메타데이터만 출력됩니다. 탭 1의 경우 메타데이터만 출력됩니다. 이 구성은 카메라와 프레임 그래버의 조합을 디버깅하는 데 유용할 수 있습니다.

그림 421. 이 구성에서는 탭 0에 대한 데이터와 메타데이터만 출력됩니다. 탭 1의 경우 메타데이터만 출력됩니다. 이 구성은 카메라와 프레임 그래버의 조합을 디버깅하는 데 유용할 수 있습니다.


이 구성에서 운영자는 두 카메라 탭을 Tap0 및 Tap1 포트를 통해 2개의 별도 데이터 스트림으로 제공합니다. 단, 메타데이터 정보는 출력되지 않습니다.

그림 422. 이 구성에서 운영자는 두 카메라 탭을 Tap0 및 Tap1 포트를 통해 2개의 별도 데이터 스트림으로 제공합니다. 그러나 메타데이터 정보는 출력되지 않습니다.


이 구성에서 운영자는 두 카메라 탭을 Tap0 및 Tap1 포트를 통해 각각 별도의 스트림으로 제공합니다. 또한 운영자는 Tap0 포트에 대한 메타 정보도 제공합니다. 이 구성은 TapG 코드 필드를 제외하고는 두 탭의 CXP 헤더가 대부분 동일한 대칭형 카메라 탭 구성의 경우 유용할 수 있습니다.

그림 423. 이 구성에서 운영자는 두 카메라 탭을 Tap0 및 Tap1 포트를 통해 2개의 별도 스트림으로 제공합니다. 운영자는 또한 Tap0 포트에 대한 메타 정보를 제공합니다. 이 구성은 대칭형 카메라 탭 구성에 유용할 수 있는데, 이러한 구성에서는 TapG 코드 필드를 제외하고 두 탭의 CXP 헤더가 대부분 동일합니다.


이것은 연산자의 최대 구성으로, 각 탭마다 고유한 출력과 해당 메타데이터가 함께 표시됩니다.

그림 424. 이는 연산자의 최대 구성으로, 각 탭마다 고유한 출력이 해당 메타데이터와 함께 표시된다.


선택 사항인 MetaDataTap 포트

두 메타데이터 포트의 형식은 동일합니다. 이는 VisualApplets 에서 32비트 출력 형태로 제공되며, 다음 그림에 나와 있습니다:

각 CXP 프레임은 이에 상응하는 오류가 없는 이미지 헤더를 제공합니다. 이미지 헤더에 오류가 있는 경우, 이미지 스트림 데이터는 VisualApplets 파이프라인으로 전달되지 않습니다. 압축된 이미지 헤더는 6개의 워드로 구성됩니다. 마지막 바이트는 내부 용도로만 사용되는 추가 정보를 저장하는 데 사용됩니다. 특히, HeaderError 비트는 이미지 헤더 자체에 오류가 있는지 여부를 알려줍니다.

이미지 헤더 설명
StreamId CXP 스트림의 ID
태그 16비트 소스 이미지 인덱스. 전송되는 각 이미지마다 이 값이 증가하며, 0xFFFF에 도달하면 0으로 되돌아갑니다. 동일한 이미지와 관련된 데이터를 포함하는 각 스트림(다중 탭 스트림의 경우)에서는 동일한 번호를 사용해야 합니다.
XSize 이미지의 너비를 픽셀 단위로 나타내는 24비트 값입니다.
XOff 전체 기기 이미지의 가장 왼쪽 픽셀을 기준으로 한 이미지의 수평 오프셋을 픽셀 단위로 나타내는 24비트 값입니다.
YSize 이미지 높이를 픽셀 단위로 나타내는 24비트 값입니다. 이 값은 라인 스캔 이미지의 경우 0으로 설정됩니다. CameraScanMode 매개변수는 항상 이 값에서 읽은 카메라 유형을 표시합니다. 만약 Tap0/Tap1 Img Protocol이 VALT_LINE1D로 설정된 경우, YSize는 처리 과정에서 무시되며 오퍼레이터는 수신되는 모든 데이터를 끝없는 라인 스트림으로 출력합니다. 이미지 프로토콜이 VALT_IMAGE2D로 설정된 경우에도 YSize=0이면 끝없는 라인 스트림이 생성됩니다.
YOff 전체 장치 이미지의 최상단 라인을 기준으로 한 이미지의 수직 오프셋을 픽셀 단위로 나타내는 24비트 값입니다. 라인 스캔 이미지의 경우 이 값은 0으로 설정됩니다.
DSizeL 이미지의 한 줄당 데이터 워드 수를 나타내는 24비트 값 .
PixelF 픽셀 형식을 나타내는 16비트 값입니다.
TapG 탭의 기하학적 구조를 나타내는 16비트 값입니다.
Flags 이미지 플래그입니다.
x-Mirror (아직 사용되지 않음). 수신되는 이미지가 x-mirrored인지 아니면 아닌지를 설명합니다.
y-Mirror (아직 사용되지 않음). 입력 이미지가 y축 대칭인지 아니면 아닌지를 나타냅니다.
헤더 오류

1: 이미지 헤더에 오류가 있어 프레임이 손실된 것으로 판정되었습니다. 연산자 출력 데이터 스트림에 해당 이미지 데이터가 존재하지 않습니다.

0: 이미지 헤더가 올바르며, 연산자 출력 데이터 스트림 내에 해당 이미지 데이터가 존재합니다. .

[중요] 이미지 프로토콜: 면 스캔 및 라인 스캔 카메라

카메라 조작자 출력에 대한 이미지 프로토콜에는 두 가지 서로 다른 영향 요인이 있습니다:

  • CXP 헤더의 YSize 값. 0 = 라인 스캔; >0 = 영역 스캔.

  • 운영자 측 출력에 구성된 프로토콜 Tap0/Tap1 Img 프로토콜: VALT_LINE1D = 라인 스캔; VALT_IMAGE2D = 영역 스캔.

CameraScanMode 매개변수는 항상 CXP 헤더에서 읽은 카메라 유형을 표시합니다. Tap0/Tap1 Img Protocol이 VALT_LINE1D로 설정된 경우, 처리 시 YSize는 무시되며 운영자는 수신되는 모든 데이터를 끝없는 라인 스트림으로 출력합니다. 이미지 프로토콜이 VALT_IMAGE2D로 설정된 경우, YSize=0 일 때도 끝없는 라인 스트림이 생성되며, 이로 인해 이미지가 Tap0/Tap1의 최대 이미지 높이(Max Img Height)를 초과하게 됩니다. 크기가 너무 큰 이미지는 설계에서 CxpCamera 연산자 뒤에 오는 연산자에서 정의되지 않은 동작을 유발할 수 있습니다. 이를 방지하려면, 예를 들어 SplitImage 연산자를 사용하여 들어오는 라인 스트림을 여러 이미지로 분할하는 것이 좋습니다.

[중요] 이미지 너비 및 이미지 높이 수정

출력 링크의 최대 이미지 너비 및 높이 속성을 통해 카메라별 설정에 맞게 너비와 높이를 조정할 수 있습니다. 그러나 운영자 포트 Tap0/Tap1의 최대 이미지 너비는 는 해당 포트의 병렬 처리 수 으로 나누어 떨어져야 합니다. 따라서 최대 이미지 너비가 Tap0 및 Tap1 포트의 병렬 처리 수로 나누어 떨어지는지 반드시 확인하십시오!

Device Resource Usage

이 연산자는 ConnectionCount 매개변수의 선택에 따라 CameraPort 유형의 리소스를 하나 이상 사용합니다. 이벤트 시스템의 경우 EventPort 유형의 리소스가 사용됩니다. ConnectionCount가 X4 (4채널)로 설정된 경우, 다음과 같은 리소스 대화 상자가 열립니다:

Error Handling and Event System

운영자가 수신된 재구성된 프레임의 크기가 CXP 이미지 헤더에서 카메라가 지정한 크기보다 크거나 작음을 감지하면, 안전 회로가 작동합니다. 그러면 운영자는 초과된 픽셀과 라인을 잘라내어, 후속 처리 파이프라인이 항상 이미지 헤더에 정의된 프레임 크기를 인식하도록 합니다. 수신된 프레임의 크기가 이미지 헤더에 지정된 크기보다 작은 경우, 운영자는 수신된 프레임을 정의되지 않은 데이터로 채워 이미지 헤더에 정의된 지정된 프레임 크기를 달성합니다. 작은 프레임을 채우는 과정에서 후속 프레임이 손실될 수 있습니다. 이러한 손실은 이벤트 단위로 런타임 소프트웨어(프레임그래버 SDK)에 보고됩니다(다음 단락 참조). 크기 불일치 역시 이벤트를 발생시킵니다.

For a set of very critical errors, the operator will forward asynchronous events to the host runtime software (Framegrabber SDK). The event name in the Framegrabber API is <hierarchical operator name>\CxpStreamStatus, e.g. Device1\Process0\Camera\CxpStreamStatus. The event payload is provided as four 16-bit data words. The event format is defined as follows:

  • word [0]:

    • bits [0:15]: 이벤트가 발생한 CXP 이미지 태그.

  • word [1]:

    • bits [8:15]: 이벤트가 발생한 스트림 ID.

    • 비트 [0:7]: 예약되어 있으므로 무시하십시오.

  • word [2]:

    • 비트 [0]: CRC 오류가 발생했습니다.

    • 비트 [1]: 이미지 헤더에서 스트림 마커 오류가 감지되었습니다.

    • bit [2]: 이미지 헤더에서 오류가 감지되었으나 이를 수정할 수 없었습니다.

    • 비트 [3]: 프레임 크기 오류가 감지되었습니다. 즉, CXP 이미지 헤더에 정의된 이미지 크기가 전송된 패킷에서 재구성된 프레임 크기와 일치하지 않습니다. 전송된 패킷에서 재구성된 프레임 크기와 일치하지 않습니다. 이는 카메라가 이미지 헤더에 특정 정보를 기재했으나 헤더에 명시된 양과 다른 양의 데이터를 전송할 때 발생합니다.

    • 비트 [4:15]: 예약되어 있으므로 무시하십시오.

  • word [3]:

    • bit [0]: 이벤트 유형, 0 = 손상된 엔티티, 1 = 분실된 엔티티.

      • 손상된 엔티티 이는 오류가 프레임 내에서 발생하며, 해당 프레임이 이미 VisualApplets 파이프라인으로 불러와졌음을 의미합니다.

      • 분실된 엔티티 이는 오류가 프레임이 다음 작업자에게 전달되기 전에 발생했으며, 해당 프레임이 카메라 담당자에 의해 폐기되었음을 의미합니다.

      • 손상된 엔티티가 감지되면, 작업자는 CXP 이미지 헤더 정의에 따라 프레임을 채워, 후속 작업자들이 정의되지 않은 동작을 일으키지 않도록 합니다. 이 채우기 과정에서 새로운 프레임이 도착할 수 있으며, 이 경우 해당 프레임은 손실됩니다. 또한 카메라가 프레임 태그에 따라 간격이 있는 데이터를 전송할 때에도 엔티티 손실 이벤트가 발생합니다.

    • bit [1]: 유형 손상된 엔티티 에 대한 이벤트 손실이 발생했습니다. 이는 앞서 발생한 유형의 '손상된 엔티티' 이 손실되었음을 의미합니다. 이는 런타임 소프트웨어가 이벤트에 반응하지 않아 내부 이벤트 큐가 가득 찼을 때 발생합니다.

    • 비트 [2]: 유형 손실됨 엔티티 에 대한 이벤트 손실이 발생했습니다. 이는 앞서 발생한 유형의 Lost Entity 이 사라졌다는 뜻입니다. 이는 런타임 소프트웨어가 이벤트에 반응하지 않아 내부 이벤트 큐가 가득 찼을 때 발생합니다.

    • bits [3:15]: 손실된 분실된 엔티티 이벤트 수.

이벤트에는 두 가지 유형이 있습니다: 손상된 엔티티에 대한 이벤트와 손실된 엔티티에 대한 이벤트입니다. 3번째 워드의 0번 비트는 어떤 종류의 이벤트가 발생했는지를 나타냅니다. 이벤트 버퍼가 가득 차면 이벤트가 손실될 수 있습니다. 손상된 엔티티를 나타내는 이벤트가 손실되면, 3번째 워드의 1번 비트가 설정됩니다. 손실된 엔티티를 나타내는 이벤트가 손실되면, 3번 워드의 2번 비트가 설정되고, 3번에서 15번 비트 는 손실된 프레임을 나타내는 손실된 이벤트 수를 제공합니다. 2번 비트가 설정되어 있지만 카운터가 0인 경우, 카운터 오버플로가 발생한 것을 의미합니다.

모든 이벤트는 소프트웨어 인터럽트를 발생시킵니다. 이벤트 수를 줄이기 위해, 동일한 프레임 태그를 가진 여러 이벤트가 합쳐질 수 있습니다. 이 경우 일부 오류 플래그가 통합됩니다. 이벤트가 누락된 경우, 누락된 이벤트 바로 앞의 이벤트에는 누락된 이벤트에 대한 정보가 포함되어 있으므로, 동일한 프레임 태그를 가진 이후의 이벤트와 더 이상 합쳐질 수 없습니다.

CRC 오류로 인해 발생하는 이벤트는 프레임 태그를 보고하지만, 이 태그는 CRC 오류가 발생한 프레임과 정확히 일치하지 않을 수 있습니다. 프레임 태그는 바로 앞이나 뒤의 프레임에 속할 수 있습니다. 이러한 현상은 카메라가 2개 이상의 프레임 간 전환이 포함된 CXP 패킷을 전송할 때만 발생합니다. CRC 계산은 패킷 끝에서 완료되지만, 스트림 데이터는 실시간으로 재구성됩니다. 즉, 운영자가 이전 프레임을 이미 전송한 후에야 CRC 오류가 탐지되는 상황이 발생할 수 있습니다. 일반적인 카메라 패킷에 현재 진행 중인 프레임의 끝과 다음 프레임의 시작 부분 데이터가 모두 포함되지 않은 정상적인 상황에서는, CRC 오류 발생 시의 프레임 태그가 항상 정확합니다. 그 외의 모든 경우에서, 전체 프레임 스트림 데이터의 크기가 최대 패킷 크기인 8k보다 작다면, 1개의 패킷 내에서 단 1프레임만 겹칠 수 있습니다. 이 경우, 소프트웨어 애플리케이션은 프레임 태그가 -1인 이전 프레임과 프레임 태그가 +1인 다음 프레임도 잠재적으로 손상되었을 가능성이 있는 것으로 간주해야 합니다.

[참고] 탭 간 오류 이벤트 구별

오류 처리 및 이벤트 시스템은 두 CXP 탭 스트림 모두에서 공통적으로 사용됩니다. 수신된 이벤트를 적절한 탭과 연결하려면 stream-ID 필드를 사용하십시오. 일반적으로 탭 0은 더 작은 stream-ID(보통 0)를 할당받습니다. 탭 1은 탭 0의 stream-ID보다 더 큰 stream-ID를 할당받습니다.

I/O Properties

Property Value
Operator Type M
Output Links Tap0/Tap1, 이미지 데이터 출력
MetaDataTap0/MetaDataTap1, 선택적 메타데이터 출력

지원되는 Link Format

Link Parameter 출력 링크 Tap0/Tap1 출력 링크 MetaDataTap0/MetaDataTap1
Bit Width 8 32
Arithmetic unsigned unsigned
Parallelism auto 1
Kernel Columns 1 1
Kernel Rows 1 1
Img Protocol {VALT_IMAGE2D, VALT_LINE1D} (default: VALT_IMAGE2D)1 {VALT_IMAGE2D, VALT_LINE1D, VALT_PIXEL0D} (default: VALT_IMAGE2D)
Color Format VAF_GRAY VAF_GRAY
Color Flavor FL_NONE FL_NONE
Max. Img Width 임의의 값 (기본값: 1032) 6
Max. Img Height 임의의 값 (기본값: 1032) 1

1

Tap0/Tap1 Img Protocol이 VALT_LINE1D로 설정된 경우, CXP 헤더의 YSize 값은 처리 과정에서 무시되며, 연산자는 수신되는 모든 데이터를 끝없는 라인 스트림으로 출력합니다. 이미지 프로토콜이 VALT_IMAGE2D로 설정된 경우, YSize=0(라인 스캔 카메라)일 때도 끝없는 라인 스트림이 생성되어, 결과적으로 이미지가 Tap0/Tap1의 최대 이미지 높이(Max Img Height)를 초과하게 됩니다.

Parameters

ConnectionCount
Type Static Write 파라미터
Default X1
Range {X1, X2, X4}

매개변수 ConnectionCount는 CXP 링크로 집계되는 CXP 레인의 수를 정의합니다. 사용되는 연결 포트의 인덱스는 CameraPort 유형의 리소스에 의해 처리됩니다. 포트 리소스의 수는 연결 수와 일치합니다(예: X2: 두 개의 CameraPort 리소스 항목).

하나 이상의 CxpCamera 연산자를 인스턴스화할 때(예: 듀얼 카메라 애플릿의 경우), 동일한 인덱스를 가진 여러 리소스가 사용되거나 소비되는 CameraPort 리소스 소비량이 최대 4개를 초과할 때 리소스 충돌이 발생할 수 있습니다. 이 경우 설계 규칙 검사에서 오류가 보고됩니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, ConnectionCount 매개변수는 두 탭 스트림 전반에 걸쳐 사용 중인 연결 포트의 수를 집계합니다.

상태 초기화
Type Dynamic Write 파라미터
Default Off
Range {꺼짐, 켜짐}

ResetStatus 매개변수는 카메라 통계, 즉 오류 카운터를 초기화합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, ResetStatus 매개변수는 두 탭 스트림 전반에 걸쳐 카메라 통계를 초기화합니다.

UsedConnections
Type 동적 읽기 파라미터
Default
Range {1,2,4}

매개변수 UsedConnections는 실행 시점에 디스커버리 소프트웨어에 의해 구성된 CXP 레인의 수를 나타냅니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, UsedConnections 매개변수는 두 탭 스트림 전반에 걸쳐 구성된 포트를 나타냅니다.

PacketTagErrorCount
Type 동적 읽기 파라미터
Default
Range [0 : 8191]

매개변수 PacketTagErrorCount는 수신된 패킷 중 CXP 표준에 따라 예상되는 태그와 일치하지 않는 태그를 가진 패킷의 수를 나타냅니다. 특히, 이 값은 후속 스트림 패킷 태그 열거에서 간격이 관찰될 때 증가합니다. 이 매개변수는 13비트 폭이며, 비트 [11:0]은 실제 카운터 값을 나타내고, 비트 [12]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무시되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, PacketTagErrorCount 매개변수는 두 탭 스트림 전반에 걸쳐 예상치 못한 태그를 가진 패킷의 수를 집계합니다.

ImageTag 오류 개수
Type 동적 읽기 파라미터
Default
Range [0 : 8191]

이 매개변수는 이미지 헤더 태그, CXP 표준에 따른 예상 태그, 그리고 수신된 태그 사이에서 발생하는 불일치 횟수를 계산합니다. 이 매개변수는 13비트 폭이며, 여기서 비트 [11:0]은 실제 카운터 값을 나타내고, 비트 [12]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무시되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, ImageTagErrorCount 매개변수는 두 탭 스트림 전반에 걸쳐 발생한 태그 불일치 건수를 집계합니다.

StreamId 오류 횟수
Type 동적 읽기 파라미터
Default
Range [0 : 8191]

이 매개변수는 스트림 패킷에서 수신된 스트림 ID 값이 이미지 헤더에 지정된 스트림 ID 값과 일치하지 않는 빈도를 계산합니다. 이 매개변수의 비트 폭은 13비트이며, 여기서 비트 [11:0]은 실제 카운터 값을 나타내고, 비트 [12]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무시되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, StreamIdErrorCount 매개변수는 두 탭 스트림 전반에 걸친 스트림 ID의 개수를 집계합니다.

수정된 오류 수
Type 동적 읽기 파라미터
Default
Range [0 : 8191]

이 매개변수는 이미지 헤더나 라인 마커에서 감지된 오류 중 수정된 개수를 계산합니다. 이 매개변수는 13비트 폭이며, 비트 [11:0]은 실제 카운터 값을 나타내고, 비트 [12]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무시되어야 합니다.

수정되지 않은 오류 수
Type 동적 읽기 파라미터
Default
Range [0 : 8191]

이 매개변수는 이미지 헤더나 라인 마커에서 감지된 오류 중, 동일한 바이트 내의 다중 비트 오류로 인해 수정할 수 없었던 오류의 수를 집계합니다. 이 매개변수는 13비트 폭이며, 비트 [11:0]은 실제 카운터 값을 나타내고, 비트 [12]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무시 처리되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용되며, 즉 오류 모니터링 매개변수는 두 탭 스트림 전반에 걸친 해당 오류 유형들의 합계를 나타냅니다.

패킷 버퍼 오버플로 횟수
Type 동적 읽기 파라미터
Default
Range [0 : 8191]

이 매개변수는 집계 모드에서 채널 본딩 시 패킷 버퍼 오버플로가 발생하는 빈도를 집계합니다. 이 매개변수는 ConnectionCount = X2 또는 X4인 경우에만 적용됩니다. 이 매개변수는 13비트 폭이며, 비트 [11:0]은 실제 카운터 값을 나타내고, 비트 [12]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무시(don't care)로 처리되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, PacketBufferOverflowCount 매개변수는 두 탭 스트림 전반에 걸쳐 발생한 패킷 버퍼 오버플로우 횟수를 집계합니다.

패킷 버퍼 오버플로 원본
Type 동적 읽기 파라미터
Default
Range [0x0 : 0xf]

이 매개변수는 4개의 잠재적 CXP 채널 중 어느 채널에서 패킷 버퍼 오버플로가 발생했는지 조회하기 위한 비트 마스크를 구현합니다. 이 매개변수의 너비는 ConnectionCount 매개변수에 따라 달라집니다. X1 모드에서는 이 매개변수의 폭이 1비트이며, X2 모드에서는 이 매개변수의 폭이 2비트이며, X4모드에서는 매개변수 폭이 4비트입니다. 순서는 다음과 같습니다: LSB = 모드에서는 매개변수 폭이 4비트입니다. 순서는 다음과 같습니다: LSB = 가장 낮은 CXP 채널 번호, MSB = 운영자가 할당한 가장 높은 CXP 채널 번호.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, PacketBufferOverflowSource 매개변수는 두 탭 스트림 전반에서 오버플로우를 검색합니다.

카메라 스캔 모드
Type 동적 읽기 파라미터
Default
Range {영역,선}

수신된 이미지 헤더에는 스트림이 영역 스캔 (YSize > 0)용인지, 아니면 라인 스캔 (YSize = 0)용인지에 대한 정보가 포함되어 있습니다. 이 매개변수는 마지막으로 유효하게 수신된 스트림 이미지 헤더 정보를 나타냅니다.

이 매개변수는 Tap1 스트림이 정확히 동일한 모드라고 가정하고 Tap0 스트림에 대해서만 읽어옵니다. 이는 이 매개변수가 전체 카메라의 영역 스캔 또는 라인 스캔 중 하나에 적용되며, 따라서 두 탭 모두에서 동일하고 탭별로 다르지 않음을 의미합니다.

오류 개수
Type 동적 읽기 파라미터
Default
Range [0 : 8191]

이 매개변수는 CXP 스트림 마커와 헤더 또는 라인 마커의 순서가 잘못된 횟수를 집계합니다. 이 매개변수는 13비트 폭이며, 비트 [11:0]은 실제 카운터 값을 나타내고, 비트 [12]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무시되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용되며, 즉 오류 모니터링 매개변수는 두 탭 스트림 전반에 걸친 해당 오류 유형들의 합계를 나타냅니다.

예상치 못한 시작 데이터
Type 동적 읽기 파라미터
Default
Range {false, true}

이 매개변수는 연산자 재설정 후 첫 번째 데이터 값이 예상치 못한 경우, 즉, 그 전에 이미지 헤더가 수신되지 않은 오류 상황을 감지합니다. 이러한 상황은 카메라나 프레임 그래버 펌웨어의 구현 오류, 또는 검색 절차에 대한 잘못된 소프트웨어 제어 때문에 발생할 수 있습니다. 또한, 카메라의 하드웨어 결함으로 인해 이론적으로 이러한 상황이 발생할 수도 있습니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용되며, 즉 오류 모니터링 매개변수는 두 탭 스트림 전반에 걸친 해당 오류 유형들의 합계를 나타냅니다.

FrameLostCount
Type 동적 읽기 파라미터
Default
Range [0 : 33554431]

이 매개변수는 획득 과정에서 손실되어 VisualApplets 파이프라인으로 전송되지 않은 프레임의 수를 집계합니다. 프레임은 이미지 헤더에서 오류가 감지되거나, 한 프레임이 다른 프레임과 겹칠 때 손실됩니다. 이 매개변수는 25비트 폭이며, 비트 [23:0]은 는 실제 카운터 값을 나타내고, 비트 [24]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정된 경우, 카운터 값은 무관한 값으로 간주되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, FrameLostCount 매개변수는 두 탭 스트림 전체에서 손실된 프레임 수를 집계합니다.

FrameCorruptedCount
Type 동적 읽기 파라미터
Default
Range [0 : 33554431]

이 매개변수는 수집 과정에서 발생한 손상된 프레임을 집계합니다. 손상된 프레임이란 오류 픽셀이 포함된 프레임으로, VisualApplets 파이프라인으로 전송됩니다. 이 매개변수는 25비트 폭이며, 비트 [23:0]은 실제 카운터 값을 나타내고, 비트 [24]는 카운터 오버플로를 나타냅니다. 오버플로 비트가 설정되면, 카운터 값은 무시 처리되어야 합니다.

[참고] 모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다.

모든 매개변수는 두 탭 모두에 공통적으로 적용됩니다. 즉, FrameCorruptedCount 매개변수는 두 탭 스트림 전체에서 손상된 프레임의 수를 집계합니다.

사용 예

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