Posts / 태그
#verilog
8편
Radix-8 Booth 곱셈기 설계: 인코딩 테이블과 TDM 트레이드오프 (Verilog)
Radix-8 Booth 인코딩에 TDM을 결합한 곱셈기를 Verilog로 설계했다. Booth 알고리즘 원리, Radix에 따른 부분곱 수와 하드웨어 트레이드오프, Radix-8 인코딩 테이블, 구현과 검증, 배운 점을 정리했다.
Radix-4 Booth 곱셈기 설계: 부분곱 축소와 TDM 적용 (Verilog)
Booth 인코딩으로 부분곱을 줄이고 TDM으로 압축하는 Radix-4 곱셈기를 Verilog로 설계했다. Booth 인코더·셀렉터, 부분곱 생성, Carry Save Adder, Kogge-Stone 최종 가산기와 정확도 검증 파형을 다룬다.
Cortex-M0 SoC 설계: AHB-Lite 버스로 만든 다기능 로봇 제어 시스템 (Basys3)
Basys3 보드에 Cortex-M0와 AHB-Lite 주변장치를 묶은 SoC를 설계했다. UART로 작은 로봇을 제어하고 업 카운터, 스톱워치, 난수·곱셈기, 덧셈·뺄셈기를 실행하는 다기능 시스템의 HW·SW 구성과 결과를 담았다.
Verilog 슬롯머신 설계: LFSR 난수 생성과 타이머 시드 (Basys3)
Basys3 보드용 슬롯머신을 Verilog로 설계했다. 타이머로 LFSR에 시드를 넣어 BCD 난수 3개를 만들고, 일치 개수에 따라 입력의 2·5·10배를 출력한다. 블록도, 서브 블록 정의, 시뮬레이션 파형과 고찰을 정리했다.
Wallace Tree 곱셈기 Verilog 설계: 반가산기·전가산기로 8비트 병렬 곱셈
반가산기와 전가산기로 부분합을 단계별로 줄이는 Wallace Tree 구조로 8비트 병렬 곱셈기를 Verilog 설계했다. 16비트 곱을 내는 계산 과정, 설계 흐름, 테스트벤치와 전체 코드를 정리했다.
RISC-V 5단 파이프라인 프로세서 Verilog 설계: 해저드 검출과 포워딩 유닛
RV32I 명령어 전체를 지원하는 RISC-V 5단 파이프라인 프로세서를 Verilog로 설계했다. 해저드 검출 유닛과 포워딩 유닛으로 데이터·제어 해저드를 해결하고 iverilog와 GTKWave 파형으로 검증한 과정을 담았다.
Zynq-7000 FPGA AI 가속기 설계: CNN·FC 코어와 AXI CDMA 데이터 이동
Zynq-7000 FPGA에 CNN·Fully Connected 연산 코어와 AXI CDMA 데이터 무버를 설계해 AI 가속기를 만들었다. 설계 흐름, 메모리 맵, 코어와 무버 검증, 5단계 AI 모델 구성까지 Vivado·Vitis 작업을 정리했다.
Kogge-Stone 가산기 Verilog 설계: higher-valency 셀로 로직 레벨 줄이기
로직 레벨이 가장 적은 트리 가산기인 Kogge-Stone Adder를 higher-valency 셀로 Verilog 설계했다. Bitwise·Group PG와 SUM 로직 코드, 테스트벤치 파형 검증, 성능 최적화 방법과 분석을 정리했다.
Hardware Project