Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт мар 29, 2024 02:55

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: DSP Forth
СообщениеДобавлено: Сб авг 17, 2013 00:46 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Кто какой форт использует для сигнальных процессоров? Судя по поиску в гугле dsp site:http://www.fforum.winglion.ru мало тут dsp обсуждали.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Сб авг 17, 2013 08:40 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Sunforth писал(а):
Кто какой форт использует для сигнальных процессоров? Судя по поиску в гугле dsp site:http://www.fforum.winglion.ru мало тут dsp обсуждали.

Тоже такое "ощущение".
dsPIC30F поддержан в FlashForth.
Также были варианты для TMS320, ADSP21xx, motorolla поиском по i-net можно найти сделанные варианты на taygeta.com sourceforge и др. ресурсах.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Сб авг 17, 2013 16:13 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
DSP - область, довольно критичная к быстродействию и "жесткому" реальному времени. Жесткость здесь вплоть до потактового контроля, поскольку цифровая фильтрация подразумевает постоянство интервала времени, через который берутся входные отсчеты. Поэтому в особо ответственных местах можно пользоваться и ручным кодированием на ассемблере, а в сложных случаях подойдут готовые библиотеки от производителя. Кроме того, специфика DSP такова, что в этих задачах прекрасно чувствуют себя FPGA, работающие либо отдельно, либо как сопроцессор для сигнальника (а на деле выполняющие весь объем вычислений и оставляющие сигнальнику только общее управление). Применять Форт для DSP можно, но не путем прямой прокачки данных через стек. Есть множество вспомогательных задач, где потребуется интерактивность и возможность наращивания синтаксиса до понятий предметной области.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Сб авг 17, 2013 21:12 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
1. Какого производителя DSP выбрать TI или AD или других? (если сравнивать по цене, по решениям, по богатству готовых библиотек и по другим критериям).
У меня есть плата Altera DE1. В 2009-2010 осваил эту плату, в качестве средства разработки использовал квартус 2. Запустил софт- микроконтроллер NIOS, потом построил несколько логических схем, немного поигрался и забросил. Большая цена плис, управление плисом с помощью компьютера, фактически работа в режиме
Цитата:
FPGA, работающие .... отдельно
все это увеличивало до космических высот стоимость решения. Начал осваивать верилог но тоже забросил потому что уж очень было удобно чертить схемы в квартусе( для маленьких схем самое то).
Сейчас после освоения мк появилась дополнительная степень свободы и очень захотелось поработать вот по такой схеме
Цитата:
FPGA, работающие ... как сопроцессор для сигнальника (а на деле выполняющие весь объем вычислений и оставляющие сигнальнику только общее управление)

Если исходить из этого http://ru.wikipedia.org/wiki/%D0%A6%D0% ... 0%BE%D1%80 основное преимущество сигнального процессора перед мк в том что операцию умножения умеет делать в один такт
Цитата:
"Аппаратное ускорение сложных вычислительных инструкций, то есть быстрое выполнение операций, характерных для цифровой обработки сигналов, например, операция «умножение с накоплением» (MAC) (Y := X + A ? B) обычно исполняется за один такт."
Насколько быстрее это решение работает по сравнению со сдвигом и сложением? После прочтения Броуди невольно задаешься вопросом - Почему речь идет о числах с плавающей точкой а не о числах с фиксированной точкой?
Вот это
Цитата:
"По сравнению с микроконтроллерами, ограниченный набор периферийных устройств — впрочем, существуют «переходные» чипы, сочетающие в себе свойства DSP и широкую периферию микроконтроллеров."
немного гасит интерес к DSP.
На начальном этапе думаю связать плис от Altera и мк от Atmel, поскольку они у меня есть.
2. Какого производителя плис выбрать Altera или Xilinx? У ксилинкса как я помню чипы немного дешевле чем у альтеры( а в некоторых случаях и существенно дешевле). По крайне мере так было года три назад. По средствам разработки что лучше? По библиотекам у Altera тогда нашел все что нужно было. Но судя по форумам ксилинкс тоже не отстает от алтеры. Тогда все линуксоиды сидели на ксилинксе. Но сейчас алтера тоже сделала под линукс среду разработки (пока не смотрел его).
Здесь http://we.easyelectronics.ru/plis/plis- ... chego.html подробно описано какие чипы можно использовать для самостоятельного изготовления плат при изучении плиса.
3. Но тут еще одна мысль, зачем городить весь этот огород если можно обойтись только DSP. И использовать вот эту схему решений
Цитата:
Поэтому в особо ответственных местах можно пользоваться и ручным кодированием на ассемблере, а в сложных случаях подойдут готовые библиотеки от производителя.

