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

 
 
> Глюки при симуляции в Quartus
PoReX
сообщение May 6 2011, 06:12
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 112
Регистрация: 1-05-09
Из: Ростов-на-Дону
Пользователь №: 48 518



Доброго времени суток!
Совсем недавно начал разбираться с ПЛИСинами, в частности CPLD MAXII, и с VHDL'ем. Понадобилось создать элемент результат работы которого удовлетворяет таблице истинности. Составил СДНФ, минимизировал ее с помощью программы. В итоге получилась сокращенная ДНФ
Код
(!X1 & X2) | (X1 & !X2 & !X3 & !X4)
. Написал элемент на VHDL'е и приступил к симуляции. Вот тут и полезли непонятные вспески/провалы на выходе. Пробовал собрать тоже самое на логике, результат один и тот же. В чем может быть проблема, ума не приложу?
VHDL код, таблица и скриншот симуляции во вложении.
Прикрепленные файлы
Прикрепленный файл  Archive.zip ( 27.31 килобайт ) Кол-во скачиваний: 27
 


--------------------
«У современных мобильных телефонов такая же вычислительная мощь, что и у компьютеров NASA в 60-е годы. И в то время этого хватало, чтобы запустить человека в космос, а сегодня — только чтобы запускать птиц в свиней.»
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
PoReX
сообщение May 6 2011, 07:21
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 112
Регистрация: 1-05-09
Из: Ростов-на-Дону
Пользователь №: 48 518



Собственно код:
Код
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;
--++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
entity mod_Y is
    Port (     X1: in STD_LOGIC:='0';
            X2: in STD_LOGIC:='0';
            X3: in STD_LOGIC:='0';
            X4: in STD_LOGIC:='0';
            Y:out STD_LOGIC:='0');
end mod_Y;

architecture Y of mod_Y is
begin
Y<=((not X1) and X2)or (X1 and (not X2) and (not X3) and (not X4));
end Y;


Цитата(naliwator @ May 6 2011, 10:35) *
Так бывает, когда логика асинхронная.
Если вы начинаете разбираться с языком, то учебник вам в помощь.
Почитайте Каршенбойма. В самом низу страницы - ссылки на статьи по HDL-кодированию.


А если сделать синхронизацию от какого-либо источника с частотой намного большей частоты изменения сигналов X1,X2...., наприме так:
Код
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;
--++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
entity mod_Y is
    Port (     X1: in STD_LOGIC:='0';
            X2: in STD_LOGIC:='0';
            X3: in STD_LOGIC:='0';
            X4: in STD_LOGIC:='0';
            CLK: in STD_LOGIC:='0';
            Y:out STD_LOGIC:='0');
end mod_Y;

architecture Y of mod_Y is
begin
    process(CLK)
    begin
        if (CLK'event and CLK='1') then
            Y<=((not X1) and X2)or (X1 and (not X2) and (not X3) and (not X4));
        end if;
    end process;
end Y;

Такое решение имеет право на жизнь?

Цитата(des00 @ May 6 2011, 10:31) *
то что голова работает в булевой алгебре это хорошо, теперь еще немного пусть поработает что бы найти логическое объяснение этих иголок. Это же очевидно, особенно если Chip editor посмотреть wink.gif

Мне как новичку не понятноsm.gif Не могли бы Вы пояснить?


--------------------
«У современных мобильных телефонов такая же вычислительная мощь, что и у компьютеров NASA в 60-е годы. И в то время этого хватало, чтобы запустить человека в космос, а сегодня — только чтобы запускать птиц в свиней.»
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- PoReX   Глюки при симуляции в Quartus   May 6 2011, 06:12
- - des00   то что голова работает в булевой алгебре это хорош...   May 6 2011, 06:31
- - naliwator   Цитата(PoReX @ May 6 2011, 10:12) Доброго...   May 6 2011, 06:35
- - Maverick   Цитата(PoReX @ May 6 2011, 09:12) Доброго...   May 6 2011, 06:52
|- - bogaev_roman   Цитата(PoReX @ May 6 2011, 11:21) А если ...   May 6 2011, 07:23
||- - PoReX   Цитата(bogaev_roman @ May 6 2011, 11:23) ...   May 6 2011, 08:07
|- - des00   Цитата(PoReX @ May 6 2011, 02:21) Мне как...   May 6 2011, 07:33
- - bav   ЦитатаА если сделать синхронизацию от какого-либо ...   May 6 2011, 07:28
- - PoReX   Цитата(bogaev_roman @ May 6 2011, 11:23) ...   May 6 2011, 07:49
|- - des00   Цитата(PoReX @ May 6 2011, 02:49) Что эле...   May 6 2011, 07:51
|- - PoReX   Цитата(des00 @ May 6 2011, 11:51) а вы ду...   May 6 2011, 08:32
|- - des00   Цитата(PoReX @ May 6 2011, 03:32) Все, ка...   May 6 2011, 08:37
|- - PoReX   Цитата(des00 @ May 6 2011, 12:37) бинго ...   May 6 2011, 09:58
|- - Maverick   Цитата(PoReX @ May 6 2011, 12:58) А в Qua...   May 6 2011, 10:33
- - bav   ЦитатаА вот синхронизировать входы не получится т....   May 6 2011, 07:56
- - bav   ЦитатаЧто значит перестробировать входы на CLK, ес...   May 6 2011, 08:26
- - PoReX   Спасибо всем за ответы!   May 6 2011, 11:16
- - stu   переписывал код с AHDL -> SV. переписал. не раб...   Dec 20 2011, 09:55
|- - sazh   Цитата(stu @ Dec 20 2011, 12:55) Кодassig...   Dec 20 2011, 10:27
- - stu   Цитата(sazh @ Dec 20 2011, 13:27) assign ...   Dec 20 2011, 12:24
- - ViKo   Цитата(stu @ Dec 20 2011, 15:24) понятно....   Dec 20 2011, 13:17
- - sazh   Цитата(ViKo @ Dec 20 2011, 16:17) не срав...   Dec 20 2011, 18:26
- - ViKo   Цитата(sazh @ Dec 20 2011, 20:26) А почем...   Dec 20 2011, 20:19


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

 


RSS Текстовая версия Сейчас: 29th June 2025 - 08:43
Рейтинг@Mail.ru


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