-- `Deep Thought', a softcore CPU implemented on a FPGA -- -- Copyright (C) 2010 Markus Hofstaetter -- Copyright (C) 2010 Martin Perner -- Copyright (C) 2010 Stefan Rebernig -- Copyright (C) 2010 Manfred Schwarz -- Copyright (C) 2010 Bernhard Urban -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see . library IEEE; use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; use work.common_pkg.all; use work.alu_pkg.all; use work.extension_pkg.all; entity alu is --some modules won't need all inputs port( --System inputs clk : in std_logic; reset : in std_logic; --operation inputs cond : in condition_t; 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; op_detail : in op_opt_t; alu_state : in alu_result_rec; pval : in gp_register_t; pval_nxt : in gp_register_t; alu_result : out alu_result_rec; 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 alu;