USB PHY?

- USB PHY(Physical Layer)는 USB 통신의 물리 계층을 담당하는 하드웨어 모듈

- USB 프로토콜에 따라 데이터를 전송하거나 수신할 때, 디지털 신호와 아날로그 신호 간의 변환

- USB 디바이스 또는 호스트가 실제로 데이터 전송을 가능하게 함


1. USB PHY의 역할

1-1. 디지털-아날로그 변환 (DAC)

  • 디지털 신호를 아날로그 전압 또는 전류로 변환해 USB 라인(D+/D-)으로 출력

1-2.아날로그-디지털 변환 (ADC)

  • USB 라인에서 수신한 신호(D+/D-)를 디지털 신호로 변환해 USB 컨트롤러로 전달

1-3. 신호 레벨 조정

  • USB 표준(USB 2.0, 3.0 등)에 맞는 전압 및 전류 수준을 유지
  • 고속 신호 전송(USB 2.0의 480 Mbps, USB 3.0의 5 Gbps 등)을 지원

1-4. USB 프로토콜 구현 보조

  • 신호 인코딩 및 디코딩 (NRZI, 8b/10b 등)
  • 동기화 및 클럭 복구
  • 디바이스 연결 상태(attach/detach)와 같은 이벤트 감지

1-5. 전력 관리

  • USB 라인의 전력 신호(VBUS)를 감지
  • 저전력 및 유휴 상태 관리

 

2. USB PHY의 구성 요소

2-1. 트랜시버

  • USB 라인(D+, D-)으로 신호를 송수신
  • FS (Full Speed), HS (High Speed), SS (Super Speed)와 같은 USB 데이터 전송 속도를 지원

2-2. 클럭 생성기

  • 데이터 전송의 동기화를 위해 안정적인 클럭 신호를 생성

2-3. 전력 감지 회로

  • USB 디바이스가 VBUS 신호를 통해 연결 상태를 인식

2-4. 차동 증폭기

  • USB의 차동 신호(D+/D-)를 증폭하여 신호 왜곡을 최소화

2-5. ESD 보호 회로

  • USB 포트에서 발생할 수 있는 정전기 방전을 방지

 

3. USB PHY의 종류

3-1. USB 1.1/2.0 PHY

  • Full Speed(12 Mbps)와 High Speed(480 Mbps)를 지원
  • 트랜시버가 D+/D- 라인에서 NRZI 인코딩과 디코딩 수행
  • 저전력 설계가 강조됨

3-2. USB 3.0 PHY

  • Super Speed(5 Gbps)를 지원
  • 고속 데이터 전송을 위해 8b/10b 인코딩 사용
  • 기존 USB 2.0 PHY와 병렬로 동작

3-3. USB Type-C PHY

  • 양방향(리버서블) 연결 지원
  • USB PD(Power Delivery)와 호환 가능
  • 데이터 및 전력 전송을 동시에 처리

 

4. USB PHY의 통합 방식

4-1. Discrete USB PHY

  • 독립된 칩 형태로 제공
  • 특정 USB 컨트롤러와 결합해 사용
  • 유연성은 높지만 설계 복잡성이 증가

4-2. Integrated USB PHY

  • MCU나 SoC에 내장되어 제공
  • 간단한 설계와 공간 절약 가능
  • 저비용 소형 디바이스에 적합

 

5. 추천 USB PHY IC

5-1. Microchip - USB3300

  • USB 2.0 HS PHY
  • ULPI 인터페이스 제공
  • 저전력 및 고성능 설계

5-2. Texas Instruments - TUSB1210

  • USB 2.0 PHY
  • ULPI 인터페이스
  • 고속 신호 전송과 간단한 설계 지원

5-3. Synopsys - DesignWare PHY

  • USB 3.0/3.1 PHY IP
  • SoC 설계에 적합

5-4. Cadence - USB PHY IP

  • 고속 및 전력 효율적 USB PHY 솔루션

 

6. USB PHY를 사용할 때 고려 사항

6-1. 지원하는 USB 표준

  • USB 2.0, USB 3.0, USB Type-C 등 요구 사항에 맞게 선택

6-2. 호환성

  • 사용하려는 MCU나 SoC와 인터페이스 호환성 확인 (ULPI, PIPE 등)
  • USB 2.0, USB 3.0, USB Type-C 등 요구 사항에 맞게 선택

6-3. 전력 소비

  • 저전력 설계가 필요한 경우 ESD 보호와 전력 관리 기능 포함 여부 확인

6-4. 설계 복잡도

  • 외부 USB PHY가 필요한지, 아니면 통합된 PHY를 사용할지 결정

 

 

- 인터넷(Internet)

인터넷 프로토콜 스위트(TCP/IP)를 기반으로 하여 전 세계적으로 연결되어있는 컴퓨터 네트워크 통신망

 

- 이더넷(Ethernet)

이더넷은 네트워크를 이루는 컴퓨터들의 통신 수단 중 하나

 

- TCP/IP

인터넷에서 컴퓨터들이 서로 정보를 주고 받는데 쓰이는 프로토콜의 집합

 


1. IP (Internet Protocol, 인터넷 프로토콜)

- 송신 호스트와 수신 호스트가 패킷 교환 네트워크 (Packet Switching Network)에서 정보를 주고받는 데 사용하는 정보 위주의 규약

- 네트워크 계층(3 계층)에 위치

- 호스트의 주소 지정과 패킷의 분할 및 조립, 라우팅을 담당

- 비신뢰성 (unreliability) : 흐름에 관여하지 않기 때문에 보낸 정보가 제대로 갔는지 보장하지 않음

- 비연결성 (connectionlessness) : 데이터 전송 이전에 미리 설정 과정을 거치지 않음

 

 

2. TCP (Transmission Control Protocol, 전송 제어 프로토콜)

2.1 TCP 특징

- 인터넷 프로토콜 스위트의 핵심 프로토콜 중 하나

- 근거리 통신망이나 인트라넷, 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간에 일련의 옥텟을 안정적으로, 순서대로, 에러 없이 교환할 수 있게 한다.

- 전송 계층(4 계층)에 위치

- 신뢰성이 높은 전송으로, 연속성보다 신뢰성 있는 전송이 중요할 때 사용하는 프로토콜

- 가상 회선 방식 제공 (발신지와 수신지를 연결하여 패킷을 전송하기 위한 논리적 경로 배정)

- 웹 브라우저들이 월드 와이드 맵(www)에서 서버에 연결할 때 사용, 이메일 전송이나 파일 전송에도 사용

2.2 TCP 패킷 구조

 

(1) Sourse Port Number(16 bits)

- 데이터를 보내는 애플리케이션의 포트 번호

- IP 주소 + 포트 번호 = 소켓 주소

 

(2) Destination Port Number(16 bits)

- 데이터를 받을 애플리케이션의 포트 번호

 

(3) Sequence Number(32 bits)

- Sequence NUmber : TCP 세그먼트의 첫번째 바이트에 부여되는 번호

- 바이트 단위로 구분되어 순서화되는 번호. 이를 통해, TCP에서는 신뢰성 및 흐름제어 기능 제공

- 시작 : 임의 값으로 시작하여, 최대값(4,294,967,295) 이후에는 '0'으로되어 시작함

- 최대 : 32 비트이므로 최대 4기가 바이트(232) 크기의 송신 데이터에, 순서화된 일련번호를 붙일 수 있음

- 초기 순서번호 (ISN, Initial Sequence Number) : 초기 TCP 연결설정을 위함

난수 발생기로 초기 순서번호(ISN)를 생성하고, 이를 순서번호 필드에 넣어 보냄. TCP는 양방향이므로 각 방향 마다 다른 ISN 번호가 사용됨

 

(4) Acknowledgement Number (확인응답 번호 / 승인 번호) (32 bits)

- TCP 헤더 길이를, 4 바이트(32 비트) 단위로 표시

- TCP 헤더 길이는, 최소 4 x 5 = 20 바이트 부터 ~ 4 x (24 - 1) = 60 바이트 이하

- 수신하기를 기대하는 다음 바이트 번호 = (마지막 수신 성공 순서번호 + 1)

- 헤더 길이 필드 (Header length, HLEN, 4 비트)

 

(5) Data Offset

- TCP 세그먼트 시작 위치를 기준으로 데이터의 시작 위치를 표현

 

(6) 6 개의 Flag bits (URG, ACK, PSH, RST, SYN, FIN)

- TCP 세그먼트 전달과 관련되어 TCP 회선 및 데이터 관리 제어 기능을 하는 플래그

- 흐름제어, 연결설정, 연결종료, 연결리셋, 데이터전송모드

 

(7) Window size(16 bits)

- 수신 윈도우의 버퍼 크기를 지정할 떄 사용

- 흐름제어를 위해 사용하는 16 비트 필드 (65,535 bytes까지 가능)

- TCP 흐름제어를 위해 송신자에게 자신의 수신 버퍼 여유용량 크기를 지속적으로 통보

- TCP 연결은 양방향이므로, 매 TCP 세그먼트를 보낼시 마다, 이 필드에 자신의 수신 버퍼 용량 값을 채워 보내게 됨 (지속적인 현행화)

 

(8) Checksum (16 비트)

- 데이터 오류 검사

 

(9) Urgent Pointer (16 비트)

- TCP 세그먼트에 포함된 긴급 데이터의 마지막 바이트에 대한 일련번호

- URG 플래그 비트가 지정되었을 경우 긴급 데이터 처리

 

(10) 옵션

- 최대 40 바이트까지 옵션 데이터 포함 가능

- TCP MSS 옵션을 협상하거나(MSS)

- 주어진 윈도우 크기 보다 더 크게 사용하거나(Windowing)

- 선택확인응답을 하거나(SACK)

- 타임스탬프 옵션 정의 (Timestamp) 등

 

 

3. UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜)

3.1 UDP 특징

- 비연결성이고, 신뢰성이 없으며, 순서화되지 않은 Datagram 서비스 제공

확인응답 없음 : 메세지가 제대로 도착했는지 확인하지 않음

순서제어 없음 : 수신된 메세지의 순서를 맞추지 않음. TCP 헤더와 달리 순서번호 필드 없음

흐름제어 없음 : 흐름 제어를 위한 피드백을 제공하지 않음

오류제어 거의 없음 : 검사합을 제외한 특별한 오류 검출 및 제어 없음. UDP를 사용하는 프로그램 쪽에서 오류제어 기능을 스스로 갖추어야 함

비연결성 : 논리적인 가상회선 연결이 필요없음(No Handshaking). 데이터그램 지향의 전송계층용 프로토콜

 

- 실시간 응용 및 멀티캐스팅 가능

실시간용 : 빠른 요청과 응답이 필요한 실시간 응용에 적합

1:多 : 여러 다수 지점에 전송 가능 (즉, Multicasting 가능)

무제한 : 전송속도 제한 없음

 

- 헤더가 단순함

- 헤더는 고정크기의 8 바이트(TCP는 20 바이트) 만 사용. 즉, 헤더 처리에 많은 시간과 노력을 요하지 않음

 

- UDP 위에서 동작되는 다양한 프로토콜들 또는 응용분야

- TFTP, SNMP, DHCP, NFS, DNS, RIP, NTP, RTP 등

 

- 데이터 전송 단위 : 메세지

- 한편, TCP의 데이터 전송 단위는 세그먼트라 함

 

- 최대 데이터 크기

- 65,507 바이트 = 65,535 바이트 - UDP 헤더 8 바이트 - IP 헤더 20 바이트

 

3.2 UDP 패킷 구조

(1) Sourse Port Number(16 bits)

- 데이터를 보내는 애플리케이션의 포트 번호

 

(2) Destination Port Number(16 bits)

- 데이터를 받을 애플리케이션의 포트 번호

 

(3) UDP Length(16 bits)

- UDP 헤더와 데이터의 총 길이

 

(4) UDP Checksum(16 bits)

- 데이터 오류 검사

 

목표
시리얼 통신(RS-232)에 대해 알아봄

 

1. 시리얼(Serial) 통신이란?

- 병렬 데이터를 직렬 방식으로 전환하여 한번에 한 비트씩 전송하는 컴퓨터 하드웨어

- 시리얼(Serial) 통신은 직렬 통신 이라는 뜻으로, 패러럴(Parallel)과 통신 : 병렬 통신과 반대

 

시리얼 통신 방식은 아래와 같은 종류가 있다.

- RS-232

- RS-422

- RS-485

- I2C

- SPI

- Ethernet

- USB

- SATA

- IEEE 1394

 

1-1. RS-232

- RS(Recommended Standard)-232 표준에 정의된 통신은 비동기 직렬 통신 방식

 

- 비동기식은 정보가 미리 정의된 시간 간격으로 전송되지 않음

- 데이터 전송은 언제든지 시작할 수 있으며 메시지가 시작되고 끝나는 시점을 감지하는 것은 수신기가 알 수 있음

 

통신 케이블 커넥터 규격은 DB25, DB9가 있는데 DB9는 보통 아래와 같이 쓰인다. 요즘에는 보통 USB to Serial을 사용한다.

 

(1) RS-232 비트 스트림

- 동기식 통신에서는 각 전송의 시작을 나타내는 클럭 또는 트리거 신호가 있어야 함

