Скоростные характеристики AT91SAM9G20 + вопрос по дрыганью ножек Всем привет,
имеется в доступе борда пол линуксом (Дебьян) с этим 400МГц чудом. Наконец-то у меня дошли руки ее серьезно потестировать. В борде есть 64 метра сдрама. Борда взята вот отсюда:
http://www.tigal.com/1807
Пока получилось проверить скорость МАДДов (сложение+умножение) на всех возможных параметрах.
Получилась следующая картина:
на регистрах:
int(4bytes) 100M MADD/s
float(4bytes) 3.2M MADD/s (через вызов подпрограммы)
double(8bytes) 2.0M MADD/s (через вызов подпрограммы).
в памяти при умножении двух матриц:
int(4bytes) 24M MADD/s
float(4bytes) 3.0M MADD/s (через вызов подпрограммы)
double(8bytes) 1.8M MADD/s (через вызов подпрограммы).
в памяти при умножении двух матриц с оптимальными анроллами для повышения производительности:
int(4bytes) 54M MADD/s
float(4bytes) 3.2M MADD/s (через вызов подпрограммы)
double(8bytes) 2.0M MADD/s (через вызов подпрограммы).
Скорость копирования в памяти (хоть по 32 бит, хоть по 64 бит) составляет 128МБайт в секунду.
Все тесты были проведены на самопальном софте, компилящемся на гну С и гну фортране.
При попытке подрыгать ножками и померить выходную скорость дрыганья осциллографом, получил жалкие 200КГц. Дрыгался через gpio_set_value().
Вопрос, вдруг кто знает, как на этом процессоре на прямую дрыгаться? Как на Атмеге128 например, то есть пишешь что-то PORTA=0b10101010; и это все транслируется в одру ассемблерную команду out 20-27 0xaa; которая выполняется за один такт.
Спасибо