Собрал NIOS II под Cyclon III, сравнил производительности на той же тактовой с AVR32. Сравнение по банальному вычислению числа PI
Код
double pi = 4;
for (int i = 1; i < 10000000; i++)
{
if (i % 2) // нечет
pi -= 4. / (i * 2 + 1);
else
pi += 4. / (i * 2 + 1);
}
printf ("PI = %16.16f\r\n", pi);
Итог - NIOS II в сборке fast без hard div уступил AVR32 втрое. (c hard div - тоже самое), и только с включенный floatipng point hardware достиг той же производительности. С чем это может быть связано ? Я, признаться, ожидал лучших результатов (AVR32 FPU не имеет)
PS - использована внутрення память.
PPS попробовал отказаться от плавучки - просто перестановка элементов массива. Тут NIOS II fast слил в 10 раз :-(
Правда видно, что оптимизатор gnu - шный вообще никакой :-( Или может чего подкрутить надо ?