- 클럭 신호가 없는 비동기 통신은 가격이 저렴하고, 케이블에 필요한 선이 적음

- 비동기 통신의 단점은 송신기의 신호를 놓칠 수 있음

- 비동기 통신의 다른 단점은 유용한 정보의 시작과 끝을 나타내기 위해 데이터 스트림에 추가 비트가 필요

 

- 데이터 비트는 미리 정의된 주파수인 Baudrate로 전송되며 송신기와 수신기는 모두 동일한 비트 주파수를 사용하도록 프로그래밍되어야 함. 첫 번째 비트가 수신된 후, 수신기는 정해진 시간에 들어오는 데이터 비트를 인식함.

(2) START BIT

RS232는 비동기 통신 유형. 데이터 단어의 전송이 아무때나 시작될 수 있음. 이것은 수신자가 어떤 것이 첫 번째 수신 비트인지 알 수 없기 때문에, 각 데이터 워드는 Start bit로 시작

 

(3) DATA BIT

Start bit 바로 뒤에 Data bit가 전송. 최하위 비트는 항상 첫 번째로 전송되는 bit

 

(4) PARITY BIT

오류 감지를 위해 데이터 워드에 자동으로 추가 비트를 추가할 수 있음. 송신기는 전송된 정보에 따라 비트의 값을 계산. 수신기는 동일한 계산을 수행하고 실제 패리티 비트 값이 계산된 값과 일치하는지 확인

 

(5) STOP BIT

- Start bit는 0이어야 하고, Stop bit는 1이어야 함

- 수신기가 Stop bit가 있어야 할 때 표시 이외의 값을 감지하면 동기화 오류가 있음을 알 수 있음.

 

Stop bit는 서로 다른 길이를 가질 수 있음. 실제로는 실제 비트가 아니라 각 단어의 끝에 줄이 유휴 상태(표시 상태)여야 하는 최소 시간. 1, 1.5 또는 2bit 3가지 임. 1.5비트는 5비트 길이의 데이터 워드에서만 사용되고 2는 긴 워드에서만 사용됨. 모든 데이터 워드 크기에 대해 1비트의 Stop bit 길이를 사용할 수 있음

 

(6) RS-232 물리적 특성

정의된 최대 보드 속도는 20kbps. 최대 1.5Mbps의 속도가 허용

 
RS-232
RS-422
RS-485
결선 방식
최소 3wire
4 wire
2 wire or 4 Wire
장치 갯수
1:1
1:10
32:32
최대 거리
15m
1.2km
1.2km
최대 Data Rate
1Mbps
10Mbps
10Mbps 이상
Duplex Type
Full Duplex
Full Duplex
Half Duplex
Full Duplex(4 wire)
Half Duplex(2 wire)
Differential
no
Differential
Differential

 

1-2. RS-232 일반적 통신 설정

Baudrate
115200
Data bits
8
Parity
None
Stop bits
1
Flow Control
None

 

1-3. RS-232 회로도

 

 

- PSpice for TI(OrCAD 기반)

아날로그 회로의 기능 평가를 돕는 설계 및 시뮬레이션 환경(TI 소자들로 시뮬레이션 가능)

 

1. PSpice for TI 설치

- PSpice for TI 설치에 앞서 OrCAD가 설치 되어 있어야 한다.

- Download를 할 때 유효한 이메일 주소를 입력해야 하는데, 그 이메일 주소로 다운로드 주소와 설치에 필요한 인증 코드가 날아온다.

 

https://www.ti.com/tool/PSPICE-FOR-TI

 

PSPICE-FOR-TI Simulation tool | TI.com

open-in-new View all versions

www.ti.com

 

2. PSpice for TI 실행

 

3. File - New - Project 생성

OrCAD poject 파일이 열리지만, PSpice Component로만 simulation이 돌아가므로 회로도를 새로 그려야 한다.

 

4. File - New - Design 작성

아래와 같은 TR로 구성된 회로의 출력 전압을 확인 해본다.

 

위 회로에 있는 부품은 모두 PSpice component에서 지정해야 simulation을 돌릴 수 있다.

전원 소스 지정

- 빨간색 원 : vpulse

Place - PSpice Component - Source - Voltage Sources - Pulse

 

- 녹색 원 : vdc

Place - PSpice Component - Source - Voltage Sources - DC

 

- 파란색 원 : GND(0이 있는 것을 지정해야 한다)

Place - PSpice Component - PSpice Ground

 

