전체 글 720

UFS

UFS (Universal Flash Storage)란?UFS는 스마트폰, 태블릿, 자동차용 전자기기 등에 사용되는 고속 비휘발성 저장장치 인터페이스입니다. 쉽게 말하면 스마트폰의 내장 저장공간을 구성하는 NAND Flash 메모리를 CPU·SoC가 빠르고 효율적으로 사용하도록 해주는 기술입니다.UFS를 이해하려면 NAND Flash, eMMC, DRAM, PCIe NVMe SSD의 차이를 함께 살펴보면 좋습니다. 특히 반도체 설계 관점에서는 NAND Flash 자체의 특성뿐 아니라 컨트롤러, 고속 SerDes PHY, 프로토콜, 전력 관리가 결합된 시스템이라는 점이 중요합니다. 1. UFS는 시스템에서 어디에 위치할까? 각 구성요소의 역할은 다음과 같습니다.NAND Flash: 사진, 동영상, 앱, 운..

MIPI M-PHY

◈ MIPI M-PHY MIPI M-PHY는 모바일, 자동차 및 PC 기기에서 플래시 메모리 스토리지, 프로세서 간 통신, 엣지 AI 등을 지원하기 위해 MIPI 얼라이언스(MIPI Alliance)가 개발한 고속, 고성능 물리 계층(PHY) 인터페이스 사양입니다. 1. MIPI MPHY 주요 특징 • 핵심 역할: MIPI UniPro 및 JEDEC UFS(Universal Flash Storage)를 비롯하여 M-PCIe, DigRF와 같은 표준의 물리 계층 역할을 수행합니다. • M-PHY는 전기 신호, 고속 기어, 레인 및 전송 방식의 기본 동작을 정의하며, 저장장치 명령이나 파일 시스템을 정하는 응용 규격은 아닙니다. • 레인 확장성: 서브 링크(sub-link)당 1~4개의 독..

I²S IP 설계 예제

I²S IP 설계 예제 — RTL부터 SoC Integration까지 I²S(Inter-IC Sound)는 디지털 오디오 데이터를 전송하기 위한 직렬 인터페이스입니다. I²C와 이름은 비슷하지만 용도가 다릅니다. I²C가 주변장치의 레지스터를 제어하는 데 주로 쓰인다면, I²S는 ADC, DAC, Audio Codec, DSP 사이에서 PCM 오디오 샘플을 전달하는 데 사용됩니다. 실제 VLSI IP 설계를 이해할 수 있도록 I²S Transmitter IP를 SystemVerilog RTL로 구현하는 예제를 살펴보겠습니다. 1. 설계 목표와 IP 구조 이번 예제는 SoC 내부의 오디오 데이터를 외부 DAC 또는 Audio Codec으로 전달하는 I²S Master Transmitter입니다...

Semiconductor 2026.10.23

I²C Digital IP Block

I2C VLSI Block은 SoC 내부의 CPU, MCU, 센서 인터페이스, PMIC 등과 연결되어 I²C(Inter-Integrated Circuit) 프로토콜로 데이터를 송수신하는 디지털 회로 블록입니다. VLSI 설계 관점에서는 단순한 통신 프로토콜 구현을 넘어, Digital RTL 설계, FSM, Timing, Clock Synchronization, CDC, Low-Power 설계 및 검증을 학습하기 좋은 IP입니다. 1.◈ Yocto Project 1. I²C VLSI Block의 전체 구조 일반적인 I²C Controller IP는 다음과 같은 블록으로 구성됩니다. 이 구조는 대표적인 I²C Master Controller를 기준으로 한 개념도입니다. Slave Contro..

Semiconductor 2026.10.23

[Cell-Based IC Design Flow] 5-5. PnR Route ChipFinish

5-5. PnR(Place and Route)의 라우팅(Route)과 칩 마무리(Chip Finish) 과정 1. 라우팅(Route) 과정 라우팅의 목적: CTS(Clock Tree Synthesis) 이후, 시그널 포트 간의 연결을 수행합니다. • route_auto 주요 단계: • 글로벌 라우팅(Global Route): 배선 가능 여부를 확인하는 단계로, 이때는 메탈의 두께가 없는 'Zero-width'로 간주합니다. • 트랙 어사인(Track Assign): 최소 배선폭을 적용해 실제 메탈을 배치합니다. • 디테일 라우팅(Detail Route): DRC(Design Rule Check) 오류를 수정하며 실제 배선을 완료합니다. • route_op..

[Cell-Based IC Design Flow] 5-4. PnR Post placement CTS

