17.07.2013 Views

Current "control" VHDL Code

Current "control" VHDL Code

Current "control" VHDL Code

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

--- <strong>Current</strong> "control" <strong>VHDL</strong> <strong>Code</strong><br />

--- <strong>Current</strong> file name: control.vhd<br />

--- Last Revised: 12/3/2008; 7:15 p.m.<br />

--- Author: WDR<br />

--- Copyright: William D. Richard, Ph.D., 2008<br />

LIBRARY IEEE ;<br />

USE IEEE.STD_LOGIC_1164.ALL ;<br />

use IEEE.STD_LOGIC_UNSIGNED.ALL ;<br />

use IEEE.STD_LOGIC_ARITH.ALL ;<br />

ENTITY control IS<br />

PORT (clk : IN STD_LOGIC ;<br />

opcode : IN STD_LOGIC_VECTOR(4 DOWNTO 0) ;<br />

n_eq_zero : IN STD_LOGIC ;<br />

con : IN STD_LOGIC ;<br />

done : IN STD_LOGIC ;<br />

reset_l : IN STD_LOGIC ;<br />

a_in : OUT STD_LOGIC ;<br />

c_in : OUT STD_LOGIC ;<br />

c_out : OUT STD_LOGIC ;<br />

pc_in : OUT STD_LOGIC ;<br />

pc_out : OUT STD_LOGIC ;<br />

con_in : OUT STD_LOGIC ;<br />

decr : OUT STD_LOGIC ;<br />

ld : OUT STD_LOGIC ;<br />

c1_out : OUT STD_LOGIC ;<br />

c2_out : OUT STD_LOGIC ;<br />

ir_in : OUT STD_LOGIC ;<br />

gra : OUT STD_LOGIC ;<br />

grb : OUT STD_LOGIC ;<br />

grc : OUT STD_LOGIC ;<br />

r_in : OUT STD_LOGIC ;<br />

r_out : OUT STD_LOGIC ;<br />

ba_out : OUT STD_LOGIC ;<br />

md_bus : OUT STD_LOGIC ;<br />

md_rd : OUT STD_LOGIC ;<br />

md_wr : OUT STD_LOGIC ;<br />

md_out : OUT STD_LOGIC ;<br />

ma_in : OUT STD_LOGIC ;<br />

read : OUT STD_LOGIC ;<br />

write : OUT STD_LOGIC ;<br />

add : OUT STD_LOGIC ;<br />

sub : OUT STD_LOGIC ;<br />

andx : OUT STD_LOGIC ;<br />

orx : OUT STD_LOGIC ;<br />

notx : OUT STD_LOGIC ;<br />

neg : OUT STD_LOGIC ;<br />

c_eq_b : OUT STD_LOGIC ;<br />

inc4 : OUT STD_LOGIC ;<br />

shr : OUT STD_LOGIC ;<br />

shra : OUT STD_LOGIC ;<br />

shl : OUT STD_LOGIC ;<br />

shc : OUT STD_LOGIC) ;<br />

END control ;<br />

ARCHITECTURE behavioral of control IS<br />

COMPONENT controlstore


BEGIN<br />

PORT (d : OUT STD_LOGIC_VECTOR(47 DOWNTO 0) ;<br />

address : IN STD_LOGIC_VECTOR(8 DOWNTO 0)) ;<br />

END COMPONENT ;<br />

SIGNAL upc : STD_LOGIC_VECTOR(8 DOWNTO 0) ;<br />

SIGNAL d : STD_LOGIC_VECTOR(47 DOWNTO 0) ;<br />

SIGNAL brcondition : STD_LOGIC_VECTOR(2 DOWNTO 0) ;<br />

SIGNAL braddress : STD_LOGIC_VECTOR(8 DOWNTO 0) ;<br />

clkd:PROCESS(clk)<br />

BEGIN<br />

IF (clk'EVENT AND clk='1') THEN<br />

IF (reset_l = '0') THEN<br />

upc


a_out

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!