글 목록 5페이지
임베디드 기술 문제 해결과 IT 도구를 중심으로, 취미로 본 영화와 미드, 읽은 만화, 운동을 배우며 얻은 팁과 경험을 기록합니다.
2026-09-12
SystemVerilog에서 rising edge를 한 clock pulse로 만들기
동기화된 level 신호의 이전 값을 저장해 rising edge에 한 cycle 동안 유지되는 pulse를 만드는 방법입니다.
2026-09-06
SystemVerilog package를 공유할 때 compile order 확인하기
SystemVerilog package에 공통 type과 상수를 정의하고, scoped import와 compile order를 관리하는 기본 예제입니다.
2026-08-31
Verilog 곱셈 연산자 *는 FPGA에서 어떻게 합성될까
Verilog의 * 연산자는 합성 가능하지만 DSP 사용 여부와 결과 폭은 operand, FPGA 자원과 synthesis 설정을 확인해야 합니다.
2026-08-25
SystemVerilog 배열을 flat bus로 묶고 byte slice 선택하기
배열 원소를 고정 폭 flat bus에 매핑하고 indexed part-select의 +: 문법으로 byte 단위 slice를 선택합니다.
2026-08-19
Verilog parameter는 named override로 지정하고 defparam은 피하기
재사용 모듈의 폭과 설정값은 parameter로 노출하고, 인스턴스에서는 이름이 있는 parameter override를 사용하는 기준입니다.
2026-08-13
Verilog 숫자 literal과 signed vector의 폭 확인하기
Sized literal, signed 선언, 부호 확장과 잘림을 확인해 Verilog 산술에서 의도한 값과 폭을 유지하는 방법입니다.
2026-08-07
Verilog case 문에서 default와 latch를 함께 확인하는 방법
Verilog case와 if-else의 선택 기준, 조합 블록의 기본 할당, default branch로 latch를 피하는 방법을 정리합니다.
2026-08-01
WaveDrom으로 clock과 bus timing diagram 그리기
WaveDrom Editor에서 WaveJSON으로 clock, control, bus 값을 표현하고 diagram을 확인하는 짧은 예제입니다.
2026-07-26
Verilog testbench를 시작할 때 HDL과 cocotb 중 고르는 기준
간단한 HDL testbench와 Python cocotb 중 선택하는 기준, 현재 cocotb 2.x의 기본 test 구성과 검증 순서를 정리합니다.
2026-07-22
Vivado에서 MCS 파일을 SPIx4로 만드는 방법
Vivado 7 Series 설계에서 CONFIG_MODE, SPI_BUSWIDTH, CONFIGRATE를 설정하고 write_cfgmem으로 SPIx4 MCS 파일을 만드는 방법입니다.