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

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

Отправлено st256 08 апреля 2004 г. 09:21
В ответ на: некоторые замечания отправлено Т34-85 08 апреля 2004 г. 08:49

>>А вот под специализированные процессоры (к коим относят DSP) уже >>наоборот, надо писать сами С-компиляторы.
так ведь пишут. и пишут неплохо. я, в частности, имею в виду семейство TI С 64хх. Компилятор очень хороший. В 90-95% случаев можно "выжать" всю производительность не переходя на линейный асм.

Разговор бессмысленный. Я с 64 не работал. Правда, если опереться на мой опыт работы с процами вообще, боюсь это Ваше утверждение окажется неверным.
Просто смеха ради вспомнил. Недавно по конференц-связи был мат-перемат с LSI Logic. Проблема в том, что нам поставили код, исходники которого написаны на Си очень известной фирмой. После некоторых попыток запустить сее ублюдочное творение в реал-тайм мы начали теребить американцев на тему во сколько раз можно сократить объем и увеличить производительность переписав все на асме. Наконец те потупившись промямлили что-то про 10 раз.
А ведь речь идет об очень симпатичной архитектуре ZSP400. Что же тогда говорить о кривых TMS, которые проектировались явно садистами.
Напомню. Си разрабатывался для систем весьма однородных - т.н. PDP11. В них данные и указатели на байт (да можно сказать, что и на слово тоже) вообще никак не отличались. Пост- и пре- инкремент/декремент были очень органичны. Поэтому любые попытки разделения регистров на адресные-общие-аккумуляторы ведут к избыточности кода. Единственным правильным решением был переход на 32-битные данные-адресацию.

=== Допустим, если Вы используете аккумулятор, а это 40 бит, то как Вы >>определите к ниму тип переменной? Не 32 и не 64...
посмотрите, например, spru187k.pdf, Раздел 7.3 (Data Types) английским по белому все написано. Есть еще масса вещей, которые помогают сделать все очень хорошо.

Ну это уже не серьезно. Естественно, для работы с аккумуляторами есть спец. ф-ции. Но тогда от настоящего Си уже ничего не остается. Предлагаю в Си-программе сразу после main писать asm и вперед. :)))

=== Если из Вашего предожения убрать слово "обязательно" и добавить перед словом компилятор слова "какой-нибудь плохой", то тогда я соглашусь.
Для нормального (даже не для очень хорошего) компилятора такого не произойдет.

Ну то, что CCS использует очень плохие компиляторы - я согласен. Об этом и речь.

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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru