Перейти к содержанию
    

Простите, но в этой теме мы обсуждаем гипотетическую "смерть" DSP-шных ядер. Если ставить вопрос так, как Вы, нужно говорить о преимуществах и недостатках гибких и жёстких архитектур вообще.

С точки зрения гибкости, ФПГА и ДСП стоят на разных уровнях иерархии: ФПГА гибче на "нижнем" уровне, а ДСП в этом смысле опережает её ступенькой выше.

Я вовсе не являюсь противником ФПГА; считаю только наиболее эффективным разумное сочетание вышеозначенной гибкости на разных уровнях, если задача того требует (впрочем, это банальность), а слухи о кончине DSP - несколько преувеличенными.

...

 

Именно, и ответ на этот вопрос зависит от текущего уровня технологии. Пока что - чем меньше технологические нормы, тем дороже запуск нового чипа, а рынок не резиновый, - тем больше шансов у гибких архитектур выйграть экономически.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Именно, и ответ на этот вопрос зависит от текущего уровня технологии. Пока что - чем меньше технологические нормы, тем дороже запуск нового чипа, а рынок не резиновый, - тем больше шансов у гибких архитектур выйграть экономически.
Мы ещё не говорили о том, что ФПГА и ДСП обладают разными уровнями аппаратной избыточности. :)

А запуск ФПГА по технологическим нормам 45нм, сдаётся, ничуть не дешевле запуска процессора по тем же нормам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мы ещё не говорили о том, что ФПГА и ДСП обладают разными уровнями аппаратной избыточности. :)

А запуск ФПГА по технологическим нормам 45нм, сдаётся, ничуть не дешевле запуска процессора по тем же нормам.

Запуск (комплект масок+тесты) - одинаково, а разработка самого кристалла - зависит от сложности (процессора, плис). Тут все как повезет.

 

Уровень аппаратной избыточности DSP (как и большинства современных процессоров) на реальном коде довольно велик (доходя до 10-20-кратного), т.к. не удается загрузить все функциональные узлы не то, что на 100% а хотя бы на 10-20%, к тому же их разрядность часто неоптимальна для задачи. Причем, чем "продвинутее" процессор, тем, в общем, эта избыточность получается больше.

Приведу пример: кто-нибудь здесь смог получить на реальных задачах после компилятора производительность, хотябы в 20-30% от потенциально возможной для P4 (а она огромна, 4 флопс+3 целочисленных) на 1 такт? То-то и оно. Хорошо, если есть хоть 1 полезная операция на 2 такта.

Чем сложнее архитектура, тем больше разрыв. В то же время "простенькие" MIPS на реальных задачах даже на коде из-под компилятора дают около 50% теоретической производительности. В результате холодный 400-МГц R5261 выполняет сишный код со скоростью, сравнимой с кипятящимся 3,2Г P4. Вот почему MIPS-ов так много в сетевом железе и принтерах :).

 

Уровень избыточности у ПЛИС очень сильно зависит от искусства проектировщика аппаратуры на ПЛИС, и может колебаться от непотребного до очень малого.

Потенциально, при разработке тракта обработки данных "под задачу" современная ПЛИС (со встроенными функциональными блоками) намного эффективнее стандартного DSP хотя бы потому, что содержит намного больше функциональных узлов и, главное, обладает возможностью соединить их напрямую, а не таскать данные в память и обратно, как это делает DSP и большинство процессоров общего назначения, не умеющих строить динамические конвейеры ("зацепление") исполнительных устройств. (Это, пожалуй, одна из последних "фишек" из мира векторных суперкомпьютеров, еще не освоенных толком в "обычных" процессорах).

 

Вообще, просматривается такая аналогия: пока задачу можно решить софтом на стандартном процессоре (а-ля ПК, Palm) - это самый практичный и дешевый в разработке ("на единицу сложности задачи") вариант. То, что стандартный процессор может быть сверхизбыточен, экономически несущественно - он дешев за счет массовости, и, главное "уже есть".

Программистом может быть смышленый школьник. Остальное доделает компилятор и среда разработки (которых - в силу массовости продукта - достаточно).

 

Следующая ступень - нужен не совсем "стандартный", но все еще серийный процессор (DSP). Софт писать уже сложнее, аппаратные ограничения (типа разрядности и структуры шин) учитывать. Стоимость разработки в пересчете на функцию - в несколько раз выше. Программист уже должен разбираться в обычной и дискретной математике и функционировании процессора, чтобы не делать "ляпов". Т.е. нужны кадры поквалифицированнее.

 

