__________

Designing the Future with Circuits

반도체 회로설계 취준기

자습시간 15

열평형 상태에서의 pn 접합과 SCR(Space Charge Region, Depletion Region)

열평형 상태의 pn junction PN Junction(PN 접합)은 p형 반도체와 n형 반도체를 접합하여 만든 형태로, 열적 평형 상태에서 다음과 같은 특징을 갖는다.1. 항상 안정된 상태(시간에 따른 변화 x)2. 가장 낮은 에너지 상태3. 전압, 빛, 전기장, 자기장, 온도변화 등 외부 에너지원이 없는 상태4. 소자의 경우 전류 흐름이 없는 상태 p형과 n형의 접합부를 금속접합(Metallurgical Juction)이라 하며, 이 부분을 기준으로 p영역과 n영역이 구분된다.  p형 반도체와 n형 반도체가 접촉하게 되면 먼저 Step Juction이 형성되는데, 이 때 p형 반도체의 캐리어 농도는 Na, n형 반도체 캐리어 농도는 Nd로 계단식으로 나타나게 된다. 접촉 직후 Carrier가 확산에..

Buck Power Stage

이번 포스팅에서는 Texas Instruments에서 발행한 Buck Power Stage에 대한 Application Report의 내용을 정리한다.    Buck Converter은 입력전압 V_i보다 출력전압 V_o를 낮추는 강압형 컨버터로, Step-Down Converter라고도 칭한다.   Buck Converter의 회로는 다음과 같이 나타난다.  여기서 Q1은 NMOS, CR1은 다이오드(catch diode or freewheeling diode), L과 C는 각각 인덕터와 캐패시터를 나타낸다. Freewheeling 다이오드 혹은 Catch 다이오드란 전압 스파크나 유도성 Flyback 전압으로 인한 시스템 손상을 막기 위해 사용되는 다이오드이다. 이 다이오드는 인덕터에 전류가 흐를 수..

UART(Universal Asynchronous Receiver/Transmitter)

UART란?UART(Universal Asynchronous Receiver/Transmitter, 범용 비동기화 송수신기)는 데이터 버스로부터 병렬로 받은 데이터를 직렬 방식으로 전환하여 다른 UART로 전송하는 컴퓨터 하드웨어의 한 종류이다.UART로부터 직렬 데이터를 수신한 다른 UART는 이를 병렬 방식으로 전환하여 데이터 버스에 전송한다.통신에 사용되는 데이터는 메모리나 레지스터에 저장되어 있으며, 이를 차례데로 읽어 직렬로 통신한다. 기본 단위는 최대 8비트이다.UART 통신의 특징 UART는 비동기식(Asynchronous) 통신 방식으로 RX와 TX 각각의 clock 신호를 사용한다. Bit 구성 Start Bit: 전송 데이터 패킷의 시작 부분을 알린다. 이 신호를 통해 RX에서 데이터 ..

UART 설계(3) - UART RX 설계 / 최종 설계 완료

FSM 순서idle: din이 1로 유지될 때 대기상태. din이 0이 되면 enable 신호에 맞춰 load로 상태 변경load: 8비트의 데이터를 받은 뒤 parity를 읽고, parity check로 상태 변경parity check: 저장한 parity bit와 data bit를 이용하여 패리티 검사transmit: 패리티 검사 이후 병렬 데이터를 dout으로 전송다음과 같이 코드를 작성했다.`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date: 2024/07/28 13:46:57// Design..

UART 설계(2) - UART TX 설계

UART TX 모듈 설계 신호 개요DIN [7:0]: 데이터 버스로부터 받는 8비트의 parallel 데이터묶음Send: 데이터 전송의 시작을 명령하는 신호Dout: RX로 전달되는 serial 데이터Busy: UART TX가 동작중임을 나타내는 신호ParitySelect: Odd Parity를 사용할지 Even Parity를 사용할지 선택하는 신호작동 방식8비트의 parallel 데이터를 버스로부터 수신한다.send 신호가 들어오면 stop bit - parity bit - data - start bit 순으로 구성된 데이터 11비트를 dout으로 전송한다.[ uart_tx.v ]더보기`timescale 1ns / 1ps//////////////////////////////////////////////..

UART 설계(1) - Baud Rate Generator 설계

