Курсовая работа: Синтез схеми ПЛІС для інвертора
address: OUT STD_LOGIC_VECTOR (6 DOWNTO 0); -- external RAM address
data: INOUT STD_LOGIC_VECTOR (7 DOWNTO 0); -- system bus
web: OUT STD_LOGIC; -- external RAM active-low write-enable
oeb: OUT STD_LOGIC; -- external RAM active-low output-enable
sel_ram: out std_logic;
carry_out : out std_logic;
pc_out: OUT STD_LOGIC_VECTOR (6 DOWNTO 0);
ir_out: out std_logic_vector (7 downto 0);
acc_out: out std_logic_vector (3 downto 0));
END gnome;
-- GNOME processor architecture behavioral description
ARCHITECTURE gnome_arch OF gnome IS
-- current and next GNOME state-machine state
SIGNAL curr_st, next_st: STD_LOGIC_VECTOR (1 DOWNTO 0);
-- possible GNOME state-machine states and their definitions
CONSTANT FETCH: STD_LOGIC_VECTOR (1 DOWNTO 0) := "00"; -- fetch instruction
CONSTANT DECODE: STD_LOGIC_VECTOR (1 DOWNTO 0) := "01"; -- decode
CONSTANT EXECUTE: STD_LOGIC_VECTOR (1 DOWNTO 0) := "11"; -- execute
-- current and next program counter value
SIGNAL curr_pc, next_pc: STD_LOGIC_VECTOR (6 DOWNTO 0);
-- current and next accumulator value
SIGNAL curr_acc, next_acc: STD_LOGIC_VECTOR (3 DOWNTO 0);
-- current and next carry flag value
SIGNAL curr_carry, next_carry: STD_LOGIC;
-- current and next zero flag value
SIGNAL curr_zero, next_zero: STD_LOGIC;
-- sum vector for holding adder output
SIGNAL sum: STD_LOGIC_VECTOR (4 DOWNTO 0);
SIGNAL read: STD_LOGIC; -- 1 when reading RAM