ENGLISH 简体中文 日本語 한국어  

    로그인 | 회원가입 


   
 
키워드나 부품번호를 입력해주세요    




애플리케이션 노트 813

Maxim의 직렬 인터페이스 소프트웨어의 로딩 속도 측정

개요: 이 애플리케이션 노트는 다양한 PC 상에서 동작하는 Maxim의 소프트웨어에 의해 생성되는 3-wire 버스의 속도를 소개하고 있다. 테스트된 프로세서의 속도 범위는 233MHz ~ 933MHz이며 Windows® 95 및 98 OS가 사용되고 있다. PC의 병렬 프린터 포트를 로직 분석기로 모니터링하여 직렬 버스 데이터 전송 상태를 포착했다. MAX2361의 24비트 레지스터는 PC의 OS와 프로세서 클록 주파수에 따라 204µs ~ 118.4µs의 시간 내에 로딩된다.

추가 정보: Maxim은 3-wire SPI (serial peripheral interface) 버스를 사용하여 여러 제품이 내부 레지스터를 프로그래밍할 수 있는 소프트웨어를 제공한다. 이 소프트웨어는 버스 로딩 동작을 PC의 병렬 프린터 포트 상의 "bit-banging"¹을 통하여 수행한다. 이 소프트웨어에 대해 문서화되지 않은 특성 중 하나는 직렬 버스를 통한 데이터 전송 속도이다. 많은 SPI IC는 10MHz 이상의 클록 주파수를 지원한다. 이 애플리케이션 노트는 다양한 PC 상에서의 직렬 버스 성능을 소개한다. MAX2361등에서 볼 수 있는 24비트 길이의 레지스터에 대한 로딩 시간은 평균 118µs ~ 204µs;s이다. 이 테스트를 위해 사용된 소프트웨어는 "Maxim Interface Software Version 5.00.26"이다.

테스트 환경

4개의 IBM 호환 PC를 사용하여 서로 다른 프로세서 클록 속도, 메모리 크기 및 운영체제의 영향을 평가하였다.

표 1. 소프트웨어 테스트에 사용된 컴퓨터
 
Dell 4100
Desktop
IBM T20
Notebook
HP Pavilion 6470Z
Desktop
Sony Vaio PV220
Desktop
Operating System
Win 98 Second Edition
Win 98 Second Edition
Win 98
Win 95
Processor
(P = Pentium)
P III
PIII
PII
PII
Processor Speed
933MHz
750MHz
400MHz
233MHz
DRAM
128M
96M
96M
32M

각 컴퓨터에는 단 하나의 병렬 프린터 포트를 설치했다. 프린터 포트에 나타나는 신호의 모니터링을 위해 그림 1과 같이 로직 분석기를 연결했다.

Figure 1. Interface between the logic analyzer and the personal computer.
그림 1. 로직 분석기와 PC 간의 인터페이스

테스트 순서

인터페이스 소프트웨어를 각 PC에 로딩하여 실행시킨다. MAX2360 "Register View" 화면을 이용하여 소프트웨어로 하여금 24비트 레지스터 값을 보내도록 한다. 선택한 레지스터는 RF의 R 분주기로, 디폴트 값은 1968이다. 송신되는 바이너리 패턴은 000000000111101100000001이다. 이 레지스터의 처음 7자리는 사용되지 않으며, 그 다음의 13개의 비트는 PLL의 RF 레퍼런스 분주기를 1968분주 하도록 프로그래밍 한다. 병렬 프린터 포트로 전송되는 마지막 4비트는 MAX2360/MAX2361의 목적 주소이다. 1968의 값은 CDMA 시스템에서 19.68MHz VC-TCXO(전압 제어 온도 보상 크리스털 발진자)를 10kHz로 분주할 때 사용되는 전형적인 값이다. 그 다음 이로써 RF 위상 검출기 비교 주파수가 10kHz로 설정된다.

HP1653B에 사용되는 로직 분석기이다. MAX2361과 함께 인터페이스 소프트웨어를 사용할 때 모니터링할 병렬 프린터 포트 핀은 핀 2, 3, 4이다. 핀 2는 SPI 신호 "Clock", 핀 3은 SPI 신호 "Enable", 그리고 핀 4는 "Data"를 반송한다. 로직 분석기는 Enable 펄스의 하강 에지에 트리거 되도록 설정하였다. 전체 로딩 시간은 인에이블 신호가 LOW인 총 시간으로 정의된다. 그림 2는 HP1653B의 화면을 캡처한 것이다.

Figure 2. SPI bus transfer captured by HP1653B.
그림 2. HP1653B에 의해 캡처된 SPI 버스 전송 상태

논의: 로직 분석기 결과의 해석

