파이프라인된 ADC를 가진 아날로그 입력

노트 일부 S 시리즈 디바이스에는 파이프라인된 ADC가 없습니다. 사용중인 디바이스에 파이프라인된 ADC가 있는지를 확인하려면 디바이스 스펙을 참조하십시오.

많은 S 시리즈 디바이스에는 기본적인 파이프라인 단계를 가진 ADC가 있습니다. 이렇게 파이프라인을 적용하면 디바이스가 더 빠른 속도에서 샘플링할 수 있습니다. 그러나 디바이스의 타이밍 요구 조건에 따라 다른 결과를 얻을 수도 있습니다. NI 6143을 제외한 S 시리즈 디바이스는 AI 하드웨어 타이밍에 의한 단일 포인트 샘플 모드를 지원하지 않습니다. 데이터를 읽으려면 먼저 데이터가 파이프라인을 통해 전달되어야 하므로, 읽는 데이터는 항상 파이프라인의 단계만큼 오래된 데이터입니다. 예를 들어 디바이스의 파이프라인 단계가 3인 경우, 첫번째 샘플은 tick 1 클럭에서 수집되지만 수집된 샘플을 읽으려면 클럭 tick 4까지 기다려야 합니다. 이 논리를 따르면 유한 수집에서는 파이프라인 단계만큼의 추가적인 클럭 펄스를 제공하여 파이프라인을 채워야 합니다. 위의 예제에 덧붙여서, 파이프라인 단계가 3이고 1000개의 샘플을 수집하려면, 1003개의 샘플 클럭 펄스를 생성해야 합니다. 내장 샘플 클럭을 사용하는 경우, NI-DAQmx는 자동으로 적합한 샘플 클럭 펄스 수를 생성합니다. 그러나 외부 샘플 클럭을 사용하거나 디바이스를 동기화하는 경우, 적합한 샘플 클럭 펄스 수를 제공해야 합니다.

측정 정확도가 떨어지지 않고도 샘플을 파이프라인에서 유지할 수 있는 일정한 시간(유한)이 있습니다. 이 시간 제한에는 최소의 샘플링 속도가 필요합니다. 이 속도를 준수해야 디바이스에서 지정한 측정 정확도를 얻을 수 있습니다. 권장하는 최소 샘플링 속도보다 느린 속도에서도 샘플링할 수는 있지만 디바이스의 측정 정확도는 보장되지 않습니다. 권장하는 최소 샘플링 속도에 대한 정보는 디바이스 스펙을 참조하십시오.

파이프라인에서 샘플의 정확도가 저하되면 요청할 때(on-demand) 단일 포인트 수집과 일시 정지 트리거를 사용하는 수집에도 영향을 미칩니다. 요청할 때(on-demand) 단일 포인트 수집의 경우, NI-DAQmx는 읽는 각 샘플에 대해 디바이스의 최대 샘플 속도에서 여러 샘플 클럭을 생성합니다. 파이프라인된 ADC가 있는 S 시리즈 디바이스의 경우, 생성된 샘플 클럭의 수는 파이프 라인에 1을 더한 수와 같습니다. 파이프라인된 ADC가 없는 S 시리즈 디바이스의 경우, 각 포인트에서 2개의 클럭 펄스가 생성됩니다. 따라서, 요청할 때 단일 포인트 수집을 하는 동안 샘플 클럭을 반출하는 경우, 데이터 포인트보다 많은 샘플 클럭 펄스를 얻게 됩니다. 그 후 NI-DAQmx는 첫번째 샘플 클럭 펄스에 대응하는 데이터 포인트를 제외한 모든 포인트를 버립니다. 따라서 반환된 데이터가 항상 유효하도록 합니다. 일시 정지 트리거를 사용하는 수집의 경우, 일시 정지 트리거를 파이프라인 단계를 최소 샘플링 속도로 나눈 값보다 오래 지정한 경우, 일시 정지 트리거가 파이프라인의 샘플을 무효화시킬 수 있습니다. 예를 들어, 디바이스의 파이프라인 단계가 3이고 최소 샘플링 속도가 1000 샘플/초인 경우, 데이터는 3 ms 보다 오래 파이프라인에 있어서는 안됩니다. 파이프라인의 데이터가 이전 스펙의 질을 떨어뜨리지 않는 한도 내에서 일시 정지 트리거는 최대 3 ms까지 지정될 수 있고 최대 3개의 샘플 클럭을 감지할 수 있습니다. 일시 정지 트리거의 경우, NI-DAQmx는 유효하지 않은 샘플을 감지하거나 제거하지 않습니다. 이같은 상황을 감지하고 유효하지 않은 샘플을 적합하게 처리해야 합니다.

아날로그 출력

외부 ao/SampleClock을 유한 생성에서 사용하는 경우, 태스크가 완료되었음을 나타내려면 완료될 때까지 기다림 함수/VI에서 생성한 샘플의 수보다 하나가 많은 샘플 클럭 펄스를 제공해야 합니다. 예를 들어, 외부 샘플 클럭을 사용하여 1000개의 샘플을 생성하려면, 1001개의 샘플 클럭 펄스를 제공해야 합니다. 그렇지 않으면 완료될 때까지 기다림 함수/VI는 해당 태스크가 완료되었음을 나타내지 않습니다. 모든 샘플이 생성되지만 아날로그 출력 타이밍 엔진은 생성이 완료되었음을 나타내기 위해 클럭 펄스가 하나 더 필요합니다. 공통 클럭을 공유하여 다른 수집이나 생성에서 아날로그 출력 생성을 동기화하려면 ao/SampleClock을 마스터 클럭으로 사용하거나 생성이나 수집의 완료 시점으로 사용하여 생성이 완료되었는지 결정하는 마스터 클럭을 제공하십시오.

노트 NI 6154와 같은 STC2 타이밍 칩을 사용하는 S 시리즈 디바이스의 경우, 태스크 완료를 나타내기 위해 여분의 샘플 클럭 펄스를 추가하지 않아도 됩니다.