Line 52... |
Line 52... |
generic (n : integer := nBits - 1); --! Generic value (Used to easily change the size of the Alu on the package)
|
generic (n : integer := nBits - 1); --! Generic value (Used to easily change the size of the Alu on the package)
|
Port ( reset : in STD_LOGIC;
|
Port ( reset : in STD_LOGIC;
|
clk : in STD_LOGIC; --! Main system clock
|
clk : in STD_LOGIC; --! Main system clock
|
FlagsDp : in STD_LOGIC_VECTOR (2 downto 0); --! Flags comming from the Datapath
|
FlagsDp : in STD_LOGIC_VECTOR (2 downto 0); --! Flags comming from the Datapath
|
DataDp : in STD_LOGIC_VECTOR (n downto 0); --! Data comming from the Datapath
|
DataDp : in STD_LOGIC_VECTOR (n downto 0); --! Data comming from the Datapath
|
|
outEnDp : out typeEnDis; --! Enable/Disable datapath output
|
MuxDp : out STD_LOGIC_VECTOR (2 downto 0); --! Select on datapath data from (Memory, Imediate, RegFileA, RegFileB, AluOut)
|
MuxDp : out STD_LOGIC_VECTOR (2 downto 0); --! Select on datapath data from (Memory, Imediate, RegFileA, RegFileB, AluOut)
|
MuxRegDp : out STD_LOGIC_VECTOR(1 downto 0); --! Select Alu InputA (Memory,Imediate,RegFileA)
|
MuxRegDp : out STD_LOGIC_VECTOR(1 downto 0); --! Select Alu InputA (Memory,Imediate,RegFileA)
|
ImmDp : out STD_LOGIC_VECTOR (n downto 0); --! Imediate value passed to the Datapath
|
ImmDp : out STD_LOGIC_VECTOR (n downto 0); --! Imediate value passed to the Datapath
|
DpAluOp : out aluOps; --! Alu operations
|
DpAluOp : out aluOps; --! Alu operations
|
DpRegFileWriteAddr : out generalRegisters; --! General register address to write
|
DpRegFileWriteAddr : out generalRegisters; --! General register address to write
|
Line 109... |
Line 110... |
uControlUnit: ControlUnit PORT MAP (
|
uControlUnit: ControlUnit PORT MAP (
|
reset => rst,
|
reset => rst,
|
clk => clk,
|
clk => clk,
|
FlagsDp => dataPathFlags,
|
FlagsDp => dataPathFlags,
|
DataDp => dataPathOutput,
|
DataDp => dataPathOutput,
|
|
outEnDp => enableOutputDp,
|
MuxDp => InputDataPathSelector,
|
MuxDp => InputDataPathSelector,
|
MuxRegDp => InputDataPathAluASelector,
|
MuxRegDp => InputDataPathAluASelector,
|
ImmDp => InputImediate,
|
ImmDp => InputImediate,
|
DpAluOp => aluOperations,
|
DpAluOp => aluOperations,
|
DpRegFileWriteAddr => registerFileWriteAddress,
|
DpRegFileWriteAddr => registerFileWriteAddress,
|