

Nagisa
Свой-
Content Count
67 -
Joined
Community Reputation
0 ОбычныйAbout Nagisa
-
Rank
Участник
- Birthday February 3
Информация
-
Город
Array
Recent Profile Visitors
-
Имопрт нетлиста из CAD Pulsonix в Quartus
Nagisa replied to Nagisa's topic in Языки проектирования на ПЛИС (FPGA)
короче сделал сам http://metalink2.com/quartus/conv.php на вход - нетлист по ПЛИС из Pulsonix на выход - QSF -
MrBearManul started following Nagisa
-
Есть разработанный проект с ПЛИС в Pulsonix из него можно экспортировать нетлист по компоненту - те по ПЛИС к примеру соответственно есть желание как-то это импортнуть в квартус дабы не описывать кучу ног с сигналами - максимум проставить направления кто-то этим занимался ? какие есть для этого средства ?
-
см выше есть код. дребезг устранен. значение work_mode выведено на индикатор. похоже я понял, что именно происходит - вырезка из кода initial begin work_mode <=4'h0; step_key <=0; end // реакция на кнопки reg [3:0] step_key; always @ (posedge CLK10 ) begin if (~KEY[1]) // режимы begin if (step_key ==4'hF) begin work_mode <= work_mode +1; CT [39:36]<= work_mode[3:0]; step_key <=0; end else begin step_key <=step_key+1; end end в этой реализации при старте на индикаторе 1 и при этом согласно if-a в work_mode=0 получается, что участок work_mode <= work_mode +1; CT [39:36]<= work_mode[3:0]; имеет собственное значение work_mode=1, что в принципе логично. иначе говоря work_mode существует одновременно в двух ипостасях - одна с work_mode в чистом виде и другая work_mode+1 вопросу куда будет "прицплен" узел сравнения определяет логика которая в исходном коде у меня была нарушена те чистый work_mode оказался внутри а тот что work_mode+1 - снаружи и поступал на узлы сравнения (if-ы), как следствие и странный результат введение initial - переключило эту логику на правильную
-
я понимаю, однако есть кнопка с помощью которой я могу изменять значение if (~KEY[1]) // режимы begin if (step_key ==0) begin work_mode <= work_mode +1; CT [39:36]<= work_mode[3:0]; step_key <=1; end else begin step_key <=step_key+1; end end соответственно я проверил, что все проверки "if (work_mode== ' срабатываю как будто там значение на единицу больше условие "if (work_mode==0)" срабатывает при фактическом значении work_mode=4'hF да, если есть возможность дать рекомендацию по литературе, где описано как правильно делать была бы в тему.
-
походу нашел странный глюк использую связку Quartus 64bit 13.0.1 SP1+ Cyclone II EP2C8Q208C8 код - cделал вырезку, в ней глюк сохранятся // // переключение режимов reg [31:0] div10; reg CLK10; always @ (posedge CLK) begin if (div10 == 2400000) begin CLK10 <= 1; div10 <= 0; end else begin div10 <= div10+1; CLK10 <= 0; end end // reg [3:0] work_mode; // режимы работы комплекса // реакция на кнопки reg [3:0] step_key; always @ (posedge CLK10 ) begin if (~KEY[1]) // режимы begin if (step_key ==0) begin work_mode <= work_mode +1; CT [39:36]<= work_mode[3:0]; step_key <=1; end else begin step_key <=step_key+1; end end if (work_mode==0) begin DOTPOZ <=1; end else begin DOTPOZ <=6; end //CT [39:36] <= work_mode[3:0]; //CT [15:0] <= RD_CHECK[15:0]; //CT [35:16] <= addrramreadstream [19:0]; end // индикатор reg [3:0] DOTPOZ; // позиция точки 1234567890 reg [39:0] CT ; din40 dinamicind ( .CLK(CLK), .DIG(DIG), .SEG(SEG), .CT(CT), .POZ(DOTPOZ) ); проблема связана с переменной work_mode в данном коде, при старте она равна 0, однако, все проверки "if (work_mode==0)" считают что она равна 1 - те любой if обнаруживает значение больше на 1 чем там есть реально. на индикатор значение выводится верно. собака зарыта в месте присвоения CT [39:36]<= work_mode[3:0]; те если это в блоке вверху, то см эффект выше если перенести (раскоментировать/закоментировать) в блок внизу - 0 становится нолем итд итп блок динамического индикатора нужен для проявления глюка - те если его выключить, глюк пропадает. соответственно приложил код динамического индикатора. что там такого неправильного ? с чем связан данный глюк ? (на самом деле я ловил другой глюк и нашел этот случайно) как избежать подобного ? может что-то я делаю не так ? din40.v
-
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
да, i2c у DACx3608 портит картину, но думаю стоит рассмотреть и такой вариант нет - MPT57571B добыть не получилось (а колупать мониторы для этого как-то глупо, надо же новые детали для тиража) тестирование показало, что достаточно gain/offset к примеру какой ЦАП и ПЛИС посчитаны ? -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
в нем нет необходимости, тем более что цвет внутри системы 16bit - те если потом захочется, можно сделать -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
да я уже предельно четко обозначил - одновременно выводить аналоговую информацию на большое количество каналов, исходник - цифра нужен многоканальный ЦАП типа старых "SOURCE DRIVER FOR COLOR TFT LCD " просто не надо включать режим: "ТС-дурак - я придумаю как это сделать по-другому" -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
стоимость канала DAC c узлом формирования (1/2 операционника, транзистор, резисторы и конденсаторы) получается $0,080 если посчитать всё включая ПП (cборку,плис, разъемы, обвязку, узел калибровки) то канал стоит $0,1353 ничего подобного. я просто объяснил на пальцах почему ШИМ не катит. не надо додумывать. -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
можно несколько вопросов - как у него с нолем ? не плавает ? повторяемость - те все каналы Dac60096 идентичны ? а между другими Dac60096 - тоже все сходится или есть девиация ? какие к примеру ? если ставить фильтр то попадем в ловушку разброса параметров фильтров, те будет потеряно основное преимущество цифры - это дешевая повторяемость результатов -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
рука-лицо вот четко задал вопрос - так нет, только один ответил близко к теме. один вариант реализации уже есть и работает, я прорабатываю альтернативы. для понимания, почему все виды ШИМ-а не прокатят - попробуйте вот на такой игрушке получить полноцветную картинку при помощи ШИМ https://radioskot.ru/forum/9-2183-1 к задаче это отношения не имеет, но для понимания в самый раз -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
повторю - шим не пригоден. нужен аналог. вот зачем тратить время на агитацию за ШИМ ? -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
я понимаю, что во многих случаях можно обойтись ШИМ-ом, но этот случай увы исключение. многоканальность только увеличит затраты ибо каналов надо 3000+ соответственно прошу таки подсказать какие современные аналоги MPT57571B доступны на рынке -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
была такая мысль, но я хочу минимизировать рассыпуху да и два резистора в комплект тк на вход тоже ток, который преобразуется в напряжение резистором собственно вопрос в том, что нутром чую, что есть еще куда минимизировать и хочу проработать все варианты реализации -
Ищу сильно многоканальный ЦАП
Nagisa replied to Nagisa's topic in Цифровые схемы, высокоскоростные ЦС
да