하만(Harman) 세미콘 반도체 설계 과정/Verilog를 이용한 RTL 시스템 반도체 설계 14

하만(Harman) 세미콘 아카데미 61일차 - Verilog HDL 설계(UART_TX 설계)

[2024.06.10.월] 인천인력개발원 하만 세미콘 아카데미실습 1: UART_TX 설계  위 그림에 맞게 TX의 Input, Output 설정module uart_tx( input RST, input CLK, input [7:0] DIN, input START, output reg TXD );각 상태를 나타내는 idle, start, tx_send, stop을 local parameter로 선언하여 갑 지정 후 register와 wire 선언localparam [1:0] idle = 2'b00, start = 2'b01, tx_send = 2'b10, stop =..

하만(Harman) 세미콘 아카데미 57일차 - Verilog HDL 설계(FIFO 설계, 테스트벤치 코드 작성방법)

[2024.06.03.월] 인천인력개발원 하만 세미콘 아카데미실습 1: FIFO 설계 FIFO: First In First Out데이터가 잠시 머무르는 버퍼 역할 EMPTY: 데이터가 없어 출력할 수 없는 경우 1FULL: 메모리 공간이 7개가 있을 때, 모든 공간에 데이터가 채워져 있을 때 1WR_EN(WRite_ENable): WR_EN이 1이면 CLK에 맞춰 Write 동작 실행, Write_Address를 1씩 증가RD_EN(ReaD_ENable): RD_EN이 1이면 CLK에 맞춰 Read 동작 실행, Read_Address를 1씩 증가 설계 순서RAM 설계wr_addr(write_address)와 rd_addr(read_address) 처리full, empty 처리 - full은 wr_addr..

하만(Harman) 세미콘 아카데미 52일차 - Verilog HDL 설계(UART 실습, RAM 설계)

[2024.05.27.월] 인천인력개발원 하만 세미콘 아카데미실습 1: uart_rx 마무리이전에 생성한 UART_RX 실습에서 버튼을 입력하면 ASCHII코드의 번호의 두 배가 되어 세그먼트에 출력되는 오류 수정 필요1. uart_rx_cntl.v의 코드를 통해 오류를 발생시키는 부분 확인 더보기`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date: 2024/05/20 10:15:18// Design Name: // Module Name: uart_rx_cntl// Project Name: // Ta..

하만(Harman) 세미콘 아카데미 47일차 - Verilog HDL 설계(UART 실습)

[2024.05.20.월] 인천인력개발원 하만 세미콘 아카데미실습 1: uart_rx1. uart_rx_cntl.v Design Sources 생성 2. 코드 작성`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date: 2024/05/20 12:06:26// Design Name: // Module Name: uart_rx_cntl// Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Re..

하만(Harman) 세미콘 아카데미 46일차 - Verilog HDL 설계(Serial to Parallel, Parallel to Serial 변환)

[2024.05.17.금] 인천인력개발원 하만 세미콘 아카데미실습 1: Parallel to Serial / Serial to Parallel 변환기1. my_sp 프로젝트 생성2. my_sp.v 파일을 Create Design Sources로 생성한 뒤 코드 작성(my_p2s와 my_s2p 모듈 두 개 사용)`timescale 1ns / 1ps/********************************************parallel to serial********************************************/module my_p2s (input RST, CLK, START, input [7:0] DIN, output SOF, ..

하만(Harman) 세미콘 아카데미 42일차 - Verilog HDL 설계(traffic 프로젝트 디버깅)

[2024.05.10.금] 인천인력개발원 하만 세미콘 아카데미Verilog를 이용한 RTL 시스템 반도체 설계AMD Vivado Logic AnalyzerLogic Analyzer: 디지털 신호 분석 장치1. mark_debug 코드를 이용해 디버깅할 net를 표시 2. Run Synthesis 후 우측 상단의 보기를 Debug로 바꾸면 다음과 같이 net에 표시 3. my_traffic_debug 프로젝트를 만들어 확인하기

하만(Harman) 세미콘 아카데미 37일차 - Verilog HDL 설계(FSM security, 신호등 FSM)

[2024.04.29.월] 인천인력개발원 하만 세미콘 아카데미Verilog를 이용한 RTL 시스템 반도체 설계FSM_SECURITY 1.36일차의 my_fsm_secure 프로젝트를 열고 Design Sources로 my_fsm_secure_top 추가 2. my_seg.v파일을 Design Sources로 추가 후 포트 정의 3. my_secure_top.v 코드 작성`timescale 1ns / 1psmodule my_fsm_secure_top( input RST, input CLK, input [1:0] KEY, input SENSOR, output ALARM_SIREN, output CA, output [6:0] AN ); wire [1:0] fsm..

하만(Harman) 세미콘 아카데미 30~31일차 - Verilog HDL 설계(Stopwatch 설계 테스트벤치)

[2024.04.18.목~] 인천인력개발원 하만 세미콘 아카데미 Verilog를 이용한 RTL 시스템 반도체 설계 Stopwatch 모듈 설계 1. 버튼이 눌리면 STR_STP변수를 1과 0으로 변경하여 모드를 Start, Stop으로 변경하는 모듈 작성 Switch를 누르면 CLK의 rising edge에 맞춰 ss_1d를 1로 다음 CLK의 rising edge에서도 switch가 1이면 ss_2d를 1로 enable = ss_1d & ~ss_2d를 이용하면 CLK 주기동안 버튼이 눌려있으면 start/stop 작동하도록 신호 생성 RST == 0이고, enable = 1이면 STR_STP신호를 반전(STR_STP = ~STR_STP)하여 start/stop 모드 전환 2. key_proc.v 코드 ..

하만(Harman) 세미콘 아카데미 26일차 - Verilog HDL 설계(parameter, tasks, function, parity 설계, 2's complement 설계)

[2024.04.12.금] 인천인력개발원 하만 세미콘 아카데미 Verilog를 이용한 RTL 시스템 반도체 설계 시스템 작업(System Tasks) 1. System Tasks: 미리 작성된 코드의 모음 Simulation Tasks: 가시성과 디버깅 향상 Operations: 콘솔에 출력 / net의 값 모니터링 / 시뮬레이션 시작,정지 $로 시작 Verilog에서 타이밍 체크 2. System Tasks 예시 $display: 콘솔에 값 출력 ex. $display("At time %d, q = %b", $time, q); $time, $realtime: 현재의 시뮬레이션 시간을 정수로 표현 $wirte: $display와 유사하나 새로운 줄을 자동으로 추가 x $write ("Simulation ..

하만(Harman) 세미콘 아카데미 18일차 - Verilog HDL 설계(Clock과 Reset, 카운터 설계, 테스트벤치, 검증)

[2024.04.01.월] 인천인력개발원 하만 세미콘 아카데미 Verilog를 이용한 RTL 시스템 반도체 설계 Clock과 Reset Clock(clk, 클록) 디지털 시스템에서 데이터 처리의 타이밍을 제어하는 주기적인 신호 주파수, 주기를 통해 신호의 반복속도, 시간 등을 나타냄 Reset(rst) 디지털 시스템을 초기 상태로 되돌리는 데 사용 Synchronous Reset: 클록 신호에 동기화되어 작동 - 리셋 시 다음 클록 엣지에서 시스템 초기화 Asynchronous Reset: 클록 신호와 무관하게 즉시 작동 - 빠른 리셋이 가능하지만 동기화 문제 발생 가능 Flip-Flop(FF) 한 비트의 이진 정보를 저장하는 메모리 단위 클록 신호에 의해 제어 입력 데이터를 기반으로 두 가지 안정된 상..