5. Simulation을 위한 Profile 작성

 

6. Simulation 관찰을 위한 Makers 부착

 

7. PSpice - Run

 

- 마우스 오른쪽 - cursor on

마우스 왼쪽, 오른쪽 버튼으로 cursor 지정하여 아래와 같이 cursor로 데이터 확인 가능

 

1. Relay는 무엇인가?

- 전자석에 금속으로 된 스위치를 달고, 전기를 넣으면 스위치가 붙고, 전기를 끊으면 스위치가 떨어지게 만든것을 릴레이(계전기)라고 함

OMRON Miniature Power Relays

 

사용 이유

(1) 보호

- 모터를 구동할 때 역기전력이 발생할 수 있으며, 돌입 전류가 큰 전자부를 구동할때 순간적으로 peak 전류가 튈 수 있는데 이런 성분이 제어 회로로 들어오지 못하게 막는 용도

- 또는, 제어용 스위치가 용량이 작을때 릴레이를 제어함으로써 스위치 보호

 

(2) 용량 확장

- MCU에서 모터를 구동한다고 가정하자. 보통 MCU의 I/O 전류는 아래와 같다.

STM32F103 Current Characteristic

위와 같이 I/O 전류는 수십mA 이내이므로, I/O로 고용량의 전자부를 직접 제어할 수 없다.

 

- I/O 직접 제어하지 않고, TR을 하나 추가한다고 가정하자. NPN Transistor KTC3876의 IC 전류는 아래와 같다.

NPN Transistor(KTC3876) Maximum Ratings

MCU I/O보다는 전류 용량이 커졌지만, 여전히 고용량의 모터나, 전압 레벨이 다른(AC 전원을 사용하는) 전자부를 구동하기 위해서는 용량이 부족하기 때문에 Relay를 사용한다.

 

2. SSR(Solid State Relay ; 무접점 릴레이)

OMRON Solid State Relay

- 1번 Relay와 달리 전자석 대신 TR이나 FET를 사용하여 내부에 기계 부품이 없음

- 때문에 기계적 마모, 고장이 없고 소음이 없고, 스파크 일어나지 않고, 스위칭 속도가 빠르고, 내식성, 내진동성이 좋음

- 기본 누설 전류가 있으므로 주

 

보통 MCU의 IO level은 3.3V이다. 3.3V 이상의 입력이 들어가야 동작하는 Relay나, SSR은 어떻게 회로를 꾸며야 할까?

AC WATER PUMP 제어를 위한 회로를 예로 설명하겠다.

 

3-1. SSR 제어 회로1

MCU 출력으로 PhotoCoupler를 On-Off

 

 

Relay 제어(Source 구동)

- PhotoCoupler를 사용하여 회로 분리

① TR의 IB대비 Ic에 흐를수 있는 전류(hFE)를 최저 20배라고 놓고 설계

② PhotoCoupler의 증폭률은 50%로 설계

③ 위 회로는 PhotoCoupler의 출력에 SSR의 입력 전류가 그대로 흐르게 된다.

PhotoCoupler의 출력의 Ic의 maximum 값은 50mA로, SSR의 입력 전류가 이 값을 넘어가면 회로가 파손 될수 있고, 파손되지 않더라도 PhotoCoupler에 열이 많이 날 수 있다.

대표사진 삭제

PhotoCoupler(PC357NJ0000F) Maximum Ratings


CTR (Current Transfer Ratio)

  • 사용 소자 : 포토커플러(optocoupler)에서 사용
  • 정의 : LED의 입력 전류(IF​)에 대해 포토트랜지스터에서 출력되는 전류(IC​)의 비율
 
CTR = IC / ​IF ​​× 100 (%)
  • 설명 :

- CTR은 LED에서 발생한 광 신호가 포토트랜지스터에 얼마나 효과적으로 전달되는지 표시

- CTR은 퍼센트(%)로 표현되며, 일반적으로 50%에서 200% 사이의 값

 

hFE (DC Current Gain)

  • 사용 소자 : BJT(바이폴라 접합 트랜지스터)에서 사용
  • 정의 : 베이스 전류(IB​)에 대해 컬렉터 전류(IC​)의 비율
hFE​ = IC / ​IB​​
  • 설명 :

- hFE는 트랜지스터의 증폭 능력

- hFE는 특정 온도와 전류에서 정해지며, 일반적으로 데이터시트에 제공

- 트랜지스터의 작동 영역에 따라 hFE 값이 달라질 수 있음


 

3-2. SSR 제어 회로2

