0
Вот как раз так, как автор делает, т.е. в ручном режиме, я бы работать и не советовал. Можете здесь же мою статью «Геморрой под названием ...» прочитать. Но с ней вполне вменяемо можно работать (особенно в больших и сложных проектах) с помощью скриптов и батников. Также удобно входные воздействия (например, сигналы) готовить в Матлабе. Сейчас готовлю статью на эту тему на этот ресурс, доделаю — выложу.
0
Да, разобрался уже: hdl coder стоит, но версия старовата. Получается, в новых версиях можно «объяснить» Симулинку что у тебя за плата — это гуд. Кстати, спасибо за статью, я сам чувак весьма опытный, но этого не знал :)
  • avatar
  • Kluwert
  • 16 сентября 2015, 12:54
0
А что за команда такая «fpgaBoardManager»? Чего-то нет такой в Матлабе.
  • avatar
  • Kluwert
  • 15 сентября 2015, 12:59
0
Слушайте, уже немного задолбало сравнение мягко и солёного в этой дискуссии. Поэтому не надо проталкивать своё мнение как единственно верное и тем более пытаться тут всех учить. А за мою зп не переживайте: я и когда в оборонке работал, получал — вам не снилось, а сейчас в славных Европах работаю и получаю даже по местным меркам нехило. Так вот вы удивитесь: в оборонке у нас как раз были лицензии на тот же Квартус, а вот тут мы работаем на ломаном софте! Так что, если что сказать по сути постов — говорите, а учить меня кому и какие вопросы задавать не надо!
  • avatar
  • Kluwert
  • 07 сентября 2015, 00:37
0
Ну так отлично, напишите статью о своём способе, раскройте тему. А я уж, в отместку, в комментах к ней, оттопчусь уже по вашей статье по полной программе :) Так сказать, что бы всё по-честному было :)
  • avatar
  • Kluwert
  • 03 сентября 2015, 22:56
0
Ну стандарты-то мы не читаем. Возможно и слава богу, ибо опытным путём выяснили, что 64 бит хватает везде и всегда :)
  • avatar
  • Kluwert
  • 03 сентября 2015, 22:40
0
О! Ну вот я вас и поймал на том, на чём и ожидал! Что такое «напрямую из корки в корку»? Правильно, вы опять же, аппаратно, гоните поток. При этом вы ещё сбоку навешиваете Микроблейз, который висит и съедает ресурсы только ради «для конфигурации» пары AXI'шных блоков. Кроме того, вы имеете исходные коды этих блоков? Нет. А теперь учтём, что 90% разработчиков в РФ (да и не только в РФ :)) используют криво-коряво сломанные САПР и, плюс, 90% проектов в РФ делается под военных — извольте выложить все исходные коды и обеспечьте безотказность.

На самом деле, мы с вами спорим на тему «о вкусе и цвете». Я просто хотел выразить не согласие с фразой про «кошмар и мрак». Написание руками UDP/IP-приёмопередатчика — совершенно не смертельная тема.

А по коду, см. мой ответ Signaller'у выше. Я, есс-но, выложил для поста сильно урезанную версию. В нормальной версии есть, например, вычислитель crc32 на лету
CRC32_byte_stream CRC32_inst
(
	.i_clk(i_clk),
	.i_rst(i_rst),	
	
	.i_start_frame(start_calculate_crc),	
	.i_crc_shiftout(start_output_crc),	
	
	.i8_byte(byte),	
	.o8_byte(crc_byte)
);

Это позволяет уже накладывать поверх UDP всё, что вам нужно и, в т.ч. данные из буфера и, конечно, счётчик пакетов. Честно могу сказать, это, конечно, не 40 строчек, а 260, при распечатке помещается на две странички. Один раз отлаженный, использовался уже минимум в 6 проектах. Собс-нно, всё что я имел сказать по этому поводу.
  • avatar
  • Kluwert
  • 03 сентября 2015, 15:31
0
Открыл комменты, по мере возможности буду отвечать.
  • avatar
  • Kluwert
  • 03 сентября 2015, 12:51
0
В первой части статьи эти строчки. Приём — ещё проще (ибо можно crc32 не проверять).
И очень бы интересно было посмотреть, как вы почти 112Мбайт/сек будете перекидывать на ЦАП, например (реальная задача), используя «Микроблейз» с ПДП?
  • avatar
  • Kluwert
  • 03 сентября 2015, 12:39
0
Спасибо, я о таком тоже не знал.
  • avatar
  • Kluwert
  • 03 сентября 2015, 12:27
