www.pudn.com > jaguar2s.zip > cosrom128_w1.vhd


--************************************************************ 
--************************************************************ 
--*----------------------------------------------------------* 
--*|Version                               :1.0               | 
--*|Date of Last Revision                 :12/23/1998        | 
--*----------------------------------------------------------* 
--************************************************************ 
-- Copyright (C) 1999 Drey Enterprises Inc.   All Rights Reserved. 
--************************************************************ 
-- Warning: This file is protected by Federal Copyright Law, 
-- with all rights reserved. It is unlawful to reproduce 
-- any parts of this file, in any form, without expressed 
-- written permission from Drey Enterprises Inc. This Copyright 
-- is actively enforced. 
--************************************************************ 
--************************************************************ 
 
library IEEE; 
use IEEE.std_logic_1164.all; 
use IEEE.std_logic_unsigned.all; 
 
entity COSROM128_W1 is 
    port( 
        addr          :in std_logic_vector(6 downto 0); 
        cos_w1        :out std_logic_vector(31 downto 0) 
    ); 
end COSROM128_W1; 
 
architecture behavior of COSROM128_W1 is 
 
    constant ROM_WIDTH:integer := 32; 
    subtype ROMWORD is std_logic_vector(ROM_WIDTH-1 downto 0); 
    type ROM_TABLE is array(0 to 127) of ROMWORD; 
 
    constant ROM:ROM_TABLE := ROM_TABLE'( 
        ROMWORD'("01111111111111111111111111111111"),--address=0 
        ROMWORD'("01111111111101100010000110000001"),--address=1 
        ROMWORD'("01111111110110001000011110001100"),--address=2 
        ROMWORD'("01111111101001110011011010110010"),--address=3 
        ROMWORD'("01111111011000100011011010001101"),--address=4 
        ROMWORD'("01111111000010011001000111000001"),--address=5 
        ROMWORD'("01111110100111010101010111111001"),--address=6 
        ROMWORD'("01111110000111011001001111100111"),--address=7 
        ROMWORD'("01111101100010100101111100111100"),--address=8 
        ROMWORD'("01111100111000111100111010101101"),--address=9 
        ROMWORD'("01111100001010011111101111101001"),--address=10 
        ROMWORD'("01111011010111010000001110011000"),--address=11 
        ROMWORD'("01111010011111010000010101010101"),--address=12 
        ROMWORD'("01111001100010100010001110101010"),--address=13 
        ROMWORD'("01111000100001001000010000001011"),--address=14 
        ROMWORD'("01110111011011000100111011010010"),--address=15 
        ROMWORD'("01110110010000011010111100110010"),--address=16 
        ROMWORD'("01110101000001001101001100111010"),--address=17 
        ROMWORD'("01110011101101011110101111000100"),--address=18 
        ROMWORD'("01110010010101010010110001110111"),--address=19 
        ROMWORD'("01110000111000101100101110110111"),--address=20 
        ROMWORD'("01101111010111110000001010100001"),--address=21 
        ROMWORD'("01101101110010100000110100000010"),--address=22 
        ROMWORD'("01101100001001000010100101001101"),--address=23 
        ROMWORD'("01101010011011011001100010001111"),--address=24 
        ROMWORD'("01101000101001101001111001101011"),--address=25 
        ROMWORD'("01100110110011111000000100001000"),--address=26 
        ROMWORD'("01100100111010001000100100001101"),--address=27 
        ROMWORD'("01100010111100100000000110010001"),--address=28 
        ROMWORD'("01100000111011000011100000010011"),--address=29 
        ROMWORD'("01011110110101110111110001101011"),--address=30 
        ROMWORD'("01011100101101000010000010111111"),--address=31 
        ROMWORD'("01011010100000100111100101111000"),--address=32 
        ROMWORD'("01011000010000101101110100110000"),--address=33 
        ROMWORD'("01010101111101011010010010101100"),--address=34 
        ROMWORD'("01010011100110110010101011001000"),--address=35 
        ROMWORD'("01010001001100111100110001101010"),--address=36 
        ROMWORD'("01001110101111111110100001111001"),--address=37 
        ROMWORD'("01001100001111111101111111000110"),--address=38 
        ROMWORD'("01001001101101000001010100000100"),--address=39 
        ROMWORD'("01000111000111001110110010110101"),--address=40 
        ROMWORD'("01000100011110101100110100011101"),--address=41 
        ROMWORD'("01000001110011100001111000101111"),--address=42 
        ROMWORD'("00111111000101110100100110000000"),--address=43 
        ROMWORD'("00111100010101101011101000110110"),--address=44 
        ROMWORD'("00111001100011001101110011110110"),--address=45 
        ROMWORD'("00110110101110100001111111010110"),--address=46 
        ROMWORD'("00110011110111101111001001000111"),--address=47 
        ROMWORD'("00110000111110111100010100001011"),--address=48 
        ROMWORD'("00101110000100010000101000011110"),--address=49 
        ROMWORD'("00101011000111110011010010100101"),--address=50 
        ROMWORD'("00101000001001101011100011100000"),--address=51 
        ROMWORD'("00100101001010000000110000010100"),--address=52 
        ROMWORD'("00100010001000111010010001111010"),--address=53 
        ROMWORD'("00011111000110011111100100101110"),--address=54 
        ROMWORD'("00011100000010111000001000011011"),--address=55 
        ROMWORD'("00011000111110001011011111101011"),--address=56 
        ROMWORD'("00010101111000100001001111110010"),--address=57 
        ROMWORD'("00010010110010000001000000011010"),--address=58 
        ROMWORD'("00001111101010110010011011010101"),--address=59 
        ROMWORD'("00001100100010111101001100000110"),--address=60 
        ROMWORD'("00001001011010101000111111110000"),--address=61 
        ROMWORD'("00000110010001111101100100100001"),--address=62 
        ROMWORD'("00000011001001000010101001100010"),--address=63 
        ROMWORD'("11111111111111111111111110100011"),--address=64 
        ROMWORD'("11111100110110111101010011100010"),--address=65 
        ROMWORD'("11111001101110000010011000100100"),--address=66 
        ROMWORD'("11110110100101010110111101010101"),--address=67 
        ROMWORD'("11110011011101000010110000111111"),--address=68 
        ROMWORD'("11110000010101001101100001110001"),--address=69 
        ROMWORD'("11101101001101111110111100101101"),--address=70 
        ROMWORD'("11101010000111011110101101010110"),--address=71 
        ROMWORD'("11100111000001110100011101011101"),--address=72 
        ROMWORD'("11100011111101000111110100101110"),--address=73 
        ROMWORD'("11100000111001100000011000011100"),--address=74 
        ROMWORD'("11011101110111000101101011010001"),--address=75 
        ROMWORD'("11011010110101111111001100111000"),--address=76 
        ROMWORD'("11010111110110010100011001101101"),--address=77 
        ROMWORD'("11010100111000001100101010101010"),--address=78 
        ROMWORD'("11010001111011101111010100110011"),--address=79 
        ROMWORD'("11001111000001000011101001000111"),--address=80 
        ROMWORD'("11001100001000010000110100001101"),--address=81 
        ROMWORD'("11001001010001011101111110000000"),--address=82 
        ROMWORD'("11000110011100110010001001100010"),--address=83 
        ROMWORD'("11000011101010010100010100100100"),--address=84 
        ROMWORD'("11000000111010001011010111011101"),--address=85 
        ROMWORD'("10111110001100011110000100110000"),--address=86 
        ROMWORD'("10111011100001010011001001000101"),--address=87 
        ROMWORD'("10111000111000110001001010101111"),--address=88 
        ROMWORD'("10110110010010111110101001100011"),--address=89 
        ROMWORD'("10110011110000000001111110100100"),--address=90 
        ROMWORD'("10110001010000000001011011110011"),--address=91 
        ROMWORD'("10101110110011000011001100000101"),--address=92 
        ROMWORD'("10101100011001001101010010101010"),--address=93 
        ROMWORD'("10101010000010100101101011001001"),--address=94 
        ROMWORD'("10100111101111010010001001001000"),--address=95 
        ROMWORD'("10100101011111011000011000000100"),--address=96 
        ROMWORD'("10100011010010111101111010111111"),--address=97 
        ROMWORD'("10100001001010001000001100010111"),--address=98 
        ROMWORD'("10011111000100111100011101110010"),--address=99 
        ROMWORD'("10011101000011011111110111111000"),--address=100 
        ROMWORD'("10011011000101110111011010000000"),--address=101 
        ROMWORD'("10011001001100000111111010001000"),--address=102 
        ROMWORD'("10010111010110010110000100101001"),--address=103 
        ROMWORD'("10010101100100100110011100001000"),--address=104 
        ROMWORD'("10010011110110111101011001001111"),--address=105 
        ROMWORD'("10010010001101011111001010011101"),--address=106 
        ROMWORD'("10010000101000001111110100000010"),--address=107 
        ROMWORD'("10001111000111010011001111110001"),--address=108 
        ROMWORD'("10001101101010101101001100110101"),--address=109 
        ROMWORD'("10001100010010100001001111101011"),--address=110 
        ROMWORD'("10001010111110110010110001111010"),--address=111 
        ROMWORD'("10001001101111100101000010000110"),--address=112 
        ROMWORD'("10001000100100111011000011101011"),--address=113 
        ROMWORD'("10000111011110110111101110110101"),--address=114 
        ROMWORD'("10000110011101011101110000011011"),--address=115 
        ROMWORD'("10000101100000101111101001110101"),--address=116 
        ROMWORD'("10000100101000101111110000110110"),--address=117 
        ROMWORD'("10000011110101100000001111101001"),--address=118 
        ROMWORD'("10000011000111000011000100101010"),--address=119 
        ROMWORD'("10000010011101011010000010011111"),--address=120 
        ROMWORD'("10000001111000100110101111111001"),--address=121 
        ROMWORD'("10000001011000101010100111101011"),--address=122 
        ROMWORD'("10000000111101100110111000101000"),--address=123 
        ROMWORD'("10000000100111011100100101100000"),--address=124 
        ROMWORD'("10000000010110001100100101000000"),--address=125 
        ROMWORD'("10000000001001110111100001101011"),--address=126 
        ROMWORD'("10000000000010011101111001111011") --address=127 
    ); 
     
begin 
 
    cos_w1 <= ROM(CONV_INTEGER(addr)); 
 
end behavior;