MCU 출력으로 PhotoCoupler를 On-Off & 출력단에 Tr 추가

 

Relay 제어(Sink 구동)

- PhotoCoupler를 사용하여 회로 분리

① TR의 IB대비 Ic에 흐를수 있는 전류(hFE)를 최저 20배라고 놓고 설계

② PhotoCoupler의 증폭률은 50%로 설계

③ 위 회로는 3-1의 회로와 달리 TR을 하나 추가해서 SSR의 입력 전류가 그대로 흐르지 않게 했다.

PhotoCoupler의 출력의 Ic의 maximum 값은 50mA이지만, TR Ic mamimum 값은 600mA로, 더 많은 마진을 가질 수 있다.

PNP Transistor(KN2907) Maximum Ratings

 

4. SSR 사용시 주의사항

- DC-DC, DC-AC로 종류가 나뉘므로 용도에 맞게 선정

- 일정 이상의 전류(Trigger Current)가 흘러야 Turn on 됨

- 누설 전류가 생각보다 큼(Leakage Current) ; LED는 Turn off 되어도 불이 들어올 수 있음

SSR(SSR-10DA) Specification

 

1. Push-Pull

- 0 아니면 1의 상태를 출력하는 회로 구성

 

- 입력이 0이면 OUTPUT은 1 : 위의 PNP TR(N-Channel)이 켜져서 VCC와 연결

- Push 상태일 때 VCC 전압을 IC 외부로 전류를 밀어냄

 

- 입력이 1이면 OUTPUT은 0 : 아래 NPN TR(P-Channel)이 켜져서 GND와 연결

- Pull 상태일 때 IC 내부의 GND와 연결되어 IC 외부의 핀으로부터 전류를 끌어당김

BJT MOSFET

 


2. Open-Drain(Open-Collector)

- Push-Pull의 PNP(P-Channel)을 제거

- BJT의 경우 Open-Collector, MOSFET의 경우 Open-Drain이라고 부름

(Collector는 BJT의 Collector, Drain은 MOSFET의 Drain 핀을 의미. Open-Drain과 Open-Collector는 동일한 동작 원리를 가지는 구성을 BJT로 만들었는지, MOSFET로 만들었는지의 차이. Push-Pull은 BJT나 MOSFET구분 없이 부름)

 

- 입력이 0이면 OUTPUT은 0 : 아래 NPN TR(P-Channel)이 켜져서 GND와 연결

- 입력이 1이면 출력은 Open(floating)

Open-Collector Open-Drain

 

 

- 출력이 나오려면 pull-up 저항을 달아야 함

Open-Collector Open-Drain

그러면 왜 굳이 이렇게 사용할까?

 

(1) Open-Drain 사용하는 이유 1

여러개의 장치를 한개의 선으로 양방향 통신을 해야 할때

 

- 여러개의 장치가 한개의 선을 제어하려고 할때, Push-Pull의 경우 어떤 장치는 High, 어떤 장치는 Low이면 Short로 파손 될 수 있음

- 여러개의 장치가 한개의 선을 제어하려고 할때, Open-Drain의 경우, 한개라도 드라이브 하면 Low가 되며 다른 장치에 영향을 주지 않음

 

ex) 아래와 같이 I2C처럼 여러개의 Port를 묶어 사용할때 Open-Drain이 필요함

여러개의 I2C 소자중 한개라도 SCL, SDA 버스를 드라이브 하면 Low가 됨

I2C 연결 및 포트 구조(이미지 출처 : UM10204, Fig.32 발췌)

 

(2) Open-Drain 사용하는 이유 2

연결되어 있는 장치의 레벨이 다를때(Level shifter 용도)

 

ex) MCU가 3.3V이고 연결되는 IC가 5V 출력일 경우, MCU를 Open-Drain 설정하고 pull-up 저항 달아서 사용(VDD 3.3V라고 하더라도, 5V tolelance 지원 되는 MCU가 있긴함)

 

참고 문서 : MAX7325, MAXIM

UM10204, NXP

 

목표
Flyback diode의 역할 및 사용예

 

Flyback(Freewheeling) diode, 환류 다이오드(이하 Flyback diode)

- 인덕터에 흐르는 전류가 단방향일 때, 인덕터 또는 인덕터를 포함한 부하와 병렬로 접속되어 있는 다이오드

- 출력이 직류이고 유도성 부하를 가진 반도체 전력 회로의 경우, 전원으로부터 에너지 공급이 차단되었을 때 인덕터에 저장되어 있는 에너지에 의한 인덕터 전류가 연속적으로 흐를 수 있도록 하는 다이오드

