реклама на сайте
подробности

 
 
> Не работает схема верхнего уровня, Помощь в освоении VHDL
призрак
сообщение May 8 2018, 11:31
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 12-12-06
Из: Москва
Пользователь №: 23 439



День добрый всем.
Не пинайте сразу, только начал освоение VHDL, а спросить не у кого.
Работаю в Active HDL 10.2.

Проблема такая : создал компонент - синхронный счетверённый Д-триггер с общим клоком, всё компилируется и работает.
Создаю в том же проекте другой компонент - в основе тот-же 4-Д-триггер с обвеской простой логикой - всё компилится, но при симуляции - неопределённое состояние выходов, т.е. не работает.
В чём может быть ошибка? вроде же создают многокомпонентные схемы? или надо другой проект создавать и в него добавлять компонент?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Flip-fl0p
сообщение May 11 2018, 09:39
Сообщение #2


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Запустил на Modelsim
1. Пока не убрал слеши из названия модулей не работало.
Теперь файлы регистра выглядит так:
CODE
library ieee;
use ieee.std_logic_1164.all;

entity DFF_aclr is
port
(
D0,D1,D2,D3 : in STD_LOGIC;
CLK : in STD_LOGIC;
RS0,RS1,RS2,RS3 : in STD_LOGIC;
Q0,Q1,Q2,Q3 : out STD_LOGIC := '0'
);
end DFF_aclr;

architecture DFF_aclr of DFF_aclr is
begin

process
(
CLK,
RS0,
RS1,
RS2,
RS3
)
begin
if (RS0='1') then
Q0 <= '0';
elsif (rising_edge (CLK)) then
Q0 <= D0;
end if;

if (RS1='1') then
Q1 <= '0';
elsif (rising_edge (CLK)) then
Q1 <= D1;
end if;

if (RS2='1') then
Q2 <= '0';
elsif (rising_edge (CLK)) then
Q2 <= D2;
end if;

if (RS3='1') then
Q3 <= '0';
elsif (rising_edge (CLK)) then
Q3 <= D3;
end if;
end process;
end DFF_aclr;


2. Убрал ненужные библиотеки. Зачем Вы их подключали я не знаю. Но в принципе они не влияли никак.
CODE
library IEEE;
use IEEE.std_logic_1164.all;
entity reg_aclr is
port(
CLKT : in STD_LOGIC;
RS : in STD_LOGIC;
RST : in STD_LOGIC;
Q : out STD_LOGIC_VECTOR(0 to 3):= (others => '0')
);
end reg_aclr;

architecture reg_aclr of reg_aclr is

component DFF_aclr
port (
CLK : in STD_LOGIC;
D0,D1,D2,D3 : in STD_LOGIC;
RS0,RS1,RS2,RS3 : in STD_LOGIC;
Q0,Q1,Q2,Q3 : out STD_LOGIC
);
end component;

signal D0 : STD_LOGIC;
signal QT0,QT1,QT2,QT3 : STD_LOGIC := '0';

begin

U10 : DFF_aclr
port map(
CLK => CLKT,
D0 => D0,
D1 => QT0,
D2 => QT1,
D3 => QT2,
Q0 => QT0,
Q1 => QT1,
Q2 => QT2,
Q3 => QT3,
RS0 => RST,
RS1 => RST,
RS2 => RST,
RS3 => RST
);

Q(3) <= QT3;
Q(2) <= QT2;
Q(1) <= QT1;
Q(0) <= QT0;
D0 <= RS or QT3;
end reg_aclr;


С таким тестбенчем все работает как и должно:

CODE
LIBRARY ieee;
USE ieee.std_logic_1164.all;

ENTITY reg_aclr_vhd_tst IS
END reg_aclr_vhd_tst;
ARCHITECTURE reg_aclr_arch OF reg_aclr_vhd_tst IS
-- constants
-- signals
SIGNAL CLKT : STD_LOGIC;
SIGNAL Q : STD_LOGIC_VECTOR(0 TO 3);
SIGNAL RS : STD_LOGIC := '0';
SIGNAL RST : STD_LOGIC := '0';
COMPONENT reg_aclr
PORT (
CLKT : IN STD_LOGIC;
Q : OUT STD_LOGIC_VECTOR(0 TO 3);
RS : IN STD_LOGIC;
RST : IN STD_LOGIC
);
END COMPONENT;
--▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
--========================================================================
-- Формирование констант для вычисления периодв CLK от частоты работы
--========================================================================
constant clk_freq : real := 100.0; -- MHz
constant clk_prd : time := (1000.0/clk_freq) * 1.0 ns; -- Вычисление периода CLK
BEGIN
i1 : reg_aclr
PORT MAP (
-- list connections between master ports and signals
CLKT => CLKT,
Q => Q,
RS => RS,
RST => RST
);
--==========================================
-- Задание тактовой частоты проекта
--==========================================
process
begin
CLKT <= '0'; wait for clk_prd/2;
CLKT <= '1'; wait for clk_prd/2;
end process;

process
begin
wait for 15*clk_prd;
RS <= '1';
wait for clk_prd;
RS <= '0';
wait;
end process;

process
begin
wait for 50*clk_prd;

RST <= '1';
wait for 3*clk_prd;
RST <= '0';
wait;
end process;

END reg_aclr_arch;

Вывод : я предполагаю, что некорректные имена вида \name\
Go to the top of the page
 
+Quote Post
призрак
сообщение May 11 2018, 10:23
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 12-12-06
Из: Москва
Пользователь №: 23 439



Цитата(Flip-fl0p @ May 11 2018, 12:39) *
Вывод : я предполагаю, что некорректные имена вида \name\


Убрал слэши и стало ещё хуже, их то генерила сама прога, поэтому когда я их убрал - вся структура проекта рухнула
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение May 11 2018, 10:30
Сообщение #4


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(призрак @ May 11 2018, 13:23) *
Убрал слэши и стало ещё хуже, их то генерила сама прога, поэтому когда я их убрал - вся структура проекта рухнула

Значит симулятор кривой, либо настройки где-то не те. Код работает правильно. Modelsim я доверяю больше чем ActiveHDL. То что я скинул работает.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- призрак   Не работает схема верхнего уровня   May 8 2018, 11:31
- - andrew_b   Телепаты уже в летних отпусках. Покажите код.   May 8 2018, 12:16
|- - призрак   Цитата(andrew_b @ May 8 2018, 15:16) Теле...   May 8 2018, 12:43
|- - RobFPGA   Приветствую! Цитата(призрак @ May 8 2018...   May 8 2018, 12:51
|- - призрак   Цитата(RobFPGA @ May 8 2018, 15:51) Приве...   May 8 2018, 13:10
|- - RobFPGA   Приветствую! Цитата(призрак @ May 8 2018,...   May 8 2018, 13:13
|- - призрак   Цитата(RobFPGA @ May 8 2018, 16:13) Приве...   May 8 2018, 13:21
|- - Flip-fl0p   Цитата(призрак @ May 8 2018, 16:21) Прост...   May 8 2018, 14:53
- - призрак   Примерно понял. Но, в примерах триггера не делают ...   May 10 2018, 06:22
|- - RobFPGA   Приветстувую! Цитата(призрак @ May 10 201...   May 10 2018, 06:37
|- - Flip-fl0p   Цитата(призрак @ May 10 2018, 09:22) Прим...   May 10 2018, 06:42
- - призрак   Хорошо, но в данном случае что надо первоначально ...   May 10 2018, 08:26
|- - RobFPGA   Приветствую! Цитата(призрак @ May 10 201...   May 10 2018, 08:50
|- - Tausinov   Цитата(призрак @ May 10 2018, 11:26) Хоро...   May 10 2018, 08:51
- - призрак   И вопрос остался - надо делать отдельный проект дл...   May 10 2018, 09:06
|- - Tausinov   Цитата(призрак @ May 10 2018, 12:06) То е...   May 10 2018, 09:12
|- - RobFPGA   Приветствую! Цитата(призрак @ May 10 201...   May 10 2018, 09:23
- - призрак   Добавил установку в триггер, но теперь вопрос - гд...   May 10 2018, 10:52
|- - Tausinov   Цитата(призрак @ May 10 2018, 13:52) Пото...   May 10 2018, 11:15
|- - RobFPGA   Приветствую! Цитата(призрак @ May 10 201...   May 10 2018, 11:17
- - Flip-fl0p   Потому-что начальное значение задается в области д...   May 10 2018, 10:59
|- - призрак   Цитата(Flip-fl0p @ May 10 2018, 13:5...   May 10 2018, 11:31
- - призрак   Я так понимаю у меня где-то должна появиться функц...   May 10 2018, 13:16
- - KalashKS   Внесу свои пять копеек. Первое, из-за чего код нер...   May 10 2018, 13:57
|- - призрак   Цитата(KalashKS @ May 10 2018, 16:57) Вне...   May 10 2018, 14:14
|- - KalashKS   Цитата(призрак @ May 10 2018, 17:14) млад...   May 10 2018, 14:31
|- - призрак   Цитата(KalashKS @ May 10 2018, 17:31) Вот...   May 10 2018, 15:07
|- - Tausinov   Цитата(призрак @ May 10 2018, 18:07) 1. Д...   May 10 2018, 16:25
|- - andrew_b   Цитата(Tausinov @ May 10 2018, 19:25) с т...   May 11 2018, 04:50
- - Flip-fl0p   Вообще я бы посоветовал автору делать сразу правил...   May 11 2018, 05:25
- - призрак   Спасибо за помощь, воспользуюсь обязательно всеми ...   May 11 2018, 08:03
|- - Flip-fl0p   Цитата(призрак @ May 11 2018, 11:03) Спас...   May 11 2018, 08:10
- - призрак   Кодlibrary IEEE; use IEEE.std_logic_1164.all; use ...   May 11 2018, 09:18
|- - andrew_b   Цитата(призрак @ May 11 2018, 12:18) use ...   May 11 2018, 09:45
|- - Flip-fl0p   Цитата(andrew_b @ May 11 2018, 12:45) А ...   May 11 2018, 09:56
|- - KalashKS   Цитата(andrew_b @ May 11 2018, 12:45) Там...   May 11 2018, 10:03
|- - andrew_b   Всю жизнь думал, что имена entity и связанного с н...   May 11 2018, 10:14
- - KalashKS   А в чем проблема теперь? Подайте сброс, подайте ва...   May 11 2018, 09:39
- - KalashKS   У вас же раньше все моделировалось. Иксы были, поч...   May 11 2018, 10:35
- - andrew_b   С именами \name\ всё нормально. Это расш...   May 11 2018, 10:40
|- - Flip-fl0p   Цитата(andrew_b @ May 11 2018, 13:40) С и...   May 11 2018, 10:49
- - призрак   Переписал проект Кодlibrary IEEE; use IEEE.STD_LOG...   May 11 2018, 12:09
- - KalashKS   У меня ваш код промоделировался так, как должен. П...   May 11 2018, 12:25
|- - призрак   Цитата(KalashKS @ May 11 2018, 15:25) У м...   May 11 2018, 13:19
|- - KalashKS   Вытащите эти сигналы и порты на временную диаграмм...   May 11 2018, 13:28
|- - призрак   Цитата(KalashKS @ May 11 2018, 16:28) Выт...   May 11 2018, 13:45
- - KalashKS   В Альдеке можно выводить не только сигналы верхнег...   May 11 2018, 13:52
|- - призрак   Цитата(KalashKS @ May 11 2018, 16:52) В А...   May 11 2018, 13:59
- - KalashKS   Это несколько сбивает с толку. У вас вашего DFF4 в...   May 11 2018, 14:32
|- - призрак   Цитата(KalashKS @ May 11 2018, 17:32) Это...   May 14 2018, 08:03
|- - KalashKS   Цитата(призрак @ May 14 2018, 11:03) У ме...   May 14 2018, 08:16
|- - призрак   Цитата(KalashKS @ May 14 2018, 11:16) Был...   May 14 2018, 10:18
- - Flip-fl0p   Создайте проект заново. Настройки установите по-ум...   May 14 2018, 08:25
- - KalashKS   Логи компиляции и запуска моделирования смотрели?   May 14 2018, 10:53
|- - призрак   Цитата(KalashKS @ May 14 2018, 13:53) Лог...   May 14 2018, 11:06
- - KalashKS   Тогда у меня больше нет вариантов. Хотя, покажите ...   May 14 2018, 11:18
|- - призрак   Цитата(KalashKS @ May 14 2018, 14:18) Тог...   May 14 2018, 11:47
- - KalashKS   Теперь точно все.   May 14 2018, 12:02
- - Flip-fl0p   А Вы попробуйте мои файлы просимулировать. Принцип...   May 14 2018, 12:07
|- - призрак   Цитата(Flip-fl0p @ May 14 2018, 15:0...   May 14 2018, 12:26
|- - Flip-fl0p   Цитата(призрак @ May 14 2018, 15:26) Перв...   May 14 2018, 12:32
|- - призрак   Цитата(Flip-fl0p @ May 14 2018, 15:3...   May 14 2018, 13:37
|- - Flip-fl0p   Цитата(призрак @ May 14 2018, 16:37) Вклю...   May 14 2018, 15:30
|- - KalashKS   Цитата(Flip-fl0p @ May 14 2018, 18:3...   May 14 2018, 16:01
- - призрак   Какой пакет есть, с таким и работаем. Мне кажется ...   May 15 2018, 06:04
- - KalashKS   Вспомнил, что аналогичную проблему встречал в Rivi...   May 15 2018, 08:54
|- - призрак   Цитата(KalashKS @ May 15 2018, 11:54) Всп...   May 15 2018, 10:32
|- - KalashKS   Цитата(призрак @ May 15 2018, 13:32) Так ...   May 15 2018, 10:41
- - призрак   А нет какого-нибудь руководства по ModelSim?   May 21 2018, 12:34
|- - andrew_b   Цитата(призрак @ May 21 2018, 15:34) Пише...   May 21 2018, 12:51
- - Flip-fl0p   КодПишет #Compile of DFF.vhd failed with 1 errors....   May 21 2018, 13:04
|- - призрак   Цитата(Flip-fl0p @ May 21 2018, 16:0...   May 22 2018, 06:24
- - призрак   Подскажите как в ModelSim 10.5 задать единичное во...   May 24 2018, 08:21
- - andrew_b   Цитата(призрак @ May 24 2018, 11:21) Подс...   May 24 2018, 09:09


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th August 2025 - 20:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01513 секунд с 7
ELECTRONIX ©2004-2016