top of page

M.I.S.A. - Application-Specific ISA & Processor for CNN Optimization -
















팀명

MISA


팀원 명단

이승원


지도교수

남병규 교수님


작품 배경 및 목적

최근 인공지능 기술의 급속한 발전에 따라 합성곱 신경망(CNN)은 컴퓨터 비전, 영상 처리, 객체 인식 등 다양한 분야에서 필수적인 기술로 자리잡고 있다.

하지만 CNN 모델은 높은 연산량과 메모리 요구량을 가지며, 현재 사용되고 있는 범용 CPU나 GPU에 최적화되어 있지 않아, 연산 효율성과 전력 소모 측면에서 비효율적인 경우가 많다. 특히 모바일 및 임베디드 환경과 같이 자원이 제한된 시스템에서는 이러한 한계가 더욱 두드러져, CNN 연산에 최적화된 고속, 저전력 하드웨어가 요구되고 있다.

이에 따라, CNN 연산을 보다 효과적으로 수행할 수 있는 Application-Specific ISA 및 프로세서 설계의 필요성이 대두되고 있다.

이 프로젝트는 이러한 문제를 해결하기 위한 방안으로, 경량 CNN 모델인 MobileNet의 연산 구조를 분석하여, 그 연산 패턴에 특화된 Application-Specific ISA를 설계하고, 이를 기반으로 5단계 파이프라인 프로세서를 구현하는 것이다.

이를 통해 MobileNet의 핵심 연산 흐름을 하드웨어 명령어 수준으로 가속할 수 있도록 구조를 정의함으로써, CNN 연산의 성능을 개선하는 것이 목적이다.


작품 내용

이 작품의 내용은 경량 CNN 모델인 MobileNet의 연산 구조를 분석하고, 이를 기반으로 CNN 연산에 최적화된 커스텀 ISA인 MISA를 설계하고, MISA를 지원하는 5단계 파이프라인 구조의 프로세서를 구현하는 것이다.


세부 구성은 다음의 6가지로 나눌 수 있다.

1. ISA 설계: 프로세서로서 동작하기 위한 산술/논리/메모리/컨트롤 연산들과 함께, MobileNet의 핵심 연산을 단일 명령어 수준에서 가속할 수 있는 MISA(MobileNet ISA)를 정의한다.

2. 마이크로아키텍처 설계: MISA를 지원하는 5단계 파이프라인 구조 (Fetch, Decode, Execute, Memory, Write-Back)를 기반으로 한 마이크로아키텍처를 설계한다.

3. Instruction Set Simulator(ISS): C 언어를 기반으로, 설계한 MISA instruction을 해석 및 실행하는 시뮬레이터를 구현하여, 명령어의 기능 및 파이프라인 동작을 소프트웨어 상에서 검증한다.

4. Verilog 기반 RTL 구현: 1, 2에서 설계한 내용을 바탕으로, Verilog를 이용하여 RTL 수준의 프로세서를 구현한다.

5. 컴파일러 및 어셈블러 개발: MISA ISA에 대응하는 컴파일러를 구현하여, mini c 기반 고수준 코드를 IR을 거쳐 MISA에서 동작하는 바이너리 코드까지 변환한다.

6. 성능 검증 및 분석: 확장 명령어 유무에따른 두 버전의 프로세서를 FPGA 상에서 비교 실험하여, CNN 연산 가속 효과와 전력 소모 개선 효과를 수치화하여 분석한다



ree



댓글


bottom of page