프로세서 기술은 공정비용의 증가와 전력 소모 때문에 단순 동작 주파수를 높이는 방법이 아닌 다수의 프로세서를 집적하는 병렬 프로세싱 기술 발전이 이루어지고 있다. 본 논문에서는 멀티미디어에 내재한 무수한 데이터를 효과적으로 처리할 수 있는 SIMD(Single Instruction Multiple Data) 기반 병렬 프로세서를 소개하고, 또한 이러한 SIMD 기반 병렬 프로세서 아키텍처에서 이미지/비디오 픽셀을 효율적으로 처리 가능한 픽셀 서브워드 병렬처리 명령어를 제안한다. 제안하는 픽셀 서브워드 병렬처리 명령어는 48비트 데이터패스 아키텍처에서 4개의 12비트로 분할된 레지스터에 4개의 8비트 픽셀을 저장하고 동시에 처리함으로써 기존의 멀티미디어 전용 명령어에서 발생하는 오버플로우 및 이를 해결하기 위해 사용되는 패킹/언팽킹 수행의 상당한 오버헤드를 줄일 수 있다. 동일한 SIMD 기반 병렬 프로세서 아키텍처에서 모의 실험한 결과, 제안한 픽셀 서브워드 병렬처리 명령어는 baseline 프로그램보다 2.3배의 성능 향상을 보인 반면, 인텔사의 대표적인 멀티미디어 전용 명령어인 MMX 타입 명령어는 baseline 프로그램보다 단지 1.4배의 성능 향상을 보였다. 또한, 제안한 명령어는 baseline 프로그램보다 2.5배의 에너지 효율 향상을 보인 반면, MMX 타입 명령어는 baseline 프로그램보다 단지 1.8배의 에너지 효율 향상을 보였다. Processor technology is currently continued to parallel processing techniques, not by only increasing clock frequency of a single processor due to the high technology cost and power consumption. In this paper, a SIMD (Single Instruction Multiple Data) based parallel processor is introduced that efficiently processes massive data inherent in multimedia. In addition, this paper proposes pixel subword parallel processing instructions for the SIMD parallel processor architecture that efficiently operate on the image and video pixels. The proposed pixel subword parallel processing instructions store and process four 8-bit pixels on the partitioned four 12-bit registers in a 48-bit datapath architecture. This solves the overflow problem inherent in existing multimedia extensions and reduces the use of many packing/unpacking instructions. Experimental results using the same SIMD-based parallel processor architecture indicate that the proposed pixel subword parallel processing instructions achieve a speedup of <TEX>$2.3{\times}$</TEX> over the baseline SIMD array performance. This is in contrast to MMX-type instructions (a representative Intel multimedia extension), which achieve a speedup of only <TEX>$1.4{\times}$</TEX> over the same baseline SIMD array performance. In addition, the proposed instructions achieve <TEX>$2.5{\times}$</TEX> better energy efficiency than the baseline program, while MMX-type instructions achieve only <TEX>$1.8{\times}$</TEX> better energy efficiency than the baseline program.
Read full abstract