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

Subversion Repositories System09

[/] [System09/] [trunk/] [rtl/] [Spartan3/] [sys09bug_s3e_rom2k_b16.vhd] - Blame information for rev 159

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 118 dilbert57
--===========================================================================--
2
--                                                                           --
3
--  sys09bug_s3e_rom2k_b16.vhd - Sys09bug monitor ROM for the Spartan 3E500  -- 
4
--                                                                           --
5
--===========================================================================--
6
--
7
--  File name      : sys09bug_s3e_rom2k_b16.vhd
8
--
9
--  Entity name    : mon_rom
10
--
11
--  Purpose        : Implements 2K Monitor ROM for System09
12
--                   using 1 x Spartan 3E RAMB16_S9 block ram
13
--                   Used in the Digilent Spartan 3E500 System09 design
14
--                  
15
--  Dependencies   : ieee.Std_Logic_1164
16
--                   ieee.std_logic_arith
17
--                   unisim.vcomponents
18
--
19
--  Uses           : RAMB16_S9
20
--
21
--  Author         : John E. Kent
22
--
23
--  Email          : dilbert57@opencores.org      
24
--
25
--  Web            : http://opencores.org/project,system09
26
--
27
--
28
--  Copyright (C) 2008 - 2010 John Kent
29
--
30
--  This program is free software: you can redistribute it and/or modify
31
--  it under the terms of the GNU General Public License as published by
32
--  the Free Software Foundation, either version 3 of the License, or
33
--  (at your option) any later version.
34
--
35
--  This program is distributed in the hope that it will be useful,
36
--  but WITHOUT ANY WARRANTY; without even the implied warranty of
37
--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
38
--  GNU General Public License for more details.
39
--
40
--  You should have received a copy of the GNU General Public License
41
--  along with this program.  If not, see <http://www.gnu.org/licenses/>.
42
--
43
--===========================================================================--
44
--                                                                           --
45
--                              Revision  History                            --
46
--                                                                           --
47
--===========================================================================--
48
--
49
-- Version Author      Date          Changes
50
-- 0.1     John Kent   2008-01-08    Initial Version
51
-- 0.2     John Kent   2010-09-14    Added Header
52
--                                   renamed rdata & wdata to data_out & data_in
53 20 dilbert57
--
54
library IEEE;
55
use IEEE.STD_LOGIC_1164.ALL;
56
use IEEE.STD_LOGIC_ARITH.ALL;
57
library unisim;
58
        use unisim.vcomponents.all;
59
 
60
entity mon_rom is
61
    Port (
62 118 dilbert57
       clk      : in  std_logic;
63
       rst      : in  std_logic;
64
       cs       : in  std_logic;
65
       addr     : in  std_logic_vector (10 downto 0);
66
       rw       : in  std_logic;
67
       data_in  : in  std_logic_vector (7 downto 0);
68
       data_out : out std_logic_vector (7 downto 0)
69 20 dilbert57
    );
70
end mon_rom;
71
 
72
architecture rtl of mon_rom is
73
 
74
signal we : std_logic;
75
signal dp : std_logic;
76
 
77
begin
78
 
79
  MON_ROM : RAMB16_S9
