реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> FPGA и Си
RHnd
сообщение Apr 14 2007, 13:39
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



Наткнулся на эту тему. Прочитал. Нифига не понял. smile.gif

Я сам абсолютный новичок во всех этих делах, но поставлена передо мной задача, описанная тут http://electronix.ru/forum/index.php?showtopic=30180

Объясните, пожалуйста, используется ли сейчас написание на C для FPGA? Если нет, то почему? Стоит ли мне на данный момент вообще заморачиваться с изучением этой области? Тут в теме был ряд ссылок на различные версии компиляторов C->FPGA. Как я понял, они все транслируют написанный код в HDL, а уже этот HDL потом вставляется в квартус и так далее. Так? Как они вообще работают и как с ними взаимодействовать? Какие лучше? Как вообще выглядит процесс разработки? Вообщем, очень хотелось бы получить небольшой ликбез на эту тему.

Я плотненько полазал по сайту ImpulseC, там все так красиво описано, что аж слюнки текут. А как оно в реальности обстоит?

Сообщение отредактировал RHnd - Apr 14 2007, 13:51
Go to the top of the page
 
+Quote Post
Саша Z
сообщение Apr 14 2007, 16:01
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822



Цитата(Camelot @ Feb 23 2007, 02:47) *
На западе как я смотрю вовсю больше пользуют VHDL чем Verilog к примеру, хотя иногда поподаются требования знать его. По моему все дело в том что написано куча готовых проектов, в которые вложены деньги и переходить на новые языки с работающих кодов никто не хочет. Вот это все и отмирает по тихоньку....


На западе в принципе и то и то в ходу. Есть тенденция писать ASICи на Verilogе, особенно в Штатах и им подобных моделях хай-тека (например Израиль и Дальний Восток), ну а если учесть что часто (но не всегда) FPGA это идет как переходный процесс к ASIC (т.е. делается принципиальная имплементация на FPGAе, отрабатываются проблемные логические вещи, алгоритмы и т.д. и потом делается ASIC), но удобства ради предпочитают Verilog и для FPGAев. Т.е. если вы напереваетесь например войты в рынок труда в данной области в Штатах, Израиле, Дальнем Востоке (Тайвань, Япония и т.д.) - знание и опыт Verilogа вам помогут больше чем VHDLя (хотя и последний далеко не помеха...)

Европа-же по моему больше стоит на VHDLе.
Go to the top of the page
 
+Quote Post
CaPpuCcino
сообщение Apr 14 2007, 18:50
Сообщение #18


тоже уже Гуру
******

Группа: Свой
Сообщений: 2 047
Регистрация: 13-06-05
Из: Кёлн - Санкт-Петербург
Пользователь №: 5 973



Цитата(Саша Z @ Apr 14 2007, 17:01) *
Т.е. если вы напереваетесь например войты в рынок труда в данной области в Штатах, Израиле, Дальнем Востоке (Тайвань, Япония и т.д.) - знание и опыт Verilogа вам помогут больше чем VHDLя (хотя и последний далеко не помеха...)
Европа-же по моему больше стоит на VHDLе.

полностью согласен. а теперь сравните объёмы разработок США и Европы. Европа это вообще задворки в плане введения в строй передовой технологии (за небольшим исключением)
по поводу СистемЦ: при синтезе это всё тот же структурный подход - ничего из ряда научной фантастики в данной области (синтез поведения) нет - просто ещё один синтаксис (у Ц++ он достаточно гибкий для расширения поэтому его и выбрали за основу новой технологии SC - а в принципе можно написать синтезатор хоть с Паскаля или с Бейсика /так же как вы в принципе можете компилировать Верилог и ВХДЛ в исполняемый код для процессоров регулярной архотектуры - если это кому-нибудь когда-нибудь будет нужно/ - главное то что координатьно ничего не меняется : синтез - структурный, а не поведеньческий! /хотя есть свои наработки у продвинутых фирм и поведеньческого синтеза - но это больше их ноу-хау в технологии синтеза чем характеристика какого-либо языка/)


--------------------
И снова на арене цирка - дрессированные клоуны!! Оказываем консультации по электронике за симпу круглосуточно.
Go to the top of the page
 
+Quote Post
Саша Z
сообщение Apr 14 2007, 20:07
Сообщение #19


Знающий
****

Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822



Цитата(CaPpuCcino @ Apr 14 2007, 19:50) *
полностью согласен. а теперь сравните объёмы разработок США и Европы. Европа это вообще задворки в плане введения в строй передовой технологии (за небольшим исключением)


