Часто вижу в описаниях сигнальных процессоров такие характеристики как 64 MAC за такт, даже 256 MAC за такт для разных форматов операндов. Объясните, как достигается такая производительность, хочу понять насколько это может заменить мне ПЛИС, к которым я прирос, и быть может уже неадекватно оцениваю возможности DSP
В то же время я вижу что ширина команды она небольшая, ну там 32-64 бита, как оно может запланировать выполнение 256 MAC за такт?
Я правильно понимаю что DSP обладает широченным интерфейсом к своей встроенной статической памяти, и может по типа SIMD, одним махом взять данные для всех 256 входов пары операндов, выполнить умножение и положить обратно 256 результатов? Вся суть именно в выполнении такого рода действий, которые будут разбавлены медленными относительно одиночными операциями типа переходы по циклам и так далее?
Просто много однообразных действий, одинаковых, над данными, лежащими в ряд? Всё верно понимаю?