80
    generic map (
81 22 dilbert57
    INIT_00 => x"A780A610C6C07F8E1060FE8EE1FE0DFB11FB82FBBDFCA8FC8AFC90FC4BF814F8",
82 20 dilbert57
    INIT_01 => x"17431FE4A7D0866AAFDD8C30FB265AE26F0CC6450117D07FBF00E08EF9265AA0",
83 22 dilbert57
    INIT_02 => x"092C2081891FF1270D817F843C0417BC021795FE8EDE01173A031770FE8E8E04",
84
    INIT_03 => x"FE8C02300F2780E12AFE8E20C0022F60C14C0417510417408B981F5804175E86",
85
    INIT_04 => x"1F6E02179DFE8E121F2D297403173B341FBC2094ADC020F9021797FE8EF52660",
86
    INIT_05 => x"17275E81DD271881E127088111286703170C0417AE0317A4A6140417AE031721",
87
    INIT_06 => x"321FAB0217BE203F31C2202131EA03173F86ED03170827A4A1A4A7390F260D81",
88 20 dilbert57
    INIT_07 => x"F0C4201F0634F0C41000C3101F390124E1AC2034062914031705201F30C07F8E",
89 22 dilbert57
    INIT_08 => x"10C69B0317370317E4AEF701179DFE8E103439623203279F03170527E4AC011F",
90
    INIT_09 => x"03172E8602237E810425208180A610C6E1AE8B0317F5265A93031735031780A6",
91
    INIT_0a => x"273F8184A60F2710355B8DFFFF8E10341A24C07F8C1E29C00217BC20EE265A7C",
92
    INIT_0b => x"431F39FB265A1E8D08C6D37F8E104B03163F864E03173984A73F86A4AFA0A709",
93 20 dilbert57
    INIT_0c => x"A60A24C07F8C21AEB3FE16ED7FBF00008E5102170C8D4AAF04272C8D1F304AAE",
94
    INIT_0d => x"265A0427A1ACA0A608C6D37F8E1039A0A7A0A7A0A7FF8684A7A4A604263F8184",
95 22 dilbert57
    INIT_0e => x"7FBFE7F98EEB7FBFC07FBEED7FBF1429390217EE02171C295F0117393D3139F7",
96 20 dilbert57
    INIT_0f => x"27ED7FBE24273F8184A64AAEEC011770E0B671E0B73686431F392020450017C0",
97
    INIT_10 => x"3B71E0B73F8673E0B7368670E0B671E0B7368670E0B70D86341FED7FBF1F301F",
98
    INIT_11 => x"B7368672E0B7008670E0B7FF8673E0B73A8671E0B7328622FE16C07FBFEB7FBE",
99 22 dilbert57
    INIT_12 => x"81260217D27F7F6402171186D2FCBD8435FD265A20C604343973E0B73E8671E0",
100
    INIT_13 => x"E0EBE0E61034212991011726290234A80117F12631813D2739811F0217F92653",
101 20 dilbert57
    INIT_14 => x"FFC102355FEB2080A70527E46AE0EB02340C2904358E01170434E46AE46AE4EB",
102 22 dilbert57
    INIT_15 => x"E4AF0130492562AC4D2930344A0117E26F0E02161386D27F731602173F86BA27",
103
    INIT_16 => x"03CB2F0017DEFE8E64E720C6022320008310062762A3E4ECF501171286D2FCBD",
104 20 dilbert57
    INIT_17 => x"AF5B0117981F53F526646A65011780A684EB63EB62EB68011762AE750117981F",
105 22 dilbert57
    INIT_18 => x"00169D011690356900178FFE8E10347120028D396532B301171486C326E4AC62",
106 20 dilbert57
    INIT_19 => x"8DDC8D728D3948AF0229EB8DE78D618D394AAF0229F68DF28D910017E50016F8",
107
    INIT_1a => x"BB8D6C8D3943A70229C78DC68D498D3944AF0229D58DD18D5E8D3946AF0229E0",
108
    INIT_1b => x"1739C4A7808A0429A68DA58D5F8D3941A70229B18DB08D588D3942A70229BC8D",
109 22 dilbert57
    INIT_1c => x"8DBFFE8EF42048AEEA8DADFE8EBF0016311FF48DA1FE8E39F726048180A63B01",
110
    INIT_1d => x"204AAEC58DA7FE8ED82046AECE8DB3FE8EE12044AED78DB9FE8EB4001643A6E1",
111
    INIT_1e => x"900016D6FE8EC4A6AA8DCFFE8ED02042A6B38DCAFE8ED92041A6BC8DC5FE8ECF",
112
    INIT_1f => x"098DD520CE8DC78DC08D17FF179DFE8EBF8DB88DB08DA98DA18D27FF179DFE8E",
113
    INIT_20 => x"4848483229118D903561A710343C29088D011F42290E8DB400172D86121F4D29",
114
    INIT_21 => x"22468112254181393080032239811D253081578D39E0AB04342829078D891F48",
115 20 dilbert57
    INIT_22 => x"4444444402340235028D0235103439021A395780032266810725618139378003",
116 22 dilbert57
    INIT_23 => x"3B8D3F8D2D860225E46880A608C602344D20078B022F3981308B0F840235048D",
117
    INIT_24 => x"84A620E08E0926018584A6D07FBE10342D207F84048D0627D27F7D8235F1265A",
118
    INIT_25 => x"34458D2086008D8235018520E0B605260185D07F9FA60234903501A6EE270185",
119
    INIT_26 => x"86016D84A7118684A70386D07FBE138D903501A70235FA27028584A6D07FBE12",
120
    INIT_27 => x"1B86F27F7F01E702C6F17FFD04E703E702A7EF7FFD0000CC30E08E39D27FB7FF",
121
    INIT_28 => x"35C5001784A70520098D042420810D20748D0427F27F7D30E08E16345986028D",
122
    INIT_29 => x"81990027100D814500271016818E0027101A816C0027101B8141002710088196",
123
    INIT_2a => x"5DEF7FFC9900168300261019C15CEF7FFC51260A81110027100B812C0027100C",
124
    INIT_2b => x"00CC5B00162500271050814CEF7FB66800164A3327EF7FB67400165A3C002710",
125
    INIT_2c => x"F27F7F39F27FB704263D81312754816E002710598116273DC1F27FF658001600",
126
    INIT_2d => x"20E12218C120C0F17F7FF17FF6ED224F812080F27F7F39F17FB70426F17F7D39",
127
    INIT_2e => x"A7EF7FFDF07FF64F39F27F7FF726508102A74C84E720C6EF7FB6168D0000CC1B",
128
    INIT_2f => x"F604E75F012519C15C04E6E78D5AEA2619C15C4FF02650814CEF7FFC3903E702",
129
    INIT_30 => x"E4205F03E7F07FF7082719C15CF07FF6F42650C15C84A702E7EF7FF72086EF7F",
130
    INIT_31 => x"1946FB1830FB1524FB1051FB0472FB035CFB0267FB0139F27FF702E7EF7FF75F",
131
    INIT_32 => x"C5F95472F958DBF853E0FB5292F84DAFFA5051FA4C8FF847E7F84546F9423BFB",
132
    INIT_33 => x"2E312047554239305359530000000A0DFFFFFFFF7EF991F891F891F891F87EF9",
133
    INIT_34 => x"202D20043F54414857043E040000000A0D4B04202D202045335320524F462034",
134
    INIT_35 => x"20043D58492020043D59492020043D53552020043D43502020043D5053202004",
135
    INIT_36 => x"315343565A4E4948464504203A43432020043D422020043D412020043D504420",
136
    INIT_37 => x"9F6EC87F9F6EC67F9F6EC47F9F6EC07F9F6E26F916D27FF7535FC07FCE103904",
137
    INIT_38 => x"C4EC10340822CE7FBC8B300F27FFFF8CCC7FBE49584F4AAF80E64AAE431FCA7F",
138
    INIT_39 => x"0000000000000000000000000000000000000000C27F9F6E42EE1F37F16E44AE",
139 20 dilbert57
    INIT_3a => x"0000000000000000000000000000000000000000000000000000000000000000",
140
    INIT_3b => x"0000000000000000000000000000000000000000000000000000000000000000",
141
    INIT_3c => x"0000000000000000000000000000000000000000000000000000000000000000",
142
    INIT_3d => x"0000000000000000000000000000000000000000000000000000000000000000",
143
    INIT_3e => x"0000000000000000000000000000000000000000000000000000000000000000",
144 22 dilbert57
    INIT_3f => x"E2FEEEFEFEFEFAFEF6FEF2FE02FFEEFE00000000000000000000000000000000"
145 20 dilbert57
    )
146
 
147
    port map (
148 118 dilbert57
          do   => data_out,
149 20 dilbert57
          dop(0) => dp,
150
          addr => addr,
151
          clk  => clk,
152 118 dilbert57
     di   => data_in,
153 20 dilbert57
          dip(0) => dp,
154
          en   => cs,
155
          ssr  => rst,
156
          we   => we
157
        );
158
 
159
my_sbug : process ( rw )
160
begin
161
         we    <= not rw;
162
end process;
163
 
164
end architecture rtl;
165
 

powered by: WebSVN 2.1.0

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