Да, так и есть. И учитывая это - трудно понять академии - в универах на последнем году обучения предлагаются предметы програмируемой логики - но везде в основном учат азы VHDL (универы Израиля и те американские о которых я в курсе). Может из-за того что VHDL более строг и систематичен...
Go to the top of the page
 
+Quote Post
RHnd
сообщение Apr 14 2007, 22:38
Сообщение #20


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



А на мои вопросы кто-нибудь ответит? smile.gif
Go to the top of the page
 
+Quote Post
CaPpuCcino
сообщение Apr 14 2007, 23:09
Сообщение #21


тоже уже Гуру
******

Группа: Свой
Сообщений: 2 047
Регистрация: 13-06-05
Из: Кёлн - Санкт-Петербург
Пользователь №: 5 973



Цитата(RHnd @ Apr 14 2007, 23:38) *
А на мои вопросы кто-нибудь ответит? smile.gif

наверное просто все светилы Катапульт Си отдыхают - советую дождаться их, но если не втерпёж - могу и я на уровне сплетен поделиться smile.gif
Цитата
Тут в теме был ряд ссылок на различные версии компиляторов C->FPGA. Как я понял, они все транслируют написанный код в HDL, а уже этот HDL потом вставляется в квартус и так далее. Так?

был на конференции на одной - там был доклад по какому-то из подобных инструментов - они действительно производили трансляцию с Си на ВХДЛ - зачем верхний уровень на Си? - чтобы можно было моделировать взаимодействие программной и аппаратной части (это в принципе решается и средствами СистемСи и Верилога - и в какой-то степени и ВХДЛ для двух последних методами импорта Сишных функций в общую модель симулятора - в первом случае - естественно напрямую /Си++ всё-таки/)
в принципе задачи синтеза поведеньческих конструкций до некоторой степени решаемы (можно например синтезировать do-while или цикл for так чтобы он был действительно циклом во времени а не в пространстве) поэтому поведение Си синтезировать до некоторой степени можно
однако програмистским языкам как правило не хватает синтаксических средств для представления структуры устройства (ведь функционирование устройства - это множество параллельных процессов - а следовательно и представления о взаимодействие процессов во времени, но самая большая сложность для поведеньческого синтеза -это неоднозначность абстрактных операций над данными и множества их возможных реализаций - простой пример - умножение вам как выполнять? конвейером за n тактов или мартичным умножителем за 1 такт(но более длинный в рамках той же технологии) - и так далее - а система вещь детерминированная - там хотя бы одна неоднозначность и формальные методы уже не работают. (можно на эту тему долго рассуждать - здесь не буду - далеко зайти можно )
Цитата
Объясните, пожалуйста, используется ли сейчас написание на C для FPGA? Если нет, то почему? Стоит ли мне на данный момент вообще заморачиваться с изучением этой области?

используется, но эти инструменты стоят дороже и каждый- это индивидуальное техническое решение какой-то компании, поэтому они занимают малую долю рынка. вы хотите чтоб все ваши проекты зависили от одного единственного продукта? а если фирма его производящая, например, разориться - а вы будете привязаны к их технологии
ну вот всё что знал рассказал wink.gif


--------------------
И снова на арене цирка - дрессированные клоуны!! Оказываем консультации по электронике за симпу круглосуточно.
Go to the top of the page
 
+Quote Post
CodeWarrior1241
сообщение Apr 15 2007, 01:48
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 496
Регистрация: 14-03-07
Из: In The District
Пользователь №: 26 165



Цитата(Саша Z @ Apr 14 2007, 13:07) *
Да, так и есть. И учитывая это - трудно понять академии - в универах на последнем году обучения предлагаются предметы програмируемой логики - но везде в основном учат азы VHDL (универы Израиля и те американские о которых я в курсе). Может из-за того что VHDL более строг и систематичен...


Мой уневер (UMCP в 2003-2004 гг.) офицально только преподавал Verilog как HDL которым следует пользоватся. Тем не мение, отдельные препод. могли включать VHDL в программу по желанию, но это не было детальное образование, а так, на скорую руку, только что бы что-то постигнуть... Но зато все фирмы выполняющаи госзаказы работают с VHDL, правительство США не признает Verilog не для гражданских, и не на военных заказов. Собственно, VHDL был создан для пользовоня DoD контракторов.


--------------------
In Mozilla, you keep tabs on your browser. In the USSR, your browser keeps tabs on you.
Go to the top of the page
 
+Quote Post
Саша Z
сообщение Apr 15 2007, 09:48
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822



Цитата(CodeWarrior1241 @ Apr 15 2007, 02:48) *
Мой уневер (UMCP в 2003-2004 гг.) офицально только преподавал Verilog как HDL которым следует пользоватся. Тем не мение, отдельные препод. могли включать VHDL в программу по желанию, но это не было детальное образование, а так, на скорую руку, только что бы что-то постигнуть... Но зато все фирмы выполняющаи госзаказы работают с VHDL, правительство США не признает Verilog не для гражданских, и не на военных заказов. Собственно, VHDL был создан для пользовоня DoD контракторов.


Это интересно, не знал. У нас почти везде где проэктируются ASICи - идет Verilog. Наши конторы очень часто и много пересекаются с американскими (много так-же R&D центров американских контор), и везде там Verilog где сталкивались. Хотя не знаком со Штатовксой военкой лично, вполен вероятно они действительно обязаны работать на VHDLe. В плане ASICом я сталкивался только с областью consumer (чипы на рынок мультимедии - digital cameras, DVDs, DVD recorders, и т.д.)
В израильских техн. вузах я пока не встречал курсов HDLя на Verilogе, все что видел - VHDL, но тоже уровень самый базисный. Тоже самое слышал об нескольких Штатовских, думал что это тенденция.
Хотя странно, ежели официальная линиая правительства (в Штатах) на военку/гос-заказы - VHDL, почему-же в универах тогда дают Verilog ? Или одно другого не касается ?
Go to the top of the page
 
+Quote Post
cupertino
сообщение Apr 15 2007, 11:50
Сообщение #24


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 19-12-06
Из: Silicon Valley, California
Пользователь №: 23 683



Цитата(Саша Z @ Apr 15 2007, 09:48) *
Это интересно, не знал. У нас почти везде где проэктируются ASICи - идет Verilog. Наши конторы очень часто и много пересекаются с американскими (много так-же R&D центров американских контор), и везде там Verilog где сталкивались. Хотя не знаком со Штатовксой военкой лично, вполен вероятно они действительно обязаны работать на VHDLe. В плане ASICом я сталкивался только с областью consumer (чипы на рынок мультимедии - digital cameras, DVDs, DVD recorders, и т.д.)
В израильских техн. вузах я пока не встречал курсов HDLя на Verilogе, все что видел - VHDL, но тоже уровень самый базисный. Тоже самое слышал об нескольких Штатовских, думал что это тенденция.
Хотя странно, ежели официальная линиая правительства (в Штатах) на военку/гос-заказы - VHDL, почему-же в универах тогда дают Verilog ? Или одно другого не касается ?

Потому что гос-заказы в США - это очень мало, основной объем разработок - коммерческий. Официальным языком программирования для военки США долго была Ada - ну и что, практически никто его не знает.
Go to the top of the page
 
+Quote Post
Саша Z
сообщение Apr 15 2007, 12:27
Сообщение #25


Знающий
****

Группа: Свой
Сообщений: 921
Регистрация: 6-04-07
Из: Israel
Пользователь №: 26 822



Цитата(cupertino @ Apr 15 2007, 12:50) *
Потому что гос-заказы в США - это очень мало, основной объем разработок - коммерческий. Официальным языком программирования для военки США долго была Ada - ну и что, практически никто его не знает.


Понял, спасибо, было интерсно узнать.
Go to the top of the page
 
+Quote Post
Doka
сообщение Apr 15 2007, 16:26
Сообщение #26


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



Цитата(v_mirgorodsky @ Feb 22 2007, 13:32) *
Это в общем-то напоминает ситуацию с процессорами лет на 15 раньше. Тогда, в эпоху 286 машин
...
[skiped]
...
Я думаю, что по мере роста ресурсов в FPGA все большая и большая часть проектов будет разрабатываться на SystemC и лишь высокоскоростные блоки будут все также писаться на поведенческом VHDL или Verilog. Такая практика повсеместно используется в разработке програмного обеспечения и дает наилучшее сочетание цена/производительность получаемых решений.

я бы не стал проводить подобных аналогий между десктоп-направлением и встраиваемыми применениями (а уж в проекции на FPGA - высокопроизводительными встраиваемыми системами)

в процессорах плата за пользовани ЯВУ - увеличенное время выполнения алгоритма
в ПЛИС - повышенное потребление (докучи к необходимости применения более емкого и дорогого кристалла)

в ASIC-проектировании ситуция еще более интересная (в случае рассмотрения возможного использования SC): надо найти компромисс между площадью (т.е. стоимостью) конечного кристалла и временем разработки + опять же существуют свои сферы устройств с критичным энергопотреблением.


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post
CodeWarrior1241
сообщение Apr 16 2007, 01:29
Сообщение #27


Местный
***

Группа: Свой
Сообщений: 496
Регистрация: 14-03-07
Из: In The District
Пользователь №: 26 165



Цитата(cupertino @ Apr 15 2007, 04:50) *
Потому что гос-заказы в США - это очень мало, основной объем разработок - коммерческий. Официальным языком программирования для военки США долго была Ada - ну и что, практически никто его не знает.


Я знаю biggrin.gif . Первая работа послала на курс Ada-95, у нас все софт что выше network и link layer (в т.ч. все чего косается пользователь) должно было быть на Ada. И не какая нибудь супер-секретноя работа, а заурядня гражданская контора... Просто кому-то хотелось иметь Mil-Spec, и почему-то не нравилось C/C++. Я от туда смотался после 2 лет, но слышал от знакомых что теперь все переписывают на Java cranky.gif .


--------------------
In Mozilla, you keep tabs on your browser. In the USSR, your browser keeps tabs on you.
Go to the top of the page
 
+Quote Post
v_mirgorodsky
сообщение Apr 16 2007, 11:24
Сообщение #28


Местный
***

Группа: Свой
Сообщений: 342
Регистрация: 21-02-05
Пользователь №: 2 804



Цитата
я бы не стал проводить подобных аналогий между десктоп-направлением и встраиваемыми применениями (а уж в проекции на FPGA - высокопроизводительными встраиваемыми системами) в процессорах плата за пользовани ЯВУ - увеличенное время выполнения алгоритмав ПЛИС - повышенное потребление (докучи к необходимости применения более емкого и дорогого кристалла)в ASIC-проектировании ситуция еще более интересная (в случае рассмотрения возможного использования SC): надо найти компромисс между площадью (т.е. стоимостью) конечного кристалла и временем разработки + опять же существуют свои сферы устройств с критичным энергопотреблением.
Угу, так потому я и сказал о дальнейшем развитии технологий FPGA до той степени, когда 10-20 тысяч макроячеек - типа современных альтеровский ALUT'ов будут раздаваться в качестве бонуса к основному объему самой FPGA smile.gif Согласен, это время наступит очень не скоро, но оно обязательно придет. Все ведь дело в соотношении стоимости чипа ко времени программиста его проектирующего smile.gif

C точки зрения временного или пространственного разворота цикла - так это тоже не проблема. Компилятор будущего smile.gif сам примет решение как его развернуть и сгенерит код, который будет давать абсолютно четкий детерминированный результат согласно спецификации языка. Для примера, Intel C++ компилятор версии 6.0 при компиляции исходников для P4 Northwood заменял некоторые операции умножения несколькими операциями сложения - чем не пример пространственного vs временного разворота цикла?


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

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

Пройдет время и подобные инструменты появятся и для FPGA. Может не сразу оптимальные, но ведь и компиляторы прошли долгую эволюцию до своего сегодняшнего уровня.


--------------------
WBR,
V. Mirgorodsky
Go to the top of the page
 
+Quote Post
CaPpuCcino
сообщение Apr 16 2007, 16:09
Сообщение #29


тоже уже Гуру
******

Группа: Свой
Сообщений: 2 047
Регистрация: 13-06-05
Из: Кёлн - Санкт-Петербург
Пользователь №: 5 973



Цитата(v_mirgorodsky @ Apr 16 2007, 12:24) *
Пройдет время и подобные инструменты появятся и для FPGA. Может не сразу оптимальные, но ведь и компиляторы прошли долгую эволюцию до своего сегодняшнего уровня.

ага - и на марсе скоро будут яблони цвести. конечно когда-нибудь всё у всех будет. да и в принципе языки программирования отомрут - компиляторы будут непосредственно читать гениальные мысли разработчика прям из мозга - по электромагнитным показаниям его активность wink.gif


--------------------
И снова на арене цирка - дрессированные клоуны!! Оказываем консультации по электронике за симпу круглосуточно.
Go to the top of the page
 
+Quote Post
Kopart
сообщение Apr 16 2007, 17:07
Сообщение #30


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 1-03-05
Из: Spb
Пользователь №: 2 972



Цитата(CaPpuCcino @ Apr 16 2007, 17:09) *
ага - и на марсе скоро будут яблони цвести. конечно когда-нибудь всё у всех будет. да и в принципе языки программирования отомрут - компиляторы будут непосредственно читать гениальные мысли разработчика прям из мозга - по электромагнитным показаниям его активность wink.gif

+1
Вот помечтали о следующем веке...

Думаю, ресурсами одной компании сделать нормальный синтезатор с языка С задача как минимум 5-10 лет.


--------------------
Насколько проще была бы жизнь, если бы она была в исходниках
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 13th July 2025 - 20:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01493 секунд с 7
ELECTRONIX ©2004-2016