- 전류를 차단했음에도, 인덕터에 저장된 전류가 회로에 영향을 줄수 있으므로, 인덕터를 사용하는 곳에는 Flyback diode를 붙여야 함

- 아래의 예시에 있는 다이오드는 모두 Flyback diode임

 

1. Step-Down Switching Regulator

LM2575, Onsemi

2. Relay

Relay

 

3. FULL BRIDGE(H-Bridge) DRIVER

L6201, ST

 

STA7133MC, Sanken

1, 3번과 같은 경우는 IC 내장이거나 권장 회로가 있기 때문에 보고 따라하면 되는데, 2번 같은 경우에는 놓치기 쉽다. 처음에는 별 문제 없는 것처럼 보이지만, 시간이 지난후에 Relay가 아닌 주변 회로가 망가지는등(SMPS, 레귤레이터 파손 등) 문제가 발생할 가능성이 높다.

Relay 회로 구성이 문제지만, 애꿎은 주변 회로만 들쑤셔 봐야 해결은 안되고

 

MCU
STM32F103(ST)
목표
Crystal의 적절한 Load capacitance 선정

 

Crystal Load Capacitance?

- MCU를 포함한 전자 회로 설계시 Crystal을 뺄수 없다. 내장 발진기도 있으나 정밀도를 위해 외부 발진기를 다는데, 이때 옆에 붙이는 Capacitor가 Load Capacitor.

- 적당히, 다른 사람 회로도를 보고 Capacitor 붙이지 말고 아래 선정 방법을 참고

 

아래 사진은 STM32F103VCT의 datasheet

HSE 4-16 MHz oscillator characteristics
 
Typical application with an 8 MHz crystal

 

Load Capacitance 공식

CL = CL1 x CL2 / (CL1 + CL2) + Cstray

CL : Load Capacitance of Crystal

CL1 : X1 Input Capacitance(우리가 알아내야 하는 값)

CL2 : X2 Input "

Cstray : 핀 캐패시턴스 및 보드 또는 트레이스 PCB 관련 캐패시턴스

 

CL1 = CL2 라고 가정하면,

CL = CL1 x CL1 / (CL1 + CL1) + Cstray

CL = CL1^2 / 2CL1 + Cstray

CL = CL1 / 2 + Cstray

CL - Cstray = CL1 / 2

2(CL - Cstray) = CL1

CL1 = 2(CL - Cstray)

 

예를 들어 Load Capacitance를 구해 보자.

다음의 Crystal을 사용할 때 Load Capacitance는?

써니전자 Crystal, SX-8

CL = 18pF(보통 5 ~ 25 pF)

Cstray = 5pF으로 가정

(PCB 설계가 간단하고 트레이스가 짧다면 3pF로 가정, 트레이스가 길거나 복잡하다면 4~5pF로 가정)

CL1 = 2(CL - Cstray)

CL1 = 2(18 - 5)

CL1 = 26pF

 

CL1 = CL2 =26pF

 

LSE의 Load capacitor 구하는 방법은 똑같으나, Crystal의 Load capacitance 값이 다르고, 허용 Load capacitance 값이 다르므로 datasheet를 읽어 볼 것.

 

 

EasyEDA?

  • 무료 온라인 PCB 설계 툴
  • 회로도 & PCB 설계, 시뮬레이션 가능
  • Gerber 파일 생성 및 뷰어 제공
  • JLCPCB와 연동되어 PCB 제작 가능
  • Windows, macOS, Linux, 웹 브라우저 지원

https://easyeda.com/

 

EasyEDA - Online PCB design & circuit simulator

Flexible Work Team Work Advanced Library Management Layout Services Flexible Work Cloud-Based New interface, web-based tool, high efficiency, no need to download. AWS ensures data security. Desktop Client EasyEDA desktop client has offline and semi-offline

easyeda.com


EasyEDA 주요 기능

1. 회로도 설계 : 부품 라이브러리 제공, 자동 배선 가능

2. PCB 설계 : 2~8층 PCB 가능, DRC(설계 규칙 검사) 지원

3. Gerber Viewer : PCB 제조 전 Gerber 파일 확인 가능

4. SPICE 시뮬레이션 : 아날로그 & 디지털 회로 시뮬레이션

5. JLCPCB 연동 : PCB 제작 & 부품 조립(PCBA) 서비스 지원

 

