|
많은 S Series장비는 고유의 Depth를 가지고 있는 Pipelined ADC를 사용합니다. 이 Pipelining은 장비가 높은 속도로 샘플링을 할수 있도록 허용하지만, 장비가 요구하는 타이밍에 다른 문제를 야기할 수 있습니다. 데이터가 읽히기 전에 반드시 Pipeline을 통과해야 하지만, 데이터는 Pipeline의 Depth에 의해 항상 지연이 됩니다.
For example: 만약 장비가 3의 Pipeline Depth를 갖고 있다면, 첫 샘플은 1번째 틱 클럭에 수집이 되지만 읽을 수 있는 타이밍은 4번째 틱 클럭이 됩니다.
'소프트웨어 타이밍의 1샘플 요구할 때'의 조건이라면, NI-DAQmx는 여러개의 샘플 클럭을 최대속도로 만들어낸 다음 각각의 샘플을 읽습니다. Pipeline ADC를 가진 S Series장비라면 샘플 클럭의 갯수는 Pipeline의 Depth + 1 이 됩니다.NI 6110이나 NI 6111이 이에 해당됩니다.
Pipeline ADC를 갖지 않는 S Series중 하나이며, 1개의 샘플을 얻기 위해 2개의 샘플 클럭이 만들어집니다. NI 6143이 이에 해당됩니다.
만약 '요청할 때 단일샘플 수집' 중에 샘플 클럭을 NI-DAQmx Export Signal VI함수를 이용하여 반출할 경우, 데이터 개수보다 많은 샘플 클럭들이 반출되게 됩니다. NI-DAQmx는 1번째 샘플에 관한 데이터 포인트를 제외한 모든 포인트를 제거합니다. 그렇기 때문에 반출되는 데이터는 항상 유효한 데이터 입니다.
만약 온보드 샘플 클럭이 사용중 이라면, NI-DAQmx는 자동적으로 적절한 샘플 클럭을 생성합니다.
장비를 동기화 하거나, 외부클럭을 받아서 하드웨어 타이밍의 I/O를 수행할 때에는, 사용자에게 정확한 샘플클럭 펄스의 개수가 제공되어야 Pipeline에서 나오는 데이터를 제거할 수 있습니다.
|