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

Отправлено Zizo 26 июня 2001 г. 13:48
В ответ на: Ответ: OK, Подпишись. Только с доказательными примерами. отправлено Yuriy 26 июня 2001 г. 05:31

Приведу примеры косяков, или "конструктивных особенностей" для С54хх серии, и тем кто выбирает DSP, не советую закладываться на Texas. Занимаюсь чисто DSP приложениями, поэтому для 2000 серии информации у меня мизерово, судить не буду, за периферию думаю можно и потерпеть..
Но к делу, сортирую не по важности, а как в голову приходит:

1. Отсутствие вложенных циклов, исключение составляет команда RPT которая может повторять единственную команду N раз внутри одного единственного! аппаратного блочного цикла, единственное за что можно поблагодарить Texas так это за эту команду.(у AD - 4 цикла)

2. Т.к. длина командного слова кратна длине данных, т.е. 16 бит, то любая операция с константой занимает 2 такта. ( у AD 24 бит, и все это за 1 такт делается)

3. Отсутствие теневых регистров, так что при входе в прерывание будь добр сохрани ВСЕ что пользуешь, прикинте количество push и pop.( у AD есть теневые регистры)

4. Из за присутствия конвейра операторы условного выполнения, а также использование регистров косвенной адресации должно быть задержано на 2 такта от установки условия/значения. Очень милый код получается...(у AD отсутствуют)

5. Кстати 8 регистров косвенной адресации часто не хватает, AR0 обычно используется как модификатор и остается их 7, а если ползуются вложенные циклы, операция типа AR3=AR5 выполняется за один такт, а операция загружающая ARx из памяти типа data(ARx) = *SP(x) выполняется за два, так что половина используется просто для хранения начала буфера, или чего-то подобного. Для "ускорения" можно их пользовать как счетчики цикла, тогда их вообще не остается. А если команда двух операндная, то для такого случая можно выбирать только из четырех AR2-AR5 регистров, все эти ограничения вытекают из длины командного слова. А при использовании circular адресации, у Texas только один регистр для указания длины буфера. (у AD потенциально с учетом всех этих корявостей можно считать что их как минимум в два раза больше, хотя физически тоже 8, но модификатор и размер кольцевого буффера на каждый регистр свой)

6. Любая команда модифицирующая PC (branch, call e.t.c.) выполняется за 6 (шесть!) тактов! Есть модификации всех таких команд так называемые задержаные, они позволяют дорабатывать две(или одну двухсловную) команды оставшуюся в конвейере, тогда goto выполняется якобы за 4 такта, но это не всегда удобно, в моих приложениях это около 80%, и то для реализации циклов, коих мне аппаратно не дали...
(у AD - 1такт, и против не попрешь, вообще ощущения, что Texas это не RISC, а дико разогнанный CISC с "оптимизированным" набором комманд.)

Вот в принципе основное, еще много мелочей, писать устану, да и вообще посмотрите что продают фирмы занимающиеся софтом, например протокол G723.1 Texas - ~20MIPS, AD - 18MIPS, к этим цифрам просьба не придираться, взяты не с потолка, у разных фирм +/-2MIPS, но в целом остается что AD218x на 10-20 процентов быстрее чем TMS320C54xx, и все достоинстава рекламируемые Texas (типа FIRS и т.п.) сводятся на нет всем этим. Еще есть ценовой фактор, когда я увидел AD21161N за 5 долларов(ессно в партии), чуть сердце не встало, 54xx 25-45 долларов(также в партии), несколько некорректно, надо с 218х сравнивать, но тут тоже Texas дороже, с учетом частоты и объема памяти. (ценовой вопрос дискуссионный, о последних ценах от AD я не в курсе) Ну а про соревнование SHARC/TigerSHARC c C64/C67, это объем раз в 10 больше уже сказанного, и сравнение отнюдь не в пользу Texas, хотя здесь 50% уйдет на сравнение VLIW и SIMD архитектур.
Разумеется эти DSP работают, как-то но с обязанностями справляются, лучше что-то чем ничего, но общее ощущение, как пересел со вполне приличной машины на Запорожец, и медленно и неудобно. Все вроде...

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

Ответы


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

Имя (обязательно): 
E-mail: 

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

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

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


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

E-mail: info@telesys.ru