본문 바로가기
기본 이론

[UART, AXI, SPI] 간단한 통신 이론

by smileww 2024. 9. 6.

UART (Universal Asynchronous Receiver/Transmitter)

개념 설명: UART는 직렬 통신 방식으로, 두 개의 디지털 장치가 데이터를 비트 단위로 전송하고 수신할 수 있게 합니다. 이 방식은 주로 컴퓨터와 주변 장치 간, 또는 마이크로컨트롤러와 다른 디지털 시스템 간의 통신에 사용됩니다. UART는 시작 비트, 데이터 비트, 패리티 비트(선택 사항), 그리고 정지 비트로 구성된 프레임을 통해 데이터를 전송합니다.

 

 

주요 특징:

  • 비동기식 통신: 클럭 신호가 필요하지 않음.
  • 시작 및 정지 비트: 프레임의 시작과 끝을 표시.
  • 패리티 비트: 데이터 전송 중 오류를 검출하기 위한 선택적 비트.
  • 전송 속도: 보율(bps)로 표시, 예를 들어 9600bps, 115200bps 등.

쉬운 예시: UART는 마치 모스 부호와 같습니다. 한 사람이 모스 부호를 사용하여 메시지를 보낸다면, 다른 사람은 동일한 방법으로 그 메시지를 받아 해독합니다. 두 사람은 미리 약속한 속도(Baud)로 메시지를 주고받으며, 메시지의 시작과 끝을 명확히 구분할 수 있어야 합니다.

 

 

-----------------------------------------------------------------------------------------------------------------------------------

 

 

AXI (Advanced eXtensible Interface)

개념 설명: AXI는 ARM의 AMBA(Advanced Microcontroller Bus Architecture) 표준 중 하나로, 고성능, 고대역폭의 시스템 온 칩(SoC) 설계에서 사용됩니다. AXI는 고속 데이터 전송과 메모리 매핑 인터페이스를 제공하여 마스터와 슬레이브 장치 간의 효율적인 통신을 가능하게 합니다.

 

 

주요 특징:

  • AXI4: 고성능 메모리 매핑 인터페이스, 최대 256개의 비트 너비를 지원.
  • AXI4-Lite: 단순한 컨트롤 레지스터 액세스를 위한 경량 버전.
  • AXI4-Stream: 고속 데이터 스트리밍을 위한 인터페이스.
  • 버스트 전송: 단일 주소로 다수의 데이터를 전송할 수 있음.
  • 레디/밸리드 핸드셰이크: 모든 채널에서 사용되는 데이터 유효성 확인 신호.

쉬운 예시: AXI 인터페이스는 고속도로와 같습니다. 고속도로에서 차선이 여러 개로 나뉘어 다양한 차량이 동시에 빠르게 이동할 수 있는 것처럼, AXI는 여러 데이터 채널을 통해 고속 데이터 전송을 지원합니다. AXI4-Lite는 고속도로의 서비스 도로처럼, 적은 데이터량을 처리하는 데 적합합니다.

 

 

 

-----------------------------------------------------------------------------------------------------------------------------------

 

 

 

SPI (Serial Peripheral Interface)

개념 설명: SPI는 동기식 직렬 통신 프로토콜로, 마스터와 하나 이상의 슬레이브 장치 간의 통신을 지원합니다. 클럭 신호를 사용하여 데이터 전송을 동기화하며, 풀 듀플렉스 방식으로 동작합니다.

 

 

주요 특징:

  • 4선 버스: MOSI(마스터 출력 슬레이브 입력), MISO(마스터 입력 슬레이브 출력), SCK(클럭), SS(슬레이브 선택).
  • 풀 듀플렉스: 송신과 수신을 동시에 수행.
  • 다중 슬레이브 지원: 마스터가 여러 슬레이브를 제어할 수 있음.
  • 고속 통신: 50MHz까지 지원 가능.

쉬운 예시: SPI는 마치 여러 라디오 채널을 동시에 청취하는 것과 같습니다. 마스터는 클럭 신호를 통해 여러 슬레이브에게 데이터를 전송하고, 각 슬레이브는 자신의 선택된 채널(SS 라인)에 맞추어 데이터를 송수신합니다.

 

 

-----------------------------------------------------------------------------------------------------------------------------------

 

 

정리 및 추가 설명:

각 인터페이스의 사용 용도와 장점은 다릅니다. UART는 단순하고 비용 효율적인 통신 방법으로 널리 사용되며, AXI는 고성능 시스템 설계에서 복잡한 데이터 전송 요구 사항을 충족시키기 위해 설계되었습니다. SPI는 고속의 짧은 거리 통신에 적합하며, 단순한 마스터-슬레이브 구조로 구현하기 쉽습니다.

'기본 이론' 카테고리의 다른 글

데이터 흐름 시나리오  (0) 2024.09.19
[Vivado] Logic Block  (0) 2024.09.17
베릴로그 방과후 1  (0) 2024.09.08
BRAM  (1) 2024.09.08
FPGA와 ARM CPU 관계  (1) 2024.09.08