고속 디지털 I/O 디바이스의 고급 기능 : 메모리

개요

본 기술 백서는 고속 디지털 I/O 디바이스의 고급 기능: 기술 백서 시리즈의 일부입니다.

본 튜토리얼은 고속 디지털 I/O에서 대용량 온보드 메모리를 사용하는 장점에 대해 설명합니다. 스크립팅과 웨이브폼 생성은 보드에서 사용가능한 본 메모리를 사용합니다.

내용

소개

NI 디지털 웨이브폼 발생기/분석기는 데이터 수집 및 생성을 위해 몇 메가 바이트에 이르는 온보드 메모리를 사용합니다. 온보드 메모리가 있으면 PCI 버스에서 시스템 메모리로부터 데이터를 스트리밍하는 것보다 더욱 높은 데이터 속도를 구현할 수 있습니다. 수집 메모리와 생성 메모리는 별개입니다. 다시 말해, 64 MS 디바이스에는 두 개의 64 MS 메모리 블록이 있어 하나는 수집에 다른 하나는 생성을 위해 사용됩니다.

하드웨어 비교를 수행할 경우, 결함 데이터는 수집 및 생성 데이터로부터 개별적으로 저장되므로 수집 또는 생성 메모리를 소모하지 않습니다.

 웨이브폼 생성

웨이브폼 및 스트립트는 디바이스 메모리에 함께 저장됩니다. 즉, 인접한 블록에 저장되며 디바이스에 작성된 순서대로 메모리에 나타납니다. 디바이스로부터 개별 웨이브폼을 삭제할 수 있으므로 작성되는 웨이브폼이 차지하는 공간을 줄일 수 있습니다.

데이터 폭

본 프로퍼티 노드는 보드의 샘플 크기를 결정합니다. 이는 또한 사용가능한 채널 개수도 결정합니다. 기본값 크기는 보드에 의해 결정됩니다. 수집 데이터 폭은 설정되지만, 생성 데이터 폭은 고정됩니다.

그림 1. 데이터 폭과 채널 개수

NI LabVIEW 소프트웨어에서 데이터 폭 프로퍼티 노드를 사용하여 본 프로퍼티를 읽거나 쓸 수 있습니다.


그림 2. 데이터 폭 프로퍼티 노드

메모리 할당

수집 메모리: 물리적 메모리 및 데이터 폭은 샘플 저장량을 결정합니다. 데이터 폭을 줄이면 메모리에 저장되는 샘플 개수를 늘릴 수 있습니다.

생성 메모리: 수집 메모리와 유사하게, 저장된 샘플량은 물리적 메모리 및 데이터 폭에 의해 결정됩니다. 데이터 폭은 디바이스 및 모드에 의해 설정됩니다. 생성의 경우, 메모리의 부분은 지시어 스크립팅에 사용됩니다.

보드

메모리 크기 (Mb/ch)

1 Mb/ch

8 Mb/ch

64 Mb/ch

6541/6542

1

8

64

6544/6545

1

8

64

6551/6552

1

8

64

6561/6562 SDR

2

16

128

6561/6562 DDR

4

32

256

그림 3. 메모리 크기

스트리밍

고속 디지털 제품에서 사용가능한 메모리의 양이 상당하므로 이로 인해 사용자는 데이터를 PC 메모리로(부터) 스트리밍할 수 있게 됩니다. 온보드 메모리는 버퍼로 작동하므로, 보드가 생성/수집하는 동안 데이터를 저장할 수 있습니다. 아래의 예는 고속 디지털 보드를 사용하여 수집 및 생성을 위해 데이터를 스트리밍하는 방법입니다.

고속 I/O 보드에서 스트리밍: 수집
고속 디지털 I/O 보드에서 스트리밍: 생성

스크립트 크기 계산

NI 고속 디지털 I/O 보드에 대해 컴파일되는 단일 지시 (instruction)는 16 B입니다. 지시에 의해 사용되는 샘플 개수는 데이터 폭에 따라 달라집니다.

•          데이터 폭 1 (6541/6542, 655x) 4 샘플

•          데이터 폭 2 (656x SDR) 8 샘플

•          데이터 폭 4 (6544, 6545, 656x DDR) 16 샘플

 

차지하는 메모리의 양은 다음에 의해 결정됩니다.

                                          1 B          8 ch

메모리 옵션 (Mb/ch)  x -----------------x ------------ x datawidth (B)

                                         8 bits         1 B

모든 스크립트에는 2 지시 오버헤드가 있습니다.

  • Generatestatement
    •  마커 없음
      •   1 지시
    •   N 마커
      •  N+1 지시
    • 서브세트
      •  1 지시
  • Waitstatement
    • 1 지시
  • Clear trigger statement
    • 0 지시
  • Repeat Loops
    • 반복 n loops
      • 2 지시
    • 트리거까지 반복
      • 3 지시
    • 계속 반복
      • 최고 47 지시
        • 2 지시
      • 47보다 큼
        •  반드시 128 B의 배수
        •  여분의 공간이 있다면 null 명령으로 채워짐
      • 2 지시
  • If-else statements
    • Else 명령문은 반드시 128 B의 배수
      • 여분의 공간이 있다면 null 명령으로 채워짐
    • 2 지시

결론

고속 디지털 보드의 온보드 메모리는 데이터 저장에 사용됩니다. 디지털 벡터는 메모리에 저장되며 본 벡터의 고급 링킹 및 루핑은 스크립팅을 사용하여 수행 가능합니다. 또한, 하드웨어 비교와 같은 기능의 경우, 예상 데이터는 메모리에 저장되며, 그 후 수집되는 데이터와 비교하는 데 사용됩니다. 또한, 온보드 메모리는 데이터를 PC 메모리로(부터) 스트리밍하는 데 사용됩니다.