본문 바로가기
Embedded System/전자회로 (PCB)

Ethernet 인터페이스 (W5500)

by MachineJW 2024. 11. 29.

1. Ethernet 구현이 필요한 경우를 대비

Ethernet의 경우 고속 데이터 전송과 안정성을 자랑하는 통신 인터페이스이다. TCP/IP도 물리적계층으로 Ethernet을 포함하여 사용하고 있다. 그러나 마이크로컨트롤러와 연결해서 사용하는 일이 있을까 싶기도 하지만 Ethernet 인터페이스 하나로 수많은 프로토콜 (TCP/IP, UDP, HTTP, MQTT 등)을 구현할 수 있다는 엄청난 장점이 있다.

Ethernet을 기반으로 하는 산업용 프로토콜들

(1) Ethernet 을 기반으로 하는 산업용 프로토콜

 

  • EtherCAT (Ethernet for Control Automation Technology)
  • Profinet
  • Modbus TCP
  • EtherNet IP (Industrial Protocol)

Ethernet을 기반으로 하는 산업용 프로토콜들은 주로 산업 자동화, 공장 제어, 실시간 데이터 통신 등에 많이 활용되고 있으며 높은 신뢰성 성능을 요구한다.

2. 임베디드 Ethernet 전용 칩 (W5500)

Wiznet 사의 W5500 칩은 TCP/IP 프로토콜 스택 처리가 구현되어 있으며 마이크로 컨트롤러로 제어 할 수 있어 임베디드에서 많이 활용된다.

 

  • 임베디드에서 Ethernet 구현을 위해 주로 많이 사용되는 칩은 Wiznet 사의 W5500이다.
  • 가격도 나름 나쁘지 않으며 (약 3달러, 한화 3~4천원) SPI 통신으로 마이크로컨트롤와의 높은 호환성을 자랑한다.
  • 데이터시트도 잘 되어있으며 공식 한글화 문서도 지원한다. Wiznet사 공식 홈페이지 상에서 확인할 수 있다.

https://docs.wiznet.io/Product/iEthernet/W5500/datasheet

 

Datasheet | WIZnet Document System

W5500 chip is a Hardwired Internet controller designed as a full hardwired TCP/IP stack with WIZnet technology

docs.wiznet.io

3. 데이터 시트 분석하기

(1) W5500 개요

(2) W5500 아키텍처 구조도

  • 참고로 RJ45 커넥터에는 2가지 종류가 존재하는데, 트랜스포머가 내장 된 것과 내장되어 있지 않은 것이 있다.
  • 트랜스포머가 내장되어 있는 경우내장되어 있지 않은 경우로 나누어져 회로가 설계된다.
  • TCP/IP 프로토콜 스택을 위한 처리가 모두 구현이 되어 있다. 개발자는 MCU의 SPI 통신을 통하여 Ethernet을 편리하게 사용 할 수 있겠다.

(3) W5500 IO pin 분석

 

  • RJ45 케이블의 경우 TX 플러스, 마이너스 / RX 플러스, 마이너스 4가지의 차동 신호로 통신을 하는데 해당되는 신호를 W5500에 연결해야한다.

RJ45 커넥터의 내부 회로구조. ( HANRUN사의 HR913550AE ) 트랜스가 내장되어 있다.

  • EXRES1 에는 12.4K 옴 1% 저항을 달아주라고 명시되어 있다. 일단 참조 저항인듯 한데 데이터시트에서 명시되어 있는데로 설계하면 나쁠 것이 없기때문에 꼭 12.4K 옴 1%의 저항기를 달아주도록하자.

  • VBG는 온도에 따른 상태를 출력하는 듯 한데, NC (Not Conneted) 처리 하라고 하니 명시되어 있는대로 아무것도 배선하지 말자
  • TOCAP은 외부 참조 커패시터이며 친절하게 4.7uF 커패시터를 연결하라 명시되어 있다.
  • 1V20의 경우 1.2V를 출력해주는 내부적인 레귤레이터 인듯 하다. 쓸일은 없을 것 같다. 만약 사용한다고 하면 명시되어 있는 대로 10nF 커패시터를 달아주도록 하자.

  • Ethernet 통신 상태에 따른 LED 출력 핀이다. RJ45 커넥터 LED 부분에 배선하여 상태 표시를 확인할 수 있도록 한다.

  • 외부 25MHz 오실레이터를 연결하라고 명시 되어있다. 조금 설명이 복잡한데 아래 참고 회로도를 확인하면 금방 이해할 수 있다. 다만, 왜 사용되는지 의구심이 들지만 설계한 제조사가 저렇게 달아주라하니 우리는 그냥 데이터 시트 대로 따라 하면 된다.

  • 리셋핀이 존재하지만 사용할 일이 있을까 싶기도 하다. 마이크로컨트롤러에서 리셋 처리 될 때 같이 리셋 시켜 줘야하나?? 이부분은 잠시 행복한 고민으로 넘겨두기로 하자 ㅎㅎ

  • PMODE 연결 상태에 따라 PHY 모드가 바뀐다고 한다.

Ethernet PHY 란?

PHY가 데이터 링크 계층(MAC)과 물리적 전송 매체(케이블) 사이의 신호를 처리하는 역할을 한다. Ethernet PHY 모드는 네트워크 연결 속도, 전송 방식, 매체를 설정한다.

  1. 속도:
    • 10BASE-T: 10 Mbps (초기 Ethernet 표준)
    • 100BASE-TX: 100 Mbps (Fast Ethernet)
    • 1000BASE-T: 1 Gbps (Gigabit Ethernet)
    • 10GBASE-T: 10 Gbps (10-Gigabit Ethernet)
  2. 전송 모드:
    • Half-Duplex: 송신과 수신을 번갈아 수행.
    • Full-Duplex: 송신과 수신을 동시에 수행.
  3. 오토 네고시에이션:
    • PHY가 연결된 장비와 속도 및 전송 모드를 자동으로 협상.
  4. 미디어 종류:
    • UTP (Unshielded Twisted Pair) 케이블.
    • 광섬유(Fiber Optic).

(4) 회로 설계 가이드