[an error occurred while processing this directive]
|
Студет (к сожалению не знаю как Вас звать, а НЕДОБИТЫМ как-то неприлично называть),
MIPS указывают число одновременно исполняемых инструкций (mega-instructions-per-second), а не число одновременно выполняемых арфметических опреаций. Для С3х число MIPS равно половине частоты внешнего генератора, т.е. 25 MIPS в Вашем случае, хотя и инструкции могут задействовать сразу два внутренних FXP/FLP вычислителя. MFLOPs указывают именно на число исполняемых FP-операций, что зависит от архитектры и для C3x составляет х2 MIPS. Для примера, для С6000 с восьмью внутренними блоками число MIPS равно CLK*8, т.к. истинно одновременно могут испольняться восемь инструкций (в пределе).
При С-компиляции все определяется типом переменных. FLP всегда 32-бита и напрямую задействуется FLP-вычислитель с 24-мантиссой и 8-мибитном порядке, после чего производится нормализация 40-битного рез-та в 32-битный формат. Для FXP умножения предполагается умногжение 32-битных переменных, что напрямую не может быть исполнено на 24-битном умножителе процессора и требует последовательных умножений. Посмотрите в файл RTS.SRC (исх коды библиотека всех ф-ий) и найдите ф-ии MPY_F и MPY_I, и вам все станет ясно. Эти ф-ии Вы можете изменит как хотите. Для полноценного использования возможностей процессора Вам надо программировать на ASM под конкретную задачу.
С уважением,
Павел
E-mail: info@telesys.ru