Перейти к содержанию

    

Моделирование Active-HDL

Добрый день.

Решил освоить Active-HDL. Версия 10.1.

И почему то не выходит получить результаты моделирования при задании входных воздействий с помощью testbench на VHDL. В окне waveform нет результирующих выходных сигналов, точнее они неизвестны.

Вот если задать сигналы на входы встроенными стимуляторами, то все ок, сигналы на выходах вижу, а с тестбенчем нет.

 

Вот например простой код трехвходового "И":

 

library IEEE;
use IEEE.STD_LOGIC_1164.all;

entity test_and is
     port(
         X1 : in STD_LOGIC;
         X2 : in STD_LOGIC;
         X3 : in STD_LOGIC;
         Y : out STD_LOGIC
         );
end test_and;

architecture test_and of test_and is
begin

Y <= X1 and X2 and X3;    
    
end test_and;

 

Вот листинг testbench:

 

library ieee;
use ieee.std_logic_1164.all;

entity test_and_tb is
end test_and_tb;

architecture TB_ARCHITECTURE of test_and_tb is
    component test_and
    port(
        X1 : in STD_LOGIC;
        X2 : in STD_LOGIC;
        X3 : in STD_LOGIC;
        Y : out STD_LOGIC );
    end component;

    signal X1 : STD_LOGIC;
    signal X2 : STD_LOGIC;
    signal X3 : STD_LOGIC;
    signal Y : STD_LOGIC;

begin

    UUT : test_and
    port map(
                X1 => X1,
                X2 => X2,
                X3 => X3,
                Y => Y
              );

process
begin
    for i in 0 to 10 loop 
        X1 <= '0'; wait for 50 ns;
        X1 <= '1'; wait for 50 ns;
    end loop;
end process;        

process
begin
    for i in 0 to 10 loop 
        X2 <= '0'; wait for 120 ns;
        X2 <= '1'; wait for 120 ns;
    end loop;
end process;                  

process
begin
    for i in 0 to 10 loop 
        X3 <= '0'; wait for 310 ns;
        X3 <= '1'; wait for 310 ns;
    end loop;
end process;        

end TB_ARCHITECTURE;

configuration TESTBENCH_FOR_test_and of test_and_tb is
    for TB_ARCHITECTURE
        for UUT : test_and
            use entity work.test_and(test_and);
        end for;
    end for;
end TESTBENCH_FOR_test_and;

 

На картинке результат моделирования, значение выхода Y не определено.

 

 

 

 

post-18791-1462519425_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да уж, интересный эффект. Попробовал воспроизветси - так и есть. Почему-то после нажатия "Initialize simulation" (команда asim) тестируемый модуль test_and исчезает из иерархии в окне "Design Browser" (как если бы он был соптимизирован).

Любопытства ради попробовал в Active HDL 9.1 - всё адекватно, ничего не исчезает, waveform рисуется. Даже сравнил выводимые консольные логи двух версий (Active HDL 9.1 и 10.1) - никакой разницы.

 

Уж не знаю как у других, но у меня как-то с версией 10.1 не сложилось. Как-то постоянно с ней были какие-то проблемки, непонятности, частенько падала. Поэтому продолжаю работать в 9.1. Но это ИМХО.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Понятно. Вообщем нужно попробовать 9.1 поставить.

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Уж не знаю как у других, но у меня как-то с версией 10.1 не сложилось.

Могу сказать что у меня тоже с этой версией были проблемы,перешёл на 10.3,вроде получше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решил попробовать Active-HDL 10.3 64-bit version из нашего ftp. Взял старый проект для Сyclone II, написанный на VHDL. Запустил компиляцию. Active-HDL ругнулся на отсутствие библиотеки lpm. Подключил её, запустил моделирование с помощью Accelerated Waveform Viewer. На диаграмме видны только внешние сигналы, прописанные в тестбенче. Ни одного внутреннего сигнала даже выбрать не откуда. Никаких warning нет :( . Это Active-HDL 10.3 64-bit такая или я забыл что-то подключить(настроить)?

В Active-HDL 9.3 всё нормально.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Понял. Старые проекты пусть остаются Active-HDL 9.3. А новый уже буду на Active-HDL 10.3 64-bit делать или к тому времени уже следующие версии появятся :) . Я вот ещё что подумал, может как-то разрядность влияет? Active-HDL 9.3 ведь вроде 32-bit.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация