⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bprom.vhd

📁 宇航级微处理器LEON2 2.2 VHDL源代码,很难找的.
💻 VHD
📖 第 1 页 / 共 2 页
字号:
----------------------------------------------------------------------------------- ROM core VHDL template. See the macro description included-- behind this frame.---- Copyright (C) 2000 Rudolf Matousek <matousek@utia.cas.cz>---- Modified by Jiri Gaisler <jgais@ws.estec.esa.nl> for LEON boot prom.---- This code may be used under the terms of Version 2 of the GPL,-- read the file COPYING for details.-----------------------------------------------------------------------------------library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;entity synplify_bprom is    port(      clk : in std_logic;      csn : in std_logic;      addr : in std_logic_vector (29 downto 0);      data : out std_logic_vector (31 downto 0)      );end;architecture rtl of synplify_bprom is  signal raddr : std_logic_vector(7 downto 0);  signal d : std_logic_vector(31 downto 0);  attribute syn_romstyle : string;  attribute syn_romstyle of d : signal is "select_rom";  begin  p : process(raddr)  begin    case raddr is    when "00000000" => d <= "00000011000000000000000000000100";    when "00000001" => d <= "10000010000100000110000011000000";    when "00000010" => d <= "10000001100010000110000000100000";    when "00000011" => d <= "10000010000100000010000000000010";    when "00000100" => d <= "10000001100100000100000000000000";    when "00000101" => d <= "00000001000000000000000000000000";    when "00000110" => d <= "00010001001000000000000000000000";    when "00000111" => d <= "11010010000000100010000000010100";    when "00001000" => d <= "10010010100010100110000000000011";    when "00001001" => d <= "10010010101000100110000000000010";    when "00001010" => d <= "00000010100000000000000000000101";    when "00001011" => d <= "00010011000000000000000001000000";    when "00001100" => d <= "10010010000100100110000000001111";    when "00001101" => d <= "10000001110110000010000000000000";    when "00001110" => d <= "11010010001000100010000000010100";    when "00001111" => d <= "00010011000000000000000000101000";    when "00010000" => d <= "11010010001000100010000010100100";    when "00010001" => d <= "11000000001000100010000001110100";    when "00010010" => d <= "10010010000100000010000000000011";    when "00010011" => d <= "11010010001000100010000001111000";    when "00010100" => d <= "10010010000100000011111111111111";    when "00010101" => d <= "11010010001000100010000001000100";    when "00010110" => d <= "10010010000100000010000000000111";    when "00010111" => d <= "11010010001000100010000001001000";    when "00011000" => d <= "00010011000100000000000000000000";    when "00011001" => d <= "00010101000000000000000000000111";    when "00011010" => d <= "10010100000100101010001000100000";    when "00011011" => d <= "11010100001000100010000000000100";    when "00011100" => d <= "00010111000000000100100011010001";    when "00011101" => d <= "10010110000100101110000101100111";    when "00011110" => d <= "11010110001000100100000000000000";    when "00011111" => d <= "11000000001000100110000000000100";    when "00100000" => d <= "11011000100000100100000000000000";    when "00100001" => d <= "10000000101000101100000000001100";    when "00100010" => d <= "00000010100000000000000000001110";    when "00100011" => d <= "00000001000000000000000000000000";    when "00100100" => d <= "10010100001000101010000000010000";    when "00100101" => d <= "11000000001000100100000000000000";    when "00100110" => d <= "11010100001000100010000000000100";    when "00100111" => d <= "11010110001000100100000000000000";    when "00101000" => d <= "11000000001000100110000000000100";    when "00101001" => d <= "11011000100000100100000000000000";    when "00101010" => d <= "10000000101000101100000000001100";    when "00101011" => d <= "00000010100000000000000000000101";    when "00101100" => d <= "00000001000000000000000000000000";    when "00101101" => d <= "10010100001000101010000000010000";    when "00101110" => d <= "00010000100000000000000000001010";    when "00101111" => d <= "11010100001000100010000000000100";    when "00110000" => d <= "11000000001010100110000000000011";    when "00110001" => d <= "10010110001010101110000011111111";    when "00110010" => d <= "11011000100000100100000000000000";    when "00110011" => d <= "10000000101000101100000000001100";    when "00110100" => d <= "00000010100000000000000000000100";    when "00110101" => d <= "00000001000000000000000000000000";    when "00110110" => d <= "10010100000100101010000001000000";    when "00110111" => d <= "11010100001000100010000000000100";    when "00111000" => d <= "10001000001000100010000000010000";    when "00111001" => d <= "00000101000001000000000000000000";    when "00111010" => d <= "11010110001000010000000000000000";    when "00111011" => d <= "11000000001000010011111111111100";    when "00111100" => d <= "11011010100000010000000000000000";    when "00111101" => d <= "10000000101000110100000000001011";    when "00111110" => d <= "00110010101111111111111111111100";    when "00111111" => d <= "10001000101000010000000000000010";    when "01000000" => d <= "10001011001100010010000000011100";    when "01000001" => d <= "10001010001000010110000000000100";    when "01000010" => d <= "10010010000000001000000000001001";    when "01000011" => d <= "10010010001000100110000000010000";    when "01000100" => d <= "11010110001000100100000000000000";    when "01000101" => d <= "10000101001100001010000000000001";    when "01000110" => d <= "10010100001000101010001000000000";    when "01000111" => d <= "11010100001000100010000000000100";    when "01001000" => d <= "10010010001000100100000000000010";    when "01001001" => d <= "11011010100000100100000000000000";    when "01001010" => d <= "10000000101000110100000000001011";    when "01001011" => d <= "00000010101111111111111111111010";    when "01001100" => d <= "00000001000000000000000000000000";    when "01001101" => d <= "10010100000000101010001000000000";    when "01001110" => d <= "11010100001000100010000000000100";    when "01001111" => d <= "00001001000100000000000000000000";    when "01010000" => d <= "10010010000000100100000000000010";    when "01010001" => d <= "10010010001010100100000000000100";    when "01010010" => d <= "10010011001010100100000000000101";    when "01010011" => d <= "10011100000100100100000000000100";    when "01010100" => d <= "10010111001010010110000000000001";    when "01010101" => d <= "01000000000000000000000000101010";    when "01010110" => d <= "10010000000100000010000111110000";    when "01010111" => d <= "10010010000100000010000111011000";    when "01011000" => d <= "01000000000000000000000000100111";    when "01011001" => d <= "10010000000000101100000000001001";    when "01011010" => d <= "10010010000100000010000110110000";    when "01011011" => d <= "10001011001100101010000000000110";    when "01011100" => d <= "10001010001000010110000000100000";    when "01011101" => d <= "10001010001010010110000000000001";    when "01011110" => d <= "01000000000000000000000000100001";    when "01011111" => d <= "10010000000000100100000000000101";    when "01100000" => d <= "10010010000100000010000110100100";    when "01100001" => d <= "10001011001100101010000000000010";    when "01100010" => d <= "10001010000010010110000000001100";    when "01100011" => d <= "01000000000000000000000000011100";    when "01100100" => d <= "10010000000000100100000000000101";    when "01100101" => d <= "01000000000000000000000000011010";    when "01100110" => d <= "10010000000100000010000111100000";    when "01100111" => d <= "01000000000000000000000000111010";    when "01101000" => d <= "00000001000000000000000000000000";    when "01101001" => d <= "00100000001110000010110100000000";    when "01101010" => d <= "00110001001101100010110100000000";    when "01101011" => d <= "00110011001100100010110100000000";    when "01101100" => d <= "00101010001100010011001000111000";    when "01101101" => d <= "01001011001000000000000000000000";    when "01101110" => d <= "00101010001100100011010100110110";    when "01101111" => d <= "01001011001000000000000000000000";    when "01110000" => d <= "00101010001101010011000100110010";    when "01110001" => d <= "01001011001000000000000000000000";    when "01110010" => d <= "00101010001100010011000000110010";    when "01110011" => d <= "00110100010010110010000000000000";

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -