Jump to content

    

maksim.maneyev

Участник
  • Content Count

    21
  • Joined

  • Last visited

Community Reputation

0 Обычный

About maksim.maneyev

  • Rank
    Участник

Recent Profile Visitors

1277 profile views
  • IEC

  1. В Даймонде для XO2 синтезируется начиная с версии 3.5 (для VHDL проверено и работает).
  2. В ISE можно использовать SmartGuide, он как раз для таких случаев предназначен. По опыту, можно прилично ускорить сборку если много времени теряется на этапе MAP и PAR и в проекте изменилось не более 5-10% max (иначе тайминги не сойдутся). К синтезу он отношения не имеет, так что можно и precision использовать. Вы просто указываете ncd файл, и во время имплементации ISE не создает все заново, а изменяет в существующей версии то, что поменялось.
  3. encoding system cp1251 Я в каждый do-file обычно пишу, но можно просто в консольке ввести
  4. В ISE в process properties для Generate Programming File есть вкладка readback options, там можно отключить.
  5. Нет, насколько я понимаю. Там jtag'а нет, а только SPI и по нему можно только загрузить конфигурацию (или прошить встроенную OTP память)
  6. У xilinx примитивы определены в unisim... Попробуйте запустить поиск по *.vhd файлам в папке этой самой iCEcube
  7. Во всех процессорах с которыми я работал приходилось настраивать входной клок. Т.е. изначально проц запускается от внутреннего генератора, потом нужно программно выбрать источник клока (генератор или кристалл), настроить значения делителя и умножителя для каждой PLL, включить PLLи, подождать пока они залочатся, настроить делители частоты для периферии, и затем уже включить тактирование от PLL. Да и как может быть по-другому, откуда производитель процов знает от какой частоты вы тактируетесь, и на какой частоте хотите работать. :rolleyes: :rolleyes: Другое дело, что если вы работаете в какой-то IDE и ее разработчики уже позаботились о вас... :laughing: Xilinx тоже по умолчанию запускается от внутреннего генератора и обычно внешняя частота успевает стабилизироваться пока он грузится. Кстати, в Xilinx можно выбрать в настройках, чтоб GSR выдавался только после того, как все PLL залочатся
  8. Делать текстовый top-level и включать в него ваши модули как компоненты. Vivado это позволяет.
  9. Чтоб сделать IP-блок ye;yj выбрaть tools->PackageIP. Но, если вы собираетесь делать весь проект самостоятельно, я бы посоветовал не использовать block design вообще, а делать проект как обычно. P.S. IP-core в block design это не символ в schematic top-level, а упакованное ip-core (как например corgen'овские ядра), настройки которого делаются обычно через его gui (как в corgen'е). В Vivado каждое такое ip-core это отдельный проект, т.е. порядок такой: 1.создаете отдельный проект, вводите код, симулируете 2.когда готово, упаковываете как ip 3. повторяете 1,2 для всех ядер, которые нужны 4. создаете проект, в котором будут использоваться эти ядра 5. в этом проекте подключаете репозиторий, в котором лежат ip-ядра 6. создаете block-design и в нем рисуете ваш проект с этими ядрами
  10. Тоже смутно припоминаю что-то подобное. Можно попробовать задать тип "00" явно с помощью квалификатора или определить как константу нужного типа.
  11. alias slv is std_logic_vector; в подключаемом пакете. В общем генератор тестбенчей честно говорит, что нельзя объявлять алиасы на неограниченные массивы, хотя симуляция, синтез и имплементация проходят нормально. Честно говоря, не смотрел что стандарт говорит по этому поводу - обычно я просто закомментариваю эту строчку в пакете перед тем, как сгенерировать тестбенч, а потом убираю комментарий. :rolleyes: :rolleyes: :rolleyes:
  12. А у меня нормально такое проходит - ну кроме того, что в testbench все такие порты объявляются как std_logic. У меня тестбенч не генерируется когда в тестируемом модуле сигналы объявлены с использованием алиасов. ...это так, к слову...
  13. Я предлагаю взять шаблон из Vivado или xapp1168, сделать на основе его свой axi master, в mig'е добавить еще порт и подключить этот мастер к нему. Под шаблоном я понимаю verilog или vhdl файл.