Jump to content

    

andrew_b

Свой
  • Content Count

    2250
  • Joined

  • Last visited

Everything posted by andrew_b


  1. Написано же: Никто не хочет сопровождать эту тему, вот и удалили.
  2. В вендор-специфичных релизах ModelSim Altera Edition и ModelSim Xilinx Edition было (есть?) много ограничений. В том числе нет поддержки mixed design.
  3. В первом же сообщении всё написано. Надо освобождать занятые ресурсы.
  4. А если сэмулировать стандарт по умолчанию? set_property IOSTANDARD LVDS_25 [get_ports *] А потом переопределить для конкретных ног?
  5. Да оно и сейчас с begin странно выглядит. Где логика размещения метки оператора именно в этом месте? Не перед, не после, а где-то в середине. Не, действительно, Верилог придумывали, находясь под воздействием какой-то дури.
  6. Дадада, а нам простоянно рассказывают сказки, что Верилог на Си похож.
  7. Моделсим не является встроенным симулятором у кого бы то ни было. Это отдельный продукт.
  8. На самом деле нет. Это зависит от кодирования состояний. Вы же понимаете, что в железе никакого перечислимого типа нет, там он представляется многоразрядным сигналом. И преобразовать перечислимый тип в двоичное представление можно по-разному. Либо вы это отдаёте на откуп синтезатору и он определяет лучший по его мнению вариант, либо сами вы указываете синтезатору, какой способ кодирования применить. При one-hot-кодировании число возможных комбинаций гораздо больше, чем 2 в степени. Другое дело, что в симулятоне этого не видно.
  9. Вообще-то всё начинается как-раз с Моделсима. Задолго до Квартуса. И если что-то автоматизировать, так это создание списка файлов именно для квартусовского проекта.
  10. Не просто двух байт, а двух байт этой самой CRC. И не просто двух байт CRC-16, а сначала младший, а потом старший. Получишь-получишь.
  11. Это Верилог, коллега. Привыкайте.. Тут многое через одно место сделано. Всё, что формируется в блоке always, долно иметь тип reg. Независимо от типа присваивания. Всё, что формируется через assign, долно иметь тип wire, и используется только блокируещее присваивание. В каком состоянии сознания были те, кто так решил, теряется во тьме истории. VHDL обходится безо всего этого маразма и прекрасно себя чувствует.
  12. Да ладно. С каких это пор в always нельзя использовать неблокирующее присваивание?
  13. Вот зачем нужны такие комментарии? Автор же ясно написал: Spartan. При чём тут Альтера? Если ответа нет, то лучше не писать ничего. Для того чтобы получит bin, Impact не нужен. bin делает bitgen при наличии нужной голочки.
  14. Название собственной темы забыли?
  15. Не использовать блокирующие присваивания в межпроцессных взаимодействиях?
  16. Я стесняюсь спросить, а соответствующие констрейны написаны?
  17. Очевидно, просто так взять и скомпилировать сложный проект нельзя. Если вы используете прямое инстанцирование модулей, то важен порядок компиляции файлов. Если вы используете пакеты, путь даже они и компилируются в work, то также важен порядок компиляции файлов. Если вы используете нестандартные библиотеки, то они должны быть известны компилятору.
  18. Зря вы так думаете. always @(posedge i_core_clk or posedge i_cs) begin if(i_cs) counter <= 3'd0; else i_cs ни разу не синхронен i_core_clk. Тут надо или переносить i_cs и i_clk на i_core_clk, если частота позволяет, или принимать на i_clk, а по окончании приёма перенести принятое на i_clk.
  19. Понятия не имею. Изучайте компилятор, с которым работаете.
  20. gcc -E, например.
  21. Вы знаете, что такое препроцессор в языке Си?
  22. Переведите на русский.
  23. Надо смотреть результат работы препроцессора. Там должно быть всё видно, что где определено, что где включается и т. д.