В сети много решений с применением DSP. Но насколько бысрее DSP по сравнению с микроконтроллерами и насколько DSP отстает от плиса?
4.
Цитата:
Жесткость здесь вплоть до потактового контроля, поскольку цифровая фильтрация подразумевает постоянство интервала времени, через который берутся входные отсчеты.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Сб авг 17, 2013 22:24 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Sunforth писал(а):
1. Какого производителя DSP выбрать TI или AD или других? (если сравнивать по цене, по решениям, по богатству готовых библиотек и по другим критериям).

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

Sunforth писал(а):
все это увеличивало до космических высот стоимость решения.

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

Sunforth писал(а):
Цитата:
"Аппаратное ускорение сложных вычислительных инструкций, то есть быстрое выполнение операций, характерных для цифровой обработки сигналов, например, операция «умножение с накоплением» (MAC) (Y := X + A ? B) обычно исполняется за один такт."
На сколько быстрее это решение работает по сравнению со сдвигом и сложением?


Хм... один такт :) Аппаратный умножитель - это те же сдвигатели и сумматоры, реализованные аппаратно и работающие одновременно.

Sunforth писал(а):
После прочтения Броуди невольно задаешься вопросом - Почему речь идет о числах с плавающей точкой а не о числах с фиксированной точкой?

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

Sunforth писал(а):
Какого производителя плис выбрать Altera или Xilinx

Они вполне паритетны, вплоть до того, что сейчас делают свои ПЛИС на одной и той же фабрике. Я могу существенно помочь с Xilinx.

Sunforth писал(а):
Но насколько бысрее DSP по сравнению с микроконтроллерами и насколько DSP отстает от плиса?


DSP - это тоже микроконтроллер, только оптимизированный для задач, требующих выполнять очень много операций "умножение с накоплением". Он быстрее обычно не потому, что нельзя сделать такой МК, а потому что МК на такой частоте будет иметь избыточную производительность. Большая частота - это еще и большое потребление, поэтому если говорить о спектральном анализе, то нам нужен DSP на частоте 500-1200 МГц, а периферия в нем вобщем-то не нужна. А вот в роутер не надо запредельную производительность, но надо Ethernet, WiFi, и в целом можно USB, RS-232, разные АЦП и прочее (на всякий случай). Так что сигнальные процессоры можно рассматривать как быстрые МК со специальными командами.

С ПЛИС дело другое. Частота ПЛИС отстает от частоты МК из-за программируемых соединений, зато за один такт ПЛИС может выполнить огромное количество операций. Были бы операции (и в этом обычно и состоит стратегическое искусство применения ПЛИС). Даже ПЛИС начального уровня дадут от 4 до 30-40 умножений за такт, а самый крупный чип имеет 3960 умножителей. Поэтому формально переплюнуть DSP по количеству действий за единицу времени не так уж сложно.

Sunforth писал(а):
Не знаю как в DSP, но у мк постоянство интервала времени явно хромает судя по используемому обычному кварцу. Для достижения более менее нормального постоянства интервала времени необходимо использовать прецизионные термостатированные генераторы.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вс авг 18, 2013 01:07 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Цитата:
Я могу существенно помочь с Xilinx.

Почему выбрали Xilinx, а не Altera?
Цитата:
С ПЛИС дело другое. Частота ПЛИС отстает от частоты МК из-за программируемых соединений

По памяти у Плиса частота больше чем у МК. Кварц atmega16 у меня 16 МГц. А для плиса http://www.terraelectronica.ru/news_postup.php?ID=2350
Цитата:
50 МГц генератор, 24 МГц генератор, 27 МГц генератор и источник внешнего тактового сигнала;

а понятно там опечатка не МК, а DSP http://www.analog.com/ru/processors-dsp ... index.html
Цитата:
ADSP-BF606 400MHz


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вс авг 18, 2013 12:58 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
http://www.scanti.ru/PRODUCTS.PHP?id=TI ... Processors интересный путь выбрали "Двухядерные микроконтроллеры (DSP+ARM) семейства Concerto". Скорее всего DSP для режима реального времени.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вс авг 18, 2013 14:23 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Sunforth писал(а):
Почему выбрали Xilinx, а не Altera?

Так сложилось исторически :) У Альтеры нет монобрендовых дистрибьюторов в России, поэтому получить интересующие кристаллы было очень сложно. Кончилось тем, что мне предложили вмсто Альтеры "взять лучше микроконтроллер, потому что их у нас на складе много". Сейчас ситуация немногим отличается, тем более что и Altera опаздывает с выпуском новых ПЛИС, и дистрибьюторы нацелены на привоз их в Россию сразу под большую партию. С Xilinx ситуация существенно лучше в плане закупки конкретной микросхемы или платы (а не сравнения характеристик по ссылкам).
Sunforth писал(а):
По памяти у Плиса частота больше чем у МК. Кварц atmega16 у меня 16 МГц

Речь идет о частоте, которая технически достижима для микросхемы при сопоставимом техпроцессе. Atmel не стремится повышать частоту ядра. При существующей технологии можно увидеть процессоры в 500, 800, и даже 1200 МГц, а ПЛИС пока дошли до отметки 750.

Sunforth писал(а):
"Двухядерные микроконтроллеры (DSP+ARM) семейства Concerto". Скорее всего DSP для режима реального времени.

Да, сейчас такой подход получает все большее распространение. У DSP потому и не стремятся ставить большой набор периферии, что отвлекаться на эту периферию ядро сигнального процессора не должно, иначе пострадает основной алгоритм обработки сигнала. А вот процессор вроде ARM наоборот, вполне способен и коммуникациями заниматься, и интерфейс рисовать.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Пн авг 19, 2013 22:39 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Что учить verilog или vhdl. Судя по форуму vhdl рулит. У Полякова есть хорошее сравнение
Цитата:
В целом по поводу этих языков можно сказать, что у них скорее больше общего, чем различий, как, например, у брюнетки и блондинки - обе дамы приятной наружности, только одна из них (VHDL) посолиднее и пофигуристей, а другая (Verilog) в этом смысле не очень, но полегче, быстрее и отслеживает моду и имеет лучшую связь с заграницей ( в нашем случае с языком С).

Дальше еще лучше
Цитата:
В отличие от VHDL, который строго типизирован и синтаксически напоминает языки ADA и Pascal, Verilog базируется на Си, имеет меньше встроенных возможностей саморасширения, но зато более прост в реализации(более простой и быстрый компилятор), имеет более развитый интерфейс с языком Си и лаконичен, что позволяет уменьшить объем описаний схем примерно в полтора раза по сравнению с VHDL

Если начинать выбирать, однозначно брюнетки. Похож на язык Си. Знаю Си, но паскаль даже не стал учить исходя из принципа "Зачем он нужен если знаешь Си?". Про АDA только слышал и много хвалебного. Но смущает одно Verilog имеет меньше "встроенных возможностей саморасширения" - насколько это критично для простого юзера?. Думаю для профессионала в этом деле нужен VHDL.
Для себя решил так, попробую и брюнетку и блондинку, выберу ту с кем легче, меньше ошибок допускаю, и т.д :)
Вопрос к Хищнику, почему VHDL используете, какие у него преимущества перед Verilog?


Последний раз редактировалось Sunforth Пн авг 19, 2013 23:51, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Пн авг 19, 2013 23:39 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Интересная ссылка http://www.angelfire.com/in/rajesh52/verilogvhdl.html
Цитата:
Verilog is probably the easiest to grasp and understand

