Собственно код:
Код
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 посмотреть

Мне как новичку не понятно

Не могли бы Вы пояснить?
«У современных мобильных телефонов такая же вычислительная мощь, что и у компьютеров NASA в 60-е годы. И в то время этого хватало, чтобы запустить человека в космос, а сегодня — только чтобы запускать птиц в свиней.»