mirror of
https://github.com/Gehstock/Mist_FPGA.git
synced 2026-01-20 09:44:38 +00:00
move rom to sdram
This commit is contained in:
parent
825d25ce6c
commit
c6d769f64a
BIN
Arcade_MiST/Atari Vector/LunarLander_MiST.rar
Normal file
BIN
Arcade_MiST/Atari Vector/LunarLander_MiST.rar
Normal file
Binary file not shown.
@ -192,20 +192,11 @@ set_global_assignment -name VHDL_FILE rtl/llander.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/llander_vg.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/llander_ram.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/llander_dw.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_VEC_ROM_2.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_VEC_ROM_1.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_VEC_ROM_0.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_PROG_ROM_3.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_PROG_ROM_2.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_PROG_ROM_1.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_PROG_ROM_0.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/rom/LLANDER_DVG_ROM.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/gen_ram.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/dpram.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/ovo.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/base_pack.vhd
|
||||
set_global_assignment -name SYSTEMVERILOG_FILE rtl/sdram.sv
|
||||
set_global_assignment -name VERILOG_FILE rtl/p2ram.v
|
||||
set_global_assignment -name VERILOG_FILE rtl/pll.v
|
||||
set_global_assignment -name QIP_FILE ../../../common/CPU/T65/T65.qip
|
||||
set_global_assignment -name QIP_FILE ../../../common/mist/mist.qip
|
||||
|
||||
134
Arcade_MiST/Atari Vector/LunarLander_MiST/LunarLander.sdc
Normal file
134
Arcade_MiST/Atari Vector/LunarLander_MiST/LunarLander.sdc
Normal file
@ -0,0 +1,134 @@
|
||||
## Generated SDC file "vectrex_MiST.out.sdc"
|
||||
|
||||
## Copyright (C) 1991-2013 Altera Corporation
|
||||
## Your use of Altera Corporation's design tools, logic functions
|
||||
## and other software and tools, and its AMPP partner logic
|
||||
## functions, and any output files from any of the foregoing
|
||||
## (including device programming or simulation files), and any
|
||||
## associated documentation or information are expressly subject
|
||||
## to the terms and conditions of the Altera Program License
|
||||
## Subscription Agreement, Altera MegaCore Function License
|
||||
## Agreement, or other applicable license agreement, including,
|
||||
## without limitation, that your use is for the sole purpose of
|
||||
## programming logic devices manufactured by Altera and sold by
|
||||
## Altera or its authorized distributors. Please refer to the
|
||||
## applicable agreement for further details.
|
||||
|
||||
|
||||
## VENDOR "Altera"
|
||||
## PROGRAM "Quartus II"
|
||||
## VERSION "Version 13.1.0 Build 162 10/23/2013 SJ Web Edition"
|
||||
|
||||
## DATE "Sun Jun 24 12:53:00 2018"
|
||||
|
||||
##
|
||||
## DEVICE "EP3C25E144C8"
|
||||
##
|
||||
|
||||
# Clock constraints
|
||||
|
||||
# Automatically constrain PLL and other generated clocks
|
||||
derive_pll_clocks -create_base_clocks
|
||||
|
||||
# Automatically calculate clock uncertainty to jitter and other effects.
|
||||
derive_clock_uncertainty
|
||||
|
||||
# tsu/th constraints
|
||||
|
||||
# tco constraints
|
||||
|
||||
# tpd constraints
|
||||
|
||||
#**************************************************************
|
||||
# Time Information
|
||||
#**************************************************************
|
||||
|
||||
set_time_format -unit ns -decimal_places 3
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Create Clock
|
||||
#**************************************************************
|
||||
|
||||
create_clock -name {SPI_SCK} -period 41.666 -waveform { 20.8 41.666 } [get_ports {SPI_SCK}]
|
||||
|
||||
set sys_clk "pll|altpll_component|auto_generated|pll1|clk[0]"
|
||||
set sdram_clk "pll|altpll_component|auto_generated|pll1|clk[0]"
|
||||
#**************************************************************
|
||||
# Create Generated Clock
|
||||
#**************************************************************
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Clock Latency
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Clock Uncertainty
|
||||
#**************************************************************
|
||||
|
||||
#**************************************************************
|
||||
# Set Input Delay
|
||||
#**************************************************************
|
||||
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {CLOCK_27}] 1.000 [get_ports {CLOCK_27}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {CONF_DATA0}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DI}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SCK}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS2}]
|
||||
set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS3}]
|
||||
|
||||
set_input_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -max 6.6 [get_ports SDRAM_DQ[*]]
|
||||
set_input_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -min 3.5 [get_ports SDRAM_DQ[*]]
|
||||
|
||||
#**************************************************************
|
||||
# Set Output Delay
|
||||
#**************************************************************
|
||||
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DO}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {AUDIO_L}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {AUDIO_R}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {LED}]
|
||||
set_output_delay -add_delay -clock_fall -clock [get_clocks $sys_clk] 1.000 [get_ports {VGA_*}]
|
||||
|
||||
set_output_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -max 1.5 [get_ports {SDRAM_D* SDRAM_A* SDRAM_BA* SDRAM_n* SDRAM_CKE}]
|
||||
set_output_delay -clock [get_clocks $sdram_clk] -reference_pin [get_ports {SDRAM_CLK}] -min -0.8 [get_ports {SDRAM_D* SDRAM_A* SDRAM_BA* SDRAM_n* SDRAM_CKE}]
|
||||
|
||||
#**************************************************************
|
||||
# Set Clock Groups
|
||||
#**************************************************************
|
||||
|
||||
set_clock_groups -asynchronous -group [get_clocks {SPI_SCK}] -group [get_clocks {pll|altpll_component|auto_generated|pll1|clk[*]}]
|
||||
|
||||
#**************************************************************
|
||||
# Set False Path
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Multicycle Path
|
||||
#**************************************************************
|
||||
|
||||
set_multicycle_path -to {VGA_*[*]} -setup 2
|
||||
set_multicycle_path -to {VGA_*[*]} -hold 1
|
||||
|
||||
#**************************************************************
|
||||
# Set Maximum Delay
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Minimum Delay
|
||||
#**************************************************************
|
||||
|
||||
|
||||
|
||||
#**************************************************************
|
||||
# Set Input Transition
|
||||
#**************************************************************
|
||||
|
||||
BIN
Arcade_MiST/Atari Vector/LunarLander_MiST/Release/LLANDER.ROM
Normal file
BIN
Arcade_MiST/Atari Vector/LunarLander_MiST/Release/LLANDER.ROM
Normal file
Binary file not shown.
@ -13,7 +13,7 @@ module LunarLander_MiST(
|
||||
input SPI_SS2,
|
||||
input SPI_SS3,
|
||||
input CONF_DATA0,
|
||||
input CLOCK_27/*,
|
||||
input CLOCK_27,
|
||||
|
||||
output [12:0] SDRAM_A,
|
||||
inout [15:0] SDRAM_DQ,
|
||||
@ -26,13 +26,13 @@ module LunarLander_MiST(
|
||||
output [1:0] SDRAM_BA,
|
||||
output SDRAM_CLK,
|
||||
output SDRAM_CKE
|
||||
*/
|
||||
|
||||
);
|
||||
|
||||
`include "rtl\build_id.v"
|
||||
|
||||
localparam CONF_STR = {
|
||||
"LunarLander;;",
|
||||
"LLANDER;ROM;",
|
||||
"O12,Scanlines,None,CRT 25%,CRT 50%,CRT 75%;",
|
||||
"O3,Test,Off,On;",
|
||||
"O45,Language,English,Spanish,French,German;",
|
||||
@ -41,8 +41,10 @@ localparam CONF_STR = {
|
||||
"V,v1.00.",`BUILD_DATE
|
||||
};
|
||||
|
||||
assign LED = 1;
|
||||
assign LED = ~ioctl_downl;
|
||||
assign AUDIO_R = AUDIO_L;
|
||||
assign SDRAM_CLK = clk_50;
|
||||
assign SDRAM_CKE = 1;
|
||||
|
||||
wire clk_50, clk_25, clk_6, locked;
|
||||
pll pll(
|
||||
@ -70,45 +72,81 @@ wire [7:0] audio;
|
||||
wire key_strobe;
|
||||
wire key_pressed;
|
||||
wire [7:0] key_code;
|
||||
//this must go to sdram
|
||||
wire [18:0] vram_write_addr;
|
||||
wire [3:0] vram_write_data;
|
||||
wire [18:0] vram_read_addr;
|
||||
wire [3:0] vram_read_data;
|
||||
wire vram_wren;
|
||||
/*
|
||||
sdram sdram (
|
||||
.SDRAM_DQ(SDRAM_DQ),
|
||||
.SDRAM_A(SDRAM_A),
|
||||
.SDRAM_DQML(SDRAM_DQML),
|
||||
.SDRAM_DQMH(SDRAM_DQMH),
|
||||
.SDRAM_BA(SDRAM_BA),
|
||||
.SDRAM_nCS(SDRAM_nCS),
|
||||
.SDRAM_nWE(SDRAM_nWE),
|
||||
.SDRAM_nRAS(SDRAM_nRAS),
|
||||
.SDRAM_nCAS(SDRAM_nCAS),
|
||||
.SDRAM_CKE(SDRAM_CKE),
|
||||
.init(~locked), // init signal after FPGA config to initialize RAM
|
||||
.clk(clk_50), // sdram is accessed at up to 128MHz
|
||||
.clkref(clk_25), // reference clock to sync to
|
||||
.din(vram_write_data), // data input from chipset/cpu
|
||||
.dout(vram_read_data), // data output to chipset/cpu
|
||||
.raddr(vram_read_addr), // 25 bit byte address
|
||||
.waddr(vram_write_addr), // 25 bit byte address
|
||||
.rd(~vram_wren), // cpu/chipset requests read
|
||||
.we(vram_wren)
|
||||
);*/
|
||||
wire [12:0] cpu_rom_address;
|
||||
wire [15:0] cpu_rom_data;
|
||||
wire [12:0] vector_rom_address;
|
||||
wire [15:0] vector_rom_data;
|
||||
wire ioctl_downl;
|
||||
wire [7:0] ioctl_index;
|
||||
wire ioctl_wr;
|
||||
wire [24:0] ioctl_addr;
|
||||
wire [7:0] ioctl_dout;
|
||||
|
||||
//reduced ram size
|
||||
data_io data_io(
|
||||
.clk_sys ( clk_25 ),
|
||||
.SPI_SCK ( SPI_SCK ),
|
||||
.SPI_SS2 ( SPI_SS2 ),
|
||||
.SPI_DI ( SPI_DI ),
|
||||
.ioctl_download( ioctl_downl ),
|
||||
.ioctl_index ( ioctl_index ),
|
||||
.ioctl_wr ( ioctl_wr ),
|
||||
.ioctl_addr ( ioctl_addr ),
|
||||
.ioctl_dout ( ioctl_dout )
|
||||
);
|
||||
|
||||
reg port1_req, port2_req;
|
||||
sdram sdram(
|
||||
.*,
|
||||
.init_n ( locked ),
|
||||
.clk ( clk_50 ),
|
||||
|
||||
// port1 used for main CPU
|
||||
.port1_req ( port1_req ),
|
||||
.port1_ack ( ),
|
||||
.port1_a ( ioctl_addr[23:1] ),
|
||||
.port1_ds ( {ioctl_addr[0], ~ioctl_addr[0]} ),
|
||||
.port1_we ( ioctl_downl ),
|
||||
.port1_d ( {ioctl_dout, ioctl_dout} ),
|
||||
.port1_q ( ),
|
||||
|
||||
.cpu1_addr ( ioctl_downl ? 15'h7fff : {3'b000, cpu_rom_address[12:1]} ),
|
||||
.cpu1_q ( cpu_rom_data ),
|
||||
|
||||
// port2 for sound board
|
||||
.port2_req ( port2_req ),
|
||||
.port2_ack ( ),
|
||||
.port2_a ( ioctl_addr[23:1] - 16'h1000 ),
|
||||
.port2_ds ( {ioctl_addr[0], ~ioctl_addr[0]} ),
|
||||
.port2_we ( ioctl_downl ),
|
||||
.port2_d ( {ioctl_dout, ioctl_dout} ),
|
||||
.port2_q ( ),
|
||||
|
||||
.snd_addr ( ioctl_downl ? 15'h7fff : {3'b000, vector_rom_address[12:1]} ),
|
||||
.snd_q ( vector_rom_data )
|
||||
);
|
||||
|
||||
always @(posedge clk_25) begin
|
||||
reg ioctl_wr_last = 0;
|
||||
|
||||
ioctl_wr_last <= ioctl_wr;
|
||||
if (ioctl_downl) begin
|
||||
if (~ioctl_wr_last && ioctl_wr) begin
|
||||
port1_req <= ~port1_req;
|
||||
port2_req <= ~port2_req;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
reg reset = 1;
|
||||
reg rom_loaded = 0;
|
||||
always @(posedge clk_25) begin
|
||||
reg ioctl_downlD;
|
||||
ioctl_downlD <= ioctl_downl;
|
||||
|
||||
if (ioctl_downlD & ~ioctl_downl) rom_loaded <= 1;
|
||||
reset <= status[0] | buttons[1] | ~rom_loaded;
|
||||
end
|
||||
|
||||
p2ram p2ram (
|
||||
.clock(clk_25),
|
||||
.data(vram_write_data),
|
||||
.rdaddress(vram_read_addr[15:0]),
|
||||
.wraddress(vram_write_addr[15:0]),
|
||||
.wren(vram_wren),
|
||||
.q(vram_read_data)
|
||||
);
|
||||
|
||||
LLANDER_TOP LLANDER_TOP (
|
||||
.ROT_LEFT_L(~m_left),
|
||||
@ -137,14 +175,13 @@ LLANDER_TOP LLANDER_TOP (
|
||||
.VID_VBLANK(vb),
|
||||
.VGA_DE(vgade),
|
||||
.DIP({1'b0,1'b0,status[4],status[5],~status[6],1'b1,status[7],status[8]}),//todo dip full
|
||||
.RESET_L(~(status[0] | buttons[1])),
|
||||
.RESET_L(~(reset)),
|
||||
.clk_6(clk_6),
|
||||
.clk_25(clk_25),
|
||||
.vram_write_addr(vram_write_addr),
|
||||
.vram_write_data(vram_write_data),
|
||||
.vram_read_addr(vram_read_addr),
|
||||
.vram_read_data(vram_read_data),
|
||||
.vram_wren(vram_wren)
|
||||
.cpu_rom_address(cpu_rom_address),
|
||||
.cpu_rom_data (cpu_rom_address[0] ? cpu_rom_data[15:8] : cpu_rom_data[7:0] ),
|
||||
.vector_rom_address(vector_rom_address),
|
||||
.vector_rom_data (vector_rom_address[0] ? vector_rom_data[15:8] : vector_rom_data[7:0] )
|
||||
);
|
||||
|
||||
ovo #(
|
||||
|
||||
@ -84,7 +84,11 @@ entity LLander is
|
||||
Y_VECTOR : out std_logic_vector(9 downto 0);
|
||||
Z_VECTOR : out std_logic_vector(3 downto 0);
|
||||
BEAM_ON : out std_logic;
|
||||
BEAM_ENA : out std_logic
|
||||
BEAM_ENA : out std_logic;
|
||||
cpu_rom_address : out std_logic_vector(12 downto 0);
|
||||
cpu_rom_data : in std_logic_vector( 7 downto 0);
|
||||
vector_rom_address : out std_logic_vector(12 downto 0);
|
||||
vector_rom_data : in std_logic_vector( 7 downto 0)
|
||||
);
|
||||
end;
|
||||
|
||||
@ -430,56 +434,15 @@ begin
|
||||
end case;
|
||||
end process;
|
||||
|
||||
rom0 : entity work.LLANDER_PROG_ROM_0
|
||||
port map (
|
||||
addr => c_addr(10 downto 0),
|
||||
data => rom0_dout,
|
||||
clk => CLK_6
|
||||
);
|
||||
--rom : entity work.llander_cpu_rom
|
||||
-- port map (
|
||||
-- clk => CLK_6,
|
||||
-- addr => c_addr(12 downto 0),
|
||||
-- data => rom_dout
|
||||
--);
|
||||
|
||||
rom1 : entity work.LLANDER_PROG_ROM_1
|
||||
port map (
|
||||
addr => c_addr(10 downto 0),
|
||||
data => rom1_dout,
|
||||
clk => CLK_6
|
||||
);
|
||||
|
||||
rom2 : entity work.LLANDER_PROG_ROM_2
|
||||
port map (
|
||||
addr => c_addr(10 downto 0),
|
||||
data => rom2_dout,
|
||||
clk => CLK_6
|
||||
);
|
||||
|
||||
rom3 : entity work.LLANDER_PROG_ROM_3
|
||||
port map (
|
||||
addr => c_addr(10 downto 0),
|
||||
data => rom3_dout,
|
||||
clk => CLK_6
|
||||
);
|
||||
|
||||
p_rom_mux : process(c_addr, rom0_dout, rom1_dout, rom2_dout, rom3_dout)
|
||||
begin
|
||||
rom_dout <= (others => '0');
|
||||
case c_addr(12 downto 11) is
|
||||
when "00" => rom_dout <= rom0_dout;
|
||||
when "01" => rom_dout <= rom1_dout;
|
||||
when "10" => rom_dout <= rom2_dout;
|
||||
when "11" => rom_dout <= rom3_dout;
|
||||
when others => null;
|
||||
end case;
|
||||
end process;
|
||||
|
||||
|
||||
-- Zero-page RAM
|
||||
--RAM: Entity work.RAM256
|
||||
--port map(
|
||||
-- clock => clk_6,
|
||||
-- address => c_addr(7 downto 0),
|
||||
-- data => c_dout,
|
||||
-- wren => ram_we,
|
||||
-- q => ram_dout
|
||||
-- );
|
||||
cpu_rom_address <= c_addr(12 downto 0);
|
||||
rom_dout <= cpu_rom_data;
|
||||
|
||||
RAM: Entity work.gen_ram
|
||||
generic map(
|
||||
@ -639,7 +602,9 @@ end process;
|
||||
ENA_1_5M_E => ena_1_5m_e,
|
||||
RESET_L => reset_l,
|
||||
CLK_6 => CLK_6,
|
||||
CLK_25 => CLK_25
|
||||
CLK_25 => CLK_25,
|
||||
vector_rom_address => vector_rom_address,
|
||||
vector_rom_data => vector_rom_data
|
||||
);
|
||||
|
||||
BEAM_ENA <= ena_1_5m;
|
||||
|
||||
@ -57,30 +57,24 @@ library ieee;
|
||||
|
||||
entity LLANDER_DW is
|
||||
port (
|
||||
RESET : in std_logic;
|
||||
clk_25 : in std_logic;
|
||||
clk_6 : in std_logic;
|
||||
RESET : in std_logic;
|
||||
clk_25 : in std_logic;
|
||||
clk_6 : in std_logic;
|
||||
|
||||
X_VECTOR : in std_logic_vector(9 downto 0);
|
||||
Y_VECTOR : in std_logic_vector(9 downto 0);
|
||||
Z_VECTOR : in std_logic_vector(3 downto 0);
|
||||
BEAM_ON : in std_logic;
|
||||
BEAM_ENA : in std_logic;
|
||||
X_VECTOR : in std_logic_vector(9 downto 0);
|
||||
Y_VECTOR : in std_logic_vector(9 downto 0);
|
||||
Z_VECTOR : in std_logic_vector(3 downto 0);
|
||||
BEAM_ON : in std_logic;
|
||||
BEAM_ENA : in std_logic;
|
||||
|
||||
VIDEO_R_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_G_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_B_OUT : out std_logic_vector(3 downto 0);
|
||||
HSYNC_OUT : out std_logic;
|
||||
VSYNC_OUT : out std_logic;
|
||||
VID_DE : out std_logic;
|
||||
VID_HBLANK : out std_logic;
|
||||
VID_VBLANK : out std_logic;
|
||||
|
||||
vram_write_addr : out std_logic_vector(18 downto 0);
|
||||
vram_write_data : out std_logic_vector(3 downto 0);
|
||||
vram_read_addr : out std_logic_vector(18 downto 0);
|
||||
vram_read_data : in std_logic_vector(3 downto 0);
|
||||
vram_wren : out std_logic
|
||||
VIDEO_R_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_G_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_B_OUT : out std_logic_vector(3 downto 0);
|
||||
HSYNC_OUT : out std_logic;
|
||||
VSYNC_OUT : out std_logic;
|
||||
VID_DE : out std_logic;
|
||||
VID_HBLANK : out std_logic;
|
||||
VID_VBLANK : out std_logic
|
||||
);
|
||||
end;
|
||||
|
||||
@ -129,7 +123,7 @@ architecture RTL of LLANDER_DW is
|
||||
signal vcount : std_logic_vector(8 downto 0);
|
||||
signal hcount : std_logic_vector(8 downto 0);
|
||||
signal pxcount : std_logic_vector(8 downto 0);
|
||||
-- signal vram_wren : std_logic;
|
||||
signal vram_wren : std_logic;
|
||||
|
||||
|
||||
|
||||
@ -431,20 +425,18 @@ begin
|
||||
end process;
|
||||
|
||||
|
||||
--video_rgb : work.dpram generic map (19,4)
|
||||
--port map(
|
||||
-- clock_a => clk_25,
|
||||
-- wren_a => vram_wren,
|
||||
-- address_a => dw_addr(18 downto 0),
|
||||
-- data_a => vid_data,
|
||||
video_rgb : work.dpram generic map (16,4)
|
||||
port map
|
||||
(
|
||||
clock_a => clk_25,
|
||||
wren_a => vram_wren,
|
||||
address_a => dw_addr(15 downto 0),
|
||||
data_a => vid_data,
|
||||
|
||||
-- clock_b => clk_25,
|
||||
-- address_b => (screen & up_addr(17 downto 0)),
|
||||
--);
|
||||
vram_write_addr <= dw_addr(18 downto 0);
|
||||
vram_write_data <= vid_data;
|
||||
vram_read_addr <= screen & up_addr(17 downto 0);
|
||||
vid_out <= vram_read_data;
|
||||
clock_b => clk_25,
|
||||
address_b => (screen & up_addr(14 downto 0)),
|
||||
q_b => vid_out
|
||||
);
|
||||
|
||||
-- job done !
|
||||
end architecture RTL;
|
||||
|
||||
@ -97,18 +97,17 @@ entity LLANDER_TOP is
|
||||
VID_HBLANK : out std_logic;
|
||||
VID_VBLANK : out std_logic;
|
||||
|
||||
DIP : in std_logic_vector(7 downto 0);
|
||||
DIP : in std_logic_vector(7 downto 0);
|
||||
|
||||
RESET_L : in std_logic;
|
||||
|
||||
-- ref clock in
|
||||
clk_6 : in std_logic;
|
||||
clk_25 : in std_logic;
|
||||
vram_write_addr : out std_logic_vector(18 downto 0);
|
||||
vram_write_data : out std_logic_vector(3 downto 0);
|
||||
vram_read_addr : out std_logic_vector(18 downto 0);
|
||||
vram_read_data : in std_logic_vector(3 downto 0);
|
||||
vram_wren : out std_logic
|
||||
cpu_rom_address : out std_logic_vector(12 downto 0);
|
||||
cpu_rom_data : in std_logic_vector(7 downto 0);
|
||||
vector_rom_address : out std_logic_vector(12 downto 0);
|
||||
vector_rom_data : in std_logic_vector(7 downto 0)
|
||||
);
|
||||
end;
|
||||
|
||||
@ -203,7 +202,11 @@ port map(
|
||||
y_vector => y_vector,
|
||||
z_vector => z_vector,
|
||||
beam_on => beam_on,
|
||||
BEAM_ENA => beam_ena
|
||||
BEAM_ENA => beam_ena,
|
||||
cpu_rom_address => cpu_rom_address,
|
||||
cpu_rom_data => cpu_rom_data,
|
||||
vector_rom_address => vector_rom_address,
|
||||
vector_rom_data => vector_rom_data
|
||||
);
|
||||
|
||||
y_vector_w_offset<= y_vector+100;
|
||||
@ -228,13 +231,7 @@ port map(
|
||||
VSYNC_OUT => VSYNC_OUT,
|
||||
VID_DE => VGA_DE,
|
||||
VID_HBLANK => VID_HBLANK,
|
||||
VID_VBLANK => VID_VBLANK,
|
||||
|
||||
vram_write_addr => vram_write_addr,
|
||||
vram_write_data => vram_write_data,
|
||||
vram_read_addr => vram_read_addr,
|
||||
vram_read_data => vram_read_data,
|
||||
vram_wren => vram_wren
|
||||
VID_VBLANK => VID_VBLANK
|
||||
);
|
||||
|
||||
|
||||
|
||||
@ -52,26 +52,28 @@ library ieee;
|
||||
|
||||
entity LLANDER_VG is
|
||||
port (
|
||||
C_ADDR : in std_logic_vector(15 downto 0);
|
||||
C_DIN : in std_logic_vector( 7 downto 0);
|
||||
C_DOUT : out std_logic_vector( 7 downto 0);
|
||||
C_RW_L : in std_logic;
|
||||
VMEM_L : in std_logic;
|
||||
C_ADDR : in std_logic_vector(15 downto 0);
|
||||
C_DIN : in std_logic_vector( 7 downto 0);
|
||||
C_DOUT : out std_logic_vector( 7 downto 0);
|
||||
C_RW_L : in std_logic;
|
||||
VMEM_L : in std_logic;
|
||||
|
||||
DMA_GO_L : in std_logic;
|
||||
DMA_RESET_L : in std_logic;
|
||||
HALT_OP : out std_logic;
|
||||
DMA_GO_L : in std_logic;
|
||||
DMA_RESET_L : in std_logic;
|
||||
HALT_OP : out std_logic;
|
||||
|
||||
X_VECTOR : out std_logic_vector(9 downto 0);
|
||||
Y_VECTOR : out std_logic_vector(9 downto 0);
|
||||
Z_VECTOR : out std_logic_vector(3 downto 0);
|
||||
BEAM_ON : out std_logic;
|
||||
X_VECTOR : out std_logic_vector(9 downto 0);
|
||||
Y_VECTOR : out std_logic_vector(9 downto 0);
|
||||
Z_VECTOR : out std_logic_vector(3 downto 0);
|
||||
BEAM_ON : out std_logic;
|
||||
|
||||
ENA_1_5M : in std_logic;
|
||||
ENA_1_5M_E : in std_logic;
|
||||
RESET_L : in std_logic;
|
||||
CLK_6 : in std_logic;
|
||||
Clk_25 : in std_logic
|
||||
ENA_1_5M : in std_logic;
|
||||
ENA_1_5M_E : in std_logic;
|
||||
RESET_L : in std_logic;
|
||||
CLK_6 : in std_logic;
|
||||
Clk_25 : in std_logic;
|
||||
vector_rom_address : out std_logic_vector(12 downto 0);
|
||||
vector_rom_data : in std_logic_vector( 7 downto 0)
|
||||
);
|
||||
end;
|
||||
|
||||
@ -117,14 +119,10 @@ architecture RTL of LLANDER_VG is
|
||||
|
||||
signal vram1_l : std_logic;
|
||||
signal vram2_l : std_logic;
|
||||
signal vrom1_l : std_logic;
|
||||
signal vrom2_l : std_logic;
|
||||
signal vrom3_l : std_logic;
|
||||
signal vrom_l : std_logic;
|
||||
signal vram1_t1_l : std_logic;
|
||||
signal vram2_t1_l : std_logic;
|
||||
signal vrom1_t1_l : std_logic;
|
||||
signal vrom2_t1_l : std_logic;
|
||||
signal vrom3_t1_l : std_logic;
|
||||
signal vrom_t1_l : std_logic;
|
||||
signal am_bus : std_logic_vector(12 downto 0);
|
||||
signal vw_l : std_logic;
|
||||
|
||||
@ -144,9 +142,7 @@ architecture RTL of LLANDER_VG is
|
||||
signal ram_din : std_logic_vector(7 downto 0);
|
||||
signal ram_dout_1 : std_logic_vector(7 downto 0);
|
||||
signal ram_dout_2 : std_logic_vector(7 downto 0);
|
||||
signal rom_dout_1 : std_logic_vector(7 downto 0);
|
||||
signal rom_dout_2 : std_logic_vector(7 downto 0);
|
||||
signal rom_dout_3 : std_logic_vector(7 downto 0);
|
||||
signal rom_dout : std_logic_vector(7 downto 0);
|
||||
signal memory_dout : std_logic_vector(7 downto 0);
|
||||
|
||||
begin
|
||||
@ -403,18 +399,16 @@ begin
|
||||
begin
|
||||
vram1_l <= '1';
|
||||
vram2_l <= '1';
|
||||
vrom1_l <= '1';
|
||||
vrom2_l <= '1';
|
||||
vrom3_l <= '1';
|
||||
vrom_l <= '1';
|
||||
case am_bus(12 downto 10) is
|
||||
when "000" => vram1_l <= '0';
|
||||
when "001" => vram2_l <= '0';
|
||||
when "010" => vrom1_l <= '0';
|
||||
when "011" => vrom1_l <= '0';
|
||||
when "100" => vrom2_l <= '0';
|
||||
when "101" => vrom2_l <= '0';
|
||||
when "110" => vrom3_l <= '0'; -- AJS?
|
||||
when "111" => vrom3_l <= '0';
|
||||
when "010" => vrom_l <= '0';
|
||||
when "011" => vrom_l <= '0';
|
||||
when "100" => vrom_l <= '0';
|
||||
when "101" => vrom_l <= '0';
|
||||
when "110" => vrom_l <= '0'; -- AJS?
|
||||
when "111" => vrom_l <= '0';
|
||||
|
||||
when others => null;
|
||||
end case;
|
||||
@ -425,9 +419,7 @@ begin
|
||||
wait until rising_edge(CLK_6);
|
||||
vram1_t1_l <= vram1_l;
|
||||
vram2_t1_l <= vram2_l;
|
||||
vrom1_t1_l <= vrom1_l;
|
||||
vrom2_t1_l <= vrom2_l;
|
||||
vrom3_t1_l <= vrom3_l;
|
||||
vrom_t1_l <= vrom_l;
|
||||
end process;
|
||||
|
||||
-- only cpu can write to vector ram
|
||||
@ -457,28 +449,17 @@ begin
|
||||
CLK => CLK_6
|
||||
);
|
||||
|
||||
u_vector_rom_0 : entity work.LLANDER_VEC_ROM_0
|
||||
port map (
|
||||
addr => am_bus(10 downto 0),
|
||||
data => rom_dout_1,
|
||||
clk => CLK_6
|
||||
);
|
||||
-- u_vector_rom : entity work.llander_vec_rom
|
||||
-- port map (
|
||||
-- clk => CLK_6,
|
||||
-- addr => am_bus(12 downto 0),
|
||||
-- data => rom_dout
|
||||
--);
|
||||
|
||||
u_vector_rom_1 : entity work.LLANDER_VEC_ROM_1
|
||||
port map (
|
||||
addr => am_bus(10 downto 0),
|
||||
data => rom_dout_2,
|
||||
clk => CLK_6
|
||||
);
|
||||
|
||||
u_vector_rom_2 : entity work.LLANDER_VEC_ROM_2
|
||||
port map (
|
||||
addr => am_bus(10 downto 0),
|
||||
data => rom_dout_3,
|
||||
clk => CLK_6
|
||||
);
|
||||
vector_rom_address <= am_bus(12 downto 0);
|
||||
rom_dout <= vector_rom_data;
|
||||
|
||||
p_memory_data_mux : process(vram1_t1_l, vram2_t1_l, vrom1_t1_l, vrom2_t1_l, vrom3_t1_l,ram_dout_1, ram_dout_2, rom_dout_1, rom_dout_2,rom_dout_3)
|
||||
p_memory_data_mux : process(vram1_t1_l, vram2_t1_l, vrom_t1_l, ram_dout_1, ram_dout_2, rom_dout)
|
||||
begin
|
||||
-- cpu buffer enabled when VMEM_L = 0
|
||||
memory_dout <= (others => '0');
|
||||
@ -486,16 +467,12 @@ u_vector_rom_2 : entity work.LLANDER_VEC_ROM_2
|
||||
memory_dout <= ram_dout_1;
|
||||
elsif (vram2_t1_l = '0') then
|
||||
memory_dout <= ram_dout_2;
|
||||
elsif (vrom1_t1_l = '0') then
|
||||
memory_dout <= rom_dout_1; -- AJS??
|
||||
elsif (vrom2_t1_l = '0') then
|
||||
memory_dout <= rom_dout_2; -- AJS??
|
||||
elsif (vrom3_t1_l = '0') then
|
||||
memory_dout <= rom_dout_3; -- AJS??
|
||||
elsif (vrom_t1_l = '0')then
|
||||
memory_dout <= rom_dout; -- AJS??
|
||||
else
|
||||
memory_dout <= (others => 'X');
|
||||
end if;
|
||||
end process;
|
||||
end process;
|
||||
--
|
||||
-- data memory latches
|
||||
--
|
||||
|
||||
@ -1,215 +0,0 @@
|
||||
// megafunction wizard: %RAM: 2-PORT%
|
||||
// GENERATION: STANDARD
|
||||
// VERSION: WM1.0
|
||||
// MODULE: altsyncram
|
||||
|
||||
// ============================================================
|
||||
// File Name: p2ram.v
|
||||
// Megafunction Name(s):
|
||||
// altsyncram
|
||||
//
|
||||
// Simulation Library Files(s):
|
||||
// altera_mf
|
||||
// ============================================================
|
||||
// ************************************************************
|
||||
// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
|
||||
//
|
||||
// 13.1.0 Build 162 10/23/2013 SJ Web Edition
|
||||
// ************************************************************
|
||||
|
||||
|
||||
//Copyright (C) 1991-2013 Altera Corporation
|
||||
//Your use of Altera Corporation's design tools, logic functions
|
||||
//and other software and tools, and its AMPP partner logic
|
||||
//functions, and any output files from any of the foregoing
|
||||
//(including device programming or simulation files), and any
|
||||
//associated documentation or information are expressly subject
|
||||
//to the terms and conditions of the Altera Program License
|
||||
//Subscription Agreement, Altera MegaCore Function License
|
||||
//Agreement, or other applicable license agreement, including,
|
||||
//without limitation, that your use is for the sole purpose of
|
||||
//programming logic devices manufactured by Altera and sold by
|
||||
//Altera or its authorized distributors. Please refer to the
|
||||
//applicable agreement for further details.
|
||||
|
||||
|
||||
// synopsys translate_off
|
||||
`timescale 1 ps / 1 ps
|
||||
// synopsys translate_on
|
||||
module p2ram (
|
||||
clock,
|
||||
data,
|
||||
rdaddress,
|
||||
wraddress,
|
||||
wren,
|
||||
q);
|
||||
|
||||
input clock;
|
||||
input [3:0] data;
|
||||
input [16:0] rdaddress;
|
||||
input [16:0] wraddress;
|
||||
input wren;
|
||||
output [3:0] q;
|
||||
`ifndef ALTERA_RESERVED_QIS
|
||||
// synopsys translate_off
|
||||
`endif
|
||||
tri1 clock;
|
||||
tri0 wren;
|
||||
`ifndef ALTERA_RESERVED_QIS
|
||||
// synopsys translate_on
|
||||
`endif
|
||||
|
||||
wire [3:0] sub_wire0;
|
||||
wire [3:0] q = sub_wire0[3:0];
|
||||
|
||||
altsyncram altsyncram_component (
|
||||
.address_a (wraddress),
|
||||
.clock0 (clock),
|
||||
.data_a (data),
|
||||
.wren_a (wren),
|
||||
.address_b (rdaddress),
|
||||
.q_b (sub_wire0),
|
||||
.aclr0 (1'b0),
|
||||
.aclr1 (1'b0),
|
||||
.addressstall_a (1'b0),
|
||||
.addressstall_b (1'b0),
|
||||
.byteena_a (1'b1),
|
||||
.byteena_b (1'b1),
|
||||
.clock1 (1'b1),
|
||||
.clocken0 (1'b1),
|
||||
.clocken1 (1'b1),
|
||||
.clocken2 (1'b1),
|
||||
.clocken3 (1'b1),
|
||||
.data_b ({4{1'b1}}),
|
||||
.eccstatus (),
|
||||
.q_a (),
|
||||
.rden_a (1'b1),
|
||||
.rden_b (1'b1),
|
||||
.wren_b (1'b0));
|
||||
defparam
|
||||
altsyncram_component.address_aclr_b = "NONE",
|
||||
altsyncram_component.address_reg_b = "CLOCK0",
|
||||
altsyncram_component.clock_enable_input_a = "BYPASS",
|
||||
altsyncram_component.clock_enable_input_b = "BYPASS",
|
||||
altsyncram_component.clock_enable_output_b = "BYPASS",
|
||||
altsyncram_component.intended_device_family = "Cyclone III",
|
||||
altsyncram_component.lpm_type = "altsyncram",
|
||||
altsyncram_component.numwords_a = 131072,
|
||||
altsyncram_component.numwords_b = 131072,
|
||||
altsyncram_component.operation_mode = "DUAL_PORT",
|
||||
altsyncram_component.outdata_aclr_b = "NONE",
|
||||
altsyncram_component.outdata_reg_b = "CLOCK0",
|
||||
altsyncram_component.power_up_uninitialized = "FALSE",
|
||||
altsyncram_component.ram_block_type = "M9K",
|
||||
altsyncram_component.read_during_write_mode_mixed_ports = "DONT_CARE",
|
||||
altsyncram_component.widthad_a = 17,
|
||||
altsyncram_component.widthad_b = 17,
|
||||
altsyncram_component.width_a = 4,
|
||||
altsyncram_component.width_b = 4,
|
||||
altsyncram_component.width_byteena_a = 1;
|
||||
|
||||
|
||||
endmodule
|
||||
|
||||
// ============================================================
|
||||
// CNX file retrieval info
|
||||
// ============================================================
|
||||
// Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: ADDRESSSTALL_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTEENA_ACLR_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTEENA_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTE_ENABLE_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTE_ENABLE_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8"
|
||||
// Retrieval info: PRIVATE: BlankMemory NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRdata NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRq NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRrdaddress NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRrren NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRwraddress NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRwren NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: Clock NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: Clock_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: Clock_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INDATA_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INDATA_REG_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_B"
|
||||
// Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
|
||||
// Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: JTAG_ID STRING "NONE"
|
||||
// Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: MEMSIZE NUMERIC "524288"
|
||||
// Retrieval info: PRIVATE: MEM_IN_BITS NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: MIFfilename STRING ""
|
||||
// Retrieval info: PRIVATE: OPERATION_MODE NUMERIC "2"
|
||||
// Retrieval info: PRIVATE: OUTDATA_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: OUTDATA_REG_B NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "2"
|
||||
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_MIXED_PORTS NUMERIC "2"
|
||||
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_A NUMERIC "3"
|
||||
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_B NUMERIC "3"
|
||||
// Retrieval info: PRIVATE: REGdata NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGq NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGrdaddress NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGrren NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGwraddress NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGwren NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_DIFF_CLKEN NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: UseDPRAM NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: VarWidth NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: WIDTH_READ_A NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WIDTH_READ_B NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WIDTH_WRITE_A NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WIDTH_WRITE_B NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WRADDR_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: WRADDR_REG_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: WRCTRL_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: enable NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: rden NUMERIC "0"
|
||||
// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
|
||||
// Retrieval info: CONSTANT: ADDRESS_ACLR_B STRING "NONE"
|
||||
// Retrieval info: CONSTANT: ADDRESS_REG_B STRING "CLOCK0"
|
||||
// Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS"
|
||||
// Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_B STRING "BYPASS"
|
||||
// Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_B STRING "BYPASS"
|
||||
// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
|
||||
// Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram"
|
||||
// Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "131072"
|
||||
// Retrieval info: CONSTANT: NUMWORDS_B NUMERIC "131072"
|
||||
// Retrieval info: CONSTANT: OPERATION_MODE STRING "DUAL_PORT"
|
||||
// Retrieval info: CONSTANT: OUTDATA_ACLR_B STRING "NONE"
|
||||
// Retrieval info: CONSTANT: OUTDATA_REG_B STRING "CLOCK0"
|
||||
// Retrieval info: CONSTANT: POWER_UP_UNINITIALIZED STRING "FALSE"
|
||||
// Retrieval info: CONSTANT: RAM_BLOCK_TYPE STRING "M9K"
|
||||
// Retrieval info: CONSTANT: READ_DURING_WRITE_MODE_MIXED_PORTS STRING "DONT_CARE"
|
||||
// Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "17"
|
||||
// Retrieval info: CONSTANT: WIDTHAD_B NUMERIC "17"
|
||||
// Retrieval info: CONSTANT: WIDTH_A NUMERIC "4"
|
||||
// Retrieval info: CONSTANT: WIDTH_B NUMERIC "4"
|
||||
// Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1"
|
||||
// Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC "clock"
|
||||
// Retrieval info: USED_PORT: data 0 0 4 0 INPUT NODEFVAL "data[3..0]"
|
||||
// Retrieval info: USED_PORT: q 0 0 4 0 OUTPUT NODEFVAL "q[3..0]"
|
||||
// Retrieval info: USED_PORT: rdaddress 0 0 17 0 INPUT NODEFVAL "rdaddress[16..0]"
|
||||
// Retrieval info: USED_PORT: wraddress 0 0 17 0 INPUT NODEFVAL "wraddress[16..0]"
|
||||
// Retrieval info: USED_PORT: wren 0 0 0 0 INPUT GND "wren"
|
||||
// Retrieval info: CONNECT: @address_a 0 0 17 0 wraddress 0 0 17 0
|
||||
// Retrieval info: CONNECT: @address_b 0 0 17 0 rdaddress 0 0 17 0
|
||||
// Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0
|
||||
// Retrieval info: CONNECT: @data_a 0 0 4 0 data 0 0 4 0
|
||||
// Retrieval info: CONNECT: @wren_a 0 0 0 0 wren 0 0 0 0
|
||||
// Retrieval info: CONNECT: q 0 0 4 0 @q_b 0 0 4 0
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.v TRUE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.inc FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.cmp FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.bsf FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram_inst.v FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram_bb.v FALSE
|
||||
// Retrieval info: LIB_FILE: altera_mf
|
||||
@ -1,38 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_DVG_ROM is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(7 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_DVG_ROM is
|
||||
type rom is array(0 to 255) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"0F",X"0C",X"0A",X"0E",
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"0F",X"0C",X"0A",X"0E",
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"0D",X"0F",X"0C",X"0B",X"0E",
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"0B",X"0D",X"01",X"00",X"08",X"0C",X"0A",X"0E",
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"08",X"0C",X"0A",X"0E",
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"09",X"0C",X"0A",X"0E",
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"09",X"0C",X"0A",X"0E",
|
||||
X"00",X"01",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"0A",X"0C",X"0A",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"0F",X"0C",X"0A",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"0F",X"0C",X"0A",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"0D",X"0F",X"0C",X"0B",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"0B",X"0D",X"01",X"00",X"08",X"0C",X"0A",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"08",X"0C",X"0A",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"09",X"0C",X"0A",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"09",X"0C",X"0A",X"0E",
|
||||
X"09",X"02",X"0D",X"0D",X"05",X"06",X"07",X"0D",X"09",X"0D",X"01",X"00",X"0A",X"0C",X"0A",X"0E");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@ -1,150 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_PROG_ROM_0 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_PROG_ROM_0 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"6B",X"20",X"13",X"62",X"A9",X"80",X"85",X"5D",X"24",X"97",X"30",X"0F",X"A9",X"00",X"85",X"22",
|
||||
X"85",X"97",X"24",X"5D",X"10",X"4C",X"20",X"13",X"62",X"D0",X"28",X"A5",X"22",X"D0",X"21",X"20",
|
||||
X"13",X"62",X"A9",X"F0",X"A2",X"08",X"20",X"5F",X"79",X"A2",X"00",X"86",X"23",X"86",X"A4",X"86",
|
||||
X"A5",X"A9",X"11",X"85",X"63",X"A9",X"20",X"A6",X"98",X"D0",X"01",X"4A",X"85",X"22",X"D0",X"03",
|
||||
X"20",X"35",X"62",X"20",X"A9",X"73",X"A2",X"2C",X"A0",X"CA",X"A5",X"21",X"F0",X"04",X"A2",X"A0",
|
||||
X"A0",X"C3",X"A5",X"22",X"29",X"20",X"F0",X"04",X"A2",X"00",X"A0",X"F0",X"8E",X"00",X"40",X"8C",
|
||||
X"01",X"40",X"A2",X"40",X"A0",X"04",X"A5",X"86",X"4A",X"90",X"04",X"A2",X"42",X"A0",X"84",X"86",
|
||||
X"28",X"84",X"27",X"A5",X"22",X"29",X"20",X"D0",X"2D",X"20",X"95",X"67",X"20",X"39",X"65",X"20",
|
||||
X"67",X"65",X"20",X"AD",X"65",X"A5",X"22",X"29",X"10",X"D0",X"1B",X"24",X"22",X"10",X"1D",X"A5",
|
||||
X"62",X"29",X"0F",X"F0",X"0B",X"A5",X"29",X"85",X"27",X"A5",X"2A",X"85",X"28",X"20",X"95",X"75",
|
||||
X"20",X"D6",X"68",X"4C",X"CE",X"60",X"20",X"7E",X"68",X"4C",X"CE",X"60",X"20",X"9D",X"66",X"24",
|
||||
X"22",X"50",X"18",X"A5",X"23",X"D0",X"0B",X"A5",X"86",X"29",X"0F",X"C9",X"08",X"D0",X"03",X"20",
|
||||
X"09",X"65",X"20",X"9E",X"68",X"20",X"FF",X"67",X"4C",X"CE",X"60",X"20",X"9F",X"79",X"A0",X"DE",
|
||||
X"A9",X"4B",X"A2",X"06",X"20",X"A6",X"7E",X"AD",X"00",X"20",X"29",X"02",X"F0",X"FE",X"20",X"2D",
|
||||
X"65",X"A0",X"02",X"A2",X"F0",X"A5",X"86",X"4A",X"90",X"04",X"A2",X"E1",X"A0",X"42",X"8E",X"03",
|
||||
X"40",X"8C",X"02",X"40",X"8D",X"00",X"30",X"E6",X"86",X"A2",X"00",X"AD",X"00",X"20",X"29",X"04",
|
||||
X"D0",X"02",X"A2",X"20",X"A9",X"1F",X"20",X"53",X"79",X"20",X"E6",X"62",X"20",X"14",X"64",X"24",
|
||||
X"22",X"30",X"37",X"50",X"1F",X"20",X"32",X"6B",X"20",X"3C",X"63",X"20",X"71",X"6B",X"20",X"1B",
|
||||
X"75",X"A5",X"01",X"C9",X"10",X"D0",X"02",X"A9",X"0F",X"4A",X"09",X"01",X"AA",X"A9",X"30",X"20",
|
||||
X"53",X"79",X"D0",X"0D",X"A9",X"20",X"A2",X"00",X"20",X"53",X"79",X"A5",X"22",X"29",X"20",X"D0",
|
||||
X"09",X"20",X"68",X"6C",X"20",X"4F",X"6D",X"20",X"1C",X"71",X"A5",X"22",X"F0",X"5B",X"20",X"AB",
|
||||
X"62",X"24",X"22",X"30",X"33",X"70",X"55",X"A2",X"00",X"A5",X"86",X"29",X"10",X"D0",X"02",X"A2",
|
||||
X"10",X"A9",X"0F",X"20",X"5F",X"79",X"2C",X"00",X"24",X"30",X"06",X"A9",X"40",X"85",X"25",X"D0",
|
||||
X"04",X"06",X"25",X"B0",X"0D",X"24",X"5D",X"10",X"0C",X"20",X"13",X"62",X"A9",X"10",X"85",X"22",
|
||||
X"D0",X"03",X"4C",X"40",X"60",X"4C",X"62",X"60",X"24",X"62",X"50",X"0E",X"24",X"5C",X"10",X"04",
|
||||
X"24",X"5D",X"30",X"06",X"20",X"68",X"6C",X"20",X"4F",X"6D",X"A5",X"86",X"4A",X"B0",X"E6",X"E6",
|
||||
X"56",X"10",X"E2",X"06",X"56",X"A5",X"62",X"85",X"5D",X"4C",X"08",X"60",X"A5",X"5D",X"30",X"28",
|
||||
X"20",X"AA",X"64",X"24",X"97",X"30",X"0C",X"A5",X"8D",X"C9",X"05",X"90",X"03",X"4C",X"01",X"60",
|
||||
X"4C",X"62",X"60",X"2C",X"05",X"24",X"30",X"06",X"A9",X"40",X"85",X"68",X"D0",X"F2",X"06",X"68",
|
||||
X"90",X"EE",X"A9",X"64",X"85",X"56",X"D0",X"E8",X"20",X"E0",X"6B",X"A5",X"5D",X"85",X"62",X"0A",
|
||||
X"D0",X"07",X"A0",X"00",X"A9",X"50",X"20",X"13",X"63",X"20",X"90",X"6B",X"20",X"94",X"76",X"A2",
|
||||
X"00",X"86",X"AF",X"86",X"B0",X"86",X"B1",X"A0",X"0A",X"96",X"57",X"88",X"10",X"FB",X"A9",X"20",
|
||||
X"20",X"53",X"79",X"06",X"22",X"A9",X"01",X"85",X"56",X"A9",X"0A",X"85",X"61",X"A9",X"41",X"85",
|
||||
X"63",X"D0",X"AD",X"8D",X"00",X"3E",X"A2",X"08",X"86",X"02",X"BD",X"0E",X"78",X"95",X"06",X"BD",
|
||||
X"B3",X"4B",X"95",X"0C",X"CA",X"D0",X"F3",X"86",X"60",X"86",X"61",X"A5",X"74",X"85",X"5F",X"A9",
|
||||
X"11",X"85",X"63",X"10",X"53",X"A5",X"74",X"29",X"03",X"85",X"33",X"18",X"69",X"01",X"29",X"03",
|
||||
X"85",X"34",X"A5",X"74",X"4A",X"4A",X"29",X"0F",X"C9",X"0F",X"D0",X"02",X"A9",X"04",X"20",X"9E",
|
||||
X"62",X"85",X"35",X"49",X"0F",X"20",X"9E",X"62",X"85",X"36",X"A2",X"03",X"BD",X"13",X"78",X"95",
|
||||
X"5E",X"BD",X"0F",X"78",X"95",X"07",X"BD",X"AE",X"55",X"95",X"11",X"CA",X"10",X"EE",X"A9",X"00",
|
||||
X"AA",X"A0",X"07",X"96",X"9C",X"88",X"10",X"FB",X"A9",X"40",X"85",X"22",X"A9",X"0F",X"20",X"5F",
|
||||
X"79",X"A9",X"10",X"85",X"02",X"20",X"BE",X"62",X"A2",X"00",X"A0",X"0E",X"96",X"4F",X"88",X"10",
|
||||
X"FB",X"CA",X"A0",X"07",X"96",X"79",X"88",X"10",X"FB",X"A9",X"40",X"85",X"4E",X"60",X"C9",X"04",
|
||||
X"B0",X"04",X"69",X"01",X"09",X"0A",X"60",X"11",X"11",X"22",X"11",X"2C",X"04",X"24",X"10",X"2D",
|
||||
X"06",X"24",X"90",X"2D",X"E6",X"23",X"A5",X"23",X"29",X"03",X"85",X"23",X"A5",X"02",X"0A",X"0A",
|
||||
X"85",X"67",X"A9",X"00",X"A2",X"03",X"95",X"03",X"CA",X"10",X"FB",X"85",X"66",X"A6",X"23",X"BD",
|
||||
X"A7",X"62",X"85",X"63",X"BD",X"E2",X"62",X"AA",X"A9",X"F0",X"4C",X"5F",X"79",X"A9",X"40",X"85",
|
||||
X"24",X"60",X"08",X"04",X"02",X"01",X"20",X"6B",X"79",X"D0",X"07",X"24",X"97",X"70",X"03",X"20",
|
||||
X"09",X"63",X"A6",X"B6",X"F0",X"05",X"C6",X"B6",X"20",X"09",X"63",X"A6",X"B8",X"F0",X"09",X"C6",
|
||||
X"B8",X"20",X"09",X"63",X"C6",X"99",X"D0",X"F9",X"60",X"A5",X"98",X"0A",X"AA",X"BD",X"2A",X"63",
|
||||
X"BC",X"2B",X"63",X"A2",X"FF",X"86",X"97",X"F8",X"18",X"65",X"AD",X"AA",X"98",X"65",X"AE",X"D8",
|
||||
X"90",X"03",X"A9",X"99",X"AA",X"85",X"AE",X"86",X"AD",X"60",X"00",X"09",X"50",X"04",X"00",X"06",
|
||||
X"50",X"07",X"00",X"09",X"00",X"11",X"00",X"13",X"50",X"15",X"00",X"18",X"A5",X"56",X"F0",X"01",
|
||||
X"60",X"A5",X"23",X"C9",X"03",X"F0",X"03",X"4C",X"D4",X"63",X"A5",X"66",X"18",X"65",X"03",X"85",
|
||||
X"66",X"A5",X"67",X"65",X"04",X"85",X"67",X"4A",X"4A",X"29",X"1F",X"85",X"02",X"A0",X"00",X"A5",
|
||||
X"03",X"A6",X"04",X"F0",X"0A",X"E8",X"D0",X"0B",X"C9",X"C0",X"90",X"07",X"88",X"30",X"04",X"C9",
|
||||
X"41",X"90",X"F9",X"84",X"05",X"24",X"97",X"10",X"5A",X"20",X"04",X"64",X"0A",X"0A",X"0A",X"0A",
|
||||
X"A0",X"00",X"29",X"F0",X"F0",X"25",X"90",X"01",X"88",X"18",X"65",X"03",X"AA",X"98",X"65",X"04",
|
||||
X"10",X"0A",X"C9",X"FC",X"B0",X"0E",X"A9",X"FC",X"A2",X"00",X"F0",X"08",X"C9",X"04",X"90",X"04",
|
||||
X"A9",X"03",X"A2",X"E0",X"85",X"04",X"86",X"03",X"4C",X"FE",X"63",X"A5",X"05",X"F0",X"1E",X"A5",
|
||||
X"06",X"F0",X"05",X"A9",X"00",X"AA",X"F0",X"11",X"A5",X"03",X"05",X"04",X"F0",X"0F",X"A9",X"50",
|
||||
X"A2",X"00",X"24",X"04",X"10",X"03",X"A9",X"B0",X"CA",X"86",X"04",X"85",X"03",X"A5",X"03",X"05",
|
||||
X"04",X"85",X"06",X"60",X"24",X"97",X"10",X"FB",X"20",X"04",X"64",X"F0",X"F6",X"18",X"65",X"67",
|
||||
X"85",X"67",X"AA",X"4A",X"4A",X"29",X"1F",X"85",X"02",X"A5",X"23",X"D0",X"11",X"E8",X"F0",X"06",
|
||||
X"E0",X"42",X"D0",X"0A",X"A9",X"10",X"85",X"02",X"0A",X"0A",X"85",X"67",X"90",X"D5",X"A2",X"00",
|
||||
X"A0",X"06",X"D0",X"5D",X"A2",X"00",X"2C",X"06",X"24",X"10",X"01",X"CA",X"2C",X"07",X"24",X"10",
|
||||
X"01",X"E8",X"8A",X"60",X"24",X"22",X"50",X"04",X"A5",X"56",X"D0",X"44",X"A5",X"84",X"4A",X"4A",
|
||||
X"AA",X"4A",X"85",X"37",X"A0",X"00",X"E4",X"82",X"B0",X"1A",X"A5",X"84",X"38",X"E5",X"82",X"A0",
|
||||
X"0F",X"90",X"11",X"C5",X"37",X"90",X"0D",X"A5",X"82",X"A4",X"84",X"20",X"C0",X"70",X"8A",X"4A",
|
||||
X"4A",X"4A",X"4A",X"A8",X"84",X"01",X"A0",X"00",X"A5",X"85",X"C9",X"4B",X"90",X"08",X"E6",X"83",
|
||||
X"C6",X"84",X"C6",X"84",X"84",X"85",X"24",X"97",X"10",X"04",X"A5",X"22",X"D0",X"02",X"84",X"01",
|
||||
X"60",X"A9",X"00",X"F8",X"85",X"39",X"86",X"38",X"84",X"37",X"A5",X"AC",X"38",X"E5",X"37",X"A8",
|
||||
X"A5",X"AD",X"E5",X"38",X"AA",X"A5",X"AE",X"E5",X"39",X"B0",X"14",X"24",X"97",X"10",X"29",X"A9",
|
||||
X"40",X"85",X"97",X"A9",X"00",X"85",X"AC",X"85",X"AD",X"85",X"AE",X"85",X"8D",X"F0",X"0A",X"84",
|
||||
X"AC",X"86",X"AD",X"85",X"AE",X"05",X"AD",X"F0",X"E2",X"18",X"A0",X"02",X"A2",X"00",X"B5",X"A1",
|
||||
X"75",X"37",X"95",X"A1",X"E8",X"88",X"10",X"F6",X"D8",X"60",X"A0",X"00",X"A5",X"56",X"F0",X"49",
|
||||
X"24",X"97",X"10",X"46",X"A5",X"86",X"4A",X"90",X"1A",X"A5",X"02",X"C9",X"08",X"90",X"0A",X"F0",
|
||||
X"12",X"C9",X"19",X"B0",X"04",X"C6",X"02",X"D0",X"07",X"18",X"69",X"01",X"29",X"1F",X"85",X"02",
|
||||
X"20",X"BC",X"62",X"A5",X"5F",X"D0",X"04",X"85",X"5E",X"F0",X"02",X"C6",X"5F",X"A5",X"02",X"C9",
|
||||
X"08",X"D0",X"16",X"A5",X"56",X"C9",X"3C",X"B0",X"0A",X"24",X"5C",X"30",X"06",X"A5",X"61",X"C9",
|
||||
X"10",X"B0",X"09",X"A9",X"10",X"85",X"01",X"C6",X"56",X"60",X"84",X"01",X"84",X"56",X"60",X"04",
|
||||
X"04",X"02",X"82",X"04",X"08",X"02",X"82",X"07",X"F0",X"A2",X"02",X"B5",X"5E",X"85",X"37",X"B5",
|
||||
X"5F",X"A0",X"05",X"4A",X"66",X"37",X"88",X"D0",X"FA",X"85",X"38",X"B5",X"5E",X"38",X"E5",X"37",
|
||||
X"95",X"5E",X"B5",X"5F",X"E5",X"38",X"95",X"5F",X"CA",X"CA",X"10",X"DF",X"60",X"46",X"73",X"90",
|
||||
X"FC",X"AD",X"00",X"20",X"4A",X"90",X"FA",X"60",X"2E",X"A5",X"4F",X"0A",X"85",X"8C",X"0A",X"85",
|
||||
X"8B",X"24",X"4E",X"70",X"0D",X"A9",X"E2",X"A2",X"51",X"20",X"D5",X"7E",X"A9",X"BA",X"A2",X"51",
|
||||
X"D0",X"0B",X"A9",X"BC",X"A2",X"4B",X"20",X"D5",X"7E",X"A9",X"F0",X"A2",X"44",X"A4",X"27",X"84",
|
||||
X"2D",X"A4",X"28",X"84",X"2E",X"D0",X"2B",X"24",X"4E",X"50",X"1C",X"A2",X"A1",X"20",X"9E",X"65",
|
||||
X"A9",X"FE",X"A2",X"52",X"20",X"92",X"65",X"24",X"22",X"70",X"01",X"60",X"A2",X"A3",X"20",X"9E",
|
||||
X"65",X"A9",X"0E",X"A2",X"53",X"D0",X"0B",X"A9",X"16",X"A2",X"54",X"20",X"D5",X"7E",X"A9",X"EE",
|
||||
X"A2",X"53",X"18",X"65",X"8C",X"A8",X"8A",X"69",X"00",X"A2",X"0A",X"4C",X"A6",X"7E",X"A9",X"00",
|
||||
X"85",X"37",X"85",X"39",X"85",X"3A",X"86",X"38",X"A0",X"37",X"4C",X"DC",X"7E",X"20",X"84",X"66",
|
||||
X"A0",X"0D",X"A9",X"00",X"85",X"3E",X"85",X"40",X"20",X"A4",X"7E",X"A5",X"27",X"85",X"29",X"A5",
|
||||
X"28",X"85",X"2A",X"A5",X"02",X"C9",X"09",X"B0",X"06",X"20",X"6E",X"66",X"4C",X"C9",X"7E",X"A2",
|
||||
X"04",X"A0",X"04",X"C6",X"3E",X"C6",X"40",X"C9",X"10",X"90",X"0E",X"C9",X"19",X"90",X"06",X"A2",
|
||||
X"00",X"E6",X"40",X"F0",X"08",X"29",X"0F",X"10",X"09",X"A0",X"00",X"E6",X"3E",X"20",X"F9",X"67",
|
||||
X"29",X"07",X"86",X"3D",X"84",X"3F",X"20",X"6E",X"66",X"84",X"37",X"85",X"38",X"A0",X"00",X"B1",
|
||||
X"37",X"0A",X"85",X"39",X"C8",X"B1",X"37",X"29",X"0F",X"09",X"20",X"2A",X"85",X"3A",X"24",X"4E",
|
||||
X"50",X"05",X"A5",X"39",X"18",X"90",X"18",X"88",X"B1",X"39",X"0A",X"85",X"64",X"C8",X"B1",X"39",
|
||||
X"29",X"0F",X"09",X"20",X"2A",X"85",X"65",X"20",X"37",X"66",X"A5",X"39",X"18",X"69",X"02",X"85",
|
||||
X"64",X"A5",X"3A",X"69",X"00",X"85",X"65",X"A0",X"00",X"B1",X"64",X"91",X"27",X"C8",X"B1",X"64",
|
||||
X"C9",X"A0",X"90",X"08",X"C9",X"F0",X"B0",X"17",X"88",X"4C",X"F8",X"74",X"45",X"3F",X"91",X"27",
|
||||
X"C8",X"B1",X"64",X"91",X"27",X"C8",X"B1",X"64",X"45",X"3D",X"91",X"27",X"C8",X"D0",X"DA",X"45",
|
||||
X"3F",X"91",X"27",X"88",X"B1",X"27",X"45",X"3D",X"91",X"27",X"C8",X"C8",X"D0",X"CB",X"0A",X"85",
|
||||
X"8B",X"24",X"4E",X"50",X"07",X"69",X"F4",X"A8",X"A9",X"4D",X"D0",X"05",X"69",X"A2",X"A8",X"A9",
|
||||
X"4B",X"69",X"00",X"60",X"A5",X"08",X"A6",X"07",X"20",X"EF",X"6C",X"85",X"10",X"84",X"0F",X"A5",
|
||||
X"0A",X"A6",X"09",X"20",X"EF",X"6C",X"84",X"0D",X"09",X"A0",X"85",X"0E",X"60",X"A5",X"01",X"F0",
|
||||
X"FB",X"A5",X"8B",X"24",X"4E",X"50",X"03",X"18",X"69",X"12",X"AA",X"BC",X"72",X"67",X"BD",X"71",
|
||||
X"67",X"24",X"3E",X"10",X"03",X"20",X"F9",X"67",X"85",X"3D",X"98",X"24",X"40",X"10",X"03",X"20",
|
||||
X"F9",X"67",X"85",X"3F",X"A5",X"01",X"A0",X"74",X"20",X"EF",X"70",X"A8",X"A5",X"86",X"4A",X"90",
|
||||
X"01",X"C8",X"A5",X"01",X"18",X"69",X"10",X"0A",X"0A",X"0A",X"90",X"02",X"A9",X"F0",X"85",X"8F",
|
||||
X"84",X"39",X"98",X"A4",X"3F",X"20",X"EF",X"70",X"86",X"3A",X"A5",X"3D",X"20",X"F9",X"67",X"A8",
|
||||
X"A5",X"39",X"20",X"EF",X"70",X"86",X"39",X"A5",X"3E",X"45",X"40",X"10",X"06",X"20",X"28",X"67",
|
||||
X"4C",X"09",X"67",X"20",X"09",X"67",X"4C",X"28",X"67",X"A0",X"00",X"A5",X"3A",X"18",X"65",X"3D",
|
||||
X"10",X"01",X"88",X"85",X"19",X"84",X"1A",X"A2",X"00",X"A5",X"39",X"18",X"65",X"3F",X"10",X"01",
|
||||
X"CA",X"85",X"1B",X"86",X"1C",X"4C",X"4A",X"67",X"A5",X"3A",X"20",X"F9",X"67",X"A2",X"00",X"18",
|
||||
X"65",X"3D",X"10",X"01",X"CA",X"85",X"19",X"86",X"1A",X"A5",X"39",X"20",X"F9",X"67",X"A2",X"00",
|
||||
X"18",X"65",X"3F",X"10",X"01",X"CA",X"85",X"1B",X"86",X"1C",X"A5",X"3E",X"45",X"40",X"10",X"1E",
|
||||
X"A5",X"19",X"F0",X"0B",X"20",X"F9",X"67",X"85",X"19",X"A5",X"1A",X"49",X"FF",X"85",X"1A",X"A5",
|
||||
X"1B",X"F0",X"0B",X"20",X"F9",X"67",X"85",X"1B",X"A5",X"1C",X"49",X"FF",X"85",X"1C",X"4C",X"43",
|
||||
X"78",X"00",X"F9",X"02",X"FA",X"03",X"FA",X"04",X"FB",X"05",X"FB",X"06",X"FC",X"06",X"FD",X"07",
|
||||
X"FE",X"07",X"00",X"00",X"FC",X"01",X"FC",X"01",X"FC",X"02",X"FD",X"03",X"FD",X"03",X"FE",X"04",
|
||||
X"FF",X"04",X"FF",X"04",X"00",X"A0",X"3C",X"A9",X"55",X"20",X"A4",X"7E",X"A9",X"A4",X"20",X"EB",
|
||||
X"67",X"A0",X"01",X"A9",X"9D",X"18",X"20",X"5A",X"7B",X"A2",X"02",X"20",X"AA",X"7E",X"A0",X"01",
|
||||
X"A9",X"9C",X"20",X"ED",X"67",X"A9",X"AD",X"20",X"EB",X"67",X"A9",X"AF",X"20",X"F4",X"67",X"20",
|
||||
X"D1",X"7E",X"A9",X"A6",X"20",X"F4",X"67",X"20",X"D1",X"7E",X"A9",X"A9",X"20",X"F4",X"67",X"A9",
|
||||
X"55",X"A0",X"AA",X"20",X"A4",X"7E",X"A5",X"9B",X"0A",X"69",X"60",X"20",X"E3",X"67",X"A5",X"9A",
|
||||
X"0A",X"69",X"5A",X"A8",X"A9",X"55",X"69",X"00",X"4C",X"C9",X"7E",X"A0",X"02",X"18",X"20",X"5A",
|
||||
X"7B",X"4C",X"D1",X"7E",X"A0",X"03",X"4C",X"59",X"7B",X"49",X"FF",X"18",X"69",X"01",X"60",X"A2");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@ -1,150 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_PROG_ROM_1 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_PROG_ROM_1 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"03",X"86",X"41",X"B5",X"33",X"85",X"37",X"0A",X"0A",X"85",X"8B",X"A2",X"4E",X"A9",X"06",X"A0",
|
||||
X"03",X"24",X"4E",X"70",X"04",X"A9",X"42",X"A0",X"0F",X"84",X"3E",X"20",X"76",X"68",X"A6",X"4F",
|
||||
X"86",X"3D",X"20",X"E4",X"7E",X"A5",X"27",X"85",X"2B",X"A5",X"28",X"85",X"2C",X"A6",X"37",X"BD",
|
||||
X"54",X"6C",X"85",X"8B",X"A2",X"47",X"A9",X"00",X"24",X"4E",X"70",X"04",X"A2",X"4E",X"A9",X"7E",
|
||||
X"20",X"76",X"68",X"20",X"A4",X"7E",X"A5",X"86",X"29",X"10",X"D0",X"0A",X"A0",X"03",X"B1",X"2B",
|
||||
X"29",X"0F",X"91",X"2B",X"10",X"1A",X"A9",X"65",X"A0",X"07",X"20",X"C9",X"7E",X"A6",X"37",X"BD",
|
||||
X"45",X"6C",X"0A",X"69",X"A4",X"A8",X"A9",X"57",X"20",X"C9",X"7E",X"A9",X"18",X"20",X"4F",X"7A",
|
||||
X"A6",X"41",X"CA",X"10",X"8C",X"60",X"18",X"65",X"8B",X"A8",X"8A",X"69",X"00",X"60",X"20",X"2D",
|
||||
X"7F",X"A2",X"00",X"A9",X"16",X"20",X"34",X"7A",X"A2",X"1C",X"A9",X"00",X"20",X"34",X"7A",X"A2",
|
||||
X"20",X"20",X"32",X"7A",X"A9",X"AD",X"20",X"57",X"7B",X"A9",X"17",X"4C",X"4F",X"7A",X"A5",X"90",
|
||||
X"F0",X"0F",X"C6",X"90",X"A2",X"08",X"20",X"32",X"7A",X"A9",X"95",X"20",X"57",X"7B",X"4C",X"29",
|
||||
X"7A",X"A8",X"A2",X"04",X"A9",X"02",X"24",X"97",X"10",X"0E",X"A5",X"AE",X"D0",X"11",X"A5",X"86",
|
||||
X"29",X"10",X"D0",X"0B",X"A9",X"01",X"A0",X"10",X"84",X"37",X"20",X"34",X"7A",X"A4",X"37",X"98",
|
||||
X"AA",X"A9",X"2F",X"4C",X"53",X"79",X"A5",X"90",X"F0",X"16",X"C6",X"90",X"A2",X"10",X"A9",X"06",
|
||||
X"20",X"34",X"7A",X"A2",X"08",X"20",X"32",X"7A",X"A9",X"95",X"20",X"57",X"7B",X"20",X"29",X"7A",
|
||||
X"A2",X"18",X"20",X"32",X"7A",X"A9",X"92",X"20",X"57",X"7B",X"A9",X"15",X"20",X"4F",X"7A",X"A5",
|
||||
X"62",X"29",X"0F",X"D0",X"20",X"A2",X"14",X"A9",X"07",X"24",X"62",X"50",X"0B",X"A9",X"08",X"20",
|
||||
X"34",X"7A",X"A2",X"2C",X"A9",X"0D",X"D0",X"07",X"20",X"34",X"7A",X"A2",X"28",X"A9",X"09",X"18",
|
||||
X"65",X"91",X"4C",X"34",X"7A",X"A2",X"24",X"A9",X"11",X"D0",X"F4",X"AB",X"69",X"79",X"69",X"84",
|
||||
X"69",X"8F",X"69",X"9F",X"69",X"DD",X"69",X"E6",X"69",X"04",X"6A",X"13",X"6A",X"22",X"6A",X"3A",
|
||||
X"6A",X"4E",X"6A",X"65",X"6A",X"74",X"6A",X"88",X"6A",X"9C",X"6A",X"B7",X"6A",X"CC",X"6A",X"D5",
|
||||
X"6A",X"F2",X"6A",X"1A",X"6B",X"C2",X"69",X"B5",X"69",X"93",X"69",X"E5",X"69",X"C9",X"69",X"CC",
|
||||
X"69",X"CF",X"69",X"D2",X"69",X"FF",X"64",X"03",X"65",X"D5",X"69",X"D9",X"69",X"00",X"18",X"06",
|
||||
X"36",X"3C",X"3C",X"12",X"00",X"BA",X"3C",X"00",X"66",X"2C",X"32",X"42",X"00",X"32",X"30",X"00",
|
||||
X"20",X"3E",X"1E",X"AC",X"32",X"3E",X"3C",X"00",X"32",X"20",X"00",X"20",X"3E",X"1E",X"AC",X"2C",
|
||||
X"32",X"3A",X"BC",X"00",X"20",X"3E",X"1E",X"2C",X"00",X"3E",X"30",X"26",X"3C",X"3A",X"80",X"26",
|
||||
X"30",X"3A",X"1E",X"38",X"3C",X"00",X"1A",X"32",X"26",X"30",X"BA",X"34",X"3E",X"3A",X"24",X"00",
|
||||
X"3A",X"3C",X"16",X"38",X"BC",X"3A",X"1E",X"2C",X"1E",X"1A",X"3C",X"00",X"32",X"34",X"3C",X"26",
|
||||
X"32",X"B0",X"00",X"34",X"32",X"26",X"30",X"3C",X"BA",X"0A",X"0C",X"82",X"0E",X"02",X"82",X"10",
|
||||
X"0C",X"82",X"14",X"02",X"82",X"04",X"0C",X"0C",X"82",X"04",X"12",X"02",X"82",X"34",X"1E",X"38",
|
||||
X"00",X"1A",X"32",X"26",X"B0",X"C4",X"16",X"3E",X"44",X"26",X"2C",X"26",X"16",X"38",X"46",X"00",
|
||||
X"20",X"3E",X"1E",X"2C",X"00",X"3C",X"16",X"30",X"2A",X"3A",X"00",X"1C",X"1E",X"3A",X"3C",X"38",
|
||||
X"32",X"46",X"1E",X"9C",X"1A",X"32",X"30",X"22",X"38",X"16",X"3C",X"3E",X"2C",X"16",X"3C",X"26",
|
||||
X"32",X"30",X"BA",X"46",X"32",X"3E",X"00",X"2C",X"16",X"30",X"1C",X"1E",X"1C",X"00",X"24",X"16",
|
||||
X"38",X"9C",X"3C",X"24",X"16",X"3C",X"00",X"42",X"16",X"3A",X"00",X"16",X"00",X"22",X"38",X"1E",
|
||||
X"16",X"3C",X"00",X"2C",X"16",X"30",X"1C",X"26",X"30",X"A2",X"3C",X"24",X"1E",X"00",X"1E",X"16",
|
||||
X"22",X"2C",X"1E",X"00",X"24",X"16",X"3A",X"00",X"2C",X"16",X"30",X"1C",X"1E",X"9C",X"3C",X"24",
|
||||
X"1E",X"00",X"1A",X"32",X"2C",X"3E",X"2E",X"18",X"26",X"16",X"00",X"24",X"16",X"3A",X"00",X"2C",
|
||||
X"16",X"30",X"1C",X"1E",X"9C",X"46",X"32",X"3E",X"00",X"24",X"16",X"40",X"1E",X"00",X"2C",X"16",
|
||||
X"30",X"1C",X"1E",X"9C",X"2C",X"26",X"20",X"1E",X"00",X"3A",X"3E",X"34",X"34",X"32",X"38",X"3C",
|
||||
X"00",X"26",X"3A",X"00",X"22",X"32",X"30",X"9E",X"46",X"32",X"3E",X"38",X"00",X"3C",X"38",X"26",
|
||||
X"34",X"00",X"26",X"3A",X"00",X"32",X"30",X"1E",X"00",X"42",X"16",X"C6",X"46",X"32",X"3E",X"00",
|
||||
X"16",X"38",X"1E",X"00",X"24",X"32",X"34",X"1E",X"2C",X"1E",X"3A",X"3A",X"2C",X"46",X"00",X"2E",
|
||||
X"16",X"38",X"32",X"32",X"30",X"1E",X"9C",X"1A",X"32",X"2E",X"2E",X"3E",X"30",X"26",X"1A",X"16",
|
||||
X"3C",X"26",X"32",X"30",X"00",X"3A",X"46",X"3A",X"3C",X"1E",X"2E",X"00",X"1C",X"1E",X"3A",X"3C",
|
||||
X"38",X"32",X"46",X"1E",X"9C",X"46",X"32",X"3E",X"00",X"1A",X"38",X"1E",X"16",X"3C",X"1E",X"1C",
|
||||
X"00",X"16",X"00",X"3C",X"42",X"32",X"00",X"2E",X"26",X"2C",X"1E",X"00",X"1A",X"38",X"16",X"3C",
|
||||
X"1E",X"B8",X"46",X"32",X"3E",X"00",X"28",X"3E",X"3A",X"3C",X"00",X"1C",X"1E",X"3A",X"3C",X"38",
|
||||
X"32",X"46",X"1E",X"1C",X"00",X"16",X"00",X"04",X"02",X"02",X"00",X"2E",X"1E",X"22",X"16",X"18",
|
||||
X"3E",X"1A",X"2A",X"00",X"2C",X"16",X"30",X"1C",X"1E",X"B8",X"3C",X"24",X"1E",X"38",X"1E",X"00",
|
||||
X"42",X"1E",X"38",X"1E",X"00",X"30",X"32",X"00",X"3A",X"3E",X"38",X"40",X"26",X"40",X"32",X"38",
|
||||
X"BA",X"1C",X"A5",X"02",X"4A",X"4A",X"4A",X"AA",X"BD",X"F2",X"76",X"85",X"46",X"0A",X"85",X"47",
|
||||
X"A6",X"01",X"BD",X"F6",X"76",X"85",X"0B",X"A5",X"02",X"29",X"0F",X"C9",X"09",X"90",X"04",X"49",
|
||||
X"0F",X"69",X"00",X"85",X"37",X"49",X"07",X"69",X"01",X"29",X"0F",X"AA",X"BD",X"E9",X"76",X"A4",
|
||||
X"0B",X"20",X"EF",X"70",X"85",X"58",X"A6",X"37",X"BD",X"E9",X"76",X"20",X"EF",X"70",X"85",X"59",
|
||||
X"60",X"A9",X"DA",X"A4",X"0B",X"30",X"08",X"A6",X"23",X"E0",X"02",X"D0",X"02",X"A9",X"90",X"20",
|
||||
X"EF",X"70",X"AA",X"A0",X"00",X"84",X"37",X"A0",X"07",X"20",X"C6",X"79",X"A8",X"4C",X"61",X"64",
|
||||
X"A5",X"5D",X"29",X"0F",X"F0",X"49",X"F8",X"A5",X"9E",X"38",X"E5",X"A2",X"AA",X"A5",X"9F",X"E5",
|
||||
X"A3",X"A8",X"A5",X"A0",X"E9",X"00",X"D8",X"90",X"36",X"F0",X"04",X"A2",X"99",X"A0",X"99",X"8A",
|
||||
X"D0",X"03",X"98",X"F0",X"2A",X"98",X"A4",X"AD",X"84",X"3A",X"A4",X"AE",X"84",X"3B",X"A0",X"00",
|
||||
X"84",X"A2",X"84",X"A3",X"20",X"63",X"64",X"A5",X"A2",X"A6",X"A3",X"24",X"97",X"30",X"04",X"A5",
|
||||
X"3A",X"A6",X"3B",X"85",X"95",X"86",X"96",X"05",X"96",X"F0",X"04",X"A9",X"7F",X"85",X"90",X"60",
|
||||
X"A5",X"0F",X"18",X"65",X"51",X"85",X"37",X"A5",X"10",X"65",X"4F",X"29",X"0F",X"A8",X"A2",X"03",
|
||||
X"86",X"41",X"B5",X"33",X"85",X"3A",X"0A",X"0A",X"AA",X"38",X"A5",X"37",X"FD",X"44",X"4E",X"85",
|
||||
X"38",X"98",X"FD",X"45",X"4E",X"90",X"12",X"D0",X"10",X"A6",X"3A",X"BD",X"54",X"6C",X"4A",X"4A",
|
||||
X"4A",X"AA",X"BD",X"63",X"6C",X"C5",X"38",X"B0",X"09",X"A6",X"41",X"CA",X"10",X"D2",X"A9",X"01",
|
||||
X"D0",X"05",X"A6",X"3A",X"BD",X"45",X"6C",X"A8",X"85",X"8E",X"20",X"76",X"75",X"88",X"D0",X"FA",
|
||||
X"F8",X"86",X"92",X"84",X"93",X"98",X"18",X"65",X"92",X"90",X"02",X"E6",X"93",X"C6",X"8E",X"D0",
|
||||
X"F5",X"85",X"92",X"D8",X"60",X"02",X"02",X"02",X"02",X"03",X"03",X"04",X"04",X"04",X"04",X"05",
|
||||
X"05",X"05",X"05",X"05",X"00",X"08",X"10",X"10",X"18",X"10",X"18",X"18",X"18",X"18",X"18",X"18",
|
||||
X"18",X"18",X"18",X"FF",X"80",X"40",X"20",X"68",X"A2",X"02",X"86",X"37",X"A9",X"00",X"85",X"5D",
|
||||
X"85",X"4D",X"85",X"49",X"B5",X"55",X"30",X"28",X"B5",X"5F",X"85",X"48",X"B5",X"5E",X"24",X"4E",
|
||||
X"70",X"0A",X"0A",X"26",X"48",X"26",X"49",X"0A",X"26",X"48",X"26",X"49",X"B5",X"5A",X"85",X"4C",
|
||||
X"B5",X"08",X"48",X"B5",X"07",X"AA",X"68",X"20",X"00",X"6D",X"A6",X"37",X"95",X"08",X"94",X"07",
|
||||
X"A9",X"00",X"85",X"49",X"8A",X"F0",X"02",X"A5",X"63",X"85",X"48",X"A9",X"80",X"85",X"4C",X"B4",
|
||||
X"5A",X"B5",X"5F",X"48",X"B5",X"5E",X"AA",X"68",X"20",X"FE",X"6C",X"A5",X"37",X"4A",X"AA",X"B5",
|
||||
X"58",X"85",X"48",X"B5",X"46",X"85",X"4C",X"A5",X"23",X"C9",X"02",X"D0",X"0C",X"A5",X"48",X"4A",
|
||||
X"18",X"65",X"48",X"85",X"48",X"90",X"02",X"E6",X"49",X"20",X"04",X"6D",X"48",X"8A",X"A6",X"37",
|
||||
X"95",X"5A",X"94",X"5E",X"68",X"95",X"5F",X"CA",X"CA",X"30",X"03",X"4C",X"6A",X"6C",X"60",X"86",
|
||||
X"4A",X"06",X"4A",X"2A",X"26",X"4A",X"2A",X"A8",X"A5",X"4A",X"2A",X"29",X"03",X"60",X"84",X"4D",
|
||||
X"85",X"4B",X"86",X"4A",X"A5",X"4C",X"45",X"4D",X"10",X"34",X"38",X"A5",X"4A",X"E5",X"48",X"A8",
|
||||
X"A5",X"4B",X"E5",X"49",X"90",X"16",X"D0",X"0D",X"C0",X"00",X"D0",X"09",X"85",X"4A",X"85",X"4B",
|
||||
X"85",X"4D",X"AA",X"A8",X"60",X"A6",X"4D",X"84",X"4A",X"85",X"4B",X"60",X"49",X"FF",X"AA",X"98",
|
||||
X"49",X"FF",X"A8",X"C8",X"D0",X"01",X"E8",X"8A",X"A6",X"4C",X"86",X"4D",X"90",X"E9",X"18",X"A5",
|
||||
X"4A",X"65",X"48",X"A8",X"A5",X"4B",X"65",X"49",X"90",X"DB",X"A9",X"FF",X"A8",X"B0",X"D6",X"20",
|
||||
X"84",X"66",X"A9",X"6B",X"85",X"69",X"A2",X"00",X"86",X"6A",X"A5",X"86",X"4A",X"B0",X"11",X"86",
|
||||
X"81",X"CA",X"86",X"79",X"86",X"7A",X"86",X"7D",X"86",X"7E",X"A0",X"07",X"A2",X"77",X"D0",X"11",
|
||||
X"A9",X"C0",X"85",X"81",X"CA",X"86",X"7B",X"86",X"7C",X"86",X"7F",X"86",X"80",X"A0",X"87",X"A2",
|
||||
X"77",X"20",X"B8",X"6F",X"A5",X"1D",X"18",X"65",X"51",X"A8",X"A5",X"1E",X"29",X"03",X"69",X"00",
|
||||
X"AA",X"98",X"38",X"E9",X"30",X"A8",X"8A",X"E9",X"00",X"B0",X"03",X"A0",X"00",X"98",X"24",X"4E",
|
||||
X"70",X"02",X"A0",X"00",X"84",X"38",X"85",X"39",X"18",X"65",X"4F",X"24",X"4E",X"70",X"08",X"29",
|
||||
X"0F",X"A0",X"E2",X"A2",X"51",X"D0",X"10",X"29",X"03",X"85",X"3A",X"A0",X"BC",X"A2",X"4B",X"24",
|
||||
X"38",X"10",X"04",X"A0",X"CE",X"A2",X"4B",X"86",X"2C",X"84",X"2B",X"0A",X"0A",X"A8",X"B1",X"2B",
|
||||
X"38",X"E5",X"53",X"85",X"1B",X"C8",X"B1",X"2B",X"29",X"0F",X"E5",X"54",X"85",X"1C",X"C8",X"B1",
|
||||
X"2B",X"38",X"E5",X"51",X"85",X"19",X"C8",X"B1",X"2B",X"29",X"03",X"E9",X"00",X"18",X"65",X"39",
|
||||
X"85",X"1A",X"A5",X"39",X"AA",X"0A",X"18",X"24",X"38",X"10",X"24",X"A5",X"3A",X"0A",X"A8",X"B9",
|
||||
X"07",X"78",X"85",X"2B",X"B9",X"08",X"78",X"85",X"2C",X"A0",X"00",X"E8",X"8A",X"0A",X"65",X"2D",
|
||||
X"91",X"69",X"A5",X"2E",X"69",X"00",X"C8",X"91",X"69",X"E6",X"69",X"E6",X"69",X"D0",X"0A",X"65",
|
||||
X"2D",X"85",X"2B",X"A5",X"2E",X"69",X"00",X"85",X"2C",X"A0",X"00",X"B1",X"2B",X"C8",X"AA",X"B1",
|
||||
X"2B",X"C8",X"C9",X"A0",X"90",X"3D",X"C9",X"D0",X"90",X"16",X"F0",X"03",X"4C",X"85",X"6F",X"C6",
|
||||
X"69",X"A0",X"00",X"B1",X"69",X"85",X"2C",X"C6",X"69",X"B1",X"69",X"85",X"2B",X"4C",X"2B",X"6E",
|
||||
X"85",X"37",X"98",X"18",X"65",X"2B",X"A0",X"00",X"91",X"69",X"86",X"2B",X"E6",X"69",X"A5",X"2C",
|
||||
X"69",X"00",X"91",X"69",X"E6",X"69",X"A5",X"37",X"29",X"0F",X"09",X"20",X"06",X"2B",X"2A",X"85",
|
||||
X"2C",X"D0",X"B6",X"86",X"3F",X"AA",X"B1",X"2B",X"85",X"3D",X"C8",X"B1",X"2B",X"C8",X"84",X"39",
|
||||
X"29",X"03",X"A8",X"8A",X"29",X"03",X"85",X"40",X"8A",X"6A",X"6A",X"6A",X"6A",X"85",X"4C",X"29",
|
||||
X"0F",X"85",X"41",X"A9",X"09",X"38",X"E5",X"41",X"AA",X"98",X"4A",X"66",X"3D",X"46",X"40",X"66",
|
||||
X"3F",X"CA",X"D0",X"F6",X"85",X"3E",X"A5",X"19",X"85",X"15",X"18",X"65",X"3D",X"85",X"19",X"A5",
|
||||
X"1A",X"85",X"16",X"65",X"3E",X"85",X"1A",X"24",X"4C",X"10",X"12",X"A5",X"3F",X"49",X"FF",X"AA",
|
||||
X"A5",X"40",X"49",X"FF",X"A8",X"E8",X"86",X"3F",X"D0",X"01",X"C8",X"84",X"40",X"A5",X"1B",X"85",
|
||||
X"17",X"18",X"65",X"3F",X"85",X"1B",X"A5",X"1C",X"85",X"18",X"65",X"40",X"85",X"1C",X"A5",X"1A",
|
||||
X"10",X"03",X"4C",X"80",X"6F",X"24",X"81",X"30",X"3F",X"A5",X"19",X"C5",X"1D",X"A5",X"1A",X"E5",
|
||||
X"1E",X"90",X"06",X"A9",X"80",X"85",X"81",X"B0",X"28",X"A5",X"1F",X"C5",X"1B",X"A5",X"20",X"E5",
|
||||
X"1C",X"90",X"7D",X"A9",X"80",X"85",X"81",X"A5",X"17",X"C5",X"1F",X"A5",X"18",X"30",X"12",X"E5",
|
||||
X"20",X"90",X"0E",X"20",X"6E",X"70",X"85",X"7A",X"84",X"79",X"8A",X"10",X"04",X"A9",X"8F",X"85",
|
||||
X"5D",X"A0",X"47",X"A2",X"77",X"20",X"B8",X"6F",X"A5",X"81",X"29",X"0F",X"D0",X"27",X"A5",X"19",
|
||||
X"C5",X"1D",X"A5",X"1A",X"E5",X"1E",X"90",X"48",X"20",X"22",X"70",X"24",X"81",X"70",X"07",X"85",
|
||||
X"7E",X"84",X"7D",X"4C",X"7F",X"6F",X"85",X"80",X"84",X"7F",X"A2",X"CF",X"86",X"81",X"A0",X"C7",
|
||||
X"A2",X"77",X"20",X"B8",X"6F",X"A5",X"1D",X"18",X"69",X"30",X"AA",X"A5",X"1E",X"69",X"00",X"E4",
|
||||
X"19",X"E5",X"1A",X"90",X"1A",X"A5",X"1B",X"C5",X"1F",X"A5",X"1C",X"30",X"13",X"E5",X"20",X"90",
|
||||
X"0F",X"20",X"6E",X"70",X"85",X"7C",X"84",X"7B",X"8A",X"30",X"04",X"A9",X"8F",X"85",X"5D",X"60",
|
||||
X"A4",X"39",X"4C",X"2B",X"6E",X"84",X"39",X"85",X"37",X"29",X"03",X"85",X"3F",X"A5",X"37",X"29",
|
||||
X"08",X"4A",X"85",X"38",X"8A",X"29",X"08",X"05",X"38",X"4A",X"4A",X"86",X"38",X"A8",X"8A",X"29",
|
||||
X"03",X"0A",X"06",X"3F",X"88",X"10",X"FA",X"85",X"3D",X"A5",X"37",X"4A",X"4A",X"6A",X"6A",X"85",
|
||||
X"4C",X"A9",X"00",X"85",X"40",X"4C",X"A4",X"6E",X"86",X"32",X"84",X"31",X"24",X"4E",X"70",X"26",
|
||||
X"A5",X"02",X"0A",X"A8",X"A2",X"00",X"B1",X"31",X"10",X"01",X"CA",X"18",X"65",X"0F",X"85",X"1D",
|
||||
X"8A",X"65",X"10",X"85",X"1E",X"C8",X"A2",X"00",X"B1",X"31",X"10",X"01",X"CA",X"18",X"65",X"0D",
|
||||
X"A8",X"8A",X"65",X"0E",X"D0",X"0C",X"A5",X"0F",X"85",X"1D",X"A5",X"10",X"85",X"1E",X"A4",X"0D",
|
||||
X"A5",X"0E",X"29",X"0F",X"85",X"20",X"84",X"1F",X"60",X"A5",X"19",X"38",X"E5",X"15",X"85",X"3D");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@ -1,150 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_PROG_ROM_2 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_PROG_ROM_2 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"A5",X"17",X"49",X"FF",X"A8",X"A5",X"18",X"49",X"FF",X"AA",X"C8",X"D0",X"01",X"E8",X"98",X"18",
|
||||
X"65",X"1B",X"A8",X"8A",X"A2",X"00",X"65",X"1C",X"10",X"05",X"98",X"49",X"FF",X"A8",X"CA",X"86",
|
||||
X"40",X"60",X"20",X"F9",X"6F",X"98",X"A4",X"3D",X"20",X"C0",X"70",X"A5",X"1D",X"38",X"E5",X"15",
|
||||
X"A4",X"77",X"20",X"EF",X"70",X"86",X"37",X"A4",X"76",X"20",X"F1",X"70",X"18",X"65",X"37",X"85",
|
||||
X"37",X"24",X"40",X"30",X"0E",X"18",X"65",X"17",X"85",X"48",X"A5",X"18",X"69",X"00",X"85",X"49",
|
||||
X"4C",X"60",X"70",X"38",X"A5",X"17",X"E5",X"37",X"85",X"48",X"A5",X"18",X"E9",X"00",X"85",X"49",
|
||||
X"A6",X"1F",X"A5",X"20",X"20",X"9B",X"70",X"10",X"04",X"A2",X"8F",X"86",X"5D",X"60",X"20",X"F9",
|
||||
X"6F",X"A5",X"3D",X"20",X"C0",X"70",X"A5",X"17",X"38",X"E5",X"1F",X"A4",X"77",X"20",X"EF",X"70",
|
||||
X"86",X"37",X"A4",X"76",X"20",X"F1",X"70",X"18",X"65",X"37",X"85",X"37",X"18",X"65",X"15",X"85",
|
||||
X"48",X"A5",X"16",X"69",X"00",X"85",X"49",X"A6",X"1D",X"A5",X"1E",X"85",X"4B",X"A9",X"80",X"24",
|
||||
X"49",X"10",X"14",X"A5",X"48",X"49",X"FF",X"85",X"48",X"A5",X"49",X"49",X"FF",X"85",X"49",X"E6",
|
||||
X"48",X"D0",X"02",X"E6",X"49",X"A9",X"00",X"85",X"4C",X"A0",X"00",X"84",X"4D",X"4C",X"02",X"6D",
|
||||
X"84",X"75",X"20",X"D1",X"70",X"86",X"77",X"A2",X"00",X"86",X"78",X"20",X"D5",X"70",X"86",X"76",
|
||||
X"60",X"85",X"78",X"A9",X"00",X"A0",X"07",X"26",X"78",X"2A",X"B0",X"0E",X"C5",X"75",X"90",X"02",
|
||||
X"E5",X"75",X"88",X"10",X"F2",X"26",X"78",X"A6",X"78",X"60",X"E5",X"75",X"38",X"B0",X"F3",X"85",
|
||||
X"43",X"84",X"42",X"A5",X"43",X"48",X"49",X"FF",X"85",X"43",X"A9",X"00",X"85",X"44",X"85",X"45",
|
||||
X"A2",X"08",X"06",X"43",X"B0",X"06",X"65",X"42",X"90",X"02",X"E6",X"45",X"CA",X"D0",X"07",X"AA",
|
||||
X"68",X"85",X"43",X"A5",X"45",X"60",X"0A",X"26",X"45",X"90",X"E7",X"55",X"A9",X"00",X"85",X"55",
|
||||
X"85",X"57",X"A9",X"0F",X"24",X"4E",X"50",X"02",X"A9",X"03",X"85",X"37",X"A5",X"08",X"24",X"5A",
|
||||
X"10",X"0D",X"C9",X"20",X"B0",X"1A",X"20",X"2C",X"73",X"B0",X"15",X"C6",X"4F",X"90",X"0B",X"C9",
|
||||
X"E0",X"90",X"0D",X"20",X"1B",X"73",X"90",X"08",X"E6",X"4F",X"A5",X"4F",X"25",X"37",X"85",X"4F",
|
||||
X"24",X"4E",X"50",X"03",X"4C",X"3E",X"72",X"A5",X"0A",X"24",X"5C",X"10",X"0A",X"C9",X"40",X"B0",
|
||||
X"03",X"20",X"54",X"73",X"4C",X"03",X"72",X"C9",X"A5",X"90",X"F9",X"20",X"FE",X"72",X"C9",X"02",
|
||||
X"90",X"06",X"D0",X"0A",X"E0",X"08",X"B0",X"06",X"20",X"3D",X"73",X"4C",X"03",X"72",X"24",X"5D",
|
||||
X"10",X"03",X"4C",X"39",X"72",X"A5",X"0F",X"18",X"65",X"51",X"85",X"51",X"A5",X"10",X"29",X"03",
|
||||
X"65",X"4F",X"29",X"0F",X"AA",X"4A",X"66",X"51",X"4A",X"66",X"51",X"18",X"69",X"02",X"29",X"03",
|
||||
X"85",X"4F",X"8A",X"29",X"0C",X"48",X"0A",X"0A",X"AA",X"BD",X"E2",X"51",X"38",X"E5",X"53",X"85",
|
||||
X"48",X"BD",X"E3",X"51",X"E5",X"54",X"85",X"49",X"A9",X"80",X"85",X"4C",X"A0",X"00",X"A6",X"0D",
|
||||
X"A5",X"0E",X"29",X"0F",X"20",X"FE",X"6C",X"4A",X"66",X"4A",X"4A",X"66",X"4A",X"85",X"4B",X"68",
|
||||
X"AA",X"BD",X"BC",X"4B",X"85",X"48",X"BD",X"BD",X"4B",X"85",X"49",X"A9",X"00",X"85",X"50",X"85",
|
||||
X"52",X"85",X"53",X"85",X"54",X"85",X"09",X"85",X"07",X"85",X"4C",X"20",X"04",X"6D",X"84",X"0A",
|
||||
X"4A",X"66",X"0A",X"66",X"09",X"4A",X"66",X"0A",X"66",X"09",X"A9",X"80",X"85",X"08",X"A9",X"40",
|
||||
X"85",X"4E",X"60",X"20",X"FE",X"72",X"09",X"00",X"D0",X"2B",X"E0",X"02",X"B0",X"27",X"C0",X"02",
|
||||
X"B0",X"23",X"A5",X"02",X"38",X"E9",X"07",X"C9",X"03",X"B0",X"1E",X"A5",X"61",X"A2",X"80",X"C9",
|
||||
X"04",X"90",X"06",X"C9",X"08",X"B0",X"12",X"A2",X"C0",X"A5",X"5F",X"C9",X"04",X"B0",X"0A",X"8A",
|
||||
X"05",X"5D",X"85",X"5D",X"60",X"24",X"5D",X"10",X"04",X"A9",X"8F",X"85",X"5D",X"60",X"A5",X"0A",
|
||||
X"24",X"5C",X"30",X"1A",X"C9",X"A5",X"90",X"2A",X"20",X"3D",X"73",X"F0",X"10",X"C9",X"02",X"90",
|
||||
X"0C",X"20",X"2D",X"65",X"20",X"96",X"6B",X"A2",X"FF",X"9A",X"4C",X"40",X"60",X"60",X"A5",X"53",
|
||||
X"05",X"54",X"F0",X"0E",X"20",X"54",X"73",X"B0",X"F4",X"A9",X"00",X"85",X"52",X"85",X"53",X"85",
|
||||
X"54",X"60",X"20",X"FE",X"72",X"A8",X"D0",X"F9",X"E0",X"60",X"B0",X"F5",X"A5",X"0F",X"18",X"65",
|
||||
X"51",X"85",X"51",X"A5",X"10",X"65",X"4F",X"29",X"03",X"AA",X"06",X"51",X"2A",X"06",X"51",X"2A",
|
||||
X"48",X"38",X"E9",X"02",X"29",X"0F",X"85",X"4F",X"8A",X"0A",X"0A",X"AA",X"BD",X"BC",X"4B",X"85",
|
||||
X"48",X"BD",X"BD",X"4B",X"85",X"49",X"A9",X"80",X"85",X"4C",X"A5",X"0E",X"A6",X"0D",X"A0",X"00",
|
||||
X"20",X"FE",X"6C",X"06",X"4A",X"2A",X"06",X"4A",X"2A",X"85",X"4B",X"A9",X"A3",X"A2",X"78",X"85",
|
||||
X"49",X"86",X"48",X"20",X"04",X"6D",X"A9",X"18",X"85",X"48",X"A9",X"A1",X"85",X"49",X"A9",X"00",
|
||||
X"85",X"4C",X"85",X"4E",X"85",X"07",X"85",X"09",X"85",X"50",X"85",X"52",X"20",X"04",X"6D",X"68",
|
||||
X"29",X"0C",X"0A",X"AA",X"BD",X"22",X"52",X"85",X"48",X"BD",X"23",X"52",X"85",X"49",X"20",X"04",
|
||||
X"6D",X"85",X"54",X"84",X"53",X"A9",X"80",X"85",X"08",X"A9",X"9E",X"85",X"0A",X"60",X"A0",X"FF",
|
||||
X"A5",X"7E",X"A6",X"7D",X"C5",X"80",X"90",X"12",X"D0",X"0C",X"A4",X"7F",X"C4",X"7D",X"B0",X"0A",
|
||||
X"A6",X"7F",X"A4",X"7D",X"90",X"04",X"A5",X"80",X"A6",X"7F",X"60",X"20",X"6B",X"73",X"A5",X"50",
|
||||
X"18",X"65",X"3D",X"85",X"50",X"A5",X"51",X"65",X"3E",X"85",X"51",X"60",X"20",X"6B",X"73",X"A5",
|
||||
X"50",X"38",X"E5",X"3D",X"85",X"50",X"A5",X"51",X"E5",X"3E",X"85",X"51",X"60",X"20",X"8A",X"73",
|
||||
X"A5",X"52",X"18",X"65",X"3F",X"85",X"52",X"A5",X"53",X"65",X"40",X"85",X"53",X"A5",X"54",X"69",
|
||||
X"00",X"85",X"54",X"60",X"20",X"8A",X"73",X"A5",X"52",X"38",X"E5",X"3F",X"85",X"52",X"A5",X"53",
|
||||
X"E5",X"40",X"85",X"53",X"A5",X"54",X"E9",X"00",X"85",X"54",X"60",X"A9",X"80",X"85",X"55",X"A5",
|
||||
X"5F",X"85",X"3D",X"A9",X"00",X"85",X"3E",X"A5",X"5E",X"A2",X"02",X"24",X"4E",X"70",X"02",X"A2",
|
||||
X"04",X"0A",X"26",X"3D",X"26",X"3E",X"CA",X"D0",X"F8",X"60",X"A9",X"80",X"85",X"57",X"A5",X"61",
|
||||
X"85",X"3F",X"A9",X"00",X"85",X"40",X"A5",X"60",X"A2",X"02",X"24",X"4E",X"70",X"02",X"A2",X"04",
|
||||
X"0A",X"26",X"3F",X"26",X"40",X"CA",X"D0",X"F8",X"60",X"A9",X"BA",X"85",X"64",X"A9",X"51",X"85",
|
||||
X"65",X"A9",X"45",X"85",X"28",X"A9",X"6B",X"85",X"69",X"A9",X"00",X"85",X"27",X"85",X"6A",X"85",
|
||||
X"37",X"85",X"38",X"85",X"39",X"A9",X"F0",X"85",X"2B",X"A9",X"44",X"85",X"2C",X"20",X"03",X"75",
|
||||
X"A0",X"00",X"B1",X"64",X"AA",X"C8",X"B1",X"64",X"C9",X"A0",X"90",X"12",X"C9",X"D0",X"90",X"25",
|
||||
X"F0",X"4F",X"91",X"27",X"88",X"8A",X"49",X"08",X"91",X"27",X"C8",X"C8",X"D0",X"E4",X"38",X"E9",
|
||||
X"20",X"91",X"27",X"88",X"8A",X"91",X"27",X"C8",X"C8",X"B1",X"64",X"91",X"27",X"C8",X"B1",X"64",
|
||||
X"91",X"27",X"C8",X"D0",X"CD",X"29",X"0F",X"85",X"3A",X"86",X"3B",X"88",X"20",X"F8",X"74",X"C8",
|
||||
X"C8",X"98",X"A0",X"00",X"18",X"65",X"64",X"91",X"69",X"E6",X"69",X"A5",X"65",X"69",X"00",X"91",
|
||||
X"69",X"E6",X"69",X"A5",X"3B",X"0A",X"85",X"64",X"A5",X"3A",X"2A",X"09",X"40",X"85",X"65",X"D0",
|
||||
X"A1",X"88",X"20",X"F8",X"74",X"A0",X"00",X"C6",X"69",X"B1",X"69",X"85",X"65",X"C6",X"69",X"B1",
|
||||
X"69",X"85",X"64",X"A6",X"69",X"E0",X"6B",X"D0",X"89",X"E6",X"37",X"A2",X"04",X"E4",X"37",X"D0",
|
||||
X"81",X"A9",X"00",X"85",X"37",X"91",X"27",X"C8",X"A9",X"D0",X"91",X"27",X"C8",X"20",X"F8",X"74",
|
||||
X"E6",X"39",X"A2",X"04",X"E4",X"39",X"F0",X"03",X"4C",X"CD",X"73",X"A9",X"F0",X"85",X"64",X"A9",
|
||||
X"44",X"85",X"65",X"A5",X"38",X"18",X"65",X"2B",X"85",X"2B",X"D0",X"02",X"E6",X"2C",X"A0",X"07",
|
||||
X"B1",X"64",X"91",X"2B",X"88",X"10",X"F9",X"A9",X"7E",X"85",X"64",X"A9",X"4E",X"85",X"65",X"A9",
|
||||
X"00",X"85",X"27",X"A9",X"47",X"85",X"28",X"A0",X"00",X"A2",X"00",X"B1",X"64",X"E0",X"01",X"D0",
|
||||
X"05",X"38",X"E9",X"20",X"D0",X"16",X"E0",X"07",X"D0",X"12",X"29",X"03",X"85",X"37",X"88",X"B1",
|
||||
X"64",X"46",X"37",X"6A",X"46",X"37",X"6A",X"91",X"27",X"C8",X"A9",X"04",X"91",X"27",X"E8",X"8A",
|
||||
X"29",X"07",X"AA",X"C8",X"C0",X"20",X"90",X"D3",X"A5",X"21",X"F0",X"2B",X"A2",X"05",X"86",X"37",
|
||||
X"0A",X"AA",X"CA",X"CA",X"A9",X"40",X"85",X"27",X"A9",X"47",X"85",X"28",X"BD",X"6A",X"5E",X"BC",
|
||||
X"69",X"5E",X"20",X"A4",X"7E",X"A6",X"65",X"A4",X"64",X"20",X"F2",X"79",X"A5",X"2C",X"A4",X"2B",
|
||||
X"20",X"CD",X"7E",X"C6",X"37",X"10",X"EE",X"60",X"98",X"18",X"65",X"27",X"85",X"27",X"90",X"02",
|
||||
X"E6",X"28",X"60",X"A5",X"28",X"4A",X"29",X"0F",X"09",X"C0",X"AA",X"A5",X"27",X"6A",X"A4",X"38",
|
||||
X"91",X"2B",X"8A",X"C8",X"91",X"2B",X"C8",X"84",X"38",X"60",X"A8",X"A2",X"03",X"86",X"39",X"A2",
|
||||
X"02",X"B5",X"5F",X"B4",X"5E",X"84",X"37",X"A0",X"09",X"86",X"3A",X"AA",X"20",X"C6",X"79",X"48",
|
||||
X"8A",X"A6",X"39",X"95",X"A7",X"94",X"A8",X"68",X"95",X"A6",X"A6",X"3A",X"A0",X"02",X"05",X"94",
|
||||
X"05",X"93",X"F0",X"07",X"B5",X"5A",X"0A",X"A9",X"00",X"2A",X"A8",X"8A",X"4A",X"AA",X"94",X"9A",
|
||||
X"A9",X"00",X"85",X"39",X"A6",X"3A",X"CA",X"CA",X"10",X"C7",X"20",X"FE",X"72",X"86",X"37",X"24",
|
||||
X"4E",X"50",X"06",X"06",X"37",X"2A",X"06",X"37",X"2A",X"AA",X"A4",X"37",X"20",X"C2",X"79",X"85",
|
||||
X"AF",X"86",X"B0",X"84",X"B1",X"60",X"A2",X"15",X"24",X"5D",X"70",X"0A",X"A2",X"05",X"A5",X"5D",
|
||||
X"29",X"0F",X"D0",X"02",X"A2",X"50",X"F8",X"8A",X"18",X"65",X"A4",X"85",X"A4",X"A5",X"A5",X"69",
|
||||
X"00",X"85",X"A5",X"D8",X"60",X"A2",X"0C",X"A9",X"00",X"85",X"8F",X"8A",X"4A",X"A8",X"B9",X"8D",
|
||||
X"76",X"C5",X"56",X"90",X"70",X"86",X"3A",X"20",X"2F",X"76",X"E0",X"0C",X"D0",X"03",X"18",X"65",
|
||||
X"3D",X"20",X"BF",X"76",X"86",X"19",X"84",X"1A",X"A6",X"3A",X"E8",X"20",X"2F",X"76",X"CA",X"E0",
|
||||
X"0C",X"D0",X"03",X"18",X"65",X"3F",X"20",X"BF",X"76",X"86",X"1B",X"84",X"1C",X"98",X"10",X"0B",
|
||||
X"49",X"FF",X"A8",X"8A",X"49",X"FF",X"AA",X"E8",X"D0",X"01",X"C8",X"C0",X"04",X"B0",X"3A",X"20",
|
||||
X"43",X"78",X"A0",X"00",X"A6",X"3A",X"E0",X"0C",X"D0",X"13",X"A5",X"56",X"29",X"07",X"0A",X"AA",
|
||||
X"BD",X"9E",X"4E",X"91",X"27",X"C8",X"BD",X"9F",X"4E",X"91",X"27",X"D0",X"13",X"20",X"2D",X"76",
|
||||
X"98",X"A4",X"37",X"91",X"27",X"C8",X"E8",X"20",X"2D",X"76",X"98",X"CA",X"A4",X"37",X"91",X"27",
|
||||
X"20",X"38",X"78",X"A6",X"3A",X"CA",X"CA",X"10",X"82",X"A5",X"56",X"49",X"7F",X"C9",X"40",X"90",
|
||||
X"0B",X"4A",X"4A",X"4A",X"09",X"08",X"AA",X"A9",X"20",X"4C",X"53",X"79",X"60",X"84",X"37",X"A5",
|
||||
X"91",X"F0",X"1B",X"C9",X"02",X"90",X"10",X"F0",X"07",X"BD",X"7F",X"76",X"BC",X"10",X"4F",X"60",
|
||||
X"BD",X"71",X"76",X"BC",X"04",X"4F",X"60",X"BD",X"63",X"76",X"BC",X"F8",X"4E",X"60",X"BD",X"55",
|
||||
X"76",X"BC",X"EC",X"4E",X"60",X"00",X"FE",X"FF",X"FF",X"FE",X"00",X"FF",X"00",X"00",X"02",X"02",
|
||||
X"FF",X"00",X"03",X"02",X"01",X"00",X"01",X"FC",X"01",X"FF",X"FF",X"02",X"00",X"00",X"FF",X"00",
|
||||
X"02",X"FF",X"00",X"FD",X"00",X"01",X"00",X"FF",X"FF",X"00",X"FF",X"03",X"00",X"00",X"03",X"01",
|
||||
X"FF",X"FB",X"00",X"01",X"FF",X"03",X"01",X"FF",X"FD",X"01",X"01",X"00",X"03",X"5D",X"60",X"64",
|
||||
X"6D",X"70",X"74",X"7F",X"A5",X"61",X"4A",X"4A",X"4A",X"C9",X"08",X"90",X"02",X"A9",X"07",X"85",
|
||||
X"3F",X"A5",X"5F",X"4A",X"4A",X"C9",X"08",X"90",X"02",X"A9",X"07",X"24",X"5A",X"30",X"05",X"49",
|
||||
X"FF",X"18",X"69",X"01",X"85",X"3D",X"A5",X"74",X"4A",X"4A",X"29",X"03",X"85",X"91",X"60",X"A0",
|
||||
X"00",X"85",X"38",X"0A",X"A5",X"56",X"85",X"37",X"90",X"02",X"A0",X"FF",X"84",X"39",X"A2",X"00",
|
||||
X"A0",X"00",X"46",X"37",X"B0",X"03",X"D0",X"0A",X"60",X"18",X"8A",X"65",X"38",X"AA",X"98",X"65",
|
||||
X"39",X"A8",X"06",X"38",X"26",X"39",X"4C",X"D2",X"76",X"00",X"32",X"5F",X"9A",X"B5",X"CD",X"EE",
|
||||
X"FB",X"FF",X"00",X"80",X"C0",X"40",X"00",X"02",X"05",X"08",X"0B",X"0D",X"0F",X"10",X"11",X"12",
|
||||
X"13",X"14",X"16",X"18",X"1A",X"1C",X"FF",X"EE",X"0C",X"EB",X"08",X"EA",X"04",X"E9",X"FF",X"EA",
|
||||
X"FB",X"EB",X"F8",X"ED",X"F3",X"F1",X"F0",X"F5",X"EE",X"F8",X"EB",X"F8",X"00",X"F9",X"FD",X"F9",
|
||||
X"FC",X"FA",X"FB",X"F8",X"00",X"F8",X"FF",X"F8",X"FD",X"F9",X"FC",X"F8",X"00",X"F9",X"FE",X"F9",
|
||||
X"FD",X"FA",X"FC",X"F8",X"00",X"F8",X"FF",X"F4",X"12",X"F1",X"10",X"ED",X"0D",X"EB",X"08",X"EA",
|
||||
X"05",X"E9",X"01",X"EA",X"FC",X"EB",X"F8",X"EE",X"F5",X"F0",X"F1",X"F2",X"EE",X"F8",X"EA",X"FB",
|
||||
X"EA",X"FD",X"EA",X"ED",X"F3",X"F1",X"F0",X"F7",X"EE",X"F8",X"EB",X"FD",X"EA",X"03",X"EA",X"05",
|
||||
X"EA",X"08",X"EA",X"04",X"EE",X"FC",X"F9",X"FD",X"F8",X"FF",X"F8",X"01",X"F8",X"FC",X"FA",X"FD",
|
||||
X"F9",X"FE",X"F9",X"00",X"F7",X"01",X"F8",X"FD",X"F8",X"F9",X"FC",X"F9",X"FA",X"FB",X"FA",X"FC",
|
||||
X"F9",X"FD",X"F9",X"EA",X"FC",X"EB",X"F8",X"03",X"F9",X"04",X"F9",X"05",X"F9",X"06",X"FB",X"FB",
|
||||
X"EA",X"FD",X"EA",X"03",X"EA",X"08",X"EB",X"0C",X"EE",X"0F",X"F0",X"13",X"F3",X"15",X"F8",X"16",
|
||||
X"FB",X"17",X"FF",X"16",X"04",X"10",X"F1",X"12",X"F4",X"15",X"F8",X"16",X"FC",X"03",X"F9",X"04",
|
||||
X"F9",X"05",X"FA",X"07",X"FA",X"07",X"FC",X"02",X"F8",X"FF",X"F8",X"00",X"F7",X"02",X"F9",X"03",
|
||||
X"F9",X"04",X"FA",X"FF",X"F8",X"01",X"F8",X"08",X"FE",X"08",X"FF",X"08",X"00",X"07",X"02",X"07",
|
||||
X"FC",X"07",X"FD",X"08",X"00",X"08",X"01",X"0C",X"EE",X"0F",X"F0",X"13",X"F3",X"15",X"F8",X"16",
|
||||
X"FB",X"17",X"FF",X"16",X"04",X"15",X"08",X"12",X"F4",X"15",X"F8",X"16",X"FC",X"17",X"01",X"16",
|
||||
X"05",X"15",X"08",X"13",X"0D",X"0F",X"10",X"0B",X"12",X"08",X"FF",X"08",X"00",X"06",X"FC",X"07");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@ -1,150 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_PROG_ROM_3 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_PROG_ROM_3 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"FD",X"07",X"FE",X"06",X"FB",X"07",X"FC",X"3C",X"45",X"BC",X"45",X"5E",X"46",X"B4",X"46",X"00",
|
||||
X"10",X"80",X"AA",X"00",X"32",X"10",X"00",X"BF",X"90",X"04",X"29",X"0F",X"F0",X"05",X"29",X"0F",
|
||||
X"18",X"69",X"01",X"08",X"0A",X"A0",X"00",X"AA",X"BD",X"A2",X"57",X"91",X"27",X"BD",X"A3",X"57",
|
||||
X"C8",X"91",X"27",X"20",X"38",X"78",X"28",X"60",X"98",X"38",X"65",X"27",X"85",X"27",X"90",X"02",
|
||||
X"E6",X"28",X"60",X"A5",X"1A",X"C9",X"80",X"90",X"11",X"49",X"FF",X"85",X"1A",X"A5",X"19",X"49",
|
||||
X"FF",X"69",X"00",X"85",X"19",X"90",X"02",X"E6",X"1A",X"38",X"26",X"37",X"A5",X"1C",X"C9",X"80",
|
||||
X"90",X"11",X"49",X"FF",X"85",X"1C",X"A5",X"1B",X"49",X"FF",X"69",X"00",X"85",X"1B",X"90",X"02",
|
||||
X"E6",X"1C",X"38",X"26",X"37",X"A5",X"19",X"C5",X"1B",X"A5",X"1A",X"E5",X"1C",X"A2",X"00",X"B0",
|
||||
X"02",X"A2",X"02",X"B5",X"1A",X"A0",X"09",X"C9",X"02",X"B0",X"09",X"88",X"16",X"19",X"F0",X"03",
|
||||
X"2A",X"10",X"F4",X"2A",X"95",X"1A",X"98",X"0A",X"66",X"37",X"2A",X"66",X"37",X"2A",X"0A",X"85",
|
||||
X"37",X"8A",X"49",X"02",X"AA",X"C0",X"09",X"B0",X"07",X"C8",X"16",X"19",X"36",X"1A",X"10",X"F5",
|
||||
X"A0",X"00",X"A5",X"1B",X"91",X"27",X"A5",X"37",X"29",X"FC",X"05",X"1C",X"C8",X"91",X"27",X"A5",
|
||||
X"19",X"C8",X"91",X"27",X"A5",X"37",X"29",X"02",X"0A",X"05",X"8F",X"05",X"1A",X"C8",X"91",X"27",
|
||||
X"4C",X"38",X"78",X"A2",X"02",X"BD",X"01",X"24",X"0A",X"B5",X"B7",X"29",X"1F",X"B0",X"37",X"F0",
|
||||
X"10",X"C9",X"1B",X"B0",X"0A",X"A8",X"A5",X"BA",X"29",X"07",X"C9",X"07",X"98",X"90",X"02",X"E9",
|
||||
X"01",X"95",X"B7",X"AD",X"00",X"20",X"29",X"04",X"D0",X"04",X"A9",X"F0",X"85",X"B4",X"A5",X"B4",
|
||||
X"F0",X"08",X"C6",X"B4",X"A9",X"00",X"95",X"B7",X"95",X"B3",X"18",X"B5",X"B3",X"F0",X"23",X"D6",
|
||||
X"B3",X"D0",X"1F",X"38",X"B0",X"1C",X"C9",X"1B",X"B0",X"09",X"B5",X"B7",X"69",X"20",X"90",X"D1",
|
||||
X"F0",X"01",X"18",X"A9",X"1F",X"B0",X"CA",X"95",X"B7",X"B5",X"B3",X"F0",X"01",X"38",X"A9",X"78",
|
||||
X"95",X"B3",X"90",X"04",X"F6",X"B6",X"E6",X"B2",X"CA",X"CA",X"10",X"99",X"E6",X"BA",X"A5",X"BA",
|
||||
X"4A",X"A5",X"B2",X"B0",X"0C",X"F0",X"0A",X"C9",X"10",X"B0",X"02",X"69",X"FF",X"69",X"EF",X"85",
|
||||
X"B2",X"0A",X"60",X"25",X"89",X"86",X"3C",X"05",X"3C",X"8D",X"00",X"3C",X"85",X"89",X"60",X"25",
|
||||
X"88",X"86",X"3C",X"05",X"3C",X"8D",X"00",X"32",X"85",X"88",X"60",X"AD",X"03",X"28",X"29",X"03",
|
||||
X"AA",X"BD",X"9B",X"79",X"85",X"99",X"A2",X"00",X"EE",X"00",X"58",X"F0",X"06",X"AD",X"02",X"28",
|
||||
X"29",X"03",X"AA",X"86",X"21",X"38",X"AD",X"01",X"28",X"2A",X"2A",X"2D",X"00",X"28",X"29",X"0F",
|
||||
X"69",X"00",X"C9",X"09",X"90",X"02",X"A9",X"00",X"85",X"98",X"60",X"01",X"04",X"05",X"06",X"A2",
|
||||
X"0C",X"A5",X"98",X"18",X"69",X"18",X"20",X"34",X"7A",X"A9",X"17",X"20",X"4F",X"7A",X"A9",X"05",
|
||||
X"20",X"4F",X"7A",X"A5",X"86",X"29",X"20",X"F0",X"07",X"A2",X"00",X"A9",X"04",X"4C",X"34",X"7A",
|
||||
X"60",X"00",X"84",X"37",X"A0",X"0F",X"86",X"38",X"A9",X"00",X"85",X"92",X"85",X"93",X"85",X"94",
|
||||
X"F8",X"06",X"37",X"26",X"38",X"A5",X"92",X"65",X"92",X"85",X"92",X"A5",X"93",X"65",X"93",X"85",
|
||||
X"93",X"A5",X"94",X"65",X"94",X"85",X"94",X"88",X"10",X"E7",X"A4",X"94",X"A6",X"93",X"A5",X"92",
|
||||
X"D8",X"60",X"86",X"2C",X"84",X"2B",X"A9",X"00",X"4A",X"A8",X"B1",X"2B",X"85",X"39",X"29",X"7F",
|
||||
X"AA",X"98",X"0A",X"A8",X"BD",X"A2",X"57",X"91",X"27",X"C8",X"BD",X"A3",X"57",X"91",X"27",X"C8",
|
||||
X"98",X"24",X"39",X"10",X"E3",X"18",X"65",X"27",X"85",X"27",X"90",X"02",X"E6",X"28",X"98",X"4A",
|
||||
X"65",X"2B",X"85",X"2B",X"90",X"02",X"E6",X"2C",X"60",X"A9",X"17",X"20",X"4F",X"7A",X"A9",X"03",
|
||||
X"D0",X"1D",X"A9",X"80",X"48",X"8A",X"18",X"69",X"0C",X"A8",X"A9",X"55",X"69",X"00",X"A6",X"27",
|
||||
X"86",X"2F",X"A6",X"28",X"86",X"30",X"20",X"CD",X"7E",X"20",X"10",X"7F",X"68",X"30",X"58",X"C9",
|
||||
X"18",X"90",X"03",X"0A",X"D0",X"48",X"48",X"A6",X"21",X"F0",X"10",X"CA",X"7D",X"A1",X"5F",X"AA",
|
||||
X"BD",X"A4",X"5F",X"A2",X"00",X"0A",X"90",X"0F",X"CA",X"B0",X"0C",X"E9",X"08",X"C9",X"0C",X"B0",
|
||||
X"13",X"AA",X"BD",X"6D",X"69",X"A2",X"00",X"18",X"A0",X"02",X"71",X"2F",X"91",X"2F",X"8A",X"C8",
|
||||
X"71",X"2F",X"91",X"2F",X"68",X"0A",X"C9",X"30",X"B0",X"14",X"A6",X"21",X"F0",X"10",X"CA",X"18",
|
||||
X"7D",X"00",X"58",X"AA",X"BC",X"04",X"58",X"BD",X"05",X"58",X"AA",X"4C",X"F2",X"79",X"AA",X"BC",
|
||||
X"2B",X"69",X"BD",X"2C",X"69",X"D0",X"F3",X"60",X"48",X"8A",X"48",X"98",X"48",X"D8",X"AD",X"00",
|
||||
X"2C",X"38",X"E5",X"83",X"B0",X"04",X"C6",X"83",X"A9",X"00",X"C5",X"84",X"90",X"04",X"E6",X"84",
|
||||
X"A5",X"84",X"AA",X"38",X"E5",X"82",X"90",X"0A",X"4A",X"4A",X"F0",X"0A",X"86",X"82",X"E6",X"85",
|
||||
X"D0",X"04",X"69",X"03",X"30",X"F6",X"E6",X"74",X"A5",X"73",X"C9",X"03",X"B0",X"0D",X"8D",X"00",
|
||||
X"34",X"A5",X"00",X"45",X"C1",X"45",X"C2",X"C9",X"85",X"F0",X"03",X"4C",X"EB",X"7A",X"20",X"D3",
|
||||
X"78",X"90",X"06",X"A2",X"20",X"A9",X"FF",X"D0",X"04",X"A9",X"DF",X"A2",X"00",X"20",X"5F",X"79",
|
||||
X"24",X"22",X"50",X"2F",X"C6",X"87",X"D0",X"2B",X"A9",X"FA",X"85",X"87",X"E6",X"8D",X"F8",X"18",
|
||||
X"A2",X"00",X"A0",X"02",X"A9",X"08",X"75",X"9E",X"95",X"9E",X"A9",X"00",X"E8",X"88",X"10",X"F6",
|
||||
X"A5",X"9C",X"18",X"69",X"01",X"C9",X"60",X"90",X"02",X"A9",X"00",X"85",X"9C",X"A5",X"9D",X"69",
|
||||
X"00",X"85",X"9D",X"D8",X"A5",X"22",X"D0",X"0E",X"A5",X"74",X"A2",X"1F",X"4A",X"90",X"02",X"A2",
|
||||
X"10",X"A9",X"00",X"20",X"5F",X"79",X"C6",X"8A",X"D0",X"06",X"A9",X"06",X"85",X"8A",X"E6",X"73",
|
||||
X"68",X"A8",X"68",X"AA",X"68",X"40",X"00",X"A0",X"02",X"38",X"08",X"88",X"84",X"38",X"18",X"65",
|
||||
X"38",X"28",X"AA",X"08",X"86",X"37",X"B5",X"00",X"4A",X"4A",X"4A",X"4A",X"28",X"20",X"18",X"78",
|
||||
X"A5",X"38",X"D0",X"01",X"18",X"A6",X"37",X"B5",X"00",X"20",X"18",X"78",X"A6",X"37",X"CA",X"C6",
|
||||
X"38",X"10",X"E0",X"60",X"A2",X"FF",X"9A",X"D8",X"A9",X"00",X"8D",X"00",X"3C",X"AA",X"95",X"00",
|
||||
X"E8",X"D0",X"FB",X"AD",X"00",X"20",X"4A",X"4A",X"B0",X"03",X"4C",X"B9",X"7B",X"A9",X"85",X"85",
|
||||
X"00",X"85",X"C1",X"85",X"C2",X"A9",X"FF",X"85",X"83",X"A9",X"06",X"85",X"8A",X"A9",X"02",X"85",
|
||||
X"9A",X"85",X"9B",X"8D",X"00",X"34",X"4C",X"01",X"60",X"A2",X"11",X"9A",X"8A",X"85",X"00",X"A0",
|
||||
X"00",X"A2",X"01",X"C8",X"B9",X"00",X"00",X"D0",X"23",X"E8",X"D0",X"F7",X"BA",X"8A",X"8D",X"00",
|
||||
X"34",X"C8",X"D9",X"00",X"00",X"D0",X"12",X"A2",X"00",X"96",X"00",X"C8",X"D0",X"05",X"0A",X"A2",
|
||||
X"00",X"B0",X"0A",X"AA",X"9A",X"96",X"00",X"D0",X"D8",X"59",X"00",X"00",X"AA",X"8A",X"A0",X"10",
|
||||
X"29",X"0F",X"F0",X"02",X"A0",X"20",X"8A",X"A2",X"10",X"29",X"F0",X"F0",X"02",X"A2",X"20",X"98",
|
||||
X"9A",X"AA",X"8E",X"00",X"3C",X"A0",X"0C",X"A2",X"64",X"2C",X"00",X"20",X"70",X"FB",X"2C",X"00",
|
||||
X"20",X"50",X"FB",X"8D",X"00",X"34",X"CA",X"D0",X"F0",X"C0",X"05",X"D0",X"03",X"8E",X"00",X"3C",
|
||||
X"88",X"D0",X"E4",X"A8",X"30",X"05",X"09",X"80",X"BA",X"10",X"D7",X"C9",X"90",X"D0",X"05",X"BA",
|
||||
X"E0",X"10",X"F0",X"06",X"8D",X"00",X"34",X"4C",X"34",X"7C",X"A2",X"FF",X"9A",X"20",X"59",X"7E",
|
||||
X"A8",X"91",X"27",X"C8",X"D0",X"FB",X"E6",X"28",X"A6",X"28",X"E0",X"48",X"90",X"F3",X"20",X"59",
|
||||
X"7E",X"A9",X"11",X"85",X"37",X"84",X"BC",X"91",X"27",X"98",X"AA",X"C8",X"F0",X"06",X"B1",X"27",
|
||||
X"D0",X"2B",X"F0",X"F7",X"8A",X"A8",X"A5",X"37",X"8D",X"00",X"34",X"D1",X"27",X"D0",X"1C",X"A9",
|
||||
X"00",X"91",X"27",X"A5",X"37",X"C8",X"D0",X"03",X"0A",X"B0",X"06",X"85",X"37",X"91",X"27",X"D0",
|
||||
X"D8",X"E6",X"28",X"A5",X"28",X"C9",X"48",X"90",X"C8",X"B0",X"1E",X"51",X"27",X"A2",X"00",X"48",
|
||||
X"29",X"F0",X"F0",X"02",X"A2",X"02",X"68",X"29",X"0F",X"F0",X"01",X"E8",X"8A",X"A6",X"28",X"E0",
|
||||
X"44",X"90",X"02",X"0A",X"0A",X"05",X"BC",X"85",X"BC",X"A5",X"BC",X"8D",X"00",X"32",X"A9",X"03",
|
||||
X"85",X"56",X"18",X"A9",X"10",X"66",X"BC",X"08",X"90",X"01",X"0A",X"8D",X"00",X"3C",X"A0",X"50",
|
||||
X"20",X"7F",X"7E",X"8E",X"00",X"3C",X"A0",X"28",X"20",X"7F",X"7E",X"28",X"C6",X"56",X"10",X"E3",
|
||||
X"66",X"BC",X"8D",X"00",X"34",X"D0",X"FB",X"A9",X"48",X"85",X"2C",X"20",X"59",X"7E",X"85",X"2B",
|
||||
X"85",X"BC",X"85",X"BB",X"20",X"2D",X"7F",X"A9",X"12",X"20",X"62",X"7E",X"A2",X"37",X"8A",X"0A",
|
||||
X"A0",X"00",X"8D",X"00",X"34",X"51",X"2B",X"C8",X"D0",X"FB",X"A8",X"8A",X"29",X"03",X"C9",X"01",
|
||||
X"98",X"B0",X"2E",X"F0",X"2B",X"85",X"BC",X"86",X"39",X"A9",X"34",X"38",X"E5",X"39",X"4A",X"85",
|
||||
X"3A",X"38",X"E9",X"04",X"C9",X"04",X"B0",X"02",X"C6",X"BB",X"A5",X"BC",X"29",X"0F",X"F0",X"03",
|
||||
X"20",X"17",X"7F",X"A5",X"BC",X"29",X"F0",X"F0",X"05",X"E6",X"3A",X"20",X"17",X"7F",X"A6",X"39",
|
||||
X"8A",X"E6",X"2C",X"CA",X"10",X"BA",X"A6",X"BC",X"F0",X"16",X"24",X"BB",X"10",X"1B",X"A9",X"40",
|
||||
X"85",X"27",X"A9",X"18",X"85",X"27",X"A9",X"22",X"A2",X"0E",X"20",X"64",X"7E",X"4C",X"59",X"7D",
|
||||
X"AE",X"7F",X"7F",X"AC",X"7E",X"7F",X"20",X"F2",X"79",X"A9",X"00",X"85",X"56",X"85",X"39",X"85",
|
||||
X"89",X"A9",X"11",X"8D",X"00",X"32",X"A5",X"28",X"85",X"2A",X"A5",X"27",X"85",X"29",X"A2",X"07",
|
||||
X"BD",X"00",X"24",X"0A",X"26",X"BD",X"CA",X"10",X"F7",X"AD",X"00",X"20",X"29",X"04",X"85",X"BE",
|
||||
X"A2",X"00",X"A5",X"BF",X"45",X"BD",X"D0",X"06",X"A5",X"C0",X"45",X"BE",X"F0",X"02",X"A2",X"30",
|
||||
X"A9",X"0F",X"20",X"53",X"79",X"A5",X"BD",X"85",X"BF",X"A5",X"BE",X"85",X"C0",X"A5",X"29",X"85",
|
||||
X"27",X"A5",X"2A",X"85",X"28",X"24",X"BB",X"30",X"27",X"A9",X"1A",X"20",X"62",X"7E",X"A0",X"01",
|
||||
X"AD",X"00",X"2C",X"18",X"65",X"82",X"6A",X"85",X"82",X"A9",X"82",X"20",X"59",X"7B",X"20",X"9F",
|
||||
X"79",X"A9",X"3A",X"20",X"62",X"7E",X"20",X"6B",X"79",X"A9",X"99",X"A0",X"01",X"20",X"59",X"7B",
|
||||
X"20",X"71",X"7E",X"E6",X"56",X"A5",X"56",X"C9",X"20",X"90",X"1C",X"A6",X"3A",X"E8",X"E0",X"05",
|
||||
X"90",X"02",X"A2",X"00",X"86",X"3A",X"BD",X"80",X"7F",X"8D",X"00",X"32",X"BD",X"85",X"7F",X"AA",
|
||||
X"A9",X"30",X"20",X"53",X"79",X"84",X"56",X"20",X"95",X"7E",X"B0",X"03",X"4C",X"6E",X"7D",X"A2",
|
||||
X"00",X"8E",X"00",X"3C",X"86",X"BB",X"20",X"59",X"7E",X"A4",X"BB",X"C0",X"03",X"D0",X"23",X"A9",
|
||||
X"30",X"20",X"62",X"7E",X"A9",X"FB",X"A0",X"00",X"91",X"27",X"E6",X"27",X"48",X"A9",X"F8",X"91",
|
||||
X"27",X"E6",X"27",X"A9",X"38",X"A2",X"02",X"20",X"64",X"7E",X"68",X"38",X"E9",X"10",X"B0",X"E6",
|
||||
X"90",X"12",X"BE",X"F4",X"7F",X"98",X"0A",X"A8",X"B9",X"EF",X"7F",X"48",X"B9",X"EE",X"7F",X"A8",
|
||||
X"68",X"20",X"A6",X"7E",X"20",X"71",X"7E",X"20",X"7A",X"7E",X"20",X"95",X"7E",X"90",X"F8",X"A6",
|
||||
X"BB",X"E8",X"E0",X"04",X"90",X"AE",X"4C",X"9D",X"7B",X"A9",X"40",X"85",X"28",X"A9",X"00",X"85",
|
||||
X"27",X"60",X"A2",X"08",X"18",X"6D",X"7C",X"7F",X"A8",X"AD",X"7D",X"7F",X"69",X"00",X"4C",X"A6",
|
||||
X"7E",X"A9",X"4B",X"A0",X"DE",X"A2",X"06",X"20",X"A6",X"7E",X"8D",X"00",X"30",X"A0",X"03",X"8D",
|
||||
X"00",X"34",X"A2",X"14",X"2C",X"00",X"20",X"70",X"FB",X"2C",X"00",X"20",X"50",X"FB",X"CA",X"D0",
|
||||
X"F3",X"88",X"D0",X"EB",X"60",X"2C",X"00",X"20",X"30",X"03",X"06",X"26",X"60",X"A9",X"20",X"85",
|
||||
X"26",X"18",X"90",X"F8",X"A2",X"08",X"85",X"65",X"84",X"64",X"8A",X"A8",X"88",X"B1",X"64",X"91",
|
||||
X"27",X"88",X"10",X"F9",X"8A",X"18",X"65",X"27",X"85",X"27",X"90",X"02",X"E6",X"28",X"8A",X"18",
|
||||
X"65",X"64",X"85",X"64",X"90",X"02",X"E6",X"65",X"60",X"A2",X"02",X"D0",X"D9",X"A2",X"04",X"D0",
|
||||
X"D5",X"A2",X"04",X"D0",X"D5",X"18",X"65",X"8B",X"A8",X"8A",X"69",X"00",X"A2",X"00",X"86",X"3D",
|
||||
X"A2",X"0F",X"86",X"3E",X"85",X"65",X"84",X"64",X"A0",X"00",X"B1",X"64",X"38",X"E5",X"53",X"91",
|
||||
X"27",X"C8",X"B1",X"64",X"E5",X"54",X"29",X"0F",X"09",X"A0",X"91",X"27",X"C8",X"B1",X"64",X"38",
|
||||
X"E5",X"51",X"91",X"27",X"C8",X"B1",X"64",X"E5",X"3D",X"25",X"3E",X"91",X"27",X"20",X"38",X"78",
|
||||
X"A9",X"55",X"A0",X"AE",X"4C",X"CD",X"7E",X"A2",X"00",X"A4",X"3A",X"20",X"C2",X"79",X"A9",X"92",
|
||||
X"38",X"A0",X"01",X"20",X"5A",X"7B",X"A9",X"10",X"A2",X"02",X"4C",X"64",X"7E",X"A9",X"00",X"A2",
|
||||
X"10",X"4C",X"64",X"7E",X"00",X"A0",X"00",X"00",X"00",X"90",X"00",X"00",X"FF",X"A2",X"FF",X"03",
|
||||
X"00",X"90",X"00",X"00",X"0B",X"F0",X"58",X"A2",X"10",X"00",X"00",X"70",X"00",X"00",X"80",X"A1",
|
||||
X"00",X"02",X"00",X"70",X"00",X"00",X"CB",X"F8",X"C8",X"FF",X"CF",X"F8",X"C8",X"FB",X"CB",X"FF",
|
||||
X"0F",X"F8",X"CB",X"FB",X"90",X"A1",X"00",X"02",X"00",X"90",X"00",X"00",X"0F",X"FD",X"F4",X"A1",
|
||||
X"76",X"01",X"00",X"70",X"00",X"00",X"38",X"32",X"2E",X"00",X"32",X"AA",X"34",X"7F",X"76",X"7F",
|
||||
X"11",X"12",X"14",X"18",X"00",X"01",X"03",X"07",X"0F",X"00",X"80",X"A1",X"00",X"02",X"00",X"90",
|
||||
X"00",X"00",X"20",X"73",X"20",X"C3",X"07",X"E0",X"00",X"A0",X"00",X"00",X"00",X"90",X"00",X"00",
|
||||
X"FF",X"92",X"FF",X"C2",X"FC",X"77",X"FC",X"C3",X"FE",X"87",X"FE",X"C7",X"FE",X"83",X"FE",X"C7",
|
||||
X"FC",X"73",X"FC",X"C3",X"FF",X"96",X"FF",X"C2",X"FF",X"92",X"01",X"00",X"FF",X"96",X"FF",X"C6",
|
||||
X"FC",X"73",X"FC",X"C7",X"FE",X"83",X"FE",X"C3",X"FE",X"87",X"FE",X"C3",X"FC",X"77",X"FC",X"C7",
|
||||
X"FF",X"92",X"FF",X"C6",X"80",X"A1",X"00",X"02",X"00",X"90",X"00",X"00",X"06",X"C0",X"00",X"B0",
|
||||
X"08",X"C0",X"00",X"D0",X"0A",X"C0",X"00",X"D0",X"CB",X"FB",X"CF",X"FB",X"00",X"D0",X"8A",X"7F",
|
||||
X"98",X"7F",X"D4",X"7F",X"0E",X"3C",X"1A",X"00",X"57",X"00",X"A8",X"7A",X"84",X"7B",X"84",X"7B");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@ -1,150 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_VEC_ROM_0 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_VEC_ROM_0 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"80",X"27",X"00",X"05",X"80",X"22",X"80",X"C6",X"80",X"22",X"00",X"C0",X"80",X"22",X"80",X"C2",
|
||||
X"00",X"20",X"80",X"C2",X"80",X"26",X"80",X"C2",X"80",X"26",X"00",X"C0",X"80",X"26",X"80",X"C6",
|
||||
X"00",X"20",X"80",X"C6",X"00",X"D0",X"00",X"36",X"40",X"04",X"C7",X"F2",X"80",X"22",X"80",X"C4",
|
||||
X"C2",X"F3",X"80",X"20",X"80",X"C2",X"C3",X"F6",X"80",X"26",X"80",X"C0",X"C6",X"F7",X"80",X"24",
|
||||
X"80",X"C6",X"00",X"D0",X"40",X"36",X"00",X"00",X"80",X"21",X"80",X"C7",X"80",X"22",X"00",X"C5",
|
||||
X"80",X"23",X"80",X"C1",X"00",X"21",X"80",X"C2",X"80",X"25",X"80",X"C3",X"80",X"26",X"00",X"C1",
|
||||
X"80",X"27",X"80",X"C5",X"00",X"25",X"80",X"C6",X"00",X"D0",X"00",X"36",X"80",X"00",X"80",X"20",
|
||||
X"80",X"C7",X"00",X"22",X"80",X"C5",X"80",X"23",X"80",X"C0",X"80",X"21",X"00",X"C2",X"80",X"24",
|
||||
X"80",X"C3",X"00",X"26",X"80",X"C1",X"80",X"27",X"80",X"C4",X"80",X"25",X"00",X"C6",X"00",X"D0",
|
||||
X"05",X"FE",X"C5",X"F9",X"80",X"23",X"00",X"C0",X"C1",X"F9",X"00",X"20",X"80",X"C3",X"C1",X"FD",
|
||||
X"80",X"27",X"00",X"C0",X"C5",X"FD",X"00",X"20",X"80",X"C7",X"00",X"D0",X"00",X"36",X"C0",X"04",
|
||||
X"80",X"21",X"00",X"C6",X"80",X"23",X"80",X"C4",X"00",X"22",X"80",X"C1",X"80",X"20",X"80",X"C3",
|
||||
X"80",X"25",X"00",X"C2",X"80",X"27",X"80",X"C0",X"00",X"26",X"80",X"C5",X"80",X"24",X"80",X"C7",
|
||||
X"00",X"D0",X"00",X"36",X"40",X"04",X"00",X"21",X"80",X"C6",X"80",X"23",X"80",X"C5",X"80",X"22",
|
||||
X"00",X"C1",X"80",X"21",X"80",X"C3",X"00",X"25",X"80",X"C2",X"80",X"27",X"80",X"C1",X"80",X"26",
|
||||
X"00",X"C5",X"80",X"25",X"80",X"C7",X"00",X"D0",X"00",X"36",X"40",X"00",X"80",X"20",X"80",X"C6",
|
||||
X"C6",X"F3",X"80",X"22",X"80",X"C0",X"C3",X"F2",X"80",X"24",X"80",X"C2",X"C2",X"F7",X"80",X"26",
|
||||
X"80",X"C4",X"C7",X"F6",X"00",X"D0",X"00",X"C4",X"C0",X"33",X"40",X"05",X"80",X"26",X"00",X"C0",
|
||||
X"80",X"26",X"00",X"00",X"80",X"26",X"00",X"C0",X"00",X"10",X"00",X"C7",X"C0",X"33",X"00",X"C0",
|
||||
X"00",X"10",X"00",X"C3",X"00",X"10",X"00",X"07",X"C6",X"F9",X"00",X"F1",X"C0",X"FD",X"60",X"46",
|
||||
X"00",X"00",X"C0",X"FD",X"00",X"F1",X"C2",X"F9",X"00",X"F9",X"80",X"25",X"00",X"C7",X"40",X"33",
|
||||
X"00",X"C0",X"80",X"25",X"00",X"C3",X"80",X"21",X"00",X"07",X"00",X"D0",X"13",X"C4",X"80",X"24",
|
||||
X"80",X"06",X"80",X"22",X"80",X"C4",X"80",X"22",X"80",X"04",X"80",X"22",X"80",X"C4",X"00",X"15",
|
||||
X"00",X"C7",X"C0",X"37",X"C0",X"C0",X"00",X"11",X"00",X"C3",X"00",X"15",X"00",X"07",X"80",X"26",
|
||||
X"80",X"C7",X"00",X"16",X"00",X"01",X"C5",X"F2",X"60",X"42",X"80",X"04",X"C0",X"F9",X"00",X"F5",
|
||||
X"C0",X"34",X"40",X"C2",X"C0",X"36",X"80",X"00",X"00",X"26",X"80",X"C6",X"40",X"33",X"C0",X"C4",
|
||||
X"00",X"25",X"80",X"C3",X"00",X"21",X"80",X"07",X"00",X"D0",X"22",X"C4",X"40",X"33",X"C0",X"06",
|
||||
X"80",X"26",X"00",X"C1",X"80",X"26",X"00",X"01",X"80",X"26",X"00",X"C1",X"00",X"15",X"00",X"C7",
|
||||
X"C0",X"33",X"80",X"C5",X"00",X"11",X"00",X"C3",X"00",X"15",X"00",X"07",X"40",X"30",X"00",X"C6",
|
||||
X"00",X"12",X"00",X"05",X"C1",X"F6",X"40",X"46",X"C0",X"00",X"C1",X"F6",X"00",X"12",X"00",X"05",
|
||||
X"C3",X"F3",X"05",X"F2",X"80",X"26",X"00",X"C6",X"40",X"33",X"40",X"C5",X"80",X"24",X"80",X"C3",
|
||||
X"80",X"20",X"80",X"07",X"00",X"D0",X"35",X"C4",X"80",X"25",X"00",X"06",X"00",X"22",X"80",X"C5",
|
||||
X"00",X"22",X"80",X"05",X"00",X"22",X"80",X"C5",X"00",X"15",X"00",X"C7",X"40",X"37",X"80",X"C2",
|
||||
X"C1",X"F1",X"05",X"F5",X"40",X"36",X"00",X"C5",X"00",X"06",X"00",X"02",X"C5",X"F1",X"40",X"42",
|
||||
X"A0",X"05",X"C5",X"F2",X"00",X"16",X"00",X"01",X"40",X"30",X"40",X"C2",X"40",X"36",X"C0",X"01",
|
||||
X"00",X"27",X"80",X"C5",X"80",X"32",X"00",X"C6",X"80",X"20",X"80",X"C3",X"80",X"24",X"80",X"07",
|
||||
X"00",X"D0",X"48",X"C4",X"01",X"FD",X"C5",X"F9",X"05",X"F9",X"C5",X"F9",X"C5",X"F5",X"C3",X"FF",
|
||||
X"C1",X"F1",X"05",X"F5",X"00",X"36",X"C0",X"C4",X"00",X"06",X"00",X"02",X"C5",X"F1",X"C0",X"33",
|
||||
X"C0",X"07",X"C5",X"F1",X"00",X"06",X"00",X"02",X"C0",X"30",X"00",X"C2",X"40",X"36",X"40",X"02",
|
||||
X"C5",X"F7",X"80",X"32",X"C0",X"C6",X"00",X"21",X"80",X"C3",X"00",X"25",X"80",X"07",X"00",X"D0",
|
||||
X"56",X"C4",X"80",X"31",X"00",X"06",X"80",X"25",X"00",X"C2",X"80",X"25",X"00",X"02",X"80",X"25",
|
||||
X"00",X"C2",X"C5",X"F5",X"40",X"32",X"00",X"C7",X"C1",X"F1",X"05",X"F5",X"C6",X"FD",X"00",X"02",
|
||||
X"00",X"06",X"C1",X"F5",X"00",X"37",X"C0",X"03",X"C2",X"F5",X"00",X"11",X"00",X"06",X"40",X"32",
|
||||
X"80",X"C0",X"00",X"12",X"00",X"07",X"80",X"27",X"80",X"C4",X"00",X"32",X"C0",X"C6",X"80",X"21",
|
||||
X"80",X"C3",X"80",X"25",X"80",X"07",X"00",X"D0",X"69",X"C4",X"00",X"25",X"80",X"02",X"00",X"21",
|
||||
X"80",X"C6",X"00",X"21",X"80",X"06",X"00",X"21",X"80",X"C6",X"00",X"17",X"00",X"C5",X"80",X"35",
|
||||
X"C0",X"C3",X"00",X"13",X"00",X"C1",X"00",X"17",X"00",X"05",X"40",X"36",X"00",X"C0",X"01",X"F0",
|
||||
X"C5",X"F8",X"00",X"41",X"60",X"06",X"C5",X"F1",X"00",X"06",X"00",X"02",X"00",X"23",X"80",X"C3",
|
||||
X"00",X"35",X"C0",X"02",X"80",X"27",X"00",X"C0",X"40",X"31",X"00",X"C7",X"00",X"22",X"80",X"C2",
|
||||
X"00",X"26",X"80",X"06",X"00",X"D0",X"7C",X"C4",X"80",X"24",X"80",X"02",X"80",X"20",X"80",X"C6",
|
||||
X"80",X"20",X"80",X"06",X"80",X"20",X"80",X"C6",X"00",X"17",X"00",X"C5",X"60",X"44",X"00",X"C2",
|
||||
X"00",X"13",X"00",X"C0",X"00",X"17",X"00",X"00",X"40",X"36",X"80",X"C0",X"01",X"F0",X"C5",X"F8",
|
||||
X"80",X"40",X"60",X"06",X"C6",X"F1",X"00",X"15",X"00",X"02",X"80",X"23",X"80",X"C2",X"80",X"34",
|
||||
X"00",X"03",X"80",X"27",X"00",X"C1",X"C0",X"30",X"80",X"C7",X"80",X"22",X"00",X"C2",X"80",X"26",
|
||||
X"00",X"C6",X"00",X"D0",X"00",X"C4",X"00",X"20",X"80",X"C6",X"00",X"17",X"00",X"C0",X"00",X"30",
|
||||
X"C0",X"C3",X"00",X"13",X"00",X"C0",X"00",X"20",X"80",X"C6",X"C0",X"34",X"80",X"06",X"C5",X"FE",
|
||||
X"05",X"F0",X"C1",X"F8",X"00",X"40",X"60",X"02",X"C1",X"F8",X"05",X"F0",X"C5",X"FA",X"05",X"F8",
|
||||
X"00",X"27",X"80",X"C1",X"00",X"30",X"40",X"C7",X"00",X"23",X"80",X"C1",X"00",X"27",X"80",X"05",
|
||||
X"00",X"D0",X"8B",X"C4",X"AE",X"C4",X"D5",X"C4",X"FB",X"C4",X"21",X"C5",X"40",X"C5",X"64",X"C5",
|
||||
X"8B",X"C5",X"B2",X"C5",X"AA",X"A2",X"40",X"00",X"00",X"70",X"00",X"00",X"E8",X"A0",X"00",X"00",
|
||||
X"40",X"A0",X"00",X"00",X"18",X"A1",X"00",X"00",X"78",X"A0",X"00",X"00",X"EA",X"00",X"AC",X"A0",
|
||||
X"80",X"00",X"E0",X"A0",X"80",X"00",X"18",X"A0",X"80",X"00",X"18",X"A0",X"80",X"00",X"80",X"A1",
|
||||
X"00",X"02",X"00",X"B0",X"80",X"20",X"80",X"06",X"00",X"13",X"00",X"C3",X"00",X"10",X"00",X"C3",
|
||||
X"00",X"17",X"00",X"C3",X"00",X"17",X"00",X"C0",X"00",X"17",X"00",X"C7",X"00",X"10",X"00",X"C7",
|
||||
X"00",X"13",X"00",X"C7",X"06",X"F7",X"C2",X"F1",X"C0",X"32",X"00",X"C0",X"C6",X"F1",X"02",X"F7",
|
||||
X"00",X"12",X"00",X"C7",X"80",X"27",X"00",X"C0",X"00",X"12",X"00",X"C3",X"80",X"22",X"80",X"05",
|
||||
X"00",X"D0",X"00",X"20",X"80",X"06",X"C1",X"F2",X"00",X"11",X"00",X"C3",X"C2",X"F5",X"00",X"17",
|
||||
X"00",X"C1",X"C5",X"F6",X"00",X"15",X"00",X"C7",X"C6",X"F1",X"C5",X"F5",X"00",X"23",X"80",X"C4",
|
||||
X"00",X"15",X"00",X"C3",X"00",X"22",X"80",X"06",X"80",X"24",X"00",X"C2",X"40",X"36",X"80",X"C0",
|
||||
X"00",X"16",X"00",X"C7",X"40",X"32",X"40",X"04",X"00",X"D0",X"00",X"20",X"80",X"06",X"C1",X"F2",
|
||||
X"00",X"11",X"00",X"C3",X"C2",X"F5",X"00",X"17",X"00",X"C1",X"C5",X"F6",X"00",X"15",X"00",X"C7",
|
||||
X"C6",X"F1",X"05",X"F7",X"00",X"13",X"00",X"C3",X"40",X"32",X"C0",X"C4",X"80",X"20",X"00",X"C6",
|
||||
X"00",X"26",X"80",X"02",X"00",X"11",X"00",X"C7",X"80",X"27",X"00",X"C1",X"00",X"13",X"00",X"C2",
|
||||
X"05",X"F9",X"00",X"D0",X"00",X"26",X"80",X"05",X"80",X"24",X"00",X"C2",X"00",X"12",X"00",X"C3",
|
||||
X"00",X"22",X"80",X"C0",X"00",X"13",X"00",X"C6",X"80",X"20",X"00",X"C6",X"00",X"16",X"00",X"C7",
|
||||
X"00",X"26",X"80",X"C4",X"80",X"21",X"80",X"C7",X"00",X"20",X"80",X"C2",X"40",X"36",X"80",X"C1",
|
||||
X"C5",X"F6",X"80",X"23",X"00",X"00",X"00",X"17",X"00",X"C5",X"C6",X"F3",X"00",X"10",X"00",X"C3",
|
||||
X"00",X"10",X"00",X"07",X"00",X"D0",X"06",X"F5",X"B0",X"F9",X"B1",X"F1",X"B1",X"F8",X"B1",X"F5",
|
||||
X"B0",X"FD",X"B5",X"F5",X"B5",X"F8",X"80",X"27",X"00",X"01",X"00",X"22",X"80",X"C0",X"CD",X"F1",
|
||||
X"80",X"24",X"00",X"C6",X"00",X"25",X"80",X"03",X"C5",X"F8",X"C3",X"F7",X"C0",X"F9",X"07",X"F1",
|
||||
X"00",X"D0",X"80",X"26",X"80",X"04",X"80",X"20",X"00",X"C2",X"00",X"13",X"00",X"C2",X"00",X"22",
|
||||
X"80",X"C4",X"00",X"12",X"00",X"C7",X"80",X"24",X"00",X"C6",X"00",X"17",X"00",X"C6",X"00",X"26",
|
||||
X"80",X"C0",X"00",X"36",X"80",X"01",X"C0",X"F9",X"80",X"31",X"40",X"C6",X"C6",X"F5",X"00",X"20",
|
||||
X"80",X"03",X"00",X"15",X"00",X"C7",X"C3",X"F6",X"00",X"13",X"00",X"C0",X"80",X"20",X"00",X"07",
|
||||
X"00",X"D0",X"00",X"26",X"80",X"05",X"C5",X"F2",X"00",X"13",X"00",X"C1",X"C2",X"F1",X"00",X"15",
|
||||
X"00",X"C3",X"C1",X"F6",X"00",X"17",X"00",X"C5",X"C6",X"F5",X"80",X"26",X"00",X"02",X"00",X"22",
|
||||
X"80",X"C4",X"C0",X"30",X"40",X"C6",X"00",X"17",X"00",X"C7",X"03",X"F1",X"00",X"16",X"00",X"C7",
|
||||
X"00",X"25",X"80",X"C3",X"00",X"13",X"00",X"C5",X"80",X"24",X"00",X"07",X"00",X"D0",X"80",X"26",
|
||||
X"00",X"00",X"C2",X"F1",X"00",X"13",X"00",X"C1",X"C5",X"F2",X"00",X"11",X"00",X"C7",X"C6",X"F5",
|
||||
X"00",X"17",X"00",X"C5",X"C1",X"F6",X"C5",X"F5",X"80",X"24",X"00",X"C3",X"00",X"13",X"00",X"C5",
|
||||
X"80",X"26",X"00",X"02",X"00",X"22",X"80",X"C4",X"80",X"30",X"40",X"C6",X"00",X"17",X"00",X"C6",
|
||||
X"00",X"10",X"00",X"03",X"00",X"D0",X"80",X"26",X"80",X"04",X"00",X"13",X"00",X"C7",X"00",X"13",
|
||||
X"00",X"C0",X"00",X"13",X"00",X"C3",X"00",X"10",X"00",X"C3",X"00",X"17",X"00",X"C3",X"00",X"17",
|
||||
X"00",X"C0",X"00",X"17",X"00",X"C7",X"03",X"F6",X"C5",X"F2",X"00",X"30",X"C0",X"C6",X"C5",X"F6",
|
||||
X"03",X"F2",X"00",X"17",X"00",X"C6",X"00",X"20",X"80",X"C3",X"00",X"13",X"00",X"C6",X"80",X"25",
|
||||
X"80",X"06",X"00",X"D0",X"F2",X"C5",X"11",X"C6",X"2D",X"C6",X"4A",X"C6",X"6B",X"C6",X"81",X"C6",
|
||||
X"A1",X"C6",X"BF",X"C6",X"DB",X"C6",X"18",X"A0",X"80",X"02",X"18",X"A0",X"60",X"03",X"38",X"A0",
|
||||
X"08",X"01",X"20",X"A0",X"30",X"03",X"68",X"A0",X"40",X"00",X"A0",X"A0",X"C8",X"03",X"E8",X"A0",
|
||||
X"00",X"00",X"C0",X"A0",X"98",X"00",X"88",X"A0",X"C8",X"00",X"70",X"A1",X"C0",X"01",X"78",X"A0",
|
||||
X"F8",X"02",X"E0",X"A0",X"80",X"01",X"F0",X"A0",X"20",X"02",X"B8",X"A0",X"30",X"02",X"40",X"A0",
|
||||
X"60",X"02",X"40",X"00",X"00",X"0A",X"40",X"00",X"80",X"0D",X"C0",X"00",X"20",X"04",X"60",X"00",
|
||||
X"C0",X"0C",X"80",X"01",X"00",X"01",X"60",X"02",X"20",X"0F",X"80",X"03",X"00",X"00",X"E0",X"02",
|
||||
X"60",X"02",X"00",X"02",X"20",X"03",X"A0",X"05",X"00",X"07",X"C0",X"01",X"E0",X"0B",X"60",X"03",
|
||||
X"00",X"06",X"A0",X"03",X"80",X"08",X"C0",X"02",X"C0",X"08",X"E0",X"00",X"80",X"09",X"00",X"80",
|
||||
X"00",X"D2",X"50",X"74",X"18",X"06",X"00",X"70",X"00",X"D2",X"A0",X"64",X"30",X"06",X"00",X"60",
|
||||
X"00",X"D2",X"40",X"55",X"60",X"06",X"00",X"40",X"E0",X"D3",X"80",X"46",X"00",X"07",X"57",X"C7",
|
||||
X"5B",X"C7",X"5F",X"C7",X"63",X"C7",X"67",X"C7",X"6A",X"C7",X"6E",X"C7",X"72",X"C7",X"00",X"C4",
|
||||
X"80",X"23",X"00",X"01",X"00",X"D0",X"13",X"C4",X"00",X"32",X"40",X"00",X"00",X"D0",X"22",X"C4",
|
||||
X"40",X"32",X"00",X"00",X"00",X"D0",X"35",X"C4",X"00",X"32",X"80",X"04",X"00",X"D0",X"48",X"C4",
|
||||
X"01",X"FA",X"00",X"D0",X"56",X"C4",X"00",X"32",X"C0",X"00",X"00",X"D0",X"69",X"C4",X"00",X"32",
|
||||
X"40",X"00",X"00",X"D0",X"7C",X"C4",X"00",X"32",X"40",X"04",X"00",X"D0",X"8E",X"C7",X"94",X"C7",
|
||||
X"9D",X"C7",X"A3",X"C7",X"A9",X"C7",X"B1",X"C7",X"B7",X"C7",X"BC",X"C7",X"C7",X"C7",X"D0",X"C7",
|
||||
X"D7",X"C7",X"DF",X"C7",X"9D",X"C7",X"DF",X"C7",X"C7",X"C7",X"B1",X"C7",X"A3",X"C7",X"DF",X"C7",
|
||||
X"BC",X"C7",X"94",X"C7",X"9D",X"C7",X"D0",X"C7",X"B1",X"C7",X"B7",X"C7",X"A5",X"F8",X"01",X"F0",
|
||||
X"A1",X"FA",X"00",X"36",X"80",X"04",X"00",X"D0",X"00",X"20",X"80",X"A6",X"00",X"17",X"00",X"A0",
|
||||
X"00",X"30",X"C0",X"A2",X"80",X"21",X"00",X"07",X"00",X"D0",X"A7",X"F0",X"00",X"23",X"80",X"A1",
|
||||
X"00",X"27",X"80",X"01",X"00",X"D0",X"00",X"20",X"80",X"A3",X"00",X"23",X"80",X"A5",X"06",X"F7",
|
||||
X"00",X"D0",X"A1",X"F8",X"00",X"13",X"00",X"A0",X"00",X"30",X"80",X"A6",X"80",X"25",X"00",X"03",
|
||||
X"00",X"D0",X"A1",X"F8",X"05",X"F0",X"A5",X"FA",X"00",X"36",X"80",X"00",X"00",X"D0",X"A0",X"F1",
|
||||
X"A1",X"F0",X"A0",X"F5",X"A5",X"F0",X"00",X"D0",X"00",X"27",X"80",X"A5",X"00",X"30",X"40",X"A3",
|
||||
X"00",X"23",X"80",X"A5",X"00",X"25",X"80",X"A6",X"00",X"11",X"00",X"A6",X"00",X"D0",X"00",X"13",
|
||||
X"00",X"A0",X"00",X"30",X"80",X"A3",X"00",X"17",X"00",X"A0",X"00",X"30",X"80",X"A7",X"00",X"D0",
|
||||
X"A5",X"F1",X"00",X"06",X"00",X"02",X"A2",X"F9",X"80",X"26",X"80",X"07",X"00",X"D0",X"A1",X"F1",
|
||||
X"00",X"06",X"00",X"06",X"C0",X"30",X"00",X"A6",X"00",X"26",X"80",X"07",X"00",X"D0",X"00",X"13",
|
||||
X"00",X"A3",X"00",X"17",X"00",X"A3",X"00",X"17",X"00",X"A7",X"00",X"13",X"00",X"A7",X"00",X"D0",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"53");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@ -1,150 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_VEC_ROM_1 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_VEC_ROM_1 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"44",X"C8",X"4C",X"C8",X"52",X"C8",X"56",X"C8",X"00",X"D0",X"5B",X"C8",X"62",X"C8",X"00",X"D0",
|
||||
X"68",X"C8",X"6F",X"C8",X"00",X"D0",X"7C",X"C8",X"82",X"C8",X"86",X"C8",X"4C",X"C8",X"00",X"D0",
|
||||
X"8D",X"C8",X"62",X"C8",X"00",X"D0",X"92",X"C8",X"98",X"C8",X"9D",X"C8",X"00",X"D0",X"5B",X"C8",
|
||||
X"A6",X"C8",X"D1",X"C8",X"AD",X"C8",X"00",X"D0",X"44",X"C8",X"86",X"C8",X"B2",X"C8",X"00",X"D0",
|
||||
X"6F",X"C8",X"AA",X"F8",X"4C",X"C8",X"AA",X"F8",X"C4",X"C8",X"00",X"D0",X"56",X"C8",X"4C",X"C8",
|
||||
X"7C",X"C8",X"56",X"C8",X"AA",X"FE",X"00",X"D0",X"BC",X"C8",X"82",X"C8",X"68",X"C8",X"00",X"D0",
|
||||
X"B2",X"C8",X"C4",X"C8",X"86",X"C8",X"00",X"60",X"00",X"A2",X"00",X"D0",X"C9",X"C8",X"CE",X"C8",
|
||||
X"00",X"D0",X"A6",X"C8",X"AA",X"F8",X"9D",X"C8",X"AA",X"F8",X"92",X"C8",X"00",X"D0",X"8D",X"C8",
|
||||
X"D1",X"C8",X"AD",X"C8",X"AA",X"FA",X"00",X"D0",X"AA",X"F8",X"00",X"56",X"80",X"A0",X"AA",X"F8",
|
||||
X"00",X"56",X"80",X"A0",X"A9",X"F8",X"00",X"D0",X"00",X"67",X"40",X"A0",X"00",X"67",X"C0",X"A0",
|
||||
X"A8",X"FE",X"00",X"D0",X"00",X"66",X"80",X"A0",X"AB",X"FE",X"00",X"D0",X"00",X"66",X"80",X"A0",
|
||||
X"A9",X"FE",X"AA",X"FE",X"00",X"D0",X"AA",X"F8",X"AA",X"FA",X"80",X"53",X"00",X"A2",X"80",X"52",
|
||||
X"00",X"A2",X"00",X"D0",X"AA",X"FA",X"A9",X"FA",X"AA",X"FA",X"A9",X"FA",X"AA",X"F9",X"00",X"D0",
|
||||
X"AA",X"FB",X"80",X"50",X"00",X"A2",X"80",X"51",X"00",X"A2",X"AA",X"F8",X"00",X"D0",X"80",X"54",
|
||||
X"00",X"A2",X"80",X"55",X"00",X"A2",X"00",X"56",X"80",X"A0",X"00",X"56",X"80",X"A1",X"00",X"56",
|
||||
X"80",X"A0",X"00",X"56",X"80",X"A1",X"00",X"D0",X"00",X"56",X"80",X"A0",X"00",X"56",X"80",X"A1",
|
||||
X"AA",X"F8",X"00",X"D0",X"00",X"62",X"C0",X"A0",X"AB",X"F2",X"00",X"D0",X"AB",X"F6",X"00",X"56",
|
||||
X"80",X"A1",X"00",X"66",X"80",X"A0",X"AB",X"FE",X"00",X"D0",X"AA",X"FE",X"00",X"60",X"00",X"A2",
|
||||
X"AA",X"FA",X"00",X"D0",X"80",X"62",X"80",X"A0",X"00",X"62",X"80",X"A0",X"AA",X"F9",X"00",X"D0",
|
||||
X"AA",X"FA",X"AA",X"FB",X"00",X"62",X"00",X"A1",X"00",X"D0",X"00",X"62",X"80",X"A0",X"AA",X"FA",
|
||||
X"A9",X"FA",X"00",X"52",X"80",X"A0",X"00",X"52",X"80",X"A1",X"00",X"D0",X"00",X"62",X"80",X"A0",
|
||||
X"00",X"63",X"80",X"A0",X"00",X"62",X"00",X"A0",X"00",X"D0",X"00",X"52",X"80",X"A0",X"00",X"52",
|
||||
X"80",X"A1",X"00",X"D0",X"00",X"56",X"80",X"A0",X"80",X"67",X"40",X"A1",X"00",X"D0",X"00",X"70",
|
||||
X"00",X"A2",X"00",X"70",X"00",X"A2",X"00",X"D0",X"00",X"63",X"80",X"A0",X"00",X"62",X"00",X"A1",
|
||||
X"00",X"62",X"80",X"A0",X"A9",X"F8",X"00",X"D0",X"00",X"56",X"80",X"A0",X"00",X"56",X"80",X"A1",
|
||||
X"00",X"D0",X"40",X"64",X"00",X"A2",X"C0",X"64",X"00",X"A2",X"00",X"D0",X"00",X"70",X"00",X"A2",
|
||||
X"00",X"D0",X"00",X"62",X"40",X"A0",X"80",X"62",X"C0",X"A0",X"AA",X"F9",X"00",X"D0",X"AA",X"FA",
|
||||
X"00",X"62",X"80",X"A0",X"00",X"52",X"80",X"A2",X"00",X"D0",X"00",X"C8",X"05",X"C8",X"08",X"C8",
|
||||
X"0B",X"C8",X"10",X"C8",X"13",X"C8",X"17",X"C8",X"1C",X"C8",X"20",X"C8",X"26",X"C8",X"B7",X"C8",
|
||||
X"2C",X"C8",X"30",X"C8",X"36",X"C8",X"39",X"C8",X"3F",X"C8",X"00",X"C8",X"05",X"C8",X"08",X"C8",
|
||||
X"0B",X"C8",X"80",X"03",X"00",X"00",X"80",X"01",X"00",X"00",X"90",X"02",X"00",X"00",X"40",X"02",
|
||||
X"00",X"00",X"E0",X"00",X"00",X"00",X"70",X"01",X"00",X"00",X"60",X"03",X"00",X"00",X"A0",X"05",
|
||||
X"00",X"00",X"40",X"04",X"00",X"00",X"80",X"02",X"00",X"00",X"40",X"00",X"00",X"00",X"40",X"00",
|
||||
X"00",X"00",X"C0",X"01",X"00",X"00",X"60",X"00",X"00",X"00",X"40",X"00",X"00",X"00",X"80",X"02",
|
||||
X"00",X"00",X"68",X"03",X"68",X"01",X"78",X"02",X"28",X"02",X"C8",X"00",X"58",X"01",X"48",X"03",
|
||||
X"88",X"05",X"28",X"04",X"68",X"02",X"28",X"00",X"28",X"00",X"A8",X"01",X"48",X"00",X"28",X"00",
|
||||
X"68",X"02",X"92",X"00",X"00",X"62",X"00",X"02",X"88",X"F8",X"40",X"83",X"40",X"04",X"78",X"F8",
|
||||
X"00",X"70",X"00",X"03",X"88",X"F8",X"80",X"77",X"80",X"04",X"98",X"F8",X"00",X"86",X"80",X"00",
|
||||
X"00",X"D0",X"40",X"82",X"C0",X"00",X"98",X"F8",X"80",X"76",X"80",X"00",X"78",X"F8",X"00",X"76",
|
||||
X"00",X"02",X"00",X"D0",X"08",X"FA",X"98",X"F8",X"00",X"83",X"C0",X"00",X"78",X"F8",X"00",X"77",
|
||||
X"80",X"01",X"88",X"F8",X"80",X"77",X"00",X"01",X"00",X"D0",X"00",X"63",X"00",X"01",X"78",X"F8",
|
||||
X"80",X"73",X"00",X"00",X"98",X"F8",X"80",X"75",X"80",X"02",X"88",X"F8",X"80",X"77",X"00",X"01",
|
||||
X"00",X"D0",X"00",X"66",X"00",X"03",X"98",X"F8",X"00",X"72",X"00",X"01",X"88",X"F8",X"40",X"82",
|
||||
X"C0",X"04",X"98",X"F8",X"00",X"72",X"80",X"02",X"88",X"F8",X"C0",X"87",X"40",X"00",X"78",X"F8",
|
||||
X"00",X"D0",X"80",X"70",X"00",X"02",X"78",X"F8",X"80",X"82",X"80",X"00",X"98",X"F8",X"C0",X"86",
|
||||
X"80",X"00",X"00",X"D0",X"40",X"82",X"40",X"00",X"98",X"F8",X"80",X"73",X"00",X"03",X"88",X"F8",
|
||||
X"C0",X"87",X"80",X"04",X"78",X"F8",X"00",X"65",X"00",X"03",X"00",X"D0",X"00",X"72",X"00",X"01",
|
||||
X"88",X"F8",X"00",X"72",X"00",X"02",X"98",X"F8",X"00",X"86",X"80",X"00",X"00",X"D0",X"22",X"C9",
|
||||
X"3A",X"C9",X"51",X"C9",X"6A",X"C9",X"22",X"C9",X"3A",X"C9",X"51",X"C9",X"6A",X"C9",X"31",X"C9",
|
||||
X"45",X"C9",X"61",X"C9",X"76",X"C9",X"31",X"C9",X"45",X"C9",X"61",X"C9",X"76",X"C9",X"00",X"60",
|
||||
X"00",X"02",X"88",X"F8",X"40",X"87",X"00",X"01",X"68",X"F8",X"40",X"83",X"80",X"00",X"00",X"D0",
|
||||
X"00",X"92",X"00",X"00",X"8F",X"C9",X"00",X"96",X"00",X"00",X"00",X"D0",X"00",X"86",X"00",X"00",
|
||||
X"58",X"F8",X"80",X"82",X"C0",X"01",X"88",X"F8",X"00",X"73",X"80",X"00",X"00",X"D0",X"00",X"71",
|
||||
X"00",X"02",X"78",X"F8",X"E0",X"96",X"40",X"00",X"68",X"F8",X"40",X"82",X"80",X"00",X"88",X"F8",
|
||||
X"00",X"D0",X"40",X"92",X"80",X"00",X"58",X"F8",X"E0",X"97",X"60",X"00",X"88",X"F8",X"20",X"92",
|
||||
X"20",X"00",X"68",X"F8",X"00",X"D0",X"80",X"92",X"A0",X"00",X"78",X"F8",X"80",X"86",X"C0",X"00",
|
||||
X"88",X"F8",X"00",X"D0",X"40",X"83",X"40",X"01",X"58",X"F8",X"00",X"73",X"80",X"01",X"88",X"F8",
|
||||
X"00",X"D0",X"00",X"76",X"00",X"02",X"78",X"F8",X"C0",X"86",X"C0",X"00",X"88",X"F8",X"00",X"72",
|
||||
X"80",X"00",X"68",X"F8",X"00",X"D0",X"20",X"97",X"00",X"00",X"BB",X"C9",X"00",X"D0",X"00",X"73",
|
||||
X"00",X"00",X"A7",X"C9",X"00",X"D0",X"00",X"86",X"00",X"00",X"B1",X"C9",X"00",X"72",X"00",X"00",
|
||||
X"00",X"D0",X"80",X"77",X"00",X"00",X"BB",X"C9",X"00",X"D0",X"00",X"67",X"00",X"00",X"C9",X"C9",
|
||||
X"00",X"D0",X"80",X"83",X"80",X"01",X"68",X"F8",X"00",X"60",X"00",X"02",X"00",X"D0",X"E0",X"96",
|
||||
X"00",X"00",X"C2",X"C9",X"00",X"D0",X"00",X"77",X"00",X"00",X"BB",X"C9",X"00",X"D0",X"8F",X"C9",
|
||||
X"98",X"C9",X"9E",X"C9",X"A7",X"C9",X"B1",X"C9",X"BB",X"C9",X"C2",X"C9",X"C9",X"C9",X"D3",X"C9",
|
||||
X"D7",X"C9",X"DB",X"C9",X"E1",X"C9",X"E5",X"C9",X"E9",X"C9",X"EF",X"C9",X"F3",X"C9",X"8F",X"C9",
|
||||
X"98",X"C9",X"9E",X"C9",X"A7",X"C9",X"E0",X"04",X"00",X"00",X"E0",X"04",X"00",X"00",X"E0",X"04",
|
||||
X"00",X"00",X"E0",X"05",X"00",X"00",X"60",X"04",X"00",X"00",X"E0",X"04",X"00",X"00",X"20",X"06",
|
||||
X"00",X"00",X"80",X"08",X"00",X"00",X"20",X"07",X"00",X"00",X"40",X"05",X"00",X"00",X"80",X"04",
|
||||
X"00",X"00",X"80",X"04",X"00",X"00",X"E0",X"04",X"00",X"00",X"20",X"03",X"00",X"00",X"E0",X"04",
|
||||
X"00",X"00",X"60",X"04",X"00",X"00",X"2C",X"CA",X"EC",X"A2",X"64",X"00",X"00",X"70",X"00",X"00",
|
||||
X"62",X"CB",X"F4",X"CA",X"44",X"CB",X"5A",X"CB",X"02",X"CB",X"93",X"CB",X"93",X"CB",X"E0",X"64",
|
||||
X"A0",X"06",X"69",X"CB",X"21",X"CB",X"39",X"CB",X"02",X"CB",X"93",X"CB",X"93",X"CB",X"93",X"CB",
|
||||
X"E0",X"64",X"A0",X"06",X"0A",X"CB",X"6F",X"CB",X"02",X"CB",X"34",X"CB",X"93",X"CB",X"93",X"CB",
|
||||
X"93",X"CB",X"70",X"80",X"40",X"03",X"DF",X"CA",X"34",X"CB",X"69",X"CB",X"21",X"CB",X"69",X"CB",
|
||||
X"6F",X"CB",X"FA",X"CA",X"02",X"CB",X"93",X"CB",X"93",X"CB",X"93",X"CB",X"93",X"CB",X"93",X"CB",
|
||||
X"93",X"CB",X"93",X"CB",X"93",X"CB",X"93",X"CB",X"93",X"CB",X"70",X"74",X"60",X"07",X"1A",X"CB",
|
||||
X"44",X"CB",X"5A",X"CB",X"21",X"CB",X"8D",X"CB",X"44",X"CB",X"3F",X"CB",X"69",X"CB",X"DF",X"CA",
|
||||
X"34",X"CB",X"93",X"CB",X"62",X"CB",X"4A",X"CB",X"02",X"CB",X"02",X"CB",X"FA",X"CA",X"93",X"CB",
|
||||
X"93",X"CB",X"70",X"74",X"60",X"07",X"75",X"CB",X"02",X"CB",X"5A",X"CB",X"69",X"CB",X"21",X"CB",
|
||||
X"F4",X"CA",X"DF",X"CA",X"34",X"CB",X"93",X"CB",X"62",X"CB",X"4A",X"CB",X"02",X"CB",X"02",X"CB",
|
||||
X"FA",X"CA",X"93",X"CB",X"93",X"CB",X"93",X"CB",X"93",X"CB",X"00",X"D0",X"40",X"A2",X"B2",X"01",
|
||||
X"60",X"A2",X"BE",X"01",X"60",X"A2",X"88",X"01",X"10",X"A2",X"76",X"01",X"80",X"A2",X"4C",X"01",
|
||||
X"20",X"A2",X"A6",X"01",X"D0",X"A1",X"BE",X"01",X"10",X"A2",X"C4",X"01",X"E0",X"A1",X"A6",X"01",
|
||||
X"20",X"A2",X"10",X"01",X"00",X"A2",X"70",X"01",X"00",X"A2",X"4C",X"01",X"EC",X"A2",X"C8",X"00",
|
||||
X"00",X"70",X"00",X"00",X"C0",X"55",X"00",X"07",X"D9",X"CA",X"C0",X"55",X"80",X"07",X"38",X"90",
|
||||
X"3C",X"02",X"E0",X"64",X"40",X"06",X"E0",X"64",X"40",X"06",X"B3",X"CA",X"BB",X"CA",X"08",X"F8",
|
||||
X"C3",X"CA",X"CC",X"CA",X"08",X"F8",X"80",X"42",X"80",X"01",X"CB",X"F0",X"C7",X"F3",X"80",X"36",
|
||||
X"00",X"C0",X"C3",X"F3",X"00",X"D0",X"40",X"51",X"40",X"02",X"CF",X"F0",X"C3",X"F3",X"80",X"36",
|
||||
X"00",X"C0",X"C7",X"F3",X"00",X"D0",X"40",X"46",X"00",X"03",X"C8",X"F3",X"C7",X"F7",X"C3",X"F8",
|
||||
X"C7",X"F3",X"C0",X"44",X"00",X"07",X"00",X"D0",X"C0",X"40",X"00",X"03",X"C8",X"F7",X"C7",X"F3",
|
||||
X"C3",X"F8",X"C7",X"F7",X"40",X"42",X"00",X"07",X"00",X"D0",X"C2",X"A2",X"78",X"03",X"00",X"70",
|
||||
X"00",X"00",X"01",X"F2",X"70",X"F0",X"00",X"F2",X"70",X"F0",X"01",X"FE",X"00",X"D0",X"C0",X"FA",
|
||||
X"C2",X"F2",X"C2",X"F6",X"C0",X"FE",X"06",X"F9",X"C2",X"F8",X"02",X"F6",X"00",X"D0",X"C0",X"FB",
|
||||
X"C3",X"F0",X"C1",X"F5",X"C0",X"F5",X"C5",X"F5",X"C7",X"F0",X"03",X"F0",X"C1",X"F5",X"C0",X"F5",
|
||||
X"C5",X"F5",X"C7",X"F0",X"03",X"F8",X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"06",X"FF",X"C2",X"F8",
|
||||
X"02",X"F0",X"00",X"D0",X"C0",X"FB",X"C2",X"F0",X"C2",X"F6",X"C0",X"F6",X"C6",X"F6",X"C6",X"F0",
|
||||
X"03",X"F8",X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"05",X"F7",X"C7",X"F0",X"00",X"F7",X"C2",X"F8",
|
||||
X"02",X"F0",X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"05",X"F7",X"C7",X"F0",X"00",X"F7",X"03",X"F8",
|
||||
X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"C0",X"F6",X"06",X"F6",X"C2",X"F0",X"C0",X"F6",X"C6",X"F8",
|
||||
X"03",X"F8",X"00",X"D0",X"C0",X"FB",X"00",X"F7",X"C2",X"F8",X"00",X"F3",X"C0",X"FF",X"02",X"F0",
|
||||
X"00",X"D0",X"C2",X"F8",X"06",X"F0",X"C0",X"FB",X"02",X"F0",X"C6",X"F8",X"03",X"FF",X"00",X"D0",
|
||||
X"00",X"F2",X"C2",X"F6",X"C2",X"F0",X"C0",X"FB",X"01",X"FF",X"00",X"D0",X"C0",X"FB",X"03",X"F0",
|
||||
X"C7",X"F7",X"C3",X"F7",X"03",X"F0",X"00",X"D0",X"00",X"FB",X"C0",X"FF",X"C2",X"F8",X"02",X"F0",
|
||||
X"00",X"D0",X"C0",X"FB",X"C2",X"F6",X"C2",X"F2",X"C0",X"FF",X"02",X"F0",X"00",X"D0",X"C0",X"FB",
|
||||
X"C2",X"FF",X"C0",X"FB",X"01",X"FF",X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"C0",X"FF",X"C6",X"F8",
|
||||
X"03",X"F8",X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"C0",X"F7",X"C6",X"F8",X"03",X"F7",X"03",X"F0",
|
||||
X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"C0",X"FE",X"C6",X"F6",X"C6",X"F0",X"02",X"F2",X"C2",X"F6",
|
||||
X"02",X"F0",X"00",X"D0",X"C0",X"FB",X"C2",X"F8",X"C0",X"F7",X"C6",X"F8",X"01",X"F0",X"C3",X"F7",
|
||||
X"02",X"F0",X"00",X"D0",X"C2",X"F8",X"C0",X"F3",X"C6",X"F8",X"C0",X"F3",X"C2",X"F8",X"01",X"FF",
|
||||
X"00",X"D0",X"02",X"F0",X"C0",X"FB",X"06",X"F0",X"C2",X"F8",X"01",X"FF",X"00",X"D0",X"00",X"FB",
|
||||
X"C0",X"FF",X"C2",X"F8",X"C0",X"FB",X"01",X"FF",X"00",X"D0",X"00",X"FB",X"C1",X"FF",X"C1",X"FB",
|
||||
X"01",X"FF",X"00",X"D0",X"00",X"FB",X"C0",X"FF",X"C2",X"F2",X"C2",X"F6",X"C0",X"FB",X"01",X"FF",
|
||||
X"00",X"D0",X"C2",X"FB",X"06",X"F8",X"C2",X"FF",X"02",X"F0",X"00",X"D0",X"02",X"F0",X"C0",X"FA",
|
||||
X"C6",X"F2",X"02",X"F8",X"C6",X"F6",X"02",X"FE",X"00",X"D0",X"00",X"FB",X"C2",X"F8",X"C6",X"FF",
|
||||
X"C2",X"F8",X"02",X"F0",X"00",X"D0",X"03",X"F8",X"00",X"D0",X"02",X"F0",X"C0",X"FB",X"02",X"FF",
|
||||
X"00",X"D0",X"00",X"FB",X"C2",X"F8",X"C0",X"F7",X"C6",X"F8",X"C0",X"F7",X"C2",X"F8",X"02",X"F0",
|
||||
X"00",X"D0",X"C2",X"F8",X"C0",X"FB",X"C6",X"F8",X"00",X"F7",X"C2",X"F8",X"02",X"F7",X"00",X"D0",
|
||||
X"00",X"FB",X"C0",X"F7",X"C2",X"F8",X"00",X"F3",X"C0",X"FF",X"02",X"F0",X"00",X"D0",X"C2",X"F8",
|
||||
X"C0",X"F3",X"C6",X"F8",X"C0",X"F3",X"C2",X"F8",X"01",X"FF",X"00",X"D0",X"00",X"F3",X"C2",X"F8",
|
||||
X"C0",X"F7",X"C6",X"F8",X"C0",X"FB",X"03",X"FF",X"00",X"D0",X"00",X"FB",X"C2",X"F8",X"C0",X"FF",
|
||||
X"02",X"F0",X"00",X"D0",X"C2",X"F8",X"C0",X"FB",X"C6",X"F8",X"C0",X"FF",X"00",X"F3",X"C2",X"F8",
|
||||
X"02",X"F7",X"00",X"D0",X"02",X"F8",X"C0",X"FB",X"C6",X"F8",X"C0",X"F7",X"C2",X"F8",X"02",X"F7",
|
||||
X"00",X"D0",X"93",X"CB",X"44",X"CB",X"95",X"CB",X"99",X"CB",X"A1",X"CB",X"A8",X"CB",X"AF",X"CB",
|
||||
X"B6",X"CB",X"BD",X"CB",X"C2",X"CB",X"CA",X"CB",X"DF",X"CA",X"E7",X"CA",X"F4",X"CA",X"FA",X"CA",
|
||||
X"02",X"CB",X"0A",X"CB",X"11",X"CB",X"1A",X"CB",X"21",X"CB",X"28",X"CB",X"2E",X"CB",X"34",X"CB",
|
||||
X"39",X"CB",X"3F",X"CB",X"44",X"CB",X"4A",X"CB",X"51",X"CB",X"5A",X"CB",X"62",X"CB",X"69",X"CB",
|
||||
X"6F",X"CB",X"75",X"CB",X"7A",X"CB",X"81",X"CB",X"86",X"CB",X"8D",X"CB",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"37");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@ -1,150 +0,0 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity LLANDER_VEC_ROM_2 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of LLANDER_VEC_ROM_2 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"00",X"30",X"60",X"00",X"94",X"58",X"C6",X"58",X"FA",X"58",X"2E",X"59",X"48",X"59",X"79",X"59",
|
||||
X"9C",X"59",X"10",X"5A",X"36",X"5A",X"86",X"5A",X"D2",X"5A",X"0C",X"5B",X"4E",X"5B",X"82",X"5B",
|
||||
X"EA",X"5B",X"36",X"5C",X"8D",X"5C",X"A6",X"5C",X"EC",X"5C",X"6A",X"5D",X"AA",X"5D",X"ED",X"5D",
|
||||
X"02",X"5E",X"23",X"5E",X"A5",X"58",X"D7",X"58",X"0B",X"59",X"35",X"59",X"5D",X"59",X"82",X"59",
|
||||
X"C5",X"59",X"1D",X"5A",X"55",X"5A",X"9C",X"5A",X"E4",X"5A",X"21",X"5B",X"5F",X"5B",X"A3",X"5B",
|
||||
X"06",X"5C",X"47",X"5C",X"AD",X"5C",X"C5",X"5C",X"18",X"5D",X"7C",X"5D",X"C4",X"5D",X"F4",X"5D",
|
||||
X"0E",X"5E",X"38",X"5E",X"B1",X"58",X"E7",X"58",X"1A",X"59",X"3D",X"59",X"6B",X"59",X"8B",X"59",
|
||||
X"F1",X"59",X"2B",X"5A",X"70",X"5A",X"B1",X"5A",X"FA",X"5A",X"39",X"5B",X"71",X"5B",X"C4",X"5B",
|
||||
X"22",X"5C",X"6C",X"5C",X"CE",X"5C",X"E3",X"5C",X"3C",X"5D",X"83",X"5D",X"DA",X"5D",X"FB",X"5D",
|
||||
X"1A",X"5E",X"51",X"5E",X"16",X"34",X"34",X"3E",X"46",X"1E",X"38",X"00",X"3A",X"3E",X"38",X"00",
|
||||
X"3A",X"3C",X"16",X"38",X"BC",X"34",X"3E",X"2C",X"3A",X"16",X"38",X"00",X"3A",X"3C",X"16",X"38",
|
||||
X"BC",X"3A",X"3C",X"16",X"38",X"3C",X"2A",X"30",X"32",X"1E",X"34",X"20",X"1E",X"00",X"1C",X"38",
|
||||
X"3E",X"1E",X"1A",X"2A",X"1E",X"B0",X"1A",X"16",X"38",X"18",X"3E",X"38",X"16",X"30",X"3C",X"00",
|
||||
X"1C",X"26",X"2E",X"26",X"30",X"3E",X"9E",X"34",X"32",X"1A",X"32",X"00",X"1A",X"32",X"2E",X"18",
|
||||
X"3E",X"3A",X"3C",X"26",X"18",X"2C",X"9E",X"3C",X"38",X"1E",X"26",X"18",X"3A",X"3C",X"32",X"20",
|
||||
X"20",X"00",X"22",X"1E",X"24",X"3C",X"00",X"16",X"3E",X"BA",X"34",X"2C",X"3E",X"3A",X"00",X"1C",
|
||||
X"1E",X"00",X"1A",X"16",X"38",X"18",X"3E",X"38",X"16",X"30",X"BC",X"3A",X"26",X"30",X"00",X"1A",
|
||||
X"32",X"2E",X"18",X"3E",X"3A",X"3C",X"26",X"18",X"2C",X"9E",X"3C",X"38",X"1E",X"26",X"18",X"3A",
|
||||
X"3C",X"32",X"20",X"20",X"3C",X"16",X"30",X"2A",X"3A",X"00",X"2C",X"1E",X"1E",X"B8",X"34",X"1E",
|
||||
X"38",X"1C",X"3E",X"1E",X"BA",X"34",X"1E",X"38",X"1C",X"26",X"1C",X"16",X"BA",X"3C",X"1E",X"26",
|
||||
X"2C",X"40",X"1E",X"38",X"2C",X"3E",X"3A",X"BC",X"26",X"30",X"3C",X"38",X"32",X"1C",X"3E",X"26",
|
||||
X"38",X"1E",X"00",X"2C",X"1E",X"3A",X"00",X"34",X"26",X"1E",X"1A",X"1E",X"BA",X"26",X"30",X"3A",
|
||||
X"1E",X"38",X"3C",X"1E",X"00",X"20",X"26",X"1A",X"24",X"16",X"BA",X"22",X"1E",X"2C",X"1C",X"00",
|
||||
X"16",X"3E",X"3A",X"42",X"1E",X"38",X"20",X"1E",X"B0",X"34",X"16",X"38",X"00",X"34",X"26",X"1E",
|
||||
X"1A",X"9E",X"34",X"32",X"38",X"00",X"20",X"26",X"1A",X"24",X"96",X"48",X"3E",X"2A",X"16",X"3E",
|
||||
X"20",X"00",X"34",X"38",X"32",X"00",X"2E",X"3E",X"1E",X"30",X"48",X"9E",X"38",X"1E",X"3A",X"1E",
|
||||
X"38",X"40",X"32",X"26",X"38",X"00",X"16",X"3E",X"44",X"26",X"2C",X"26",X"16",X"26",X"38",X"1E",
|
||||
X"00",X"1C",X"1E",X"00",X"1A",X"16",X"38",X"18",X"3E",X"38",X"16",X"30",X"3C",X"00",X"1C",X"1E",
|
||||
X"3C",X"38",X"3E",X"26",X"BC",X"3C",X"16",X"30",X"36",X"3E",X"1E",X"3A",X"00",X"16",X"3E",X"44",
|
||||
X"26",X"2C",X"26",X"16",X"38",X"1E",X"3A",X"00",X"1C",X"1E",X"00",X"1A",X"32",X"2E",X"18",X"3E",
|
||||
X"3A",X"3C",X"26",X"18",X"2C",X"1E",X"00",X"1C",X"1E",X"3A",X"3C",X"38",X"3E",X"26",X"1C",X"32",
|
||||
X"BA",X"48",X"3E",X"3A",X"16",X"3C",X"48",X"3C",X"38",X"1E",X"26",X"18",X"3A",X"3C",X"32",X"20",
|
||||
X"20",X"3C",X"16",X"30",X"2A",X"3A",X"00",X"48",X"1E",X"38",X"3A",X"3C",X"32",X"1E",X"38",X"BC",
|
||||
X"20",X"1E",X"2C",X"26",X"1A",X"26",X"3C",X"16",X"3C",X"26",X"32",X"30",X"BA",X"20",X"1E",X"2C",
|
||||
X"26",X"1A",X"26",X"3C",X"16",X"1A",X"26",X"32",X"30",X"1E",X"BA",X"22",X"38",X"16",X"3C",X"3E",
|
||||
X"2C",X"16",X"3C",X"26",X"32",X"B0",X"40",X"32",X"3E",X"3A",X"00",X"16",X"40",X"1E",X"48",X"00",
|
||||
X"16",X"3C",X"3C",X"1E",X"38",X"38",X"26",X"00",X"1C",X"26",X"20",X"20",X"26",X"1A",X"26",X"2C",
|
||||
X"1E",X"2E",X"1E",X"30",X"BC",X"3E",X"3A",X"3C",X"1E",X"1C",X"00",X"16",X"2C",X"3E",X"30",X"26",
|
||||
X"48",X"32",X"00",X"40",X"26",X"32",X"2C",X"1E",X"30",X"3C",X"16",X"2E",X"1E",X"30",X"3C",X"9E",
|
||||
X"3A",X"26",X"1E",X"00",X"3A",X"26",X"30",X"1C",X"00",X"24",X"16",X"38",X"3C",X"00",X"22",X"1E",
|
||||
X"2C",X"16",X"30",X"1C",X"1E",X"BC",X"3A",X"34",X"2C",X"1E",X"30",X"1C",X"26",X"1C",X"1E",X"00",
|
||||
X"16",X"3C",X"3C",X"1E",X"38",X"38",X"26",X"3A",X"3A",X"16",X"22",X"9E",X"20",X"3E",X"1E",X"00",
|
||||
X"3E",X"30",X"00",X"22",X"38",X"16",X"30",X"00",X"16",X"2C",X"3E",X"30",X"26",X"48",X"16",X"28",
|
||||
X"9E",X"1C",X"26",X"1E",X"3A",X"00",X"42",X"16",X"38",X"00",X"1E",X"26",X"30",X"1E",X"00",X"22",
|
||||
X"38",X"32",X"3A",X"3A",X"16",X"38",X"3C",X"26",X"22",X"1E",X"00",X"2C",X"16",X"30",X"1C",X"3E",
|
||||
X"30",X"A2",X"2C",X"1E",X"00",X"1E",X"16",X"22",X"2C",X"1E",X"00",X"16",X"00",X"16",X"3C",X"3C",
|
||||
X"1E",X"38",X"38",X"A6",X"1E",X"2C",X"00",X"16",X"22",X"3E",X"26",X"2C",X"16",X"00",X"24",X"16",
|
||||
X"00",X"16",X"2C",X"3E",X"30",X"26",X"48",X"16",X"1C",X"B2",X"1E",X"16",X"22",X"2C",X"1E",X"00",
|
||||
X"26",X"3A",X"3C",X"00",X"22",X"1E",X"2C",X"16",X"30",X"1C",X"1E",X"BC",X"2C",X"1E",X"00",X"1A",
|
||||
X"32",X"2C",X"3E",X"2E",X"18",X"26",X"16",X"00",X"16",X"00",X"16",X"3C",X"3C",X"1E",X"38",X"38",
|
||||
X"A6",X"1E",X"2C",X"00",X"1A",X"32",X"2C",X"3E",X"2E",X"18",X"26",X"16",X"00",X"24",X"16",X"00",
|
||||
X"16",X"2C",X"3E",X"30",X"26",X"48",X"16",X"1C",X"B2",X"1A",X"32",X"2C",X"3E",X"2E",X"18",X"26",
|
||||
X"16",X"00",X"26",X"3A",X"3C",X"00",X"22",X"1E",X"2C",X"16",X"30",X"1C",X"1E",X"BC",X"40",X"32",
|
||||
X"3E",X"3A",X"00",X"16",X"40",X"1E",X"48",X"00",X"16",X"3C",X"3C",X"1E",X"38",X"38",X"A6",X"3E",
|
||||
X"3A",X"3C",X"1E",X"1C",X"00",X"24",X"16",X"00",X"16",X"2C",X"3E",X"30",X"26",X"48",X"16",X"1C",
|
||||
X"B2",X"3A",X"26",X"1E",X"00",X"3A",X"26",X"30",X"1C",X"00",X"22",X"1E",X"2C",X"16",X"30",X"1C",
|
||||
X"1E",X"BC",X"2C",X"1E",X"00",X"3A",X"3E",X"34",X"34",X"32",X"38",X"3C",X"00",X"1C",X"1E",X"00",
|
||||
X"3A",X"16",X"3E",X"40",X"1E",X"3C",X"16",X"22",X"1E",X"00",X"1E",X"3A",X"3C",X"00",X"34",X"16",
|
||||
X"38",X"3C",X"A6",X"1E",X"36",X"3E",X"26",X"34",X"32",X"00",X"1C",X"1E",X"00",X"3A",X"3E",X"34",
|
||||
X"1E",X"38",X"40",X"26",X"40",X"1E",X"30",X"1A",X"26",X"16",X"00",X"1C",X"1E",X"3A",X"3C",X"38",
|
||||
X"3E",X"26",X"1C",X"B2",X"2C",X"1E",X"18",X"1E",X"30",X"3A",X"38",X"1E",X"3C",X"3C",X"3E",X"30",
|
||||
X"22",X"3A",X"3A",X"46",X"3A",X"3C",X"1E",X"2E",X"1E",X"00",X"3A",X"26",X"30",X"1C",X"00",X"16",
|
||||
X"3E",X"3A",X"22",X"1E",X"20",X"16",X"2C",X"2C",X"1E",X"B0",X"40",X"32",X"3C",X"38",X"1E",X"00",
|
||||
X"40",X"32",X"46",X"16",X"22",X"1E",X"00",X"1E",X"3A",X"3C",X"00",X"3A",X"16",X"30",X"3A",X"00",
|
||||
X"38",X"1E",X"3C",X"32",X"3E",X"B8",X"3A",X"3E",X"00",X"40",X"26",X"16",X"28",X"1E",X"00",X"1E",
|
||||
X"3A",X"00",X"1C",X"1E",X"00",X"26",X"1C",X"16",X"00",X"3A",X"32",X"2C",X"16",X"2E",X"1E",X"30",
|
||||
X"3C",X"9E",X"38",X"1E",X"26",X"3A",X"1E",X"00",X"32",X"24",X"30",X"1E",X"00",X"38",X"3E",X"1E",
|
||||
X"1A",X"2A",X"2A",X"1E",X"24",X"B8",X"34",X"1E",X"38",X"1C",X"3E",X"00",X"3A",X"16",X"30",X"3A",
|
||||
X"00",X"1E",X"3A",X"34",X"32",X"26",X"B8",X"2C",X"16",X"2E",X"1E",X"30",X"3C",X"16",X"18",X"2C",
|
||||
X"1E",X"2E",X"1E",X"30",X"3C",X"1E",X"00",X"3E",X"3A",X"3C",X"1E",X"1C",X"00",X"30",X"32",X"00",
|
||||
X"34",X"3E",X"1E",X"1C",X"1E",X"00",X"40",X"32",X"2C",X"40",X"1E",X"B8",X"2A",X"1E",X"26",X"30",
|
||||
X"00",X"38",X"3E",X"1E",X"1A",X"2A",X"3A",X"3C",X"16",X"38",X"3C",X"00",X"48",X"3E",X"38",X"00",
|
||||
X"1E",X"38",X"1C",X"1E",X"00",X"2E",X"32",X"1E",X"22",X"2C",X"26",X"1A",X"A4",X"3A",X"46",X"3A",
|
||||
X"3C",X"1E",X"2E",X"1E",X"00",X"1C",X"1E",X"00",X"1A",X"32",X"2E",X"2E",X"3E",X"30",X"26",X"1A",
|
||||
X"16",X"3C",X"26",X"32",X"30",X"00",X"1C",X"1E",X"3C",X"38",X"3E",X"26",X"BC",X"3A",X"26",X"3A",
|
||||
X"3C",X"1E",X"2E",X"16",X"00",X"1C",X"1E",X"00",X"1A",X"32",X"2E",X"3E",X"30",X"26",X"1A",X"16",
|
||||
X"1A",X"26",X"32",X"30",X"00",X"1C",X"1E",X"3A",X"3C",X"38",X"3E",X"26",X"1C",X"B2",X"2A",X"32",
|
||||
X"2E",X"2E",X"3E",X"30",X"26",X"2A",X"16",X"3C",X"26",X"32",X"30",X"3A",X"3A",X"46",X"3A",X"3C",
|
||||
X"1E",X"2E",X"00",X"48",X"1E",X"38",X"3A",X"3C",X"32",X"1E",X"38",X"BC",X"40",X"32",X"3E",X"3A",
|
||||
X"00",X"16",X"40",X"1E",X"48",X"00",X"1A",X"38",X"1E",X"1E",X"00",X"3E",X"30",X"00",X"1A",X"38",
|
||||
X"16",X"3C",X"1E",X"38",X"1E",X"00",X"1C",X"1E",X"00",X"1C",X"1E",X"3E",X"44",X"00",X"2A",X"26",
|
||||
X"2C",X"32",X"2E",X"1E",X"3C",X"38",X"1E",X"BA",X"3E",X"3A",X"3C",X"1E",X"1C",X"00",X"1A",X"38",
|
||||
X"1E",X"32",X"00",X"3E",X"30",X"00",X"1A",X"38",X"16",X"3C",X"1E",X"38",X"00",X"1C",X"1E",X"00",
|
||||
X"06",X"00",X"2A",X"26",X"2C",X"32",X"2E",X"1E",X"3C",X"38",X"32",X"BA",X"3A",X"26",X"1E",X"00",
|
||||
X"24",X"16",X"18",X"1E",X"30",X"00",X"1E",X"26",X"30",X"1E",X"30",X"00",X"06",X"00",X"2A",X"26",
|
||||
X"2C",X"32",X"2E",X"1E",X"3C",X"1E",X"38",X"00",X"2A",X"38",X"16",X"3C",X"1E",X"38",X"00",X"16",
|
||||
X"3E",X"20",X"22",X"1E",X"38",X"26",X"3A",X"3A",X"1E",X"B0",X"40",X"32",X"3E",X"3A",X"00",X"16",
|
||||
X"40",X"1E",X"48",X"00",X"3E",X"30",X"00",X"1A",X"38",X"16",X"3A",X"A4",X"1C",X"1E",X"2E",X"32",
|
||||
X"2C",X"1E",X"B8",X"0C",X"02",X"00",X"02",X"02",X"02",X"00",X"02",X"02",X"02",X"00",X"2E",X"16",
|
||||
X"38",X"2A",X"00",X"3A",X"26",X"30",X"1C",X"00",X"26",X"30",X"00",X"1C",X"26",X"1E",X"00",X"2C",
|
||||
X"3E",X"20",X"3C",X"00",X"22",X"1E",X"28",X"16",X"22",X"BC",X"26",X"2C",X"00",X"30",X"1E",X"46",
|
||||
X"00",X"16",X"00",X"34",X"16",X"3A",X"00",X"1C",X"1E",X"00",X"3A",X"3E",X"38",X"40",X"26",X"40",
|
||||
X"16",X"30",X"3C",X"BA",X"30",X"32",X"00",X"24",X"3E",X"18",X"32",X"00",X"3A",X"32",X"18",X"38",
|
||||
X"1E",X"40",X"26",X"40",X"26",X"1E",X"30",X"3C",X"1E",X"BA",X"2A",X"1E",X"26",X"30",X"1E",X"00",
|
||||
X"3E",X"1E",X"18",X"1E",X"38",X"2C",X"1E",X"18",X"1E",X"30",X"1C",X"1E",X"B0",X"00",X"34",X"32",
|
||||
X"26",X"30",X"3C",X"BA",X"00",X"34",X"3E",X"30",X"3C",X"32",X"BA",X"00",X"34",X"3E",X"30",X"2A",
|
||||
X"3C",X"9E",X"1A",X"24",X"32",X"26",X"44",X"00",X"1C",X"3E",X"00",X"28",X"1E",X"BE",X"1E",X"2C",
|
||||
X"1E",X"22",X"26",X"38",X"00",X"28",X"3E",X"1E",X"22",X"B2",X"3A",X"34",X"26",X"1E",X"2C",X"42",
|
||||
X"16",X"24",X"AC",X"00",X"3E",X"30",X"26",X"3C",X"1E",X"3A",X"00",X"1C",X"1E",X"00",X"1A",X"16",
|
||||
X"38",X"18",X"3E",X"38",X"16",X"30",X"3C",X"80",X"00",X"3E",X"30",X"26",X"1C",X"16",X"1C",X"1E",
|
||||
X"3A",X"00",X"1C",X"1E",X"00",X"1A",X"32",X"2E",X"18",X"3E",X"3A",X"3C",X"26",X"18",X"2C",X"1E",
|
||||
X"80",X"00",X"3C",X"38",X"1E",X"26",X"18",X"3A",X"3C",X"32",X"20",X"20",X"80",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"6F",X"5E",X"D5",X"5E",X"33",X"5F",X"EC",
|
||||
X"A2",X"28",X"00",X"00",X"70",X"00",X"00",X"3A",X"1A",X"32",X"38",X"9E",X"C0",X"55",X"C0",X"07",
|
||||
X"1C",X"3E",X"38",X"1E",X"1E",X"00",X"1C",X"3E",X"00",X"28",X"1E",X"BE",X"70",X"74",X"40",X"06",
|
||||
X"1A",X"32",X"2E",X"18",X"3E",X"3A",X"3C",X"26",X"18",X"2C",X"9E",X"70",X"80",X"40",X"03",X"16",
|
||||
X"2C",X"3C",X"26",X"3C",X"3E",X"1C",X"9E",X"E0",X"64",X"00",X"07",X"40",X"26",X"3C",X"1E",X"3A",
|
||||
X"3A",X"1E",X"00",X"24",X"32",X"38",X"26",X"48",X"32",X"30",X"3C",X"16",X"2C",X"9E",X"70",X"74",
|
||||
X"90",X"07",X"40",X"26",X"3C",X"1E",X"3A",X"3A",X"1E",X"00",X"40",X"1E",X"38",X"3C",X"26",X"1A",
|
||||
X"16",X"2C",X"9E",X"00",X"D0",X"EC",X"A2",X"64",X"00",X"00",X"70",X"00",X"00",X"34",X"3E",X"30",
|
||||
X"3C",X"16",X"28",X"9E",X"E0",X"64",X"A0",X"06",X"3C",X"26",X"1E",X"2E",X"34",X"B2",X"E0",X"64",
|
||||
X"40",X"06",X"34",X"1E",X"3C",X"38",X"32",X"AC",X"70",X"80",X"10",X"03",X"16",X"2C",X"3C",X"26",
|
||||
X"3C",X"3E",X"9C",X"E0",X"64",X"A0",X"06",X"40",X"1E",X"2C",X"32",X"1A",X"26",X"1C",X"16",X"1C",
|
||||
X"00",X"24",X"32",X"38",X"26",X"48",X"32",X"30",X"3C",X"16",X"AC",X"70",X"74",X"C0",X"07",X"40",
|
||||
X"1E",X"2C",X"32",X"1A",X"26",X"1C",X"16",X"1C",X"00",X"40",X"1E",X"38",X"3C",X"26",X"1A",X"16",
|
||||
X"AC",X"00",X"D0",X"EC",X"A2",X"4C",X"00",X"00",X"70",X"00",X"00",X"34",X"3E",X"30",X"2A",X"3C",
|
||||
X"48",X"16",X"24",X"AC",X"E0",X"64",X"60",X"07",X"38",X"1E",X"3A",X"3C",X"48",X"1E",X"26",X"BC",
|
||||
X"E0",X"64",X"00",X"07",X"34",X"1E",X"3C",X"38",X"32",X"AC",X"70",X"80",X"B0",X"02",X"24",X"32",
|
||||
X"1E",X"24",X"9E",X"C0",X"55",X"C0",X"07",X"24",X"32",X"38",X"26",X"48",X"32",X"30",X"3C",X"16",
|
||||
X"2C",X"1E",X"00",X"22",X"1E",X"3A",X"1A",X"24",X"42",X"26",X"30",X"1C",X"26",X"22",X"2A",X"1E",
|
||||
X"26",X"BC",X"38",X"84",X"88",X"06",X"40",X"1E",X"38",X"3C",X"26",X"2A",X"16",X"2C",X"1E",X"00",
|
||||
X"22",X"1E",X"3A",X"1A",X"24",X"42",X"26",X"30",X"1C",X"26",X"22",X"2A",X"1E",X"26",X"BC",X"00",
|
||||
X"D0",X"00",X"1D",X"3A",X"EB",X"EE",X"EE",X"F7",X"E5",X"FD",X"DF",X"06",X"D0",X"06",X"12",X"09",
|
||||
X"15",X"F7",X"06",X"27",X"FA",X"63",X"F4",X"42",X"2A",X"00",X"03",X"E5",X"00",X"00",X"00",X"00",
|
||||
X"00",X"FA",X"F1",X"F4",X"F4",X"FA",X"FD",X"D6",X"03",X"DC",X"09",X"06",X"00",X"12",X"F7",X"06",
|
||||
X"EB",X"F7",X"5D",X"0C",X"63",X"36",X"00",X"03",X"D9",X"00",X"00",X"00",X"00",X"00",X"DF",X"E8",
|
||||
X"E5",X"EB",X"FA",X"E5",X"FD",X"0C",X"EB",X"E5",X"12",X"09",X"15",X"E8",X"1E",X"F7",X"00",X"5D",
|
||||
X"EE",X"03",X"3F",X"00",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
323
Arcade_MiST/Atari Vector/LunarLander_MiST/rtl/sdram.sv
Normal file
323
Arcade_MiST/Atari Vector/LunarLander_MiST/rtl/sdram.sv
Normal file
@ -0,0 +1,323 @@
|
||||
//
|
||||
// sdram.v
|
||||
//
|
||||
// sdram controller implementation for the MiST board
|
||||
// https://github.com/mist-devel/mist-board
|
||||
//
|
||||
// Copyright (c) 2013 Till Harbaum <till@harbaum.org>
|
||||
// Copyright (c) 2019 Gyorgy Szombathelyi
|
||||
//
|
||||
// This source file is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published
|
||||
// by the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This source file is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
//
|
||||
|
||||
module sdram (
|
||||
|
||||
// interface to the MT48LC16M16 chip
|
||||
inout reg [15:0] SDRAM_DQ, // 16 bit bidirectional data bus
|
||||
output reg [12:0] SDRAM_A, // 13 bit multiplexed address bus
|
||||
output reg SDRAM_DQML, // two byte masks
|
||||
output reg SDRAM_DQMH, // two byte masks
|
||||
output reg [1:0] SDRAM_BA, // two banks
|
||||
output SDRAM_nCS, // a single chip select
|
||||
output SDRAM_nWE, // write enable
|
||||
output SDRAM_nRAS, // row address select
|
||||
output SDRAM_nCAS, // columns address select
|
||||
|
||||
// cpu/chipset interface
|
||||
input init_n, // init signal after FPGA config to initialize RAM
|
||||
input clk, // sdram clock
|
||||
|
||||
input port1_req,
|
||||
output reg port1_ack,
|
||||
input port1_we,
|
||||
input [23:1] port1_a,
|
||||
input [1:0] port1_ds,
|
||||
input [15:0] port1_d,
|
||||
output [15:0] port1_q,
|
||||
|
||||
input [15:1] cpu1_addr,
|
||||
output reg [15:0] cpu1_q,
|
||||
|
||||
input port2_req,
|
||||
output reg port2_ack,
|
||||
input port2_we,
|
||||
input [23:1] port2_a,
|
||||
input [1:0] port2_ds,
|
||||
input [15:0] port2_d,
|
||||
output [15:0] port2_q,
|
||||
|
||||
input [15:1] snd_addr,
|
||||
output reg [15:0] snd_q
|
||||
);
|
||||
|
||||
localparam RASCAS_DELAY = 3'd2; // tRCD=20ns -> 2 cycles@<100MHz
|
||||
localparam BURST_LENGTH = 3'b000; // 000=1, 001=2, 010=4, 011=8
|
||||
localparam ACCESS_TYPE = 1'b0; // 0=sequential, 1=interleaved
|
||||
localparam CAS_LATENCY = 3'd2; // 2/3 allowed
|
||||
localparam OP_MODE = 2'b00; // only 00 (standard operation) allowed
|
||||
localparam NO_WRITE_BURST = 1'b1; // 0= write burst enabled, 1=only single access write
|
||||
|
||||
localparam MODE = { 3'b000, NO_WRITE_BURST, OP_MODE, CAS_LATENCY, ACCESS_TYPE, BURST_LENGTH};
|
||||
|
||||
// 64ms/8192 rows = 7.8us -> 842 cycles@108MHz
|
||||
localparam RFRSH_CYCLES = 10'd842;
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// ------------------------ cycle state machine ------------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
/*
|
||||
SDRAM state machine for 2 bank interleaved access
|
||||
1 word burst, CL2
|
||||
cmd issued registered
|
||||
0 RAS0 cas1
|
||||
1 ras0
|
||||
2 CAS0 data1 returned
|
||||
3 RAS1 cas0
|
||||
4 ras1
|
||||
5 CAS1 data0 returned
|
||||
*/
|
||||
|
||||
localparam STATE_RAS0 = 3'd0; // first state in cycle
|
||||
localparam STATE_RAS1 = 3'd3; // Second ACTIVE command after RAS0 + tRRD (15ns)
|
||||
localparam STATE_CAS0 = STATE_RAS0 + RASCAS_DELAY; // CAS phase - 3
|
||||
localparam STATE_CAS1 = STATE_RAS1 + RASCAS_DELAY; // CAS phase - 5
|
||||
localparam STATE_READ0 = 3'd0; //STATE_CAS0 + CAS_LATENCY + 1'd1; // 7
|
||||
localparam STATE_READ1 = 3'd3;
|
||||
localparam STATE_LAST = 3'd5;
|
||||
|
||||
reg [2:0] t;
|
||||
|
||||
always @(posedge clk) begin
|
||||
t <= t + 1'd1;
|
||||
if (t == STATE_LAST) t <= STATE_RAS0;
|
||||
end
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// --------------------------- startup/reset ---------------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
// wait 1ms (32 8Mhz cycles) after FPGA config is done before going
|
||||
// into normal operation. Initialize the ram in the last 16 reset cycles (cycles 15-0)
|
||||
reg [4:0] reset;
|
||||
reg init = 1'b1;
|
||||
always @(posedge clk, negedge init_n) begin
|
||||
if(!init_n) begin
|
||||
reset <= 5'h1f;
|
||||
init <= 1'b1;
|
||||
end else begin
|
||||
if((t == STATE_LAST) && (reset != 0)) reset <= reset - 5'd1;
|
||||
init <= !(reset == 0);
|
||||
end
|
||||
end
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// ------------------ generate ram control signals ---------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
// all possible commands
|
||||
localparam CMD_INHIBIT = 4'b1111;
|
||||
localparam CMD_NOP = 4'b0111;
|
||||
localparam CMD_ACTIVE = 4'b0011;
|
||||
localparam CMD_READ = 4'b0101;
|
||||
localparam CMD_WRITE = 4'b0100;
|
||||
localparam CMD_BURST_TERMINATE = 4'b0110;
|
||||
localparam CMD_PRECHARGE = 4'b0010;
|
||||
localparam CMD_AUTO_REFRESH = 4'b0001;
|
||||
localparam CMD_LOAD_MODE = 4'b0000;
|
||||
|
||||
reg [3:0] sd_cmd; // current command sent to sd ram
|
||||
reg [15:0] sd_din;
|
||||
// drive control signals according to current command
|
||||
assign SDRAM_nCS = sd_cmd[3];
|
||||
assign SDRAM_nRAS = sd_cmd[2];
|
||||
assign SDRAM_nCAS = sd_cmd[1];
|
||||
assign SDRAM_nWE = sd_cmd[0];
|
||||
|
||||
reg [24:1] addr_latch[2];
|
||||
reg [24:1] addr_latch_next[2];
|
||||
reg [15:1] addr_last[2];
|
||||
reg [15:1] addr_last2[2];
|
||||
reg [15:0] din_latch[2];
|
||||
reg [1:0] oe_latch;
|
||||
reg [1:0] we_latch;
|
||||
reg [1:0] ds[2];
|
||||
|
||||
localparam PORT_NONE = 2'd0;
|
||||
localparam PORT_CPU1 = 2'd1;
|
||||
localparam PORT_REQ = 2'd2;
|
||||
|
||||
localparam PORT_SND = 2'd1;
|
||||
|
||||
reg [2:0] next_port[2];
|
||||
reg [2:0] port[2];
|
||||
|
||||
reg refresh;
|
||||
reg [10:0] refresh_cnt;
|
||||
wire need_refresh = (refresh_cnt >= RFRSH_CYCLES);
|
||||
|
||||
// PORT1: bank 0,1
|
||||
always @(*) begin
|
||||
if (refresh) begin
|
||||
next_port[0] = PORT_NONE;
|
||||
addr_latch_next[0] = addr_latch[0];
|
||||
end else if (port1_req ^ port1_ack) begin
|
||||
next_port[0] = PORT_REQ;
|
||||
addr_latch_next[0] = { 1'b0, port1_a };
|
||||
end else if (cpu1_addr != addr_last[PORT_CPU1]) begin
|
||||
next_port[0] = PORT_CPU1;
|
||||
addr_latch_next[0] = { 9'd0, cpu1_addr };
|
||||
end else begin
|
||||
next_port[0] = PORT_NONE;
|
||||
addr_latch_next[0] = addr_latch[0];
|
||||
end
|
||||
end
|
||||
|
||||
// PORT2: bank 2,3
|
||||
always @(*) begin
|
||||
if (port2_req ^ port2_ack) begin
|
||||
next_port[1] = PORT_REQ;
|
||||
addr_latch_next[1] = { 1'b1, port2_a };
|
||||
end else if (snd_addr != addr_last2[PORT_SND]) begin
|
||||
next_port[1] = PORT_SND;
|
||||
addr_latch_next[1] = { 1'b1, 8'd0, snd_addr };
|
||||
end else begin
|
||||
next_port[1] = PORT_NONE;
|
||||
addr_latch_next[1] = addr_latch[1];
|
||||
end
|
||||
end
|
||||
|
||||
always @(posedge clk) begin
|
||||
|
||||
// permanently latch ram data to reduce delays
|
||||
sd_din <= SDRAM_DQ;
|
||||
SDRAM_DQ <= 16'bZZZZZZZZZZZZZZZZ;
|
||||
{ SDRAM_DQMH, SDRAM_DQML } <= 2'b11;
|
||||
sd_cmd <= CMD_NOP; // default: idle
|
||||
refresh_cnt <= refresh_cnt + 1'd1;
|
||||
|
||||
if(init) begin
|
||||
// initialization takes place at the end of the reset phase
|
||||
if(t == STATE_RAS0) begin
|
||||
|
||||
if(reset == 15) begin
|
||||
sd_cmd <= CMD_PRECHARGE;
|
||||
SDRAM_A[10] <= 1'b1; // precharge all banks
|
||||
end
|
||||
|
||||
if(reset == 10 || reset == 8) begin
|
||||
sd_cmd <= CMD_AUTO_REFRESH;
|
||||
end
|
||||
|
||||
if(reset == 2) begin
|
||||
sd_cmd <= CMD_LOAD_MODE;
|
||||
SDRAM_A <= MODE;
|
||||
SDRAM_BA <= 2'b00;
|
||||
end
|
||||
end
|
||||
end else begin
|
||||
// RAS phase
|
||||
// bank 0,1
|
||||
if(t == STATE_RAS0) begin
|
||||
addr_latch[0] <= addr_latch_next[0];
|
||||
port[0] <= next_port[0];
|
||||
{ oe_latch[0], we_latch[0] } <= 2'b00;
|
||||
|
||||
if (next_port[0] != PORT_NONE) begin
|
||||
sd_cmd <= CMD_ACTIVE;
|
||||
SDRAM_A <= addr_latch_next[0][22:10];
|
||||
SDRAM_BA <= addr_latch_next[0][24:23];
|
||||
addr_last[next_port[0]] <= addr_latch_next[0][15:1];
|
||||
if (next_port[0] == PORT_REQ) begin
|
||||
{ oe_latch[0], we_latch[0] } <= { ~port1_we, port1_we };
|
||||
ds[0] <= port1_ds;
|
||||
din_latch[0] <= port1_d;
|
||||
end else begin
|
||||
{ oe_latch[0], we_latch[0] } <= 2'b10;
|
||||
ds[0] <= 2'b11;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
// bank 2,3
|
||||
if(t == STATE_RAS1) begin
|
||||
refresh <= 1'b0;
|
||||
addr_latch[1] <= addr_latch_next[1];
|
||||
{ oe_latch[1], we_latch[1] } <= 2'b00;
|
||||
port[1] <= next_port[1];
|
||||
|
||||
if (next_port[1] != PORT_NONE) begin
|
||||
sd_cmd <= CMD_ACTIVE;
|
||||
SDRAM_A <= addr_latch_next[1][22:10];
|
||||
SDRAM_BA <= addr_latch_next[1][24:23];
|
||||
addr_last2[next_port[1]] <= addr_latch_next[1][15:1];
|
||||
if (next_port[1] == PORT_REQ) begin
|
||||
{ oe_latch[1], we_latch[1] } <= { ~port2_we, port2_we };
|
||||
ds[1] <= port2_ds;
|
||||
din_latch[1] <= port2_d;
|
||||
end else begin
|
||||
{ oe_latch[1], we_latch[1] } <= 2'b10;
|
||||
ds[1] <= 2'b11;
|
||||
end
|
||||
end
|
||||
|
||||
if (next_port[1] == PORT_NONE && need_refresh && !we_latch[0] && !oe_latch[0]) begin
|
||||
refresh <= 1'b1;
|
||||
refresh_cnt <= 0;
|
||||
sd_cmd <= CMD_AUTO_REFRESH;
|
||||
end
|
||||
end
|
||||
|
||||
// CAS phase
|
||||
if(t == STATE_CAS0 && (we_latch[0] || oe_latch[0])) begin
|
||||
sd_cmd <= we_latch[0]?CMD_WRITE:CMD_READ;
|
||||
{ SDRAM_DQMH, SDRAM_DQML } <= ~ds[0];
|
||||
if (we_latch[0]) begin
|
||||
SDRAM_DQ <= din_latch[0];
|
||||
port1_ack <= port1_req;
|
||||
end
|
||||
SDRAM_A <= { 4'b0010, addr_latch[0][9:1] }; // auto precharge
|
||||
SDRAM_BA <= addr_latch[0][24:23];
|
||||
end
|
||||
|
||||
if(t == STATE_CAS1 && (we_latch[1] || oe_latch[1])) begin
|
||||
sd_cmd <= we_latch[1]?CMD_WRITE:CMD_READ;
|
||||
{ SDRAM_DQMH, SDRAM_DQML } <= ~ds[1];
|
||||
if (we_latch[1]) begin
|
||||
SDRAM_DQ <= din_latch[1];
|
||||
port2_ack <= port2_req;
|
||||
end
|
||||
SDRAM_A <= { 4'b0010, addr_latch[1][9:1] }; // auto precharge
|
||||
SDRAM_BA <= addr_latch[1][24:23];
|
||||
end
|
||||
|
||||
// Data returned
|
||||
if(t == STATE_READ0 && oe_latch[0]) begin
|
||||
case(port[0])
|
||||
PORT_REQ: begin port1_q <= sd_din; port1_ack <= port1_req; end
|
||||
PORT_CPU1: begin cpu1_q <= sd_din; end
|
||||
default: ;
|
||||
endcase;
|
||||
end
|
||||
if(t == STATE_READ1 && oe_latch[1]) begin
|
||||
case(port[1])
|
||||
PORT_REQ: begin port2_q <= sd_din; port2_ack <= port2_req; end
|
||||
PORT_SND: begin snd_q <= sd_din; end
|
||||
default: ;
|
||||
endcase;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
endmodule
|
||||
Loading…
x
Reference in New Issue
Block a user