Радиотехника

Тред закрыт.

Check this out!
ПЛИС Иван 23/03/18 Птн 12:58:33 3169431
d.jpg 77Кб, 500x920
500x920
Доброго времени суток. Вкатываюсь в ПЛИС (есть altera cyclone IV пока для тестов), планирую делать диплом на нём (3й курс сейчас бакалавр информатики и вычислительной техники) но не могу придумать - что таки собрать, может у кого-какая идея была когда-то но руки не дошли, или просто сейчас какая-то ассоциация... Паяльник держать умею, сложность потяну достаточно высокую, критично лишь время год остался)
Иван 23/03/18 Птн 13:04:49 3169452
ап
Аноним 23/03/18 Птн 13:28:41 3169483
>>316945
>ап
Ты не сильно умный, как я погляжу. Ту ли ты профессию выбрал? Может дворником тебе более комфортно будет?
https://2ch.hk/ra/res/127314.html
Аноним 23/03/18 Птн 14:31:06 3169644
>>316943 (OP)
Ебани логический анализатор каналов на восемь с парой мегабайт записи, распознаванием паттернов и совместимостью с распространенными программами анализа. Можно, чтобы еще и светодиодом моргал.
Аноним 23/03/18 Птн 16:55:36 3169715
>>316943 (OP)
учи лучше джаву. На плисах будешь залупу последнюю без соли доедать
Аноним 23/03/18 Птн 20:20:20 3170096
>>316971
нихуя ты долбаёб братишка, земля тебе пухом.
ВО первых - джава для петухов.
Во вторых - мне похуй на зарплату ибо я уже положил крест на свою жизнь и в дальнейшем буду преподом дискретной математики.
В третьих - плис это ахуенно интересно и если твоих пропитанных джавапарашей мозгов не хватает чтобы понять как оно и зачем - это не значит что направление тлен
Аноним 24/03/18 Суб 00:09:13 3170407
>>317009
>плис это ахуенно интересно и если твоих пропитанных джавапарашей мозгов не хватает чтобы понять как оно и зачем - это не значит что направление тлен

Если бы ты понимал как оно и зачем то не задавал бы здесь тупых вопросов. Про то, что продублировал тред и бампаешь в тематике я вообще молчу. Залетное озлобленное говно из /b видно с порога.

>мне похуй на зарплату ибо я уже положил крест на свою жизнь
Похуй на зп, пока твой мозг пропитан говном и юношеским максимализмом, со временем это пройдет, но чтоб не было поздно я дал тебе бесплатный совет - просто сравни количество вакансий и вилку зп на hh.ru по fpga и java и все поймешь.
Аноним 29/03/18 Чтв 17:28:25 3178998
>>316948
> https://2ch.hk/ra/res/127314.html
Тот тред уже достиг бамплимита и медленно тонет. Надо либо новый оффициальный™ тред делать, либо сюда перекатываться и бортануть ОПа, раз уж создали.
Аноним 29/03/18 Чтв 18:52:39 3179069
>>317899
>либо сюда перекатываться
Давай перекатываться. Задам свой вопрос тут.

ПЛИСаны, я не понял, вот я насинтезировал конфигурацию и залил ее в эту вашу FPGA, отключил питание и все пропало? Это мне надо отдельный контроллер мутить, чтобы каждый раз конфигураци. закидывать в нее?
Аноним 29/03/18 Чтв 19:06:47 31791210
>>317906
Обычно ставят специальное ПЗУ, иногда загружают из микроконтроллера. Если у тебя отладочная плата, то там должно быть ПЗУ.
Аноним 29/03/18 Чтв 19:08:39 31791311
Аноним 29/03/18 Чтв 19:15:57 31791412
>>317912
>Если у тебя отладочная плата,
Нет, хочу мутить частотомер, а тут начитался про то что FPGA_NOT_CPLD
Аноним 29/03/18 Чтв 19:17:35 31791513
>>317913
>Cyclone V
А как быть с четвертым Циклоном? У него нет встроенного ARM-контроллера?
Аноним 29/03/18 Чтв 19:22:27 31791714
>>317915
> А как быть с четвертым Циклоном?
Ты это, по ссылке то ходить пробовал?
> I have used Winbond and ST flashes in the past for Cyclone IV and Spartan III without any issues.
Аноним 29/03/18 Чтв 19:24:04 31791815
>>316948
Хорошо, что ты не моряк.
Аноним 29/03/18 Чтв 19:25:34 31791916
>>317914
Ставишь какую-нибудь EPCS и все. И вообще для обыкновенного частотомера не нужны FPGA и вообще ПЛИС, из-за низких частот в том числе.

>>317915
Так и в пятых циклонах нет микроконтроллера, там просто ядро. В FPGA (обычно) нет флеша потому что технологии изготовления FPGA и флеша чем-то отличаются.
Аноним 29/03/18 Чтв 19:31:37 31792317
Аноним 29/03/18 Чтв 19:41:16 31792918
>>317923
Какой же это микроконтроллер без флеша? Хотя, кому-как, наверное, ведь нет четкого определения того что считать микроконтроллером.
Аноним 29/03/18 Чтв 20:13:09 31793819
>>317919
>EPCS
Блядь. Чому я раньше не спросил? Еще две недели ждать теперь
Аноним 29/03/18 Чтв 21:00:34 31794420
>>317919
>Ставишь какую-нибудь EPCS и все.
А как бы узнать нужный объем для FPGA на 6к ячеек?
Аноним 29/03/18 Чтв 21:29:14 31794921
Screenshot-2018[...].png 48Кб, 745x470
745x470
>>317944
Достаточно EPCS4. Также у этих ПЗУ есть полностью совместимые аналоги.
На всякий случай еще раз скажу: нет смысла использовать FPGA для простого частотомера. На FPGA не получится сделать быстрый счетчик. Целесообразнее использовать быстрый счетчик и любой микроконтроллер.
Аноним 29/03/18 Чтв 21:44:30 31795522
>>317949
>На FPGA не получится сделать быстрый счетчик
Да ладно? Что он 200МГц не потянет? Мне больше и не надо.
Аноним 29/03/18 Чтв 21:56:03 31795723
>>317955
Потянет, но 74VHC4040 с любым микроконтроллером также потянет.
Аноним 31/03/18 Суб 14:20:28 31820924
>>317949
Почему сразу не сказал? Вроде как банальная память 25 серии может быть аналогом, и местами даже более быстрым, и добываемым из ближайшей помойки.
Как-то долбил ЭФО на тему оригинальных EPCS - это ахтунг, если сравнивать с "обычной" 25 серией:
EPCS4SI8N 4,5$/шт, DC 15+ Есть на складе СПб, доставка 1-1,5 недель
EPCS16SI8N 6,6$/шт, DC 16+ Есть на складе СПб, доставка 1-1,5 недель

25-ю серию сам еще не запускал, только в каком-то AN читал и на electronix.ru (https://electronix.ru/forum/lofiversion/index.php/t57150.html).

ЗЫ - Какие сейчас есть не сильно древние FPGA с 5В входом и выходом ?
Еще раз - ВХОДОМ и ВЫХОДОМ, а НЕ 5V-tolerant input. Честные 5В входы-выходы и было бы очень неплохо чтобы и другие напряжения держало (3.3, 2.5)..
Altera FLEX, ACEX и прочие ? С софтом проблемы. Или плохо смотрел? Есть CLPD на 44 вывода LC4064V - у нее 2 банка VCCIO - в теории по даташиту можно осторожно подать 3.3 и 5В.
Аноним 01/04/18 Вск 16:34:04 31838825
>>318209
> не сильно древние FPGA с 5В входом и выходом
Выбери одно Пятивольтовые FPGA померли лет 20 назад, CPLD продержались дольше, но что MAX7000S, что XC9500 давно сняты с производства.
Аноним 01/04/18 Вск 18:00:18 31840026
max7.jpg 1395Кб, 3264x2448
3264x2448
>>318388
Кто-то в теме? Уже прилично так посношал гугл, а он так и не дает ответа, как и 9-й кактус - у Flex 10K%30RI208-4% есть разделение пользовательских выводов по банкам напряжений питания или нет? На сайте альтеры в разделе pinouts какие-то мутные документы, где описаны только служебные выводы, а про обычные(пользовательские) ни слова.
Видимо остановлюсь пока что на Flex 10K.
MAX7000S - тоже есть для ловли баттхерта от заявленных максимум 100 перепрошивок.
У EPM7128SLC84 - точно нет разделения выводов на банки - или все 3.3 или все 5В..
Аноним 01/04/18 Вск 18:50:31 31841427
>>318400
>от заявленных максимум 100 перепрошивок.
Народ пишет, что тысячи раз шили и нихуя страшного не случилось. Это типа Альтера перестраховуется, чтобы в случае чего ей мозги не ебли.
Аноним 01/04/18 Вск 19:10:38 31841828
>>318400
Ты делаешь что-то странное, если тебе понадобились 5В уровни и при этом не подходит преобразователь уровней. Также оно стоит немало, если покупать с хоть какой-то гарантией.
>есть разделение пользовательских выводов по банкам напряжений питания или нет?
https://www.altera.com/en_US/pdfs/literature/an/an107.pdf Банков там нет. 5В одновременно с 3,3В на выходах (вроде бы) обеспечиватеся за счет внешнего подтягивающего резистора.

>100 перепрошивок
Эти 100 перепрошивок - это количество перепрошивок при котором гарантируется заданное время сохранности данных во флеше. Если превысить, то производитель (всего лишь) не гарантирует что конфигурация будет сохраняться заданное время.
Аноним 01/04/18 Вск 20:57:00 31844229
>>316943 (OP)
Народ, а в даркнете еще не пробегала схема chipprog 48 с конфигурацией FPGA?
Аноним 01/04/18 Вск 21:01:02 31844330
.jpg 2650Кб, 3258x2168
3258x2168
>>318418
Теплые, ламповые 5В.. Один раз был случай когда надо было немного логики в разрыв впихнуть, а не из чего, а свеженький циклон стремно было пихать, как и нормальные преобразователи 8T245 (или подобные) с 2 напряжениями питания негде было выдрать.

>Ты делаешь что-то странное
Тяжелый осадок одной истории.

Еще раз перечитал - по ходу да, банков нет. Подав 5В на все VCCIO и получаем 5В ввод-вывод. Согласование выходов вниз (до 3.3) на резисторах, входов не нужно.

Про 100 перепрошивок - читал на марсоходе как они издевались, но там была cpld намного свежее в виде epm240, а не архаичной max7000.

FPGA хороша тем, что у нее нет ресурса перепрошивок, но и отладка как на МК - это порочная практика. Синтез проекта, заливка, оценка работы в реальном железе, правка, повторная заливка..
MAX10 показалась интересной - заливая через JTAG конфигурацию - она применяется. Передернув по питанию - грузится "заводская" конфигурация. Как минимум ресурс внутреннего флеша не должен уменьшаться.
Есть на чем проверять, а мозгов для укрощения пока нет. Пробую VHDL неспешно изучать.
Аноним 03/04/18 Втр 20:12:43 31880531
>>318418
Антон выручай.
Altera Flex 10K поймет новую память 25 серии (какую-то некрофилию на мегабит-другой(из которых всего 46 килобайт используется) через преобразователь уровней) для хранения и загрузки конфигурации?
По диагонали почитал AN116 - вроде возможно же. Как и поймет ли прямую запись pof файла или же преобразованного hex в конфигурационную flash?
Аноним 03/04/18 Втр 20:46:54 31881132
Аноним 03/04/18 Втр 21:14:02 31882233
Аноним 03/04/18 Втр 21:30:22 31883334
>>318811
Забавный костыль. Закопипастил страничку - вдруг пригодится.

>>318822
Уже читал эту статейку и про их согласование уровней на hc244. http://www.platan.ru/shem/pdf/st50-52.pdf
Даташиты не сравнивал.
Это было сложно нагуглить по памяти:
https://electronix.ru/forum/lofiversion/index.php/t13569.html
как наебать систему и не подать виду.
Даже если будет эпикфейл - фигня.
Тут тоже нет конфигурационной памяти у флекса (хотя и есть куда ее втыкать) https://habrahabr.ru/post/277947/
Аноним 05/04/18 Чтв 10:00:29 31910635
>>318822
Этот антон прав. Почитал даташиты - никаких шансов приклеить 25 серию флеша к флексу. Заглянув в efind.ru и chipfind.ru в поисках epc1 epc2 at17 - прямо как на той картинке "все ебанулись". Стоят как крыло от самолета.
И ладно.. Главное питание на рабочей схеме не дергать. На Altera UP1 (UP2) было только куда ставить саму память, но памяти не было. Вариант с МК конфигурить не рассматривал, хотя он скорее всего будет основным.
Аноним 09/04/18 Пнд 10:17:53 31967136
flex0.jpg 1570Кб, 3212x2284
3212x2284
epf.png 21Кб, 682x573
682x573
CsAWxgpTiWA.jpg 94Кб, 800x450
800x450
Нетактический бамп.
Этот артефакт даже подает признаки жизни.
Входы и выходы прибиты гвоздями на 5В. Пока что все.
Аноним 11/04/18 Срд 08:42:13 31984937
Я так понял прошлый тред тонет, продублирую:
Парни, хелп. Нужная плата для акселерации вычислений. Суть в том, что она цепляется по эзернету, получает задания-считает-возвращает результат. Я нихрена не знаю, наугад предложил взять AES-KU040-DB-G
http://ru.farnell.com/avnet/aes-ku040-db-g/dev-board-kintex-ultrascale-prog/dp/2775206?st=kintex
Может есть что-то с более оптимальным соотношением цена/производительность?
И если заказывать с фарнелл - не завернёт ли таможня? Пугают буквы "AES" в названии.
Аноним 02/05/18 Срд 22:22:36 32186138
>>319849
Нужно исходить из ресурсозатрат твоего алгоритма.
>Пугают буквы "AES" в названии.
Иностранные поставщики соблюдают законодательство РФ горазбо более скурпулезней, чем пидорахен-таможня. Если согласятся отправить 90% что таможня пропустит.

Аноним 03/05/18 Чтв 08:02:19 32189539
>>321861
Алсо в рашку могут поставляться платы с выжженными блоками AES
Аноним 03/05/18 Чтв 13:48:36 32190840
>>319849
Ничего общего у этих букв и шифрования нет, не ссы.
Аноним 03/05/18 Чтв 18:36:45 32199041
>>321908
Ты бы хоть в документации поискал прежде чем ерунду писать. В последнем поколении альтеровских FPGA имеется AES для шифрования конфигурации.
Аноним 03/05/18 Чтв 18:45:57 32199642
>>321990
Бля, я не говорю что AES там нет, я говорю что AES в названии не о шифровании.

Блоки для крипты прошивки они клепают уже давно, и всем похуй.... экспортируються даже в санкционную рашку
Аноним 05/05/18 Суб 11:51:18 32217543
>>321996
>>321990
Я же писал выше, что в РФ приходят плисины с выжженными блоками AES.
Аноним 05/05/18 Суб 12:58:12 32217844
>>322175
Можешь хоть что-нибудь предоставить в доказательство? Я покупал в терраэлектронике микроконтроллеры с аппаратным AES и они пришли в фарнеловской упаковке, все вроде как работает.
И потом, как вообще можно выжечь какой-то блок, причем не задев соседние, если это не было предусмотрено при проектировании микросхемы?

Кроме того уже прошел месяц, наверное для анона задававшего вопрос это уже не актуально.
Аноним 05/05/18 Суб 18:24:47 32219445
>>322178
>И потом, как вообще можно выжечь какой-то блок, причем не задев соседние, если это не было предусмотрено при проектировании микросхемы?
ФЬЮ
@
ЗЫ
Аноним 07/05/18 Пнд 12:59:01 32245646
>>322194
Более того, в процессорах интел есть блоки шифрования, и ниче
Аноним 15/05/18 Втр 13:56:13 32330147
>>322456
Дык на них есть нотификации фсб, а есть ли они на платы с плис - большой вопрос. В треде про компутеруниверс на /hw много разговоров про это. Есть две видюхи, аналогичные по характеристикам, одну можно невозбранно купить, а за другую чуть ли не присесть за ввоз антироссийского шифрующего средства. Как-то так, правда я слышал что эту шнягу потом отменили но это не точно.
Аноним 21/05/18 Пнд 13:30:20 32420348
И снова здравствуйте.
Хочу прикупить тут чип XC7K355T-2FFG901I для своего девайса, смотрю цены, на фарнелл оно стоит €1 819,00. На ебее и на али встречаются цены от 12т.р. (€163,79) за чип. Это что наёбка какая-то? Откуда такой разброс цен?

https://www.ebay.com/itm/2PCS-X-XC7K355T-1FFG901C-IC-FPGA-300-I-O-901FCBGA-Xilinx/332337611117?epid=2165454311&hash=item4d60dd816d:g:MZwAAOSwPfVZi2I0

http://ru.farnell.com/xilinx/xc7k355t-2ffg901i/fpga-kintex-7-300-i-o-fcbga-901/dp/2831130?st=XC7K355T
Аноним 21/05/18 Пнд 15:50:14 32421749
>>324203
>-
в фарнеле индастриал грейд
Аноним 21/05/18 Пнд 15:52:35 32421950
>>324203
и разный speed grade

F: XC7K355T-1FFG901C
E: XC7K355T-2FFG901I

-1 -2 - скорость
С I -температурный

Аноним 22/05/18 Втр 01:17:07 32427751
Эх, антуаны.
Нет ничего больней перекатывания с няшного верилога на вхдл.
Ну если только переход с квартуса на вивадо. Хотя там симуляция проще.
Аноним 22/05/18 Втр 08:14:31 32428752
Аноним 22/05/18 Втр 12:59:27 32431253
>>324277
Хоспаде, за что тебе такое??!
Аноним 22/05/18 Втр 16:42:55 32433854
>>324277
>с няшного верилога
>с квартуса
Просто петушиное бинго сорвал.
Аноним 22/05/18 Втр 21:56:21 32438155
>>324338
Тем не менее, всяких багуль, решающихся закрытием проекта, я тут словил уже больше.
>Просто петушиное бинго сорвал.
Ну и дрочи дальше свои
иклюд дибрари ИЕЕЕ_СТД_ВЕКТОРА_МАТИМАТИКА
сигнал стд_лоджик_вектор(10 даун ту 0)
when => <=
Что это вообще блять такое тут присходит. Ебануться.
Аноним 23/05/18 Срд 07:21:04 32440856
>>324381
Багули ты ловишь, потому что руки из жопы растут. А что касается дрочи дальше, так это не я вынужден перейти на вхдл, а ты. Так что да, дрочи дальше.
Аноним 23/05/18 Срд 19:23:40 32445957
2.png 42Кб, 670x581
670x581
11.jpg 146Кб, 1024x768
1024x768
1.png 35Кб, 664x558
664x558
HTB1kfw9LXXXXXc[...].jpg 25Кб, 492x250
492x250
Привет, плисач. Возможно, я не по адресу со своими проблемами но идти больше не знаю куда. Пытаюсь подключить параллельный АЦП к плис и заставить его нормально работать. И беда вот в чём, мне хватило ума развести плату и запаять чип но вот дальше просто не знаю что делать. Мой АЦП AD9226 имеет дифференциальный вход, но я распаял его как single ended и теперь не представляю как на него нужно правильно подавать сигнал, и исходя из этого проверить работает ли он корректно. Ранее для проверки я не придумал ничего лучше, чем написать конфигурацию, которая сначала собирает несколько тысяч семплов в память, а потом выдаёт их по uart на комп, скрипт на питоне рисует график, график на котором получается хуйня. На второй пикче на вход был подключен генератор меандра 100 кгц, на третей его увеличенная часть. С ацп берётся 8 бит из 12, для передачи семпла одной посылкой uart, на входе присутствует 1 вольт от встроенного в ацп источника опорного напряжения. Если вы ещё не поняли, что я довн, я говорю об этом прямо. Помогите.
Аноним 24/05/18 Чтв 07:40:04 32450458
>>324459
Начни с подачи постоянного напряжения на вход АЦП. В твоем случае - от 1 до 3В. Подал напряжение, записал отсчеты, посмотрел че получилось, поменял напряжение. Поставь себе какой-нибудь Bitviewer, чтобы было проще смотреть че у тебя записывается в файл.
И да, у тебя отлажена схема записи в память/чтения из памяти/передачи по UART?
Аноним 24/05/18 Чтв 07:58:32 32450659
>>324504
>Bitviewer
Чем оно лучше калькулятора в виндовсе?

>И да, у тебя отлажена схема записи в память/чтения из памяти/передачи по UART?
Было бы что там отлаживать, простейшая же ерунда. Я тоже делал такое, только в отличие от этого анона я писал по 32 бита и принимал в матлабе.
Аноним 24/05/18 Чтв 08:31:38 32450860
>>3244592
Похоже последовательность байт перепутана.
Аноним 24/05/18 Чтв 10:50:16 32452161
DP4ABLvXkAAb15y.jpg 384Кб, 1200x644
1200x644
>>324506
>Чем оно лучше калькулятора в виндовсе?
Калькулятор может нарисовать что-то такое?

>Было бы что там отлаживать, простейшая же ерунда. Я тоже делал такое, только в отличие от этого анона я писал по 32 бита и принимал в матлабе.
Молодец. Но я спрашивал не у тебя, а у этого анона.
Аноним 27/05/18 Вск 23:10:04 32482962
>>316971
Ну хз, работаю плисером в ДС2, зп 120к на руки, практически вчерашний студент.
Аноним 28/05/18 Пнд 14:20:53 32489063
>>324829
Какие навыки востребованы?
Аноним 28/05/18 Пнд 16:11:29 32489264
>>316943 (OP)
Может неактуально, но...
Сделай мультикатридж для для денди на микроконтроллере, а плис будет выполнять роль маппера.
Аноним 28/05/18 Пнд 17:41:38 32489765
>>324890
System Verilog, Vivado, Xilinx, DSP, MATLAB, SIMULINK, C/C++, python
Аноним 28/05/18 Пнд 18:12:18 32489966
>>324897
Блять а мог бы выучить пару либ на джаваскрипте и поднимать в два раза больше.
Аноним 28/05/18 Пнд 20:58:42 32490967
>>324899
Ну выучи и поднимай. Хотя мне кажется, что там тоже много знать надо, чтобы хорошо платили.
Аноним 28/05/18 Пнд 22:37:19 32492268
>>324897
Это не навыки. Я про алгоритмы, хуе мое.
То, что нужно сидеть в виваде под сисверилгом\вхдл плисоебу - это очевидно.
Си, я так понимаю, уже для скриптом в микроблейзе\цинке?
Аноним 29/05/18 Втр 00:41:03 32493169
>>324897
Это в оборонке такое хотят? С одной стороны, не представляю, кто в рашке может платить за плисоёбство, кроме оборонки, с другой, систем верилог и пайтон — для оборонки очень по-хипстерски.
Аноним 29/05/18 Втр 09:21:36 32497670
>>324931
В оборонке хотят железо. Как ты это железо будешь кодить никого не волнует.
Аноним 29/05/18 Втр 12:05:20 32498271
>>324922
Ну, из алгоритмов это фильтрация, ресэмплинг сигналов, различные виды модуляции, прием сигналов спутниковой связи, ФАПЧ, временные синхронизации, тактовые синхронизации, АРУ, Витерби, BCJR, LDPC и т.д. и т.п.
На C/C++ пишешь модели разрабатываемых алгоритмов, а потом переносишь на ПЛИС, или чужие модели, написанные на C/C++ переносишь на ПЛИС.
Аноним 29/05/18 Втр 13:54:47 32499472
>>324982
Походу мы одним и тем же занимаемся, лол.
Аноним 29/05/18 Втр 17:31:32 32502073
Аноним 29/05/18 Втр 19:20:27 32503274
>>324982
Я третий в этом тредю и мы, кажется, все в одном отделе сидим, лул.
Аноним 01/06/18 Птн 21:38:33 32535075
РадарММС суки я вас спалил. Скрины из треда вашим безопасникам слил. Пизда вам.
Аноним 01/06/18 Птн 23:10:54 32535676
>>325350
3 форма допуска, похуй.
Аноним 02/06/18 Суб 10:42:58 32538477
>>325350
Антихайп, ебал твой рот.
Аноним 04/06/18 Пнд 18:32:56 32558078
Объясните классический нубский вопрос. Как два байта переслать (vhdl)? literally.
Я вот о чем.
Был у меня msg STD_LOGIC_VECTOR, в котором вручную забито сообщение в хексе в аскии.
И которое я спокойно пересылал с помощью мультиплексора, мол, если первый бит, то отсылаю из этого вектора кусок от 7 до 0. case i when b"00" => data(7 downto 0) <= msg(7 downto 0) и т.д.

Но надо быть человеком и использовать массивы, тайпы, хуяйпы. Как мне объявить мое сообщение? Как мне обращаться к его кускам по индексу, если у меня индекс-счетчик изначально тоже вектор?
Если забиваю на вектор-счетчик и делаю отдельный integer для индекса, то всё равно при обращении к массиву типа msg(7 downto 0) пишет, мол, внутри msg нихуя не вектор и иди нахуй. Колбасная магия с приведением типов to_unteger(unsigned i) это тоже отдельная песня.
Фокус с циклическим сдвигом ror тоже, кстати, не работает. Мол, не определена операция и всё такое.

Итак, еще раз. Как передавать символы по одному используя в качестве исходных данных массив? И всё должно быть, естественно, синтезируемо.
Спасибо.
Аноним 04/06/18 Пнд 20:24:48 32560279
1.png 32Кб, 595x773
595x773
2.png 7Кб, 1064x193
1064x193
>>325580
Что-то не вполне тебя понял. Я VHDL подзабыл, но все равно как-то написал пример.
Если этот "массив" довольно большой, то целесообразно использовать блочную память. В таком случае имеет смысл организовать код таким образом, чтобы можно было заменить память на примитивы и мегафункции всякие, если вдруг синтезируется не так. К тому же так меньше вероятность сделать ошибку и получить какую-нибудь трехпортовую память.
Аноним 04/06/18 Пнд 20:41:14 32560480
>>325602
Ну вот у меня есть Hello.
Я его объявлял
constant msg : std_logic_vector(39 downto 0) := X"68656c6c6f"
И обращался
case cnt is
when B"00" => data <= msg(7 downto 0) ...

Вот захотел не писать этот ебаный мультиплексор с кейсами, а как белый человек, через переменную. Но переменная у меня лоджик вектор, которую так просто не засунешь в скобки, нужно приводить в to_integer(unsigned()).

Как вообще на синтезируемость влияют эти все конвертации, какая предсказуемость результата?

Далее. Не хочу задавать явно в хексе вручную. Хочу писать
constant msg : string := "Hello"
И чтобы достать конкретную букву, соответственно писать
if rising_edge(clk) and (cnt <8) then
data(7 downto 0) = msg(cnt)
Но тут уже ругается, что msg(cnt) выдаёт не биты, в которых блять тут все должно хранится,, а, собсно, букву. Опять нашел, что стринг это массив чаров, которые тоже можно там по ебаному как-то конверсить в нормальные биты.

Аноним 04/06/18 Пнд 22:28:53 32561981
>>325604
>Но переменная у меня лоджик вектор, которую так просто не засунешь в скобки, нужно приводить в to_integer(unsigned()).
Приводи, в чем проблема? Тут же строгая типизация.

>мультиплексор
В данном случае это скорее дешифратор.

>Как вообще на синтезируемость влияют эти все конвертации, какая предсказуемость результата?
Лучше посмотри исходники ieee.std_logic_1164, которые должны быть в твоем САПР и симуляторе. Там будет видно, что unsigned и std_logic_vector отличаются только тем, что для них определены разные операторы/функции. А определения этих обоих типов абсолютно одинаковые.

>это массив чаров
Которые имеют перечислимый тип. И прописаны они в пакете STANDARD, исходники которого также везде имеются.
Аноним 04/06/18 Пнд 22:38:25 32562082
>>325619
>Приводи, в чем проблема?
Для меня это всё еще выглядит черным ящиком и магией коньпилятора, когда не ясно, что там внутри на уровне схематики происходит.
Хотя вот раз говорят, что это всё ходы, чтобы обмануть сапр, а на самом деле там внутри одно и то же байтоебство, то буду менее настороженно к этому относиться. Но выглядит всё равно некрасивенько.
>В данном случае это скорее дешифратор.
Верно, извиняюсь.

С индексом разобрались, вектор в ансайнд, оттуда в интежер.
А что с обращением к символу в строке, как его в биты перевести?
Свою функцию перевода писать, как рекомендуют?

function to_slv(c: character) return std_logic_vector is
begin
return std_logic_vector(to_unsigned(character'pos(c)), 8));
end;

Аноним 04/06/18 Пнд 22:40:16 32562183
>>325620
А еще пишут, что стринг не синтезируема. Значит мне строки в каком формате объявлять?
Аноним 04/06/18 Пнд 23:00:08 32562484
>>325621
Тогда используй string только при инициализации std_logic_vector. Аналогично тому, как инициализируют RAM из файла.
Аноним 04/06/18 Пнд 23:12:20 32562585
>>325624
Слишком уже задротская тема какая-то. Я начинал с нубовопроса, не знаю уже, о чем речь.
Аноним 05/06/18 Втр 18:25:31 32569286
Зачем этот ваш плис, если все равно всё сводится к проганию на си в хард\софт ядре?
Аноним 05/06/18 Втр 20:42:11 32570487
>>325692
Можно на огромной скорости молотить в логике операции, которые процессорное ядро на такой скорости не вытянет. А ядро будет заниматься всем остальным. Бесценно для обработки сигналов.
Аноним 05/06/18 Втр 22:29:37 32570888
>>325580
Просто без задней мысли пишешь на верилоге и не забиваешь голову всякими АЙЕЕЕ_СТД_ЛОДИК_ВЕКТОР
Аноним 05/06/18 Втр 23:42:47 32571489
>>325708
Да, я тоже любил великолепный верилог, но увы, не разрешают.
Аноним 06/06/18 Срд 00:03:04 32571590
>>325704
>Бесценно для обработки сигналов.
В ПЛИС есть встроенный ацп или предполагается использовать дорогой внешний? И цап тоже внешний?
Аноним 06/06/18 Срд 00:06:37 32571691
>>325715
Ну сигналы есть не только аналоговые. Обработку эзернета, например, можно замутить.
Аноним 06/06/18 Срд 00:11:24 32571892
>>325716
Нахер оно нужно? Лучше уж готовый копеечный езернет контроллер поставить.
Вот высокоточная обработка и анализ СВЧ аналога в реалтайме - интересная тема. Но нужны оче дорогие ацп и цап.
Аноним 06/06/18 Срд 00:12:21 32571993
>>325718
Сейчас бы на плисе делать то, с чем справляется лучше DSP.
Аноним 06/06/18 Срд 01:24:54 32572294
>>325719
Куда копать для вкатывания в тему и освоения DSP?
Аноним 06/06/18 Срд 08:01:25 32572795
>>325719
Разве? В одном из самых простеньких циклонов EP4CE22 (который я люблю за TQFP корпус), есть 66 умножителей 18х18 бит, которые могут работать на ~200МГц. Параллельно умножителям там может работать куча сумматоров. Безусловно, какие-то DSP такое потянут, но если взять ПЛИС побольше?
07/06/18 Чтв 08:49:45 32584596
Буфер обмена01.jpg 49Кб, 1076x846
1076x846
>>325718
А если критична задержка и надо фильтровать пакеты на 7-м уровне osi на скорости 10 гигабит? А если надо выполнять ещё расчёты и выдавать отклик? На плис такая задержка будет минимальной, можно выстроить схему так, что расчёт будет идти конвеером и сложный алгоритм будет выполнятся за пару тактов, на проце такое сделать иногда просто невозможно, или нужна многоядерная йоба и ртос, и это будет нихуя не дешевле плис и разработка намного сложнее будет.
>>325715
Есть такое.
Аноним 08/06/18 Птн 09:17:58 32597597
>>325620
>это всё ходы, чтобы обмануть сапр
Именно. По сути преобразование типов - это преобразование метаинформации о битах, а не самих битов.
>>325625
>Слишком уже задротская тема какая-то
Когда я еще наивно полагал, что vhdl это неплохой язык, наткнулся на https://github.com/VLSI-EDA/PoC библиотеку, которая немного упростила байтоебство. Ничего лучше под этот язык пока не знаю.
Аноним 08/06/18 Птн 09:24:19 32597998
>>325845
>4 GSPS 12-bit RF-ADC
>Есть такое
>В плис
Разве что где-то в лаборотории у хилых. В рельности доступны только 1 MSPS.
Аноним 08/06/18 Птн 11:52:56 32600299
sibo.jpg 53Кб, 326x500
326x500
Здравствуй аноньимъ!

Прошу вашей консультации. Дело таково.
Мне нужно знать, можно ли сэкономить транзисторный бюджет и скорость, заменив стандартный float16 вычислитель на некую имитацию с фиксированной точкой.

Что мне нужно. Допустим умножать.
Каковы особенности чисел?
1. Со знаком.
2. Фиксированная точка (на десятых долях допустим) 2.1 1.3 4356.5
3. Но, когда число в диапазоне (-1 1), точку нужно перенести в старший разряд, для макс точности. Например 0.124321 -0.932323

А результат пишется в большой регистр в формате с фиксированной точкой. Например 435626.124321
Аноним 09/06/18 Суб 22:22:59 326103100
2018-06-07-1855[...].jpg 941Кб, 1280x960
1280x960
Просто снял наклеечку E-MU e-dsp с чипа звуковой карты em8984 v3 (E-MU Systems 0404 PCIe).
Аноним 10/06/18 Вск 00:10:00 326109101
>>326103
В более старых платах у них второй спартан стоит, ничего нового.
Аноним 10/06/18 Вск 11:38:02 326130102
>>316943 (OP)
Годная пикча.
Современные погромисты даже не знают как устроена мышь и контроллер дисплея, а про архитектуру процессора я вообще молчу
Аноним 10/06/18 Вск 12:13:20 326135103
>>326130
А перечисленные тобой знания им нужны чтобы радачеров впечатлять?
Аноним 10/06/18 Вск 13:47:51 326140104
>>326135
Радачеры как макаки же. Кнопочки даваить и паять научились, а как все устроено подробно не знают и знать не хотят в большинстве
Аноним 10/06/18 Вск 14:01:07 326144105
изображение.png 18Кб, 740x216
740x216
>>326130
>Современные погромисты
Ты из какого НИИ им. тов. Подзалупкина вылез? Кому впёрлись твои расчёты когда у нас аппликашка календарика на мобиле загружает под 100% 4 ядра по 1.4Ггц просто красивенькими анимациями и полупрозрачными 3д переходами? Здесь другие ребята, анон, не стоит шутить про расчёты, это тебе не шиндоус 3.1, здесь абстрагируются по-крупному. Здесь пишут на языке богов, где любая сущность объект, где всё наследуется от всего, где просто хэллоуворлд может занимать тысячи строк кода и при внесении пары изменений в коде управлять заодно ядерным распадом в коллайдере, здесь шаблон погоняет кодогенерацией, здесь просто приложение с показом времени отжирает 2 гига оперативы на старте и занимает 500 мегабайт на диске. Тут используют Анриал Енджин только чтобы перемножать пару матриц в его математической библиотеке, здесь гарбадж коллектор трахают прямо в анус, создавая тысячи объектов в каждом кадре и не освобождая ручками ни один.

Забудь ты про свой найтивный код. Здесь совсем другая тема. Тут программируют совсем на другом уровне.
Аноним 10/06/18 Вск 14:03:14 326145106
>>326144
Хуясе! Как это у меня паста автоматом конвертнулась в пнг и запостилась пикчей? Это Абу там устои расшатывает?
Аноним 10/06/18 Вск 14:35:25 326150107
>>326144
Ну короче не те уже вы
Аноним 10/06/18 Вск 14:42:15 326151108
1.png 115Кб, 658x2541
658x2541
>>326130
>На каком принципе работает курсор? Как определяют координаты и взаимодействие к примеру с окном?
>А где можно подробнее глянуть про контррллер дисплей? Как он формирует текст?
Это опять ты вылез?
Это не радачеры тупые, а ты. Не можешь даже оответствующую литературу прочитать. Как вообще тебе объяснять, если ты не знаешь базовых вещей?
Вот на картинке мой код простейшего процессора, много ты понял? А если нарисовать это на отдельных регистрах и счетчиках? Нихуя ты не поймешь, потому что "регистр" — для тебя пустой звук.
Ну, можешь попытаться все это понять с помощью nand2tetris — это такой курс для тупых программистов. Но ты сейчас опять в лучшем случае поблагодаришь и продолжишь писать тупняк.

А картинка выглядит просто шуткой. Любой человек, пишущий на ассемблере, сможет вручную по таблице опкодов перевести текст в машинные коды. Остальная "иерархия" также имеет мало смысла.
Аноним 10/06/18 Вск 15:23:24 326155109
sibobydeceptico[...].jpg 102Кб, 743x1075
743x1075
>>326144
Нынче ренессанс байтоебства наступил с приходом Rust.
Но народ не очень интересуется.
Аноним 10/06/18 Вск 21:28:37 326182110
>>326151
И как твой код переводится в машинный? Где эта прога нахожится, что переводит?

Ну про курср правда интересно. Про регистры я читал
Аноним 11/06/18 Пнд 10:44:43 326207111
>>326182
>И как твой код переводится в машинный? Где эта прога нахожится, что переводит?
Оказывается ты тупее, чем мне казалось раньше. Заголовок треда не видел?
Поскольку ты такой тупой, все же попытаюсь объяснить. Этот код, в некотором приближении, можно считать схемой в текстовом виде. Специальная программа (в первом приближении) располагает эту схему внутри ПЛИС так, чтобы она занимала меньше места. Так же как в случае с ассемблером, любой плисоеб, может вручную, без компа перевести этот код в схему (но не внутри ПЛИС, по разным причинам).
>Про регистры я читал
Но нихуя не понял, иначе не писал бы тут тупняк.
Аноним 11/06/18 Пнд 11:30:56 326208112
>>326144
Ты из какого НИИ им. тов. Подзалупкина вылез? Кому впёрлись твои расчёты когда у нас аппликашка календарика на мобиле загружает под 100% 4 ядра по 1.4Ггц просто красивенькими анимациями и полупрозрачными 3д переходами? Здесь другие ребята, анон, не стоит шутить про расчёты, это тебе не шиндоус 3.1, здесь абстрагируются по-крупному. Здесь пишут на языке богов, где любая сущность объект, где всё наследуется от всего, где просто хэллоуворлд может занимать тысячи строк кода и при внесении пары изменений в коде управлять заодно ядерным распадом в коллайдере, здесь шаблон погоняет кодогенерацией, здесь просто приложение с показом времени отжирает 2 гига оперативы на старте и занимает 500 мегабайт на диске. Тут используют Анриал Енджин только чтобы перемножать пару матриц в его математической библиотеке, здесь гарбадж коллектор трахают прямо в анус, создавая тысячи объектов в каждом кадре и не освобождая ручками ни один.

Забудь ты про свой найтивный код. Здесь совсем другая тема. Тут программируют совсем на другом уровне.
Аноним 11/06/18 Пнд 13:55:39 326218113
>>326207
Лол. Спасибо за терпение. Я про плис не спрашивал т.к. не разбирался с ним и не собираюсь пока.

Я просто тут часто спрашивал и всех заебал про ассемблер. Я так понял, что сам кодер опкодов в машинный заложен уже в архитектуре проца. Но сам ассемблер это сорт компилятора?

А про курсор я еще не понял детально. Хочу найти подробные схемы видеоконтроллера кр580вг75
Аноним 11/06/18 Пнд 15:37:35 326221114
Посоветуйте какие-либо legit курсы по повышению квалификации. Чтобы сертификаты на стенку вешать и вот это всё.
Аноним 11/06/18 Пнд 15:59:51 326225115
>>326151
>82 строка casez
Что за casez? Джва года пишу на верилоге, такого не встречал
Аноним 11/06/18 Пнд 16:19:00 326226116
>>326225
Это кейс, который учитывает, собсно Z состояние линии.
Есть еще casex.
Аноним 11/06/18 Пнд 17:03:27 326233117
>>326218
>Я так понял, что сам кодер опкодов в машинный заложен уже в архитектуре проца. Но сам ассемблер это сорт компилятора?
Не, это просто бессмысленный набор слов. Нихуя ты не понял. Абсолютный нуль знаний. Хотя это даже не нуль, ты в минус пошел.
>Хочу найти подробные схемы видеоконтроллера кр580вг75
Опять ты со своим выводом изображения на экран? Ладно, в очередной раз попробую объяснить.
Начинать нужно с аналогового видеосигнала, того который в телевизоре или мониторе на ЭЛТ. В телевизоре электронный луч двигается зигзагом за счет отклоняющего магнитного или электрического поля. Попадая в экран, электроны засвечивают люминофор. Чем больше электронов - тем сильнее свечение. Таким образом, для того чтобы сформировать изображение, нужно менять силу тока электронного луча в кинескопе. Воздействие, заставляющее меняться силу тока, представляет собой видеосигнал (в некотором приближении, т.к. надо еще синхронизировать перемещение луча).
Аналоговый видеосигнал, как и любой аналоговый сигнал, это просто напряжение или другая величина, изменяющаяся во времени. Все, теперь задача процессора с "видеоконтроллером" сводится к формированию заданного аналогового сигнала. А для этого, в самом простом случае, достаточно лишь приделать параллельный ЦАП к параллельному порту и написать программу, которая будет в этот порт выводить требуемые значения. При такой постановке задачи это ничем не отличается от вывода любого другого аналогового сигнала, например звука.
КР580ВГ75 в некотором приближении всего лишь перекладывает часть этой работы с процессора на себя.
Вот в каком месте тебе не понятно? Это даже многие ардуинщики понимают. Те самые, про которых ты так отзывался >>326140

>>326226
Небольшое уточнение. Третье состояние могут проверять оба оператора, но только при симуляции. Это не синтезируется, разумеется. casex помимо "Z" может проверять на "X", вот и все отличие. А для синтеза используется значение "?" (пропускает любое значение).
Аноним 11/06/18 Пнд 20:18:43 326252118
>>326233
>набор слов

Ну хорошо, а где тогда находится тот декодер, который код с экрана переводит в машинный? Ты же сам понимаешь, что буквы с экрана не с помощью магии в машинный код переводится.

Да я понимаю, что экран это по сути сетка пикселей, в зависимости от сигнала кода контроллер зажигает определенные пиксели и таким образом формируется изображение.
А как вот курсор работает, обратная связь?
Аноним 11/06/18 Пнд 20:48:28 326260119
>>326252
Ты какую-то хуйню городишь. Напиши нормально что ты хочешь узнать. Написаный текст на языке погромироаания переводится в инструкции процессора компилятором. А хуйню с курсором и обратной связью лучше бы не писал
Аноним 11/06/18 Пнд 20:55:23 326261120
>>326252
Ты какой-то совсем больной на голову.
>Ну хорошо, а где тогда находится тот декодер, который код с экрана переводит в машинный?
Переводом текста программ в машинный код занимается компилятор. Комилятор это программа такая, если что. Зачем делать компилятор, который будет брать текст с экрана? Не кажется ли тебе логичнее брать текст из файла или какой-нибудь области ОЗУ?
>Ты же сам понимаешь
Нет, твое чириканье я не понимаю. Отдельные слова вроде понятны, но предложения бессмысленные.

>А как вот курсор работает, обратная связь?
Лучше выпились.
Все объяснения как оно работает есть в книгах, которые тебе уже советовали. Причем это книги не для специалистов, а просто для общего развития, понятные не профессионалам. Ты, может быть скажешь, что "читал", но я тебе не верю или ты читал жопой. Попробуй напрягать голову в процессе чтения и отвечать на контрольные вопросы в конце каждой главы.
Аноним 11/06/18 Пнд 21:05:08 326264121
>>326261
>Лучше выпились.
Слушай, этот тип, с периодичностью 2-3 месяца, врывается в радач и начинает задавать одни и те же вопросы по кругу. Постоянно находятся сердобольные аноны пытающиеся ему пояснить, хотя все это расписано и разжевано в сотне книг рассчитанных на широкий круг icq. Но этот унылый траль продолжает и продолжает уныло тралить.
Аноним 11/06/18 Пнд 22:28:47 326275122
>>326264
Какие книги, посоветуй авторов? Я проебал ссылки

>>326260
>курсор
Ну если ты не знаешь, то так бы и сказал сразу. Если ты не можешь объяснить ребенку на пальцах что то в течении минуты - значит ты это сам не понимаешь

>>326261
Бля. Я не говорю про текст с экрана. Это всего лишь интерфейс для человека поняинтно. Про компилятор знаю, но принцип ты его понимаешь? Ты же вот мне про регистры говорил. Говришь программа переводит, это и так любому школьнику понятно. Ну ты же сам понимаешь, что программа это не магия, а по сути управление логическими элементами и кодерами, которые из этих вентелей и состоят. Так я всего лишь это хотел и узнать - где эти кодеры и находятся - в архитектуре проца или нет. За терпения спасибо тебе конечно. Вы конечно радачеры молодцы, можете делать/собирать йоба устройства и погроммировать, но на уровне микро видимо мало кто понимает, кроме инженеров интела и т.п.

И что я такого задал про курсор плохого? Мне просто интересно, какой принцип.
Аноним 11/06/18 Пнд 22:33:03 326276123
>>326275
>Так я всего лишь это хотел и узнать - где эти кодеры и находятся - в архитектуре проца или нет.
У меня аж голова заболела. Кодеры - они за компом, вне проца находятся.
>но на уровне микро
Тебе интересно понять, как проходит движение основных носителей заряда в приповерхностном слое?
Аноним 11/06/18 Пнд 23:06:26 326278124
3.36.jpg 53Кб, 485x578
485x578
>>326276
Ну вот тебе элементарный шифратор 10 чисел в двоичные к примеру
Они же находятся уже в архитектуре проца? Я собственно и пытаюсь это у вас тут узнать какой уже месяц лол
Аноним 11/06/18 Пнд 23:07:50 326279125
Аноним 12/06/18 Втр 08:07:47 326293126
>>326278
Блядь, ебаный ты шизоид, ты можешь нормально выражать свои мысли? Твой поток сознания читать просто не возможно. Возникает ощущение, что у тебя разорванное мышление или речевая бессвязность. Просто словесный шум какой-то. Прими таблетки и не забывай посещать психиатра, у которого наблюдаешься.
Аноним 12/06/18 Втр 08:14:04 326294127
>>326252
>а где тогда находится тот декодер, который код с экрана переводит в машинный
Переводом исходного кода в машинный код занимается компилятор, а не декодер.
>А как вот курсор работает, обратная связь?
По-разному, в зависимости от архитектуры и вида курсора.
Аноним 12/06/18 Втр 08:35:25 326295128
>>326275
>Ну ты же сам понимаешь, что программа это не магия, а по сути управление логическими элементами и кодерами, которые из этих вентелей и состоят.
Программа - это последовательность инструкций процессора. Это по сути. Она управляет вычислениями, а не логическими элементами.
>но на уровне микро видимо мало кто понимает
Нет такого уровня, ты словоблудишь. На уровне цифровой схемотехники понимает любой плисовод, например.
>Если ты не можешь объяснить ребенку на пальцах что то в течении минуты - значит ты это сам не понимаешь.
Глупости. Нельзя научить, можно только научиться. Раз ты называешь дураком того, кому задаешь вопросы, значит ты еще больший дурак.
>Какие книги, посоветуй авторов? Я проебал ссылки
Что ты хочешь узнать?
Аноним 12/06/18 Втр 08:40:42 326296129
>>326275
>Какие книги, посоветуй авторов? Я проебал ссылки
Я выше упоминал nand2tetris. Хотя это не совсем книга, но так даже лучше зайдет. Это курс по построению процессора из отдельных вентилей 2И-НЕ, конечный итог - работающий на этом компьютере тетрис. Если бы ты задавал вопросы по этому курсу, то тебе наверняка бы кто-нибудь ответил. А так ты несешь бред и удивляешься не менее тупым ответам.
>Если ты не можешь объяснить ребенку на пальцах что то в течении минуты - значит ты это сам не понимаешь
Неправильная логика. Это бы означало, что все что ты "читал", писали люди, не осознающие того что пишут. А это явно не так.
>Про компилятор знаю, но принцип ты его понимаешь?
Понимаю, написал сам парочку простейших. Лежат рядом с кодом вышеприведенного процессора.
>Ну ты же сам понимаешь, что программа это не магия, а по сути управление логическими элементами и кодерами, которые из этих вентелей и состоят.
Машинные команды, из которых состоит компилятор, ничем не отличаются от машинных команд любой другой программы.
Похоже ты не осознаешь что такое процессор и что он делает. Причем не на уровне того что у него внутри, а что он выдает наружу. Если бы ты сам попробовал запрограммировать на ассемблере хоть что-нибудь, а потом вручную перевести код на ассемблере в машинные коды, то таких тупых вопросов точно бы не задавал. Но ты просто "читал", не напрягая мозги и не отвечая на контрольные вопросы. А потом ты наверное еще головой стукнулся, и в голове у тебя какие-то "кодеры" перемешались с компиляторами.
>но на уровне микро видимо мало кто понимает, кроме инженеров интела и т.п.
Специалистов по физике твердого тела тут действтительно не наблюдается. Но тут есть несколько анонов, способных придумать простенький процессор и нарисовать его схему на отдельных транзисторах. На это способны все плисоебы. Выше по треду тебе наглядное подтверждение.

>>326278
Именно такие в процессоре вряд ли окажутся. В вышеприведенном процессоре такого нет.
Или у тебя вопрос в том, как программа будет переводить десятичные числа (код 1 из 10) в двоичные (натуральный двоичный код)? Так это совсем просто, например посредством команд сравнения и условных переходов.

Все, мне надоело отвечать на твой тупняк. Если следующие вопросы будут не по курсу nand2tetris, то отвечать тебе не буду. Вопросы по этому курсу можешь задавать в этом треде.
Аноним 12/06/18 Втр 14:26:50 326321130
>>326279
>>326294
>>326295
>>326296


Все радачеры, спасибо вам за терпение и мои вопросы. Пойду тогда книгу эту скачаю и поизучаю
Аноним 12/06/18 Втр 18:28:53 326343131
Аноним 13/06/18 Срд 20:31:35 326537132
864546786.png 243Кб, 397x396
397x396
12345676524.png 14Кб, 366x399
366x399
ПЛИСач, а Spartan-6 взлетит, если ядро запитать пикрилейтед? Можно ли R2 выбросить нафиг?
Аноним 13/06/18 Срд 20:34:41 326538133
Аноним 13/06/18 Срд 20:41:44 326539134
>>326537
Вроде можно. На выход кондёр пожирнее, резистор на пару сотен Ом до земли.
Аноним 13/06/18 Срд 22:05:29 326546135
>>326537
Я слишком сноб, но меня так-то от элэмки корежит, а тут еще и плис питать от неё. Уф.
Аноним 13/06/18 Срд 22:55:06 326552136
>>326546
В моём случае там будет AMS1117.
Аноним 14/06/18 Чтв 11:42:07 326691137
Котаны, сколько примерно будет стоить заказать в китае 6-слойную плату в форм-факторе pci express?
Аноним 14/06/18 Чтв 12:30:28 326693138
>>326691
Формат "pci express" - wtf
Аноним 14/06/18 Чтв 12:59:23 326696139
54876865.png 61Кб, 1246x967
1246x967
>>326693
Форм-фактор. Понятно же, что он имел ввиду футпринт платы под шину на материнку.
Аноним 14/06/18 Чтв 16:10:02 326757140
>>326696
This! Спасибо за перевод с битардского. Я просто ахуеваю сколько стоят отладки с интерфейсами PCI-E и SFP+
Они что блять из золота?
Может дешевле выйдет, если самому развести и заказать у китайцев?
Аноним 14/06/18 Чтв 16:42:44 326768141
>>326757
С учетом вероятного проеба первой партии, и немногочисленности, будет раза в два дороже
Аноним 14/06/18 Чтв 16:55:35 326778142
4345457867656.png 110Кб, 1007x684
1007x684
5765876765.png 87Кб, 1589x725
1589x725
>>326757
Это не перевод, а попытка затраллеть (или нет, в случае только разъёма). Вообще это PCI Express Electromechanical Specification, не? Дешевле или нет, ящитаю, зависит от конкретной отладки или конкретно того, что тебе нужно, и в каком количестве.
Аноним 14/06/18 Чтв 23:25:22 326828143
Плисаны,
возможно ли устроиться и зарабатывать нормальную деньгу (50-150) плисаном без диплома вообще? Или без диплома магистра?
Аноним 15/06/18 Птн 15:31:08 326941144
Аноним 15/06/18 Птн 19:05:44 326962145
Аноним 15/06/18 Птн 19:17:21 326963146
>>326941
>>326962
А где в РФ вообще плисаны востребованы?
Аноним 15/06/18 Птн 20:05:38 326975147
>>326963
Посмотреть тонущий тред никак? Я тебе даже ссылку на него оставлю https://2ch.hk/ra/res/127314.html

>Или без диплома магистра?
С дипломом специалиста нормально. А с дипломом бакалавра сложно. Сразу же возникает вопрос почему не доучился. Обстоятельства или просто дурак?
Аноним 15/06/18 Птн 20:24:28 326979148
>>326975
>почему не доучился
Но ведь законченное высшее, ко-ко!
Аноним 15/06/18 Птн 21:24:25 326992149
>>326757
> отладки с интерфейсами PCI-E и SFP+
> Они что блять из золота?
Они, прежде всего, предназначены для больших дяденек с серьёзным бизнесом, а не для гаражных ниггеров.

> Может дешевле выйдет, если самому развести и заказать у китайцев?
Ты точно уверен, что можешь уложиться в 200 долларов за готовое изделие?
https://www.aliexpress.com/store/product/Arria--PCIe-board/620372_32844162066.html
https://www.aliexpress.com/store/product/PCIe-development-board-Cyclone-IV/620372_32821486791.html
Аноним 16/06/18 Суб 05:28:04 327012150
>>326979
Как правило в руководстве компаний, которым в РФ нужны плисаны (оборонка) сидят дяди старой формации, воспитанные еще при Брежневе. А им ты хуй объяснишь, что бакалавр это высшее образование.
Аноним 16/06/18 Суб 08:49:10 327019151
>>327012
Высшее образование времён Брежнева безвозвратно ушло ещё в начале нулевых. А бакалавр это по сути научный работник, не заточенный под выполнение узко специализированных задач, но с развитым умом и большим количеством креатива. Магистр это уже по совковым меркам кандидат наук. Далее только доктор философии. Но как всегда у нас все смешалось и превратилось в кучу дерьма. Вся надежда на этот срок Путина, по словам будет восстановление разрушенной системы образования и подъем с колен собственной микроэлектроники.
Аноним 16/06/18 Суб 09:46:35 327023152
>>327019
>бакалавр это по сути научный работник, не заточенный под выполнение узко специализированных задач, но с развитым умом и большим количеством креатива
И хули тогда бакалавры делают в ВУЗах, которые готовят инженерные (читай, прикладные) кадры?
Аноним 16/06/18 Суб 10:01:41 327025153
>>327023
Он же написал, что у нас все как обычно перемешалось.
Однако не логично то, что даже первоначально бакалавр - это промежуточный этап перед магистром. Нет смысла готовить узкоспециализированного человека, чтобы потом еще пару лет готовить из него специалиста широкого профиля. Либо так не должно быть вообще, либо бакалавров должно быть два вида.
Аноним 16/06/18 Суб 11:16:54 327030154
>>327012
Жиза. Я начальнику отдела на собеседовании пять раз повторял, что диплом у меня уже есть. Бакалавра.
Аноним 21/06/18 Чтв 11:47:06 327693155
Анон, а никому не попадались книги с практическими курсами и заданиями для FPGA? Т.е. не стопятсотый пересказ спецификации языка и водолейством «что такое двоичная система и в чём разница между CPLD и FPGA», а нечто вроде "FPGA prototyping by Verilog (VHDL) examples".
Аноним 21/06/18 Чтв 12:07:19 327695156
>>327693
>"FPGA prototyping by Verilog (VHDL) examples".
Ну так книжка и называется, лул.
Аноним 21/06/18 Чтв 12:11:58 327696157
image.png 1070Кб, 766x1040
766x1040
Аноним 21/06/18 Чтв 12:53:11 327702158
>>327695
>>327696
Так я потому и пишу «наподобие», что обе эти книги у меня есть. А вот больше такого ничего не попадалось.
Аноним 21/06/18 Чтв 13:34:55 327713159
Аноним 21/06/18 Чтв 13:56:31 327721160
>>327702
Я бы тоже с радостью нечто подобное практическое заимел.
А пока приходится задачки с работы делать.
Аноним 21/06/18 Чтв 14:50:57 327733161
>>327702
Впрочем, кое-что могу подкинуть. Тут не книги, а брошюрки скорее. И да, они появились когда я петушил на VHDL.
Тут подробно описаны потоки типа FIFO.
https://www.springer.com/cda/content/document/cda_downloaddocument/9781461443001-c1.pdf
Тут сборник годных советов.
http://www.mrc.uidaho.edu/mrc/people/jff/vhdl_info/Ten_Commandments_VHDL.pdf
Но больше всего опыта в проектировании я получил, читая макросы на python от этих авторов.
https://github.com/enjoy-digital
https://github.com/m-labs
Аноним 21/06/18 Чтв 16:39:19 327747162
Надоело тупо подключать ардуино библиотеки для датчиков.
Куда лудше вкатываться в ПЛИС или стм32?
Аноним 21/06/18 Чтв 17:08:19 327749163
1.gif 204Кб, 300x400
300x400
>>327747
В какую сторону вращается девушка?
Если по часовой стрелке - ПЛИС.
Если против часовой стрелки - STM32.
Аноним 21/06/18 Чтв 17:26:13 327751164
>>327749
Спасибо. Почему-то твой ответ убедил меня сильно.
Аноним 21/06/18 Чтв 18:02:10 327753165
>>327747
Очевидно стм32.
Стм-ку можно купить, сделать для неё плату из говна и палок однослойную, развести распаять и девайс готов.
ПЛИС для махараечных датчиков - оверкилл.
Если хочется - можно плисоебить чисто в редакторе с тестбенчем.
Аноним 21/06/18 Чтв 18:40:03 327760166
20180621182719.jpg 1013Кб, 2560x1440
2560x1440
>>327751
Это называется внушение. Могу и аргументировать.
Желание перейти к ПЛИС - это желание анализировать. ПЛИС даст тебе знание внутреннего устройства контроллеров и процессоров. Желание анализировать возникает в левом полушарии мозга, и если оно активно - то девушка вращается по часовой стрелке.
Желание перейти к STM32 - это желание создавать. STM32 даст больше возможностей, власти для своих идей. Желание создавать рождается в правом полушарии и когда оно активно, девушка движется против часовой стрелки.
Лучше то, что тебе ближе.
Аноним 21/06/18 Чтв 19:02:51 327762167
>>327747
>Надоело тупо подключать ардуино библиотеки для датчиков.
Учитывая это предложение, тебе лучше как следует изучить микроконтроллер в своей ардуине. Для начала ты можешь делать все то же самое на ардуиновской плате, но не использовать ардуиновское иде и библиотеки.
Ты наверное даже с регистрами в атмеге не разобрался? Представь себе, микроконтроллер, который стоит в ардуине, разрабатывался не для ардуины вовсе. Даже более того, существуют какие-то ардуины и на Cortex-M3. Если бы ардуины начали делать на STM32, а такая возможность есть, то что бы ты тогда делал?

>>327753
В целом верно, но однослойную плату под QFP-144 в домашних условиях вполне можно сделать. А CPLD в PLCC корпусах с панельками вообще можно на макетке паять.
Аноним 21/06/18 Чтв 19:06:28 327764168
1
Аноним 21/06/18 Чтв 19:16:33 327765169
>>327762
>В целом верно
В моем манямирке все fpga уже давно на BGA.
Аноним 21/06/18 Чтв 19:36:36 327769170
>>327765
Это печально, скоро совсем не получится потыкать осциллографом прямо в ноги FPGA. Хотя нет, серия 5576 никуда не денется.
Аноним 21/06/18 Чтв 19:38:04 327770171
>>327769
А зачем тыкать осциллографом, когда есть чипскоуп?
Аноним 21/06/18 Чтв 19:49:09 327773172
>>327770
Чтобы смотреть совместно с аналоговыми сигналами.
Аноним 21/06/18 Чтв 19:52:02 327774173
>>327773
Ну аналоговые сигналы можно и на другом конце потыкать, а не у ноги плисины. Конечно, есть всякая срань шумовая по пути, но я уж не знаю, насколько это важно.
Аноним 21/06/18 Чтв 20:23:43 327775174
>>327774
Так то аналоговые сигналы обычно непосредственно в ПЛИС не заходят. Входной аналоговый сигнал смотришь на одном конце, выходной на другом, а синхронизируешься от вывода ПЛИС, например.
Ну и потом, во FLEX10K ничего такого не имеется.
Аноним 22/06/18 Птн 08:10:48 327807175
20180622080321.jpg 2102Кб, 2560x1440
2560x1440
>>327775
Мне кажется для подобных целей достаточно сделать отладочные пятаки на этапе проектирования печатной платы.
Плюс, насколько я знаю, пятаки, к которым паяется BGA обычно делают сквозными и их можно потыкать с другой стороны печатки? Разве нет? Сам редко этим занимаюсь.
Аноним 23/06/18 Суб 15:50:27 327991176
uart.png 60Кб, 1202x1002
1202x1002
>>327775
Антон, скажи что у меня глюки.
Неужели реализация обычного юарта занимает 342 триггера и в самую младшую FPGA влезет всего 1.5 юарта ?
Аноним 23/06/18 Суб 16:30:48 327999177
Screenshot2018-[...].png 76Кб, 850x1169
850x1169
Аноним 23/06/18 Суб 16:37:56 328001178
Аноним 23/06/18 Суб 21:33:49 328045179
>>327991
Ну не триггеров, а логических элементов.
Плюс, это же приемо-передатчик. Еще и перевод из последовательного в параллельный, та еще морока.
Аноним 01/07/18 Вск 15:32:15 328924180
Двач,хочу вкатиться в FPGA.
Что почитать и какую плату купить для начала?
Аноним 01/07/18 Вск 16:11:56 328926181
>>328924
Поддвачну. В планах накатить 8086 или что-нибудь слабее например 6205, поэтому советуйте платку с оперативкой сразу.
Аноним 01/07/18 Вск 18:39:41 328950182
>>328924
На всякий случай скажу очевиднейший факт, который, возможно, тут не все знают. В отличие от микроконтроллеров, тут для чего-то более-менее сложного без симуляции не обойтись. Непосредственно для обучения плата не требуется. Поэтому если что-то и покупать, то в основном для того чтобы просто посмотреть как оно работает.
Книгу там выше по треду советуют >>327693 Сам я советовать не буду, т.к. то что я читал, мне не понравилось.

>>328926
>6205
Может 6502?
>с оперативкой сразу.
В самих FPGA достаточно много блочной двухпортовой памяти. В весьма небольшой EP4CE10 этой памяти 414 кбит, в EP4CE22 594 кбит, по моему этого вполне хватит для игрушки на 6502. Если все-таки хочется отдельную память, то стоит определиться с ее типом.
Аноним 02/07/18 Пнд 14:38:11 329023183
>>328926
Я брал такую, но для "поиграться" это дороговато наверно.
Аноним 02/07/18 Пнд 14:38:40 329024184
Аноним 02/07/18 Пнд 19:10:11 329062185
Аноним 03/07/18 Втр 08:33:47 329113186
>>328924
> хочу вкатиться в FPGA
> какую плату купить для начала?

Если говорить про альтеры (с хилыми не работал, так что посоветовать не могу), то почти любую на младших камнях из семейства «Циклон 4» (EP4CE6/EP4CE10) и приемлемым количеством мигалок и переделок (чтобы не ебаться с макетками и проводами), плюс программатор (китайский клон USB blaster):
https://www.aliexpress.com/item/ALTERA-Cyclone-IV-EP4CE6-FPGA-Development-Kit-Altera-EP4CE-NIOSII-FPGA-Board-and-USB-Blaster-downloader/32792622551.html
https://www.aliexpress.com/item/Free-shipping-Altera-CycloneIV-FPGA-Development-board-EP4CE6E22C8N/32715249531.html
https://www.aliexpress.com/store/product/Free-shipping-altera-EP4CE6F17C8N-board-fpga-board-altera-board-altera-fpga-development-board-fpga-development-board/620372_32795496067.html
https://www.aliexpress.com/store/product/only-E10-SDRAM-altera-EP4CE10F17C8N-board-fpga-board-altera-board-altera-fpga-development-board-fpga-development/620372_32800480331.html

>>328926
Тоже самое. Додревнюю восьмибитную ЭВМ можно успешно впихнуть в EP4CE10: http://www.electronicsfun.net/RU/archives/932

>>329062
Ну, в моём случае китаец дал ссылку на файлообменник, с архивами (схемы, примеры и немного документации в стиле «шоаррская лиса»).

P.S. Плисаны, я тут охуительную хуйню нашёл. «Пердуина» с MAX10 вместо микроконтроллера: https://www.aliexpress.com/store/product/Mini-Altera-MAX10-10M02SCM-10M8SCM-10M08SAM-FPGA-Development-core-Board-compatible-with-Arduino-Raspberry-Pi/829772_32881985871.html
Аноним 03/07/18 Втр 13:44:43 329161187
>>325350
Прикол они мои клиенты, члены деревянные им отгружаем
Аноним 03/07/18 Втр 18:51:41 329205188
Радач, что почитать, чтобы нормально вкатиться в вети на низком уровне?
Помню, рекомендовали сиську читать, но там разве не применительно к их аппаратуре?
Читал стандарт IEEE на 802.3 - маловато\сложновато. Маки, хуяки. Ничего не ясно.
Аноним 05/07/18 Чтв 11:33:41 329439189
>>329024
Схему китайцы скинули, ага. За ссылку спасибо, кое-что присмотрел там интересное.
Аноним 06/07/18 Птн 21:13:21 329592190
Аноним 07/07/18 Суб 13:00:56 329643191
>>327807
> Плюс, насколько я знаю, пятаки, к которым паяется BGA обычно делают сквозными
Ничего ты не знаешь, Джон Сноу. Потыкать можно в переходные отверстия, через которые ноги соединяются с другими элементами схемы. Сами контактные площадки не сквозные, а поверхностные.
Аноним 07/07/18 Суб 13:06:49 329644192
>>329205
Ты странный. Хочешь вкатываться на низком уровне, а стандарты тебе СЛОЖНА. Кроме того, низкий уровень - это что? Схемотехника PHY? Логика MAC? Алгоритмы протоколов верхнего уровня? Будешь делать свой W5300 на ПЛИС? Будешь делать свой TCP/IP-стек на STM32?
Аноним 08/07/18 Вск 04:16:11 329700193
>>316943 (OP)
Хм... А может 8 бит процессор с программно настраиваевым декодером команд и его возможности в эмуляции на нём всяких микроконтроллеров?

Типа перспективы развития реализации аппаратного эмулятора...

Хз чушь несу
Аноним 08/07/18 Вск 04:20:50 329701194
>>327749
Она идёт вперёдъ
Аноним 08/07/18 Вск 16:25:52 329747195
Аноним 08/07/18 Вск 16:42:02 329748196
>>329747
Ой ля, спс а то я сам всё это учил а как называется хз
Аноним 08/07/18 Вск 18:00:20 329753197
Тест
Аноним 13/07/18 Птн 11:53:24 330254198
>>327760
Бледь.. А если я плисоёб и у меня девушка тоже вращается против часовой стрелки?
Я получается лентяй без желания создавать?
Аноним 13/07/18 Птн 11:55:02 330255199
>>330254
Ошибся, хотел написать что у меня вращается по часовой стрелке
Аноним 13/07/18 Птн 12:38:13 330258200
>>330255
Молодой человек, эта девушка не для вас вращается!
Аноним 13/07/18 Птн 17:40:02 330285201
>>327749
Наебалово. Она попеременно вращается в обе стороны. Смотрите внимательно и долго.
Аноним 13/07/18 Птн 18:04:40 330290202
>>330285
>Она попеременно
Вот же довн! Она одновременно вращается во все стороны!!111
Аноним 13/07/18 Птн 22:01:08 330312203
>>330290
Да! Девушке явно не хватает мнимой компоненты
Аноним 16/07/18 Пнд 22:00:37 330533204
Какая линия прогресса у плисоеба? И критерии качества?
Ну вот поморгал ты светодиодиком.
Потом двумя.
Потом сделал рс232 приемник, ...
как там дальше?
И как плохого плисоеба отличить от хорошего? Быстро кодит? Мало блоков использует?
Аноним 16/07/18 Пнд 23:46:58 330542205
>>330533
>как там дальше?
VGA, общение с памятью, SPI, I2C, USB, 10/100 Ethernet PHY, гигабитные приемопередатчики, общение с АЦП/ЦАП, интерфейс JESD204B, шина AXI, встроенные процессорные ядра (Microblaze/Nios), ARM.
Отдельно - ЦОС, фильтры, приемники, демодуляторы, SDR, обработка звука/видео/изображений, нейросети.
Еще отдельно - криптография, майнинг.
Аноним 17/07/18 Втр 13:59:32 330587206
>>330542
> USB, 10/100 Ethernet PHY, гигабитные приемопередатчики
Это зависит от наличия бабла на дорогие ПЛИСы и корки, или погромиста (не быдлокодера) под боком.

> Ethernet PHY
У тебя три ошибки в слове MAC
Аноним 17/07/18 Втр 18:12:55 330606207
>>330587
>дорогие ПЛИСы и корки, или погромиста (не быдлокодера) под боком
Необязательно, я 100 Ethernet в одно рыло поднял, и без всяких NIOS-ов и прочих говнософтовых и хардовых процов. А все нужные корки есть в свободном доступе.
Аноним 17/07/18 Втр 20:31:11 330611208
Плисаны, делаю тут (в целях самобучения) секундомер с динамической индикацией (на семисегментниках) и внезапно затупил. Как идеологически верно и политически грамотно организовать генерацию низкочастотного строба (http://zipcpu.com/blog/2017/06/02/generating-timing.html )? Генерировать его на месте, в каждом из модулей (мультиплексор, дешифратор семисегментного кода и т.п.), или же генерировать его один раз и использовать в качестве тактового сигнала для модулей?
Аноним 17/07/18 Втр 22:44:15 330615209
>>330542
>шина AXI, встроенные процессорные ядра (Microblaze/Nios), ARM.
Ну это так-то уже куски С кода в процессорной среде по большей части, не?
Аноним 18/07/18 Срд 09:37:02 330642210
>>330587
>Это зависит от наличия бабла на дорогие ПЛИСы и корки, или погромиста (не быдлокодера) под боком.
Зависит. Но вопрос был какая линия прогресса у плисоеба. А в серьезных конторах хотят, чтобы плисоеб мог смахараить свич на ПЛИС.
Аноним 18/07/18 Срд 09:38:35 330643211
>>330615
>Ну это так-то уже куски С кода в процессорной среде по большей части, не?
И? Ты думаешь, плисоеб не должен уметь кодить на C?
Аноним 18/07/18 Срд 10:35:09 330646212
>>330611
> идеологически верно и политически грамотно
делать ему длительность один период тактовой частоты и подавать его на вход EN
Аноним 18/07/18 Срд 17:58:12 330659213
>>330646
>EN
Никак не могу понять, этот EN - обычный вход разрешения, завязанный на вход D, или же какой-то спец. вход завязанный на тактовый вход?
мимо
Аноним 18/07/18 Срд 18:30:03 330662214
>>330643
Просто в чем тут мастерство плисоебства, не пойму.
Аноним 18/07/18 Срд 18:40:29 330663215
Плисаны, дайте путь мастера плисоебства.
И какие вещи надо купить и где.
Какие книги почитать.
Но главное это основные вехи Мастера, так сказать план.
Аноним 18/07/18 Срд 20:32:00 330673216
>>330659
> вход завязанный на тактовый вход
This. Твой строб будет тактирован основной тактовой частотой.
Аноним 18/07/18 Срд 20:55:51 330676217
>>316964
Этого двачую! Логический анализатор для начинающего плисоёба - отличный проект. Можно ещё 8-битную игровую приставку из ничего (от вентилей до написания игрули) попробовать замутить.
Аноним 19/07/18 Чтв 19:02:24 330748218
>>330673
Ну и как он там с ним завязан, по простому И?
Аноним 20/07/18 Птн 16:32:46 330830219
>>330662
В том, чтобы найти нужные куски кода, собрать проект, запустить и чтобы работало как надо.
Аноним 20/07/18 Птн 17:00:38 330833220
>>330748
Да, если это clock enable. Бывает еще count enable, это другое.
Аноним 21/07/18 Суб 00:25:41 330892221
>>330833
>count enable
Это в счётчиках. Это синхронный вход, подаётся через комбинационные схемы на D-вход.
Мне интересен именно clock enable у D-триггера. Желательно схему такого триггера увидеть.
Аноним 21/07/18 Суб 17:14:25 330944222
1.jpg 316Кб, 1315x987
1315x987
2.jpg 422Кб, 1315x987
1315x987
3.jpg 243Кб, 687x986
687x986
4.jpg 121Кб, 911x764
911x764
>>330892
Насколько я понимаю, это можно сделать не одним способом, но например в структурных схемах МК рисуют вентиль И. А в логической ячейке ПЛИС уже есть аппаратный триггер, и как там у него внутри сделан вход clock enable, производитель не расписывает (ну, по крайней мере, Альтера для Циклона не расписывает).
Аноним 21/07/18 Суб 19:32:00 330974223
>>330944
Название книги с двух первый пикч?
Аноним 21/07/18 Суб 19:52:22 330976224
>>330944
>1 пик
Если сделано как на (b), то это хуета, лучше сразу делать как на (а).

Вкинь, плиз, страницу с рисунком 3.18.
Аноним 21/07/18 Суб 20:34:18 330982225
>>330974
digital-design-and-computer-architecture-russian-translation.pdf
Аноним 21/07/18 Суб 20:50:40 330984226
1.jpg 160Кб, 688x987
688x987
>>330976
Угрюмов Е.П. Цифровая схемотехника: учеб. пособие для вузов. — 3-е изд. 2010
Аноним 21/07/18 Суб 20:54:35 330985227
>>330976
> Если сделано как на (b), то это хуета
Поясни, пожалуйста.
Аноним 22/07/18 Вск 17:44:24 331043228
>>330985
По такой схеме повышаются требования к сигналу EN, он должен быть таким чтобы на тактовом входе не образовались пички.
И вообще, комбинационные схемы и другие на тактовых входах крайне нежелательны - синхронное проектирование же.
Вот тут подробнее рассказывается
https://youtu.be/82MIcxi5pPo
https://youtu.be/JpUUdEEKZeg
Аноним 23/07/18 Пнд 15:44:02 331190229
Привет, Анон, я смотрю тут много вопросов на тему "что мне выучить чтобы устроиться на работанейм?" Работаю 4 года FPGA-разработчиком, могу ответить на твои ответы.
Аноним 23/07/18 Пнд 16:23:49 331197230
>>331190
>Работаю 4 года FPGA-разработчиком, могу ответить на твои ответы.
Хуи сосешь?
Аноним 23/07/18 Пнд 18:39:51 331217231
Аноним 23/07/18 Пнд 19:02:43 331221232
>>331190
Сколько процентов рабочего времени ты занимаешься именно разработкой - проектированием структурных схем, кодингом, симуляцией, пердолингом с железкой?
Аноним 23/07/18 Пнд 19:26:09 331222233
>>331190
Какая специфика работы?
В каком городе живёшь?
Какая з/п?
Аноним 23/07/18 Пнд 19:44:05 331223234
>>331190
А я бластером до потолка стрельнул.
Почему кто-то платит тебе деньги? Что ты делаешь?
Аноним 24/07/18 Втр 16:33:19 331515235
Аноним 25/07/18 Срд 13:08:29 331649236
47857262487.jpg 61Кб, 794x593
794x593
Шмитт, помоги есть смысол собрать универсальный нищебродский девборд. Хочу связку:
STM32F103ZXXX как основной узел ..., нутыпонел.
XC6SLX9-2TQG144C как вспомогательный.
На плате будут распаяны: слот под microSD, SDRAM, SPI flash (S6 заведётся от W25QV?).
Чего ещё не хватает для универсализации? кроме мозгов
Аноним 25/07/18 Срд 13:29:32 331650237
>>331649
>sdram
Печатку разведешь?
Аноним 25/07/18 Срд 13:30:09 331651238
Аноним 25/07/18 Срд 13:52:16 331656239
>>331649
Почему бы не грузить S6 "основным узлом" в режиме slave serial? А так в списке поддерживаемых spi flash этот winbond вроде бы есть.
Аноним 25/07/18 Срд 13:55:25 331658240
>>331656
Хочется, чтоб он и в автономном режиме работал.
Аноним 25/07/18 Срд 14:02:24 331660241
>>331649

Я б STM32с FSMC портом взял и по нему со спартанцем соединил (модели с VC,VD,VE после цифр).
Аноним 25/07/18 Срд 14:22:14 331663242
Аноним 27/07/18 Птн 07:51:37 331928243
>>331663
>Разве у Z нет FSMC

Нету, только SDIO
Аноним 27/07/18 Птн 08:29:12 331934244
>>331928

А в даташите пишут что есть, более того, пишут, что у V серии FSMC наоборот кастрирован в отличии от Z. Это ты наверное в таблице на сайте посмотрел, так её наверняка какая-нибудь секретутка из офиса заполняла, верить ей не стоит, в отличии от даташита.
Аноним 27/07/18 Птн 10:41:12 331954245
>>331934
Он и в
>VC,VD,VE
не попал. Там только у xF и xG.

>>331928
Зачем ты пишешь о том, чего не знаешь? Ты школьник?
Аноним 27/07/18 Птн 13:38:05 331970246
>>331954
Ан нет, здесь попал.
>The FSMC is embedded in the STM32F103xC, STM32F103xD and STM32F103xE performance line family.
Но при этом в другом даташите:
>The FSMC is embedded in the STM32F103xF and STM32F103xG performance line family.
Получается, все с буковками должны иметь FSMC, но в F103R в кубе нету нихуя, хотя в описании есть. Это куб мозги ебёт или документация?
Расширенный CS есть только у Z, да.
Аноним 27/07/18 Птн 14:03:11 331978247
>>331970
Орнул с даташита, раздел Pinouts and pin descriptions. У LQFP64 нет выводов к FSMC. Это выглядит как "вам полагается FSMC, но мы вам его не дадим потому, что у вас ножек нету".
Аноним 27/07/18 Птн 14:35:14 331988248
>>331978
>вам полагается FSMC, но мы вам его не дадим потому, что у вас ножек нету".
И хуле орать? Бери чип с нужным количеством ног и радуйся. Или ты предлагаешь писать отдельный даташит под каждый корпус?
Аноним 27/07/18 Птн 14:53:28 331990249
>>331988
Не, ну там на 11-ой странице в Table 2 и так написано что-то, но можно же эту таблицу было вывалить сразу в описании на сайт или, хотя бы, добавлять исключения в описание. А то получается, что в описании всё есть, а дальше мелким шрифтом на n-ой странице написано, что у одного нихуя нет, а другой кастрирован. Это как если при покупке смартфона в описании нормальные характеристики, а в инструкции меленько будет написано, что телефона нет, собс-но, 128Гб в другой модели, и вообще это тетрис.
Аноним 27/07/18 Птн 15:04:24 331991250
>>331990
Ты будто первый раз попал на сайт st. Сейчас еще более-менее упорядочили, а еще пару лет назад там был пиздец, гроб, кладбище.
Аноним 27/07/18 Птн 15:07:03 331992251
>>331991
Как будто это что-то оправдывает. Получается, что и сейчас можно в говно наступить.
Аноним 30/07/18 Пнд 18:33:40 332429252
>>331221
70%
Большая часть времени уходит на ёблю с контролем версий и написание драйверов на коленках
>>331222
СПб, 75к, обработка видео и ТВ-техника
>>331515
SV
Аноним 31/07/18 Втр 01:49:52 332494253
>>332429
>обработка видео и ТВ-техника
>СПб
>75к
Ну норм так.
Аноним 31/07/18 Втр 19:01:30 332584254
Плисачи, такой нубский вопрос:
Есть sigA STD_LOGIC_VECTOR, скажем, на 32 бита,
и sigB STD_LOGIC.
Как красиво назначить некоторые биты вектора равными значению сигнала?
Т.е., чтобы sigA(13 downto 7) <= sigB. Напрямую, естессно, не работает. Каждый бит прописывать - тупо.
Я помню была какая-то ебатория с фигурными скобками типа <={N, (sigB)} или типа того. А может то в верилоге было.
Аноним 31/07/18 Втр 19:30:53 332586255
>>332584
Вспомнил сейчас про loop, но не люблю его использовать. Хз как он синтезируется и что там по таймингам.
Аноним 31/07/18 Втр 23:55:42 332613256
>>332584
sigA(13 downto 7) <= (others => sigB)
Аноним 01/08/18 Срд 06:57:06 332627257
>>332613
Так и знал, что others может сработать.
Эх, спасибо.
Аноним 01/08/18 Срд 18:02:58 332705258
>>332584
>Есть sigA STD_LOGIC_VECTOR
А ещё есть Верилог.
01/08/18 Срд 19:49:01 332722259
>>332705
А еще есть хуй в твоей жопе.
Аноним 01/08/18 Срд 21:06:57 332742260
14538871279870.webm 1678Кб, 426x240, 00:00:22
426x240
>>332722
А есть ещё порванный вхдльшик с горящим пердаком.
Аноним 01/08/18 Срд 21:51:58 332753261
>>332742
Потому что это бесполезный высер про смену языка.
На уровне смены железки.
Смены места работы.
Смены спецухи.
Смены места жительства.

Поставил вам анон задачу решать: есть суп вилкой. Нет, давайте не будем её решать, давайте советовать ложку.
Аноним 01/08/18 Срд 23:26:00 332778262
>>332753
>смена железки
>Смена места работы
>Смена спецухи
>Смена места жительства
Почему же бесполезный?
Аноним 02/08/18 Чтв 08:38:46 332811263
truncator1.png 65Кб, 944x900
944x900
Долбоёб с КВ шарманкой вкатывается в тред.

Попробовал реализовать АРУ. Вот что вышло:
https://www.youtube.com/watch?v=c6bMfBvcjDE

Описание на Верилоге - на пикче. На входе - сигнал в спектре шириной 3 кГц после КИХ-фильтра.
Из-за мгновенного действия детектора усиление сильно проваливается от грозовых разрядов, и из-за ступенчатой регулировки слышно щелчки, пока работает какая-нибудь станция.

Как можно попроще сделать регулировку плавной? Как текущий вариант допилить? Может фильтр простенький какой (скользящее среднее, например), чтоб щелчки сглаживать?
Аноним 02/08/18 Чтв 09:26:02 332819264
Аноним 02/08/18 Чтв 09:50:21 332821265
1.gif 14Кб, 550x153
550x153
>>332811
Почему бы тебе не сделать схему с обратной связью? Так же как в аналоговых приемниках делают.
Детектор - просто взятие модуля. Интегратор сигнала ошибки - ФНЧ и вычитание из порога. А управляемый усилитель - умножитель.
Аноним 02/08/18 Чтв 10:00:47 332822266
Аноним 02/08/18 Чтв 10:37:33 332830267
Аноним 02/08/18 Чтв 15:25:31 332854268
>>331649
Почему бы не сделать на цинке и без стм?
Аноним 02/08/18 Чтв 17:37:05 332876269
>>332821
Попробую.
Тут встаёт вопрос выбора разрядности.

Допустим, в качестве фильтра беру скользящее среднее длиной 2048 семплов (больше по степеням двойки в такт не влезает).
Имея на входе 17 бит, при длине 2048 и худшем случае, когда на входе - максимальное постоянное напряжение, получаю увеличение разрядности на 11 бит. Итого, на выходе фильтра имеем разрядность 17 + 11 = 28 бит.
Тут первая непонятка:
Какая разрядность вычитателя должна быть?
Аноним 03/08/18 Птн 05:59:18 332913270
>>316943 (OP)
>пик
Боги рассыпухи смотрят на плисорабов с недоумением.
Аноним 03/08/18 Птн 07:04:09 332916271
>>332819
Предлагаешь использовать case или есть более интересные предложения?
Аноним 03/08/18 Птн 07:38:46 332920272
>>332913
> Боги рассыпухи смотря
т
Очень мееееееееееееееедленно, потому что могут онли в сотни килогерц максимум.
Аноним 03/08/18 Птн 11:08:33 332938273
Аноним 03/08/18 Птн 17:35:25 333002274
>>332913
Боги рассыпухи вымерли как вид ещё в 90-х.
Аноним 03/08/18 Птн 18:44:07 333014275
sinclair.jpg 160Кб, 800x563
800x563
utf.jpg 41Кб, 469x428
469x428
>>333002

>Боги рассыпухи вымерли

вместе с моим спектрумом...
Аноним 03/08/18 Птн 22:45:24 333037276
>>333014
"Ленинград"

Сейчас у спектрумистов на барахолке полно новодешьных печатных плат для спектрумов и не только.
Аноним 04/08/18 Суб 14:51:12 333098277
agcsmooth.png 29Кб, 736x526
736x526
>>332821
>>332876
Всё, разобрался. Спасибо за подсказку. Настолько всё просто получилось, что удивляюсь, что сам не допер и нагуглить не смог, пиздец.

https://www.youtube.com/watch?v=kVJAphWwxNc
Про дискретность регулировки усиления на 2:28 возможно хуйню сказал, ну да похуй.
Аноним 04/08/18 Суб 17:03:19 333111278
Аноним 06/08/18 Пнд 06:49:15 333264279
Плисаны.
Вот стоит перед нами задача. Из входов с помощью магии получить выходы. Пишем вот на HDL всякое и первоначальными критериями того, что всё удалось является адекватная временная диаграмма, количество занимаемых ячеек и работа непосредственно на железке.
А вот как писать код чтобы: было низкое энергопотребление или высокая скорость выполнения или минимальное количество ячеек?
На что ориентироваться, как это на коде отражается?
Аноним 06/08/18 Пнд 07:57:23 333267280
Безымянный.png 63Кб, 821x707
821x707
>>333264
Вот в циклоне, как показано на схеме, предусмотрено переключение направления на ходу, а не только при конфигурации. В других ПЛИС аналогично. В чем проблема то?
Аноним 06/08/18 Пнд 20:02:45 333322281
>>333264
>низкое энергопотребление
Меньше переключений, в том числе и отключение тактовой на неиспользуемых в данный момент частях схемы.

>высокая скорость выполнения
Чаще разбивать толстые комбинационные схемы триггерами.

>минимальное количество ячеек
Тут только оптимизация на ранних уровнях проектирования.
Аноним 06/08/18 Пнд 20:12:37 333326282
>>333322
Ну вот здесь уже что-то понятно.
Хотя как это ретранслируется в код пока неясно.
Аноним 07/08/18 Втр 01:04:03 333373283
>>333326
HDL-код - это всего лишь способ создания схем. Можно схемы в графическом редакторе рисовать, можно напрямую в ChipPlaner-е структуру задавать, от этого ничего не меняется, просто в HDL-е это всё делается быстрее и удобнее. А чтобы нормально кодить, надо более менее представлять как желаемая схема должна выглядеть в графическом виде.
Можешь видосики глянуть, может что-то интересное найдёшь
https://www.youtube.com/playlist?list=PL4UMfOeGYsvZs-gvs0dC8oO3HXrmGC1bm
Аноним 07/08/18 Втр 10:42:34 333405284
>>333326
>Хотя как это ретранслируется в код пока неясно.

FPGA основана на таблицах истинности+специализированные блоки (память, умножители). Смотри даташит конкретной плисы. Например LE четвертого циклона - это любая логическая функция, описываемая 4 входами и одним выходом + один бит памяти + логика роутинга и синхронизации.

Соответсвенно прикидывай, через сколько логических функций 4bit to 1bit выражается твоя логика.
Аноним 07/08/18 Втр 17:48:13 333435285
>>333405
Ну вот что, например, лучше:
case (a) is
when 0 => ..
..
when 99 => ..
(т.е. мультиплексор на 100 входов)
или
if a = 1 then ..
elsif ...
(т.е. 100 триггеров(?)).

Триггер сам по себе реализуется всегда тяжелей, но в логике плиса - хз, там же и правда, лут, алу, вся хуйня.
Аноним 07/08/18 Втр 18:32:25 333438286
img89[1].jpg 57Кб, 800x600
800x600
img90[1].jpg 28Кб, 800x600
800x600
>>333435
>Триггер сам по себе реализуется всегда тяжелей
В ПЛИСе триггер не реализуется, они там уже есть, точно так же как и ПЗУ на которых реализуются комбсхемы.
Минимизировать схему, по большому счёту, нужно на ранних этапах проектирования, т.е. перед тем как начать кодить думаешь: "а нужен этот модуль/часть схемы, или без него можно обойтись", более тщательно прорабатываешь архитектуру. А если по мелочи то, в качестве примера, можно привести счётчик с параллельным переносом и сквозным.
Аноним 07/08/18 Втр 18:37:35 333439287
1.png 93Кб, 1080x795
1080x795
>>333435
>но в логике плиса - хз
В самом деле хз...
Ты бы хоть что-нибудь почитал, прежде чем за ПЛИС браться.
Аноним 08/08/18 Срд 21:16:33 333562288
Как явно реализовывать выбор ячейки RAM?
Везде пишут просто
ram_data_out <= memory(to_integer(ram_addr));
Понятно, что для более-менее больших объёмов делать
case (to_integer(ram_addr)) is
when 0 => ram_data_out <= memory(0);
...

(т.е. мультиплексор) заебешься. Разбивать его на несколько маленьких? Или есть еще какая элегантная реализация, типа сдвигового регистра и пр. ?
Аноним 08/08/18 Срд 21:19:16 333563289
>>333562
>Везде пишут просто
>ram_data_out <= memory(to_integer(ram_addr));
Так и чем тебя это не устраивает?
Аноним 08/08/18 Срд 21:20:20 333564290
>>333563
Эта строка в любом компиляторе и на любой железке будет одинаково реализовываться?
Аноним 08/08/18 Срд 21:25:12 333565291
>>333564
Если железка поддерживает реализацию массивов данных, то да.
Аноним 09/08/18 Чтв 10:03:15 333610292
Парни, привет, я начинающий, сильно не пинайте.
Как сделать обмен комп<->плис? Первое что пришло в голову - UART, но блин медленно, передавать/принимать желательно за раз 64 байта, по возможности быстро, хотя бы 8 байт за такт. Какие ещё варианты? Параллельный стык колхозить типа LPT?
Аноним 09/08/18 Чтв 10:41:46 333623293
>>333607
>не знаю как прошеца в очередной раз контроллер 51 архитектуры
>контроллер 51 архитектуры
>тред про ПЛИС

Шел бы ты нахуй отсюда, петушок.
Аноним 09/08/18 Чтв 12:43:22 333634294
>>333610
>передавать/принимать желательно за раз 64 байта
Что такое "за раз"?
Аноним 09/08/18 Чтв 14:15:35 333646295
>>333634
Это массив данных на аппаратном... в общем размер переменной для вычислений, пока все 64 байта не придут, вычисления не начинаются.
Аноним 09/08/18 Чтв 16:11:58 333653296
>>333610
Даже если скорость поднять, то все равно медленно? Большинство USB-UART переходников работают до 460800 бод без проблем, а некоторые на порядок больше тянут.
Из простого можешь еще использовать FT245, FT232 и подобные.
>Data transfer rate to 1 Megabyte / second - D2XX Direct Drivers.
>Simple interface to MCU / PLD / FPGA logic with simple 4-wire handshake interface.

>>333646
Ну можешь просто байты считать. Либо можно начинать (и/или заканчивать) посылку с уникальной последовательности, если боишься обрывов связи.
Аноним 09/08/18 Чтв 16:29:13 333656297
>>333646
>пока все 64 байта не придут, вычисления не начинаются
Для этих целей ставится буфер, который выдает сигнал валидности. Выдает только тогда, когда в него набъется нужное количество данных.
Аноним 09/08/18 Чтв 16:58:23 333659298
>>333653
>>333656
Дело в том, что плисина считает быстро, и получится, что большую часть времени будет простаивать, ожидая, пока заполнится буфер. Нужна скорость мегабит 50, по моим прикидкам.
Аноним 09/08/18 Чтв 17:32:46 333668299
>>333659
Перестань ебаться в глаза и еще раз прочитай что я писал. Тебе подойдет FT232.
Аноним 09/08/18 Чтв 18:21:32 333675300
>>333610
Ну можно угареть и по езернету соединить. 15кбайт пакет, 1ГБит\сек скорость.
Аноним 09/08/18 Чтв 18:26:21 333676301
>>333659
Ты че там, бетховенов майнишь что ли?
Аноним 09/08/18 Чтв 18:41:42 333679302
Аноним 09/08/18 Чтв 20:12:34 333687303
>>333679
Ну это если есть свободный слот, то да, топ.
Аноним 11/08/18 Суб 03:48:45 333762304
>>316943 (OP)
Собери аппаратный дешифратор данных, у чекистов что-то подобное сейчас в ходу.
Аноним 11/08/18 Суб 08:31:52 333766305
Awesomeemoji.gif 84Кб, 385x280
385x280
good
Аноним 11/08/18 Суб 13:05:11 333778306
1. Чем отличается систем верилог от верилога?
2. Есть ли разница в описании комбинационной логики между:

a)
process(A1,A2)
begin
result <= A1 and A2;
end process;
B <= result;

б)
B <= A1 and A2;

3) Есть ли разница в описании:

а)
if (A1 = '1')
then if (A2 = '0')
then

б)
if (A1 = '1') and (A2 = '0')
then
Аноним 11/08/18 Суб 14:11:24 333786307
>>333778
1. Систем верилог - расширение верилога с блекджеком и свистоперделками.
2, 3. С такими вопросами можешь нахуй идти.
Аноним 11/08/18 Суб 14:44:28 333796308
>>333778
>>333786
Кроме того свистоперделки и блекджек в основном касаются несинтезируемых описаний.
Аноним 13/08/18 Пнд 16:17:26 334008309
anime.png 171Кб, 462x380
462x380
>>333098
>Всё, разобрался. Спасибо за подсказку. Настолько всё просто получилось, что удивляюсь, что сам не допер и нагуглить не смог, пиздец.

Я, конечно, привык к человеческому долбоебизму, но всё равно иногда охуеваю.
Вот здесь я тебе советовал сделать так, как ты сделал сейчас:
https://m2ch.hk/ra/res/138868.html#278025
Вот здесь я объяснял, что будет происходить от импульсных помех:
https://m2ch.hk/ra/res/138868.html#278445
Вот здесь я тебе предсказывал, что ты соснёшь со своим бараньим упорством не слушать хороших советов:
https://m2ch.hk/ra/res/138868.html#278470

Поздравляю, ты всё-таки пришёл к И-регулятору, всего-то за один год и четыре месяца. Ещё и пожаловавшись, что оно не нагуглилось. Просто пиздец, какие же люди долбоёбы, вообще пиздец.
Аноним 15/08/18 Срд 19:40:42 334163310
>>316943 (OP)
Объясни чё за плис
мимо в стельку пьяный долбаеб , не понимающий статью в Википедии
Аноним 15/08/18 Срд 19:57:10 334166311
Аноним 19/08/18 Вск 10:54:35 334508312
Кто-нибудь может в SignalTap?
Аноним 19/08/18 Вск 19:15:49 334576313
probe.png 149Кб, 1899x742
1899x742
>>334508
Только In System Sources and Probes Editor для попытки снятия топологии неизвестной платы. Заебатый квест. Большая часть выводов (может 500 из 740) распознана таким методом, исключая выводы высокоскоростных трансиверов.
Аноним 19/08/18 Вск 20:13:14 334578314
>>334576
Пока разбирался с SignalTap-ом столько косяков нашёл и расхождений с документацией. Вот думаю, то ли я и дурак и не понимаю, то ли действительно индусы пишут.
Аноним 20/08/18 Пнд 08:31:58 334612315
>>334578
Они ещё и официальные видеоруководства записывают. От их акцента полное чувство индусизма происходящего.
Аноним 20/08/18 Пнд 10:31:50 334624316
54365689645.jpeg 84Кб, 640x640
640x640
>>334612
"хай маль диль флендс. тюдель аль виль тёльк абальт илитлёниксь"
Аноним 20/08/18 Пнд 18:44:56 334677317
Аноним 20/08/18 Пнд 18:58:25 334681318
Аноним 20/08/18 Пнд 19:02:01 334684319
Аноним 20/08/18 Пнд 19:23:06 334687320
>>334681
Щито поделать. Индусы пилят видосы.
Аноним 20/08/18 Пнд 21:05:08 334707321
>>334681
Ну и нахуя? Мне СигналТап нужен, блеать!
Аноним 21/08/18 Втр 07:41:59 334755322
>>334707
Жри чё дают, мразь.
Аноним 31/08/18 Птн 22:11:32 336127323
1. Есть ли годные книжки по систем верилогу на уровне designer's guide to vhdl?
2. Есть ли годные ресурсы по всему этому кодингу на русском языке (ну кроме мемных ссылок на марсоход и тот плейлист на тытрубе про цифровую схемоту) или дефолтный гуглеж на английском всё еще единственный годный вариант?
Аноним 31/08/18 Птн 22:27:35 336129324
>>336127
Обгоню всех на повороте и скажу, что слышал про IEEE std.
Аноним 04/09/18 Втр 12:42:50 336501325
Плисаны, как ускорить подсчет контрольной суммы UDP?
Не найду полином для расчета. Вообще можно ли считать это через полином? Или только через сумматор?
Аноним 04/09/18 Втр 13:11:02 336502326
>>336501
Можешь радикально ускорить, просто забей нулями. Будет работать.
Аноним 04/09/18 Втр 13:14:06 336503327
>>336502
Работать то будет, но хуйня же выходит
Аноним 04/09/18 Втр 13:17:18 336504328
>>336503
Тогда только суммировать... полиномами только общий CRC Ethernet фрейма считаеться
Аноним 04/09/18 Втр 13:18:54 336505329
>>336503
А че хуйня? как по мне они там с КС переборщили
Аноним 04/09/18 Втр 13:22:11 336506330
>>336505
Если не буду считать КС, моя железка будет поддерживать протокол лишь условно. Для ардуиноподелок такой подход конечно подходит, но для коммерческого продукта врядли.
Аноним 04/09/18 Втр 13:24:59 336507331
>>336505
Не то что переборщили а сотворили лютую хуету. Вот что бывает, когда низкоуровневые протоколы пишут высокоуровневые программисты.
Аноним 04/09/18 Втр 13:32:47 336508332
>>336506
Как по мне, если хочешь сократить латенси. например, это можно не считать. Ибо у тебя пейлоад тоже в чексуме
Аноним 04/09/18 Втр 13:42:00 336509333
>>336508
Как я жалею в такие моменты, что плохо знаю математику. Сейчас бы вывел какую-нибудь функцию подсчета КС.

В голову не приходит ничего лучше, кроме как построить конвейер.
Аноним 04/09/18 Втр 14:37:40 336513334
>>336509
А как не через конвеер? Шморгать память?

Ну, еще придумал способ упростить. Вбей в заголовок не нулевую константу, а в пейлоад в конец вставь КС, если протокол пзволяет добавить 2 лишних байта
Аноним 04/09/18 Втр 14:58:10 336516335
>>336513
>Вбей в заголовок не нулевую константу

И рандомный маршрутизатор/стек ОС в цепочке тебя нахуй с ней пошлет
Аноним 04/09/18 Втр 16:02:59 336520336
>>336516
Схуяли, это стандарт
Аноним 04/09/18 Втр 16:25:42 336523337
>>336520
>Схуяли, это стандарт

Стандарт - это нули, всё что не нули - значит контрольная сумма оппа-а пакет-то битый, нахуй его.
Аноним 04/09/18 Втр 17:27:32 336527338
>>336509
>В голову не приходит ничего лучше, кроме как построить конвейер.
А так у тебя конвейеров нету? А как данные передаются тогда? Только не говори, что процессором без DMA.
Аноним 04/09/18 Втр 17:27:39 336528339
>>336523
не, ты просто не понял. Тебе не важно чем подгонять контрольную сумму к правильному значению, можно полем, а можно данными. Позиция по сути не важна
Аноним 04/09/18 Втр 19:22:02 336536340
Хуй знает, в тему ли, но вопрос по Signal Integrity.
Если интерфейс согласован до пина, а на кристалле показывает говно - это фейл?
А если наборот?
Заебали эти DDR4 с их ODT.
Аноним 04/09/18 Втр 20:48:31 336543341
>>336536
Чем показывает? На каком кристалле, плисины, памяти? Может, не написал констрейны для i/o standard и line termination. А может, и фейл, да.
Аноним 04/09/18 Втр 22:36:15 336550342
>>336543
Это на стадии моделирования разводки.
Модели выводов прописаны соответственно в IBIS файлах.
Показывает, например, на чтении у ноги FPGA хуйню, а на кристалле - норм. (odt на ноге плиса включен)
Аноним 05/09/18 Срд 09:34:05 336574343
>>336550
А чем моделируете, сударь?
Аноним 05/09/18 Срд 10:06:59 336576344
Аноним 05/09/18 Срд 15:50:08 336621345
>>336527
Данные по по акси передаются. Dma и проц будет, но это не моя задача.
Аноним 05/09/18 Срд 15:58:12 336622346
>>336621
Ну вклинься между акси мастером и слейвом, и считай в процессе передачи, не должно быть слишком сложно.
Аноним 05/09/18 Срд 16:11:05 336625347
Два вопроса:
1) Нахуя на циклоне нужны VREF для банков пинов?
2) Что дает выбор стандарта напряжений логических уровней в пин планере квартуса?
Аноним 05/09/18 Срд 16:14:08 336626348
>>336625
>Нахуя на циклоне нужны VREF для банков пинов?

https://en.wikipedia.org/wiki/Stub_Series_Terminated_Logic

> Что дает выбор стандарта напряжений логических уровней в пин планере квартуса?

Требуемую совместимость с другими потрохами на плате (оператива-хуератива, цапы-хуяпы, шины-хуины)
Аноним 05/09/18 Срд 16:28:41 336630349
>>336626
>Требуемую совместимость с другими потрохами на плате (оператива-хуератива, цапы-хуяпы, шины-хуины)

Не понял, поясни плиз.
Аноним 05/09/18 Срд 16:34:48 336632350
>>336630

Логические ноги у разных микросхем/шин работают на разных стандартах.
Аноним 05/09/18 Срд 16:47:06 336635351
images.jpeg 12Кб, 256x197
256x197
>>336632
Спасибо. Держи няшку.
Аноним 05/09/18 Срд 17:07:10 336637352
>>336622
Короче все оказалось проще. Заголовок MAC-уровня передается за 14 тактов. На предыдущей стадии конвейера просчитываю предварительную КС UDP-payload. Окончательную КС считаю за 5 тактов во время передачи MAC. Можно было не ломать голову.

Однако, задача с ускорением подсчета КС интересная, так и не придумал рещение.
Аноним 05/09/18 Срд 18:25:16 336645353
>>336576
Шпиён! За меня ответил.
Аноним 05/09/18 Срд 18:27:59 336647354
>>336625
>2) Что дает выбор стандарта напряжений логических уровней в пин планере квартуса?
Разные стандарты определяют допустимые диапазоны напряжений и токов на выводе, надо читать на эту тему мануал плисины и даташит железки, к которой коннектится плис. (Те же jedec для DDR, например).
Аноним 14/09/18 Птн 20:25:38 337321355
>>317009
>джава для петухов.
вот сейчас обидно было
>мне похуй на зарплату
ой ой ой передумаешь
мимо проходил
Аноним 15/09/18 Суб 06:11:43 337345356
>>334008
Доброта.
Я был и остаюсь в таком состоянии диагноз есть, что про ЦОС-тред вообще забыл, да и не мог нихуя делать, не соображал почти.
Аноним 16/09/18 Вск 09:13:47 337399357
>>337388
Для любителей садо-мазо можно предложить 74HC299 - есть и параллельная загрузка и последовательный ввод-вывод.
С тебя логика как переключать режимы загрузка-вывод (может и обойдется даже без инвертора на S1) и как отличать актуальные данные или нет.
За лучами поноса в >>316943 (OP)
Аноним 16/09/18 Вск 13:13:51 337403358
Существует ли какая-нибудь литература по верификации на русском?
И не надо мне писать что нужно знать английский. Мне понятно что все равно в итоге придется читать на английском, но хотя бы основы я хочу прочитать на русском.
Аноним 16/09/18 Вск 15:28:03 337417359
>>337403
>литература по верификации
По чему?
Аноним 16/09/18 Вск 16:34:55 337423360
>>337417
По-русски это, видимо, звучит как "написание тестбенчей".
Аноним 17/09/18 Пнд 20:48:02 337515361
spartan6 можно запрограммировать без spi flash?
Аноним 18/09/18 Втр 04:49:10 337545362
>>337515
Можно сконфигурировать через JTAG.
До первого пропадания питания.
Аноним 18/09/18 Втр 10:14:23 337557363
>>337403
Отвечаю сам себе, нашел одну книгу.
>Проектирование и верификация цифровых систем на кристаллах. Verilog & System Verilog
>Хаханов В.И., Хаханова И.В., Литвинова Е.И., Гузь О.А.
Книга выглядит как-то не очень, слишком похоже на перевод. Скорее всего это перевод и есть, только надерганный из разных источников.
В книге рассказывается об использовании assert-ов и псевдослучайном тестировании. Хотелось бы еще почитать про UVM, OVM и прочее.
Аноним 18/09/18 Втр 11:19:54 337559364
>>337557
[Spear] System Verilog for Verification
[Bening] Principles of Verifiable RTL Design
Аноним 18/09/18 Втр 15:51:48 337575365
Как измерить скорость записи/чтения между fpga и ddr, что напрямую подключена к fpga? Программное решение в виде идеи.
Аноним 18/09/18 Втр 16:17:52 337580366
>>337545
Так если через SPI конфигурируется, то разве нельзя микроконтроллером через SPI сконфигурировать?

мимо
Аноним 18/09/18 Втр 16:23:47 337581367
>>337580
>Так если через SPI конфигурируется, то разве нельзя микроконтроллером через SPI сконфигурировать?

Там хитрожопая анальная дрм-защита на проверку "а специальные ли флешки за 100$ ты используешь?".
Аноним 18/09/18 Втр 16:30:53 337584368
Аноним 18/09/18 Втр 17:29:43 337592369
Посоветуйте не очень дорогие сдвиговые регистры на 400-800MHz
Аноним 18/09/18 Втр 17:30:33 337593370
Аноним 18/09/18 Втр 17:36:15 337597371
>>337593
хотя наоборот тоже интересно
Аноним 18/09/18 Втр 18:34:14 337611372
>>337592
Может тебе serdes нужен?
Аноним 18/09/18 Втр 18:40:13 337613373
Аноним 18/09/18 Втр 18:41:52 337614374
>>337611
SERDES из мира Ethernet вряд ли подойдет - используется перекодирование 8 бит (исходные данные) в 10 бит (в линии).
Может помогут всякие LVDS драйверы для Flat panel типа DS90CF383? Чуть больше 24 бит заталкивает в 5 LVDS линков.
Аноним 19/09/18 Срд 14:40:35 337707375
Нулевые шансы отправить/принять данные sata-хосту через serdes spartan6?
Аноним 19/09/18 Срд 15:32:40 337720376
Аноним 19/09/18 Срд 15:44:32 337721377
>>337584
Чуваку постом выше твоего будет полезнее раскурить.
Аноним 19/09/18 Срд 19:43:36 337752378
Аноним 19/09/18 Срд 21:50:48 337769379
>>337581
Хуйню не неси, анальный страдалец. Протокол открыт и документирован.
Аноним 20/09/18 Чтв 13:09:58 337809380
Аноны, вот купил я этот камень, чо дальше?
Накидайте пожалуйста мануалов для быстрого старта помигать светодиодами, в интернете ч нашел одну хрень
Аноним 20/09/18 Чтв 13:32:05 337810381
>>337809
С бордой идут примеры
Аноним 20/09/18 Чтв 13:32:26 337811382
1975.jpg 314Кб, 1500x1000
1500x1000
>>337809
Камень - это как на этой фотографии? Ну это больше по спортивной тематике.
Перед тем как что-то покупать, тебе нужно было читать что-нибудь по основам цифровых устройств, например Угрюмова.
Аноним 20/09/18 Чтв 21:22:55 337887383
>>337809
Ну собери на нём свой спектрум, 8086, пс1 или еще чего.
Аноним 21/09/18 Птн 08:31:20 337905384
>>337887
>пс1

Это пара виртексов/арий/стратиксов как минимум, есличто.
Аноним 26/09/18 Срд 19:12:21 338571385
Пока я расхлёбываю альтеровские патенты на конфигурирующие битстримы, толковые посоны, угарающие по открытобесплатному ПО, пилят инструментарий для Lattice iCE40 с возможностью визуализации до RTL.
https://twitter.com/ico_TC/status/823883792754634752
Аноним 26/09/18 Срд 20:13:24 338574386
>>338571
Когда-то спрашивал, еще раз спрошу.
Есть слитая конфигурация с мелкой CPLD от Lattice. Как/чем превратить конфигурацию во внутреннюю схему межсоединений CPLD чтобы попытаться понять что там реализовано внутри?
Аноним 26/09/18 Срд 20:23:53 338576387
>>338574
Интересно, существуют ли кадры, задающие вопрос на пост с ответом?
Аноним 06/10/18 Суб 15:56:18 339365388
>>338571
Практическая польза?
Аноним 06/10/18 Суб 17:04:07 339380389
>>339365
Смотря что ты называешь практической пользой.
Аноним 11/10/18 Чтв 22:10:08 340042390
Сап, радач, помнится тут кто-то частотомер делал, как успехи? нужен частотомер от 50МГц до 10ГГц, который может писать на флеху частоту, время, напряжение, ток, температуру. Есть что нибудь посмотреть на эту тему?
Аноним 11/10/18 Чтв 22:40:20 340056391
>>340042
Но зачем тебе для этого ПЛИС?
Простой счетчик на ПЛИС даже не будет работать на такой частоте. Разве что только приспособить serdes. Но на такую частоту serdes в циклонах и спартанах вроде бы не дотягивает, придется все равно ставить внешний предделитель. Более того, serdes вообще зачастую отсутствует в дешевых сериях. Для записи на флешку придется использовать nios/microblaze (особенно если ты хочешь использовать файловую систему) или снаружи приделывать микроконтроллер, при этом сам сами счетчики будут занимать мизер относительно nios/microblaze.

Поэтому нет никаких причин делать такое на ПЛИС. Тому анону вроде как нужно было очень много каналов, а частоты были относительно низкими, поэтому ему был смысл использовать ПЛИС.
Аноним 12/10/18 Птн 05:01:51 340090392
>>340056
ну мне 8 каналов надо, забыл написать :)
Аноним 12/10/18 Птн 05:04:18 340091393
>>340056
>serdes
ПЛИС циклон 3
Аноним 12/10/18 Птн 05:06:07 340092394
>>340056
ну есть вариант цайпрес 5 поставить, кто нибудь с ним работал? как он?
Аноним 12/10/18 Птн 06:45:11 340094395
>>340056
Спасибо, за разъяснения, посоветуй годные счётчики, прескалер, и коммутатор для этих целей.
Аноним 12/10/18 Птн 07:15:38 340097396
>>340094
>годные счётчики, прескалер
Не знаю, не делал такого. В качестве предделителя можно взять микросхему синтезатора частоты. Пользуйся параметрическим поиском на диджикее.

Я так и не понял что ты в итоге хочешь получить. Если тебя устраивает одна секунда длительности измерения и ты собираешься использовать в качестве опорного генератора обычный кварцевый не термокомпенсированный, то можно поставить предделитель на 1000. Тогда в точности почти ничего не потеряешь даже на твоей нижней границе частоты и снизишь максимальную частоту до 10 МГц. Разные варианты есть, в зависимости от желаемого результата.
Аноним 12/10/18 Птн 07:17:32 340098397
>>340097
Другой вариант это сделать одноканальный частотомер и на вход поставить демультиплексор.
Аноним 12/10/18 Птн 07:23:52 340099398
>>340097
Предделитель думал на счёт upb1505 , длительность измерения 10сек, опора 10Мгц термостптированныйтермостптированный , либо стандарт частоты.
Аноним 12/10/18 Птн 07:24:36 340100399
>>340098
>демультиплексор
мультиплексор конечно же.
Аноним 12/10/18 Птн 07:33:26 340102400
>>340098
Да, я тоже подкмпл, что канал один, а раз в На вход коммутатор и переключать раз в 10 сек
Аноним 12/10/18 Птн 07:35:06 340103401
>>340091
>ПЛИС циклон 3
Это курсовая/дипломная работа, если другое выбрать нельзя?
Аноним 12/10/18 Птн 07:45:29 340104402
>>340103
Можно выбрать что угодно, но в пределах разумного
Аноним 12/10/18 Птн 22:08:21 340245403
>>340103
А какие предложения?
Аноним 13/10/18 Суб 01:43:57 340251404
15288684471460.jpg 130Кб, 905x1280
905x1280
Верилогобояре в хате есть?
Поясните за task и function. Для чего нужны? В каких случаях их применение оправданно? В чём их преимущество перед обыкновенными модулями?
Аноним 13/10/18 Суб 09:01:23 340262405
>>340251
Функции и таски можно сравнить с макросами в Си. В функции можно запихивать только комбинационную логику. В таски можно уже вставлять последовательностную логику.
По сравнению с модулями, функции можно пихать практически куда угодно - в assign, initial, объявления. Например, пользуясь функцией логарифма удобно делать модули с параметризуемой разрядностью. Таски в принципе можно использовать для синтеза, но я их использую только для симуляции, т.к. часто сложно представить во что синтезируется код с ними.

Если модули можно образно представить как готовую печатную плату с детальками, то таски - нельзя. Например, вставили в таск ожидание фронта сигнала а потом вызвали несколько таких тасков друг за другом, во что оно синтезируется (если сможет конечно)? Это явно не всегда можно представить в виде последовательного соединения модулей.
Аноним 13/10/18 Суб 09:42:44 340269406
Сап, анон, есть один соневский сенсор IMX274 и задача читать с него данные 4K@60Hz@10bit. Данные он выдаёт по линиям SubLVDS, Vcm=0.9V, Vdiff>100mV, Rdiff=100 Ом. Надо принять их на кинтексе7. Кинтекс7 не умеет в SubLVDS вообще, а HR-банки (которые на КС705 выведены на внешний разъём FMC LPC) не умеют LVDS при питании 1.8В. А у нас оно 1.8, потому что от 2.5 погорят все остальные порты на сенсоре (SPI, Hsync, Vsync).

Похую, назначаем вместо SubLVDS/LVDS приёмники DIFF_HSTL_I_18, назначаем вместо дифференциального single-ended терминаторы потому что DIFF_TERM есть только на LVDS эквивалент 50 Ом на 0.9В с p-сигнала и n-сигнала. То, что надо, казалось бы? Но вот хуй, данные принимаются неправильно.

Для сравнения берём отладку KCU105, она умеет в DIFF_HSTL_I_18 и в SubLVDS. Проверяем SubLVDS с DIFF_TERM — работает. Проверяем DIFF_HSTL_18_I, терминация — single-ended эквивалент 48 Ом на 0.9В для p-сигнала и для n-сигнала — тоже, сука, работает.

Почему так? Почему данные сенсора принимаются на Kintex Ultrascale KCU105 по стандарту DIFF_HSTL_18_I без проблем, а на Kintex 7 KC705 по тому же самому стандарту DIFF_HSTL_18_I — криво и косо? Что я не учёл?
Аноним 13/10/18 Суб 10:02:48 340275407
>>340269
>эквивалент 50 Ом на 0.9В
>эквивалент 48 Ом на 0.9В для
Например.
Пины дифференциальные, надеюсь, к одной паре заводил?
А то у меня был косяк, когда дифф. пару соединил с N и P, но только N была с 12L, а P с 13L.
Ну и может второй класс hstl пойдет?
Аноним 13/10/18 Суб 15:47:54 340302408
>>340262
>По сравнению с модулями, функции можно пихать практически куда угодно - в assign, initial, объявления.
Ну так почему нельзя создать модуль нужной комбинационной схемы и вставить его себе в код, ведь не обязательно комбсхемы подключать через assign?
Есть ли такой случай когда функцию нельзя заменить на модуль?
Если я правильно понял функции и задачи удобны по большей части в моделировании, в синтезе и без них вполне можно обойтись.
Аноним 13/10/18 Суб 16:47:57 340305409
>>340302
>Ну так почему нельзя создать модуль нужной комбинационной схемы и вставить его себе в код, ведь не обязательно комбсхемы подключать через assign?
Синтаксический сахарок. Для модуля надо писать объявление самого модуля, цепей, подключать цепи к портам, причём отдельно от описания прочей логики. Функцию где понадобилось, там и вставил.

>Есть ли такой случай когда функцию нельзя заменить на модуль?
Например, ты пишешь модуль с параметризуемой шириной шины, в параметре указываешь максимальное значение на шине, а ширину шины вычисляешь при помощи функции, чтобы это значение туда влезало.
Аноним 13/10/18 Суб 16:48:01 340306410
>>340302
>Ну так почему нельзя создать модуль нужной комбинационной схемы и вставить его себе в код, ведь не обязательно комбсхемы подключать через assign?
Это ты про что? При чем тут assign? Запись с функцией обычно будет короче.
>Есть ли такой случай когда функцию нельзя заменить на модуль?
С функциями можно проводить вычисления при инициализации и объявлении. Вычислять и задавать требуемую разрядность, хотя бы. Вот тебе вполне синтезируемый пример использования функции $clog2 https://github.com/minad/vle/blob/master/shifter.v
>Если я правильно понял функции и задачи удобны по большей части в моделировании, в синтезе и без них вполне можно обойтись.
Скорее только таски (по моему мнению). Функции для синтеза наоборот вполне удобны.

Вот еще тебе пример использования функции для инициализации памяти >>326151 В более сложных случаях это может быть не чтение из файла, а вычисление на ходу.
Аноним 13/10/18 Суб 17:01:41 340308411
>>340302
Вот еще вспомнил. Функции могут возвращать тип real, а в портах модулей такое недопустимо (хотя может в SV разрешили). Хотя это ограничение можно обойти, пусть и костыльно, через $realtobits и $bitstoreal.
Аноним 13/10/18 Суб 20:45:52 340321412
>>340305
>в параметре указываешь максимальное значение на шине
В параметре я указываю любое значение при создании экземпляра модуля. Зачем в модуле ограничиваться максимальным числом?

>>340306
>С функциями можно проводить вычисления при инициализации и объявлении. Вычислять и задавать требуемую разрядность, хотя бы.
Так это системная функция.

>Вот еще тебе пример использования функции для инициализации памяти
Это тоже системная. А какой прок с пользовательских? Вот только разве что быстрее и короче.
Аноним 13/10/18 Суб 22:06:49 340331413
>>340321
>Так это системная функция.
Появилась только в verilog 2005. И мне до сих пор приходится для флексов использовать свою функцию логарифма.

>А какой прок с пользовательских? Вот только разве что быстрее и короче.
Из верилога можно выкинуть очень много, сохранив возможность делать на нем что угодно. Например, вполне можно обойтись без арифметических операций.

>Зачем в модуле ограничиваться максимальным числом?
Ты вообще о чем? Вот взять например UART приемопередатчик. Параметрами задается тактовая частота и скорость. В модуле считаются максимальные значения счетчиков для заданной скорости. Из этих максимальных значений считаются требуемые разрядности счетчиков.
Аноним 15/10/18 Пнд 08:41:57 340513414
>>340269
Нашёл косяк. Оказывается, многоканальный десериалайзер для ультраскейла пакует биты на шине по порядку каналов, а для седьмого кинтекса — по порядку битов (то есть сперва нулевые биты со всех каналов, потом первые, етц). CYKA BLYAT.
Аноним 15/10/18 Пнд 16:24:16 340557415
Помогите с ебучей вивадой.
Суть в следующем. Есть модуль А, который нужно промоделировать. В модуле присутствует инстанс модуля Б, который довольно тяжеловесный но уже отлажен. Не хочу моделировать эти два модуля совместно ибо пиздец как долго. Решил запилить конструкции типа ifdef SIMULATION ... ну вы понели.
Можно ли как-то сделать дефайн глобальным? В идеале, чтобы в самом тестбенче писал
Define SIMULATION 1 и модуль А симулировался в облегченном варианте?
Аноним 15/10/18 Пнд 18:10:23 340571416
>>340557
Так Б у тебя на работу А-то влияет или нет? Если влияет, как ты без него моделировать собрался? Если не влияет, нахуй он там у тебя вообще?

А вообще, если у тебя есть какие-то независимые от Б части А, на твоём месте я бы их вынес в отдельный модуль и написал для него тестбенч. Прежде чем придумывать костыль, может, лучше попробовать сделать стандартными методами?
Аноним 15/10/18 Пнд 18:21:17 340572417
>>340571
Влияет, но я подыгрываю модуль Б за счет force.

Вынести модуль Б на верхний уровень конечно можно, но у меня анальная бюрократия и нужно обосновывать перенос ибо "архитектура устоялась"
Аноним 15/10/18 Пнд 18:25:42 340574418
>>340572
А, ну и положи на них тогда анальный хуй. Ещё крутиться из-за них зачем-то при таком отношении, подскакивать кабанчиком. Моделируй как есть, пей чай.
Аноним 15/10/18 Пнд 19:27:37 340581419
>>340574
Я здесь как краб. Буду пить чай - предъявят за анальные сроки. Это сущий ад быть плисоводом, когда твой тимлид программер и вообще толком не понимает в железе, но старается компенсировать это за счет программерских штучек.

Ненавижу блять все эти программерские штуки, системы контроля версий, дженкинсы-хуенкинсы пропади они пропадом.
Аноним 15/10/18 Пнд 19:46:21 340584420
>>340581
Извини, братиш, но нет к тебе что-то никакого сочувствия. Потому что допуская к себе отношение как к говну, ты формируешь у работодателя представление, что к плисоразработчикам допустимо относиться как к говну. И нет, я не системы контроля версий здесь имею в виду. Не делай так.
Аноним 15/10/18 Пнд 20:01:51 340585421
>>340584
Но к плисоводам в рашке и так относятся как к говну. Вакансий мало, люди цепляются за работу.
Хотя чего я оправдываюсь, омежью сущность не скрыть.
Аноним 15/10/18 Пнд 20:04:48 340586422
>>340585
Вакансий мало потому что сфера уж больно специфичная, зато там где они нужны их ценят в силу малого количества, а так средний плисовод имеет зарплатку больше чем средний прохер.
мимоплисовод
Аноним 15/10/18 Пнд 20:09:57 340587423
>>340586
И какая у тебя зп?
Аноним 15/10/18 Пнд 20:13:36 340588424
>>340587
45 в мухосранске миллионике.
Аноним 15/10/18 Пнд 20:17:30 340589425
>>340588
И ты считаешь что тебя ценят? 45 это пиздец.
Аноним 15/10/18 Пнд 20:21:23 340590426
>>340589
Ну для ДС может и пиздец, в ДС, я думаю, можно легко 100 делать. А у меня работёнка не бей лежачего, особо не напрягают, правда большую часть времени какой-то левой хернёй занят, но не суть. А так знал бы ЦОС и прочую математику, конечно бы метнулся туда где побольше.
Аноним 15/10/18 Пнд 20:25:42 340591427
>>340590
Правда жизни такова, что вчерашний студент попав в МЦСТ/Миландр будет получать залупу за воротник.

Вчерашний студент попав в Сбертех джава-макакой будет получать от 120. И это без знаний ЦОС и математики.
Аноним 15/10/18 Пнд 20:27:39 340593428
>>340591
Этот шарит.
Мимо работаю в мцст за 50, пока друг в сбертехе поднимал 150 (пока не съебался оттуда).
Аноним 15/10/18 Пнд 20:28:49 340594429
>>340593
А сейчас где ты, Анон?
Аноним 15/10/18 Пнд 20:29:34 340595430
>>340594
Я жопочтец, сорян
Аноним 15/10/18 Пнд 20:29:46 340596431
>>340594
>работаю
Это друг съебал из сбертеха в другой банк за такие же деньги.
Аноним 15/10/18 Пнд 20:41:31 340599432
>>340591
>Вчерашний студент попав в Сбертех джава-макакой будет получать от 120. И это без знаний ЦОС и математики.
Должно быть там анальные условия за такую зп, ибо закон сохранения энергии должен работать.
Аноним 15/10/18 Пнд 20:54:55 340603433
>>340599
Наверняка и график посвободнее, и плейстейшон стоит в комнате для отдыха.
В таких вещах работает закон спроса и предложения. Писать энтерпрайз для банков спрос на специалистов большой, а делать попильные аналоговнеты для военкии — лишь постольку-поскольку. Бюджет один хуй выделят, ну и нафиг им с каким-то мимованькой делиться тогда.
Аноним 15/10/18 Пнд 21:12:39 340610434
>>340603
>плейстейшон
И зачем? Вот у меня на работке есть паяльник и нехилый цифровой асцилоп и мне никто не запрещает паять себе ёбамахарайки, а это многого стоит.
Аноним 15/10/18 Пнд 21:41:57 340616435
>>340610
Нихуя это не стоит. Махарайки можно и по выходным паять.
Аноним 15/10/18 Пнд 21:48:55 340618436
Аноним 15/10/18 Пнд 21:49:33 340619437
25934.750x0[1].jpg 43Кб, 708x507
708x507
Аноним 15/10/18 Пнд 21:51:59 340620438
>>340618
А была бы у тебя зарплата джависта-сеньора — стоял бы таких хоть десяток.
Аноним 15/10/18 Пнд 22:01:49 340623439
>>340618
А что в твоих махарайках на гигагерцовых частотах работает?
Аноним 15/10/18 Пнд 22:05:18 340627440
>>340620
У него под 1,5М ценник.

>>340623
Ничего, просто приятно работать на таком, и логический анализатор в неё есть.

Аноним 15/10/18 Пнд 22:33:46 340637441
>>340627

>>324069 Разумеется без поверки и не откалиброван. С памятью похуже, скорость обновления низкая. По удобству использования и сравнивать нечего. Тем не менее, что-то с такой полосой можно найти относительно дешево, пусть оно и не откалибровано будет. Поэтому такой осциллограф - преимущество так себе.
Другое дело спектроанализаторы, векторные анализаторы, вот такое действительно уже слишком дорого будет.
Аноним 16/10/18 Втр 08:14:31 340700442
>>340616
Я бы спаял с тобой махарайку, хоть ты и безчувственная сволочь.
Аноним 16/10/18 Втр 13:40:46 340745443
Бамп.
Буквально неделю назад на алике появились вот такие отладочные платы Kintex 7 XC7K420T https://s.click.aliexpress.com/e/LBqdJPk
Первый вопрос - а хули так дешего, при ценнике 2 к далларов только за оригинальный камень?
Второй вопрос - можно ли использовать эту плату без подключения в pci слот ПК?
Третий вопрос - можно ли использовать pci платы просто как IO?
Аноним 16/10/18 Втр 14:41:27 340762444
>>340745
>Первый вопрос - а хули так дешего, при ценнике 2 к далларов только за оригинальный камень?
Левые или пизженные микрухи. Врятли прошли полную сертификацию
Второй вопрос - можно ли использовать эту плату без подключения в pci слот ПК?
Можно, только подай питание
Третий вопрос - можно ли использовать pci платы просто как IO?
Можно, но только как высокоскоростные интерфейсы... как ГПИО -нет
Аноним 16/10/18 Втр 14:43:26 340764445
>>340745
>хули так дешего
Наебалово, ошибка, или наебалово, замаскированное под ошибку (чтобы ссылку на магазин растаскали по интернету, при реальной попытке заказать ответ будет "ой, сорян, косякнули").
Аноним 16/10/18 Втр 15:33:45 340768446
>>340764
да он написал что это первая версия, вторая будет с ДДР и дороже. Потестить забесплатно хочет.
Не знаю, я встречался со сверх-дорогими ПЛИС в поднебестной, это реальность!
Аноним 16/10/18 Втр 15:34:21 340769447
>>340764
> чтобы ссылку на магазин растаскали по интернету, при реальной попытке заказать ответ будет "ой, сорян, косякнули"
Ну хуй знает. Я в этом магазине летом покупал (правда, обычные платы с четвёртым циклоном и SDRAM), всё нормально было.

Мимикрокодил

P.S. Судя по сопровождающему лот чинглишу, похоже на то, что это какие-то китайские кустари-самородки не то демпингуют, не то сливают остатки после большого проекта («I will design the FPGA cluster dedicated to computing . Single board 12 FPGA XC 7K420T»).
Аноним 16/10/18 Втр 15:41:08 340772448
>>340769
>правда, обычные платы с четвёртым циклоном и SDRAM
$? Сколько ddr?
Аноним 16/10/18 Втр 16:13:30 340777449
>>340772
Обе платы (E10, с перделками и свистелками, и отдельный мезонин с Е22) обошлись в 90 долларов, сейчас там цены примерно такие же:
https://www.aliexpress.com/item/EP4CE10F17C8N-board/32800480331.html
https://www.aliexpress.com/item/E22-core-board-EP4CE22f17C8N/32853228751.html

> Сколько ddr?
Не DDR, обычная SDRAM. В данном случае старая (хуй его знает, где они эту микросхему десятилетней давности откопали) W98256G6EH-75, на 256 мегабит.
Аноним 16/10/18 Втр 16:53:33 340782450
>>340745
Лол. Причем питалово на линеарских модулях собрано, которые тоже нихуя не дешевые.
Аноним 16/10/18 Втр 19:13:32 340793451
>>340768
> (4531 шт. доступно)
Аноним 16/10/18 Втр 19:15:41 340794452
Аноним 16/10/18 Втр 22:42:17 340835453
Аноним 18/10/18 Чтв 12:30:19 341098454
>>340745
Заказал, посмотрим че прийдет :)
Аноним 19/10/18 Птн 04:58:21 341224455
>>341098
Что ты будешь с ней делать, если не секрет?
Аноним 19/10/18 Птн 06:47:02 341230456
>>341224
Мигать светодиодами, их там целых восемь. На каждый можно повесить по своему собственному Микроблейзу для управления.
Аноним 19/10/18 Птн 14:20:57 341302457
>>341224
Генератор трафика, давно хочу заебошить :)
А еще можно ключи брутфорсить всякие
Аноним 20/10/18 Суб 15:55:31 341406458
>>341302
>Генератор трафика
Как применять?
Аноним 21/10/18 Вск 00:21:13 341465459
Аноним 21/10/18 Вск 02:31:30 341478460
>>341465
За такое живьём скармливают абуригенам из /бэ/. Лучше запили анализатор трафика.
Аноним 21/10/18 Вск 14:31:43 341514461
>>341406
Тесты сетевого оборудования
Аноним 21/10/18 Вск 15:29:36 341518462
gen.jpg 1122Кб, 3264x2448
3264x2448
gen.png 128Кб, 1222x536
1222x536
>>341514
Антон, в сетях варишься?
Есть пикрил, и есть Marvell 88E1111 - работал с подобным? Несколько раз пробовал запускать внутренний говногенератор спама (внимание - здесь старший и младший байт переставлены местами, очень древняя паста):
Ребут через вывод PHY RESET и чтение регистров
root@deb:~# i2cdump -yf -r 0-63 0 0x5e c
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: 11 40 79 69 01 41 0c c2 0d e1 c1 e1 00 0f 28 01 ?@yi?A??????.?(?
10: 5c 6b 03 00 28 ff 00 00 00 00 00 00 00 00 f0 00 \k?.(.........?.
20: 00 68 bd c0 00 00 1c 50 0c 60 fa 7a 00 00 00 00 .h??..?P?`?z....
30: 41 00 00 00 00 0a 04 8f 00 00 00 00 00 00 00 00 A....???........

Смена страницы и запись битов включения:
root@deb:~# i2cset -yf 0 0x5e 29 0x1200 w
root@deb:~# i2cset -yf 0 0x5e 30 0x7c82 w
root@deb:~# i2cdump -yf -r 0-63 0 0x5e c
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: 11 40 79 49 01 41 0c c2 0d e1 c1 e1 00 0f 28 01 ?@yI?A??????.?(?
10: e8 08 03 00 08 ff 00 00 00 00 00 00 00 00 f0 00 ???.?.........?.
20: 00 68 bd 80 00 00 1c 50 0c 60 ff ff 00 00 00 00 .h??..?P?`......
30: 41 00 00 00 00 0a 04 8f 00 00 00 12 82 7c 00 00 A....???...??|..

Что на оптике, что на меди - тишина (смотрелось внешним свичем), служебные сигналы на SFP типа TX_DISABLE устанавливались в нужные уровни, иначе бы не было линка по оптике. На входе MII в 88E1111 ничего нет, тишина, приходит только тактирование.
Аноним 22/10/18 Пнд 05:51:33 341542463
>>341518
Что за чудо отечественной инженерной мысли?
Почему по меди нет разделительного транса? Ты уверен что 88E1111 в таких условиях вообще живой?
Аноним 22/10/18 Пнд 08:50:49 341557464
>>341542
> нет разделительного транса?
Может быть потому шо он в разъеме встроен?
Аноним 22/10/18 Пнд 08:56:17 341558465
>>341557
Тогда стоит начать с его проверки. Ну, либо 88E1111 таки труп.
Аноним 22/10/18 Пнд 08:56:32 341559466
magjack.png 81Кб, 736x965
736x965
>>341542
Ньюфаг? Гугли MagJack - общее название разъемов RJ45 (8P8C) с встроенным трансом. Маркировка видна, неужели так сложно гугл спросить что это такое? Есть там внутри трансы.

>Что за чудо отечественной инженерной мысли?
Чего не знаю, того не знаю. Увидел на развале и не смог пройти мимо этой вкусноты - легкая FPGA + гигабитный Ethernet и по меди и по оптике.

> Ты уверен что 88E1111 в таких условиях вообще живой?
> Что на оптике, что на меди - тишина (смотрелось внешним свичем), служебные сигналы на SFP типа TX_DISABLE устанавливались в нужные уровни, иначе бы не было линка по оптике.
Аноним 22/10/18 Пнд 09:04:23 341560467
>>341559
>Увидел на развале
Что за развалы с девбордами?
Аноним 22/10/18 Пнд 09:41:11 341561468
eval.jpg 668Кб, 3108x1280
3108x1280
bf.jpg 1216Кб, 3264x2448
3264x2448
>>341560
Там уже нет и всего один вариант - не выбор. Имен называть не могу, скажу только что стоит иногда по форумам гулять - можно много интересного и экзотичного выловить.
Своих останков мозгов хватает только на счетчик, да и то - копипастой.

Девборда - это "Cyclone V GX Starter Kit", "DE10-Standard" и "ETHERNET-HSMC Card".

>>341518 Даже трудно сказать что это. Максимум 4 IO есть и все, не разгонишься в отладке. Сдув LPC - еще может будет около 30 IO.
Аноним 22/10/18 Пнд 10:02:38 341562469
>>341561
Ты либо вор, либо целенаправленно скупаешь краденое.
Рано или поздно отправишься на нары, ментам будет похуй на твои мотивы.
Аноним 23/10/18 Втр 08:24:46 341709470
>>341518
Я работал с этим чипом (вроде как кличут Аляской) - ее ставят почти на все борды Xilinx. По ойтуси ничего не писал, все заработало без пердолинга, просто настроил связку ядер pcs/pma-mac и слал данные в axi stream.
Аноним 23/10/18 Втр 11:18:26 341773471
>>341709
> слал данные в axi stream.
Какой-то софтиной для microblaze?
Аноним 23/10/18 Втр 16:24:42 341922472
Скажите долбоебу, почему в верилоге
wire [7:0] это little endian,
А [0:7] big endian?
Аноним 23/10/18 Втр 16:32:07 341924473
>>341709
> слал данные в axi stream.
Было интересно запустить ВСТРОЕННЫЙ в phy генератор пакетов. Снаружи ничего не подавалось(только 25 МГц тактирование) и что либо подавать из данных нет смысла - тк входные данные игнорируются в этом режиме.
Оно не взлетело. Где мог накосячить?
Подавал питание, давал ресет, визуально убеждался что есть гигабитный линк по меди (SFP НЕ вставлялось) на железке и на внешнем свиче, менял страницу, завал в разных вариантах биты для запуска генератора пакетов и каждый раз в ответ тишина (и визуально, и по счетчикам фреймов на порту внешнего свича).
Сейчас уже не актуально, но немного интереса осталось - как это запустить. Диагностика кабеля работает, но логику до конца не раскурил, особенно с вычитанием 0x32 (не помню) и визуальной валидации результата по битам описаниям состояния, тк порою выдавал очень и очень забавные результаты на одном и том же кабеле.
Аноним 23/10/18 Втр 17:43:32 341930474
>>341773
Я немного динозавр и ленив.
Зачем ебаться с микробом, когда можно навесить какое-нибудь ядро типа jtag2AXI либо по бырому накидать генератор пакетов на верилоге. Этого вполне хватит для теста азернета.

Ш2С не задействовал вообще, у этого камня есть mdio mdc через которые он рулится со сторонв плисины.

А зачем тебе встроенный генератор?
Аноним 23/10/18 Втр 18:53:01 341938475
>>341930
>jtag2AXI
ух ты. Подкинь исходники годноты.
Аноним 23/10/18 Втр 19:38:59 341943476
>>341930
> А зачем тебе встроенный генератор?
Склеив с
> Диагностика кабеля работает
Ответ прост - минимально возможная НЕХ для монтажеров - посмотреть кабель и посрать в сеть, а мы со стороны смотрим что происходит, до куда долетает + побочкой идет заведется не заведется гигабит на 100 метров натянутой как струны люминиевой святой пары с узлами и барашками, на пару с резкими заворотами об край бетонных плит или "где мой гигабит" на сраной говномыльнице довоенных времен со 100 мегабитными портами.
Но это все в прошлом, полностью сменил сферу деятельности, это осталось на случай "дело было вечером, делать было нечего"(с).
Да, это нужно было лично МНЕ для диагностики хронических случаев, а не говноуправляющему/начальнику/бригадиру или еще кому, когда даже сраная индикаторная отвертка одна на три бригады, а обжим чуть ли не отверткой делали. За одно и ПЛИС потыкать палочкой, но что-то не срасталось.
Аноним 23/10/18 Втр 19:49:42 341944477
>>341938
Это стандартная корка хилых, управляется через тикль консоль. Исходники думаю закрыты..
Аноним 24/10/18 Срд 03:29:37 341989478
>>341922
Это условное название, взяли "остроконечников" и "тупоконечников" из Путешествий Гулливера, одним произвольно присвоили один порядок бит, другим другой.
Аноним 24/10/18 Срд 07:39:05 341991479
>>341989
Я коряво задал вопрос.
Идем в педивикию
https://ru.wikipedia.org/wiki/Порядок_байтов

В статье пишут о прорядке байт, но для бит я так понимаю, все точно так же.

big-endian — большим концом An ... A0 т.е. для числа 1 An = 0, A1 = 1.
Почему в верилоге big endean записывается наоборот/ Вот пример для единички:
wire [0:7] big_endian;
assign big_endian = {1'b1, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0};

Аноним 24/10/18 Срд 12:37:36 342016480
>>341991
>big-endian — большим концом An ... A0 т.е. для числа 1 An = 0, A1 = 1
Во-первых, пофиксим:
>big-endian — большим концом An ... A0 т.е. для числа 1 An = 0, A0 = 1
Во-вторых, это little-endian, потому что наименьшему адресу (A0) соответствует младший разряд (1), а наибольшему адресу — (An) — старший (0).

Big-endian — это когда в меньший адрес (A0) идёт старший разряд (0), и в наибольшем адресе (An) оказывается млаший разряд (1).
Аноним 24/10/18 Срд 13:08:57 342021481
Аноним 24/10/18 Срд 23:36:39 342142482
Поясните, для каких целей некоторые платы с плисиной делают в форм-факторе DIMM?

Например вот эта:

https://ru.aliexpress.com/item/Xilinx-Spartan6-XC6SLX16-FPGA-DDR3/32852431448.html?spm=a2g0v.search0204.3.62.69132ef9EHwrB5&ws_ab_test=searchweb0_0%2Csearchweb201602_5_10065_10068_318_319_317_10696_450_10084_10083_10618_452_5723515_535_534_533_5025915_10307_532_10301_5728315_204_10059_10884_323_10889_10887_326_100031_320_321_322_10103_448_449%2Csearchweb201603_55%2CppcSwitch_0_ppcChannel&algo_pvid=f3cfc776-e18e-4ca3-a0ba-e6b7f42dd5bc&algo_expid=f3cfc776-e18e-4ca3-a0ba-e6b7f42dd5bc-9
Аноним 24/10/18 Срд 23:53:57 342145483
>>342142
Дешёвый высокоскоростной разъём.
Аноним 25/10/18 Чтв 07:13:43 342172484
>>342145
Лол, а я думал такие модули представляются компу оперативочкой и получают совместный доступ к данным.
Аноним 25/10/18 Чтв 10:05:24 342203485
Аноним 25/10/18 Чтв 10:42:03 342218486
>>342203
Естественно пустые.
Аноним 25/10/18 Чтв 10:46:15 342219487
Я в ахуе с двачеров. Им дают плату с плисиной за полтора куска зелени по цене телефона ксяоми а они еще спрашивают положили ли в комплект трансиверы по цене от 100$ за штуку? Сука пиздец какие долбоебы.
Аноним 25/10/18 Чтв 10:56:19 342220488
>>342219
Если китаец спиздил девборду, то может он и sfp-модули спиздит?
Аноним 25/10/18 Чтв 11:58:58 342226489
>>342219
Ну и нафиг мне эта девборда, если я простой ардуинщик? Че мне 10к девать некуда? Я плис только на картинках видел и в душе не ебу что вы на них делаете, разве что частотомер можно быстрый забацать, и все. Езернеты-хуернеты, НАХУЯ это мне? Да и вам наверняка тоже. Бабло девать некуда и руки занять нечем, видимо. Лучше шлюху снимите 3-4 раза на те деньги.
Аноним 25/10/18 Чтв 12:15:50 342229490
>>342226
Если нет понимания зачем тебе это надо - пиздуй из треда. На всякий случай зарепортил довена.
Аноним 26/10/18 Птн 09:28:12 342474491
>>342226
>10к
>шлюху снимите 3-4 раза
Лол
Аноним 26/10/18 Птн 10:41:12 342477492
>>342474
В полумиллионниках норм шлюха стоит как раз 2.5-4k в час. За 5-6к можно снять вип-вариант, либо шлюху вместе одной-двумя ее подругами. За 1-2к можно снять грязную больную страшную шмару.
В ДСах цены другие.
Аноним 26/10/18 Птн 11:49:16 342483493
>>342477
>вип-вариант
Что включено?
Аноним 26/10/18 Птн 14:01:59 342498494
15372618193381.jpg 282Кб, 1280x850
1280x850
Всем обязательно мотать назубок поучительную стори.

Конструктор спутников в каком-то сраном НИИ при ГРУ отправил шведскому кадровому агенству своё резюме и уехал на сгуху на 14 лет строгача за разглашение гостайны (то есть своего места работы).

https://zona.media/news/2018/10/25/kravczov
Аноним 26/10/18 Птн 14:22:51 342499495
>>342483
Очевидно, помимо того что шлюха будет выглядеть топово (косметические процедуры + пластика), снимать ухоженную хату в приличном районе, еще предоставит доп. услуги на выбор клиента (прием/выдача золотого дождя, например)
>>342498
>6 лет
Повезло еще. Если бы картинки в вк репостил или грамм дикорастущего во дворе каннабиса сорвал, мог отъехать на все 15 лет.
Аноним 26/10/18 Птн 15:16:11 342502496
index.png 9Кб, 318x159
318x159
>>342483
Включено: кунилингус, анилингус мне (даме)
@
Классика, вагинал, впердол - строго по взаимной симпатии
@
Молодой человек, "анал" написано не для вас!
Аноним 26/10/18 Птн 19:56:34 342536497
Аноны, у меня квартус выдает ошибку отсутствия хай левл дизаина, как убрать вообще проверку его наличия?
quartus 13
Аноним 26/10/18 Птн 19:59:33 342537498
>>342536
Может топ модуля?
Аноним 26/10/18 Птн 20:32:45 342542499
>>342537
Ну да, короче как блоковую диаграмму сделаю, то все норм, а как без нее то?
Аноним 26/10/18 Птн 22:22:59 342548500
Аноним 26/10/18 Птн 22:25:58 342549501
>>342499
>>342502
Ну нахер, я лучше
https://ru.aliexpress.com/item/ALTERA-Cyclone-IV-EP4CE6-FPGA-Development-Kit-Altera-EP4CE-NIOSII-FPGA-Board-and-USB-Blaster-downloader/32792622551.html?spm=a2g0v.search0104.3.1.37867430DZPUSj&ws_ab_test=searchweb0_0,searchweb201602_4_10065_10068_318_319_5730215_317_5728815_10696_10084_10083_451_10618_452_5723515_10307_532_10301_5728315_5729715_204_328_10059_10884_323_10889_10887_326_100031_320_321_322_10103-10889,searchweb201603_55,ppcSwitch_0&algo_expid=d482557d-f9b3-4b35-bd0d-caebd25ea8f1-0&algo_pvid=d482557d-f9b3-4b35-bd0d-caebd25ea8f1
куплю.
Аноним 27/10/18 Суб 08:28:35 342571502
Аноним 30/10/18 Втр 10:56:52 342948503
ПЛИСаны, вот поясните за триггеры
Почему RS-триггеры не запоминают состояние, а делают какое-то говно?
Что такое D триггер, и чому у него столько различных версий?
Что такое JK триггер?
Аноним 30/10/18 Втр 11:09:50 342949504
>>342948
https://www.youtube.com/user/jack0ov/videos
Залипаю на самые первые лекции и лабы. Особое внимание на лабы где проверяется почти что на практике. То же проверяю, но на реальном железе.
Аноним 30/10/18 Втр 11:34:20 342951505
>>342949
Хммм, интересно, спасибо
Аноним 30/10/18 Втр 18:37:12 342988506
Аноним 01/11/18 Чтв 22:24:10 343275507
15379757232390.jpg 135Кб, 1280x720
1280x720
Анчоусы, накидайте только не защеку идей для pet projects. Возможно даже не обязательно связанных с плис, но крайне желательно. Словил творческую импотенцию, есть свободное время, есть желание, а достойных идей нет.
Аноним 02/11/18 Птн 02:17:38 343299508
>>343275
То есть, когда-то у тебя была потенция? У меня вот, например, не было её вообще. Уже лет пять пытаюсь выдавить хоть что-то.
мимоардуинщик
Аноним 02/11/18 Птн 03:37:32 343301509
>>343275
Погугли задачи, в которых применяется particle filter, и запили реализацию на плис. У particle filter как раз архитектура состоит из параллельных одинаковых вычислений для большого набора чуть-чуть различающихся входных данных, на архитектуру ПЛИС заебись должно лечь.
Аноним 02/11/18 Птн 10:29:49 343322510
>>343301
Туповат я для такого. Почитал на википедии постановку задачи и нихуя не понял. Плохо быть довеном не могущим в математику.
Аноним 02/11/18 Птн 12:14:41 343341511
ecp3.webm 24243Кб, 640x360, 00:03:40
640x360
Аноним 02/11/18 Птн 12:39:01 343348512
>>343341
Лучшая реклама CHIPсов, какую я видел.
Аноним 05/11/18 Пнд 11:28:03 343690513
Сап, анон, пытаюсь понять, стоит ли изучить SystemVerilog. У Зайлинкса лишь часть его подмножества является синтезируемой, она перечислена здесь: https://www.xilinx.com/support/documentation/sw_manuals/xilinx2017_2/ug901-vivado-synthesis.pdf#nameddest=xSystemVerilogConstructs

Какие из синтезируемых фич стоят того, чтобы изучить SystemVerilog, какая от них может быть польза?
Аноним 05/11/18 Пнд 14:36:22 343723514
>>343690
Интерфейсы и енумы уже достаточная причина на него перейти
Аноним 05/11/18 Пнд 14:40:41 343727515
>>343690
Если хочешь этим зарабатывать на жизнь, изучай, нехуй даже думать.
Аноним 05/11/18 Пнд 15:08:16 343731516
>>343690
>У Зайлинкса лишь часть его подмножества является синтезируемой
Как и везде.

Ты с нуля изучаешь? Если да, то рекомендую сначала изучить простой Верилог, а уж потом как дополнение Систем.

Тут, кстати, один хмырь начал видосы пилить:
https://www.youtube.com/playlist?list=PL4UMfOeGYsvblwrP3VYKHq11xgkxVqoUj
Аноним 05/11/18 Пнд 15:16:39 343733517
>>343731
Хватит уже о себе в третьем лице писать.
Аноним 05/11/18 Пнд 15:26:12 343735518
Спасибо, братишки.

Уже пишу на верилоге зарабатываю на жизнь, понял ваши позиции.

Пока мысли такие:
1) изучать буду, так что не закидывайте говном за последующие вопросы
2) представляю, для чего на практике нужен енум — описывать конечные автоматы. Пока для этого хорошо заходил localparam, для каждого имени надо самому указывать соответствующую константу, зато ты мог контролировать её ширину и под неё писать остальную логику ширину регистров, с енумами это так же просто делать?
3) привык и в какой-то степени даже полюбил вивадовский редактор схем, для составления верхнего уровня иерархии самое то. Интерфейсы (стандартные наборы сигналов разной ширины и направления) между модулями (блоками) там есть. Что на нижнем уровне иерархии описывается посигнально, на верхнем автоматически пакуется в стандартные интерфейсы. Вы используете системверилог вместо редактора схем, вместе с редактором схем, куда именно?
Аноним 05/11/18 Пнд 15:38:24 343739519
Самое охуенное, что я пока уже нашёл — это assert. Вот его пиздец как не хватало моим тестбенчам. Не имеет отношения к синтезу, но просто пиздец как охуенно.
Аноним 05/11/18 Пнд 16:23:49 343748520
Аноним 12/11/18 Пнд 19:42:20 345059521
>>340331
В подобных случаях функции применяют для вычисления констант, т.е. функции как бы отрабатывают до основной компиляции. Мне интересны случаи в которых функции используются непосредственно для синтеза схем. Ну т.е.
>>340262
>функции можно пихать практически куда угодно - в assign, initial, объявления
вот это вот всё.
Аноним 12/11/18 Пнд 20:01:29 345067522
Верилогогспода, поясните за арифметический сдвиг влево, в сторону старших разрядов (<<<). Если двигать вправо, в сторону младших разрядов, то норм, знак сохраняется и копируется. А вот если двигать влево, то знак теряется, получается что и арифметический сдвиг влево и логический действуют одинаково. В чём подвох?
Аноним 13/11/18 Втр 04:02:21 345111523
>>345067
>арифметический сдвиг влево и логический действуют одинаково
Они и должны действовать одинаково.
>В чём подвох?
Переполнение.
Аноним 13/11/18 Втр 07:51:10 345126524
>>345059
Что за странный вопрос? Везде, на что хватит фантазии.
Например, функцией можно сделать подсчет бита четности, дешифратор для семисегментника и прочее.
Разумеется, делать сложную чисто комбинационную логику не целесообразно. Поэтому, если я правильно тебя понял, какую-то сложную логику в таких функциях не встретишь.
Ну и да, из перечисленного только запихивание функции в assign может привести к синтезу соответствующей комбинационной логики.
>непосредственно для синтеза схем.
Все-таки, по моему, в таком разделении нет смысла. Даже вычисление разрядности приводит к синтезу довольно таки непосредственно, а можно еще про циклы вспомнить.

>>345067
В стандарте об этом вот что написано:
>The left shift operators, << and <<<, shall shift their left operand to the left by the number by the number of bit positions given by the right operand. In both cases, the vacated bit positions shall be filled with zeroes.
По моему все однозначно, отличий нет, даже приоритет одинаковый.
Аноним 13/11/18 Втр 19:06:58 345195525
>>345111
>>345126
Тогда зачем он вообще нужен? Зачем плодить сущности?

>Переполнение
?
Аноним 13/11/18 Втр 19:13:47 345198526
>>345195
Зачем нужен оператор вычитания, когда вычитание можно сделать без него? Плодить сущности?
Аноним 13/11/18 Втр 19:15:41 345199527
>>345195
А, ты про сдвиг, а не функции. Тогда не знаю, наверное для однообразия.
Аноним 13/11/18 Втр 23:34:12 345282528
>>345198
Затем что если делать вычитание на сложении, нужно будет вручную переводить число в отрицательный вид, ну т.е. совершать доп. действия.
А тут же наоборот, выполняет ту же задачу, а сама на один уголок длиннее.
По той же причине у меня бомбит от того что блокирующее присвоение имеет вид =, а неблокирующее <=. Хотя должно быть на оборот, т.к. неблокирующее присвоение применяется чаще, а значит форма записи должна быть короче. Типа как у азбуки Морзе, наиболее часто встречающиеся буквы имеют более короткий код.
Аноним 14/11/18 Срд 05:21:25 345309529
>>345195
>?
У регистров заданной длины есть ограниченный диапазон чисел, которые они могут хранить. Надеюсь, ты в курсе, что сдвиг влево на один бит эквивалентен умножению на два. Если на месте знака при сдвиге отрицательного числа влево у тебя оказывается ноль вместо единицы, значит, ты попытался выполнить действие, результат которого не помещается в регистр имющегося размера, т.е. происходит переполнение.
Аноним 20/11/18 Втр 23:29:40 346384530
Screenshot from[...].png 10Кб, 409x127
409x127
>>341098
Пришло, не кидалово. Пока только светодиодиком помигал, но все детектиться верно
Аноним 22/11/18 Чтв 11:07:18 346667531
Посоветуйте недорогую девборду с dsp. С внешним dsp тоже ок.
Аноним 23/11/18 Птн 23:03:34 346805532
Братишки, поясните мне за высокоскоростные системы, как они строятся. Вот например есть оптическая линия 10Гб/с. Я подозреваю, что здесь без внешней микросхемы-сериализатора не обходится. Но даже если проект в ПЛИСине будет работать на 100МГц, то параллельная шина между ними должна быть 10Г/100М = 100 разрядов! Это норма, или я что-то не понимаю?
Аноним 23/11/18 Птн 23:34:58 346806533
>>346805
Можно внешний серализатор, можно встроенный трансивер. Внутренняя шина обычно 32 ил 64бита . ЭТО НОМА
Аноним 23/11/18 Птн 23:36:17 346807534
>>346805
Вообще, 100 мегагерц это не дохера... дохера ничинаеться с 300
Аноним 24/11/18 Суб 00:53:26 346809535
>>346805
В самой простой микросхеме физического уровня PHY PCIe, например (т.е. грубо говоря сериализаторе), частота входных данных может быть 250 МГц при разрядности данных 8 бит, с учетом того, что в линию PCIe x1 данные идут с кодированием 8b/10b это дает нам результирующую пропускную способность линии 2,5 Гбит/с. Это я к чему - к тому, что на 10Гбит Ethernet наверняка опорная частота повыше будет.

https://habr.com/post/234369/
Аноним 24/11/18 Суб 10:46:21 346832536
>>346805
У ПЛИС есть высокоскоростные трансиверы (у Xilinx это GTX, GTH). Оптические модули подключаются к ним. А внутри к ним данные идут по шине 64 бита, но это похуй уже.
Аноним 24/11/18 Суб 12:04:03 346836537
>>346806
>можно встроенный трансивер
>>346832
>У ПЛИС есть высокоскоростные трансиверы
Прямо таки оптические? Или всё таки преобразование производится внешними элементами? А если так, то по плате тянут дорожки на которых скорости 10Гб\с?
Аноним 24/11/18 Суб 12:23:19 346838538
>>346836
Открой схему любой отладочной платы с этими трансиверами и посмотри как там сделано.
>А если так, то по плате тянут дорожки на которых скорости 10Гб\с?
Ну да, именно так. Тябя же не смущают скорости SATA 3 или HDMI?
Аноним 25/11/18 Вск 19:37:18 347007539
>>345126
Что-то Квартус не компилит мой мультиплексор. Пытаюсь вычислить разрядность адресного входа через функцию. В чём подвох?

Error (10192): Verilog HDL Defparam Statement error at Test.v(50): value for parameter "N" must be constant expression

module MX #(parameter G)(output Y, input [N-1:0]A, input [G-1:0]X);

function integer clogb2(input N);
integer i;
for (i = 0; 2 i < N; i = i + 1)
clogb2 = i + 1;
endfunction

localparam N = clogb2(G);
wire [2
N-1:0]Temp = X >> A;
assign Y = Temp[0];
endmodule
Аноним 25/11/18 Вск 19:39:20 347009540
>>347007
блядская табуляция
module MX #(parameter G)(output Y, input [N-1:0]A, input [G-1:0]X);

function integer clogb2(input N);
integer i;
for (i = 0; 2 i < N; i = i + 1)
clogb2 = i + 1;
endfunction

localparam N = clogb2(G);
wire [2
N-1:0]Temp = X >> A;
assign Y = Temp[0];
endmodule
Аноним 25/11/18 Вск 20:09:36 347014541
>>347009
>input N
Нужно input [31:0] N. Вместо [31:0] можно integer, но вроде как не будет работать в древних версиях квартуса, для которых самописная функция логарифма имеет какой-то смысл.
Аноним 25/11/18 Вск 21:04:26 347020542
>>347014
Сработало.
Странно, конечно, с одной стороны указывать разрядность нужно, с другой откуда знать что у параметра разрядность 32, ведь это зависит от компилятора.
Да сказать он должен был о несовпадении разрядности, а не о том что в параметр не может быть переменной.
Аноним 26/11/18 Пнд 08:26:50 347067543
>>347020
Не надо делать порты хитровыебанно параметризируемыми, они для этого не предназначены, у них задача — максимально друг к другу подходить без мозгоебли и неявных преобразований типов и разрядностей.

Вынеси N в список параметров (вместе с G), и вычисляй его на более высоком уровне иерархии, где он у тебя и ширину адреса мультиплексора будет задавать, и ширину управляющей шины (которую ты на вход адреса вешаешь).

Если ты из верхнего уровня задаёшь G, то там же ты можешь и N вычислить и передать в виде параметра, а заодно его использовать, чтобы параметризировать соседние модули.
Аноним 26/11/18 Пнд 14:53:14 347099544
>>347067
Как я тебе логарифм вилкой вне функции вычислять буду? Это же не просто + - * /, или взятие степени, тут цикл строить нужно.
Про системную функцию $clog2() я знаю, мне интересно как с пользовательскими функциями работать.

>Если ты из верхнего уровня задаёшь G, то там же ты можешь и N вычислить и передать в виде параметра
Тут принцип инкапсуляции нарушается, модуль сам должен делать необходимые вычисления. Пользователь модуля мультиплексора не обязан знать его внутреннюю кухню, он прочитал в инструкции, что надо задавать количество входов - он их и задаёт.
Аноним 26/11/18 Пнд 15:29:20 347100545
>>347099
>Как я тебе логарифм вилкой вне функции вычислять буду?
А не надо его вычислять в описании интерфейса.

>Пользователь модуля мультиплексора не обязан знать его внутреннюю кухню, он прочитал в инструкции, что надо задавать количество входов - он их и задаёт.
Алё, это не "внутренняя кухня", это пучок проводов, который торчит из модуля НАРУЖУ. Количество проводов в пучке пользователь должен знать, чтобы приколхозить к нему другой пучок проводов из другого модуля.


Это как если бы у тебя функция принимала аргумент в виде указателя на void, а во что он кастуется внутри — uint8 или uint32 -- ты бы не знал, потому что нехуй лезть во внутреннюю кухню.
Аноним 26/11/18 Пнд 15:42:11 347101546
>>347100
>А не надо его вычислять в описании интерфейса.
Ну так скажи, как вычислить логарифм без функции?

>это пучок проводов, который торчит из модуля НАРУЖУ. Количество проводов в пучке пользователь должен знать
Количество проводов в пучке пользователь задаёт сам. Ты предлагаешь, чтобы N и G он задавал сам, при этом N и G взаимосвязаны: G = 2N. А если он, в силу своей тупизны, их укажет не в такой зависимости? Всё поломается. Вот потому он должен задавать только N, или только G, остальное вычисляется автоматически. Ну и думаю понятно, что данный мультиплексор только для примера, реальная ситуация может быть намного сложнее.
Аноним 26/11/18 Пнд 15:43:22 347102547
>>347101
>G = 2
G = 2 в степени N
Макака разметку съела.
Аноним 26/11/18 Пнд 17:32:22 347108548
>>347101
Если пользователь тупой, он сломает твой мультиплексор и при полностью соответствующих друг другу N и G. Например, при G=8 он подаст на вход выбор адреса 8, который не влезет в шину ширины N (который пользователю неизвестен), но не просто не влезет, а выдаст наружу нулевой канал, хотя пользователь, возможно, ожидал, что при невалидных входах выходы будут неактивные. В результате какой-нибудь спутник в очередной раз утопнет.

>Ну и думаю понятно, что данный мультиплексор только для примера, реальная ситуация может быть намного сложнее.
В этом и проблема, ты выдумываешь на пустом месте юзкейс, который, как тебе кажется, имеет отношение к реальности, а он его нихуя не имеет. К реальности, наоборот, имеет отношение понимать, какой ширины у тебя ёбаный вход, какие сигналы он ожидает, и какие сигналы на него выдаёт присоединённый к нему источник.
Аноним 26/11/18 Пнд 23:41:23 347136549
>>347108
>Если пользователь тупой, он сломает твой мультиплексор и при полностью соответствующих друг другу N и G.
А это уже его проблемы. Я со своей стороны сделал всё чтобы ему облегчить жизнь.
>который пользователю неизвестен
Инструкция на такой случай есть.

>В этом и проблема, ты выдумываешь на пустом месте
Я до тебя пытаюсь донести мысль, что в реальном модуле может быть десяток разных параметров, которые увязаны друг с другом. И перекладывать на пользователя внутреннюю кухню по их вычислению это неправильно, он не должен и не может этого всего знать. Смотри те же IP-ядра.

Ну и как же вычислить правильно логарифм ты так и не сказал.
Аноним 27/11/18 Втр 07:46:44 347162550
>>347136
>А это уже его проблемы.
>Инструкция на такой случай есть.
Ты каргокультист просто. Думаешь, что если сделать что-то похожее на самолёт, то оно привезёт продукты. Объясни мне такую хуйню: в одном случае пользователю в инструкции напишут "задай параметром N ширину порта адреса размером не меньше clog2(G)", в другом "шина, которая подключается к порту адреса, должна иметь ширину clog2(G), иначе возможны ложные срабатывания при выходе за диапазон или при недостаточной ширине шины". Почему тебе кажется, что в одном случае пользователь освобождён от вычисления clog2(G), а в другом — нет?

>Ну и как же вычислить правильно логарифм ты так и не сказал.
Я нигде не говорил, что логарифм надо вычислять не функцией. Я говорил, что его не надо вычислять в объявлении порта, а что инструменты отказываются это делать — просто приятный бонус для защиты от выстрела в ногу.

>Смотри те же IP-ядра.
Ни в одном из использованных мной ядер ширина внешних портов не пересчитывалась внутренними функциями.
Аноним 27/11/18 Втр 11:52:49 347185551
Если мне нужно за 1 такт сравнить два 1024 битных вектора это будет пиздец какая тормознутая конструкция?
На 150 мгц заведется хоты бы?
Аноним 27/11/18 Втр 20:11:52 347290552
>>347162
>Почему тебе кажется, что в одном случае пользователь освобождён от вычисления clog2(G), а в другом — нет?
Я тебе в третий раз объясняю, речь не про данный конкретный случай. Это упрощённый пример для наглядности. Ты можешь на проблему шире посмотреть?

>Я говорил, что его не надо вычислять в объявлении порта
А где я его вычислял в объявлении порта? Я как раз это функцией делал.

>Ни в одном из использованных мной ядер ширина внешних портов не пересчитывалась внутренними функциями.
Во-первых, откуда знаешь? Все коммерческие шифрованные. Смотрел коды опенсорсных?
Во-вторых, а чем они пересчитываются?
Аноним 27/11/18 Втр 20:14:22 347291553
>>347185
Дык сделай 1024-битный компаратор, чтобы сравнивалось за один такт, не?
Аноним 27/11/18 Втр 21:24:48 347307554
>>347291
Сравнение производится 2-х входовым элементом исключающее ИЛИ. Таких элементов нужно 1024. Потом выходы этих элементов надо объединить по И. Т.е элемент И у нас будет на 1024 входа. Естественно он будет каскадироваться из 4-х входовых, т.к. большинство ячеек в ПЛИС 4-х входовые. Предположим, что элементы выстроятся последовательно, тогда один вход занят выходом предыдущего элемента И, на 3 других можно подавать выходы с исключающих ИЛИ. У нас их 1024 шт. 1024/3 == 342. Получаем каскад из 342-ух элементов И. Умножаем это число на скорость работы элемента - получаем время срабатывания компаратора, и это без учёта задержак на интерконекции.
27/11/18 Втр 22:17:25 347311555
>>347307
Может лучше как-то так? https://pastebin.com/aYTUTBWH Хотя оно и займет вдвое больше ресурсов, но будет в 50 раз быстрее.
Или я что-то не понимаю?
Аноним 27/11/18 Втр 23:56:33 347316556
>>347311
Да как не пиши, архитектуру ПЛИС не обманешь.
Аноним 28/11/18 Срд 07:08:21 347335557
>>347290
>А где я его вычислял в объявлении порта? Я как раз это функцией делал.
А, действительно, ты предложил сделать ещё смешнее.

>Я тебе в третий раз объясняю, речь не про данный конкретный случай. Это упрощённый пример для наглядности. Ты можешь на проблему шире посмотреть?
Я тебе уже говорил — тебе только кажется в силу отсутствия опыта разработки, что этот пример отражает какой-то общий случай. Он нихуя не отражает.

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

>Во-вторых, а чем они пересчитываются?
Верхним уровнем иерархии, где внешние порты используются для подключения модулей друг к другу.

module xynta # (parameter G) (input [G-1:0] a, output b);
localparam N = clog2(G);
wire [N-1:0] channel_select;
mux_control # (.N(N)) mux_control_inst (.ch_sel(channel_select));
mux # (.N(N), .G(G)) mux_inst (.in_ch(a), .out_ch(b), .ch_sel(channel_select));
endmodule

Здесь один раз считается N, и им задаются и ширина управляющего порта мультиплексора, и ширина порта контроллера мультиплексора, и ширина шины, которой они соединяются. Посколько они все должны друг другу подходить, то параметр в любом случае должен быть рассчитан на верхнем уровне.
Аноним 28/11/18 Срд 07:20:29 347336558
image.png 47Кб, 198x255
198x255
>>347307
>Получаем каскад из 342-ух элементов И
Падажжи, зачем их лепить последовательно? Надо дерево строить. Даже из двухвходовых И глубина будет всего 10, а из четырехвходовых - 5, если не ошибаюсь.
28/11/18 Срд 07:27:28 347337559
>>347336
Вот я и написал про то же. >>347311
Только если не заморачиваться и сделать просто через ==, то даже чуть быстрее получается, наверное за счет цепей переноса.
Аноним 28/11/18 Срд 07:28:24 347338560
>>347336
Именно. А из шестивходовых (LUT6) — 4 уровней хватит.

>>347337
>наверное за счет цепей переноса.
Хуль гадать, открой схему и посмотри, во что оно синтезировалось.
Аноним 28/11/18 Срд 11:41:38 347350561
>>347307
Короче у меня вышло порядка 10 уровней логики. Пиздос, придется городить конвейер.
Аноним 28/11/18 Срд 19:10:52 347394562
>>343735
>2) представляю,
В нумераторах так же можно самому хардкодить значения.
Алсо корректно работает next_state <= cur_state + 1, если уж очень хочется.
Алсо отображается по-человечески на временной диаграмме в виде, собсно, слов, а не циферок.
Писать под FSM состояния с разными разрядностями - моветон.
>3) привык
Вивада не даст вставить модуль в блок дизайн, если он написан на SV. Только оборачивать в обычный верилог.
Интерфейсы в SV отличаются от того, что ты описываешь на уровне цепей. В нём можно задавать модпорты (слейв, мастер, и пр.), писать свои таски\функции для описания транзакций, варификации и пр. А дальше текстом просто в модулях писать, что вот он использует интерфейс такой-то и в логике работать с отдельными сигналами через interf.signal. Если в интерфейс добавляешь новые цепи, то это легко делается один раз в логике описания интерфейса, без ебли с дополнительными подключениями.
Аноним 28/11/18 Срд 19:50:00 347397563
>>347336
Ну это как пример. Строить будет компилятор, в Квартусе есть TimeQuest, который тебе задержки по всем путям расписывает. Он же и конечную частоту называет на которой проект заведётся.
Аноним 28/11/18 Срд 20:02:19 347398564
>>347335
>Я тебе уже говорил — тебе только кажется в силу отсутствия опыта разработки, что этот пример отражает какой-то общий случай. Он нихуя не отражает.
Я с тобой заебался, ты какой-то непробиваемый. Я тебе про Фому, ты мне пр Ерёму.
Аноним 28/11/18 Срд 20:08:45 347399565
>>347398
Я тоже когда читал осознал, что опыта разработки у тебя нет.
Аноним 28/11/18 Срд 20:13:10 347401566
>>347399
>что опыта разработки у тебя нет.
Хуяк-хуяк и в продакшен?
Аноним 28/11/18 Срд 20:15:22 347402567
>>347401
Твои познания мемов из области погромирования на жаве здесь не помогут.
Аноним 28/11/18 Срд 20:24:33 347407568
>>347399
>Я тоже когда читал осознал
Наманяфантазировал ты себе что-то.

Твой вариант из >>347335 по большому счёту не чем не отличается от моего.
Ты помнишь вообще с чего разговор начался? С этого >>347020 Основной вопрос был "как функцию написать?", а не "куда её засунуть?".
Аноним 28/11/18 Срд 20:28:09 347409569
>>347398
Окей, на этом я завязываю тебе что-то объяснять.

>>347335-кун
Аноним 29/11/18 Чтв 16:11:49 347517570
Блин, я что-то ННП. Как запилить счетчик который увеличивает значение на выходе только на следующем такте а не в текущем?

Почему-то думал, что счетчик работает именно так, но оказалось, что нихуя подобного.
Аноним 29/11/18 Чтв 16:57:00 347518571
>>347517
Замени "=" на "<=" но лучше почитай вдумчиво учебник, у тебя проблемы в понимании основ
Аноним 29/11/18 Чтв 17:21:04 347521572
>>347518
Но я и так использую только неблокирующие присваивания.
https://marsohod.org/verilog/158-verilogpictcnt

Мой счетчик ведет себя так же, как и у марсоходовцев на осциллограмах: только отпускаю ресет, по фронту первого же клока на выходе счетчика имеем новое значение. Я почему-то думал, что новое значение будет с некоторой задержкой..

Или это что-то типа нулевой задержки?
Аноним 29/11/18 Чтв 17:47:28 347522573
>>347521
>Я почему-то думал, что новое значение будет с некоторой задержкой..
Тебе надо понимать, что за железо ты написал. По фронту счётчик умеет только класть в себя "текущее значение + 1", чтобы положить в себя 0, он должен где-то взять 0-1, где он его возьмёт?

Если во время резета ты наполнишь счётчик не нулями, а единицами, то после первого клока он у тебя переполнится и выдаст как раз ноль.
Аноним 29/11/18 Чтв 18:21:19 347527574
Screenshot2018-[...].jpg 198Кб, 1080x1554
1080x1554
>>347522
Но я не могу понять, какого фига по фронту первого же клока на выходе появляется единица. Разве d-триггер не должен вносить задержку в 1 такт?
Аноним 29/11/18 Чтв 18:26:19 347529575
>>347527
Если я поставлю последовательно 2 триггера, я же получу задержку. Почему с одним триггером ее нет... Пиздец я тупой.
Аноним 29/11/18 Чтв 18:39:02 347530576
>>347527
По фронту клока на выходе у тебя появляется то, что нахоидтся на входе. Что у тебя находится на входе?
Аноним 29/11/18 Чтв 18:45:37 347533577
>>347530
На входе единица. Но она же не может перейти на выход мгновенно? Почему тогда в симуляции получается именно так?
Аноним 29/11/18 Чтв 18:47:49 347534578
>>347530
И объясни тогда почему с цепочкой триггеров получается задержка а с одним триггером ее нет(вообще 0)?
Аноним 29/11/18 Чтв 18:48:56 347535579
>>347533
>Но она же не может перейти на выход мгновенно?
Именно так она и делает. Всё, что находится на входах триггера в момент фронта, мгновенно оказывается на выходе.

>>347534
Потому что у второго триггера на входе ноль, вот он и выдаёт ноль. А у первого на входе единица.
Аноним 29/11/18 Чтв 18:52:32 347536580
>>347533
В реальном устройстве задержка разумеется есть, но она может быть очень мала. Одна пикосекунда тебя устроит?
Тебе рановато браться за верилог и ПЛИС. Изучай основы цифровой схемотехники. Начиная со схем элементов И-НЕ и ИЛИ-НЕ.
Аноним 29/11/18 Чтв 19:04:32 347538581
>>347536
При цепочке триггеров именно из-за этой пикосекунды расхождения с фронтом клока и получается отставание данных на 1 такт. Похоже повторять теорию надо тебе.
Аноним 29/11/18 Чтв 19:10:09 347539582
>>347538
Цепочка триггеров - это сдвиговый регистр?
Ты понимаешь разницу между триггером со статическим управлением и с динамическим?
Аноним 29/11/18 Чтв 19:12:28 347541583
>>347538
Не пизди, маня, и не хами тем, кто тратит своё время, пытаясь образовывать тебя забесплатно. Второй триггер в момент клока видит на входе ноль потому что единица с первого не успевает до него дойти по проводу, там время распространения сигнала — порядка наносекунд.
Аноним 29/11/18 Чтв 19:27:13 347543584
>>347541
Сорян, если задел тебя. Но я именно так и понимал:
Первый триггер дает некоторую задержку и данные с его выхода поступают на вход второго триггера позже, чем приходит клок, из-за этого второй триггер захватывает данные которые были в предыдущем состоянии на выходе первого триггера. Но почему симулятор вообще не показывает эту задержку, она же есть, как мы вместе выяснили и она влияет на остальную логику!

Аноним 29/11/18 Чтв 19:37:51 347545585
Аноним 29/11/18 Чтв 19:38:20 347546586
>>347543
Это называется "логическая симуляция". Условно принимается, что триггеры в момент прихода клока берут то, что висело у них на входе ДО фронта, и выдают это мгновенно на выходе ПОСЛЕ фронта. Так быстрее и не нужно знать физические параметры реальной схемы.
Аноним 29/11/18 Чтв 19:46:56 347548587
>>347546
>>347545
>>347541
Спасибо вам, что попытались навести порядок в моей дурной голове. Мне правда стыдно, что я такой говнюк, Анон нынче токсичный пошел и я видимо набрался этого говна.
Аноним 29/11/18 Чтв 20:06:35 347551588
Аноним 30/11/18 Птн 07:29:59 347601589
>>347407
>сейчас бы делать ссылки на посты для мимокрока
Аноним 30/11/18 Птн 18:06:35 347678590
Помогите идеями решения dsp-задачи. Нужно сделать генератор прямоугольных импульсов, у которого нестабильность частоты, ее распределение и уровень задается внешней случайной функцией. Которую (случайную ф-ю) тоже нужно реализовавть на fpga.
Аноним 30/11/18 Птн 18:19:58 347681591
>>347678
Берешь nios или microblaze, прицепляешь к ним таймер и заводишь прерывание от него. Далее пишешь код как для любой ардуины.
Аноним 30/11/18 Птн 18:24:14 347682592
Аноним 30/11/18 Птн 18:34:32 347686593
>>347678
Ну да, зачем для такого использовать ОС? В ардуинах тоже ОС обычно не используется. Делай все на прерываниях, для частот около нескольких килогерц явно никаких сложностей не возникнет.
Аноним 30/11/18 Птн 18:35:09 347687594
Аноним 30/11/18 Птн 18:41:38 347689595
>>347681
>dsp-задача
>nios
>microblaze
facepalm
Аноним 30/11/18 Птн 19:06:37 347692596
>>347689
Что не так? У nios и microblaze набор команд полный по Тьюрингу, значит они могут посчитать любую функцию, вопрос лишь в скорости. Причем о требуемой частоте меандра ничего не было написано.
Аноним 30/11/18 Птн 19:08:31 347694597
>>347692
Ок, помоги с идеями для чистого fpga, без cpu.
Аноним 30/11/18 Птн 19:23:03 347696598
>>347694
Куда уж "чище", это же не zynq или cyclone v со встроенным армом.
Ну ладно, тогда еще придерусь к "случайной функции". Такого не бывает, может быть случайный (псевдослучайный) процесс или последовательность.

Возьми цифровой фильтр и подай на него М-последовательность, будет тебе на выходе псевдослучайная последовательность с заданными свойствами.
Аноним 30/11/18 Птн 19:29:41 347698599
>>347696
Очевидно же, что я говорил о псевдослучайной ф-ии.

Как "модулировать" ей генератор?
Аноним 30/11/18 Птн 19:53:50 347702600
>>347698
>Очевидно же, что я говорил о псевдослучайной ф-ии.
В литературе по радиотехническим сигналам этот термин не используют. И ты тоже не используй.
>Как "модулировать" ей генератор?
Фаза - это интеграл от частоты. Соответственно можно просто интегрировать, хотя это будет не оптимально по ресурсам.
Аноним 01/12/18 Суб 15:40:45 347809601
Что за херня началась на ютубе? Какое тело начало обсирать тех, кто несет знания в Мир? Это про канал о ПЛИС товарища Jack0v.
"a6736715921
Ты делаешь абсолютно бессмысленную работу, снимая эту хрень. Намного проще и быстрее прочитать учебник.
А самое главное, ты заебал уже рекламировать свои видосики на харкаче."
Аноним 01/12/18 Суб 22:32:20 347902602
>>347809
>кто несет знания в Мир?
Несёт ли?
Аноним 02/12/18 Вск 14:08:42 347981603
Аноним 07/12/18 Птн 09:21:15 348626604
Screenshot2018-[...].png 201Кб, 1080x1920
1080x1920
Аноним 07/12/18 Птн 18:29:43 348691605
15375626601410.jpg 12Кб, 225x225
225x225
>>316943 (OP)
Девчонка-десятиклассница пытается в ПЛИС, но порашеры исходятся но говно просто https://2ch.hk/po/res/30958721.html
С кем же приходится сидеть на одной борде, пиздец просто.
Аноним 07/12/18 Птн 18:34:48 348694606
>>348691
Ебать там успешных сваливших из рашки плисоёбов полон тред, и срутся за хуйню какую-то даже не по теме треда.
Аноним 07/12/18 Птн 18:40:04 348695607
Сап, плисяры. Может создамим конфу для совместного решения челленджей на fpga для тренировки?
(Автор этого поста был предупрежден.)
Аноним 07/12/18 Птн 18:48:37 348697608
>>348695
Ой блядь, иди нахуй, мочератор.
Аноним 07/12/18 Птн 19:50:17 348720609
>>348691
Круто, что в какой-то деревне изучают мипс процы. У меня даже в институте такой хуйни не было. (Был сразу 8086, но на таком уровне, что пизда)
Аноним 07/12/18 Птн 21:23:07 348742610
>>348691
Плисотролль, забирай лолю к себе. Подмани её россыпью циклонов, потом дашь потрогать свой стратикс.
Аноним 10/12/18 Пнд 10:52:50 349114611
Аноны, покупал кто плисины из за бугра(не Китай)? Не пошлют ли нахуй на таможне? А то вроде есть вкусные цены, но... очко играет
Аноним 10/12/18 Пнд 14:55:37 349151612
>>349114 Купишь с ебая - проскочит. С фарнела, дижикея заворачивает как сам магазин (ибо ты потенциальный разработчик оружия для кровавого режима) так и рашкотаможня. Если заказывать то через частных посредников.
Аноним 10/12/18 Пнд 16:46:06 349162613
>>349151
Мда, вечно все через жопу. Но ведь в рахе как то их продают? Или это не оф дистрибьюторы?особенно с их то охуевшей наценкой
Аноним 10/12/18 Пнд 17:09:06 349164614
>>349151
Частные посредники - это типа боксбери и шопотамы, или вообще чувак-физлицо, с которым напрямую договариваешься?
Аноним 11/12/18 Втр 00:37:47 349203615
>>349162
>в рахе как то их продают?
Так прямого запрета на ввоз и нет. Но есть куча нюансов что американский поставщик должен соблюсти ограничение на поставку определенных технологий определенным недостранам, так же как и на таможне рф нужно все грамотно оформить.
>>349164
>боксбери и шопотамы
С этими вообще все плохо - там при заказе ты сам заполняешь наименования товаров, ссылку на магазин и посредник по этим данным потом сам все растомаживает. И наименование gift electronics они не примут, а ко всему остальному если это не потребительская техника будут вопросы.
>чувак-физлицо
This. Самый беспалевный способ пересылки это обычный мелкий пакет. Их проверяют очень выборочно, если конечно они сильно не выделяются по заявленной стоимости, весу или на рентгене.
Аноним 26/12/18 Срд 15:34:23 350931616
>>346384
Ну что, рассказывай, какие идеи есть на эту борду?

Я бы тоже может заказал, но уж очень мало интерфейсов у нее.
10GE - ок, круто. Но для домашнего использования нет задач.

PCI-E - збс, но на плате нет оперативки, это сильно ограничивает применимость.

Вижу только одно применение для этой платы - пилить на ней какой-то майнер или другую числодробилку.

Самое обидное, что нет видео-выхода и не поигратьсЯ с обработкой изображений.
Аноним 26/12/18 Срд 15:41:50 350935617
>>348695
Я давно ищу с кем бы объединиться и вместе что-то пилить, но здесь народ слишком угрюмый как автор учебника по цифровой схемотехнике, а ИРЛ нет людей со схожими интересами.
Короче кидай фейкопочту, либо пиши мне:
[email protected]

Я просто на стену уже лезу от того, что не могу найти себе задачу, может вместе что придумаем?
Аноним 26/12/18 Срд 16:36:00 350941618
>>349203
>С этими вообще все плохо
Их требования зависят от способа доставки. Если отправлять обычной почтой, то можно писать без подробностей. Я без проблем заказывал через них некоторые микросхемы, в том числе и ПЛИС. Не стратиксы конечно, но даже в MAX 10 логических элементов в два раза больше чем в лучших отечественных ПЛИС.

>>350931
> нет видео-выхода
Припаяй сам, делов то. Это как раз несложно. Хуже другое — там нет FMC, только гребенка.
>не могу найти себе задачу
Радиоприемник можно сделать для сигналов с большой базой. Да вообще много чего.
Аноним 26/12/18 Срд 17:58:41 350943619
>>350941
Припаять выдеовыход - это же колхозинг будет. Не говорю уже про hdmi.
FMC нет, еще один минус. Но готовые fmc-мезонины стоят сотни нефти, дороже этой борды.

Алсо, на али попадались такие же кинтексы как на этой борде по 60 баксов за камень. Хоть с кем-то объединяйся и разводи плату под свои нужды.
Аноним 26/12/18 Срд 18:00:32 350944620
>>350941
>Радиоприемник можно сделать для сигналов с большой базой.
SMA разъема нет. Опять колхозинг получается..
Аноним 26/12/18 Срд 21:44:45 350956621
>>350943
>колхозинг
Ты ноешь как...
В самом деле, там гребенка есть, в чем проблема втыкать туда не слишком быстрые АЦП/ЦАП? Недостаток только в том, что крепежных отверстий толком не предусмотрено.
>SMA разъема нет.
Даже если он там будет, что толку? В таких платах они обычно только для входа/выхода тактового сигнала.

>Хоть с кем-то объединяйся и разводи плату под свои нужды.
Для начала необходимо эти нужды как-то оформить. Сам же писал что идей нет.
И почему именно кинтекс? Можно взять 10M50 в корпусе TQFP и развести под свои хотелки двухслойную плату. Пусть 10M50 в 10 меньше чем XC7K420T, но этого вполне может хватить.
Аноним 27/12/18 Чтв 07:35:32 350987622
>>350956
Ну давай пофантазируем.
Почему зайлинкс а не интел это вопрос слишком провокационный. Если доступна жирная плисина, по сладкой цене, почему бы не использовать?

Что я хотел бы видеть в борде:
PCI-E
1GE не менее 2х штук.
SFP+ пару штук, просто чтоб был
DDR3 1G
HDMI in
HDMI out
SATA
Аноним 27/12/18 Чтв 12:10:40 351020623
>>350987
В плате за 150 баксов?! Да ты совсем охуел?
Аноним 27/12/18 Чтв 12:24:56 351021624
>>351020
Перестань грубить. Что в моих хотелках охуевшего? Половина этих интерфейсов не требует какой-либо обвязки, только разъемы, которые, к слову, можно устанавливать по желанию.
Аноним 27/12/18 Чтв 14:22:13 351041625
>>351021
SATA SFP и PCI-E
Остальное будет довольно сильно удорожать БОМ
Аноним 27/12/18 Чтв 14:29:47 351045626
>>351041
Компоненты можно покупать и устанавливать по мере потребности.
Аноним 27/12/18 Чтв 22:47:50 351081627
https://pastebin.com/D89u19NZ
Кое-как сделал деление. Делить нужно 16..22 разрядное число на 8..12 разрядное один раз в несколько миллисекунд. Ответ нужно получить за время не более около сотни тактов. Как можно оптимизировать это по занимаемым ресурсам, при этом сохранив прежнюю тактовую частоту?
Аноним 28/12/18 Птн 08:02:42 351117628
Аноним 28/12/18 Птн 09:11:47 351120629
Аноним 02/01/19 Срд 15:14:15 351491630
>>351120
>Глянь на high radix division
Посмотрел, по занимаемым ресурсам оно должно быть хуже. Или я что-то не понял.
>Обычно есть в корках
Для флексов, на которых это тоже должно будет работать, есть только lpm_divide. Какой там используется метод я не разбирался, но по ресурсам оно не очень.
Переписал вот так. https://pastebin.com/uz1ELPcg По тактовой частоте почти не ухудшилось, зато по ресурсам стало существенно лучше.
Аноним 03/01/19 Чтв 11:21:12 351573631
На чём можно дёшево напрограммить резисторных матриц? Я ебал цены на резисторы с точностью 0,002%.
Аноним 03/01/19 Чтв 16:03:57 351612632
>>351573
Зачем тебе такая точность?
Аноним 03/01/19 Чтв 17:18:07 351624633
Здравствуйте , радачилы, есть cypress psoc 5lp. хочу на блоках UDB (аналог плисы) сделать частотомер. два раза создавал тред, но упрямый бот закрывает его и отправляет ARM. Но может тут помогут, хотя не знаю как ARM и ПЛИСовые блоки могут быть связаны. Короче есть проблема, за первую секунду счётчик считает странное число, которое меняется примерно на 2млн. В крейторе завожу частоту в 12 МГц и секунду делаю тоже с 12 МГц.
Аноним 03/01/19 Чтв 17:20:43 351625634
>>351573
Измерять резисторы с такой точностью у тебя хотябы есть чем? А то цену на такое оборудование ты ебать будешь еще больше.
Можно из параллельных резисторов разного номинала набрать, типа резистор 10ком и параллельно ему подстроечник на 10ком
Аноним 03/01/19 Чтв 17:22:50 351626635
>>351624
Писал бы ты на верилоге, может чем-нибудь помог. А так даже толком не понятно что именно ты сделал. Но вообще-то, для практических целей, нет смысла делать простой частотомер на этих psoc или плис.
>упрямый бот
Да, редкостный уебок.
Аноним 03/01/19 Чтв 17:25:43 351627636
>>351573
Термостатирование еще не забудь, а то у обычных резисторов ТКС около 100 ppm/градус.
Аноним 04/01/19 Птн 04:07:13 351677637
>>351573
>На чём можно дёшево напрограммить резисторных матриц? Я ебал цены на резисторы с точностью 0,002%.
ЦАП сделать хочешь? Забудь, R-2R от 8 бит с норм точностью реально получить только в интегральном исполнении, где ТКЛР и ТКС резисторов на кристалле равны.

>>351625
ТКС хорошего подстроечника лежит в порядках десятков-сотен ppm. А для такой задачи нужен ТКС в районе десятых долей ppm.

>>351627
Это С2-29 или PTF56 какие нибудь? Тогда да. Так то есть резисторы с ТКС в десятые доли ppm, и долговременной стабильностью в единицы ppm, но вот их стоимость...

Не проще ли взять интегральный ЦАП за 1000 рублей?
Аноним 04/01/19 Птн 18:08:30 351727638
IMG201901041704[...].jpg 8861Кб, 4032x3024
4032x3024
Аноним 04/01/19 Птн 23:45:01 351752639
>>351727
Пиши лучше на верилоге. Пока могу сделать только пару замечаний.
1. Выход комбинационной логики не следует подключать к тактовому входу в любом случае. Из-за гонок сигналов и всего такого. Выходы твоих делителей вполне могли быть образованы комбинационной логикой.
2. Для тактового сигнала в ПЛИС используется отдельная сеть, имеющая свои ограничения. Поэтому добавление лишних тактовых сигналов, как правило, создает некоторую избыточность. Ты, конечно, уточни, как в этих psoc, но не думаю что сильно по другому.

Так что лучше сделай все по возможности синхронным, включая сброс.
Аноним 06/01/19 Вск 17:34:46 351914640
509[1].png 38Кб, 522x600
522x600
Вот пример работы с циклами из книжки:
module Test(input [3:0]X, output reg [2:0]Y);

integer i;
always @*
begin
Y = 0;
for(i = 0; i < 4; i = i + 1)
if(!X) Y = Y + 1'd1;
end

endmodule

Как вообще эта дичь работает?
Как можно присваивать комбинационной схеме начальное значение (Y = 0;)? Почему if без ветви else? В этом же случае компилятор для комб. схем будет ставить защёлки, а их нет. Почему, если убрать Y = 0; эти защёлки появляются?
Аноним 06/01/19 Вск 19:07:18 351920641
>>351914
>Как можно присваивать комбинационной схеме начальное значение (Y = 0;)?
В стандарте верилога нет такого понятия как комбинационная схема, это просто переменные с точки зрения стандарта.
Если не касаться синтеза, то у тебя при изменении входных сигналов мгновенно производятся какие-то вычисления и результат остается в Y. Для синтеза считай что окончательное присвоение будет в самом конце always.
>Почему if без ветви else? В этом же случае компилятор для комб. схем будет ставить защёлки, а их нет. Почему, если убрать Y = 0; эти защёлки появляются?
Разберись как оно работает не касаясь синтеза, только при функциональной симуляции. Разберись, в каком случае модуль будет обладать памятью, а в каком нет.
Аноним 07/01/19 Пнд 01:55:38 351987642
>>351920
>Разберись, в каком случае модуль будет обладать памятью, а в каком нет.
Так я об этом и спрашиваю. Если бы разобрался не спрашивал бы.
Аноним 07/01/19 Пнд 10:05:05 351998643
>>351987
Ходит слушек что "always @*" - это комбинационная схема, тк задействованы все сигналы, если явно указано указан сигнал или сигналЫ? с фронтом - это уже схема с памятью.
Аноним 07/01/19 Пнд 11:01:47 352007644
>>351998
always @* можно превратить в схему с памятью, простейший способ — использовать if без else или case без default.

>>351914
>Почему if без ветви else?
>Почему, если убрать Y = 0; эти защёлки появляются?
Потому что этот Y = 0; и есть своего рода else. Код описывает такую логику:
if (!X) Y = 0+1'd1; else Y=0;
Аноним 07/01/19 Пнд 11:12:42 352008645
>>351987
Не знаю, как тебе объяснить не пересказывая целую главу из учебника. Как уже советовал, для начала абстрагируйся от схем и прочего. Считай что описываешь только поведение схемы, собственно так оно и есть, до какой-то степени.

Попробую перечислить основные моменты из учебника, которые ты мог пропустить.
1. Есть переменные двух типов wire и reg. Переменным wire что-то присваивать можно только через assign или подсоединяя к порту инстанса модуля. Переменным типа reg можно делать присвоение в блоках always. Для reg есть блокирующие и не блокирующие присовения. Разница в том, что блокирующие присваивания меняют переменную сразу, а неблокирующие на выходе из блока always.
1.1. Если не указывать задержки (в верилоге есть такое, но это не синтезируется), то любые присваивания выполняются мгновенно, без задержек. То есть, оно хоть и выполняется последовательно, но выполняется без задержек.
2. always срабатывает после изменения сигналов, указанных в списке чувствительности. Это важно понять. Не в процессе изменения, а после. Если в списке чувствительности указана звездочка, то срабатывать оно будет при изменении любого сигнала. Заметь, не постоянно, а при изменении, это тоже важно, особенно в тестбенчах.

Если все это понятно, можно попробовать разобраться что происходит у тебя в модуле.
1) Когда есть Y = 0;
Все просто, при изменении X срабатывает блок always и все что там внутри выполняется мгновенно, ведь задержки ты не указал (впрочем, они все равно не синтезируются). Переменной Y присваивается 0, а потом в зависимости от X либо прибавляется 4 раза по 1, либо не прибавляется. Теперь попробуем прикинуть как оно будет реагировать на разные входные сигналы.
а) X изменился на 0. Присвоили 0, и прибавили 4 раза по 1, получилось 4. Причем получилось мгновенно, сразу после изменения X.
б) X изменился на 1. Присвоили 0, и все, получилось 0. Все произошло так же мгновенно.
У модуля в этом случае нет памяти, потому что предыдущие состояния не влияют на выход. Соответственно защелки не синтезируются.

2) Когда нет Y = 0;
Тут у тебя некоторая ошибка. В верилоге не инициализированные переменные имеют неопределенное состояние. Нужно как-то так:
>module Test(input [3:0]X, output reg [2:0]Y = 0);
а) X изменился на 0. Прибавили к Y 4 раза по 1.
б) X изменился на 1. Не меняется ничего.
Получается что (а) происходит по фронту сигнала X. Это и есть память.
Аноним 07/01/19 Пнд 11:18:05 352009646
>>352008
>происходит по фронту сигнала X.
По заднему фронту, конечно же.
Аноним 07/01/19 Пнд 11:28:47 352011647
>>352008
>а) X изменился на 0. Прибавили к Y 4 раза по 1.
Немного добавлю, а то может не все понятно будет.
Если в начале Y был 0, то по первому спаду X, Y изменится на 4. А по второму опять на 0 (переполнение).
Аноним 07/01/19 Пнд 12:40:45 352016648
>>351998
Это то и ежу понятно.

>>352007
>always @* можно превратить в схему с памятью, простейший способ — использовать if без else или case без default.
Ну такая себе память. Памятью её можно назвать только формально. Скорее это способ компилятора разрешить ситуацию отсутствия ветви в условии. Эти защёлки даже синтезируются на комб. логике. Надёжно такие схемы работать не будут.

> Код описывает такую логику: >if (!X) Y = 0+1'd1; else Y=0;
Да вот не совсем. В этом случае, при Х == 1 весь Y обнулился бы. А он хранит своё значение, до тех пор пока Х не будет равно 0.

Кстати да, ошибочка у меня в коде, должно быть так:
if(!X) Y = Y + 1'd1;

>>352008
>б) X изменился на 1
Х то многоразрядный, у меня ошибочка в коде, индекс у Х должен меняется в цикле:
if(!X) Y = Y + 1'd1;
Схема подсчитывает количество нулей Х.
Аноним 07/01/19 Пнд 13:05:56 352018649
>>352016
>if(!X) Y = Y + 1'd1;
if(!X) Y = Y + 1'd1;
Аноним 07/01/19 Пнд 13:06:56 352019650
>>352018
Ан нет, это макаба квадратные скобочки жрёт
if(!X[[]]) Y = Y + 1'd1;
Аноним 07/01/19 Пнд 13:08:27 352020651
>>352019
f(!X открывающая_квадратная_скобка i закрывающая_квадратная_скобка) Y = Y + 1'd1;
Вот так!
Аноним 07/01/19 Пнд 13:50:17 352023652
>>352016
Похоже при изучении всего этого ты пропустил что-то важное, а вот что — х.з.
Попробуй все же абстрагироваться от триггеров и схем. Тем более что верилог не для синтеза первоначально разрабатывался, а для моделирования. Можешь попробовать взять моделсим и посмотреть там в режиме отладки, как этот цикл выполняется по шагам.

>Ну такая себе память. Памятью её можно назвать только формально.
Любой триггер обладает памятью, на то он и триггер.
>Эти защёлки даже синтезируются на комб. логике. Надёжно такие схемы работать не будут.
Если для ПЛИС, то да. Но простейший асинхронный RS-триггер сам по себе вполне работоспособен.
Аноним 07/01/19 Пнд 13:56:00 352024653
>>352016
>Да вот не совсем. В этом случае, при Х == 1 весь Y обнулился бы.
Я описал только первую итерацию, если расписать их все, то будет так:

Y = if (!X1) Y=0+1; else Y=0;
Y = if (!X2) Y=Y+1; else Y=Y;
Y = if (!X3) Y=Y+1; else Y=Y;
Y = if (!X4) Y=Y+1; else Y=Y;

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

Если мы убираем Y=0, то присваивания начинают зависеть от того, что осталось в Y с прошлого раза, и тут уже нужна память.
Аноним 07/01/19 Пнд 14:03:21 352025654
>>352024
Сорян, вот так оно должно выглядеть:

if (!X0) Y=0+1; else Y=0;
if (!X1) Y=Y+1; else Y=Y;
if (!X2) Y=Y+1; else Y=Y;
if (!X3) Y=Y+1; else Y=Y;

Поскольку если в Y что-то и было, то оно первым делом перезаписывается к хуям на 0 либо на 0+1, то результат зависит исключительно от X и может быть представлен в виде комбинационной логической функции от X.
Аноним 07/01/19 Пнд 15:09:04 352031655
>>352023
>Любой триггер обладает памятью, на то он и триггер.
Есть триггер, как законченный функциональный узел, а есть триггерная схема, это когда в комб. логике наделали обратных связей. Да, триггер тоже можно рассматривать как комб. логику с обратными связями, но он проверен на отсутсвие зависаний, подогнан и скомпонован так чтобы не сбоить.

>Если для ПЛИС, то да.
Конечно для ПЛИС. Будто здесь сидят разработчики ASIC-ов.


>>352023
>>352025
>if (!X1) Y=Y+1; else Y=Y;
else Y=Y;
Тут как бы тоже память требуется.

Ладно, посижу по думаю.
Аноним 07/01/19 Пнд 15:40:55 352037656
>>352031
>Тут как бы тоже память требуется
Нет. Память требуется, чтобы хранить состояние, установленное в предыдущем событии (предшествующим по времени вызове блока @(*) ). Если мы имеем дело только с состояниями, создаваемыми в текущем событии, то ты никакую память на плисине для их хранения не выделяешь, ты просто описываешь в несколько действий, как у тебя комбинационные логические функции вычисляются. Чисто для удобства написания кода.
Аноним 07/01/19 Пнд 15:42:13 352038657
>>352031
>Конечно для ПЛИС. Будто здесь сидят разработчики ASIC-ов.
Как вариант — код, описывающий асинхронные триггеры, может быть для тестбенча.

>Тут как бы тоже память требуется.
Можешь это оценить иначе. Возьми свой модуль и, временно забыв про код модуля (выкини его из головы!), попробуй написать тестбенч, в котором будет видно, влияет ли на выходной сигнал предыдущее состояние или нет. Если не влияет, то значит что внутри нет триггеров или они не задействованы.
Аноним 07/01/19 Пнд 15:45:16 352039658
>>352031
>Конечно для ПЛИС. Будто здесь сидят разработчики ASIC-ов.
Верилог всё равно один и тот же. Тебе надо думать не о том, как защёлка создаётся на плисе, а пытается ли твой код использовать инфу с предыдущего состояния или нет.
Аноним 07/01/19 Пнд 21:14:38 352087659
>>352037
>>352038
Братцы, а можете ещё несколько таких >>351914
примеров накидать? Может так понятнее станет.
Аноним 10/01/19 Чтв 23:40:59 352472660
Кто-нибудь использовал soft-процессоры с открытым исходным кодом? Поделитесь опытом.
Аноним 11/01/19 Птн 14:00:51 352522661
>>352472
Сам писал, пока vhdl и verilog изучал. С не совместимой ни с чем системой команд. В результате что-то писать на ассемблере было весьма уныло, а главное бессмысленно.
Аноним 11/01/19 Птн 14:41:24 352525662
>>352522
А есть что-нибудь с открытым кодом, да чтоб gcc поддерживало?
Аноним 11/01/19 Птн 15:04:06 352529663
>>352525
Если брать 32-х разрядные, то наверное стоит смотреть на OpenRISC, MIPS, RISC-V, для них много реализаций с открытым исходным кодом.
Сам думаю под одно дело приспособить picorv32. Но у него под регистровые файлы используется минимум двухпортовая память, поэтому для флексов будет плоховато. Хотя однопортовый регистровый файл это уже не регистровый файл получается.
Аноним 13/01/19 Вск 15:27:14 352753664
>>352529
А как вообще выглядит работа с таким процом?
Тот же микроблейз возможно отлаживать череж жтаг. Недавно ARM выкатили свои ядра под Xilinx, но для работы с их процом нужен внешний сука программатор. Ну и код ядра само собой зашифрован.

Что из перечисленного тобой удобнее всего отлаживать и лугче поднять?
Аноним 13/01/19 Вск 19:38:34 352776665
>>352753
>Тот же микроблейз возможно отлаживать череж жтаг.
Нинужно, есть БОЖЕСТВЕННЫЙ ламповый принтф через уарт в чорную консоль. А вообще никто в теории не мешает прикрутить жтаг к чему угодно, это же открытый стандарт.
Аноним 13/01/19 Вск 21:00:44 352789666
>>352776
>А вообще никто в теории не мешает прикрутить жтаг к чему угодно, это же открытый стандарт.
Что-то даже не представляю как это сделать. Думаю если было бы так просто, были бы готовые решения.
Аноним 13/01/19 Вск 21:28:26 352795667
Аноним 13/01/19 Вск 22:21:06 352805668
>>352789
>Что-то даже не представляю как это сделать.
Можно начать с чтения стандарта и доков на гнутый дебаггер, какая ему инфа о состоянии выполняемой программы нужна. А дальше само пойдёт. Хотя что-то мне подсказывает, что это задача урованя запила бэкэнда гцц под свою архитектуру.

//Я, кстати, загуглил запиливание бэкэнда гцц, и люди пишут, что это, в принципе, даже вроде как подъёмно:
https://kristerw.blogspot.com/2017/08/writing-gcc-backend_4.html
Аноним 14/01/19 Пнд 10:47:07 352847669
>>352087
Ну же. Дайте ещё таких шизанутых примеров.
Аноним 17/01/19 Чтв 19:00:10 353284670
Кто-нибудь фрилансил по сабжу?
https://www.upwork.com/o/jobs/browse/details/~013fdbb66e16b61918/?q=fpga

Я правильно понял, что этим челикам нужно всего лишь запилить примеры использования IP-ядер под их железо? Они там что не знают что можно example design скачать?
Аноним 19/01/19 Суб 07:56:50 353448671
Бамп
Аноним 20/01/19 Вск 12:10:22 353573672
Анон, подскажи, где можно скачать QuestaSim последних версий для Linux. Я знаю, что он есть на FTP электроникса, но проще выучить китайский и прошерстить eetop чем получить доступ туда. Сил моих нет симулировать без ассёршенов.
Аноним 20/01/19 Вск 18:25:18 353590673
>>353573
https://rutracker.org/forum/viewtopic.php?t=5331072 Только версия довольно старая.
А я все никак не могу собраться и изучить SystemVerilog. Но все-таки, чем тебе не хватает обычных $display и $stop?
Аноним 20/01/19 Вск 20:19:14 353612674
>>353590
Ты про ассершены или SV в целом?
Любой ассёршен можно заменить initial блоком с условием, но зачем использовать костыли, если для этого есть специальная конструкция.
Для меня SV в первую очередь это интерфейсы, классы и межпроцессная коммуникация. Я не уверен на счёт того, что последнего нету в обычном Verilog (mailbox, semaphore). В целом очень удобно под рукой иметь интерфейс, скажем, AXI4, который помимо простых соединений, можно использовать для генераций транзакий, дёргая таск внутри интерфейса (естественно только для верификации).
Аноним 21/01/19 Пнд 12:32:02 353683675
Господа аноны, столкнулся с проблемой или своей тупостью. На плате стоит cyclone V и ddr3 от самсунги. Трабла в том, что при очередной перекомпиляции проекта рандомно отваливается доступ к ddr-ке из ниоса. Проблема решается сменой настройки параметра "ODT Rtt nominal value" с RZQ/4 на ODT Disabled или наоборот. С чем связяно такое непотребное поведение железяки?
Аноним 21/01/19 Пнд 16:04:11 353704676
>>353683
Ну ODT - это согласование нагрузки на ддр. (Гугли СВЧ, имеданс и все такое).
Вряд ли с отладкой что-то не так, может констреинты не задал, вот у тебя и тайминги рандомные получаются или еще какая хуйня.
Аноним 21/01/19 Пнд 18:36:36 353718677
>>353704
Плата нашей разработки, поэтому вполне допускаю, что может быть железная трабла.
Аноним 22/01/19 Втр 17:15:08 353865678
>>353612
Хотя мне больше нравится иметь класс генератор транзакций, к которому подведён виртуальный интерфейс. Ну и класс приёмник.
Аноним 30/01/19 Срд 12:54:50 355020679
Пацаны, у меня у одного адовые проблемы с попытками работать не Вивадо 2018.3? Оно же не работает сука нихуя. Вернулся на 2017.4 — как глоток свежего воздуха. Или у меня что-то с руками? Такое ощущение, что кривое всё — от инструментов до отдельных айпи-корок. Я подозреваю, что у них там сейчас большой переезд на новый бекенд или что-то такое, потому и поддержку соляры недавно дропнули, и 32-битные либы больше не требуются, как раньше, но сука, не настолько же.
Аноним 30/01/19 Срд 13:26:16 355025680
https://toster.ru/answer?answer_id=1222603#comments_list_1222603

Ебать как я ору с тостера.

>5. Специфика рынка труда отвратительная - тут есть море спецов с стажем в 20-30 лет, они тебя сожрут и по скорости и по качеству а т.к. кредиты и семьи то вкалывают за минималку по рынку. Так же кодить под плис проще чем под веб - нет бардака с стандартами и каждый год новый бред не выходит и не нужно переучиваться, что сделано 10 лет назад или 20 нормально взлетит и не поперхнётся. (это не СНГ)

>6 - разрешения есть, всё равно что жопа защищена бронебойной плитой - говнокодь и пользуйся поделиями студентов практикантов во все поля - уволятся с голода - следующие придут, это везде так, не в едином СНГ.

Подписываюсь под каждым словом.
Вы еще в погроммисты не перекатились?
Аноним 30/01/19 Срд 13:32:51 355027681
>>355020
Я здесь один сижу на 2015.4 и в хуй не дую?
Полно легаси говна, которое надо поддерживать и хуй знает как оно заработает после обновления.
Аноним 30/01/19 Срд 13:54:52 355029682
>>355027
Да понятно, что никак не заработает. После импорта проекта и обновления корок всё превратится в кровавое месиво, там проще выкинуть и сделать с нуля, чем разбираться, где что отвалилось. Я на другую версию вынужденно перехал, потому что старую ревизию встраиваемого модуля делать перестали, а новая не работает с вивадо, которой я пользовался.
Аноним 30/01/19 Срд 16:44:32 355085683
>>355029
Блин, а я довыёбывался. Дали новый проект на ультраскейле, пришлось таки поставить новую блеваду.
Аноним 31/01/19 Чтв 14:50:56 355234684
поясните за SystemC
Аноним 31/01/19 Чтв 16:57:11 355246685
>>355029
Да не все так плохо,
Аноним 31/01/19 Чтв 17:31:15 355248686
>>355234
Хипстерский пет-проджект, бесконечно далёкий от продакшена.
Аноним 05/02/19 Втр 22:09:22 355994687
ПЛИСаны, тупой вопрос: в VHDL выражение вида [CODE]c <= signed(a-b)[/CODE] (сигналы a и b типа unsigned из numeric_std, ширина всех трёх сигналов одинакова) нигде подлянки не устроит? Тесты в GHDL вроде ничего подозрительного не показывают.
Аноним 06/02/19 Срд 07:28:24 356022688
addunsigned.png 35Кб, 1180x398
1180x398
>>355994
Ну так сумматор (или вычитатель) для натурального двоичного кода и сумматор для дополнительного кода это одно и то же устройство.
Если у тебя есть какие-то сомнения в том что именно делается в VHDL, то можешь заглянуть в код самого numeric_std.
Аноним 07/02/19 Чтв 09:03:51 356097689
>>355994
Если a=0 и b=0xFF...FF на всю ширину, то будет переполнение. Делаешь из ансигнеда сигнед — докидывай ещё один бит на знак минуса.
Аноним 14/02/19 Чтв 23:04:22 357112690
Плисаны, поясните, почему использовать встроенный симулятор это моветон?
Какой моделсим поставить под блеваду 2017.4?
Какие вообще фишечки есть в моделсиме и нет во встроенном симуляторе?
Аноним 15/02/19 Птн 13:10:39 357164691
>>357112
Нормальная поддержка Systemverilog моделсимом - у меня такая мотивация была, т.к. тестбенчи стали усложняться. С 16 вивады пользуюсь 10.4с, брата нет, зависимость есть.
Аноним 15/02/19 Птн 19:02:39 357196692
>>357164
Я слышал, что моделсим дает возможность подрубать функциональную модель какого-нибудь сложного протокола типа саты или еще что-то подобное. Это правда?
Как это вообще выглядит?
Аноним 19/02/19 Втр 01:18:28 357519693
>>357196
Я думаю, что ты имеешь в виду интерфейсы SystemVerilog, которые только ModelSim и QuestaSim поддерживают. Но тебе всё равно придётся описать протокол, хоть и несинтезируемой частью.
Аноним 19/02/19 Втр 14:01:34 357552694
А законно ли делать сдвиговые регистры с переменной величиной сдвига?
Нужно сдвигать данные на фиксированные величины 32/64/96/128

reg
new_data
Аноним 19/02/19 Втр 14:06:19 357553695
>>357552
раньше времени отправился пост. Хочу конструкцию такого вида:

reg [1:0] offset;
reg shifted_data[127:0];

...
shifted_data[127:0] <= (shifted_data<<32*offset);
Аноним 19/02/19 Втр 14:18:11 357557696
>>357553
По моему это мультиплексор, соединенный с параллельным регистром. Впрочем, то же можно сказать про обычный сдвиговый регистр с параллельной загрузкой.
Нарисовать схему такого на отдельных триггерах и мультиплексорах можешь? Значит "законно".
Аноним 21/02/19 Чтв 12:59:22 357748697
Работаю программистом и в течение нескольких лет хочу вкатиться в ПЛИС для перспектив.
Какие книги для этого надо прочитать?
Какую FPGA и программатор лучше заказать с доставкой в Россию?
Аноним 21/02/19 Чтв 13:36:04 357751698
>>357748
Лучшая книга для новичков, только на английском
Pong Chu FPGA Prototyping by Verilog Examples
В качестве платы могу порекомендовать DE10-nano или Zedboard в зависимости от того с какой фирмой ты хочешь научиться работать в первую очереь, но, лично мне, больше импонирует DE10-nano

Аноним 21/02/19 Чтв 14:12:42 357752699
>>357751
>Pong Chu FPGA Prototyping by Verilog Examples
A Xilinx Spartan 6 в Россию доставляют?
Аноним 21/02/19 Чтв 14:21:24 357753700
Аноним 21/02/19 Чтв 14:33:32 357754701
>>357752
Учти что они устарели. Причем проблема в том, что у них для новых микросхем уже другая IDE. Поэтому для обучения не стоит брать.
Вообще для обучения платы не особо то нужны.
Аноним 21/02/19 Чтв 15:30:51 357758702
>>357754
Хочу учиться на живом железе.
DE10-nano дешевле 14000 не бывает?
Аноним 21/02/19 Чтв 16:47:47 357768703
>>357758
Если дорого, то возьми что попроще на алиэкспрессе.
1400 рублей https://aliexpress.com/item/EP4CE6/32812957811.html Да, там на плате ничего толком нет, но для начала сойдет. Потом, если потребуется, уже с большим пониманием выберешь что-нибудь более сложное.
Аноним 21/02/19 Чтв 19:09:14 357776704
Аноним 23/02/19 Суб 12:53:31 357906705
>>357752
Не обращай внимание на эту плату и этот кристалл, в этой книге много хороших примеров на языке Verilog. С их помощью ты уже сможешь реализовывать свои проекты хоть на Xilinx, хоть на Intel. DE10 стоит 120$ если заказывать от производителя, но это кладезб свистоперделок, можно докупить камеру D8M и пилить видеообработку, т.к. есть hdmi выход. Примеры того как те или иные проекты реализовать на этой плате идут вместе с платой (размещение пинов, сборка и т.п.).
Аноним 23/02/19 Суб 13:15:22 357908706
>>357906
>можно докупить камеру D8M
Или берешь что-нибудь попроще вместо DE10. Приделываешь простейшие восьмиразрядные АЦП/ЦАП. Для получения частоты пикселов паяешь ГУН на варикапе и инверторах, на ПЛИС делаешь частотно-фазовый детектор и уже можно подключать аналоговую камеру типа видеоглазка, а результат смотреть на телевизоре. Или ты скажешь что без памяти хотя бы под один кадр ничего не сделать?
Аноним 24/02/19 Вск 02:12:01 357952707
>>357908
Где я обмолвился про память? Зачем делать усаревшее аналоговое говно, если за тебя поставили hdmi / mipi декодер? Ты наверное скажешь, что деграданство, всё за тебя поставили, тогда купи Zybo Z7 и ебись сам с декодером CSI2 и HDMI. Ну и сравнил ты конечно аналоговый глазок и 1080p30. Короче, не понимаю я твоей претензии и тезиса.
Аноним 24/02/19 Вск 09:57:06 357963708
>>357952
В начале речь шла про обучение >>357748 Потом тот анон упомянул о деньгах >>357758
Вот я и написал, как можно сильно сэкономить и получить тот же опыт. Разница в стоимости раз в 5 получится, для кого-то это может быть весьма существенно. К тому же в комплекте получишь АЦП/ЦАП, на которых что-нибудь еще можно будет сделать.

>mipi
>CSI2
Это в основном для игрушек. В "нормальных" камерах чаще используется Camera Link или ethernet.
>устаревшее аналоговое говно
Может оно устарело, но еще долго будет использоваться из-за того что дешевле. В том числе коаксиальный кабель дешевле и его проще соединять, если нужно тянуть на десятки/сотни метров то получится существенная экономия.
>аналоговый глазок и 1080p30
Зачем вообще для обучения нужна камера с большим разрешением? Можно взять аналоговый глазок с AHD, если жить не можешь без чуть большего разрешения.
Аноним 25/02/19 Пнд 01:14:31 358030709
>>316943 (OP)
Блять, асм и машинные коды это одно и тоже.
Аноним 25/02/19 Пнд 11:04:54 358057710
>>358030
Нет. В асме есть мнемоники, макросы, дефайны, т.е фишечки которые облегчают написание и чтение кода человеку.
А машинный код это уже непосредственно содержимое памяти программ.
Аноним 25/02/19 Пнд 13:52:57 358072711
>>358057
Да. Ты же не будешь спорить, что каждая команда асма означает отдельную операцию в машинном коде? Всегда писали на асме(по сути, на машинном коде), только если раньше мнемоники заменяли по справочникам, сейчас мнемоники заменяет компилятор машинным кодом простой заменой.
Аноним 25/02/19 Пнд 13:58:42 358075712
>>317040
>Похуй на зп, пока твой мозг пропитан говном и юношеским максимализмом, со временем это пройдет, но чтоб не было поздно я дал тебе бесплатный совет - просто сравни количество вакансий и вилку зп на hh.ru по fpga и java и все поймешь.
Cравнил.
По ПЛИС - 60 вакансий.
По микроконтроллерам - в 3 раза больше вакансий.
По джаве - в 39 раз больше вакансий.
Но, имхо, ты не учитываешь, что на джаве и конкуренция будет больше человек на место, и срок твоей работы будет меньше(каждый год выпускают новые обновления и фреймворки) и в 30-40 лет ты рискуешь быть выплюнутым на улицу, когда тебя заменят молодым стремящимся джуниором.
Аноним 25/02/19 Пнд 15:30:13 358081713
IMG201902251523[...].jpg 433Кб, 1280x960
1280x960
Аноним 25/02/19 Пнд 15:39:02 358083714
>>358072
>что каждая команда асма означает отдельную операцию в машинном коде?
Тебе тот анон выше писал же:
>макросы, дефайны
Они вовсе не так тупо подставляются. Например, какой отдельной операции в машинном коде соответствуют в GNU ассемблере вот такие строки:
>.section .text
>.equ FLASH_BASE, 0x40022000
>.set i,0
>.rept 256
и прочие директивы? В некоторых ассемблерах, вроде как, макросы вообще полны по Тьюрингу. Соответственно там на макросах можно хоть компилятор сишечки сделать.
Аноним 25/02/19 Пнд 15:40:08 358084715
>>358075
>не учитываешь, что на джаве и конкуренция будет больше человек на место
Вообще не факт.
>>358075
>в 30-40 лет ты рискуешь быть выплюнутым на улицу, когда тебя заменят молодым стремящимся джуниором
А с fpga типо не так? В любой сфере, если сидеть на жепе ровно уйдешь на свалку.
Аноним 25/02/19 Пнд 17:04:29 358089716
>>317040
>но чтоб не было поздно я дал тебе бесплатный совет - просто сравни количество вакансий и вилку зп на hh.ru по fpga и java и все поймешь.
Джава когда-нибудь помрет, а за FPGA по мнению некоторых людей будущее следующих 20-30 лет. Я сам джавист, если что.
Аноним 25/02/19 Пнд 17:33:32 358090717
>>358089
>Джава когда-нибудь помрет
Ей это пророчат уже хуй знает сколько. Я еще в школу ходил, так говорили, а сейчас эта джава в каждом утюге, но находится кто-то кто повторяет эту мантру.

>за FPGA по мнению некоторых людей будущее следующих 20-30 лет
Не нужно слушать всякие вангования, 640 КБ хватит всем, ололо нужно заниматься тем, что востребовано здесь и сейчас и за что платят деньги.

> Я сам джавист, если что
Работал ли ты фпгашником? Ты хоть понимаешь в какое болото ты зазываешь людей?
Аноним 25/02/19 Пнд 18:08:50 358091718
>>358090
>Работал ли ты фпгашником? Ты хоть понимаешь в какое болото ты зазываешь людей?
Нет, не работал. Расскажи.
Мне нравится системное программирование и железо, но я работаю бэкэндером, потому что это востребовано и мне платят за работу здесь и сейчас.
Аноним 25/02/19 Пнд 18:20:37 358092719
>>358084
>>не учитываешь, что на джаве и конкуренция будет больше человек на место
>Вообще не факт
Не знаю как на джаве, а плисоводов по отношению к прогерам сильно меньше, потому они всегда в дефиците, хотя при этом им и не доплачивают. Ну и плисовод всегда может стать джава-кодером, а вот на оборот сильно навряд ли.
>А с fpga типо не так?
По большей части не так. Всё зависит от решаемых задач.

>>358090
>нужно заниматься тем, что востребовано здесь и сейчас и за что платят деньги.
Какое-то потребительское у тебя отношение.
Аноним 25/02/19 Пнд 18:31:31 358093720
>>358092
>>358091
Это все конечно хорошо, но почему вдруг подняли тему годовалой давности!? И что интересно это совпало по времени с этим >>358030
Такое впечатление, будто в тред зашел какой-то анон из /pr/ только лишь затем, чтобы написать какой-нибудь ерунды.
Аноним 25/02/19 Пнд 19:14:30 358094721
>>358091
>Нет, не работал. Расскажи.
Вот тут в общих чертах специфика >>355025
Основная проблема в том, что 99% вакансий это околооборонка со всеми вытекающими.

>>358092
>Ну и плисовод всегда может стать джава-кодером, а вот на оборот сильно навряд ли.
Не соглашусь, это работает в обе стороны. Бывает накодируюсь на hdl, появляется программерская задача и я сажусь туплю, пока не переключу мозг на парадигмы программирования. Аналогично и программисты не сразу осваивают hdl, но в итоге осваивают!
На хабре попадался проект - эмулятор какой-то консоли, так вот его запилил человек, который до этого не имел дело с FPGA.

>Какое-то потребительское у тебя отношение
Нужно зарабатывать на жизнь, кормить семью. А если у тебя лежит душа к плисоёбству никто не запрещает пилить свой pet project.
Аноним 25/02/19 Пнд 20:06:27 358097722
>>358094
>Аналогично и программисты не сразу осваивают hdl, но в итоге осваивают!
Далеко не все. Многие так привыкают к тому что инструкции исполняются последовательно, что просто не могут в параллельные процессы на ПЛИС. + к этому всякие гонки сигналов в КС, межклоковые переходы и прочие специфические вещи.

>никто не запрещает пилить свой pet project
Разъясни.
Аноним 25/02/19 Пнд 21:59:03 358103723
>>358093
>в тред зашел какой-то анон из /pr/
Ты меня сейчас оскорбил, сравнив я джава-быдлом и веб-макаками. Я мк-бог, вообщето.
Аноним 26/02/19 Втр 08:56:06 358123724
>>358097
>Многие так привыкают к тому что инструкции исполняются последовательно, что просто не могут в параллельные процессы на ПЛИС.
Двачаю, в микроконтроллерах примерно также. Джава программисту будет трудно понять, как одновременно работают 4 таймера, 2 канала uart, ацп и цап.
Аноним 26/02/19 Втр 09:14:42 358125725
>>358123
Чего там понимать-то? Не преувиличивай. По сути мк это как два пальца об асфальт. Просто мозги надо освежать во время, а то начнешь тормозить.
Аноним 26/02/19 Втр 09:44:31 358135726
>>358123
Просто несколько девайсов на кристалле работают одновременно.
Аноним 26/02/19 Втр 10:14:44 358137727
>>358092
>они всегда в дефиците, хотя при этом им и не доплачивают
Это значит, что нет никакого дефицита. Их меньше, но задач для них ещё меньше.
Аноним 26/02/19 Втр 10:39:33 358139728
>>358125
Чувак просто немного ограниченный задрот.
Аноним 26/02/19 Втр 11:18:25 358142729
>>358097
>Многие так привыкают к тому что инструкции исполняются последовательно, что просто не могут в параллельные процессы на ПЛИС.
А как же многопоточные приложения?
>к этому всякие гонки сигналов в КС, межклоковые переходы и прочие специфические вещи.
Ну согласись, никакой высшей математики в этом нет. Достаточно придерживаться ряда элементарных правил и все будет работать как в симуляторе.

>>никто не запрещает пилить свой pet project
>Разъясни.
А что разъяснять - работаешь с той технологией за которую больше платят, а в свободное время пилишь то что тебе интересно, например FPGA.
Аноним 26/02/19 Втр 13:31:29 358172730
Аноним 26/02/19 Втр 14:14:34 358179731
Аноним 26/02/19 Втр 17:22:19 358207732
>>358179
Очень плохой совет. На алиэкспрессе оно стоит 13140,04 руб, в электронщике 14540 рублей, а терасик продает их по $150. Наверняка напрямую у терасика будет намного выгоднее, даже с учетом доставки. Даже если покупать в диджикее и везти через посредников, и то дешевле будет чем с алиэкспресса.
Но я бы не советовал покупать эту плату. ПЛИС мелкая, память снаружи тоже мелкая приделана. VGA там и то через R-2R сделан. Даже HSMC нет. Китайцы продают аналогичные платы намного дешевле. За те же деньги китайцы продают плату с XC7K420T, там LE/LC в 10 раз больше чем в циклоне на плате DE0-CV.

>>358142
>pet project
Если не секрет, то что-нибудь интересное на ПЛИС сделал?
Аноним 26/02/19 Втр 18:08:35 358217733
>>357963
Что ты имеешь в виду под нормальной камерой? MIPI CSI-2 это интерфейс сенсора так же как и LVDS, а то что ты назвал. это интерфейс передачи данных по на расстояние с готовой камеры. Я как такой тезис могу сказать, говно этот ваш камерлинк, вот 12G-SDI тема. Не путай квадратное с мягким.
Никто не делает приёмник видеосигнала с камер на ПЛИС, делают камеры, в которых ПЛИС принимает и обрабатывает сигнал с сенсора, а потом заганяет в этот ваше эзернет/sdi/AHD хоть сожми и по i2c отправляй
Аноним 26/02/19 Втр 18:10:40 358218734
>>358090
Я работаю, ДС-2, мидл, 100к в месяц, зависимость есть.
Аноним 26/02/19 Втр 18:51:35 358223735
>>358137
Скорее наоборот, от того что плисоводов мало то и задач решаемых с помощью ПЛИС мало. Там где можно применить ПЛИСину суют МК и городят на нём огород.

>>358142
>А как же многопоточные приложения?
Если правильно помню, то они между собой согласуются через какие-то семафоры, светофоры. Это не то же самое. Команды в программе всё равно исполняются последовательно. Да, и в МК есть таймеры, ЦАПы, АЦП и прочая периферия которая работает параллельно. Но там она есть как данность. А когда возникает необходимость самому наделать счётчиков, регистров, автоматов, которые все должны работать одновременно и согласованно, то тут у многих начинается затык. Несколько раз видел как прохеры несмогя в HDL пытаются перейти на Ниос, который чтобы запустить тоже нужно постараться, но соснув и в этом, бросают изучение ПЛИС вообще.

> работаешь с той технологией за которую больше платят
Много платят элитным гей-шлюхам. Не то чтобы я был в курсе, просто предполагаю. Так чтож теперь, в гей-проституцию податься чтоле?
Аноним 26/02/19 Втр 18:53:01 358224736
>>358217
>вот 12G-SDI тема
Ты поди его сначала запусти.
Аноним 26/02/19 Втр 18:56:46 358225737
>>358217
>Никто не делает приёмник видеосигнала с камер на ПЛИС
Зачем брать "сенсор" не для встраиваемых систем? Что мешает сделать в отдельной коробке устройство обработки на FPGA, к которому будут подключаться готовые камеры?

Значит, если делать обработку видео на FPGA, то непременно нужно брать отдельно матрицу, разрабатывать для нее корпус, выбирать объектив и прочее?

>сенсор
Не стал бы я такое называть сенсором. Ладно еще КМОП или ПЗС матрицу так назвать. Но у тебя готовая камера, уже с объективом.
Кстати, а ты хоть в курсе что все матрицы сами по себе аналоговые? Конечно бывают матрицы с АЦП на одном кристалле, но сама матрица все равно аналоговая.
Аноним 26/02/19 Втр 19:03:41 358226738
>>358217
>ПЛИС принимает и обрабатывает сигнал с сенсора, а потом заганяет в этот ваше
Но зачем для этого ПЛИС? Какой-нибудь микроконтроллер cypress вполне справится, да еще потреблять меньше будет.
>sdi/AHD
Тем более ПЛИС ни к чему, с ПЗС матрицы и так аналоговый сигнал идет, только синхры подавай.
Аноним 26/02/19 Втр 20:18:34 358236739
>>358226
А если тебе нужен нестандартный алгоритм обработки сигнала (какой-нибудь хитрый билатеральный фильтр или нелинейная интерполяция), то ты жиденько обосрёшься
> ПЗС
только для небольшого разрешения или небольшого фреймрейта, ограничение на скорость переноса заряда (~100 МГц)
> sdi
> аналоговый сигнал
норкоман чтоле

>>358225

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

>сенсор

У нас называют ПЗС-матрица или КМОП-сеноср, т.к. ПЗС уже лет 5 не используем, то употребляем "сенсор"
Аноним 26/02/19 Втр 20:41:12 358239740
>>358236
Это все хорошо. А теперь задумайся, кто, где и зачем использует камеры, которые делают "у нас в компании"? Думаешь обработка на этом закончилась?
Аноним 26/02/19 Втр 20:45:55 358241741
>>351727
Вы пытаетесь сделать свой микроконтроллер? Зачем, если уже есть готовые?
Аноним 26/02/19 Втр 20:48:09 358243742
>>358135
>>358125
Вот, плис тоже как два пальца об асфальт. Просто несколько девайсов работают одновременно. Даже веб-макака с этим говном разберется.
Аноним 26/02/19 Втр 20:56:02 358244743
Аноним 26/02/19 Втр 20:58:04 358245744
Аноним 26/02/19 Втр 22:47:54 358256745
>>358244
мимо
>>358239
Не понимаю к чему ты это, я знаю что такое хост-сайд обработка. Но у нас предметом обсуждения было, что на ПЛИС вообще ничего обрабатывать не надо, и можно гнать сырой сигнал с сенсора.
Аноним 28/02/19 Чтв 13:11:56 358452746
>>358207
>Если не секрет, то что-нибудь интересное на ПЛИС сделал?
Не, у меня перманентное творческое полшестого после 25 началось.
Вообще нет идей, если предложишь свои буду благодарен!
Аноним 28/02/19 Чтв 15:46:10 358456747
>>358207
> Наверняка напрямую у терасика будет намного выгоднее, даже с учетом доставки
У него таки появилась доставка? Или как было FedEx only, так и осталось?
Аноним 02/03/19 Суб 00:27:09 358615748
Аноним 02/03/19 Суб 01:19:40 358618749
>>358452
А что ты можешь сделать?
Аноним 02/03/19 Суб 05:52:21 358625750
>>358615
Где взять полное и точное описание архитектуры?
Аноним 02/03/19 Суб 07:54:35 358628751
Аноним 02/03/19 Суб 08:00:48 358629752
В CPLD умеешь?
Аноним 02/03/19 Суб 12:55:25 358672753
Аноним 02/03/19 Суб 20:27:00 358720754
Тяжело будет вкатиться в ПЛИС, если ты специалист по программированию микроконтроллеров (AVR, PIC, STM, i8051)? И можешь в цифровую и аналоговую схемотехнику хотя бы на уровне Electronic Workbench(дешифраторы, триггеры, цап, аца и т.д.)?
Аноним 02/03/19 Суб 20:29:17 358721755
И где больше заработок - в микроконтроллерах(обычные мк и ARM), или в ПЛИС?
На хабре по плису в 3 раза меньше вакансий.
Аноним 03/03/19 Вск 01:45:04 358750756
>>358720
>дешифраторы, триггеры
Это основное что нужно знать. Есть ещё автоматы Мили и Мура, их бы тоже желательно.
Аноним 03/03/19 Вск 11:15:53 358773757
>>358721
>в микроконтроллерах(обычные мк и ARM), или в ПЛИС?
Что мешает знать и то и то?

>На хабре по плису в 3 раза меньше вакансий.
>На хабре
>вакансий
Да ну?
Аноним 03/03/19 Вск 12:57:29 358791758
>>358773
>Что мешает знать и то и то?
ПЛИС вроде намного сложнее...
Аноним 03/03/19 Вск 12:59:45 358793759
Безымянный.png 41Кб, 821x705
821x705
>>358773
>>На хабре
>>вакансий
>Да ну?
Аноним 03/03/19 Вск 18:55:49 358829760
>>358721
>обычные мк и ARM
Теперь я вместе с ARM, он необыкновенный! Он МК отменный, молюсь я на него!

>>358791
Все одновременно в голове не поместится?
Вообще-то часто используют софт-процессоры (microblaze, nios), еще бывают FPGA с готовыми процессорами, такие как Zynq и Cyclone V.
Сложность зависит от того что именно делать. Можно делать что-то простое на FPGA, например набор согласованных фильтров, которые будут занимать много места, но будут просты по своей структуре. Или кто-то пишет (к примеру) linux (uclinux) какой-нибудь, который вполне работает на микроконтроллерах. Поэтому в этом контексте о сложности говорить нет смысла.
Аноним 03/03/19 Вск 21:06:26 358835761
Я вот вкатился в разработку ПЛИС, прочитал статью на хабре https://habr.com/ru/post/281525/, прочекал все пункты и теперь работаю, вроде всё норм, но вот иногда вылезает незнание некоторых основ. Например ВНЕЗАПНО оказалось, что плис не сохраняет прошивку и ей надо ещё ПЗУ для хранения прошивки. Где можно прочитать про такие не очевидные вещи для новичков (я хоть уже не новичок, но этого я не знал). Ещё хочу разобраться с синтезом и разводкой, когда и какие настройки компилятора использовать, сейчас оставляю всё по умолчанию.
Аноним 03/03/19 Вск 21:38:59 358841762
>>358835
>Где можно прочитать про такие не очевидные вещи для новичков (я хоть уже не новичок, но этого я не знал). Ещё хочу разобраться с синтезом и разводкой, когда и какие настройки компилятора использовать, сейчас оставляю всё по умолчанию.
https://www.youtube.com/playlist?list=PL4UMfOeGYsvZTAJkgY3XfsrFyK1laAchO
Аноним 03/03/19 Вск 22:03:54 358844763
>>358835
>надо ещё ПЗУ для хранения прошивки
Можешь взять MAX 10, у которых ПЗУ внутри. Если конечно их хватит по объему.

>прочекал все пункты
А я из всего того не знаю SystemVerilog и по верификации маловато знаю и умею.
>я хоть уже не новичок, но этого я не знал
Это сильно. То есть не открывал device handbook (user guide). Да это вообще в любом учебнике написано, хоть у Зотова. По моему без таких базовых знаний ничего внятного сделать не получится. Возможно даже что ты проебал просто основы цифровой электроники, все эти элементы Пирса, триггеры всякие там.
Аноним 04/03/19 Пнд 04:33:12 358861764
>>358844
>А я из всего того не знаю SystemVerilog и по верификации маловато знаю и умею.
Я знаю Verilog. Мне кажется особой разницы нет на каком языке писать. Но вот понимать что написано на других языках это надо обязательно - мне пару раз приходилось доделывать чужие проекты, один на VHDL. другой на AHDL.
>>Это сильно. То есть не открывал device handbook (user guide). Да это вообще в любом учебнике написано, хоть у Зотова. По моему без таких базовых знаний ничего внятного сделать не получится. Возможно даже что ты проебал просто основы цифровой электроники, все эти элементы Пирса, триггеры всякие там.
Ну основы цифровой электроники, думаю, у меня более-менее норм.
Аноним 06/03/19 Срд 15:23:59 359104765
Аноним 06/03/19 Срд 18:33:31 359113766
Аноним 07/03/19 Чтв 04:25:07 359150767
>>359113
>INTEL
Я не понимаю...
Вроде логических ячеек и встроенной памяти у леттиса даже чуть побольше, максимальные частоты тоже сопоставимы. Но мне не верится, что такая ПЛИС может стоить 10 баксов. В чем подвох? Или интел тупо просит охрененный оверпрайс? Или это невиданая щедрость от леттиса?
Аноним 07/03/19 Чтв 16:12:10 359180768
Аноним 07/03/19 Чтв 17:00:02 359182769
>>359180
>Скоко платят?
15 рублей.
Аноним 07/03/19 Чтв 17:02:18 359183770
>>359180
Неа, я бы на хабр с таким не полез бы. Просто так как-то сложилось, что в начале, пока был нубом, я прошивал не понимая как вся система в целом работает, а потом попадались чипы со встроенной памятью. А вообще мне ПЛИС кажутся проще и лучше чем микроконтроллеры - всякие интрефейсы, которые перекрывают друг друга, ограниченное количество пинов и никакой параллельности, и всякие "указатели на указатель ссылки на указатель", библиотеки и тд. Вот почему все считают плис сложными? Вот у меня коллега сейчас решает задачу сбора данных одновременно с 3 АЦП. И городит какую-то хитровыебанную систему - типа микроконтроллер не может одновременно общаться по 3 spi + пара дополнительных сигналов на каждый АЦП. Вот с таким любая плис справится как нехуй делать
Аноним 07/03/19 Чтв 18:37:58 359184771
>>359183
>попадались чипы со встроенной памятью.
Да ну? Таких не особо много и по большей части это только совсем мелкие CPLD.

>>359182
Даже в мухосрансках чтобы получать меньше 30, это надо неполный рабочий день работать или пойти в ФГУП какой-нибудь.
Аноним 07/03/19 Чтв 18:48:37 359186772
>>359184
>неполный рабочий день работать
Может он хикка
Аноним 09/03/19 Суб 12:46:23 359281773
Какие есть универсальные инструменты для разработки под любую fpga?
Аноним 09/03/19 Суб 16:48:11 359301774
>>359281
Есть сторонние синтезаторы, есть симуляторы, но не более. Разводчики и ассемблеры у все свои.
Аноним 09/03/19 Суб 18:26:02 359312775
>>359301
Чем прошить такую плату? В чем писать код?

EP4CE6
Аноним 09/03/19 Суб 18:28:35 359313776
Аноним 09/03/19 Суб 20:28:28 359318777
>>359312
Писать код Quartus
https://www.youtube.com/playlist?list=PL4UMfOeGYsvZTAJkgY3XfsrFyK1laAchO

Прошивать
https://ru.aliexpress.com/item/Usb-Blaster-ALTERA-CPLD-FPGA-NIOS-JTAG-Altera/32832878130.html?spm=a2g0v.search0104.3.17.240834732XUrNe&ws_ab_test=searchweb0_0%2Csearchweb201602_8_10065_10068_319_317_10696_453_10084_454_10083_10618_10307_10301_537_536_10902_10059_10884_10889_10887_321_322_10915_10103_10914_10911_10910%2Csearchweb201603_61%2CppcSwitch_0&algo_pvid=b834e37b-3e65-4127-9743-8c90f968fffe&algo_expid=b834e37b-3e65-4127-9743-8c90f968fffe-2
Аноним 12/03/19 Втр 10:18:10 359510778
Сап, аноны. Играться в эмуляторе надоело, хочется железку, чтобы подключать к телику и т.д. Появилось ли сейчас что-нибудь более интересное уровня DE2-115 за те же деньги, или лучше взять ее?
Аноним 12/03/19 Втр 10:22:24 359511779
Аноним 12/03/19 Втр 10:34:48 359513780
>>359510
За такие деньги сейчас можно найти оригинальные девборды на вторых арриях и стратиксах, иногда даже новые (некоторое время назад видел на ибее новую альтеровскую плату на Arria II). Китайские платы - вообще на пятых арриях и седьмых кинтексах.
Аноним 12/03/19 Втр 11:03:41 359518781
>>359510
>подключать к телику и т.д.
Не можешь сам припаять несколько резисторов?
Аноним 12/03/19 Втр 12:42:10 359524782
>>359518
К эмулятору?

>>359513
На ebay только одна плата, и она pci-e, без кучи пинов. На алиэкспрессе не нашел.

У террасика есть DE10-Standard https://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=167&No=1081, у которой примерно столько же логических ячеек, но при этом она SoC. Почему она стоит дешевле DE2 https://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=139&No=502?
Аноним 12/03/19 Втр 13:09:26 359526783
Аноним 12/03/19 Втр 13:10:47 359527784
>>359524
>К эмулятору?
К любой плате, на которой нет видеовыхода. Чем тебе не нравится https://ru.aliexpress.com/store/product//620372_32834526999.html ?
Для начала так вполне нормально.

>столько же логических ячеек
У тебя уже есть идеи на что применить все эти ячейки? А "про запас" не стоит брать.
>Почему она стоит дешевле DE2
Примерно по тем же причинам, по которым память DDR4 стоит дешевле чем DDR2 того же объема.
Аноним 12/03/19 Втр 14:50:16 359533785
ScreenshotChrom[...].png 309Кб, 1080x1920
1080x1920
>>359524
>На ebay только одна плата, и она pci-e, без кучи пинов. На алиэкспрессе не нашел.
Никто не говорил, что они там есть в любой момент времени. Надо постоянно мониторить.
Вот, например, плата на Arria V на Али.
Аноним 12/03/19 Втр 18:12:39 359541786
>>359510
>ли лучше взять ее?
А ты как с доставкой вопрос решать будешь?
Аноним 12/03/19 Втр 18:27:21 359543787
>>359524
> примерно столько же логических ячеек,
Куда тебе столько? https://wfjm.github.io/home/w11/impl/#h_systems

>>359527
> Чем тебе не нравится https://ru.aliexpress.com/store/product//620372_32834526999.html ?
Тем, что можно добавить 20 баксов и взять вариант с SDRAM? https://www.aliexpress.com/store/product//620372_32780729361.html

А за 60 баксов можно взять вот такие наборы:
https://www.aliexpress.com/store/product/EP4CE22F17C8N-board/620372_32859908966.html
https://www.aliexpress.com/store/product/TFT-320X240-EP4CE15F17C8N/620372_32803512580.html
Аноним 12/03/19 Втр 19:35:35 359546788
>>359543
>Тем, что можно добавить 20 баксов и взять вариант с SDRAM?
Так ли нужна эта память? К примеру, для ЦОС обычно не нужна.
>А за 60 баксов можно взять вот такие наборы:
Но стоит ли? Если потребуется, то несколько резисторов можно припаять самостоятельно. Для чего все эти свистелки и перделки нужны? Лишь для таких игрушек, как по твоей первой ссылке. Если делать что-то другое, то все это будет только мешать.
Аноним 12/03/19 Втр 21:33:09 359556789
>>359546
> Так ли нужна эта память?
Ну так >>359510 не сказал же, зачем ему ПЛИС. Может он хочет одноплатник, с горилкой и хохлушками забабахать?

> Для чего все эти свистелки и перделки нужны?
Именно для того, чтобы не припаивать резисторы и ебаться с макетками на первых порах, когда всё что тебе хочется это подрочить светодиодами и VGA-выходом на мониторе.

> Если делать что-то другое
То мезонин с плисиной ПРОСТО снимается. Единственная засада: там разъёмы хоть и обычные двухрядные гнёзда, но с метрическим шагом (два миллиметра).
Аноним 12/03/19 Втр 23:44:16 359564790
>>359556
Вот именно. Поэтому то что ты предлагаешь не лучше и не хуже. Это для тех кому обязательно нужно что-то вывести через VGA и при этом лень припаять несколько резисторов.
Аноним 13/03/19 Срд 00:24:04 359566791
>>359564
>припаять несколько резисторов
Получив тем самым всего 4 цвета.
Аноним 13/03/19 Срд 01:14:03 359571792
>>359566
Нет. Там три канала (RGB). Если по одному биту на канал, то будет 2^3=8 комбинаций, т.е. 8 цветов. Потом на обсуждаемых китайских платах стоят R-2R (или что-то вроде того) из нескольких резисторов, которые тоже не много цветов дают. Причем так сделано не только у этих китайцев, например на Nexys 3 и Nexys 4 (по первой ссылке в >>359543) аналогично.
Если нужно больше цветов, то необходимо ставить ЦАП. Не целесообразнее ли в таком случае перейти на HDMI?
Аноним 13/03/19 Срд 01:56:13 359581793
Screenshot2019-[...].png 76Кб, 745x562
745x562
>>359564
> лень припаять несколько резисторов.
Не ленью единой. В нашем Мухосранске-Таёжном такие (как у Zeowaa или WaveShare) наборы лучше тем, что все равно любую мелкую пиздюрку приходится заказывать с большой земли, так что для экспериментов и освоения удобнее брать всё сразу и в сборе.

>>359571
> Потом на обсуждаемых китайских платах стоят R-2R (или что-то вроде того) из нескольких резисторов,
И китайца там хитрее. Простейший ЦАП со взвешенными резисторами, но вместо отдельных резисторов сборки с разным включением (пикрелейтед).

> которые тоже не много цветов дают.
Ну хуйЪ его знает. По мне так HighColor для домашних поделок вполне достаточно.

> Не целесообразнее ли в таком случае перейти на HDMI?
Там другая проблема. Частоты такие, что дешёвые камни уже зашиваться начинают (для паршивого 640x480 потребуется гнать сигнал с частотой 250 МГц).
Аноним 13/03/19 Срд 07:53:36 359587794
>>359581
>HighColor
Еще не факт что оно там будет. Какая там реально точность резисторов? А какая точность выходного напряжения FPGA?
>Частоты такие, что дешёвые камни уже зашиваться начинают
Поставить SERDES никак?
Аноним 16/03/19 Суб 00:48:12 359779795
ПЛИСаны, читаю тут додревние (2005 год) «ALSE's VHDL Design Rules & Coding Style». И не могу понять, почему они пишут следующее:
>RTL : Use as few variables as possible in synthesizable code, and never when you may use signals instead. Use variables for their specific behavior (factoring, intermediate results, re-using the FlipFlops inputs etc..).

Это какие-то особенности тогдашнего железа или что-то более фундаментальное?
Аноним 16/03/19 Суб 09:23:03 359796796
>>359779
Соблюдение этой рекомендации предотвратит увеличение комбинационных схем (т.е. увеличение задержек) и появление латчей. Почему это необходимо? Потому что структура ПЛИС такая, желательно почитать об этом отдельно.
Аноним 16/03/19 Суб 10:32:38 359800797
>>359779
Это для лучшего понимания, где находится комбинационная логика, а где секвенциальная, больше ни для чего. Это не совет ставить как можно меньше регистров, это совет писать так, чтобы было ясно, имеется ли в виду тут у тебя регистр в железе, или ты комбинационную логику в несколько действий описываешь.
Аноним 21/03/19 Чтв 01:45:19 360084798
Поясните за циклы.
Написал я тут извращённым способом счётчик, знаю, можно намного проще написать.

module Count(output reg [3:0]counter, input incr, input clk);
   reg [3:0]carry;
   always @(posedge clk)
   begin
      integer i;
      for(i = 0; i < 4; i = i + 1)
      begin
         if(i == 0)
         begin
            if(incr) counter <= !counter;
               else counter <= counter;
            carry = incr & counter;
         end
            else
            begin
               if(carry[i-1]) counter <= !counter;
                  else counter <= counter;
               carry = carry[i-1] & counter;
            end
      end
   end
endmodule

Вопрос, собственно, по цепи переноса carry. Он объявлен как reg, в списке чувствительности указан тактовый сигнал, а значит этот carry должен быть регистром. Ан нет! По какой-то неведомой причине он стал комб. логикой. А если заменить присвоения с = на <=, то он таки становится регистром. У меня есть догадки, но хочется послушать ваши версии.
Аноним 21/03/19 Чтв 01:49:58 360085799
>>360084
Квадратные скобки сожрало
>if(carry[i-1]) counter <= !counter;
>      else counter <= counter;
>carry = carry[i-1] & counter;

if(carry[i-1]) counter[ i ] <= !counter[ i ];
    else counter[ i ] <= counter[ i ];
carry = carry[i-1] & counter[ i ];
Аноним 21/03/19 Чтв 08:09:45 360092800
>>360084
reg в верилоге это не регистр в железе, а переменная, которой можно присваивать значение в секвенциальном блоке. В зависимости от того, когда используется его значение, в текущем такте или следующем, он синтезируется или в комблогику, или в регистр.

Смешивать "=" и "<=" в одном блоке — это хуёвый стиль, не делай так.

Когда ты гадаешь, ставить ли "=" или "<=" — значит, ты сам не понимаешь, что ты пишешь. Ты должен мысленно представить железо, которое описываешь, и, если ты понимаешь принципы синхронного дизайна, то вопросов не возникнет, какие там присваивания используются.
Аноним 21/03/19 Чтв 10:00:34 360099801
>>360085
>carry = carry[i-1] & counter[ i ];
Какой это имеет смысл, еще в цикле к тому же?
Аноним 21/03/19 Чтв 12:47:03 360105802
>>359541
Попросил занизить стоимость, чтобы не растомаживать. Доставка FEDEX $57.96
Аноним 21/03/19 Чтв 20:18:27 360136803
image077[1].png 7Кб, 1172x524
1172x524
>>360092
>Когда ты гадаешь, ставить ли "=" или "<=" — значит, ты сам не понимаешь, что ты пишешь. Ты должен мысленно представить железо, которое описываешь, и, если ты понимаешь принципы синхронного дизайна, то вопросов не возникнет, какие там присваивания используются.
Как выглядит счётчик в железе я прекрасно представляю.

>Смешивать "=" и "<=" в одном блоке — это хуёвый стиль, не делай так.
А ты попробуй напиши не смешивая. Только не counter <= counter + 1'd1; , а через цикл. Вся загвоздка сформировать комбинационную цепь переноса.

>>360099
>Какой это имеет смысл, еще в цикле к тому же?
Формирует цепь переноса - цепочку из элементов И, смотри на пике.
Аноним 21/03/19 Чтв 20:45:09 360139804
>>360136
>Как выглядит счётчик в железе я прекрасно представляю.
Тогда ты не понимаешь чем отличается блокирующее присваивание от не блокирующего.
>цепь переноса
Это просто конъюнкция всех предыдущих разрядов. Цепью переноса такое называть не стоит.

>А ты попробуй напиши не смешивая.
Элементарно, в одном блоке параллельный регистр, в другом комбинационную логику. Или можно сделать сложение в функции.
>Формирует цепь переноса - цепочку из элементов И, смотри на пике.
И нифига, оно так не работает. Или у тебя что-то проебалось. Потому что это запишет в carry только нулевой бит, а остальные обнулит.
Аноним 21/03/19 Чтв 21:12:33 360142805
>>360139
>Тогда ты не понимаешь чем отличается блокирующее присваивание от не блокирующего.
Понимаю, просто по другому не напишешь, наверное, потому и пришёл сюда рассказать что солнце встало.

>Цепью переноса такое называть не стоит.
Вполне себе. Ибо её выход указывает инвертироваться разряду или нет.

>Элементарно, в одном блоке параллельный регистр, в другом комбинационную логику.
Нет, ну ты попробуй.

>И нифига, оно так не работает.
Кто? Счётчик на пике, или код? Схема счётчика классическая, не может не работать. Код тоже рабочий, можешь проверить.
Аноним 21/03/19 Чтв 23:03:07 360161806
Безымянный.png 39Кб, 1870x642
1870x642
>>360142
>Нет, ну ты попробуй.
Готово.
>Вполне себе.
В русскоязычной литературе цепью переноса обычно называют другое. Так что нет. Цепь переноса — это как в сумматорах например.
>Код тоже рабочий, можешь проверить.
Может и рабочий, но в той строке у тебя написан бред.
Аноним 21/03/19 Чтв 23:19:28 360164807
>>360161
>Цепь переноса — это как в сумматорах например.
А тут, инвертируем текущий разряд если все предыдущие установлены в единицу. Те же яйца, только в профиль.

>Может и рабочий, но в той строке у тебя написан бред.
Для тебя может и бред, а для Квартуса нет, создаёт схему как на пике >>360136 , так что не надо тут вот этого.
Да и к тому же, чем твоё
comb_out[ i ] = comb_out[ i - 1 ] & cnt_out[ i - 1 ];
отличается от моего
carry[ i ] = carry[ i-1 ] & counter[ i ];

>Готово.
Не, ты именно в цикле создание и регистра и цепи переноса напиши.
Аноним 21/03/19 Чтв 23:30:59 360166808
>>360164
>Для тебя может и бред
Сейчас ты исправил, а был вот такой бред:
>carry = carry[i-1] & counter[ i ];
На что я тебе написал что у тебя либо из-за разметки что-то опять проебалось, либо ты написал совсем ерунду.

>Не, ты именно в цикле создание и регистра и цепи переноса напиши.
Да ну тебя, сам пиши всякую ерунду.
Аноним 22/03/19 Птн 01:03:08 360178809
>>360166
>Да ну тебя, сам пиши всякую ерунду.
То-то же.
Аноним 22/03/19 Птн 05:57:12 360189810
>>360164
>Не, ты именно в цикле создание и регистра и цепи переноса напиши.
Тебе cnt_out <= comb_out ^ cnt_out не нравится штоле? Ну замени на for (...) begin cnt_out[ i ] <= comb_out[ i ] ^ cnt_out[ i ]; end, легче станет?
Аноним 22/03/19 Птн 06:16:35 360191811
>>360178
Я даже не понимаю того что ты хочешь. На твой первоначальный вопрос уже ответили. Выше один анон написал, что не стоит смешивать последовательностную и комбинационную логику в одном блоке. Желательно писать так, чтобы легче было отличить где комбинационная логика, а где последовательностная. Вот я написал таким образом, а тебе все не так.
Аноним 22/03/19 Птн 07:27:06 360193812
.png 5Кб, 528x208
528x208
>>360164
>А тут, инвертируем текущий разряд если все предыдущие установлены в единицу. Те же яйца, только в профиль.
Вот нарисовал обобщенную схему счетчика или другого КА. По твоему выходит, что комбинационная логика в этой схеме это всегда цепь переноса?
Аноним 22/03/19 Птн 16:08:21 360252813
>>360189
Вот ты напиши. Увидишь какой пиздец получится.

>>360191
Я хочу сказать то, что написать счётчик подобным образом соблюдая все правила и рекомендации не получается.

>>360193
Ты нарисовал счётчик, как параллельный регистр с сумматором на входе. А есть философия построения счётчиков и различных регистров, как регулярных устройств, т.е. на основе элементарных блоков. Посмотри на пик >>360136 , замечаешь периодичность? Подставляя в конец ещё один такой каскад ты легко и просто наращиваешь разрядность. Я понимаю, что при наличии верилога это всё на хер не нужно, но тут вопрос больше академический.
Аноним 22/03/19 Птн 16:48:18 360256814
>>360252
>Ты нарисовал счётчик, как параллельный регистр с сумматором на входе.
Твоя схема вполне соответствует этой обобщенной схеме. Так что ты написал что-то не то.
Аноним 22/03/19 Птн 17:21:50 360259815
xynta0.png 61Кб, 647x736
647x736
xynta1.png 35Кб, 433x606
433x606
xynta2.png 26Кб, 1499x360
1499x360
>>360252
>Вот ты напиши. Увидишь какой пиздец получится.
И где твой бог теперь?
Аноним 22/03/19 Птн 17:39:01 360262816
>>360256
Один из вариантов, которые я написал, был в точ как у этого >>360259 кунчика.

>>360259
Вот смотри, дрогой мой кунчик. У тебя переменная i глобальная, т.е. видится из обеих блоков always, она общая. Тебя не смущает, что она инкриминируется по два раза за проход? Ведь каждом for стоит i = i + 1. Да работать будет, видимо компилятор хитрый и догадывается что мы от него хотим. Но то что ты предложил выглядит не менее сомнительным чем блокирующее присвоение вместе с блокирующим.


И ещё. В связи со всем этим у меня возник вопрос. Зачем вообще нужны циклы? Любой код можно написать не используя их. Могёте привести пример где без цикла нельзя было бы обойтись? Я говорю только про синтезируемый код, с тестбенчами там без них никак, это понятно.
Аноним 22/03/19 Птн 17:41:38 360263817
>>360262
>Тебя не смущает, что она инкриминируется по два раза за проход?
За проход чего?
Аноним 22/03/19 Птн 17:42:38 360264818
>>360262
>Я говорю только про синтезируемый код
И generate-блоков это тоже не касается. Только поведенческое описание.
Аноним 22/03/19 Птн 17:43:40 360265819
>>360263
За проход цикла, за одну итерацию.
Аноним 22/03/19 Птн 17:48:02 360266820
>>360265
Нет, потому что за один проход одной итерации цикла она инкрементируется один раз. А второй цикл проходится потом (и переменная перед входом в него сбрасывается в 0).
Аноним 22/03/19 Птн 18:03:42 360270821
>>360262
>Один из вариантов, которые я написал, был в точ как у этого >>360259 кунчика.
Что? То что нарисовано у тебя на схеме >>360136 полностью соответствует обобщенной схеме >>360193 Причем вне зависимости от того как писать код.

>Тебя не смущает
Нет. Потому что это так не работает. Цикл эквивалентен простому копипасту кода заданное количество раз. Это как макросы в Си. Хитрость компилятора вообще не при чем.

>Могёте привести пример где без цикла нельзя было бы обойтись?
Ну да, циклы всегда можно заменить копипастой. Так же как арифметические операции можно сделать через логические, а все логические можно сделать через NAND.
Аноним 22/03/19 Птн 18:21:30 360276822
>>360262
>Могёте привести пример где без цикла нельзя было бы обойтись?
У тебя есть N-мерный массив из 16-битных регистров, и тебе надо вывести их нулевые биты на N-битную шину.
Аноним 22/03/19 Птн 19:44:45 360287823
.
Аноним 23/03/19 Суб 00:16:29 360306824
Аноним 23/03/19 Суб 01:11:17 360307825
>>360105
Зачем взял на поиграться такую плату а не что попроще? Уже придумал проект, на который необходимо ~114480 LE? При том свистелки и перделки в DE2-115 не особо развесистые.
Аноним 23/03/19 Суб 01:34:51 360309826
>>360270
>Что? То что нарисовано у тебя на схеме >>360136 полностью соответствует обобщенной схеме >>360193
Да, согласен, если стереть границы блоков, то получется то же самое. Ну а тогда зачем ты противопоставил свою схему моей?

>Цикл эквивалентен простому копипасту кода заданное количество раз.
Дело не в копипасте, а в том как исполняется цикл. В принципе я удовлетворён ответом анончика >>360266 . Я просто залип на параллельным выполнением блоков always и тот факт, что эти циклы создают схему, а не исполняются в ней, вылетел у меня из головы.

>Ну да, циклы всегда можно заменить копипастой.
По моему утверждению любую комб. или регистровую схему можно написать в поведенческом описании кратко и ёмко без копипаст. А что нельзя, то можно реализовать generate-блоками в структурном описании, например как этот >>360276 случай. Т.е. получается циклы в поведенческом описании избыточны.
Аноним 23/03/19 Суб 02:55:09 360319827
Братцы-кролики, скажите плис, чем отличается casex от casez? В симуляции моделсим оба два ведут себя одинаково.
Аноним 23/03/19 Суб 04:32:44 360326828
>>360307
> Уже придумал проект, на который необходимо ~114480 LE?
Я как-раз нашёл подходящий: https://github.com/srg320/FpgaSnes Всё упихнули в 55 килоячеек третьего циклона, не считая STM32 на подтанцовке.
Аноним 23/03/19 Суб 08:24:35 360332829
>>360309
>Ну а тогда зачем ты противопоставил свою схему моей?
Потому что это не цепь переноса. Максимум в подобных схемах цепь переноса может быть частью схемы, но не схема целиком. Но при синтезе твоего кода для ПЛИС, никакой цепи переноса не получится. Или ты считаешь что при твоем коде (для четырехразрядного счетчика) LUT-ы в FPGA также соединятся в последовательную цепочку, как у тебя на схеме?

>Т.е. получается циклы в поведенческом описании избыточны.
Сделай тогда без цикла суммирование всех бит в шине, т.е. подсчет количества ненулевых бит. Такое может потребоваться например для вычисления кодового расстояния. Или можешь попробовать сделать КИХ фильтр с задаваемым параметром количеством умножителей.
Аноним 23/03/19 Суб 08:36:00 360333830
casetest.png 16Кб, 469x329
469x329
>>360319
Вот этим отличается.

>>360326
Что-то многовато, по моему хватило бы в несколько раз меньше, только памяти относительно много нужно. Но все равно непонятно зачем брать DE2-115, вон в этом треде аноны брали платы с кинтексами у китайцев. DE2-115 имеет смысл брать только ради HSMC.
Аноним 23/03/19 Суб 10:35:28 360342831
>>360319
Да ничем, лишь известно, что casex умеет корректно обрабатывать 1'bX помимо 1'b0, 1'b1 и 1'bZ. Никогда не использовал casez, всегда casex ставлю, разницы никакой, только ты точно знаешь, что если симулятор подсунет ему 1'bX, он не затупит.
Аноним 23/03/19 Суб 17:17:19 360382832
>>360332
>Или ты считаешь что при твоем коде (для четырехразрядного счетчика) LUT-ы в FPGA также соединятся в последовательную цепочку, как у тебя на схеме?
Да какая разница как схема размещается в ПЛИС, своей сути она от этого не меняет.
>Потому что это не цепь переноса.
Ну как же? Разряд счётчика инвертируется, другим словами к нему прибавляется единица, если все предыдущие разряды установлены в 1.
>Максимум в подобных схемах цепь переноса может быть частью схемы, но не схема целиком.
А это уже понятия относительные. Можно ли назвать часть схемы схемой? С какой очередной пещинкой кучу можно называть уже кучей. С каким выпавшим волосом человека можно назвать лысым.

>Сделай тогда без цикла суммирование всех бит в шине, т.е. подсчет количества ненулевых бит.
Ну как-то так, на скорую руку, можно наверно и по красивее сделать, но не суть. Суть в том, что удалось даже без генерейта обойтись.
module Test(input [7:0]B, output [3:0]Result);
wire [31:0]res;
assign Result = res[31:28];
AAA AAA[7:0](.num({res[27:0], 4'd0}), .B(B), .res(res));
endmodule

module AAA(input [3:0]num, input B, output [3:0]res);
assign res = num + B;
endmodule

В фильтрах не силён, но думаю, там ту же можно.
Аноним 23/03/19 Суб 17:18:21 360383833
>>360382
>\t
Это лишнее, это макаба так табуляцию преобразовала.
Аноним 23/03/19 Суб 17:38:18 360386834
Анон с китайской отладкой на EP4CE6/EP4CE10 и осциллом под рукой, замерь пожалуйста пульсации по питанию 2,5 вольта. Происходит какая-то хуйня. У меня на самодельной отладочной плате пульсации по 2,5 вольта 200 мВ частотой 40 кГц. Это PLL так срёт? Это происходит даже когда на плате отсутствует кварц.
Аноним 23/03/19 Суб 17:42:32 360387835
>>360382
Охуенный код. Осталось еще арифметические операции из него выкинуть и можно будет утверждать что арифметические операции в верилоге не нужны. Ну вот видишь, сам лучше всех все знаешь. Зачем тогда спрашивал?
Аноним 23/03/19 Суб 19:13:51 360394836
>>360387
>арифметические операции в верилоге не нужны
Так то для новичков действительно ими лучше не пользоваться. Так и одолевает соблазн поставить, скажем, арифметическое деление, а ведь какая при этом схема получается мало кто задумывается. А вот если попытаться сделать то же самое на логике сразу становится понятен масштаб бедствия и у же лишний раз подумаешь, а нужно оно это деление, или луче его обойти.

>Зачем тогда спрашивал?
Думал может всё таки найдётся такая ситуация где никак.
Аноним 23/03/19 Суб 20:49:37 360399837
>>360394
Как можно было ожидать чего-то другого? Такое можно еще через рекурсию сделать. Только с краткостью и понятностью кода от этого лучше не станет.
Какую-то ерунду спрашиваешь, сам себе отвечаешь...
Аноним 25/03/19 Пнд 12:27:52 360519838
Аноним 26/03/19 Втр 00:42:37 360599839
>>360333
>Вот этим отличается.
Зачем нужны оба, если одного casex достаточно?
Аноним 26/03/19 Втр 03:17:00 360606840
>>360599
Зачем нужен int, когда есть int16_t? Низачем, просто так сложилось исторически.
Аноним 26/03/19 Втр 04:17:38 360607841
>>358123
Начальник ты чё? Асинхронщина вовсю шагает по вебу же.
Миллисекундами меряться, и буферами трясти в хайлоаде тоже привычно е дело.
Аноним 26/03/19 Втр 06:06:18 360610842
Анончики, как написать и/о тайминг констрейнт для ног, к которым у меня нет никаких требований по быстродействию вообще? Например кнопка заходит на gpio, да мне поебать, как она там разведётся. Но тайминг репорт показывает на этом порту критическое предупреждение. Как вы пишете такие констрейнты, чтобы мозги не ебать ни себе, ни трассировщику? Xilinx Vivado.
Аноним 26/03/19 Втр 07:42:15 360614843
Аноним 26/03/19 Втр 08:42:35 360619844
>>358135
То, что они работают отдельно это простота, а вот как они взаимодействуют между собой, работая отдельно, это посложнее.
Аноним 26/03/19 Втр 09:52:38 360628845
>>360614
Перетекло из критикал в ворнинг в просто ворнинг. Ну, норм, наверное. Спасибо.
Аноним 26/03/19 Втр 21:34:40 360693846
Заводил кто isedsese2 \ 3 на непериодические входные клоки или это невозможно? (dqs ddr имею ввиду)
Аноним 27/03/19 Срд 10:27:49 360722847
>>360693
> непериодические
прервающиеся что ли?
Аноним 27/03/19 Срд 17:49:53 360743848
Аноним 28/03/19 Чтв 12:58:56 360791849
>>360743
пишешь декетор параллельной частоты, которой у тебя питается iserdese2 детектор работает на сильно большей частоте чем параллельная входная. Как только частота исчезает, увозишь iserdese2 в ресет
Аноним 28/03/19 Чтв 18:06:14 360835850
Аноним 28/03/19 Чтв 21:26:43 360849851
Аноним 28/03/19 Чтв 22:21:17 360853852
>>360791
>iserdese2
Эту клушу я заводил еще кое-как.
А вот с iserdese3 хуйня какая-то. Там внутренний фифо как-то очень уж непонятно для меня работает: я его отключаю, но всё равно инфу получаю слишком поздно и не с первой пачки 8 битов.
(Это всё еще на постоянной входной частоте и данных, для теста. А уж ожидать, что эта херота заведется на произвольном dqs - наивно. Эх, где же мой мемори интерфейс генератор...)
Аноним 28/03/19 Чтв 22:27:15 360854853
>>360791
Алсо.
>детектор работает на сильно большей частоте чем параллельная входная
Входная и так в ддр на 3ггц, куда уж гнать-то.
Аноним 29/03/19 Птн 04:38:18 360864854
>>360853
>Эх, где же мой мемори интерфейс генератор
А, кстати, где он? Чего бы просто его не поставить? Он же даже бесплатный без смс. Требуется сделать швабодную версию контроллера, что ли?
Аноним 29/03/19 Птн 06:57:51 360867855
>>360864
Нет, просто МИГ жестко привязан к пинам.
А плис уже разведена, и те пины заняты.
Аноним 29/03/19 Птн 10:53:15 360875856
Каких дешевых купленых cpld у вас мешок, для использования в разной мелкой несерийной хуите?

Из легко доступных сейчас.
Аноним 29/03/19 Птн 17:07:00 360897857
https://wiki.tauwasser.eu/view/MBC1

Зачем еще раз проверяется A(14) на 0
>RAM_CS_N <= '0' when (CS_N = '0' and A(14) = '0' and ram_enable_r = x"A")
если проверка была здесь?
>ram_enable_r_clk <= '0' when (A = "000" and WR_N = '0') else

Почем нельзя так?
>RAM_CS_N <= '0' when (CS_N = '0' and ram_enable_r = x"A")
Аноним 30/03/19 Суб 14:28:19 360947858
>>360854
ну я это для csi2 использовал, там частота 410 МГц была последовательная, соответсвенно 210 МГц с запасом хватало для стробирования параллельной байтовой
Аноним 30/03/19 Суб 14:39:51 360950859
Screenshot from[...].png 287Кб, 653x928
653x928
Screenshot from[...].png 80Кб, 838x244
838x244
>>360835
Вряд ли поможет для твоих 3 ГГц, но имей в виду.
Аноним 31/03/19 Вск 14:32:00 361110860
Аноним 31/03/19 Вск 23:06:32 361198861
>>360950
Это другой анон попросил сурсы, если что.
Тот, а не этот анон.
Аноним 02/04/19 Втр 08:17:59 361276862
systemc не обязательно учить? - устарел, мало где используется
Аноним 02/04/19 Втр 13:55:09 361331863
Плисаны, расскажите, как запускать симуляцию в альтере? Что-то я совсем потерялся, не приходилось использовать этот самый моделсим.

Что я делал:
1. Сконфигурировал в шквартус прайм ip-ядро.
2. Сгенерировал example design и тестбенч
3. Зашел в File -> Change Directory и указал путь к папке, в которой лежит скрипт для моделсима:
..my_project/my_design_0_example_design/sim/ed_sim/mentor/msim_setup.tcl
4. Tools -> Tcl -> Execute Macro через эту команду скормил скрипт из п.3
5. Скомпиллил либы (?) командой "com" в консоле ModelSim
Что дальше делать?
6.
Аноним 02/04/19 Втр 16:35:24 361338864
>>361276
Вообще не слышал, чтобы его использовали. Везде используют VHDL.
Аноним 02/04/19 Втр 17:39:39 361340865
>>361338
Сильное заявление
Аноним 02/04/19 Втр 18:00:26 361343866
>>361331
>Плисаны, расскажите, как запускать симуляцию в альтере?
Тебе в Альтере или в Молелсиме?
Аноним 02/04/19 Втр 18:10:36 361345867
>>361343
Как я понял из квартус прайм выпилили встроенный симулятор.
Аноним 02/04/19 Втр 18:31:47 361346868
>>361345
В Квартусе 9.1 всё ещё есть встроенный симулятор для Циклонов 1-3.
Если ты хочешь интегрировать МоделСим в Квартус, то качай МоделСим Альтера едишн. С ним намного проще.
Аноним 02/04/19 Втр 19:41:53 361362869
Аноним 02/04/19 Втр 19:52:23 361364870
>>361331
Сейчас бы в моделсиме делать когда есть Xcelium.
Аноним 02/04/19 Втр 20:17:09 361370871
>>361362
Ну хз, каким-то сложным путём ты пошёл.
В Квартусе жмёшь тулс - опшинс - ЕДА тул опшинс, указываешь в строчке МоделСим-Альтера путь до исполняемого файла МоделСима, тот что с расширением .ехе, не помню как называется и где точно лежит, на работе у меня всё это добро установлено, дома нет. Через диспетчер задач вычисли.
Далее создаёшь тестбенч с расширением *.vt, в нём создаёшь модуль верхнего уровня, можно пока оставить его пустым.
Далее в настройках проекта, ЕДА тул сеттингс в поле Тул нейм выбираешь МоделСим-Алтера, в поле НативЛинк сеттингс выбираешь Компил Тестбенч, нажимаешь на кнопку Тестбенчес, в появившемся окне указываешь свой вайл с тестбенчем который создал.
Далее в меню Квартуса жмёшь Тулс - ран симулейшен тул - ЕДА РТЛ симулейшен.

Если всё правильно, должен запустится МоделСим.
Аноним 02/04/19 Втр 21:50:54 361381872
Аноним 03/04/19 Срд 08:33:14 361402873
>>316943 (OP)
Наша организация подумывает о переходе с альтеры на зайлинкс, потому что их проще достать.
Сильно ли вивадо хуже/лучше квартуса? Наверное платина.
Из основного интересуют аналог схематика, сигналтапа и инсистема.
Аноним 03/04/19 Срд 09:18:00 361406874
>>361402
Схематик в вивадо хуже. Лучше все лепить в коде.
Ртл вью тоже не так красиво отрисовывается. В остальном вивадо более ламповая и по мне гораздо удобнее. Больше ip ядер, больше сообщество, ахуенный форум.
vio/ila дает на клыка этому вашему сигнал тапу да и в целом вивадо не такая глючная.
Аноним 03/04/19 Срд 09:23:31 361407875
>>361402
Инсистем это што?
Аноним 03/04/19 Срд 09:25:55 361408876
>>361406
>Схематик в вивадо хуже. Лучше все лепить в коде.
Ты "блок дизайн" имеешь в виду? Я, конечно, альтеровский вариант не пробовал, но "блок дизайн" — самая продуманная, отлаженная и приятная в использовании часть вивадо (за такой голый и убогий редактор кода я бы просто убивал).
Аноним 03/04/19 Срд 09:31:05 361410877
Кстати, слышал, в квартусе есть такая фигня под названием "адвайзор", запускаешь её, и она тебе показывает, какие части проекта дольше всего разводятся, где возникают затыки в имплементации, потом ты туда идёшь, добавляешь пару регистров, и всё работает. Есть аналоги такого для вивады? Список не уложившихся в тайминги сетей для этого мало подходит, там бывает, что хуёво написана одна часть, а не раскладывается по таймингам другая.
Аноним 03/04/19 Срд 10:15:41 361413878
>>361408
Да, именно его имел ввиду. У зайлинкса, например только недавно добавили возможность инстанцировать на блочный дизайн hdl-модули и эта фича работает криво. В альтере все ровно.
Еще не нравится, что у зайлинкса связи отрисовываются автоматически, нужно только указать точки соединения - в результате на крупных схемах получается каша.

Из положительных моментов вивады могу выделить ее фичу с подсказками - например тащишь AXI-шину и редактор подсвечивает возможные точки соединения.
Аноним 03/04/19 Срд 10:30:53 361416879
Поясните, вот тут в прошлом треде сидел анон из японии. Перечитывал я прошлый тред, а его посты удалены. Как так? Мочератор радача нами в одном треде сидел?
Аноним 03/04/19 Срд 10:58:23 361418880
>>361416
Вариантов много. Вероятнее всего — его айпишник был от какого-нибудь открытого прокси (потому что на харкаче запрещено постить с огромного количества зарубежных айпишников), потом с этого прокси шутники запостили спам/ЦП, и все посты с этим айпишником пошли под снос без разбору.
Аноним 03/04/19 Срд 11:10:24 361419881
А есть здесь обитатели fpga-конфы? Почему там такие токсики? Особенно des00 и doka - не встречал раньше такого раздутого ЧСВ.
Аноним 03/04/19 Срд 11:32:16 361425882
>>361419
Жена ебёт мозги за нищенскую зарплату, отыгрываются на тех, кто слабее.
Аноним 03/04/19 Срд 12:05:16 361429883
>>361425
У них там был опрос по ЗП согласно которому 90% чата получают больше 150к
Аноним 03/04/19 Срд 12:30:39 361436884
>>361429
"Ну и вы тоже говорите."
Аноним 03/04/19 Срд 17:28:25 361458885
>>361407
Это где можно константы изменять без рекомпила. И содержание рамок записывать/считывать.
Аноним 03/04/19 Срд 18:33:29 361461886
>>361419
>fpga-конфы
Что за конфа?
Аноним 03/04/19 Срд 18:37:59 361462887
>>361402
Чип-планер у Квартуса лучше в разы.
Сигнал-тап вообще небо и и земля.

>>361406
>vio/ila дает на клыка этому вашему сигнал тапу
Ой насмешил, садомит.
https://youtu.be/_wL5WAxNPrY
Аноним 03/04/19 Срд 19:05:15 361463888
>>361462
Давай по пунктам, чем сигнал тап лучше?
Аноним 03/04/19 Срд 20:08:32 361465889
>>361410
В виваде есть анализатор кода. Не помню как зовется.
Правда толку мало от него, раз он на мой говнокод всегда писал, что "ну короче заебимба".
Аноним 03/04/19 Срд 20:33:28 361466890
>>361463
Да хотя бы возможность задания сложной логики для синхронизации 1:16:45
Или даже создание целых автоматов для сложной составной синхронизации 1:26:55
И это не говоря о возможности подключить свой HDL-код.
Аноним 03/04/19 Срд 20:52:19 361467891
>>361466
Ну так то первые два пункта в виваде есть, хотя и реализовано по другому
Аноним 03/04/19 Срд 21:12:58 361470892
>>361467
Да и свой хдл-код дебажить в ИЛА можно, было бы странно, если б было нельзя.
Аноним 03/04/19 Срд 21:31:57 361474893
>>361467
А ещё входы и выходы внешней синхронизации для каскадирования нескольких СигналТапов, чтоб можно было дебажить модули работающие от разных частот.

>>361470
Да не, ты не понял. Подключаешь к СигналТапу свой HDL-код как доп функцию для расширения возможностей по синхронизации. Нужно, например, тебе отловить момент который наступает при хитрой последовательности событий - пишешь соответствующий код и добавляешь его к СигналТапу и когда код отловит этот момент СигналТап триггернётся.
Можно конечно и просто отдельный модуль написать и к нему присосаться. А тут он интегрируется внутрь СигналТапа и становится его частью.

И кстати, СигналТап можно добавить уже после компиляции проекта.
Аноним 03/04/19 Срд 21:45:04 361476894
>>361474
> И кстати, СигналТап можно добавить уже после компиляции проекта.
Только вот все равно при любом изменении на сигналтапе придется рекомпилиться.
Аноним 03/04/19 Срд 22:18:17 361484895
>>361474
>И кстати, СигналТап можно добавить уже после компиляции проекта.
ИЛА можно подключать после синтеза.
Аноним 03/04/19 Срд 22:59:32 361491896
>>361476
Врубаешь инкрементальную компиляцию и рекомпилишь только изменения в проекте.

>>361484
Ну я с ISE сравниваю, там эту ИЛу нужно было ручками себе в код вставлять, все сигналы прописывать, подключать, потом ещё с глючным и кривым интерфейсом бороться. А в этих ваших Вивадах может уже что-то и доработали.
Аноним 04/04/19 Чтв 12:56:05 361522897
>>361491
>Ну я с ISE сравниваю
А ISE к теме каким боком вообще относится?
Аноним 04/04/19 Чтв 19:28:39 361547898
>>361522
Тем что она тоже Хилых.
Аноним 04/04/19 Чтв 20:17:19 361553899
>>361547
А MAX+PLUS II тоже альтеровская, не собираешься сравнить?
Аноним 04/04/19 Чтв 20:49:29 361556900
>>361553
НУ ты спросил где связь - я тебе ответил.
Аноним 04/04/19 Чтв 21:21:07 361558901
>>361522
Ися просто вивада в юношестве.
Аноним 05/04/19 Птн 14:15:08 361614902
>>361558
Скорее PlanAhead это Vivado в юношестве.
Аноним 06/04/19 Суб 14:33:18 361701903
Посоветуйте IDE для программирования Altera Cyclone IV. Я загрузил Quartus Lite, но при создании проекта он просит указать тип устройства и загрузить пакет поддержки устройств с оффсайта. Я зашёл на их сайт, выбрал Cyclone IV, но мне написали, что Quartus Lite его не поддерживает. В какой ещё бесплатной ide можно программировать?
Аноним 06/04/19 Суб 14:37:21 361703904
>>361701
Мб ты слишком последнюю версию квартуса скачал, которая его уже не поддерживает? В 15 и 16 сыклон 4 точно есть
Аноним 06/04/19 Суб 14:46:14 361704905
Аноним 06/04/19 Суб 19:54:17 361721906
>>361701
Помнится моя плата с циклоном 4 на борту как раз с лайтом работала.
Аноним 07/04/19 Вск 02:42:25 361743907
>>361701
Там надо или комплексную версию качать, или отдельно докачивать поддержку четвёртого Сыклона.

Аноним 08/04/19 Пнд 23:07:56 361910908
testbench waveform выпилили из ise 14.7?
Аноним 09/04/19 Втр 16:56:15 361976909
Посоветуйте недорогой самодельный jtag, который поддерживает chipscope.

chipscope поддерживает virtual cable? Через меню plugin у меня только такое "xilinx_platformusb PORT=USB21 FREQUENCY=6000000". И parport еще.
Аноним 09/04/19 Втр 17:15:07 361977910
В ise только можно подключать вручную созданные sdf или есть визард для их создания?
Аноним 12/04/19 Птн 21:20:11 362258911
hg
Аноним 14/04/19 Вск 11:00:08 362396912
>>316943 (OP)
Кто объяснит разницу между GDDR3 и DDR3? Чего особенного в Gрафической памяти и какие подводные если поставлю GDDRx заместо DDRx?
Аноним 14/04/19 Вск 11:05:18 362397913
>>362396
>GDDR3
DDR3 SDRAM (англ. double-data-rate three synchronous dynamic random access memory — синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных, третье поколение)

GDDR3 (англ. Graphics Double Data Rate 3 — двойная скорость передачи графических данных 3) — специальная технология памяти для графических карт, разработанная ATI Technologies.

Имеет почти такое же технологическое ядро, как DDR2, но более высокую эффективную частоту.


Я ненастоящий сварщик, но мне кажется, что это немного разные типы памяти.
Аноним 14/04/19 Вск 11:09:06 362400914
>>362396
У тебя есть gddr модель для симуляций?
Аноним 14/04/19 Вск 21:03:10 362447915
>>362396
GDDR на более высоких частотах работает, как минимум.
Даташит у меня есть только на DDR, так что большего не знаю.
Аноним 14/04/19 Вск 21:04:27 362448916
>>362396
>Общими отличиями GDDR от DDR являются более высокие номинальные частоты работы первой. Также GDDR содержит упрощения электрического интерфейса и применение ряда специальных приёмов управления буфером ввода-вывода, что позволяет достичь несколько большей пропускной способности и более высоких рабочих частот по сравнению с DDR SDRAM. Кроме этого, GDDR имеет по сравнению с DDR более низкое энергопотребление и тепловыделение при работе на равных частотах.

Даже на викии есть. Короче, контроллер немного другой надо писать.
Аноним 15/04/19 Пнд 11:05:48 362474917
>>362448
>контроллер немного другой надо писать.
Сразу после, как ты найдешь доки.
Аноним 15/04/19 Пнд 11:20:05 362477918
>>362474
Легко гуглится пример даташит на память hyb18h512321af с видеокарты. Визуально интерфейс как у DDR3, поэтому и возник вопрос в чем подвох и отличие?
Аноним 15/04/19 Пнд 19:16:47 362499919
Аноним 15/04/19 Пнд 20:32:43 362506920
Как/где axi-слейвам назначаются адреса? Можно пример кода?
Аноним 16/04/19 Втр 04:10:22 362525921
>>362506
Не совсем понятен вопрос, ты в принципе не в курсе, как это делается, или тебя конкретно Address Editor в IP Integrator не устраивает?
Аноним 16/04/19 Втр 07:21:06 362529922
Аноним 16/04/19 Втр 07:26:00 362530923
>>362525
axi-интерконнектор знает адрес слейва или проверка адреса производится самим слейвом?
Аноним 16/04/19 Втр 07:32:36 362531924
>>362530
Старшие биты использует акси интерконнект, чтобы переадресовать транзакцию на нужный интерфейс. Младшие биты использует слейв, чтобы выбрать нужный регистр. Слейв не знает о своём месте в пространстве адресов, он только младшие биты смотрит.
Аноним 16/04/19 Втр 13:05:54 362551925
Какие есть способы, правила правильного соединения axi4lite и axi4full? Например, когда слейв axi4lite.
Аноним 16/04/19 Втр 13:57:32 362552926
>>362529
>А в ise?
ISE петухи идут нахуй.
Аноним 16/04/19 Втр 14:36:00 362555927
>>362551
Когда на один интерконнект вешаются axi full и axi light, при генерации проекта вивадо автоматом вставляет на нужный интерфейс конвертер протокола. (Ещё она умеет согласовывать интерфейсы с разной частотой и шириной шины, да и вообще няшка.)
Аноним 16/04/19 Втр 15:51:20 362559928
>>362551
Если неиспользуются бёрсты, то можно соединить 1 в 1, если используются бёрсты, то нужно вставить модуль разбивающий бёрсты на одиночные транзакции
Аноним 16/04/19 Втр 16:59:49 362563929
Как правильно поступить, если нужно соединить между собой два axi-мастера? Или два axi-слейва.
Аноним 16/04/19 Втр 21:33:23 362583930
>>362563
Никак. Ты хочешь чего-то неправильного и даже, я бы сказал, грешноватого. Уточни свою задачу.
Аноним 17/04/19 Срд 20:07:58 362632931
>>362583
Задачи нет - учеба. Хочу проверить ddr память на борде. Думал собрать так: контроллер ddr axi-slave + spi-slave axi-slave + axi-interconnect + risc-v axi-master (или fsm axi-master, но я пока не готов написанию такого). С компа через spi записывать в память, а потом читать.
Аноним 17/04/19 Срд 20:47:06 362637932
>>362632
Ну так ты не слейв со слейвом соединяешь, а подключаешь несколько слейвов к одному мастеру. В виваде тыкаешь в интерконнект и выбираешь число мастеров и слейвов. Насчёт исе тебе господин выше уже пояснил, я склонен его поддержать. На самом деле я им пользовался 666 лет назад и не помню, как там эта хуйня настраивается.
Аноним 17/04/19 Срд 21:01:47 362640933
Что нужно чтобы прошивать одну ПЛИС другой ПЛИС по jtag? На главной плисе нужен parallel flash loader?
Аноним 17/04/19 Срд 21:07:07 362641934
>>362640
теоретически да, но не нужно

Есть куча способов прошить одну плис другой, обычно одна плис эмулирует работу загрузочной флеш для второй
Аноним 17/04/19 Срд 21:21:49 362642935
>>362641
> не нужно
Что так?

> эмулирует работу загрузочной флеш
А в пзу так зашить можно?
Аноним 17/04/19 Срд 21:46:51 362644936
>>362642
Лютый оверкил делать жтаг

Проще иметь одну флеш на всех, гугли по словам cascade chainload
Аноним 17/04/19 Срд 23:13:03 362650937
>>362583
> Ты хочешь чего-то неправильного и даже, я бы сказал, грешноватого
В смысле? Прости, а как по твоему работают дма контроллеры или многоядерные системы? Axi для этого и пилилась, чтобы мультимастер мультислейв нормально работал
Аноним 18/04/19 Чтв 09:07:22 362678938
Сам плисач
Хочу вкатиться в fpga и выбираю плату
Эту стоит взять?
https://ru.aliexpress.com/item/1000006630084.html
И что там к ней ещё надо? Ну типа отладчик или что?
Аноним 19/04/19 Птн 10:35:29 362767939
>>362678
spartan6 64MB ddr3 в два раза дешевле
Аноним 19/04/19 Птн 11:26:06 362770940
Аноним 19/04/19 Птн 12:36:22 362784941
Аноним 20/04/19 Суб 09:43:59 362875942
>>362767
Ну я могу и этот artix-7 себе позволить, не особо напрягаясь. Думаю даже usb3.0 плату докупить до кучи. Это же не 20к за отладочную плату
>>362784
> И с ISE вместо среды разработки.
В смысле? У xilinx плохо со средами разработки или что?

И ещё, тут юзал кто нибудь китайские отладчики с али для xilinx?
Аноним 20/04/19 Суб 11:49:20 362881943
>>362875
> Думаю даже usb3.0 плату докупить до кучи.
Закидай говном мануалами для совсем тупых и безмозглых амеб как ее запускать. Платка есть, а останков мозгов не хватает для запуска и укрощения поноса из трафика из этой игрушки.
Аноним 20/04/19 Суб 17:43:40 362922944
>>362881
Ты видимо шутишь, ведь это я ньюфаг, который спрашивает совета в этом итт треде. Но как я понял, на сайте Кипариса овердохуя примеров и аппноутов, как с этим делом работать. От руководства программиста до подключения к ПЛИС.
Аноним 20/04/19 Суб 18:10:16 362929945
image (2).jpg 1052Кб, 3199x2438
3199x2438
>>362922
Нет, не шучу. Тоже ньюфаг себе выкопал худенькую платку с EP4CE15F23 и еще более тощую платку с EP4CE115F23 под мигалку гирляндой (платки искались максимально голые с большим количеством IO под бредовые идеи очень надеюсь что они получатся). Ну и поделки от Кипариса, про которые вообще не в курсе что и как и с какого бока к ним подходить.
Плюсики в карму QMTech и FPGA Board Store.
Аноним 20/04/19 Суб 19:10:53 362948946
Аноним 20/04/19 Суб 20:06:58 362960947
>>362875
>В смысле? У xilinx плохо со средами разработки или что?
У xilinx всё отлично со средами разработки если это не ISE. Vivado заебок, например, но она не поддерживает старые линейки плисов, вроде Spartan 6.
Аноним 20/04/19 Суб 20:58:48 362971948
>>362960
> Vivado заебок, например, но она не поддерживает старые линейки плисов, вроде Spartan 6.
А как это?
В смысле для мира ПЛИС это нормально, что новые ide не поддерживают старые камни? Почему так?
Аноним 20/04/19 Суб 21:09:08 362973949
>>362971
Потому что внутренности разные. Тебя же не удивляет что для процессоров с разными архитектурами, как правило, требуются разные компиляторы?
Аноним 20/04/19 Суб 21:24:25 362978950
>>362973
Ну там основной набор команд не меняется десятилетиями, и какой-нибудь gcc-arm может компилить хоть для кортексов-м, хоть для взрослых армов в смартфонах. И я бы очень удивился, если бы какой-нибудь следующий gcc вдруг перестал поддерживать предыдущее поколение. Ну в-общем ладно, я понял суть
Аноним 20/04/19 Суб 21:35:29 362981951
>>362978
>хоть для кортексов-м, хоть для взрослых армов
Cortex-M это почти что Cortex-A, только без возможности переключения с набора команд thumb-2 на ARM, если я ничего не путаю. Так что отличий не столь много.
https://www.gnu.org/software/gcc/gcc-9/changes.html
>Support for the deprecated Armv2 and Armv3 architectures and their variants has been removed. Their corresponding -march values and the -mcpu options that used these architectures have been removed.
Аноним 20/04/19 Суб 21:41:19 362982952
>>362971
Потому что поддержка старых камней увеличивает объём программы. Если правильно помню, то поддержка одного Сыклона 4 требует около 500 МБ.
Аноним 20/04/19 Суб 21:42:11 362984953
>>362981
> Cortex-M это почти что Cortex-A,
Ну вот и я думал, что spartan-7 это почти что spartan-6, только на 28нм техпроцессе
Аноним 20/04/19 Суб 21:43:32 362985954
>>362982
Как у вас всё сложно, однако
Аноним 20/04/19 Суб 21:47:13 362986955
>>362981
Кстати, armv2 это пиздец какое старьё, 86(!) год.
Аноним 20/04/19 Суб 21:47:44 362987956
>>362982
У альтеры/интела это можно докачать отдельно. Но при этом поддержку старья понемногу выкидывают, как и везде. Поэтому объем - это не аргумент.
Аноним 20/04/19 Суб 22:35:38 362997957
>>362987
Ну так всё ровно сама интеграция этого старья в новое ПО усложняет это самое ПО. Например для древних Флексов не было ЧипПланера, была какая-то его приметившая версия, не помню как называлась. И чтобы поддерживать Флексы нужно держать модуль этого старого ЧипПланера в ПО.
Аноним 21/04/19 Вск 05:44:42 364224958
>>362948
Ебать-колотить. Мало того что пылящимся wget-ом не слить, а только через ручное хождение по ссылкам (у того же st можно сразу пачкой слить), так еще и нужно делать зоопарк из древнего кейла. Вообще похуй. USB3.0 не очень скоро устареет, поэтому без разницы - на днях или через пару лет получится укротить. DIY же.
Аноним 21/04/19 Вск 12:32:45 364246959
Что делать, если на моей плате стоит чип EP4CE6E22C8N, а в Quartus нет такого чипа (но есть похожие маркировки)?
Аноним 21/04/19 Вск 12:35:50 364247960
>>364246
Покажи что есть в кактусе. Букву N не найдешь, а вот С8 - найдешь.
Аноним 21/04/19 Вск 12:39:15 364248961
Безымянный.png 70Кб, 915x589
915x589
Аноним 21/04/19 Вск 15:26:43 364270962
>>364246
Иногда бывает так что в Квартусе только GX серии 4 Сыклонов стоят. Остальные надо докачивать. Хотя тут от дистрибьюта зависит, есть такие в которые недокачаешь. Вообще если работаешь только с такой плисиной ставь верисии Квартуса постарее, они и быстрее и лучше работают. Я предпочитаю 9.1SP2, там и встроенный симулятор ещё есть.
Аноним 21/04/19 Вск 18:08:27 364302963
>>364270
>встроенный симулятор ещё есть
Добавлю ещё, что он для 4 Сыклона не работает.
Аноним 21/04/19 Вск 18:25:12 364304964
>>364302
Работает все на 9ке.
Аноним 21/04/19 Вск 21:17:55 364341965
Аноним 22/04/19 Пнд 10:06:01 364393966
>>364341
На какой версии квартуса для циклона работают точно все тулзы?
Аноним 22/04/19 Пнд 18:14:54 364443967
>>364393
Какие тулзы? Для какого циклона?
Квартус 9.1SP2 работает норм для циклонов с 1 по 3 включительно. Для 4 тоже работает, но нет встроенного моделирования, а оно и не нужно по большому счёту, если можешь в верилог и моделсим.
Аноним 23/04/19 Втр 16:18:38 364553968
Посоветуйте fpga-борду с dram (не sdram) или sram до 20$
23/04/19 Втр 17:52:10 364560969
>>364553
> dram (не sdram)
Хоть понял что за хуйню написал? DDRх и SDRAM - это динамическая память, разница в том что SDRAM передает данные по одному фронту тактового сигнала, а DDRx - по двум фронтам тактового сигнала.
> sram
Погугли как адово нелинейно растет стоимость SRAM от 4 мегабит и выше.
Видимо с размером памяти не определился, раз такой вопрос.
> Посоветуйте fpga-борду
Предпочтения? Altera, Xilinx, Lattice?
Это трололо пост если че.
Аноним 23/04/19 Втр 18:17:02 364562970
>>364560
>Хоть понял что за хуйню написал?
Мм, опытный разработчик не знает про DRAM, а спеси.
Аноним 23/04/19 Втр 19:38:34 364570971
>>364562
DRAM, да. DRAM реально такая некрофилия нужна?. Почитай мне на ночь сказки про типы памяти. В тишине знаешь ли плохо засыпаю.
Кандидат для тестов KM41C256.
Аноним 23/04/19 Втр 19:39:43 364571972
dram.jpg 171Кб, 2385x1041
2385x1041
>>364562
Картинка отклеилась или кто-то забыл refresh памяти сделать.
Аноним 23/04/19 Втр 20:06:20 364577973
>>364571
Хули это говно провалилось? Дешевле срам, но и быстрее тормознутых сдрам. Идеальная середина.
Аноним 24/04/19 Срд 05:41:56 364604974
>>364577
Можно в цифрах? Очень желательно привести маркировки(названия) микросхем статической и динамической памяти для сравнения характеристик. Статическая память 2-4 мегабита вполне вменяемо стоит и нет ебли с регенерацией.
Аноним 26/04/19 Птн 12:13:33 364794975
>>364604
>Статическая память 2-4 мегабита вполне вменяемо стоит
Конкретные марки?
Аноним 26/04/19 Птн 12:25:33 364796976
>>364794
Вообще-то ты первый бзданул и не назвал даже пары кандидатов для сравнения.
> Дешевле срам, но и быстрее тормознутых сдрам
Как-то так научись хотя бы digikey пользоваться https://www.digikey.com/products/en/integrated-circuits-ics/memory/774?k=&pkeyword=&sv=0&pv142=1644&sf=0&FV=ffe00306%2Cf040017&quantity=&ColumnSort=0&page=1&pageSize=25
Более-менее основные варианты - 3-4$ за SRAM 256Кх16 с временем доступа 10нс. Дораха - пиздуй в кетай к дяде Ляо.
Аноним 26/04/19 Птн 16:31:46 364805977
>>364553
> Посоветуйте fpga-борду с dram (не sdram)
OCHE TOLSTO. Ну разве что искать додревние платы двадцатилетней давности на вторичном рынке.

> или sram до 20$
Выбери одно. Или sram или «до $20» (стартеркитовские платы обойдутся где-то в $45, чего-то более дешёвого мне не попадалось). Ну или покупай у дядюшки Ляо плату «без нихуя», с одной ПЛИСиной. Будет тебе килобит 200 статической памяти внутри чипа.

>>364577
https://electronics.stackexchange.com/questions/42330/sdram-advantages
Аноним 26/04/19 Птн 18:06:06 364812978
>>364805
Пришлось за тебя гуглить. Раза в 2-3 больше (40-60$) можно найти древние циклоны с чуть меньше, чем нихуя SRAM где-то самому допаивать надо и SDRAM. С миром Xilinx не знаком.
https://www.aliexpress.com/item/free-shipping-ALTERA-EP2C8-FPGA-core-board-with-SDRAM-SRAM-FPGA-development-board/32506229195.html
https://www.aliexpress.com/item/Free-Shipping-ALTERA-EP2C8F256-core-board-with-SDRAM-SRAM-FPGA-development-board/2020064622.html
https://www.aliexpress.com/item/Free-Shipping-1pc-ALTERA-FPGA-NIOS-EP2C8F256-core-board-with-32MbyteSDRAM-64KbyteSRAM/1419912904.html
https://www.aliexpress.com/item/Altera-NIOSII-FPGA-Development-Board-SOPC-Board-EP2C8Q208C8-USB-Download/32219533208.html
https://www.aliexpress.com/item/Free-Shipping-ALTERA-EP2C8Q208-FPGA-Nios-II-development-board-learning-board-minimum-system/1293316130.html
Аноним 27/04/19 Суб 08:18:18 364851979
Untitled8.png 103Кб, 1149x884
1149x884
Untitled7.png 119Кб, 1660x741
1660x741
Правильно ли понял документацию? Как минимум синтезировался проект с коркой ALTLVDS_TX 3 канала с сериализацией 9 и скоростью 630 мегабит.
В самом дешманском EP4CE6E22C8 используя банки 5 и 6 получу 3 канала LVDS под данные и один под тактовую частоту?
Используя HSIODR могу передавать до 640 мегабит на канал и по итогу получить поток данных в 1920 мегабит (240 мегабайт в секунду)?
Аноним 27/04/19 Суб 11:16:17 364860980
хуй
Аноним 27/04/19 Суб 17:35:30 364908981
В свободное от работы время дошел до симуляции цепей. Хочу прошить свой чип. Сколько раз можно перепрошивать четвертый циклон? Или количество перепрошивок неограничено?
Аноним 27/04/19 Суб 17:49:24 364910982
>>364908
Если конфигурационное ПЗУ перешиваешь (память 25 серии или EPCS) - то читай даташит на память. Десятки тысяч.
Если же через JTAG заливаешь конфигурацию в сам циклон - то остается пожелать удачи в попытке убить SRAM память в циклоне, что в принципе нереально. Хоть каждую секунду перешивай - не получится ушатать. Исключая вариант когда забыл поставить свободные порты input tristate и поставил output driven low или подобное.
Аноним 27/04/19 Суб 18:43:00 364916983
Как на windows 10 использовать USB blaster? Quartus нет видит его. В списке неизвестных USB-устройств в панели управления есть бластер, но написано, что драйвер для него недоступен. Я нагуглил, что по этому элементу списка (с названием бластера) можно кликнуть и появится предложение выбрать драйвер с диска, но это не работает. В папке с квартусом драйвера вижу. Как их установить?
Аноним 27/04/19 Суб 18:54:27 364918984
>>364916
Чей бластер? От Waveshare у меня не запускался, как и на PIC18F2550. Точнее видны, но при любых действиях по таймауту все отваливается.
Новая версия rev.c на PIC18F14K50 - сразу встала и работает.
Устанавливалось через "из местоположения на диске" и указывал куда-то в недра 17-го кактуса.
Аноним 27/04/19 Суб 18:56:59 364922985
>>364916
>В папке с квартусом драйвера вижу.
Должны быть, либо ты устанавливал что-то не то или как-то не так. Попробуй найти драйвер поиском по расширению файла (.inf и .cat).
Аноним 27/04/19 Суб 19:19:05 364925986
>>364918
Китайский. Какой бластер лучше?

Еще вопрос по прошивке. Я описал такую цепь:

module light(x1, x2, f);
input x1, x2;
output f;
assign f = ~((x1 & ~x2) | (~x1 & x2));
endmodule

Конфигурацию пинов задал. Параметрам x1 и x2 соответствуют две кнопки, а значение функции f связано со светодиодом. Но почему-то без нажатия на кнопки диод горит, а при нажатии гаснет. Чтобы сделать наоборот, я добавил логическое отрицание. Почему цепь работала не так, как я ожидал, и лампочка загорается, когда f = 0?
Аноним 27/04/19 Суб 19:26:37 364927987
>>364925
>Но почему-то без нажатия на кнопки диод горит
Смотри схему твоей платы. Кнопка может быть подключена таким образом, что когда она не нажата на входе будет лог. 1.
Аноним 27/04/19 Суб 19:27:30 364928988
>>364925
> Китайский. Какой бластер лучше?
Рабочий. На PIC18F14K50 точно работает в разных вариантах и позах.

> Но почему-то без нажатия на кнопки диод горит, а при нажатии гаснет.
В код не вникал. Схему платы смотрел? Прямо в лоб пробовал соединять кнопку со светодиодом и смотреть что будет?
1) На не нажатых кнопках 0 и при нажатии 1 или наоборот?
2) Светодиоды зажигаются 0 или 1?
(Нужное подчеркнуть)
Аноним 27/04/19 Суб 20:01:29 364933989
>>364916
У меня на вин10 удалось совладать с юсб бластером только через установку драйвера от 9ого к квартуса в режиме винды "без проверки подписи драйверов".
Аноним 27/04/19 Суб 20:09:38 364934990
>>364933
А я просто открыл диспетчер устройств, нашел в нем бластер и установил драйвер через меню. Причем драйвер установился только когда я указал путь к папке /quartus/drivers. Если я прямо указывал папку с драйвером для x64, инсталлятор драйверов говорил, что не видит драйвер.
Аноним 27/04/19 Суб 20:25:09 364937991
>>364934
> Причем драйвер установился только когда я указал путь к папке /quartus/drivers.
Это все я пробовал кучу раз и на разных компах.
Какая версия квартуса?
Аноним 27/04/19 Суб 20:30:10 364938992
Аноним 27/04/19 Суб 20:40:17 364942993
>>364934
>Если я прямо указывал папку с драйвером для x64, инсталлятор драйверов говорил, что не видит драйвер.
Естественно, потому что установщику нужен .inf файл.

>>364938
Аналогично. Драйвер ставил от квартуса версии кажется 18.0 или 18.1. Причем у одного сотрудника стоит на десятке квартус версии 9.0 (других версий не стоит) и тоже все работает.

>>364937
Проверь в диспетчере устройств VID/PID твоего бластера.
Аноним 28/04/19 Вск 15:16:15 365042994
The keyword “assign” is used for continuous assignments to an already declared port or a wire

Что значит continuous в этой контексте? Последовательный или непрерывный (в смысле, обновление значения справа непрерывно вызывает обновление шины слева)?
Аноним 28/04/19 Вск 17:14:21 365057995
>>365042
>непрерывный (в смысле, обновление значения справа непрерывно вызывает обновление шины слева)
Зис.
Комбинационная схема - это непрерывное присвоение. Изменение одного входа моментально влечёт изменение на выходе, согласно логике этой комбинационной схемы, естественно в любой КС есть задержки и время срабатывания элементов, но это уже проблема в другой плоскости.
Аноним 29/04/19 Пнд 08:26:45 365110996
>>365057
Как будто я "припаял" этот wire?
другой анон
Аноним 29/04/19 Пнд 08:59:00 365111997
Аноним 29/04/19 Пнд 12:05:55 365125998
>>365111
Да, это правильные ид.
Даже не знаю что тебе посоветовать. Драйвер для бластера устанавливается точно так же как драйвера для других устройств.
http://free-pc.ru/windows/kak-ustanovit-drajver-neskolkimi-sposobami.html
>3. Установка драйвера через диспетчер устройств
Указываешь там папку с файлом usbblstr.inf (C:\квартус\quartus\drivers\usb-blaster). Все, готово.
Единственное что оно может ругнуться на отсутствие подписи, если квартус слишком старый.
Вот прямо сейчас проверил с квартусом 18.1 и китайским клоном бластера на PIC18F14K50, все устанавливается. С оригинальным альтеровским бластером тоже все работает.
Аноним 29/04/19 Пнд 12:10:15 365127999
Р
Аноним 29/04/19 Пнд 16:51:30 3651531000
>>365125
> посоветовать
Для себя я уже нашел костыль, если что:
>>364933

Пробовал от 9.0, 13.1 и какой-то 17-18, устанавливаются только через пердолинг с режимом без проверки подписи.
Если не сложно, можешь кинуть ссылку на дрова, либо на облако залить.
Но 17 или 18 я как раз с офсайта качал.
Аноним 29/04/19 Пнд 17:54:25 3651571001
Почему этот ваш квартус не строит нормальной иерархии проекта?
На вкладке hierarchy один лишь топовый модуль, а остальные на вкладке files. Как вообще жить с этим?
Аноним 29/04/19 Пнд 18:23:17 3651591002
>>365110
Смотря к чему. Если к триггеру - то нет. Если к элементу И - то да.

>>365157
Ты сначала откомпилируй, после этого крестик маленький появится, на него и нажми.
Аноним 29/04/19 Пнд 18:47:36 3651621003
>>365159
Для просмотра иерархии мне надо минут 20 ждать пока спомпиллится? Я верно понел?
Аноним 29/04/19 Пнд 18:57:09 3651631004
>>365159
>Если к триггеру - то нет. Если к элементу И - то да.
Разве триггеры используются в комбинационных схемах?
Аноним 29/04/19 Пнд 19:19:13 3651681005
>>365163
О том и речь что это разные вещи. Триггер, чтобы сменить состояние на выходе, ждёт тактового сигнала, а именно фронта. Комб. схема ничего не ждёт, меняет сразу.
Посмотри, может поможет
https://www.youtube.com/playlist?list=PL4UMfOeGYsvblwrP3VYKHq11xgkxVqoUj

>>365162
Ну если ты накидал кода за один раз, что надо 20 минут ждать, то да.
Аноним 29/04/19 Пнд 20:16:59 3651811006
>>365163
assign q = c ? d : q;
Не понимаю о чем ты, но разве это не триггер, пусть даже с статическим управлением?

>>365168
Что-то ты странное пишешь. Если припаять провод к триггеру, то провод (сам по себе) уже нельзя считать комбинационным устройством?
Аноним 29/04/19 Пнд 20:18:24 3651821007
>>365168
Нахуя вот вообще было придумывать это деление на комбинаторную и синхронную логику? Оно же в чистом виде редко встречается.
Аноним 29/04/19 Пнд 20:23:27 3651851008
>>365181
>assign q = c ? d : q;
>Не понимаю о чем ты, но разве это не триггер, пусть даже с статическим управлением?

Это мультиплексор
Аноним 29/04/19 Пнд 20:32:33 3651861009
>>365185
Мультиплексор с обратной связью это не триггер? Если есть память, т.е. на выход влияет предыдущее состояние - значит триггер.
Аноним 29/04/19 Пнд 20:32:47 3651871010
>>365168
>Ну если ты накидал кода за один раз, что надо 20 минут ждать, то да.
В вивадо и ise ничего компиллить не надо было. Иерархия обновляется автоматически либо по команде. Зайлинкс более юзер-френдли ^^
Аноним 29/04/19 Пнд 20:41:24 3651881011
Без названия.png 2Кб, 366x138
366x138
>>365186
Ты какой-то ботаник. Вот тебе мультиплексор. Где там память?
Аноним 29/04/19 Пнд 20:46:09 3651891012
>>365188
> Мультиплексор с обратной связью это не триггер?
> с обратной связью
> обратной связью
Где на твоей схеме обратная связь на выходе мультиплексора?
Аноним 29/04/19 Пнд 21:13:15 3651951013
>>365181
>assign q = c ? d : q;
>Не понимаю о чем ты, но разве это не триггер, пусть даже с статическим управлением?
Нет, это не триггер. Это триггерная схема, т.е. комб. схема с обратными связями, которую ты сам нахуевертил. Чуешь разницу? Такие схемы делать строго настрого запрещается. У нас во дворе вообще за такое убивают нахуй. А всё потому, что такие схемы могут впадать в самогенерацию, виснуть и прочее. За всю эпоху существования цифровой техники человечество выработало необходимый набор триггеров, вот ими и пользуйся, они протестированы, изучены, исследованы и прошли проверку временем. Это тот случай когда отсебятину пороть не надо.

>Что-то ты странное пишешь. Если припаять провод к триггеру, то провод (сам по себе) уже нельзя считать комбинационным устройством?
Если его рассматривать в отрыве от триггера - да, это комб. схема с одним входом и одним выходом. И как в любой комб. схеме у него выход меняется мгновенно с изменением на входе без учёта задержек, в отличии от.

>>365187
Да хер там. Это пожалуй единственное его преимущество. Сравни например время добавления айпиблоков, ОЗУ хотя бы, или ПЛЛ, в Квартусе и Айсе. Тебя ждёт сюрприз.
Аноним 29/04/19 Пнд 21:19:34 3651961014
>>365182
Постоянно.
Вот тебе пожалуйста мультиплексор >>365188 , применяется везде и всюду.
Аноним 29/04/19 Пнд 21:44:57 3651991015
>>365195
>Это триггерная схема
Где ты там схему разглядеть ухитрился? Это просто кусок кода, описывающий D-триггер со статическим управлением. В какую схему он может синтезироваться это отдельный вопрос.
Аноним 29/04/19 Пнд 21:48:59 3652001016
>>365199
Схема схема, вход есть?, выход есть? - схема. Только, ещё раз, триггерная, а не сам триггер.
Аноним 29/04/19 Пнд 22:04:33 3652011017
>>365200
У тебя логика как у инопланетянина. Ну давай, заставь этот код работать нестабильно. Разумеется без синтеза, только симуляция.
Аноним 29/04/19 Пнд 22:59:23 3652061018
>>365201
Я говорю не только про ПЛИС, но про всю схемотехнику в целом. На рассыпухе запаяешь такую хрень - тоже работать не будет, хотя шансов больше. Да даже и ПЛИС, симуляция это же не самоцель, рано или поздно всё это в железе работать должно. А в симуляции можно такого понаписать, что даже синтезироваться не будет, не говоря уже о хоть какой-то работе.
Аноним 29/04/19 Пнд 23:33:20 3652091019
>>365206
>А в симуляции можно такого понаписать, что даже синтезироваться не будет, не говоря уже о хоть какой-то работе.
Молодец, ты уже почти пришел к выводу о том, что код - это не схема.
>На рассыпухе запаяешь такую хрень - тоже работать не будет
Если ты про соединение входа с выходом у мультиплексора, то это и без тебя тут все знали. Но кусок кода это еще не схема.
>симуляция это же не самоцель
Verilog и vhdl вполне можно использовать для симуляции рассыпухи, например. Чем не самоцель? Естественно что при этом вполне можно использовать не синтезируемое описание.
А тестбенчи ты значит не пишешь?
Аноним 30/04/19 Втр 00:16:28 3652131020
>>365209
>ты уже почти пришел к выводу о том, что код - это не схема.
А я такого и не говорил.

>Если ты про соединение входа с выходом у мультиплексора, то это и без тебя тут все знали.
Не все, раз вопрос всплыл.

>Но кусок кода это еще не схема.
Причём тут вообще код? Вопрос был про то, почему нельзя делать обратные связи в КС.

>Verilog и vhdl вполне можно использовать для симуляции рассыпухи
Ради чего? Потому что можем? Если мы говорим о проектировании, то наша конечная цель - работа в железе, а не в симуляции.

>А тестбенчи ты значит не пишешь?
Причём здесь это?
Аноним 30/04/19 Втр 07:55:53 3652241021
cv4xnuE.jpg 25Кб, 500x281
500x281
Аноним 30/04/19 Втр 08:04:46 3652251022
>>365224
Из телеги спиздил?)
Аноним 30/04/19 Втр 09:32:17 3652281023
Аноним 30/04/19 Втр 09:59:31 3652321024
Аноним 30/04/19 Втр 21:55:13 3652841025
>>365225
Странно у меня почти никогда не было ситуаций, когда после симуляции у меня не работало на железе. Ну кроме таймингов и метастабильности.
Аноним 30/04/19 Втр 22:43:54 3652901026
>>365284
Для этого нужно не знать цифровую схемотехнику и вкатываться в ПЛИС тупо с изучения синтаксиса HDL.
Аноним 01/05/19 Срд 15:59:41 3653411027
>>365284
А что ты собственно делал, какого уровня сложности?
Аноним 03/05/19 Птн 15:42:00 3655511028
На компьютере - вывести "hello world"
На микроконтроллере - мигнуть светодиодом
А что на ПЛИС?
Аноним 03/05/19 Птн 15:44:14 3655521029
>>365551
мигнуть светодиодом
Аноним 03/05/19 Птн 15:56:05 3655561030
>>365552
При чем подключенным к кнопке.
Аноним 03/05/19 Птн 16:20:12 3655631031
Плисаны, где берете воруете ип-ядра, мегафункции?
Аноним 03/05/19 Птн 16:35:33 3655701032
>>365552
Тоже как на микроконтроллере? Или по другому как-то?
Напиши код, плиз
Аноним 03/05/19 Птн 17:04:02 3655781033
>>365570
module hui (
input wire clk,
output wire led
);

reg [23:0] clk = 0;
always @(posedge clk)
clk <= clk + 1;
assign led = clk[23];

endmodule
Аноним 03/05/19 Птн 17:04:56 3655791034
Аноним 03/05/19 Птн 17:05:37 3655801035
>>365578
module hui (
input wire clk,
output wire led
);

reg [23:0] cnt = 0;
always @(posedge clk)
cnt <= cnt + 1;
assign led = cnt[23];

endmodule
Аноним 03/05/19 Птн 18:08:15 3655981036
>>365578
А что, обязательно клок заводить?
Аноним 03/05/19 Птн 18:11:43 3656001037
>>365598
Внезапно да. Иначе как заставишь считать счетчик?
Аноним 03/05/19 Птн 20:14:23 3656321038
генератор.png 30Кб, 781x407
781x407
>>365600
>>365598
Светодиодом можно попробовать без генератора помигать.
Проверил вот такое на китайской плате с EP4CE10E22C8, вполне себе работает.
Аноним 03/05/19 Птн 20:34:24 3656391039
reactanime.jpg 71Кб, 500x542
500x542
Аноним 03/05/19 Птн 20:42:59 3656431040
>>365639
Генератор на линии задержки из элементарных логических элементов есть в советских справочниках по схемотехнике.
Аноним 03/05/19 Птн 20:49:41 3656441041
>>365639
Что тебе не нравится?

>>365643
Тут все же немного иначе. LUT это не один логический элемент, фиг знает какая там переходная характеристика будет.
Аноним 03/05/19 Птн 21:06:23 3656481042
>>365632
Как всё сложно, ну да ладно, спасибо. Просто навеяло соседним ардуино тредом, где препод заставляет анона эмулировать работу базовых логических элементов на микроконтроллере
Аноним 04/05/19 Суб 05:23:41 3656691043
image.png 64Кб, 1262x1032
1262x1032
image.png 94Кб, 1564x822
1564x822
image.png 74Кб, 1766x660
1766x660
Не знаю, куда ещё писать по верилогу, поэтому напишу сюда: что я делаю не так в тестбенче? 1 пик - тестбенч, 2 пик - что должно получиться (когда ручками клок тактировал в квартусе), 3 пик - что выводит моделсим с тестбенчем с 1 пика.
Аноним 04/05/19 Суб 06:48:37 3656731044
>>365648
>где препод заставляет анона эмулировать работу базовых логических элементов на микроконтроллере
Классика бесполезных учебных заданий.
Аноним 04/05/19 Суб 07:43:20 3656841045
n.png 31Кб, 1161x660
1161x660
>>365669
Ну я даже не знаю. С чего ты взял что ошибка в самом тестбенче? Единственная разница между клоком на твоей второй и третьей картинке это начальное состояние.
>[0:15]
От этого у тебя биты наоборот будут выстроены, слева будет младший бит, а справа старший. Мне кажется что так лучше не делать.
Аноним 04/05/19 Суб 17:27:09 3657461046
Аноним 04/05/19 Суб 17:41:01 3657481047
>>365643
>>365644
>Что тебе не нравится?
ПЛИС - это не рассыпуха. После каждой компиляции ячейки используются разные, если не предпринимать специальных мер. Кроме того, связи между ячейками достаточно медленные, это не простой проводник, это целая куча мультиплексоров, позволяющие соединять ячейки почти в произвольном порядке, и они, зачастую - эти связи - работают медленнее чем сами ячейки. Всё это приводи к тому что подобные схемы работают либо нестабильно, т.е. плавает частота, либо работают не при каждой компиляции, либо перестают работать при изменении климатических условий.
Аноним 04/05/19 Суб 17:53:09 3657511048
>>365748
А я бы еще глянул таких трюков на fpga/cpld
Аноним 04/05/19 Суб 18:03:46 3657521049
>>365748
> если не предпринимать специальных мер.
Как на вивадо с этим бороться? В квартусе chip planner есть.
Аноним 04/05/19 Суб 18:07:52 3657531050
Аноним 04/05/19 Суб 19:42:56 3657691051
>>365753
> planahead
Ты меня похоже троллишь. Смог нагуглить его только для ISE.
В вивадо я ещё нуб, но приходится осваивать.
Аноним 04/05/19 Суб 19:43:54 3657701052
>>365748
Ты знаешь более надежный способ сделать мигалку светодиодом на FPGA без внешних частотно-задающих элементов?
>ПЛИС - это не рассыпуха.
Будто на рассыпухе такое будет работать достаточно стабильно. Может и на порядок стабильнее будет, но не настолько чтобы можно было такие генераторы где-то применять.
Аноним 04/05/19 Суб 19:49:43 3657721053
>>365769
Сам нашел похоже - floorplanning.
Аноним 04/05/19 Суб 20:13:22 3657741054
>>365770
Ну разве только помигать диодом у себя на столе, не более.

А иначе без
>внешних частотно-задающих элементов
никак.
Аноним 05/05/19 Вск 18:27:01 3659211055
Где можно посмотреть пример подключения sfp-модуля к fpga?
Аноним 05/05/19 Вск 19:17:57 3659241056
Аноним 05/05/19 Вск 20:06:30 3659301057
Как узнают какая полировка оптического коннектора у sfp-модуля? Что-то спеки на модули не ищутся, на самом модуле не написано, во внутренней памяти есть поле с типом коннектора, но не полировки.
Аноним 05/05/19 Вск 20:19:24 3659321058
>>365930
Более чем уверен что везде UPC (плоская).
APC (угловая) в основном в сетях КТВ где не должно быть сигнала в обратку, или же в сетях xPON.
Аноним 05/05/19 Вск 21:09:46 3659351059
>>365930
>>365932
Через такую хуитку можно без ебли подключить fiber channel к плисе?
Аноним 05/05/19 Вск 21:12:37 3659361060
>>365924
А код? На fpga процессор, на процессоре линукс, из линукс уже используешь sfp?
Аноним 05/05/19 Вск 22:04:20 3659401061
>>365936
> пример подключения sfp-модуля к fpga?
Физическое - показано.
Если про передачу данных - то уже мимо. Не в курсе.
Если же копать в сторону Ethernet - то через SFP подули гоняют вывод SERDES (сериализатор-десереализатор) c кодированием 8b/10b и при гигабите в волокне реально летит 1.25гигабита.
Есть еще вариант SGMII (используется в 88E111x и подобных модулях SFP в выходом на медь) - с ним сложнее, тк есть режим согласования скоростей в отличии от тупого SERDES (но это не точно). И это только прием-передача. Для распознования что за дерьмо прилетело-отправляешь тебе нужен MAC блок.
Поэтому определись - если подключаться к Ethernet - надо будет дофига чего изучать.
Сама SFP - это не более чем тупой лазер и приемник, у которых внезапно есть ограничения по минимальной и максимальной принимаемой частоте и ему вообще поебать что за дерьмо ему будешь скармливать или принимать, поэтому считай что это тупо удлинитель на LVDS линий. Просто так постоянно "1" или "0" не сможешь отправлять - как минимум стоят разделительные конденсаторы на входе, которые отрежут постоянку, а во вторых - подавая постоянный сигнал нарушишь работу АРУ принимающего диода или драйвера лазера не помню где читал про эти грабли.
Аноним 07/05/19 Втр 21:50:24 3661211062
Поясните за атрибуты
(keep)
(preserve)
(noprune)
и прочие, для чего нужны, как юзаются?
Аноним 07/05/19 Втр 21:51:19 3661221063
>>366121
Макаба звёздочки по краям сожрала, как обычно.
Аноним 07/05/19 Втр 23:09:03 3661311064
>>366121
Не оптимизировать эту цепь. Если логически она не нужна или может быть упрощена, компилятор ее все равно оставит. Полезно когда на синтезированый дизайн будешь цеплять отладку или для локализации ошибки, если в процессе оптимизации компилятор выкидывает весь проэкт нахуй
Аноним 08/05/19 Срд 01:10:15 3661391065
>>366131
А применять то как?
Аноним 08/05/19 Срд 08:56:59 3661551066
На али нет sfp+ модулей или это я не могу найти?
Аноним 08/05/19 Срд 08:57:36 3661561067
>>365924
> SFP+ - они от SFP отличаются только скоростью
И коннектором?
Аноним 08/05/19 Срд 09:05:25 3661571068
>>366156
В смысле, сам сокет, куда вставляются ножевые контакты, такой же, а кожух отличается?
Аноним 08/05/19 Срд 10:27:58 3661631069
>>366155
Первый попавшийся под МНОГОмод
https://www.aliexpress.com/item/E10GSFPSR-FTLX8571D3BCV-IT-E65689-001-SFP-Transceiver-for-X520-DA2-or-X520-DA1-850nm-300m-10G/32848817962.html

>>366156
>>366157
Сам разъем и сокет одинаковый, контакты одинаковые, сигналы (условно) одинаковые. Все одинаковое, разница в скоростях по парам приема-передачи.
В темноте на ощупь SFP от SFP+ можно отличить по скошенным краям самого модуля в районе контактов, но это не правило и попадаются SFP в корпусах SFP+ например "новые" модули от SNR.
Аноним 13/05/19 Пнд 11:04:17 3668311070
У альтеры есть аналог сдвигового регистра на основе LUT? В Xilinx этот примитив зовется SLR16
Аноним 13/05/19 Пнд 11:44:44 3668321071
>>366831
https://forums.intel.com/s/question/0D50P00003yyGv0SAE/what-is-altera-library-for-16-bit-shift-register-lut-with-clock-enable?language=en_US

Спасибо двач, нагуглил сам.

Следующий вопрос опять же связан с изучением языка богов VHDL. Где квартус хранит стандартные либы? Почему Verilog-колхозники обходятся в основном без либ?
Что полезного можно найти в стандартных либах VHDL?
Аноним 13/05/19 Пнд 14:11:13 3668401072
Аноним 13/05/19 Пнд 14:40:05 3668431073
>>366139
Пишешь эту магическую хуйню перед или над объявлением сигнала, и воаля
Аноним 13/05/19 Пнд 16:31:45 3668531074
>>365551 >>365552
инстанцировать nios/microblaze и написать для него мигалку
Аноним 13/05/19 Пнд 16:43:39 3668551075
>>366853
Не, не оче. Это можно сделать, не написав ни строчки на HDL.
Аноним 13/05/19 Пнд 16:56:06 3668561076
>>366855
Я бы, пожалуй, предложил написать два генератора прямоугольных сигналов с периодом в районе 60 Гц, но чуть-чуть отличающихся. Например, один 59 Гц, другой 61Гц. А потом поXORить их друг с другом и вывести результат на светодиод.
Аноним 13/05/19 Пнд 18:06:46 3668691077
Аноним 13/05/19 Пнд 18:21:36 3668711078
>>366869
Ты не понел. Verilog я уже знаю.
Аноним 13/05/19 Пнд 19:18:20 3668751079
>>366871
Если так, тогда бы не задавал таких вопросов
>Почему Verilog-колхозники обходятся в основном без либ?
Аноним 13/05/19 Пнд 21:40:28 3668941080
>>365940
> если подключаться к Ethernet - надо будет дофига чего изучать.
А готовые ип-ядра/мегафункции можно где-то купить украсть?
Аноним 14/05/19 Втр 07:45:01 3669171081
>>366894
https://electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=93252
https://habr.com/ru/post/234369/
https://fpgawiki.intel.com/wiki/Category:Interfaces
Почитал бы про модель OSI. В оригинале она 7 уровней, для сетевиков - 4. Самому некогда, но интересно было(прошлое время) заняться. Есть гигабитное железо в разных вариациях, есть и свич с 10G портами и SFP+, но нет борды FPGA с 10G трансиверами.
Аноним 14/05/19 Втр 10:59:11 3669291082
>>366875
Пришло время покаяться.
VHDL конченное говно. Переносить код с одной платформы на другую это настоящий ад.
В случае с Верилогом достаточно написать обертки для платформозависимых сущностей. А с VHDL предстоит долгая ебля с либами. Нахуя нужны либы я так и не понел.
Аноним 14/05/19 Втр 15:48:11 3669741083
Сап плисач. Нужно запилить дешифратор 128in128 на 10 комбинаций. Эдакое key-value хранилище, которое будет работаеть на частоте 150МГц. Если я ебану через кейс не взлетит?
Аноним 14/05/19 Втр 16:07:58 3669761084
>>366974
Так глянь во что синтезируется
Аноним 14/05/19 Втр 18:28:24 3670041085
>>366929
Ну вот, ещё один достиг просветления. Присаживайся.
Аноним 16/05/19 Чтв 17:01:12 3672471086
>>367004
Я таки портировал этот код. Помучался знатно, но еще не уверен, что заработает, жду железо.
Аноним 17/05/19 Птн 15:43:50 3673411087
>>366974
пили на rom через readmemb
Аноним 17/05/19 Птн 19:25:21 3673651088
>>366974
Сначала составь таблицу истинности, потом минимизируй её картами карно, после чего по получившимся выражениям построй схему в графическом редакторе. Тогда влезет.
Аноним 17/05/19 Птн 20:27:23 3673661089
>>367365
Ты траливалишь, что ли? Зачем вручную делать то, что компилятор делает автоматически?
Аноним 17/05/19 Птн 21:06:29 3673681090
Вот есть сраная пердуина за три копйки. В сраной пердуине за три копейки есть встроенный АЦП. А есть божественная ПЛИС, но в ней нет ни АЦП, ни ЦАП, ни другого обвеса, от слова совсем. В чём причина такой вселенской несправедливости?
Аноним 17/05/19 Птн 21:48:51 3673721091
>>367368
АЦП для серьёзных задач выбирается под задачу. Для автоматизации курятника подойдёт любая хуйня, которую производитель не поленился засунуть в кристалл, и на параметры которой абсолютно похуй, но ПЛИС в таких задачах не используется.
Аноним 17/05/19 Птн 23:01:02 3673751092
>>367372
Используются или нет это совсем другой вопрос. Засунуть внутрь простенькую АЦП производителю не представляет труда, по деньгам он не потеряет. А пользователю приходится городить огород на плате.
Аноним 18/05/19 Суб 00:44:54 3673791093
Аноним 18/05/19 Суб 01:42:56 3673811094
>>367379
Это всё хорошо, только это ЦПЛД и цена до жопы.
Аноним 18/05/19 Суб 07:47:21 3673941095
>>367381
>это ЦПЛД
Интел их называет FPGA и в них действительно есть все то же, что обычно есть в FPGA, но в добавок конфигурационная память внутри.
>цена до жопы.
По сравнению с чем? Если >>359104 то для BGA плата может оказаться сложнее и дороже, особенно если ты делаешь махарайку в единственном экземпляре.
Аноним 18/05/19 Суб 09:38:53 3674051096
>>367375
>Используются или нет это совсем другой вопрос.
Самое нелепое утверждение, которое я когда-либо встречал. ПЛИС, как и всё прочее — это инструмент, который делается под определённые задачи.
Аноним 18/05/19 Суб 14:12:05 3674291097
>>367394
>По сравнению с чем?
По сравнению с тем что можно на алике найти.
Аноним 18/05/19 Суб 14:39:41 3674311098
>>367405
В анусе у себя что-нибудь нелепое поищи. У меня вопрос простй: почему я должен ставить два корпуса на плату вместо одного?
Аноним 18/05/19 Суб 17:21:56 3674351099
>>367429
Фиговый критерий, по любым меркам. Экономия небольшая, а риск больше.

>>367431
>почему я должен ставить два корпуса на плату вместо одного?
1. Не должен, можешь использовать MAX10.
2. Твой вопрос из той же серии почему конфигурационную память не сделают сразу внутри.
3. У тебя не возникает вопросов, почему для питания ядра обычно нужно напряжение ниже 3,3 В?
Аноним 18/05/19 Суб 19:30:39 3674461100
>>367435
>1. Не должен, можешь использовать ATtiny25
Фиксед.
Аноним 18/05/19 Суб 20:13:50 3674491101
>>367446
Да, в самый раз будет. Тем более что сам вопрос начинался с упоминании ардуины >>367368
Аноним 18/05/19 Суб 21:09:40 3674501102
>>367446
>>367449
Зачем мне ATtiny, когда мне нужна ПЛИС?
Ладно, чувствую здесь я ответа не получу.
Аноним 18/05/19 Суб 21:32:23 3674511103
zu.png 102Кб, 1629x847
1629x847
Аноним 18/05/19 Суб 21:53:23 3674521104
>>367450
Ты даже не можешь внятно написать чем тебе не подходит MAX10.
Аноним 18/05/19 Суб 22:38:59 3674551105
Существует в Верилоге атрибут (  full_case  ). Зачем он нужен, если у case есть default?
Аноним 18/05/19 Суб 22:46:27 3674561106
>>367450
>Зачем мне ATtiny, когда мне нужна ПЛИС?
Нет, не нужна.
Аноним 18/05/19 Суб 23:11:06 3674571107
>>367455
Не знал о таком. Прочитал, тоже кажется что это не нужно.
>если у case есть default?
Только там еще присвоить значение нужно, так что при использовании full_case код немного короче будет. Также это вроде как работает только для синтеза, а для симуляции не учитывается.
Аноним 18/05/19 Суб 23:40:43 3674581108
>>367457
На счёт симуляции не знаю, а вот что full_case, что default = 3'dx дают одинаковую схему - факт.

Аналогично с (   parallel_case   ), что он есть, что его нет, RTL-схема одна и та же.
Аноним 20/05/19 Пнд 23:51:58 3675931109
посоветуйте гайд по квартусу ii
с меня тонну нефти
Аноним 21/05/19 Втр 18:09:17 3676661110
Аноним 21/05/19 Втр 19:18:02 3676701111
>>367593
с меня как всегда
Аноним 23/05/19 Чтв 15:42:16 3678761112
>>366929
>достаточно написать обертки для платформозависимых сущностей. А с VHDL предстоит долгая ебля с либами
С какими конкретно либами? И что ты подразумеваешь под платформой?
Аноним 25/05/19 Суб 14:49:50 3681191113
Перенаправили из /pr/сюда. Хоть мне и кажется, что мой вопрос больше соответствует той доске.
Cап /ra/! заканчиваю радиотехнический факультет провинциального Политеха. Программирование было с нихуя, за исключением пары-тройки шаблонных работ в Verilog. Раньше хотел пойти на второе высшее, но прочёл мнение, что программистам академическое образование ни к чему. Хотел бы вкатиться в программирование всяческих микроконтроллеров и прочего. Но понимаю, что это будет валяться мёртвым грузом без самых минимальных навыков и знаний. Короче, ещё один запрос каких-то базовых курсов, учебников и т.д. Чтобы уже через полгода мой быдлокод работал . Наиболее интересны языки: С++ (Arduino) и VHLD/Verilog (ПЛИС)
Аноним 25/05/19 Суб 15:32:59 3681311114
Аноним 25/05/19 Суб 17:15:01 3681371115
Аноним 25/05/19 Суб 17:22:00 3681381116
>>368131
Открыл предпоследнее видео, а там минут 45 про case, casex и casez. При этом ни слова о том что будет, если подать на вход сигналы с состояниями z и x. Ну да, кто ничего не умеет - тот идет работать в отдел стандартизации, а кто даже этого не умеет - тот идет учить.

>>368119
>С++ (Arduino)
Да уж, это сильно.
Аноним 25/05/19 Суб 17:23:53 3681391117
>>368137
Это эксгибиционизм.
Аноним 25/05/19 Суб 19:04:42 3681441118
>>368119
> Программирование
> Verilog
Аноним 26/05/19 Вск 02:15:33 3682151119
>>368138
>подать на вход
На вход чего?
Аноним 26/05/19 Вск 04:00:55 3682161120
>>368139
Я такая же херня.
Аноним 26/05/19 Вск 08:11:54 3682271121
case.png 28Кб, 374x618
374x618
>>368215
Очевидно что на вход case, casex и casez, т.е. в качестве того что в стандарте называется expression. Если применительно к видео, то на вход модуля Test, в котором набирался в этом видео код со всякими case, casex и casez.
Вот тебе пример. Что выведет в результате? И самое главное, какие из этого можно сделать выводы? Если в том видео такое разбиралось, то извиняюсь, значит недостаточно внимательно смотрел.
Аноним 26/05/19 Вск 17:58:16 3683001122
Аноним 26/05/19 Вск 21:55:10 3683271123
case2.png 24Кб, 404x629
404x629
>>368300
Нет, по моему это явно не то. Там ты подаешь на вход только комбинации из нулей и единиц. А я писал о том, что при использовании casex, при симуляции можно будет проглядеть появление неопределенных состояний на входе. То есть, при использовании casex, при симуляции может быть все хорошо, но на самом деле внутри будут неопределенные состояния, а это может вылезти уже при синтезе.
Вот на картинке немного более наглядный пример. Выведет
>case default
>casex 2'b00
>casez default
Из этого явно видно, что если при симуляции где-то внутри образуются неопределенные состояния, то casex их может замаскировать. Если уж объяснять различия кейсов, то этому эффекту нужно было уделить достаточно времени.
Аноним 27/05/19 Пнд 00:13:48 3683361124
>>368327
>Там ты подаешь
Я - не он.
>при использовании casex, при симуляции можно будет проглядеть появление неопределенных состояний на входе
24:20
Аноним 27/05/19 Пнд 06:53:53 3683471125
>>368336
Да, проглядел. Ну тогда почти нормально, только правильные выводы не сделаны. Обрати внимание на 41:30. На самом деле не нужен casex, а вовсе на casez. По крайней мере в синтезируемом коде casex вреден.
Хотя я тоже могу в чем-то ошибаться.
Аноним 27/05/19 Пнд 09:36:07 3683551126
>>368347
>По крайней мере в синтезируемом коде casex вреден.
Почему? (предыдущий диалог не читал)
Аноним 27/05/19 Пнд 22:44:08 3684651127
>>368347
> На самом деле не нужен casex, а вовсе на casez. По крайней мере в синтезируемом коде casex вреден.
Не совсем понял мысль, ну да ладно.
Аноним 28/05/19 Втр 06:52:21 3684711128
Аноним 28/05/19 Втр 11:02:02 3684991129
>>368471
Да, убедительно.

Бля, пиздец. Хуле так плохо? Как можно X в проводе воспринимать как "тебя не должно ебать, что здесь находится, расходитесь, здесь нечего смотреть"? Нахуй такое делать в симуляторе, если по физическому проводу подать такой сигнал физически невозможно? Я хотел придумать смишную шутку, сравнивая с чем-нибудь подобное поведение, но даже специально не смог придумать что-то более нелепое. Я всегда считал, что X как значение сигнала означает "неизвестно или явно не установлено, возможен любой вариант", и не предполагал, что может быть иначе.
Аноним 29/05/19 Срд 01:46:25 3685671130
Сорян, если не в тему, но есть вопрос. Мне нужно запилить на ПЛИС схему, которая как можно быстрее вычислит, в каком диапазоне находится двоичное число. Т.е. 13-ти битный входной диапазон нужно разбить на 32 поддиапазона и вычислить в каком из поддиапазонов находится входная комбинация. Мне в голову пока приходит только мысль о том, чтоб поставить 5-ти разрядный компаратор, который сравнит входной сигнал с 16-м диапазоном, если меньше, то сравниваем вход с 8-м, если больше, то с 25-м и т.д.
Аноним 29/05/19 Срд 15:01:25 3686121131
>>368567
Это не "как можно быстрее".

"Как можно быстрее" — это подать вход на 30 компараторов одновременно и вывести сигнал от компаратора, который показывает "не меньше", если следующий за ним показывает "меньше".

>Мне в голову пока приходит только мысль о том, чтоб поставить 5-ти разрядный компаратор
Почему пятиразрядный? Ты точно знаешь, что границы диапазонов у тебя определяются старшими 5 разрядами, а в младших 8 всегда нули? Что будешь делать, если диапазоны разбиты как 0-1, 2-3, ... , 60-61, 62-8191? У тебя границы-то вообще предполагаются жёстко заданными, или подаваемыми на схему в процессе работы?
Аноним 01/06/19 Суб 12:04:00 3688121132
Почоны, недавно на ЛОРе новость пробегала, что открыли какую-то там MIPS архитектуру, MIPSOpen чтоли. Теперь любой кот может свой ЦПУ замутить на ПЛИСе? Или как?
Аноним 01/06/19 Суб 12:05:34 3688131133
Аноним 01/06/19 Суб 17:11:50 3688291134
>>368812
>свой ЦПУ замутить на ПЛИСе
Будто раньше нельзя было. Даже в этом треде есть исходный код простенького процессора (150 строк на верилоге). Или ты про процессоры, на которых будет работать линукс? Так и такие, с открытым исходным кодом, уже довольно давно существуют.
Аноним 02/06/19 Вск 12:56:29 3689521135
Аноним 02/06/19 Вск 17:22:30 3689941136
>>368812
RISC-V. Сейчас основной дроч на формальную верификацию. Есть даже свободно-открытые ПО от сообщества гиков и FPGA-платы от Lattice с открыто-свободным битстримом. Не такое крутое, конечно, как у Altera или Xilinx, но зато швабодка.
Хуан Жэньсюнь 02/06/19 Вск 17:26:15 3689961137
image.png 61Кб, 869x610
869x610
День добрый, мне нужно придумать преобразователь соотношения частот f1/f2 в двоичный код, что можете сказать об этой структурной схеме? В интернете я не смог найти примеры деления двух частот, и до конца не понимаю как мне делать схему, посоветуйте как реализировать это, надеюсь на вашу помощь
Если есть пример похожей электрической принципиальной дайте знать
Аноним 02/06/19 Вск 19:36:05 3690101138
>>368996
И в течении какого периода счётчики должны считать перед тем как поделить?
Аноним 02/06/19 Вск 19:49:07 3690111139
>>368996
Но зачем АЦП, если используешь как простой компаратор? И зачем тут ПЛИС?
Аноним 02/06/19 Вск 21:13:49 3690141140
>>369010
Без разницы, так как нужно соотношение частот
>>369011
Препод меня походу наебать решил и сказал что АЦП
Аноним 02/06/19 Вск 22:13:17 3690161141
>>369014
Данным способом с разницей, чем дольше - тем больше точность. Если у тебя каждый счётчик подсчитает по одному периоду какой будет результат?

Если эти частоты невысокие относительно тактовой, тогда можно подсчитать длительность одного периода каждого сигнала в единицах тактов тактовой частоты и после поделить.
Аноним 04/06/19 Втр 18:50:03 3691811142
>>368829
>>368952
>>368994
С добрым! Я просто вообще не в теме, поэтому подумал что это какая-то крутая новость, а так получается просто рекламная акция? А какого уровня нужна ПЛИС, чтобы сделать простенький ЦП (типа Z80 или STM32F103)? Какая получится производительность? Чтобы подключить внешнюю DRAM-память, понадобится отдельная ПЛИС? Чтобы сделать вывод изображения по LVDS / DPI (ноутбучные / мобильные панели) - для этого нужно будет задействовать ещё одну ПЛИС? Вобщем, что-то типа хобби-ПК хочется реализовать.
Аноним 04/06/19 Втр 19:05:12 3691851143
>>369181
Нет, все поместится в устаревший spartan6
Аноним 04/06/19 Втр 20:42:29 3691951144
>>369181
>Вобщем, что-то типа хобби-ПК хочется реализовать.
Парень, нахера оно тебе надо? Иди лучше в веб дезигн. Там и денег больше будет.
Аноним 05/06/19 Срд 19:01:08 3692681145
>>369181
>сделать простенький ЦП (типа Z80 или STM32F103
STM32F103 не самый простенький, надо сказать.
Аноним 05/06/19 Срд 19:27:52 3692691146
>>369268
cortex m3 нет же в открытом доступе. m1, кажется, есть
Аноним 05/06/19 Срд 20:42:06 3692721147
>>369181
Открытая лицензия RISC-V даёт возможность собирать абсолютно кастомный CPU. Швободные FPGA-платы дают возможность делать это относительно недорого, у себя дома, в железе, а не только в симуляторе. Формальная верификация и современные среды разработки позволяют автоматически проверять дизайн твоей архитектуры на соответствие формальным правилам синтеза, вписываемость её в установленные ограничения, отсутствие багов, что даёт возможность поманяфантазировать о развитии в недалёком будущем технологий костылирования железа до уровня костылирования ПО. Это очень круто для людей в теме.
Память и всяческие контроллеры ввода/вывода на FPGA-платах обычно присутствуют. Есть, конечно, любители паять это дело вручную.
Аноним 08/06/19 Суб 07:58:47 3694621148
Аноним 10/06/19 Пнд 19:23:45 3696631149
fitimage.php.jpeg 26Кб, 500x500
500x500
Есть недорогая китайская девборда с отверстиями под разъемы с 2.54 шагом. Не могу решить, папу туда запаивать или маму.

Часть коннекторных падов поключена к плис скоростными дифлиниями и планируется подключать к борде что-то более-менее скоростное, типа hdmi.
Аноним 10/06/19 Пнд 19:39:34 3696671150
180-degree-2-54[...].jpg 50Кб, 640x640
640x640
Аноним 11/06/19 Втр 01:54:59 3697021151
Анон, поддерживают какие-либо инструменты формальной верификации 1'bX? Типа, мы задаём в assume, что при i_tvalid==0 |-> i_tdata=N'bXX...XX, и любой assert триггерится, когда проверяемое условие зависит от сигнала, зашкваренного 1'bX-ом?
Аноним 11/06/19 Втр 14:22:34 3697261152
>>369702
Да, Synopsys VC Formal поддерживает, называется это у них "X-Propagation Verification (FXP)" Сам не пробовал, денег нет таких.
Аноним 15/06/19 Суб 14:14:13 3705671153
Аноним 17/06/19 Пнд 12:43:59 3707831154
>>316943 (OP)
Подключил китайский usb blaster на stm32f103c8t6, поставил драйвера из quartus lite 18.1, а при открытии Tools/Programmer из квартуса ловлю BSOD .
Как быть?
Аноним 17/06/19 Пнд 12:46:53 3707841155
>>370783
причём в CentOS7x64 в виртуалке всё нормально подхватилось, но мне не хочется каждый раз для прошивки запускать виртуалку.
Аноним 17/06/19 Пнд 16:57:34 3708111156
>>370783
Переустанови ШИПДОШS
Аноним 17/06/19 Пнд 17:27:33 3708131157
>>370783
Перепробовал кучу дров (от 16, 16.1, 19.1, для семёрки) - либо BSOD, либо квартус не видит бластера. Поставил таки в бубунту snandalone programmer и всё заработало.

>>370811
>Переустанови ШИПДОШS
Без гарантии, что бластер заработает, и потом ещё день ставить весь мой софт и всё настраивать. Спасибо, анон, ты гений.
Аноним 17/06/19 Пнд 18:13:01 3708171158
>>370813
Может у тебя с пекой чего, попробуй на другой.
Магистратура электронщика Аноним 22/06/19 Суб 12:56:43 3711761159
Здравствуйте, заканчиваю бакалавра по специальности " Мехатроника и Робототехника".
В процессе обучения сформировалось стойкое желание разрабатывать электронную аппаратуру, писать под неё программы (под этим я подразумеваю всякие микроконтроллеры, ПЛИСы и т.д.).
Так же хочется расширить знания по цифровой схемоте, методам изготовления микросхем, плат, различной периферии и т.д.
Итак, вопрос, какие направления магистратура и ВУЗы дают такие знания?
Аноним 22/06/19 Суб 13:19:17 3711801160
>>371176
>сформировалось стойкое желание разрабатывать электронную аппаратуру
К врачу, если само не пройдет.
Аноним 22/06/19 Суб 13:29:35 3711821161
Аноним 22/06/19 Суб 17:03:42 3711971162
>>371176
>микроконтроллеры, ПЛИСы
Слишком разное
Аноним 22/06/19 Суб 17:15:09 3711981163
>>371176
> какие направления магистратура и ВУЗы дают такие знания?
Никакие, в вузах только устаревшая хуита.
Аноним 22/06/19 Суб 17:34:31 3712001164
>>371198
Я понимаю, но они же хоть что то знают?
Аноним 22/06/19 Суб 17:35:07 3712011165
>>371197
Хорошо, только ПЛИСы
Аноним 22/06/19 Суб 17:41:36 3712041166
>>371197
Хуевый будет специалист что-то делающий на FPGA, если не сможет написать простенькую программу на Си. Разное тут скорее "методы изготовления микросхем" и остальное. Да и то, это немного рассказывают для общего развития на всех смежных специальностях.

>>371198
Точно, все устарело. Математика, физика, РЦС, основы ЦОС и прочее. А еще в FPGA теперь без транзисторов наверное обходятся, потому что они тоже устарели.

>>371201
Для того чтобы быдлокодить всякую ерунду не требуется высшее образование.
Аноним 22/06/19 Суб 18:00:34 3712051167
>>371204
> Математика, физика, РЦС, основы ЦОС и прочее. А еще в FPGA теперь без транзисторов наверное обходятся, потому что они тоже устарели.
> инб4 в магистратуре учат, а не дают устаревшие лабы из 70х
Аноним 22/06/19 Суб 18:14:57 3712061168
>>371204
>Для того чтобы быдлокодить всякую ерунду не требуется высшее образование.
Я не хочу быдлокодить, поэтому и спрашиваю где можно поучиться?
Аноним 22/06/19 Суб 18:35:10 3712071169
>>371206
Если так ставить вопрос (пусть меня научат!), то нигде наверное. Думаю, что на любой специальности рассказывают много чего необходимого, весь вопрос только в том, что у тебя после этого в голове задержится.
Аноним 22/06/19 Суб 21:16:46 3712111170
>>371197
Может он хочет софтпроцессор и писать для него программы.
Аноним 22/06/19 Суб 22:45:18 3712131171
Нюфаг итт.
Хочу вкатиться в плис.
На руках Даймонд и плата.
С чего начать?
Аноним 22/06/19 Суб 23:20:33 3712161172
>>371213
Светодиодом помигай.
Аноним 24/06/19 Пнд 15:01:06 3713421173
Антоны, кто-нибудь пользовался параллельной симуляцией с использованием флага -mc2 в QuestaSim? Не могу найти сетап гайда для этой опции (требует какую-то хитрую библиотеку и скрипт setup.sh в директории _mc2)
Аноним 01/07/19 Пнд 11:54:39 3717781174
Кто-нибудь видел свободную реализацию подобного gpif cypress? Я понимаю, что там state machine, но хотелось бы поучиться на подробностях и нюансах.
Аноним 01/07/19 Пнд 12:13:55 3717801175
>>371778
>свободную
открытую
Аноним 04/07/19 Чтв 23:15:34 3720001176
Аноним 05/07/19 Птн 22:18:56 3720681177
Аноним 06/07/19 Суб 12:21:40 3720891178
>>372068
поч? плюсики минусики какие есть?
Аноним 07/07/19 Вск 09:50:37 3721711179
>>372089
Минусики таковы, что как только ты захочешь применить эту вещь к чему-то более сложному, чем мигание светодиодом, окажется, что пердолинг растет по экспоненте в квадрате.
Плюсики там написаны (правда сомнительные): занимаешься пердолингом не на Систем Верилоге, а на Путоне.
Аноним 10/07/19 Срд 03:58:23 3724661180
>>371342
А Ментор уже может в параллельность?
Сам им пользовался только совсем давно в бесплатной версии из комплекта Quartus, сейчас на работе используем Cadence Xcelium, как раз в понедельник получили версию 19.03 и сегодня буду смотреть, как заставить его в параллельную симуляцию.
Аноним 10/07/19 Срд 22:16:16 3725201181
>>372466
Квеста на прыщах может. Но там танцы с бубном.
Аноним 15/07/19 Пнд 13:41:42 3727651182
Поделитесь более-менее промышленной реализацией uart, которую используете в своих проектах?
Аноним 15/07/19 Пнд 17:52:40 3727871183
>>372765
Каждый уважающий себя плисовод обязан сам себе запилить uart.
Аноним 15/07/19 Пнд 18:10:22 3727891184
>>372787
Я пилил в универе, но сейчас не хочу изобретать велосипед.
Аноним 15/07/19 Пнд 19:12:52 3727901185
>>372789
Ну раз пилил, значит уже изобрёл. Доведи до ума и радуйся.
Аноним 20/07/19 Суб 18:32:47 3731491186
1
Аноним 21/07/19 Вск 17:32:47 3732181187
Аноним 21/07/19 Вск 17:35:58 3732191188
>>373218
Для начала, его бы стоило спросить, чем его не устраивает UART из Quartus/Vivado.
Аноним 23/07/19 Втр 01:17:54 3733021189
>>373219
Ну например, что у кряктуса UART можно использовать только как корку для ниоса.
Мимо-другой-анон
Аноним 23/07/19 Втр 02:39:14 3733081190
>>373302
В смысле? У него же выведен Avalon ST (вроде, хотя, может, и MM), разве этого недостаточно? Или тебе нужен именно AXI или APB и чтобы без мостов?
Аноним 25/07/19 Чтв 00:37:20 3734361191
>>373308
По-моему его нельзя инстанцировать в вакууме, гуи не позволяет, только как корку внутри Ниоса. Может из исходников получившейся сборки его можно выдернуть, но это такая себе ебля, можно у же и свой написать (в книге Pong Chu есть хороший пример)
Аноним 29/07/19 Пнд 14:01:27 3737721192
Хочу захуйарить гигабитный езернет в дохуя медленных интерфейсов, вроде uart. Для начала пусть будет 32 низкоскоростных интерфейса. Как всё это архитектурно реализовать?

Это же возникает мультиплексор 32в1, не факт, что вообще что-то путное разведется.

Может бывают какие-то конвейерные мультиплексоры?
Аноним 29/07/19 Пнд 15:45:07 3737771193
>>373772
Может начнешь с чего-то условно попроще?
Погугли поточные (потоковые) сети типа SDH(PDH) и элементарный поток E1. Там как раз что хочешь сделать. Осторожно, там ебаный и неиллюзорный дроч с синхронизацией между всеми узлами. А мне впадлу этим заниматься.
Аноним 29/07/19 Пнд 18:18:47 3737941194
>>373777
Погуглил. Это же всего лишь протокол, там не сказано как его реализовать на FPGA
Аноним 29/07/19 Пнд 19:11:20 3738061195
>>373772
Такое разрабатывают за деньги.
Аноним 29/07/19 Пнд 19:28:20 3738091196
>>373772
Недавно понадобилось данные шириной 2880 бит переупаковть отдельными посылками по 32 бита и положить в FIFO.

Добавил простенький FSM, который обрабатывает ready/генерирует valid протокола AXI-Stream, и хилыховскую корку AXI Stream data width converter (320 байт → 4 байта, т.е. 90в1). Вообще не ебался, всё заработало сразу, из шины шириной 2880 бит делает 90 посылок по 32 бита вокруг пальца на глазах у всего мира как по нотам. Не смотрел, что там синтезируется, но, наверное, луты. Хуле на них смотреть? Советую AXI Stream использовать для твоей цели, много бесплатных корок для стандартных операций с ним (FIFO, переупаковка по ширине, clock domain crossing, пакетирование, маршрутизация, дублирование, объединение, etc).
Аноним 29/07/19 Пнд 19:46:28 3738101197
А ещё недавно задача была почти один в один как у тебя, надо было с сенсора камеры принять 10 линий LVDS, объединить и отправить по более быстрому интерфейсу. Каждая линия передаёт по одному пикселю, требовалось сперва по отдельности десериализировать линию, потом собрать в один поток пикселей в порядке очереди и передать с некоторой степенью параллельности (4 пикселя на посылку). Тоже делал при помощи AXIS, там возникала сложность, что пиксели 10-битные, а AXIS работает побайтово. Забивал старшие биты нулями, переделывал в AXI Stream, переупаковывал по ширине при помощи готовой корки, выкидывал нули там, где они не нужны. Работает прекрасно.
Аноним 29/07/19 Пнд 19:53:42 3738121198
>>373794
Упустил одну мелочь - в потоках Е1 у тебя постоянный поток говна, а не то густо, то пусто как в пакетных сетях Ethernet.
Для первичного разбора ситуации самое то и проще в реализации. Реально не ебу как там происходит первичная синхронизация чтобы поймать 0 слот относительно которого идет прием и разбор на подпотоки.
Тут тебе просто дан пример - что такое оборудование есть с бородатых времен. Привет цифровым АТС. Чего только в потоки E1 не пихали - и Ethernet, и rs232 (живьем видел) и много чего. Нехватает 64 килобит? Бери склеивай 2,3,4.. слотов читай как задание на реализацию для продвинутых.
Напоследок скажу что всякое потоковое оборудование (те же конечные мультиплексоры) обычно стоят как крыло от самолета, в отличии от металлолома под пакетные сети.
Так что твоя идея не нова, все давно реализовано, ищи и дан будет ответ.
Аноним 29/07/19 Пнд 20:09:10 3738141199
>>373812
Как ты в этом контексте различаешь потоковое и пакетное?
Аноним 29/07/19 Пнд 20:33:13 3738201200
>>373814
>Передаваемые по линии E1 данные организованы в кадры
Вообще не понимаю о чем он
Аноним 30/07/19 Втр 04:45:46 3738361201
>>373814
>>373820
Очень просто.
В Е1 - даже если нечего передавать - передаются нули. Там нет пауз или тишины в линии - всегда идет передача.
В пакетных сетях (тот же Ethernet) - данные передаются фреймами определенного формата и длины, между которыми есть промежутки (IPG) и длина фрейма разная - более-менее постоянная длина заголовка с адресами и переменной длины для данных. Нечего передавать - у тебя только link pulses на линии.
Из-за всех этих служебных полей у тебя образуется неслабый джиттер в выдаче данных, которого нет и он предсказуем и постоянен в поточных сетях. Для жесткого риалтайма - это фейл.
Для промышленности есть немного другой Ethernet с кучей костылей, в частности IEEE 1588, особые свичи допускающие кольца в сети (видел у бывшего Micrel).. Джиттер там никуда не девается, которого принципиально нет в поточных сетях, где задержка передачи стабильна и постоянна.
Аноним 01/08/19 Чтв 12:43:37 3739841202
>>373836
cпасибо за ликбез
Аноним 02/08/19 Птн 08:24:48 3740411203
Обосрите меня нежно, закидав ссаными тряпками более-менее окольной информацией про максимальные токи ядра, pll и подобной периферии у Cyclone IV.
Altera говорит пиздуйте в Power Estimator, а смысл там смотреть данные для мигалки светодиодом? Данные для максимально тяжелой загрузки при использовании всей логики и триггеров на максимальной частоте оно не показывает.
Аноним 06/08/19 Втр 19:28:58 3745111204
Плисаны, допустимо ли внутри олвэйса сбрасывать сигнал по его же высокому уровню?

reg we;
always@(posege clk)
begin
if (event1) we <= 1;
if (we) we <= 0;
end

Я понимаю, что здесь лучше сделать детектор фронта, но дело происходит в здоровой стейт-машине и как бы мне не хотелось одним лишь детектором фронта не обойтись.
Аноним 06/08/19 Втр 19:29:35 3745121205
>>374511
Здесь вроде глитч образуется, не?
Аноним 07/08/19 Срд 15:42:19 3745681206
>>374511
В твоём варианте we будет перещёлкиваться каждый posedge clk, если event1 высок несколько тактов подряд. Хочешь, чтобы we длился ровно 1 такт — надо писать детектор фронта, хули поделать, жизнь — боль.

Алсо писать, как у тебя, допустимо, но выглядит как говно, сделай хотя бы if/else, чтобы два неблокирующих присваивания за одно событие одному регистру не происходили, такое невозможно в железе.

begin
if (we) we <= 0;
else if (event1) we <= 1;
end
Аноним 07/08/19 Срд 15:50:53 3745691207
Полноценный детектор фронта не сильно сложнее, кстати.

reg [1:0] we;
always@(posege clk)
begin
if (we[0]) we <= 2'b10;
else if (event1 && we == 2'b00) we <= 2'b01;
else we <= 2'b00;
end

Нужный тебе сигнал будет на we[0]
Аноним 07/08/19 Срд 15:55:41 3745701208
reg [1:0] we;
always@(posege clk)
begin
if (we[0]) we <= 2'b10;
else if (event1 && we == 2'b00) we <= 2'b01;
else if (!event1) we <= 2'b00;
end

быстрофикс
Аноним 07/08/19 Срд 16:22:00 3745711209
>>374568
>В твоём варианте we будет перещёлкиваться каждый posedge clk, если event1 высок несколько тактов подряд
Это да, но по event1 я перескочу на другое состояние одновременно со сбросом we.
Аноним 07/08/19 Срд 16:23:06 3745721210
>>374568
Бля, а че так нельзя?

reg [1:0] we;
wire trig = we == 2'b01;
always @(posedge clk)
we <= {we, event};
Аноним 07/08/19 Срд 16:32:54 3745731211
>>374571
Можно.
Я люблю, чтобы на выходе модуля был регистр, а не комбинационная схема, так clock domain crossing проще делать.
Аноним 07/08/19 Срд 18:49:26 3745801212
>>374573
>clock domain crossing
Часто приходится это делать? Из моей практики разве что на всякие внешние ресеты приходилось ставить синхронизатор. А шины данных через тактовые домены пробрасываю с помощью двуклоковых fifo/bram
Аноним 07/08/19 Срд 18:58:38 3745821213
>>374580
>А шины данных через тактовые домены пробрасываю с помощью двуклоковых fifo/bram
Нахуя, достаточно же одного триггера-флага.
Аноним 07/08/19 Срд 19:13:13 3745871214
>>374582
Мы с тобой об одном и том же говорим?
CDC-синхронизатор это устройство из двух и более последовательных регистров. Как с его помошью пробросить целую шину?
Если на каждый бит шины поставить по синхронизатору - то это так не заработает.
Аноним 07/08/19 Срд 19:16:16 3745881215
large.jpg 58Кб, 750x593
750x593
>>374580
Вспомнил историю, после которой я начал так делать со всеми модулями, для которых неизвестно, куда в будущем может уйти их выход. Там даже не было cdc.

Был один модуль, у которого на выходе была комбинационная логика — он брал значения из регистров, лутом вычислял результат и передавал наружу без защёлкивания. Был другой модуль, у которого в одном из подуровней был асинхронный резет:

always @(posedge clk, negedge aresetn)
if (!aresetn)
result <= 0;
else
result <= some_xynta;

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

А потом оказалось, что на более высоком уровне иерархии комбинационный сигнал с первого модуля проходит на асинхронный резет внутри второго. А комбинационная логика даёт валидный сигнал только в заданные моменты времени, а между ними она может болтаться как угодно. В итоге у меня резет срабатывал в каждом такте, хотя "валидное" значение всегда было 1. Я искал этот баг с бубном и жертвоприношениями несколько дней. После этого комбинационные выходы у меня вызывают инстинктивное отторжение, вроде психической травмы. Ну и асинхронные резеты тоже. Плюс вспомнились ранее прочитанные гайдлайны, где выходы рекомендовалось делать на регистрах, и пришло осознание, для чего оно так.
Аноним 07/08/19 Срд 19:24:27 3745891216
Но вообще CDC приходится делать довольно регулярно, потому что управляющая логика синхронна с клоком софт-процессора, а обработка сигналов — на какой-то своей, сколько потянет. Обычно тянет больше, чем микроблейз.
Аноним 07/08/19 Срд 19:25:05 3745901217
>>374588
Бывает, хуле.

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

Надо с этим совладать. А то как же например без комбинаторных выходов запилить AXI-интерфейс?
Аноним 07/08/19 Срд 19:27:33 3745911218
>>374590
Если такое приходится делать, я обычно вставляю AXI register slice. Но правило, что выходы должны быть на регистрах, я почерпнул как раз из гайдлайнов по AXI.
Аноним 07/08/19 Срд 19:55:30 3745931219
>>374587
Или ты меня не понял, или я тебя.
В одном тактовом домене сначала пишешь в регистр своё передаваемое слово, потом выставляешь флаг в триггере. В приёмном тактовом домене ждёшь пока флаг выставится и если выставится - значит можно читать с регистра передаваемое слово, оно там актуально и стабильно. Никаких двуклоковых fifo/bram тут не нужно.

>>374588
>А потом оказалось, что на более высоком уровне иерархии комбинационный сигнал с первого модуля проходит на асинхронный резет внутри второго.
Это как так оказалось? Чей-то проёб, не иначе. Асинхронный сброс на то и асинхронный сброс что делается для сброса всей системы в исходное состояние, а значит внимание ему должно уделяться особое.
Аноним 07/08/19 Срд 20:02:06 3745941220
>>374593
>Чей-то проёб, не иначе.
Люди ошибаются, человеку свойственно ошибаться. Нет программ сложнее хеловорлда без багов, и железки сложнее мигалки светодиодом без багов тоже нет. Но не каждый день удаётся словить баг, который невозможно увидеть на ILA, потому что ILA пишет сигнал только в "правильные" моменты.
Аноним 07/08/19 Срд 20:11:14 3745961221
>>374593
Это будет работать при условии, что состояние на шине данных будет длительное не будет меняться во время синхронизации. Какой-то конфигурационный параметр передать можно, но поток данных таким образом эффективно не передать.
Аноним 07/08/19 Срд 20:26:08 3745971222
>>374596
Передать, только медленно. А ели нужна скорость, то - да.

>>374594
>Но не каждый день удаётся словить баг, который невозможно увидеть на ILA
Я взял за правило в начале имён асинхронных входов ставить букву а, что-то вроде aReset, что предотвращает от подобных косяков.

Тоже прохладную запилю.
У меня было два автомата, оба Мили. И вот они обменивались сигналами между собой. Казалось, что могло пойти не так? А на деле некоторые выходные сигналы одного автомата срывались в автогенерацию, т.е. начинали переключатся на какой-то высокой частоте, значительно выше тактовой, и вернуть в рабочее состояние можно было только перебросив питание. Я весь извёлся пока понял в чём дело. У автоматов Мили выходы зависят не только от состояний, но и от входов, и когда у них заводишь сигналы друг на друга, то возникает обратная связь, т.е. петля, через их комбинационные схемы, что и приводило к таким эффектам. Дня 4 убил на поиски проблемы.
Аноним 07/08/19 Срд 20:36:58 3745991223
>>374597
Это, по ходу, как раз причина, почему в гайдлайнах AXI пишут про регистры на выходах. Я перезагуглил, там не написано, что регистры прям на выходах должны быть, но написано, что от входов до выходов не должно быть чисто комбинационных путей. Ну типа, если тебе слейв выдал ready==0, хочется ему сразу же ответить valid==0, без защёлкивания. Вот только если два подобным образом написанных модуля включатся друг в друга, они могут уйти в автогенерацию.
Аноним 07/08/19 Срд 20:54:38 3746001224
Плисаны, нужна схема, которая выдает айдишники допустим в диапазоне от 0 до 1024. После использования айди возвращаются в рандомном порядке для последующего использования. Что-то туплю, как это запилить?
Аноним 07/08/19 Срд 20:59:18 3746031225
>>374600
Насколько строгие требования к рандомности? Криптографические?
Аноним 07/08/19 Срд 21:03:27 3746041226
>>374603
Можно по порядку, я так понимаю можно отдать по счетчику, а когда счетчик закончится гонять по кругу возвращенные ID, но вот что делать если какой-то из id не вернули я не могу придумать.
Аноним 07/08/19 Срд 21:05:45 3746051227
>>374603
А, понял. Это они возвращаются рандомно. Я б сделал 1024-битный массив "свободно-занято" и несколько каскадов приоритетных декодеров, дающих на выходе номер наименьшего незанятого бита.
Аноним 07/08/19 Срд 21:19:41 3746061228
>но вот что делать если какой-то из id не вернули я не могу придумать.
Таймаут делать надо. Если не хочется делать 1024 таймера, то можно сделать группу таймеров, которые будут по очереди проверять освобождение айдишников внутри своей группы. "переходим к занятому биту — если он висит в течение заданного промеждутка, сбрасываем — если он пометился как возвращённый за время наблюдения, переходим к следующему занятому". Если айдишники в нормальном режиме освобождаются быстро, то один счётчик может проверять довольно большую группу и зависнуть только на реально потерянном.
Аноним 08/08/19 Чтв 11:15:03 3746291229
>>374599
А можешь скинуть название этого гайдлайна?
Аноним 08/08/19 Чтв 11:47:08 3746351230
>>374629
ug761 (Xilinx AXI Reference Guide)
Аноним 08/08/19 Чтв 11:51:08 3746361231
Аноним 08/08/19 Чтв 15:17:36 3746421232
>>374593
>Асинхронный сброс на то и асинхронный сброс что делается для сброса всей системы в исходное состояние
И как ты поступаешь, если у тебя есть две ситуации сброса, начальный и принудительный в случае появления ошибки? Только не говори, что делаешь два разных ресета, наверняка же один используешь для всех целей. Отсюда такие баги и лезут. По крайней мере пока в первый раз не обжёгся, а потом-то уже конечно дуешь и на воду.
Аноним 08/08/19 Чтв 15:50:17 3746431233
Анонче, поясни за всю хуйню.
Учу Verilog, и у меня появились два вопроса:
1) Почему Synplify pro, не может нормально подсказать, где ошибка? К примеру, сейчас полчаса ебал мозг на простейшем примере, пока не нашёл опечатку в названии передаваемого модулю значения. Ладно бы это было просто что-то не то, так такой переменной у меня не существует вообще.
В чем проблема сделать так, чтобы выдавались ворнинги/ошибки на неизвестные аргументы, как это сделано в GCC?
2) Встроенный в среду текстовый редактор абсолютно не умеет в автокомплит, подсветку синтаксиса (всё что не касается ключевых слов) и прочее. Такое вижу не только в IDE которой пользуюсь сейчас, но видел и в относительно свежих Квартусах.
Опять же, почему так? И чем все в таком случае пользуются? Явно же не пишут во встроенных редакторах. Notepad++ или Sublime с плагинами? В нормальную подсветку синтаксиса кажется могут, но они вроде не очень умные, по источникам из других файлов ходить не могут, и прочее. Тоже не очень удобно.
Аноним 08/08/19 Чтв 16:03:29 3746441234
>>374643
>пока не нашёл опечатку в названии передаваемого модулю значения.
Для необъявленного идентификатора автоматом создаётся новый объект типа wire. В ворнингах это есть. Разумеется, в 99.99999% это означает, что ты где-то опечатался. Это норма.жпг, меня сначала тоже бесило, потом привык. Перестаёт быть проблемой, когда знаешь, куда в ворнинги смотреть.
Аноним 08/08/19 Чтв 16:25:40 3746451235
>>374644
У меня даже ворнинга не было на это ну или я не увидел, но он выдал ворнинги только на то что пин не использован в модуле.
Аноним 08/08/19 Чтв 20:09:24 3746661236
>>374643
>Явно же не пишут во встроенных редакторах.
Именно так и делают.
Аноним 08/08/19 Чтв 20:16:06 3746671237
>>374642
>И как ты поступаешь, если у тебя есть две ситуации сброса, начальный и принудительный в случае появления ошибки?
Сбрасывать схемой сброса, у которой выход триггерный. Схема даёт импульс сброса на старте системы и в процессе работы по команде.
Аноним 08/08/19 Чтв 20:19:16 3746691238
>>374644
>Разумеется, в 99.99999% это означает, что ты где-то опечатался.
А оставшийся 0.00001% — это ты решил проверить "чё, правда создаётся?" — после чего забил на эту вредную хуйню навсегда.
Аноним 09/08/19 Птн 04:37:35 3746891239
Наверное, немного нерелетивный вопрос, но как на техническом уровне осуществляется рандомайзер в разных архитектурах? Я совсем дурак нешарящий, но предполагаю, что банальным выходом из метастабильности. Вроде в тех же х86 для программного рандома используется алушное деление с остатком, однако вполне возможно это обычный псевдорандом. Вопрос навеян вот этим >>374600
Алсо почему для плисов до сих пор пишут на verilog/vhdl и даже на "блочных" языках? Ведь есть же более симпотичный SV.
Аноним 09/08/19 Птн 06:02:19 3746931240
Аноним 09/08/19 Птн 06:16:18 3746941241
Аноним 12/08/19 Пнд 13:46:49 3749821242
>>374693
Синтезаторы внутри Vivado, Quartus, Diamond поддерживают SystemVerilog
Бесплатная версия ModelSim тоже поддерживает, кроме кавереджей, ассерешенов и пары прочих ништяков.
Хочешь ништяки? Никто не мешает тебе стянуть QuestaSim с электроникса.
Аноним 12/08/19 Пнд 18:12:51 3750041243
>>374982
>стянуть QuestaSim с электроникса
И как это сделать?
Аноним 12/08/19 Пнд 18:13:07 3750051244
Аноним 12/08/19 Пнд 18:36:13 3750091245
>>375005
>‎10-20-2017
Скажи честно, ты ебан?
Аноним 12/08/19 Пнд 18:44:06 3750121246
>>375009
Сижу в вивадо 2017.4 потому что более новых поломана функциональность IP-корки, которая мне нужна. Так что иди нахуй со свои подходом уровня арчешкольников.
Аноним 12/08/19 Пнд 19:58:53 3750171247
Аноним 12/08/19 Пнд 20:01:24 3750181248
>>375017
Ты же потом будешь по 300000кккк/пс заколачивать. Считаю ваще божеской ценой за курс.
Аноним 12/08/19 Пнд 20:05:21 3750191249
>>375012
>Сижу в вивадо 2017.4 потому что более новых поломана функциональность IP-корки, которая мне нужна.
Знаю я одного такого чела. Только он в планэхеде сидит.
Аноним 12/08/19 Пнд 20:25:08 3750211250
>>375019
Ну а я знаю чела, который сидит в 2019.1 и делает только мигалки светодиодом, дальше что?
Аноним 12/08/19 Пнд 21:07:13 3750241251
>>375021
Да ничего. Рано или поздно индусы таки впилят полную поддержку SV, пусть в Виваде 2022, а ты как сидел на 2017.4 так и будешь сидеть, потому что КОРКА СЛОМАЛАСЬ.
Аноним 12/08/19 Пнд 21:11:37 3750251252
>>375024
Вот только работать надо, задача должна быть решена, это требование №0. Перейти на системверилог в списке приоритетов стоит несколько после. Поломанность новых версий я проверяю с 2017 года регулярно.
Аноним 12/08/19 Пнд 21:27:32 3750271253
>>375025
>Вот только работать надо, задача должна быть решена, это требование №0.
Да ктож спорит. Поэтому мой знакомый чел и сидит в планэхеде.
Аноним 12/08/19 Пнд 21:39:51 3750281254
>>375024
Олдфаг в треде. Сижу в Квартусе 9.1.
Аноним 12/08/19 Пнд 21:47:11 3750301255
>>375028
>раздался голос со стороны альтеропараши
Аноним 12/08/19 Пнд 22:03:52 3750321256
>>375030
>ксайлинксопетух закукарекал за место авроры
Аноним 12/08/19 Пнд 23:32:15 3750361257
1558976980708-b.jpg 54Кб, 453x599
453x599
>>375004
>2019
>не иметь доступа на FTP
Аноним 13/08/19 Втр 08:31:47 3750711258
>>375004
Регаешься на електрониксе, пишешь пару десятков постов (желательно информативных), просишь добавить тебя в свои и получаешь доступ к ФТП.
Аноним 13/08/19 Втр 18:50:25 3751541259
>>375071
>просишь добавить тебя в свои
Кого просишь?
Аноним 13/08/19 Втр 19:49:08 3751601260
>>375154
Там на форуме раздел есть, который так и называется - "Доступ в свои".
Аноним 13/08/19 Втр 21:33:25 3751731261
>>375036
>>375071
>и получаешь доступ к ФТП
Или не получаешь.

Все вы тут такие охуенно умные, говорите, как будто прямо каждому хоть как-то показавшему адекватность будут давать доступ в свои. Люди за 40 лет со стажем на электрониксе в 10 лет с сотнями постов, помогавшие другим, часто туда не получают доступ. Либо отвечают модератору на дополнительные вопросы вроде конкретного названия специальности в дипломе, места работы, места жительства. Никто не мешает модератору задавать тебе эти вопросы - отвечаешь на них ты исключительно добровольно. Ты не хочешь отвечать? Ну а модератор не хочет тебя добавлять.
И, одновременно с этим, часто доступ туда получают двадцатилетние студенты, ещё не имеющие даже диплома бакалавра и занимающиеся, разве что, своими проектами и имеющие ~50 постов на форуме.
Всё зависит от рассматривающего заявку модератора и того, что у него в голове на этот момент. Если понравишься - может добавить. Не понравишься - тебя проигнорируют.
Аноним 13/08/19 Втр 22:11:07 3751741262
>>375173
Есть конкретный пример 40 летнего чела с 10 летним стажем, которому доступ не дали? Мне аж интересно стало, каким далбичем надо быть, чтобы тебя отфутболили.
Аноним 13/08/19 Втр 22:40:13 3751751263
Аноним 13/08/19 Втр 22:42:06 3751761264
>>375175
Хуясн. Посмотри последние заявки и покажи, кому там отказали.
Аноним 13/08/19 Втр 23:25:13 3751781265
>>375176
Ты чё буянишь, я вообще не приделах.
Аноним 14/08/19 Срд 18:16:42 3752531266
Аноны, мне нужно вычислять смещение в памяти путём умножения входного числа на константу. Если я поставлю DSP48 для этого дела это нормально будет или bad practice? ну типа DSP48 в задачах ЦОС на вес золота, а я его для такой хуйни ставлю(хотя у меня в плисине не будет ЦОС)

Как вообще умножение на логике пилят?
Аноним 14/08/19 Срд 18:33:36 3752561267
>>375253
Поставь знак умножения, хуле
Аноним 14/08/19 Срд 18:34:17 3752571268
>>375253
Обычно смещения кратны степени двойки, можно обойтись логическим сдвигом
Аноним 14/08/19 Срд 18:37:53 3752581269
>>375257
В моём случае так не получится( Смещение кратно 5 и 7

>>375256
И сколько каскадов лутов я получу? на 150 МГц взлетит?
Аноним 14/08/19 Срд 19:16:27 3752601270
>>375258
Ебани алгоритм умножения в столбик.
Аноним 15/08/19 Чтв 14:49:33 3753651271
>>375253
DSP48 и предназначены для умножения входного числа на константу, хуле. Так 99% фильтров работают, гонятся данные сквозь цепочку MAC, а те их на константы умножают, соответствующие форме импульсной характеристики. Так что ставь, не ссы.

Рекомендованный practice, правда, действительно использовать звёздочку и дать инструментам сделать inference блока DSP48. Если они будут тупить и инферить каскады лутов, можно добавить куда надо атрибут ( use_dsp = "yes" ), он охуенно работает, инферит в DSP48 даже аллаха. Не забудь до и после умножения пайплайновые регистры воткнуть, они будут правильно назначены на внутренние регистры DSP48, максимальная частота вырастет.
Аноним 17/08/19 Суб 14:10:24 3755661272
Я тут с платиной, но на итт возможно последняя надежда.
Что нужно для вкота? Моя более-менее понимат цифровые примитивы, комбинационную логику, триггеры, fsm, uart etc. Как устроено это ваше fpga - туманно, но представляю. Асло как описывать железяки на hdl, синтез и симуляция - тоже в какой-то степени разобрался, за исключением разве что верификации.
Второе. Достаточно скачать условный лайт квартуса и кодить на hdl, и уже после синтеза подбирать подходящую борду под проект, или необходима сама плис? Если последний вариант, что тогда брать для моргания диодом?
Чем бы заняться с плис (или без) для лучшей практики на подобии >>316964?
Аноним 17/08/19 Суб 15:46:14 3755761273
Аноним 17/08/19 Суб 17:53:23 3756001274
>>375566
>Достаточно скачать условный лайт квартуса
Vivado
Аноним 17/08/19 Суб 18:49:23 3756101275
>>375566
> Что нужно для вкота?
Самое главное, что нужно для вкота - задача, которую требуется решить. Остальное - этапы ее решения, не более.
Аноним 18/08/19 Вск 20:55:28 3757081276
>>375610
>Самое главное, что нужно для вкота - задача, которую требуется решить. Остальное - этапы ее решения, не более.
Люто поддвачиваю. Без цели или задачи зайдешь в тупик.
Рискуешь притянуть к себе столько всего, что можно магазин открывать или засинтезировать пентиум (не знаю, влезет не влезет в 100K-200K LE) или повесить на стену как картину.
У меня вырисовывается на чем можно потренироваться - сделать эмулятор параллельной NOR памяти, содержимое которой хранится в DDR2 памяти и как-то снаружи заливается/читается. Хорошо так пришлось поебстись что бы используя 2 банка (Altera) подключить (в теории) DDR2 память 64M16 x2 и синтезировать IP CORE DDR2.
Аноним 24/08/19 Суб 10:14:19 3761991277
>>316943 (OP)
Посоветуйте отладочную плату artix-7 для вката. Где-то до 20к рублей.
Заранее спасибо.
Аноним 24/08/19 Суб 13:09:18 3762111278
>>376199
>artix-7
Почему сразу даешь четкое название желаемого камня? Чем он так зацепил? Явно это должно быть на плате, но что именно - не говорится.
Почему сел на стул с хуями от Xilinx, а не от Altera или Lattice?
Аноним 24/08/19 Суб 16:13:56 3762231279
>>376211
Потому что в альтеры уже умею ну почти. На артиксах уже планируются некоторые проекты, да и ac-701 есть, но домой ее лень тащить. Поэтому хотелось бы прикупить какую-нибудь дешёвую платку для ковыряния.
Аноним 24/08/19 Суб 17:41:34 3762251280
Аноним 24/08/19 Суб 18:28:32 3762271281
>>376225
кек, с памятью дешевле
Аноним 24/08/19 Суб 19:10:21 3762311282
>>376225
> Zynq
Нет ещё, но возможно тоже придется.

Спасибо за варианты, но мне даже обычные товары с али не всегда доходят, но попробовать можно.
Аноним 24/08/19 Суб 19:52:17 3762361283
xc7a.png 68Кб, 1486x738
1486x738
>>376227
Ни ешь, подумой!
У них разница по логической емкости в 3 раза.
Али определенно рвет шаблоны. Вот живой пример >>362929 - детально не гонял если че - 4 циклон на 115К LE. Вся платка в районе 100$, включая планку памяти. Простенький циклон 4 на 15K LE - меньше 20$.
У одних из одного из оффициалов ЭФО коммерческая 4CE115 стоит около 335$. Как так то? Страшно сказать сколько стоят обосранные Flex10K 70$. Нашлась задачка для флексов где они будут жить в окружении родных 5В.

>>376231
5й циклон не зашел - хуй проссышь. Про Zynq хоть мануал есть и здесь частенько пиарят какую-то шину AXI - наверное проще будет выкатиться на мозгах от antminer.
Аноним 24/08/19 Суб 21:16:49 3762431284
>>376211
>Почему сел на стул с хуями от Xilinx
Потому что адекватный человек с головой на плечах и понимает, что остальное практически нигде не используется.
>>376236
>какую-то шину AXI
Общепринятый стандарт, вообще. Который используется везде. В отличие от маргинального Avalon.
Аноним 24/08/19 Суб 22:00:08 3762451285
Аноним 25/08/19 Вск 00:00:52 3762521286
1
Аноним 26/08/19 Пнд 13:52:03 3763561287
>>376225
> https://www.aliexpress.com/item/1000006630084.html
На эту плату жаловались, что кристалл слишком маленький:
>DDR3 контроллер занимает ~40% кристалла. Простенький дизайн из МикроБлейза, DDR3, EthernetMAC, QSPI и UART занял 90% кристалла. А так все хорошо

>>376236
> Али определенно рвет шаблоны. Вот живой пример >>362929 - детально не гонял если че - 4 циклон на 115К LE. Вся платка в районе 100$, включая планку памяти. Простенький циклон 4 на 15K LE - меньше 20$.
> У одних из одного из оффициалов ЭФО коммерческая 4CE115 стоит около 335$. Как так то?
У этого же продавца на али плата с Kintex-7 стоит раз в пять дешевле, чем голый чип на диджикее: https://www.aliexpress.com/item/32907109444.html Я так подозреваю (потому как у него ассортимент «то густо, то пусто» и документация напоминает незабвенную инструкцию к шоаррской лисе), что это чья-то подработка: паяют и продают оставшееся после основного проекта.
Аноним 26/08/19 Пнд 15:43:10 3763671288
>>376356
>>DDR3 контроллер занимает ~40% кристалла.
Почему в spartan6 slx16 он занимает около 5% cells, а тут 40k?
Аноним 26/08/19 Пнд 15:43:42 3763681289
Аноним 26/08/19 Пнд 17:11:12 3763841290
Читаю vol.verilog.com. И нихуя не пойму, что это значит?

а) assign #10 x = f(y);
б) assign #(5,10) x = a ? b : c;

А конкретно не понимаю, что означает решетка и какое-то число рядом с ней? Я думал, что решеткой задаётся какой-то параметр, но чот я уже не уверен.

Алсо, задача нескольких параметров перечислением не совсем понял как работает. Если я укажу таким же образом два параметра, когда в инстанциируемом модуле их пять, что произойдёт? Оставшимся трём просто присвоится дефолтное для них значение которое указано в объявлении параметра в модуле??
Аноним 26/08/19 Пнд 17:59:16 3763861291
>>376384
Это задержки. В первом случае единая задержка, во втором — раздельно для фронтов и срезов. Не задавай ничего перечислением, вообще не используй его и забудь. Это типа оператора goto, в языке есть, но considered harmful.
Аноним 26/08/19 Пнд 18:18:34 3763891292
>>376386
Не уверен что ты прав по поводу фронтов и срезов.
Я сейчас проходил тест, так понял, что второе (а именно #() шарп и скобки), означает задание параметров перечислением. А первое судя по всему да, задержки.
Только не понял, как эти задержки применять (точнее, где можно и где нельзя).
Аноним 26/08/19 Пнд 18:27:57 3763911293
>>376389
>Не уверен что ты прав по поводу фронтов и срезов.
Ну ты ещё попизди мне тут.

>Только не понял, как эти задержки применять (точнее, где можно и где нельзя).
В симуляциях можно. При написании модулей, которые будут реализовываться в ПЛИС ("синтезируемого кода") нельзя.
Аноним 26/08/19 Пнд 19:01:43 3763931294
>>376389
> #() шарп и скобки), означает задание параметров
Это в случае создания экземпляра модуля
https://youtu.be/Y9sPacLyYCI?t=1095

, а в твоём случае это как раз задержки.
Аноним 26/08/19 Пнд 19:14:13 3763961295
>>376367
Кароч, я в курсе, что у spartan6 встроенный контроллер (два) ddr.

Да вы гоните, что можно собрать контроллер ddr3 на логических ячейках. На какой макс частоте он заведется?
Аноним 26/08/19 Пнд 20:06:20 3764001296
>>376391
>В симуляциях можно. При написании модулей, которые будут реализовываться в ПЛИС ("синтезируемого кода") нельзя.
Эт я понимаю. Не понимаю синтаксически где нельзя ставить.
>>376393
Ну и хули они не поясняют тогда? Официальный же учебник, ёбаный в рот
Аноним 26/08/19 Пнд 20:26:13 3764051297
>>376400
>Эт я понимаю. Не понимаю синтаксически где нельзя ставить.
Ставиться они могут везде, где ты делаешь присваивания.
На практике имеет смысл ставить их только внутри блоков initial и forever, в которых ты описываешь сигналы, которыми ты тестируешь свой модуль. Типа:

reg clk, clken, reset;

counter counter_inst (
.clk(clk),
.clken(clken),
.reset(reset)
);

initial begin
clk = 1;
forever #5 clk = !clk;
end

initial begin
reset <= 0;
clken <= 0;
#10 reset <= 1;
#10 reset <= 0;
#10 clken <= 1;
end

Потом, когда углубишься в продвинутое тестирование, может, ещё какие-нибудь варианты придумаешь, но это сильно потом.
Аноним 27/08/19 Втр 07:20:35 3764321298
>>376405
Ок, я тебя понял. Единственное, а учебнике есть конструкции где задержка находится справа, а тебя такого примера применения нет бессмысленно?

Что такое forever? В учебнике про него пока ничего не было, Я, правда, прошёл пока только первую главу.
Аноним 27/08/19 Втр 08:09:57 3764341299
>>376432
Ты зря, мне кажется, начал вкот со справочника по синтаксису HDL вместо учебника по цифровому дизайну (с примерами на HDL). Большая часть сахара, которую ты вызубришь, будем лежать мёртвым грузом, пока не забудется, а для решения задач ты будешь использовать лишь небольшую часть, наиболее удобную под твои задачи. Я задержки распространения (там, где она находится справа) на практике не использовал, это, по-моему, для ASIC-разработчиков, которым надо время распространения сигнала по линиям моделировать. А для плисов тул автоматом разместит всё так, что задержки влезут между тактами, либо скажет "не могу разместить твою схему, переделывай".
Аноним 27/08/19 Втр 10:14:38 3764411300
>>376434
Мне на курсах скинули мануал по VHDL и мануал по Verilog. Я думаю там и правда будет та часть, которая только для плисов ибо курсы будут от производителя плисов, но для общего понимания языка, думаю, будет не лишне понять, что вообще он умеет.
По онлайн примерам вообще пиздец какой-то, у меня эти огороды даже не всегда заводятся.
Аноним 27/08/19 Втр 11:29:29 3764531301
>>376245
Нам в универе говорили, что альтера практически нигде не используется.
>>376405
Сейчас бы верилог использовать.
>>376434
>Большая часть сахара, которую ты вызубришь, будем лежать мёртвым грузом, пока не забудется, а для решения задач ты будешь использовать лишь небольшую часть
Я замечал, что обычно принято изучать все основные конструкции языка, а потом переходить к рассмотрению уже того, какое подмножество является синтезируемым. Но так да, начинать нужно со схемотехники и черчения схем на бумаге с их просчётом.
Аноним 27/08/19 Втр 11:34:22 3764551302
>>376441
>будет не лишне понять, что вообще он умее
Тогда че мелочиться? Открывай стандарт и ебош.
Аноним 27/08/19 Втр 11:35:20 3764561303
>>376453
>в универе говорили, что альтера практически нигде не используется
>Сейчас бы верилог использовать.
Прям комбо. Расскажи, че за совковый универ?
Аноним 27/08/19 Втр 11:40:52 3764571304
>>376455
Мне сказали впитывать vol.verilog.com - я впитываю vol.verilog.com
Чо те не нравится? Откуда мы знаем, какие знания от меня ожидают, я же не у тебя корки буду получать.
Аноним 27/08/19 Втр 12:01:04 3764591305
anime4.jpg 313Кб, 800x881
800x881
>>376453
Я уже слышал всё, что ты хотел сказать про sv, и уже отвечал тебе выше по треду. Давай ты вместо того, чтобы мозги впустую ебать, будешь лучше свои советы давать с использованием sv? Количество мозгоебли упадёт, качество контента в треде вырастет, сплошной выигрыш.
Аноним 27/08/19 Втр 19:26:40 3765351306
>>376453
>Нам в универе говорили, что альтера практически нигде не используется.
У вас в универе ангажированные преподы.

>Сейчас бы верилог использовать.
Ой, ВХДЛ-щик закукарекал.

>Но так да, начинать нужно со схемотехники и черчения схем на бумаге с их просчётом.
А вот тут неистово плисичую.

>>376441
Я тебе уже кинул ссылку на курс >>376393 , очень годный, для начинающих самое оно.
Аноним 28/08/19 Срд 13:41:44 3765831307
>>376535
Я прекрасно понимаю что он вроде бы и годный я его начинал смотреть, но я пока буду колоться и жрать кактус. Мне так легче воспринимать.
А теперь, если ты не против, я бы попросил помочь мне с кактусом. А именно пикрил. Почему в конце задержка 15, а не 5? Просто опечатка?
Аноним 28/08/19 Срд 13:43:41 3765841308
image.png 16Кб, 538x337
538x337
Пик отвалился
Аноним 28/08/19 Срд 15:44:55 3766131309
>>376583
>Почему в конце задержка 15, а не 5?
Это не задержка на картинке, а момент времени на временной шкале. То есть не "произойдёт через 15 квантов времени", а "произойдёт на 15-м кванте времени от старта симуляции". На 10-м кванте поменяется значение r2, на 15-м кванте оно дойдёт до w1, т.к. w1 тупит 5 квантов.
Аноним 28/08/19 Срд 17:10:52 3766291310
>>376613
Понял. Странно что сразу не сообразил. Логично, учитывая что они начинают оба сразу действовать.
Ещё вопрос тогда по ней.
Если я правильно соображаю, w2 имеет на шине задержку #5, так же как и w1. Assign это не процедурная операция, тогда почему w2 срабатывает после w1? Или он всё же параллельно срабатывает, и картинка не то имела ввиду, за что я зацепился?
Аноним 28/08/19 Срд 17:23:37 3766321311
>>376629
Картинку дегенерат какой-то рисовал. Там в двух блоках показан квант времени #5, но блоки идут один за другим.
Аноним 28/08/19 Срд 18:58:48 3766411312
>>376629
>картинка не то имела ввиду
Ты бы лучше в каком-нибудь modelsim-e моделировал, нагляднее было бы.
Аноним 28/08/19 Срд 20:40:30 3766511313
1566649305598-b.gif 825Кб, 344x498
344x498
Аноним 28/08/19 Срд 20:41:09 3766521314
>>376651
Есть что-то лучше?
Аноним 28/08/19 Срд 22:56:08 3766591315
hinatayukariyuy[...].jpg 493Кб, 830x1433
830x1433
>>376652
Xcelium. А вообще, Альтиум вот-вот собирается что-то выкатить. Альтиум Дизайнер у них няшный (а не как токсичный ментор), надеюсь, что и симулятор тоже будет.
Аноним 28/08/19 Срд 23:03:49 3766601316
+1
Аноним 29/08/19 Чтв 07:32:34 3766841317
>>376659
>Xcelium.
И че в нем есть, кроме многоядерности (которая есть в квесте)?
Аноним 03/09/19 Втр 10:05:39 3771531318
x.png 15Кб, 780x127
780x127
Ёбаная скотоублюдская вивада, это же работало в предыдущей версии, какого хуя они это вырезали? Теперь что, две версии кода писать, с иксами для тестирования и без иксов для синтеза? Охуенное тестирование выйдет, 10/10 просто.
Аноним 04/09/19 Срд 12:25:53 3772271319
>>376386
>Это типа оператора goto, в языке есть, но considered harmful.
Блин, а я в своих тестах повсеместно использую задержки. >>376405
>
>initial begin
>reset <= 0;
>clken <= 0;
>#10 reset <= 1;
>#10 reset <= 0;
>#10 clken <= 1;
>end

Вот так в тестах получается лучше не писать? (если что-то более сложное, чем передёрнуть ресеты)
Или я тебя неправильно понял?
Аноним 04/09/19 Срд 14:38:19 3772371320
>>377227
Это было про подключение модулей перечислением.
Типа когда ты модуль подключаешь как

counter counter_inst (clk, clken, reset, out_data);

вместо

counter counter_inst (
.clk(clk),
.clken(clken),
.reset(reset),
.out_data(out_data)
);
Аноним 04/09/19 Срд 15:23:32 3772411321
2019-09-0415-20[...].png 63Кб, 633x487
633x487
>>377237
В некоторых случаях удобно перечислять. Но я никогда не использую этот метод.
Аноним 04/09/19 Срд 16:12:53 3772441322
>>377241
Из какой pdf эта картинка?
Аноним 04/09/19 Срд 16:14:44 3772451323
>>377237
Закончил я этот курс vol.verilog.com
Ну хз, я пока вреда именно подключения перечислением не увидел (на малом количестве соединений, конечно же).
Меня там смущает скорее не неименуемое подключение, сколько возможность задавать параметры перечислением. Вот это какой-то баттхёрт.

>>376384-кун

Алсо дико понравились вставки из разряда "Ну эта функция языка работает, хотя работать не должна", или "Из-за особенностей самой первой реализации, данная вещь работает так как работает и никак иначе, хоть мы и знаем, что это неудобно"
"В отличие от других языков, например Си, Верилог не поддерживает конструкцию и++, вместо этого необходимо писать и = и + 1" и даже проверочный вопрос далее такой встречается.
Охуенно конечно. Не то что бы это пиздец критично, но и не то что бы имплементировать инкремент в верилоге выглядит дохуя сложной задачей.
Аноним 04/09/19 Срд 16:50:17 3772541324
Аноним 04/09/19 Срд 16:53:42 3772561325
>>377245
>пока вреда именно подключения перечислением не увидел
Есть большой шанс перепутать порты.
Аноним 04/09/19 Срд 17:06:50 3772581326
>>377245
>"В отличие от других языков, например Си, Верилог не поддерживает конструкцию и++, вместо этого необходимо писать и = и + 1" и даже проверочный вопрос далее такой встречается.
>Охуенно конечно. Не то что бы это пиздец критично, но и не то что бы имплементировать инкремент в верилоге выглядит дохуя сложной задачей.

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

и то и то пофиксили в SV
Аноним 04/09/19 Срд 17:41:18 3772621327
>>377256
Ну когда у тебя до 4х портов в модуле, не так критично. А в курсе больше и не было. Я же говорю, ПОКА не увидел.

>>377258
Да, тоже не понял фишки с массивами.
Сейчас перешёл к изучению VHDL'а. Есть какой-нибудь подобный онлайн-курс?
Аноним 04/09/19 Срд 18:08:58 3772671328
>>377262
А когда 50+ портов да еще этот модуль постоянно приходится допиливать ещё как критично
Аноним 04/09/19 Срд 18:11:03 3772681329
>>377262
Алсо зачем ты решил вкатиться в FPGA? С твоим энтузиазмом лучше в программирование уйти, а в этом болоте рано или поздно ты разочаруешься в финансовом плане.
Аноним 05/09/19 Чтв 13:11:23 3773551330
Есть ли возможно в квартусе сгенерить времянку всех сигналов готового проекта?
Аноним 05/09/19 Чтв 18:08:06 3773901331
>>377355
Что такое времянка всех сигналов?
Аноним 05/09/19 Чтв 19:08:07 3773931332
>>377390
Временная диаграмма сигналов.
Типа как в вейвформе, только сразу для всего синтезированного проекта.
Аноним 05/09/19 Чтв 20:14:01 3774001333
>>377393
Она зависит от того что ты подашь на входы, т.е. зависит от входных последовательностей. Откуда квартусу знать что ты в неё хочешь подать?
Аноним 05/09/19 Чтв 20:35:45 3774061334
>>377400
Я слышал в новом Квартусе вернули симуляцию, это так?
Аноним 07/09/19 Суб 15:34:54 3775341335
>>376456
>совковый
Лол, нет.
МИФИ, вообще-то.
>>376535
>Ой, ВХДЛ-щик закукарекал.
Потому что использовать VHDL правильно.
Verilog мало кто даже нормально поддерживает.
Аноним 07/09/19 Суб 17:23:31 3775421336
Screenshot20190[...].jpg 534Кб, 1080x2340
1080x2340
>>377534
>Verilog мало кто даже нормально поддерживает
Где? В твоём совковом МИФИ?
Аноним 07/09/19 Суб 18:05:28 3775531337
Есть какое-нибудь готовое решение на 14bit serdes между двумя плисами, без передачи клока отдельным каналом?
Аноним 07/09/19 Суб 21:56:47 3775701338
>>377542
В том же ISE. Ты сам-то свой verilog пробовал компилить?
Аноним 07/09/19 Суб 22:07:18 3775721339
>>377570
Verilog прекрасно компилится в ISE. У меня есть подозрение, что ты не различаешь Verilog и System Verilog.
Аноним 09/09/19 Пнд 12:19:08 3776601340
>>377355
Квартус не знаю, но в новых версиях выпилили симулятор, только через сторонний можно это сделать. Попробуй икарус или моделсим.
Аноним 09/09/19 Пнд 12:30:38 3776611341
>>377553
Какая ПЛИСина?
У Xilinx можно Aurora протянуть.
Аноним 09/09/19 Пнд 17:09:32 3776801342
Аноним 09/09/19 Пнд 17:19:26 3776821343
>>377680
Про интеловские ядра не знаю, но по идее должен быть какой-то аналог авроры.
А что ты там пилишь?
Аноним 09/09/19 Пнд 18:48:28 3776911344
>>377682
ЦОС, а конкретно передача по одной линии lvds кучи данных.
Аноним 09/09/19 Пнд 18:57:07 3776931345
>>377691
Какая требуется пропускная способность? gtx-трансиверы будешь задействовать?
Аноним 09/09/19 Пнд 19:34:07 3776941346
>>377693
100мбит/с.
Передача уже реализована, но очень ебано и по информационно-зависимому чем больше единиц, тем дольше передача каналу. Хочу попробовать избавиться от этого.
Про gtx не знаю даже, я просто самоучка.
Аноним 09/09/19 Пнд 19:53:57 3776951347
>>377694
>100мбит/с
Это можно обычным serdes принять. Делаешь самосинхронизирующуюся кодировку (манчестерское кодирование) с одной стороны, с другой — оверсемплинг (пусть 400мбит/с), с которым можно в пределах некоторого рассинхрона определить, оставался ли сигнал неизменным дольше пары тактов или изменился за меньше чем пару тактов.
Аноним 09/09/19 Пнд 20:04:51 3776961348
>>377695
> пусть 400мбит/с
А если tx 100MHz, а rx 200MHz максимум? Должно заработать? Не охуею ли от рассинхрона?
Аноним 09/09/19 Пнд 20:09:46 3776971349
>>377696
Охуеешь, потому что 100MHz в манчестерском коде фактически означает 200MHz (потому что на каждый символ передаются два значения, дающие либо фронт, либо срез), и для их приёма с оверсемплингом нужно 400MHz. А без манчестерского кодирования ты не определишь, куда синхронизироваться. Тебе не похуй ли, сколько мегагерц? Не тебе ж на них шататься, а плисине, а плисине похуй, она железная.
Аноним 09/09/19 Пнд 20:20:42 3776991350
>>377697
Наши местные плисоведы почему-то боятся частот выше 100МГц, дескать у них все по пизде сразу идёт.
Аноним 09/09/19 Пнд 20:35:54 3777011351
>>377699
Зато прикинь, если заработает, как утрёшь нос своим дидам?
И в резюмешечке напишешь, что работал с 400MHz
Аноним 09/09/19 Пнд 20:54:38 3777041352
https://pastebin.com/R6apL1fZ

Если я таким макаром распарсю UDP и IP заголовки это вообще законно? Меня не расстреляют?
Аноним 09/09/19 Пнд 21:00:38 3777061353
>>377704
Тебе LE жалко или что?
Аноним 09/09/19 Пнд 21:01:37 3777071354
>>377704
Или лучше запилить сдвиговый регистр и парсить нужные мне поля после заполнения?
Аноним 09/09/19 Пнд 21:03:37 3777081355
>>377706
Не жалко. У меня комплексы по поводу того, что мою писанину назовут гвоном если на нее посмотрят
Аноним 09/09/19 Пнд 21:05:03 3777091356
>>377708
Всегда найдется тот, кто обзовет твою писанину говном, но свою писанину почему-то показывать никому не хочет.
Аноним 09/09/19 Пнд 21:18:21 3777111357
>>377701
Проиграл.
А вообще, это наверное из-за того, что они не трассируют линии? Где вообще почитать про оптимизацию на высоких частотах?
Аноним 09/09/19 Пнд 21:36:41 3777141358
>>377711
Аппноты от производителя плисины почитай.

У них обычно есть 1) референс-дизайны для последовательных интерфейсов с использованием блоков serdes и 2) гайдлайны по разводке дифференциальных линий на платах.

В идеале, тем и другим должны заниматься разные люди, но мы же в рашке, так что один студент обычно тянет лямку за весь пьющий чаи отдел.
Аноним 09/09/19 Пнд 21:40:28 3777151359
>>377714
> один студент обычно тянет лямку за весь пьющий чаи отдел
Знакомо. Я ещё схемотой и свч занимаюсь.
Аноним 09/09/19 Пнд 21:47:51 3777161360
>>377553
В альтеровских FPGA (во втором стратиксе и более поздних точно есть, в четвёртом циклоне тоже) есть хардблок (т.е., выполненный в кремнии, а не на ячейках) LVDS SERDES. Коэф. сериализации - до 10. Ширина линии - какая хочешь.
Мы делали 16-битные с коэф. сериализации 6 и рабочей частотой 1,2 ГГц.
Тренировку делай сам (встроена только DPA, bitslip нужно делать самому, для чего есть соотв. вход).
Аноним 10/09/19 Втр 05:52:55 3777311361
>>377716
> LVDS SERDES
Это ты про alt_lvds? У меня между плисами одна дифпара, а там нужно с клоком на tx/rx, да ещё и 10бит максимум.
Но скорее всего я что-то не так понял.
Аноним 10/09/19 Втр 09:04:29 3777371362
>>377731
Вот если ты на них сделаешь десериализацию в 8 раз, то сможешь получать свои данные как 2 бита @ 50MHz при оверсемплинге 400MHz. Загоняешь в serdes 400MHz, выходит из него 8бит 50MHz, выделяешь из них нужные данные, которых после всех преобразований останется два бита на тех же 50MHz. Потом пакуешь их по 7.
Аноним 10/09/19 Втр 11:08:25 3777431363
>>377716
>Тренировку делай сам
А что такое тренировка?
Аноним 10/09/19 Втр 11:22:55 3777441364
Аноним 10/09/19 Втр 11:50:50 3777461365
>>377744
Читаю и не могу понять. Что такое equalization, что за eye и как она получается?
Аноним 10/09/19 Втр 11:58:40 3777471366
>>377746
Это элементарные понятия. Ты где-то проебался в обучении.
Аноним 10/09/19 Втр 12:02:35 3777481367
>>377747
Где про это почитать?
Аноним 10/09/19 Втр 12:30:53 3777511368
>>377716
Закидай говном доками - как вообще происходит синхронизация потоков?
Включил корку serdes, на выходе появились LVDS сигналы.
Приемник с другой стороны сразу по приходу сигналов начнет десереализацию или нужен какой-то внешний сигнал синхронизации? Не будет ли при приеме сдвига битов на 1 влево-вправо где-то на electronix читал про еблю с начальной синхронизацией передач?
Где-то в AN видел особо жесткие требования чуть ли не как для DDR2 памяти к разводке LVDS. Допустим у меня 4 линии + клок и тактовая пусть 500МГц (чуть меньше, чем в гигабитном Ethernet). Какой разброс длин внутри и между парами допустим на таких частотах? Ебаться с каждым миллиметром? Допустим длина трасс под 20-30-40см
Аноним 10/09/19 Втр 12:38:21 3777521369
ПЛИС-аны, подтвердите или опровергните.
На 4-м циклоне с тактовой 125МГц и памятью DDR2 шириной 16 бит - получится эмулировать 16 битную SRAM с временем доступа 50-70 нс? Реальную SRAM на 64 мегабита собирать - ебанешься, включая цены на одиночные микросхемы SRAM такого объема, поэтому встроенная память - не вариант.
На ZX-PK пишут что даже на тактовой 100 МГц SDRAM с трудом получается эмулировать SRAM с рабочей частотой под 11МГц.
Аноним 10/09/19 Втр 12:44:19 3777541370
>>377751
>жесткие требования чуть ли не как для DDR2 памяти к разводке LVDS.
Что не так?
Аноним 10/09/19 Втр 15:22:48 3777681371
.>>377751
>Ебаться с каждым миллиметром?
Крайне желательно. Сам же себе спасибо скажешь, когда всё заработает с первого раза. Или проклянёшь, когда не заработает, и теперь надо ебаться со всякими выравнивателями, наворачивая даташиты по 500 страниц без гарантии успеха.

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

>Не будет ли при приеме сдвига битов на 1 влево-вправо
Если клок идёт вместе с данными, то обычно всё норм.
Аноним 10/09/19 Втр 19:56:37 3777961372
>>377737
Как я по одной линии 2 бита прогоню?
Аноним 10/09/19 Втр 20:07:05 3777981373
>>377796
Или я могу поставить по два alt_lvds друг за другом?
Аноним 10/09/19 Втр 20:28:36 3778001374
>>377731
Так сразу бы и написал, что не ширина линии 14 бит, а коэффициент сериализации 14.
>>377751
Вот блин, мне интересно, ты нихрена не знаешь, но, при этом, занимаешься трассировкой плат. Как тебя до этого вообще допустили? Мне, например, сказали, что платы я делать никогда не буду, т.к. мои личностные характеристики не позволяют мне заниматься такой работой.
>>377798
Нет. Делай второй уровень сериализации/десериализации на ячейках.
Аноним 10/09/19 Втр 20:32:41 3778011375
>>377800
> нихрена не знаешь, но, при этом, занимаешься
Забыл где живёшь?
Аноним 10/09/19 Втр 20:37:58 3778021376
>>377800
>Вот блин, мне интересно, ты нихрена не знаешь, но, при этом, занимаешься трассировкой плат. Как тебя до этого вообще допустили?
Ты забыл что мы живем в пидорашке? У нас можно всё, у меня вот 80% троек в дипломе и я единственный из группы пошел по специальности долбоёб.

>Мне, например, сказали, что платы я делать никогда не буду, т.к. мои личностные характеристики не позволяют мне заниматься такой работой.
Хрюкнул на всю лабораторию. Тебе повезло на самом деле. Это неблагодарная работа. Очень мало хороших инженеров по этой специальности - даже люди со светлыми головами замыкаются в этой хуйне и перестают думать. Из инженера превращаются в трассировщика. А зарплата даже хуже, чем у ПЛИСоёбов, такие дела.
Аноним 10/09/19 Втр 21:41:43 3778051377
>>377802
> зарплата даже хуже, чем у ПЛИСоёбов, такие дела.
Это сколько? 40к?
Аноним 10/09/19 Втр 21:50:23 3778061378
>>377805
У нас у плисовода/программиста (SoC, МК, ЦСП) средняя ЗП 100к, у разработчика печатных плат - 160к, например.
Аноним 11/09/19 Срд 02:04:28 3778131379
>>376356
>У этого же продавца на али плата с Kintex-7 стоит раз в пять дешевле
могу пруфануть. На это плату (не сразу) продаван дал схему, 10Гэ завелось, брат жив. Примеры тоже хорошие, есть IP/UDP echo
Аноним 11/09/19 Срд 05:34:23 3778171380
>>377806
Это в какой стране?
Аноним 11/09/19 Срд 08:04:16 3778221381
>>377805
Почти в точку: 50к
А еще что характерно 80% трассировщиков бабы.

>>377806
Это скорее исключение. И один хрен, казалось бы вам дофига платят, но даже вшивому фронтэнд-джуну могут платить еще больше.
Аноним 11/09/19 Срд 08:39:16 3778231382
>>376356
Есть мнение, что кинтексы с али отреболенные, отсюда такая цена. Я бы взял эту плату но она что называется не пришей пизде рукав.
Логики много, а интерфейсов нихуя.
10G это круто, но куда ее подключать?

Разве что пилить на этой плате какой-нибудь майнер.
Аноним 11/09/19 Срд 08:56:19 3778241383
>>377822
>И один хрен, казалось бы вам дофига платят, но даже вшивому фронтэнд-джуну могут платить еще больше.
Тут включается вопрос а чем ты сам по жизни заниматься хочешь. Все-таки радиолюбительство (и сопутствующие сферы) - это философия.
Аноним 11/09/19 Срд 09:52:42 3778261384
>>377822
>Это скорее исключение.
Я бы сказал, что это какой-то странный перекос, который явно не обусловлен рыночком. Положа руку на сердце, этих трассировщиков за 160к/наносекунда можно было бы разогнать, понабрать за втрое буквально меньшие деньги макак-студентов, умеющих перерисовывать рекомендуемые решения из аппнотов, и было бы в целом не хуже.
Аноним 11/09/19 Срд 09:58:10 3778271385
>>377822
> Почти в точку: 50к
А я плисоеб и мне столько платят в дс2.
Аноним 11/09/19 Срд 09:59:33 3778281386
>>377827
Лох. Пойди потребуй прибавки у начальства.
Аноним 11/09/19 Срд 10:01:24 3778291387
>>377828
Это не работает. Исследования показывают, что наибольший рост зарплат происходит у людей, которые меняют места работы с ростом квалификации.
Аноним 11/09/19 Срд 10:59:35 3778331388
>>377827
В дс1 не думал перебраться?
Аноним 11/09/19 Срд 11:16:16 3778351389
>>377824
>Тут включается вопрос а чем ты сам по жизни заниматься хочешь. Все-таки радиолюбительство (и сопутствующие сферы) - это философия.

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

>>377826
>понабрать за втрое буквально меньшие деньги макак-студентов

Это тоже неправильный подход. Если хорошо подумать, у конструктора большая ответственность. Нужно просто за эту ответственность с них спрашивать. Накосячил, какой-то интерфейс не заработал - штраф на половину оклада. Если косяков нет - ну не такие уж и большие это деньги. Про перекос по сравнению с FPGAшниками согласен на 100% обычно везде наоборот.





Аноним 11/09/19 Срд 11:18:26 3778361390
>>377835
>Радиолюбительство всегда можно оставить в качестве хобби.
В качестве хобби ты вряд ли сможешь найти задачи уровня "ебануть фильтр для 100Гбит езернета".
Аноним 11/09/19 Срд 11:20:43 3778371391
>>377827
Это обычная зп для FPGAшника. Я ездил по собеседованиям в ДС. У меня опыт кое-какой есть, реализованные проекты и вот это всё. Но итог везде одинаков. Пробовался в 3 места, везде согласны взять, но максимум что предложили 80к. Да нахуй оно надо? В Москву надо ехать за 6-значной зарплатой я считаю.
Аноним 11/09/19 Срд 11:27:06 3778381392
>>377836
100G - это очень круто, да. Вот только какой с них толк? Кроме того, что потешил чсв.
А еще наверняка твои махарайки будут предлагать РКН или подобным конторам. Как вообще после этого, совесть не будет мучать?
Аноним 11/09/19 Срд 11:29:52 3778391393
>>377838
>100G - это очень круто, да. Вот только какой с них толк?
Ну так а какие задачи ты хочешь решать? Очередное SDR радио или поливалку для огурцов на FPGA?
Аноним 11/09/19 Срд 11:37:46 3778421394
>>377822
Ну да, джависты, да и те же фронтэндщики у нас получают дохуя.
>>377837
У меня в Москве ЗП 80к. Могла бы быть больше (платят столько, сколько запросил на собеседовании) - у других на такой же должности, как у меня, она, в среднем, в полтора раза больше. Я получаю только оклад без надбавок и премий.
Это при том, что занимаюсь, в основном, макакской работой.
Аноним 11/09/19 Срд 11:47:35 3778451395
>>377842
Может человеку с улицы никто не хочет давать нормальные деньги. Но скорее всего такой рынок. Такие как ты готовы рабоать за копейки и по сути обваливают этот самый рыночек. И ведь таких полно.

Я вот не представляю, как в ДС можно на 80к жить? Особенно если нет своего жилья.
Аноним 11/09/19 Срд 11:53:22 3778471396
>>377845
>Я вот не представляю, как в ДС можно на 80к жить?
Хуя ты зажрался.
Аноним 11/09/19 Срд 12:00:45 3778491397
>>377847
Смотри, в моем мухосранске средняя зп 33. У меня 50.
В Москве средняя 80(за год вангую выйдет на 85-88) и FPGAшники довольствуются той же 80кой.

А теперь посмотри на цену за жилье, транспорт и остальные траты. Да я на свой полтинник здесь король. А в Москве с 80к хуй с горы. Таксисты здесь так же зарабатывают. Без обид, но себя нужно ценить, Анон. Иди проси прибавку.
Аноним 11/09/19 Срд 12:07:45 3778531398
>>377849
И самое печальное - это покупка жилья. Я уже выплатил ипотеку в мухосранске за 3 года.
В Москве на 80к ты за 3 года даже нормальный первоначальный взнос не накопишь. Поэтому я считаю за любую умственную работу в столице (5/2 полный рабочий день) надо просить не меньше сотки. Кто платит меньше - они вас наёбывают.
Аноним 11/09/19 Срд 12:55:50 3778641399
>>377849
Я другой анон. 80к для Москвы, если ты вчерашний понаехавший студент без семьи, вполне нормальная цифра. Не пожируешь особо, но и не совсем хуй без соли.
Аноним 11/09/19 Срд 13:15:51 3778661400
>>377853
нахер тебе покупать жилье, если повысишь квалификацию и съебешь в гермашку или сшашку?
Аноним 11/09/19 Срд 13:15:52 3778671401
>>377835
>Накосячил, какой-то интерфейс не заработал - штраф на половину оклада.
Рецепт прямиком из сборника "Прохладные истории пидорашьего менеджмента: 10 лучших способов пустить под откос рабочий процесс и развалить к хуям коллектив". Люди ошибаются, это нормальный фактор. Не надо с наёмных рабочих спрашивать за риски как с организаторов бизнеса. Они не организаторы. Они от такого просто озвереют, даже среди студентов-нищемакак обстановка будет более рабочая.

>Если хорошо подумать, у конструктора большая ответственность.
Я не оперирую идеей "справедливой зарплаты" или "достойной зарплаты", я просто констатирую, что на рынке есть люди, способные выполнять те же задачи гораздо дешевле без ущерба для результата. Я-то всегда за то, чтобы у любого наёмного работника зарплата была как можно выше, но это делается увеличением спроса на них, а в пахомии желающих пилить махарайки больше, чем желающих организовывать их разработку и производство. (Поэтому считаю, что все хорошие люди своей основной целью должны ставить съёб.)
Аноним 11/09/19 Срд 13:43:43 3778691402
>>377866
Мне в следующем году уже 30 будет. Куда уже сьебать из подводной лодки? Родителей-пенсионеров кину здесь?

>>377867
>Рецепт прямиком из сборника "Прохладные истории пидорашьего менеджмента
Так разве не пидорашьий менеджмент устроил такой перекос?
Аноним 11/09/19 Срд 13:51:17 3778711403
>>377869
>Мне в следующем году уже 30 будет. Куда уже сьебать из подводной лодки? Родителей-пенсионеров кину здесь?
Твой выбор, твоя жизнь. Единственная, если что. Можно посвятить её тому, чтобы жрать говно, но это странный выбор.

>Так разве не пидорашьий менеджмент устроил такой перекос?
Наверняка, но если пидораший менеджмент может устроить одно говно, это не значит, что он не может устроить другое.
Аноним 11/09/19 Срд 14:34:04 3778781404
>>377833
У меня тут квартира и учеба.
Аноним 11/09/19 Срд 17:34:23 3778971405
Аноним 11/09/19 Срд 17:45:34 3779001406
Аноним 11/09/19 Срд 18:30:38 3779041407
>>377897
>>377900
Что ты собрался делать с BGA, извращенец?
Аноним 11/09/19 Срд 18:38:40 3779051408
>>377904
Очевидный РЕБОУЛИНГ
Аноним 11/09/19 Срд 18:45:04 3779061409
>>377904
Тот же JLC явно утверждает что умеет в 6 слойные платы. Решил уточнить - подойдет или нет для мигания светодиодом (или светодиодами если повезет)?
Не слабовата будет? Потянет?
Аноним 11/09/19 Срд 20:03:15 3779161410
>>377906
Помигаешь отдуши, может даже что-нибудь намайнишь.
Аноним 11/09/19 Срд 20:25:40 3779171411
>>377906
Обожаю двачерский юмор.
Аноним 11/09/19 Срд 21:48:16 3779211412
>>377897
>>377900
>мигание светодиодом
Cadence Stratus скинуть?
Аноним 11/09/19 Срд 21:58:39 3779231413
Сап, плисаны. Какие задачи решать с помощью ПЛИС оптимально?
Аноним 11/09/19 Срд 22:27:47 3779251414
>>377923
Требующие низкой латентности и/или высокой степени параллелизма вычислений.
Аноним 12/09/19 Чтв 05:29:08 3779361415
str.jpg 175Кб, 1626x1088
1626x1088
>>377921
У меня только такой дешманский закос под FPGA.
Схемки нет, надо потрошить и прозванивать каждый из 700 с хуем выводов. После этого можно помигать минимум 4-я светодиодами на плате.
Где можно взять (кроме open cores) максимально точную корку 580ВМ80А на Verilog? Именно 580ВМ80, Z80 и его клоны не интересует.
Аноним 12/09/19 Чтв 10:00:24 3779381416
>>377823
>кинтексы с али отреболенные
Еще скажи, прожаренные в духовке.
Аноним 12/09/19 Чтв 11:20:52 3779391417
>>377936
Я назвал тул для HLS, если что.
Аноним 12/09/19 Чтв 11:27:38 3779411418
>>377939
HLS? Что что?
Чем плох стандартный Verilog / VHDL? Тот же OpenCV?
Такие тормоза как я если и балуются - то засинтезировал, сконфигурил, смотришь. Долго и нудно, да. Для простых проектов типа мигалок светодиодом - норм.
Аноним 12/09/19 Чтв 11:33:54 3779421419
>>377941
Ничем, просто почему-то у меня то, как ты рассказываешь про свою плату и про мигание светедиодом вызвало ассоциацию с ардуйнёй, а оттуда уже с HLS.
Аноним 16/09/19 Пнд 14:26:15 3781931420
Как под виндой выводить диагностические сообщения Flexlm? Скачал Q 13.0 SP1 с кряком, он работает, но нет лицензии на некоторые IP, например, на PCIe.
Под линуксом в тулах Cadence чтобы узнавать фичи, которые нужно прописать в лицензионный файл после патча тула, можно было перед запуском тула прописать в консоли `export FLEXLM_DIAGNOSTICS=3`. Что для этого делать под виндой?
Аноним 16/09/19 Пнд 16:20:34 3782041421
>>378193
>Что для этого делать под виндой?
Нужно всего лишь переустановить ШИПДОШС
Аноним 17/09/19 Втр 11:10:10 3782321422
Аноним 17/09/19 Втр 11:15:18 3782331423
>>377942
Ну ты сравнил.. Где ардуино, а где HLS. По мне в HLS проект пилить сложнее, чем на чистом HDL. Там нет этих ваших абстракций, притянутых за уши парадигм и прочего мозготраха. хотя, возможно я сейчас как динозавр рассуждаю, ведь просматривается явная аналогия между переходами с HDL -> HLS и схематик -> HDL.
Аноним 17/09/19 Втр 13:22:34 3782371424
>>378233
>просматривается явная аналогия между переходами с HDL -> HLS и схематик -> HDL.

Переход из схематика в HDL - изменение способа ввода схемы.
Переход из HDL в HLS - смена парадигмы.
Аноним 17/09/19 Втр 13:26:17 3782391425
>>378237
Короче пизда HDL-щикам. Скоро их заменят программисты.
Аноним 17/09/19 Втр 13:34:23 3782411426
>>378239
Ну в принципе да, сразу как только HLS и прочее говно сможет синтезировать что-то более сложное, нежели моргалка светодиодом.
Аноним 17/09/19 Втр 15:29:30 3782441427
>>378241
А что сейчас разве не может?
Аноним 17/09/19 Втр 16:45:56 3782541428
Подкиньте идей для хобийных проектов на FPGA
Аноним 17/09/19 Втр 16:53:00 3782561429
>>378244
Нет. Чтобы запилить что-то средней сложности (фильтр там простенький) и то надо ебаться со всякими директивами - оптимизаторами.
Аноним 17/09/19 Втр 16:54:27 3782571430
Аноним 17/09/19 Втр 17:01:10 3782581431
>>378239
>Короче пизда HDL-щикам. Скоро их заменят программисты.
Лол. Они даже в страшном сне не подумают идти на такие зряплаты.
Аноним 17/09/19 Втр 17:26:58 3782621432
>>378257
Может еще диодиком помигать??
Аноним 17/09/19 Втр 17:46:39 3782661433
>>378257
>UART ебани.
У кого-то скоро станет реальностью. Есть бредовая идея поучить Verilog на реальных примерах, "клонируя" давно прогнившие экскременты мамонтов типа ВВ51, ВВ55, ВИ53 и подобное.
Уже нарисовал платку под КР580ВМ80А+ГФ24+ОЗУ+ПЗУ+ обосранный Flex10K30 с AT17LV010.

>>378262
Это я умею. Точнее умею только зажигать, а гасить - только задувая. До мигания так и не дошел и не понимаю - как так получается.
Аноним 17/09/19 Втр 17:48:47 3782671434
>>378262
Ну тогда ебани ICA и разделение источников, записанных с нескольких микрофонов.
Аноним 17/09/19 Втр 18:19:53 3782691435
>>378267
А что такое ICA? Утка какую-то дичь выдает
Аноним 17/09/19 Втр 21:04:39 3782881436
>>378269
Independent Component Analysis
Фигня, которая появилась с классической задачей "cocktail party problem"
Аноним 21/09/19 Суб 22:55:06 3807111437
>>317906
>ПЛИСаны, я не понял, вот я насинтезировал конфигурацию и залил ее в эту вашу FPGA, отключил питание и все пропало?

Вроде как в серии MAX от Altera есть плисы с флеш. Можно сделать чтобы прошивка заливалась по включению питания.
Аноним 22/09/19 Вск 11:51:36 3807461438
>>317906
Некропостинг, да.
>насинтезировал конфигурацию и залил ее в эту вашу FPGA, отключил питание и все пропало?
Да. Не знал что FPGA одноразовые? Залил конфигурацию и после передергивания питания она стирается. Flash память радом для лохов. Смотри и учись как правильно делается http://dihalt.ru/poslednij-geroj-truda-chast-0fh.html
".. на базе легендарного компьютера PDP-11. Адская машина!!! Грузится это чудо с здоровенных, размером с виниловую пластинку, 8″ дискет. Т.к. дискеты уже давно все в кал убитые и старые, а гарантии, что в следующий раз можно будет загрузить систему нет никакой, то станок пашет без перезагрузок уже лет 20, подключённый к трём аккумуляторам и, на всякий случай, дизелю. Дабы поддерживать его жизнь в случае проделок Чубайса."
Аноним 22/09/19 Вск 15:57:14 3807701439
Подскажите, как быть. Речь идёт о хобби-проекте на ПЛИС. Суть в следующем - идея годная, реализация слабая. Задача сложная - сделать так, чтобы моё хобби стало вашим хобби. Есть идеи?
Аноним 22/09/19 Вск 16:43:23 3807731440
>>380770
>Есть идеи?
Как минимум порадоваться. В отличии от остальных анонов - есть конкретная цель/задумка/проект, а не "с чего вкатываться?" и это огромный плюс.
Со сложностью проекта определился? Как минимум по части сколько надо выводов и какие планируются интерфейсы ввода-выдода? На чей стул присел? Xilinx/Altera/Lattice/Microsemi?
Аноним 22/09/19 Вск 17:41:58 3807811441
>>380773

Всё очень просто и в то же время очень сложно. Вообще-то идей несколько и одну даже воплотил в Cyclone III EP3C10E144C8.

Что касается интерфесов, пока есть только UART. В теории, совсем в теории, для каких-то применений его достаточно. А вообще хотелось бы задействовать всю мощь ПЛИС и отладочной платы.

Там же в куче самописный интерфейс для SDRAM MT48LC4M16A2-75. Но не очень стабильно работает. В тестах отрабатывает отлично, регенерация есть, а в проекте глючит.

Да что ходить вокруг да около - хочу предложить оригинальную 32-х битную процессорную архитектуру. И транслятор ассемблера для неё.


Аноним 22/09/19 Вск 18:24:34 3807901442
>>380781
Что-то это мне напоминает...
https://zx-pk.ru/threads/23528-reverse-u16.html https://github.com/mvvproject/ReVerSE-U16
https://github.com/donnaware/ZBC---The-Zero-Board-Computer/blob/master/design/ZBC%20RevD.pdf Мне такому ленивому хуйлу впадлу найти циклон и генератор. Тут явно выведен com-порт и даже есть программный ethernet 10base-t.
Так что можешь на чуть сэкономить время и взять готовое или скопипастить. Для SDRAM в принципе похуй, а для DDRx - нужно следить за выводами, которые специально отведены под шину данных и забив на это - можно эпично соснуть.
Аноним 22/09/19 Вск 19:04:42 3807961443
image.png 173Кб, 1141x979
1141x979
>>380790
>Что-то это мне напоминает...

Zet processor is an open implementation of the so widely used IA-32 architecture (generally called x86).

Нет, конечно не x86. Вот карта инструкций.
Аноним 22/09/19 Вск 19:16:24 3807991444
>>380796
Отсылка была как минимум к коду, из которого можно попробовать выдрать контроллер SDRAM и сопутствующие "периферийные" устройства.
Потактовой версии 580ВМ80А случаем нет? Клоны не интересуют. Именно "родной" советский 580ВМ80А.
Аноним 22/09/19 Вск 21:07:01 3808201445
kit3.jpg 121Кб, 604x453
604x453
>>380796
Ты тот шизик со спейсача, одержимый сверхценной идеей, что космические аппараты бьются из-за неправильной архитектуры бортовых ЦВМ?
Аноним 22/09/19 Вск 22:02:13 3808271446
>>380820
Почему сразу шизик? Но да, я полагаю что неправильная архитектура бортовых ЭВМ это существенный фактор. Но это скорее к софту относится. Более надёжную систему можно построить и на уже используемом железе.

Мне бы хотелось донести до вас красоту вот этой системы команд. В отдельной теме, но пока можно и здесь.
Жёлтый цвет - инструкции зарезервиованы. Условные и безусловные переходы только относительные. Адрес возврата из подпрограммы всегда в регистре. Все операции только 32 бита. Плавающей запятой нет. Уже можно ругать.

Одна из идей - "бесконечно" расширяемая система команд за счёт увеличения длины инструкций.
Аноним 22/09/19 Вск 22:42:20 3808321447
>>380827
Присоединюсь к анону выше. Ты шизик. Я так и не понял, ты уже сделал этот процессор или все никак?
Помимо этого, по твоей таблице без детального описания инструкций можно только гадать, что ты там навыдумывал. И писать программы ты будешь, разумеется, на ассемблере?
Аноним 22/09/19 Вск 23:53:32 3808371448
image.png 118Кб, 1271x211
1271x211
>>380832
> Я так и не понял, ты уже сделал этот процессор или все никак?
Прототип давно сделал. Работает. Но это лишь небольшая часть от того, что хотелось получить в итоге. Самое вкусное как раз и не реализовано.

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

Ну вот смотри - в первой строке однобайтовые команды.
NOTCH это превифкc. Если ты поставишь его перед инструкцией перехода, условного или безусловного, то в регистре R15 запомнится адрес следующей инструкции. Инструкция RETURN тупо делает переход по содержимому R15. Переходы это знаковое смещение от текущей инструкции - 8, 16 или 24 бита знаковое смещение.

IDLE, TASK_ID, SEND, RECV - это то, что придёт на смену прерываниям, в том числе аппаратным. Это сообщения.

LOCK, FREE - захват и освобождение буфера сообщений.
SET_MR и GET_MR это соответственно запись и чтение буфера сообщений из регистра/в регистр.


Ещё один префикс KOL. Если он используется перед загрузкой константы 8 или 16 бит, то при загрузке константы старшие биты регистра не затираются.

Команды INC и DEC позволяют увеличивать/уменьшать регистр не только на 1, но и на константу от 1 до 16.

Что касается инструкций 0xdx, то они заточены для работы со структурами и списками. Их реализация необязательна, но их использование позволяет упростить и уменьшить код - указать смещение адресу. И опционально проверить резултат операции на ноль/не трогать флаги.

Команды сложения и вычитания всегда используют перенос.

> И писать программы ты будешь, разумеется, на ассемблере?
Пока да. На макроассемблере, который часть кухни скрывает макросами.
Аноним 23/09/19 Пнд 05:22:01 3808461449
Что за куча негатива? Какая разница кто что делает? Ну делает свой процессор, и что?
Некоторые на логике и ПЗУ собирают https://www.bigmessowires.com/nibbler/ , другие на реле - http://tqfp.org/tag/%D1%80%D0%B5%D0%BB%D0%B5%D0%B9%D0%BD%D1%8B%D0%B9%20%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80/ , из "россыпчатой логики" https://www.bigmessowires.com/bmow1/ . Может туда съебете авторов покритиковать и поливать говном?

Единственный "недостаток" всех таких проектов - как писать управляющую программу, кроме как на ассемблера.
Аноним 23/09/19 Пнд 10:20:02 3808581450
>>380827
>Почему сразу шизик?
Потому что пытаешься решить проблему, которой не существует. Проблемы в системах управления, которые решаются сменой ISA — это исключительно твои ни на чём не основанные фантазии. Одно дело, если тебе хочется джаст фо фан запилить проц с интересной тебе ISA, это ок. Другое — когда ты начинаешь верить в постулаты, не основанные на эмпирическом знании, это уже шиза.
Аноним 23/09/19 Пнд 11:05:54 3808621451
>>380846
>Единственный "недостаток" всех таких проектов - как писать управляющую программу, кроме как на ассемблера.
Вовсе не обязательно. Форт или лисп недолго и на ассемблере написать.
>Что за куча негатива?
Мне кажется, что не за сам процессор, а за "революционность" идей и невнятную подачу информации. Да и нет тут заметного негатива.
Аноним 23/09/19 Пнд 12:01:36 3808651452
>>380858
>которые решаются сменой ISA
Оригинальная ISA это вообще побоочный продукт. Я же оговорился вот тут >>380827
> Более надёжную систему можно построить и на уже используемом железе.

Изначально я хотел добавить несколько инструкций для работы с сообщениями в любую популярную архитектуру. Это бы решило множество моих проблем - компилятор, библиотеки, специалисты и т.д. Но засада заключалась в том, что свободного места под коды операций у популярных архитектур нет. Особенно у x86. Посмотри за счёт чего сейчас расширяется система команд и какие монстры получаются. Отсюда и оригинальная ISA, которая к надёжности не имеет отношения.

Надёжность следует из синхронности. Если ты без прерываний в суперцикле будешь опрашивать порты и реагировать на полученные данные, то это будет достаточно надёжная система в плане временных характеристик, но она будет иметь плохое время отклика и сильно греться. Если ты используешь прерывания, то система будет иметь хорошую отзывчивость, сможет засыпать между прерываниями, но у тебя появится проблема СИНХРОНИЗАЦИИ.

Да, ты не считаешь синхронизацию проблемой, потому что её решают все разработчики, она давно известна, все уже привыкли и никто её проблемой не считает - все современные сиситемы так или иначе решили эту проблему.

Называй меня как хочешь, но я ТВЁРДО УБЕЖДЁН и проверил экспериментально, что замена прерываний синхронными сообщениями это лучший компромисс между надёжностью и эффективностью. Любую систему можно построить как множество задач, обменивающихся сообщениями. Прерывания это тоже в некотором роде сообщения, но они асинхронны.

Я думаю по поводу сообщений у тебя не возникнет возражений, потому как, я надеюсь, VxWorks и QNX/Neutrino наиболее часто используются в космической технике и используют эти принципы.

Камень преткновения это синхронность. И плисоводы меня поймут - они первым делом бьют по рукам за асинхронный дизайн. Если пойти чуть дальше и на уровне ядра ОС отказаться от асинхронности, то решатся проблемы надёжности, изохронности и энергопотребления. Конечно не "бесплатно" - взамен появляется проблема сложности. Недосмотрел и получил проблему взаимоблокировки. Пример - задача №1 посылает сообщение задаче №2, которая посылает сообщение задаче №3, которая посылает сообщение задаче №3. В итоге все друг друга ждут и система заблокировна. Эта проблема решается проектированием. А если кому лениво расписывать программно-аппаратный комплекс на таком уровне - пусть берёт готовое решение, продуманное за него, и обвешивает его нужной функциональностью.

Что касается прерываний, то их следует заменить сообщениями. Если бы ты видел, как при этом урощается обработчик, ты бы меня поддержал. Суть в том, что задача спит в ожидании события - сообщения от другой задачи, прерывания от устройства или таймаут. Любое внешнее событие приходит в одно место. Обработка сводится к анализу события, реакции на него и переходу в состояние ожидания. В итоге управление тем же спутником или луноходом выглядит как несколько десятков спящих задач, периодически выходящих из сна, как-то взаимодействующих и переходящих снова в состояние сна.

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

Ещё раз - я не утверждал что ISA связана с надёжностью. Возможно корреляция какая-то есть, но мне ничего об этом неизвестно.
Аноним 23/09/19 Пнд 14:12:34 3808711453
>>380865
Я нихуя не понял что ты называешь сообщениями. Может напишешь более доступно? И на счет отсутствия свободного места под опкоды - явно бред. Взять хоть risc-v или mips.
Аноним 23/09/19 Пнд 14:55:28 3808721454
>>380865
Нет никакой проблемы синхронизации. Многопоточность — это абстракция, которая вынесена за пределы уровня железа на уровень софта потому что человечество выработало именно такой путь решения сложных задач: иерархически разделять всё по нескольким уровням абстракции от простого к сложному. Процессор ничего не знает про потоки, зато он прост и надёжен. А то, что ты хочешь, перенести на него управление многопоточностью — это попытка совместить две аккуратно разделённые абстракции в один переусложнённый комбайн, который ни верифицировать, ни протестировать на всём множестве возможных состояний будет невозможно, и решаемые которым мнимые проблемы никто проблемами не считает, а считает грамотным иерархическим подходом к нарастающей сложности. Это предложение из серии "а давайте перепишем гуй на ассемблере, летать же будет, ёба!" Нахуй и в пизду такое счастье.
Аноним 23/09/19 Пнд 15:11:59 3808761455
>>380871
Сообщения это точки взаимодействия между задачами. Это IPC - Inter Process Communication. Прерывания тоже транслируются в IPC. В микроядре L4 это делается программно, самим микроядром, моя цель - реализовать их аппаратно. У сообщения есть таймаут - не ждать, ждать заданное время или ждать бесконечно. На этом базисе строится всё.

Вот, из соседней темы пост >>380844 Видишь как реализована функция задержки? Циклом с опросом TickCounter. Как бы делал ты? Вероятно что вешался бы на таймер (если ОС не предоствляет функицию задержки). Посредством сообщений эта задача решается элементарно - ждёшь сообщениие от самого себя в течение заданного времени. Время зарежки отдаётся другим задачам или процессор спит, если нет активных задач.

И снова к прерываниям - транслируй прерывания в IPC, и половина задачи решена.

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

Давай попробуем разобраться на примере. Вот на крыле самолёта есть лампочка, которая моргает. Предлагаю тебе написать программу, которая будетт управлять морганием этой лампочик. С возможностью запускать и останавливать моргание, а так же с возможностью менять частоту моргания. На HDL языках это будет очень простая программа. А как насчёт программы для микроконтроллера? Если приведёшь пример такой программы, я покажу аналогичный пример на сообщениях. И посмотрим у кого получится проще и элегентней.

> И на счет отсутствия свободного места под опкоды - явно бред. Взять хоть risc-v или mips.

Когда я начинал, RISC-V то ли вообще ещё не было, то ли он был известен лишь в узких кругах. Что касается MIPS, то может быть и можно. Давно это было, смотрел корки MIPS на opencores.org и решил не связываться. Как бы не очень люблю трёхадресные команды, не очень люблю RISC Кстати, если не лениво, то подскажи хотя бы два свободных ОП-кода для него. Как минимум нужны две инструкции - SEND и RECEIVE. Адрес задачи для коммуникации в регистре, таймаут в регистре, 14 регистров под сообщение, остальные регистры меняться не должны и принадлежат задаче.


Аноним 23/09/19 Пнд 15:23:22 3808801456
>>380872
>Процессор ничего не знает про потоки, зато он прост и надёжен.

Ага. Прост. Спекулятивное выполнение, предсказание переходов, переименование регистров - всё очень "просто".

> Процессор ничего не знает про потоки, зато он прост и надёжен.
Интел как-то пробовал https://en.wikipedia.org/wiki/Task_state_segment
Так и болтается для совместиимости эта бесполезная вещь.
Но даже на этом Intel не успокоилась и породила вот это - https://en.wikipedia.org/wiki/Hyper-threading

> Нет никакой проблемы синхронизации.
Угу - семафоры и критические секции - вот это вот всё с потолка взялось.

Аноним 23/09/19 Пнд 15:52:39 3808871457
>>380880
На примере х86 рассуждать об архитектуре — это зашквар, если, конечно, речь не о том, как х86 безнадёжно вынужден тащить за собой все колебания линии партии, неудачные эксперименты, ошибки проектирования и костыли. Причём накопление нелепостей и идиотизма уже таково, что его тоже вынесли на отдельный уровень абстракции, заставив заниматься им простое и надёжное RISC-ядро.

>Угу - семафоры и критические секции - вот это вот всё с потолка взялось.
Это не проблемы синхронизации. Это задачи синхронизации и инструменты, которые работают, решают задачи и выполняют заявленные функции.
Аноним 23/09/19 Пнд 16:03:38 3808901458
>>380887
>Причём накопление нелепостей и идиотизма уже таково, что его тоже вынесли на отдельный уровень абстракции,

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

>Это задачи синхронизации и инструменты, которые работают, решают задачи и выполняют заявленные функции.
Вот именно это мы обсуждалv в /spc - >>512088
Давай не будем возвращаться к законам Кларка и NIH-синдрому.


Аноним 23/09/19 Пнд 16:37:53 3808931459
>>380890
>>380876
Ты какой-то чудной. Тебя спрашивают как работают твои сообщения (на уровне инструкций), а в ответ ты начинаешь писать о том, как они хороши. Ну не странно ли это?
Аноним 23/09/19 Пнд 16:39:29 3808941460
>>380876
>На HDL языках это будет очень простая программа. А как насчёт программы для микроконтроллера?

По прерыванию от таймера выходной порт меняет своё состояние
По прерыванию от управляющего интерфейса перенастраивается таймер

Вот и вся программа.
Аноним 23/09/19 Пнд 16:46:04 3808951461
>>380893
>Тебя спрашивают как работают твои сообщения (на уровне инструкций)

SEND и RECV осуществляют вход в планировщик. Программный или аппаратный, это уже детали. Планировщик коммутирует регистровый файл устройству выборки и выполнения. Пока так.
Аноним 23/09/19 Пнд 16:52:09 3808961462
>>380894
>По прерыванию от таймера выходной порт меняет своё состояние
>По прерыванию от управляющего интерфейса перенастраивается таймер

Хмм. Мой вариант:

Ждём событие, если пришёл таймаут, меняем состояние, иначе обновляем значение таймаута из события.

Таймеры не нужны
Аноним 23/09/19 Пнд 17:05:46 3808971463
>>380896
>пришёл таймаут
>Таймеры не нужны
Это как? Что за микроконтроллер без таймеров?
Аноним 23/09/19 Пнд 17:13:01 3808981464
>>380897
>Это как? Что за микроконтроллер без таймеров?

Совершенно верно. Только встроенный счётчик тактов планировщика, к которому нет прямого доступа со стороны программиста. Все временные интервалы определяются лишь таймаутами ожидания приёма или передачи сообщений.

Иными словами все таймеры заменяются одним счётчиком, который считает такты до ближайшего события.

Истину говорю вам - таймеры не нужны.

Аноним 23/09/19 Пнд 18:09:31 3809001465
>>380898
Чем это, сделанное аппаратно, лучше того же самого, но сделанного программно на ЛЮБОМ из существующих микроконтроллеров?
Аноним 23/09/19 Пнд 18:30:17 3809011466
>>380898
Ты только что изобрёл ртос. Там тоже большинство таймеров отдаются под нужды системы.
Аноним 23/09/19 Пнд 18:35:50 3809041467
>>380900
Чуть эффективнее. Иногда даже не чуть. Погугли на тему "scheduler hardware acceleration". В некоторых ситуациях код планировщика может съесть до 20% процессорного времени.

Но даже программная реализация получается лучше, чем традиционные решения с кучей таймеров - пример выше с управлением морганием лампочкой.

Аноним 23/09/19 Пнд 18:42:14 3809061468
Архитектурами занимаются целые группы ученных в исследовательских центрах крупных международных корпораций и тут ты такой красивый со своей охуительной прорывной идеей выскакиваешь. Ебать, как амд/интел/арм до такого не додумались?
Аноним 23/09/19 Пнд 20:03:30 3809111469
>>380904
Понятно. То есть никаких преимуществ, потому что контроллер - не числодробилка, и проц всё равно большую часть времени находится во сне/ожидании.

>Но даже программная реализация получается лучше, чем традиционные решения с кучей таймеров - пример выше с управлением морганием лампочкой.
Но все эту задачу всё равно сделают на паре прерываний. Наверное, потому что им просто не открылась Истина, что они делают непросто и неэлегантно. Жалкие людишки.
Аноним 23/09/19 Пнд 22:05:56 3809211470
Лучше расскажите, как сделать обработку пакетов.
Есть axi-stream шина(слейв и мастер или как там сейчас политкорректно? ). По axi необходимо поддерживать 8 различных сессий обмена данными. Если обрабатывать всё это в одной FSM получится дохуя ветвлений и потом заебусь это дело отлаживать.
Есть ли смысл в данном случае использовать броадкаст - то есть разделить 1 шину на 8 получится что каждая сессия будет работать со своей шиной. Или забить, пилить всё в одной FSM?

Вообще есть ли предел числу состояний после которого начинаются проблемы с дизайном?
Аноним 23/09/19 Пнд 22:17:54 3809221471
>>380906
> тут ты такой красивый со своей охуительной прорывной идеей выскакиваешь.

Если что, я занимаюсь этой бедой не один год http://l4os.ru/.

А тут вот можно с макроассемблером поиграться и пару примеров посмотреть - http://everest.l4os.ru/download/MacroAssembler.zip
Аноним 23/09/19 Пнд 22:18:24 3809231472
>>380921
>Есть ли смысл в данном случае использовать броадкаст
Ровно для этого и придуман был AXIS interconnect и сигнал tdest.

>Вообще есть ли предел числу состояний после которого начинаются проблемы с дизайном?
Прямой зависимости от числа состояний нет. 16-битный счётчик можно считать FSM с 65536 состояниями.
Аноним 23/09/19 Пнд 22:27:09 3809241473
>>380923
>Прямой зависимости от числа состояний нет.
Ну как это нет зависимости? А если потребуется подать на комбинаторную логику текущее состояние? Если у меня предположим 3-битный регистр состояния - будет потрачена всего 1 LUT. В случае с 8-битным регистром уже одним LUT не обойтись.
Аноним 23/09/19 Пнд 22:29:12 3809251474
Аноним 23/09/19 Пнд 22:35:33 3809261475
>>380924
>В случае с 8-битным регистром уже одним LUT не обойтись.
С ростом числа состояний у тебя проблемы с головой начнутся раньше, чем с производительностью.
Аноним 23/09/19 Пнд 22:47:02 3809281476
>>380926
Ну например, при использовании one hot-кодирования состояний проблемы начнутся быстро.
Ладно, хрен с ним, с кодировкой состояний. Основная проблема даже не в них.
Для передачи пакетов обычно использую сдвиговый регистр, а т.к. вариантов пакетов слишком много, получается жирный мультиплексор.
Аноним 24/09/19 Втр 08:42:40 3809701477
>>380928
Onehot-кодирование было изобретено как раз для избежания проблем с декодированием состояний. Есть другие варианты. Например, тебе было норм использовать три активных бита, можно придумать кодирование, которое каждое из возможных валидных состояний задаёт определённой комбинацией из трёх единиц среди кучи нулей. Есть всякие автоматизированные генераторы для таких вещей, я ни разу не использовал, не было нужды.

>т.к. вариантов пакетов слишком много, получается жирный мультиплексор.
Конвейеризация поможет от всего. Дели по поддиапазонам, буферизируй и потом разбирай каждый поддиапазон.
Аноним 26/09/19 Чтв 11:18:28 3811351478
Хочу запустить какой-нибудь эмулятор cocнолей на FPGA. Какую архитектуру рассмотреть?

Не хотелось бы самостоятельно писать проц и вот это всё. Готов взять чужое ядро проца, портировать его под архитектуру доступной мне плисины(xilinx 7 series) ну и допилить проект в части подключения к плате джойстика, образа картриджа, вывода звука и изображения.

Начал читать про денди. Всё бы ничего, вот только они наворотили дел с интерфейсом картриджа. Разрядности адресной шины недостаточно, поэтому используют специальные чипы(мапперы) которые переключают банки памяти. Под каждый тип картриджа придется делать отдельный эмулятор.

Как с этим обстоят дела у сеги? Накидайте интересных проектов по этой части, если кто интересовался.
Аноним 26/09/19 Чтв 12:15:01 3811421479
Аноним 26/09/19 Чтв 13:42:58 3811481480
Аноним 26/09/19 Чтв 22:10:50 3812101481
>>316943 (OP)
Хочу самую круть для обработки и синтеза звука что есть на данный момент, что посоветует мудрый анон? Бюджет не более 100$ за камень
Аноним 26/09/19 Чтв 22:49:22 3812171482
>>381210
Как именно ты собрался обрабатывать и синтезировать звук?
Ты что, из этих... аудиофилов?
Аноним 26/09/19 Чтв 23:16:11 3812211483
>>381217
Обработка это очевидно разные фильтры, а синтез табличный, хочу 16 каналов синтеза
Аноним 27/09/19 Птн 08:54:27 3812461484
>>381221
Ты по всем тредам лазишь?
Аноним 27/09/19 Птн 09:02:53 3812471485
>>381221
Ты хоть знаешь что такое фильтр и как он выглядит? Что мешает тебе сделать все это на компе? С чего ты вообще взял, что для этого требуется ПЛИС? Или ты считаешь, что фильтр это такая магическая штука, что кроме как на ПЛИС не заведется?
Вот серьезно, хоть бы с передаточной функции этих фильтров начал что ли. Вообще, что мешает вставить твои фильтры в какой-нибудь симулинк и послушать что будет на выходе?
Аноним 27/09/19 Птн 11:13:10 3812601486
2019-09-2711-10[...].png 143Кб, 1920x1080
1920x1080
Короче скачал сырцы вот этого эмулятора:
https://github.com/MiSTer-devel/Genesis_MiSTer
С самого утра собирал в блеваде проект дабы оценить объем работ по портированию. По закону жанра в репозитории не оказалось части файлов, но вроде нагуглил.

Сейчас вот сижу и смотрю на огромную портянку файлов в иерархии проекта и охуеваю. Есть шансы во всем этом разобраться?
Аноним 27/09/19 Птн 11:20:05 3812611487
Еще пытался запустить в зашквартусе оригинальный проект. В qpf-файле сказано, что требуется версия 17.0, скачал, установил. Попробовал открыть - хуй там плавал, подавайте версию pro. Где ж ее еще найти эту pro? Как же с вивадо охуенно, не надо ебаться с кряками, не нужно держать на компе зоопарк версий, не надо отдельно устанавливать саппорт пакеты для девайсов.
Достаточно иметь ise 14.7 и более-менее свежую версию вивады и у вас будет возможность работы практически со всей линейкой Xilinx.
Аноним 27/09/19 Птн 11:39:09 3812621488
>>381260
>Есть шансы во всем этом разобраться?
Вопрос уровня: "Смогу ли я поднять эту штангу?"

>Где ж ее еще найти эту pro?
А если создать проект в твоей версии и самому добавить в него файлы?

Я бы тоже от pro не отказался, у этой версии вроде как есть "инкрементальный" синтез, позволяющий каждый раз не пересобирать весь проект, а только измененные файлы.
Аноним 27/09/19 Птн 11:47:03 3812651489
>>381262
>А если создать проект в твоей версии и самому добавить в него файлы?

Да уже нужды нет, я хотел только взглянуть на иерархию но уже через вивадо всё собрал. Сейчас сижу подгоняю альтеровский SV-код под причуды синтезатора Xilinx.

Вот у X тоже свои прибабахи. В always_comb повсеместно используется блокирующее присваивание на wire. Казалось бы всё норм, но нет, у хилых так нельзя, меняй wire на logic!
Аноним 27/09/19 Птн 11:53:47 3812681490
Аноним 27/09/19 Птн 12:17:13 3812751491
2019-09-2712-15[...].png 9Кб, 692x156
692x156
Что-то ору с переводчика.
Аноним 27/09/19 Птн 12:29:36 3812771492
>>381268
Я видел такое в коде под Xilinx. При попытке скомпилировать под Altera я получал закономерную ошибку. Но это был Quartus II (даже ещё не Prime), что там навертел Интел в семнадцатой и более поздних версиях - не знаю.
Аноним 27/09/19 Птн 12:41:35 3812791493
>>381265
>Вот у X тоже свои прибабахи. В always_comb повсеместно используется блокирующее присваивание на wire. Казалось бы всё норм, но нет, у хилых так нельзя, меняй wire на logic!
Сука, как же я вас, пидоров, ненавижу. Пишете говнокод, потом мне дают этот говнокод и говорят собрать, вносить какие-либо правки при этом запрещая и поясняя, что "wire в левой части в always - ЭТО ПРАВИЛЬНО, т.к. это комбинационная логика" . А у меня Synopsys Design Compiler и VCS такое дерьмо собирать отказываются.
Будь добр, прочитай стандарт на верилог, либо забудь про разработку цифровых схем.
Аноним 27/09/19 Птн 13:12:15 3812821494
>>381279
> поясняя, что "wire в левой части в always - ЭТО ПРАВИЛЬНО, т.к. это комбинационная логика" .
always это комбинационная логика? Давно и у кого?

> у меня Synopsys Design Compiler и VCS
А зачем тебе они? Ты чужие поделки воплощаешь в кремнии?


Аноним 27/09/19 Птн 13:14:11 3812831495
>>381246
>>381247
Я пошутил, они повелись, в общем как всегда)
Аноним 27/09/19 Птн 13:20:03 3812841496
>>381279
Где твой больной мозг увидел, что Я так пишу?
Речь про чужой код с гитхаба.
Аноним 27/09/19 Птн 19:01:11 3813201497
Аноним 27/09/19 Птн 19:55:16 3813331498
>>381282
>Давно и у кого?
У вериложцев со времён изобретения always @()
Что туда где-то разрешают засовывать wire в левую сторону, я, впрочем, не знал.

Даже не знаю, как к этому относиться. С одной стороны, люто бесит, что для описания комблогики приходится объявлять reg, которые не компилятся ни в какие регистры в железе. С другой, wire, который внутри блока последовательных операций самостоятельно хранит своё значение, тоже тот ещё майндфак.

мимо*
Аноним 27/09/19 Птн 20:03:52 3813361499
>>381333
>со времён изобретения always @(*)
Фиксед.
Аноним 27/09/19 Птн 21:06:04 3813491500
Аноним 27/09/19 Птн 21:55:23 3813581501
>>381349

port map(
...
data_b => (others => '0'),
...
);

Вылезла такая вот ошибка:
[Synth 8-2784] type of aggregate cannot be determined without context ; 11 visible types match here



data_b - это 32 битный порт вериложного модуля. Что здесь не так? Похоже насосуь хуёв от vhdl
Аноним 28/09/19 Суб 09:07:38 3813891502
>>381358
Прежде чем вставлять модуль, нужно объявить его как компонент, в этом объявлении ты пропишешь все порты с их типами. После этого можно вставлять.
Аноним 28/09/19 Суб 09:57:45 3813911503
>>381389
Компонент нужно объявлять для каждой сущности модуля?
Тогда почему только на конкретном порту data_b вылезла ошибка?
Аноним 28/09/19 Суб 10:20:40 3813941504
>>381391
Нет, ты один раз объявляешь компонент в той же секции, где объявляются сигналы (или в отдельном package).

>Тогда почему только на конкретном порту data_b вылезла ошибка?
Пути конпелятора неисповедимы.
Аноним 28/09/19 Суб 11:47:33 3814111505
>>381394
Спасибо, получилось.

Еще один прикол:
[Synth 8-509] operands of logical operator '&' have different lengths (9 vs. 4)

ioq := (ioq and x"7") xor ('0'&BusA);

ioq - std_logic_vector(8 downto 0)
BusA - std_logic_vector(7 downto 0)

откуда здесь vs. 4 взялось?
Аноним 28/09/19 Суб 12:43:37 3814121506
Аноним 28/09/19 Суб 12:46:03 3814131507
>>381412
7 это все равно 3 бита, а не 4.
Аноним 28/09/19 Суб 13:06:21 3814161508
>>381412
Почему на интеле это компилится?
Ебанул вот так:
ioq := (ioq and ('0' & '0' & '0' & '0' & '0' & x"7")) xor ('0'&BusA);
Хуй знает как на языке Богов сказать 5'b0
надеюсь угадал
Аноним 28/09/19 Суб 15:03:18 3814291509
Есть пачка некро плат со вторым спартаном и изи-юсб.

Слил поставил оче старый ISE. Всё ок, в смысле попробовал что-то наваять на верилоге - оно синтезируется, фиттинг и остальное успешно заканчивается, пины прибил.

Теперь вопрос: а как мне это дело симулировать?

Где брать Modelsim XE? iSim? ЩИТО ДЕЛАТЬ КАК ЖИТЬ БЕДА
Аноним 28/09/19 Суб 15:05:33 3814301510
>>380746
>Не знал что FPGA одноразовые? Залил конфигурацию и после передергивания питания она стирается.

Есть куча решений с инстант-поверон и флешом унутрях. В том числе рад-харденед.
Аноним 28/09/19 Суб 15:23:53 3814441511
>>381429
Ну во-1 в ise есть встроенный симулятор. На первое время хватит.
Аноним 28/09/19 Суб 15:48:22 3814501512
1565777.jpg 61Кб, 309x305
309x305
>>381444
Он с какой версии появился и как называется? Я ставил 6.1, нету там ничего.

Так-то я сделал тестбенч (файл на верилоге через их же мастер) и ещё нарисовал тестовые вейформы, но вот запустить это чудо нельзя - нет симулятора.
Аноним 28/09/19 Суб 15:55:56 3814511513
Аноним 28/09/19 Суб 16:03:25 3814531514
>>381413
>7 это все равно 3 бита, а не 4.
Если пишешь X"7", то это 4 бита. X"07" - 8 бит.

>>381416
>Хуй знает как на языке Богов сказать 5'b0
На языке богов ты объявляешь константу
constant c_mask : std_logic_vector(8 downto 0) := "0_0000_0111";
и делаешь and с этой константой.

Аноним 28/09/19 Суб 17:02:39 3814571515
Второй день ебусь с портированием этой сосноли на Xilinx. А ведь я еще даже не начинал отладку.

В начале года на работе была задача портировать довольно большой проект с Xilinx на Intel, там дела шли гораздо легче.

А как проходят ваши выходные?
Аноним 28/09/19 Суб 17:10:59 3814591516
>>381457
Ищем мастурбаторы. Пока что глаз положен на Reverse U16 и DivGMX и легкое охуевание где добывать детальки под них.
Фанат-коллекционер Altera и тихо фапаю на Xilinx ZU-28DR.
Аноним 28/09/19 Суб 17:13:13 3814601517
>>381453
>constant c_mask : std_logic_vector(8 downto 0) := "0_0000_0111";

Весьма компактно и выразительно. Уочень удобно.
Аноним 28/09/19 Суб 17:16:04 3814611518
>>381451
Она не поддерживает второй спартан, которых у меня около 20шт.
Аноним 28/09/19 Суб 17:21:20 3814621519
Ачтодальшето.png 35Кб, 809x290
809x290
>>381451
у меня сейчас вот так всё выглядит. Можно выбрать разные симуляторы и сделать для них либы для тестов. Но симуляторов, ес-но, нет. iSim не вижу.
Аноним 28/09/19 Суб 17:28:46 3814661520
>>381461
Ты прав, давно не запускал это говно.
Попробуй icarus verilog, что-то простое отсимулировать хватит с головой.
Аноним 28/09/19 Суб 17:35:20 3814691521
>>381466
>это говно.

Открыл пример из комплекта, таргет был xc2c00 auto. Всё ОК, ну за исключением невозможности симуляции из-за отсутствия симулятора. Поменял на xc9500xl.

Внезапно вот это вот:

> ERROR:Xst:899 - stmchine.v line 42: The logic for <current_state> does not match a known FF or Latch template.

Блять, они это серьёзно?
Аноним 28/09/19 Суб 17:40:12 3814711522
>>381462
А тебе с констрэйнами надо? Если нет, то поставь рядом Квартус - с ним ModelSim идёт в комплекте. Или Алтера Интел раздаёт. Но поиметь ModelSim всё же можно.
Аноним 28/09/19 Суб 17:44:31 3814721523
>>381469
И что ты там такое написал?
Аноним 28/09/19 Суб 17:45:57 3814731524
>>381469
Возможно тебе повезло и именно эта версия ise имеет баг. Попробуй поискать эрату.
Аноним 28/09/19 Суб 17:55:34 3814751525
mybutthurts.png 25Кб, 914x388
914x388
>>381472
Я ничего не писал, я открыл экзампл "стоп вотч".

Попробовал "always @ (posedge clk)" - аналогично, не взлетело. На XC9500XL всё ломается, ставишь обратно XC2C00 - всё заебись.
Аноним 28/09/19 Суб 17:56:46 3814761526
>>381473
Я нагуглил, что последняя версия, которая работает со второыми спартанами - это 10.1

Поставлю её.
Аноним 28/09/19 Суб 17:59:00 3814771527
>>381473
>>381472

К слову, я вчера пробовал свои силы в верилоге и для таргета выбрал эти XC9500XL, которые у меня есть (у них 5в толерантые входы и тут как раз надо такое).

Было много разных странных ошибок, вроде того, что выше. Хотя икарус верилог всё хавал.
Аноним 28/09/19 Суб 18:08:46 3814781528
>>381471
>А тебе с констрэйнами надо?

Желательно, так-то я игрался с икарус-верилогом, он интегрируется с гнушными тулами и можно делать простые вещи.

Попробую обновиться на 10.1, если будет такая же хуета - ну их нахуй, эти вторые спартаны.
Аноним 28/09/19 Суб 18:09:53 3814791529
>>381475

Ты специально блокирующее присваивание используешь? Ты или неимоверно крут и знаешь что делаешь, или наоборот.
Аноним 28/09/19 Суб 18:42:30 3814811530
fuckthatshit.jpg 110Кб, 497x640
497x640
>>381479
>Ты
>>381475
>Я ничего не писал, я открыл экзампл

Аноним 28/09/19 Суб 18:54:28 3814821531
>>381478
Лучше сразу ну их нахуй. На ровном месте такие грабли лезут. Если не любитель ковыряться в старье порвёшь пукан.
Аноним 29/09/19 Вск 15:47:43 3815631532
>>381482
А что из современного ширпотреба имеет 5в толерантные входы?
Аноним 29/09/19 Вск 16:08:17 3815661533
>>381563
Каноничные MAX7000S MAX3000, "толстые" MAX II (EPM1270 EPM2210), "толстые" MAX V (5M1270 5M2210).
Если только входы - можешь тупо на резисторах поделить если впадлу буферы искать. Сильно не радуйся, MAX II и MAX V - так же требуют один подтягивающий резистор для совместимости с 5В.
Аноним 29/09/19 Вск 16:31:38 3815671534
>>381563
А зачем тебе 5в выходы?
Аноним 29/09/19 Вск 18:15:39 3815761535
>>381567
Мне входы нужны для согласования с существующей 5в базой.
Аноним 29/09/19 Вск 18:25:44 3815811536
>>381566

> MAX II devices can be 5.0-V tolerant with the use of an external resistor and the internal I/O clamp diode on the EPM1270 and EPM2210
devices.

5в толерантные входы не требуют ничего для согласования с 5в системами. Это обычные 3.3v CMOS, ну и для выхода они предлагают опендрейн + пулапп. :(
Аноним 29/09/19 Вск 18:54:34 3815841537
>>381581
>>381576
Дяденька, определись.. Какой стул нужен?
Толерантность к ПРИЕМУ 5В (без выдачи сигналов 5В).
Полностью теплые и ламповые 5В на ВХОД и ВЫХОД?
Сейчас выход один - только буферы. Для нищебродов - обычные, питаемые напряжением принимающей стороны или нормальные буферы с двумя питающими напряжениями. Для параноиков в стиле "я не трогал, я просто смотрел" - есть 74LVC07A и подобное (open drain buffer)
Можешь взять обоссанный Flex10K - это FPGA с честными 5V IO, но есть проблемка с конфигурационными ПЗУ типа AT17 или можешь сам конфигурить ее отдельным МК.
Аноним 29/09/19 Вск 19:07:22 3815891538
>>381584
Я везде писал про 5в толератные входы. из того, что это может - сейчас это остатки xc9500XL, второй спартан, coolrunner xpla3?
А так же море микроконтроллеров с армами (которые вполне могут сэмплировать на мегагерцах ГПИО и делать, что душе хочется). Но это получается дорого и через жопу.
Аноним 29/09/19 Вск 21:14:02 3816011539
764-3967.jpg 481Кб, 1000x801
1000x801
>>381475
>if (reset == 1'b1)
Замени на if (reset). ISE не поддерживает логические выражения в условиях, там можно указать только конкретный wire или reg.
Аноним 30/09/19 Пнд 04:32:29 3816201540
>>381601
Это была версия 6.1, я её удалил уже. Повторю проблему - синтез проходит для CPLD xc2c00, но фейлится для CPLD XC9500XL.

Откуда информация, что он не поддерживает подобные конструкции? Для FPGA & CPLD CoolRunner всё чётко.
Аноним 30/09/19 Пнд 10:59:08 3816271541
>>381620
>Откуда информация, что он не поддерживает подобные конструкции?
Из опыта. Я не знаю, может, и поддерживается, а это я рукожоп.
Просто недавно была как раз такая же проблема, чип XC2C256. Код с if(a & b) не собирался. Написал
wire c;
assign c = a & b;
и написал в том always, на который он плевался if(c) - всё заработало.
Аноним 30/09/19 Пнд 11:00:41 3816281542
И добавлю, что у меня это было в 14.7.
Аноним 30/09/19 Пнд 11:04:05 3816291543
Держу Вас в курсе. В субботу удалось скомпилить ядро сеги под Зайлинкс, потом меня срубил грипп, всё воскресенье проволялся с температурой.
Дальше нужно изучать формат ром-файлов от сеги и разбираться как всё это дело запускать.
Аноним 30/09/19 Пнд 11:05:16 3816301544
>>381627
>>381628

Интересно, я когда игрался с 6.1 - мне начало казаться, что у синтезатора для xc9500 есть проблемы, когда одному и то же регистру ты суёшь из разных always @(posedge / negedge) блоков.
Перемещение логики в один блок починило жалобы. Вообще сдаётся мне, что он глючный, прям пиздец.

Уже начал смотреть на альтеру, латтис и актель.
Аноним 30/09/19 Пнд 11:06:03 3816311545
>>381628
Не может такого быть, 14.7 отлично работает.
Аноним 30/09/19 Пнд 11:48:01 3816321546
>>381630
>у синтезатора для xc9500 есть проблемы, когда одному и то же регистру ты суёшь из разных always @(posedge / negedge) блоков
В других САПР такое вообще не поощряется и на это ты получишь ошибку. По-хорошему, так делать вообще нельзя.
>Уже начал смотреть на альтеру, латтис и актель.
Вот у Альтеры ты точно получишь отбивку на попытку обращаться к одному reg из разных блоков always.
>>381631
Я бы не писал, если бы сам не столкнулся с такой проблемой 2 недели назад.
Аноним 30/09/19 Пнд 11:55:15 3816361547
>>381632
У меня был большой проект на спартане 6. Всё совпало с результатом симуляции на 100%
Хотя у меня очень примитивный стиль написания кода. Я всякую хуйню вроде блокирующих присваиваний и другие конструкции, в результате которых не уверен на 100% вообще не использую.
Аноним 30/09/19 Пнд 12:00:05 3816371548
>>381632
>Вот у Альтеры ты точно получишь отбивку на попытку обращаться к одному reg из разных блоков always.
Поддвачиваю. Сам соснул хуйцов при попытке сбрасывать-устанавливать триггер из разных always блоков.
Код компилится, можно прогнать симуляцию. Соснул на моменте синтеза, где явно писалось - ты упоролся, пошел на хуй..
Аноним 30/09/19 Пнд 12:03:02 3816381549
>>381630
>жалобы
Всего лишь? Я бы за такое сразу давал в табло.
Аноним 30/09/19 Пнд 13:18:25 3816401550
>>381630
>когда одному и то же регистру ты суёшь из разных always @(posedge / negedge) блоков
Ты же понимаешь, что это быдлокод?
Аноним 30/09/19 Пнд 13:48:07 3816421551
>>381640
Так это был синтезируемый быдлокод, так было проще.
Аноним 30/09/19 Пнд 13:49:54 3816431552
Аноним 30/09/19 Пнд 14:43:05 3816451553
>>381642
Это не имеет значения, что он там синтезируется.
always @(negedge) - вообще хуёво ложится на архитектуру FPGA, ведь все ячейки тактируются по переднему фронту. Значит синтезатор на клоковый вход ставит инвертор на луте. Я даже придумать не могу где такая конструкция нужна.



Аноним 30/09/19 Пнд 14:56:17 3816461554
>>381645
> Значит синтезатор на клоковый вход ставит инвертор на луте.
И что плохого ты в этом видишь?

> Я даже придумать не могу где такая конструкция нужна.
Вытянуть лишний мегагерц по быстродействию?
Аноним 30/09/19 Пнд 15:12:42 3816481555
>>381645
Наверное, имелось ввиду стандартное always @(posedge clk or negedge rst_)
Аноним 30/09/19 Пнд 15:46:19 3816541556
>>381646
> что плохого ты в этом видишь?
Расходуется лишняя логика

>Вытянуть лишний мегагерц по быстродействию?
Каким образом?

>>381648
Тогда ок. Но есть нюанс, в некоторых архитектурах FF с ассинхронным сбросом может быть гораздо меньше, чем обычных.
Аноним 30/09/19 Пнд 16:32:16 3816561557
>>381654
>Каким образом?
Сдвинул схему на полтакта и глитчи пропали.
Дяденька, я не настоящий сварщик - я маску на стройке нашёл.
Аноним 30/09/19 Пнд 16:50:07 3816581558
>>381648
>имелось ввиду стандартное always @(posedge clk or negedge rst_)
Ха, в точку! Именно это и было, приседания логикой для ресета.
Аноним 30/09/19 Пнд 16:55:58 3816591559
xilinxcpld.png 29Кб, 601x489
601x489
>>381645
>вообще хуёво ложится на архитектуру FPGA, ведь все ячейки тактируются по переднему фронту.

Речь шла про Xilinx CPLD, там сильно проще ваять комбинаторную логику (есть прямой сигнал и дополнение, широкая шина), чем полагаться на триггеры.
Аноним 30/09/19 Пнд 17:43:54 3816621560
>>381659
Вдогонку, если смотреь на схему - то видно, что триггеры можно сетить-ресетить без клока. А в верилоге нельзя смешивать блокирующие и неблокирующие присваивания. Вопрос, как это заюзать?
Аноним 30/09/19 Пнд 18:19:06 3816651561
>>381662
В список чувствительности олвейса внеси ассинхронный сигнал и сбрасывай/устанавливай по этому сигналу.

always @(posedge clk or posedge async_s) begin
if (async_s) rr <= 1; else begin //async
rr <= from_other_logic; //sync
end
end
Аноним 30/09/19 Пнд 20:14:46 3816871562
>>381643
Во-первых, ты не понимаешь, какое железо ты описываешь. Оно на архитектуру ПЛИС не ложится, триггеры переключаются только по posedge. Negedge означает, что клок будет где-то инвертирован с соответствующими неявными, но значительными последствиями для клокового дерева в виде ухудшенных временных характеристик и выросшего потребления клоковых ресурсов. Одновременное тактирование по posedge и negedge на архитектуру ПЛИС не ложится никак, не умеют триггеры такого.

Во-вторых, ты забываешь, что HDL — язык описания схем. Как тебе идея на обычной принципиальной схеме один и тот же транзистор рисовать два раза, в двух разных местах заводя ему на базу разные сигналы, потому что автору показалось, что так удобнее выразить его идею? Не хочется в табло ему дать?
Аноним 30/09/19 Пнд 20:27:18 3816891563
>>381687
>Одновременное тактирование по posedge и negedge на архитектуру ПЛИС не ложится никак,
А как же ddr?
Аноним 30/09/19 Пнд 20:35:49 3816901564
>>381689
Делаются на специальных буферах ввода/вывода, которые умеют работать только на ноги, и у которых задача — разделить ддр-сигнал на два, как раз-таки чтобы внутренняя логика могла с ним работать.
Аноним 01/10/19 Втр 00:40:17 3817191565
>>381690
Ладно DDR, про это наверное всем понятно. Но как ты будешь приделывать АЦП, которые тоже часто выдают результат по двум фронтам?
Аноним 01/10/19 Втр 00:56:08 3817221566
>>381719
Это тоже DDR. DDR, если что — это не память для пеки, а double data rate, передача битового потока на удвоенной частоте клока. Делается, соответственно, на всё тех же самых специализированных буферах в/в.
Аноним 01/10/19 Втр 01:25:47 3817241567
>>381722
Да, тут я несколько неправильно выразился, т.к. часто этой аббревиатурой называют именно память.

>Делается, соответственно, на всё тех же самых специализированных буферах в/в.
Пример того как это делается можешь дать? К примеру, на spartan 6, пусть и устаревшем.
Аноним 01/10/19 Втр 02:35:32 3817251568
>>381724
wire posedge_data, negedge_data, clk, reset, input_ddr_signal;

IDDR2 # (
.DDR_ALIGNMENT("C0"),
) IDDR2_inst (
.Q0(posedge_data),
.Q1(negedge_data),
.C0(clk),
.C1(!clk), // не ссы, здесь клок перевернётся аппаратно внутри самого буфера. Он это умеет.
.CE(1),
.D(input_ddr_signal),
.R(reset),
.S(0)
);


Качни UG615 и UG381.

Аноним 01/10/19 Втр 02:58:38 3817271569
>>381687
>Во-первых, ты не понимаешь, какое железо ты описываешь. Оно на архитектуру ПЛИС не ложится, триггеры переключаются только по posedge. Negedge означает, что клок будет где-то инвертирован с соответствующими неявными, но значительными последствиями для клокового дерева в виде ухудшенных временных характеристик и выросшего потребления клоковых ресурсов. Одновременное тактирование по posedge и negedge на архитектуру ПЛИС не ложится никак, не умеют триггеры такого.

Во-первых, я 100% знаю, что и как и как описываю и как оно ложится на ярхитектуру того, что использую. Тригерры имеют отдельно входы для сет и для ресет, а дистрибуция птермов и клока уже из коробки имеет и прямые и инверсные линии, прям сразу.

см >>381659

>>381687
>Во-вторых, ты забываешь, что HDL — язык описания схем. Как тебе идея на обычной принципиальной схеме один и тот же транзистор рисовать два раза, в двух разных местах заводя ему на базу разные сигналы, потому что автору показалось, что так удобнее выразить его идею? Не хочется в табло ему дать?

Я на схеме на один триггер могу завести несколько сигналов, если сигналы будут идти через некоторое количество гейтов для комбинаторного выделения нужного. В чем проблема?
Аноним 01/10/19 Втр 03:07:38 3817281570
coolrunner2.png 28Кб, 693x525
693x525
>>381687
>триггеры переключаются только по posedge.

Смотри на ячейку. Видишь триггер? Видишь, что его можно сеттить и ресеттить без клока?
Аноним 01/10/19 Втр 03:22:57 3817291571
>>381665
>В список чувствительности олвейса внеси ассинхронный сигнал и сбрасывай/устанавливай по этому сигналу.
>
>always @(posedge clk or posedge async_s) begin

Да, действительно.
Аноним 01/10/19 Втр 04:40:40 3817321572
>>381728
Бля, у ЦПЛДшников, по ходу, какая-то вообще своя атмосфера безумия. Ну их нахуй. Ты прав, делай что хочешь.
Аноним 01/10/19 Втр 05:35:47 3817331573
>>381732
Какое, блять, безумие?

Поддержка дуал-эдж триггеров из коробки, и глобальные сет-ресеты без клока. В примерах от зайлинкса явно видно другой способ ака стиль написания кода (для утилизации фич цплд)
Аноним 01/10/19 Втр 05:52:59 3817341574
> These devices feature a MicroBlaze™ soft processor running over 200 DMIPs with 800Mb/s DDR3 support built on 28nm technology.

Это про спартан7. Вопрос: почему 800 мегабит? Это всего 100 мегабайт в секунду. Что за говно?
Аноним 01/10/19 Втр 06:12:35 3817361575
>>381734
Объебались, скорее всего. Наверняка речь о DDR3-800 с 800MT/s. Надо ещё умножить это на ширину шины данных.
Аноним 01/10/19 Втр 06:15:02 3817371576
>>381736
(а то и вообще о DDR3-1600 с 800MHz частотой шины и вдвое большим количеством передач)
Аноним 01/10/19 Втр 08:42:56 3817501577
>>381732
Такие же тригеры есть и в FPGA, но мало.
Аноним 01/10/19 Втр 09:02:02 3817521578
12769070600.jpg 42Кб, 600x599
600x599
>>381727
>Во-первых, я 100% знаю, что и как и как описываю и как оно ложится на ярхитектуру того, что использую

Плохие новости, ты на гребне глупости
Аноним 01/10/19 Втр 09:20:42 3817541579
>>381752
Спасибо за пояснение и полезный пост. Теперь я понял, почему ISE любит XC2C00 и не может в свои же XC9500XL.

Как почитаешь постеров - так столько нового узнаешь Nyet
Аноним 01/10/19 Втр 09:23:23 3817551580
Пыщь-пыщь котятки, подскажите, какой сейчас есть быстрый и лёгкий способ получить 10 гигабит для передачи стрима данных на комп?

ЮСБ3.1, тхандер-болт или ещё что?
Аноним 01/10/19 Втр 09:36:31 3817561581
>>381755
PCI-E стандартный способ.
Аноним 01/10/19 Втр 09:37:21 3817571582
>>381756
(В том числе отладочных плат полно, которые разъём под слот имеют соответствующий.)
Аноним 01/10/19 Втр 10:01:28 3817581583
Аноним 01/10/19 Втр 10:18:35 3817621584
>>381756
Я думал про него, но чёрт побери, дома только 2 ноута. Никто не видел миниПИСИАЙ-Е в ноуты? ЕМНИП там могут быть проблемы со скоростью конфигурации ПЛИС.

>>381758
10 ГБе или оптику?
Аноним 01/10/19 Втр 10:25:25 3817631585
stmchine.png 19Кб, 446x577
446x577
>>381475
Некрофил снова на связи, поставил 10.1 айс.

Теперь stopwatch_cr2 на xc9500xl не синтезируется из коробки, но изменение условия с убиранием дуалэдж триггера по фронту и спаду клока - всё починило. Что радует.

Новое сообщение об ошибке было такое:
ERROR:Xst:899 - "stmchine.v" line 43: The logic for <current_state> does not match a known FF or Latch template. The description style you are using to describe a register or latch is not supported in the current software release.

Аноним 01/10/19 Втр 11:45:10 3817691586
>>381754
>понял, почему ISE любит XC2C00 и не может в свои же XC9500XL.

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

Короче, пиши простым языком, без выебонов и всё будет ОК.
Аноним 01/10/19 Втр 11:50:16 3817701587
>>381763
Объясни, зачем тебе этот индусский код?
Зачем описывать FSM в двух олвейс-блоках?
Аноним 01/10/19 Втр 12:13:48 3817721588
>>381770
Структурирование для удобства чтения?
Аноним 01/10/19 Втр 12:26:39 3817731589
>>381770
Это вообще-то норм практика — разделять комбинационную и последовательную логику.

Вот только то, что на картинке, не похоже на разделение последовательной и комбинационной логики, а похоже на говно.

Из первого блока надо убрать всё, что связано с управлением rst и clken, заменить список чувствительности на @(*) и все неблокирующие присваивания (<=) на блокирующие (=). И быть твёрдо уверенным, что в этом блоке никаких триггеров не генерируется, всё защёлкивание происходит во втором блоке;

rst и clken управлять в отдельном (третьем по счёту) always @(posedge clk) и никак иначе.
Аноним 01/10/19 Втр 12:28:50 3817741590
>>381772
В чем удобство?

https://pastebin.com/Dw1RhsF7

Вот накидал как бы я сделал. Не надо скакать по коду. Синхронная секция в одном месте, ассинхронная в другом.
Аноним 01/10/19 Втр 12:31:43 3817751591
>>381773
Вообще, универсальное правило: блоки always должны быть только с @(*) и = и тогда это комблогика либо с @(posedge clk) и <= и тогда это триггеры.

В исключительных случаях допустимо @(posedge clk, negedge aresetn) если очень хочется сделать асинхронный резет, и ты точно понимаешь для чего он тебе нужен.

Всё остальное — НАХУЙ.
Аноним 01/10/19 Втр 12:34:17 3817761592
>>381775
>В исключительных случаях допустимо @(posedge clk, negedge aresetn) если очень хочется сделать асинхронный резет, и ты точно понимаешь для чего он тебе нужен.

Это зависит от архитектуры. У него старые цплдшки, поэтому ассинхронный сброс допустим.
Аноним 01/10/19 Втр 12:36:29 3817771593
>>381774
>assign rst = (state == clear) ? 1'b1 : 1'b0;

Так-так, резет генерируется из комбинационной логики, соответственно может дёргаться между тактами, соответственно, может рандомно дёргать асинхронные ресеты, если он на них заведён. Не надо на эти грабли наступать.
Аноним 01/10/19 Втр 12:38:48 3817781594
>>381776
Допустим он где угодно. А вот для чего он может быть нужен? Зато могу сказать, как он может быть опасен: если на него по распиздяйству заведён вот такой вот сигнал — >>381777 — он может срабатывать тогда, когда не нужно.
Аноним 01/10/19 Втр 12:39:46 3817791595
>>381777
В исходном коде >>381763
ресет какбэ тоже ассинхронный.
Аноним 01/10/19 Втр 12:42:34 3817801596
>>381779
Этот исходный код даже не компилируется, похож на говно и вообще написан нубом, который сюда пришёл за советами. Слабое оправдание.
Аноним 01/10/19 Втр 12:45:01 3817811597
Аноним 01/10/19 Втр 12:53:56 3817821598
>>381778
И давай по подробнее. При каких условиях здесь rst будет дрыгать между тактами?
Аноним 01/10/19 Втр 12:54:51 3817831599
>>381781
Ну ок. За 1998 год я судить, пожалуй, не возьмусь.
Аноним 01/10/19 Втр 12:58:49 3817851600
>>381780
>и вообще написан нубом, который сюда пришёл за советами

Им что-ли >>381727 ?
>Во-первых, я 100% знаю, что и как и как описываю и как оно ложится на ярхитектуру того, что использую.

Аноним 01/10/19 Втр 13:06:59 3817871601
Позовите меня, пожалуйста, в тред, когда тут цплд закончится.
Аноним 01/10/19 Втр 13:08:08 3817881602
>>381787
Вернись, мы больше не будем.
Аноним 01/10/19 Втр 13:41:19 3817911603
>>381782
>И давай по подробнее. При каких условиях здесь rst будет дрыгать между тактами?

Вот смотри, состояние clear=000. Резет генерируется лутом из трёх сигналов, соответствующих трём битам. Если все три бита нулевые, резет на выходе лута становится 1.

Далее, у тебя есть два состояния: zero=001 и start=010

Допустим, fsm переходит из состояния zero в состояние start. При этом fsm[0] становится 0, а fsm[1] из 0 становится 1. Если проект собрался так, что из fsm[1] сигнал идёт дольше, чем из fsm[0], то при таком переключении возникнет ситуация, когда с точки зрения лута fsm[0] уже стал 0, но fsm[1] ещё не стал 1 и продолжает быть видимым как 0. Тогда на луте все три сигнала оказываются нулевыми, и он выдаёт резет. При том, что стояние clear не наступало, а был всего лишь переход из zero в start.
Аноним 01/10/19 Втр 14:28:12 3817951604
>>381791
Понятно. Не сталкивался с подобным, видимо потому что не использую ассинхронные ресеты.
Аноним 01/10/19 Втр 14:53:17 3817971605
>>381791
В какой книге годно описано о смешении ассинхронного и синхронного?
Аноним 01/10/19 Втр 15:18:03 3817991606
8fb0209ce53.jpg 59Кб, 500x700
500x700
>>381780
Это код, котрой идёт в комплекте как минимум с ise 6.x + ise 10.x

Он собирается без предупреждений, но под как минимум оин таргет фейлится.

Кто-то усиленно читает жопой. Здесь так принято, да?

>>381785
Мой коммент о том что я знаю, что делаю, относился к коду из пары десятков строк, который был для XC9536XL. Там я смотрел на итоговый RTL. Примеры из комплекта решил зююзать для тестирования багов синтезаторов - потому что безобидные вещи фейлились без основания.
Аноним 01/10/19 Втр 15:31:23 3818031607
>>381799
>безобидные вещи фейлились без основания
Но там далеко не безобидные вещи
Аноним 01/10/19 Втр 15:43:05 3818051608
ise-ise-baby.png 110Кб, 1366x768
1366x768
>>381462
>iSim не вижу.

Короче, дело к ночи уже, а воз и ныне там. В 10.1 типо есть iSim, и он типа должен запускаться,

>Running ISim simulation engine ...
>This is a Full version of ISE Simulator(ISim).

Однако нихера нет. Ни окошка, ни интерфейса, ни активных кнопочек. Проект - каунтер 4 бит для 3спартана.

Винда 7, х64. ISE x64 не пускается - сразу крэш. А вот 32ая версия - пускается. Кстати драйвера на платформ кабель встали и работают, импакт работает с юсб.

Как же меня это заебало.
Аноним 01/10/19 Втр 15:46:09 3818071609
>>381805
Ставь виртуалку в win XP
Аноним 01/10/19 Втр 16:19:53 3818131610
>>381807
Может в линукс поставить? Я поискал, бинарника isimgui нигде нет. Неудивительно, что он не запускается. Пизда, нихуя не понятно.
Аноним 01/10/19 Втр 16:21:26 3818141611
>>381813
Кстати, я не ставил ничего для работы с virtex. Может симулятор с ними идёт?
Аноним 01/10/19 Втр 17:19:49 3818261612
>>381813
Смотри, винда есть хп, 7, есть 8, 10 и всё. А линуксов целый зоопарк дистрибутивов, версий. Для тяжелого софта обычно пишут указывают конкретную сборку линукса, в остальных работоспособность не гарантируется. Так что под линуксом может быть еще больше приколов.
>>381814
Судя по логу симулятор есть, но он почему-то не запускается. Возможно по той же причине, что и 64х версия ise. Короче попробуй виртуалку с ХП.
Аноним 02/10/19 Срд 05:19:08 3818851613
>>381826
Я погуглил, ISE - глючный кусок говна, если судить по форумам и саппорту от зайлинкс. https://forums.xilinx.com/t5/Simulation-and-Verification/Isim-crashing-Windows-7-VM/m-p/219187#M5220

Оно глючит на разных версиях, рекомендуют или ХП или Линукс. Какой пиздец, и это - лидеры в области ФПГА. Я боюсь даже представить, что будет, если я возму актель-микросеми или альтеру-интель.
Аноним 02/10/19 Срд 10:09:39 3819021614
>>381885
> ISE - глючный кусок говна
>Какой пиздец, и это - лидеры в области ФПГА

Использует древнее говно, удивляется что оно глючит.
Аноним 02/10/19 Срд 11:07:34 3819051615
>>381902
Оно глючило и в 2010-2011 и глючит сейчас. Внезапно.
Аноним 02/10/19 Срд 12:15:00 3819121616
>>381885
Поэтому все нормальные люди перешли на 7ю серию либо вообще ультраскейл. Начинать новые проекты на старом железе это такое.
Тем более сейчас младшие модели цинков и спартанов 7 прилично подешевели.
Аноним 02/10/19 Срд 15:33:13 3819321617
>>381912
huh?
в реальном мире не для всех задач нужны кинтексы, зинки и спартаны. есть задачи - замены горсти горелой логики в ДИП-корпусах плис-ом. или согласование инерфейсов
здесь цплд-шки заебись, пока ещё есть 5в толерант опции
Аноним 02/10/19 Срд 18:18:46 3819431618
>>381932
Сочувствую, братиш. Наверняка очень неблагодарное занятие.
Аноним 03/10/19 Чтв 03:51:40 3820241619
>>381943
Год назад сталкивался 8088. Да, с этим самым.
Аноним 05/10/19 Суб 15:17:47 3823031620
>>381261
>Где ж ее еще найти эту pro?
Пересобери проект и дело в шляпе, чё ты как этот.
Аноним 06/10/19 Вск 00:55:09 3844301621
>>381261
>В qpf-файле сказано, что требуется версия 17.0
qfp-файл можно вообще сделать пустым, вся важная информация находится в qsf
Аноним 06/10/19 Вск 16:24:26 3844751622
>>381645
>синтезатор на клоковый вход ставит инвертор на луте.
Не на луте, во всяком случае у Сыклонов. У них на входе ячейки есть специально подключаемый инвертор для таких целей. Скомпиль и просмотри как выглядит в чиппланере.

>Я даже придумать не могу где такая конструкция нужна.
Да сплошь и рядом, когда работаешь с асинхронными сигналами на входе ПЛИС, которые не удаётся перетактировать на свою частоту по причине их высокой скорости.
Аноним 06/10/19 Вск 16:27:03 3844761623
>>381687
> Одновременное тактирование по posedge и negedge на архитектуру ПЛИС не ложится никак, не умеют триггеры такого.
Умеют, но не все.
Аноним 06/10/19 Вск 16:35:44 3844781624
>>381791
>Допустим, fsm переходит из состояния zero в состояние start. При этом fsm[0] становится 0, а fsm[1] из 0 становится 1. Если проект собрался так, что из fsm[1] сигнал идёт дольше, чем из fsm[0], то при таком переключении возникнет ситуация, когда с точки зрения лута fsm[0] уже стал 0, но fsm[1] ещё не стал 1 и продолжает быть видимым как 0. Тогда на луте все три сигнала оказываются нулевыми, и он выдаёт резет. При том, что стояние clear не наступало, а был всего лишь переход из zero в start.
Всё это называется гонки сигналов.
Аноним 07/10/19 Пнд 05:06:15 3845181625
>>384475
>Да сплошь и рядом, когда работаешь с асинхронными сигналами на входе ПЛИС, которые не удаётся перетактировать на свою частоту по причине их высокой скорости.
Это, например, что? Я честно не могу представить.
Аноним 07/10/19 Пнд 05:12:13 3845191626
>>384518
Хотя, наверное, могу. Приёмник радара какого-нибудь после фильтра со сжатием импульсов.
Аноним 07/10/19 Пнд 10:31:30 3845371627
>>316943 (OP)

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

Ну и еще есть стандартные проблемы с восприятием подхода к… даже язык не поворачивается сказать «программированием ПЛИС». Это не программирование в привычном понимание. Программа — набор последовательных инструкций. В ПЛИС с непривычки очень здорово запутаться можно, а каждая ошибка превращается в 10 минут (почти что минимум) безделья и попивания чая на пересборку проекта.

Ну и чтобы еще больше «уравновесить» восторг статьи, чуть критики перечисленных плюсов:
1) не надо читать доки на МК. Зато придется читать доки на: USB, Ethernet, думать как перетащить известную написанную на С/С++ реализацию TCP/IP в ПЛИС, CAN и прочее-прочее добро. То, что есть готовые модули — это хорошо, но документацию то значит придется читать на них, не? а когда чужой модуль начинает вести себя… непредсказуемо? Да он же бесплатно был взят из инета! какие претензии?
2) ну про дедушку пример можно и про плис сказать. в сарайке есть плис, вот из него и соберем. А с тем, что есть эффективный по функциональности, цене в серии и, страшно сказать, времени на разработку МК под этот род задач, даже и разбираться не будем — лень же читать доки и все это в голове держать.
3 и 4ое — мне кажется когда в годах 70х придумывали языки программирование, то в каждой презентации были вот эти слова про «теперь можно сделать хорошо отлаженный модуль», «легко импортировать чужие модули».
Аноним 07/10/19 Пнд 11:06:53 3845431628
>>384537

Конечно не моего ума дело, но я бы запретил на «Хабре» статьи подобного рода. Во-первых статей для начинающих плисоводов в И-нете на всех возможных языках (включая, разумеется, русский) пруд пруди. А главное — авторы подобных статей не понимают одного: программирование FPGA нельзя «попробовать»! Это можно попробовать «попрограммировать» на компе или игрушечную платку с «восьмирёночком» типа «Ардуино». А вот с ПЛИС — это как изучать иностранный язык или играть на музыкальном инструменте, либо ты этим занимаешься по-серъёзному и регулярно, либо не нужно тратить на это время вообще. Кроме того, нужен совсем другой объём знаний по сравнению с программированием. По-крайней мере, истинный плисовод должен очень хорошо разбираться в электронике, как показывает моя многолетняя практика вменяемого плисовода можно сделать только из грамотного электронщика.

кстати, почему на зашквабре такой пиздец с дефисами? "все-равно", "по-крайней мере", хочется их убить всех нахуй.
Аноним 07/10/19 Пнд 11:19:05 3845451629
>>384543
Только вот скоро они будут не нужны. Протоколы, алгоритмы обработки сможет описать любой нормальный программист, используя созданный для этого декларативный функциональный язык, а задача подгонки этого под нужный чип ума не требует и её можно доверить технику, закончившему как-бы-вуз с тройками в дипломе.
Аноним 07/10/19 Пнд 11:42:47 3845461630
>>384543
Зачем ты читаешь петухабр?
Аноним 07/10/19 Пнд 11:56:57 3845481631
>>384545
С каких это пор программисты считаются более квалифицированными чем электроники?

>>384537
>А когда начинается сложная логика или протокол связи, то все-равно внутрь ПЛИС приходится загружать какой-то из доступных микроконтроллеров

Может быть похоливарим насчёт микроконтроллера, который приходится загружать в ПЛИС?
Аноним 07/10/19 Пнд 12:05:59 3845491632
>>384548
>считаются более квалифицированными чем электроники?
С тех пор, как стали зарабатывать больше. Дно из геймдева зарабатывает больше, чем топ-электронщик из нии.
Аноним 07/10/19 Пнд 12:15:12 3845501633
>>384549
Ну "дно из геймдева" не такое уж и дно с точки зрения квалификации, по идее. Это одна из самых байтоёбских специализаций в программировании.

>>384548
>С каких это пор программисты считаются более квалифицированными чем электроники?
С каких это пор сравнивают "квалифицированность" между разными инженерными профессиями? Что это за методика такая?
Аноним 07/10/19 Пнд 12:17:14 3845521634
>>384549
Это не показатель квалификации. Тем более в местах, где не разрабатывается коммерческая гражданская электроника.

Аноним 07/10/19 Пнд 12:20:19 3845531635
Аноним 07/10/19 Пнд 12:30:47 3845541636
>>384553
Так он же вроде описывал, что для выполнения макако-задач т.е. тех, где люди подумали уже за тебя особая квалификация в вопросе не требуется.

>>384552
Поддержу, но у меня в ДС2, геймдев-макака получает больше ну или примерно так же, чем ведущий инженер-схемотехник в ГеоСкане. А там как раз разрабатывается коммерческая гражданская электроника (дроны для геодезической съемки).
Аноним 07/10/19 Пнд 12:36:49 3845551637
>>384543
>Конечно не моего ума дело, но я бы запретил на «Хабре» статьи подобного рода.
Боишься конкуренции? Или того, что "элитное" плисоводство теперь будет доступно каждому мимокроку?
>Во-первых статей для начинающих плисоводов в И-нете на всех возможных языках (включая, разумеется, русский) пруд пруди. А главное — авторы подобных статей не понимают одного: программирование FPGA нельзя «попробовать»!
Ой, та ладно. Про микроконтроллеры тоже самое говорили, а теперь даже домохозяйка может сделать умную занавеску на ардуине по простым гайдам с ютуба.
Аноним 07/10/19 Пнд 12:38:54 3845561638
>>384549
>С тех пор, как стали зарабатывать больше.
Великолепная логика, казнокрадов в таком случае можно всех переквалифицировать в доктора наук.
Аноним 07/10/19 Пнд 12:45:00 3845571639
>>384555
> "элитное" плисоводство теперь будет доступно каждому мимокроку?
Не будет - платят за это мало. Только фанаты или кто влез в наивных 2000 и теперь из-за возраста деваться некуда.
Аноним 07/10/19 Пнд 12:46:00 3845581640
>>384556
Они и есть доктора экономических и юридических наук.
Аноним 07/10/19 Пнд 12:49:18 3845591641
Все из-за глупых фанатиков, у которых глаза горят, когда увидят железку. Меня однажды уговаривали на работу - "Поэксперементируете с нашей аппаратурой, пощупаете живьем, про что читали в универе". А зарплата маленькая и работать много.
Аноним 07/10/19 Пнд 12:50:41 3845601642
>>384558
>Они и есть доктора экономических и юридических наук.
Квалифицированные? Или просто купили/нашли в интернете докторскую степень?
Аноним 07/10/19 Пнд 12:51:11 3845611643
>>384555
>что "элитное" плисоводство теперь будет доступно каждому мимокроку?
>, а теперь даже домохозяйка может сделать умную занавеску на ардуине по простым гайдам с ютуба.
Платка марсоход.
Аноним 07/10/19 Пнд 12:52:19 3845621644
>>384560
Стоят во главе государства, управляют такими умниками, как ты - значит умнее тебя.
Аноним 07/10/19 Пнд 12:56:04 3845631645
>>384562
>Стоят во главе государства, управляют такими умниками, как ты - значит умнее тебя.
Ну у них и денег больше чем у тебя, значит и поквалифицированее тебя будут.
Аноним 07/10/19 Пнд 13:09:17 3845651646
Жирный, иди нахуй отсюда.
Аноним 07/10/19 Пнд 13:31:23 3845701647
>>384559
>"Поэксперементируете с нашей аппаратурой, пощупаете живьем, про что читали в универе". А зарплата маленькая и работать много.
Так в чём проблема? Набей опыт 3-5 лет, выучи английский и заводи трактор, тут половина плисо-бояр с двача так сделала.
Аноним 07/10/19 Пнд 14:31:38 3845831648
Пофлеймить насчёт процессорных корок не желаете?
Аноним 07/10/19 Пнд 14:35:51 3845841649
Аноним 07/10/19 Пнд 14:59:33 3845861650
>>384546
Загуглил, откуда была жирная паста постом выше, скопировал оттуда другую жирную пасту.
Аноним 07/10/19 Пнд 15:01:03 3845871651
>>384583
Только если ты не шизик со сверхценной идеей про ПРАВИЛЬНУЮ архитектуру проца, которая решит все проблемы.
Аноним 07/10/19 Пнд 15:17:51 3845881652
>>384587
В чем суть хайпа по RISC-V и в чем его удобство?
Зачем нужно большое количество реализаций одних и тех же инструкций? Чтобы получить железку которая производительнее в определённом юзкейсе, но при этом без геморроя запускает менее требовательные к производительности готовые программы?
Какие ещё профиты предлагаемого подхода?
Это явно не в отсутствие лицензионных отчислений, и так все будут платить за ядра, только не арму.
Аноним 07/10/19 Пнд 15:19:40 3845891653
>>384550
>Ну "дно из геймдева" не такое уж и дно с точки зрения квалификации, по идее.
Таки да, у них в пределах рашки аналогичная хуйня, что и с электронщиками, желающих по фану ебаться с кватернионами за еду заметно больше, чем желающих их нанимать, поэтому рыночек давит в сторону снижения зарплат. Но ты всего лишь покормил жирного, у которого функциональщина вытеснит хдл, хотя за 60 лет она не осилила добраться даже до промышленного программирования.
Аноним 07/10/19 Пнд 15:41:16 3845911654
>>384589
>Таки да, у них в пределах рашки аналогичная хуйня, что и с электронщиками
Рофл в том, что геймдевы на подсосе не только в рашке.
>Но ты всего лишь покормил жирного, у которого функциональщина вытеснит хдл, хотя за 60 лет она не осилила добраться даже
Да хуй его знает, бро. Нейроночки тоже 60 лет стартовали, пока не появилось железо способное их использовать и железо способное их обучать (за какое-то адекватное время). Может быть через десяток лет напишут какое-то сверхпрожерливое говно транслирующее функциональную парашу в сносный ХДЛ-вариант.
Алсо сейчас уже наверно 50% девайсов собирается из покупных IP-ядер, там и знаний программирования не надо, знай подключай блоки по инструкции.
Аноним 07/10/19 Пнд 15:55:28 3845931655
>>384591
Да, проблема действительно не ограничивается рашкой. Но суть всё та же, не квалификация, а сугубо рыночек порешал зп в геймдеве.

Game industry is lower across the board and it’s not surprising at all. You have a million people who all want the same couple thousand jobs because they somehow think programming for games is a lot more “fun” than other programming and they are passionate about games.

That means supply is extremely high and demand is extremely low, companies have all the bargaining power and even when you get hired you have basically no leverage to ask for raises.

Couple that with the longer than average hours and high expectations on performance and there you have the biggest reason a lot of people who set out to make games never actually make a serious attempt once they get established in other industries that pay a lot better, work less hours and are located in areas that cost half what the game industry “hubs” do to live.
Аноним 07/10/19 Пнд 15:57:04 3845951656
>>384591
>Может быть через десяток лет напишут какое-то сверхпрожерливое говно транслирующее функциональную парашу в сносный ХДЛ-вариант.
Дай бох, чтобы через десяток лет хотя бы поддержку синтезируемых конструкций системверилога завезли уже целиком, наконец.
Аноним 07/10/19 Пнд 16:03:00 3845971657
>>384593
>Но суть всё та же, не квалификация, а сугубо рыночек порешал зп в геймдеве.
Так я и не спорил, просто уточнил что это не проблема рашки.
>>384595
Кек. Да вроде актуальные топовые ModelSim и SynplifyPro уже умеют, не?
Аноним 07/10/19 Пнд 16:12:29 3845991658
index.jpeg 8Кб, 264x191
264x191
>>384562
>Стоят во главе государства, управляют такими умниками, как ты - значит умнее тебя.
Аноним 07/10/19 Пнд 16:19:46 3846001659
>>384597
>не проблема рашки.
За рубежом hdl тоже оплачивается ниже, чем web?
Аноним 07/10/19 Пнд 16:22:11 3846011660
>>384600
Я только про геймдев говорил, ну ты чо.
Аноним 07/10/19 Пнд 17:17:18 3846061661
Веб сложнее, чем FPGA. Когда пишу на верилоге я ощущаю себя макакой из-за ограниченности сего процесса. Хоть какое-то разнообразие я получаю только когда призодится решать архитектурные задачи, но мне их достается мало.

Грубо говоря день-два продумываю архитектуру и после этого на долгое время ухожу в рутину rtl-кодирования, потом колесо сансары делает новый оборот.
Аноним 07/10/19 Пнд 17:21:44 3846071662
>>384606
>Веб сложнее, чем FPGA
Почему тогда сайтики делают на фрилансе даже школьники, а логические восьмиканальные анализаторы на ПЛИСах - единицы?
Аноним 07/10/19 Пнд 17:28:24 3846091663
>>384607
Сайтики сайтикам рознь, разве не так?
Всякие штуки за которых хорошо платят не каждому школьнику по зубам.
Аноним 07/10/19 Пнд 17:36:56 3846101664
>>384607
Был бы такой же спрос на стоканальные логические анализаторы, их бы тоже делали школьники.
Аноним 07/10/19 Пнд 17:42:58 3846111665
>>384606
>Хоть какое-то разнообразие я получаю только когда призодится решать архитектурные задачи, но мне их достается мало.
>
>Грубо говоря день-два продумываю архитектуру и после этого на долгое время ухожу в рутину
Про веб тоже самое же, чо ты? И про гейдев.
Аноним 07/10/19 Пнд 17:47:08 3846121666
>>384595
Читал на хабре около бредовую статью o разработке на fpga, в комментах оказалось автор на фирме программит на systemc какие-то инкапсуляторы потоков, нихуя не умеет и не умел в verilog/vhdl и электронику.
Аноним 07/10/19 Пнд 18:02:03 3846141667
>>384612
Да просто у программистов денег дохуя, вот они и могут себе позволить купить отладку с FPGA чтоб чисто ради фана поковырять новую для себя технологию, после чего пишется бредовая статья на петухабр, а отладка отправляется в стол.
Аноним 07/10/19 Пнд 18:15:06 3846171668
>>384537
>то все-равно внутрь ПЛИС приходится загружать какой-то из доступных микроконтроллеров
Да вот не скажи. Я Езернет реализовал без всяких этих ваших Ниосов.

>>384543
>как показывает моя многолетняя практика вменяемого плисовода можно сделать только из грамотного электронщика
Скорее из грамотного прогера, ибо проектирование на плис всё же ближе к прогерству нежели к.

Аноним 07/10/19 Пнд 18:40:20 3846241669
>>384617
>Скорее из грамотного прогера, ибо проектирование на плис всё же ближе к прогерству нежели к.
>
Предлагаю сойтись на том, что грамотный прогер это в первую очередь грамотный электронщик(хотя бы в той электронике, которую он программирует), ибо сначала было слово электронное устройство и только потом программирование, а любителей программировать "черный ящик" на сверхвысокоуровневом языке, предлагаю отправлять к чепушиле, который весь этот холивар и затеял.
Аноним 07/10/19 Пнд 18:43:11 3846271670
>>384537
Бред полнейший.
>А когда начинается сложная логика или
Обработчик цифрового сигнала не должен как-то управляться? Самый простой пример - радиоприемник с цифровой обработкой сигнала и дисплейчиком с менюшкой.
Аноним 07/10/19 Пнд 18:52:37 3846311671
Сколько в дс2 среднему плисоводу платят? И где мы нужны?
Аноним 07/10/19 Пнд 19:03:17 3846321672
Какие высокоскоростные (100MHz на пин) разъемы используют в недорогих али бордах? А то один фирменный разъем плат расширения xilinx стоит как борда с али.

Как та борда на Kintex7+sfp с али. Только там одни sfp, а мне нужно 12битную шину передать-принять.
Аноним 07/10/19 Пнд 19:05:52 3846331673
>>384632
Гугли pinhead, они деляться по папа-мама и шагу, 2.56, 2, и дробное от этого
Аноним 07/10/19 Пнд 19:07:42 3846341674
>>384633
> шагу, 2.56, 2,
И какие потянут 100MHz?
Аноним 07/10/19 Пнд 19:12:39 3846351675
Аноним 07/10/19 Пнд 19:14:10 3846361676
>>384634
Да, но лучше конечно lvds
А не проще к SFP подрубить ту вторую плату?
Аноним 07/10/19 Пнд 19:23:12 3846391677
>>384636
>lvds
У него куча разъемов
Аноним 07/10/19 Пнд 19:24:35 3846401678
>>384624
Так то да, речь не о всяких там java-обезьянах, а о прогерах железа. Но чтобы такому прогеру успешно кодить - не обязательно ему быть гуру электроники, достаточно знать какие напряжения имеют логические 0 и 1.
Аноним 07/10/19 Пнд 19:26:33 3846421679
Аноним 07/10/19 Пнд 19:26:33 3846431680
>>384640
>достаточно знать какие напряжения имеют логические 0 и 1
Тонкота пошла
Аноним 07/10/19 Пнд 19:30:44 3846441681
>>384632
100MHz можно и обычные штыри выводить, в чем проблема?
Аноним 07/10/19 Пнд 20:04:41 3846531682
>>384609
Вебмакака, пожалуйста.
Сайты это либо интернет-магазины, либо сайт-визитка, всё делается в течении пары часов по туторам с интернета.
Аноним 07/10/19 Пнд 20:13:51 3846551683
Аноним 08/10/19 Втр 02:54:07 3846921684
>>384588
>В чем суть хайпа по RISC-V и в чем его удобство?

Нельзя просто так и реализовать, например, процессор с инструкциями АРМ. А РИСК-5 - можно. Идея поиметь открытую и бесплатную ИСА, чтоб программисты нарожали компиляторов, линкеров и прочего, и бесплатно без смс и регистрации.

В целом тот же АРМ выглядит удачнее, но деньги и лицензии.
Аноним 08/10/19 Втр 11:40:48 3847191685
>>384653
>Вебмакака, пожалуйста.
Мимо.

>Сайты это либо интернет-магазины, либо сайт-визитка, всё делается в течении пары часов по туторам с интернета.

Помигать диодиком можно в течении пары часов по туторам с интернета.
Аноним 08/10/19 Втр 13:46:34 3847431686
>>384692
>В целом тот же АРМ выглядит удачнее

Чем?
Аноним 08/10/19 Втр 13:50:05 3847441687
Аноним 08/10/19 Втр 15:02:25 3847541688
>>384744
Это не ответ. Давай сравнивать.
RISC-V использует трехадресные команды?
RISC-V имеет сколько реализаций?
А разных корок ARM десятки. Что ты сравниваешь - архитектуру или реализацию? Или инфраструктуру - компиляторы, отладчики, библиотки?
Аноним 09/10/19 Срд 18:31:14 3849171689
Подкиньте идейку хоббийного проекта на FPGA
Аноним 09/10/19 Срд 18:33:49 3849181690
>>384917
SDR эмулятор сигналов ГПС (спуфить ГПС)
09/10/19 Срд 19:08:47 3849361691
blob.jpg 321Кб, 2268x1204
2268x1204
Это пердуино тред?
Где взять скетч "blink" под эту херню и как ее вообще подключать-включать? В самой пердуиноиде ничего не нашел с похожими именами. Как добавить их поддержку?
Куда подавать питание, как и чем прошивать прошивку, куда и как подключать светодиод?
Смогу помигать одним светодиодом или на большее число хватит? Хватит ли на что-то большее чем мигалка светодиодом или облажался при выборе камня для игр? В перспективе смогу подключить пару серв или часы реального времени DS1337, экран 16х2 и пару кнопок?
Аноним 10/10/19 Чтв 13:12:48 3850741692
>>384936
Когда будут пруфы с супом приходи.
Аноним 10/10/19 Чтв 13:34:37 3850801693
blob3.jpg 542Кб, 2378x2096
2378x2096
>>385074
>пруфы с супом
Извиняй, запас Дошиков закончился, надо бы пополнить. Хотя мне больше нравится Троллтон.
Но нахуя? Вот тебе пара светодиодов которые планировал подключить и ими же помигать. Как подключать - в душе не ебу, обратился за помощью, а меня послали на хуй в столовую.
Аноним 10/10/19 Чтв 14:36:26 3850961694
>>385080
Зойчем скрывать серийник?
Аноним 10/10/19 Чтв 14:42:00 3850981695
>>385080
Что ты задумал, извращенец?
Аноним 10/10/19 Чтв 15:30:41 3851081696
>>385080

Красный, жёлтый, зелёный светодиоды как бы намекают что ты должен моргать светодиодами на Ultra HD матрице?
А что если у тебя ничего не получится?
Аноним 10/10/19 Чтв 15:33:43 3851091697
>>385108
Надо было класть Red, Green, Blue. Тогда интереснее. А пока больше на светофор похоже. А для светофора за глаза достаточно и воронежской ПЛИС. Да и вообще, ПЛИС для светофора это как микроскоп для гвоздей.
Аноним 10/10/19 Чтв 15:49:05 3851131698
>>385109
Будет светофор с ну очень низким latency
Аноним 10/10/19 Чтв 15:54:18 3851161699
>>385113
Красный и зелёный будут меняться с частотой 300МГц? Полезно, а то частенько заёбываешься ждать, когда уже наконец зелёный включится.
Аноним 10/10/19 Чтв 18:22:02 3851281700
>>385096
>Зойчем скрывать серийник?
Что бы не спрашивали насколько это древнее и засохшее говно мамонта. 1225

>>385109
>А пока больше на светофор похоже
O RLY? Таки можно к нему подключить аж три светодиода? В постах выше никто так и не ответил - получится или нет подключить более одного светодиода.
Раскусил ты мой коварный план. Даже если не получится светофор - видимо будет мигалка из одного светодиода на елку под Новый Год. Осталось дело за малым - узнать как подключать светодиоды, как подавать питание, как заливать прошивку и в чем создавать прошивку? В пердуиноиде не нашел ее поддержки.

>>385116
>меняться с частотой 300МГц
Это много или мало? Есть с чем сравнить для понимания?
Аноним 10/10/19 Чтв 18:29:04 3851291701
>>385128
Как-то ты толсто троллишь. Осеннее обострение?
У тебя чип, который как несколько зарпkат стОит, и кто бы его дал поиграться человечку, не знакомому с HDL. Таки обострение.
Аноним 10/10/19 Чтв 18:45:14 3851301702
>>385129
Он его наебее заказал. Хотя да, для плисовода это большие деньги.
Аноним 10/10/19 Чтв 19:05:57 3851331703
10/10/19 Чтв 19:11:18 3851351704
>>385133
Нет, задачу чтобы мигало хоть как-то, правильнее будет решать иначе >>365632
Аноним 10/10/19 Чтв 19:35:25 3851401705
>>385130
Хоть кто-то внимательный. Почему бы и нет? Для особо бредовых и извращенных фантазий должно хватить.

>>385135
Поддвачиваю. У него же в лекции https://youtu.be/Jt87cbQThSc?t=2467 видел тактовый дегенератор из инверторов и отключенной оптимизации. Но это уже совсем экстрим.

Вот что интересно - так это зачем огромная куча тактовых входов у ПЛИС, исключая подключение LVDS каналов/когда надо завести далеко не одну частоту/удобство разводки? У тех же циклонов в 144 ногом корпусе кажется 16 тактовых входов. Есть ли смысл подавать один и тот же тактовый сигнал на например на 4 тактовых входа или можно на один и размножать его внутри ПЛИС?
В платке с EP3SL200 вообще какой-то бред - одна обычная дифпара + выход PLL идут на внешнюю микросхемку PLL Si5326с (с возможность выбора источника тактирования - два с FPGA и внешний генератор) и ее два выхода PLL идут на 2 разных тактовых входа FPGA. В чем сакральный смысл?
Цепочку генератор-pll-тактовый вход могу понять, а если включать выход внутреннего pll есть еще один независимый генератор с прямым подключением, от которого можно запитать внутренни pll на внешний pll и от него же снова тактироваться. Не понимать.
Аноним 10/10/19 Чтв 19:54:43 3851441706
>>385140
Тут действует принцип кашу маслом не испортишь.

Допустим тебе потребовалось реализовать много однотипных интерфейсов с внешним клоком - тогда и пригодится огромное число тактовых входов.
Аноним 10/10/19 Чтв 19:58:49 3851461707
>>385140
> В чем сакральный смысл?
Вестимо, чтобы иметь больше разных тактовых частот внутри ПЛИС
Аноним 10/10/19 Чтв 23:01:56 3851871708
>>385130
>большие деньги
Чип Б/У, на выпиленном куске платы под выпаивание и реболлинг. Такие (даже четвёртые стратиксы на 820к ячеек) стоят не больше десятки.
Аноним 11/10/19 Птн 04:19:30 3852251709
>>385187
Для этого чипа только изготовление платы будет стоит 500 баксов (8-ем слоёв, 3/3 mil, 10cm x 8 cm). И то, на 8-ми слоях все ноги не разведёшь.

Проще купить готовую евалюэшн борду.

Такое имет смысл покупать - если нужно починить горелую плату. Для хобби - бюджетный предел - это FBGA 144 1.0mm pitch, FBGA 256 - можно, но уже сложнее. А дальше космос (сильно резко возрастает цена изготовления ПП и уже надо думать о том, где заказывать монтаж - руками можно зафейлить, если нет опыта)
Аноним 11/10/19 Птн 04:36:48 3852261710
fe8f2464.jpg 41Кб, 400x334
400x334
92425f.jpg 102Кб, 670x670
670x670
142697091429780[...].jpg 58Кб, 604x453
604x453
images.jpg 10Кб, 259x194
259x194
>>385225
>только изготовление платы будет стоит
>на 8-ми слоях все ноги не разведёшь
Где мои дежурные картинки? А мне норм. Сиди, паяй. Deadbug style - наше все на все случаи жизни. Что еще взять от пердуинщиков?
Аноним 11/10/19 Птн 05:26:04 3852281711
820-4.png 679Кб, 881x882
881x882
>>385225
Ну как бы сказать. Если совсем по дешману делать и верить JLC 6 слоев размером с лист А4 - ебаных 170 уе+ доставка 40уе. Бля, да это же вообще копейки центы стоит.
Прикидывая из 6 слоев - 2 на питание и 4 под данные - можно дойти до красного квадрата и получить около 8 сотен выводов при нормах около 0.1/0.15. Для пердуинки очень даже тема - получится хороший такой колючий йожэг, имеющий около 8 сотен колючек. Если поизголяться то можно и до желтого квадрата дойти и это еще +50 выводов.
Аноним 11/10/19 Птн 07:12:41 3852311712
jlc.png 52Кб, 1271x349
1271x349
>>385228
>Ну как бы сказать. Если совсем по дешману делать и верить JLC 6 слоев

0.45mm виа диаметр + 5мил + 5мил = 0.7мм - если расстояние меньше до меди, то виа не сделаешь. Поддержки слепых виа нет.

Нужно идти на pcbway, там чуть лучше. И то, столько выводов не разведёшь.
Аноним 11/10/19 Птн 07:32:31 3852341713
>>385226
Вот это может быть верно. Для мигалки, про которую писали выше, достаточно будет подать питание и подпаяться к одному I/O. Между прочим, наверняка есть задачи которые сводятся к подобному. Например для какого-нибудь брутфорса хешей или чего-то подобного хватит одного UART.
Аноним 11/10/19 Птн 07:37:26 3852361714
>>385234
Питание из воздуха будет браться? У таких проводов дикая индуктивность (для частот работы чипа) и сопротивление.

Проще за $200 купить вот это https://ru.aliexpress.com/item/32905119716.html
Аноним 11/10/19 Птн 07:39:12 3852371715
iii.jpg 138Кб, 720x713
720x713
>>385228
>170 уе+ доставка 40уе
За эти деньги есть хуева гора нормальных плат от китайцев.
Там всё есть.
Аноним 15/10/19 Втр 10:10:22 3857911716
Моча забанила мой тред про изготовление тепловизора из говна и палок. Может вы подскажите, есть ли более интересные тепловизионные матрицы за вменяемые деньги?
Аноним 15/10/19 Втр 11:20:29 3857981717
Ньюфагу поручили запилить spi slave девайс.
Каким вещам уделить внимание дабы у меня получился код удовлетворяющий высоким промышленным стандартам а не ардуиностайл?

Какой частотой лучше тактировать мой контроллер:
от мастера (sck)
или некой от внутренней частоты?

Аноним 15/10/19 Втр 13:08:43 3858041718
>>385791
>Может вы подскажите, есть ли более интересные тепловизионные матрицы за вменяемые деньги?
Киса, дешевых нет. Это основная стоимость. С китайцами ты конкурировать не сможешь - инфа 100%.
Аноним 15/10/19 Втр 13:30:57 3858081719
>>385798
>spi slave девайс
>код удовлетворяющий высоким промышленным стандартам а не ардуиностайл?
Табуляцию хотя бы выдерживай.
Аноним 15/10/19 Втр 13:35:51 3858091720
>>385804
Зачем с кем-то конкурировать? Я хочу запилить для себя.

Кроме самой матрицы китайцы продадут корпус, плату, экран и еще кучу всякой малафьи. Моя идея в том, чтобы взять голую матрицу и подключить её к уже имеющемуся железу, хоть какой-то % от стоимости должен выиграть, разве не так?
Аноним 15/10/19 Втр 14:32:03 3858191721
>>385808
Ты считаешь, что поделки ардуинщика от изделия инженера отличаются только соблюдением табуляции?
Аноним 15/10/19 Втр 14:39:43 3858211722
>>385809
>хоть какой-то % от стоимости должен выиграть, разве не так?
не должен.
Аноним 15/10/19 Втр 17:44:22 3858461723
Аноним 15/10/19 Втр 18:08:35 3858491724
Аноним 15/10/19 Втр 18:09:51 3858511725
Аноним 15/10/19 Втр 18:27:06 3858521726
>>385849
А ты случаем не из ардуино-треда?
Аноним 15/10/19 Втр 18:35:34 3858531727
>>385791
Кроме матрицы еще объектив нужен, тоже весьма дорогой.
Заметно дешевле готового изделия наверняка не получится. Матрицу к чему подключать будешь? Во сколько еще обойдется изготовление платы? А корпус как будешь делать?
Аноним 15/10/19 Втр 19:46:02 3858641728
>>385853
>Кроме матрицы еще объектив нужен
Это конечно еще один повод отказаться от этой затеи. Причем я так понимаю объектив должен быть не простой, а из ИК-прозрачного материала.

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

>Во сколько еще обойдется изготовление платы?
Зачем изготавливать плату если можно взять отладку с подходящим девайсом, коих у меня целая куча лежит в столе без дела. Корпус тоже не нужен.
Аноним 15/10/19 Втр 20:29:42 3858681729
>>385864
>объектив должен быть не простой, а из ИК-прозрачного материала
Именно. Из германия.
Аноним 15/10/19 Втр 20:49:48 3858701730
>>385864
>Я думаю это наименьшая проблема
Кому как. По крайней мере это много времени в любом случае. И, как мне кажется, микроболометрические сенсоры обычно без интегрированных АЦП.
>Зачем изготавливать плату
Для крепления. Как мне кажется, если у тебя будет самодельный корпус, то придется делать элементы юстировки. Ну или на токарном станке вытачивать. Не самая большая проблема, но одна из целого ряда.

Зачем оно вообще тебе?
Аноним 15/10/19 Втр 22:34:49 3858731731
>>385864
>Причем я так понимаю объектив должен быть не простой, а из ИК-прозрачного материала.
Который, кстати, в видимом диапазоне непрозрачен. Хотя, не всегда.
>>385868
Можно также из кремния и сульфида цинка.
Аноним 16/10/19 Срд 04:03:47 3859061732
>>385809
>хоть какой-то % от стоимости должен выиграть, разве не так?
Нет, потому что ты будешь покупать поштучно детали через большую цепочку людей и каждому что-то к рукам прилипнет (процент от стоимости).
Аноним 16/10/19 Срд 04:06:30 3859071733
>>385864
>Причем я так понимаю объектив должен быть не простой, а из ИК-прозрачного материала.
Тепловизор и ИК - это несколько разные вещи. Вот пульты в телевизоре - это ИК, и камеры наблюдения многие прекрасно работают в ИК диапазоне и имееют ИК подсветку. Но они не тепловизоры. Внезапно, да?
Аноним 16/10/19 Срд 07:57:50 3859141734
Аноним 17/10/19 Чтв 08:04:30 3859801735
>>385914
Всегда к вашим услугам
Аноним 17/10/19 Чтв 23:00:49 3860301736
>>385907
Тепловизор работает в глубоком ИК, которое, внезапно, подмножество ИК.
SWIR - тоже ИК. Как и NIR, в котором работают ПДУ, камеры наблюдения и ПНВ.
Аноним 18/10/19 Птн 03:55:47 3860561737
>>386030
Внезапно не любой ИК объектив подойдёт для тепловизора. Если эта мысль сложна для восприятия - тогда увы и ах.
Аноним 18/10/19 Птн 07:23:36 3860611738
>>386056
Анон выше хотел донести до тебя мысль о том, что ближний и дальний ИК - это все ИК.
>Тепловизор и ИК - это несколько разные вещи.
Эту фразу можно понять так, что ты LWIR за ИК не держишь. Но это не разные вещи, а все подмножество ИК. Вот о чем тебе хотели намекнуть.
Аноним 18/10/19 Птн 11:26:41 3860911739
>>386061
Я комментил в ответ на этот опус:

>Причем я так понимаю объектив должен быть не простой, а из ИК-прозрачного материала.

ИК-прозрачный материал не означает пригодность для тепловизора. Смысл в этом. Что не просто из ИК-прозрачного материала, а подходящий по спектру.
Аноним 18/10/19 Птн 11:38:22 3860951740
>>386091
Очевидно, что тот, кто об этом писал, понимает, что нужен объектив с кремниевыми или германиевыми линзами.
Аноним 18/10/19 Птн 18:22:21 3861471741
>>386095
Очевидно, что писавший нихуя не знает, судя по вопросам.
Аноним 18/10/19 Птн 19:06:48 3861581742
>>386091
А тебе в ответ другой анон, судя по моему детектору, написал о том, что твое высказывание можно понять немного иначе. Что считает анон с идеей самодельного тепловизора, вообще без разницы.
Аноним 19/10/19 Суб 10:47:42 3862651743
Олсо, анонимусы, объясните, как ИК-чувствительная матрица в тепловизоре на засвечивает саму себя? Есть ёбы, в которые надо жидкий азот заправлять, там все ясно. А ка работают приборы, рассчитанные на комнатную температуру?
Аноним 19/10/19 Суб 12:46:39 3862781744
>>386265
Калибровка. Причём периодическая, во время работы. Изображение в этот момент ставится на паузу, а тепловизор внутри щёлкает шторкой, выдавая местоположение владельца.
Аноним 20/10/19 Вск 17:55:33 3865011745
>>340591
Правда жизни такова, что джава макака получающая в этой стране 2к$(в два раза меньше средней зп в европе) так и останется здесь работать за 2к$, потому что на западе своих индусов хватает.
А инженеру-элетронику с опытом работы в МЦСТ и подобным организациям будут рады в любой стране мира, и получать он будет, как и любой инженер 3-5к$.
https://ru.wikipedia.org/wiki/МЦСТ
>В 2004 году в прессе появились сообщения от компании Intel, что компания пригласила несколько групп разработчиков из «Эльбрус МЦСТ», а также UniPro на работу в Intel
Аноним 20/10/19 Вск 18:46:09 3865091746
Аноним 21/10/19 Пнд 08:57:47 3866101747
>>386501
Правда жизни такова, что веб-макака с годовалым опытом уже может претендовать на 2к$. А java-макака с опытом в каком-нибудь сбертехе может прыгнуть выше 3к$, что уже сопоставимо с оплатой труда в странах первого мира. Вот только у нас ты на эти деньги будешь жить как король, а там как поломойка.

Надеяться на то, что твою команду перекупит интел это всё равно что выиграть в лотерею.
Аноним 22/10/19 Втр 15:42:16 3868501748
Анон, что такое Clock Domain, и как это перевести на русиш?
Аноним 22/10/19 Втр 17:46:41 3868601749
>>386610
Ладно, убедил.
Бросаю электронику и становлюсь веб-макакой...
Аноним 22/10/19 Втр 18:01:45 3868621750
>>386860
Зачем бросать электронику, это отличное хобби.
Аноним 22/10/19 Втр 18:12:12 3868631751
>>386850
Цепь тактовой частоты.
Все триггеры в схеме должны тактироваться от одного источника, притом, чтобы всё работало как надо до всех триггеров этот сигнал должен доходить почти одновременно, для этого в ПЛИС и предусмотрены специальные цепи тактовой частоты, они специально сделаны так чтобы задержки на них были минимальны. И в современных ПЛИСах их может быть несколько, около десятка.
Аноним 22/10/19 Втр 18:42:45 3868681752
>>386862
>отличное хобби
Да не пизди.
Аноним 22/10/19 Втр 22:35:29 3869111753
>>386850
Тактовый домен или клоковый домен или домен синхрочастоты, стандартного перевода нет, потому что все используют английский термин.

Тактовый домен — часть синхронной цифровой схемы, которая тактируется от одного определённого сигнала тактовой частоты.
Аноним 23/10/19 Срд 14:47:52 3869811754
Аноним 23/10/19 Срд 16:36:36 3870001755
А для Bitstream стандартный перевод есть? Кроме "Битового потока". А то как-то хуёво звучит.
Аноним 23/10/19 Срд 16:48:00 3870061756
>>387000
Файл конфигурации ПЛИС
Аноним 23/10/19 Срд 16:53:59 3870071757
>>387000
Есть, но он не понравится тебе ещё сильнее. "Конфигурационная последовательность." Забей, рашка выпала из современной технологической повестки, русик более непригоден для разговоров об актуальных средствах разработки из-за отсутствия необходимых терминов (кроме тупой неудобной кальки с инглиша), а терминов нет из-за отсутствия необходимого числа носителей языка, желающих обсуждать этот предмет в своём кругу.
Аноним 23/10/19 Срд 17:50:42 3870161758
>>387000
Чем тебе битовый поток не угодил?
Аноним 23/10/19 Срд 18:02:52 3870171759
>>387016
Стрим это ручей. Битовый ручей. Так канонiчно.
Аноним 23/10/19 Срд 18:30:32 3870201760
>>387000
Традиционно это прошивка.

>>387007
Хейтерок, плес. В области электроники и схемотехники, тем более цифровой, все термины присутствуют.
Аноним 23/10/19 Срд 19:44:26 3870361761
Аноним 23/10/19 Срд 19:49:37 3870371762
>>387007
Тупая калька с инглиша пиздата. Не надо вычурно транслировать туда-сюда.

Пиковый - межпиковый - среднеквадратичный.
Амплитуднный - размах - эффективное.

Ходил в магазин крепежа, долго вспоминал как это там называется countersink по-русски-то, блять. Вспоминалось уже дома.
Аноним 23/10/19 Срд 21:52:44 3870481763
>>387017
Битовая струя.
пример: пописал тебе на лицо битовой струей.
Аноним 23/10/19 Срд 23:04:40 3870531764
>>387037
>Тупая калька с инглиша пиздата. Не надо вычурно транслировать туда-сюда.
Так я как бы и не за вычурный перевод топлю. Калька ровно потому и оптимальна сейчас при всей своей корявости, вымученности и труднопроизносимости, что переводится на ходу. Её задача — быть сообразной с иностранным языком, который является основным.

Если есть большое сообщество носителей языка, которые учатся по своим учебникам, общаются между собой, ведут свои разработки, а с зарубежной средой сталкиваются чтобы статью в научный журнал тиснуть, то для них важнее становится удобство использования языка для коммуникации, а не для перевода на ходу. Но поскольку такого сообщества нет, тенденция к доминированию инглиша есть, и калька в ней оказывается более удобной, чем нормальный перевод. Вот только калька — это половинчатое решение, и половинчатость эта искусственная и нахуй не нужная, основанная на законах о государственном языке и тому подобном говне. А естественным является полноценный переход на основной язык отрасли.
Аноним 24/10/19 Чтв 04:00:02 3870851765
>>387053
> основной язык отрасли
Lingua-technis?
Аноним 24/10/19 Чтв 12:00:36 3871331766
Есть клоковый домен 50 МГц. Из него надо передать сигнал длительностью 1 такт в домен с частотой 150 МГц.
Я констрейнсах прописываю этот сигнал как set_false_path и в домене 150 МГц пилю схему детектора фронта. Такой вариант взлетит или нужно что-то другое пилить?
Аноним 24/10/19 Чтв 13:21:32 3871391767
>>387133
Взлетит. Но можешь три тригера ебануть для верности.
Аноним 24/10/19 Чтв 13:41:58 3871411768
>>387139
А в обратном направлении как передавать?
Аноним 24/10/19 Чтв 18:40:59 3871581769
Аноним 24/10/19 Чтв 18:44:04 3871601770
Аноним 24/10/19 Чтв 20:11:40 3871741771
>>387141
Если сигнал в домене 150 МГц длительностью один такт надо передать в домен 50МГц, сделай на стороне 150 МГц счётчик, который после каждого появления активного уровня будет держать его ещё 3 дополнительных такта. Так ты можешь быть уверен, что триггер со стороны 50МГц увидит активный импульс и не пропустит его. Ну и детектор фронта на стороне 50 МГц остаётся.
Аноним 25/10/19 Птн 16:08:16 3872301772
Анончики, продолжаю мучать вас переводом.
Как перевести FPGA Fabric? Везде ставлю "FPGA-Логика", но как-то всрато. "Матрица FPGA" будет звучать не лучше.
Аноним 25/10/19 Птн 16:57:23 3872351773
Аноним 25/10/19 Птн 17:01:57 3872361774
>>387235
Да нет, вроде как под этим производитель понимает вообще всю FPGA-часть микросхемы: ЛЭ, Мат. блоки, встроенные RAM-блоки и т.д. - всё что нужно для программируемой логической части, но не Асик-IP блок.
Аноним 25/10/19 Птн 17:05:16 3872371775
>>387230
>Fabric?
Дословно - фабричное. Вероятно, про то, что не подделка.
Аноним 25/10/19 Птн 17:18:43 3872381776
>>387237
Ты троллишь, няша?
Аноним 25/10/19 Птн 17:24:37 3872391777
>>387238
Что вижу, то пою. В чем отличие fabric от non-fabric, или как там?
Аноним 25/10/19 Птн 17:28:55 3872401778
>>387236
>производитель
Я о том же. Fabric, вероятно, оригиналы, остальное - копии...
Аноним 25/10/19 Птн 17:42:16 3872411779
Аноним 26/10/19 Суб 10:48:39 3873121780
>>387133
> прописываю этот сигнал как set_false_path
зачем
Аноним 27/10/19 Вск 06:14:05 3874561781
>>387241
>Прямой перевод "ткань".
ПЛИС-марля
Аноним 27/10/19 Вск 14:58:12 3875121782
>>387236
>но не Асик-IP блок
Что ещё за Асик-IP блок?
Аноним 28/10/19 Пнд 03:05:13 3875981783
Аноним 28/10/19 Пнд 13:44:54 3876591784
изображение.png 241Кб, 516x325
516x325
>>387512
Hard-IP блок, если более правильно его назвать.
>>387241
>>387598
Ну, сейчас примерно так и оставляю.

Из прочитанного я понял следующее: "FPGA fabric" называют структуру из логических элементов (CLB-шки, если говорить о Xilinx'ах), и блоков, вокруг которых строятся эти логические элементы. То, что может автоматически использоваться синтезатором и трассировщиком, без какой-то дополнительной конфигурации.
К примеру, у нас есть N мат. блоков, M CCC блоков, и K RAM-блоков, вокруг которых размещаются ячейки ЛЭ. Совокупность всего этого безобразия будет называться Fabric.
К этому Fabric не относятся Hard-IP блоки, такие как, к примеру, выполенный в виде отдельного Asic-блока CortexM3, встроенная Flash-память, блоки трансиверов или банки I/O.

Если правильно понимаю, на пикрил - слайсы, Рам-блоки, выделенные множители - будет называться fabric.
Аноним 29/10/19 Втр 02:36:12 3877301785
>>387659
Трансиверы и I/O входят. I/O входят даже в базовом изначальном варианте, где "I/O, логические ячейки и линии соединений".

Всё входит, короче. Что-то, что может не входить, существует тогда, когда девайс представляет собой систему на кристалле с отдельной fpga-частью, как zynq.
Аноним 29/10/19 Втр 07:39:44 3877411786
>>387730
>Что-то, что может не входить, существует тогда, когда девайс представляет собой систему на кристалле с отдельной fpga-частью, как zynq.
А у Virtex с PPC-ядрами и Altera Cyclone/Arria/Stratix с ядрами ARM как-то иначе?
Аноним 29/10/19 Втр 08:05:18 3877441787
>>387741
Надо спрашивать у тех, кто с ними работал и читал, соответственно, документацию. И знает, в каком контексте производитель писал об этих ядрах — как о части структуры FPGA или об отдельной сущности.
Аноним 29/10/19 Втр 10:33:22 3877541788
>>387730
Хмм, ок. Я как-раз и перевожу материал, который преимущественно по SOC-ам.
>>387744
Там где я перевожу - производитель считает их отдельной сущностью, как и трансиверы, похоже, что и банки I/O тоже, но это вроде как не точно.
Аноним 29/10/19 Втр 18:10:43 3877961789
>>387754
Что переводишь, если не секрет?
Аноним 29/10/19 Втр 23:08:44 3878081790
>>387796
Очевидно, что он сам в данном случае является переводчиком и переводит этот материал для других.
Аноним 30/10/19 Срд 11:20:38 3878371791
Аноны, как вкатиться к вам в ПЛИСач?
Есть небольшой опыт в AVR. Ну и помимо литературы хотел бы взять макетку какую-нибудь, что посоветуете для вката?
Аноним 30/10/19 Срд 11:30:40 3878381792
Аноним 30/10/19 Срд 16:33:10 3878791793
>>387796
Перевожу материал по SoC-ам Microsemi.
Попутно разбираюсь, что/как работает, как устроено железо, что оно может, что не может, и так далее.
До этого работал только с микроконтроллерами.
>>387808
Ты, от части, прав.
Сорт оф личинка саппорта.
Аноним 30/10/19 Срд 18:38:09 3879261794
>>387879
Сам для себя переводишь, или профессионально? Сколько берёшь?
Аноним 30/10/19 Срд 21:26:04 3879431795
>>387230
Контекст давай, маня. Иначе ты там напереводишь. Если такие вопросы задаешь значит вообще не в теме.
Аноним 31/10/19 Чтв 08:37:45 3880041796
>>387879
О, так ты фаешник?
Аноним 31/10/19 Чтв 10:43:50 3880111797
>>388004
Да.
>>387926
Ну я сам их использовать буду, если ты об этом. Для чего - ответ выше.
>>387943
Как уже писалось выше SoC-и.
Я не настолько не в теме, чтобы напереводить совсем уж дичи. Если буду не уверен, в том что у меня получилось - поищу кого-нибудь, кто отревьюит.
Матрица FPGA/Матрица Плис звучит хорошо, пока туда не добавляется хренова гора блоков, вроде того же RAM-а.
Матрица Логики/Логическая матрица - вот это может быть будет норм, надо подумать.
Аноним 31/10/19 Чтв 16:26:08 3880501798
>>388011
>Я не настолько не в теме, чтобы напереводить совсем уж дичи
Ну ведь уже хуйню городишь, без обид. битовый поток, сука кровь из глаз

>Матрица FPGA звучит хорошо
Звучит как АвтоВАЗ - дважды автомобильный завод.
Аноним 31/10/19 Чтв 20:22:20 3880641799
>>387837
> Аноны, как вкатиться к вам в ПЛИСач?
Не лезь, она тебя сожрёт!(ц)

> хотел бы взять макетку какую-нибудь, что посоветуете для вката?
Ну, хуй знает. Сколько (в долларах) потратить готов, а то посоветовать можно много чего.
Аноним 31/10/19 Чтв 21:45:11 3880791800
>>388064
А если в xilinx и вивадо хочу вкатиться с минимальным бюджетом, что брать из 7 семейства?
Аноним 31/10/19 Чтв 22:05:06 3880811801
>>388079
Artix
Конкретные модели выбирай исходя из цены и наличия на Али и Ибее. И обращай внимание на наличие схем этих плат.
Аноним 31/10/19 Чтв 22:34:21 3880831802
>>388079
> А если в xilinx и вивадо хочу вкатиться с минимальным бюджетом, что брать из 7 семейства?
Что-нибудь на Artix-7. Вариант поудобнее:
https://www.aliexpress.com/item/32691533741.html
https://www.aliexpress.com/item/32964497318.html
Вариант подороже и без материнки с разъёмами для внешних модулей, но ПЛИС в три раза больше:
https://www.aliexpress.com/item/4000170003461.html

Ну и не забудь купить программатор (20 баксов за USB версию): https://www.aliexpress.com/wholesale?SearchText=xilinx+programmer
Аноним 01/11/19 Птн 01:00:02 3881071803
>>388079
Лучше в альтеру для начала вкатись.
Аноним 01/11/19 Птн 03:10:52 3881191804
>>388107
Почему? Альтера это для неудачников, зайлинкс - первые на рынке ФПГА.
Аноним 01/11/19 Птн 05:32:53 3881271805
>>388083
>Что-нибудь на Artix-7.
Чем плох вариант на Zynq? Что есть из бюджетного для первоначального вката не хватило мозгов на Cyclone V?
Аноним 01/11/19 Птн 06:45:13 3881301806
>>388107
Уже работаю с квартусами. Но мы на зайлинксы планируем перекатиться.

>>388081
Ac701 как раз есть на работе.

>>388083
Спасибо, мне как раз маленькие хуитки для дома нужны.
Аноним 01/11/19 Птн 07:25:24 3881321807
>>388130
>на зайлинксы планируем п
Зачем?
Аноним 01/11/19 Птн 09:40:36 3881371808
>>388127
> Чем плох вариант на Zynq?
В основном ценой (Ну и навороченность это не всегда хорошо. Карьерный самосвал не лучший выбор для поездок в магазин). Там цены от сотни баксов (за одним единственным исключением: https://www.aliexpress.com/item/4000042572307.html ) начинаются.
Аноним 01/11/19 Птн 13:03:10 3881691809
>>388130
>мне как раз маленькие хуитки для дома нужны
Что ты на них собрался делать?
Аноним 01/11/19 Птн 14:01:51 3881761810
>>388169
Двачую вопрос. Полный тред вкатывальщиков, все поголовно покупают платы, но никто не постит результат.
Ардуино-дети из соседнего треда в разы бодрее - один gsm-gps-лодку пилит, второй метеостанцию, а у нас глухо как в танке.

Такое ощущение, что 90% после покупки платы, мигает диодиком и плата сразу отправляется в стол.
Аноним 01/11/19 Птн 15:08:57 3881911811
155318054113328[...].png 710Кб, 700x497
700x497
>>388176
>Такое ощущение, что 90% после покупки платы, мигает диодиком и плата сразу отправляется в стол.
У меня три платы. Я их в стол не ложил. Светодиодом не мигал. Так, купил и всё. Лежат в коробках, пылятся лет 5. Бугага.
Аноним 01/11/19 Птн 15:23:14 3881971812
>>388050
>битовый поток, сука кровь из глаз
Я нигде не вписал "битовый поток", если что. У меня тоже кровь из глаз от такого идёт, я ж не конченный еблан.
Но я явно не зря спросил анона, потому что мне посоветовали не ебать мозг и писать "прошивка".
>Звучит как АвтоВАЗ - дважды автомобильный завод.
Ну так и АвтоВАЗ звучит не так страшно. А учитывая, что на русском нет нормального аналога "FPGA Fabric"...
Но опять же, я нигде не ставлю "Матрица FPGA", везде пишу "Логика FPGA". "Логика Программируемых Логических Интегральных Схем", дважды завод, да.

Просто, чтобы ты понимал, что имеет ввиду производитель (если тебе достаточно интересно):
https://www.microsemi.com/document-portal/doc_download/136522-ug0680-polarfire-fpga-fabric-user-guide
Аноним 01/11/19 Птн 15:36:46 3882001813
>>388176
Когда я вкатывался, сделал простенький процессор, приделал к нему клавиатуру с монитором и написал простенький компилятор. Это считается?
В процессе вкатывания ничего ни у кого не спрашивал. Вскоре после того как вкатился, пошел работать и ничего такого (для себя, для дома) не делал.
Аноним 01/11/19 Птн 15:46:20 3882021814
У меня одного чуть жопка подгорает что внутри ПЛИС нет двунаправленных шин и надо обкладываться хуями мультиплексорами со всех сторон?
Аноним 01/11/19 Птн 16:01:20 3882051815
>>388200
Солидно, мог бы похвастаться в тредике.
Или на двачах если показал свой проект сразу заклеймят куколдом?
Аноним 01/11/19 Птн 16:07:47 3882061816
>>388202
Как ты себе схемотехнически представляешь двунаправленную шину?
Что если случайно подрубишь одновременно два выхода?
Аноним 01/11/19 Птн 16:44:34 3882131817
>>388200
>Когда я вкатывался, сделал простенький процессор, приделал к нему клавиатуру с монитором и написал простенький компилятор. Это считается?
Я это делал на икарус-верилоге, это тривиальщина, нашёл, чем хвастаться. Компилятор был на чем?
Аноним 01/11/19 Птн 16:55:18 3882161818
>>388213
>это тривиальщина
Только на эту тривиальщину уйдет не меньше месяца.
Аноним 01/11/19 Птн 17:02:29 3882171819
>>388119
>Альтера это для неудачников
Это ещё что за аргумент?
Аноним 01/11/19 Птн 17:04:25 3882181820
>>388191
Загони мне по дешовке.
Аноним 01/11/19 Птн 17:10:04 3882191821
>>388202
Ходят слухи, что в каких-то старых были.

>>388206
>Что если случайно подрубишь одновременно два выхода?
Должна сработать защита по току.
Аноним 01/11/19 Птн 17:37:44 3882201822
Аноним 01/11/19 Птн 17:37:45 3882211823
>>388206
>Как ты себе схемотехнически представляешь двунаправленную шину?
Ровно так же, как она выглядит IRL. Просто пучек проводов, на концах/ответвлениях которого стоят буфера с третьим состоянием.

>подрубишь одновременно два выхода?
Будет тот же эффект, что и на реальной шине. Кто слабее тот и покажет свою белую душу.

>>388219
>Ходят слухи, что в каких-то старых были.
Насколько старых? Excalibur можно выкопать, но даже для меня это слишком жесткая некрофилия.

Пик живет в соседней нити >>387393 .
Задумывалось что шина адреса и данных будет сквозняком идти. А тут подвалила ебля с мультиплексорами... как минимум надо накатать заливалку говнокода в ОЗУ через atmega и в Flex декодер адреса ОЗУ. Схему оригинала почти срисовал, но есть куча непонятных моментов.
Аноним 01/11/19 Птн 18:24:27 3882261824
>>388213
Не сказал бы что хвастаюсь. Просто ответил, что и тут делают всякую бесполезную хрень, все же более сложную, чем мигание светодиодом.
Компилятор (ассемблер) в начале написал на tcl. Потом понял, что ассемблер в "классическом" виде для стекового процессора не нужен и сделал относительно нормальный кросскомпилятор форта.

>>388205
В этом треде есть скриншот с кодом процессора.
Аноним 01/11/19 Птн 18:26:13 3882271825
Аноним 01/11/19 Птн 19:16:33 3882351826
Аноним 01/11/19 Птн 19:45:14 3882461827
leoFar-Eastern-[...].jpg 96Кб, 600x413
600x413
>>388227
Очень далеко, смысла связываться с пересылкой не вижу. Я с самого дальнего ДВ (да, это у нас тигры гуляют по городу, пруфы на ютубе)

>>388226
>сделал относительно нормальный кросскомпилятор форта.
По-моему форт писали все программисты, я делал ядро под х86 ещё в старших классах.
Аноним 01/11/19 Птн 20:31:39 3882571828
>>388246
>дальнего ДВ
Откуда вы там про плисы знаете вообще? Я сам оттуда родом, там ничего кроме уныния и безысходности нет. Свалил с этой дыры и ни разу не пожалел.
Аноним 02/11/19 Суб 02:56:26 3882961829
>>388257
Видимо ты с другого ДВ
Аноним 02/11/19 Суб 14:05:03 3883411830
>>388296
Я с хабаровского края. А ты?
Аноним 02/11/19 Суб 14:56:54 3883531831
>>388341
Владивосток. Если $$$ есть - то всё заебись.
Аноним 02/11/19 Суб 15:30:58 3883571832
>>388353
Ну ты узнай сколько пересыл обойдётся. Какие у тебя платы?
Аноним 02/11/19 Суб 17:49:14 3883631833
>>388064
Не больше 4К рублей думаю, не учитывая вспомогательные модули всякие типа ethernet.
Аноним 03/11/19 Вск 10:35:10 3884461834
Аноним 03/11/19 Вск 13:37:54 3884651835
>>388363

Альтеровские плисины.

https://www.aliexpress.com/item/32709028421.html (EP4CE6, с минимальной обвязкой и программатором обойдётся в 20 баксов, можно докупить модуль памяти за 9 баксов).
https://www.aliexpress.com/item/32747454526.html (ПЛИС пожирнее (EP4CE10) плата со свистоперделками, стоит 36-43 бакса, в зависимости от программатора)
https://www.aliexpress.com/item/32834586200.html (Нихрена нет, зато целых 22 логических килоячейки и 30 баксов вместе с доставкой)
https://www.aliexpress.com/item/1000006622149.html (Пятый циклон на 25 килоячеек + SDRAM, стоит 45-50, программатор (USB blaster) покупать отдельно, за $3)
https://www.aliexpress.com/item/33050240958.html (На борту десятый циклон (16000 логических ячеек), SDRAM, HDMI, и гигабитный эзернет, обойдётся в $50, программатор… в общем, я уже говорил).

Хилые.

Если докупать программатор за $20 не душит жаба:
https://www.aliexpress.com/item/1000006630084.html (Седьмой артикс на 35 килоячеек + DDR3, $50)
Как вариант, взять шестой спартан (но его поддержку в новом софте хилые дропнули):
https://www.aliexpress.com/item/32692200648.html (одна ПЛИС, $40 вместе с программатором)
https://www.aliexpress.com/item/32801899786.html (ПЛИС + SDRAM, $17 без программатора)
https://www.aliexpress.com/item/1000006622145.html (ПЛИС + SDRAM $16 без программатора)
https://www.aliexpress.com/item/1000006703110.html (ПЛИС + DDR3, $20 без программатора)

P.S. Ультра-лоу-энд вариант: https://www.aliexpress.com/wholesale?SearchText=ep2c5t144+board Старьё, но утоптать туда восьмибитную микроЭВМ вполне можно:
http://zx80.netai.net/grant/uk101FPGA/index.html
http://zx80.netai.net/grant/Multicomp/index.html
Аноним 03/11/19 Вск 15:37:30 3884981836
>>388465
>Старьё, но утоптать туда восьмибитную микроЭВМ вполне можно:
Будто все зависит только от битности, не меньше зависит от набора команд и прочего. Если верить документации, то Nios II в минимальной комплектации занимает 540 LE на втором циклоне.
Аноним 07/11/19 Чтв 16:20:49 3890831837
Привет, анон. Проведи краткий ликбез, пожалуйста.
Что определяет "скорость" и соответственно применимость плисины?
Куда в даташите смотреть, чтобы понять, что плисина "не подходит" по частотным характеристикам?
Я же правильно понимаю, что скорость обновления логических ячеек везде разная, и следовательно, предельные частоты работы одной и той же логической функции отличаются?
Спасибо.
Аноним 07/11/19 Чтв 19:06:36 3891051838
>>389083
Проще всего откомпилировать проект и посмотреть в ТаймКвесте.
Аноним 07/11/19 Чтв 19:20:19 3891061839
>>389083
>логической функции
Ты точно различаешь комбинационные и последовательностные устройства?

>логических ячеек
Помимо задержек в ячейках/элементах, которые в первом приближении состоят из LUT и триггера, ячейки/элементы отличаются по количеству входов LUT и прочему. Также в ПЛИС есть и другие блоки, такие как умножители, блоки памяти, PLL, трансиверы... Также отличаются варианты соединения этих ячеек и многое другое. А еще соединения между ячейками/элементами тоже вносят задержки. В добавок результаты синтеза будут зависеть от констрейнтов, версии САПР.
Так что, по моему, выше тебе правильно написали.
Аноним 08/11/19 Птн 13:31:15 3892071840
>>389106
>Ты точно различаешь комбинационные и последовательностные устройства?
Не точно.
Комбинационное устройство состоит из "параллельно" включенных блоков, обновляющихся входы и выходы по сигналу CLK.
Последовательное устройство - и есть блок, из которых строится комбинационное устройство. Внутри блока, соединения могут обновляться не по тактирующему сигналу.
Я понимаю, что сигнал внутри блока, должен распространяться быстрее, чем придёт импульс CLK.

>Также в ПЛИС есть и другие блоки, такие как умножители, блоки памяти, PLL, трансиверы...
Оно и понятно, тут меня больше всего интересует именно скорость работы логической матрицы. Скорость и расположение памяти/трансиверов/умножителей - всё описывается в даташитах. А вот чтобы понять, насколько медленнее при прочих равных та или иная плисина, тем более разных производителей/на разной технологии...

>Так что, по моему, выше тебе правильно написали.
>>389106
>Проще всего откомпилировать проект и посмотреть в ТаймКвесте.
В целом да, если проект на руках, и его не проблема перенести на интересующую платформу.
Аноним 08/11/19 Птн 17:01:44 3892401841
Тем временем QMTech выдали плату на цинке.
> Specification:
> On-Board SoC: XC7Z010-1CLG400C;
> On-Board PS side external crystal frequency: 33.333MHz;
> XC7Z010-1CLG400C has rich block RAM resource up to 2.1Mb;
> XC7Z010-1CLG400C has 28K logic cells;
> On-Board 512MB Micron DDR3, MT41K256M16TW-107IT:P;
> On-Board micro SD slot;
> On-Board power supply for FPGA by using TPS563201 wide input range DC/DC;
> On-Board one 50p and one 40P, 2.54mm pitch headers for extending user IOs. All IOs are precisely designed with length matching;
> On-Board user switch for PS logical reset;
> On-Board MII ethernet interface connected to PL side by using ICPlus chip IP101GA;
> On-Board two user LEDs, one connected to PL and the other connected to PS;
> On-Board JTAG interface, by using 6p, 2.54mm pitch header;
> PCB size is: 6.7cm x 9.9cm;
> Default power source for board is: 2A@5V DC, the DC header type: DC-050, 5.5mmx2.1mm;

Стоит чуть больше 60 баксов вместе с доставкой: https://www.aliexpress.com/item/4000323573953.html
Аноним 08/11/19 Птн 17:57:57 3892561842
>>389240
Спасибо Анон! Закажу одну на мигалку.
Где нынче искать не сильно стухшую блеваду ?
Похуй что ретромеркурий с 1-го до 20-го ноября и ничего нового не начинать. 60$ - вообще ни о чем.
Аноним 08/11/19 Птн 18:07:48 3892581843
p0011.png 252Кб, 1517x1929
1517x1929
Screenshot2019-[...].png 50Кб, 889x892
889x892
>>389207
>Не точно.
Да, у тебя все как-то очень странно перепутано.

>А вот чтобы понять, насколько медленнее при прочих равных та или иная плисина
Можно сравнить результаты для IP ядер. На второй картинке, чем не бенчмарк?
Аноним 08/11/19 Птн 18:17:45 3892591844
>>389207
>Комбинационное устройство состоит из "параллельно" включенных блоков, обновляющихся входы и выходы по сигналу CLK.
>Последовательное устройство - и есть блок, из которых строится комбинационное устройство. Внутри блока, соединения могут обновляться не по тактирующему сигналу.
Откуда ты такой шизофрении нахватался?
Тебе будет полезно с этого начать
https://www.youtube.com/playlist?list=PL4UMfOeGYsvZs-gvs0dC8oO3HXrmGC1bm
Аноним 10/11/19 Вск 16:11:02 3895801845
>>389256
Чем не устраивает бесплатная версия?
Аноним 10/11/19 Вск 19:07:20 3896091846
>>389256
>ретромеркурий с 1-го до 20-го ноября и ничего нового не начинать.
Я тут у вас на сосаче новый. У вас что, принято изучать астрологию, что ли?
Аноним 10/11/19 Вск 19:20:01 3896131847
>>389609
>принято изучать астрологию, что ли?
Естественно. Таро то же используем. Отладчики? Не не слышал.
Что бы не гадать на кофейной гуще - вспышки на солнце, положение планет не то, фаза луны не та, не с той ноги встал, случайно дописал/убрал "<" или по какой еще причине у тебя очень сильно отличается поведение схемы в симуляторе и в реальном железе.
Сарказм это. Иногда стоит прислушиваться что говорят Звезды на небе.
Аноним 12/11/19 Втр 23:08:43 3899411848
2019-11-1222-58[...].png 79Кб, 1355x785
1355x785
Наверное платина, но что-то я не соображу.
Есть комбинаторная схема пикрил.
Она будет между регистровой прослойки(на схеме не отображено)

Как посчитать Fmax, если известно, что самый длинный путь имеет задержку 5.6 нс? охуеть, не задумывался, что 4 каскада логики дают такую задержку

Если что речь про кинтекс 7.
Аноним 13/11/19 Срд 01:46:41 3899451849
>>389941
>Как посчитать Fmax, если известно, что самый длинный путь имеет задержку 5.6 нс?
Единица разделить на. 178 МГц
Но сама логика тут у тебя даёт задержку 3.7нс остальное — пути.
Если пропишешь констрейнты, роутер попробует разместить всю фигню поближе друг к другу.
Аноним 13/11/19 Срд 09:37:35 3899571850
>>389945
Вот так просто?
И получается до имплементации вивадо ставит задержку net delay от балды?
Аноним 13/11/19 Срд 09:44:20 3899581851
>>389945
А если усложнить задачу:
допустим данные на вход a подаются с частотой 150 МГц, на вход b - 40 МГц причем фазы клоков не совпадают. Выход c в том же домене, что и b. Как заставить всё это дело работать?
Аноним 13/11/19 Срд 12:08:40 3899691852
>>389957
Не надо синтезировать как попало, а потом гадать на какой частоте запустится. Надо прописывать констрейнты и смотреть, удалось ли виваде в них вписаться или нет.

>Как заставить всё это дело работать?
Перевести сперва всё в единый клок домен при помощи асинхронных FIFO.
Аноним 13/11/19 Срд 12:38:47 3899771853
>>389957
Да и вообще, у тебя тут модуль синтезировался как верхний уровень, с входными и выходными буферами наружу, а в проекте они уйдут, потому что наружу ничего выводить не надо. Результат такого синтеза пригоден только чтобы схему смотреть, но не задержки.
Аноним 13/11/19 Срд 12:45:36 3899781854
Аноним 13/11/19 Срд 15:44:14 3900601855
>>389977
>Результат такого синтеза пригоден только чтобы схему смотреть, но не задержки.

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

>>389978
Да, почти компаратор. Мне запретили использовать корки fifo, я заменил их на инстанс bram - она может работать в режиме fifo и как я думал имеет аналогичные сигналы, что и стандартная корка от зайлинкс. Но как оказалось, есть нихуевые различия. Сигнал almostempty в bram не может показать когда в fifo осталось только 1 слово. А счетчики rdcount и wrcount на самом деле нихуя не счетчики а указатели.

Этот "компаратор" попытка получить сигнал almostempty с таким же поведением как в оригинальной корке.
Аноним 13/11/19 Срд 16:41:51 3900721856
>>390060
>Как минимум видно сколько каскадов комбинаторной логики получилось из моего кода, для грубой прикидки максимальной частоты вполне себе можно использовать, разве нет?
Это я и имел в виду под "пригоден только чтобы схему посмотреть".
Аноним 13/11/19 Срд 16:48:27 3900751857
>>390060
>Мне запретили использовать корки fifo
Понятно, значит, завести данные в другой клок домен через fifo у тебя не выйдет. Значит, тебе надо 150МГц клоком семплировать 40МГц клок и генерировать clock_enable для 150МГц домена, чтобы он считывал в себя медленный сигнал, когда детектится фронт медленного клока.
Аноним 27/11/19 Срд 01:35:03 3918111858
На каких открытых и бесплатных файлообменниках лучше хранить коды? Что скажите за эту помойку github.com?
Аноним 27/11/19 Срд 07:06:04 3918161859
>>391811
>Что скажите за эту помойку github.com?
Лучше там и хранить.
Один хуй кроме git другие VCS не нужны.
Аноним 27/11/19 Срд 07:09:11 3918171860
Можно ли как то в verilog/SV-тестбенче указать вивадо симулятору, чтобы он не останавливался на каком-то дефолтном момента времени, а продолжал дальше, до более далёкого момента времени? Надоело лезть в настройки за этим, хочется в коде тестбенча задавать.
Аноним 27/11/19 Срд 07:12:08 3918181861
>>391811
>открытых
>github.com
У них закрытый исходный код, открытый у gitlab.
А ты вообще систем контроля версий касался? Тут первичнее используемая система контроля версий, а не куда пушить будешь. Можно пушить одновременно на github, gitlab, bitbucket и прочее.
Аноним 27/11/19 Срд 07:21:09 3918201862
>>391817
В верилоге есть $stop и $finish. Можно написать что-то вроде initial #100 $stop;
Только запускать симуляцию придется другой кнопкой. В моделсиме это ContinueRun, вместо просто Run.
Аноним 27/11/19 Срд 14:08:27 3918811863
fifo.png 9Кб, 1234x187
1234x187
Помогите, молю!
Есть фифо fwft. Выставляю сигнал чтения, по идее на следующем такте клока уже можно забирать следующие данные, однако относительно фронта следующего клока почему-то в симуляции возникает задержка 0.1 нс и соответственно захватываются предидущие данные. Что я делаю не так?
Аноним 27/11/19 Срд 15:18:07 3919071864
fifo1.png 41Кб, 788x406
788x406
>>391881
Пиздец, должно же быть как в документации. Откуда эта ебучая задержка лезет??
Аноним 27/11/19 Срд 18:56:05 3919641865
>>391818
>У них закрытый исходный код, открытый у gitlab.
А это важно?
>А ты вообще систем контроля версий касался?
Да мне исключительно продемонстрировать свои говноподелки на неширокий круг. Ничего серьёзного.
Аноним 27/11/19 Срд 19:06:47 3919661866
>>391881
Чтение и запись в FIFO синхронное и осуществляется по фронту. А ты похоже формируешь fifo_rd по фронту rd_clk, значит fifo_rd придет не раньше rd_clk. При этом у тебя на первой картинке показано что fifo_rd устанавливается в 1 до переднего фронта rd_clk.
Хоть обыкновенный D-триггер с динамическим управлением для примера возьми. Что будет, если на вход D подашь fifo_rd, а на вход C подашь rd_clk?
Хотя, возможно я тебя неправильно понял.
Аноним 27/11/19 Срд 19:08:09 3919671867
>>391881
Ты смотри какая у тебя симуляция включена. Если временная, то сигнал на входах лучше подавать не в момент фронта клока, а чуть погодя, как это собственно и происходит в реальности. Но лучше переключи на функциональную.
Аноним 27/11/19 Срд 19:08:32 3919681868
>>391966
>на первой картинке показано
На второй, которая из документации.
Аноним 27/11/19 Срд 19:18:54 3919711869
>>391967
>Но лучше переключи на функциональную.
Это не поможет никак, если fifo_rd формируется в блоке always по фронту rd_clk, потому что изменение произойдет уже после фронта rd_clk.
Аноним 27/11/19 Срд 19:39:14 3919741870
>>391964
>А ты вообще систем контроля версий касался?
>Да мне исключительно продемонстрировать свои говноподелки на неширокий круг. Ничего серьёзного.
Все же системы контроля версий в первую очередь используют не для того чтобы кому-то просто демонстрировать код. Если нужно только кому-то дать код, а возможности систем контроля версий тебе не нужны, то зачем гитхаб? Архивируй и заливай на какой-нибудь гуглодиск. И не нужно будет писать дурацкие комментарии к коммитам и изучать гитовские команды или кнопки в GUI.
Аноним 27/11/19 Срд 21:51:16 3920001871
>>391816
А в чём проблема хранить в локальном репозитории? Зачем именно гитхаб?
У меня на прошлой работе использовали SVN, никаких проблем не было.
Аноним 27/11/19 Срд 21:54:59 3920011872
>>391971
Я про то что входы нужно подавать правильно. Сам на такое много раз натыкался, менял состояние сигналов строго по фронту клока, вроде и синхронно подаёшь, а тем не менее это неправильно, во временных симуляциях так делать нельзя. Потому что у триггеров есть время срабатывания, внутренняя задержка, из-за которой выход они меняют не чётко по фронту клока, а с запаздыванием. Потому и мы, когда подаём входные синхронные сигналы из тестбенча должны действовать аналогично. Или, повторюсь, юзать функциональную симуляцию, там, к слову, тоже такое иногда проявляется, но всё же полегче будет. Это всё безотносительно к твоему буферу, просто делюсь опытом.
Аноним 27/11/19 Срд 22:21:59 3920111873
>>392001
А я про то что по временной диаграмме из симулятора непонятно что сделал тот анон. Может он написал always@(posedge rd_clk) fifo_rd=...
В таком случае не будет работать при какой угодно симуляции. Потому что очередность изменения сигналов, это то, что называют delta delay.
И буфер не мой.
Аноним 27/11/19 Срд 22:36:21 3920161874
>>392000
При использовании гита в любом случае будешь хранить локально весь репозиторий целиком, распределенная система же.
Аноним 28/11/19 Чтв 00:28:13 3920201875
>>392016
Я к тому, что зачем пушить на какой-то сервер? Одно дело, если проект по работе, другое - личный.
Аноним 28/11/19 Чтв 15:05:52 3921181876
Mikuru.jpg 33Кб, 416x416
416x416
Решил изучать плис.
Есть идея запилить на плис 8085.
Может быть уже есть аналоги моей идеи?
Аноним 28/11/19 Чтв 15:54:43 3921351877
Аноним 28/11/19 Чтв 16:11:58 3921431878
>>392135
Очень благодарю
может 8051 есть?
Аноним 28/11/19 Чтв 17:26:29 3921481879
>>392143
>Очень благодарю
Это Интернет детка, здесь могут послать НА ХУЙ, в лес, сад, жопу!
Пиздуй отсюда к некрофилам-фанатам Z80 http://www.spetsialist-mx.ru/index9.html https://zx-pk.ru/forums/110-klony-na-plis-mk-i-bmk.html Например самая первая тема про Reverse-U16
Недостающую периферию сам себе напишешь или используй NIOS, MicroBlaze, Mico32 тут нет опечаток...
Аноним 28/11/19 Чтв 19:13:01 3921671880
Плисаны, помогите изобрести хитрый переходничок.
Есть 2 fifo с разрядностью 65 бит. 65й бит каждого fifo хранит флаг валидности данных.
Нужно загнать эти два fifo на один выход таким образом, чтоб все это дело выглядело как обычное 64битное fifo fwft. Данные без флага валидности надо дропать.

Либо я тугодум либо это сложная задача.
Аноним 28/11/19 Чтв 19:46:31 3921741881
>>392167
>65й бит каждого fifo хранит флаг валидности данных.
Че за долбоеб это реализовывал?

Аноним 28/11/19 Чтв 19:51:15 3921761882
>>392174
Ваш покорный слуга. Возникла потребность сделать из 128 битной axi-stream 64-битную и попутно перейти в другой клоковый домен.
Аноним 28/11/19 Чтв 20:11:57 3921821883
>>392167
Во-первых, нахуя хранить невалидные данные? Просто загружай их в FIFO по (wr_en && valid) вместо (wr_en), чтобы данные с нулевым valid в fifo не попадали. У тебя не только ширина данных и бессмысленно занимаемая память уменьшатся, но и задача упростится, потому что в FIFO будут заведомо валидные данные.

Во-вторых, тебе их как упорядочивать на выходе надо? 1-2-1-2-1-2 или ещё как-то?
Аноним 28/11/19 Чтв 20:15:29 3921831884
На всякий случай, ты в курсе вообще, что под твою задачу существуют готовые корки без смс? AXI Stream combiner, AXI Stream width converter, AXI Stream asynchronous FIFO, AXI Stream Clock converter?
Аноним 28/11/19 Чтв 20:19:45 3921841885
>>392182
На входную 128 битную шину данные поступают блоками по 64 бита. Может прийти одновременно 2 блока, а может и один в конце пакета. Если я буду писать в fifo по (wr_en && valid) то нарушится порядок.
Аноним 28/11/19 Чтв 20:20:57 3921851886
>>392183
В курсе, но мне нельзя их использовать.
Аноним 28/11/19 Чтв 20:27:39 3921861887
>>392182
>Во-вторых, тебе их как упорядочивать на выходе надо? 1-2-1-2-1-2 или ещё как-то?
Да, именно так, но соответственно пустые блоки надо пропускать не нарушая порядок.
Аноним 29/11/19 Птн 09:19:52 3922591888
>>392186
Понятно. Нихуя нет сложного, нужен конечный автомат с 2 (двумя) состояниями. Сперва он ждёт, когда FIFO1 непустое, и вычитывает его, передавая или дропая данные в зависимости от валидности. Потом переключается и ждёт, когда FIFO2 непустое, и вычитывает его, передавая или дропая данные в зависимости от валидности.
Аноним 29/11/19 Птн 12:51:57 3922741889
>>392259
Таки ты предлагаешь мою текущую схему с хранением невалидных данных и флагами валидности? Значит я не такой долбоёб?
Аноним 29/11/19 Птн 19:27:02 3924351890
>>392274
Долбоёбом тебя назвал кто-то другой. У меня нет привычки сходу оскорблять людей.
Если будешь использовать стандартную BRAM, она на большой ширине кратна 9, то есть с большой вероятностью твоё FIFO будет иметь аппаратную ширину 72 — аж 8 дополнительных бит можно передавать. А невалидные блоки, попадающиеся лишь в конце пакета, можно и хранить, погоды в плане занимаемого объёма они не сделают.
Аноним 29/11/19 Птн 19:53:04 3924411891
>>316971
>На плисах будешь залупу последнюю без соли доедать
А ёлочка-то мне понравится?
Аноним 29/11/19 Птн 21:21:34 3924511892
>>392441
Два высших образования есть?
Аноним 02/12/19 Пнд 12:18:12 3929061893
Привет, анон.
Пытаюсь понять осознать как работает синтез из Verilog'а.

Есть пример (сокращенно):
module cntr( clk,rst, count);
input clk,rst;
output reg [3:0] count;
always @(posedge clk or posedge rst)
begin
if (rst==0)
count<=3'b0;
else
count<=count+1;
end
endmodule


Не работает, синтезатор сообщает: W: Edge and connection mismatch; E: Logic for count does not match standard flip-flop.

Как сделать чтобы оно работало - понятно %%(заменить posedge rst на negedge rst, или rst ==0 на rst == 1). Но к сожалению не понятно, почему это невозможно перенести на триггеры.

Объясните, пожалуйста.
Аноним 02/12/19 Пнд 13:21:47 3929131894
>>392906
У тебя ассинхронный ресет, который в списке чувствительности срабатывает по переднему фронту. Однако в теле олвейс-блока ты пишешь if(rst==0) -- что соответствует заднему фронту. Попробуй заменить posedge на negedge.
Аноним 02/12/19 Пнд 13:37:55 3929201895
>>392913
> Попробуй заменить posedge на negedge.
Бро, я так уже сделал, я понимаю что оно так заработает. Я пытаюсь понять, почему исходная конструкция принципиально не синтезируема.
>ассинхронный ресет, который срабатывает по переднему фронту. Однако в теле олвейс-блока if(rst==0) -- что соответствует заднему фронту.
Это понятно, опять же. Но в моем понимании, возможно ошибочном, эта конструкция не является логически неверной:
Блок always сработал по переднему фронту rst, сделал count+1.
Блок always сработал по переднему фронту clk, если rst будет 0, count<=0, иначе count+1.
Аноним 02/12/19 Пнд 14:10:43 3929241896
>>392920
Начни с изучения архитектуры FPGA под которую ты пишешь код. На худой конец открой library guide и посмотри, какие тебе доступны DFF-ки.

>Блок always сработал по переднему фронту rst, сделал count+1.
>Блок always сработал по переднему фронту clk, если rst будет 0, count<=0, иначе count+1.

Всё логично. Но если ты посмотришь, какие тебе доступны ячейки внезапно окажется, что такую конструкцию синтезировать нельзя.
Аноним 02/12/19 Пнд 14:19:02 3929291897
>>392924
Я и так понимаю то что ты говоришь.
Я прошу пояснить мне на примере, почему это нельзя запихнуть в стандартную логическую ячейку (LUT+DFF, как например CycloneII).
Аноним 02/12/19 Пнд 15:11:20 3929381898
Снимок экрана20[...].png 54Кб, 767x552
767x552
>>392929
Ничего ты не понимаешь.

>Блок always сработал по переднему фронту rst, сделал count+1.
>Блок always сработал по переднему фронту clk, если rst будет 0, count<=0, иначе count+1.

У ячейки есть синхронный вход данных и ассинхронный сброс.
Один из сигналов списка чувствительности займет вход синхронизации.
Синхронный вход данных займет какой-то сигнал с сумматора (count+1)
Это понятно?

Но ты собираешься проталкивать данные на выход триггера в том числе ассинхронно, по фронту reset. Как это сделать?
Аноним 02/12/19 Пнд 15:15:34 3929391899
Да проще всё.

Когда конструкция, по сути, описывает, что и clk, и rst могут являться тактирующими сигналами для выполнения действия count<=count+1, то внезапно оказывается, что тактирующий вход у триггера всего один.
Аноним 02/12/19 Пнд 15:19:57 3929411900
>>392938
Логика которую можно синтезировать выглядит так:

>Блок always сработал по переднему фронту rst, сделал count<=0.
>Блок always сработал по переднему фронту clk, если rst будет 0, count<=0, иначе count+1.

Ресет пойдет на clrn, а выходы сумматоров идут на входы data.
Аноним 02/12/19 Пнд 15:22:15 3929431901
>>392939
Не проще. Если бы была доступна ячейка с ассинхронным сбросом и установкой то такая конструкция скорее всего бы синтезировалась.
Аноним 02/12/19 Пнд 15:23:19 3929441902
>>392941
>Блок always сработал по переднему фронту rst, сделал count<=0.
Твой код этого не описывает.

По переднему фронту rst он сперва проверяет, равен ли rst нулю. А поскольку rst нулю не равен (в случае переднего фронта rst будет равен 1), он идёт дальше и пытается выполнить count<=count+1.
Аноним 02/12/19 Пнд 15:26:03 3929451903
>>392943
Niet. Чтобы это синтезировать, нужен триггер, умеющий защёлкнуть count<=count+1 и по фронту clk, и по фронту rst. То есть умеющий тактироваться от двух клоков.
Аноним 02/12/19 Пнд 15:26:35 3929461904
>>392944
>Твой код этого не описывает.
Код не мой, я просто поправил человека в рассуждениях.
Аноним 02/12/19 Пнд 15:33:42 3929471905
Аноним 02/12/19 Пнд 15:36:52 3929501906
>>392945
Так у тебя на картинке OR двух клоков.
Аноним 02/12/19 Пнд 15:40:19 3929521907
>>392947
У него даже асинхронных сетов/ресетов нет, не то что двух клоков.
Аноним 02/12/19 Пнд 15:41:09 3929531908
>>392950
(не у меня) на картинке мультиплексор клоков, а не OR.
Аноним 02/12/19 Пнд 15:43:38 3929551909
Аноним 02/12/19 Пнд 15:49:43 3929611910
ПЛИСоводство уровня /ra.
Из-за какой-то хуйни развернули холивар.
Аноним 02/12/19 Пнд 15:51:11 3929621911
>>392961
Холивар чего с чем?
Аноним 02/12/19 Пнд 15:52:51 3929631912
>>392953
А самому сделать or клоков в fpga нельзя? Только в cpld?
Аноним 02/12/19 Пнд 15:58:26 3929681913
>>392963
Можно. Только триггер от этого не станет чувствительным одновременно к фронтам двух клоков. Он будет терять чувствительность ко второму клоку, пока первый равен 1, и к первому, пока второй равен 1.
Аноним 02/12/19 Пнд 15:59:46 3929711914
А ещё, если ты попробуешь так делать в реальном проекте (генерировать клок логической функцией из каких-то сигналов)), тебе с большой вероятностью дадут пизды.
Аноним 02/12/19 Пнд 16:00:09 3929721915
А если собрать на двух триггерах?
Аноним 02/12/19 Пнд 16:09:11 3929771916
Аноним 02/12/19 Пнд 16:21:41 3929791917
>>392939
>Когда конструкция, по сути, описывает, что и clk, и rst могут являться тактирующими сигналами для выполнения действия count<=count+1, то внезапно оказывается, что тактирующий вход у триггера всего один.
>>392945
>Чтобы это синтезировать, нужен триггер, умеющий защёлкнуть count<=count+1 и по фронту clk, и по фронту rst. То есть умеющий тактироваться от двух клоков.
Ок, спасибо. Теперь будет вопрос раскрывающий моё принципиальное непонимание процесса:
А почему выход другой логической ячейки (реализующей функцию ИЛИ для rst и clk) не может быть использован в качестве источника для тактирующего входа?

>>392941
Т.е. получается, т.к. clrn асинхронный, когда к нему подключен rst и он в состоянии 1, я могу работать с синхронным входом. А при фронте rst или фронте clk и rst==0, в регистр запишутся нули. В принципе, логично. Но не очень понимаю, как это будет выглядеть на схеме соединений.

>>392938
Ок, спасибо. Всё ещё ничего не понял, но очень интересно.
Аноним 02/12/19 Пнд 16:31:39 3929821918
>>392977
А как по-другому?
Аноним 02/12/19 Пнд 16:36:23 3929861919
>>392979
>А почему выход другой логической ячейки (реализующей функцию ИЛИ для rst и clk) не может быть использован в качестве источника для тактирующего входа?
Потому что такой сигнал неопределён, и его невозможно подвергнуть временному анализу при имплементации. А если даже теоретически и возможно, инструменты не будут этого делать, потому что по их мнению так проектируют только мудаки. Трассировщик не сможет проконтролировать, успевают ли сигналы вовремя доходить куда надо, схема будет по-разному работать при разных фазах луны.
Аноним 02/12/19 Пнд 17:00:09 3929901920
>>392986
Т.е. ты хочешь сказать, что синтезатор просто на просто, воизбежание ошибки, выдаёт Error (хотя обычно мудацкое поведение, всё же, отмечается Warning'ами, а Error это когда уже гарантированная ошибка)?
Аноним 02/12/19 Пнд 17:14:47 3929931921
>>392979
>А почему выход другой логической ячейки (реализующей функцию ИЛИ для rst и clk) не может быть использован в качестве источника для тактирующего входа?

При кодинге HDL нужно придерживаться определенных паттернов проектирования. Причем, эти самые паттерны могут меняться в зависимости от твоего девайса или вендора. Изобретая велосипеды ты возможно решишь какую-то локальную задачу, но в итоге это может выйти тебе боком на поздних стадиях проекта.
Короче не выёбывайся, делай как все.
Аноним 02/12/19 Пнд 17:19:51 3929951922
>>392990
С вонингами в логах вообще весело. Код, для которого успешно сгенерился битстрим может выдавать ошибки при попытке симуляции.

Один и тот же код может выдавать ошибку на Xilinx и при этом успешно синтезироваться на Intel.
Аноним 02/12/19 Пнд 18:32:18 3930141923
TPM-CGYoda.jpg 1294Кб, 1440x816
1440x816
Аноним 02/12/19 Пнд 19:49:57 3930251924
>>392990
Синтезатор выдаёт error потому что код, который был в треде выше, нереализуем на архитектуре ПЛИС. Он и при помощи тактирования OR'ом сигналов нереализуем, выше объяснено, почему. Здесь. >>392968 Ты не понял, что ли, почему так?

А почему в принципе не используется OR сигналов для тактировния — это следующий вопрос, отдельный. Синтезатор такое реализует, трассировщик разведёт, выдав критикал ворнинг, но работать это не будет из-за назначенных от балды задержек и невозможности назначить их не от балды.
Аноним 02/12/19 Пнд 21:29:36 3930421925
>>316943 (OP)
Парни, кто-нибудь реализовывал usb 3.0 на fpga? Это пиздец прям сложно?
Аноним 02/12/19 Пнд 21:43:47 3930441926
>>393042
Я немного не в теме, даже близко такого не касался, но зачем оно? Вроде бы все равно потребуется микросхема PHY, так почему не поставить какой-нибудь cypress?
Аноним 02/12/19 Пнд 21:50:08 3930471927
>>393044
А че, нельзя на старших моделях для этого использовать гигабитные трансиверы? Для Gigabit Ethernet вроде как можно, только сегодня в даташитах на Altera читал. На чипах старше cyclone IV gx активируешь корки для трансиверов и triple speed ethernet, и дело в шляпе. Может и для usb тоже так прокатывает?
Аноним 03/12/19 Втр 06:39:44 3931081928
Аноним 03/12/19 Втр 12:10:27 3931721929
>>393047
Ну, если спизжу аноны поправят, но ты немного смешал солёное с кислым.
Что с PHY, что без, ты будешь использовать трансиверы для выдачи сигнала на USB, однако PHY микросхема нужна в первую очередь для согласования сигналов, в т.ч. электрического.
Если у тебя выходы трансиверов способны обрабатывать подобный сигнал (дифф сигнал, какие уровни напряжения - нагуглить не смог), то да, можешь подключать плисину к USB порту без PHY.
Аноним 03/12/19 Втр 14:44:28 3932011930
>>393172
>Что с PHY, что без, ты будешь использовать трансиверы для выдачи сигнала на USB
Необязательно. Могут существовать такие внешние PHY, которые общаются с плис параллельно по нескольким линиям LVDS на относительно небольшой скорости, для них могут использовтаься стандартные банки ввода/вывода.
Аноним 03/12/19 Втр 21:58:24 3933421931
>>393172
Я понял, что ошибся с Ethernet'ом, потому что там хитровыебанный 3-х или 5-уровневый сигнал (100/1000 Мбит соответственно). Но вроде у USB обычный дифференциальный, который ПЛИС может выдать со своих lvds-выходов. Надо только, чтобы чип обеспечивал нужные рабочие частоты на этих выходах, младшие семейства для этого не подойдут.
Аноним 03/12/19 Втр 22:14:20 3933501932
Безымянный.png 90Кб, 980x678
980x678
Во
Аноним 04/12/19 Срд 07:53:18 3934051933
>>393350
Это не могоуровневый сигнал. Это двухуровневый сигнал с хировыебанной формой переходов, чтобы компенсировать импеданс линии. Плисовые LVDS генерируют такой же с атрибутом LVDS_PRE_EMPHASIS=TRUE.
Аноним 04/12/19 Срд 10:37:23 3934291934
>>393405
Я знаю, что это не многоуровневый сигнал, это картинка из спецификации USB 3.0
Аноним 04/12/19 Срд 10:48:02 3934311935
>>393342
Я конечно хуй знает, но из ETH+PHY и USB, я бы выбрал ETH+PHY, потому что USB дохуя замороченная на верхних (программных) уровнях.
А почему тебе никак нельзя прибавить внешний PHY, если не секрет?
Аноним 04/12/19 Срд 12:14:15 3934461936
>>393431
Да это просто мысли вслух, я не тот анон, который спрашивал про USB. Для USB всяко дешевле будет поставить cypress со встроенным phy (если такой есть для usb 3.0), а жирная плисина стоит наверняка дороже, и корка нужна, которая тоже денег стоит.

У меня сейчас наклевывается задача, будет длинная последовательная цепочка датчиков, суммарная скорость в линии около 200 Мбит/с, между датчиками 100 м. Рассматриваю ethernet-1000 и serial digital interface. Для ethernet нужен микроконтроллер, коммутатор со встроенными PHY (нужен дубляж и последовательная ретрансляция по цепочке), для SDI нужна FPGA с быстрыми lvds, корки serdes и несколько phy. Ethernet потребует три номинала напряжения питания и весьма большие токи потребления + вся реализация считай полностью программная, а для SDI сгодится только одно питание 3,3 В для phy, меньше потребление, значительно проще разводка, но весь протокол и вся логика коммутации пакетов аппаратно в ПЛИС, для меня сложновато, т.к. я на таких скоростях и на lvds еще ни разу ничего не делал. В целом нужны очень маленькие габариты и минимальное потребление всей системы датчиков.
Аноним 04/12/19 Срд 14:01:07 3934641937
>>393446
Какой бюджет, какая сложность проекта, какую плис думаешь взять?
Аноним 04/12/19 Срд 18:57:49 3935491938
>>393464
Требований по цене конечного продукта особых нет. ПЛИС пока рассматриваю MAX 10, потому что с одним питанием и конфигурационное ПЗУ не нужно. lvds вроде быстрые по документации, но возможно не пройдет по внутренним частотам, пока не разбирался, как работают альтеровские корки soft-serdes, которые они предлагают в своих даташитах.

Пока так думается, что разницы по деньгам между двумя вариантами особо не будет.
Аноним 04/12/19 Срд 21:26:42 3935781939
Аноним 06/12/19 Птн 16:24:41 3939271940
Подскажите, как для двуклокового FIFO сделать счетчик доступных для чтения слов?
Аноним 07/12/19 Суб 18:17:58 3941381941
>>385080
Анон, как твои успехи?
Аноним 07/12/19 Суб 19:21:58 3941601942
>>394138
Как могут быть дела у флексоеба, у которого может по паре-тройке часов практики в неделю на все это? В рамке под стеклом. На флексине уже помигал, выдавая состояние шин адреса и данных.
Крайне мелкими шагами дрючу >>387393 срисовывая схему с натуры и пробую переписывать на Verilog, строя догадки что за снятая микросхема и должна ли она там быть. Похожа на логику, часть которой входит в детектор фронтов на RC цепочке и на CS второй ПЗУ.
Собрал по паре >>392629 Reverse-U16 и DivGMX (осталось по мелочи, ПЛИС, память и генераторы есть) с них если что можно выдрать корку 580ВМ80.
Для тестирования думал шмегу юзать, заебался, жду деталей на HydraBUS https://eax.me/hydrabus/, через которую можно будет делать всякие непотребства начиная от тупой железки, которая на своих портах GPIO задает-читает уровни до прикидывания SPI/IIC мастером.
Определенно попаболи доставляет момент что "комп" частями и нет основного шасси, где наверное прячется контроллер прерываний, иначе не объяснить что на других платах где-то тупо закорочен на питание или на землю выход прерывания, где-то таймер(?) из 155РЕ3 и конденсаторов на линии прерывания. А документации на эту ебань чуть меньше, чем никакой. Реальная практика just for fun если что.
Аноним 09/12/19 Пнд 18:23:03 3943531943
Аноним 10/12/19 Втр 18:18:31 3945181944
>>394353
По каждой записи инкриминируешь счётчик.
Аноним 10/12/19 Втр 18:26:33 3945201945
>>394518
Все не так просто и у меня то же подобный вопрос. Нужен счетчик который имеет джва асинхронных тактовых входа, где один вход увеличивает значение, другой уменьшает и в виду асинхронщины эти сигналы могут и одновременно приходить или один постоянно активен, другой при этом меняет свое значение и не раз.
Тактового сигнала нет. Вообще. Лютая асинхронщина на логике.
Другой анон.
Аноним 10/12/19 Втр 19:17:30 3945321946
>>394520
Если ФИФО не большое можно счётчик регистром заменить, каждый разряд в регистре соответствует слову в ФИФО.
Или, как более продвинутый вариант для больших буферов, использовать дополнительный разряд в каждом слове в ФИФО, в котором бы находился флаг того что было ли считано слово или ещё нет.
Аноним 10/12/19 Втр 20:12:50 3945431947
>>394520
Это так не делается. Если есть два клоковых домена, то должны быть и два клока, и синхронные им сигналы в соответствующих клоковых доменах.

Для асинхронных фифо была придумана такая хуйня, как код Грея, чтобы без гонок сигналов переводить значения счётчиков из одного домена в другой. Следующее значение отличается от предыдущего ровно одним битом, и никак иначе.

Но это не означает, что счётчики кода Грея должны находиться в двух доменах сразу. Нужно иметь два счётчика, один счётчик считает указатель для чтения, другой — указатель для записи. Находятся, соответственно, один — в домене чтения, другой — в домене записи. Из домена в домен значения переводятся через трёхрегистровые синхронизаторы.

Сравнение, чтобы генерировать empty, должно выполняться в домене read. Сравнение, чтобы генерировать full, должно выполняться в домене write. Тогда им не потребуется проходить через синхронизаторы с соответствующей задержкой, они будут доступны сразу после возникновения (а вот сниматься с задержкой, но это норм, на целостность данных не повлияет).
Аноним 11/12/19 Срд 22:08:12 3947831948
>>394543
Ты говоришь про указатели, они как правило есть во всех реализациях фифо. А как из этих указателей узнать сколько слов можно прочитать и сколько слов можно записать?


Аноним 11/12/19 Срд 22:09:47 3947841949
Я облазил весь гитхаб и не смог найти ни одного ассинхронного фифо со счетчиком, чтоб как в IP-корке от Xilinx
Аноним 12/12/19 Чтв 01:48:56 3948101950
>>394784
Ну зайди на фрикору, ну ебана.
Только вчера асинхфифу с вишбоны выдерал.
Аноним 12/12/19 Чтв 05:49:41 3948191951
>>394783
Вычесть одно из другого, ёба. Как с генерацией empty, лишь немногим сложнее. Там, где генерируется empty — там же можно и считать, сколько ячеек не empty.
Аноним 12/12/19 Чтв 14:01:02 3949341952
>>394819
Ну давай прекинем.
Допустим глубина фифо 256.
После ресета я записал 255 слов. Указатель записи будет показывать значение 8'hFF. Указатель чтения будет нулевым, т.к. я еще не прочитал ни одгого слова, 8'hFF - 0 == 8'hFF, всё верно.
Но если я прочитаю 5 слов, а потом запишу 5 слов то указатель записи будет равен 8'h04, а указатель чтения 8'h05. Что от чего отнимать в этом случае?
Аноним 12/12/19 Чтв 14:15:53 3949441953
>>394934
>Что от чего отнимать в этом случае?
А подумать немного самому? Если ты не можешь ответить на этот вопрос, ты же даже веб-макакингом не в состоянии заниматься.

cnt = (wr_ptr >= rd_ptr) ? wr_ptr-rd_ptr : FIFO_DEPTH+wr_ptr-rd_ptr ;
Аноним 12/12/19 Чтв 14:31:23 3949571954
>>394944
>cnt = (wr_ptr >= rd_ptr) ? wr_ptr-rd_ptr : FIFO_DEPTH+wr_ptr-rd_ptr ;
Это же решение влобовую, сколько здесь логики уйдет - это же компаратор, мультиплексор и два субтрактора. Такое фифо будет тормозить. Я пытаюсь родить нечто отвечающее стандартам промышленного проектирования, а с шашкой наголо высирать кучу тормозящего говна.

Аноним 12/12/19 Чтв 14:34:25 3949591955
>>394957
Фифо обычно имеет размеры степеней двойки, НЕСПРОСТА БЛЯТЬ
cnt = wr_ptr-rd_ptr
Как то так, главное что бы разрядности поинтеров были ровно такие же как и длина фифо
Аноним 12/12/19 Чтв 14:43:29 3949621956
Я к чему вообще загнался по поводу фифо. Что у Intel, что у Xilinx корка fifo зашифрована. При этом другие стандартные корки открыты. Почему так сделано? Видимо там все не так тривиально.
Аноним 12/12/19 Чтв 15:01:54 3949721957
>>394957
>это же компаратор, мультиплексор и два субтрактора.
Причём всё, кроме мультиплексора, может вычисляться параллельно. А половина логики при синтезе автоматически оптимизируется выкидыванием повторяющихся операций, и сделает это намного лучше тебя.

>Такое фифо будет тормозить.
Нет.

>Я пытаюсь родить нечто отвечающее стандартам промышленного проектирования
Тогда в первую очередь позаботься о ясности кода и очевидности выполняемых действий.

Ну и, как было выше сказано, есть радикальное решение, хотя и не могущее в универсальность — делать вычисления по модулю степени двойки.
Аноним 12/12/19 Чтв 15:05:21 3949731958
>>394962
>Почему так сделано?
Бездны анальной оккупации.
Аноним 12/12/19 Чтв 16:48:03 3949811959
Аноним 12/12/19 Чтв 19:56:28 3950191960
Братишки, у меня к вам вопрос, можно сказать, философского характера.
Вот есть код на языке Верилог. Всем известно, что вериложный синтезируемый код - это не программа, но представление схемы в текстовом виде. И всё бы хорошо. Но теперь мы берём этот код и моделируем в каком-нибудь МоделСиме. Что в этом случае? Ведь вереложный код - это, по прежнему, не программа, т.к. машинных инструкций в нём не содержится и процессором он на прямую не исполняется, но теперь уже и не схема.
Можно ли сказать, что код на Верилоге, в этом случае, является скриптом по которому МоделСим рисует временные диаграммы?
Аноним 12/12/19 Чтв 20:01:14 3950221961
>>395019
Код на верилоге для симуляции компилируется в исполняемый файл, тогда он становится программой, исполняемой на процессоре. Симулятор сохраняет и рисует выхлоп этой программы. Это делается потому что так симуляция работает быстрее.
Аноним 12/12/19 Чтв 20:08:07 3950281962
>>395019
Вообше, скрипт — это не "программа, которая выполняется интерпретатором, а не процессором", у него другое определение.

https://ru.wikipedia.org/wiki/Сценарный_язык

Так что и при интерпретации симулятором на ходу код на верилоге — программа.
Аноним 12/12/19 Чтв 20:13:30 3950321963
Как в писать тестбенчи?
Например случай когда есть 3 входа и 3 тактовых разных сигнала.
Подаю любое (1 или 0) на один из входов и даю первую тактовую частоту пусть на 1мс, потом ее отключаю и на второй вход подаю любое число и подаю вторую частоту на 2мс, потом ее отключаю и подаю сразу первую и третью частоту одновременно на 3мс.
Как это описать?
Аноним 12/12/19 Чтв 20:40:33 3950441964
>>395032
Так тестбенчи не пишутся, потому что так железо не работает. Клоки идут постоянно, и, если требуется, к модулю прилагается сигнал clken.
Аноним 12/12/19 Чтв 21:05:36 3950481965
>>395022
В самом деле? Прям в ассемблерные инструкции переводится, прям в ехе?

>>395028
"высокоуровневый язык сценариев (англ. script) — кратких описаний действий, выполняемых системой."
Ну. Т.е. скрипт это набор команд для некой софтины, не для процессора, которая их исполняет. Пример: bat-файлы в Досе. bat-файлы содержат не инструкции для процессора, а обычный текст и выполняются не процессором, а операционкой. Тоже самое и у Верилога с МоделСимом. Хотя этот анаон >>395022 говорит что вериложный код компилируется в программу, что несколько обескураживает.
Аноним 12/12/19 Чтв 23:05:17 3950761966
>>395048
>Прям в ассемблерные инструкции переводится, прям в ехе?
Да, прям в exe. Например:

fuse work.test_bench work.glbl -prj mydesign.prj -L unisims_ver -L unimacro_ver -L xilinxcorelib_ver -o test_bench.exe

https://www.xilinx.com/support/documentation/sw_manuals/xilinx11/ism_r_running_verilog_functional_sim_cl.htm

>Ну. Т.е. скрипт это набор команд для некой софтины, не для процессора
То есть жава (не путать с жаваскриптом) это не язык программирования, а скриптовый язык? Он исполняется жава-машиной.
Аноним 13/12/19 Птн 00:59:12 3951021967
>>395076
>Да, прям в exe.
Мда уж.
https://youtu.be/LLk9_EH6Pfo

Хотя у меня строчка в МоделСиме выглядит несколько иначе.


>То есть жава (не путать с жаваскриптом) это не язык программирования, а скриптовый язык?
Я в этих ваших жаба-машинах ничего не понимаю. Но если между кодом и процессором существует некая прослойка, в виде жабы-машины, которая не компилирует этот код в процессорные инструкции, то да, такой код надо считать скриптом, по определению.
Аноним 13/12/19 Птн 05:46:38 3951111968
clk1.png 4Кб, 712x176
712x176
>>395044
Был задан вопрос как описать такое поведение, а не как оно работает и возможно ли.
Повторю вопрос - как это написать в тестбенче тактовые сигналы показаны условно и могут быть любой длительности?
Аноним 13/12/19 Птн 07:31:37 3951141969
>>395111
Используй мультиплексоры, Люк.
Аноним 13/12/19 Птн 08:10:13 3951181970
>>395114
Еще один. Как такой тестбенч написать?
При чем здесь мультиплексоры?
Аноним 13/12/19 Птн 09:02:26 3951191971
Screenshot from[...].png 19Кб, 474x599
474x599
Screenshot from[...].png 11Кб, 913x198
913x198
>>395111
>Был задан вопрос как описать такое поведение
Я в курсе. Я тебе это написал на всякий случай, потому что ты хочешь странного, а знания, которые требуются для этого, довольно базовые. Когда нуб хочет странного, то обычно он не осваивает продвинутые методы, а просто чего-то не до конца вдупляет.

А то, что тебе требуется, можно написать разными способами, я бы написал так (пикрелейтед).
Аноним 13/12/19 Птн 09:57:02 3951211972
s-l1600.jpg 140Кб, 592x542
592x542
>>395119
Спасибо, Анон! Возьми Циклон внимание на маркировку.
В шары долблюсь или у товарища Jack0v еще не было про тестбенчи, а метод синтез-конфигурация-проверка IRL как-то подзаебал.
Аноним 13/12/19 Птн 11:26:24 3951251973
>>395121
Это у китайцев была акция - 3 по цене 2?
Аноним 13/12/19 Птн 16:59:17 3951871974
>>395125
Кто бы его знал. Между некоторыми семействами есть побитовая совместимость. Очень отдаленный пример из 26.08.2003:
"С сентября 2003 Altera будет наносить двойную маркировку на микросхемы семейства Cyclone () Двойная маркировка означает, что одна и та же микросхема будет иметь два кода для заказа. Один код для коммерческого исполнения с самым высоким быстродействием и другой для индустриального со средним быстродействием."
http://web.archive.org/web/20170707023208/http://www.efo.ru/news/news.pl?a=1&idf=6&kod=Altera&page=3
Аноним 13/12/19 Птн 17:14:13 3951901975
>>395187
Что ты привёл в пример это немного не то совсем не то, но мысль я твою понял.
Тут одно исполнение, просто разное поведение в разных температурных диапазонах. В коммерческом От 0 до 60 градусов работает как -1 SpeedGrade, а вне диапазона скорость распространения сигнала снижается, но скорость стандартного SpeedGrade производитель ещё может гарантировать.
Аноним 13/12/19 Птн 17:42:02 3951951976
>>395121
>еще не было про тестбенчи
Обещал скоро начать.
Аноним 14/12/19 Суб 02:28:03 3952531977
>>395076
>Да, прям в exe. Например:

>>395102 >Хотя у меня строчка в МоделСиме выглядит несколько иначе.
Собственно вот:
>vsim -t 1ps -L rtl_work -L work -voptargs="+acc" Test
Порылся также в файлах генерируемых МоделСимом, ехе-шников не обнаружил. Может то что ты говоришь это какое-то новаторство от Хилых, или я МоделСим юзаю как-то неправильно?
Аноним 14/12/19 Суб 07:54:16 3952611978
>>395253
Всё может быть. То, что происходит под капотом, юзеру в любом случае не предназначено, так что испольняемый файл можно называть как угодно. Саму такую схему можно реализовать разными вариантами — например, сделать dll и дёргать из неё исполняемый код в виде библиотечной функции. Я даже не помню, откуда я вообще знаю, что симулятор от хилых компилирует хдл в исполняемый код. Так что если тебе хочется разобраться, придётся гуглить самому.
Аноним 14/12/19 Суб 15:39:40 3952991979
Анонче, есть кто сечёт в modelsim'e?
Разбираюсь как писать в файлы.
Системные функции, такие как $fdisplay, $fwrite, работают хорошо, но в одной книжке вычитал что modelsim поддерживает ещё и функции с посимвольной работой с файлами, наподобие как в языке С, типа передвигать указатель по файлу, писать или читать один символ, например функция $ungetc, но у меня она в файл почему-то не пишет, хотя ошибок modelsim не выдаёт. Есть мысли?
Вот код.

module WRTest();

integer FileD;
integer Code;

reg [7:0]Char = "Ж";

initial
begin
FileD = $fopen("Test.tst", "w");
//$fwrite(FileD, "так пишет");
Code = $ungetc(Char,FileD); //а так нет
$fclose(FileD);

$display(Code); //Code == -1
$stop;
end

endmodule
Аноним 14/12/19 Суб 19:24:53 3953321980
>>395299
Анончик, не еби муму.

Свали свои результаты в кучу через $fwrite, а потом разгребай их питоном, как нормальные люди.
Аноним 14/12/19 Суб 21:56:39 3953461981
Анон, чем отлаживать PCI-Express в винде?
Аноним 16/12/19 Пнд 23:17:34 3956211982
Пытаюсь работать с регистром в цикле, задавая разряды через переменную. Соснул.
Моделсим говорит
Range must be bounded by constant expressions
Как быть?
Способ я нашёл, но чёт он как то не очень.

module Suka();
reg [87:0]String = "ГОВНО, МОЧА";
reg [7:0]Symb;
initial
begin: init
integer i;
for(i = i; i < 11; i = i + 1)
begin
Symb = String[iˣ8+7 : iˣ8];
$display(Symb);
end
end
endmodule
Аноним 16/12/19 Пнд 23:19:14 3956221983
>>395621
>for(i = i;
i = 0; //Конечно же
Аноним 16/12/19 Пнд 23:21:03 3956231984
>>395621
Используй genvar / generate for
Аноним 16/12/19 Пнд 23:22:16 3956241985
>>395623
Подробнее, прошу.
Аноним 17/12/19 Втр 18:06:33 3957311986
Аноним 17/12/19 Втр 18:07:28 3957321987
>>395731
>mmap
>в винде
Тьфу ты. Только первый варик остается :(
Аноним 17/12/19 Втр 18:09:03 3957331988
>>395346
А что за девайс пилишь?
Аноним 17/12/19 Втр 18:21:39 3957341989
Можно ли в плисине поднять 20+ MAC для организации передачи по rmii на 20+внешних устройств? Без PHY.
Аноним 17/12/19 Втр 18:52:36 3957371990
>>395734
Если хватит пинов и логики тогда можно хоть 30
Аноним 17/12/19 Втр 21:02:44 3957691991
>>395737
А так мне про идее нужно 7-8 пинов на каждое внешне устройство, логику на поднятие эзернета и конвертеров mii-rmii? Никаких других ограничений нет?
Аноним 17/12/19 Втр 22:20:55 3957801992
игьз
Аноним 18/12/19 Срд 12:31:51 3958061993
>>395346
Same question. Для начала хотя бы тупая корка с парой регистров с отображением в GPIO для хуйни типа 32 бита ввод и 32 бита вывод. Платки нет, пока просто спрашиваю.

>>395734
> в плисине поднять 20+ MAC для организации передачи по rmii на 20+внешних устройств?
Backplain делаешь? Какова цель? Может проще взять говно мамонта и из SMII сделать RMII? http://openrrcp.org.ru/download/datasheets/RTL8316B_Datasheet_1.0.pdf
Сам собрался реализовывать логику работы свича, включая еблю с коллизиями хешей, вланами, обучением адресам на портах?
Аноним 18/12/19 Срд 13:36:05 3958081994
>>395769
>Никаких других ограничений нет?
Ограничения только по быстродействию этих самых пинов.

>>395806
>Same question
Ну ответил же выше.
Аноним 18/12/19 Срд 17:12:05 3958341995
изображение.png 728Кб, 1280x720
1280x720
>>395733
Секретные сведения))0)
>>395731
Спасибо, анон.
Аноним 18/12/19 Срд 17:12:15 3958351996
>>395806
>Какова цель
С наименьшими количеством линий и наибольшей скоростью не более 10мкс на перестройку передать параметры где-то 3-6 байта на 20+ устройств.
Сейчас от rmii опять отходим, потому что там передача и формирование минимального фрейма уже займет 18мкс.
Возможно SPI выберем, если там хотя бы 50мбит можно поднять.

>>395808
>Ограничения только по быстродействию этих самых пинов.
Это как?
Аноним 18/12/19 Срд 19:24:05 3958441997
>>395624
Ну же, анон.
Мне даже ни сколько циклы нужны, сколько просто работать с разрядами через переменную.
Аноним 18/12/19 Срд 20:09:28 3958481998
Аноним 18/12/19 Срд 20:21:31 3958511999
>>395835
>Это как?
У пинов влисины есть предел по максимальной частоте. У Xilinx есть разделение на HR и HP банки. Одни поддерживают больше логических стандартов, другие более высокую частоту.
Аноним 20/12/19 Птн 14:55:14 3959822000
Есть у меня один цикл в тестбенче. Почему возникает такая ошибка? Как ее обойти?
for (i = 0; i < 8; i=i+1) begin
$fwrite(packet_dump,"%h", axis_tx_tdata[i8 + 7:i8]);
end

ERROR: [VRFC 10-536] constant expression required
Аноним 20/12/19 Птн 17:17:20 3959922001
>>395982
Так я о том же спрашиваю >>395621
Вот анон ответил >>395848
Но я ещё пока не пробовал.
Аноним 23/12/19 Пнд 08:51:47 3963242002
Перекат пилить не пора? Тред уже за 2000 постов перевалил.
Аноним 23/12/19 Пнд 15:45:42 3963672003
Аноним 27/12/19 Птн 22:29:35 3966822004
Аноним 28/12/19 Суб 13:46:02 3967242005
>>396682
А чем он лучше остальных?
Аноним 30/12/19 Пнд 19:38:09 3969352006
Анон, скинь пожалуйста статей по использованию IP-ядер и как с ними взаимодействовать по AXI, а то либо я слепой, либо статей нормальных нету. Но скорее тут второе.
Аноним 02/01/20 Чтв 08:41:42 3971142007
Аноним 07/01/20 Втр 10:02:41 3977682008
Настройки X
Стикеры X
Избранное / Топ тредов