성능 및 동기화를 최대화하려면, 모든 아날로그 입력 채널 또는 출력 채널을 한 개의 태스크로 묶어 여러 디바이스 태스크를 생성하여 모듈 간에 동기화합니다. 이 방법은 태스크 안의 모든 채널에 필요한 타이밍이 같을 때만 가능합니다.

이 토픽의 나머지 부분에서는 다음 컨트롤러에서 다른 속도로 동시에 실행할 수 있는 태스크의 개수에 대해 다룹니다.

  • Gen II CompactDAQ 섀시:
    • cDAQ-9132, 9133, 9134, 9135, 9136 및 9137
    • cDAQ-9171, 9174, 9178, 9179
    • cDAQ-9181, 9184, 9185, 9188, 9188XT 및 9189
    • cDAQ-9191
  • cRIO-9040, 9041, 9042, 9043, 9045, 9046, 9047, 9048, 9049, 9053, 9054, 9055, 9056, 9057 및 9058
  • sbRIO-9603, 9608, 9609, 9628, 9629 및 9638
  • TS-15000 및 TS-15010

하드웨어 타이밍 태스크는 일반적으로 소프트웨어 타이밍 태스크보다 더 많은 내부 리소스를 사용하기 때문에, 동시에 실행할 수 있는 태스크의 개수는 실행 중인 태스크가 하드웨어 타이밍을 사용하는지 또는 소프트웨어(요청 시) 타이밍을 사용하는지에 따라 다릅니다.

하드웨어 타이밍에 의한 태스크

하드웨어 타이밍에 의한 태스크는 샘플 클럭, 참조 클럭, 트리거 등에 사용할 타이밍 정보를 시스템 타이밍 컨트롤러에서 얻어야 합니다.

Gen II 섀시의 시스템 타이밍 컨트롤러에는 다음과 같은 내장 타이밍 엔진이 있습니다.

  • AI 타이밍 엔진 3개
  • AO 타이밍 엔진 1개
  • DI 타이밍 엔진 1개
  • DO 타이밍 엔진 1개
  • 범용 카운터 4개

CompactRIO 컨트롤러의 시스템 타이밍 컨트롤러에는 다음과 같은 내장 타이밍 엔진이 있습니다.

  • AI와 DI 사이에 공유되는 입력 타이밍 엔진 8개
  • AO와 DO 사이에 공유되는 출력 타이밍 엔진 8개
  • 범용 카운터 4개

다음 테이블은 사용 가능한 하드웨어 타이밍에 의한 태스크 개수를 보여줍니다.

하드웨어 타이밍에 의한 태스크 CompactDAQ 및 TestScale: 섀시당 태스크 개수 CompactRIO/단일 보드 RIO: 컨트롤러당 태스크 개수 CompactDAQ, CompactRIO, 단일 보드 RIO, TestScale: 모듈당 태스크 개수
아날로그 입력 3[1]1 Gen II NI CompactDAQ 섀시에서 Dynamic Signal Analyzer (DSA) 디바이스의 아날로그 입력 태스크 개수는 두 개로 제한됩니다. DSA와 같은 여러 다른 오버샘플 클럭 타임베이스를 가진 디바이스를 사용할 때 필요한 동기화 펄스 신호를 섀시가 최대 두 개까지만 지원하기 때문입니다. 82 단일 보드 RIO 컨트롤러에서는 슬롯당 또는 온보드 IO 모듈당 한 번에 하나의 태스크를 수행할 수 있습니다. 슬롯 개수와 온보드 IO 모듈의 개수는 sbRIO 디바이스에 따라 다릅니다. 디바이스 스펙을 참조하십시오. [2] 1
아날로그 출력 1 8[2] 1
카운터 입력/ 출력 4, 23 Gen II NI CompactDAQ 섀시에서는 섀시당 NI 9361 태스크가 최대 두 개로 제한됩니다.[3] 4, 8[2]4 CompactRIO 컨트롤러에서는 섀시당 NI 9361 태스크가 최대 여덟 개로 제한됩니다. 단일 보드 RIO 컨트롤러에서는 슬롯당 NI 9361 태스크가 한 개로 제한됩니다. 단일 태스크에 한 개 이상의 NI 9361로부터 카운터 채널을 추가할 수 있습니다. NI 9361과 네 개의 범용 카운터를 사용하면 최대 12개의 태스크를 사용할 수 있습니다. [4] 4, 15 한 개의 NI 9361은 단일 태스크만 지원합니다. 그러므로, NI 9361로부터 여러 카운터를 추가하는 경우, 한 개의 동일한 태스크 내에서만 사용해야 합니다. 다른 병렬 디지털 모듈에서는 섀시로부터의 온보드 카운터 네 개 각각에 별도의 태스크를 생성할 수 있습니다. [5]
디지털 입력 1 8[2] 1
디지털 출력 1 8[2] 1

CompactDAQ Gen II 섀시의 스트리밍 한계

CompactDAQ 및 TestScale 섀시에서 하드웨어 타이밍에 의한 태스크에는 동시에 실행할 수 있는 하드웨어 타이밍에 의한 태스크의 총 개수에 제한을 두는 스트리밍 버퍼가 있습니다. NI cDAQ-9171/9181/9191은 6개의 데이터 스트림을 지원하고, 나머지 모델은 7개의 데이터 스트림을 지원합니다. 이러한 독립적인 고속 데이터 스트림은 아날로그 입력, 아날로그 출력, 버퍼 있는 카운터/타이머, 하드웨어 타이밍 디지털 입력/출력 또는 CAN 통신과 같이 하드웨어 타이밍을 사용한 태스크를 동시에 최대 6에서 7개까지 허용합니다.

노트 CAN 통신은 항상 두 개의 데이터 스트림을 사용하지만, 타이밍 엔진은 사용하지 않습니다.

CompactDAQ 및 TestScale 섀시에서 데이터 스트림은 6개 또는 7개의 FIFO(First In First Out) 데이터 버퍼로 나누어지는 8 KB 메모리 블록으로 구성됩니다. 이 데이터 버퍼의 크기는 모두 다르며, 가장 큰 데이터 버퍼는 가장 처음으로 예약되는 태스크에 할당됩니다. 그러므로 최상의 스트리밍을 위해서는 가장 높은 대역폭을 가진 태스크를 우선적으로 예약하십시오. 처음 두 개의 태스크는 각각 2048 바이트를 예약하고, 다음 세 개의 태스크는 각각 1024 바이트, 그 다음 두 개의 태스크는 각각 512 바이트를 예약합니다.

소프트웨어 타이밍에 의한 태스크

대부분의 소프트웨어 타이밍에 의한 태스크는 시스템 타이밍 컨트롤러를 필요로하지 않습니다. 소프트웨어 타이밍에서는 호스트 컴퓨터가 C 시리즈 모듈에 샘플을 얼마나 자주 쓰고 읽을지 조정합니다.

아날로그 입력 태스크는 AI 타이밍 엔진 중 하나를 사용하기 때문에 AI 태스크의 한계는 항상 하드웨어 타이밍에 의한 태스크의 한계와 같습니다. NI 9361을 사용하는 각 카운터 입력 태스크 역시 AI 타이밍 엔진을 사용합니다. 그러나 AO, DI, DO의 경우는 그렇지 않습니다. 이러한 수집 타입에서 소프트웨어 타이밍에 의한 태스크의 한계는 사용 가능한 채널 개수에 따라 다릅니다. 이러한 사항은 다음 테이블에 요약되어 있습니다.

소프트웨어 타이밍에 의한 (요청 시) 태스크 CompactDAQ 및 TestScale: 섀시당 태스크 개수 CompactRIO, 단일 보드 RIO: 컨트롤러당 태스크 개수 CompactDAQ, CompactRIO, 단일 보드 RIO, TestScale: 모듈당 태스크 개수
아날로그 입력 36 느리게 샘플되는 모듈, 멀티플렉스된 모듈 및 동시 SAR 모듈만 소프트웨어 타이밍에 의한 아날로그 입력 작업을 지원합니다. [6] 8[][6] 1
아날로그 출력 섀시에 있는 AO 채널 총 개수. (최대 128 총 태스크) 컨트롤러에 있는 AO 채널 총 개수. (최대 128 총 태스크) 각 채널 당 1개의 태스크. (모듈 당 최대 16개 태스크)
카운터 입력/ 출력 4, 2[] 4, 8[][] 4, 1[]
디지털 입력 모듈에 따라 다름. 일반적으로 슬롯 당 최소 2개의 정적 DI 모듈에 따라 다름. 일반적으로 슬롯 당 최소 2개의 정적 DI 포트 당 1개의 태스크.7 포트당 1개 태스크. NI 9401 및 TS-15050 DIO P0는 니블당 1개 태스크입니다.[7]
디지털 출력 모듈에 따라 다름. 일반적으로 슬롯 당 최소 2개의 정적 DO 모듈에 따라 다름. 일반적으로 슬롯 당 최소 2개의 정적 DO 포트당 1개 태스크.[7]

카운터의 개수가 4개이기 때문에 카운터 태스크의 개수에는 한계가 있습니다. 2 카운터 방법을 사용하여 주파수를 측정할 때와 같이 2개의 카운터를 사용하는 카운터 태스크를 사용하는 경우, 카운터 태스크의 수는 2개로 제한될 수 있습니다. 그러나 일반적으로는 4개의 카운터를 동시에 실행시킬 수 있습니다. 카운터 태스크에 몇 개의 카운터가 필요한지 파악하려면 기술지원 데이터베이스 문서 KB 4L0A62E9를 참조하십시오.

1 Gen II NI CompactDAQ 섀시에서 Dynamic Signal Analyzer (DSA) 디바이스의 아날로그 입력 태스크 개수는 두 개로 제한됩니다. DSA와 같은 여러 다른 오버샘플 클럭 타임베이스를 가진 디바이스를 사용할 때 필요한 동기화 펄스 신호를 섀시가 최대 두 개까지만 지원하기 때문입니다.

2 단일 보드 RIO 컨트롤러에서는 슬롯당 또는 온보드 IO 모듈당 한 번에 하나의 태스크를 수행할 수 있습니다. 슬롯 개수와 온보드 IO 모듈의 개수는 sbRIO 디바이스에 따라 다릅니다. 디바이스 스펙을 참조하십시오.

3 Gen II NI CompactDAQ 섀시에서는 섀시당 NI 9361 태스크가 최대 두 개로 제한됩니다.

4 CompactRIO 컨트롤러에서는 섀시당 NI 9361 태스크가 최대 여덟 개로 제한됩니다. 단일 보드 RIO 컨트롤러에서는 슬롯당 NI 9361 태스크가 한 개로 제한됩니다. 단일 태스크에 한 개 이상의 NI 9361로부터 카운터 채널을 추가할 수 있습니다. NI 9361과 네 개의 범용 카운터를 사용하면 최대 12개의 태스크를 사용할 수 있습니다.

5 한 개의 NI 9361은 단일 태스크만 지원합니다. 그러므로, NI 9361로부터 여러 카운터를 추가하는 경우, 한 개의 동일한 태스크 내에서만 사용해야 합니다. 다른 병렬 디지털 모듈에서는 섀시로부터의 온보드 카운터 네 개 각각에 별도의 태스크를 생성할 수 있습니다.

6 느리게 샘플되는 모듈, 멀티플렉스된 모듈 및 동시 SAR 모듈만 소프트웨어 타이밍에 의한 아날로그 입력 작업을 지원합니다.

7 포트당 1개 태스크. NI 9401 및 TS-15050 DIO P0는 니블당 1개 태스크입니다.