Baud Rate을 생성하고, Over Sampling을 하기 위한 코드 작성 (baud_rate_gen.v)oversampling을 위해 bit count를 진행해야 한다.첫 신호에서 start bit가 들어오면 bit_cnt_std 8번째에 샘플링을 시작하고, 그 이후부터는 16번째에 샘플링을 하면 data bit의 중앙에서 데이터를 샘플링할 수 있다, 1개의 baud rate 주기 안에 들어가는 clock의 개수를 구하기 위해서 baud rate 주기 / clk 주기 = clk freq / baud rate freq을 계산한다.위에서 계산한 값을 16으로 나누어 그 값을 bit count standard로 잡으면 이 기준의 16배가 baud rate의 주기가 된다.bit count standard만..

Verilog 자료형

논리값0: 논리 '0', 거짓(false)1: 논리 '1', 참(true)x: unknown 상태(논리 '0'과 논리 '1'의 충돌이 발생하여 값을 확정할 수 없는 경우)z: 구동자가 없는 High-Impedence 상태 net 자료형net 자료형: 논리 게이트나 모듈 등 하드웨어 요소 사이의 물리적 연결을 나타내는 자료형net는 값을 저장하지 않으며, 연속 할당문 등의 구동자에 의해 net의 값을 연속적으로 유지한다.net에 구동자가 없으면 상태는 z가 된다.주로 사용되는 net 자료형으로는 wire 자료형이 있다. wire 자료형은 단순 연결을 위해 사용되고, 논리적 동작 및 기능을 갖지 않는다. 자료형이 선언되지 않은 경우, net 자료형의 기본값으로 1비트의 wire가 사용된다.자료형 선언 방법:..

Verilog HDL 모델링 방법 개요

Verilog HDL 구문의 구성회로 합성용 구문: 회로 합성 툴에서 게이트 수준 합성을 지원하는 구문시뮬레이션용 구문: 시뮬레이션을 위한 테스트벤치의 작성에 사용되며, 회로 합성이 지원되지 않는다.라이브러리 설계용 구문: 회로 합성에 적용되는 셀 라이브러리 설계에 사용되며, 셀의 기능, 지연, 핀 정보 등을 정의하는 데 사용된다.Verilog HDL 모듈모듈: Verilog HDL의 기본 단위Verilog HDL의 모듈 구성module module_name (port_list); //머리부//선언부port 선언reg 선언wire 선언parameter 선언//몸체부하위모듈 인스턴스게이트 프리미티브always 문initial 문assign 문function, task 정의function, task 호출en..

Verilog HDL의 어휘 토큰과 규칙

1. 여백빈칸, 탭 등을 포함하는 어휘 토큰어휘 토큰의 분리를 위해서 사용되는 경우 이외에는 무시된다.2. 주석단일 라인 주석문은 //로 시작되어 줄바꿈으로 끝난다.블록 주석문은 /*로 시작되어 */로 끝나며, 그 사이의 모든 내용이 주석문으로 처리된다.3. Verilog HDL의 수 표현 방식[size_constant]'base_format [size_constant]상수 값의 비트 수를 나타낸다.0이 아닌 unsigned 10진수로 사용한다.생략 시 unsized 수가 되며 32비트로 표현된다.'base_format밑수(base) 지정 문자로 2진수는 b/B, 8진수는 o/O, 10진수는 d/D, 16진수는 h/H를 지정하며, 대소문자 구분은 없다,signed를 나타내기 위해 s/S가 사용될 수 있다..

Verilog HDL 개요 - HDL 기반 시스템 반도체 설계 과정

HDL 기반 시스템 반도체 설계 과정1. 설계사양 결정회로의 기능, 성능 목표치, 동작 주파수, 칩 면적 및 전력소모 목표치, 테스트 커버리지, 설계기간, NRE(Non-Recurring Enginerring) 비용, 칩 단가 등의 설계 목표를 결정한다.설계될 시스템의 분할, 적용될 알고리즘 및 아키텍쳐, 입출력 신호의 이름 및 비트 폭, 데이터 입출력 및 제어신호의 타이밍 관계, 리셋 및 클록신호 정의 등이 포함된다.2. 상위수준 모델링 및 검증상세설계 이전에 설계사양을 확인하도록 시스템의 전체 기능을 모델링, 검증하는 과정3. RTL 설계와 테스트벤치 작성전체 시스템 구조와 분할 -> 상위수준 모델링 및 검증 -> 상세설계 진행 - 상세설계는 합성 가능한 Verilog HDL 구문을 이용하여 RTL ..