но
Цитата:
VHDL may seem less intuitive at first for two primary reasons. First, it is very strongly typed; a feature that makes it robust and powerful for the advanced user after a longer learning phase. Second, there are many ways to model the same circuit, specially those with large hierarchical structures.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вт авг 20, 2013 00:24 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
http://we.easyelectronics.ru/plis/chto- ... -plis.html
Цитата:
Чем VHDL отличается от обычных языков программирования типа Си, Паскаля и т.д.? Самое главное отличие в том, что VHDL описывает параллельные процессы!!! Если код на Си или Паскале у нас выполняется по очереди команда за командой и надо изощряться с таймерами и прерываниями чтоб обработать разные куски кода «одновременно», то на VHDL разные блоки программы выполняются параллельно друг другу, но в тоже время в VHDL есть часть комманд, которые выполняются последоватеьно. Поэтому структура программы в корне отличается от привычной микроконтроллерной.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вт авг 20, 2013 02:00 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
http://www.linux.org.ru/tag/altera
Цитата:
Известный производитель микросхем программируемой логики, компания Altera, представила общественности проект по созданию инструмента, позволяющего исполнять на FPGA код, написанный для OpenCL. OpenCL является основанным на C открытым стандартом для параллельного программирования. В настоящее время он активно используется для переноса на графические карты вычислений, требующих высокой производительности. Интерес к графическим картам был вызван в первую очередь тем, что применяемые в них процессоры способны одновременно выполнять большое число операций, что позволяет достичь колоссальной производительности на хорошо распараллеливаемых задачах. Эти же соображения подтолкнули разработчиков обратить внимание на FPGA. Altera стала членом рабочей группы по OpenCL в январе прошлого года. Анонсированный инструмент поддерживает системы, сочетающие программируемую логику с ARM или x86 процессорами. Первые результаты применения этой технологии показали 35-кратный прирост производительности в сравнении с классическими многоядерными решениями и пятидесятипроцентное уменьшение времени разработки в сравнении с разработкой на HDL.

У Xilinx есть такие решения?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вт авг 20, 2013 03:01 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Хорошее сравнение VHDL и Verilog
https://parallel.ru/fpga/hdl.html

Но самое главное нашел вот это:
1.Forth-процессор на VHDL
http://habrahabr.ru/post/149686/
про это давно знал
2. http://www.excamera.com/sphinx/fpga-j1.html
а это нашел только что
http://excamera.com/sphinx/gameduino/ в этой плате чип от xilinx.

:D нашел все что нужно и для Verilog и для VHDL. Будем разбираться.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вт авг 20, 2013 13:35 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Sunforth писал(а):
Вопрос к Хищнику, почему VHDL используете, какие у него преимущества перед Verilog?

Если изучать оба языка, то лучше последовательность VHDL -> Verilog. Практика показывает, что люди, знающие VHDL, гораздо проще осваивают Verilog, а вот обратный порядок вызывает затруднения. Дело здесь в простоте Verilog-а, из-за которой приходится делать фактически два последовательных шага - сначала понять принципы проектирования с простым языком, а потом изучить более строгий и структурированный. Те, кто начинал с VHDL, на Verilog-е обычно занимаются просто ознакомлением с более простыми синтаксическими конструкциями.

Простота или строгость - вопрос философский. Прежде всего, оба языка одинаково эффективны в плане получаемых при синтезе конструкций, поэтому выбор идет исходя из эффективности разработчика при работе с этими языками. На первый взгляд, более эффективен Verilog - на нем надо написать в среднем в 1,5 раза меньше текста. Однако отладка проекта занимает довольно много времени, и тут строгость конструкций VHDL очень помогает - синтезатор VHDL просто не пропускает сомнительные конструкции, которые человек и САПР могли бы толковать по-разному (отсюда и больше текста). Что из этого сыграет решающую роль - можно сказать только в конкретных условиях.

У Xilinx для обоих языков есть набор примеров по описанию стандартных конструкций. А вообще, на практике используется один процедурный блок (process в VHDL и always в Verilog) и 4 основных синтаксических конструкции. Этого достаточно для основной части повседневной деятельности по проектированию, а дополнительные возможности языков и так потихоньку осваиваются.

Sunforth писал(а):
У Xilinx есть такие решения?


OpenCL на подходе. Сейчас появился Vivado HLS (High-Level Synthesis) - это С++/SystemC (только не прямая перекладка программы для процессора в ПЛИС, а описание алгоритма на Си-подобном языке с последующим переводом в HDL). HLS более универсален, OpenCL все же исходно ориентирован на GPU.

Sunforth писал(а):
Но самое главное нашел вот это:
1.Forth-процессор на VHDL
http://habrahabr.ru/post/149686/

Так Тигра наш, и на форуме есть :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: DSP Forth
СообщениеДобавлено: Вт авг 20, 2013 14:25 
Не в сети
Аватара пользователя

Зарегистрирован: Вт апр 16, 2013 15:20
Сообщения: 59
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Спасибо за обстоятельный ответ.
Цитата:
Если изучать оба языка, то лучше последовательность VHDL -> Verilog.

Так и сделаю.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB