Ошибка компиляции в Vivado

Я скачал бесплатный веб-пакет Vivado и попытался смоделировать такой простой проект:

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity async_RS_trig is
    Port ( R : in  STD_LOGIC;
           S : in  STD_LOGIC;
       Q : out  STD_LOGIC;
       nQ : out  STD_LOGIC);
end async_RS_trig;
architecture async_RS_trig of async_RS_trig is
    signal bQ,nbQ : std_logic;
begin
    bQ <= R nor nbQ;
    nbQ<= S nor bQ;
    Q   <= bQ;
    nQ  <=  nbQ;
end async_RS_trig;

Когда я нажимаю Запустить симуляцию, Vivado пытается скомпилировать этот код, и я получаю сообщение об ошибке:

ERROR: [XSIM 43-3409] Failed to compile generated C file       xsim.dir/async_RS_trig_behav/obj/xsim_0.c.

Но код правильный, я попытался смоделировать пустую архитектуру и получил ту же ошибку. Что мне делать, чтобы это исправить?

Спасибо! С Уважением


person Serhii Cookie    schedule 10.09.2014    source источник
comment
Я искал и нашел только одну ссылку на эту ошибку, без окончательного ответа, где могла быть проблема с установкой Vivado на платформе Windows. Если вы найдете ответ, ответьте на него самостоятельно, чтобы он был записан здесь.   -  person    schedule 12.09.2014
comment
Это ошибка только моделирования или есть проблема с синтезом в этом коде? Возможно, ошибка находится за пределами этого модуля, например. в его реализации. Вы также можете попробовать добавить задержку к bQ <= R nor nbQ, как это bQ <= transport R nor nbQ after 1 ns;. Единственный способ найти решение для такого рода ошибок - это поиграть со своим кодом, прокомментировать и раскомментировать строки или модули и, возможно, попробовать различные инструменты, такие как синтез, questa sim, ghdl, ... Последний вопрос: используете ли вы новейшую версию Vivado выпуск 2014.2?   -  person Paebbels    schedule 12.09.2014
comment
Да, пробовал переустановить Вивадо. Да, я использую Vivado 2014. 2. Синтез проходит без ошибок. У меня были еще одни необъяснимые ошибки, когда я пытался использовать Xilinx ISE в Windows 8, но ISE не поддерживался в Windows 8.1. Я пытаюсь изменить код, пробовать пустой дизайн, когда я делаю синтаксическую ошибку, я получаю сообщения об этом. Мой последний вариант про Windows 8.1, но я стараюсь заняться чем-нибудь другим :)   -  person Serhii Cookie    schedule 12.09.2014


Ответы (2)


Пожалуйста, переименуйте свою архитектуру в 'rtl' или как-нибудь еще, но не используйте имя объекта в качестве имени архитектуры снова.

Ответ на комментарий 1:

В моделировании используются 2 процесса, в случае iSim это:

  1. YourTestbench _isim_beh.exe
  2. Графический интерфейс симулятора (isimgui.exe)

Ваши исходные файлы переводятся в исходные файлы C, которые затем компилируются и связываются с исполняемым файлом. Вы можете запустить этот * .exe файл в интерактивном, (tcl) пакетном или графическом режиме. Если вы вызываете этот * .exe с -gui, графический интерфейс симулятора запускается и подключается к YourTestbench _isim_beh.exe через TCP (межпроцессное взаимодействие на основе TCP - IPC).

Обычно ваш персональный брандмауэр должен запрашивать разрешение isimgui.exe на подключение к любому порту на локальном хосте.

Поскольку вы используете Vivado и xSim, вы должны предоставить это разрешение на подключение процессу графического интерфейса Vivado.

Эта проблема возникнет также для аппаратного сервера (hw_server).

person Paebbels    schedule 12.09.2014
comment
Нет, это не решение. Проблема была в программном обеспечении Comodo и антивирусном ПО. Я выключил. Моделирование зашло еще дальше, но я получаю новую ошибку :) FATAL_ERROR: PrivateChannel: Ошибка подключения к сокету сервера. ОШИБКА: [Simtcl 6-50] Механизм моделирования не запускается: Моделирование завершено с кодом состояния 4. - person Serhii Cookie; 13.09.2014
comment
IEEE Std 1076-2008, 13.1 Единицы проектирования, параграф 5 Каждый первичный модуль в данной библиотеке должен иметь простое имя, уникальное в пределах данной библиотеки, и каждый элемент архитектуры, связанный с данным объявлением объекта, должен иметь простое имя, которое является уникальным. в наборе имен тел архитектуры, связанных с этим объявлением объекта. 3.3.1 Общие положения, параграф 3. Идентификатор определяет простое имя тела архитектуры; это простое имя отличает тела архитектуры, связанные с одним и тем же объявлением объекта. Простые имена архитектуры находятся в другом пространстве имен. - person ; 22.06.2015

Решено. Вот несколько шагов, которые вы должны проверить:

  1. Я не знаю насчет диска, но имя каталога не содержит запятых и может быть еще одним плохим символом :). Лучшая папка для установки - C: \ xilinx :)
  2. Полностью удалите Comodo internet security, потому что выключение не помогло и дало еще несколько неприятностей.
  3. Я читал о включении папок Xilinx, Xilinx license и Projects в исключения антивируса, но я этого не делал

Надеюсь, это кому-то поможет :)

person Serhii Cookie    schedule 13.09.2014
comment
О, проблема с установочной папкой ... Я использую ISE с 9.1, и всегда были проблемы с именами папок и файлов, которые не соответствуют схеме именования DOS 8.3. Начиная с ISE 14.7, большинство инструментов исправлено, но у некоторых все еще есть проблемы с пробелами в именах. Иногда также возникают проблемы с жестко запрограммированными именами папок ... поэтому C: \ Xilinx - лучшее решение. Это также верно для Altera, QuestaSim, ModelSim и других. - person Paebbels; 13.09.2014
comment
Да, я слышал о проблеме с папкой в ​​ISE, но думал, что у Vivado такой проблемы нет :) - person Serhii Cookie; 14.09.2014
comment
Проблема всегда в том, что у вас есть место в имени каталога, эта проблема была решена в предыдущей версии Vivado, но снова появилась в 2014.4. Проблема в том, что ваш параметр% USERPROFILE% содержит пробел или недопустимые символы. Ознакомьтесь с xilinx.com/support/answers/62444.html - person FarhadA; 15.01.2015
comment
Спасибо. Вы правы насчет пробелов, но у меня тоже были проблемы с пробелами. Помимо имени каталога у меня были проблемы с Comodo. Может, сейчас исправили ... - person Serhii Cookie; 15.01.2015