В приведённом вами даташите явно показано, что 4017 состоит из счетчика джонсона, а не просто сдвиговых регистров. Таким образом, там за такт перекидывается только один регистр, а не 2.
Схема в даташите слишком замудреная, особенно если нужно расширить счетчик. Подумал, что может есть готовое решение, оптимизированное под FPGA, но не нашел. Не понятно, что не нравится симулятору – клок подается на все регистры одновременно! В общем, остановился на таком варианте…
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Решил с целью повышения образованости поизучать ПЛИС. Ну и первый вопрос: зачем нужен редактор для xHDL, если все можно нарисовать в схемном редакторе?
Заголовок сообщения: Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Добавлено: Сб мар 25, 2017 20:16:04
Родился
Зарегистрирован: Пт мар 08, 2013 20:35:21 Сообщений: 9
Рейтинг сообщения:0
Добрый день коты. Изучаю vhdl. Столкнулся с такой проблемой. Есть массив, допустим с именем pack_in из сигналов std_logic_vector (7 downto 0) При попытке сравнить ячейку массива с числом в конструкции if
А Вы уверены, что компилятор именно на эту строку ругается? И если да, то точно ли у Вас имеется элемент массива под номером 7? И опять таки, если да, то какие у Вас там библиотеки подключены? И че вообще компилятор то пишет?
Заголовок сообщения: Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Добавлено: Пн мар 27, 2017 19:25:11
Родился
Зарегистрирован: Пт мар 08, 2013 20:35:21 Сообщений: 9
Рейтинг сообщения:0
Ругается точно на эту строчку. Если этот маленький блок if закоментить то компиляция проходит без ошибок.
if (pack_in(7) = х"FF") then arp_flag <= '1'; end if;
Ошибку выдает - near text ""; exprcting ")" or ","
библиотеки USE ieee.std_logic_1164.all; USE ieee.std_logic_arith.all; USE ieee.std_logic_unsigned.all; USE ieee.numeric_std.all;
Может быть запись сравнения с ячейкой как-то криво записана. Может вбще нельзя с ячейкой сравнивать, а надо перписать значение в отдельную переменную? И сравнивать с переменной.
Добавлено after 1 hour 33 minutes 3 seconds: Вообщем действуя методом тыка объявил x"FF" как переменную и сравнивал уже с ней if (pack_in(7) = arp_ff) then так проходит, что странно. По идее компилятор не должен видеть разницы в этих записях, однако видит
библиотеки USE ieee.std_logic_1164.all; USE ieee.std_logic_arith.all; USE ieee.std_logic_unsigned.all; USE ieee.numeric_std.all;
Тут может быть явный конфликт библиотек. В обычной жизни (особенно под квартус) достаточно всего двух: use ieee.std_logic_1164.all; use ieee.numeric_std.all; logic_arith всегда конфликтовал с нумерик. Так что оставьте только необходимые библиотеки
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Заголовок сообщения: Re: Мелкие вопросы по ПЛИС ( FPGA/CPLD ) и прошивки на них
Добавлено: Вс апр 02, 2017 22:46:55
Родился
Зарегистрирован: Пт мар 08, 2013 20:35:21 Сообщений: 9
Рейтинг сообщения:0
Грендайзер писал(а):
Попробуйте закомментить строку USE ieee.numeric_std.all;
Тогда я массивом не смогу пользоваться по идее.
Meteor писал(а):
Тут может быть явный конфликт библиотек. В обычной жизни (особенно под квартус) достаточно всего двух: use ieee.std_logic_1164.all; use ieee.numeric_std.all; logic_arith всегда конфликтовал с нумерик. Так что оставьте только необходимые библиотеки
Ясно. Остальные библиотеки это для операции сложения std_logic_vector. Вроде как он почему-то не может складываться напрмую и надо конвертировать в integer, складывать и конвертировать обратно.
А по поводу ошибки. Обозначил нужное число за переменную, сравниваю с ней, вроде не ругается. variable arp_ff: STD_LOGIC_VECTOR (7 downto 0):= x"FF";
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Мсье знает толк в подколах А если серьёзно, то когда я разбирался с верилогом, то поразился тому факту, что инициализация многомерных массивов, вообще говоря в стандарте как таковая не прописана. В качестве учебной задачи, хотел написать генератор синуса. Так вот если у вас там не какой то аппаратный блочёк типа блочной памяти или что то в этом духе, то способ его инициализации, будит сильно зависеть от средств синтеза. Тот же Synplify к примеру, инициализирует такие массивы с помощью текстового файлика (причём помоиму исключительно командой $readmemb). Для меня в своё время это показалось какой то дикостью. Это после VHDL, в котором работа с подобными вещами продумана достаточно хорошо, начиная с инициализации и заканчивая доступом к единичному элементу. Впрочем насколько я понял в SV этот недуг отсутствует.
1)Есть ли у ножек Cyclone 4 да и других моделях токо-ограничивающие резисторы и где вообще можно эту информацию увидеть ? 2)Где можно вообще посмотреть информацию, к каким ножкам подключать питание и прочую "обвязку", для работоспособности ПЛИС ?
Сильно пожалуйста не пинайте за вопросы, я совершенно не разбираюсь в этом ....
1)Есть ли у ножек Cyclone 4 да и других моделях токо-ограничивающие резисторы и где вообще можно эту информацию увидеть ?
Токоограничивающих резисторов нет, есть возможность при назначении вывода указать/выбрать максимальный ток. Но там есть нюансы связанны с максимальным током банка.
Sebastyan писал(а):
2)Где можно вообще посмотреть информацию, к каким ножкам подключать питание и прочую "обвязку", для работоспособности ПЛИС ?
Саму информацию о назначении выводов можно смотреть тут, выбрав нужную ПЛИС.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Токоограничивающих резисторов нет, есть возможность при назначении вывода указать/выбрать максимальный ток. Но там есть нюансы связанны с максимальным током банка.
Это в самом Квартусе ? Если не сложно, не могли бы Вы в самых общих чертах подсказать пожалуйста, что за ньюанс такой связанный с максимальным током банка ?
Да, в самом квартусе, точнее в пинпланере. Что касается ограничения по току, то допустим есть возможность указать максимальный ток одного вывода 24 мА. В банке, допустим 20 выводов, и вдруг нам захотелось каждому выводу назначить 24 мА. Получим 480мА. Ограничения самого банка при этом 200 мА, получается перебор.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения