본문 바로가기

[INTERFACE]/WIZNET_EVM

[W5100] 하드웨어 제작 가이드

W5100 MCU와의 인터페이스 방법
W5100은 다이렉트로 제어 하면 메모리와 유사한 방법으로 제어 되지만 버스 라인을 줄이기 위해 인다이렉트, SPI방식도 지원을 한다. 요즘 나오는 시리얼 플래시나 NAND플래시 등의 인터페이스로 생각하면 된다.


다이렉트 방식
MUC가 W5100의 메모리와 레지스터를 직접적으로 제어 하는 방식, Data-8, Address-15, CS, WR, RD INT(옵션)의 신호를 필요로 하고 속도는 가장 빠르다.



타이밍도







인다이렉트 방식
W5100의 메모리 주소를 W5100의 내부 레지스터만을 이용하여 간접적으로 W5100의 메모리 주소에 접근 하는 방식.  A0, A1을 이용하여 4개의 레지스터 MR, IDM_AR0, IDM_AR1, IDM_DR만 접근할 수 있고 IDM_AR0, IDM_AR1 레지스터를 통해 W5100의 전체 레지스터 및 메모리를 접근할 수 있다.

Address/Data방식의 MCU가 아닌 일반 IO방식의 MCU를 사용할때 이 방식을 쓰면 포트를 줄이고 간단히 제어할 수 있다.



소프트웨어 접근시 A0, A0: "00" 이면 MR레지스터를 엑세스 할수 있다.
A0, A1 = "01" 이면 MSB Address,
A0, A1 = "10" 이면 LSB Address,
A0, A1 = "11" 이면 Data 레지스터를 제어할 수 있다.

참고로 AVR의 GPIO모드를 이용하지 않고 버스모드를 이용할 경우 Address0, Address1은 Data에서 ALE로 분리할 수 있다. 그러면 기존 코드를 크게 수없이 가능하다.





SPI방식
가장 간단한 방식으로 SPI규격으로 제어하면 되지만 속도는 좀 느리다.




타이밍도





반응형