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

Subversion Repositories w11

[/] [w11/] [tags/] [w11a_V0.6/] [rtl/] [bplib/] [nxcramlib/] [nxcramlib.vhd] - Blame information for rev 24

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 15 wfjm
-- $Id: nxcramlib.vhd 433 2011-11-27 22:04:39Z mueller $
2 2 wfjm
--
3 15 wfjm
-- Copyright 2011- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
4 2 wfjm
--
5
-- This program is free software; you may redistribute and/or modify it under
6
-- the terms of the GNU General Public License as published by the Free
7
-- Software Foundation, either version 2, or at your option any later version.
8
--
9
-- This program is distributed in the hope that it will be useful, but
10
-- WITHOUT ANY WARRANTY, without even the implied warranty of MERCHANTABILITY
11
-- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12
-- for complete details.
13
--
14
------------------------------------------------------------------------------
15 15 wfjm
-- Package Name:   nxcramlib
16
-- Description:    Nexys 2/3 CRAM drivers
17 2 wfjm
-- 
18
-- Dependencies:   -
19 15 wfjm
-- Tool versions:  xst 11.4, 12.1, 13.1; ghdl 0.26-0.29
20 8 wfjm
--
21 2 wfjm
-- Revision History: 
22
-- Date         Rev Version  Comment
23 15 wfjm
-- 2011-11-26   433   1.0    Initial version (extracted from nexys2lib)
24 2 wfjm
------------------------------------------------------------------------------
25
 
26
library ieee;
27
use ieee.std_logic_1164.all;
28
 
29
use work.slvtypes.all;
30
 
31 15 wfjm
package nxcramlib is
32 2 wfjm
 
33 15 wfjm
component nx_cram_dummy is              -- CRAM protection dummy 
34 2 wfjm
  port (
35
    O_MEM_CE_N : out slbit;             -- cram: chip enable   (act.low)
36
    O_MEM_BE_N : out slv2;              -- cram: byte enables  (act.low)
37
    O_MEM_WE_N : out slbit;             -- cram: write enable  (act.low)
38
    O_MEM_OE_N : out slbit;             -- cram: output enable (act.low)
39
    O_MEM_ADV_N  : out slbit;           -- cram: address valid (act.low)
40
    O_MEM_CLK : out slbit;              -- cram: clock
41
    O_MEM_CRE : out slbit;              -- cram: command register enable
42
    I_MEM_WAIT : in slbit;              -- cram: mem wait
43
    O_MEM_ADDR  : out slv23;            -- cram: address lines
44
    IO_MEM_DATA : inout slv16           -- cram: data lines
45
  );
46
end component;
47
 
48 15 wfjm
component nx_cram_memctl_as is          -- CRAM driver (async+page mode)
49 2 wfjm
  generic (
50
    READ0DELAY : positive := 2;         -- read word 0 delay in clock cycles
51
    READ1DELAY : positive := 2;         -- read word 1 delay in clock cycles
52
    WRITEDELAY : positive := 3);        -- write delay in clock cycles
53
  port (
54
    CLK : in slbit;                     -- clock
55
    RESET : in slbit;                   -- reset
56
    REQ   : in slbit;                   -- request
57
    WE    : in slbit;                   -- write enable
58
    BUSY : out slbit;                   -- controller busy
59
    ACK_R : out slbit;                  -- acknowledge read
60
    ACK_W : out slbit;                  -- acknowledge write
61
    ACT_R : out slbit;                  -- signal active read
62
    ACT_W : out slbit;                  -- signal active write
63
    ADDR : in slv22;                    -- address (32 bit word address)
64
    BE : in slv4;                       -- byte enable
65
    DI : in slv32;                      -- data in  (memory view)
66
    DO : out slv32;                     -- data out (memory view)
67
    O_MEM_CE_N : out slbit;             -- cram: chip enable   (act.low)
68
    O_MEM_BE_N : out slv2;              -- cram: byte enables  (act.low)
69
    O_MEM_WE_N : out slbit;             -- cram: write enable  (act.low)
70
    O_MEM_OE_N : out slbit;             -- cram: output enable (act.low)
71
    O_MEM_ADV_N : out slbit;            -- cram: address valid (act.low)
72
    O_MEM_CLK : out slbit;              -- cram: clock
73
    O_MEM_CRE : out slbit;              -- cram: command register enable
74
    I_MEM_WAIT : in slbit;              -- cram: mem wait
75
    O_MEM_ADDR  : out slv23;            -- cram: address lines
76
    IO_MEM_DATA : inout slv16           -- cram: data lines
77
  );
78
end component;
79
 
80 15 wfjm
end package nxcramlib;

powered by: WebSVN 2.1.0

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