Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
по ссылке описание команд. система такая - у каждой команды есть параметры "Delay Slots" и "Functional unit latency". Первый параметр показывает, через сколько тактов (+1) будет готов результат, второй параметр - сколько тактов ничего, кроме нопа, нельзя исполнять на том юните, который занят исполнением этой инструкции.
К примеру ADDDP vs ADDSP (DP = double precision, SP = single):
ADDDP : delay = 6; latency = 2;
ADDSP : delay = 3; latency = 1;
Итого в идеальном случае ADDSP может выполняться каждый такт, в худшем случае - раз в 4 такта.
точно также про ADDDP - в идеальном случае раз в два такта, в худшем - раз в 7 тактов. Итого худший расклад - DP медленнее SP в 7 раз, лучший расклад - SP медленнее DP (DP быстрее!) в два раза. Все зависит от того, как то или иное удалось программно конвейеризировать.
Плюс к этому - пока считается операция с delay slot-ами, этот же юнит может еще что-то там отвлеченное посчитать в этих слотах, т.е. не стоять, а работать.
Для других операций (MPYSP/DP, CMPxx, RSQRxx, RCPxx) сам смотри что к чему
Составить ответ | Вернуться на конференцию
Ответы
- ага. — Крок (16.01.2008 17:35:39 62.118.59.14, пустое)