인터페이스 소프트웨어의 제어 하에 여러 SPI 버스 트랜잭션을 관찰하다 보면 단순한 숫자 결과를 해석하기 위해 몇 가지 판단 기준이 필요하다는 것을 알게 된다. 전송 속도에 영향을 주는 주된 요소는 다음의 두 가지이다.

  1. 프로세서 클록 속도. 프로세서 속도가 빠르면 빠른 SPI 전송 속도를 지원할 수 있다.
  2. 운영체제 오버헤드
Windows는 시스템 오버헤드 인터럽트를 서비스하기 위해 거의 무작위성으로 애플리케이션 프로그램의 처리를 일시 중지하게 된다. 어떠한 트랜잭션은 SPI 전송 간격을 30% ~ 50%까지 지연시킨다. 이러한 일이 테스트 중에는 자주 발생하지 않았다.

참고: MS-DOS는 초 당 18.2회 (약 55ms마다, 인터럽트 08H) 발생하는 시스템 인터럽트를 사용했다. Windows9X 역시 이와 비슷한 타이머 리소스를 사용할 수 있으며, 이 회수만큼 SPI 버스 동작은 인터럽트가 없어질 때까지 멈추게 된다.

비정상적으로 긴 SPI 전송시간은 계산에서 버렸다. 이 실험의 목적은 최저 속도를 찾는 것이 아니라 평균 속도를 찾는 것이기 때문이다. 대부분의 캡처된 트랜잭션은 하나의 값에 대해 강하게 밀집되어 있었다.

결과

SPI 전송 시간은 평균적으로 118µs ~ 204µs 범위에 분포한다. "최소 급변의 법칙(principle of minimum astonishment)"²을 준수할 때, 가장 빠른 프로세서가 가장 빠른 SPI 전송 속도를 기록함을 알 수 있었다. 측정 결과는 표 2에 실려 있다.

표 2. 서로 다른 PC 상에서의 전송 시간
 
Dell 4100
(Maxim Machine)
IBM T20
Notebook
HP Pavilion 6470Z
Desktop
Sony Vaio PV220
Desktop
Operating System
Win 98 Second Edition
Win 98 Second Edition
Win 98
Win 95
Processor
(P = Pentium)
P III
PIII
PII
PII
Processor Speed
933MHz
750MHz
400MHz
233MHz
DRAM
128M
96M
96M
32M
2360 SPI Load Time
118.4µs
135µs
169µs
204µs

그래픽 형태의 실험 결과는 그림 3에 나와 있다. 또한 그래프의 아래쪽에는 많은 SPI IC가 직렬 데이터를 받아들일 수 있는 속도가 나와 있다. SPI 클록 10MHz일 때, 14비트 로드 동작은 2.5㎲만에 완료된다. 이것은 비트 뱅잉 테크닉보다 50배 빠른 것이다. 이것은 PC 클록 속도가 46GHz보다 빨라지는 것이나 다름없는 것이다! (이것은 물론 거짓이다. 제한 요소는 PC의 I/O 버스에 의해 지원되는 속도이지, 프로세서 클록 속도가 아니기 때문이다.)

. Figure 3. SPI transfer time decreases as the PC clock increases.
그림 3. PC 클록 속도가 증가함에 따라 SPI 전송 시간이 짧아진다.

참고 문헌
IBM Personal Computer Hardware Reference Library; Technical Reference 6025008 (First Edition August 1981) International Business Machines Corporation.

____________________________
  1. Bit-banging은 마이크로컨트롤러의 핀들이 소프트웨어의 직접적인 제어에 의해 high 또는 low로 강제 동작하는 테크닉을 말한다. PC의 경우 이러한 테크닉은 소프트웨어가 직접 병렬 프린터 포트의 핀들을 조작하는 것으로 해석할 수 있다.
  2. Taub and Schilling: "Principles of Communications Systems," page 249, McGraw-Hill Book Company, New York, 1971.



관련 부품  APP 813: Dec 04, 2003
MAX2360 완벽한 듀얼 밴드 쿼드러처 송신기 전체 데이터 시트
(PDF, 416kB)
MAX2361 완벽한 듀얼 밴드 쿼드러처 송신기 전체 데이터 시트
(PDF, 468kB)
무료 샘플

자동 업데이트
관심 분야의 애플리케이션 노트가 나올 때 자동으로 업데이트를 원하십니까? 그렇다면 EE-Mail™을 신청하십시오.


We Want Your Feedback!



의견을 보내주세요!
위 내용이 도움이 되셨나요?
여러분의 의견을 기다립니다 — Maxim은 보내주신 정정이나 제안사항을 반영하고 있습니다. 이 페이지를 평가하고 의견을 보내주십시오.

 

다운로드, PDF 형식다운로드, PDF 형식 (65kB)
 AN813, AN 813, APP813, Appnote813, Appnote 813

        •         •         •     개인정보보호 정책     •     법적 고지

    Copyright © 2009 by Maxim Integrated Products