5-4. PnR(Place and Route) 이후의 CTS(Clock Tree Synthesis) 과정 1. 레이아웃 및 커스텀 라우팅 • 스크립트 외에도 툴의 메뉴(Shape, Route)를 사용하여 수동으로 메탈 라인을 그리거나 수정하는 방법을 설명합니다. • 잘못 배치된 메탈 라인이나 링, 표준 셀 레일 등을 Remove Route 기능을 통해 효율적으로 삭제하는 방법을 안내합니다. 2. 미싱 비아(Missing Via) 문제 해결 • 설계 과정에서 흔히 발생하는 비아 연결 누락(Missing Via) 문제를 에러 브라우저로 찾아내는 법과 이를 자동(Auto) 또는 수동으로 수정하는 절차를 다룹니다. • 포트 사이즈 불일치 등의 원인으로 인해 발생할 수 있는 이슈와 설계..

[Cell-Based IC Design Flow] 5-3. PnR PowerPlan

1. 파워 정의 및 계산 방식 • 파워의 구분: 툴은 파워를 동작하지 않을 때의 스태틱 파워(누설 전류)와 동작 중 발생하는 다이나믹 파워로 나누어 관리합니다. • 전압과 딜레이: 서플라이 전압(VDD)을 낮추면 전력 소모는 줄어들지만, 셀의 딜레이가 증가하는 트레이드오프 관계가 있음을 설명합니다. 2. 파워 플랜 설계 및 구현 • 전원 공급 구조: 칩 최외곽의 파워 링(Ring)에서 시작하여 메탈 레일을 통해 표준 셀(Standard Cell)까지 전원을 전달합니다. • 파워 메시(Power Mesh): IR Drop(전압 강하) 문제를 해결하기 위해 그물 모양의 메시를 추가하여 전류 공급 통로를 확보합니다. 위쪽 상위 메탈에서 아래쪽 M1(셀 레일)로 전원을 내려주는 계층적 구..

[Cell-Based IC Design Flow] 5-2. PnR Pre Placement

PnR(Place and Route) 과정 중 Pre-Placement 단계에 대해 다루고 있습니다. 주요 내용은 다음과 같습니다. 1. 플레이스먼트(Placement) 개요 • 정의: 디자인 컴파일러를 통해 변환된 스탠다드 셀(Standard Cell)과 메모리 IP를 코어 영역에 배치하는 과정입니다. • 도구의 역할: 툴이 자동으로 셀을 배치하지만, 사용자는 명령어와 옵션을 통해 최적의 결과를 유도하고 배치 블로케이지(Placement Blockage)를 설정해야 합니다. 2. 핵심 고려 사항 • 배치 블로케이지: 특정 영역에 셀이 배치되지 않도록 제한하여 메모리나 IP 근처의 쇼트(Short)를 방지하고 라우팅 효율을 높입니다. • 타이밍 및 혼잡도(Congestion) ..

[Cell-Based IC Design Flow] 5-1. PnR Floorplan Lab

PnR(Place and Route) Floorplan 실습 과정 1. 초기 디자인 불러오기 및 뷰 설정 • 작업 환경: `PNR/simple_lab/PNR` 폴더에서 실습이 진행됩니다. • 디자인 로드: `Open Library`와 `Open Block`을 통해 기존에 저장된 디자인을 불러오며, 디자인 단계별로 이름을 지정하여 저장하는 것이 중요합니다. • 디자인 확인: `Zoom(Z)` 기능을 사용하여 스탠다드 셀(핑크색)과 메모리 블록을 확인합니다. `F8` 키로 뷰를 초기화하거나, 레이어 탭과 라벨 탭을 조절하여 VDD, VSS, 포트 이름 등을 시각적으로 확인하는 방법을 설명합니다. 2. 플로어플랜 설정 • 테스크 어시스턴트(F4): 디자인 플래닝을 순차적으로 진행하기..

[Cell-Based IC Design Flow] 4-5. PnR Floorplan

4-5. PnR Floorplan 및 타이밍 설계 Floorplan(플로어플랜) 단계와 타이밍(Timing) 고려 사항을 상세히 다룹니다. 1. 플로어플랜(Floorplan)의 주요 개념 • 목적: 칩 사이즈, 형태, I/O 핀 위치를 정의하여 설계 요구사항을 만족하는지 확인하는 과정입니다. • I/O 패드 관리: 칩 외부와 통신하는 I/O 패드는 고정된 위치에 배치하며, 패드 간 빈 공간은 I/O 필러(Filler)로 채워 전원(VDD/VSS)을 연결하고 ESD 보호 기능을 유지해야 합니다. • Core Utilization: 코어 영역 대비 스탠다드 셀 및 메모리가 차지하는 비율입니다. 100%를 초과하면 안 되며, 보통 60~70% 정도를 권장합니다. 너무 낮으면 면적 낭비 및 안테..