OpenCores
URL https://opencores.org/ocsvn/1g_ethernet_dpi/1g_ethernet_dpi/trunk

Subversion Repositories 1g_ethernet_dpi

[/] [1g_ethernet_dpi/] [tags/] [vmblite_base/] [hw/] [src/] [rtl/] [mblite/] [core/] [gprf.vhd] - Blame information for rev 7

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 7 kuzmi4
----------------------------------------------------------------------------------------------
2
--
3
--      Input file         : gprf.vhd
4
--      Design name        : gprf
5
--      Author             : Tamar Kranenburg
6
--      Company            : Delft University of Technology
7
--                         : Faculty EEMCS, Department ME&CE
8
--                         : Systems and Circuits group
9
--
10
--      Description        : The general purpose register infers memory blocks to implement
11
--                           the register file. All outputs are registered, possibly by using
12
--                           registered memory elements.
13
--
14
----------------------------------------------------------------------------------------------
15
 
16
library ieee;
17
use ieee.std_logic_1164.all;
18
use ieee.std_logic_unsigned.all;
19
 
20
library mblite;
21
use mblite.config_Pkg.all;
22
use mblite.core_Pkg.all;
23
use mblite.std_Pkg.all;
24
 
25
entity gprf is port
26
(
27
    gprf_o : out gprf_out_type;
28
    gprf_i : in gprf_in_type;
29
    ena_i  : in std_logic;
30
    clk_i  : in std_logic
31
);
32
end gprf;
33
 
34
-- This architecture is the default implementation. It
35
-- consists of three dual port memories. Other
36
-- architectures can be added while configurations can
37
-- control the implemented architecture.
38
architecture arch of gprf is
39
begin
40
    a : dsram generic map
41
    (
42
        WIDTH => CFG_DMEM_WIDTH,
43
        SIZE  => CFG_GPRF_SIZE
44
    )
45
    port map
46
    (
47
        dat_o   => gprf_o.dat_a_o,
48
        adr_i   => gprf_i.adr_a_i,
49
        ena_i   => ena_i,
50
        dat_w_i => gprf_i.dat_w_i,
51
        adr_w_i => gprf_i.adr_w_i,
52
        wre_i   => gprf_i.wre_i,
53
        clk_i   => clk_i
54
    );
55
 
56
    b : dsram generic map
57
    (
58
        WIDTH => CFG_DMEM_WIDTH,
59
        SIZE  => CFG_GPRF_SIZE
60
    )
61
    port map
62
    (
63
        dat_o   => gprf_o.dat_b_o,
64
        adr_i   => gprf_i.adr_b_i,
65
        ena_i   => ena_i,
66
        dat_w_i => gprf_i.dat_w_i,
67
        adr_w_i => gprf_i.adr_w_i,
68
        wre_i   => gprf_i.wre_i,
69
        clk_i   => clk_i
70
    );
71
 
72
    d : dsram generic map
73
    (
74
        WIDTH => CFG_DMEM_WIDTH,
75
        SIZE  => CFG_GPRF_SIZE
76
    )
77
    port map
78
    (
79
        dat_o   => gprf_o.dat_d_o,
80
        adr_i   => gprf_i.adr_d_i,
81
        ena_i   => ena_i,
82
        dat_w_i => gprf_i.dat_w_i,
83
        adr_w_i => gprf_i.adr_w_i,
84
        wre_i   => gprf_i.wre_i,
85
        clk_i   => clk_i
86
    );
87
end arch;

powered by: WebSVN 2.1.0

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