Корректно ли использовать логические операторы в VHDL , типо and , or , xor вне процесса. Компилируется то оно компилируется , а с задержками может быть беда ?
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Если вы на этих and, or, xor не пытаетесь создать регистры, то не вижу смысла заботиться о задержках. Хотя, надо понимать, что задержки будут в любом случае и их величина зависеть будет от того, в сколько макроячеек (для CPLD) эта логика уложится. Если это критично - PostFit симуляция для проверки.
А так это нормальная практика, по моему. В процессе крутятся счетчики, а на выход идут результаты этих счетчиков через небольшую логику.
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Не в тему задержек. Если вдруг Вам приспичит проверять синтез в том же моделсиме, а проверяемая конструкция будет иметь вид
Код:
D1:name_component PORT MAP( clk=>clk, A=> Ain, B=>sign1 and sign2, C=>sign3 or sign5, D=>sign4 xor sign2 and sign5)
то данная конструкция не отработается, хотя среда проектирования (например квартус) ее вполне переварит.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Всем привет. Почему моделирование прошивки в ISim , ISim больше 1.26 Us не позволяет. Останавливает моделирование.
Как можно вылечить данный недуг ?
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
На сайте http://outputlogic.com/?page_id=27 сгенерировал vhdl код CRC8 для полинома 0x31, работает, что у меня неправильно не понимаю (((((
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
У меня так: crc <= (crc(0) xor datain) & crc (7 downto 5) & (crc(4) xor crc(0) xor datain) & (crc(3) xor crc(0) xor datain) & crc(2 downto 1); Короче, там где XOR с последним битом, там еще нужен XOR с входными данными тоже
Последний раз редактировалось uldemir Вт окт 15, 2013 17:23:20, всего редактировалось 1 раз.
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Товарищи коты, такой вопрос. Впринципе знаю вхдл довольно неплохо (как мне казалось). Но тут наткнулся на вот такую дурацкую штуку а именно: есть 2 вектора А : std_logic_vectrjr(7 downto 0) и В : std_logic_vectrjr(3 downto 0). И надо мне вот чё : A(7 downto 0) <= B(0 to 7); На такую запись компилятор ругается, присвоение векторов в заданном изначально направлении ему подавай! Вот я и задумался, а как так сделать то, что б за один такт? Можно конечно написать : А(0) <= B(7), A(1) <= B(6)..... Можно и так A <= B(7) & B(6) & B(5)... Но эт хорошо, если битов 8 а если 128? Есть конечно всякие операторы сдвигов и т.п. но что там компилятор наразводит реализуя их использовании я не знаю.... Вот может кто подскажет?
for I in 7 downto 0 loop A(I) <= B(7-I); end loop;
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Вот в чём весь и прикол. ОТДЕЛАЕШЬСЯ один тактом. Я раньше тоже не понимал. Тут for .... loop , это не тот for как допустим в си/с++ . В данном случаем компилятор VHDL из :
Код:
for I in 7 downto 0 loop A(I) <= B(7-I); end loop;
Есть неплохая книжка. Называется FPGA Express, там про это написано.
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
хм... я как то использовал (давно) эту конструкцию и готов биться об заклад что выполняется она по тактам... или может я что то забыл... Вообщем сейчас промоделирую. За книжку отдельное спасибо
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Ну что ж, dimitriy91, ModelSim показал, что эту битву ты выиграл, НО ВОЙНА ЗА МНОЙ Всё действительно нормально работает, просто loop использую только в TEST_BENCHах не особо замарачиваясь над тем как он там выполняется... Вообщем спасибо, теперь усвою
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
День добрый. Посоветуйте порядок действий перепрошивания плисины.
Плис не новая, и в ней уже имеется прошивка. Я подкорректировал проект, и снова залил прошивку в плис. С тех пор она какую то бредятину показывать стала. (запрыгали сигналы на тех пинах, где их не должно быть, и все пины перепутались.) Хотя прошивка самой плисины работает как надо (правильно суммирует и подает в нужной последовательности импульсы)
Начнём с того, что в ПЛИС прошивка храниться не может. А то, что пины не тезапрыгали, то надо в PlanAhead правильно всё указать. Какой производитель ПЛИС , хотя бы сказали ?! Я так понял речь идёт о старом стенде ?
_________________ "Ленивый человек в бесчестном покое сходен с неподвижною болотною водою, которая, кроме смраду и презренных гадин, ничего не производит". М.В. Ломоносов
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения