start of MIPS core: begin o...
Stefan Schuermans authored 12 years ago
|
1) LIBRARY ieee;
2) USE ieee.std_logic_1164.all;
3) USE ieee.numeric_std.all;
4)
5) PACKAGE mips_types IS
6)
7) -- operation
8) TYPE t_op IS (
9) op_none,
10) op_alu, -- ALU operation
11) op_b, -- branch (conditional)
12) op_j -- jump
13) );
14)
15) -- link (store return address in register)
16) TYPE t_link IS (
17) link_none,
18) link_link -- link
19) );
20)
21) -- compare mode
22) TYPE t_cmp IS (
23) cmp_none,
24) cmp_eq, -- equal
25) cmp_gtz, -- greater zero
26) cmp_lez, -- less or equal zero
27) cmp_ne -- not equal
28) );
29)
30) -- ALU operation
31) TYPE t_alu IS (
32) alu_none,
33) alu_add, -- addition
34) alu_and, -- bitwise AND
35) alu_nor, -- bitwise NOR
36) alu_or, -- bitwise OR
37) alu_sub, -- subtraction
38) alu_sll, -- shift left logically
39) alu_sra, -- shift right arithmetically
40) alu_srl, -- shift right logically
41) alu_slt, -- set on less than
|