핸들시를 이용한 파이프라인 KATAN 암호 구현 분석
초록
본 논문은 경량 블록 암호 KATAN 및 KATAN‑TAN을 대상으로 Handel‑C를 사용한 순차형 설계와 병렬 파이프라인 하이브리드 설계를 제안한다. 두 구현을 Altera Quartus와 DK Design Suite를 통해 Stratix II FPGA에 매핑하고, 자원 사용량, 클럭 주파수, 처리량 등을 비교한다. 실험 결과, Handel‑C 기반 파이프라인 설계가 동일한 자원에서 최대 2.3배 높은 처리량을 달성함을 보여준다.
상세 분석
이 연구는 경량 암호가 임베디드 시스템에서 차지하는 비중이 커짐에 따라, FPGA 상에서의 효율적인 구현 방법을 모색한다는 점에서 의미가 크다. 먼저 KATAN·KATAN‑TAN 암호 구조를 간략히 소개하고, 기존 RTL(VHDL/Verilog) 기반 구현이 갖는 설계 복잡도와 타이밍 제약을 지적한다. Handel‑C는 C‑like 고수준 언어이면서 동시에 parallel construct(‘par’)를 제공해, 설계자가 명시적으로 파이프라인 단계를 정의할 수 있게 한다. 논문에서는 두 단계의 설계를 제시한다.
① 순차형 설계: Handel‑C의 기본 흐름 제어문(if, for 등)만을 사용해 라운드 함수를 순차적으로 구현한다. 이 경우 레지스터와 LUT 사용량은 최소화되지만, 클럭 주파수는 150 MHz 수준에 머무른다.
② 병렬 파이프라인 설계: ‘par’ 블록을 활용해 라운드 함수를 4단계 파이프라인으로 분할하고, 각 단계마다 독립적인 연산 유닛을 할당한다. 파이프라인 레지스터를 삽입해 데이터 흐름을 정렬함으로써, 최대 350 MHz의 클럭을 달성하고, 초당 처리 가능한 블록 수가 2배 이상 증가한다. 또한, 파이프라인 깊이를 조절해 자원–성능 트레이드오프를 정량적으로 분석한다.
실험 결과는 Stratix II EP2S60에 매핑했을 때, 순차형 설계가 1,200 LUT와 12 kB Block RAM을 사용한 반면, 파이프라인 설계는 1,800 LUT와 18 kB Block RAM을 사용했음에도 불구하고, 처리량은 2.3배 향상되었다. 이는 Handel‑C가 고수준 추상화와 동시에 하드웨어 병렬성을 효과적으로 활용할 수 있음을 입증한다.
또한, 기존 VHDL 기반 KATAN 구현(예: 200 MHz, 1,500 LUT)과 비교했을 때, 본 논문의 파이프라인 설계는 동일하거나 낮은 자원 사용량으로 더 높은 클럭을 구현한다. 다만, 파이프라인 레지스터 삽입으로 인한 초기 레이턴시 증가와 설계 복잡도 상승이 존재한다는 점을 언급한다. 향후 연구에서는 동적 파이프라인 재구성, 전력 최적화, 그리고 다른 경량 암호(예: PRESENT, SIMON) 적용 가능성을 탐색할 필요가 있다.
댓글 및 학술 토론
Loading comments...
의견 남기기