OpenCores
URL https://opencores.org/ocsvn/igor/igor/trunk

Subversion Repositories igor

[/] [igor/] [trunk/] [processor/] [pl/] [pipelineregs.vhd] - Blame information for rev 4

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 4 atypic
library ieee;
2
use ieee.std_logic_1164.all;
3
 
4
library work;
5
use work.leval2_package.all;
6
 
7
 
8
package leval2_pipelineregs is
9
    type IFID_t is
10
        record
11
                        PC : std_logic_vector(MC_ADDR_BITS - 1 downto 0);
12
        end record;
13
 
14
    type IDEX_t is
15
        record
16
            -- Control signals
17
            WriteReg : std_logic;
18
            MemToReg : std_logic; -- Indicates load.
19
            Store : std_logic;
20
            AluIn2Src : std_logic;
21
            AluOp : std_logic_vector(ALU_FUNCT_SIZE - 1 downto 0);
22
            IndirReg1bit : std_logic;
23
            IndirReg2bit : std_logic;
24
                        Branch : std_logic;
25
 
26
            -- Data paths
27
            IR : std_logic_vector(MC_INSTR_BITS - 1 downto 0);
28
                        PC : std_logic_vector(MC_ADDR_BITS - 1 downto 0);
29
            Immediate : std_logic_vector(WORD_BITS - 1 downto 0);
30
            IndirReg1 : std_logic_vector(WORD_BITS - 1 downto 0);
31
            IndirReg2 : std_logic_vector(WORD_BITS - 1 downto 0);
32
        end record;
33
 
34
    type EXMEM_t is
35
        record
36
            --Control signals
37
            WriteReg : std_logic;
38
            MemToReg : std_logic;
39
            Store : std_logic;
40
 
41
            -- Data paths
42
            IR : std_logic_vector(MC_INSTR_BITS - 1 downto 0);
43
            AluRes : std_logic_vector(WORD_BITS - 1 downto 0);
44
            MemWriteData : std_logic_vector(WORD_BITS - 1 downto 0);
45
 
46
        end record;
47
 
48
    type M1M2_t is
49
        record
50
            -- Control signals
51
            WriteReg : std_logic;
52
            MemToReg : std_logic;
53
            Store : std_logic;
54
 
55
            -- Data paths
56
            IR : std_logic_vector(MC_INSTR_BITS - 1 downto 0);
57
            Tag : std_logic_vector(CACHE_TAG_BITS - 1 downto 0);
58
            Address : std_logic_vector(WORD_BITS - 1 downto 0);
59
            Data : std_logic_vector(CACHE_DATA_BITS - 1 downto 0);
60
            MemWriteData : std_logic_vector(WORD_BITS - 1 downto 0);
61
        end record;
62
 
63
    type M2WB_t is
64
        record
65
            -- Control
66
            WriteReg : std_logic;
67
            MemToReg : std_logic;
68
 
69
            -- Data paths
70
            IR : std_logic_vector(MC_INSTR_BITS - 1 downto 0);
71
            AluRes : std_logic_vector(WORD_BITS - 1 downto 0);
72
            MemWriteData : std_logic_vector(WORD_BITS - 1 downto 0);
73
            --WriteRegAddr : std_logic_vector(REGS_ADDR_BITS - 1 downto 0);
74
 
75
        end record;
76
end package;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.