X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=cpu%2Fsrc%2Falu_pkg.vhd;fp=cpu%2Fsrc%2Falu_pkg.vhd;h=57e2dc4b82b7d36a45731834e0c4ef2a614dc10c;hb=f4f734f50124027f0371a3cb5f4de18353692235;hp=7a9564e913149c6f0b4c25a407f75234b3d5c5df;hpb=ac25724c599f80d5b8c83eea332daa78aa767e8a;p=calu.git diff --git a/cpu/src/alu_pkg.vhd b/cpu/src/alu_pkg.vhd index 7a9564e..57e2dc4 100755 --- a/cpu/src/alu_pkg.vhd +++ b/cpu/src/alu_pkg.vhd @@ -4,23 +4,12 @@ use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; use work.common_pkg.all; +use work.extension_pkg.all; --use work.core_extension.all; package alu_pkg is - type status_rec is record - zero : std_logic; - oflo : std_logic; - sign : std_logic; - carry : std_logic; - end record; - - constant PADDR_WIDTH : integer := 2; - type pointers_t is array(0 to 2**PADDR_WIDTH-1) of gp_register_t; - subtype paddr_t is std_logic_vector(PADDR_WIDTH-1 downto 0); - - subtype status_t is byte_t; --type alu_interal_rec is record -- --end record alu_internal_rec; @@ -86,14 +75,23 @@ package alu_pkg is op_group : in op_info_t; left_operand : in gp_register_t; right_operand : in gp_register_t; - displacement : in gp_register_t; - prog_cnt : in instr_addr_t; - brpr : in std_logic; + + displacement : in gp_register_t; + prog_cnt : in instr_addr_t; + brpr : in std_logic; + op_detail : in op_opt_t; + alu_state : in alu_result_rec; + pval : in gp_register_t; + alu_result : out alu_result_rec; - addr : out word_t; --memaddr - data : out gp_register_t --mem data --ureg + addr : out word_t; --memaddr + data : out gp_register_t; --mem data --ureg + + pinc : out std_logic; + pwr_en : out std_logic; + paddr : out paddr_t ); end component alu;