# Scalar OpenPOWER Audio and Video Opcodes the fundamental principle of SV is a hardware for-loop. therefore the first (and in nearly 100% of cases only) place to put Vector operations is firat and foremost in the *scalar* ISA. This page therefore has acompanying discussion at for evolution of suitable opcodes. # Audio TODO # Video TODO ## VSX SIMD ### vpkpx vpkpx is a 32-bit to 16-bit 8888 into 1555 conversion ### vupkhpx / vupklpx these are 16-bit to 32-bit 1555 to 8888 conversion ### vavgs* signed and usigned, 8/16/32: these are all of the form: result = truncate((a + b + 1) >> 1)) ### vabsdu* unsigned 8/16/32: these are all of the form: result = (src1 > src2) ? truncate(src1-src2) : truncate(src2-src1) ### vmaxs* / vmaxu* (and min) signed and unsigned, 8/16/32: these are all of the form: result = (src1 > src2) ? src1 : src2 # max result = (src1 < src2) ? src1 : src2 # min