총 9개
-
FPGA Board를 이용한 FSM 회로의 구현2025.12.201. JK 플립플롭 JK 플립플롭은 RS래치의 금지된 입력(RS='11')을 토글 기능으로 변환하여 동작하는 플립플롭이다. RS 플립플롭에 토글 기능을 결합한 형태로, 입력 JK가 00, 01, 10일 때는 RS 플립플롭과 동일하게 작동하며, JK=11일 때 출력 Q가 반전된다. 이는 디지털 회로 설계에서 상태 저장 및 제어 기능을 수행하는 기본 소자이다. 2. 카운터(Counter) 카운터는 특정 이벤트 발생 횟수를 저장하고 클럭 신호와 연동하여 작동하는 순차 회로이다. 업 카운터는 클럭의 상승 에지마다 개수가 증가하며, 임의의 ...2025.12.20
-
Moore & Mealy Machine 유한상태기계 설계 및 검증2025.12.201. 유한상태기계(FSM) FSM(Finite State Machine)은 디지털 설계의 핵심 개념으로, 입력 값과 기계의 현재 상태에 따라 서로 다른 고유 상태와 그 사이의 전이를 저장한다. FSM은 무어 머신과 멜리 머신의 두 가지 유형으로 구성되며, 상태 변수와 입력에 따라 출력이 결정되는 방식이 다르다. 디지털 시스템 설계에서 광범위하게 활용되는 기본 모델이다. 2. 무어 머신(Moore Machine) 무어 머신은 현재의 출력 값이 현재 상태에 의해서만 결정되는 유한 상태 기계이다. 입력은 다음 상태에 영향을 미치지만, 현...2025.12.20
-
디지털시스템설계 이론과제22025.05.091. 디지털 시스템 설계 이 과제는 디지털 시스템 설계에 대한 내용을 다루고 있습니다. 과제에서는 0부터 999까지 카운트하는 카운터 모듈과 11011 패턴을 검출하는 유한상태기계(FSM) 모듈을 설계하고 검증하는 내용이 포함되어 있습니다. 카운터 모듈은 동기화된 리셋 입력을 가지며, 999에서 다음 값으로 넘어갈 때 0으로 초기화됩니다. FSM 모듈은 중첩된 패턴 검출을 허용하는 Mealy 모델로 설계되었습니다. 과제를 통해 디지털 시스템 설계 및 검증 기법을 익힐 수 있습니다. 1. 디지털 시스템 설계 디지털 시스템 설계는 현대...2025.05.09
-
Verilog를 이용한 Sequential Logic 설계2025.12.201. FPGA (Field Programmable Gate Array) FPGA는 설계 가능한 논리 소자와 프로그래밍 가능한 내부 회로를 포함한 반도체 소자입니다. AND, OR, XOR, NOT 등의 기본 논리 게이트 기능을 복제하여 프로그래밍할 수 있으며, 플립플롭이나 메모리 블록 등의 메모리 요소를 포함하고 있어 디지털 IC 설계 및 검증에 활용됩니다. 2. Verilog (Hardware Description Language) IEEE 1364로 표준화된 Verilog는 전자 회로 및 시스템 설계에 사용되는 하드웨어 기술 언...2025.12.20
-
FPGA 기반 HDMI 인터페이스 구현 및 LCD 디스플레이 제어2025.12.121. HDMI 인터페이스 및 신호 처리 HDMI는 고해상도 영상과 오디오 데이터를 압축 없이 전송하는 디지털 인터페이스입니다. HDMI 포트는 19개의 핀으로 구성되며, 핀 1-12는 TMDS 데이터(RGB 및 클록), 핀 13-14는 CEC와 HEAC, 핀 15-16은 DDC 데이터, 핀 17-18은 전원, 핀 19는 핫플러그 감지를 담당합니다. HDMI 인터페이스는 송신부, 전송 채널, 수신부로 구성되며, PYNQ-Z2 보드는 HDMI 소스 역할을 하고 LCD는 싱크 역할을 합니다. 2. TMDS 인코더 및 직렬화 TMDS는 8...2025.12.12
-
Verilog를 이용한 Sequential Logic 설계실험2025.12.141. Verilog 언어 IEEE 1364로 표준화된 Verilog는 전자 회로 및 시스템 설계에 사용되는 하드웨어 기술 언어입니다. C 언어와 유사한 문법을 가지고 있어 사용자가 쉽게 접근할 수 있으며, if, while 등의 제어 구조를 지원합니다. 다만 블록 구분에 Begin과 End를 사용하고 시간 개념이 포함되어 있다는 점에서 C 언어와 다릅니다. 회로 설계, 검증, 구현 등 다양한 용도로 활용됩니다. 2. FPGA 보드 Digilent Nexys4 FPGA Board는 범용 반도체(ASSP)와 주문형 반도체(ASIC)의 ...2025.12.14
-
베릴로그 HDL을 이용한 플립플롭 설계 및 클록 분주 실험2025.12.101. 플립플롭(FlipFlop) 설계 논리설계 실험에서 D 플립플롭, SR 플립플롭, T 플립플롭을 베릴로그 HDL로 설계하였다. D F/F는 상승 엣지에서 입력값을 출력으로 전달하며, SR F/F는 Set과 Reset 입력에 따라 출력이 결정되고 두 입력이 모두 1일 때는 불능 상태가 된다. T F/F는 D F/F와 유사한 방식으로 구성되며, 각 플립플롭의 시뮬레이션 결과는 이론적 진리표와 일치하는 것을 확인할 수 있었다. 2. 클록 분주(Clock Divider) 하드웨어의 메인 클록과 논리회로의 클록 주파수가 다를 때 이를 맞...2025.12.10
-
시프트 레지스터 카운터 FPGA 구현 예비레포트2025.12.201. Verilog HDL IEEE 1364로 표준화된 베릴로그는 전자 회로 및 시스템 설계에 사용되는 하드웨어 기술 언어입니다. C 언어와 유사한 문법을 가지고 있으며 'if', 'while' 등의 제어 구조를 지원합니다. 다만 블록 구분에 Begin과 End를 사용하고 시간 개념이 포함되어 있어 일반 프로그래밍 언어와 차이가 있습니다. 회로 설계, 검증, 구현 등 다양한 용도로 활용됩니다. 2. Module과 Instance 베릴로그 module은 HDL의 기본 기술 단위로, 프로그래밍 언어의 함수처럼 재사용 가능한 코드 조각입...2025.12.20
-
Verilog 기초 디지털 실험: 테스트벤치 작성 및 디버깅2025.12.121. Testbench 작성 방법 Verilog에서 모듈의 정상 작동을 확인하기 위해 testbench를 작성한다. 먼저 입출력 포트가 없는 testbench 모듈을 선언하고, DUT(Design Under Test)에 사용할 입력 포트는 registers, 출력 포트는 wires로 선언한다. DUT를 인스턴스화한 후 stimulus 코드를 작성하여 다양한 입력 패턴을 생성하고 출력값을 확인한다. 입력값 변경 시 delay를 삽입하여 출력값을 정확히 관찰할 수 있다. 2. 디버깅 방법론 Verilog 코드의 오류는 syntax er...2025.12.12