본문으로 건너뛰기

Shrike lite에서 이미지 생성 모델을 실행한 FPGA 실험

병렬 INT8 MAC을 추가했지만 메모리 입출력 병목으로 이미지 생성 시간이 70초에서 220초로 늘었습니다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

작성자는 264KB SRAM을 탑재한 Shrike lite에서 32×32 픽셀 이미지 생성 모델을 학습하고, FPGA에 두 개의 병렬 INT8 MAC 엔진과 16비트 누산을 구현했습니다. 하지만 높은 메모리 입출력 횟수가 병목으로 작용해 이미지 한 장 생성 시간이 MCU만 사용했을 때의 약 70초에서 병렬 엔진 구성 후 약 220초로 늘어났습니다. 제한된 메모리와 강한 Quantization 때문에 결과물에 노이즈가 많았지만, 일부 이미지는 의미 있는 시각적 결과를 냈습니다.

섹션별 상세

01
작성자는 264KB SRAM을 탑재한 Shrike lite에서 32×32 픽셀 이미지를 생성하는 모델을 학습시켰습니다. FPGA에는 두 개의 병렬 INT8 MAC 엔진을 구성하고 16비트 누산을 적용해 신경망 계산을 가속하려 했습니다. 그러나 모델의 높은 입출력 횟수가 메모리 병목을 일으켜 연산 장치를 병렬화한 시스템이 MCU만 사용한 구성보다 느리게 실행됐습니다.
02
병렬 MAC 엔진을 사용한 이미지 한 장 생성에는 약 220초가 걸렸고, MCU만 사용한 모델은 약 70초가 걸렸습니다. 제한된 메모리와 강한 Quantization의 결합으로 생성 결과 대부분이 이상하거나 노이즈가 많았지만 일부 이미지는 시각적으로 흥미로운 결과를 냈습니다. 이 사례는 소형 장치에서 연산 유닛을 추가할 때 메모리 이동 비용과 모델 정밀도를 함께 측정해야 한다는 점을 수치로 드러냅니다.

용어 해설

정적 램(SRAM)
SRAM은 전원이 공급되는 동안 데이터를 유지하는 메모리로, 이 실험에서는 Shrike lite의 264KB 저장 공간으로 사용됐습니다. 모델 가중치와 중간 계산값, 입출력 데이터를 함께 담아야 해 메모리 용량과 접근 횟수가 처리 속도에 직접 영향을 줬습니다.
필드 프로그래머블 게이트 어레이(FPGA)
FPGA는 하드웨어 회로를 프로그래밍해 특정 연산을 병렬 처리하는 장치입니다. 작성자는 Shrike lite에 탑재된 FPGA에 두 개의 INT8 MAC 엔진을 구성했지만, 연산 병렬화만으로는 잦은 메모리 입출력으로 인한 병목을 해결하지 못했습니다.
8비트 정수 곱셈 누산(INT8 MAC)
INT8 MAC은 8비트 정수 곱셈 결과를 누적하는 연산으로, 신경망 추론과 학습에서 반복적으로 사용됩니다. 이 프로젝트에서는 두 엔진이 INT8 곱셈을 병렬 수행하고 결과를 16비트로 누적해 FPGA 연산량을 늘렸습니다.
양자화(Quantization)
Quantization은 모델의 수치 표현을 낮은 비트 정수 등으로 바꾸는 방식입니다. 이 실험에서는 제한된 메모리에서 모델을 실행하는 데 기여했지만, 낮은 정밀도 때문에 생성 이미지 일부가 이상하고 노이즈가 많은 결과로 나타났습니다.
메모리 병목(Memory Wall)
Memory Wall은 연산 장치의 처리 능력보다 메모리에서 데이터를 읽고 쓰는 속도가 전체 실행 시간을 제한하는 현상입니다. 두 개의 병렬 MAC 엔진을 추가한 뒤에도 높은 입출력 횟수가 병목으로 남아 MCU만 사용한 경우보다 이미지 생성이 느려졌습니다.
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 18.수집 2026. 08. 18.출처 타입 REDDIT

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.