Yonghwan Kwon

  • Posts
  • Category
Archive January 29, 2023

Windows 환경의 무료 SystemVerilog 컴파일러 및 시뮬레이터 활용 가이드

과거에 작성했던 게시글 중 markdown이 남아있는 글들을 복원하고 있습니다. Verilog에서 SystemVerilog로 넘어가는 과정에서, Windows 로컬 환경을 지원하는 적절한 무료 컴파일러와 시뮬레이터를 구성하는 것은 매우 중요합니다. 이 글에서는 가장 범용적으로 접근할 수 있는 Xilinx Vivado와 ModelSim (Intel FPGA Starter Edition)을 활용하여 CLI 환경에서 SystemVerilog를 컴파일하고 시뮬레이션하는 방법을 소개합니다. 오픈소스인 Icarus Verilog의 경우 -g2012 플래그를 통해 SystemVerilog를 일부 지원하지만 완전하지 않으며, Verilator는 성능이 강력한 대신 C++ 변환 등 초기 설정의 허들이 존재합니다. 따라서 상용 툴의 무료 버전을 활용하는 것이 학습 및 검증 목적에서 가장 안정적인 선택이 될 수 있습니다.

Archive January 17, 2023

A Pipelined FFT Architecture for Real-Valued Signals

과거에 작성했던 게시글 중 markdown이 남아있는 글들을 복원하고 있습니다. 기존의 FFT 아키텍처에 대한 연구는 주로 복소수 고속 푸리에 변환(CFFT, Complex Fast Fourier Transform)을 중심으로 진행되었습니다. 본 포스팅에서는 실제 환경에서 입력 데이터의 대부분이 실수(Real Value)라는 점에 착안하여 제안된 논문인 ‘A Pipelined FFT Architecture for Real-Valued Signals’를 리뷰합니다. 핵심 쟁점인 켤레 대칭(Conjugate Symmetry), RFFT Flow chart 최적화, 그리고 Pipelined RFFT Architecture 제안에 대해 심도 있게 다룹니다. A Pipelined FFT Architecture for Real-Valued Signals

Archive January 01, 2023

CNN Backpropagation

과거에 작성했던 게시글 중 markdown이 남아있는 글들을 복원하고 있습니다. CNN(합성곱 신경망)은 일반적으로 합성곱 계층(Convolution Layer)과 완전 연결 계층(Fully-Connected Layer)으로 이루어진 형태를 기본 구조로 합니다. FC Layer의 역전파(Back-Propagation) 과정은 이미 여러 매체를 통해 자세히 다루어지고 있습니다. 따라서 이번 포스팅에서는 상대적으로 덜 다루어지는 Convolution Layer의 역전파를 FC Layer와 동일한 관점과 방식으로 설명해 보고자 합니다.

Archive December 28, 2022

Convolution layer의 kernel 개수

과거에 작성했던 게시글 중 markdown이 남아있는 글들을 복원하고 있습니다. CNN 구조의 합성곱 계층(Convolution layer)에서 사용되는 필터(Filter)의 개수 산정 방식에 대해 정리합니다. 인터넷상에 종종 ($N_{\text{kernel}} = N_{\text{feature map}}$)으로 잘못 알려진 경우가 있으나, 이는 부정확한 정보입니다. 본 포스팅에서는 텐서플로우(TensorFlow) 코드를 통해 커널 개수에 대한 정확한 개념을 바로잡고자 합니다.

← → 2