Следующая ступень - и серийный процессор не проходит, надо делать свой. Тут стоимость, сложность и требуемая квалификация при разработке резко растет - нужно не только софт писать, но и свой "процессор" делать. Попытки автоматизации этого процесса (типа генераторов мегафункций) для сколько-нибудь сложных задач пока дают результаты, сильно проигрывающие работе опытного разработчика, разбивающего задачу на аппаратную и программную составляющие.

Тут уже нужны люди, имеющие опыт в разработке систем в целом и проектировании специализированных ЭВМ. Это совсем редкие и дорогие кадры.

 

Дальше все зависит от тиража. Если возможный тираж велик и время терпит - процессор делается прямо на кремнии, ПЛИС используется только как макет. Если нет уверенности в оправданности затрат на разработку и производство чисто кремниевого - остается "выжимать" ПЛИС. Учитывая, что сроки все время поджимают, а тиражи далеко не всегда велики, плюс резкий рост стоимости запуска ИС в производство - то для многих "тяжелых" задач, например, фронт-енд вычислитель для локатора с ФАР, реальной альтернативы ПЛИС просто не остается.

Изменено пользователем SIA

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мы ещё не говорили о том, что ФПГА и ДСП обладают разными уровнями аппаратной избыточности. А запуск ФПГА по технологическим нормам 45нм, сдаётся, ничуть не дешевле запуска процессора по тем же нормам.

 

Тем не менее Vertex5 сделан по нормам 65нм и отстал в этом от интела меньше чем на год.

 

Думаю также что разработка плис по новым тех нормам всетаки дешевле поскольку плис это регулярная структура.

Заметте также что первыми новые тех нормы осваивают микросхемы памяти, поскольку они могут сьесть любое количество транзисторов и имеют регулярную структуру т.е. все блоки одинаковы и не требуют разработки каждого участка отдельно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И DSP - это не только умножалка. Отличительная особенность любого DSP - его шинная архитектура. Универсальным процам в этом смысле до ДСП далеко.

Реальная (а не из упрощенных листков) внутренняя шинная архитектура "универсальных" процов намного развитее (но и избыточнее) чем в DSP. 6-10 шин только от регистрового блока плюс 8-12 полноразрядных - от кэша первого уровня - обычное дело.

 

Тем не менее Vertex5 сделан по нормам 65нм и отстал в этом от интела меньше чем на год.

 

Думаю также что разработка плис по новым тех нормам всетаки дешевле поскольку плис это регулярная структура.

Заметте также что первыми новые тех нормы осваивают микросхемы памяти, поскольку они могут сьесть любое количество транзисторов и имеют регулярную структуру т.е. все блоки одинаковы и не требуют разработки каждого участка отдельно.

Это да. Но фактор времени важен - ПЛИС это заготовка, из нее еще продукт сделать надо (IP-блок сконфигурировать, оптимизировать под данную ПЛИС), а новый процессор - как правило, кушает уже готовую программу от предыдущего. Т.е. срок выпуска на рынок отличается.

Изменено пользователем SIA

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это да. Но фактор времени важен - ПЛИС это заготовка, из нее еще продукт сделать надо (IP-блок сконфигурировать, оптимизировать под данную ПЛИС), а новый процессор - как правило, кушает уже готовую программу от предыдущего. Т.е. срок выпуска на рынок отличается.

 

Еслиб появилась среда разработки в которой можно было бы не разделять програмную и апаратную часть при написании проекта и потом в процессе отладки и оптимизации переносить часть функций в плис (имею ввиду плис со встроенным процессорным ядром).

 

Но пока действительно разработка на плис требует больших трудо затрат и высоко квалифицированных кадров.

 

Ну кстати утверждается что проект от Vertex4 к Vertex5 переносится без изменений (но правда не используются некоторые новшества 5)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Уровень аппаратной избыточности DSP (как и большинства современных процессоров) на реальном коде довольно велик (доходя до 10-20-кратного), т.к. не удается загрузить все функциональные узлы не то, что на 100% а хотя бы на 10-20%, к тому же их разрядность часто неоптимальна для задачи. Причем, чем "продвинутее" процессор, тем, в общем, эта избыточность получается больше. Приведу пример: кто-нибудь здесь смог получить на реальных задачах после компилятора производительность, хотябы в 20-30% от потенциально возможной для P4 (4 флопс+3 целочисленных) на 1 такт? То-то и оно. Чем сложнее архитектура, тем больше разрыв. В то же время простые MIPS на реальных задачах даже на коде из-под компилятора дают около 50% теоретической производительности. В результате холодный 400-МГц R5261 выполняет сишный код со скоростью, сравнимой с 3,2Г P4.

 