EasyEDA에는 StandardPro 두 가지 버전이 있으며, 주요 차이점은 기능과 사용 목적임

 

1. Standard (기본 버전)

  • 웹 기반으로 실행되며, 다운로드 없이 브라우저에서 사용 가능
  • 쉬운 UI로 초보자 친화적
  • 부품 라이브러리가 풍부하고, JLCPCB와 연동 가능
  • 무료 사용 가능(일부 기능은 제한)
  • 팀 협업 기능 제한적
  • 복잡한 PCB 설계에 적합하지 않음 (고급 기능 부족)

 

2. Pro (전문가 버전)

  • 더 강력한 PCB 설계 기능 제공 (고급 DRC, 더 정밀한 배선, BGA Fanout 등)
  • 로컬 및 클라우드 저장 지원
  • 팀 협업 및 버전 관리 기능 강화
  • 더 정교한 부품 라이브러리 및 BOM 관리
  • 대규모 프로젝트나 전문적인 PCB 설계에 적합
  • 유료 플랜(무료 사용 가능하지만 기능 제한 있음)

 

  • 초보자이거나 간단한 PCB 설계를 한다면 → Standard
  • 복잡한 회로 설계, 팀 협업, 고급 기능이 필요하다면 → Pro

 

  • New Project

 

'전자 회로 설계 > PCB CAD' 카테고리의 다른 글

PADS Layout - Artwork 준비  (0) 2025.03.15
OrCAD - Control Panel(제어창) 없어 졌을때  (0) 2025.03.15
OrCAD - BOM(또는 PL) 추출  (0) 2025.03.15
PADS Layout - 3D  (0) 2025.03.15
PADS Layout - Pattern PDF 파일 출력  (0) 2025.03.15

 

PCB 설계 시 PADS에서 Artwork을 위한 준비 순서는 다음과 같다.

 

1. 단위 설정 (Units Setup)

2. 레이어 설정 (Layer Setup)

3. 디스플레이 색상 설정 (Display Color Setup)

4. 디자인 규칙 설정 (Design Rules Setup)

5. Pad 설정 (Pad Stack Setup)

6. Grid 설정 (Grid Setup)

7. CAM 설정(CAM Setup)


1. 단위 설정 (Units Setup)

  • 디자인할 때 사용할 단위를 설정. Mils(인치) 또는 Metric(미터) 중 선택
  • Tools → Options → Genaral Tab → 우측 하단 Design units에서 단위를 설정

(inch 쓰는 사람은 엔지니어로써의 자격이 없음)

 

2. 레이어 설정 (Layer Setup)

  • PCB의 각 레이어를 정의하고 설정
  • Setup → Layer Definition을 선택하여 레이어 구성을 설정
  • 각 레이어의 종류(예: 2층, 3층, Signal, Power, Ground 등)와 두께를 설정

 

3. 디스플레이 색상 설정 (Display Color Setup)

  • 레이아웃 작업 중 PCB 요소들을 구분하기 쉽도록 색상을 설정
  • Setup → Diaplay Colors 에서 각 레이어의 색상과 다른 항목들의 색상을 설정

 

4. 디자인 규칙 설정 (Design Rules Setup)

  • Setup → Design Rules에서 패드 크기, 트랙 폭, 간격 등 디자인 규칙을 설정
 

5. Pad 설정 (Pad Stack Setup)

  • 패드의 크기, 형상, 드릴 사이즈, 비아, 패드 레이어 등 설정
  • Setup → Pad Stacks에서 설정

 

6. Grid 설정 (Grid Setup)

  • 정확한 위치 조정을 위해 View → Grid Setup에서 그리드를 설정
  • 그리드의 단위는 Design units을 따라가기 때문에 1번이 선행 되어야 함

 

7. CAM 설정(CAM Setup)

  • 어떤 레이어를 어떤 방식으로 제작 데이터 생성 또는 출력할지 설정. 이를 통해 실제 PCB 제조용 데이터가 생성
  • File → CAM 에서 설정

이 순서대로 설정 하면, PCB 디자인을 진행하고 Artwor를 생성할 준비 완료.

 

'전자 회로 설계 > PCB CAD' 카테고리의 다른 글

EasyEDA  (0) 2025.03.15
OrCAD - Control Panel(제어창) 없어 졌을때  (0) 2025.03.15
OrCAD - BOM(또는 PL) 추출  (0) 2025.03.15
PADS Layout - 3D  (0) 2025.03.15
PADS Layout - Pattern PDF 파일 출력  (0) 2025.03.15

+ Recent posts