[an error occurred while processing this directive]
И то и другое... (+)
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Зок Мёдов 27 июля 2005 г. 17:29
В ответ на: спасибо. а неостановка конвеера связана с старыми ревизиями или мистическое правило? отправлено yes 27 июля 2005 г. 16:51

>> а неостановка конвеера связана с старыми ревизиями или мистическое правило
совесть просто замучает :) а если серьёзно, то начинал с ревизии 0.1, там это серьёзно, а сейчас... объяснить то можно, но лень...
>> вроде как параллельные инструкции рекомендуется выравнивать .align 8
нет, не нужно
>> так как если .align 4 то будет два такта на выборку
нет, будет 1 такт
Единственное исключение, точнее два...
Первое: если выполняется команда перехода на невыровненную на 64 бита 64-битную инструкцию, то будет 1 такт пенальти.
Второе: Если первая инструкция цикла 64-битная и невыровненная, и одновременно с этим она не следует непосредственно за инструкцией LSETUP (то есть между LSETUP и ней есть ещё какой-то код), то в начале второй итерации цикла, будет 1 такт пенальти.

>> компилер не для этого ли вставляет NOP/MNOP в паралельную инструкцию? или просто инструкция паралельная не может быть не 64 бита
Именно так, не может. Параллельные инструкции все 64 битные.
>> если в потоке идут 16/32/64 битовые инструкции?
А пусть себе идут если без команд переходов. Все будут по 1 такту.
>> можно ли убрать НОПы из параллельных инструкций, если важнее плотность кода, а выравнивание(скорость) не нужно?
Нельзя убрать. Можно лишь разобрать такую инструкцию на последовательные, например:
r0 = r0 +|+ r1 || r1 = [i0++] || r2 = [i1++]; 64 бита, 1 такт
r0 = r0 +|+ r1 || r1 = [i0++]; 64 бита, 1 такт
r0 = r0 +|+ r1; r1 = [i0++]; 48 бит, 2 такта
r1 = [i0++] || r2 = [i1++]; 64 бита, 1 такт
r1 = [i0++]; r2 = [i1++]; 32 бита, 2 такта

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru