
총 20개
-
디지털시스템설계실습_HW_WEEK102025.05.091. FSM Detector 이번 과제를 통해 FSM Detector를 구현해보는 시간이었습니다. Testbench에서 1101 sequency를 포함하는 input x '011011011110111' sequency를 생성하여 그 결과를 확인했습니다. FSM 모듈은 위의 input을 감지하고 그에 따라 1을 출력하는 것을 알 수 있었습니다. 그리고 이 과정을 분석하면서 Detector의 원리도 이해할 수 있었습니다. 2. Verilog Code 과제에서는 FSM_Detector 모듈을 Verilog로 구현하고, Test Bench...2025.05.09
-
디지털시스템설계실습_HW_WEEK72025.05.091. DFF with synchronous reset and enable 이번 실습에서는 DFF with synchronous reset and enable를 구현하였습니다. 실습 강의노트에 주어진 코드를 입력했지만, 결과 파형을 분석할 때 Q와 QBAR의 값이 반전되지 않는 결과가 생겼습니다. 이는 변수명을 잘못 입력해 생긴 결과였지만, 강의노트에 있는 모듈 코드에서 posedge clk과 'negedge reset'을 추가한 것이 asynchrous 일 때 쓰는 것처럼 보였습니다. 또한 D-FF의 동작원리에 대해서도 다시 한 번...2025.05.09
-
디지털시스템설계실습_HW_WEEK62025.05.091. 4-to-1 MUX 이번 실습에서는 4-to-1 MUX를 Verilog 코드로 구현하고 시뮬레이션을 통해 동작을 확인했습니다. if-else 문과 case 문을 사용하여 MUX를 구현했으며, 시뮬레이션 결과를 통해 입력 신호 s0, s1에 따라 출력 i0, i1, i2, i3가 정상적으로 동작하는 것을 확인할 수 있었습니다. 2. 4-bit 시프트 레지스터 4-bit 시프트 레지스터를 Verilog 코드로 구현하고 시뮬레이션을 통해 동작을 확인했습니다. non-blocking 할당을 사용하여 클록 신호에 맞춰 입력 sin 값이...2025.05.09
-
논리회로설계실험 6주차 D Latch 설계2025.05.151. D Latch 이번 실습의 목표는 D Latch를 Behavioral modeling, Dataflow modeling, Gate-level modeling, 그리고 Structural modeling으로 구현하는 것입니다. D Latch의 기본적인 구조와 작동 방식을 이해하고, 이를 바탕으로 다양한 모델링 방법을 통해 D Latch를 구현하였습니다. 이를 통해 논리회로 설계에 대한 이해도를 높일 수 있었습니다. 2. Schematic 설계 D Latch의 schematic을 두 가지 방법으로 그려보았습니다. 첫 번째는 log...2025.05.15
-
디지털시스템설계실습_HW_WEEK122025.05.091. 32-bit ALU 설계 이번 실습에서는 32비트 ALU(Arithmetic Logic Unit)를 설계하고 구현하였습니다. 하위 모듈인 Full Adder, ALU_1, ALU_2를 구현한 후 이를 활용하여 32비트 ALU Top Module과 Pipeline Top Module을 구현하였습니다. 다양한 ALU 연산(AND, OR, ADD, SUB, SET ON LESS THAN)을 수행하고 그 결과를 시뮬레이션을 통해 확인하였습니다. 또한 Synthesis 후 Schematic을 분석하여 Critical Path Delay...2025.05.09
-
디지털시스템설계실습_HW_WEEK82025.05.091. 16x8bit Register file 이번 과제에서는 16x8bit Register file을 구현했습니다. 이 구조는 4bit의 address, 8bit의 data 크기, 16개의 저장공간을 가지고 있습니다. wr_enable이 활성화되면 clk 신호에 맞춰 din 값이 wr_addr에 입력되어 저장됩니다. 이를 통해 데이터가 저장되는 과정을 이해할 수 있었습니다. 2. Shift Register Shift Register 모듈을 구현하면서 clk이 positive edge일 때 qout이 shift되는 과정을 통해 동작 ...2025.05.09
-
디지털시스템설계실습_HW_WEEK112025.05.091. 7 세그먼트 업다운 카운터 이 프레젠테이션은 7 세그먼트 업다운 카운터를 구현하는 방법을 설명합니다. 이를 위해 Verilog 코드를 사용하여 상태 머신을 설계하고, 각 상태에 따라 7 세그먼트 디스플레이의 출력을 제어합니다. 또한 시뮬레이션을 통해 동작을 확인하고, 합성 후 critical path delay를 분석합니다. 이를 통해 FSM 설계의 효율성과 7 세그먼트 디스플레이의 작동 원리를 이해할 수 있습니다. 2. 상태 머신 설계 이 프레젠테이션에서는 7 세그먼트 업다운 카운터를 구현하기 위해 상태 머신을 설계합니다. ...2025.05.09
-
BCD code, 세븐 세그먼트에 대한 이론 및 회로2025.05.101. BCD code BCD는 Binary Coded Decimal의 약자로서 이진코드의 십진화를 의미한다. 일반적으로 BCD 코드란 8421코드를 의미하며 각 비트의 자리값은 MSB에서부터 8,4,2,1로 되기 때문에 가중코드라고 한다. BCD코드에서는 10진수의 한자리 수인 0~9까지만을 숫자로 표현하고 그 이상의 숫자에서 대해서는 don't care한다. BCD코드의 덧셈을 하려면 ①2진수의 덧셈의 규칙에 따라 두 수를 더하고 ②연산결과 4비트의 값이 9거나 9보다 작으면 그대로 결과값으로 사용하고 ③ 연산결과 4비트의 값이 ...2025.05.10
-
논리회로설계실험 9주차 counter설계2025.05.151. Ripple counter (D flip flop) Ripple counter의 기본 구조는 D flip flop을 이용하는 것이다. 출력 값 OUT[3:0]은 0000에서 시작하여 clk의 positive edge마다 2진수 1씩 증가하는 형태로 변화한다. 이를 통해 structural modeling으로 ripple counter를 구현할 수 있다. 2. Ripple counter (JK flip flop) JK flip flop을 이용한 ripple counter의 경우, 가장 왼쪽의 JK flip flop에서 OUT[0...2025.05.15
-
디지털시스템설계 2주차 과제2025.05.041. Verilog 프로그래밍 이번 과제에서는 Verilog 프로그래밍을 통해 1-Bit Full Adder와 8-to-1 MUX를 구현하는 것이었습니다. 학생은 Verilog 문법을 처음 다루어 어려움이 있었지만, 실습 예제를 복습하면서 모듈, 포트 선언, 벡터 형식 등 Verilog 기본 개념을 익혀나갔습니다. 특히 s[2], s[1], s[0]를 잘못 입력하여 결과가 올바르지 않았던 경험을 통해 Verilog 코드 작성 시 주의해야 할 점을 배웠습니다. 2. 1-Bit Full Adder 이번 과제에서는 1-Bit Full A...2025.05.04