Line 25... |
Line 25... |
type typeEnDis is (enable, disable);
|
type typeEnDis is (enable, disable);
|
type generalRegisters is (r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15);
|
type generalRegisters is (r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15);
|
type dpMuxInputs is (fromMemory, fromImediate, fromRegFileA, fromRegFileB, fromAlu);
|
type dpMuxInputs is (fromMemory, fromImediate, fromRegFileA, fromRegFileB, fromAlu);
|
type dpMuxAluIn is (fromMemory, fromImediate, fromRegFileA);
|
type dpMuxAluIn is (fromMemory, fromImediate, fromRegFileA);
|
type controlUnitStates is (initial, fetch, decode, execute, executing);
|
type controlUnitStates is (initial, fetch, decode, execute, executing);
|
type executionStates is (initInstructionExecution, writeRegister, releaseWriteRead, s3, s4);
|
type executionStates is (initInstructionExecution, writeRegister, releaseWriteRead, readRegisterA, readRegisterB, releaseRead);
|
|
|
--! Flags positions
|
--! Flags positions
|
constant flag_sign : integer := 2;
|
constant flag_sign : integer := 2;
|
constant flag_zero : integer := 1;
|
constant flag_zero : integer := 1;
|
constant flag_carry : integer := 0;
|
constant flag_carry : integer := 0;
|