마크의 마법 곱셈
임베디드 프로세서에서 단정도 부동소수점 곱셈을 가속화하는 새로운 접근법이 소개되었습니다.
저자는 RISC-V 커스텀 확장인 Xh3sfx를 개발하여 소프트웨어 부동소수점 연산을 하드웨어 가속 수준으로 빠르게 처리할 수 있게 했습니다.
기본 구현은 32×32→64비트 곱셈을 통해 정확한 결과를 내며, 16사이클 내에 단정도 곱셈을 완료합니다.
하드웨어 곱셈기 구성에 따라 16×16→32비트 곱셈 4회로 분할하는 방법도 제안했으나, 이 방식은 33사이클로 다소 느립니다.
흥미로운 점은 Mark Owen이 제안한 두 번의 32×32→32비트 곱셈만으로 23×23→46비트 곱셈을 근사하는 트릭입니다.
이 기법은 오차 범위를 엄격히 제한하고, 간단한 보정으로 정확한 결과를 보장해 기존 방식보다 연산량과 복잡도를 크게 줄였습니다.
저자는 이 트릭을 RISC-V에 맞게 변형해 30사이클로 곱셈을 수행하는 최적화된 구현을 완성했습니다.
이 기술은 향후 배정밀도 곱셈 가속에도 확장 가능성이 있어 임베디드 부동소수점 연산의 새로운 가능성을 열었습니다.
요약하면, Xh3sfx 확장과 Mark Owen의 곱셈 트릭 결합으로 임베디드 환경에서 부동소수점 곱셈 성능과 효율성이 크게 향상되었습니다.