Уровень избыточности у ПЛИС очень сильно зависит от искусства проектировщика аппаратуры на ПЛИС, и может колебаться от непотребного до очень малого...

Я немного не о том хотел сказать.

Аппаратная избыточность процессора и ПЛИС расположены опять же на разных уровнях иерархии. В первом случае - это наличие редко используемых при выполнении программы функциональных блоков, а также, в последнее время, присутствие "на борту" вовсе не используемой в конкретной задаче периферии (дань функциональной универсальности); во втором - "мёртвые" ресурсы кристалла, которые нельзя использовать не по причине плохой подготовки специалистов, но, чаще всего, из-за того, что конкретный алгоритм плохо ложится на структуру ПЛИС.

 

...Потенциально, при разработке тракта обработки данных "под задачу" современная ПЛИС (со встроенными функциональными блоками) намного эффективнее стандартного DSP хотя бы потому, что содержит намного больше функциональных узлов и, главное, обладает возможностью соединить их напрямую, а не таскать данные в память и обратно, как это делает DSP и большинство процессоров общего назначения, не умеющих строить динамические конвейеры ("зацепление") исполнительных устройств. (Это, пожалуй, последняя "фишка" из мира векторных суперкомпьютеров, еще не освоенная толком в "обычных" процессорах).
Смотря что подразумевать под эффективностью. Стоимость разработки ПО, сроки, себестоимость прибора, его энергопотребление в большинстве случаев являются определяющими.

 

...Вообще, просматривается такая аналогия: пока задачу можно решить софтом на стандартном процессоре (а-ля ПК, Palm) - это самый практичный и дешевый в разработке ("на единицу сложности задачи") вариант. То, что стандартный процессор может быть сверхизбыточен, экономически несущественно - он дешев за счет массовости, и, главное "уже есть".

Программистом может быть смышленый школьник. Остальное доделает компилятор и среда разработки (которых - в силу массовости продукта - достаточно).

 

Следующая ступень - нужен не совсем "стандартный", но все еще серийный процессор (DSP). Софт писать уже сложнее, аппаратные ограничения (типа разрядности и структуры шин) учитывать. Стоимость разработки в пересчете на функцию - в несколько раз выше. Программист уже должен разбираться в обычной и дискретной математике и функционировании процессора, чтобы не делать "ляпов". Т.е. нужны кадры поквалифицированнее.

 

Следующая ступень - и серийный процессор не проходит, надо делать свой. Тут стоимость, сложность и требуемая квалификация при разработке резко растет - нужно не только софт писать, но и свой "процессор" делать. Попытки автоматизации этого процесса (типа генераторов мегафункций) для сколько-нибудь сложных задач пока дают результаты, сильно проигрывающие работе опытного разработчика, разбивающего задачу на аппаратную и программную составляющие.

Тут уже нужны люди, имеющие опыт в разработке систем в целом и проектировании специализированных ЭВМ. Это совсем редкие и дорогие кадры.

Всё верно. Только это не является доказательством неизбежной гибели DSP - скорее, наоборот. Если можно решить задачу на копеечном блэкфине, зачем ставить дорогую и жручую ПЛИС?

Если же надо повысить быстродействие - симбиоз, как я уже говорил, помогает, потому, как слабые стороны одного дивайса компенсируются сильными сторонами другого, и наоборот.

 

...Дальше все зависит от тиража. Если возможный тираж велик и время терпит - процессор делается прямо на кремнии, ПЛИС используется только как макет. Если нет уверенности в оправданности затрат на разработку и производство чисто кремниевого - остается "выжимать" ПЛИС. Учитывая, что сроки все время поджимают, а тиражи далеко не всегда велики, плюс резкий рост стоимости запуска ИС в производство - то для многих "тяжелых" задач, например, фронт-енд вычислитель для локатора с ФАР, реальной альтернативы ПЛИС просто не остается.
Есть задачи, которые и на ПЛИС решить невозможно, по причинам мизерного использования ресурсов кристалла вследствие сложности алгоритма, большого энергопотребления и себестоимости прибора. Тогда приходится делать АСИК, даже без полного прототипирования и проверки функциональности на ПЛИС...

 

Реальная (а не из упрощенных листков) внутренняя шинная архитектура "универсальных" процов намного развитее (но и избыточнее) чем в DSP. 6-10 шин только от регистрового блока плюс 8-12 полноразрядных - от кэша первого уровня - обычное дело.
Это совершенно не так. DSP обладают уровнем "многопортовости" гораздо бОльшим, чем "универсальные" процессоры. Посмотрите на тигрошарк или блэкфин, например (о TI-шных продуктах, думаю, специалисты тоже словечко замолвят). :)

Вы ещё не забывайте о многошинной и многопортовой организации памяти нижних уровней - это тоже отличительная DSP-шная черта. Только на первый лист даташита при этом, действительно, обращать внимания не стоит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вообще, просматривается такая аналогия:

 

1. Стандартный - это самый практичный и дешевый в разработке вариант (МК/CPU)

 

2. Следующая ступень - нужен не совсем "стандартный", но все еще серийный процессор (DSP).

 

3. Следующая ступень - серийный процессор не проходит, надо делать свой (FPGA).

 

4. Следующая ступень - процессор делается прямо на кремнии (ASIC).

 

Согласен, хотя ничего нового Вы не сказали.

 

Добавлю лишь, что не отражена еще одна ступень - связка DSP+FPGA.

Во многих доках по применению FPGA (у той же Altera) эта связка часто изображается на функциональных диаграммах.

 

А также еще одна - связка DSP+ASIC.

 

И по ценам для запуска проекта с нуля для топ-моделей IC, ИМХО:

 

1. Стандартный - (МК/CPU) $1,000-$10,000

2. Следующая ступень - (DSP) $10,000-$100,000

3. Следующая ступень - (FPGA) $100,000-$1,000,000

4. Следующая ступень - (ASIC) $1,000,000-$10,000,000

 

Ессно, все по честному, на лицензионном софте. ;)

Изменено пользователем blackfin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И по ценам для запуска проекта с нуля для топ-моделей IC, ИМХО:

 

1. Стандартный - (МК/CPU) $1,000-$10,000

2. Следующая ступень - (DSP) $10,000-$100,000

3. Следующая ступень - (FPGA) $100,000-$1,000,000

4. Следующая ступень - (ASIC) $1,000,000-$10,000,000

Ессно, все по честному, на лицензионном софте.

Ну, это ещё смотря для каких проэктов. :) Часто приходится в одной конструкции совмещать все подходы (Вы ещё, кстати, универсальный проц пропустили, который крутит "тяжёлую" ОСь ради возможности использования вычислительных ресурсов целому коллективу разработчиков ПО и реализации сложных протоколов обмена данными). На одних ПЛИС тут далеко не уедешь. :)

 

ЗЫ. Я бы ещё все верхние цифирки умножил на некоторое число 3<N<10. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ЗЫ. Я бы ещё все верхние цифирки умножил на некоторое число 3<N<10. :)
Я лишь хотел указать на тенденцию. Ессно все это - "средняя температура по больнице".

 

PS. Кроме того, чистые проекты - большая редкость.

А начать "с нуля" 3-ю или 4-ую ступень вообще невозможно.

Обычно это результат эволюции проекта начиная с 1-ой ступени.

Отсюда и разница в порядке цен.

Изменено пользователем blackfin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ЗЫ. Я бы ещё все верхние цифирки умножил на некоторое число 3<N<10.

 

Да что-то не верится что даже с использованием АVR можнотся уложится менее чем за месяц одному человеку с нуля до запуска в производство (т.е. развести плату заказать распоять запрогромировать составить документацию и тех карту производства).

Учитывайте что со всякой мелочью ваше содержание предприятию обходится раза в 2 дороже чем ваша зарплата.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да что-то не верится что даже с использованием АVR можнотся уложится менее чем за месяц одному человеку с нуля до запуска в производство (т.е. развести плату заказать распоять запрогромировать составить документацию и тех карту производства)...
Это относится к "нижним" цифирькам. :)

АСИК тоже за лимон не зделаеш.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да что-то не верится что даже с использованием АVR можно уложится менее чем за месяц одному человеку с нуля до запуска в производство..
Где?

В Калифорнии?

В Лондоне?

В Москве?

В Киеве?

В Китае?

:07:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

АСИК тоже за лимон не зделаеш.

 

не знаю не пробовал.

 

Где?В Калифорнии?В Лондоне?В Москве?В Киеве?В Китае?

 

В одной из этих стран зарплата инженера менее 500$ ?(даже для китая думаю не намного меньше плюс в китае на данную операцию потребется более одного человека)

 

Повторю в условии задачи с нуля до производства, а не своять на демоборде (я еше не брал один этап который может относиться к понятию с нуля, а имменно изучение камня и среды) :biggrin: :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Повторю в условии задачи с нуля до производства,...
Если для Вас это важно, считайте, что первая ступень выглядит так:

1. Стандартный - (МК/CPU) $5,000-$50,000

:beer:

 

Как-то в конце 90-х у нас был "проект" с нуля:

на плате PIC, кварц, разъем и пару конденсаторов.

Сваяли за неделю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...