+1
Наехал уже хотя бы потому, что USB, извините, вы можете просто прийти и воткнуть где вам хочется? Нет! Извольте драйверы сначала поставить, причём строго от той чипухи, что вы используете (FTDI, например), строго под ту ось, на которой вы работаете и то с почти обязательными «танцами с бубном» (что я не помню как дрова ставили для популярных FTDI'ных мостов?). А в Матлаб как? Правильно, приходит Вася-программист, пишет в Дельфях, или на Visual C++ какую-то кривую прогу, которая работает только на одном компе, при это надо выполнить кучу шаманских действий, что бы получить бинарник с отсчётами, которые… А с Ethernet'ом пришёл, воткнулся и — работай прямо из Матлаба.
  • avatar
  • Kluwert
  • 03 сентября 2015, 11:55
+1
Ох, блин… И в личке такие вопросы задают. Понимаете, тот код-шаблон, что я выложил — это мегасильно урезанная версия универсального достаточно вылизанного модуля (с внешним буфером данных, расчётом crc32 на лету и т.д.), который я использую в нескольких больших проектах. Но за эти проекты я, в своё время, денег получил и выкладывать их не очень корректно. А, с другой стороны, вопросов много. Я подумаю, может сделаю ещё один пост, где выложу более осмысленный проект-выжимку.
  • avatar
  • Kluwert
  • 03 сентября 2015, 11:46
0
Т.е. около 40 строчек кода на Верилоге — это мрак и смерть? А програмить убогенький «Микроблайз» в не менее убогом «Эклипсе», так что бы он успевал в ПДП-шный поток подпихивать заголовки, а потом ещё геморроится с отладчиком, который постоянно отваливается (уж не знаю как у вас, у меня, что в Виртексе 4 с «Микроблейзом», что в альтеровсикх чипах с «Ниосом» — это стандартная фича) — это не мрак и смерть? Ну-ну…
  • avatar
  • Kluwert
  • 03 сентября 2015, 11:39
0
По DDR ничего особо сообщить не могу, т.к. обычно их цепляют к прошиваемым процам типа NIOS или MicroBlaze, но я их ярый противник и никогда не использую, а цеплять внешние ДОЗУхи к логике как-то последние 10 надобности не возникало.
А блок altddio можно прилепить к любому выводу, на котором он, соответственно, физически есть. Это лучше всего выяснить либо в описании соотв. камня, или опытным путём.
А про MAC не очень понял: я ж, собственно, и описал его реализацию? Или я вопроса не понял?
  • avatar
  • Kluwert
  • 02 сентября 2015, 19:18
0
Пользователь с ником VGA убедил меня открыть-таки комменты.

По коду, да, исправил уже. Там в исходнике у меня как раз закоменченно было от if до else. Когда статью готовил в попыхах не комменты отвалились :) Спасибо, что заметили.
  • avatar
  • Kluwert
  • 02 сентября 2015, 16:46
0
Так это нормально. Пару-тройку месяцев назад решил попробовать поставить Quartus web edition и прогнать пример в точности по альтеровским инструкциям. В Квартусе всё отработало безупречно. Modelsim же первое что сделал при запуске — это… упал! Попробовал на другом компе — тот же результат. Я реально ржал аки конь! :(
0
Ничего сложного и непонятного. Только, почему-то один и тот же проект на одном и том же компе Max+Plus II собирает за 2 минуты. А Quartus 11.0 собирает за 7-8. Да, Кактус может успешно упихать проект, который Max+Plus II не осилит. Но всё-таки.
А по поводу встроенных процессоров — вообще отдельная тема. Всегда был и остаюсь их ярым противником. Отьедать в дорогущем и мощном камне типа того же стратикса четвертого немало ресурсов на реализацию совершенно вшивого проца, ну не знаю… По-моему, гораздо проще установить внешний ARM-проц с залитым линухом. А ресурсы ПЛИСины оставить для главного — перемалывания сигналов.
  • avatar
  • Kluwert
  • 02 декабря 2011, 14:54
0
Дак и тут все работает. Только как работает? А «тестбенч», ну как бы вам объяснить… Конечно можно. Ну, представьте, что вы купили дорогущий многоканальный цветной осцилл. Распаковываете, его, включаете и… выясняется, что для того, что бы он начал работать, вы должны загрузить в него некий файл, который сначала собирается в некой программулине, написан в специальном формате и т.д. Интересно, он отправится к продавцу назад сразу после распаковки, или пару дней спустя?
  • avatar
  • Kluwert
  • 02 декабря 2011, 14:47
0
А сколько дали. При создании блога мне разрешили почему-то только три картинки заложить. А выкладывать на внешние сервисы чревато тем, что со временем их оттуда удаляют. И не будет через какое-то время в статье вообще не одной :(
  • avatar
  • Kluwert
  • 02 декабря 2011, 14:40
0
Нет, так я рад за вашего коллегу. Я просто изложил свой собственный опыт и своё собственное видение. Я утверждаю только то, что по сравнению со старым добрым Max+Plus II MASe не выдерживает никакой критики.
  • avatar
  • Kluwert
  • 02 декабря 2011, 14:38