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

Subversion Repositories System09

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /System09
    from Rev 115 to Rev 116
    Reverse comparison

Rev 115 → Rev 116

/trunk/rtl/Spartan2/sys09b3s.vhd
0,0 → 1,101
--
-- SYS09BUG Monitor Program
-- v1.0 - 21 November 2006 - John Knet
--
-- v1.1 - 22 december 2006 - John Kent
-- made into 4K ROM/RAM.
--
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
library unisim;
use unisim.vcomponents.all;
 
entity mon_rom is
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (11 downto 0);
rdata : out std_logic_vector (7 downto 0);
wdata : in std_logic_vector (7 downto 0)
);
end mon_rom;
 
architecture rtl of mon_rom is
 
signal we : std_logic;
signal cs0 : std_logic;
signal cs1 : std_logic;
signal dp0 : std_logic;
signal dp1 : std_logic;
signal rdata0 : std_logic_vector(7 downto 0);
signal rdata1 : std_logic_vector(7 downto 0);
 
component SYS09BUG_F000
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (10 downto 0);
rdata : out std_logic_vector (7 downto 0);
wdata : in std_logic_vector (7 downto 0)
);
end component;
 
component SYS09BUG_F800
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (10 downto 0);
rdata : out std_logic_vector (7 downto 0);
wdata : in std_logic_vector (7 downto 0)
);
end component;
 
begin
 
addr_f000 : SYS09BUG_F000 port map (
clk => clk,
rst => rst,
cs => cs0,
rw => rw,
addr => addr(10 downto 0),
wdata => wdata,
rdata => rdata0
);
 
addr_f800 : SYS09BUG_F800 port map (
clk => clk,
rst => rst,
cs => cs1,
rw => rw,
addr => addr(10 downto 0),
wdata => wdata,
rdata => rdata1
);
 
my_mon : process ( rw, addr, cs, rdata0, rdata1 )
begin
we <= not rw;
case addr(11) is
when '0' =>
cs0 <= cs;
cs1 <= '0';
rdata <= rdata0;
when '1' =>
cs0 <= '0';
cs1 <= cs;
rdata <= rdata1;
when others =>
null;
end case;
end process;
 
end architecture rtl;
 
/trunk/rtl/Spartan2/sys09bug_b5x_rom2k_b4.vhd
0,0 → 1,218
--
-- sys09bug_rom2k_b4.vhd
--
-- SYS09BUG Monitor ROM for the B5-X300 6809
-- Using 4 x RAMB4_S8 in the XC2S300e
--
-- John Kent
-- 3rd February 2007
-- Has the same entity name as SBUG so
-- it can be easily exchanged.
--
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
library unisim;
use unisim.vcomponents.all;
 
entity mon_rom is
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (10 downto 0);
wdata : in std_logic_vector (7 downto 0);
rdata : out std_logic_vector (7 downto 0)
);
end mon_rom;
 
architecture rtl of mon_rom is
 
signal rdata0 : std_logic_vector (7 downto 0);
signal rdata1 : std_logic_vector (7 downto 0);
signal rdata2 : std_logic_vector (7 downto 0);
signal rdata3 : std_logic_vector (7 downto 0);
 
signal ena0 : std_logic;
signal ena1 : std_logic;
signal ena2 : std_logic;
signal ena3 : std_logic;
 
signal we : std_logic;
 
component RAMB4_S8
generic (
INIT_00, INIT_01, INIT_02, INIT_03,
INIT_04, INIT_05, INIT_06, INIT_07,
INIT_08, INIT_09, INIT_0A, INIT_0B,
INIT_0C, INIT_0D, INIT_0E, INIT_0F : bit_vector (255 downto 0)
);
 
port (
clk, we, en, rst : in std_logic;
addr : in std_logic_vector(8 downto 0);
di : in std_logic_vector(7 downto 0);
do : out std_logic_vector(7 downto 0)
);
end component RAMB4_S8;
 
begin
 
ROM0 : RAMB4_S8
generic map (
INIT_00 => x"A780A610C6C0DF8E106DFE8E2EFA1AFB1EFB8FFBCAFCB5FC97FC9DFC61F814F8",
INIT_01 => x"17431FE4A7D0866AAFDD8C30FB265AE26F0CC65B0117E0DFBF00E08EF9265AA0",
INIT_02 => x"03179FFE8E0C0417F62A5A19048B0327856D0DC64FD0DF8E4703177DFE8E9B04",
INIT_03 => x"17408B981F4F04175E86092C2081891FF1270D817F84330417B30217A6FE8E2E",
INIT_04 => x"20F00217A8FE8EF5266DFE8C02300F2780E137FE8E20C0022F60C14304174804",
INIT_05 => x"17A4A60B0417A50317211F650217AEFE8E121F2D296B03173B341FBC2094ADC0",
INIT_06 => x"27A4A1A4A7390F260D8117275E81DD271881E127088111285E0317030417A503",
INIT_07 => x"0B031705201F30C0DF8E321FA20217BE203F31C2202131E103173F86E4031708",
INIT_08 => x"279603170527E4AC011FF0C4201F0634F0C41000C3101F390124E1AC20340629",
INIT_09 => x"265A8A03172C031780A610C69203172E0317E4AEEE0117AEFE8E103439623203",
INIT_0a => x"29B70217BC20EE265A7303172E8602237E810425208180A610C6E1AE820317F5",
INIT_0b => x"3984A73F86A4AFA0A709273F8184A60F271035558DFFFF8E10341A24C0DF8C1E",
INIT_0c => x"4AAF0427268D1F304AAE431F39FB265A188D08C6E3DF8E104203163F86450317",
INIT_0d => x"A7A0A7A0A7FF8684A7A4A604263F8184A60A24C0DF8C21AEB9FE16480217068D",
INIT_0e => x"0186398D46E0B7E086408D393D3139F7265A0427A1ACA0A608C6E3DF8E1039A0",
INIT_0f => x"178D47E0B7208645E0B744E0B743E0B74F42E0B701862D8D47E0B7EF8641E0B7"
)
 
port map (
clk => clk,
en => ena0,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata0
);
 
ROM1 : RAMB4_S8
generic map (
INIT_00 => x"E0B6F926808547E0B63B341F4AAF00C08EF42600C28C80A740E0B6218D00C08E",
INIT_01 => x"54545454A6E6D0DF8E104444444462A6363439F927088547E0B639F227408547",
INIT_02 => x"FCBD8435FD265A20C60434B63562E762EA62A70F8462A65858585853A6E6E4E7",
INIT_03 => x"0234A80117F12631813D2739811F0217F9265381260217E2DF7F6402171186DF",
INIT_04 => x"E0EB02340C2904358E01170434E46AE46AE4EBE0EBE0E6103421299101172629",
INIT_05 => x"0117E26F0E02161386E2DF731602173F86BA27FFC102355FEB2080A70527E46A",
INIT_06 => x"2320008310062762A3E4ECF501171286DFFCBDE4AF0130492562AC4D2930344A",
INIT_07 => x"1780A684EB63EB62EB68011762AE750117981F03CB2F0017EFFE8E64E720C602",
INIT_08 => x"10347120028D396532B301171486C326E4AC62AF5B0117981F53F526646A6501",
INIT_09 => x"8D618D394AAF0229F68DF28D910017E50016F800169D01169035690017A0FE8E",
INIT_0a => x"498D3944AF0229D58DD18D5E8D3946AF0229E08DDC8D728D3948AF0229EB8DE7",
INIT_0b => x"8D3941A70229B18DB08D588D3942A70229BC8DBB8D6C8D3943A70229C78DC68D",
INIT_0c => x"BF0016311FF48DB2FE8E39F726048180A63B011739C4A7808A0429A68DA58D5F",
INIT_0d => x"8DC4FE8EE12044AED78DCAFE8EB4001643A6E18DD0FE8EF42048AEEA8DBEFE8E",
INIT_0e => x"D02042A6B38DDBFE8ED92041A6BC8DD6FE8ECF204AAEC58DB8FE8ED82046AECE",
INIT_0f => x"AEFE8EBF8DB88DB08DA98DA18D27FF17AEFE8E900016E7FE8EC4A6AA8DE0FE8E"
)
 
port map (
clk => clk,
en => ena1,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata1
);
 
ROM2 : RAMB4_S8
generic map (
INIT_00 => x"3C29088D011F42290E8DB400172D86121F4D29098DD520CE8DC78DC08D17FF17",
INIT_01 => x"811D253081578D39E0AB04342829078D891F484848483229118D903561A71034",
INIT_02 => x"3439021A39578003226681072561813937800322468112254181393080032239",
INIT_03 => x"C602344D20078B022F3981308B0F840235048D4444444402340235028D023510",
INIT_04 => x"BE10342D207F84048D0627E2DF7D8235F1265A3B8D3F8D2D860225E46880A608",
INIT_05 => x"B605260185E0DF9FA60234903501A6EE27018584A620E08E0926018584A6E0DF",
INIT_06 => x"BE138D903501A70235FA27028584A6E0DFBE1234458D2086008D8235018520E0",
INIT_07 => x"E703E702A7FBDFFD0000CC30E08E39E2DFB7FF86016D84A7118684A70386E0DF",
INIT_08 => x"810D20748D0427FEDF7D30E08E16345986028D1B86FEDF7F01E702C6FDDFFD04",
INIT_09 => x"8E0027101A816C0027101B814100271008819635C5001784A70520098D042420",
INIT_0a => x"5CFBDFFC51260A81110027100B812C0027100C81990027100D81450027101681",
INIT_0b => x"DFB66800164A3327FBDFB67400165A3C0027105DFBDFFC9900168300261019C1",
INIT_0c => x"54816E002710598116273DC1FEDFF65800160000CC5B00162500271050814CFB",
INIT_0d => x"ED224F812080FEDF7F39FDDFB70426FDDF7D39FEDF7F39FEDFB704263D813127",
INIT_0e => x"26508102A74C84E720C6FBDFB6168D0000CC1B20E12218C120C0FDDF7FFDDFF6",
INIT_0f => x"5AEA2619C15C4FF02650814CFBDFFC3903E702A7FBDFFDFCDFF64F39FEDF7FF7"
)
 
port map (
clk => clk,
en => ena2,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata2
);
 
ROM3 : RAMB4_S8
generic map (
INIT_00 => x"FCDFF6F42650C15C84A702E7FBDFF72086FBDFF604E75F012519C15C04E6E78D",
INIT_01 => x"7FFB0369FB0274FB0139FEDFF702E7FBDFF75FE4205F03E7FCDFF7082719C15C",
INIT_02 => x"F84DBCFA505EFA4CA5F847FDF8455CF94248FB1953FB183DFB1531FB105EFB04",
INIT_03 => x"000A0DFFFFFFFF94F9A7F8A7F8A7F8A7F894F9D5F94488F958F1F853EDFB52A8",
INIT_04 => x"4B04202D2020303033582D354220524F4620342E312047554239305359530000",
INIT_05 => x"2020043D43502020043D5053202004202D20043F54414857043E040000000A0D",
INIT_06 => x"043D422020043D412020043D50442020043D58492020043D59492020043D5355",
INIT_07 => x"000000000000000000000000000004315343565A4E4948464504203A43432020",
INIT_08 => x"300B2784AC1084AF1084EEAA558E10A0D08E84A7F086FB264A80A70F86F0FF8E",
INIT_09 => x"2DA7D0DF8E10C0DFCE10FDFFB74444444443101F84EFD620ED26A0F08C00F089",
INIT_0a => x"1084AF10AA558E1084EE2227A0F08C00F08930FB2A4AA66F0C862FA7F0862E6F",
INIT_0b => x"2EA7D0DF8E10F186D520A5A70F88891F44444444101FD0DF8E1084EFE92684AC",
INIT_0c => x"8EF32D0C814C80E7A66F0427A6E6211F4F2CE7A66F1420F92A4A0526A6E60C86",
INIT_0d => x"9F6EC6DF9F6EC4DF9F6EC0DF9F6E62F816E2DFF753F9265A80A7A0A610C6F0FF",
INIT_0e => x"0822CEDFBC8B300F27FFFF8CCCDFBE49584F4AAF80E64AAE431FCADF9F6EC8DF",
INIT_0f => x"00FFB2FFC2FFBEFFBAFFB6FFC6FFB2FFC2DF9F6E42EE1F37F16E44AEC4EC1034"
)
 
port map (
clk => clk,
en => ena3,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata3
);
 
my_sys09bug_b4 : process ( cs, rw, addr, rdata0, rdata1, rdata2, rdata3 )
begin
case addr(10 downto 9) is
when "00" =>
ena0 <= cs;
ena1 <= '0';
ena2 <= '0';
ena3 <= '0';
rdata <= rdata0;
when "01" =>
ena0 <= '0';
ena1 <= cs;
ena2 <= '0';
ena3 <= '0';
rdata <= rdata1;
when "10" =>
ena0 <= '0';
ena1 <= '0';
ena2 <= cs;
ena3 <= '0';
rdata <= rdata2;
when "11" =>
ena0 <= '0';
ena1 <= '0';
ena2 <= '0';
ena3 <= cs;
rdata <= rdata3;
when others =>
null;
end case;
 
we <= not rw;
 
end process;
 
end architecture rtl;
 
/trunk/rtl/Spartan2/sys09b5x.vhd
0,0 → 1,101
--
-- SYS09BUG Monitor Program
-- v1.0 - 21 November 2006 - John Knet
--
-- v1.1 - 22 december 2006 - John Kent
-- made into 4K ROM/RAM.
--
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
library unisim;
use unisim.vcomponents.all;
 
entity mon_rom is
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (11 downto 0);
rdata : out std_logic_vector (7 downto 0);
wdata : in std_logic_vector (7 downto 0)
);
end mon_rom;
 
architecture rtl of mon_rom is
 
signal we : std_logic;
signal cs0 : std_logic;
signal cs1 : std_logic;
signal dp0 : std_logic;
signal dp1 : std_logic;
signal rdata0 : std_logic_vector(7 downto 0);
signal rdata1 : std_logic_vector(7 downto 0);
 
component SYS09BUG_F000
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (10 downto 0);
rdata : out std_logic_vector (7 downto 0);
wdata : in std_logic_vector (7 downto 0)
);
end component;
 
component SYS09BUG_F800
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (10 downto 0);
rdata : out std_logic_vector (7 downto 0);
wdata : in std_logic_vector (7 downto 0)
);
end component;
 
begin
 
addr_f000 : SYS09BUG_F000 port map (
clk => clk,
rst => rst,
cs => cs0,
rw => rw,
addr => addr(10 downto 0),
wdata => wdata,
rdata => rdata0
);
 
addr_f800 : SYS09BUG_F800 port map (
clk => clk,
rst => rst,
cs => cs1,
rw => rw,
addr => addr(10 downto 0),
wdata => wdata,
rdata => rdata1
);
 
my_mon : process ( rw, addr, cs, rdata0, rdata1 )
begin
we <= not rw;
case addr(11) is
when '0' =>
cs0 <= cs;
cs1 <= '0';
rdata <= rdata0;
when '1' =>
cs0 <= '0';
cs1 <= cs;
rdata <= rdata1;
when others =>
null;
end case;
end process;
 
end architecture rtl;
 
/trunk/rtl/Spartan2/sys09b3s_b16.vhd
0,0 → 1,147
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
library unisim;
use unisim.vcomponents.all;
 
entity SYS09BUG_F800 is
port(
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector(10 downto 0);
rdata : out std_logic_vector(7 downto 0);
wdata : in std_logic_vector(7 downto 0)
);
end SYS09BUG_F800;
 
architecture rtl of SYS09BUG_F800 is
 
type data_array is array(0 to 0) of std_logic_vector(7 downto 0);
signal xdata : data_array;
signal en : std_logic_vector(0 downto 0);
signal dp : std_logic_vector(0 downto 0);
signal we : std_logic;
 
component RAMB16_S9
generic (
INIT_00, INIT_01, INIT_02, INIT_03,
INIT_04, INIT_05, INIT_06, INIT_07,
INIT_08, INIT_09, INIT_0A, INIT_0B,
INIT_0C, INIT_0D, INIT_0E, INIT_0F,
INIT_10, INIT_11, INIT_12, INIT_13,
INIT_14, INIT_15, INIT_16, INIT_17,
INIT_18, INIT_19, INIT_1A, INIT_1B,
INIT_1C, INIT_1D, INIT_1E, INIT_1F,
INIT_20, INIT_21, INIT_22, INIT_23,
INIT_24, INIT_25, INIT_26, INIT_27,
INIT_28, INIT_29, INIT_2A, INIT_2B,
INIT_2C, INIT_2D, INIT_2E, INIT_2F,
INIT_30, INIT_31, INIT_32, INIT_33,
INIT_34, INIT_35, INIT_36, INIT_37,
INIT_38, INIT_39, INIT_3A, INIT_3B,
INIT_3C, INIT_3D, INIT_3E, INIT_3F : bit_vector (255 downto 0)
);
 
port (
clk : in std_logic;
ssr : in std_logic;
en : in std_logic;
we : in std_logic;
addr : in std_logic_vector(10 downto 0);
di : in std_logic_vector( 7 downto 0);
dip : in std_logic_vector( 0 downto 0);
do : out std_logic_vector( 7 downto 0);
dop : out std_logic_vector( 0 downto 0)
);
end component RAMB16_S9;
 
begin
 
ROM00: RAMB16_S9
generic map (
INIT_00 => x"A780A610C6C0DF8E106DFE8E2EFA1AFB1EFB8FFBDCFCC1FC97FC9DFC61F814F8",
INIT_01 => x"17431FE4A7D0866AAFDD8C30FB265AE26F0CC65B0117E0DFBF00E08EF9265AA0",
INIT_02 => x"03179EFE8E0C0417F62A5A19048B0327856D0DC64FD0DF8E4703177DFE8EB104",
INIT_03 => x"17408B981F6104175E86092C2081891FF1270D817F84330417B30217A5FE8E2E",
INIT_04 => x"20F00217A7FE8EF5266DFE8C02300F2780E137FE8E20C0022F60C15504175A04",
INIT_05 => x"17A4A61D0417A50317211F650217ADFE8E121F2D296B03173B341FBC2094ADC0",
INIT_06 => x"27A4A1A4A7390F260D8117275E81DD271881E127088111285E0317150417A503",
INIT_07 => x"0B031705201F30C0DF8E321FA20217BE203F31C2202131F303173F86F6031708",
INIT_08 => x"27A203170527E4AC011FF0C4201F0634F0C41000C3101F390124E1AC20340629",
INIT_09 => x"265A9C03172C031780A610C6A403172E0317E4AEEE0117ADFE8E103439623203",
INIT_0a => x"29B70217BC20EE265A8503172E8602237E810425208180A610C6E1AE940317F5",
INIT_0b => x"3984A73F86A4AFA0A709273F8184A60F271035558DFFFF8E10341A24C0DF8C1E",
INIT_0c => x"4AAF0427268D1F304AAE431F39FB265A188D08C6E3DF8E105403163F86570317",
INIT_0d => x"A7A0A7A0A7FF8684A7A4A604263F8184A60A24C0DF8C21AEB9FE16480217068D",
INIT_0e => x"E1FD0200CC1EE1FD0600CC393D3139F7265A0427A1ACA0A608C6E3DF8E1039A0",
INIT_0f => x"178D0EE1FD20C60AE1FD08E1FD06E1FD5F04E1FD0100CC2E8D0CE1FDE000CC1E",
INIT_10 => x"E1FCF92680C50EE1FC3B341F4AAF00C08EF42600C18C80E700E1FC218D00C08E",
INIT_11 => x"54545454A6E6D0DF8E104444444462A6363439F92708C50EE1FC39F22740C50E",
INIT_12 => x"FCBD8435FD265A20C60434B63562E762EA62A70F8462A65858585853A6E6E4E7",
INIT_13 => x"0234A80117F12631813D2739811F0217F9265381260217E2DF7F7602171186F5",
INIT_14 => x"E0EB02340C2904358E01170434E46AE46AE4EBE0EBE0E6103421299101172629",
INIT_15 => x"0117E26F2002161386E2DF732802173F86BA27FFC102355FEB2080A70527E46A",
INIT_16 => x"2320008310062762A3E4EC0702171286F5FCBDE4AF0130492562AC4D2930344A",
INIT_17 => x"1780A684EB63EB62EB68011762AE750117981F03CB2F0017EEFE8E64E720C602",
INIT_18 => x"10347120028D396532C501171486C326E4AC62AF5B0117981F53F526646A6501",
INIT_19 => x"8D618D394AAF0229F68DF28D910017E50016F80016AF011690356900179FFE8E",
INIT_1a => x"498D3944AF0229D58DD18D5E8D3946AF0229E08DDC8D728D3948AF0229EB8DE7",
INIT_1b => x"8D3941A70229B18DB08D588D3942A70229BC8DBB8D6C8D3943A70229C78DC68D",
INIT_1c => x"BF0016311FF48DB1FE8E39F726048180A64D011739C4A7808A0429A68DA58D5F",
INIT_1d => x"8DC3FE8EE12044AED78DC9FE8EB4001643A6E18DCFFE8EF42048AEEA8DBDFE8E",
INIT_1e => x"D02042A6B38DDAFE8ED92041A6BC8DD5FE8ECF204AAEC58DB7FE8ED82046AECE",
INIT_1f => x"ADFE8EBF8DB88DB08DA98DA18D27FF17ADFE8E900016E6FE8EC4A6AA8DDFFE8E",
INIT_20 => x"3C29088D011F42290E8DC600172D86121F4D29098DD520CE8DC78DC08D17FF17",
INIT_21 => x"811D253081578D39E0AB04342829078D891F484848483229118D903561A71034",
INIT_22 => x"3439021A39578003226681072561813937800322468112254181393080032239",
INIT_23 => x"C602345F20078B022F3981308B0F840235048D4444444402340235028D023510",
INIT_24 => x"8610343F207F84048D0627E2DF7D8235F1265A4D8D518D2D860225E46880A608",
INIT_25 => x"3501A6E0DF9FA75186EE27018584A620E08E0926018584A6E0DFBEE0DF9FA711",
INIT_26 => x"1234498D2086008D8235018520E0B605260185E0DF9FA6E0DF9FA71186023490",
INIT_27 => x"84A7518684A70386E0DFBE138D903501A70235F6260885FA27028584A6E0DFBE",
INIT_28 => x"DF7F01E702C6FDDFFD04E703E702A7FBDFFD0000CC30E08E39E2DFB7FF86016D",
INIT_29 => x"1784A70520098D042420810D20608D0427FEDF7D30E08E16345986028D1B86FE",
INIT_2a => x"24270C81890027100D81382716817C0027101A815A271B81342708819635AF00",
INIT_2b => x"27FBDFB66D205A34275DFBDFFC8F0016792619C15CFBDFFC45260A810F270B81",
INIT_2c => x"54816E27598114273DC1FEDFF656200000CC5820212750814CFBDFB662204A2C",
INIT_2d => x"ED224F812080FEDF7F39FDDFB70426FDDF7D39FEDF7F39FEDFB704263D813127",
INIT_2e => x"26508102A74C84E720C6FBDFB6168D0000CC1B20E12218C120C0FDDF7FFDDFF6",
INIT_2f => x"5AEA2619C15C4FF02650814CFBDFFC3903E702A7FBDFFDFCDFF64F39FEDF7FF7",
INIT_30 => x"FCDFF6F42650C15C84A702E7FBDFF72086FBDFF604E75F012519C15C04E6E78D",
INIT_31 => x"7FFB0369FB0274FB0139FEDFF702E7FBDFF75FE4205F03E7FCDFF7082719C15C",
INIT_32 => x"F84DBCFA505EFA4CA5F847FDF8455CF94248FB1953FB183DFB1531FB105EFB04",
INIT_33 => x"000A0DFFFFFFFF94F9A7F8A7F8A7F8A7F894F9D5F94488F958F1F853EDFB52A8",
INIT_34 => x"0D4B04202D20202B32532D334220524F4620362E312047554239305359530000",
INIT_35 => x"552020043D43502020043D5053202004202D20043F54414857043E040000000A",
INIT_36 => x"20043D422020043D412020043D50442020043D58492020043D59492020043D53",
INIT_37 => x"00000000000000000000000000000004315343565A4E4948464504203A434320",
INIT_38 => x"300B2784AC1084AF1084EEAA558E10A0D08E84A7F086FB264A80A70F86F0FF8E",
INIT_39 => x"2DA7D0DF8E10C0DFCE10FDFFB74444444443101F84EFD620ED26A0F08C00F089",
INIT_3a => x"1084AF10AA558E1084EE2227A0F08C00F08930FB2A4AA66F0C862FA7F0862E6F",
INIT_3b => x"2EA7D0DF8E10F186D520A5A70F88891F44444444101FD0DF8E1084EFE92684AC",
INIT_3c => x"8EF32D0C814C80E7A66F0427A6E6211F4F2CE7A66F1420F92A4A0526A6E60C86",
INIT_3d => x"9F6EC6DF9F6EC4DF9F6EC0DF9F6E62F816E2DFF753F9265A80A7A0A610C6F0FF",
INIT_3e => x"0822CEDFBC8B300F27FFFF8CCCDFBE49584F4AAF80E64AAE431FCADF9F6EC8DF",
INIT_3f => x"00FFB2FFC2FFBEFFBAFFB6FFC6FFB2FFC2DF9F6E42EE1F37F16E44AEC4EC1034"
)
port map (
clk => clk,
ssr => rst,
en => en(0),
we => we,
addr => addr(10 downto 0),
di => wdata,
dip(0) => dp(0),
do => xdata(0),
dop(0) => dp(0)
);
rom_glue: process (cs, rw, addr, xdata)
begin
en(0) <= cs;
rdata <= xdata(0);
we <= not rw;
end process;
end architecture rtl;
 
/trunk/rtl/Spartan2/sys09b5x_b16.vhd
0,0 → 1,147
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
library unisim;
use unisim.vcomponents.all;
 
entity SYS09BUG_F800 is
port(
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector(10 downto 0);
rdata : out std_logic_vector(7 downto 0);
wdata : in std_logic_vector(7 downto 0)
);
end SYS09BUG_F800;
 
architecture rtl of SYS09BUG_F800 is
 
type data_array is array(0 to 0) of std_logic_vector(7 downto 0);
signal xdata : data_array;
signal en : std_logic_vector(0 downto 0);
signal dp : std_logic_vector(0 downto 0);
signal we : std_logic;
 
component RAMB16_S9
generic (
INIT_00, INIT_01, INIT_02, INIT_03,
INIT_04, INIT_05, INIT_06, INIT_07,
INIT_08, INIT_09, INIT_0A, INIT_0B,
INIT_0C, INIT_0D, INIT_0E, INIT_0F,
INIT_10, INIT_11, INIT_12, INIT_13,
INIT_14, INIT_15, INIT_16, INIT_17,
INIT_18, INIT_19, INIT_1A, INIT_1B,
INIT_1C, INIT_1D, INIT_1E, INIT_1F,
INIT_20, INIT_21, INIT_22, INIT_23,
INIT_24, INIT_25, INIT_26, INIT_27,
INIT_28, INIT_29, INIT_2A, INIT_2B,
INIT_2C, INIT_2D, INIT_2E, INIT_2F,
INIT_30, INIT_31, INIT_32, INIT_33,
INIT_34, INIT_35, INIT_36, INIT_37,
INIT_38, INIT_39, INIT_3A, INIT_3B,
INIT_3C, INIT_3D, INIT_3E, INIT_3F : bit_vector (255 downto 0)
);
 
port (
clk : in std_logic;
ssr : in std_logic;
en : in std_logic;
we : in std_logic;
addr : in std_logic_vector(10 downto 0);
di : in std_logic_vector( 7 downto 0);
dip : in std_logic_vector( 0 downto 0);
do : out std_logic_vector( 7 downto 0);
dop : out std_logic_vector( 0 downto 0)
);
end component RAMB16_S9;
 
begin
 
ROM00: RAMB16_S9
generic map (
INIT_00 => x"A780A610C6C0DF8E106DFE8E2EFA1AFB1EFB8FFBDCFCC1FC97FC9DFC61F814F8",
INIT_01 => x"17431FE4A7D0866AAFDD8C30FB265AE26F0CC65B0117E0DFBF00E08EF9265AA0",
INIT_02 => x"03179FFE8E0C0417F62A5A19048B0327856D0DC64FD0DF8E4703177DFE8EB104",
INIT_03 => x"17408B981F6104175E86092C2081891FF1270D817F84330417B30217A6FE8E2E",
INIT_04 => x"20F00217A8FE8EF5266DFE8C02300F2780E137FE8E20C0022F60C15504175A04",
INIT_05 => x"17A4A61D0417A50317211F650217AEFE8E121F2D296B03173B341FBC2094ADC0",
INIT_06 => x"27A4A1A4A7390F260D8117275E81DD271881E127088111285E0317150417A503",
INIT_07 => x"0B031705201F30C0DF8E321FA20217BE203F31C2202131F303173F86F6031708",
INIT_08 => x"27A203170527E4AC011FF0C4201F0634F0C41000C3101F390124E1AC20340629",
INIT_09 => x"265A9C03172C031780A610C6A403172E0317E4AEEE0117AEFE8E103439623203",
INIT_0a => x"29B70217BC20EE265A8503172E8602237E810425208180A610C6E1AE940317F5",
INIT_0b => x"3984A73F86A4AFA0A709273F8184A60F271035558DFFFF8E10341A24C0DF8C1E",
INIT_0c => x"4AAF0427268D1F304AAE431F39FB265A188D08C6E3DF8E105403163F86570317",
INIT_0d => x"A7A0A7A0A7FF8684A7A4A604263F8184A60A24C0DF8C21AEB9FE16480217068D",
INIT_0e => x"0186398D46E0B7E086408D393D3139F7265A0427A1ACA0A608C6E3DF8E1039A0",
INIT_0f => x"178D47E0B7208645E0B744E0B743E0B74F42E0B701862D8D47E0B7EF8641E0B7",
INIT_10 => x"E0B6F926808547E0B63B341F4AAF00C08EF42600C28C80A740E0B6218D00C08E",
INIT_11 => x"54545454A6E6D0DF8E104444444462A6363439F927088547E0B639F227408547",
INIT_12 => x"FCBD8435FD265A20C60434B63562E762EA62A70F8462A65858585853A6E6E4E7",
INIT_13 => x"0234A80117F12631813D2739811F0217F9265381260217E2DF7F7602171186F5",
INIT_14 => x"E0EB02340C2904358E01170434E46AE46AE4EBE0EBE0E6103421299101172629",
INIT_15 => x"0117E26F2002161386E2DF732802173F86BA27FFC102355FEB2080A70527E46A",
INIT_16 => x"2320008310062762A3E4EC0702171286F5FCBDE4AF0130492562AC4D2930344A",
INIT_17 => x"1780A684EB63EB62EB68011762AE750117981F03CB2F0017EFFE8E64E720C602",
INIT_18 => x"10347120028D396532C501171486C326E4AC62AF5B0117981F53F526646A6501",
INIT_19 => x"8D618D394AAF0229F68DF28D910017E50016F80016AF01169035690017A0FE8E",
INIT_1a => x"498D3944AF0229D58DD18D5E8D3946AF0229E08DDC8D728D3948AF0229EB8DE7",
INIT_1b => x"8D3941A70229B18DB08D588D3942A70229BC8DBB8D6C8D3943A70229C78DC68D",
INIT_1c => x"BF0016311FF48DB2FE8E39F726048180A64D011739C4A7808A0429A68DA58D5F",
INIT_1d => x"8DC4FE8EE12044AED78DCAFE8EB4001643A6E18DD0FE8EF42048AEEA8DBEFE8E",
INIT_1e => x"D02042A6B38DDBFE8ED92041A6BC8DD6FE8ECF204AAEC58DB8FE8ED82046AECE",
INIT_1f => x"AEFE8EBF8DB88DB08DA98DA18D27FF17AEFE8E900016E7FE8EC4A6AA8DE0FE8E",
INIT_20 => x"3C29088D011F42290E8DC600172D86121F4D29098DD520CE8DC78DC08D17FF17",
INIT_21 => x"811D253081578D39E0AB04342829078D891F484848483229118D903561A71034",
INIT_22 => x"3439021A39578003226681072561813937800322468112254181393080032239",
INIT_23 => x"C602345F20078B022F3981308B0F840235048D4444444402340235028D023510",
INIT_24 => x"8610343F207F84048D0627E2DF7D8235F1265A4D8D518D2D860225E46880A608",
INIT_25 => x"3501A6E0DF9FA75186EE27018584A620E08E0926018584A6E0DFBEE0DF9FA711",
INIT_26 => x"1234498D2086008D8235018520E0B605260185E0DF9FA6E0DF9FA71186023490",
INIT_27 => x"84A7518684A70386E0DFBE138D903501A70235F6260885FA27028584A6E0DFBE",
INIT_28 => x"DF7F01E702C6FDDFFD04E703E702A7FBDFFD0000CC30E08E39E2DFB7FF86016D",
INIT_29 => x"1784A70520098D042420810D20608D0427FEDF7D30E08E16345986028D1B86FE",
INIT_2a => x"24270C81890027100D81382716817C0027101A815A271B81342708819635AF00",
INIT_2b => x"27FBDFB66D205A34275DFBDFFC8F0016792619C15CFBDFFC45260A810F270B81",
INIT_2c => x"54816E27598114273DC1FEDFF656200000CC5820212750814CFBDFB662204A2C",
INIT_2d => x"ED224F812080FEDF7F39FDDFB70426FDDF7D39FEDF7F39FEDFB704263D813127",
INIT_2e => x"26508102A74C84E720C6FBDFB6168D0000CC1B20E12218C120C0FDDF7FFDDFF6",
INIT_2f => x"5AEA2619C15C4FF02650814CFBDFFC3903E702A7FBDFFDFCDFF64F39FEDF7FF7",
INIT_30 => x"FCDFF6F42650C15C84A702E7FBDFF72086FBDFF604E75F012519C15C04E6E78D",
INIT_31 => x"7FFB0369FB0274FB0139FEDFF702E7FBDFF75FE4205F03E7FCDFF7082719C15C",
INIT_32 => x"F84DBCFA505EFA4CA5F847FDF8455CF94248FB1953FB183DFB1531FB105EFB04",
INIT_33 => x"000A0DFFFFFFFF94F9A7F8A7F8A7F8A7F894F9D5F94488F958F1F853EDFB52A8",
INIT_34 => x"4B04202D2020303033582D354220524F4620362E312047554239305359530000",
INIT_35 => x"2020043D43502020043D5053202004202D20043F54414857043E040000000A0D",
INIT_36 => x"043D422020043D412020043D50442020043D58492020043D59492020043D5355",
INIT_37 => x"000000000000000000000000000004315343565A4E4948464504203A43432020",
INIT_38 => x"300B2784AC1084AF1084EEAA558E10A0D08E84A7F086FB264A80A70F86F0FF8E",
INIT_39 => x"2DA7D0DF8E10C0DFCE10FDFFB74444444443101F84EFD620ED26A0F08C00F089",
INIT_3a => x"1084AF10AA558E1084EE2227A0F08C00F08930FB2A4AA66F0C862FA7F0862E6F",
INIT_3b => x"2EA7D0DF8E10F186D520A5A70F88891F44444444101FD0DF8E1084EFE92684AC",
INIT_3c => x"8EF32D0C814C80E7A66F0427A6E6211F4F2CE7A66F1420F92A4A0526A6E60C86",
INIT_3d => x"9F6EC6DF9F6EC4DF9F6EC0DF9F6E62F816E2DFF753F9265A80A7A0A610C6F0FF",
INIT_3e => x"0822CEDFBC8B300F27FFFF8CCCDFBE49584F4AAF80E64AAE431FCADF9F6EC8DF",
INIT_3f => x"00FFB2FFC2FFBEFFBAFFB6FFC6FFB2FFC2DF9F6E42EE1F37F16E44AEC4EC1034"
)
port map (
clk => clk,
ssr => rst,
en => en(0),
we => we,
addr => addr(10 downto 0),
di => wdata,
dip(0) => dp(0),
do => xdata(0),
dop(0) => dp(0)
);
rom_glue: process (cs, rw, addr, xdata)
begin
en(0) <= cs;
rdata <= xdata(0);
we <= not rw;
end process;
end architecture rtl;
 
/trunk/rtl/Spartan2/sys09b3s_b4.vhd
0,0 → 1,238
--===========================================================================--
-- --
-- Sys09bug Monitor ROM using 4KBit Block RAMs found in the Spartan 2 --
-- --
--===========================================================================--
--
-- File name : Sys09b3s_b4.vhd
--
-- Entity name : SYS09BUG_F8000
--
-- Purpose : Sys09bug Monitor Program using 4KBit Block RAMs
-- For the System09 6809 compatible System on a Chip
-- Used on the BurchED B3 and B5-X300 Spartan 2 boards.
--
-- Dependencies : ieee.Std_Logic_1164
-- ieee.std_logic_arith
--
-- Author : John E. Kent
-- dilbert57@opencores.org
--
-- Memory Map : Sys09Bug monitor ROM assumes the following memory map
--
-- $0000 - $DFFF System RAM (256K Mapped via DAT)
-- $E000 - $E00F ACIA (SWTPc)
-- $E020 - $E02F Keyboard
-- $E030 - $E03F VDU
-- $E0A0 - $E0AF SPP Printer Port
-- $E100 - $E13F IDE / Compact Flash Card
-- $F800 - $FFFF Sys09bug ROM (Read only)
-- $FFF0 - $FFFF DAT - Dynamic Address Translation (Write Only)
--
-- Copyright (C) 2003 - 2010 John Kent
--
-- This program 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 program 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/>.
--
--===========================================================================----
--
-- Revision History:
--===========================================================================--
--
-- Version Date Author Comments
--
-- 0.1 2003-??-?? John Kent Initial Version
-- 0.2 2010-08-27 John Kent Added header
--
 
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
library unisim;
use unisim.vcomponents.all;
 
entity SYS09BUG_F800 is
port(
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
addr : in std_logic_vector(10 downto 0);
rw : in std_logic;
data_in : in std_logic_vector(7 downto 0);
data_out : out std_logic_vector(7 downto 0)
);
end SYS09BUG_F800;
 
architecture rtl of SYS09BUG_F800 is
 
type data_array is array(0 to 3) of std_logic_vector(7 downto 0);
signal xdata : data_array;
signal en : std_logic_vector(3 downto 0);
signal we : std_logic;
 
component RAMB4_S8
generic (
INIT_00, INIT_01, INIT_02, INIT_03,
INIT_04, INIT_05, INIT_06, INIT_07,
INIT_08, INIT_09, INIT_0A, INIT_0B,
INIT_0C, INIT_0D, INIT_0E, INIT_0F : bit_vector (255 downto 0)
);
port (
clk, we, en, rst : in std_logic;
addr : in std_logic_vector(8 downto 0);
di : in std_logic_vector(7 downto 0);
do : out std_logic_vector(7 downto 0)
);
end component RAMB4_S8;
 
begin
 
ROM00: RAMB4_S8
generic map (
INIT_00 => x"A780A610C6C0DF8E106DFE8E2EFA1AFB1EFB8FFBDCFCC1FC97FC9DFC61F814F8",
INIT_01 => x"17431FE4A7D0866AAFDD8C30FB265AE26F0CC65B0117E0DFBF00E08EF9265AA0",
INIT_02 => x"03179EFE8E0C0417F62A5A19048B0327856D0DC64FD0DF8E4703177DFE8EB104",
INIT_03 => x"17408B981F6104175E86092C2081891FF1270D817F84330417B30217A5FE8E2E",
INIT_04 => x"20F00217A7FE8EF5266DFE8C02300F2780E137FE8E20C0022F60C15504175A04",
INIT_05 => x"17A4A61D0417A50317211F650217ADFE8E121F2D296B03173B341FBC2094ADC0",
INIT_06 => x"27A4A1A4A7390F260D8117275E81DD271881E127088111285E0317150417A503",
INIT_07 => x"0B031705201F30C0DF8E321FA20217BE203F31C2202131F303173F86F6031708",
INIT_08 => x"27A203170527E4AC011FF0C4201F0634F0C41000C3101F390124E1AC20340629",
INIT_09 => x"265A9C03172C031780A610C6A403172E0317E4AEEE0117ADFE8E103439623203",
INIT_0a => x"29B70217BC20EE265A8503172E8602237E810425208180A610C6E1AE940317F5",
INIT_0b => x"3984A73F86A4AFA0A709273F8184A60F271035558DFFFF8E10341A24C0DF8C1E",
INIT_0c => x"4AAF0427268D1F304AAE431F39FB265A188D08C6E3DF8E105403163F86570317",
INIT_0d => x"A7A0A7A0A7FF8684A7A4A604263F8184A60A24C0DF8C21AEB9FE16480217068D",
INIT_0e => x"E1FD0200CC1EE1FD0600CC393D3139F7265A0427A1ACA0A608C6E3DF8E1039A0",
INIT_0f => x"178D0EE1FD20C60AE1FD08E1FD06E1FD5F04E1FD0100CC2E8D0CE1FDE000CC1E"
)
port map (
clk => clk,
en => en(0),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(0)
);
 
ROM01: RAMB4_S8
generic map (
INIT_00 => x"E1FCF92680C50EE1FC3B341F4AAF00C08EF42600C18C80E700E1FC218D00C08E",
INIT_01 => x"54545454A6E6D0DF8E104444444462A6363439F92708C50EE1FC39F22740C50E",
INIT_02 => x"FCBD8435FD265A20C60434B63562E762EA62A70F8462A65858585853A6E6E4E7",
INIT_03 => x"0234A80117F12631813D2739811F0217F9265381260217E2DF7F7602171186F5",
INIT_04 => x"E0EB02340C2904358E01170434E46AE46AE4EBE0EBE0E6103421299101172629",
INIT_05 => x"0117E26F2002161386E2DF732802173F86BA27FFC102355FEB2080A70527E46A",
INIT_06 => x"2320008310062762A3E4EC0702171286F5FCBDE4AF0130492562AC4D2930344A",
INIT_07 => x"1780A684EB63EB62EB68011762AE750117981F03CB2F0017EEFE8E64E720C602",
INIT_08 => x"10347120028D396532C501171486C326E4AC62AF5B0117981F53F526646A6501",
INIT_09 => x"8D618D394AAF0229F68DF28D910017E50016F80016AF011690356900179FFE8E",
INIT_0a => x"498D3944AF0229D58DD18D5E8D3946AF0229E08DDC8D728D3948AF0229EB8DE7",
INIT_0b => x"8D3941A70229B18DB08D588D3942A70229BC8DBB8D6C8D3943A70229C78DC68D",
INIT_0c => x"BF0016311FF48DB1FE8E39F726048180A64D011739C4A7808A0429A68DA58D5F",
INIT_0d => x"8DC3FE8EE12044AED78DC9FE8EB4001643A6E18DCFFE8EF42048AEEA8DBDFE8E",
INIT_0e => x"D02042A6B38DDAFE8ED92041A6BC8DD5FE8ECF204AAEC58DB7FE8ED82046AECE",
INIT_0f => x"ADFE8EBF8DB88DB08DA98DA18D27FF17ADFE8E900016E6FE8EC4A6AA8DDFFE8E"
)
port map (
clk => clk,
en => en(1),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(1)
);
 
ROM02: RAMB4_S8
generic map (
INIT_00 => x"3C29088D011F42290E8DC600172D86121F4D29098DD520CE8DC78DC08D17FF17",
INIT_01 => x"811D253081578D39E0AB04342829078D891F484848483229118D903561A71034",
INIT_02 => x"3439021A39578003226681072561813937800322468112254181393080032239",
INIT_03 => x"C602345F20078B022F3981308B0F840235048D4444444402340235028D023510",
INIT_04 => x"8610343F207F84048D0627E2DF7D8235F1265A4D8D518D2D860225E46880A608",
INIT_05 => x"3501A6E0DF9FA75186EE27018584A620E08E0926018584A6E0DFBEE0DF9FA711",
INIT_06 => x"1234498D2086008D8235018520E0B605260185E0DF9FA6E0DF9FA71186023490",
INIT_07 => x"84A7518684A70386E0DFBE138D903501A70235F6260885FA27028584A6E0DFBE",
INIT_08 => x"DF7F01E702C6FDDFFD04E703E702A7FBDFFD0000CC30E08E39E2DFB7FF86016D",
INIT_09 => x"1784A70520098D042420810D20608D0427FEDF7D30E08E16345986028D1B86FE",
INIT_0a => x"24270C81890027100D81382716817C0027101A815A271B81342708819635AF00",
INIT_0b => x"27FBDFB66D205A34275DFBDFFC8F0016792619C15CFBDFFC45260A810F270B81",
INIT_0c => x"54816E27598114273DC1FEDFF656200000CC5820212750814CFBDFB662204A2C",
INIT_0d => x"ED224F812080FEDF7F39FDDFB70426FDDF7D39FEDF7F39FEDFB704263D813127",
INIT_0e => x"26508102A74C84E720C6FBDFB6168D0000CC1B20E12218C120C0FDDF7FFDDFF6",
INIT_0f => x"5AEA2619C15C4FF02650814CFBDFFC3903E702A7FBDFFDFCDFF64F39FEDF7FF7"
)
port map (
clk => clk,
en => en(2),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(2)
);
 
ROM03: RAMB4_S8
generic map (
INIT_00 => x"FCDFF6F42650C15C84A702E7FBDFF72086FBDFF604E75F012519C15C04E6E78D",
INIT_01 => x"7FFB0369FB0274FB0139FEDFF702E7FBDFF75FE4205F03E7FCDFF7082719C15C",
INIT_02 => x"F84DBCFA505EFA4CA5F847FDF8455CF94248FB1953FB183DFB1531FB105EFB04",
INIT_03 => x"000A0DFFFFFFFF94F9A7F8A7F8A7F8A7F894F9D5F94488F958F1F853EDFB52A8",
INIT_04 => x"0D4B04202D20202B32532D334220524F4620362E312047554239305359530000",
INIT_05 => x"552020043D43502020043D5053202004202D20043F54414857043E040000000A",
INIT_06 => x"20043D422020043D412020043D50442020043D58492020043D59492020043D53",
INIT_07 => x"00000000000000000000000000000004315343565A4E4948464504203A434320",
INIT_08 => x"300B2784AC1084AF1084EEAA558E10A0D08E84A7F086FB264A80A70F86F0FF8E",
INIT_09 => x"2DA7D0DF8E10C0DFCE10FDFFB74444444443101F84EFD620ED26A0F08C00F089",
INIT_0a => x"1084AF10AA558E1084EE2227A0F08C00F08930FB2A4AA66F0C862FA7F0862E6F",
INIT_0b => x"2EA7D0DF8E10F186D520A5A70F88891F44444444101FD0DF8E1084EFE92684AC",
INIT_0c => x"8EF32D0C814C80E7A66F0427A6E6211F4F2CE7A66F1420F92A4A0526A6E60C86",
INIT_0d => x"9F6EC6DF9F6EC4DF9F6EC0DF9F6E62F816E2DFF753F9265A80A7A0A610C6F0FF",
INIT_0e => x"0822CEDFBC8B300F27FFFF8CCCDFBE49584F4AAF80E64AAE431FCADF9F6EC8DF",
INIT_0f => x"00FFB2FFC2FFBEFFBAFFB6FFC6FFB2FFC2DF9F6E42EE1F37F16E44AEC4EC1034"
)
port map (
clk => clk,
en => en(3),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(3)
);
 
rom_glue: process (cs, rw, addr, xdata)
begin
en <= (others=>'0');
case addr(10 downto 9) is
when "00" =>
en(0) <= cs;
data_out <= xdata(0);
when "01" =>
en(1) <= cs;
data_out <= xdata(1);
when "10" =>
en(2) <= cs;
data_out <= xdata(2);
when "11" =>
en(3) <= cs;
data_out <= xdata(3);
when others =>
null;
end case;
we <= not rw;
end process;
end architecture rtl;
 
/trunk/rtl/Spartan2/sys09bug_b3s_rom2k_b4.vhd
0,0 → 1,218
--
-- sys09b3s_rom2k_b4.vhd
--
-- SYS09BUG Monitor ROM for the B3-S2+ 6809
-- Using 4 x RAMB4_S8 in the XC2S200
--
-- John Kent
-- 3rd February 2007
-- Has the same entity name as SBUG so
-- it can be easily exchanged.
--
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
library unisim;
use unisim.vcomponents.all;
 
entity mon_rom is
Port (
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
rw : in std_logic;
addr : in std_logic_vector (10 downto 0);
wdata : in std_logic_vector (7 downto 0);
rdata : out std_logic_vector (7 downto 0)
);
end mon_rom;
 
architecture rtl of mon_rom is
 
signal rdata0 : std_logic_vector (7 downto 0);
signal rdata1 : std_logic_vector (7 downto 0);
signal rdata2 : std_logic_vector (7 downto 0);
signal rdata3 : std_logic_vector (7 downto 0);
 
signal ena0 : std_logic;
signal ena1 : std_logic;
signal ena2 : std_logic;
signal ena3 : std_logic;
 
signal we : std_logic;
 
component RAMB4_S8
generic (
INIT_00, INIT_01, INIT_02, INIT_03,
INIT_04, INIT_05, INIT_06, INIT_07,
INIT_08, INIT_09, INIT_0A, INIT_0B,
INIT_0C, INIT_0D, INIT_0E, INIT_0F : bit_vector (255 downto 0)
);
 
port (
clk, we, en, rst : in std_logic;
addr : in std_logic_vector(8 downto 0);
di : in std_logic_vector(7 downto 0);
do : out std_logic_vector(7 downto 0)
);
end component RAMB4_S8;
 
begin
 
ROM0 : RAMB4_S8
generic map (
INIT_00 => x"A780A610C6C0DF8E106DFE8E2EFA1AFB1EFB8FFBCAFCB5FC97FC9DFC61F814F8",
INIT_01 => x"17431FE4A7D0866AAFDD8C30FB265AE26F0CC65B0117E0DFBF00E08EF9265AA0",
INIT_02 => x"03179EFE8E0C0417F62A5A19048B0327856D0DC64FD0DF8E4703177DFE8E9B04",
INIT_03 => x"17408B981F4F04175E86092C2081891FF1270D817F84330417B30217A5FE8E2E",
INIT_04 => x"20F00217A7FE8EF5266DFE8C02300F2780E137FE8E20C0022F60C14304174804",
INIT_05 => x"17A4A60B0417A50317211F650217ADFE8E121F2D296B03173B341FBC2094ADC0",
INIT_06 => x"27A4A1A4A7390F260D8117275E81DD271881E127088111285E0317030417A503",
INIT_07 => x"0B031705201F30C0DF8E321FA20217BE203F31C2202131E103173F86E4031708",
INIT_08 => x"279603170527E4AC011FF0C4201F0634F0C41000C3101F390124E1AC20340629",
INIT_09 => x"265A8A03172C031780A610C69203172E0317E4AEEE0117ADFE8E103439623203",
INIT_0a => x"29B70217BC20EE265A7303172E8602237E810425208180A610C6E1AE820317F5",
INIT_0b => x"3984A73F86A4AFA0A709273F8184A60F271035558DFFFF8E10341A24C0DF8C1E",
INIT_0c => x"4AAF0427268D1F304AAE431F39FB265A188D08C6E3DF8E104203163F86450317",
INIT_0d => x"A7A0A7A0A7FF8684A7A4A604263F8184A60A24C0DF8C21AEB9FE16480217068D",
INIT_0e => x"E1FD0200CC1EE1FD0600CC393D3139F7265A0427A1ACA0A608C6E3DF8E1039A0",
INIT_0f => x"178D0EE1FD20C60AE1FD08E1FD06E1FD5F04E1FD0100CC2E8D0CE1FDE000CC1E"
)
 
port map (
clk => clk,
en => ena0,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata0
);
 
ROM1 : RAMB4_S8
generic map (
INIT_00 => x"E1FCF92680C50EE1FC3B341F4AAF00C08EF42600C18C80E700E1FC218D00C08E",
INIT_01 => x"54545454A6E6D0DF8E104444444462A6363439F92708C50EE1FC39F22740C50E",
INIT_02 => x"FCBD8435FD265A20C60434B63562E762EA62A70F8462A65858585853A6E6E4E7",
INIT_03 => x"0234A80117F12631813D2739811F0217F9265381260217E2DF7F6402171186DF",
INIT_04 => x"E0EB02340C2904358E01170434E46AE46AE4EBE0EBE0E6103421299101172629",
INIT_05 => x"0117E26F0E02161386E2DF731602173F86BA27FFC102355FEB2080A70527E46A",
INIT_06 => x"2320008310062762A3E4ECF501171286DFFCBDE4AF0130492562AC4D2930344A",
INIT_07 => x"1780A684EB63EB62EB68011762AE750117981F03CB2F0017EEFE8E64E720C602",
INIT_08 => x"10347120028D396532B301171486C326E4AC62AF5B0117981F53F526646A6501",
INIT_09 => x"8D618D394AAF0229F68DF28D910017E50016F800169D011690356900179FFE8E",
INIT_0a => x"498D3944AF0229D58DD18D5E8D3946AF0229E08DDC8D728D3948AF0229EB8DE7",
INIT_0b => x"8D3941A70229B18DB08D588D3942A70229BC8DBB8D6C8D3943A70229C78DC68D",
INIT_0c => x"BF0016311FF48DB1FE8E39F726048180A63B011739C4A7808A0429A68DA58D5F",
INIT_0d => x"8DC3FE8EE12044AED78DC9FE8EB4001643A6E18DCFFE8EF42048AEEA8DBDFE8E",
INIT_0e => x"D02042A6B38DDAFE8ED92041A6BC8DD5FE8ECF204AAEC58DB7FE8ED82046AECE",
INIT_0f => x"ADFE8EBF8DB88DB08DA98DA18D27FF17ADFE8E900016E6FE8EC4A6AA8DDFFE8E"
)
 
port map (
clk => clk,
en => ena1,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata1
);
 
ROM2 : RAMB4_S8
generic map (
INIT_00 => x"3C29088D011F42290E8DB400172D86121F4D29098DD520CE8DC78DC08D17FF17",
INIT_01 => x"811D253081578D39E0AB04342829078D891F484848483229118D903561A71034",
INIT_02 => x"3439021A39578003226681072561813937800322468112254181393080032239",
INIT_03 => x"C602344D20078B022F3981308B0F840235048D4444444402340235028D023510",
INIT_04 => x"BE10342D207F84048D0627E2DF7D8235F1265A3B8D3F8D2D860225E46880A608",
INIT_05 => x"B605260185E0DF9FA60234903501A6EE27018584A620E08E0926018584A6E0DF",
INIT_06 => x"BE138D903501A70235FA27028584A6E0DFBE1234458D2086008D8235018520E0",
INIT_07 => x"E703E702A7FBDFFD0000CC30E08E39E2DFB7FF86016D84A7118684A70386E0DF",
INIT_08 => x"810D20748D0427FEDF7D30E08E16345986028D1B86FEDF7F01E702C6FDDFFD04",
INIT_09 => x"8E0027101A816C0027101B814100271008819635C5001784A70520098D042420",
INIT_0a => x"5CFBDFFC51260A81110027100B812C0027100C81990027100D81450027101681",
INIT_0b => x"DFB66800164A3327FBDFB67400165A3C0027105DFBDFFC9900168300261019C1",
INIT_0c => x"54816E002710598116273DC1FEDFF65800160000CC5B00162500271050814CFB",
INIT_0d => x"ED224F812080FEDF7F39FDDFB70426FDDF7D39FEDF7F39FEDFB704263D813127",
INIT_0e => x"26508102A74C84E720C6FBDFB6168D0000CC1B20E12218C120C0FDDF7FFDDFF6",
INIT_0f => x"5AEA2619C15C4FF02650814CFBDFFC3903E702A7FBDFFDFCDFF64F39FEDF7FF7"
)
 
port map (
clk => clk,
en => ena2,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata2
);
 
ROM3 : RAMB4_S8
generic map (
INIT_00 => x"FCDFF6F42650C15C84A702E7FBDFF72086FBDFF604E75F012519C15C04E6E78D",
INIT_01 => x"7FFB0369FB0274FB0139FEDFF702E7FBDFF75FE4205F03E7FCDFF7082719C15C",
INIT_02 => x"F84DBCFA505EFA4CA5F847FDF8455CF94248FB1953FB183DFB1531FB105EFB04",
INIT_03 => x"000A0DFFFFFFFF94F9A7F8A7F8A7F8A7F894F9D5F94488F958F1F853EDFB52A8",
INIT_04 => x"0D4B04202D20202B32532D334220524F4620342E312047554239305359530000",
INIT_05 => x"552020043D43502020043D5053202004202D20043F54414857043E040000000A",
INIT_06 => x"20043D422020043D412020043D50442020043D58492020043D59492020043D53",
INIT_07 => x"00000000000000000000000000000004315343565A4E4948464504203A434320",
INIT_08 => x"300B2784AC1084AF1084EEAA558E10A0D08E84A7F086FB264A80A70F86F0FF8E",
INIT_09 => x"2DA7D0DF8E10C0DFCE10FDFFB74444444443101F84EFD620ED26A0F08C00F089",
INIT_0a => x"1084AF10AA558E1084EE2227A0F08C00F08930FB2A4AA66F0C862FA7F0862E6F",
INIT_0b => x"2EA7D0DF8E10F186D520A5A70F88891F44444444101FD0DF8E1084EFE92684AC",
INIT_0c => x"8EF32D0C814C80E7A66F0427A6E6211F4F2CE7A66F1420F92A4A0526A6E60C86",
INIT_0d => x"9F6EC6DF9F6EC4DF9F6EC0DF9F6E62F816E2DFF753F9265A80A7A0A610C6F0FF",
INIT_0e => x"0822CEDFBC8B300F27FFFF8CCCDFBE49584F4AAF80E64AAE431FCADF9F6EC8DF",
INIT_0f => x"00FFB2FFC2FFBEFFBAFFB6FFC6FFB2FFC2DF9F6E42EE1F37F16E44AEC4EC1034"
)
 
port map (
clk => clk,
en => ena3,
we => we,
rst => rst,
addr(8 downto 0) => addr(8 downto 0),
di(7 downto 0) => wdata,
do(7 downto 0) => rdata3
);
 
my_sys09bug_b4 : process ( cs, rw, addr, rdata0, rdata1, rdata2, rdata3 )
begin
case addr(10 downto 9) is
when "00" =>
ena0 <= cs;
ena1 <= '0';
ena2 <= '0';
ena3 <= '0';
rdata <= rdata0;
when "01" =>
ena0 <= '0';
ena1 <= cs;
ena2 <= '0';
ena3 <= '0';
rdata <= rdata1;
when "10" =>
ena0 <= '0';
ena1 <= '0';
ena2 <= cs;
ena3 <= '0';
rdata <= rdata2;
when "11" =>
ena0 <= '0';
ena1 <= '0';
ena2 <= '0';
ena3 <= cs;
rdata <= rdata3;
when others =>
null;
end case;
 
we <= not rw;
 
end process;
 
end architecture rtl;
 
/trunk/rtl/Spartan2/sys09b5x_b4.vhd
0,0 → 1,238
--===========================================================================--
-- --
-- Sys09bug Monitor ROM using 4KBit Block RAMs found in the Spartan 2 --
-- --
--===========================================================================--
--
-- File name : Sys09b5x_b4.vhd
--
-- Entity name : SYS09BUG_F8000
--
-- Purpose : Sys09bug Monitor Program using 4KBit Block RAMs
-- For the System09 6809 compatible System on a Chip
-- Used on the BurchED B5-X300 Spartan 2 boards.
--
-- Dependencies : ieee.Std_Logic_1164
-- ieee.std_logic_arith
--
-- Author : John E. Kent
-- dilbert57@opencores.org
--
-- Memory Map : Sys09Bug monitor ROM assumes the following memory map
--
-- $0000 - $DFFF System RAM (256K Mapped via DAT)
-- $E000 - $E00F ACIA (SWTPc)
-- $E020 - $E02F Keyboard
-- $E030 - $E03F VDU
-- $E0A0 - $E0AF SPP Printer Port
-- $E100 - $E13F IDE / Compact Flash Card
-- $F800 - $FFFF Sys09bug ROM (Read only)
-- $FFF0 - $FFFF DAT - Dynamic Address Translation (Write Only)
--
-- Copyright (C) 2003 - 2010 John Kent
--
-- This program 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 program 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/>.
--
--===========================================================================----
--
-- Revision History:
--===========================================================================--
--
-- Version Date Author Comments
--
-- 0.1 2003-??-?? John Kent Initial Version
-- 0.2 2010-09-05 John Kent Added header
--
 
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
library unisim;
use unisim.vcomponents.all;
 
entity SYS09BUG_F800 is
port(
clk : in std_logic;
rst : in std_logic;
cs : in std_logic;
addr : in std_logic_vector(10 downto 0);
rw : in std_logic;
data_in : in std_logic_vector(7 downto 0);
data_out : out std_logic_vector(7 downto 0)
);
end SYS09BUG_F800;
 
architecture rtl of SYS09BUG_F800 is
 
type data_array is array(0 to 3) of std_logic_vector(7 downto 0);
signal xdata : data_array;
signal en : std_logic_vector(3 downto 0);
signal we : std_logic;
 
component RAMB4_S8
generic (
INIT_00, INIT_01, INIT_02, INIT_03,
INIT_04, INIT_05, INIT_06, INIT_07,
INIT_08, INIT_09, INIT_0A, INIT_0B,
INIT_0C, INIT_0D, INIT_0E, INIT_0F : bit_vector (255 downto 0)
);
port (
clk, we, en, rst : in std_logic;
addr : in std_logic_vector(8 downto 0);
di : in std_logic_vector(7 downto 0);
do : out std_logic_vector(7 downto 0)
);
end component RAMB4_S8;
 
begin
 
ROM00: RAMB4_S8
generic map (
INIT_00 => x"A780A610C6C0DF8E106DFE8E2EFA1AFB1EFB8FFBDCFCC1FC97FC9DFC61F814F8",
INIT_01 => x"17431FE4A7D0866AAFDD8C30FB265AE26F0CC65B0117E0DFBF00E08EF9265AA0",
INIT_02 => x"03179FFE8E0C0417F62A5A19048B0327856D0DC64FD0DF8E4703177DFE8EB104",
INIT_03 => x"17408B981F6104175E86092C2081891FF1270D817F84330417B30217A6FE8E2E",
INIT_04 => x"20F00217A8FE8EF5266DFE8C02300F2780E137FE8E20C0022F60C15504175A04",
INIT_05 => x"17A4A61D0417A50317211F650217AEFE8E121F2D296B03173B341FBC2094ADC0",
INIT_06 => x"27A4A1A4A7390F260D8117275E81DD271881E127088111285E0317150417A503",
INIT_07 => x"0B031705201F30C0DF8E321FA20217BE203F31C2202131F303173F86F6031708",
INIT_08 => x"27A203170527E4AC011FF0C4201F0634F0C41000C3101F390124E1AC20340629",
INIT_09 => x"265A9C03172C031780A610C6A403172E0317E4AEEE0117AEFE8E103439623203",
INIT_0a => x"29B70217BC20EE265A8503172E8602237E810425208180A610C6E1AE940317F5",
INIT_0b => x"3984A73F86A4AFA0A709273F8184A60F271035558DFFFF8E10341A24C0DF8C1E",
INIT_0c => x"4AAF0427268D1F304AAE431F39FB265A188D08C6E3DF8E105403163F86570317",
INIT_0d => x"A7A0A7A0A7FF8684A7A4A604263F8184A60A24C0DF8C21AEB9FE16480217068D",
INIT_0e => x"0186398D46E0B7E086408D393D3139F7265A0427A1ACA0A608C6E3DF8E1039A0",
INIT_0f => x"178D47E0B7208645E0B744E0B743E0B74F42E0B701862D8D47E0B7EF8641E0B7"
)
port map (
clk => clk,
en => en(0),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(0)
);
 
ROM01: RAMB4_S8
generic map (
INIT_00 => x"E0B6F926808547E0B63B341F4AAF00C08EF42600C28C80A740E0B6218D00C08E",
INIT_01 => x"54545454A6E6D0DF8E104444444462A6363439F927088547E0B639F227408547",
INIT_02 => x"FCBD8435FD265A20C60434B63562E762EA62A70F8462A65858585853A6E6E4E7",
INIT_03 => x"0234A80117F12631813D2739811F0217F9265381260217E2DF7F7602171186F5",
INIT_04 => x"E0EB02340C2904358E01170434E46AE46AE4EBE0EBE0E6103421299101172629",
INIT_05 => x"0117E26F2002161386E2DF732802173F86BA27FFC102355FEB2080A70527E46A",
INIT_06 => x"2320008310062762A3E4EC0702171286F5FCBDE4AF0130492562AC4D2930344A",
INIT_07 => x"1780A684EB63EB62EB68011762AE750117981F03CB2F0017EFFE8E64E720C602",
INIT_08 => x"10347120028D396532C501171486C326E4AC62AF5B0117981F53F526646A6501",
INIT_09 => x"8D618D394AAF0229F68DF28D910017E50016F80016AF01169035690017A0FE8E",
INIT_0a => x"498D3944AF0229D58DD18D5E8D3946AF0229E08DDC8D728D3948AF0229EB8DE7",
INIT_0b => x"8D3941A70229B18DB08D588D3942A70229BC8DBB8D6C8D3943A70229C78DC68D",
INIT_0c => x"BF0016311FF48DB2FE8E39F726048180A64D011739C4A7808A0429A68DA58D5F",
INIT_0d => x"8DC4FE8EE12044AED78DCAFE8EB4001643A6E18DD0FE8EF42048AEEA8DBEFE8E",
INIT_0e => x"D02042A6B38DDBFE8ED92041A6BC8DD6FE8ECF204AAEC58DB8FE8ED82046AECE",
INIT_0f => x"AEFE8EBF8DB88DB08DA98DA18D27FF17AEFE8E900016E7FE8EC4A6AA8DE0FE8E"
)
port map (
clk => clk,
en => en(1),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(1)
);
 
ROM02: RAMB4_S8
generic map (
INIT_00 => x"3C29088D011F42290E8DC600172D86121F4D29098DD520CE8DC78DC08D17FF17",
INIT_01 => x"811D253081578D39E0AB04342829078D891F484848483229118D903561A71034",
INIT_02 => x"3439021A39578003226681072561813937800322468112254181393080032239",
INIT_03 => x"C602345F20078B022F3981308B0F840235048D4444444402340235028D023510",
INIT_04 => x"8610343F207F84048D0627E2DF7D8235F1265A4D8D518D2D860225E46880A608",
INIT_05 => x"3501A6E0DF9FA75186EE27018584A620E08E0926018584A6E0DFBEE0DF9FA711",
INIT_06 => x"1234498D2086008D8235018520E0B605260185E0DF9FA6E0DF9FA71186023490",
INIT_07 => x"84A7518684A70386E0DFBE138D903501A70235F6260885FA27028584A6E0DFBE",
INIT_08 => x"DF7F01E702C6FDDFFD04E703E702A7FBDFFD0000CC30E08E39E2DFB7FF86016D",
INIT_09 => x"1784A70520098D042420810D20608D0427FEDF7D30E08E16345986028D1B86FE",
INIT_0a => x"24270C81890027100D81382716817C0027101A815A271B81342708819635AF00",
INIT_0b => x"27FBDFB66D205A34275DFBDFFC8F0016792619C15CFBDFFC45260A810F270B81",
INIT_0c => x"54816E27598114273DC1FEDFF656200000CC5820212750814CFBDFB662204A2C",
INIT_0d => x"ED224F812080FEDF7F39FDDFB70426FDDF7D39FEDF7F39FEDFB704263D813127",
INIT_0e => x"26508102A74C84E720C6FBDFB6168D0000CC1B20E12218C120C0FDDF7FFDDFF6",
INIT_0f => x"5AEA2619C15C4FF02650814CFBDFFC3903E702A7FBDFFDFCDFF64F39FEDF7FF7"
)
port map (
clk => clk,
en => en(2),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(2)
);
 
ROM03: RAMB4_S8
generic map (
INIT_00 => x"FCDFF6F42650C15C84A702E7FBDFF72086FBDFF604E75F012519C15C04E6E78D",
INIT_01 => x"7FFB0369FB0274FB0139FEDFF702E7FBDFF75FE4205F03E7FCDFF7082719C15C",
INIT_02 => x"F84DBCFA505EFA4CA5F847FDF8455CF94248FB1953FB183DFB1531FB105EFB04",
INIT_03 => x"000A0DFFFFFFFF94F9A7F8A7F8A7F8A7F894F9D5F94488F958F1F853EDFB52A8",
INIT_04 => x"4B04202D2020303033582D354220524F4620362E312047554239305359530000",
INIT_05 => x"2020043D43502020043D5053202004202D20043F54414857043E040000000A0D",
INIT_06 => x"043D422020043D412020043D50442020043D58492020043D59492020043D5355",
INIT_07 => x"000000000000000000000000000004315343565A4E4948464504203A43432020",
INIT_08 => x"300B2784AC1084AF1084EEAA558E10A0D08E84A7F086FB264A80A70F86F0FF8E",
INIT_09 => x"2DA7D0DF8E10C0DFCE10FDFFB74444444443101F84EFD620ED26A0F08C00F089",
INIT_0a => x"1084AF10AA558E1084EE2227A0F08C00F08930FB2A4AA66F0C862FA7F0862E6F",
INIT_0b => x"2EA7D0DF8E10F186D520A5A70F88891F44444444101FD0DF8E1084EFE92684AC",
INIT_0c => x"8EF32D0C814C80E7A66F0427A6E6211F4F2CE7A66F1420F92A4A0526A6E60C86",
INIT_0d => x"9F6EC6DF9F6EC4DF9F6EC0DF9F6E62F816E2DFF753F9265A80A7A0A610C6F0FF",
INIT_0e => x"0822CEDFBC8B300F27FFFF8CCCDFBE49584F4AAF80E64AAE431FCADF9F6EC8DF",
INIT_0f => x"00FFB2FFC2FFBEFFBAFFB6FFC6FFB2FFC2DF9F6E42EE1F37F16E44AEC4EC1034"
)
port map (
clk => clk,
en => en(3),
we => we,
rst => rst,
addr => addr(8 downto 0),
di => data_in,
do => xdata(3)
);
 
rom_glue: process (cs, rw, addr, xdata)
begin
en <= (others=>'0');
case addr(10 downto 9) is
when "00" =>
en(0) <= cs;
data_out <= xdata(0);
when "01" =>
en(1) <= cs;
data_out <= xdata(1);
when "10" =>
en(2) <= cs;
data_out <= xdata(2);
when "11" =>
en(3) <= cs;
data_out <= xdata(3);
when others =>
null;
end case;
we <= not rw;
end process;
end architecture rtl;
 
/trunk/rtl/System09_Terasic_DE1/system09.qsf File deleted \ No newline at end of file
/trunk/rtl/System09_Terasic_DE1/db/system09.sld_design_entry.sci Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream
trunk/rtl/System09_Terasic_DE1/db/system09.sld_design_entry.sci Property changes : Deleted: svn:mime-type ## -1 +0,0 ## -application/octet-stream \ No newline at end of property Index: trunk/rtl/System09_Terasic_DE1/db/system09.eco.cdb =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/rtl/System09_Terasic_DE1/db/system09.eco.cdb =================================================================== --- trunk/rtl/System09_Terasic_DE1/db/system09.eco.cdb (revision 115) +++ trunk/rtl/System09_Terasic_DE1/db/system09.eco.cdb (nonexistent)
trunk/rtl/System09_Terasic_DE1/db/system09.eco.cdb Property changes : Deleted: svn:mime-type ## -1 +0,0 ## -application/octet-stream \ No newline at end of property Index: trunk/rtl/System09_Terasic_DE1/db/system09.db_info =================================================================== --- trunk/rtl/System09_Terasic_DE1/db/system09.db_info (revision 115) +++ trunk/rtl/System09_Terasic_DE1/db/system09.db_info (nonexistent) @@ -1,3 +0,0 @@ -Quartus_Version = Version 9.0 Build 235 06/17/2009 Service Pack 2 SJ Full Version -Version_Index = 167832322 -Creation_Time = Wed Mar 10 17:10:05 2010 Index: trunk/rtl/System09_Terasic_DE1/system09_assignment_defaults.qdf =================================================================== --- trunk/rtl/System09_Terasic_DE1/system09_assignment_defaults.qdf (revision 115) +++ trunk/rtl/System09_Terasic_DE1/system09_assignment_defaults.qdf (nonexistent) @@ -1,642 +0,0 @@ -# -------------------------------------------------------------------------- # -# -# Copyright (C) 1991-2009 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. -# -# -------------------------------------------------------------------------- # -# -# Quartus II -# Version 9.0 Build 235 06/17/2009 Service Pack 2 SJ Full Version -# Date created = 17:10:05 March 10, 2010 -# -# -------------------------------------------------------------------------- # -# -# Note: -# -# 1) Do not modify this file. This file was generated -# automatically by the Quartus II software and is used -# to preserve global assignments across Quartus II versions. -# -# -------------------------------------------------------------------------- # - -set_global_assignment -name PROJECT_SHOW_ENTITY_NAME On -set_global_assignment -name PROJECT_USE_SIMPLIFIED_NAMES Off -set_global_assignment -name ENABLE_REDUCED_MEMORY_MODE Off -set_global_assignment -name VER_COMPATIBLE_DB_DIR export_db -set_global_assignment -name AUTO_EXPORT_VER_COMPATIBLE_DB Off -set_global_assignment -name SMART_RECOMPILE Off -set_global_assignment -name FLOW_DISABLE_ASSEMBLER Off -set_global_assignment -name FLOW_ENABLE_HC_COMPARE Off -set_global_assignment -name HC_OUTPUT_DIR hc_output -set_global_assignment -name SAVE_MIGRATION_INFO_DURING_COMPILATION Off -set_global_assignment -name FLOW_ENABLE_IO_ASSIGNMENT_ANALYSIS Off -set_global_assignment -name RUN_FULL_COMPILE_ON_DEVICE_CHANGE On -set_global_assignment -name FLOW_ENABLE_RTL_VIEWER Off -set_global_assignment -name READ_OR_WRITE_IN_BYTE_ADDRESS "Use global settings" -set_global_assignment -name FLOW_HARDCOPY_DESIGN_READINESS_CHECK On -set_global_assignment -name DEFAULT_HOLD_MULTICYCLE "Same as Multicycle" -set_global_assignment -name CUT_OFF_PATHS_BETWEEN_CLOCK_DOMAINS On -set_global_assignment -name CUT_OFF_READ_DURING_WRITE_PATHS On -set_global_assignment -name CUT_OFF_IO_PIN_FEEDBACK On -set_global_assignment -name DO_COMBINED_ANALYSIS Off -set_global_assignment -name IGNORE_CLOCK_SETTINGS Off -set_global_assignment -name ANALYZE_LATCHES_AS_SYNCHRONOUS_ELEMENTS On -set_global_assignment -name ENABLE_RECOVERY_REMOVAL_ANALYSIS Off -set_global_assignment -name ENABLE_CLOCK_LATENCY Off -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family ACEX1K -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family MAX7000B -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "HardCopy II" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family FLEX10KA -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "Stratix IV" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "Cyclone III" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "HardCopy Stratix" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family APEX20KE -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family MAX7000AE -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family Cyclone -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "Stratix II GX" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family FLEX10K -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "MAX II" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family APEX20KC -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "Arria II GX" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "Stratix GX" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "HardCopy III" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family MAX7000S -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family FLEX6000 -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "APEX II" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family FLEX10KE -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "Cyclone II" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "HardCopy IV" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "Cyclone III LS" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "Stratix III" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER On -family "Arria GX" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family MAX3000A -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family "Stratix II" -set_global_assignment -name USE_TIMEQUEST_TIMING_ANALYZER Off -family Stratix -set_global_assignment -name NUMBER_OF_SOURCES_PER_DESTINATION_TO_REPORT 10 -set_global_assignment -name NUMBER_OF_DESTINATION_TO_REPORT 10 -set_global_assignment -name NUMBER_OF_PATHS_TO_REPORT 200 -set_global_assignment -name DO_MIN_ANALYSIS Off -set_global_assignment -name DO_MIN_TIMING Off -set_global_assignment -name REPORT_IO_PATHS_SEPARATELY Off -set_global_assignment -name FLOW_ENABLE_TIMING_CONSTRAINT_CHECK Off -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family ACEX1K -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family MAX7000B -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "HardCopy II" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family FLEX10KA -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Stratix IV" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Cyclone III" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family "HardCopy Stratix" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family APEX20KE -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family MAX7000AE -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family Cyclone -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Stratix II GX" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family FLEX10K -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family "MAX II" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family APEX20KC -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Arria II GX" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family "Stratix GX" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "HardCopy III" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family MAX7000S -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family FLEX6000 -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family "APEX II" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family FLEX10KE -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Cyclone II" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "HardCopy IV" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Cyclone III LS" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Stratix III" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Arria GX" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family MAX3000A -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS On -family "Stratix II" -set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS Off -family Stratix -set_global_assignment -name TIMEQUEST_DO_REPORT_TIMING Off -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family ACEX1K -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family MAX7000B -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "HardCopy II" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family FLEX10KA -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL On -family "Stratix IV" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL On -family "Cyclone III" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "HardCopy Stratix" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family APEX20KE -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family MAX7000AE -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family Cyclone -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "Stratix II GX" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family FLEX10K -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "MAX II" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family APEX20KC -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL On -family "Arria II GX" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "Stratix GX" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL On -family "HardCopy III" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family MAX7000S -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family FLEX6000 -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "APEX II" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family FLEX10KE -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "Cyclone II" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL On -family "HardCopy IV" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL On -family "Cyclone III LS" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL On -family "Stratix III" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "Arria GX" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family MAX3000A -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family "Stratix II" -set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL Off -family Stratix -set_global_assignment -name MUX_RESTRUCTURE Auto -set_global_assignment -name ENABLE_IP_DEBUG Off -set_global_assignment -name SAVE_DISK_SPACE On -set_global_assignment -name DISABLE_OCP_HW_EVAL Off -set_global_assignment -name DEVICE_FILTER_PACKAGE Any -set_global_assignment -name DEVICE_FILTER_PIN_COUNT Any -set_global_assignment -name DEVICE_FILTER_SPEED_GRADE Any -set_global_assignment -name EDA_DESIGN_ENTRY_SYNTHESIS_TOOL "" -set_global_assignment -name VERILOG_INPUT_VERSION Verilog_2001 -set_global_assignment -name VHDL_INPUT_VERSION VHDL93 -set_global_assignment -name FAMILY "Stratix II" -set_global_assignment -name TRUE_WYSIWYG_FLOW Off -set_global_assignment -name SMART_COMPILE_IGNORES_TDC_FOR_STRATIX_PLL_CHANGES Off -set_global_assignment -name STATE_MACHINE_PROCESSING Auto -set_global_assignment -name SAFE_STATE_MACHINE Off -set_global_assignment -name EXTRACT_VERILOG_STATE_MACHINES On -set_global_assignment -name EXTRACT_VHDL_STATE_MACHINES On -set_global_assignment -name IGNORE_VERILOG_INITIAL_CONSTRUCTS Off -set_global_assignment -name VERILOG_CONSTANT_LOOP_LIMIT 5000 -set_global_assignment -name VERILOG_NON_CONSTANT_LOOP_LIMIT 250 -set_global_assignment -name ADD_PASS_THROUGH_LOGIC_TO_INFERRED_RAMS On -set_global_assignment -name PARALLEL_SYNTHESIS Off -set_global_assignment -name DSP_BLOCK_BALANCING Auto -set_global_assignment -name MAX_BALANCING_DSP_BLOCKS "-1 (Unlimited)" -set_global_assignment -name NOT_GATE_PUSH_BACK On -set_global_assignment -name ALLOW_POWER_UP_DONT_CARE On -set_global_assignment -name REMOVE_REDUNDANT_LOGIC_CELLS Off -set_global_assignment -name REMOVE_DUPLICATE_REGISTERS On -set_global_assignment -name IGNORE_CARRY_BUFFERS Off -set_global_assignment -name IGNORE_CASCADE_BUFFERS Off -set_global_assignment -name IGNORE_GLOBAL_BUFFERS Off -set_global_assignment -name IGNORE_ROW_GLOBAL_BUFFERS Off -set_global_assignment -name IGNORE_LCELL_BUFFERS Off -set_global_assignment -name MAX7000_IGNORE_LCELL_BUFFERS AUTO -set_global_assignment -name IGNORE_SOFT_BUFFERS On -set_global_assignment -name MAX7000_IGNORE_SOFT_BUFFERS Off -set_global_assignment -name LIMIT_AHDL_INTEGERS_TO_32_BITS Off -set_global_assignment -name AUTO_GLOBAL_CLOCK_MAX On -set_global_assignment -name AUTO_GLOBAL_OE_MAX On -set_global_assignment -name MAX_AUTO_GLOBAL_REGISTER_CONTROLS On -set_global_assignment -name AUTO_IMPLEMENT_IN_ROM Off -set_global_assignment -name APEX20K_TECHNOLOGY_MAPPER Lut -set_global_assignment -name OPTIMIZATION_TECHNIQUE Balanced -set_global_assignment -name STRATIXII_OPTIMIZATION_TECHNIQUE Balanced -set_global_assignment -name CYCLONE_OPTIMIZATION_TECHNIQUE Balanced -set_global_assignment -name CYCLONEII_OPTIMIZATION_TECHNIQUE Balanced -set_global_assignment -name STRATIX_OPTIMIZATION_TECHNIQUE Balanced -set_global_assignment -name MAXII_OPTIMIZATION_TECHNIQUE Balanced -set_global_assignment -name MAX7000_OPTIMIZATION_TECHNIQUE Speed -set_global_assignment -name APEX20K_OPTIMIZATION_TECHNIQUE Balanced -set_global_assignment -name MERCURY_OPTIMIZATION_TECHNIQUE Area -set_global_assignment -name FLEX6K_OPTIMIZATION_TECHNIQUE Area -set_global_assignment -name FLEX10K_OPTIMIZATION_TECHNIQUE Area -set_global_assignment -name ALLOW_XOR_GATE_USAGE On -set_global_assignment -name AUTO_LCELL_INSERTION On -set_global_assignment -name CARRY_CHAIN_LENGTH 48 -set_global_assignment -name FLEX6K_CARRY_CHAIN_LENGTH 32 -set_global_assignment -name FLEX10K_CARRY_CHAIN_LENGTH 32 -set_global_assignment -name MERCURY_CARRY_CHAIN_LENGTH 48 -set_global_assignment -name STRATIX_CARRY_CHAIN_LENGTH 70 -set_global_assignment -name STRATIXII_CARRY_CHAIN_LENGTH 70 -set_global_assignment -name CASCADE_CHAIN_LENGTH 2 -set_global_assignment -name PARALLEL_EXPANDER_CHAIN_LENGTH 16 -set_global_assignment -name MAX7000_PARALLEL_EXPANDER_CHAIN_LENGTH 4 -set_global_assignment -name AUTO_CARRY_CHAINS On -set_global_assignment -name AUTO_CASCADE_CHAINS On -set_global_assignment -name AUTO_PARALLEL_EXPANDERS On -set_global_assignment -name AUTO_OPEN_DRAIN_PINS On -set_global_assignment -name ADV_NETLIST_OPT_SYNTH_WYSIWYG_REMAP Off -set_global_assignment -name AUTO_ROM_RECOGNITION On -set_global_assignment -name AUTO_RAM_RECOGNITION On -set_global_assignment -name AUTO_DSP_RECOGNITION On -set_global_assignment -name AUTO_SHIFT_REGISTER_RECOGNITION Auto -set_global_assignment -name AUTO_CLOCK_ENABLE_RECOGNITION On -set_global_assignment -name STRICT_RAM_RECOGNITION Off -set_global_assignment -name ALLOW_SYNCH_CTRL_USAGE On -set_global_assignment -name FORCE_SYNCH_CLEAR Off -set_global_assignment -name AUTO_RAM_BLOCK_BALANCING On -set_global_assignment -name AUTO_RAM_TO_LCELL_CONVERSION Off -set_global_assignment -name AUTO_RESOURCE_SHARING Off -set_global_assignment -name ALLOW_ANY_RAM_SIZE_FOR_RECOGNITION Off -set_global_assignment -name ALLOW_ANY_ROM_SIZE_FOR_RECOGNITION Off -set_global_assignment -name ALLOW_ANY_SHIFT_REGISTER_SIZE_FOR_RECOGNITION Off -set_global_assignment -name MAX7000_FANIN_PER_CELL 100 -set_global_assignment -name USE_LOGICLOCK_CONSTRAINTS_IN_BALANCING On -set_global_assignment -name MAX_RAM_BLOCKS_M512 "-1 (Unlimited)" -set_global_assignment -name MAX_RAM_BLOCKS_M4K "-1 (Unlimited)" -set_global_assignment -name MAX_RAM_BLOCKS_MRAM "-1 (Unlimited)" -set_global_assignment -name IGNORE_TRANSLATE_OFF_AND_SYNTHESIS_OFF Off -set_global_assignment -name STRATIXGX_BYPASS_REMAPPING_OF_FORCE_SIGNAL_DETECT_SIGNAL_THRESHOLD_SELECT Off -set_global_assignment -name SYNTH_TIMING_DRIVEN_SYNTHESIS Off -set_global_assignment -name SHOW_PARAMETER_SETTINGS_TABLES_IN_SYNTHESIS_REPORT On -set_global_assignment -name IGNORE_MAX_FANOUT_ASSIGNMENTS Off -set_global_assignment -name SYNCHRONIZATION_REGISTER_CHAIN_LENGTH 2 -set_global_assignment -name OPTIMIZE_POWER_DURING_SYNTHESIS "Normal compilation" -set_global_assignment -name HDL_MESSAGE_LEVEL Level2 -set_global_assignment -name USE_HIGH_SPEED_ADDER Auto -set_global_assignment -name NUMBER_OF_REMOVED_REGISTERS_REPORTED 100 -set_global_assignment -name NUMBER_OF_INVERTED_REGISTERS_REPORTED 100 -set_global_assignment -name SYNTH_CLOCK_MUX_PROTECTION On -set_global_assignment -name SYNTH_GATED_CLOCK_CONVERSION Off -set_global_assignment -name BLOCK_DESIGN_NAMING Auto -set_global_assignment -name SYNTH_PROTECT_SDC_CONSTRAINT Off -set_global_assignment -name SYNTHESIS_EFFORT Auto -set_global_assignment -name SHIFT_REGISTER_RECOGNITION_ACLR_SIGNAL On -set_global_assignment -name PRE_MAPPING_RESYNTHESIS Off -set_global_assignment -name SYNTH_MESSAGE_LEVEL Medium -set_global_assignment -name ROUTER_TIMING_OPTIMIZATION_LEVEL Normal -set_global_assignment -name PLACEMENT_EFFORT_MULTIPLIER 1.0 -set_global_assignment -name ROUTER_EFFORT_MULTIPLIER 1.0 -set_global_assignment -name FIT_ATTEMPTS_TO_SKIP 0.0 -set_global_assignment -name ECO_ALLOW_ROUTING_CHANGES Off -set_global_assignment -name DEVICE AUTO -set_global_assignment -name BASE_PIN_OUT_FILE_ON_SAMEFRAME_DEVICE Off -set_global_assignment -name ENABLE_JTAG_BST_SUPPORT Off -set_global_assignment -name MAX7000_ENABLE_JTAG_BST_SUPPORT On -set_global_assignment -name RESERVE_NCEO_AFTER_CONFIGURATION "Use as regular IO" -set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "Use as programming pin" -set_global_assignment -name STRATIXIII_UPDATE_MODE Standard -set_global_assignment -name STRATIX_UPDATE_MODE Standard -set_global_assignment -name STRATIXIII_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "Active Serial" -set_global_assignment -name STRATIXII_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name CYCLONEII_CONFIGURATION_SCHEME "Active Serial" -set_global_assignment -name APEX20K_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name STRATIX_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name CYCLONE_CONFIGURATION_SCHEME "Active Serial" -set_global_assignment -name MERCURY_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name FLEX6K_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name FLEX10K_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name APEXII_CONFIGURATION_SCHEME "Passive Serial" -set_global_assignment -name USER_START_UP_CLOCK Off -set_global_assignment -name ENABLE_VREFA_PIN Off -set_global_assignment -name ENABLE_VREFB_PIN Off -set_global_assignment -name ALWAYS_ENABLE_INPUT_BUFFERS Off -set_global_assignment -name ENABLE_ASMI_FOR_FLASH_LOADER Off -set_global_assignment -name ENABLE_DEVICE_WIDE_RESET Off -set_global_assignment -name ENABLE_DEVICE_WIDE_OE Off -set_global_assignment -name RESERVE_ALL_UNUSED_PINS "As output driving ground" -set_global_assignment -name FLEX10K_ENABLE_LOCK_OUTPUT Off -set_global_assignment -name ENABLE_INIT_DONE_OUTPUT Off -set_global_assignment -name RESERVE_NWS_NRS_NCS_CS_AFTER_CONFIGURATION "Use as regular IO" -set_global_assignment -name RESERVE_RDYNBUSY_AFTER_CONFIGURATION "Use as regular IO" -set_global_assignment -name RESERVE_DATA7_THROUGH_DATA1_AFTER_CONFIGURATION "Use as regular IO" -set_global_assignment -name RESERVE_DATA0_AFTER_CONFIGURATION "As input tri-stated" -set_global_assignment -name RESERVE_ASDO_AFTER_CONFIGURATION "Use as regular IO" -set_global_assignment -name RESERVE_DATA1_AFTER_CONFIGURATION "As input tri-stated" -set_global_assignment -name RESERVE_DATA7_THROUGH_DATA2_AFTER_CONFIGURATION "Use as regular IO" -set_global_assignment -name RESERVE_FLASH_NCE_AFTER_CONFIGURATION "As input tri-stated" -set_global_assignment -name RESERVE_OTHER_AP_PINS_AFTER_CONFIGURATION "Use as regular IO" -set_global_assignment -name RESERVE_DCLK_AFTER_CONFIGURATION "Use as programming pin" -set_global_assignment -name CRC_ERROR_CHECKING Off -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family "Stratix GX" -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "HardCopy III" -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family "Cyclone II" -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family "HardCopy II" -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "Stratix IV" -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "HardCopy IV" -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "Cyclone III LS" -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "Cyclone III" -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "Stratix III" -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family "HardCopy Stratix" -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "Arria GX" -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family "Stratix II GX" -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family Cyclone -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family "Stratix II" -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family "MAX II" -set_global_assignment -name OPTIMIZE_HOLD_TIMING "IO Paths and Minimum TPD Paths" -family Stratix -set_global_assignment -name OPTIMIZE_HOLD_TIMING -value "ALL PATHS" -family "Arria II GX" -set_global_assignment -name OPTIMIZE_MULTI_CORNER_TIMING Off -set_global_assignment -name BLOCK_RAM_TO_MLAB_CELL_CONVERSION On -set_global_assignment -name BLOCK_RAM_AND_MLAB_EQUIVALENT_POWER_UP_CONDITIONS Auto -set_global_assignment -name BLOCK_RAM_AND_MLAB_EQUIVALENT_PAUSED_READ_CAPABILITIES Care -set_global_assignment -name PROGRAMMABLE_POWER_TECHNOLOGY_SETTING "Force All Tiles with Failing Timing Paths to High Speed" -set_global_assignment -name PROGRAMMABLE_POWER_MAXIMUM_HIGH_SPEED_FRACTION_OF_USED_LAB_TILES 1.0 -set_global_assignment -name GUARANTEE_MIN_DELAY_CORNER_IO_ZERO_HOLD_TIME On -set_global_assignment -name OPTIMIZE_POWER_DURING_FITTING "Normal compilation" -set_global_assignment -name OPTIMIZE_SSN Off -family "Cyclone III LS" -set_global_assignment -name OPTIMIZE_SSN Off -family "Cyclone III" -set_global_assignment -name OPTIMIZE_SSN Off -family "Stratix III" -set_global_assignment -name OPTIMIZE_SSN Off -family "HardCopy III" -set_global_assignment -name OPTIMIZE_SSN Off -family "HardCopy IV" -set_global_assignment -name OPTIMIZE_TIMING "Normal compilation" -set_global_assignment -name ECO_OPTIMIZE_TIMING Off -set_global_assignment -name ECO_REGENERATE_REPORT Off -set_global_assignment -name OPTIMIZE_IOC_REGISTER_PLACEMENT_FOR_TIMING On -set_global_assignment -name FIT_ONLY_ONE_ATTEMPT Off -set_global_assignment -name FINAL_PLACEMENT_OPTIMIZATION Automatically -set_global_assignment -name FITTER_AGGRESSIVE_ROUTABILITY_OPTIMIZATION Automatically -set_global_assignment -name SEED 1 -set_global_assignment -name SLOW_SLEW_RATE Off -set_global_assignment -name PCI_IO Off -set_global_assignment -name TURBO_BIT On -set_global_assignment -name WEAK_PULL_UP_RESISTOR Off -set_global_assignment -name ENABLE_BUS_HOLD_CIRCUITRY Off -set_global_assignment -name AUTO_GLOBAL_MEMORY_CONTROLS Off -set_global_assignment -name MIGRATION_CONSTRAIN_CORE_RESOURCES On -set_global_assignment -name AUTO_PACKED_REGISTERS_STRATIXII AUTO -set_global_assignment -name AUTO_PACKED_REGISTERS_MAXII AUTO -set_global_assignment -name AUTO_PACKED_REGISTERS_CYCLONE Auto -set_global_assignment -name AUTO_PACKED_REGISTERS Off -set_global_assignment -name AUTO_PACKED_REGISTERS_STRATIX AUTO -set_global_assignment -name NORMAL_LCELL_INSERT On -set_global_assignment -name CARRY_OUT_PINS_LCELL_INSERT On -set_global_assignment -name AUTO_DELAY_CHAINS On -set_global_assignment -name XSTL_INPUT_ALLOW_SE_BUFFER Off -set_global_assignment -name TREAT_BIDIR_AS_OUTPUT Off -set_global_assignment -name AUTO_MERGE_PLLS On -set_global_assignment -name IGNORE_MODE_FOR_MERGE Off -set_global_assignment -name AUTO_TURBO_BIT ON -set_global_assignment -name PHYSICAL_SYNTHESIS_COMBO_LOGIC_FOR_AREA Off -set_global_assignment -name PHYSICAL_SYNTHESIS_COMBO_LOGIC Off -set_global_assignment -name PHYSICAL_SYNTHESIS_LOG_FILE Off -set_global_assignment -name PHYSICAL_SYNTHESIS_REGISTER_DUPLICATION Off -set_global_assignment -name PHYSICAL_SYNTHESIS_MAP_LOGIC_TO_MEMORY_FOR_AREA Off -set_global_assignment -name PHYSICAL_SYNTHESIS_REGISTER_RETIMING Off -set_global_assignment -name PHYSICAL_SYNTHESIS_ASYNCHRONOUS_SIGNAL_PIPELINING Off -set_global_assignment -name IO_PLACEMENT_OPTIMIZATION On -set_global_assignment -name ALLOW_LVTTL_LVCMOS_INPUT_LEVELS_TO_OVERDRIVE_INPUT_BUFFER Off -set_global_assignment -name OVERRIDE_DEFAULT_ELECTROMIGRATION_PARAMETERS Off -set_global_assignment -name FITTER_EFFORT "Auto Fit" -set_global_assignment -name FITTER_AUTO_EFFORT_DESIRED_SLACK_MARGIN 0ns -set_global_assignment -name PHYSICAL_SYNTHESIS_EFFORT Normal -set_global_assignment -name ROUTER_LCELL_INSERTION_AND_LOGIC_DUPLICATION AUTO -set_global_assignment -name ROUTER_REGISTER_DUPLICATION AUTO -set_global_assignment -name STRATIXGX_ALLOW_CLOCK_FANOUT_WITH_ANALOG_RESET Off -set_global_assignment -name AUTO_GLOBAL_CLOCK On -set_global_assignment -name AUTO_GLOBAL_OE On -set_global_assignment -name AUTO_GLOBAL_REGISTER_CONTROLS On -set_global_assignment -name FITTER_EARLY_TIMING_ESTIMATE_MODE Realistic -set_global_assignment -name STRATIXGX_ALLOW_GIGE_UNDER_FULL_DATARATE_RANGE Off -set_global_assignment -name STRATIXGX_ALLOW_RX_CORECLK_FROM_NON_RX_CLKOUT_SOURCE_IN_DOUBLE_DATA_WIDTH_MODE Off -set_global_assignment -name STRATIXGX_ALLOW_GIGE_IN_DOUBLE_DATA_WIDTH_MODE Off -set_global_assignment -name STRATIXGX_ALLOW_PARALLEL_LOOPBACK_IN_DOUBLE_DATA_WIDTH_MODE Off -set_global_assignment -name STRATIXGX_ALLOW_XAUI_IN_SINGLE_DATA_WIDTH_MODE Off -set_global_assignment -name STRATIXGX_ALLOW_XAUI_WITH_CORECLK_SELECTED_AT_RATE_MATCHER Off -set_global_assignment -name STRATIXGX_ALLOW_XAUI_WITH_RX_CORECLK_FROM_NON_TXPLL_SOURCE Off -set_global_assignment -name STRATIXGX_ALLOW_GIGE_WITH_CORECLK_SELECTED_AT_RATE_MATCHER Off -set_global_assignment -name STRATIXGX_ALLOW_GIGE_WITHOUT_8B10B Off -set_global_assignment -name STRATIXGX_ALLOW_GIGE_WITH_RX_CORECLK_FROM_NON_TXPLL_SOURCE Off -set_global_assignment -name STRATIXGX_ALLOW_POST8B10B_LOOPBACK Off -set_global_assignment -name STRATIXGX_ALLOW_REVERSE_PARALLEL_LOOPBACK Off -set_global_assignment -name STRATIXGX_ALLOW_USE_OF_GXB_COUPLED_IOS Off -set_global_assignment -name GENERATE_GXB_RECONFIG_MIF Off -set_global_assignment -name GENERATE_GXB_RECONFIG_MIF_WITH_PLL Off -set_global_assignment -name RESERVE_ALL_UNUSED_PINS_WEAK_PULLUP "As input tri-stated with weak pull-up" -set_global_assignment -name STOP_AFTER_CONGESTION_MAP Off -set_global_assignment -name SAVE_INTERMEDIATE_FITTING_RESULTS Off -set_global_assignment -name ENABLE_HOLD_BACK_OFF On -set_global_assignment -name CONFIGURATION_VCCIO_LEVEL Auto -set_global_assignment -name FORCE_CONFIGURATION_VCCIO Off -set_global_assignment -name SYNCHRONIZER_IDENTIFICATION Off -set_global_assignment -name ENABLE_BENEFICIAL_SKEW_OPTIMIZATION -value OFF -set_global_assignment -name OPTIMIZE_FOR_METASTABILITY On -set_global_assignment -name CRC_ERROR_OPEN_DRAIN Off -set_global_assignment -name MAX_GLOBAL_CLOCKS_ALLOWED "-1 (Unlimited)" -set_global_assignment -name MAX_REGIONAL_CLOCKS_ALLOWED "-1 (Unlimited)" -set_global_assignment -name MAX_PERIPHERY_CLOCKS_ALLOWED "-1 (Unlimited)" -set_global_assignment -name MAX_CLOCKS_ALLOWED "-1 (Unlimited)" -set_global_assignment -name ACTIVE_SERIAL_CLOCK FREQ_40MHz -set_global_assignment -name STRATIXIII_MRAM_COMPATIBILITY On -set_global_assignment -name FORCE_FITTER_TO_AVOID_PERIPHERY_PLACEMENT_WARNINGS Off -set_global_assignment -name EDA_SIMULATION_TOOL "" -set_global_assignment -name EDA_TIMING_ANALYSIS_TOOL "" -set_global_assignment -name EDA_BOARD_DESIGN_TIMING_TOOL "" -set_global_assignment -name EDA_BOARD_DESIGN_SYMBOL_TOOL "" -set_global_assignment -name EDA_BOARD_DESIGN_SIGNAL_INTEGRITY_TOOL "" -set_global_assignment -name EDA_BOARD_DESIGN_BOUNDARY_SCAN_TOOL "" -set_global_assignment -name EDA_BOARD_DESIGN_TOOL "" -set_global_assignment -name EDA_FORMAL_VERIFICATION_TOOL "" -set_global_assignment -name EDA_RESYNTHESIS_TOOL "" -set_global_assignment -name ON_CHIP_BITSTREAM_DECOMPRESSION On -set_global_assignment -name COMPRESSION_MODE Off -set_global_assignment -name CLOCK_SOURCE Internal -set_global_assignment -name CONFIGURATION_CLOCK_FREQUENCY "10 MHz" -set_global_assignment -name CONFIGURATION_CLOCK_DIVISOR 1 -set_global_assignment -name ENABLE_LOW_VOLTAGE_MODE_ON_CONFIG_DEVICE On -set_global_assignment -name FLEX6K_ENABLE_LOW_VOLTAGE_MODE_ON_CONFIG_DEVICE Off -set_global_assignment -name FLEX10K_ENABLE_LOW_VOLTAGE_MODE_ON_CONFIG_DEVICE On -set_global_assignment -name MAX7000S_JTAG_USER_CODE FFFF -set_global_assignment -name STRATIX_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name APEX20K_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name MERCURY_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name FLEX10K_JTAG_USER_CODE 7F -set_global_assignment -name MAX7000_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name MAX7000_USE_CHECKSUM_AS_USERCODE Off -set_global_assignment -name USE_CHECKSUM_AS_USERCODE Off -set_global_assignment -name SECURITY_BIT Off -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family ACEX1K -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family MAX7000B -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "HardCopy II" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family FLEX10KA -set_global_assignment -name USE_CONFIGURATION_DEVICE Off -family "Stratix IV" -set_global_assignment -name USE_CONFIGURATION_DEVICE Off -family "Cyclone III" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "HardCopy Stratix" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family APEX20KE -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family MAX7000AE -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family Cyclone -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "Stratix II GX" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family FLEX10K -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "MAX II" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family APEX20KC -set_global_assignment -name USE_CONFIGURATION_DEVICE Off -family "Arria II GX" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "Stratix GX" -set_global_assignment -name USE_CONFIGURATION_DEVICE Off -family "HardCopy III" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family MAX7000S -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family FLEX6000 -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "APEX II" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family FLEX10KE -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "Cyclone II" -set_global_assignment -name USE_CONFIGURATION_DEVICE Off -family "HardCopy IV" -set_global_assignment -name USE_CONFIGURATION_DEVICE Off -family "Cyclone III LS" -set_global_assignment -name USE_CONFIGURATION_DEVICE Off -family "Stratix III" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "Arria GX" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family MAX3000A -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family "Stratix II" -set_global_assignment -name USE_CONFIGURATION_DEVICE On -family Stratix -set_global_assignment -name CYCLONEIII_CONFIGURATION_DEVICE Auto -set_global_assignment -name STRATIXII_CONFIGURATION_DEVICE Auto -set_global_assignment -name APEX20K_CONFIGURATION_DEVICE Auto -set_global_assignment -name MERCURY_CONFIGURATION_DEVICE Auto -set_global_assignment -name FLEX6K_CONFIGURATION_DEVICE Auto -set_global_assignment -name FLEX10K_CONFIGURATION_DEVICE Auto -set_global_assignment -name CYCLONE_CONFIGURATION_DEVICE Auto -set_global_assignment -name STRATIX_CONFIGURATION_DEVICE Auto -set_global_assignment -name APEX20K_CONFIG_DEVICE_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name STRATIX_CONFIG_DEVICE_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name MERCURY_CONFIG_DEVICE_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name FLEX10K_CONFIG_DEVICE_JTAG_USER_CODE FFFFFFFF -set_global_assignment -name EPROM_USE_CHECKSUM_AS_USERCODE Off -set_global_assignment -name AUTO_INCREMENT_CONFIG_DEVICE_JTAG_USER_CODE On -set_global_assignment -name DISABLE_NCS_AND_OE_PULLUPS_ON_CONFIG_DEVICE Off -set_global_assignment -name GENERATE_TTF_FILE Off -set_global_assignment -name GENERATE_RBF_FILE Off -set_global_assignment -name GENERATE_HEX_FILE Off -set_global_assignment -name HEXOUT_FILE_START_ADDRESS 0 -set_global_assignment -name HEXOUT_FILE_COUNT_DIRECTION Up -set_global_assignment -name RESERVE_ALL_UNUSED_PINS_NO_OUTPUT_GND "As output driving an unspecified signal" -set_global_assignment -name RELEASE_CLEARS_BEFORE_TRI_STATES Off -set_global_assignment -name AUTO_RESTART_CONFIGURATION On -set_global_assignment -name HARDCOPYII_POWER_ON_EXTRA_DELAY Off -set_global_assignment -name STRATIXII_MRAM_COMPATIBILITY Off -set_global_assignment -name CYCLONEII_M4K_COMPATIBILITY On -set_global_assignment -name ENABLE_OCT_DONE Off -set_global_assignment -name USE_CHECKERED_PATTERN_AS_UNINITIALIZED_RAM_CONTENT Off -set_global_assignment -name START_TIME 0ns -set_global_assignment -name SIMULATION_MODE TIMING -set_global_assignment -name AUTO_USE_SIMULATION_PDB_NETLIST Off -set_global_assignment -name ADD_DEFAULT_PINS_TO_SIMULATION_OUTPUT_WAVEFORMS On -set_global_assignment -name SETUP_HOLD_DETECTION Off -set_global_assignment -name SETUP_HOLD_DETECTION_INPUT_REGISTERS_BIDIR_PINS_DISABLED Off -set_global_assignment -name CHECK_OUTPUTS Off -set_global_assignment -name SIMULATION_COVERAGE On -set_global_assignment -name SIMULATION_COMPLETE_COVERAGE_REPORT_PANEL On -set_global_assignment -name SIMULATION_MISSING_1_VALUE_COVERAGE_REPORT_PANEL On -set_global_assignment -name SIMULATION_MISSING_0_VALUE_COVERAGE_REPORT_PANEL On -set_global_assignment -name GLITCH_DETECTION Off -set_global_assignment -name GLITCH_INTERVAL 1ns -set_global_assignment -name SIMULATOR_GENERATE_SIGNAL_ACTIVITY_FILE Off -set_global_assignment -name SIMULATION_WITH_GLITCH_FILTERING_WHEN_GENERATING_SAF On -set_global_assignment -name SIMULATION_BUS_CHANNEL_GROUPING Off -set_global_assignment -name SIMULATION_VDB_RESULT_FLUSH On -set_global_assignment -name VECTOR_COMPARE_TRIGGER_MODE INPUT_EDGE -set_global_assignment -name SIMULATION_NETLIST_VIEWER Off -set_global_assignment -name SIMULATION_INTERCONNECT_DELAY_MODEL_TYPE TRANSPORT -set_global_assignment -name SIMULATION_CELL_DELAY_MODEL_TYPE TRANSPORT -set_global_assignment -name SIMULATOR_GENERATE_POWERPLAY_VCD_FILE Off -set_global_assignment -name SIMULATOR_PVT_TIMING_MODEL_TYPE AUTO -set_global_assignment -name SIMULATION_WITH_AUTO_GLITCH_FILTERING AUTO -set_global_assignment -name DRC_TOP_FANOUT 50 -set_global_assignment -name DRC_FANOUT_EXCEEDING 30 -set_global_assignment -name DRC_GATED_CLOCK_FEED 30 -set_global_assignment -name HARDCOPY_FLOW_AUTOMATION MIGRATION_ONLY -set_global_assignment -name ENABLE_DRC_SETTINGS Off -set_global_assignment -name CLK_RULE_CLKNET_CLKSPINES_THRESHOLD 25 -set_global_assignment -name DRC_DETAIL_MESSAGE_LIMIT 10 -set_global_assignment -name DRC_VIOLATION_MESSAGE_LIMIT 30 -set_global_assignment -name DRC_DEADLOCK_STATE_LIMIT 2 -set_global_assignment -name MERGE_HEX_FILE Off -set_global_assignment -name GENERATE_SVF_FILE Off -set_global_assignment -name GENERATE_ISC_FILE Off -set_global_assignment -name GENERATE_JAM_FILE Off -set_global_assignment -name GENERATE_JBC_FILE Off -set_global_assignment -name GENERATE_JBC_FILE_COMPRESSED On -set_global_assignment -name GENERATE_CONFIG_SVF_FILE Off -set_global_assignment -name GENERATE_CONFIG_ISC_FILE Off -set_global_assignment -name GENERATE_CONFIG_JAM_FILE Off -set_global_assignment -name GENERATE_CONFIG_JBC_FILE Off -set_global_assignment -name GENERATE_CONFIG_JBC_FILE_COMPRESSED On -set_global_assignment -name GENERATE_CONFIG_HEXOUT_FILE Off -set_global_assignment -name ISP_CLAMP_STATE_DEFAULT "Tri-state" -set_global_assignment -name SIGNALPROBE_ALLOW_OVERUSE Off -set_global_assignment -name SIGNALPROBE_DURING_NORMAL_COMPILATION Off -set_global_assignment -name LOGICLOCK_INCREMENTAL_COMPILE_ASSIGNMENT Off -set_global_assignment -name POWER_DEFAULT_TOGGLE_RATE 12.5% -set_global_assignment -name POWER_DEFAULT_INPUT_IO_TOGGLE_RATE 12.5% -set_global_assignment -name POWER_USE_PVA On -set_global_assignment -name POWER_USE_INPUT_FILE "No File" -set_global_assignment -name POWER_USE_INPUT_FILES Off -set_global_assignment -name POWER_VCD_FILTER_GLITCHES On -set_global_assignment -name POWER_REPORT_SIGNAL_ACTIVITY Off -set_global_assignment -name POWER_REPORT_POWER_DISSIPATION Off -set_global_assignment -name POWER_USE_DEVICE_CHARACTERISTICS TYPICAL -set_global_assignment -name POWER_AUTO_COMPUTE_TJ On -set_global_assignment -name POWER_TJ_VALUE 25 -set_global_assignment -name POWER_USE_TA_VALUE 25 -set_global_assignment -name POWER_USE_CUSTOM_COOLING_SOLUTION Off -set_global_assignment -name POWER_BOARD_TEMPERATURE 25 -set_global_assignment -name INCREMENTAL_COMPILATION FULL_INCREMENTAL_COMPILATION -set_global_assignment -name AUTO_EXPORT_INCREMENTAL_COMPILATION Off -set_global_assignment -name INCREMENTAL_COMPILATION_EXPORT_NETLIST_TYPE POST_FIT -set_global_assignment -name OUTPUT_IO_TIMING_ENDPOINT "Near End" -set_global_assignment -name RTLV_REMOVE_FANOUT_FREE_REGISTERS On -set_global_assignment -name RTLV_SIMPLIFIED_LOGIC On -set_global_assignment -name RTLV_GROUP_RELATED_NODES On -set_global_assignment -name RTLV_GROUP_COMB_LOGIC_IN_CLOUD Off -set_global_assignment -name RTLV_GROUP_COMB_LOGIC_IN_CLOUD_TMV Off -set_global_assignment -name RTLV_GROUP_RELATED_NODES_TMV On -set_global_assignment -name EQC_CONSTANT_DFF_DETECTION On -set_global_assignment -name EQC_DUPLICATE_DFF_DETECTION On -set_global_assignment -name EQC_BBOX_MERGE On -set_global_assignment -name EQC_LVDS_MERGE On -set_global_assignment -name EQC_RAM_UNMERGING On -set_global_assignment -name EQC_DFF_SS_EMULATION On -set_global_assignment -name EQC_RAM_REGISTER_UNPACK On -set_global_assignment -name EQC_MAC_REGISTER_UNPACK On -set_global_assignment -name EQC_SET_PARTITION_BB_TO_VCC_GND On -set_global_assignment -name EQC_STRUCTURE_MATCHING On -set_global_assignment -name EQC_AUTO_BREAK_CONE On -set_global_assignment -name EQC_POWER_UP_COMPARE Off -set_global_assignment -name EQC_AUTO_COMP_LOOP_CUT On -set_global_assignment -name EQC_AUTO_INVERSION On -set_global_assignment -name EQC_AUTO_TERMINATE On -set_global_assignment -name EQC_SUB_CONE_REPORT Off -set_global_assignment -name EQC_RENAMING_RULES On -set_global_assignment -name EQC_PARAMETER_CHECK On -set_global_assignment -name EQC_AUTO_PORTSWAP On -set_global_assignment -name EQC_DETECT_DONT_CARES On -set_global_assignment -name EQC_SHOW_ALL_MAPPED_POINTS Off -set_global_assignment -name DUTY_CYCLE 50 -section_id ? -set_global_assignment -name INVERT_BASE_CLOCK Off -section_id ? -set_global_assignment -name MULTIPLY_BASE_CLOCK_PERIOD_BY 1 -section_id ? -set_global_assignment -name DIVIDE_BASE_CLOCK_PERIOD_BY 1 -section_id ? -set_global_assignment -name EDA_INPUT_GND_NAME GND -section_id ? -set_global_assignment -name EDA_INPUT_VCC_NAME VCC -section_id ? -set_global_assignment -name EDA_INPUT_DATA_FORMAT NONE -section_id ? -set_global_assignment -name EDA_SHOW_LMF_MAPPING_MESSAGES Off -section_id ? -set_global_assignment -name EDA_RUN_TOOL_AUTOMATICALLY Off -section_id ? -set_global_assignment -name RESYNTHESIS_RETIMING FULL -section_id ? -set_global_assignment -name RESYNTHESIS_OPTIMIZATION_EFFORT Normal -section_id ? -set_global_assignment -name RESYNTHESIS_PHYSICAL_SYNTHESIS Normal -section_id ? -set_global_assignment -name USE_GENERATED_PHYSICAL_CONSTRAINTS On -section_id ? -set_global_assignment -name VCCPD_VOLTAGE 3.3V -section_id ? -set_global_assignment -name EDA_USER_COMPILED_SIMULATION_LIBRARY_DIRECTORY "" -section_id ? -set_global_assignment -name EDA_LAUNCH_CMD_LINE_TOOL Off -section_id ? -set_global_assignment -name EDA_NATIVELINK_GENERATE_SCRIPT_ONLY Off -section_id ? -set_global_assignment -name EDA_WAIT_FOR_GUI_TOOL_COMPLETION Off -section_id ? -set_global_assignment -name EDA_TRUNCATE_LONG_HIERARCHY_PATHS Off -section_id ? -set_global_assignment -name EDA_FLATTEN_BUSES Off -section_id ? -set_global_assignment -name EDA_MAP_ILLEGAL_CHARACTERS Off -section_id ? -set_global_assignment -name EDA_GENERATE_TIMING_CLOSURE_DATA Off -section_id ? -set_global_assignment -name EDA_GENERATE_POWER_INPUT_FILE Off -section_id ? -set_global_assignment -name EDA_TEST_BENCH_ENABLE_STATUS NOT_USED -section_id ? -set_global_assignment -name EDA_RTL_SIM_MODE NOT_USED -section_id ? -set_global_assignment -name EDA_MAINTAIN_DESIGN_HIERARCHY Off -section_id ? -set_global_assignment -name EDA_GENERATE_FUNCTIONAL_NETLIST Off -section_id ? -set_global_assignment -name EDA_WRITE_DEVICE_CONTROL_PORTS Off -section_id ? -set_global_assignment -name EDA_SIMULATION_VCD_OUTPUT_TCL_FILE Off -section_id ? -set_global_assignment -name EDA_SIMULATION_VCD_OUTPUT_SIGNALS_TO_TCL_FILE "All Except Combinational Logic Element Outputs" -section_id ? -set_global_assignment -name EDA_ENABLE_GLITCH_FILTERING Off -section_id ? -set_global_assignment -name EDA_WRITE_NODES_FOR_POWER_ESTIMATION OFF -section_id ? -set_global_assignment -name EDA_SETUP_HOLD_DETECTION_INPUT_REGISTERS_BIDIR_PINS_DISABLED Off -section_id ? -set_global_assignment -name EDA_WRITER_DONT_WRITE_TOP_ENTITY Off -section_id ? -set_global_assignment -name EDA_VHDL_ARCH_NAME structure -section_id ? -set_global_assignment -name EDA_IBIS_MODEL_SELECTOR Off -section_id ? -set_global_assignment -name EDA_IBIS_MUTUAL_COUPLING Off -section_id ? -set_global_assignment -name EDA_FORMAL_VERIFICATION_ALLOW_RETIMING Off -section_id ? -set_global_assignment -name EDA_BOARD_BOUNDARY_SCAN_OPERATION PRE_CONFIG -section_id ? -set_global_assignment -name EDA_GENERATE_RTL_SIMULATION_COMMAND_SCRIPT Off -section_id ? -set_global_assignment -name EDA_GENERATE_GATE_LEVEL_SIMULATION_COMMAND_SCRIPT Off -section_id ? -set_global_assignment -name SIM_VECTOR_COMPARED_CLOCK_OFFSET 0ns -section_id ? -set_global_assignment -name SIM_VECTOR_COMPARED_CLOCK_DUTY_CYCLE 50 -section_id ? -set_global_assignment -name APEX20K_CLIQUE_TYPE LAB -section_id ? -entity ? -set_global_assignment -name MAX7K_CLIQUE_TYPE LAB -section_id ? -entity ? -set_global_assignment -name MERCURY_CLIQUE_TYPE LAB -section_id ? -entity ? -set_global_assignment -name FLEX6K_CLIQUE_TYPE LAB -section_id ? -entity ? -set_global_assignment -name FLEX10K_CLIQUE_TYPE LAB -section_id ? -entity ? -set_global_assignment -name PARTITION_IMPORT_ASSIGNMENTS On -section_id ? -entity ? -set_global_assignment -name PARTITION_IMPORT_EXISTING_ASSIGNMENTS REPLACE_CONFLICTING -section_id ? -entity ? -set_global_assignment -name PARTITION_IMPORT_EXISTING_LOGICLOCK_REGIONS REPLACE_CONFLICTING -section_id ? -entity ? -set_global_assignment -name PARTITION_IMPORT_PROMOTE_ASSIGNMENTS On -section_id ? -entity ? Index: trunk/rtl/System09_Terasic_DE1/roms/kbug_rom.mif =================================================================== --- trunk/rtl/System09_Terasic_DE1/roms/kbug_rom.mif (revision 115) +++ trunk/rtl/System09_Terasic_DE1/roms/kbug_rom.mif (nonexistent) @@ -1,2054 +0,0 @@ -WIDTH=8; -DEPTH=2048; -ADDRESS_RADIX=UNS; -DATA_RADIX=HEX; -CONTENT BEGIN - 0 : F8; - 1 : 38; - 2 : F8; - 3 : 7C; - 4 : FC; - 5 : 80; - 6 : FC; - 7 : A9; - 8 : FC; - 9 : 65; - 10 : FC; - 11 : AB; - 12 : FC; - 13 : 5E; - 14 : FC; - 15 : 53; - 16 : FC; - 17 : 4F; - 18 : FA; - 19 : 18; - 20 : FA; - 21 : 18; - 22 : FA; - 23 : 18; - 24 : FA; - 25 : 18; - 26 : FA; - 27 : 18; - 28 : FD; - 29 : 1B; - 30 : FC; - 31 : FB; - 32 : FD; - 33 : 04; - 34 : FD; - 35 : 3A; - 36 : FC; - 37 : BF; - 38 : FC; - 39 : D2; - 40 : FC; - 41 : DC; - 42 : FC; - 43 : EB; - 44 : FC; - 45 : FA; - 46 : FC; - 47 : FB; - 48 : FD; - 49 : 04; - 50 : FD; - 51 : 0C; - 52 : 10; - 53 : CE; - 54 : F0; - 55 : C0; - 56 : 8E; - 57 : FE; - 58 : B9; - 59 : 10; - 60 : 8E; - 61 : F0; - 62 : C0; - 63 : C6; - 64 : 10; - 65 : A6; - 66 : 80; - 67 : A7; - 68 : A0; - 69 : 5A; - 70 : 26; - 71 : F9; - 72 : 8E; - 73 : E0; - 74 : 00; - 75 : BF; - 76 : F0; - 77 : D0; - 78 : 17; - 79 : 01; - 80 : 8E; - 81 : C6; - 82 : 0C; - 83 : 6F; - 84 : E2; - 85 : 5A; - 86 : 26; - 87 : FB; - 88 : 30; - 89 : 8C; - 90 : DD; - 91 : AF; - 92 : 6A; - 93 : 86; - 94 : D0; - 95 : A7; - 96 : E4; - 97 : 1F; - 98 : 43; - 99 : 86; - 100 : 03; - 101 : B7; - 102 : F0; - 103 : D7; - 104 : 86; - 105 : 0A; - 106 : B7; - 107 : F0; - 108 : D8; - 109 : 17; - 110 : 04; - 111 : 4F; - 112 : 17; - 113 : 04; - 114 : 87; - 115 : 17; - 116 : 04; - 117 : A5; - 118 : 8E; - 119 : FE; - 120 : C9; - 121 : 17; - 122 : 03; - 123 : E2; - 124 : 8E; - 125 : FE; - 126 : E5; - 127 : 17; - 128 : 03; - 129 : CD; - 130 : 17; - 131 : 03; - 132 : FB; - 133 : 84; - 134 : 7F; - 135 : 81; - 136 : 0D; - 137 : 27; - 138 : F1; - 139 : 1F; - 140 : 89; - 141 : 81; - 142 : 20; - 143 : 2C; - 144 : 09; - 145 : 86; - 146 : 5E; - 147 : 17; - 148 : 04; - 149 : 15; - 150 : 1F; - 151 : 98; - 152 : 8B; - 153 : 40; - 154 : 17; - 155 : 04; - 156 : 0E; - 157 : 17; - 158 : 02; - 159 : A3; - 160 : 8E; - 161 : FE; - 162 : 7A; - 163 : E1; - 164 : 80; - 165 : 27; - 166 : 0F; - 167 : 30; - 168 : 02; - 169 : 8C; - 170 : FE; - 171 : B9; - 172 : 26; - 173 : F5; - 174 : 8E; - 175 : FE; - 176 : E7; - 177 : 17; - 178 : 03; - 179 : AA; - 180 : 20; - 181 : C6; - 182 : AD; - 183 : 94; - 184 : 20; - 185 : C2; - 186 : 17; - 187 : 02; - 188 : 45; - 189 : 29; - 190 : 2D; - 191 : 1F; - 192 : 12; - 193 : 8E; - 194 : FE; - 195 : ED; - 196 : 17; - 197 : 03; - 198 : 88; - 199 : 1F; - 200 : 21; - 201 : 17; - 202 : 03; - 203 : 65; - 204 : 17; - 205 : 02; - 206 : 74; - 207 : A6; - 208 : A4; - 209 : 17; - 210 : 03; - 211 : 65; - 212 : 17; - 213 : 02; - 214 : 6C; - 215 : 17; - 216 : 02; - 217 : 38; - 218 : 28; - 219 : 11; - 220 : 81; - 221 : 08; - 222 : 27; - 223 : E1; - 224 : 81; - 225 : 18; - 226 : 27; - 227 : DD; - 228 : 81; - 229 : 5E; - 230 : 27; - 231 : 17; - 232 : 81; - 233 : 0D; - 234 : 26; - 235 : 0F; - 236 : 39; - 237 : A7; - 238 : A4; - 239 : A1; - 240 : A4; - 241 : 27; - 242 : 08; - 243 : 17; - 244 : 02; - 245 : 4D; - 246 : 86; - 247 : 3F; - 248 : 17; - 249 : 03; - 250 : B0; - 251 : 31; - 252 : 21; - 253 : 20; - 254 : C2; - 255 : 31; - 256 : 3F; - 257 : 20; - 258 : BE; - 259 : 17; - 260 : 02; - 261 : C0; - 262 : 1F; - 263 : 32; - 264 : 8E; - 265 : F0; - 266 : C0; - 267 : 30; - 268 : 1F; - 269 : 20; - 270 : 05; - 271 : 17; - 272 : 01; - 273 : E6; - 274 : 29; - 275 : 06; - 276 : 34; - 277 : 20; - 278 : AC; - 279 : E1; - 280 : 24; - 281 : 01; - 282 : 39; - 283 : 1F; - 284 : 10; - 285 : C3; - 286 : 00; - 287 : 10; - 288 : C4; - 289 : F0; - 290 : 34; - 291 : 06; - 292 : 1F; - 293 : 20; - 294 : C4; - 295 : F0; - 296 : 1F; - 297 : 01; - 298 : AC; - 299 : E4; - 300 : 27; - 301 : 05; - 302 : 17; - 303 : 03; - 304 : 34; - 305 : 27; - 306 : 03; - 307 : 32; - 308 : 62; - 309 : 39; - 310 : 34; - 311 : 10; - 312 : 8E; - 313 : FE; - 314 : ED; - 315 : 17; - 316 : 03; - 317 : 11; - 318 : AE; - 319 : E4; - 320 : 17; - 321 : 02; - 322 : EE; - 323 : 17; - 324 : 01; - 325 : FB; - 326 : C6; - 327 : 10; - 328 : A6; - 329 : 80; - 330 : 17; - 331 : 02; - 332 : EC; - 333 : 17; - 334 : 01; - 335 : F3; - 336 : 5A; - 337 : 26; - 338 : F5; - 339 : 17; - 340 : 01; - 341 : EB; - 342 : AE; - 343 : E1; - 344 : C6; - 345 : 10; - 346 : A6; - 347 : 80; - 348 : 81; - 349 : 20; - 350 : 25; - 351 : 04; - 352 : 81; - 353 : 7E; - 354 : 23; - 355 : 02; - 356 : 86; - 357 : 2E; - 358 : 17; - 359 : 03; - 360 : 42; - 361 : 5A; - 362 : 26; - 363 : EE; - 364 : 20; - 365 : BC; - 366 : 17; - 367 : 01; - 368 : FD; - 369 : 28; - 370 : 01; - 371 : 39; - 372 : 1F; - 373 : 34; - 374 : 3B; - 375 : 5F; - 376 : 17; - 377 : 03; - 378 : 05; - 379 : 81; - 380 : 53; - 381 : 26; - 382 : 07; - 383 : 17; - 384 : 03; - 385 : 3D; - 386 : D8; - 387 : 02; - 388 : 20; - 389 : F2; - 390 : 81; - 391 : 56; - 392 : 26; - 393 : 07; - 394 : 17; - 395 : 03; - 396 : 8E; - 397 : C8; - 398 : 01; - 399 : 20; - 400 : E7; - 401 : F7; - 402 : F0; - 403 : D7; - 404 : 39; - 405 : 5F; - 406 : 17; - 407 : 02; - 408 : E7; - 409 : 81; - 410 : 53; - 411 : 26; - 412 : 07; - 413 : 17; - 414 : 03; - 415 : 1F; - 416 : D8; - 417 : 02; - 418 : 20; - 419 : F2; - 420 : 81; - 421 : 4B; - 422 : 26; - 423 : 07; - 424 : 17; - 425 : 03; - 426 : 4F; - 427 : C8; - 428 : 08; - 429 : 20; - 430 : E7; - 431 : F7; - 432 : F0; - 433 : D8; - 434 : 39; - 435 : 17; - 436 : 01; - 437 : 4C; - 438 : 29; - 439 : 1E; - 440 : 8C; - 441 : F0; - 442 : C0; - 443 : 24; - 444 : 1A; - 445 : 34; - 446 : 10; - 447 : 8E; - 448 : FF; - 449 : FF; - 450 : 8D; - 451 : 55; - 452 : 35; - 453 : 10; - 454 : 27; - 455 : 0F; - 456 : A6; - 457 : 84; - 458 : 81; - 459 : 3F; - 460 : 27; - 461 : 09; - 462 : A7; - 463 : A0; - 464 : AF; - 465 : A4; - 466 : 86; - 467 : 3F; - 468 : A7; - 469 : 84; - 470 : 39; - 471 : 17; - 472 : 01; - 473 : 69; - 474 : 86; - 475 : 3F; - 476 : 16; - 477 : 02; - 478 : CC; - 479 : 10; - 480 : 8E; - 481 : F0; - 482 : D9; - 483 : C6; - 484 : 08; - 485 : 8D; - 486 : 18; - 487 : 5A; - 488 : 26; - 489 : FB; - 490 : 39; - 491 : 1F; - 492 : 43; - 493 : AE; - 494 : 4A; - 495 : 30; - 496 : 1F; - 497 : 8D; - 498 : 26; - 499 : 27; - 500 : 04; - 501 : AF; - 502 : 4A; - 503 : 8D; - 504 : 06; - 505 : 17; - 506 : 01; - 507 : AC; - 508 : 16; - 509 : FE; - 510 : 7D; - 511 : AE; - 512 : 21; - 513 : 8C; - 514 : F0; - 515 : C0; - 516 : 24; - 517 : 0A; - 518 : A6; - 519 : 84; - 520 : 81; - 521 : 3F; - 522 : 26; - 523 : 04; - 524 : A6; - 525 : A4; - 526 : A7; - 527 : 84; - 528 : 86; - 529 : FF; - 530 : A7; - 531 : A0; - 532 : A7; - 533 : A0; - 534 : A7; - 535 : A0; - 536 : 39; - 537 : 10; - 538 : 8E; - 539 : F0; - 540 : D9; - 541 : C6; - 542 : 08; - 543 : A6; - 544 : A0; - 545 : AC; - 546 : A1; - 547 : 27; - 548 : 04; - 549 : 5A; - 550 : 26; - 551 : F7; - 552 : 39; - 553 : 31; - 554 : 3D; - 555 : 39; - 556 : 86; - 557 : 11; - 558 : 8D; - 559 : 52; - 560 : 7F; - 561 : F0; - 562 : D2; - 563 : 17; - 564 : 02; - 565 : 6E; - 566 : 81; - 567 : 53; - 568 : 26; - 569 : F9; - 570 : 17; - 571 : 02; - 572 : 67; - 573 : 81; - 574 : 39; - 575 : 27; - 576 : 3C; - 577 : 81; - 578 : 31; - 579 : 26; - 580 : F1; - 581 : 17; - 582 : 00; - 583 : CA; - 584 : 34; - 585 : 02; - 586 : 29; - 587 : 26; - 588 : 17; - 589 : 00; - 590 : B3; - 591 : 29; - 592 : 21; - 593 : 34; - 594 : 10; - 595 : E6; - 596 : E0; - 597 : EB; - 598 : E0; - 599 : EB; - 600 : E4; - 601 : 6A; - 602 : E4; - 603 : 6A; - 604 : E4; - 605 : 34; - 606 : 04; - 607 : 17; - 608 : 00; - 609 : B0; - 610 : 35; - 611 : 04; - 612 : 29; - 613 : 0C; - 614 : 34; - 615 : 02; - 616 : EB; - 617 : E0; - 618 : 6A; - 619 : E4; - 620 : 27; - 621 : 05; - 622 : A7; - 623 : 80; - 624 : 20; - 625 : EB; - 626 : 5F; - 627 : 35; - 628 : 02; - 629 : C1; - 630 : FF; - 631 : 27; - 632 : B3; - 633 : 86; - 634 : 3F; - 635 : 8D; - 636 : 05; - 637 : 73; - 638 : F0; - 639 : D2; - 640 : 86; - 641 : 13; - 642 : 16; - 643 : 02; - 644 : 26; - 645 : 6F; - 646 : E2; - 647 : 8D; - 648 : 6F; - 649 : 34; - 650 : 30; - 651 : 29; - 652 : 4A; - 653 : AC; - 654 : 62; - 655 : 25; - 656 : 46; - 657 : 30; - 658 : 01; - 659 : AF; - 660 : E4; - 661 : 86; - 662 : 12; - 663 : 17; - 664 : 02; - 665 : 11; - 666 : EC; - 667 : E4; - 668 : A3; - 669 : 62; - 670 : 27; - 671 : 06; - 672 : 10; - 673 : 83; - 674 : 00; - 675 : 20; - 676 : 23; - 677 : 02; - 678 : C6; - 679 : 20; - 680 : E7; - 681 : 64; - 682 : 8E; - 683 : FF; - 684 : 2E; - 685 : 17; - 686 : 01; - 687 : 9F; - 688 : CB; - 689 : 03; - 690 : 1F; - 691 : 98; - 692 : 17; - 693 : 01; - 694 : 82; - 695 : AE; - 696 : 62; - 697 : 17; - 698 : 01; - 699 : 75; - 700 : EB; - 701 : 62; - 702 : EB; - 703 : 63; - 704 : EB; - 705 : 84; - 706 : A6; - 707 : 80; - 708 : 17; - 709 : 01; - 710 : 72; - 711 : 6A; - 712 : 64; - 713 : 26; - 714 : F5; - 715 : 53; - 716 : 1F; - 717 : 98; - 718 : 17; - 719 : 01; - 720 : 68; - 721 : AF; - 722 : 62; - 723 : AC; - 724 : E4; - 725 : 26; - 726 : C3; - 727 : 86; - 728 : 14; - 729 : 8D; - 730 : 6A; - 731 : 32; - 732 : 65; - 733 : 39; - 734 : 8D; - 735 : 18; - 736 : 29; - 737 : 15; - 738 : 34; - 739 : 10; - 740 : 86; - 741 : 3E; - 742 : 8D; - 743 : 5D; - 744 : 8D; - 745 : 18; - 746 : 29; - 747 : 09; - 748 : A6; - 749 : A0; - 750 : A7; - 751 : 80; - 752 : 10; - 753 : AC; - 754 : E4; - 755 : 26; - 756 : F7; - 757 : 35; - 758 : 10; - 759 : 39; - 760 : 8D; - 761 : 08; - 762 : 29; - 763 : 42; - 764 : 1F; - 765 : 12; - 766 : 86; - 767 : 2D; - 768 : 8D; - 769 : 43; - 770 : 8D; - 771 : 0E; - 772 : 29; - 773 : 38; - 774 : 1F; - 775 : 01; - 776 : 8D; - 777 : 08; - 778 : 29; - 779 : 32; - 780 : 34; - 781 : 10; - 782 : A7; - 783 : 61; - 784 : 35; - 785 : 90; - 786 : 8D; - 787 : 11; - 788 : 29; - 789 : 28; - 790 : 48; - 791 : 48; - 792 : 48; - 793 : 48; - 794 : 1F; - 795 : 89; - 796 : 8D; - 797 : 07; - 798 : 29; - 799 : 1E; - 800 : 34; - 801 : 04; - 802 : AB; - 803 : E0; - 804 : 39; - 805 : 17; - 806 : 01; - 807 : 7C; - 808 : 81; - 809 : 30; - 810 : 25; - 811 : 12; - 812 : 81; - 813 : 39; - 814 : 22; - 815 : 03; - 816 : 80; - 817 : 30; - 818 : 39; - 819 : 81; - 820 : 41; - 821 : 25; - 822 : 07; - 823 : 81; - 824 : 46; - 825 : 22; - 826 : 03; - 827 : 80; - 828 : 37; - 829 : 39; - 830 : 1A; - 831 : 02; - 832 : 39; - 833 : 8D; - 834 : 00; - 835 : 86; - 836 : 20; - 837 : 16; - 838 : 01; - 839 : 63; - 840 : 17; - 841 : 00; - 842 : 85; - 843 : 8D; - 844 : F6; - 845 : 8D; - 846 : B3; - 847 : 29; - 848 : 02; - 849 : AF; - 850 : 44; - 851 : 39; - 852 : 17; - 853 : 00; - 854 : 83; - 855 : 8D; - 856 : EA; - 857 : 8D; - 858 : B7; - 859 : 29; - 860 : 02; - 861 : A7; - 862 : 41; - 863 : 39; - 864 : 17; - 865 : 00; - 866 : 80; - 867 : 8D; - 868 : DE; - 869 : 8D; - 870 : AB; - 871 : 29; - 872 : 02; - 873 : A7; - 874 : 43; - 875 : 39; - 876 : 8D; - 877 : 7E; - 878 : 8D; - 879 : D3; - 880 : 8D; - 881 : 90; - 882 : 29; - 883 : 02; - 884 : AF; - 885 : 4A; - 886 : 39; - 887 : 8D; - 888 : 7C; - 889 : 8D; - 890 : C8; - 891 : 8D; - 892 : 85; - 893 : 29; - 894 : 02; - 895 : AF; - 896 : 48; - 897 : 39; - 898 : 8D; - 899 : 7A; - 900 : 8D; - 901 : BD; - 902 : 17; - 903 : FF; - 904 : 79; - 905 : 29; - 906 : 02; - 907 : AF; - 908 : 46; - 909 : 39; - 910 : 8D; - 911 : 77; - 912 : 8D; - 913 : B1; - 914 : 17; - 915 : FF; - 916 : 7D; - 917 : 29; - 918 : 02; - 919 : A7; - 920 : 42; - 921 : 39; - 922 : 8D; - 923 : 74; - 924 : 8D; - 925 : A5; - 926 : 17; - 927 : FF; - 928 : 71; - 929 : 29; - 930 : 04; - 931 : 8A; - 932 : 80; - 933 : A7; - 934 : C4; - 935 : 39; - 936 : 8E; - 937 : FE; - 938 : ED; - 939 : 17; - 940 : 00; - 941 : A1; - 942 : 8D; - 943 : 16; - 944 : 8D; - 945 : 1E; - 946 : 8D; - 947 : 26; - 948 : 8D; - 949 : 2D; - 950 : 8D; - 951 : 34; - 952 : 8E; - 953 : FE; - 954 : ED; - 955 : 17; - 956 : 00; - 957 : 91; - 958 : 8D; - 959 : 35; - 960 : 8D; - 961 : 3C; - 962 : 8D; - 963 : 43; - 964 : 20; - 965 : 4A; - 966 : 8E; - 967 : FE; - 968 : F1; - 969 : 17; - 970 : 00; - 971 : 92; - 972 : 1F; - 973 : 31; - 974 : 20; - 975 : 61; - 976 : 8E; - 977 : FF; - 978 : 09; - 979 : 17; - 980 : 00; - 981 : 88; - 982 : AE; - 983 : 44; - 984 : 20; - 985 : 57; - 986 : 8E; - 987 : FF; - 988 : 15; - 989 : 8D; - 990 : 7F; - 991 : A6; - 992 : 41; - 993 : 20; - 994 : 56; - 995 : 8E; - 996 : FF; - 997 : 0F; - 998 : 8D; - 999 : 76; - 1000 : A6; - 1001 : 43; - 1002 : 20; - 1003 : 4D; - 1004 : 8E; - 1005 : FE; - 1006 : F7; - 1007 : 8D; - 1008 : 6D; - 1009 : AE; - 1010 : 4A; - 1011 : 20; - 1012 : 3C; - 1013 : 8E; - 1014 : FE; - 1015 : FD; - 1016 : 8D; - 1017 : 64; - 1018 : AE; - 1019 : 48; - 1020 : 20; - 1021 : 33; - 1022 : 8E; - 1023 : FF; - 1024 : 03; - 1025 : 8D; - 1026 : 5B; - 1027 : AE; - 1028 : 46; - 1029 : 20; - 1030 : 2A; - 1031 : 8E; - 1032 : FF; - 1033 : 1A; - 1034 : 8D; - 1035 : 52; - 1036 : A6; - 1037 : 42; - 1038 : 20; - 1039 : 29; - 1040 : 8E; - 1041 : FF; - 1042 : 1F; - 1043 : 8D; - 1044 : 49; - 1045 : A6; - 1046 : C4; - 1047 : 8E; - 1048 : FF; - 1049 : 26; - 1050 : 34; - 1051 : 02; - 1052 : C6; - 1053 : 08; - 1054 : A6; - 1055 : 80; - 1056 : 68; - 1057 : E4; - 1058 : 25; - 1059 : 02; - 1060 : 86; - 1061 : 2D; - 1062 : 17; - 1063 : 00; - 1064 : 82; - 1065 : 17; - 1066 : FF; - 1067 : 17; - 1068 : 5A; - 1069 : 26; - 1070 : EF; - 1071 : 35; - 1072 : 82; - 1073 : 34; - 1074 : 10; - 1075 : 35; - 1076 : 02; - 1077 : 8D; - 1078 : 02; - 1079 : 35; - 1080 : 02; - 1081 : 34; - 1082 : 02; - 1083 : 44; - 1084 : 44; - 1085 : 44; - 1086 : 44; - 1087 : 8D; - 1088 : 04; - 1089 : 35; - 1090 : 02; - 1091 : 84; - 1092 : 0F; - 1093 : 8B; - 1094 : 30; - 1095 : 81; - 1096 : 39; - 1097 : 2F; - 1098 : 02; - 1099 : 8B; - 1100 : 07; - 1101 : 20; - 1102 : 5C; - 1103 : 8D; - 1104 : 02; - 1105 : 20; - 1106 : 0B; - 1107 : 34; - 1108 : 10; - 1109 : 8E; - 1110 : FE; - 1111 : DF; - 1112 : 8D; - 1113 : 04; - 1114 : 35; - 1115 : 90; - 1116 : 8D; - 1117 : 4D; - 1118 : A6; - 1119 : 80; - 1120 : 81; - 1121 : 04; - 1122 : 26; - 1123 : F8; - 1124 : 39; - 1125 : 34; - 1126 : 06; - 1127 : F6; - 1128 : F0; - 1129 : D8; - 1130 : 4F; - 1131 : C5; - 1132 : 02; - 1133 : 27; - 1134 : 04; - 1135 : 8D; - 1136 : 61; - 1137 : 26; - 1138 : 0B; - 1139 : 4F; - 1140 : C5; - 1141 : 08; - 1142 : 27; - 1143 : 05; - 1144 : 17; - 1145 : 00; - 1146 : 80; - 1147 : 26; - 1148 : 01; - 1149 : 4F; - 1150 : 35; - 1151 : 86; - 1152 : 34; - 1153 : 04; - 1154 : F6; - 1155 : F0; - 1156 : D8; - 1157 : C5; - 1158 : 02; - 1159 : 27; - 1160 : 09; - 1161 : 8D; - 1162 : 47; - 1163 : 27; - 1164 : 05; - 1165 : 17; - 1166 : 00; - 1167 : 4C; - 1168 : 20; - 1169 : 10; - 1170 : C5; - 1171 : 08; - 1172 : 27; - 1173 : 0A; - 1174 : 17; - 1175 : 00; - 1176 : 62; - 1177 : 27; - 1178 : 05; - 1179 : 17; - 1180 : 00; - 1181 : 66; - 1182 : 20; - 1183 : 02; - 1184 : 20; - 1185 : E0; - 1186 : 35; - 1187 : 84; - 1188 : 7D; - 1189 : F0; - 1190 : D2; - 1191 : 27; - 1192 : D7; - 1193 : 8D; - 1194 : D5; - 1195 : 34; - 1196 : 04; - 1197 : F6; - 1198 : F0; - 1199 : D7; - 1200 : C5; - 1201 : 02; - 1202 : 27; - 1203 : 02; - 1204 : 8D; - 1205 : 35; - 1206 : C5; - 1207 : 01; - 1208 : 27; - 1209 : 03; - 1210 : 17; - 1211 : 00; - 1212 : 7D; - 1213 : 35; - 1214 : 84; - 1215 : BE; - 1216 : F0; - 1217 : D0; - 1218 : 86; - 1219 : 03; - 1220 : A7; - 1221 : 84; - 1222 : 86; - 1223 : 11; - 1224 : A7; - 1225 : 84; - 1226 : 6D; - 1227 : 01; - 1228 : 86; - 1229 : FF; - 1230 : B7; - 1231 : F0; - 1232 : D2; - 1233 : 39; - 1234 : 34; - 1235 : 02; - 1236 : A6; - 1237 : 9F; - 1238 : F0; - 1239 : D0; - 1240 : 85; - 1241 : 01; - 1242 : 35; - 1243 : 82; - 1244 : 34; - 1245 : 10; - 1246 : BE; - 1247 : F0; - 1248 : D0; - 1249 : A6; - 1250 : 84; - 1251 : 85; - 1252 : 01; - 1253 : 27; - 1254 : FA; - 1255 : A6; - 1256 : 01; - 1257 : 35; - 1258 : 90; - 1259 : 34; - 1260 : 14; - 1261 : BE; - 1262 : F0; - 1263 : D0; - 1264 : E6; - 1265 : 84; - 1266 : C5; - 1267 : 02; - 1268 : 27; - 1269 : FA; - 1270 : A7; - 1271 : 01; - 1272 : 35; - 1273 : 94; - 1274 : 39; - 1275 : 34; - 1276 : 02; - 1277 : B6; - 1278 : E0; - 1279 : 10; - 1280 : 85; - 1281 : 01; - 1282 : 35; - 1283 : 82; - 1284 : 8D; - 1285 : F5; - 1286 : 27; - 1287 : FC; - 1288 : B6; - 1289 : E0; - 1290 : 11; - 1291 : 39; - 1292 : 34; - 1293 : 14; - 1294 : 8E; - 1295 : E0; - 1296 : 10; - 1297 : E6; - 1298 : 84; - 1299 : C5; - 1300 : 02; - 1301 : 27; - 1302 : FA; - 1303 : A7; - 1304 : 01; - 1305 : 35; - 1306 : 94; - 1307 : 8E; - 1308 : E0; - 1309 : 20; - 1310 : CC; - 1311 : 00; - 1312 : 00; - 1313 : FD; - 1314 : F0; - 1315 : D3; - 1316 : A7; - 1317 : 02; - 1318 : E7; - 1319 : 03; - 1320 : E7; - 1321 : 04; - 1322 : FD; - 1323 : F0; - 1324 : D5; - 1325 : C6; - 1326 : 02; - 1327 : E7; - 1328 : 01; - 1329 : 7F; - 1330 : F0; - 1331 : D6; - 1332 : 86; - 1333 : 1B; - 1334 : 8D; - 1335 : 02; - 1336 : 86; - 1337 : 59; - 1338 : 34; - 1339 : 16; - 1340 : 8E; - 1341 : E0; - 1342 : 20; - 1343 : 7D; - 1344 : F0; - 1345 : D6; - 1346 : 27; - 1347 : 04; - 1348 : 8D; - 1349 : 74; - 1350 : 20; - 1351 : 0D; - 1352 : 81; - 1353 : 20; - 1354 : 24; - 1355 : 04; - 1356 : 8D; - 1357 : 09; - 1358 : 20; - 1359 : 05; - 1360 : A7; - 1361 : 84; - 1362 : 17; - 1363 : 00; - 1364 : C5; - 1365 : 35; - 1366 : 96; - 1367 : 81; - 1368 : 08; - 1369 : 10; - 1370 : 27; - 1371 : 00; - 1372 : 41; - 1373 : 81; - 1374 : 1B; - 1375 : 10; - 1376 : 27; - 1377 : 00; - 1378 : 6C; - 1379 : 81; - 1380 : 1A; - 1381 : 10; - 1382 : 27; - 1383 : 00; - 1384 : 8E; - 1385 : 81; - 1386 : 16; - 1387 : 10; - 1388 : 27; - 1389 : 00; - 1390 : 45; - 1391 : 81; - 1392 : 0D; - 1393 : 10; - 1394 : 27; - 1395 : 00; - 1396 : 99; - 1397 : 81; - 1398 : 0C; - 1399 : 10; - 1400 : 27; - 1401 : 00; - 1402 : 2C; - 1403 : 81; - 1404 : 0B; - 1405 : 10; - 1406 : 27; - 1407 : 00; - 1408 : 11; - 1409 : 81; - 1410 : 0A; - 1411 : 26; - 1412 : 51; - 1413 : FC; - 1414 : F0; - 1415 : D3; - 1416 : 5C; - 1417 : C1; - 1418 : 19; - 1419 : 10; - 1420 : 26; - 1421 : 00; - 1422 : 83; - 1423 : 16; - 1424 : 00; - 1425 : 99; - 1426 : FC; - 1427 : F0; - 1428 : D3; - 1429 : 5D; - 1430 : 10; - 1431 : 27; - 1432 : 00; - 1433 : 3C; - 1434 : 5A; - 1435 : 16; - 1436 : 00; - 1437 : 74; - 1438 : B6; - 1439 : F0; - 1440 : D3; - 1441 : 27; - 1442 : 33; - 1443 : 4A; - 1444 : 16; - 1445 : 00; - 1446 : 68; - 1447 : B6; - 1448 : F0; - 1449 : D3; - 1450 : 4C; - 1451 : 81; - 1452 : 50; - 1453 : 10; - 1454 : 27; - 1455 : 00; - 1456 : 25; - 1457 : 16; - 1458 : 00; - 1459 : 5B; - 1460 : CC; - 1461 : 00; - 1462 : 00; - 1463 : 16; - 1464 : 00; - 1465 : 58; - 1466 : F6; - 1467 : F0; - 1468 : D6; - 1469 : C1; - 1470 : 3D; - 1471 : 27; - 1472 : 16; - 1473 : 81; - 1474 : 59; - 1475 : 10; - 1476 : 27; - 1477 : 00; - 1478 : 6E; - 1479 : 81; - 1480 : 54; - 1481 : 27; - 1482 : 31; - 1483 : 81; - 1484 : 3D; - 1485 : 26; - 1486 : 04; - 1487 : B7; - 1488 : F0; - 1489 : D6; - 1490 : 39; - 1491 : 7F; - 1492 : F0; - 1493 : D6; - 1494 : 39; - 1495 : 7D; - 1496 : F0; - 1497 : D5; - 1498 : 26; - 1499 : 04; - 1500 : B7; - 1501 : F0; - 1502 : D5; - 1503 : 39; - 1504 : 7F; - 1505 : F0; - 1506 : D6; - 1507 : 80; - 1508 : 20; - 1509 : 81; - 1510 : 4F; - 1511 : 22; - 1512 : ED; - 1513 : F6; - 1514 : F0; - 1515 : D5; - 1516 : 7F; - 1517 : F0; - 1518 : D5; - 1519 : C0; - 1520 : 20; - 1521 : C1; - 1522 : 18; - 1523 : 22; - 1524 : E1; - 1525 : 20; - 1526 : 1B; - 1527 : CC; - 1528 : 00; - 1529 : 00; - 1530 : 8D; - 1531 : 16; - 1532 : B6; - 1533 : F0; - 1534 : D3; - 1535 : C6; - 1536 : 20; - 1537 : E7; - 1538 : 84; - 1539 : 4C; - 1540 : A7; - 1541 : 02; - 1542 : 81; - 1543 : 50; - 1544 : 26; - 1545 : F7; - 1546 : 7F; - 1547 : F0; - 1548 : D6; - 1549 : 39; - 1550 : 4F; - 1551 : F6; - 1552 : F0; - 1553 : D4; - 1554 : FD; - 1555 : F0; - 1556 : D3; - 1557 : A7; - 1558 : 02; - 1559 : E7; - 1560 : 03; - 1561 : 39; - 1562 : FC; - 1563 : F0; - 1564 : D3; - 1565 : 4C; - 1566 : 81; - 1567 : 50; - 1568 : 26; - 1569 : F0; - 1570 : 4F; - 1571 : 5C; - 1572 : C1; - 1573 : 19; - 1574 : 26; - 1575 : EA; - 1576 : 5A; - 1577 : 8D; - 1578 : E7; - 1579 : E6; - 1580 : 04; - 1581 : 5C; - 1582 : C1; - 1583 : 19; - 1584 : 25; - 1585 : 01; - 1586 : 5F; - 1587 : E7; - 1588 : 04; - 1589 : F6; - 1590 : F0; - 1591 : D3; - 1592 : 86; - 1593 : 20; - 1594 : F7; - 1595 : F0; - 1596 : D3; - 1597 : E7; - 1598 : 02; - 1599 : A7; - 1600 : 84; - 1601 : 5C; - 1602 : C1; - 1603 : 50; - 1604 : 26; - 1605 : F4; - 1606 : F6; - 1607 : F0; - 1608 : D4; - 1609 : 5C; - 1610 : C1; - 1611 : 19; - 1612 : 27; - 1613 : 08; - 1614 : F7; - 1615 : F0; - 1616 : D4; - 1617 : E7; - 1618 : 03; - 1619 : 5F; - 1620 : 20; - 1621 : E4; - 1622 : 5F; - 1623 : F7; - 1624 : F0; - 1625 : D3; - 1626 : E7; - 1627 : 02; - 1628 : F7; - 1629 : F0; - 1630 : D6; - 1631 : 39; - 1632 : 17; - 1633 : FE; - 1634 : 98; - 1635 : 26; - 1636 : 0D; - 1637 : 17; - 1638 : FE; - 1639 : 6A; - 1640 : 27; - 1641 : F6; - 1642 : 17; - 1643 : FE; - 1644 : 6F; - 1645 : 17; - 1646 : FE; - 1647 : CA; - 1648 : 20; - 1649 : EE; - 1650 : 17; - 1651 : FE; - 1652 : 8F; - 1653 : 17; - 1654 : FE; - 1655 : 73; - 1656 : 20; - 1657 : E6; - 1658 : 01; - 1659 : FB; - 1660 : 54; - 1661 : 02; - 1662 : FB; - 1663 : 8E; - 1664 : 03; - 1665 : FB; - 1666 : 9A; - 1667 : 04; - 1668 : FB; - 1669 : 60; - 1670 : 10; - 1671 : FB; - 1672 : 6C; - 1673 : 15; - 1674 : FB; - 1675 : 77; - 1676 : 18; - 1677 : FB; - 1678 : 48; - 1679 : 19; - 1680 : FB; - 1681 : 82; - 1682 : 41; - 1683 : FE; - 1684 : 60; - 1685 : 42; - 1686 : F9; - 1687 : B3; - 1688 : 45; - 1689 : F9; - 1690 : 0F; - 1691 : 47; - 1692 : F9; - 1693 : 6E; - 1694 : 49; - 1695 : F9; - 1696 : 95; - 1697 : 4C; - 1698 : FA; - 1699 : 2C; - 1700 : 4D; - 1701 : F8; - 1702 : BA; - 1703 : 4F; - 1704 : F9; - 1705 : 77; - 1706 : 50; - 1707 : FA; - 1708 : 85; - 1709 : 52; - 1710 : FB; - 1711 : A8; - 1712 : 53; - 1713 : F9; - 1714 : 03; - 1715 : 58; - 1716 : F9; - 1717 : DF; - 1718 : 5A; - 1719 : FA; - 1720 : DE; - 1721 : F9; - 1722 : 76; - 1723 : F9; - 1724 : 76; - 1725 : F9; - 1726 : 76; - 1727 : F9; - 1728 : 76; - 1729 : F9; - 1730 : 76; - 1731 : F9; - 1732 : EB; - 1733 : FF; - 1734 : FF; - 1735 : FF; - 1736 : FF; - 1737 : 00; - 1738 : 00; - 1739 : 00; - 1740 : 0D; - 1741 : 0A; - 1742 : 00; - 1743 : 00; - 1744 : 00; - 1745 : 4B; - 1746 : 2D; - 1747 : 42; - 1748 : 55; - 1749 : 47; - 1750 : 39; - 1751 : 53; - 1752 : 20; - 1753 : 56; - 1754 : 31; - 1755 : 2E; - 1756 : 30; - 1757 : 20; - 1758 : 04; - 1759 : 0D; - 1760 : 0A; - 1761 : 00; - 1762 : 00; - 1763 : 00; - 1764 : 04; - 1765 : 3E; - 1766 : 04; - 1767 : 57; - 1768 : 48; - 1769 : 41; - 1770 : 54; - 1771 : 3F; - 1772 : 04; - 1773 : 20; - 1774 : 2D; - 1775 : 20; - 1776 : 04; - 1777 : 20; - 1778 : 20; - 1779 : 53; - 1780 : 50; - 1781 : 3D; - 1782 : 04; - 1783 : 20; - 1784 : 20; - 1785 : 50; - 1786 : 43; - 1787 : 3D; - 1788 : 04; - 1789 : 20; - 1790 : 20; - 1791 : 55; - 1792 : 50; - 1793 : 3D; - 1794 : 04; - 1795 : 20; - 1796 : 20; - 1797 : 49; - 1798 : 59; - 1799 : 3D; - 1800 : 04; - 1801 : 20; - 1802 : 20; - 1803 : 49; - 1804 : 58; - 1805 : 3D; - 1806 : 04; - 1807 : 20; - 1808 : 20; - 1809 : 44; - 1810 : 50; - 1811 : 3D; - 1812 : 04; - 1813 : 20; - 1814 : 20; - 1815 : 41; - 1816 : 3D; - 1817 : 04; - 1818 : 20; - 1819 : 20; - 1820 : 42; - 1821 : 3D; - 1822 : 04; - 1823 : 20; - 1824 : 20; - 1825 : 43; - 1826 : 43; - 1827 : 3A; - 1828 : 20; - 1829 : 04; - 1830 : 45; - 1831 : 46; - 1832 : 48; - 1833 : 49; - 1834 : 4E; - 1835 : 5A; - 1836 : 56; - 1837 : 43; - 1838 : 53; - 1839 : 31; - 1840 : 04; - 1841 : 00; - 1842 : 00; - 1843 : 00; - 1844 : 00; - 1845 : 00; - 1846 : 00; - 1847 : 00; - 1848 : 00; - 1849 : 00; - 1850 : 00; - 1851 : 00; - 1852 : 00; - 1853 : 00; - 1854 : 00; - 1855 : 00; - 1856 : 00; - 1857 : 00; - 1858 : 00; - 1859 : 00; - 1860 : 00; - 1861 : 00; - 1862 : 00; - 1863 : 00; - 1864 : 00; - 1865 : 00; - 1866 : 00; - 1867 : 00; - 1868 : 00; - 1869 : 00; - 1870 : 00; - 1871 : 00; - 1872 : 00; - 1873 : 00; - 1874 : 00; - 1875 : 00; - 1876 : 00; - 1877 : 00; - 1878 : 00; - 1879 : 00; - 1880 : 00; - 1881 : 00; - 1882 : 00; - 1883 : 00; - 1884 : 00; - 1885 : 00; - 1886 : 00; - 1887 : 00; - 1888 : 00; - 1889 : 00; - 1890 : 00; - 1891 : 00; - 1892 : 00; - 1893 : 00; - 1894 : 00; - 1895 : 00; - 1896 : 00; - 1897 : 00; - 1898 : 00; - 1899 : 00; - 1900 : 00; - 1901 : 00; - 1902 : 00; - 1903 : 00; - 1904 : 00; - 1905 : 00; - 1906 : 00; - 1907 : 00; - 1908 : 00; - 1909 : 00; - 1910 : 00; - 1911 : 00; - 1912 : 00; - 1913 : 00; - 1914 : 00; - 1915 : 00; - 1916 : 00; - 1917 : 00; - 1918 : 00; - 1919 : 00; - 1920 : 00; - 1921 : 00; - 1922 : 00; - 1923 : 00; - 1924 : 00; - 1925 : 00; - 1926 : 00; - 1927 : 00; - 1928 : 00; - 1929 : 00; - 1930 : 00; - 1931 : 00; - 1932 : 00; - 1933 : 00; - 1934 : 00; - 1935 : 00; - 1936 : 00; - 1937 : 00; - 1938 : 00; - 1939 : 00; - 1940 : 00; - 1941 : 00; - 1942 : 00; - 1943 : 00; - 1944 : 00; - 1945 : 00; - 1946 : 00; - 1947 : 00; - 1948 : 00; - 1949 : 00; - 1950 : 00; - 1951 : 00; - 1952 : 00; - 1953 : 00; - 1954 : 00; - 1955 : 00; - 1956 : 00; - 1957 : 00; - 1958 : 00; - 1959 : 00; - 1960 : 00; - 1961 : 00; - 1962 : 00; - 1963 : 00; - 1964 : 00; - 1965 : 00; - 1966 : 00; - 1967 : 00; - 1968 : 00; - 1969 : 00; - 1970 : 6E; - 1971 : 9F; - 1972 : F0; - 1973 : C0; - 1974 : 6E; - 1975 : 9F; - 1976 : F0; - 1977 : C4; - 1978 : 6E; - 1979 : 9F; - 1980 : F0; - 1981 : C6; - 1982 : 6E; - 1983 : 9F; - 1984 : F0; - 1985 : C8; - 1986 : 6E; - 1987 : 9F; - 1988 : F0; - 1989 : CA; - 1990 : 1F; - 1991 : 43; - 1992 : AE; - 1993 : 4A; - 1994 : E6; - 1995 : 80; - 1996 : AF; - 1997 : 4A; - 1998 : 4F; - 1999 : 58; - 2000 : 49; - 2001 : BE; - 2002 : F0; - 2003 : CC; - 2004 : 8C; - 2005 : FF; - 2006 : FF; - 2007 : 27; - 2008 : 0F; - 2009 : 30; - 2010 : 8B; - 2011 : BC; - 2012 : F0; - 2013 : CE; - 2014 : 22; - 2015 : 08; - 2016 : 34; - 2017 : 10; - 2018 : EC; - 2019 : C4; - 2020 : AE; - 2021 : 44; - 2022 : 6E; - 2023 : F1; - 2024 : 37; - 2025 : 1F; - 2026 : EE; - 2027 : 42; - 2028 : 6E; - 2029 : 9F; - 2030 : F0; - 2031 : C2; - 2032 : FF; - 2033 : B2; - 2034 : FF; - 2035 : C6; - 2036 : FF; - 2037 : B6; - 2038 : FF; - 2039 : BA; - 2040 : FF; - 2041 : BE; - 2042 : FF; - 2043 : C2; - 2044 : F8; - 2045 : 34; - 2046 : F8; - 2047 : 34; -END; Index: trunk/rtl/System09_Terasic_DE1/roms/char_rom.mif =================================================================== --- trunk/rtl/System09_Terasic_DE1/roms/char_rom.mif (revision 115) +++ trunk/rtl/System09_Terasic_DE1/roms/char_rom.mif (nonexistent) @@ -1,2054 +0,0 @@ -WIDTH=8; -DEPTH=2048; -ADDRESS_RADIX=UNS; -DATA_RADIX=HEX; -CONTENT BEGIN - 0 : 00; - 1 : 44; - 2 : 64; - 3 : 54; - 4 : 4C; - 5 : 44; - 6 : 00; - 7 : 04; - 8 : 04; - 9 : 04; - 10 : 04; - 11 : 07; - 12 : 00; - 13 : 00; - 14 : 00; - 15 : 00; - 16 : 00; - 17 : 38; - 18 : 40; - 19 : 38; - 20 : 04; - 21 : 38; - 22 : 00; - 23 : 09; - 24 : 09; - 25 : 0F; - 26 : 09; - 27 : 09; - 28 : 00; - 29 : 00; - 30 : 00; - 31 : 00; - 32 : 00; - 33 : 38; - 34 : 40; - 35 : 38; - 36 : 04; - 37 : 38; - 38 : 00; - 39 : 11; - 40 : 0A; - 41 : 04; - 42 : 0A; - 43 : 11; - 44 : 00; - 45 : 00; - 46 : 00; - 47 : 00; - 48 : 00; - 49 : 78; - 50 : 40; - 51 : 70; - 52 : 40; - 53 : 78; - 54 : 00; - 55 : 11; - 56 : 0A; - 57 : 04; - 58 : 0A; - 59 : 11; - 60 : 00; - 61 : 00; - 62 : 00; - 63 : 00; - 64 : 00; - 65 : 78; - 66 : 40; - 67 : 70; - 68 : 40; - 69 : 78; - 70 : 00; - 71 : 1F; - 72 : 04; - 73 : 04; - 74 : 04; - 75 : 04; - 76 : 00; - 77 : 00; - 78 : 00; - 79 : 00; - 80 : 00; - 81 : 78; - 82 : 40; - 83 : 70; - 84 : 40; - 85 : 78; - 86 : 00; - 87 : 0E; - 88 : 11; - 89 : 15; - 90 : 12; - 91 : 0D; - 92 : 00; - 93 : 00; - 94 : 00; - 95 : 00; - 96 : 00; - 97 : 30; - 98 : 48; - 99 : 48; - 100 : 78; - 101 : 48; - 102 : 00; - 103 : 09; - 104 : 0A; - 105 : 0C; - 106 : 0A; - 107 : 09; - 108 : 00; - 109 : 00; - 110 : 00; - 111 : 00; - 112 : 00; - 113 : 70; - 114 : 48; - 115 : 70; - 116 : 48; - 117 : 70; - 118 : 00; - 119 : 08; - 120 : 08; - 121 : 08; - 122 : 08; - 123 : 0F; - 124 : 00; - 125 : 00; - 126 : 00; - 127 : 00; - 128 : 00; - 129 : 70; - 130 : 48; - 131 : 70; - 132 : 48; - 133 : 70; - 134 : 00; - 135 : 0E; - 136 : 10; - 137 : 0E; - 138 : 01; - 139 : 0E; - 140 : 00; - 141 : 00; - 142 : 00; - 143 : 00; - 144 : 00; - 145 : 44; - 146 : 44; - 147 : 7C; - 148 : 44; - 149 : 44; - 150 : 00; - 151 : 1F; - 152 : 04; - 153 : 04; - 154 : 04; - 155 : 04; - 156 : 00; - 157 : 00; - 158 : 00; - 159 : 00; - 160 : 00; - 161 : 40; - 162 : 40; - 163 : 40; - 164 : 40; - 165 : 7C; - 166 : 00; - 167 : 1F; - 168 : 10; - 169 : 1E; - 170 : 10; - 171 : 10; - 172 : 00; - 173 : 00; - 174 : 00; - 175 : 00; - 176 : 00; - 177 : 44; - 178 : 44; - 179 : 44; - 180 : 28; - 181 : 10; - 182 : 00; - 183 : 1F; - 184 : 04; - 185 : 04; - 186 : 04; - 187 : 04; - 188 : 00; - 189 : 00; - 190 : 00; - 191 : 00; - 192 : 00; - 193 : 78; - 194 : 40; - 195 : 70; - 196 : 40; - 197 : 40; - 198 : 00; - 199 : 0F; - 200 : 08; - 201 : 0E; - 202 : 08; - 203 : 08; - 204 : 00; - 205 : 00; - 206 : 00; - 207 : 00; - 208 : 00; - 209 : 3C; - 210 : 40; - 211 : 40; - 212 : 40; - 213 : 3C; - 214 : 00; - 215 : 1E; - 216 : 11; - 217 : 1E; - 218 : 11; - 219 : 11; - 220 : 00; - 221 : 00; - 222 : 00; - 223 : 00; - 224 : 00; - 225 : 38; - 226 : 40; - 227 : 38; - 228 : 04; - 229 : 38; - 230 : 00; - 231 : 0E; - 232 : 11; - 233 : 11; - 234 : 11; - 235 : 0E; - 236 : 00; - 237 : 00; - 238 : 00; - 239 : 00; - 240 : 00; - 241 : 38; - 242 : 40; - 243 : 38; - 244 : 04; - 245 : 38; - 246 : 00; - 247 : 07; - 248 : 02; - 249 : 02; - 250 : 02; - 251 : 07; - 252 : 00; - 253 : 00; - 254 : 00; - 255 : 00; - 256 : 00; - 257 : 70; - 258 : 48; - 259 : 48; - 260 : 48; - 261 : 70; - 262 : 00; - 263 : 0F; - 264 : 08; - 265 : 0E; - 266 : 08; - 267 : 0F; - 268 : 00; - 269 : 00; - 270 : 00; - 271 : 00; - 272 : 00; - 273 : 70; - 274 : 48; - 275 : 48; - 276 : 48; - 277 : 70; - 278 : 00; - 279 : 02; - 280 : 06; - 281 : 02; - 282 : 02; - 283 : 07; - 284 : 00; - 285 : 00; - 286 : 00; - 287 : 00; - 288 : 00; - 289 : 70; - 290 : 48; - 291 : 48; - 292 : 48; - 293 : 70; - 294 : 00; - 295 : 07; - 296 : 09; - 297 : 06; - 298 : 08; - 299 : 0F; - 300 : 00; - 301 : 00; - 302 : 00; - 303 : 00; - 304 : 00; - 305 : 70; - 306 : 48; - 307 : 48; - 308 : 48; - 309 : 70; - 310 : 00; - 311 : 0F; - 312 : 02; - 313 : 07; - 314 : 01; - 315 : 0E; - 316 : 00; - 317 : 00; - 318 : 00; - 319 : 00; - 320 : 00; - 321 : 70; - 322 : 48; - 323 : 48; - 324 : 48; - 325 : 70; - 326 : 00; - 327 : 09; - 328 : 09; - 329 : 0F; - 330 : 01; - 331 : 01; - 332 : 00; - 333 : 00; - 334 : 00; - 335 : 00; - 336 : 00; - 337 : 44; - 338 : 64; - 339 : 54; - 340 : 4C; - 341 : 44; - 342 : 00; - 343 : 09; - 344 : 0A; - 345 : 0C; - 346 : 0A; - 347 : 09; - 348 : 00; - 349 : 00; - 350 : 00; - 351 : 00; - 352 : 00; - 353 : 38; - 354 : 40; - 355 : 38; - 356 : 04; - 357 : 38; - 358 : 00; - 359 : 11; - 360 : 19; - 361 : 15; - 362 : 13; - 363 : 11; - 364 : 00; - 365 : 00; - 366 : 00; - 367 : 00; - 368 : 00; - 369 : 78; - 370 : 40; - 371 : 70; - 372 : 40; - 373 : 78; - 374 : 00; - 375 : 0E; - 376 : 09; - 377 : 0E; - 378 : 09; - 379 : 0E; - 380 : 00; - 381 : 00; - 382 : 00; - 383 : 00; - 384 : 00; - 385 : 38; - 386 : 40; - 387 : 40; - 388 : 40; - 389 : 38; - 390 : 00; - 391 : 11; - 392 : 19; - 393 : 15; - 394 : 13; - 395 : 11; - 396 : 00; - 397 : 00; - 398 : 00; - 399 : 00; - 400 : 00; - 401 : 78; - 402 : 40; - 403 : 70; - 404 : 40; - 405 : 78; - 406 : 00; - 407 : 11; - 408 : 1B; - 409 : 15; - 410 : 11; - 411 : 11; - 412 : 00; - 413 : 00; - 414 : 00; - 415 : 00; - 416 : 00; - 417 : 38; - 418 : 40; - 419 : 38; - 420 : 04; - 421 : 38; - 422 : 00; - 423 : 0E; - 424 : 09; - 425 : 0E; - 426 : 09; - 427 : 0E; - 428 : 00; - 429 : 00; - 430 : 00; - 431 : 00; - 432 : 00; - 433 : 78; - 434 : 40; - 435 : 70; - 436 : 40; - 437 : 78; - 438 : 00; - 439 : 0E; - 440 : 10; - 441 : 10; - 442 : 10; - 443 : 0E; - 444 : 00; - 445 : 00; - 446 : 00; - 447 : 00; - 448 : 00; - 449 : 78; - 450 : 40; - 451 : 70; - 452 : 40; - 453 : 40; - 454 : 00; - 455 : 0E; - 456 : 10; - 457 : 0E; - 458 : 01; - 459 : 0E; - 460 : 00; - 461 : 00; - 462 : 00; - 463 : 00; - 464 : 00; - 465 : 38; - 466 : 40; - 467 : 58; - 468 : 48; - 469 : 38; - 470 : 00; - 471 : 0E; - 472 : 10; - 473 : 0E; - 474 : 01; - 475 : 0E; - 476 : 00; - 477 : 00; - 478 : 00; - 479 : 00; - 480 : 00; - 481 : 70; - 482 : 48; - 483 : 70; - 484 : 50; - 485 : 48; - 486 : 00; - 487 : 0E; - 488 : 10; - 489 : 0E; - 490 : 01; - 491 : 0E; - 492 : 00; - 493 : 00; - 494 : 00; - 495 : 00; - 496 : 00; - 497 : 48; - 498 : 48; - 499 : 48; - 500 : 48; - 501 : 30; - 502 : 00; - 503 : 0E; - 504 : 10; - 505 : 0E; - 506 : 01; - 507 : 0E; - 508 : 00; - 509 : 00; - 510 : 00; - 511 : 00; - 512 : 00; - 513 : 00; - 514 : 00; - 515 : 00; - 516 : 00; - 517 : 00; - 518 : 00; - 519 : 00; - 520 : 00; - 521 : 00; - 522 : 00; - 523 : 00; - 524 : 00; - 525 : 00; - 526 : 00; - 527 : 00; - 528 : 00; - 529 : 08; - 530 : 08; - 531 : 08; - 532 : 08; - 533 : 08; - 534 : 08; - 535 : 08; - 536 : 00; - 537 : 00; - 538 : 08; - 539 : 08; - 540 : 00; - 541 : 00; - 542 : 00; - 543 : 00; - 544 : 00; - 545 : 12; - 546 : 12; - 547 : 12; - 548 : 12; - 549 : 00; - 550 : 00; - 551 : 00; - 552 : 00; - 553 : 00; - 554 : 00; - 555 : 00; - 556 : 00; - 557 : 00; - 558 : 00; - 559 : 00; - 560 : 00; - 561 : 24; - 562 : 24; - 563 : 24; - 564 : 7E; - 565 : 24; - 566 : 24; - 567 : 24; - 568 : 7E; - 569 : 24; - 570 : 24; - 571 : 24; - 572 : 00; - 573 : 00; - 574 : 00; - 575 : 00; - 576 : 00; - 577 : 08; - 578 : 3E; - 579 : 49; - 580 : 48; - 581 : 48; - 582 : 3E; - 583 : 09; - 584 : 09; - 585 : 49; - 586 : 3E; - 587 : 08; - 588 : 00; - 589 : 00; - 590 : 00; - 591 : 00; - 592 : 00; - 593 : 61; - 594 : 61; - 595 : 01; - 596 : 02; - 597 : 04; - 598 : 08; - 599 : 10; - 600 : 20; - 601 : 40; - 602 : 43; - 603 : 43; - 604 : 00; - 605 : 00; - 606 : 00; - 607 : 00; - 608 : 00; - 609 : 38; - 610 : 44; - 611 : 44; - 612 : 44; - 613 : 44; - 614 : 38; - 615 : 44; - 616 : 44; - 617 : 44; - 618 : 42; - 619 : 3D; - 620 : 00; - 621 : 00; - 622 : 00; - 623 : 00; - 624 : 00; - 625 : 0C; - 626 : 08; - 627 : 10; - 628 : 20; - 629 : 00; - 630 : 00; - 631 : 00; - 632 : 00; - 633 : 00; - 634 : 00; - 635 : 00; - 636 : 00; - 637 : 00; - 638 : 00; - 639 : 00; - 640 : 00; - 641 : 02; - 642 : 04; - 643 : 08; - 644 : 10; - 645 : 10; - 646 : 10; - 647 : 10; - 648 : 10; - 649 : 08; - 650 : 04; - 651 : 02; - 652 : 00; - 653 : 00; - 654 : 00; - 655 : 00; - 656 : 00; - 657 : 20; - 658 : 10; - 659 : 08; - 660 : 04; - 661 : 04; - 662 : 04; - 663 : 04; - 664 : 04; - 665 : 08; - 666 : 10; - 667 : 20; - 668 : 00; - 669 : 00; - 670 : 00; - 671 : 00; - 672 : 00; - 673 : 00; - 674 : 00; - 675 : 41; - 676 : 22; - 677 : 14; - 678 : 7F; - 679 : 14; - 680 : 22; - 681 : 41; - 682 : 00; - 683 : 00; - 684 : 00; - 685 : 00; - 686 : 00; - 687 : 00; - 688 : 00; - 689 : 00; - 690 : 00; - 691 : 08; - 692 : 08; - 693 : 08; - 694 : 7F; - 695 : 08; - 696 : 08; - 697 : 08; - 698 : 00; - 699 : 00; - 700 : 00; - 701 : 00; - 702 : 00; - 703 : 00; - 704 : 00; - 705 : 00; - 706 : 00; - 707 : 00; - 708 : 00; - 709 : 00; - 710 : 00; - 711 : 00; - 712 : 00; - 713 : 00; - 714 : 18; - 715 : 18; - 716 : 10; - 717 : 20; - 718 : 40; - 719 : 00; - 720 : 00; - 721 : 00; - 722 : 00; - 723 : 00; - 724 : 00; - 725 : 00; - 726 : 7F; - 727 : 00; - 728 : 00; - 729 : 00; - 730 : 00; - 731 : 00; - 732 : 00; - 733 : 00; - 734 : 00; - 735 : 00; - 736 : 00; - 737 : 00; - 738 : 00; - 739 : 00; - 740 : 00; - 741 : 00; - 742 : 00; - 743 : 00; - 744 : 00; - 745 : 00; - 746 : 18; - 747 : 18; - 748 : 00; - 749 : 00; - 750 : 00; - 751 : 00; - 752 : 00; - 753 : 01; - 754 : 01; - 755 : 01; - 756 : 02; - 757 : 04; - 758 : 08; - 759 : 10; - 760 : 20; - 761 : 40; - 762 : 40; - 763 : 40; - 764 : 00; - 765 : 00; - 766 : 00; - 767 : 00; - 768 : 00; - 769 : 08; - 770 : 14; - 771 : 22; - 772 : 41; - 773 : 41; - 774 : 41; - 775 : 41; - 776 : 41; - 777 : 22; - 778 : 14; - 779 : 08; - 780 : 00; - 781 : 00; - 782 : 00; - 783 : 00; - 784 : 00; - 785 : 08; - 786 : 18; - 787 : 28; - 788 : 08; - 789 : 08; - 790 : 08; - 791 : 08; - 792 : 08; - 793 : 08; - 794 : 08; - 795 : 3E; - 796 : 00; - 797 : 00; - 798 : 00; - 799 : 00; - 800 : 00; - 801 : 3C; - 802 : 42; - 803 : 41; - 804 : 01; - 805 : 02; - 806 : 04; - 807 : 08; - 808 : 10; - 809 : 20; - 810 : 40; - 811 : 7F; - 812 : 00; - 813 : 00; - 814 : 00; - 815 : 00; - 816 : 00; - 817 : 3E; - 818 : 41; - 819 : 01; - 820 : 01; - 821 : 01; - 822 : 0E; - 823 : 01; - 824 : 01; - 825 : 01; - 826 : 41; - 827 : 3E; - 828 : 00; - 829 : 00; - 830 : 00; - 831 : 00; - 832 : 00; - 833 : 02; - 834 : 06; - 835 : 0A; - 836 : 12; - 837 : 22; - 838 : 7F; - 839 : 02; - 840 : 02; - 841 : 02; - 842 : 02; - 843 : 02; - 844 : 00; - 845 : 00; - 846 : 00; - 847 : 00; - 848 : 00; - 849 : 7F; - 850 : 40; - 851 : 40; - 852 : 40; - 853 : 40; - 854 : 5E; - 855 : 61; - 856 : 01; - 857 : 01; - 858 : 41; - 859 : 3E; - 860 : 00; - 861 : 00; - 862 : 00; - 863 : 00; - 864 : 00; - 865 : 1E; - 866 : 21; - 867 : 40; - 868 : 40; - 869 : 40; - 870 : 5E; - 871 : 61; - 872 : 41; - 873 : 41; - 874 : 21; - 875 : 1E; - 876 : 00; - 877 : 00; - 878 : 00; - 879 : 00; - 880 : 00; - 881 : 7F; - 882 : 01; - 883 : 01; - 884 : 01; - 885 : 02; - 886 : 04; - 887 : 08; - 888 : 10; - 889 : 20; - 890 : 40; - 891 : 40; - 892 : 00; - 893 : 00; - 894 : 00; - 895 : 00; - 896 : 00; - 897 : 3E; - 898 : 41; - 899 : 41; - 900 : 41; - 901 : 41; - 902 : 3E; - 903 : 41; - 904 : 41; - 905 : 41; - 906 : 41; - 907 : 3E; - 908 : 00; - 909 : 00; - 910 : 00; - 911 : 00; - 912 : 00; - 913 : 3C; - 914 : 42; - 915 : 41; - 916 : 41; - 917 : 43; - 918 : 3D; - 919 : 01; - 920 : 01; - 921 : 01; - 922 : 42; - 923 : 3C; - 924 : 00; - 925 : 00; - 926 : 00; - 927 : 00; - 928 : 00; - 929 : 00; - 930 : 18; - 931 : 18; - 932 : 18; - 933 : 00; - 934 : 00; - 935 : 00; - 936 : 18; - 937 : 18; - 938 : 18; - 939 : 00; - 940 : 00; - 941 : 00; - 942 : 00; - 943 : 00; - 944 : 00; - 945 : 00; - 946 : 18; - 947 : 18; - 948 : 18; - 949 : 00; - 950 : 00; - 951 : 00; - 952 : 18; - 953 : 18; - 954 : 18; - 955 : 10; - 956 : 20; - 957 : 40; - 958 : 00; - 959 : 00; - 960 : 00; - 961 : 01; - 962 : 02; - 963 : 04; - 964 : 08; - 965 : 10; - 966 : 20; - 967 : 10; - 968 : 08; - 969 : 04; - 970 : 02; - 971 : 01; - 972 : 00; - 973 : 00; - 974 : 00; - 975 : 00; - 976 : 00; - 977 : 00; - 978 : 00; - 979 : 00; - 980 : 7F; - 981 : 00; - 982 : 00; - 983 : 7F; - 984 : 00; - 985 : 00; - 986 : 00; - 987 : 00; - 988 : 00; - 989 : 00; - 990 : 00; - 991 : 00; - 992 : 00; - 993 : 40; - 994 : 20; - 995 : 10; - 996 : 08; - 997 : 04; - 998 : 02; - 999 : 04; - 1000 : 08; - 1001 : 10; - 1002 : 20; - 1003 : 40; - 1004 : 00; - 1005 : 00; - 1006 : 00; - 1007 : 00; - 1008 : 00; - 1009 : 3E; - 1010 : 41; - 1011 : 01; - 1012 : 01; - 1013 : 06; - 1014 : 08; - 1015 : 08; - 1016 : 08; - 1017 : 00; - 1018 : 08; - 1019 : 08; - 1020 : 00; - 1021 : 00; - 1022 : 00; - 1023 : 00; - 1024 : 00; - 1025 : 1C; - 1026 : 22; - 1027 : 41; - 1028 : 45; - 1029 : 49; - 1030 : 4E; - 1031 : 40; - 1032 : 40; - 1033 : 41; - 1034 : 22; - 1035 : 1C; - 1036 : 00; - 1037 : 00; - 1038 : 00; - 1039 : 00; - 1040 : 00; - 1041 : 08; - 1042 : 14; - 1043 : 22; - 1044 : 41; - 1045 : 41; - 1046 : 7F; - 1047 : 41; - 1048 : 41; - 1049 : 41; - 1050 : 41; - 1051 : 41; - 1052 : 00; - 1053 : 00; - 1054 : 00; - 1055 : 00; - 1056 : 00; - 1057 : 7E; - 1058 : 21; - 1059 : 21; - 1060 : 21; - 1061 : 21; - 1062 : 3E; - 1063 : 21; - 1064 : 21; - 1065 : 21; - 1066 : 21; - 1067 : 7E; - 1068 : 00; - 1069 : 00; - 1070 : 00; - 1071 : 00; - 1072 : 00; - 1073 : 1E; - 1074 : 21; - 1075 : 41; - 1076 : 40; - 1077 : 40; - 1078 : 40; - 1079 : 40; - 1080 : 40; - 1081 : 41; - 1082 : 21; - 1083 : 1E; - 1084 : 00; - 1085 : 00; - 1086 : 00; - 1087 : 00; - 1088 : 00; - 1089 : 7C; - 1090 : 22; - 1091 : 21; - 1092 : 21; - 1093 : 21; - 1094 : 21; - 1095 : 21; - 1096 : 21; - 1097 : 21; - 1098 : 22; - 1099 : 7C; - 1100 : 00; - 1101 : 00; - 1102 : 00; - 1103 : 00; - 1104 : 00; - 1105 : 7F; - 1106 : 40; - 1107 : 40; - 1108 : 40; - 1109 : 40; - 1110 : 7C; - 1111 : 40; - 1112 : 40; - 1113 : 40; - 1114 : 40; - 1115 : 7F; - 1116 : 00; - 1117 : 00; - 1118 : 00; - 1119 : 00; - 1120 : 00; - 1121 : 7F; - 1122 : 40; - 1123 : 40; - 1124 : 40; - 1125 : 40; - 1126 : 7C; - 1127 : 40; - 1128 : 40; - 1129 : 40; - 1130 : 40; - 1131 : 40; - 1132 : 00; - 1133 : 00; - 1134 : 00; - 1135 : 00; - 1136 : 00; - 1137 : 1E; - 1138 : 21; - 1139 : 40; - 1140 : 40; - 1141 : 40; - 1142 : 47; - 1143 : 41; - 1144 : 41; - 1145 : 41; - 1146 : 21; - 1147 : 1E; - 1148 : 00; - 1149 : 00; - 1150 : 00; - 1151 : 00; - 1152 : 00; - 1153 : 41; - 1154 : 41; - 1155 : 41; - 1156 : 41; - 1157 : 41; - 1158 : 7F; - 1159 : 41; - 1160 : 41; - 1161 : 41; - 1162 : 41; - 1163 : 41; - 1164 : 00; - 1165 : 00; - 1166 : 00; - 1167 : 00; - 1168 : 00; - 1169 : 3E; - 1170 : 08; - 1171 : 08; - 1172 : 08; - 1173 : 08; - 1174 : 08; - 1175 : 08; - 1176 : 08; - 1177 : 08; - 1178 : 08; - 1179 : 3E; - 1180 : 00; - 1181 : 00; - 1182 : 00; - 1183 : 00; - 1184 : 00; - 1185 : 07; - 1186 : 02; - 1187 : 02; - 1188 : 02; - 1189 : 02; - 1190 : 02; - 1191 : 02; - 1192 : 02; - 1193 : 02; - 1194 : 42; - 1195 : 3C; - 1196 : 00; - 1197 : 00; - 1198 : 00; - 1199 : 00; - 1200 : 00; - 1201 : 41; - 1202 : 42; - 1203 : 44; - 1204 : 48; - 1205 : 50; - 1206 : 60; - 1207 : 50; - 1208 : 48; - 1209 : 44; - 1210 : 42; - 1211 : 41; - 1212 : 00; - 1213 : 00; - 1214 : 00; - 1215 : 00; - 1216 : 00; - 1217 : 40; - 1218 : 40; - 1219 : 40; - 1220 : 40; - 1221 : 40; - 1222 : 40; - 1223 : 40; - 1224 : 40; - 1225 : 40; - 1226 : 40; - 1227 : 7F; - 1228 : 00; - 1229 : 00; - 1230 : 00; - 1231 : 00; - 1232 : 00; - 1233 : 41; - 1234 : 63; - 1235 : 55; - 1236 : 49; - 1237 : 49; - 1238 : 41; - 1239 : 41; - 1240 : 41; - 1241 : 41; - 1242 : 41; - 1243 : 41; - 1244 : 00; - 1245 : 00; - 1246 : 00; - 1247 : 00; - 1248 : 00; - 1249 : 41; - 1250 : 41; - 1251 : 61; - 1252 : 51; - 1253 : 49; - 1254 : 49; - 1255 : 45; - 1256 : 43; - 1257 : 41; - 1258 : 41; - 1259 : 41; - 1260 : 00; - 1261 : 00; - 1262 : 00; - 1263 : 00; - 1264 : 00; - 1265 : 3E; - 1266 : 41; - 1267 : 41; - 1268 : 41; - 1269 : 41; - 1270 : 41; - 1271 : 41; - 1272 : 41; - 1273 : 41; - 1274 : 41; - 1275 : 3E; - 1276 : 00; - 1277 : 00; - 1278 : 00; - 1279 : 00; - 1280 : 00; - 1281 : 7E; - 1282 : 41; - 1283 : 41; - 1284 : 41; - 1285 : 41; - 1286 : 7E; - 1287 : 40; - 1288 : 40; - 1289 : 40; - 1290 : 40; - 1291 : 40; - 1292 : 00; - 1293 : 00; - 1294 : 00; - 1295 : 00; - 1296 : 00; - 1297 : 3E; - 1298 : 41; - 1299 : 41; - 1300 : 41; - 1301 : 41; - 1302 : 41; - 1303 : 41; - 1304 : 49; - 1305 : 45; - 1306 : 42; - 1307 : 3D; - 1308 : 00; - 1309 : 00; - 1310 : 00; - 1311 : 00; - 1312 : 00; - 1313 : 7E; - 1314 : 41; - 1315 : 41; - 1316 : 41; - 1317 : 41; - 1318 : 7E; - 1319 : 50; - 1320 : 48; - 1321 : 44; - 1322 : 42; - 1323 : 41; - 1324 : 00; - 1325 : 00; - 1326 : 00; - 1327 : 00; - 1328 : 00; - 1329 : 3E; - 1330 : 41; - 1331 : 40; - 1332 : 40; - 1333 : 40; - 1334 : 3E; - 1335 : 01; - 1336 : 01; - 1337 : 01; - 1338 : 41; - 1339 : 3E; - 1340 : 00; - 1341 : 00; - 1342 : 00; - 1343 : 00; - 1344 : 00; - 1345 : 7F; - 1346 : 08; - 1347 : 08; - 1348 : 08; - 1349 : 08; - 1350 : 08; - 1351 : 08; - 1352 : 08; - 1353 : 08; - 1354 : 08; - 1355 : 08; - 1356 : 00; - 1357 : 00; - 1358 : 00; - 1359 : 00; - 1360 : 00; - 1361 : 41; - 1362 : 41; - 1363 : 41; - 1364 : 41; - 1365 : 41; - 1366 : 41; - 1367 : 41; - 1368 : 41; - 1369 : 41; - 1370 : 41; - 1371 : 3E; - 1372 : 00; - 1373 : 00; - 1374 : 00; - 1375 : 00; - 1376 : 00; - 1377 : 41; - 1378 : 41; - 1379 : 41; - 1380 : 22; - 1381 : 22; - 1382 : 22; - 1383 : 14; - 1384 : 14; - 1385 : 14; - 1386 : 08; - 1387 : 08; - 1388 : 00; - 1389 : 00; - 1390 : 00; - 1391 : 00; - 1392 : 00; - 1393 : 41; - 1394 : 41; - 1395 : 41; - 1396 : 41; - 1397 : 41; - 1398 : 49; - 1399 : 49; - 1400 : 55; - 1401 : 55; - 1402 : 22; - 1403 : 22; - 1404 : 00; - 1405 : 00; - 1406 : 00; - 1407 : 00; - 1408 : 00; - 1409 : 41; - 1410 : 41; - 1411 : 41; - 1412 : 22; - 1413 : 14; - 1414 : 08; - 1415 : 14; - 1416 : 22; - 1417 : 41; - 1418 : 41; - 1419 : 41; - 1420 : 00; - 1421 : 00; - 1422 : 00; - 1423 : 00; - 1424 : 00; - 1425 : 41; - 1426 : 41; - 1427 : 41; - 1428 : 22; - 1429 : 14; - 1430 : 08; - 1431 : 08; - 1432 : 08; - 1433 : 08; - 1434 : 08; - 1435 : 08; - 1436 : 00; - 1437 : 00; - 1438 : 00; - 1439 : 00; - 1440 : 00; - 1441 : 7F; - 1442 : 01; - 1443 : 01; - 1444 : 02; - 1445 : 04; - 1446 : 08; - 1447 : 10; - 1448 : 20; - 1449 : 40; - 1450 : 40; - 1451 : 7F; - 1452 : 00; - 1453 : 00; - 1454 : 00; - 1455 : 00; - 1456 : 00; - 1457 : 1E; - 1458 : 10; - 1459 : 10; - 1460 : 10; - 1461 : 10; - 1462 : 10; - 1463 : 10; - 1464 : 10; - 1465 : 10; - 1466 : 10; - 1467 : 1E; - 1468 : 00; - 1469 : 00; - 1470 : 00; - 1471 : 00; - 1472 : 00; - 1473 : 40; - 1474 : 40; - 1475 : 40; - 1476 : 20; - 1477 : 10; - 1478 : 08; - 1479 : 04; - 1480 : 02; - 1481 : 01; - 1482 : 01; - 1483 : 01; - 1484 : 00; - 1485 : 00; - 1486 : 00; - 1487 : 00; - 1488 : 00; - 1489 : 3C; - 1490 : 04; - 1491 : 04; - 1492 : 04; - 1493 : 04; - 1494 : 04; - 1495 : 04; - 1496 : 04; - 1497 : 04; - 1498 : 04; - 1499 : 3C; - 1500 : 00; - 1501 : 00; - 1502 : 00; - 1503 : 00; - 1504 : 00; - 1505 : 08; - 1506 : 14; - 1507 : 22; - 1508 : 41; - 1509 : 00; - 1510 : 00; - 1511 : 00; - 1512 : 00; - 1513 : 00; - 1514 : 00; - 1515 : 00; - 1516 : 00; - 1517 : 00; - 1518 : 00; - 1519 : 00; - 1520 : 00; - 1521 : 00; - 1522 : 00; - 1523 : 00; - 1524 : 00; - 1525 : 00; - 1526 : 00; - 1527 : 00; - 1528 : 00; - 1529 : 00; - 1530 : 00; - 1531 : 7F; - 1532 : 00; - 1533 : 00; - 1534 : 00; - 1535 : 00; - 1536 : 00; - 1537 : 18; - 1538 : 08; - 1539 : 04; - 1540 : 02; - 1541 : 00; - 1542 : 00; - 1543 : 00; - 1544 : 00; - 1545 : 00; - 1546 : 00; - 1547 : 00; - 1548 : 00; - 1549 : 00; - 1550 : 00; - 1551 : 00; - 1552 : 00; - 1553 : 00; - 1554 : 00; - 1555 : 00; - 1556 : 00; - 1557 : 3E; - 1558 : 01; - 1559 : 01; - 1560 : 3F; - 1561 : 41; - 1562 : 41; - 1563 : 3F; - 1564 : 00; - 1565 : 00; - 1566 : 00; - 1567 : 00; - 1568 : 00; - 1569 : 40; - 1570 : 40; - 1571 : 40; - 1572 : 40; - 1573 : 5E; - 1574 : 61; - 1575 : 41; - 1576 : 61; - 1577 : 61; - 1578 : 61; - 1579 : 5E; - 1580 : 00; - 1581 : 00; - 1582 : 00; - 1583 : 00; - 1584 : 00; - 1585 : 00; - 1586 : 00; - 1587 : 00; - 1588 : 00; - 1589 : 1E; - 1590 : 21; - 1591 : 40; - 1592 : 40; - 1593 : 40; - 1594 : 21; - 1595 : 1E; - 1596 : 00; - 1597 : 00; - 1598 : 00; - 1599 : 00; - 1600 : 00; - 1601 : 01; - 1602 : 01; - 1603 : 01; - 1604 : 01; - 1605 : 3D; - 1606 : 43; - 1607 : 41; - 1608 : 41; - 1609 : 41; - 1610 : 43; - 1611 : 3D; - 1612 : 00; - 1613 : 00; - 1614 : 00; - 1615 : 00; - 1616 : 00; - 1617 : 00; - 1618 : 00; - 1619 : 00; - 1620 : 00; - 1621 : 3E; - 1622 : 41; - 1623 : 41; - 1624 : 7F; - 1625 : 40; - 1626 : 40; - 1627 : 3E; - 1628 : 00; - 1629 : 00; - 1630 : 00; - 1631 : 00; - 1632 : 00; - 1633 : 0E; - 1634 : 11; - 1635 : 10; - 1636 : 10; - 1637 : 7C; - 1638 : 10; - 1639 : 10; - 1640 : 10; - 1641 : 10; - 1642 : 10; - 1643 : 10; - 1644 : 00; - 1645 : 00; - 1646 : 00; - 1647 : 00; - 1648 : 00; - 1649 : 00; - 1650 : 00; - 1651 : 00; - 1652 : 01; - 1653 : 3D; - 1654 : 42; - 1655 : 42; - 1656 : 42; - 1657 : 42; - 1658 : 3E; - 1659 : 02; - 1660 : 02; - 1661 : 42; - 1662 : 3C; - 1663 : 00; - 1664 : 00; - 1665 : 40; - 1666 : 40; - 1667 : 40; - 1668 : 40; - 1669 : 5E; - 1670 : 61; - 1671 : 41; - 1672 : 41; - 1673 : 41; - 1674 : 41; - 1675 : 41; - 1676 : 00; - 1677 : 00; - 1678 : 00; - 1679 : 00; - 1680 : 00; - 1681 : 08; - 1682 : 08; - 1683 : 00; - 1684 : 00; - 1685 : 18; - 1686 : 08; - 1687 : 08; - 1688 : 08; - 1689 : 08; - 1690 : 08; - 1691 : 3E; - 1692 : 00; - 1693 : 00; - 1694 : 00; - 1695 : 00; - 1696 : 00; - 1697 : 02; - 1698 : 02; - 1699 : 00; - 1700 : 00; - 1701 : 02; - 1702 : 02; - 1703 : 02; - 1704 : 02; - 1705 : 02; - 1706 : 02; - 1707 : 02; - 1708 : 02; - 1709 : 42; - 1710 : 3C; - 1711 : 00; - 1712 : 00; - 1713 : 40; - 1714 : 40; - 1715 : 40; - 1716 : 40; - 1717 : 41; - 1718 : 44; - 1719 : 48; - 1720 : 70; - 1721 : 48; - 1722 : 44; - 1723 : 41; - 1724 : 00; - 1725 : 00; - 1726 : 00; - 1727 : 00; - 1728 : 00; - 1729 : 18; - 1730 : 08; - 1731 : 08; - 1732 : 08; - 1733 : 08; - 1734 : 08; - 1735 : 08; - 1736 : 08; - 1737 : 08; - 1738 : 08; - 1739 : 1C; - 1740 : 00; - 1741 : 00; - 1742 : 00; - 1743 : 00; - 1744 : 00; - 1745 : 00; - 1746 : 00; - 1747 : 00; - 1748 : 00; - 1749 : 22; - 1750 : 55; - 1751 : 49; - 1752 : 49; - 1753 : 41; - 1754 : 41; - 1755 : 41; - 1756 : 00; - 1757 : 00; - 1758 : 00; - 1759 : 00; - 1760 : 00; - 1761 : 00; - 1762 : 00; - 1763 : 00; - 1764 : 00; - 1765 : 5E; - 1766 : 61; - 1767 : 41; - 1768 : 41; - 1769 : 41; - 1770 : 41; - 1771 : 41; - 1772 : 00; - 1773 : 00; - 1774 : 00; - 1775 : 00; - 1776 : 00; - 1777 : 00; - 1778 : 00; - 1779 : 00; - 1780 : 00; - 1781 : 3E; - 1782 : 41; - 1783 : 41; - 1784 : 41; - 1785 : 41; - 1786 : 41; - 1787 : 3E; - 1788 : 00; - 1789 : 00; - 1790 : 00; - 1791 : 00; - 1792 : 00; - 1793 : 00; - 1794 : 00; - 1795 : 00; - 1796 : 00; - 1797 : 5E; - 1798 : 61; - 1799 : 61; - 1800 : 61; - 1801 : 61; - 1802 : 5E; - 1803 : 40; - 1804 : 40; - 1805 : 40; - 1806 : 40; - 1807 : 00; - 1808 : 00; - 1809 : 00; - 1810 : 00; - 1811 : 00; - 1812 : 00; - 1813 : 3D; - 1814 : 43; - 1815 : 43; - 1816 : 43; - 1817 : 43; - 1818 : 3D; - 1819 : 01; - 1820 : 01; - 1821 : 01; - 1822 : 01; - 1823 : 00; - 1824 : 00; - 1825 : 00; - 1826 : 00; - 1827 : 00; - 1828 : 00; - 1829 : 4E; - 1830 : 31; - 1831 : 20; - 1832 : 20; - 1833 : 20; - 1834 : 20; - 1835 : 20; - 1836 : 00; - 1837 : 00; - 1838 : 00; - 1839 : 00; - 1840 : 00; - 1841 : 00; - 1842 : 00; - 1843 : 00; - 1844 : 00; - 1845 : 3E; - 1846 : 40; - 1847 : 40; - 1848 : 3E; - 1849 : 01; - 1850 : 01; - 1851 : 3E; - 1852 : 00; - 1853 : 00; - 1854 : 00; - 1855 : 00; - 1856 : 00; - 1857 : 10; - 1858 : 10; - 1859 : 10; - 1860 : 10; - 1861 : 7C; - 1862 : 10; - 1863 : 10; - 1864 : 10; - 1865 : 10; - 1866 : 12; - 1867 : 0C; - 1868 : 00; - 1869 : 00; - 1870 : 00; - 1871 : 00; - 1872 : 00; - 1873 : 00; - 1874 : 00; - 1875 : 00; - 1876 : 00; - 1877 : 42; - 1878 : 42; - 1879 : 42; - 1880 : 42; - 1881 : 42; - 1882 : 42; - 1883 : 3D; - 1884 : 00; - 1885 : 00; - 1886 : 00; - 1887 : 00; - 1888 : 00; - 1889 : 00; - 1890 : 00; - 1891 : 00; - 1892 : 00; - 1893 : 41; - 1894 : 41; - 1895 : 22; - 1896 : 22; - 1897 : 14; - 1898 : 14; - 1899 : 08; - 1900 : 00; - 1901 : 00; - 1902 : 00; - 1903 : 00; - 1904 : 00; - 1905 : 00; - 1906 : 00; - 1907 : 00; - 1908 : 00; - 1909 : 41; - 1910 : 41; - 1911 : 41; - 1912 : 49; - 1913 : 49; - 1914 : 55; - 1915 : 22; - 1916 : 00; - 1917 : 00; - 1918 : 00; - 1919 : 00; - 1920 : 00; - 1921 : 00; - 1922 : 00; - 1923 : 00; - 1924 : 00; - 1925 : 41; - 1926 : 22; - 1927 : 14; - 1928 : 08; - 1929 : 14; - 1930 : 22; - 1931 : 41; - 1932 : 00; - 1933 : 00; - 1934 : 00; - 1935 : 00; - 1936 : 00; - 1937 : 00; - 1938 : 00; - 1939 : 00; - 1940 : 00; - 1941 : 42; - 1942 : 42; - 1943 : 42; - 1944 : 42; - 1945 : 46; - 1946 : 3A; - 1947 : 02; - 1948 : 02; - 1949 : 42; - 1950 : 3C; - 1951 : 00; - 1952 : 00; - 1953 : 00; - 1954 : 00; - 1955 : 00; - 1956 : 00; - 1957 : 7F; - 1958 : 02; - 1959 : 04; - 1960 : 08; - 1961 : 10; - 1962 : 20; - 1963 : 7F; - 1964 : 00; - 1965 : 00; - 1966 : 00; - 1967 : 00; - 1968 : 00; - 1969 : 07; - 1970 : 08; - 1971 : 08; - 1972 : 08; - 1973 : 10; - 1974 : 20; - 1975 : 10; - 1976 : 08; - 1977 : 08; - 1978 : 08; - 1979 : 07; - 1980 : 00; - 1981 : 00; - 1982 : 00; - 1983 : 00; - 1984 : 00; - 1985 : 08; - 1986 : 08; - 1987 : 08; - 1988 : 08; - 1989 : 08; - 1990 : 00; - 1991 : 08; - 1992 : 08; - 1993 : 08; - 1994 : 08; - 1995 : 08; - 1996 : 00; - 1997 : 00; - 1998 : 00; - 1999 : 00; - 2000 : 00; - 2001 : 70; - 2002 : 08; - 2003 : 08; - 2004 : 08; - 2005 : 04; - 2006 : 02; - 2007 : 04; - 2008 : 08; - 2009 : 08; - 2010 : 08; - 2011 : 70; - 2012 : 00; - 2013 : 00; - 2014 : 00; - 2015 : 00; - 2016 : 00; - 2017 : 31; - 2018 : 49; - 2019 : 46; - 2020 : 00; - 2021 : 00; - 2022 : 00; - 2023 : 00; - 2024 : 00; - 2025 : 00; - 2026 : 00; - 2027 : 00; - 2028 : 00; - 2029 : 00; - 2030 : 00; - 2031 : 00; - 2032 : 00; - 2033 : 49; - 2034 : 22; - 2035 : 49; - 2036 : 22; - 2037 : 49; - 2038 : 22; - 2039 : 49; - 2040 : 22; - 2041 : 49; - 2042 : 22; - 2043 : 49; - 2044 : 00; - 2045 : 00; - 2046 : 00; - 2047 : 00; -END; Index: trunk/rtl/System09_Terasic_DE1/roms/ram2k.mif =================================================================== --- trunk/rtl/System09_Terasic_DE1/roms/ram2k.mif (revision 115) +++ trunk/rtl/System09_Terasic_DE1/roms/ram2k.mif (nonexistent) @@ -1,2054 +0,0 @@ -WIDTH=8; -DEPTH=2048; -ADDRESS_RADIX=UNS; -DATA_RADIX=HEX; -CONTENT BEGIN - 0 : 00; - 1 : 00; - 2 : 00; - 3 : 00; - 4 : 00; - 5 : FF; - 6 : 00; - 7 : 00; - 8 : 00; - 9 : 08; - 10 : 1C; - 11 : 3E; - 12 : 7F; - 13 : 7F; - 14 : 1C; - 15 : 3E; - 16 : 00; - 17 : 10; - 18 : 10; - 19 : 10; - 20 : 10; - 21 : 10; - 22 : 10; - 23 : 10; - 24 : 10; - 25 : 00; - 26 : 00; - 27 : 00; - 28 : FF; - 29 : 00; - 30 : 00; - 31 : 00; - 32 : 00; - 33 : 00; - 34 : 00; - 35 : FF; - 36 : 00; - 37 : 00; - 38 : 00; - 39 : 00; - 40 : 00; - 41 : 00; - 42 : FF; - 43 : 00; - 44 : 00; - 45 : 00; - 46 : 00; - 47 : 00; - 48 : 00; - 49 : 00; - 50 : 00; - 51 : 00; - 52 : 00; - 53 : 00; - 54 : FF; - 55 : 00; - 56 : 00; - 57 : 20; - 58 : 20; - 59 : 20; - 60 : 20; - 61 : 20; - 62 : 20; - 63 : 20; - 64 : 20; - 65 : 04; - 66 : 04; - 67 : 04; - 68 : 04; - 69 : 04; - 70 : 04; - 71 : 04; - 72 : 04; - 73 : 00; - 74 : 00; - 75 : 00; - 76 : 00; - 77 : E0; - 78 : 10; - 79 : 08; - 80 : 08; - 81 : 08; - 82 : 08; - 83 : 08; - 84 : 04; - 85 : 03; - 86 : 00; - 87 : 00; - 88 : 00; - 89 : 08; - 90 : 08; - 91 : 08; - 92 : 10; - 93 : E0; - 94 : 00; - 95 : 00; - 96 : 00; - 97 : 80; - 98 : 80; - 99 : 80; - 100 : 80; - 101 : 80; - 102 : 80; - 103 : 80; - 104 : FF; - 105 : 80; - 106 : 40; - 107 : 20; - 108 : 10; - 109 : 08; - 110 : 04; - 111 : 02; - 112 : 01; - 113 : 01; - 114 : 02; - 115 : 04; - 116 : 08; - 117 : 10; - 118 : 20; - 119 : 40; - 120 : 80; - 121 : FF; - 122 : 80; - 123 : 80; - 124 : 80; - 125 : 80; - 126 : 80; - 127 : 80; - 128 : 80; - 129 : FF; - 130 : 01; - 131 : 01; - 132 : 01; - 133 : 01; - 134 : 01; - 135 : 01; - 136 : 01; - 137 : 00; - 138 : 3C; - 139 : 7E; - 140 : 7E; - 141 : 7E; - 142 : 7E; - 143 : 3C; - 144 : 00; - 145 : 00; - 146 : 00; - 147 : 00; - 148 : 00; - 149 : 00; - 150 : 00; - 151 : FF; - 152 : 00; - 153 : 36; - 154 : 7F; - 155 : 7F; - 156 : 7F; - 157 : 3E; - 158 : 1C; - 159 : 08; - 160 : 00; - 161 : 40; - 162 : 40; - 163 : 40; - 164 : 40; - 165 : 40; - 166 : 40; - 167 : 40; - 168 : 40; - 169 : 00; - 170 : 00; - 171 : 00; - 172 : 00; - 173 : 03; - 174 : 04; - 175 : 08; - 176 : 08; - 177 : 81; - 178 : 42; - 179 : 24; - 180 : 18; - 181 : 18; - 182 : 24; - 183 : 42; - 184 : 81; - 185 : 00; - 186 : 3C; - 187 : 42; - 188 : 42; - 189 : 42; - 190 : 42; - 191 : 3C; - 192 : 00; - 193 : 08; - 194 : 1C; - 195 : 2A; - 196 : 77; - 197 : 2A; - 198 : 08; - 199 : 08; - 200 : 00; - 201 : 02; - 202 : 02; - 203 : 02; - 204 : 02; - 205 : 02; - 206 : 02; - 207 : 02; - 208 : 02; - 209 : 08; - 210 : 1C; - 211 : 3E; - 212 : 7F; - 213 : 3E; - 214 : 1C; - 215 : 08; - 216 : 00; - 217 : 08; - 218 : 08; - 219 : 08; - 220 : 08; - 221 : FF; - 222 : 08; - 223 : 08; - 224 : 08; - 225 : A0; - 226 : 50; - 227 : A0; - 228 : 50; - 229 : A0; - 230 : 50; - 231 : A0; - 232 : 50; - 233 : 08; - 234 : 08; - 235 : 08; - 236 : 08; - 237 : 08; - 238 : 08; - 239 : 08; - 240 : 08; - 241 : 00; - 242 : 00; - 243 : 01; - 244 : 3E; - 245 : 54; - 246 : 14; - 247 : 14; - 248 : 00; - 249 : FF; - 250 : 7F; - 251 : 3F; - 252 : 1F; - 253 : 0F; - 254 : 07; - 255 : 03; - 256 : 00; - 257 : 00; - 258 : 00; - 259 : 00; - 260 : 00; - 261 : 00; - 262 : 00; - 263 : 00; - 264 : 00; - 265 : 08; - 266 : 08; - 267 : 08; - 268 : 08; - 269 : 00; - 270 : 00; - 271 : 08; - 272 : 00; - 273 : 24; - 274 : 24; - 275 : 24; - 276 : 00; - 277 : 00; - 278 : 00; - 279 : 00; - 280 : 00; - 281 : 24; - 282 : 24; - 283 : 7E; - 284 : 24; - 285 : 7E; - 286 : 24; - 287 : 24; - 288 : 00; - 289 : 08; - 290 : 1E; - 291 : 28; - 292 : 1C; - 293 : 0A; - 294 : 3C; - 295 : 08; - 296 : 00; - 297 : 00; - 298 : 62; - 299 : 64; - 300 : 08; - 301 : 10; - 302 : 26; - 303 : 46; - 304 : 00; - 305 : 30; - 306 : 48; - 307 : 48; - 308 : 30; - 309 : 4A; - 310 : 44; - 311 : 3A; - 312 : 00; - 313 : 04; - 314 : 08; - 315 : 10; - 316 : 00; - 317 : 00; - 318 : 00; - 319 : 00; - 320 : 00; - 321 : 04; - 322 : 08; - 323 : 10; - 324 : 10; - 325 : 10; - 326 : 08; - 327 : 04; - 328 : 00; - 329 : 20; - 330 : 10; - 331 : 08; - 332 : 08; - 333 : 08; - 334 : 10; - 335 : 20; - 336 : 00; - 337 : 08; - 338 : 2A; - 339 : 1C; - 340 : 3E; - 341 : 1C; - 342 : 2A; - 343 : 08; - 344 : 00; - 345 : 00; - 346 : 08; - 347 : 08; - 348 : 3E; - 349 : 08; - 350 : 08; - 351 : 00; - 352 : 00; - 353 : 00; - 354 : 00; - 355 : 00; - 356 : 00; - 357 : 00; - 358 : 08; - 359 : 08; - 360 : 10; - 361 : 00; - 362 : 00; - 363 : 00; - 364 : 7E; - 365 : 00; - 366 : 00; - 367 : 00; - 368 : 00; - 369 : 00; - 370 : 00; - 371 : 00; - 372 : 00; - 373 : 00; - 374 : 18; - 375 : 18; - 376 : 00; - 377 : 00; - 378 : 02; - 379 : 04; - 380 : 08; - 381 : 10; - 382 : 20; - 383 : 40; - 384 : 00; - 385 : 3C; - 386 : 42; - 387 : 46; - 388 : 5A; - 389 : 62; - 390 : 42; - 391 : 3C; - 392 : 00; - 393 : 08; - 394 : 18; - 395 : 28; - 396 : 08; - 397 : 08; - 398 : 08; - 399 : 3E; - 400 : 00; - 401 : 3C; - 402 : 42; - 403 : 02; - 404 : 0C; - 405 : 30; - 406 : 40; - 407 : 7E; - 408 : 00; - 409 : 3C; - 410 : 42; - 411 : 02; - 412 : 1C; - 413 : 02; - 414 : 42; - 415 : 3C; - 416 : 00; - 417 : 04; - 418 : 0C; - 419 : 14; - 420 : 24; - 421 : 7E; - 422 : 04; - 423 : 04; - 424 : 00; - 425 : 7E; - 426 : 40; - 427 : 78; - 428 : 04; - 429 : 02; - 430 : 44; - 431 : 38; - 432 : 00; - 433 : 1C; - 434 : 20; - 435 : 40; - 436 : 7C; - 437 : 42; - 438 : 42; - 439 : 3C; - 440 : 00; - 441 : 7E; - 442 : 42; - 443 : 04; - 444 : 08; - 445 : 10; - 446 : 10; - 447 : 10; - 448 : 00; - 449 : 3C; - 450 : 42; - 451 : 42; - 452 : 3C; - 453 : 42; - 454 : 42; - 455 : 3C; - 456 : 00; - 457 : 3C; - 458 : 42; - 459 : 42; - 460 : 3E; - 461 : 02; - 462 : 04; - 463 : 38; - 464 : 00; - 465 : 00; - 466 : 00; - 467 : 08; - 468 : 00; - 469 : 00; - 470 : 08; - 471 : 00; - 472 : 00; - 473 : 00; - 474 : 00; - 475 : 08; - 476 : 00; - 477 : 00; - 478 : 08; - 479 : 08; - 480 : 10; - 481 : 0E; - 482 : 18; - 483 : 30; - 484 : 60; - 485 : 30; - 486 : 18; - 487 : 0E; - 488 : 00; - 489 : 00; - 490 : 00; - 491 : 7E; - 492 : 00; - 493 : 7E; - 494 : 00; - 495 : 00; - 496 : 00; - 497 : 70; - 498 : 18; - 499 : 0C; - 500 : 06; - 501 : 0C; - 502 : 18; - 503 : 70; - 504 : 00; - 505 : 3C; - 506 : 42; - 507 : 02; - 508 : 0C; - 509 : 10; - 510 : 00; - 511 : 10; - 512 : 1C; - 513 : 22; - 514 : 4A; - 515 : 56; - 516 : 4C; - 517 : 20; - 518 : 1E; - 519 : 00; - 520 : 18; - 521 : 24; - 522 : 42; - 523 : 7E; - 524 : 42; - 525 : 42; - 526 : 42; - 527 : 00; - 528 : 7C; - 529 : 22; - 530 : 22; - 531 : 3C; - 532 : 22; - 533 : 22; - 534 : 7C; - 535 : 00; - 536 : 1C; - 537 : 22; - 538 : 40; - 539 : 40; - 540 : 40; - 541 : 22; - 542 : 1C; - 543 : 00; - 544 : 78; - 545 : 24; - 546 : 22; - 547 : 22; - 548 : 22; - 549 : 24; - 550 : 78; - 551 : 00; - 552 : 7E; - 553 : 40; - 554 : 40; - 555 : 78; - 556 : 40; - 557 : 40; - 558 : 7E; - 559 : 00; - 560 : 7E; - 561 : 40; - 562 : 40; - 563 : 78; - 564 : 40; - 565 : 40; - 566 : 40; - 567 : 00; - 568 : 1C; - 569 : 22; - 570 : 40; - 571 : 4E; - 572 : 42; - 573 : 22; - 574 : 1C; - 575 : 00; - 576 : 42; - 577 : 42; - 578 : 42; - 579 : 7E; - 580 : 42; - 581 : 42; - 582 : 42; - 583 : 00; - 584 : 1C; - 585 : 08; - 586 : 08; - 587 : 08; - 588 : 08; - 589 : 08; - 590 : 1C; - 591 : 00; - 592 : 0E; - 593 : 04; - 594 : 04; - 595 : 04; - 596 : 04; - 597 : 44; - 598 : 38; - 599 : 00; - 600 : 42; - 601 : 44; - 602 : 48; - 603 : 70; - 604 : 48; - 605 : 44; - 606 : 42; - 607 : 00; - 608 : 40; - 609 : 40; - 610 : 40; - 611 : 40; - 612 : 40; - 613 : 40; - 614 : 7E; - 615 : 00; - 616 : 42; - 617 : 66; - 618 : 5A; - 619 : 5A; - 620 : 42; - 621 : 42; - 622 : 42; - 623 : 00; - 624 : 42; - 625 : 62; - 626 : 52; - 627 : 4A; - 628 : 46; - 629 : 42; - 630 : 42; - 631 : 00; - 632 : 18; - 633 : 24; - 634 : 42; - 635 : 42; - 636 : 42; - 637 : 24; - 638 : 18; - 639 : 00; - 640 : 7C; - 641 : 42; - 642 : 42; - 643 : 7C; - 644 : 40; - 645 : 40; - 646 : 40; - 647 : 00; - 648 : 18; - 649 : 24; - 650 : 42; - 651 : 42; - 652 : 4A; - 653 : 24; - 654 : 1A; - 655 : 00; - 656 : 7C; - 657 : 42; - 658 : 42; - 659 : 7C; - 660 : 48; - 661 : 44; - 662 : 42; - 663 : 00; - 664 : 3C; - 665 : 42; - 666 : 40; - 667 : 3C; - 668 : 02; - 669 : 42; - 670 : 3C; - 671 : 00; - 672 : 3E; - 673 : 08; - 674 : 08; - 675 : 08; - 676 : 08; - 677 : 08; - 678 : 08; - 679 : 00; - 680 : 42; - 681 : 42; - 682 : 42; - 683 : 42; - 684 : 42; - 685 : 42; - 686 : 3C; - 687 : 00; - 688 : 42; - 689 : 42; - 690 : 42; - 691 : 24; - 692 : 24; - 693 : 18; - 694 : 18; - 695 : 00; - 696 : 42; - 697 : 42; - 698 : 42; - 699 : 5A; - 700 : 5A; - 701 : 66; - 702 : 42; - 703 : 00; - 704 : 42; - 705 : 42; - 706 : 24; - 707 : 18; - 708 : 24; - 709 : 42; - 710 : 42; - 711 : 00; - 712 : 22; - 713 : 22; - 714 : 22; - 715 : 1C; - 716 : 08; - 717 : 08; - 718 : 08; - 719 : 00; - 720 : 7E; - 721 : 02; - 722 : 04; - 723 : 18; - 724 : 20; - 725 : 40; - 726 : 7E; - 727 : 00; - 728 : 3C; - 729 : 20; - 730 : 20; - 731 : 20; - 732 : 20; - 733 : 20; - 734 : 3C; - 735 : 00; - 736 : 0C; - 737 : 10; - 738 : 10; - 739 : 3C; - 740 : 10; - 741 : 70; - 742 : 6E; - 743 : 00; - 744 : 3C; - 745 : 04; - 746 : 04; - 747 : 04; - 748 : 04; - 749 : 04; - 750 : 3C; - 751 : 00; - 752 : 00; - 753 : 08; - 754 : 1C; - 755 : 2A; - 756 : 08; - 757 : 08; - 758 : 08; - 759 : 08; - 760 : 00; - 761 : 00; - 762 : 10; - 763 : 20; - 764 : 7F; - 765 : 20; - 766 : 10; - 767 : 00; - 768 : 1C; - 769 : 22; - 770 : 4A; - 771 : 56; - 772 : 4C; - 773 : 20; - 774 : 1E; - 775 : 00; - 776 : 00; - 777 : 00; - 778 : 38; - 779 : 04; - 780 : 3C; - 781 : 44; - 782 : 3A; - 783 : 00; - 784 : 40; - 785 : 40; - 786 : 5C; - 787 : 62; - 788 : 42; - 789 : 62; - 790 : 5C; - 791 : 00; - 792 : 00; - 793 : 00; - 794 : 3C; - 795 : 42; - 796 : 40; - 797 : 42; - 798 : 3C; - 799 : 00; - 800 : 02; - 801 : 02; - 802 : 3A; - 803 : 46; - 804 : 42; - 805 : 46; - 806 : 3A; - 807 : 00; - 808 : 00; - 809 : 00; - 810 : 3C; - 811 : 42; - 812 : 7E; - 813 : 40; - 814 : 3C; - 815 : 00; - 816 : 0C; - 817 : 12; - 818 : 10; - 819 : 7C; - 820 : 10; - 821 : 10; - 822 : 10; - 823 : 00; - 824 : 00; - 825 : 00; - 826 : 3A; - 827 : 46; - 828 : 46; - 829 : 3A; - 830 : 02; - 831 : 3C; - 832 : 40; - 833 : 40; - 834 : 5C; - 835 : 62; - 836 : 42; - 837 : 42; - 838 : 42; - 839 : 00; - 840 : 08; - 841 : 00; - 842 : 18; - 843 : 08; - 844 : 08; - 845 : 08; - 846 : 1C; - 847 : 00; - 848 : 04; - 849 : 00; - 850 : 0C; - 851 : 04; - 852 : 04; - 853 : 04; - 854 : 44; - 855 : 38; - 856 : 40; - 857 : 40; - 858 : 44; - 859 : 48; - 860 : 50; - 861 : 68; - 862 : 44; - 863 : 00; - 864 : 18; - 865 : 08; - 866 : 08; - 867 : 08; - 868 : 08; - 869 : 08; - 870 : 1C; - 871 : 00; - 872 : 00; - 873 : 00; - 874 : 76; - 875 : 49; - 876 : 49; - 877 : 49; - 878 : 49; - 879 : 00; - 880 : 00; - 881 : 00; - 882 : 5C; - 883 : 62; - 884 : 42; - 885 : 42; - 886 : 42; - 887 : 00; - 888 : 00; - 889 : 00; - 890 : 3C; - 891 : 42; - 892 : 42; - 893 : 42; - 894 : 3C; - 895 : 00; - 896 : 00; - 897 : 00; - 898 : 5C; - 899 : 62; - 900 : 62; - 901 : 5C; - 902 : 40; - 903 : 40; - 904 : 00; - 905 : 00; - 906 : 3A; - 907 : 46; - 908 : 46; - 909 : 3A; - 910 : 02; - 911 : 02; - 912 : 00; - 913 : 00; - 914 : 5C; - 915 : 62; - 916 : 40; - 917 : 40; - 918 : 40; - 919 : 00; - 920 : 00; - 921 : 00; - 922 : 3E; - 923 : 40; - 924 : 3C; - 925 : 02; - 926 : 7C; - 927 : 00; - 928 : 10; - 929 : 10; - 930 : 7C; - 931 : 10; - 932 : 10; - 933 : 12; - 934 : 0C; - 935 : 00; - 936 : 00; - 937 : 00; - 938 : 42; - 939 : 42; - 940 : 42; - 941 : 46; - 942 : 3A; - 943 : 00; - 944 : 00; - 945 : 00; - 946 : 42; - 947 : 42; - 948 : 42; - 949 : 24; - 950 : 18; - 951 : 00; - 952 : 00; - 953 : 00; - 954 : 41; - 955 : 49; - 956 : 49; - 957 : 49; - 958 : 36; - 959 : 00; - 960 : 00; - 961 : 00; - 962 : 42; - 963 : 24; - 964 : 18; - 965 : 24; - 966 : 42; - 967 : 00; - 968 : 00; - 969 : 00; - 970 : 42; - 971 : 42; - 972 : 46; - 973 : 3A; - 974 : 02; - 975 : 3C; - 976 : 00; - 977 : 00; - 978 : 7E; - 979 : 04; - 980 : 18; - 981 : 20; - 982 : 7E; - 983 : 00; - 984 : 3C; - 985 : 20; - 986 : 20; - 987 : 20; - 988 : 20; - 989 : 20; - 990 : 3C; - 991 : 00; - 992 : 0C; - 993 : 10; - 994 : 10; - 995 : 3C; - 996 : 10; - 997 : 70; - 998 : 6E; - 999 : 00; - 1000 : 3C; - 1001 : 04; - 1002 : 04; - 1003 : 04; - 1004 : 04; - 1005 : 04; - 1006 : 3C; - 1007 : 00; - 1008 : 00; - 1009 : 08; - 1010 : 1C; - 1011 : 2A; - 1012 : 08; - 1013 : 08; - 1014 : 08; - 1015 : 08; - 1016 : 00; - 1017 : 00; - 1018 : 10; - 1019 : 20; - 1020 : 7F; - 1021 : 20; - 1022 : 10; - 1023 : 00; - 1024 : 00; - 1025 : 00; - 1026 : 00; - 1027 : 00; - 1028 : 00; - 1029 : FF; - 1030 : 00; - 1031 : 00; - 1032 : 00; - 1033 : 08; - 1034 : 1C; - 1035 : 3E; - 1036 : 7F; - 1037 : 7F; - 1038 : 1C; - 1039 : 3E; - 1040 : 00; - 1041 : 10; - 1042 : 10; - 1043 : 10; - 1044 : 10; - 1045 : 10; - 1046 : 10; - 1047 : 10; - 1048 : 10; - 1049 : 00; - 1050 : 00; - 1051 : 00; - 1052 : FF; - 1053 : 00; - 1054 : 00; - 1055 : 00; - 1056 : 00; - 1057 : 00; - 1058 : 00; - 1059 : FF; - 1060 : 00; - 1061 : 00; - 1062 : 00; - 1063 : 00; - 1064 : 00; - 1065 : 00; - 1066 : FF; - 1067 : 00; - 1068 : 00; - 1069 : 00; - 1070 : 00; - 1071 : 00; - 1072 : 00; - 1073 : 00; - 1074 : 00; - 1075 : 00; - 1076 : 00; - 1077 : 00; - 1078 : FF; - 1079 : 00; - 1080 : 00; - 1081 : 20; - 1082 : 20; - 1083 : 20; - 1084 : 20; - 1085 : 20; - 1086 : 20; - 1087 : 20; - 1088 : 20; - 1089 : 04; - 1090 : 04; - 1091 : 04; - 1092 : 04; - 1093 : 04; - 1094 : 04; - 1095 : 04; - 1096 : 04; - 1097 : 00; - 1098 : 00; - 1099 : 00; - 1100 : 00; - 1101 : E0; - 1102 : 10; - 1103 : 08; - 1104 : 08; - 1105 : 08; - 1106 : 08; - 1107 : 08; - 1108 : 04; - 1109 : 03; - 1110 : 00; - 1111 : 00; - 1112 : 00; - 1113 : 08; - 1114 : 08; - 1115 : 08; - 1116 : 10; - 1117 : E0; - 1118 : 00; - 1119 : 00; - 1120 : 00; - 1121 : 80; - 1122 : 80; - 1123 : 80; - 1124 : 80; - 1125 : 80; - 1126 : 80; - 1127 : 80; - 1128 : FF; - 1129 : 80; - 1130 : 40; - 1131 : 20; - 1132 : 10; - 1133 : 08; - 1134 : 04; - 1135 : 02; - 1136 : 01; - 1137 : 01; - 1138 : 02; - 1139 : 04; - 1140 : 08; - 1141 : 10; - 1142 : 20; - 1143 : 40; - 1144 : 80; - 1145 : FF; - 1146 : 80; - 1147 : 80; - 1148 : 80; - 1149 : 80; - 1150 : 80; - 1151 : 80; - 1152 : 80; - 1153 : FF; - 1154 : 01; - 1155 : 01; - 1156 : 01; - 1157 : 01; - 1158 : 01; - 1159 : 01; - 1160 : 01; - 1161 : 00; - 1162 : 3C; - 1163 : 7E; - 1164 : 7E; - 1165 : 7E; - 1166 : 7E; - 1167 : 3C; - 1168 : 00; - 1169 : 00; - 1170 : 00; - 1171 : 00; - 1172 : 00; - 1173 : 00; - 1174 : 00; - 1175 : FF; - 1176 : 00; - 1177 : 36; - 1178 : 7F; - 1179 : 7F; - 1180 : 7F; - 1181 : 3E; - 1182 : 1C; - 1183 : 08; - 1184 : 00; - 1185 : 40; - 1186 : 40; - 1187 : 40; - 1188 : 40; - 1189 : 40; - 1190 : 40; - 1191 : 40; - 1192 : 40; - 1193 : 00; - 1194 : 00; - 1195 : 00; - 1196 : 00; - 1197 : 03; - 1198 : 04; - 1199 : 08; - 1200 : 08; - 1201 : 81; - 1202 : 42; - 1203 : 24; - 1204 : 18; - 1205 : 18; - 1206 : 24; - 1207 : 42; - 1208 : 81; - 1209 : 00; - 1210 : 3C; - 1211 : 42; - 1212 : 42; - 1213 : 42; - 1214 : 42; - 1215 : 3C; - 1216 : 00; - 1217 : 08; - 1218 : 1C; - 1219 : 2A; - 1220 : 77; - 1221 : 2A; - 1222 : 08; - 1223 : 08; - 1224 : 00; - 1225 : 02; - 1226 : 02; - 1227 : 02; - 1228 : 02; - 1229 : 02; - 1230 : 02; - 1231 : 02; - 1232 : 02; - 1233 : 08; - 1234 : 1C; - 1235 : 3E; - 1236 : 7F; - 1237 : 3E; - 1238 : 1C; - 1239 : 08; - 1240 : 00; - 1241 : 08; - 1242 : 08; - 1243 : 08; - 1244 : 08; - 1245 : FF; - 1246 : 08; - 1247 : 08; - 1248 : 08; - 1249 : A0; - 1250 : 50; - 1251 : A0; - 1252 : 50; - 1253 : A0; - 1254 : 50; - 1255 : A0; - 1256 : 50; - 1257 : 08; - 1258 : 08; - 1259 : 08; - 1260 : 08; - 1261 : 08; - 1262 : 08; - 1263 : 08; - 1264 : 08; - 1265 : 00; - 1266 : 00; - 1267 : 01; - 1268 : 3E; - 1269 : 54; - 1270 : 14; - 1271 : 14; - 1272 : 00; - 1273 : FF; - 1274 : 7F; - 1275 : 3F; - 1276 : 1F; - 1277 : 0F; - 1278 : 07; - 1279 : 03; - 1280 : 00; - 1281 : 00; - 1282 : 00; - 1283 : 00; - 1284 : 00; - 1285 : 00; - 1286 : 00; - 1287 : 00; - 1288 : 00; - 1289 : 08; - 1290 : 08; - 1291 : 08; - 1292 : 08; - 1293 : 00; - 1294 : 00; - 1295 : 08; - 1296 : 00; - 1297 : 24; - 1298 : 24; - 1299 : 24; - 1300 : 00; - 1301 : 00; - 1302 : 00; - 1303 : 00; - 1304 : 00; - 1305 : 24; - 1306 : 24; - 1307 : 7E; - 1308 : 24; - 1309 : 7E; - 1310 : 24; - 1311 : 24; - 1312 : 00; - 1313 : 08; - 1314 : 1E; - 1315 : 28; - 1316 : 1C; - 1317 : 0A; - 1318 : 3C; - 1319 : 08; - 1320 : 00; - 1321 : 00; - 1322 : 62; - 1323 : 64; - 1324 : 08; - 1325 : 10; - 1326 : 26; - 1327 : 46; - 1328 : 00; - 1329 : 30; - 1330 : 48; - 1331 : 48; - 1332 : 30; - 1333 : 4A; - 1334 : 44; - 1335 : 3A; - 1336 : 00; - 1337 : 04; - 1338 : 08; - 1339 : 10; - 1340 : 00; - 1341 : 00; - 1342 : 00; - 1343 : 00; - 1344 : 00; - 1345 : 04; - 1346 : 08; - 1347 : 10; - 1348 : 10; - 1349 : 10; - 1350 : 08; - 1351 : 04; - 1352 : 00; - 1353 : 20; - 1354 : 10; - 1355 : 08; - 1356 : 08; - 1357 : 08; - 1358 : 10; - 1359 : 20; - 1360 : 00; - 1361 : 08; - 1362 : 2A; - 1363 : 1C; - 1364 : 3E; - 1365 : 1C; - 1366 : 2A; - 1367 : 08; - 1368 : 00; - 1369 : 00; - 1370 : 08; - 1371 : 08; - 1372 : 3E; - 1373 : 08; - 1374 : 08; - 1375 : 00; - 1376 : 00; - 1377 : 00; - 1378 : 00; - 1379 : 00; - 1380 : 00; - 1381 : 00; - 1382 : 08; - 1383 : 08; - 1384 : 10; - 1385 : 00; - 1386 : 00; - 1387 : 00; - 1388 : 7E; - 1389 : 00; - 1390 : 00; - 1391 : 00; - 1392 : 00; - 1393 : 00; - 1394 : 00; - 1395 : 00; - 1396 : 00; - 1397 : 00; - 1398 : 18; - 1399 : 18; - 1400 : 00; - 1401 : 00; - 1402 : 02; - 1403 : 04; - 1404 : 08; - 1405 : 10; - 1406 : 20; - 1407 : 40; - 1408 : 00; - 1409 : 3C; - 1410 : 42; - 1411 : 46; - 1412 : 5A; - 1413 : 62; - 1414 : 42; - 1415 : 3C; - 1416 : 00; - 1417 : 08; - 1418 : 18; - 1419 : 28; - 1420 : 08; - 1421 : 08; - 1422 : 08; - 1423 : 3E; - 1424 : 00; - 1425 : 3C; - 1426 : 42; - 1427 : 02; - 1428 : 0C; - 1429 : 30; - 1430 : 40; - 1431 : 7E; - 1432 : 00; - 1433 : 3C; - 1434 : 42; - 1435 : 02; - 1436 : 1C; - 1437 : 02; - 1438 : 42; - 1439 : 3C; - 1440 : 00; - 1441 : 04; - 1442 : 0C; - 1443 : 14; - 1444 : 24; - 1445 : 7E; - 1446 : 04; - 1447 : 04; - 1448 : 00; - 1449 : 7E; - 1450 : 40; - 1451 : 78; - 1452 : 04; - 1453 : 02; - 1454 : 44; - 1455 : 38; - 1456 : 00; - 1457 : 1C; - 1458 : 20; - 1459 : 40; - 1460 : 7C; - 1461 : 42; - 1462 : 42; - 1463 : 3C; - 1464 : 00; - 1465 : 7E; - 1466 : 42; - 1467 : 04; - 1468 : 08; - 1469 : 10; - 1470 : 10; - 1471 : 10; - 1472 : 00; - 1473 : 3C; - 1474 : 42; - 1475 : 42; - 1476 : 3C; - 1477 : 42; - 1478 : 42; - 1479 : 3C; - 1480 : 00; - 1481 : 3C; - 1482 : 42; - 1483 : 42; - 1484 : 3E; - 1485 : 02; - 1486 : 04; - 1487 : 38; - 1488 : 00; - 1489 : 00; - 1490 : 00; - 1491 : 08; - 1492 : 00; - 1493 : 00; - 1494 : 08; - 1495 : 00; - 1496 : 00; - 1497 : 00; - 1498 : 00; - 1499 : 08; - 1500 : 00; - 1501 : 00; - 1502 : 08; - 1503 : 08; - 1504 : 10; - 1505 : 0E; - 1506 : 18; - 1507 : 30; - 1508 : 60; - 1509 : 30; - 1510 : 18; - 1511 : 0E; - 1512 : 00; - 1513 : 00; - 1514 : 00; - 1515 : 7E; - 1516 : 00; - 1517 : 7E; - 1518 : 00; - 1519 : 00; - 1520 : 00; - 1521 : 70; - 1522 : 18; - 1523 : 0C; - 1524 : 06; - 1525 : 0C; - 1526 : 18; - 1527 : 70; - 1528 : 00; - 1529 : 3C; - 1530 : 42; - 1531 : 02; - 1532 : 0C; - 1533 : 10; - 1534 : 00; - 1535 : 10; - 1536 : 1C; - 1537 : 22; - 1538 : 4A; - 1539 : 56; - 1540 : 4C; - 1541 : 20; - 1542 : 1E; - 1543 : 00; - 1544 : 18; - 1545 : 24; - 1546 : 42; - 1547 : 7E; - 1548 : 42; - 1549 : 42; - 1550 : 42; - 1551 : 00; - 1552 : 7C; - 1553 : 22; - 1554 : 22; - 1555 : 3C; - 1556 : 22; - 1557 : 22; - 1558 : 7C; - 1559 : 00; - 1560 : 1C; - 1561 : 22; - 1562 : 40; - 1563 : 40; - 1564 : 40; - 1565 : 22; - 1566 : 1C; - 1567 : 00; - 1568 : 78; - 1569 : 24; - 1570 : 22; - 1571 : 22; - 1572 : 22; - 1573 : 24; - 1574 : 78; - 1575 : 00; - 1576 : 7E; - 1577 : 40; - 1578 : 40; - 1579 : 78; - 1580 : 40; - 1581 : 40; - 1582 : 7E; - 1583 : 00; - 1584 : 7E; - 1585 : 40; - 1586 : 40; - 1587 : 78; - 1588 : 40; - 1589 : 40; - 1590 : 40; - 1591 : 00; - 1592 : 1C; - 1593 : 22; - 1594 : 40; - 1595 : 4E; - 1596 : 42; - 1597 : 22; - 1598 : 1C; - 1599 : 00; - 1600 : 42; - 1601 : 42; - 1602 : 42; - 1603 : 7E; - 1604 : 42; - 1605 : 42; - 1606 : 42; - 1607 : 00; - 1608 : 1C; - 1609 : 08; - 1610 : 08; - 1611 : 08; - 1612 : 08; - 1613 : 08; - 1614 : 1C; - 1615 : 00; - 1616 : 0E; - 1617 : 04; - 1618 : 04; - 1619 : 04; - 1620 : 04; - 1621 : 44; - 1622 : 38; - 1623 : 00; - 1624 : 42; - 1625 : 44; - 1626 : 48; - 1627 : 70; - 1628 : 48; - 1629 : 44; - 1630 : 42; - 1631 : 00; - 1632 : 40; - 1633 : 40; - 1634 : 40; - 1635 : 40; - 1636 : 40; - 1637 : 40; - 1638 : 7E; - 1639 : 00; - 1640 : 42; - 1641 : 66; - 1642 : 5A; - 1643 : 5A; - 1644 : 42; - 1645 : 42; - 1646 : 42; - 1647 : 00; - 1648 : 42; - 1649 : 62; - 1650 : 52; - 1651 : 4A; - 1652 : 46; - 1653 : 42; - 1654 : 42; - 1655 : 00; - 1656 : 18; - 1657 : 24; - 1658 : 42; - 1659 : 42; - 1660 : 42; - 1661 : 24; - 1662 : 18; - 1663 : 00; - 1664 : 7C; - 1665 : 42; - 1666 : 42; - 1667 : 7C; - 1668 : 40; - 1669 : 40; - 1670 : 40; - 1671 : 00; - 1672 : 18; - 1673 : 24; - 1674 : 42; - 1675 : 42; - 1676 : 4A; - 1677 : 24; - 1678 : 1A; - 1679 : 00; - 1680 : 7C; - 1681 : 42; - 1682 : 42; - 1683 : 7C; - 1684 : 48; - 1685 : 44; - 1686 : 42; - 1687 : 00; - 1688 : 3C; - 1689 : 42; - 1690 : 40; - 1691 : 3C; - 1692 : 02; - 1693 : 42; - 1694 : 3C; - 1695 : 00; - 1696 : 3E; - 1697 : 08; - 1698 : 08; - 1699 : 08; - 1700 : 08; - 1701 : 08; - 1702 : 08; - 1703 : 00; - 1704 : 42; - 1705 : 42; - 1706 : 42; - 1707 : 42; - 1708 : 42; - 1709 : 42; - 1710 : 3C; - 1711 : 00; - 1712 : 42; - 1713 : 42; - 1714 : 42; - 1715 : 24; - 1716 : 24; - 1717 : 18; - 1718 : 18; - 1719 : 00; - 1720 : 42; - 1721 : 42; - 1722 : 42; - 1723 : 5A; - 1724 : 5A; - 1725 : 66; - 1726 : 42; - 1727 : 00; - 1728 : 42; - 1729 : 42; - 1730 : 24; - 1731 : 18; - 1732 : 24; - 1733 : 42; - 1734 : 42; - 1735 : 00; - 1736 : 22; - 1737 : 22; - 1738 : 22; - 1739 : 1C; - 1740 : 08; - 1741 : 08; - 1742 : 08; - 1743 : 00; - 1744 : 7E; - 1745 : 02; - 1746 : 04; - 1747 : 18; - 1748 : 20; - 1749 : 40; - 1750 : 7E; - 1751 : 00; - 1752 : 3C; - 1753 : 20; - 1754 : 20; - 1755 : 20; - 1756 : 20; - 1757 : 20; - 1758 : 3C; - 1759 : 00; - 1760 : 0C; - 1761 : 10; - 1762 : 10; - 1763 : 3C; - 1764 : 10; - 1765 : 70; - 1766 : 6E; - 1767 : 00; - 1768 : 3C; - 1769 : 04; - 1770 : 04; - 1771 : 04; - 1772 : 04; - 1773 : 04; - 1774 : 3C; - 1775 : 00; - 1776 : 00; - 1777 : 08; - 1778 : 1C; - 1779 : 2A; - 1780 : 08; - 1781 : 08; - 1782 : 08; - 1783 : 08; - 1784 : 00; - 1785 : 00; - 1786 : 10; - 1787 : 20; - 1788 : 7F; - 1789 : 20; - 1790 : 10; - 1791 : 00; - 1792 : 1C; - 1793 : 22; - 1794 : 4A; - 1795 : 56; - 1796 : 4C; - 1797 : 20; - 1798 : 1E; - 1799 : 00; - 1800 : 00; - 1801 : 00; - 1802 : 38; - 1803 : 04; - 1804 : 3C; - 1805 : 44; - 1806 : 3A; - 1807 : 00; - 1808 : 40; - 1809 : 40; - 1810 : 5C; - 1811 : 62; - 1812 : 42; - 1813 : 62; - 1814 : 5C; - 1815 : 00; - 1816 : 00; - 1817 : 00; - 1818 : 3C; - 1819 : 42; - 1820 : 40; - 1821 : 42; - 1822 : 3C; - 1823 : 00; - 1824 : 02; - 1825 : 02; - 1826 : 3A; - 1827 : 46; - 1828 : 42; - 1829 : 46; - 1830 : 3A; - 1831 : 00; - 1832 : 00; - 1833 : 00; - 1834 : 3C; - 1835 : 42; - 1836 : 7E; - 1837 : 40; - 1838 : 3C; - 1839 : 00; - 1840 : 0C; - 1841 : 12; - 1842 : 10; - 1843 : 7C; - 1844 : 10; - 1845 : 10; - 1846 : 10; - 1847 : 00; - 1848 : 00; - 1849 : 00; - 1850 : 3A; - 1851 : 46; - 1852 : 46; - 1853 : 3A; - 1854 : 02; - 1855 : 3C; - 1856 : 40; - 1857 : 40; - 1858 : 5C; - 1859 : 62; - 1860 : 42; - 1861 : 42; - 1862 : 42; - 1863 : 00; - 1864 : 08; - 1865 : 00; - 1866 : 18; - 1867 : 08; - 1868 : 08; - 1869 : 08; - 1870 : 1C; - 1871 : 00; - 1872 : 04; - 1873 : 00; - 1874 : 0C; - 1875 : 04; - 1876 : 04; - 1877 : 04; - 1878 : 44; - 1879 : 38; - 1880 : 40; - 1881 : 40; - 1882 : 44; - 1883 : 48; - 1884 : 50; - 1885 : 68; - 1886 : 44; - 1887 : 00; - 1888 : 18; - 1889 : 08; - 1890 : 08; - 1891 : 08; - 1892 : 08; - 1893 : 08; - 1894 : 1C; - 1895 : 00; - 1896 : 00; - 1897 : 00; - 1898 : 76; - 1899 : 49; - 1900 : 49; - 1901 : 49; - 1902 : 49; - 1903 : 00; - 1904 : 00; - 1905 : 00; - 1906 : 5C; - 1907 : 62; - 1908 : 42; - 1909 : 42; - 1910 : 42; - 1911 : 00; - 1912 : 00; - 1913 : 00; - 1914 : 3C; - 1915 : 42; - 1916 : 42; - 1917 : 42; - 1918 : 3C; - 1919 : 00; - 1920 : 00; - 1921 : 00; - 1922 : 5C; - 1923 : 62; - 1924 : 62; - 1925 : 5C; - 1926 : 40; - 1927 : 40; - 1928 : 00; - 1929 : 00; - 1930 : 3A; - 1931 : 46; - 1932 : 46; - 1933 : 3A; - 1934 : 02; - 1935 : 02; - 1936 : 00; - 1937 : 00; - 1938 : 5C; - 1939 : 62; - 1940 : 40; - 1941 : 40; - 1942 : 40; - 1943 : 00; - 1944 : 00; - 1945 : 00; - 1946 : 3E; - 1947 : 40; - 1948 : 3C; - 1949 : 02; - 1950 : 7C; - 1951 : 00; - 1952 : 10; - 1953 : 10; - 1954 : 7C; - 1955 : 10; - 1956 : 10; - 1957 : 12; - 1958 : 0C; - 1959 : 00; - 1960 : 00; - 1961 : 00; - 1962 : 42; - 1963 : 42; - 1964 : 42; - 1965 : 46; - 1966 : 3A; - 1967 : 00; - 1968 : 00; - 1969 : 00; - 1970 : 42; - 1971 : 42; - 1972 : 42; - 1973 : 24; - 1974 : 18; - 1975 : 00; - 1976 : 00; - 1977 : 00; - 1978 : 41; - 1979 : 49; - 1980 : 49; - 1981 : 49; - 1982 : 36; - 1983 : 00; - 1984 : 00; - 1985 : 00; - 1986 : 42; - 1987 : 24; - 1988 : 18; - 1989 : 24; - 1990 : 42; - 1991 : 00; - 1992 : 00; - 1993 : 00; - 1994 : 42; - 1995 : 42; - 1996 : 46; - 1997 : 3A; - 1998 : 02; - 1999 : 3C; - 2000 : 00; - 2001 : 00; - 2002 : 7E; - 2003 : 04; - 2004 : 18; - 2005 : 20; - 2006 : 7E; - 2007 : 00; - 2008 : 3C; - 2009 : 20; - 2010 : 20; - 2011 : 20; - 2012 : 20; - 2013 : 20; - 2014 : 3C; - 2015 : 00; - 2016 : 0C; - 2017 : 10; - 2018 : 10; - 2019 : 3C; - 2020 : 10; - 2021 : 70; - 2022 : 6E; - 2023 : 00; - 2024 : 3C; - 2025 : 04; - 2026 : 04; - 2027 : 04; - 2028 : 04; - 2029 : 04; - 2030 : 3C; - 2031 : 00; - 2032 : 00; - 2033 : 08; - 2034 : 1C; - 2035 : 2A; - 2036 : 08; - 2037 : 08; - 2038 : 08; - 2039 : 08; - 2040 : 00; - 2041 : 00; - 2042 : 10; - 2043 : 20; - 2044 : 7F; - 2045 : 20; - 2046 : 10; - 2047 : 00; -END; Index: trunk/rtl/System09_Terasic_DE1/ps2_keyboard.vhd =================================================================== --- trunk/rtl/System09_Terasic_DE1/ps2_keyboard.vhd (revision 115) +++ trunk/rtl/System09_Terasic_DE1/ps2_keyboard.vhd (nonexistent) @@ -1,850 +0,0 @@ ---------------------------------------------------------------------------------------- --- --- Author: John Clayton --- Date : April 30, 2001 --- Update: 4/30/01 copied this file from lcd_2.v (pared down). --- Update: 5/24/01 changed the first module from "ps2_keyboard_receiver" --- to "ps2_keyboard_interface" --- Update: 5/29/01 Added input synchronizing flip-flops. Changed state --- encoding (m1) for good operation after part config. --- Update: 5/31/01 Added low drive strength and slow transitions to ps2_clk --- and ps2_data in the constraints file. Added the signal --- "tx_shifting_done" as distinguished from "rx_shifting_done." --- Debugged the transmitter portion in the lab. --- Update: 6/01/01 Added horizontal tab to the ascii output. --- Update: 6/01/01 Added parameter TRAP_SHIFT_KEYS. --- Update: 6/05/01 Debugged the "debounce" timer functionality. --- Used 60usec timer as a "watchdog" timeout during --- receive from the keyboard. This means that a keyboard --- can now be "hot plugged" into the interface, without --- messing up the bit_count, since the bit_count is reset --- to zero during periods of inactivity anyway. This was --- difficult to debug. I ended up using the logic analyzer, --- and had to scratch my head quite a bit. --- Update: 6/06/01 Removed extra comments before the input synchronizing --- flip-flops. Used the correct parameter to size the --- 5usec_timer_count. Changed the name of this file from --- ps2.v to ps2_keyboard.v --- Update: 6/06/01 Removed "&& q[7:0]" in output_strobe logic. Removed extra --- commented out "else" condition in the shift register and --- bit counter. --- Update: 6/07/01 Changed default values for 60usec timer parameters so that --- they correspond to 60usec for a 49.152MHz clock. --- --- Converted to VHDL: 10 February 2004 - John Kent --- 11 Sept 04 added ctrl key --- changed undefined key codes to x"ff" --- reversed clock polarity --- --- 18th Oct 04 added ctrl keys to ASCII ROM --- added CAPS Lock toggle. --- --- Description ---------------------------------------------------------------------------------------- --- This is a state-machine driven serial-to-parallel and parallel-to-serial --- interface to the ps2 style keyboard interface. The details of the operation --- of the keyboard interface were obtained from the following website: --- --- http:--www.beyondlogic.org/keyboard/keybrd.htm --- --- Some aspects of the keyboard interface are not implemented (e.g, parity --- checking for the receive side, and recognition of the various commands --- which the keyboard sends out, such as "power on selt test passed," "Error" --- and "Resend.") However, if the user wishes to recognize these reply --- messages, the scan code output can always be used to extend functionality --- as desired. --- --- Note that the "Extended" (0xE0) and "Released" (0xF0) codes are recognized. --- The rx interface provides separate indicator flags for these two conditions --- with every valid character scan code which it provides. The shift keys are --- also trapped by the interface, in order to provide correct uppercase ASCII --- characters at the ascii output, although the scan codes for the shift keys --- are still provided at the scan code output. So, the left/right ALT keys --- can be differentiated by the presence of the rx_entended signal, while the --- left/right shift keys are differentiable by the different scan codes --- received. --- --- The interface to the ps2 keyboard uses ps2_clk clock rates of --- 30-40 kHz, dependent upon the keyboard itself. The rate at which the state --- machine runs should be at least twice the rate of the ps2_clk, so that the --- states can accurately follow the clock signal itself. Four times --- oversampling is better. Say 200kHz at least. The upper limit for clocking --- the state machine will undoubtedly be determined by delays in the logic --- which decodes the scan codes into ASCII equivalents. The maximum speed --- will be most likely many megahertz, depending upon target technology. --- In order to run the state machine extremely fast, synchronizing flip-flops --- have been added to the ps2_clk and ps2_data inputs of the state machine. --- This avoids poor performance related to slow transitions of the inputs. --- --- Because this is a bi-directional interface, while reading from the keyboard --- the ps2_clk and ps2_data lines are used as inputs. While writing to the --- keyboard, however (which may be done at any time. If writing interrupts a --- read from the keyboard, the keyboard will buffer up its data, and send --- it later) both the ps2_clk and ps2_data lines are occasionally pulled low, --- and pullup resistors are used to bring the lines high again, by setting --- the drivers to high impedance state. --- --- The tx interface, for writing to the keyboard, does not provide any special --- pre-processing. It simply transmits the 8-bit command value to the --- keyboard. --- --- Pullups MUST BE USED on the ps2_clk and ps2_data lines for this design, --- whether they be internal to an FPGA I/O pad, or externally placed. --- If internal pullups are used, they may be fairly weak, causing bounces --- due to crosstalk, etc. There is a "debounce timer" implemented in order --- to eliminate erroneous state transitions which would occur based on bounce. --- --- Parameters are provided in order to configure and appropriately size the --- counter of a 60 microsecond timer used in the transmitter, depending on --- the clock frequency used. The 60 microsecond period is guaranteed to be --- more than one period of the ps2_clk_s signal. --- --- Also, a smaller 5 microsecond timer has been included for "debounce". --- This is used because, with internal pullups on the ps2_clk and ps2_data --- lines, there is some bouncing around which occurs --- --- A parameter TRAP_SHIFT_KEYS allows the user to eliminate shift keypresses --- from producing scan codes (along with their "undefined" ASCII equivalents) --- at the output of the interface. If TRAP_SHIFT_KEYS is non-zero, the shift --- key status will only be reported by rx_shift_key_on. No ascii or scan --- codes will be reported for the shift keys. This is useful for those who --- wish to use the ASCII data stream, and who don't want to have to "filter --- out" the shift key codes. --- ---------------------------------------------------------------------------------------- - -library ieee; - use ieee.std_logic_1164.all; - use IEEE.STD_LOGIC_ARITH.ALL; - use IEEE.STD_LOGIC_UNSIGNED.ALL; - use ieee.numeric_std.all; - -entity ps2_keyboard_interface is - port( - clk : in std_logic; - reset : in std_logic; - ps2_clk : in std_logic; - ps2_data : in std_logic; - rx_extended : out std_logic; - rx_released : out std_logic; - rx_shift_key_on : out std_logic; --- rx_scan_code : out std_logic_vector(7 downto 0); - rx_ascii : out std_logic_vector(7 downto 0); - rx_data_ready : out std_logic; -- rx_read_o - rx_read : in std_logic; -- rx_read_ack_i - tx_data : in std_logic_vector(7 downto 0); - tx_write : in std_logic; - tx_write_ack : out std_logic; - tx_error_no_keyboard_ack : out std_logic - ); -end ps2_keyboard_interface; - -------------------------------------------------------------------------------- --- Architecture for ps2 keyboard interface -------------------------------------------------------------------------------- -architecture my_ps2_keyboard of ps2_keyboard_interface is - ----------------------------------------------------------------------------- - - -constant TOTAL_BITS : integer := 11; -constant EXTEND_CODE : integer := 16#E0#; -constant RELEASE_CODE : integer := 16#F0#; -constant LEFT_SHIFT : integer := 16#12#; -constant RIGHT_SHIFT : integer := 16#59#; -constant CTRL_CODE : integer := 16#14#; -constant CAPS_CODE : integer := 16#58#; - - --- constants - --- The timer value can be up to (2^bits) inclusive. --- Values for 49.152 MHz clock ---constant TIMER_60USEC_VALUE_PP : integer := 2950; -- Number of sys_clks for 60usec. ---constant TIMER_60USEC_BITS_PP : integer := 12; -- Number of bits needed for timer ---constant TIMER_5USEC_VALUE_PP : integer := 186; -- Number of sys_clks for debounce ---constant TIMER_5USEC_BITS_PP : integer := 8; -- Number of bits needed for timer - --- Values for 12.5 MHz Clock -constant TIMER_60USEC_VALUE_PP : integer := 750; -- Number of sys_clks for 60usec. -constant TIMER_60USEC_BITS_PP : integer := 10; -- Number of bits needed for timer -constant TIMER_5USEC_VALUE_PP : integer := 62; -- Number of sys_clks for debounce -constant TIMER_5USEC_BITS_PP : integer := 6; -- Number of bits needed for timer - -constant TRAP_SHIFT_KEYS_PP : integer := 1; -- Default: No shift key trap. - --- State encodings, provided as constants --- for flexibility to the one instantiating the module. --- In general, the default values need not be changed. - --- State "m1_rx_clk_l" has been chosen on purpose. Since the input --- synchronizing flip-flops initially contain zero, it takes one clk --- for them to update to reflect the actual (idle = high) status of --- the I/O lines from the keyboard. Therefore, choosing 0 for m1_rx_clk_l --- allows the state machine to transition to m1_rx_clk_h when the true --- values of the input signals become present at the outputs of the --- synchronizing flip-flops. This initial transition is harmless, and it --- eliminates the need for a "reset" pulse before the interface can operate. - -type m1_type is ( m1_rx_clk_h, m1_rx_clk_l, - m1_tx_wait_clk_h, m1_tx_force_clk_l, - m1_tx_clk_h, m1_tx_clk_l, - m1_tx_wait_keyboard_ack, m1_tx_done_recovery, - m1_tx_error_no_keyboard_ack, m1_tx_rising_edge_marker, - m1_tx_first_wait_clk_h, m1_tx_first_wait_clk_l, m1_tx_reset_timer, - m1_rx_falling_edge_marker, m1_rx_rising_edge_marker ); - --- Internal signal declarations -signal timer_60usec_done : std_logic; -signal timer_5usec_done : std_logic; -signal extended : std_logic; -signal released : std_logic; -signal shift_key_on : std_logic; -signal ctrl_key_on : std_logic; -signal caps_key_on : std_logic; - - -- NOTE: These two signals used to be one. They - -- were split into two signals because of - -- shift key trapping. With shift key - -- trapping, no event is generated externally, - -- but the "hold" data must still be cleared - -- anyway regardless, in preparation for the - -- next scan codes. -signal rx_output_event : std_logic; -- Used only to clear: hold_released, hold_extended -signal rx_output_strobe : std_logic; -- Used to produce the actual output. - -signal tx_parity_bit : std_logic; -signal rx_shifting_done : std_logic; -signal tx_shifting_done : std_logic; -signal shift_key_plus_code: std_logic_vector(8 downto 0); - -signal q : std_logic_vector(TOTAL_BITS-1 downto 0); -signal m1_state : m1_type; -signal m1_next_state : m1_type; -signal bit_count : std_logic_vector(3 downto 0); -signal enable_timer_60usec: std_logic; -signal enable_timer_5usec : std_logic; -signal timer_60usec_count : std_logic_vector(TIMER_60USEC_BITS_PP-1 downto 0); -signal timer_5usec_count : std_logic_vector(TIMER_5USEC_BITS_PP-1 downto 0); -signal ascii : std_logic_vector(7 downto 0); -- "REG" type only because a case statement is used. -signal left_shift_key : std_logic; -signal right_shift_key : std_logic; -signal hold_extended : std_logic; -- Holds prior value, cleared at rx_output_strobe -signal hold_released : std_logic; -- Holds prior value, cleared at rx_output_strobe -signal ps2_clk_s : std_logic; -- Synchronous version of this input -signal ps2_data_s : std_logic; -- Synchronous version of this input -signal ps2_clk_hi_z : std_logic; -- Without keyboard, high Z equals 1 due to pullups. -signal ps2_data_hi_z : std_logic; -- Without keyboard, high Z equals 1 due to pullups. -signal tx_write_ack_o : std_logic; - --- --- key lookup table --- -component key_slice - Port ( - addr : in std_logic_vector (8 downto 0); - data : out std_logic_vector (7 downto 0) - ); -end component; - ---component key_b4 --- Port ( --- clk : in std_logic; --- rst : in std_logic; --- cs : in std_logic; --- rw : in std_logic; --- addr : in std_logic_vector (8 downto 0); --- rdata : out std_logic_vector (7 downto 0); --- wdata : in std_logic_vector (7 downto 0) --- ); ---end component; - -begin - -my_key_map : key_slice - Port map ( - addr => shift_key_plus_code, - data => ascii - ); - ---my_key_map : key_b4 --- Port map ( --- clk => clk, --- rst => reset, --- cs => '1', --- rw => '1', --- addr => shift_key_plus_code, --- rdata => ascii, --- wdata => "00000000" --- ); - ----------------------------------------------------------------------------- --- Module code --- assign ps2_clk = ps2_clk_hi_z?1'bZ:1'b0; --- assign ps2_data = ps2_data_hi_z?1'bZ:1'b0; --- -ps2_direction : process( ps2_clk_hi_z, ps2_data_hi_z ) -begin - if( ps2_clk_hi_z = '1' ) then - --ps2_clk <= 'Z'; - else - --ps2_clk <= '0'; - end if; - if( ps2_data_hi_z = '1' ) then - --ps2_data <= 'Z'; - else - --ps2_data <= '0'; - end if; -end process; - --- Input "synchronizing" logic -- synchronizes the inputs to the state --- machine clock, thus avoiding errors related to --- spurious state machine transitions. -ps2_synch : process(clk, ps2_clk, ps2_data) -begin - if clk'event and clk='0' then - ps2_clk_s <= ps2_clk; - ps2_data_s <= ps2_data; - end if; -end process; - --- State register -m1_state_register : process( clk, reset, m1_state ) -begin - if clk'event and clk='0' then - if (reset = '1') then - m1_state <= m1_rx_clk_h; - else - m1_state <= m1_next_state; - end if; - end if; -end process; - -m1_state_logic : process( m1_state, q, - tx_shifting_done, tx_write, - ps2_clk_s, ps2_data_s, - timer_60usec_done, timer_5usec_done ) -begin - -- Output signals default to this value, unless changed in a state condition. - ps2_clk_hi_z <= '1'; - ps2_data_hi_z <= '1'; - tx_error_no_keyboard_ack <= '0'; - enable_timer_60usec <= '0'; - enable_timer_5usec <= '0'; - - case (m1_state) is - when m1_rx_clk_h => - enable_timer_60usec <= '1'; - if (tx_write = '1') then - m1_next_state <= m1_tx_reset_timer; - elsif (ps2_clk_s = '0') then - m1_next_state <= m1_rx_falling_edge_marker; - else - m1_next_state <= m1_rx_clk_h; - end if; - - when m1_rx_falling_edge_marker => - enable_timer_60usec <= '0'; - m1_next_state <= m1_rx_clk_l; - - when m1_rx_clk_l => - enable_timer_60usec <= '1'; - if (tx_write = '1') then - m1_next_state <= m1_tx_reset_timer; - elsif (ps2_clk_s = '1') then - m1_next_state <= m1_rx_rising_edge_marker; - else - m1_next_state <= m1_rx_clk_l; - end if; - - when m1_rx_rising_edge_marker => - enable_timer_60usec <= '0'; - m1_next_state <= m1_rx_clk_h; - - when m1_tx_reset_timer => - enable_timer_60usec <= '0'; - m1_next_state <= m1_tx_force_clk_l; - - when m1_tx_force_clk_l => - enable_timer_60usec <= '1'; - ps2_clk_hi_z <= '0'; -- Force the ps2_clk line low. - if (timer_60usec_done = '1') then - m1_next_state <= m1_tx_first_wait_clk_h; - else - m1_next_state <= m1_tx_force_clk_l; - end if; - - when m1_tx_first_wait_clk_h => - enable_timer_5usec <= '1'; - ps2_data_hi_z <= '0'; -- Start bit. - if (ps2_clk_s = '0') and (timer_5usec_done = '1') then - m1_next_state <= m1_tx_clk_l; - else - m1_next_state <= m1_tx_first_wait_clk_h; - end if; - - -- This state must be included because the device might possibly - -- delay for up to 10 milliseconds before beginning its clock pulses. - -- During that waiting time, we cannot drive the data (q[0]) because it - -- is possibly 1, which would cause the keyboard to abort its receive - -- and the expected clocks would then never be generated. - when m1_tx_first_wait_clk_l => - ps2_data_hi_z <= '0'; - if (ps2_clk_s = '0') then - m1_next_state <= m1_tx_clk_l; - else - m1_next_state <= m1_tx_first_wait_clk_l; - end if; - - when m1_tx_wait_clk_h => - enable_timer_5usec <= '1'; - ps2_data_hi_z <= q(0); - if (ps2_clk_s = '1') and (timer_5usec_done = '1') then - m1_next_state <= m1_tx_rising_edge_marker; - else - m1_next_state <= m1_tx_wait_clk_h; - end if; - - when m1_tx_rising_edge_marker => - ps2_data_hi_z <= q(0); - m1_next_state <= m1_tx_clk_h; - - when m1_tx_clk_h => - ps2_data_hi_z <= q(0); - if (tx_shifting_done = '1') then - m1_next_state <= m1_tx_wait_keyboard_ack; - elsif (ps2_clk_s = '0') then - m1_next_state <= m1_tx_clk_l; - else - m1_next_state <= m1_tx_clk_h; - end if; - - when m1_tx_clk_l => - ps2_data_hi_z <= q(0); - if (ps2_clk_s = '1') then - m1_next_state <= m1_tx_wait_clk_h; - else - m1_next_state <= m1_tx_clk_l; - end if; - - when m1_tx_wait_keyboard_ack => - if (ps2_clk_s = '0') and (ps2_data_s = '1') then - m1_next_state <= m1_tx_error_no_keyboard_ack; - elsif (ps2_clk_s = '0') and (ps2_data_s = '0') then - m1_next_state <= m1_tx_done_recovery; - else - m1_next_state <= m1_tx_wait_keyboard_ack; - end if; - - when m1_tx_done_recovery => - if (ps2_clk_s = '1') and (ps2_data_s = '1') then - m1_next_state <= m1_rx_clk_h; - else - m1_next_state <= m1_tx_done_recovery; - end if; - - when m1_tx_error_no_keyboard_ack => - tx_error_no_keyboard_ack <= '1'; - if (ps2_clk_s = '1') and (ps2_data_s ='1') then - m1_next_state <= m1_rx_clk_h; - else - m1_next_state <= m1_tx_error_no_keyboard_ack; - end if; - - when others => - m1_next_state <= m1_rx_clk_h; - end case; -end process; - --- This is the bit counter -bit_counter: process(clk, reset, m1_state, bit_count ) -begin - if clk'event and clk = '0' then - if ( reset = '1' ) or - ( rx_shifting_done = '1' ) or - (m1_state = m1_tx_wait_keyboard_ack) then -- After tx is done. - bit_count <= "0000"; -- normal reset - elsif (timer_60usec_done = '1' ) and - (m1_state = m1_rx_clk_h) and - (ps2_clk_s = '1') then - bit_count <= "0000"; -- rx watchdog timer reset - elsif (m1_state = m1_rx_falling_edge_marker) or -- increment for rx - (m1_state = m1_tx_rising_edge_marker) then -- increment for tx - bit_count <= bit_count + 1; - end if; - end if; -end process; - -assign: process( bit_count, tx_write, tx_write_ack_o, m1_state ) -begin - if (bit_count = TOTAL_BITS) then - rx_shifting_done <= '1'; - else - rx_shifting_done <= '0'; - end if; - - if (bit_count = (TOTAL_BITS-1)) then - tx_shifting_done <= '1'; - else - tx_shifting_done <= '0'; - end if; - --- This is the signal which enables loading of the shift register. --- It also indicates "ack" to the device writing to the transmitter. - if ((tx_write = '1') and (m1_state = m1_rx_clk_h)) or - ((tx_write = '1') and (m1_state = m1_rx_clk_l)) then - tx_write_ack_o <= '1'; - else - tx_write_ack_o <= '0'; - end if; - tx_write_ack <= tx_write_ack_o; -end process; - --- This is the ODD parity bit for the transmitted word. --- assign tx_parity_bit = ~^tx_data; --- -tx_parity_bit <= not( tx_data(7) xor tx_data(6) xor tx_data(5) xor tx_data(4) xor - tx_data(3) xor tx_data(2) xor tx_data(1) xor tx_data(0) ); - --- This is the shift register -q_shift : process(clk, tx_write_ack_o, tx_parity_bit, tx_data, - m1_state, q, ps2_data_s, rx_shifting_done ) -begin - if clk'event and clk='0' then - if (reset = '1') then - q <= "00000000000"; - elsif (tx_write_ack_o = '1') then - q <= "1" & tx_parity_bit & tx_data & "0"; - elsif ( (m1_state = m1_rx_falling_edge_marker) or - (m1_state = m1_tx_rising_edge_marker) ) then - q <= ps2_data_s & q((TOTAL_BITS-1) downto 1); - end if; - end if; - --- Create the signals which indicate special scan codes received. --- These are the "unlatched versions." - if (q(8 downto 1) = EXTEND_CODE) and (rx_shifting_done = '1') then - extended <= '1'; - else - extended <= '0'; - end if; - if (q(8 downto 1) = RELEASE_CODE) and (rx_shifting_done = '1') then - released <= '1'; - else - released <= '0'; - end if; -end process; - --- This is the 60usec timer counter -timer60usec: process(clk, enable_timer_60usec, timer_60usec_count) -begin - if clk'event and clk = '0' then - if (enable_timer_60usec = '0') then - timer_60usec_count <= "0000000000"; - elsif (timer_60usec_done = '0') then - timer_60usec_count <= timer_60usec_count + 1; - end if; - end if; - - if (timer_60usec_count = (TIMER_60USEC_VALUE_PP - 1)) then - timer_60usec_done <= '1'; - else - timer_60usec_done <= '0'; - end if; -end process; - --- This is the 5usec timer counter -timer5usec : process(clk, enable_timer_5usec, timer_5usec_count ) -begin - if clk'event and clk = '0' then - if (enable_timer_5usec = '0') then - timer_5usec_count <= "000000"; - elsif (timer_5usec_done = '0') then - timer_5usec_count <= timer_5usec_count + 1; - end if; - end if; - - if( timer_5usec_count = (TIMER_5USEC_VALUE_PP - 1)) then - timer_5usec_done <= '1'; - else - timer_5usec_done <= '0'; - end if; -end process; - - --- Store the special scan code status bits --- Not the final output, but an intermediate storage place, --- until the entire set of output data can be assembled. -special_scan : process(clk, reset, rx_output_event, rx_shifting_done, extended, released ) -begin - if clk'event and clk='0' then - if (reset = '1') or (rx_output_event = '1') then - hold_extended <= '0'; - hold_released <= '0'; - else - if (rx_shifting_done = '1') and (extended = '1') then - hold_extended <= '1'; - end if; - if (rx_shifting_done = '1') and (released = '1') then - hold_released <= '1'; - end if; - end if; - end if; -end process; - - --- These bits contain the status of the two shift keys -left_shift_proc : process(clk, reset, q, rx_shifting_done, hold_released ) -begin - if clk'event and clk = '0' then - if (reset = '1') then - left_shift_key <= '0'; - elsif (q(8 downto 1) = LEFT_SHIFT) and - (rx_shifting_done = '1') and - (hold_released = '0') then - left_shift_key <= '1'; - elsif (q(8 downto 1) = LEFT_SHIFT) and - (rx_shifting_done = '1') and - (hold_released = '1') then - left_shift_key <= '0'; - end if; - end if; -end process; - -right_shift_proc : process(clk, reset, q, rx_shifting_done, hold_released ) -begin - if clk'event and clk = '0' then - if (reset = '1') then - right_shift_key <= '0'; - elsif (q(8 downto 1) = RIGHT_SHIFT) and - (rx_shifting_done = '1') and - (hold_released = '0') then - right_shift_key <= '1'; - elsif (q(8 downto 1) = RIGHT_SHIFT) and - (rx_shifting_done = '1') and - (hold_released = '1') then - right_shift_key <= '0'; - end if; - end if; -end process; - -shift_key_on <= left_shift_key or right_shift_key; -rx_shift_key_on <= shift_key_on; - --- --- Control keys --- -ctrl_proc : process(clk, reset, q, rx_shifting_done, hold_released ) -begin - if clk'event and clk = '0' then - if (reset = '1') then - ctrl_key_on <= '0'; - elsif (q(8 downto 1) = CTRL_CODE) and - (rx_shifting_done = '1') and - (hold_released = '0') then - ctrl_key_on <= '1'; - elsif (q(8 downto 1) = CTRL_CODE) and - (rx_shifting_done = '1') and - (hold_released = '1') then - ctrl_key_on <= '0'; - end if; - end if; -end process; - --- --- Caps lock --- -caps_proc : process(clk, reset, q, rx_shifting_done, hold_released, caps_key_on ) -begin - if clk'event and clk = '0' then - if (reset = '1') then - caps_key_on <= '0'; - elsif (q(8 downto 1) = CAPS_CODE) and - (rx_shifting_done = '1') and - (hold_released = '0') then - caps_key_on <= not caps_key_on; - end if; - end if; -end process; - --- Output the special scan code flags, the scan code and the ascii -special_scan_proc : process(clk, reset, - hold_extended, hold_released, - q, ascii, ctrl_key_on ) -begin - if clk'event and clk = '0' then - if (reset = '1') then - rx_extended <= '0'; - rx_released <= '0'; --- rx_scan_code <= "00000000"; - rx_ascii <= "00000000"; - elsif (rx_output_strobe = '1') then - rx_extended <= hold_extended; - rx_released <= hold_released; --- rx_scan_code <= q(8 downto 1); - elsif ctrl_key_on = '1' then - rx_ascii <= ascii and x"1f"; - else - rx_ascii <= ascii; - end if; - end if; -end process; - --- Store the final rx output data only when all extend and release codes --- are received and the next (actual key) scan code is also ready. --- (the presence of rx_extended or rx_released refers to the --- the current latest scan code received, not the previously latched flags.) - -rx_output_proc : process( clk, reset, - rx_shifting_done, rx_output_strobe, - extended, released, - q, ascii, rx_read ) -begin - if (rx_shifting_done = '1') and (extended = '0') and (released = '0') then - rx_output_event <= '1'; - else - rx_output_event <= '0'; - end if; - - if clk'event and clk = '0' then - if reset = '1' then - rx_output_strobe <= '0'; - elsif (rx_shifting_done = '1') and - (rx_output_strobe = '0') and - (extended = '0') and - (released = '0') and - (hold_released = '0' ) and - (ascii /= x"00" ) then --- ((TRAP_SHIFT_KEYS_PP = 0) or --- ( (q(8 downto 1) /= RIGHT_SHIFT) and --- (q(8 downto 1) /= LEFT_SHIFT) and --- (q(8 downto 1) /= CTRL_CODE) ) )then - rx_output_strobe <= '1'; - elsif rx_read = '1' then - rx_output_strobe <= '0'; - end if; - end if; - rx_data_ready <= rx_output_strobe; -end process; - - --- This part translates the scan code into an ASCII value... --- Only the ASCII codes which I considered important have been included. --- if you want more, just add the appropriate case statement lines... --- (You will need to know the keyboard scan codes you wish to assign.) --- The entries are listed in ascending order of ASCII value. -shift_key_plus_code <= shift_key_on & caps_key_on & q(7 downto 1); - ---shift_map : process( shift_key_plus_code ) ---begin --- case shift_key_plus_code is --- when x"066" => ascii <= x"08"; -- Backspace ("backspace" key) --- when x"166" => ascii <= x"08"; -- Backspace ("backspace" key) --- when x"00d" => ascii <= x"09"; -- Horizontal Tab --- when x"10d" => ascii <= x"09"; -- Horizontal Tab --- when x"05a" => ascii <= x"0d"; -- Carriage return ("enter" key) --- when x"15a" => ascii <= x"0d"; -- Carriage return ("enter" key) --- when x"076" => ascii <= x"1b"; -- Escape ("esc" key) --- when x"176" => ascii <= x"1b"; -- Escape ("esc" key) --- when x"029" => ascii <= x"20"; -- Space --- when x"129" => ascii <= x"20"; -- Space --- when x"116" => ascii <= x"21"; -- ! --- when x"152" => ascii <= x"22"; -- " --- when x"126" => ascii <= x"23"; -- # --- when x"125" => ascii <= x"24"; -- $ --- when x"12e" => ascii <= x"25"; -- --- when x"13d" => ascii <= x"26"; -- --- when x"052" => ascii <= x"27"; -- --- when x"146" => ascii <= x"28"; -- --- when x"145" => ascii <= x"29"; -- --- when x"13e" => ascii <= x"2a"; -- * --- when x"155" => ascii <= x"2b"; -- + --- when x"041" => ascii <= x"2c"; -- , --- when x"04e" => ascii <= x"2d"; -- - --- when x"049" => ascii <= x"2e"; -- . --- when x"04a" => ascii <= x"2f"; -- / --- when x"045" => ascii <= x"30"; -- 0 --- when x"016" => ascii <= x"31"; -- 1 --- when x"01e" => ascii <= x"32"; -- 2 --- when x"026" => ascii <= x"33"; -- 3 --- when x"025" => ascii <= x"34"; -- 4 --- when x"02e" => ascii <= x"35"; -- 5 --- when x"036" => ascii <= x"36"; -- 6 --- when x"03d" => ascii <= x"37"; -- 7 --- when x"03e" => ascii <= x"38"; -- 8 --- when x"046" => ascii <= x"39"; -- 9 --- when x"14c" => ascii <= x"3a"; -- : --- when x"04c" => ascii <= x"3b"; -- ; --- when x"141" => ascii <= x"3c"; -- < --- when x"055" => ascii <= x"3d"; -- = --- when x"149" => ascii <= x"3e"; -- > --- when x"14a" => ascii <= x"3f"; -- ? --- when x"11e" => ascii <= x"40"; -- @ --- when x"11c" => ascii <= x"41"; -- A --- when x"132" => ascii <= x"42"; -- B --- when x"121" => ascii <= x"43"; -- C --- when x"123" => ascii <= x"44"; -- D --- when x"124" => ascii <= x"45"; -- E --- when x"12b" => ascii <= x"46"; -- F --- when x"134" => ascii <= x"47"; -- G --- when x"133" => ascii <= x"48"; -- H --- when x"143" => ascii <= x"49"; -- I --- when x"13b" => ascii <= x"4a"; -- J --- when x"142" => ascii <= x"4b"; -- K --- when x"14b" => ascii <= x"4c"; -- L --- when x"13a" => ascii <= x"4d"; -- M --- when x"131" => ascii <= x"4e"; -- N --- when x"144" => ascii <= x"4f"; -- O --- when x"14d" => ascii <= x"50"; -- P --- when x"115" => ascii <= x"51"; -- Q --- when x"12d" => ascii <= x"52"; -- R --- when x"11b" => ascii <= x"53"; -- S --- when x"12c" => ascii <= x"54"; -- T --- when x"13c" => ascii <= x"55"; -- U --- when x"12a" => ascii <= x"56"; -- V --- when x"11d" => ascii <= x"57"; -- W --- when x"122" => ascii <= x"58"; -- X --- when x"135" => ascii <= x"59"; -- Y --- when x"11a" => ascii <= x"5a"; -- Z --- when x"054" => ascii <= x"5b"; -- [ --- when x"05d" => ascii <= x"5c"; -- \ --- when x"05b" => ascii <= x"5d"; -- ] --- when x"136" => ascii <= x"5e"; -- ^ --- when x"14e" => ascii <= x"5f"; -- _ --- when x"00e" => ascii <= x"60"; -- ` --- when x"01c" => ascii <= x"61"; -- a --- when x"032" => ascii <= x"62"; -- b --- when x"021" => ascii <= x"63"; -- c --- when x"023" => ascii <= x"64"; -- d --- when x"024" => ascii <= x"65"; -- e --- when x"02b" => ascii <= x"66"; -- f --- when x"034" => ascii <= x"67"; -- g --- when x"033" => ascii <= x"68"; -- h --- when x"043" => ascii <= x"69"; -- i --- when x"03b" => ascii <= x"6a"; -- j --- when x"042" => ascii <= x"6b"; -- k --- when x"04b" => ascii <= x"6c"; -- l --- when x"03a" => ascii <= x"6d"; -- m --- when x"031" => ascii <= x"6e"; -- n --- when x"044" => ascii <= x"6f"; -- o --- when x"04d" => ascii <= x"70"; -- p --- when x"015" => ascii <= x"71"; -- q --- when x"02d" => ascii <= x"72"; -- r --- when x"01b" => ascii <= x"73"; -- s --- when x"02c" => ascii <= x"74"; -- t --- when x"03c" => ascii <= x"75"; -- u --- when x"02a" => ascii <= x"76"; -- v --- when x"01d" => ascii <= x"77"; -- w --- when x"022" => ascii <= x"78"; -- x --- when x"035" => ascii <= x"79"; -- y --- when x"01a" => ascii <= x"7a"; -- z --- when x"154" => ascii <= x"7b"; -- { --- when x"15d" => ascii <= x"7c"; -- | --- when x"15b" => ascii <= x"7d"; -- } --- when x"10e" => ascii <= x"7e"; -- ~ --- when x"071" => ascii <= x"7f"; -- (Delete OR DEL on numeric keypad) --- when x"171" => ascii <= x"7f"; -- (Delete OR DEL on numeric keypad) --- when others => ascii <= x"ff"; -- 0xff used for unlisted characters. --- end case; ---end process; - -end my_ps2_keyboard; Index: trunk/rtl/System09_Terasic_DE1/System09.vhd =================================================================== --- trunk/rtl/System09_Terasic_DE1/System09.vhd (revision 115) +++ trunk/rtl/System09_Terasic_DE1/System09.vhd (nonexistent) @@ -1,939 +0,0 @@ ---===========================================================================---- --- --- S Y N T H E Z I A B L E System09 - SOC. --- --- www.OpenCores.Org - September 2003 --- This core adheres to the GNU public license --- --- File name : System09.vhd --- --- Purpose : Top level file for 6809 compatible system on a chip --- Designed with Xilinx XC2S300e Spartan 2+ FPGA. --- Implemented With BurchED B5-X300 FPGA board, --- B5-SRAM module, B5-CF module and B5-FPGA-CPU-IO module --- --- Dependencies : ieee.Std_Logic_1164 --- ieee.std_logic_unsigned --- ieee.std_logic_arith --- ieee.numeric_std --- --- Uses : --- cpu09 (cpu09.vhd) CPU core --- mon_rom (kbug_rom_b4.vhd) Monitor ROM --- dat_ram (datram.vhd) Dynamic Address Translation --- miniuart (minitUART3.vhd) ACIA / MiniUART --- (rxunit3.vhd) --- (tx_unit3.vhd) --- keyboard (keyboard.vhd) PS/2 Keyboard Interface --- vdu (vdu8.vhd) 80 x 25 Video Display --- timer (timer.vhd) Timer module --- trap (trap.vhd) Bus Trap interrupt --- ioport (ioport.vhd) Parallel I/O port. --- --- Author : John E. Kent --- dilbert57@opencores.org --- ---===========================================================================---- --- --- Revision History: ---===========================================================================-- --- Version 0.1 - 20 March 2003 --- Version 0.2 - 30 March 2003 --- Version 0.3 - 29 April 2003 --- Version 0.4 - 29 June 2003 --- --- Version 0.5 - 19 July 2003 --- prints out "Hello World" --- --- Version 0.6 - 5 September 2003 --- Runs SBUG --- --- Version 1.0- 6 Sep 2003 - John Kent --- Inverted SysClk --- Initial release to Open Cores --- --- Version 1.1 - 17 Jan 2004 - John Kent --- Updated miniUart. --- --- Version 1.2 - 25 Jan 2004 - John Kent --- removed signals "test_alu" and "test_cc" --- Trap hardware re-instated. --- --- Version 1.3 - 11 Feb 2004 - John Kent --- Designed forked off to produce System09_VDU --- Added VDU component --- VDU runs at 25MHz and divides the clock by 2 for the CPU --- UART Runs at 57.6 Kbps --- --- Version 1.4 - 21 Nov 2004 - John Kent --- Changes to make compatible with Spartan3 starter kit version --- Designed to run with a 50MHz clock input. --- the VDU divides 50 MHz to generate a --- 25 MHz VDU Pixel Clock and a 12.5 MHz CPU clock --- Changed Monitor ROM signals to make it look like --- a standard 2K memory block --- Re-assigned I/O port assignments so it is possible to run KBUG9 --- $E000 - ACIA --- $E010 - Keyboard --- $E020 - VDU --- $E030 - Compact Flash --- $E040 - Timer --- $E050 - Bus trap --- $E060 - Parallel I/O --- ---===========================================================================-- -library ieee; - use ieee.std_logic_1164.all; - use IEEE.STD_LOGIC_UNSIGNED.ALL; - use ieee.numeric_std.all; - -entity My_System09 is - port( - SysClk : in Std_Logic; -- System Clock input - Reset_n : in Std_logic; -- Master Reset input (active low) - LED : out std_logic; -- Diagnostic LED Flasher - - -- Memory Interface signals - ram_csn : out Std_Logic; - ram_wrln : out Std_Logic; - ram_wrun : out Std_Logic; - ram_addr : out Std_Logic_Vector(16 downto 0); - ram_data_i : in std_logic_vector(15 downto 0); - ram_data_o : out std_logic_vector(15 downto 0); - - -- Stuff on the peripheral board - - -- PS/2 Keyboard - kb_clock : inout Std_logic; - kb_data : inout Std_Logic; - - -- PS/2 Mouse interface --- mouse_clock : in Std_Logic; --- mouse_data : in Std_Logic; - - -- Uart Interface - rxbit : in Std_Logic; - txbit : out Std_Logic; - rts_n : out Std_Logic; - cts_n : in Std_Logic; - - -- CRTC output signals - v_drive : out Std_Logic; - h_drive : out Std_Logic; - blue_lo : out std_logic; - blue_hi : out std_logic; - green_lo : out std_logic; - green_hi : out std_logic; - red_lo : out std_logic; - red_hi : out std_logic; --- buzzer : out std_logic; - --- Compact Flash - cf_rst_n : out std_logic; - cf_cs0_n : out std_logic; - cf_cs1_n : out std_logic; - cf_rd_n : out std_logic; - cf_wr_n : out std_logic; - cf_cs16_n : out std_logic; - cf_a : out std_logic_vector(2 downto 0); - cf_d : inout std_logic_vector(15 downto 0); - --- Parallel I/O port - porta : inout std_logic_vector(7 downto 0); - portb : inout std_logic_vector(7 downto 0); - --- CPU bus - bus_clk : out std_logic; - bus_reset : out std_logic; - bus_rw : out std_logic; - bus_cs : out std_logic; - bus_addr : out std_logic_vector(15 downto 0); - bus_data : inout std_logic_vector(7 downto 0); - --- timer - timer_out : out std_logic - ); -end My_System09; - -------------------------------------------------------------------------------- --- Architecture for System09 -------------------------------------------------------------------------------- -architecture my_computer of My_System09 is - ----------------------------------------------------------------------------- - -- Signals - ----------------------------------------------------------------------------- - -- Monitor ROM - signal rom_data_out : Std_Logic_Vector(7 downto 0); - signal rom_cs : std_logic; - - -- UART Interface signals - signal uart_data_out : Std_Logic_Vector(7 downto 0); - signal uart_cs : Std_Logic; - signal uart_irq : Std_Logic; - signal baudclk : Std_Logic; - signal DCD_n : Std_Logic; - - -- timer - signal timer_data_out : std_logic_vector(7 downto 0); - signal timer_cs : std_logic; - signal timer_irq : std_logic; - - -- trap - signal trap_cs : std_logic; - signal trap_data_out : std_logic_vector(7 downto 0); - signal trap_irq : std_logic; - - -- Parallel I/O port - signal ioport_data_out : std_logic_vector(7 downto 0); - signal ioport_cs : std_logic; - - -- compact flash port - signal cf_data_out : std_logic_vector(7 downto 0); - signal cf_cs : std_logic; - signal cf_rd : std_logic; - signal cf_wr : std_logic; - - -- keyboard port - signal keyboard_data_out : std_logic_vector(7 downto 0); - signal keyboard_cs : std_logic; - signal keyboard_irq : std_logic; - - -- RAM - signal ram_cs : std_logic; -- memory chip select - signal ram_wrl : std_logic; -- memory write lower - signal ram_wru : std_logic; -- memory write upper - signal ram_data_out : std_logic_vector(7 downto 0); - - -- CPU Interface signals - signal cpu_reset : Std_Logic; - signal cpu_clk : Std_Logic; - signal cpu_rw : std_logic; - signal cpu_vma : std_logic; - signal cpu_halt : std_logic; - signal cpu_hold : std_logic; - signal cpu_firq : std_logic; - signal cpu_irq : std_logic; - signal cpu_nmi : std_logic; - signal cpu_addr : std_logic_vector(15 downto 0); - signal cpu_data_in : std_logic_vector(7 downto 0); - signal cpu_data_out : std_logic_vector(7 downto 0); - - -- Dynamic address translation - signal dat_cs : std_logic; - signal dat_addr : std_logic_vector(7 downto 0); - - -- Video Display Unit - signal vdu_cs : std_logic; - signal vdu_data_out : std_logic_vector(7 downto 0); - signal vga_red : std_logic; - signal vga_green : std_logic; - signal vga_blue : std_logic; - - -- Flashing Led test signals - signal countL : std_logic_vector(23 downto 0); - signal BaudCount : std_logic_vector(5 downto 0); - ------------------------------------------------------------------ --- --- CPU09 CPU core --- ------------------------------------------------------------------ - -component cpu09 - port ( - clk: in std_logic; - rst: in std_logic; - rw: out std_logic; -- Asynchronous memory interface - vma: out std_logic; - address: out std_logic_vector(15 downto 0); - data_in: in std_logic_vector(7 downto 0); - data_out: out std_logic_vector(7 downto 0); - halt: in std_logic; - hold: in std_logic; - irq: in std_logic; - nmi: in std_logic; - firq: in std_logic - ); -end component; - - ----------------------------------------- --- --- SBUG Block RAM Monitor ROM --- ----------------------------------------- -component mon_rom - port ( - clk : in std_logic; - rst : in std_logic; - cs : in std_logic; - rw : in std_logic; - addr : in std_logic_vector (10 downto 0); - wdata : in std_logic_vector (7 downto 0); - rdata : out std_logic_vector (7 downto 0) - ); -end component; - - ----------------------------------------- --- --- Dynamic Address Translation Registers --- ----------------------------------------- -component dat_ram - port ( - clk: in std_logic; - rst: in std_logic; - cs: in std_logic; - rw: in std_logic; - addr_lo: in std_logic_vector(3 downto 0); - addr_hi: in std_logic_vector(3 downto 0); - data_in: in std_logic_vector(7 downto 0); - data_out: out std_logic_vector(7 downto 0) - ); -end component; - ------------------------------------------------------------------ --- --- Open Cores Mini UART --- ------------------------------------------------------------------ - -component miniUART - port ( - clk : in Std_Logic; -- System Clock - rst : in Std_Logic; -- Reset input (active high) - cs : in Std_Logic; -- miniUART Chip Select - rw : in Std_Logic; -- Read / Not Write - irq : out Std_Logic; -- Interrupt - Addr : in Std_Logic; -- Register Select - DataIn : in Std_Logic_Vector(7 downto 0); -- Data Bus In - DataOut : out Std_Logic_Vector(7 downto 0); -- Data Bus Out - RxC : in Std_Logic; -- Receive Baud Clock - TxC : in Std_Logic; -- Transmit Baud Clock - RxD : in Std_Logic; -- Receive Data - TxD : out Std_Logic; -- Transmit Data - DCD_n : in Std_Logic; -- Data Carrier Detect - CTS_n : in Std_Logic; -- Clear To Send - RTS_n : out Std_Logic ); -- Request To send -end component; - - ----------------------------------------- --- --- Timer module --- ----------------------------------------- - -component timer - port ( - clk : in std_logic; - rst : in std_logic; - cs : in std_logic; - rw : in std_logic; - addr : in std_logic; - data_in : in std_logic_vector(7 downto 0); - data_out : out std_logic_vector(7 downto 0); - irq : out std_logic; - timer_in : in std_logic; - timer_out : out std_logic - ); -end component; - ------------------------------------------------------------- --- --- Bus Trap logic --- ------------------------------------------------------------- - -component trap - port ( - clk : in std_logic; - rst : in std_logic; - cs : in std_logic; - rw : in std_logic; - vma : in std_logic; - addr : in std_logic_vector(15 downto 0); - data_in : in std_logic_vector(7 downto 0); - data_out : out std_logic_vector(7 downto 0); - irq : out std_logic - ); -end component; - ----------------------------------------- --- --- Dual 8 bit Parallel I/O module --- ----------------------------------------- -component ioport - port ( - clk : in std_logic; - rst : in std_logic; - cs : in std_logic; - rw : in std_logic; - addr : in std_logic_vector(1 downto 0); - data_in : in std_logic_vector(7 downto 0); - data_out : out std_logic_vector(7 downto 0); - porta_io : inout std_logic_vector(7 downto 0); - portb_io : inout std_logic_vector(7 downto 0) - ); -end component; - ----------------------------------------- --- --- PS/2 Keyboard --- ----------------------------------------- - -component keyboard - port( - clk : in std_logic; - rst : in std_logic; - cs : in std_logic; - rw : in std_logic; - addr : in std_logic; - data_in : in std_logic_vector(7 downto 0); - data_out : out std_logic_vector(7 downto 0); - irq : out std_logic; - kbd_clk : inout std_logic; - kbd_data : inout std_logic - ); -end component; - ----------------------------------------- --- --- Video Display Unit. --- ----------------------------------------- -component vdu - port( - -- control register interface - vdu_clk_in : in std_logic; - cpu_clk_out : out std_logic; - vdu_rst : in std_logic; - vdu_cs : in std_logic; - vdu_rw : in std_logic; - vdu_addr : in std_logic_vector(2 downto 0); - vdu_data_in : in std_logic_vector(7 downto 0); - vdu_data_out : out std_logic_vector(7 downto 0); - - -- vga port connections - vga_red_o : out std_logic; - vga_green_o : out std_logic; - vga_blue_o : out std_logic; - vga_hsync_o : out std_logic; - vga_vsync_o : out std_logic - ); -end component; - - --- component BUFG --- port ( --- i: in std_logic; --- o: out std_logic --- ); --- end component; - -begin - ----------------------------------------------------------------------------- - -- Instantiation of internal components - ----------------------------------------------------------------------------- - ----------------------------------------- --- --- CPU09 CPU Core --- ----------------------------------------- -my_cpu : cpu09 port map ( - clk => cpu_clk, - rst => cpu_reset, - rw => cpu_rw, - vma => cpu_vma, - address => cpu_addr(15 downto 0), - data_in => cpu_data_in, - data_out => cpu_data_out, - halt => cpu_halt, - hold => cpu_hold, - irq => cpu_irq, - nmi => cpu_nmi, - firq => cpu_firq - ); - ----------------------------------------- --- --- SBUG / KBUG Monitor ROM --- ----------------------------------------- -my_rom : mon_rom port map ( - clk => cpu_clk, - rst => cpu_reset, - cs => rom_cs, - rw => '1', - addr => cpu_addr(10 downto 0), - wdata => cpu_data_out, - rdata => rom_data_out - ); - ----------------------------------------- --- --- Dynamic Address Translation Registers --- ----------------------------------------- -my_dat : dat_ram port map ( - clk => cpu_clk, - rst => cpu_reset, - cs => dat_cs, - rw => cpu_rw, - addr_hi => cpu_addr(15 downto 12), - addr_lo => cpu_addr(3 downto 0), - data_in => cpu_data_out, - data_out => dat_addr(7 downto 0) - ); - ----------------------------------------- --- --- ACIA/UART Serial interface --- ----------------------------------------- -my_uart : miniUART port map ( - clk => cpu_clk, - rst => cpu_reset, - cs => uart_cs, - rw => cpu_rw, - irq => uart_irq, - Addr => cpu_addr(0), - Datain => cpu_data_out, - DataOut => uart_data_out, - RxC => baudclk, - TxC => baudclk, - RxD => rxbit, - TxD => txbit, - DCD_n => dcd_n, - CTS_n => cts_n, - RTS_n => rts_n - ); - ----------------------------------------- --- --- PS/2 Keyboard Interface --- ----------------------------------------- -my_keyboard : keyboard port map( - clk => cpu_clk, - rst => cpu_reset, - cs => keyboard_cs, - rw => cpu_rw, - addr => cpu_addr(0), - data_in => cpu_data_out(7 downto 0), - data_out => keyboard_data_out(7 downto 0), - irq => keyboard_irq, - kbd_clk => kb_clock, - kbd_data => kb_data - ); - ----------------------------------------- --- --- Video Display Unit instantiation --- ----------------------------------------- -my_vdu : vdu port map( - - -- Control Registers - vdu_clk_in => SysClk, -- 50MHz System Clock in - cpu_clk_out => cpu_clk, -- 12.5 MHz CPU clock out - vdu_rst => cpu_reset, - vdu_cs => vdu_cs, - vdu_rw => cpu_rw, - vdu_addr => cpu_addr(2 downto 0), - vdu_data_in => cpu_data_out, - vdu_data_out => vdu_data_out, - - -- vga port connections - vga_red_o => vga_red, - vga_green_o => vga_green, - vga_blue_o => vga_blue, - vga_hsync_o => h_drive, - vga_vsync_o => v_drive - ); - ----------------------------------------- --- --- Timer Module --- ----------------------------------------- -my_timer : timer port map ( - clk => cpu_clk, - rst => cpu_reset, - cs => timer_cs, - rw => cpu_rw, - addr => cpu_addr(0), - data_in => cpu_data_out, - data_out => timer_data_out, - irq => timer_irq, - timer_in => CountL(5), - timer_out => timer_out - ); - ----------------------------------------- --- --- Bus Trap Interrupt logic --- ----------------------------------------- -my_trap : trap port map ( - clk => cpu_clk, - rst => cpu_reset, - cs => trap_cs, - rw => cpu_rw, - vma => cpu_vma, - addr => cpu_addr, - data_in => cpu_data_out, - data_out => trap_data_out, - irq => trap_irq - ); - ----------------------------------------- --- --- Parallel I/O Port --- ----------------------------------------- -my_ioport : ioport port map ( - clk => cpu_clk, - rst => cpu_reset, - cs => ioport_cs, - rw => cpu_rw, - addr => cpu_addr(1 downto 0), - data_in => cpu_data_out, - data_out => ioport_data_out, - porta_io => porta, - portb_io => portb - ); - - --- clk_buffer : BUFG port map( --- i => e_clk, --- o => cpu_clk --- ); - ----------------------------------------------------------------------- --- --- Process to decode memory map --- ----------------------------------------------------------------------- - -mem_decode: process( cpu_clk, Reset_n, - cpu_addr, cpu_rw, cpu_vma, - rom_data_out, - ram_data_out, - cf_data_out, - timer_data_out, - trap_data_out, - ioport_data_out, - uart_data_out, - keyboard_data_out, - vdu_data_out, - bus_data ) -begin - case cpu_addr(15 downto 11) is - -- - -- SBUG/KBUG Monitor ROM $F800 - $FFFF - -- - when "11111" => -- $F800 - $FFFF - cpu_data_in <= rom_data_out; - rom_cs <= cpu_vma; -- read ROM - dat_cs <= cpu_vma; -- write DAT - ram_cs <= '0'; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= '0'; - - -- - -- IO Devices $E000 - $E7FF - -- - when "11100" => -- $E000 - $E7FF - rom_cs <= '0'; - dat_cs <= '0'; - ram_cs <= '0'; - case cpu_addr(7 downto 4) is - -- - -- UART / ACIA $E000 - -- - when "0000" => -- $E000 - cpu_data_in <= uart_data_out; - uart_cs <= cpu_vma; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= '0'; - - -- - -- Keyboard port $E010 - $E01F - -- - when "0001" => -- $E010 - cpu_data_in <= keyboard_data_out; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= cpu_vma; - vdu_cs <= '0'; - bus_cs <= '0'; - - -- - -- VDU port $E020 - $E02F - -- - when "0010" => -- $E020 - cpu_data_in <= vdu_data_out; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= cpu_vma; - bus_cs <= '0'; - - - -- - -- Compact Flash $E030 - $E03F - -- - when "0011" => -- $E030 - cpu_data_in <= cf_data_out; - uart_cs <= '0'; - cf_cs <= cpu_vma; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= '0'; - - -- - -- Timer $E040 - $E04F - -- - when "0100" => -- $E040 - cpu_data_in <= timer_data_out; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= cpu_vma; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= '0'; - - -- - -- Bus Trap Logic $E050 - $E05F - -- - when "0101" => -- $E050 - cpu_data_in <= trap_data_out; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= cpu_vma; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= '0'; - - -- - -- I/O port $E060 - $E06F - -- - when "0110" => -- $E060 - cpu_data_in <= ioport_data_out; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= cpu_vma; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= '0'; - - when others => -- $E070 to $E7FF - cpu_data_in <= bus_data; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= cpu_vma; - end case; - -- - -- Everything else is RAM - -- - when others => - cpu_data_in <= ram_data_out; - rom_cs <= '0'; - dat_cs <= '0'; - ram_cs <= cpu_vma; - uart_cs <= '0'; - cf_cs <= '0'; - timer_cs <= '0'; - trap_cs <= '0'; - ioport_cs <= '0'; - keyboard_cs <= '0'; - vdu_cs <= '0'; - bus_cs <= '0'; - end case; -end process; - - --- --- B5-SRAM Control --- Processes to read and write memory based on bus signals --- -ram_process: process( cpu_clk, Reset_n, - cpu_addr, cpu_rw, cpu_vma, cpu_data_out, - dat_addr, - ram_cs, ram_wrl, ram_wru, ram_data_out ) -begin - ram_csn <= not( ram_cs and Reset_n ); - -- use ram_wrl *ONLY* for 8-bit SRAM read/write - --ram_wrl <= (not cpu_addr(0)) and (not cpu_rw) and cpu_clk; - ram_wrl <= (not cpu_rw) and cpu_clk; - ram_wrln <= not (ram_wrl); - --ram_wru <= cpu_addr(0) and (not cpu_rw) and cpu_clk; - --ram_wrun <= not (ram_wru); - ram_wrun <= '1'; - --ram_addr(16 downto 11) <= dat_addr(5 downto 0); - --ram_addr(10 downto 0) <= cpu_addr(11 downto 1); - ram_addr(16 downto 12) <= dat_addr(4 downto 0); - ram_addr(11 downto 0) <= cpu_addr(11 downto 0); - - --if ram_wrl = '1' then - ram_data_o <= std_logic_vector(resize(unsigned(cpu_data_out), ram_data_o'length)); - --else - -- ram_data(7 downto 0) <= "ZZZZZZZZ"; - --end if; - - --if ram_wru = '1' then - -- ram_data(15 downto 8) <= cpu_data_out; - --else - -- ram_data(15 downto 8) <= "ZZZZZZZZ"; - -- end if; - - --if cpu_addr(0) = '1' then - -- ram_data_out <= ram_data(15 downto 8); - --else - ram_data_out <= ram_data_i(7 downto 0); - --end if; -end process; - --- --- Compact Flash Control --- -compact_flash: process( cpu_clk, Reset_n, - cpu_addr, cpu_rw, cpu_vma, cpu_data_out, - cf_cs, cf_rd, cf_wr, cf_data_out ) -begin - cf_rst_n <= Reset_n; - cf_cs0_n <= not( cf_cs ) or cpu_addr(3); - cf_cs1_n <= not( cf_cs and cpu_addr(3)); - cf_cs16_n <= '1'; - cf_wr <= cf_cs and (not cpu_rw); - cf_rd <= cf_cs and cpu_rw; - cf_wr_n <= not cf_wr; - cf_rd_n <= not cf_rd; - cf_a <= cpu_addr(2 downto 0); - if cf_wr = '1' then - cf_d(7 downto 0) <= cpu_data_out; - else - cf_d(7 downto 0) <= "ZZZZZZZZ"; - end if; - cf_data_out <= cf_d(7 downto 0); - cf_d(15 downto 8) <= "ZZZZZZZZ"; -end process; - --- --- Interrupts and other bus control signals --- -interrupts : process( Reset_n, uart_irq, - trap_irq, timer_irq, keyboard_irq - ) -begin - cpu_reset <= not Reset_n; -- CPU reset is active high - cpu_irq <= uart_irq or keyboard_irq; - cpu_nmi <= trap_irq; - cpu_firq <= timer_irq; - cpu_halt <= '0'; - cpu_hold <= '0'; -end process; - --- --- CPU bus signals --- -my_bus : process( cpu_clk, cpu_reset, cpu_rw, cpu_addr, cpu_data_out ) -begin - bus_clk <= cpu_clk; - bus_reset <= cpu_reset; - bus_rw <= cpu_rw; - bus_addr <= cpu_addr; - if( cpu_rw = '1' ) then - bus_data <= "ZZZZZZZZ"; - else - bus_data <= cpu_data_out; - end if; -end process; - - -- - -- flash led to indicate code is working - -- -increment: process (SysClk, CountL ) -begin - if(SysClk'event and SysClk = '0') then - countL <= countL + 1; - end if; - LED <= countL(23); - dcd_n <= '0'; -end process; - --- --- Baud Rate Clock Divider --- --- 25MHz / 27 = 926,000 KHz = 57,870Bd * 16 --- 50MHz / 54 = 926,000 KHz = 57,870Bd * 16 --- -my_clock: process( SysClk ) -begin - if(SysClk'event and SysClk = '0') then - if( BaudCount = 53 ) then - baudclk <= '0'; - BaudCount <= "000000"; - else - if( BaudCount = 26 ) then - baudclk <='1'; - else - baudclk <=baudclk; - end if; - BaudCount <= BaudCount + 1; - end if; - end if; -end process; - --- --- Assign VDU VGA colour output --- only 8 colours are handled. --- -my_vga_out: process( vga_red, vga_green, vga_blue ) -begin - red_lo <= vga_red; - red_hi <= vga_red; - green_lo <= vga_green; - green_hi <= vga_green; - blue_lo <= vga_blue; - blue_hi <= vga_blue; -end process; - -end my_computer; --===================== End of architecture =======================-- - Index: trunk/rtl/System09_Terasic_DE1/project_pkg.vhd =================================================================== --- trunk/rtl/System09_Terasic_DE1/project_pkg.vhd (revision 115) +++ trunk/rtl/System09_Terasic_DE1/project_pkg.vhd (nonexistent) @@ -1,39 +0,0 @@ -library ieee; -use ieee.std_logic_1164.all; -use ieee.std_logic_unsigned.all; - -library work; -use work.pace_pkg.all; -use work.video_controller_pkg.all; -use work.target_pkg.all; - -package project_pkg is - - -- - -- PACE constants which *MUST* be defined - -- - - constant PACE_HAS_PLL : boolean := true; - constant PACE_HAS_FLASH : boolean := false; - constant PACE_HAS_SRAM : boolean := true; - constant PACE_HAS_SDRAM : boolean := false; - constant PACE_HAS_SERIAL : boolean := false; - - constant PACE_JAMMA : PACEJamma_t := PACE_JAMMA_NONE; - - constant PACE_VIDEO_CONTROLLER_TYPE : PACEVideoController_t := PACE_VIDEO_NONE; - - -- Reference clock is 50MHz - constant PACE_CLK0_DIVIDE_BY : natural := 1; - constant PACE_CLK0_MULTIPLY_BY : natural := 1; -- 50*1/1 = 50MHz - constant PACE_CLK1_DIVIDE_BY : natural := 1; - constant PACE_CLK1_MULTIPLY_BY : natural := 1; -- 24MHz (not used) - - -- System09-specific constants - - --constant SYSTEM09_CPU_CLK_ENA_DIVIDE_BY : natural := 10; - --constant SYSTEM09_1MHz_CLK0_COUNTS : natural := 30; - - --constant USE_VIDEO_VBLANK_INTERRUPT : boolean := true; - -end; Index: trunk/rtl/System09_Terasic_DE1/system09.qpf =================================================================== --- trunk/rtl/System09_Terasic_DE1/system09.qpf (revision 115) +++ trunk/rtl/System09_Terasic_DE1/system09.qpf (nonexistent) @@ -1,23 +0,0 @@ -# Copyright (C) 1991-2005 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 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. - - - -QUARTUS_VERSION = "5.0" -DATE = "19:21:54 August 25, 2005" - - -# Revisions - -PROJECT_REVISION = "system09" Index: trunk/rtl/Cyclone2/sys09bug_rom_waveforms.html =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom_waveforms.html (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom_waveforms.html (nonexistent) @@ -1,13 +0,0 @@ - - -Sample Waveforms for sys09bug_rom.vhd - - -

Sample behavioral waveforms for design file sys09bug_rom.vhd

-

The following waveforms show the behavior of altsyncram megafunction for the chosen set of parameters in design sys09bug_rom.vhd. For the purpose of this simulation, the contents of the memory at the start of the sample waveforms is assumed to be ( F0, F1, F2, F3, ...). The design sys09bug_rom.vhd has one read port. The read port has 4096 words of 8 bits each. The ram block type of the design is M4K. The output of the read port is registered by clock.

-
-

Fig. 1 : Wave showing read operation.

-

The above waveform shows the behavior of the design under normal read conditions. The read happens at the rising edge of the enabled clock cycle. The output from the RAM is undefined until after the first rising edge of the read clock. The clock enable on the read side input registers are disabled. The clock enable on the output registers are disabled.

-

- - Index: trunk/rtl/Cyclone2/template.vhd =================================================================== --- trunk/rtl/Cyclone2/template.vhd (revision 115) +++ trunk/rtl/Cyclone2/template.vhd (nonexistent) @@ -1,32 +0,0 @@ -LIBRARY ieee; -USE ieee.std_logic_1164.all; - -ENTITY mon_rom IS - PORT ( - cs : IN STD_LOGIC; - addr : IN STD_LOGIC_VECTOR (7 DOWNTO 0); - data_out : OUT STD_LOGIC_VECTOR (14 DOWNTO 0)); -END mon_rom; - -ARCHITECTURE behavior OF mon_rom IS - -COMPONENT asyn_rom_256x15 --- pragma translate_off - GENERIC (LPM_FILE : string); - --- pragma translate_on - PORT ( - Address : IN STD_LOGIC_VECTOR(7 DOWNTO 0); - MemEnab : IN STD_LOGIC; - Q : OUT STD_LOGIC_VECTOR(14 DOWNTO 0) - ); -END COMPONENT; - -BEGIN - - u1: asyn_rom_256x15 --- pragma translate_off - GENERIC MAP (LPM_FILE => "u1.hex") --- pragma translate_on - PORT MAP (Address => addr, MemEnab => memenab, Q =>q); -END behavior; Index: trunk/rtl/Cyclone2/sys09bug_rom.qip =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom.qip (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom.qip (nonexistent) @@ -1,7 +0,0 @@ -set_global_assignment -name IP_TOOL_NAME "ROM: 1-PORT" -set_global_assignment -name IP_TOOL_VERSION "9.0" -set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "sys09bug_rom.vhd"] -set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "sys09bug_rom.bsf"] -set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "sys09bug_rom_inst.vhd"] -set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "sys09bug_rom.inc"] -set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "sys09bug_rom.cmp"] Index: trunk/rtl/Cyclone2/sys09bug_rom.vhd =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom.vhd (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom.vhd (nonexistent) @@ -1,171 +0,0 @@ --- megafunction wizard: %ROM: 1-PORT% --- GENERATION: STANDARD --- VERSION: WM1.0 --- MODULE: altsyncram - --- ============================================================ --- File Name: sys09bug_rom.vhd --- Megafunction Name(s): --- altsyncram --- --- Simulation Library Files(s): --- altera_mf --- ============================================================ --- ************************************************************ --- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! --- --- 9.0 Build 235 06/17/2009 SP 2 SJ Full Version --- ************************************************************ - - ---Copyright (C) 1991-2009 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. - - -LIBRARY ieee; -USE ieee.std_logic_1164.all; - -LIBRARY altera_mf; -USE altera_mf.all; - -ENTITY sys09bug_rom IS - PORT - ( - address : IN STD_LOGIC_VECTOR (11 DOWNTO 0); - clock : IN STD_LOGIC := '1'; - q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) - ); -END sys09bug_rom; - - -ARCHITECTURE SYN OF sys09bug_rom IS - - SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0); - - - - COMPONENT altsyncram - GENERIC ( - clock_enable_input_a : STRING; - clock_enable_output_a : STRING; - init_file : STRING; - intended_device_family : STRING; - lpm_hint : STRING; - lpm_type : STRING; - numwords_a : NATURAL; - operation_mode : STRING; - outdata_aclr_a : STRING; - outdata_reg_a : STRING; - ram_block_type : STRING; - widthad_a : NATURAL; - width_a : NATURAL; - width_byteena_a : NATURAL - ); - PORT ( - clock0 : IN STD_LOGIC ; - address_a : IN STD_LOGIC_VECTOR (11 DOWNTO 0); - q_a : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) - ); - END COMPONENT; - -BEGIN - q <= sub_wire0(7 DOWNTO 0); - - altsyncram_component : altsyncram - GENERIC MAP ( - clock_enable_input_a => "BYPASS", - clock_enable_output_a => "BYPASS", - init_file => "sys09bug_c27.hex", - intended_device_family => "Cyclone II", - lpm_hint => "ENABLE_RUNTIME_MOD=NO", - lpm_type => "altsyncram", - numwords_a => 4096, - operation_mode => "ROM", - outdata_aclr_a => "NONE", - outdata_reg_a => "CLOCK0", - ram_block_type => "M4K", - widthad_a => 12, - width_a => 8, - width_byteena_a => 1 - ) - PORT MAP ( - clock0 => clock, - address_a => address, - q_a => sub_wire0 - ); - - - -END SYN; - --- ============================================================ --- CNX file retrieval info --- ============================================================ --- Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0" --- Retrieval info: PRIVATE: AclrAddr NUMERIC "0" --- Retrieval info: PRIVATE: AclrByte NUMERIC "0" --- Retrieval info: PRIVATE: AclrOutput NUMERIC "0" --- Retrieval info: PRIVATE: BYTE_ENABLE NUMERIC "0" --- Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8" --- Retrieval info: PRIVATE: BlankMemory NUMERIC "0" --- Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "0" --- Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "0" --- Retrieval info: PRIVATE: Clken NUMERIC "0" --- Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0" --- Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_A" --- Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0" --- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone II" --- Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0" --- Retrieval info: PRIVATE: JTAG_ID STRING "NONE" --- Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0" --- Retrieval info: PRIVATE: MIFfilename STRING "sys09bug_c27.hex" --- Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "4096" --- Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "2" --- Retrieval info: PRIVATE: RegAddr NUMERIC "1" --- Retrieval info: PRIVATE: RegOutput NUMERIC "1" --- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" --- Retrieval info: PRIVATE: SingleClock NUMERIC "1" --- Retrieval info: PRIVATE: UseDQRAM NUMERIC "0" --- Retrieval info: PRIVATE: WidthAddr NUMERIC "12" --- Retrieval info: PRIVATE: WidthData NUMERIC "8" --- Retrieval info: PRIVATE: rden NUMERIC "0" --- Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS" --- Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS" --- Retrieval info: CONSTANT: INIT_FILE STRING "sys09bug_c27.hex" --- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone II" --- Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO" --- Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram" --- Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "4096" --- Retrieval info: CONSTANT: OPERATION_MODE STRING "ROM" --- Retrieval info: CONSTANT: OUTDATA_ACLR_A STRING "NONE" --- Retrieval info: CONSTANT: OUTDATA_REG_A STRING "CLOCK0" --- Retrieval info: CONSTANT: RAM_BLOCK_TYPE STRING "M4K" --- Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "12" --- Retrieval info: CONSTANT: WIDTH_A NUMERIC "8" --- Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1" --- Retrieval info: USED_PORT: address 0 0 12 0 INPUT NODEFVAL address[11..0] --- Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC clock --- Retrieval info: USED_PORT: q 0 0 8 0 OUTPUT NODEFVAL q[7..0] --- Retrieval info: CONNECT: @address_a 0 0 12 0 address 0 0 12 0 --- Retrieval info: CONNECT: q 0 0 8 0 @q_a 0 0 8 0 --- Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0 --- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all --- Retrieval info: GEN_FILE: TYPE_NORMAL sys09bug_rom.vhd TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL sys09bug_rom.inc TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL sys09bug_rom.cmp TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL sys09bug_rom.bsf TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL sys09bug_rom_inst.vhd TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL sys09bug_rom_waveforms.html TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL sys09bug_rom_wave*.jpg FALSE --- Retrieval info: LIB_FILE: altera_mf Index: trunk/rtl/Cyclone2/sys09bug_rom_wave0.jpg =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/rtl/Cyclone2/sys09bug_rom_wave0.jpg =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom_wave0.jpg (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom_wave0.jpg (nonexistent)
trunk/rtl/Cyclone2/sys09bug_rom_wave0.jpg Property changes : Deleted: svn:mime-type ## -1 +0,0 ## -application/octet-stream \ No newline at end of property Index: trunk/rtl/Cyclone2/sys09bug_rom.cmp =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom.cmp (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom.cmp (nonexistent) @@ -1,23 +0,0 @@ ---Copyright (C) 1991-2009 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. - - -component sys09bug_rom - PORT - ( - address : IN STD_LOGIC_VECTOR (11 DOWNTO 0); - clock : IN STD_LOGIC := '1'; - q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) - ); -end component; Index: trunk/rtl/Cyclone2/sys09bug_rom.inc =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom.inc (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom.inc (nonexistent) @@ -1,24 +0,0 @@ ---Copyright (C) 1991-2009 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. - - -FUNCTION sys09bug_rom -( - address[11..0], - clock -) - -RETURNS ( - q[7..0] -); Index: trunk/rtl/Cyclone2/sys09bug_rom.bsf =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom.bsf (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom.bsf (nonexistent) @@ -1,76 +0,0 @@ -/* -WARNING: Do NOT edit the input and output ports in this file in a text -editor if you plan to continue editing the block that represents it in -the Block Editor! File corruption is VERY likely to occur. -*/ -/* -Copyright (C) 1991-2009 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. -*/ -(header "symbol" (version "1.1")) -(symbol - (rect 0 0 216 136) - (text "sys09bug_rom" (rect 66 1 166 17)(font "Arial" (font_size 10))) - (text "inst" (rect 8 120 25 132)(font "Arial" )) - (port - (pt 0 32) - (input) - (text "address[11..0]" (rect 0 0 82 14)(font "Arial" (font_size 8))) - (text "address[11..0]" (rect 4 19 69 32)(font "Arial" (font_size 8))) - (line (pt 0 32)(pt 88 32)(line_width 3)) - ) - (port - (pt 0 112) - (input) - (text "clock" (rect 0 0 29 14)(font "Arial" (font_size 8))) - (text "clock" (rect 4 99 27 112)(font "Arial" (font_size 8))) - (line (pt 0 112)(pt 144 112)(line_width 1)) - ) - (port - (pt 216 32) - (output) - (text "q[7..0]" (rect 0 0 35 14)(font "Arial" (font_size 8))) - (text "q[7..0]" (rect 183 19 213 32)(font "Arial" (font_size 8))) - (line (pt 216 32)(pt 160 32)(line_width 3)) - ) - (drawing - (text "8 bits" (rect 108 48 120 71)(font "Arial" )(vertical)) - (text "4096 words" (rect 121 36 133 83)(font "Arial" )(vertical)) - (text "Block type: M4K" (rect 41 116 110 128)(font "Arial" )) - (line (pt 104 24)(pt 136 24)(line_width 1)) - (line (pt 136 24)(pt 136 96)(line_width 1)) - (line (pt 136 96)(pt 104 96)(line_width 1)) - (line (pt 104 96)(pt 104 24)(line_width 1)) - (line (pt 118 58)(pt 123 63)(line_width 1)) - (line (pt 118 62)(pt 123 57)(line_width 1)) - (line (pt 152 27)(pt 160 27)(line_width 1)) - (line (pt 160 27)(pt 160 39)(line_width 1)) - (line (pt 160 39)(pt 152 39)(line_width 1)) - (line (pt 152 39)(pt 152 27)(line_width 1)) - (line (pt 152 34)(pt 154 36)(line_width 1)) - (line (pt 154 36)(pt 152 38)(line_width 1)) - (line (pt 144 36)(pt 152 36)(line_width 1)) - (line (pt 136 32)(pt 152 32)(line_width 3)) - (line (pt 88 27)(pt 96 27)(line_width 1)) - (line (pt 96 27)(pt 96 39)(line_width 1)) - (line (pt 96 39)(pt 88 39)(line_width 1)) - (line (pt 88 39)(pt 88 27)(line_width 1)) - (line (pt 88 34)(pt 90 36)(line_width 1)) - (line (pt 90 36)(pt 88 38)(line_width 1)) - (line (pt 80 36)(pt 88 36)(line_width 1)) - (line (pt 96 32)(pt 104 32)(line_width 3)) - (line (pt 80 112)(pt 80 36)(line_width 1)) - (line (pt 144 112)(pt 144 36)(line_width 1)) - ) -) Index: trunk/rtl/Cyclone2/sys09bug_rom_inst.vhd =================================================================== --- trunk/rtl/Cyclone2/sys09bug_rom_inst.vhd (revision 115) +++ trunk/rtl/Cyclone2/sys09bug_rom_inst.vhd (nonexistent) @@ -1,5 +0,0 @@ -sys09bug_rom_inst : sys09bug_rom PORT MAP ( - address => address_sig, - clock => clock_sig, - q => q_sig - ); Index: trunk/rtl/Cyclone2/pll.qip =================================================================== --- trunk/rtl/Cyclone2/pll.qip (nonexistent) +++ trunk/rtl/Cyclone2/pll.qip (revision 116) @@ -0,0 +1,8 @@ +set_global_assignment -name IP_TOOL_NAME "ALTPLL" +set_global_assignment -name IP_TOOL_VERSION "9.1" +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "pll.vhd"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll.bsf"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll_inst.vhd"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll.inc"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll.cmp"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll.ppf"] Index: trunk/rtl/Cyclone2/kbug_rom.mif =================================================================== --- trunk/rtl/Cyclone2/kbug_rom.mif (nonexistent) +++ trunk/rtl/Cyclone2/kbug_rom.mif (revision 116) @@ -0,0 +1,2054 @@ +WIDTH=8; +DEPTH=2048; +ADDRESS_RADIX=UNS; +DATA_RADIX=HEX; +CONTENT BEGIN + 0 : F8; + 1 : 38; + 2 : F8; + 3 : 7C; + 4 : FC; + 5 : 80; + 6 : FC; + 7 : A9; + 8 : FC; + 9 : 65; + 10 : FC; + 11 : AB; + 12 : FC; + 13 : 5E; + 14 : FC; + 15 : 53; + 16 : FC; + 17 : 4F; + 18 : FA; + 19 : 18; + 20 : FA; + 21 : 18; + 22 : FA; + 23 : 18; + 24 : FA; + 25 : 18; + 26 : FA; + 27 : 18; + 28 : FD; + 29 : 1B; + 30 : FC; + 31 : FB; + 32 : FD; + 33 : 04; + 34 : FD; + 35 : 3A; + 36 : FC; + 37 : BF; + 38 : FC; + 39 : D2; + 40 : FC; + 41 : DC; + 42 : FC; + 43 : EB; + 44 : FC; + 45 : FA; + 46 : FC; + 47 : FB; + 48 : FD; + 49 : 04; + 50 : FD; + 51 : 0C; + 52 : 10; + 53 : CE; + 54 : F0; + 55 : C0; + 56 : 8E; + 57 : FE; + 58 : B9; + 59 : 10; + 60 : 8E; + 61 : F0; + 62 : C0; + 63 : C6; + 64 : 10; + 65 : A6; + 66 : 80; + 67 : A7; + 68 : A0; + 69 : 5A; + 70 : 26; + 71 : F9; + 72 : 8E; + 73 : E0; + 74 : 00; + 75 : BF; + 76 : F0; + 77 : D0; + 78 : 17; + 79 : 01; + 80 : 8E; + 81 : C6; + 82 : 0C; + 83 : 6F; + 84 : E2; + 85 : 5A; + 86 : 26; + 87 : FB; + 88 : 30; + 89 : 8C; + 90 : DD; + 91 : AF; + 92 : 6A; + 93 : 86; + 94 : D0; + 95 : A7; + 96 : E4; + 97 : 1F; + 98 : 43; + 99 : 86; + 100 : 03; + 101 : B7; + 102 : F0; + 103 : D7; + 104 : 86; + 105 : 0A; + 106 : B7; + 107 : F0; + 108 : D8; + 109 : 17; + 110 : 04; + 111 : 4F; + 112 : 17; + 113 : 04; + 114 : 87; + 115 : 17; + 116 : 04; + 117 : A5; + 118 : 8E; + 119 : FE; + 120 : C9; + 121 : 17; + 122 : 03; + 123 : E2; + 124 : 8E; + 125 : FE; + 126 : E5; + 127 : 17; + 128 : 03; + 129 : CD; + 130 : 17; + 131 : 03; + 132 : FB; + 133 : 84; + 134 : 7F; + 135 : 81; + 136 : 0D; + 137 : 27; + 138 : F1; + 139 : 1F; + 140 : 89; + 141 : 81; + 142 : 20; + 143 : 2C; + 144 : 09; + 145 : 86; + 146 : 5E; + 147 : 17; + 148 : 04; + 149 : 15; + 150 : 1F; + 151 : 98; + 152 : 8B; + 153 : 40; + 154 : 17; + 155 : 04; + 156 : 0E; + 157 : 17; + 158 : 02; + 159 : A3; + 160 : 8E; + 161 : FE; + 162 : 7A; + 163 : E1; + 164 : 80; + 165 : 27; + 166 : 0F; + 167 : 30; + 168 : 02; + 169 : 8C; + 170 : FE; + 171 : B9; + 172 : 26; + 173 : F5; + 174 : 8E; + 175 : FE; + 176 : E7; + 177 : 17; + 178 : 03; + 179 : AA; + 180 : 20; + 181 : C6; + 182 : AD; + 183 : 94; + 184 : 20; + 185 : C2; + 186 : 17; + 187 : 02; + 188 : 45; + 189 : 29; + 190 : 2D; + 191 : 1F; + 192 : 12; + 193 : 8E; + 194 : FE; + 195 : ED; + 196 : 17; + 197 : 03; + 198 : 88; + 199 : 1F; + 200 : 21; + 201 : 17; + 202 : 03; + 203 : 65; + 204 : 17; + 205 : 02; + 206 : 74; + 207 : A6; + 208 : A4; + 209 : 17; + 210 : 03; + 211 : 65; + 212 : 17; + 213 : 02; + 214 : 6C; + 215 : 17; + 216 : 02; + 217 : 38; + 218 : 28; + 219 : 11; + 220 : 81; + 221 : 08; + 222 : 27; + 223 : E1; + 224 : 81; + 225 : 18; + 226 : 27; + 227 : DD; + 228 : 81; + 229 : 5E; + 230 : 27; + 231 : 17; + 232 : 81; + 233 : 0D; + 234 : 26; + 235 : 0F; + 236 : 39; + 237 : A7; + 238 : A4; + 239 : A1; + 240 : A4; + 241 : 27; + 242 : 08; + 243 : 17; + 244 : 02; + 245 : 4D; + 246 : 86; + 247 : 3F; + 248 : 17; + 249 : 03; + 250 : B0; + 251 : 31; + 252 : 21; + 253 : 20; + 254 : C2; + 255 : 31; + 256 : 3F; + 257 : 20; + 258 : BE; + 259 : 17; + 260 : 02; + 261 : C0; + 262 : 1F; + 263 : 32; + 264 : 8E; + 265 : F0; + 266 : C0; + 267 : 30; + 268 : 1F; + 269 : 20; + 270 : 05; + 271 : 17; + 272 : 01; + 273 : E6; + 274 : 29; + 275 : 06; + 276 : 34; + 277 : 20; + 278 : AC; + 279 : E1; + 280 : 24; + 281 : 01; + 282 : 39; + 283 : 1F; + 284 : 10; + 285 : C3; + 286 : 00; + 287 : 10; + 288 : C4; + 289 : F0; + 290 : 34; + 291 : 06; + 292 : 1F; + 293 : 20; + 294 : C4; + 295 : F0; + 296 : 1F; + 297 : 01; + 298 : AC; + 299 : E4; + 300 : 27; + 301 : 05; + 302 : 17; + 303 : 03; + 304 : 34; + 305 : 27; + 306 : 03; + 307 : 32; + 308 : 62; + 309 : 39; + 310 : 34; + 311 : 10; + 312 : 8E; + 313 : FE; + 314 : ED; + 315 : 17; + 316 : 03; + 317 : 11; + 318 : AE; + 319 : E4; + 320 : 17; + 321 : 02; + 322 : EE; + 323 : 17; + 324 : 01; + 325 : FB; + 326 : C6; + 327 : 10; + 328 : A6; + 329 : 80; + 330 : 17; + 331 : 02; + 332 : EC; + 333 : 17; + 334 : 01; + 335 : F3; + 336 : 5A; + 337 : 26; + 338 : F5; + 339 : 17; + 340 : 01; + 341 : EB; + 342 : AE; + 343 : E1; + 344 : C6; + 345 : 10; + 346 : A6; + 347 : 80; + 348 : 81; + 349 : 20; + 350 : 25; + 351 : 04; + 352 : 81; + 353 : 7E; + 354 : 23; + 355 : 02; + 356 : 86; + 357 : 2E; + 358 : 17; + 359 : 03; + 360 : 42; + 361 : 5A; + 362 : 26; + 363 : EE; + 364 : 20; + 365 : BC; + 366 : 17; + 367 : 01; + 368 : FD; + 369 : 28; + 370 : 01; + 371 : 39; + 372 : 1F; + 373 : 34; + 374 : 3B; + 375 : 5F; + 376 : 17; + 377 : 03; + 378 : 05; + 379 : 81; + 380 : 53; + 381 : 26; + 382 : 07; + 383 : 17; + 384 : 03; + 385 : 3D; + 386 : D8; + 387 : 02; + 388 : 20; + 389 : F2; + 390 : 81; + 391 : 56; + 392 : 26; + 393 : 07; + 394 : 17; + 395 : 03; + 396 : 8E; + 397 : C8; + 398 : 01; + 399 : 20; + 400 : E7; + 401 : F7; + 402 : F0; + 403 : D7; + 404 : 39; + 405 : 5F; + 406 : 17; + 407 : 02; + 408 : E7; + 409 : 81; + 410 : 53; + 411 : 26; + 412 : 07; + 413 : 17; + 414 : 03; + 415 : 1F; + 416 : D8; + 417 : 02; + 418 : 20; + 419 : F2; + 420 : 81; + 421 : 4B; + 422 : 26; + 423 : 07; + 424 : 17; + 425 : 03; + 426 : 4F; + 427 : C8; + 428 : 08; + 429 : 20; + 430 : E7; + 431 : F7; + 432 : F0; + 433 : D8; + 434 : 39; + 435 : 17; + 436 : 01; + 437 : 4C; + 438 : 29; + 439 : 1E; + 440 : 8C; + 441 : F0; + 442 : C0; + 443 : 24; + 444 : 1A; + 445 : 34; + 446 : 10; + 447 : 8E; + 448 : FF; + 449 : FF; + 450 : 8D; + 451 : 55; + 452 : 35; + 453 : 10; + 454 : 27; + 455 : 0F; + 456 : A6; + 457 : 84; + 458 : 81; + 459 : 3F; + 460 : 27; + 461 : 09; + 462 : A7; + 463 : A0; + 464 : AF; + 465 : A4; + 466 : 86; + 467 : 3F; + 468 : A7; + 469 : 84; + 470 : 39; + 471 : 17; + 472 : 01; + 473 : 69; + 474 : 86; + 475 : 3F; + 476 : 16; + 477 : 02; + 478 : CC; + 479 : 10; + 480 : 8E; + 481 : F0; + 482 : D9; + 483 : C6; + 484 : 08; + 485 : 8D; + 486 : 18; + 487 : 5A; + 488 : 26; + 489 : FB; + 490 : 39; + 491 : 1F; + 492 : 43; + 493 : AE; + 494 : 4A; + 495 : 30; + 496 : 1F; + 497 : 8D; + 498 : 26; + 499 : 27; + 500 : 04; + 501 : AF; + 502 : 4A; + 503 : 8D; + 504 : 06; + 505 : 17; + 506 : 01; + 507 : AC; + 508 : 16; + 509 : FE; + 510 : 7D; + 511 : AE; + 512 : 21; + 513 : 8C; + 514 : F0; + 515 : C0; + 516 : 24; + 517 : 0A; + 518 : A6; + 519 : 84; + 520 : 81; + 521 : 3F; + 522 : 26; + 523 : 04; + 524 : A6; + 525 : A4; + 526 : A7; + 527 : 84; + 528 : 86; + 529 : FF; + 530 : A7; + 531 : A0; + 532 : A7; + 533 : A0; + 534 : A7; + 535 : A0; + 536 : 39; + 537 : 10; + 538 : 8E; + 539 : F0; + 540 : D9; + 541 : C6; + 542 : 08; + 543 : A6; + 544 : A0; + 545 : AC; + 546 : A1; + 547 : 27; + 548 : 04; + 549 : 5A; + 550 : 26; + 551 : F7; + 552 : 39; + 553 : 31; + 554 : 3D; + 555 : 39; + 556 : 86; + 557 : 11; + 558 : 8D; + 559 : 52; + 560 : 7F; + 561 : F0; + 562 : D2; + 563 : 17; + 564 : 02; + 565 : 6E; + 566 : 81; + 567 : 53; + 568 : 26; + 569 : F9; + 570 : 17; + 571 : 02; + 572 : 67; + 573 : 81; + 574 : 39; + 575 : 27; + 576 : 3C; + 577 : 81; + 578 : 31; + 579 : 26; + 580 : F1; + 581 : 17; + 582 : 00; + 583 : CA; + 584 : 34; + 585 : 02; + 586 : 29; + 587 : 26; + 588 : 17; + 589 : 00; + 590 : B3; + 591 : 29; + 592 : 21; + 593 : 34; + 594 : 10; + 595 : E6; + 596 : E0; + 597 : EB; + 598 : E0; + 599 : EB; + 600 : E4; + 601 : 6A; + 602 : E4; + 603 : 6A; + 604 : E4; + 605 : 34; + 606 : 04; + 607 : 17; + 608 : 00; + 609 : B0; + 610 : 35; + 611 : 04; + 612 : 29; + 613 : 0C; + 614 : 34; + 615 : 02; + 616 : EB; + 617 : E0; + 618 : 6A; + 619 : E4; + 620 : 27; + 621 : 05; + 622 : A7; + 623 : 80; + 624 : 20; + 625 : EB; + 626 : 5F; + 627 : 35; + 628 : 02; + 629 : C1; + 630 : FF; + 631 : 27; + 632 : B3; + 633 : 86; + 634 : 3F; + 635 : 8D; + 636 : 05; + 637 : 73; + 638 : F0; + 639 : D2; + 640 : 86; + 641 : 13; + 642 : 16; + 643 : 02; + 644 : 26; + 645 : 6F; + 646 : E2; + 647 : 8D; + 648 : 6F; + 649 : 34; + 650 : 30; + 651 : 29; + 652 : 4A; + 653 : AC; + 654 : 62; + 655 : 25; + 656 : 46; + 657 : 30; + 658 : 01; + 659 : AF; + 660 : E4; + 661 : 86; + 662 : 12; + 663 : 17; + 664 : 02; + 665 : 11; + 666 : EC; + 667 : E4; + 668 : A3; + 669 : 62; + 670 : 27; + 671 : 06; + 672 : 10; + 673 : 83; + 674 : 00; + 675 : 20; + 676 : 23; + 677 : 02; + 678 : C6; + 679 : 20; + 680 : E7; + 681 : 64; + 682 : 8E; + 683 : FF; + 684 : 2E; + 685 : 17; + 686 : 01; + 687 : 9F; + 688 : CB; + 689 : 03; + 690 : 1F; + 691 : 98; + 692 : 17; + 693 : 01; + 694 : 82; + 695 : AE; + 696 : 62; + 697 : 17; + 698 : 01; + 699 : 75; + 700 : EB; + 701 : 62; + 702 : EB; + 703 : 63; + 704 : EB; + 705 : 84; + 706 : A6; + 707 : 80; + 708 : 17; + 709 : 01; + 710 : 72; + 711 : 6A; + 712 : 64; + 713 : 26; + 714 : F5; + 715 : 53; + 716 : 1F; + 717 : 98; + 718 : 17; + 719 : 01; + 720 : 68; + 721 : AF; + 722 : 62; + 723 : AC; + 724 : E4; + 725 : 26; + 726 : C3; + 727 : 86; + 728 : 14; + 729 : 8D; + 730 : 6A; + 731 : 32; + 732 : 65; + 733 : 39; + 734 : 8D; + 735 : 18; + 736 : 29; + 737 : 15; + 738 : 34; + 739 : 10; + 740 : 86; + 741 : 3E; + 742 : 8D; + 743 : 5D; + 744 : 8D; + 745 : 18; + 746 : 29; + 747 : 09; + 748 : A6; + 749 : A0; + 750 : A7; + 751 : 80; + 752 : 10; + 753 : AC; + 754 : E4; + 755 : 26; + 756 : F7; + 757 : 35; + 758 : 10; + 759 : 39; + 760 : 8D; + 761 : 08; + 762 : 29; + 763 : 42; + 764 : 1F; + 765 : 12; + 766 : 86; + 767 : 2D; + 768 : 8D; + 769 : 43; + 770 : 8D; + 771 : 0E; + 772 : 29; + 773 : 38; + 774 : 1F; + 775 : 01; + 776 : 8D; + 777 : 08; + 778 : 29; + 779 : 32; + 780 : 34; + 781 : 10; + 782 : A7; + 783 : 61; + 784 : 35; + 785 : 90; + 786 : 8D; + 787 : 11; + 788 : 29; + 789 : 28; + 790 : 48; + 791 : 48; + 792 : 48; + 793 : 48; + 794 : 1F; + 795 : 89; + 796 : 8D; + 797 : 07; + 798 : 29; + 799 : 1E; + 800 : 34; + 801 : 04; + 802 : AB; + 803 : E0; + 804 : 39; + 805 : 17; + 806 : 01; + 807 : 7C; + 808 : 81; + 809 : 30; + 810 : 25; + 811 : 12; + 812 : 81; + 813 : 39; + 814 : 22; + 815 : 03; + 816 : 80; + 817 : 30; + 818 : 39; + 819 : 81; + 820 : 41; + 821 : 25; + 822 : 07; + 823 : 81; + 824 : 46; + 825 : 22; + 826 : 03; + 827 : 80; + 828 : 37; + 829 : 39; + 830 : 1A; + 831 : 02; + 832 : 39; + 833 : 8D; + 834 : 00; + 835 : 86; + 836 : 20; + 837 : 16; + 838 : 01; + 839 : 63; + 840 : 17; + 841 : 00; + 842 : 85; + 843 : 8D; + 844 : F6; + 845 : 8D; + 846 : B3; + 847 : 29; + 848 : 02; + 849 : AF; + 850 : 44; + 851 : 39; + 852 : 17; + 853 : 00; + 854 : 83; + 855 : 8D; + 856 : EA; + 857 : 8D; + 858 : B7; + 859 : 29; + 860 : 02; + 861 : A7; + 862 : 41; + 863 : 39; + 864 : 17; + 865 : 00; + 866 : 80; + 867 : 8D; + 868 : DE; + 869 : 8D; + 870 : AB; + 871 : 29; + 872 : 02; + 873 : A7; + 874 : 43; + 875 : 39; + 876 : 8D; + 877 : 7E; + 878 : 8D; + 879 : D3; + 880 : 8D; + 881 : 90; + 882 : 29; + 883 : 02; + 884 : AF; + 885 : 4A; + 886 : 39; + 887 : 8D; + 888 : 7C; + 889 : 8D; + 890 : C8; + 891 : 8D; + 892 : 85; + 893 : 29; + 894 : 02; + 895 : AF; + 896 : 48; + 897 : 39; + 898 : 8D; + 899 : 7A; + 900 : 8D; + 901 : BD; + 902 : 17; + 903 : FF; + 904 : 79; + 905 : 29; + 906 : 02; + 907 : AF; + 908 : 46; + 909 : 39; + 910 : 8D; + 911 : 77; + 912 : 8D; + 913 : B1; + 914 : 17; + 915 : FF; + 916 : 7D; + 917 : 29; + 918 : 02; + 919 : A7; + 920 : 42; + 921 : 39; + 922 : 8D; + 923 : 74; + 924 : 8D; + 925 : A5; + 926 : 17; + 927 : FF; + 928 : 71; + 929 : 29; + 930 : 04; + 931 : 8A; + 932 : 80; + 933 : A7; + 934 : C4; + 935 : 39; + 936 : 8E; + 937 : FE; + 938 : ED; + 939 : 17; + 940 : 00; + 941 : A1; + 942 : 8D; + 943 : 16; + 944 : 8D; + 945 : 1E; + 946 : 8D; + 947 : 26; + 948 : 8D; + 949 : 2D; + 950 : 8D; + 951 : 34; + 952 : 8E; + 953 : FE; + 954 : ED; + 955 : 17; + 956 : 00; + 957 : 91; + 958 : 8D; + 959 : 35; + 960 : 8D; + 961 : 3C; + 962 : 8D; + 963 : 43; + 964 : 20; + 965 : 4A; + 966 : 8E; + 967 : FE; + 968 : F1; + 969 : 17; + 970 : 00; + 971 : 92; + 972 : 1F; + 973 : 31; + 974 : 20; + 975 : 61; + 976 : 8E; + 977 : FF; + 978 : 09; + 979 : 17; + 980 : 00; + 981 : 88; + 982 : AE; + 983 : 44; + 984 : 20; + 985 : 57; + 986 : 8E; + 987 : FF; + 988 : 15; + 989 : 8D; + 990 : 7F; + 991 : A6; + 992 : 41; + 993 : 20; + 994 : 56; + 995 : 8E; + 996 : FF; + 997 : 0F; + 998 : 8D; + 999 : 76; + 1000 : A6; + 1001 : 43; + 1002 : 20; + 1003 : 4D; + 1004 : 8E; + 1005 : FE; + 1006 : F7; + 1007 : 8D; + 1008 : 6D; + 1009 : AE; + 1010 : 4A; + 1011 : 20; + 1012 : 3C; + 1013 : 8E; + 1014 : FE; + 1015 : FD; + 1016 : 8D; + 1017 : 64; + 1018 : AE; + 1019 : 48; + 1020 : 20; + 1021 : 33; + 1022 : 8E; + 1023 : FF; + 1024 : 03; + 1025 : 8D; + 1026 : 5B; + 1027 : AE; + 1028 : 46; + 1029 : 20; + 1030 : 2A; + 1031 : 8E; + 1032 : FF; + 1033 : 1A; + 1034 : 8D; + 1035 : 52; + 1036 : A6; + 1037 : 42; + 1038 : 20; + 1039 : 29; + 1040 : 8E; + 1041 : FF; + 1042 : 1F; + 1043 : 8D; + 1044 : 49; + 1045 : A6; + 1046 : C4; + 1047 : 8E; + 1048 : FF; + 1049 : 26; + 1050 : 34; + 1051 : 02; + 1052 : C6; + 1053 : 08; + 1054 : A6; + 1055 : 80; + 1056 : 68; + 1057 : E4; + 1058 : 25; + 1059 : 02; + 1060 : 86; + 1061 : 2D; + 1062 : 17; + 1063 : 00; + 1064 : 82; + 1065 : 17; + 1066 : FF; + 1067 : 17; + 1068 : 5A; + 1069 : 26; + 1070 : EF; + 1071 : 35; + 1072 : 82; + 1073 : 34; + 1074 : 10; + 1075 : 35; + 1076 : 02; + 1077 : 8D; + 1078 : 02; + 1079 : 35; + 1080 : 02; + 1081 : 34; + 1082 : 02; + 1083 : 44; + 1084 : 44; + 1085 : 44; + 1086 : 44; + 1087 : 8D; + 1088 : 04; + 1089 : 35; + 1090 : 02; + 1091 : 84; + 1092 : 0F; + 1093 : 8B; + 1094 : 30; + 1095 : 81; + 1096 : 39; + 1097 : 2F; + 1098 : 02; + 1099 : 8B; + 1100 : 07; + 1101 : 20; + 1102 : 5C; + 1103 : 8D; + 1104 : 02; + 1105 : 20; + 1106 : 0B; + 1107 : 34; + 1108 : 10; + 1109 : 8E; + 1110 : FE; + 1111 : DF; + 1112 : 8D; + 1113 : 04; + 1114 : 35; + 1115 : 90; + 1116 : 8D; + 1117 : 4D; + 1118 : A6; + 1119 : 80; + 1120 : 81; + 1121 : 04; + 1122 : 26; + 1123 : F8; + 1124 : 39; + 1125 : 34; + 1126 : 06; + 1127 : F6; + 1128 : F0; + 1129 : D8; + 1130 : 4F; + 1131 : C5; + 1132 : 02; + 1133 : 27; + 1134 : 04; + 1135 : 8D; + 1136 : 61; + 1137 : 26; + 1138 : 0B; + 1139 : 4F; + 1140 : C5; + 1141 : 08; + 1142 : 27; + 1143 : 05; + 1144 : 17; + 1145 : 00; + 1146 : 80; + 1147 : 26; + 1148 : 01; + 1149 : 4F; + 1150 : 35; + 1151 : 86; + 1152 : 34; + 1153 : 04; + 1154 : F6; + 1155 : F0; + 1156 : D8; + 1157 : C5; + 1158 : 02; + 1159 : 27; + 1160 : 09; + 1161 : 8D; + 1162 : 47; + 1163 : 27; + 1164 : 05; + 1165 : 17; + 1166 : 00; + 1167 : 4C; + 1168 : 20; + 1169 : 10; + 1170 : C5; + 1171 : 08; + 1172 : 27; + 1173 : 0A; + 1174 : 17; + 1175 : 00; + 1176 : 62; + 1177 : 27; + 1178 : 05; + 1179 : 17; + 1180 : 00; + 1181 : 66; + 1182 : 20; + 1183 : 02; + 1184 : 20; + 1185 : E0; + 1186 : 35; + 1187 : 84; + 1188 : 7D; + 1189 : F0; + 1190 : D2; + 1191 : 27; + 1192 : D7; + 1193 : 8D; + 1194 : D5; + 1195 : 34; + 1196 : 04; + 1197 : F6; + 1198 : F0; + 1199 : D7; + 1200 : C5; + 1201 : 02; + 1202 : 27; + 1203 : 02; + 1204 : 8D; + 1205 : 35; + 1206 : C5; + 1207 : 01; + 1208 : 27; + 1209 : 03; + 1210 : 17; + 1211 : 00; + 1212 : 7D; + 1213 : 35; + 1214 : 84; + 1215 : BE; + 1216 : F0; + 1217 : D0; + 1218 : 86; + 1219 : 03; + 1220 : A7; + 1221 : 84; + 1222 : 86; + 1223 : 11; + 1224 : A7; + 1225 : 84; + 1226 : 6D; + 1227 : 01; + 1228 : 86; + 1229 : FF; + 1230 : B7; + 1231 : F0; + 1232 : D2; + 1233 : 39; + 1234 : 34; + 1235 : 02; + 1236 : A6; + 1237 : 9F; + 1238 : F0; + 1239 : D0; + 1240 : 85; + 1241 : 01; + 1242 : 35; + 1243 : 82; + 1244 : 34; + 1245 : 10; + 1246 : BE; + 1247 : F0; + 1248 : D0; + 1249 : A6; + 1250 : 84; + 1251 : 85; + 1252 : 01; + 1253 : 27; + 1254 : FA; + 1255 : A6; + 1256 : 01; + 1257 : 35; + 1258 : 90; + 1259 : 34; + 1260 : 14; + 1261 : BE; + 1262 : F0; + 1263 : D0; + 1264 : E6; + 1265 : 84; + 1266 : C5; + 1267 : 02; + 1268 : 27; + 1269 : FA; + 1270 : A7; + 1271 : 01; + 1272 : 35; + 1273 : 94; + 1274 : 39; + 1275 : 34; + 1276 : 02; + 1277 : B6; + 1278 : E0; + 1279 : 10; + 1280 : 85; + 1281 : 01; + 1282 : 35; + 1283 : 82; + 1284 : 8D; + 1285 : F5; + 1286 : 27; + 1287 : FC; + 1288 : B6; + 1289 : E0; + 1290 : 11; + 1291 : 39; + 1292 : 34; + 1293 : 14; + 1294 : 8E; + 1295 : E0; + 1296 : 10; + 1297 : E6; + 1298 : 84; + 1299 : C5; + 1300 : 02; + 1301 : 27; + 1302 : FA; + 1303 : A7; + 1304 : 01; + 1305 : 35; + 1306 : 94; + 1307 : 8E; + 1308 : E0; + 1309 : 20; + 1310 : CC; + 1311 : 00; + 1312 : 00; + 1313 : FD; + 1314 : F0; + 1315 : D3; + 1316 : A7; + 1317 : 02; + 1318 : E7; + 1319 : 03; + 1320 : E7; + 1321 : 04; + 1322 : FD; + 1323 : F0; + 1324 : D5; + 1325 : C6; + 1326 : 02; + 1327 : E7; + 1328 : 01; + 1329 : 7F; + 1330 : F0; + 1331 : D6; + 1332 : 86; + 1333 : 1B; + 1334 : 8D; + 1335 : 02; + 1336 : 86; + 1337 : 59; + 1338 : 34; + 1339 : 16; + 1340 : 8E; + 1341 : E0; + 1342 : 20; + 1343 : 7D; + 1344 : F0; + 1345 : D6; + 1346 : 27; + 1347 : 04; + 1348 : 8D; + 1349 : 74; + 1350 : 20; + 1351 : 0D; + 1352 : 81; + 1353 : 20; + 1354 : 24; + 1355 : 04; + 1356 : 8D; + 1357 : 09; + 1358 : 20; + 1359 : 05; + 1360 : A7; + 1361 : 84; + 1362 : 17; + 1363 : 00; + 1364 : C5; + 1365 : 35; + 1366 : 96; + 1367 : 81; + 1368 : 08; + 1369 : 10; + 1370 : 27; + 1371 : 00; + 1372 : 41; + 1373 : 81; + 1374 : 1B; + 1375 : 10; + 1376 : 27; + 1377 : 00; + 1378 : 6C; + 1379 : 81; + 1380 : 1A; + 1381 : 10; + 1382 : 27; + 1383 : 00; + 1384 : 8E; + 1385 : 81; + 1386 : 16; + 1387 : 10; + 1388 : 27; + 1389 : 00; + 1390 : 45; + 1391 : 81; + 1392 : 0D; + 1393 : 10; + 1394 : 27; + 1395 : 00; + 1396 : 99; + 1397 : 81; + 1398 : 0C; + 1399 : 10; + 1400 : 27; + 1401 : 00; + 1402 : 2C; + 1403 : 81; + 1404 : 0B; + 1405 : 10; + 1406 : 27; + 1407 : 00; + 1408 : 11; + 1409 : 81; + 1410 : 0A; + 1411 : 26; + 1412 : 51; + 1413 : FC; + 1414 : F0; + 1415 : D3; + 1416 : 5C; + 1417 : C1; + 1418 : 19; + 1419 : 10; + 1420 : 26; + 1421 : 00; + 1422 : 83; + 1423 : 16; + 1424 : 00; + 1425 : 99; + 1426 : FC; + 1427 : F0; + 1428 : D3; + 1429 : 5D; + 1430 : 10; + 1431 : 27; + 1432 : 00; + 1433 : 3C; + 1434 : 5A; + 1435 : 16; + 1436 : 00; + 1437 : 74; + 1438 : B6; + 1439 : F0; + 1440 : D3; + 1441 : 27; + 1442 : 33; + 1443 : 4A; + 1444 : 16; + 1445 : 00; + 1446 : 68; + 1447 : B6; + 1448 : F0; + 1449 : D3; + 1450 : 4C; + 1451 : 81; + 1452 : 50; + 1453 : 10; + 1454 : 27; + 1455 : 00; + 1456 : 25; + 1457 : 16; + 1458 : 00; + 1459 : 5B; + 1460 : CC; + 1461 : 00; + 1462 : 00; + 1463 : 16; + 1464 : 00; + 1465 : 58; + 1466 : F6; + 1467 : F0; + 1468 : D6; + 1469 : C1; + 1470 : 3D; + 1471 : 27; + 1472 : 16; + 1473 : 81; + 1474 : 59; + 1475 : 10; + 1476 : 27; + 1477 : 00; + 1478 : 6E; + 1479 : 81; + 1480 : 54; + 1481 : 27; + 1482 : 31; + 1483 : 81; + 1484 : 3D; + 1485 : 26; + 1486 : 04; + 1487 : B7; + 1488 : F0; + 1489 : D6; + 1490 : 39; + 1491 : 7F; + 1492 : F0; + 1493 : D6; + 1494 : 39; + 1495 : 7D; + 1496 : F0; + 1497 : D5; + 1498 : 26; + 1499 : 04; + 1500 : B7; + 1501 : F0; + 1502 : D5; + 1503 : 39; + 1504 : 7F; + 1505 : F0; + 1506 : D6; + 1507 : 80; + 1508 : 20; + 1509 : 81; + 1510 : 4F; + 1511 : 22; + 1512 : ED; + 1513 : F6; + 1514 : F0; + 1515 : D5; + 1516 : 7F; + 1517 : F0; + 1518 : D5; + 1519 : C0; + 1520 : 20; + 1521 : C1; + 1522 : 18; + 1523 : 22; + 1524 : E1; + 1525 : 20; + 1526 : 1B; + 1527 : CC; + 1528 : 00; + 1529 : 00; + 1530 : 8D; + 1531 : 16; + 1532 : B6; + 1533 : F0; + 1534 : D3; + 1535 : C6; + 1536 : 20; + 1537 : E7; + 1538 : 84; + 1539 : 4C; + 1540 : A7; + 1541 : 02; + 1542 : 81; + 1543 : 50; + 1544 : 26; + 1545 : F7; + 1546 : 7F; + 1547 : F0; + 1548 : D6; + 1549 : 39; + 1550 : 4F; + 1551 : F6; + 1552 : F0; + 1553 : D4; + 1554 : FD; + 1555 : F0; + 1556 : D3; + 1557 : A7; + 1558 : 02; + 1559 : E7; + 1560 : 03; + 1561 : 39; + 1562 : FC; + 1563 : F0; + 1564 : D3; + 1565 : 4C; + 1566 : 81; + 1567 : 50; + 1568 : 26; + 1569 : F0; + 1570 : 4F; + 1571 : 5C; + 1572 : C1; + 1573 : 19; + 1574 : 26; + 1575 : EA; + 1576 : 5A; + 1577 : 8D; + 1578 : E7; + 1579 : E6; + 1580 : 04; + 1581 : 5C; + 1582 : C1; + 1583 : 19; + 1584 : 25; + 1585 : 01; + 1586 : 5F; + 1587 : E7; + 1588 : 04; + 1589 : F6; + 1590 : F0; + 1591 : D3; + 1592 : 86; + 1593 : 20; + 1594 : F7; + 1595 : F0; + 1596 : D3; + 1597 : E7; + 1598 : 02; + 1599 : A7; + 1600 : 84; + 1601 : 5C; + 1602 : C1; + 1603 : 50; + 1604 : 26; + 1605 : F4; + 1606 : F6; + 1607 : F0; + 1608 : D4; + 1609 : 5C; + 1610 : C1; + 1611 : 19; + 1612 : 27; + 1613 : 08; + 1614 : F7; + 1615 : F0; + 1616 : D4; + 1617 : E7; + 1618 : 03; + 1619 : 5F; + 1620 : 20; + 1621 : E4; + 1622 : 5F; + 1623 : F7; + 1624 : F0; + 1625 : D3; + 1626 : E7; + 1627 : 02; + 1628 : F7; + 1629 : F0; + 1630 : D6; + 1631 : 39; + 1632 : 17; + 1633 : FE; + 1634 : 98; + 1635 : 26; + 1636 : 0D; + 1637 : 17; + 1638 : FE; + 1639 : 6A; + 1640 : 27; + 1641 : F6; + 1642 : 17; + 1643 : FE; + 1644 : 6F; + 1645 : 17; + 1646 : FE; + 1647 : CA; + 1648 : 20; + 1649 : EE; + 1650 : 17; + 1651 : FE; + 1652 : 8F; + 1653 : 17; + 1654 : FE; + 1655 : 73; + 1656 : 20; + 1657 : E6; + 1658 : 01; + 1659 : FB; + 1660 : 54; + 1661 : 02; + 1662 : FB; + 1663 : 8E; + 1664 : 03; + 1665 : FB; + 1666 : 9A; + 1667 : 04; + 1668 : FB; + 1669 : 60; + 1670 : 10; + 1671 : FB; + 1672 : 6C; + 1673 : 15; + 1674 : FB; + 1675 : 77; + 1676 : 18; + 1677 : FB; + 1678 : 48; + 1679 : 19; + 1680 : FB; + 1681 : 82; + 1682 : 41; + 1683 : FE; + 1684 : 60; + 1685 : 42; + 1686 : F9; + 1687 : B3; + 1688 : 45; + 1689 : F9; + 1690 : 0F; + 1691 : 47; + 1692 : F9; + 1693 : 6E; + 1694 : 49; + 1695 : F9; + 1696 : 95; + 1697 : 4C; + 1698 : FA; + 1699 : 2C; + 1700 : 4D; + 1701 : F8; + 1702 : BA; + 1703 : 4F; + 1704 : F9; + 1705 : 77; + 1706 : 50; + 1707 : FA; + 1708 : 85; + 1709 : 52; + 1710 : FB; + 1711 : A8; + 1712 : 53; + 1713 : F9; + 1714 : 03; + 1715 : 58; + 1716 : F9; + 1717 : DF; + 1718 : 5A; + 1719 : FA; + 1720 : DE; + 1721 : F9; + 1722 : 76; + 1723 : F9; + 1724 : 76; + 1725 : F9; + 1726 : 76; + 1727 : F9; + 1728 : 76; + 1729 : F9; + 1730 : 76; + 1731 : F9; + 1732 : EB; + 1733 : FF; + 1734 : FF; + 1735 : FF; + 1736 : FF; + 1737 : 00; + 1738 : 00; + 1739 : 00; + 1740 : 0D; + 1741 : 0A; + 1742 : 00; + 1743 : 00; + 1744 : 00; + 1745 : 4B; + 1746 : 2D; + 1747 : 42; + 1748 : 55; + 1749 : 47; + 1750 : 39; + 1751 : 53; + 1752 : 20; + 1753 : 56; + 1754 : 31; + 1755 : 2E; + 1756 : 30; + 1757 : 20; + 1758 : 04; + 1759 : 0D; + 1760 : 0A; + 1761 : 00; + 1762 : 00; + 1763 : 00; + 1764 : 04; + 1765 : 3E; + 1766 : 04; + 1767 : 57; + 1768 : 48; + 1769 : 41; + 1770 : 54; + 1771 : 3F; + 1772 : 04; + 1773 : 20; + 1774 : 2D; + 1775 : 20; + 1776 : 04; + 1777 : 20; + 1778 : 20; + 1779 : 53; + 1780 : 50; + 1781 : 3D; + 1782 : 04; + 1783 : 20; + 1784 : 20; + 1785 : 50; + 1786 : 43; + 1787 : 3D; + 1788 : 04; + 1789 : 20; + 1790 : 20; + 1791 : 55; + 1792 : 50; + 1793 : 3D; + 1794 : 04; + 1795 : 20; + 1796 : 20; + 1797 : 49; + 1798 : 59; + 1799 : 3D; + 1800 : 04; + 1801 : 20; + 1802 : 20; + 1803 : 49; + 1804 : 58; + 1805 : 3D; + 1806 : 04; + 1807 : 20; + 1808 : 20; + 1809 : 44; + 1810 : 50; + 1811 : 3D; + 1812 : 04; + 1813 : 20; + 1814 : 20; + 1815 : 41; + 1816 : 3D; + 1817 : 04; + 1818 : 20; + 1819 : 20; + 1820 : 42; + 1821 : 3D; + 1822 : 04; + 1823 : 20; + 1824 : 20; + 1825 : 43; + 1826 : 43; + 1827 : 3A; + 1828 : 20; + 1829 : 04; + 1830 : 45; + 1831 : 46; + 1832 : 48; + 1833 : 49; + 1834 : 4E; + 1835 : 5A; + 1836 : 56; + 1837 : 43; + 1838 : 53; + 1839 : 31; + 1840 : 04; + 1841 : 00; + 1842 : 00; + 1843 : 00; + 1844 : 00; + 1845 : 00; + 1846 : 00; + 1847 : 00; + 1848 : 00; + 1849 : 00; + 1850 : 00; + 1851 : 00; + 1852 : 00; + 1853 : 00; + 1854 : 00; + 1855 : 00; + 1856 : 00; + 1857 : 00; + 1858 : 00; + 1859 : 00; + 1860 : 00; + 1861 : 00; + 1862 : 00; + 1863 : 00; + 1864 : 00; + 1865 : 00; + 1866 : 00; + 1867 : 00; + 1868 : 00; + 1869 : 00; + 1870 : 00; + 1871 : 00; + 1872 : 00; + 1873 : 00; + 1874 : 00; + 1875 : 00; + 1876 : 00; + 1877 : 00; + 1878 : 00; + 1879 : 00; + 1880 : 00; + 1881 : 00; + 1882 : 00; + 1883 : 00; + 1884 : 00; + 1885 : 00; + 1886 : 00; + 1887 : 00; + 1888 : 00; + 1889 : 00; + 1890 : 00; + 1891 : 00; + 1892 : 00; + 1893 : 00; + 1894 : 00; + 1895 : 00; + 1896 : 00; + 1897 : 00; + 1898 : 00; + 1899 : 00; + 1900 : 00; + 1901 : 00; + 1902 : 00; + 1903 : 00; + 1904 : 00; + 1905 : 00; + 1906 : 00; + 1907 : 00; + 1908 : 00; + 1909 : 00; + 1910 : 00; + 1911 : 00; + 1912 : 00; + 1913 : 00; + 1914 : 00; + 1915 : 00; + 1916 : 00; + 1917 : 00; + 1918 : 00; + 1919 : 00; + 1920 : 00; + 1921 : 00; + 1922 : 00; + 1923 : 00; + 1924 : 00; + 1925 : 00; + 1926 : 00; + 1927 : 00; + 1928 : 00; + 1929 : 00; + 1930 : 00; + 1931 : 00; + 1932 : 00; + 1933 : 00; + 1934 : 00; + 1935 : 00; + 1936 : 00; + 1937 : 00; + 1938 : 00; + 1939 : 00; + 1940 : 00; + 1941 : 00; + 1942 : 00; + 1943 : 00; + 1944 : 00; + 1945 : 00; + 1946 : 00; + 1947 : 00; + 1948 : 00; + 1949 : 00; + 1950 : 00; + 1951 : 00; + 1952 : 00; + 1953 : 00; + 1954 : 00; + 1955 : 00; + 1956 : 00; + 1957 : 00; + 1958 : 00; + 1959 : 00; + 1960 : 00; + 1961 : 00; + 1962 : 00; + 1963 : 00; + 1964 : 00; + 1965 : 00; + 1966 : 00; + 1967 : 00; + 1968 : 00; + 1969 : 00; + 1970 : 6E; + 1971 : 9F; + 1972 : F0; + 1973 : C0; + 1974 : 6E; + 1975 : 9F; + 1976 : F0; + 1977 : C4; + 1978 : 6E; + 1979 : 9F; + 1980 : F0; + 1981 : C6; + 1982 : 6E; + 1983 : 9F; + 1984 : F0; + 1985 : C8; + 1986 : 6E; + 1987 : 9F; + 1988 : F0; + 1989 : CA; + 1990 : 1F; + 1991 : 43; + 1992 : AE; + 1993 : 4A; + 1994 : E6; + 1995 : 80; + 1996 : AF; + 1997 : 4A; + 1998 : 4F; + 1999 : 58; + 2000 : 49; + 2001 : BE; + 2002 : F0; + 2003 : CC; + 2004 : 8C; + 2005 : FF; + 2006 : FF; + 2007 : 27; + 2008 : 0F; + 2009 : 30; + 2010 : 8B; + 2011 : BC; + 2012 : F0; + 2013 : CE; + 2014 : 22; + 2015 : 08; + 2016 : 34; + 2017 : 10; + 2018 : EC; + 2019 : C4; + 2020 : AE; + 2021 : 44; + 2022 : 6E; + 2023 : F1; + 2024 : 37; + 2025 : 1F; + 2026 : EE; + 2027 : 42; + 2028 : 6E; + 2029 : 9F; + 2030 : F0; + 2031 : C2; + 2032 : FF; + 2033 : B2; + 2034 : FF; + 2035 : C6; + 2036 : FF; + 2037 : B6; + 2038 : FF; + 2039 : BA; + 2040 : FF; + 2041 : BE; + 2042 : FF; + 2043 : C2; + 2044 : F8; + 2045 : 34; + 2046 : F8; + 2047 : 34; +END; Index: trunk/rtl/Cyclone2/sprom.vhd =================================================================== --- trunk/rtl/Cyclone2/sprom.vhd (nonexistent) +++ trunk/rtl/Cyclone2/sprom.vhd (revision 116) @@ -0,0 +1,79 @@ +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.all; + +ENTITY sprom IS + GENERIC + ( + INIT_FILE : string := ""; + WORD_COUNT : natural := 2048; + ADDR_WIDTH : natural := 11; + DATA_WIDTH : natural := 8; + REG_OUT : string := "UNREGISTERED" + ); + PORT + ( + clk : IN STD_LOGIC ; + addr : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + data_in : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + data_out : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); +END sprom; + +ARCHITECTURE SYN OF sprom IS + + COMPONENT altsyncram + GENERIC ( + clock_enable_input_a : STRING; + clock_enable_output_a : STRING; + init_file : STRING; + intended_device_family : STRING; + lpm_hint : STRING; + lpm_type : STRING; + numwords_a : NATURAL; + operation_mode : STRING; + outdata_aclr_a : STRING; + outdata_reg_a : STRING; + power_up_uninitialized : STRING; + widthad_a : NATURAL; + width_a : NATURAL; + width_byteena_a : NATURAL + ); + PORT ( + clock0 : IN STD_LOGIC ; + wren_a : IN STD_LOGIC ; + address_a : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + data_a : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + q_a : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); + END COMPONENT; + +BEGIN + + altsyncram_component : altsyncram + GENERIC MAP ( + clock_enable_input_a => "BYPASS", + clock_enable_output_a => "BYPASS", + init_file => INIT_FILE, + intended_device_family => "Cyclone II", + lpm_hint => "ENABLE_RUNTIME_MOD=NO", + lpm_type => "altsyncram", + numwords_a => WORD_COUNT, + operation_mode => "ROM", + outdata_aclr_a => "NONE", + outdata_reg_a => REG_OUT, + power_up_uninitialized => "FALSE", + widthad_a => ADDR_WIDTH, + width_a => DATA_WIDTH, + width_byteena_a => 1 + ) + PORT MAP ( + clock0 => clk, + address_a => addr, + data_a => data_in, + q_a => data_out + ); + +END SYN; Index: trunk/rtl/Cyclone2/keymap_rom.vhd =================================================================== --- trunk/rtl/Cyclone2/keymap_rom.vhd (nonexistent) +++ trunk/rtl/Cyclone2/keymap_rom.vhd (revision 116) @@ -0,0 +1,36 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity keymap_rom is + Port ( + clk : in std_logic; + rst : in std_logic; + cs : in std_logic; + rw : in std_logic; + addr : in std_logic_vector (8 downto 0); + data_in : in std_logic_vector (7 downto 0); + data_out : out std_logic_vector (7 downto 0) + ); +end keymap_rom; + +architecture SYN of keymap_rom is +begin + + rom_inst : entity work.sprom + generic map + ( + INIT_FILE => "keymap_rom.mif", + WORD_COUNT => 512, + ADDR_WIDTH => 9 + ) + port map + ( + clk => clk, + addr => addr, + data_in => data_in, + data_out => data_out + ); + +end SYN; + Index: trunk/rtl/Cyclone2/sys09bug_de2-70.hex =================================================================== --- trunk/rtl/Cyclone2/sys09bug_de2-70.hex (nonexistent) +++ trunk/rtl/Cyclone2/sys09bug_de2-70.hex (revision 116) @@ -0,0 +1,129 @@ +:10000000F814F861FCA1FC9BFCC5FCE0FB8FFB1E17 +:10001000FB1AFA2E8EFE74108EDFC0C610A680A7C3 +:10002000A05A26F98EE000BFDFE017015BC60C6F17 +:10003000E25A26FB308CDDAF6A86D0A7E41F431757 +:1000400004B58EFE841703478EDFD04FC60D6D8535 +:1000500027038B04195A2AF617040C8EFEA41703E3 +:100060002E8EFEAB1702B3170437847F810D27F164 +:100070001F8981202C09865E1704651F988B401705 +:10008000045E170459C1602F02C0208EFE3BE18040 +:10009000270F30028CFE7426F58EFEAD1702F0207D +:1000A000C0AD9420BC1F343B17036B292D1F128E4B +:1000B000FEB31702651F211703A5170421A6A41775 +:1000C00003A517041917035E2811810827E1811879 +:1000D00027DD815E2717810D260F39A7A4A1A4274C +:1000E000081703FA863F1703F7312120C2313F205A +:1000F000BE1702A21F328EDFC0301F200517030B70 +:1001000029063420ACE12401391F10C30010C4F0CB +:1001100034061F20C4F01F01ACE427051703A627EF +:100120000332623934108EFEB31701EEAEE41703CA +:100130002E1703A8C610A68017032C1703A05A2653 +:10014000F5170398AEE1C610A68081202504817EB4 +:100150002302862E1703895A26EE20BC1702B729E0 +:100160001E8CDFC0241A34108EFFFF8D55351027EA +:100170000FA684813F2709A7A0AFA4863FA7843993 +:1001800017035B863F160358108EDFE3C6088D18F1 +:100190005A26FB391F43AE4A301F8D262704AF4A2B +:1001A0008D0617024816FEB9AE218CDFC0240AA6C0 +:1001B00084813F2604A6A4A78486FFA7A0A7A0A7A2 +:1001C000A039108EDFE3C608A6A0ACA127045A26EA +:1001D000F739313D39CC0006FDE11ECC0002FDE1CE +:1001E0001ECC00E0FDE10C8D2ECC0001FDE1045F92 +:1001F000FDE106FDE108FDE10AC620FDE10E8D17D7 +:100200008EC0008D21FCE100E7808CC10026F48EB9 +:10021000C000AF4A1F343BFCE10EC58026F9FCE16B +:100220000EC54027F239FCE10EC50827F9393436EE +:10023000A66244444444108EDFD0E6A6545454547D +:10024000E7E4E6A65358585858A662840FA762EA16 +:1002500062E76235B63404C6205A26FD3584BDFCFB +:10026000F9861117027A7FDFE217022A815326F9F5 +:100270001702238139273D813126F11701A8340265 +:10028000292617019129213410E6E0EBE0EBE46A1E +:10029000E46AE4340417018E3504290C3402EBE0DF +:1002A0006AE42705A78020EB5F3502C1FF27BA86E5 +:1002B0003F17022C73DFE286131602246FE2170148 +:1002C0004A3430294DAC6225493001AFE4BDFCF918 +:1002D000861217020BECE4A362270610830020238A +:1002E00002C620E7648EFEF417002FCB031F981779 +:1002F0000175AE62170168EB62EB63EB84A68017B1 +:1003000001656A6426F5531F9817015BAF62ACE480 +:1003100026C386141701C93265398D022071341045 +:100320008EFEA517006935901601B31600F8160069 +:10033000E51700918DF28DF62902AF4A398D618D56 +:10034000E78DEB2902AF48398D728DDC8DE02902F3 +:10035000AF46398D5E8DD18DD52902AF44398D4997 +:100360008DC68DC72902A743398D6C8DBB8DBC29E5 +:1003700002A742398D588DB08DB12902A741398D20 +:100380005F8DA58DA629048A80A7C439170151A6BF +:1003900080810426F7398EFEB78DF41F311600BF19 +:1003A0008EFEC38DEAAE4820F48EFED58DE1A643C5 +:1003B0001600B48EFECF8DD7AE4420E18EFEC98DDF +:1003C000CEAE4620D88EFEBD8DC5AE4A20CF8EFE65 +:1003D000DB8DBCA64120D98EFEE08DB3A64220D095 +:1003E0008EFEE58DAAA6C48EFEEC1600908EFEB39E +:1003F00017FF278DA18DA98DB08DB88DBF8EFEB34F +:1004000017FF178DC08DC78DCE20D58D09294D1FA3 +:1004100012862D1700CA8D0E29421F018D08293C16 +:100420003410A76135908D112932484848481F89FA +:100430008D0729283404ABE0398D5B8130251D817F +:1004400039220380303981412512814622038037C9 +:100450003981612507816622038057391A023934B0 +:100460001035028D0235023402444444448D043573 +:1004700002840F8B3081392F028B0720633402C630 +:1004800008A68068E42502862D8D558D515A26F1E7 +:1004900035826E9FF0007DDFE227068D04847F2089 +:1004A0003F34108611A79FDFE0BEDFE0A684850100 +:1004B00026098EE020A684850127EE8651A79FDFBE +:1004C000E0A601359034028611A79FDFE0A69FDFEA +:1004D000E085012605B6E020850135828D00862065 +:1004E0008D493412BEDFE0A684850227FA850826EE +:1004F000F63502A70135908D13BEDFE08603A78491 +:100500008651A7846D0186FFB7DFE2398EE030CCDB +:100510000000FDDFFBA702E703E704FDDFFDC602E5 +:10052000E7017FDFFE861B8D02865934168EE03090 +:100530007DDFFE27048D60200D812024048D09209D +:1005400005A7841700AF359681082734811B275AE9 +:10055000811A1027007C81162738810D1027008909 +:10056000810C2724810B270F810A2645FCDFFB5CC9 +:10057000C119267916008FFCDFFB5D27345A206DE8 +:10058000B6DFFB272C4A2062B6DFFB4C81502721C7 +:100590002058CC00002056F6DFFEC13D27148159BB +:1005A000276E81542731813D2604B7DFFE397FDF76 +:1005B000FE397DDFFD2604B7DFFD397FDFFE8020B9 +:1005C000814F22EDF6DFFD7FDFFDC020C11822E163 +:1005D000201BCC00008D16B6DFFBC620E7844CA79D +:1005E00002815026F77FDFFE394FF6DFFCFDDFFB8F +:1005F000A702E70339FCDFFB4C815026F04F5CC1BA +:100600001926EA5A8DE7E6045CC11925015FE70463 +:10061000F6DFFB8620F7DFFBE702A7845CC15026EC +:10062000F4F6DFFC5CC1192708F7DFFCE7035F2065 +:10063000E45FF7DFFBE702F7DFFE3901FB7402FB43 +:100640006903FB7F04FB5E10FB3115FB3D18FB5378 +:1006500019FB4842F95C45F8FD47F8A54CFA5E5095 +:10066000FABC4DF8A852FBED53F8F158F98844F95B +:10067000D555FC92F994F8A7F8A7F8A7F8A7F9942C +:10068000FFFFFFFF0D0A0000005359533039425558 +:100690004720312E3720464F52204445322D3730E7 +:1006A000202D20044B0D0A000000043E0457484151 +:1006B000543F04202D2004202053503D042020507E +:1006C000433D04202055533D04202049593D04203A +:1006D0002049583D04202044503D042020413D0441 +:1006E0002020423D04202043433A20044546484907 +:1006F0004E5A564353310400000000000000000031 +:100700008EFFF0860FA7804A26FB86F0A7848ED046 +:10071000A0108E55AAEE8410AF8410AC84270B3045 +:1007200089F0008CF0A026ED20D6EF841F10434402 +:10073000444444B7FFFD10CEDFC0108EDFD0A72D9C +:100740006F2E86F0A72F860C6FA64A2AFB3089F001 +:10075000008CF0A02722EE84108E55AA10AF8410D2 +:10076000AC8426E9EF84108EDFD01F10444444444B +:100770001F89880FA7A520D586F1108EDFD0A72E60 +:10078000860CE6A626054A2AF920146FA6E72C4F08 +:100790001F21E6A627046FA6E7804C810C2DF38E5F +:1007A000FFF0C610A6A0A7805A26F953F7DFE2167D +:1007B000F8626E9FDFC06E9FDFC46E9FDFC66E9FC4 +:1007C000DFC86E9FDFCA1F43AE4AE680AF4A4F586C +:1007D00049BEDFCC8CFFFF270F308BBCDFCE220859 +:1007E0003410ECC4AE446EF1371FEE426E9FDFC290 +:1007F000FFB2FFC6FFB6FFBAFFBEFFC2FFB2FF00E7 +:00000001FF \ No newline at end of file Index: trunk/rtl/Cyclone2/mon_rom.vhd =================================================================== --- trunk/rtl/Cyclone2/mon_rom.vhd (nonexistent) +++ trunk/rtl/Cyclone2/mon_rom.vhd (revision 116) @@ -0,0 +1,35 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity mon_rom is + Port ( + clk : in std_logic; + rst : in std_logic; + cs : in std_logic; + rw : in std_logic; + addr : in std_logic_vector (10 downto 0); + data_in : in std_logic_vector (7 downto 0); + data_out : out std_logic_vector (7 downto 0) + ); +end mon_rom; + +architecture SYN of mon_rom is +begin + + rom_inst : entity work.sprom + generic map + ( + INIT_FILE => "sys09bug_de2-70.hex", + WORD_COUNT => 2048, + ADDR_WIDTH => 11 + ) + port map + ( + clk => clk, + addr => addr, + data_in => data_in, + data_out => data_out + ); + +end SYN; Index: trunk/rtl/Cyclone2/ram_2k.vhd =================================================================== --- trunk/rtl/Cyclone2/ram_2k.vhd (nonexistent) +++ trunk/rtl/Cyclone2/ram_2k.vhd (revision 116) @@ -0,0 +1,40 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity ram_2k is + Port ( + clk : in std_logic; + rst : in std_logic; + cs : in std_logic; + rw : in std_logic; + addr : in std_logic_vector (10 downto 0); + data_in : in std_logic_vector (7 downto 0); + data_out : out std_logic_vector (7 downto 0) + ); +end ram_2k; + +architecture SYN of ram_2k is +signal we : std_logic; + +begin + + we <= cs and (not rw) and (not rst); + + ram_inst : entity work.spram + generic map + ( + INIT_FILE => "char_rom.mif", + WORD_COUNT => 2048, + ADDR_WIDTH => 11 + ) + port map + ( + clk => clk, + addr => addr, + wren => we, + data_in => data_in, + data_out => data_out + ); + +end SYN; Index: trunk/rtl/Cyclone2/ram2k.vhd =================================================================== --- trunk/rtl/Cyclone2/ram2k.vhd (nonexistent) +++ trunk/rtl/Cyclone2/ram2k.vhd (revision 116) @@ -0,0 +1,83 @@ +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.all; + +ENTITY spram IS + GENERIC + ( + INIT_FILE : string := ""; + WORD_COUNT : natural := 2048; + ADDR_WIDTH : natural := 11; + DATA_WIDTH : natural := 8; + REG_OUT : string := "UNREGISTERED" + ); + PORT + ( + clk : IN STD_LOGIC ; + rst : IN STD_LOGIC ; + cs : IN STD_LOGIC ; + addr : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + rw : IN STD_LOGIC ; + data_in : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + data_out : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); +END spram; + +ARCHITECTURE SYN OF spram IS + + COMPONENT altsyncram + GENERIC ( + clock_enable_input_a : STRING; + clock_enable_output_a : STRING; + init_file : STRING; + intended_device_family : STRING; + lpm_hint : STRING; + lpm_type : STRING; + numwords_a : NATURAL; + operation_mode : STRING; + outdata_aclr_a : STRING; + outdata_reg_a : STRING; + power_up_uninitialized : STRING; + widthad_a : NATURAL; + width_a : NATURAL; + width_byteena_a : NATURAL + ); + PORT ( + clock0 : IN STD_LOGIC ; + wren_a : IN STD_LOGIC ; + address_a : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + data_a : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + q_a : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); + END COMPONENT; + +BEGIN + + altsyncram_component : altsyncram + GENERIC MAP ( + clock_enable_input_a => "BYPASS", + clock_enable_output_a => "BYPASS", + init_file => INIT_FILE, + intended_device_family => "Cyclone II", + lpm_hint => "ENABLE_RUNTIME_MOD=NO", + lpm_type => "altsyncram", + numwords_a => WORD_COUNT, + operation_mode => "SINGLE_PORT", + outdata_aclr_a => "NONE", + outdata_reg_a => REG_OUT, + power_up_uninitialized => "FALSE", + widthad_a => ADDR_WIDTH, + width_a => DATA_WIDTH, + width_byteena_a => 1 + ) + PORT MAP ( + wren_a => wren, + clock0 => clk, + address_a => addr, + data_a => data_in, + q_a => data_out + ); + +END SYN; Index: trunk/rtl/Cyclone2/pll.inc =================================================================== --- trunk/rtl/Cyclone2/pll.inc (nonexistent) +++ trunk/rtl/Cyclone2/pll.inc (revision 116) @@ -0,0 +1,27 @@ +--Copyright (C) 1991-2010 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. + + +FUNCTION pll +( + areset, + inclk0 +) + +RETURNS ( + c0, + c1, + c2, + locked +); Index: trunk/rtl/Cyclone2/wb_lpm_ram.vhd =================================================================== --- trunk/rtl/Cyclone2/wb_lpm_ram.vhd (nonexistent) +++ trunk/rtl/Cyclone2/wb_lpm_ram.vhd (revision 116) @@ -0,0 +1,115 @@ +--===========================================================================-- +-- +-- S Y N T H E Z I A B L E Altera LPM_RAM / WISHBONE interface +-- +-- www.OpenCores.Org - August 2003 +-- This core adheres to the GNU public license +-- +-- File name : wb_lpm_ram.vhd +-- +-- Purpose : Implements a WISHBONE compatble interface +-- for the Altera LPM_ROM +-- +-- Dependencies : ieee.Std_Logic_1164 +-- ieee.std_logic_unsigned +-- work.lpm_components (Altera's 220PACK.vhd) +-- +-- Author : Michael L. Hasenfratz Sr. +-- +--===========================================================================---- +-- +-- Revision History: +-- +-- Date: Revision Author +--===========================================================================-- +-- 4 Aug 2003 0.1 Michael L. Hasenfratz Sr. +-- Created +-- 5 Aug 2003 0.2 Michael L. Hasenfratz Sr. +-- Added Cache check +-- + +library ieee; +use ieee.std_logic_1164.all; +use ieee.std_logic_unsigned.all; + +library lpm; +use lpm.lpm_components.all; + +entity wb_lpm_ram is + generic ( + LPM_WIDTH : positive range 1 to 64 := 8; -- data bits WIDE + LPM_WIDTHAD : positive range 1 to 32 := 8 -- address bits; + ); + port ( + DAT_I : in std_logic_vector(LPM_WIDTH-1 downto 0); + DAT_O : out std_logic_vector(LPM_WIDTH-1 downto 0); + ADR_I : in std_logic_vector(LPM_WIDTHAD-1 downto 0); + SEL_I : in std_logic_vector((LPM_WIDTH/8)-1 downto 0); + WE_I : in std_logic; + STB_I : in std_logic; -- VMA (Valid Memory Access) + CYC_I : in std_logic; -- CYC in progress + ACK_O : out std_logic; -- Data ready + CLK_I : in std_logic; -- System Clock + RST_I : in std_logic -- Reset + ); +end; + +architecture bhv_wb_lpm_ram of wb_lpm_ram is + + signal iwe : std_logic_vector(SEL_I'RANGE); -- Internal Write Enables + signal iack : std_logic; -- Internal ACK + signal sel : std_logic; -- device selected + +begin + +--------------------------------------------------------- +-- Instantiate the RAM interface +--------------------------------------------------------- +gen : for idx in SEL_I'RANGE generate +ram : LPM_RAM_DQ + generic map ( + LPM_WIDTH => 8, + LPM_WIDTHAD => LPM_WIDTHAD, + USE_EAB => "ON", + LPM_OUTDATA => "UNREGISTERED" + ) + port map ( + DATA => DAT_I((idx*8)+7 downto (idx*8)), + Q => DAT_O((idx*8)+7 downto (idx*8)), + WE => iwe(idx), + ADDRESS => ADR_I, + INCLOCK => CLK_I + ); + end generate; + +--------------------------------------------------------- +-- Interconnections +--------------------------------------------------------- + ACK_O <= (iack or WE_I) and sel; + +-- find SEL_(x) +selx : process(SEL_I, CYC_I, STB_I, WE_I) + variable isel : std_logic ; + begin + isel := '0'; + for ndx in SEL_I'RANGE loop + isel := isel or SEL_I(ndx); + iwe(ndx) <= SEL_I(ndx) and WE_I; + end loop; + sel <= isel and CYC_I and STB_I; + end process; + +-- ACK / HOLD +intc0 : process(CLK_I) + begin + if CLK_I'EVENT and CLK_I = '1' then + if RST_I = '1' then + iack <= '0'; + else + iack <= sel and not(iack); + end if; + end if; + end process; + +end bhv_wb_lpm_ram; + Index: trunk/rtl/Cyclone2/pll.bsf =================================================================== --- trunk/rtl/Cyclone2/pll.bsf (nonexistent) +++ trunk/rtl/Cyclone2/pll.bsf (revision 116) @@ -0,0 +1,107 @@ +/* +WARNING: Do NOT edit the input and output ports in this file in a text +editor if you plan to continue editing the block that represents it in +the Block Editor! File corruption is VERY likely to occur. +*/ +/* +Copyright (C) 1991-2010 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. +*/ +(header "symbol" (version "1.1")) +(symbol + (rect 0 0 264 184) + (text "pll" (rect 126 0 141 16)(font "Arial" (font_size 10))) + (text "inst" (rect 8 168 25 180)(font "Arial" )) + (port + (pt 0 64) + (input) + (text "inclk0" (rect 0 0 31 14)(font "Arial" (font_size 8))) + (text "inclk0" (rect 4 51 31 64)(font "Arial" (font_size 8))) + (line (pt 0 64)(pt 48 64)(line_width 1)) + ) + (port + (pt 0 80) + (input) + (text "areset" (rect 0 0 36 14)(font "Arial" (font_size 8))) + (text "areset" (rect 4 67 32 80)(font "Arial" (font_size 8))) + (line (pt 0 80)(pt 48 80)(line_width 1)) + ) + (port + (pt 264 64) + (output) + (text "c0" (rect 0 0 14 14)(font "Arial" (font_size 8))) + (text "c0" (rect 249 51 260 64)(font "Arial" (font_size 8))) + (line (pt 264 64)(pt 216 64)(line_width 1)) + ) + (port + (pt 264 80) + (output) + (text "c1" (rect 0 0 14 14)(font "Arial" (font_size 8))) + (text "c1" (rect 249 67 260 80)(font "Arial" (font_size 8))) + (line (pt 264 80)(pt 216 80)(line_width 1)) + ) + (port + (pt 264 96) + (output) + (text "c2" (rect 0 0 14 14)(font "Arial" (font_size 8))) + (text "c2" (rect 249 83 260 96)(font "Arial" (font_size 8))) + (line (pt 264 96)(pt 216 96)(line_width 1)) + ) + (port + (pt 264 112) + (output) + (text "locked" (rect 0 0 36 14)(font "Arial" (font_size 8))) + (text "locked" (rect 230 99 260 112)(font "Arial" (font_size 8))) + (line (pt 264 112)(pt 216 112)(line_width 1)) + ) + (drawing + (text "Cyclone II" (rect 207 169 251 181)(font "Arial" )) + (text "inclk0 frequency: 50.000 MHz" (rect 58 59 183 71)(font "Arial" )) + (text "Operation Mode: Normal" (rect 58 73 159 85)(font "Arial" )) + (text "Clk " (rect 59 96 76 108)(font "Arial" )) + (text "Ratio" (rect 81 96 103 108)(font "Arial" )) + (text "Ph (dg)" (rect 108 96 138 108)(font "Arial" )) + (text "DC (%)" (rect 143 96 174 108)(font "Arial" )) + (text "c0" (rect 62 111 72 123)(font "Arial" )) + (text "1/1" (rect 86 111 99 123)(font "Arial" )) + (text "0.00" (rect 114 111 132 123)(font "Arial" )) + (text "50.00" (rect 147 111 170 123)(font "Arial" )) + (text "c1" (rect 62 126 72 138)(font "Arial" )) + (text "1/2" (rect 86 126 99 138)(font "Arial" )) + (text "0.00" (rect 114 126 132 138)(font "Arial" )) + (text "50.00" (rect 147 126 170 138)(font "Arial" )) + (text "c2" (rect 62 141 72 153)(font "Arial" )) + (text "1/2" (rect 86 141 99 153)(font "Arial" )) + (text "0.00" (rect 114 141 132 153)(font "Arial" )) + (text "50.00" (rect 147 141 170 153)(font "Arial" )) + (line (pt 0 0)(pt 265 0)(line_width 1)) + (line (pt 265 0)(pt 265 185)(line_width 1)) + (line (pt 0 185)(pt 265 185)(line_width 1)) + (line (pt 0 0)(pt 0 185)(line_width 1)) + (line (pt 56 94)(pt 176 94)(line_width 1)) + (line (pt 56 108)(pt 176 108)(line_width 1)) + (line (pt 56 123)(pt 176 123)(line_width 1)) + (line (pt 56 138)(pt 176 138)(line_width 1)) + (line (pt 56 153)(pt 176 153)(line_width 1)) + (line (pt 56 94)(pt 56 153)(line_width 1)) + (line (pt 78 94)(pt 78 153)(line_width 3)) + (line (pt 105 94)(pt 105 153)(line_width 3)) + (line (pt 140 94)(pt 140 153)(line_width 3)) + (line (pt 175 94)(pt 175 153)(line_width 1)) + (line (pt 48 48)(pt 216 48)(line_width 1)) + (line (pt 216 48)(pt 216 168)(line_width 1)) + (line (pt 48 168)(pt 216 168)(line_width 1)) + (line (pt 48 48)(pt 48 168)(line_width 1)) + ) +) Index: trunk/rtl/Cyclone2/spram.vhd =================================================================== --- trunk/rtl/Cyclone2/spram.vhd (nonexistent) +++ trunk/rtl/Cyclone2/spram.vhd (revision 116) @@ -0,0 +1,81 @@ +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.all; + +ENTITY spram IS + GENERIC + ( + INIT_FILE : string := ""; + WORD_COUNT : natural := 2048; + ADDR_WIDTH : natural := 11; + DATA_WIDTH : natural := 8; + REG_OUT : string := "UNREGISTERED" + ); + PORT + ( + clk : IN STD_LOGIC ; + addr : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + wren : IN STD_LOGIC ; + data_in : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + data_out : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); +END spram; + +ARCHITECTURE SYN OF spram IS + + COMPONENT altsyncram + GENERIC ( + clock_enable_input_a : STRING; + clock_enable_output_a : STRING; + init_file : STRING; + intended_device_family : STRING; + lpm_hint : STRING; + lpm_type : STRING; + numwords_a : NATURAL; + operation_mode : STRING; + outdata_aclr_a : STRING; + outdata_reg_a : STRING; + power_up_uninitialized : STRING; + widthad_a : NATURAL; + width_a : NATURAL; + width_byteena_a : NATURAL + ); + PORT ( + clock0 : IN STD_LOGIC ; + wren_a : IN STD_LOGIC ; + address_a : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + data_a : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + q_a : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); + END COMPONENT; + +BEGIN + + altsyncram_component : altsyncram + GENERIC MAP ( + clock_enable_input_a => "BYPASS", + clock_enable_output_a => "BYPASS", + init_file => INIT_FILE, + intended_device_family => "Cyclone II", + lpm_hint => "ENABLE_RUNTIME_MOD=NO", + lpm_type => "altsyncram", + numwords_a => WORD_COUNT, + operation_mode => "SINGLE_PORT", + outdata_aclr_a => "NONE", + outdata_reg_a => REG_OUT, + power_up_uninitialized => "FALSE", + widthad_a => ADDR_WIDTH, + width_a => DATA_WIDTH, + width_byteena_a => 1 + ) + PORT MAP ( + wren_a => wren, + clock0 => clk, + address_a => addr, + data_a => data_in, + q_a => data_out + ); + +END SYN; Index: trunk/rtl/Cyclone2/char_rom.mif =================================================================== --- trunk/rtl/Cyclone2/char_rom.mif (nonexistent) +++ trunk/rtl/Cyclone2/char_rom.mif (revision 116) @@ -0,0 +1,2054 @@ +WIDTH=8; +DEPTH=2048; +ADDRESS_RADIX=UNS; +DATA_RADIX=HEX; +CONTENT BEGIN + 0 : 00; + 1 : 44; + 2 : 64; + 3 : 54; + 4 : 4C; + 5 : 44; + 6 : 00; + 7 : 04; + 8 : 04; + 9 : 04; + 10 : 04; + 11 : 07; + 12 : 00; + 13 : 00; + 14 : 00; + 15 : 00; + 16 : 00; + 17 : 38; + 18 : 40; + 19 : 38; + 20 : 04; + 21 : 38; + 22 : 00; + 23 : 09; + 24 : 09; + 25 : 0F; + 26 : 09; + 27 : 09; + 28 : 00; + 29 : 00; + 30 : 00; + 31 : 00; + 32 : 00; + 33 : 38; + 34 : 40; + 35 : 38; + 36 : 04; + 37 : 38; + 38 : 00; + 39 : 11; + 40 : 0A; + 41 : 04; + 42 : 0A; + 43 : 11; + 44 : 00; + 45 : 00; + 46 : 00; + 47 : 00; + 48 : 00; + 49 : 78; + 50 : 40; + 51 : 70; + 52 : 40; + 53 : 78; + 54 : 00; + 55 : 11; + 56 : 0A; + 57 : 04; + 58 : 0A; + 59 : 11; + 60 : 00; + 61 : 00; + 62 : 00; + 63 : 00; + 64 : 00; + 65 : 78; + 66 : 40; + 67 : 70; + 68 : 40; + 69 : 78; + 70 : 00; + 71 : 1F; + 72 : 04; + 73 : 04; + 74 : 04; + 75 : 04; + 76 : 00; + 77 : 00; + 78 : 00; + 79 : 00; + 80 : 00; + 81 : 78; + 82 : 40; + 83 : 70; + 84 : 40; + 85 : 78; + 86 : 00; + 87 : 0E; + 88 : 11; + 89 : 15; + 90 : 12; + 91 : 0D; + 92 : 00; + 93 : 00; + 94 : 00; + 95 : 00; + 96 : 00; + 97 : 30; + 98 : 48; + 99 : 48; + 100 : 78; + 101 : 48; + 102 : 00; + 103 : 09; + 104 : 0A; + 105 : 0C; + 106 : 0A; + 107 : 09; + 108 : 00; + 109 : 00; + 110 : 00; + 111 : 00; + 112 : 00; + 113 : 70; + 114 : 48; + 115 : 70; + 116 : 48; + 117 : 70; + 118 : 00; + 119 : 08; + 120 : 08; + 121 : 08; + 122 : 08; + 123 : 0F; + 124 : 00; + 125 : 00; + 126 : 00; + 127 : 00; + 128 : 00; + 129 : 70; + 130 : 48; + 131 : 70; + 132 : 48; + 133 : 70; + 134 : 00; + 135 : 0E; + 136 : 10; + 137 : 0E; + 138 : 01; + 139 : 0E; + 140 : 00; + 141 : 00; + 142 : 00; + 143 : 00; + 144 : 00; + 145 : 44; + 146 : 44; + 147 : 7C; + 148 : 44; + 149 : 44; + 150 : 00; + 151 : 1F; + 152 : 04; + 153 : 04; + 154 : 04; + 155 : 04; + 156 : 00; + 157 : 00; + 158 : 00; + 159 : 00; + 160 : 00; + 161 : 40; + 162 : 40; + 163 : 40; + 164 : 40; + 165 : 7C; + 166 : 00; + 167 : 1F; + 168 : 10; + 169 : 1E; + 170 : 10; + 171 : 10; + 172 : 00; + 173 : 00; + 174 : 00; + 175 : 00; + 176 : 00; + 177 : 44; + 178 : 44; + 179 : 44; + 180 : 28; + 181 : 10; + 182 : 00; + 183 : 1F; + 184 : 04; + 185 : 04; + 186 : 04; + 187 : 04; + 188 : 00; + 189 : 00; + 190 : 00; + 191 : 00; + 192 : 00; + 193 : 78; + 194 : 40; + 195 : 70; + 196 : 40; + 197 : 40; + 198 : 00; + 199 : 0F; + 200 : 08; + 201 : 0E; + 202 : 08; + 203 : 08; + 204 : 00; + 205 : 00; + 206 : 00; + 207 : 00; + 208 : 00; + 209 : 3C; + 210 : 40; + 211 : 40; + 212 : 40; + 213 : 3C; + 214 : 00; + 215 : 1E; + 216 : 11; + 217 : 1E; + 218 : 11; + 219 : 11; + 220 : 00; + 221 : 00; + 222 : 00; + 223 : 00; + 224 : 00; + 225 : 38; + 226 : 40; + 227 : 38; + 228 : 04; + 229 : 38; + 230 : 00; + 231 : 0E; + 232 : 11; + 233 : 11; + 234 : 11; + 235 : 0E; + 236 : 00; + 237 : 00; + 238 : 00; + 239 : 00; + 240 : 00; + 241 : 38; + 242 : 40; + 243 : 38; + 244 : 04; + 245 : 38; + 246 : 00; + 247 : 07; + 248 : 02; + 249 : 02; + 250 : 02; + 251 : 07; + 252 : 00; + 253 : 00; + 254 : 00; + 255 : 00; + 256 : 00; + 257 : 70; + 258 : 48; + 259 : 48; + 260 : 48; + 261 : 70; + 262 : 00; + 263 : 0F; + 264 : 08; + 265 : 0E; + 266 : 08; + 267 : 0F; + 268 : 00; + 269 : 00; + 270 : 00; + 271 : 00; + 272 : 00; + 273 : 70; + 274 : 48; + 275 : 48; + 276 : 48; + 277 : 70; + 278 : 00; + 279 : 02; + 280 : 06; + 281 : 02; + 282 : 02; + 283 : 07; + 284 : 00; + 285 : 00; + 286 : 00; + 287 : 00; + 288 : 00; + 289 : 70; + 290 : 48; + 291 : 48; + 292 : 48; + 293 : 70; + 294 : 00; + 295 : 07; + 296 : 09; + 297 : 06; + 298 : 08; + 299 : 0F; + 300 : 00; + 301 : 00; + 302 : 00; + 303 : 00; + 304 : 00; + 305 : 70; + 306 : 48; + 307 : 48; + 308 : 48; + 309 : 70; + 310 : 00; + 311 : 0F; + 312 : 02; + 313 : 07; + 314 : 01; + 315 : 0E; + 316 : 00; + 317 : 00; + 318 : 00; + 319 : 00; + 320 : 00; + 321 : 70; + 322 : 48; + 323 : 48; + 324 : 48; + 325 : 70; + 326 : 00; + 327 : 09; + 328 : 09; + 329 : 0F; + 330 : 01; + 331 : 01; + 332 : 00; + 333 : 00; + 334 : 00; + 335 : 00; + 336 : 00; + 337 : 44; + 338 : 64; + 339 : 54; + 340 : 4C; + 341 : 44; + 342 : 00; + 343 : 09; + 344 : 0A; + 345 : 0C; + 346 : 0A; + 347 : 09; + 348 : 00; + 349 : 00; + 350 : 00; + 351 : 00; + 352 : 00; + 353 : 38; + 354 : 40; + 355 : 38; + 356 : 04; + 357 : 38; + 358 : 00; + 359 : 11; + 360 : 19; + 361 : 15; + 362 : 13; + 363 : 11; + 364 : 00; + 365 : 00; + 366 : 00; + 367 : 00; + 368 : 00; + 369 : 78; + 370 : 40; + 371 : 70; + 372 : 40; + 373 : 78; + 374 : 00; + 375 : 0E; + 376 : 09; + 377 : 0E; + 378 : 09; + 379 : 0E; + 380 : 00; + 381 : 00; + 382 : 00; + 383 : 00; + 384 : 00; + 385 : 38; + 386 : 40; + 387 : 40; + 388 : 40; + 389 : 38; + 390 : 00; + 391 : 11; + 392 : 19; + 393 : 15; + 394 : 13; + 395 : 11; + 396 : 00; + 397 : 00; + 398 : 00; + 399 : 00; + 400 : 00; + 401 : 78; + 402 : 40; + 403 : 70; + 404 : 40; + 405 : 78; + 406 : 00; + 407 : 11; + 408 : 1B; + 409 : 15; + 410 : 11; + 411 : 11; + 412 : 00; + 413 : 00; + 414 : 00; + 415 : 00; + 416 : 00; + 417 : 38; + 418 : 40; + 419 : 38; + 420 : 04; + 421 : 38; + 422 : 00; + 423 : 0E; + 424 : 09; + 425 : 0E; + 426 : 09; + 427 : 0E; + 428 : 00; + 429 : 00; + 430 : 00; + 431 : 00; + 432 : 00; + 433 : 78; + 434 : 40; + 435 : 70; + 436 : 40; + 437 : 78; + 438 : 00; + 439 : 0E; + 440 : 10; + 441 : 10; + 442 : 10; + 443 : 0E; + 444 : 00; + 445 : 00; + 446 : 00; + 447 : 00; + 448 : 00; + 449 : 78; + 450 : 40; + 451 : 70; + 452 : 40; + 453 : 40; + 454 : 00; + 455 : 0E; + 456 : 10; + 457 : 0E; + 458 : 01; + 459 : 0E; + 460 : 00; + 461 : 00; + 462 : 00; + 463 : 00; + 464 : 00; + 465 : 38; + 466 : 40; + 467 : 58; + 468 : 48; + 469 : 38; + 470 : 00; + 471 : 0E; + 472 : 10; + 473 : 0E; + 474 : 01; + 475 : 0E; + 476 : 00; + 477 : 00; + 478 : 00; + 479 : 00; + 480 : 00; + 481 : 70; + 482 : 48; + 483 : 70; + 484 : 50; + 485 : 48; + 486 : 00; + 487 : 0E; + 488 : 10; + 489 : 0E; + 490 : 01; + 491 : 0E; + 492 : 00; + 493 : 00; + 494 : 00; + 495 : 00; + 496 : 00; + 497 : 48; + 498 : 48; + 499 : 48; + 500 : 48; + 501 : 30; + 502 : 00; + 503 : 0E; + 504 : 10; + 505 : 0E; + 506 : 01; + 507 : 0E; + 508 : 00; + 509 : 00; + 510 : 00; + 511 : 00; + 512 : 00; + 513 : 00; + 514 : 00; + 515 : 00; + 516 : 00; + 517 : 00; + 518 : 00; + 519 : 00; + 520 : 00; + 521 : 00; + 522 : 00; + 523 : 00; + 524 : 00; + 525 : 00; + 526 : 00; + 527 : 00; + 528 : 00; + 529 : 08; + 530 : 08; + 531 : 08; + 532 : 08; + 533 : 08; + 534 : 08; + 535 : 08; + 536 : 00; + 537 : 00; + 538 : 08; + 539 : 08; + 540 : 00; + 541 : 00; + 542 : 00; + 543 : 00; + 544 : 00; + 545 : 12; + 546 : 12; + 547 : 12; + 548 : 12; + 549 : 00; + 550 : 00; + 551 : 00; + 552 : 00; + 553 : 00; + 554 : 00; + 555 : 00; + 556 : 00; + 557 : 00; + 558 : 00; + 559 : 00; + 560 : 00; + 561 : 24; + 562 : 24; + 563 : 24; + 564 : 7E; + 565 : 24; + 566 : 24; + 567 : 24; + 568 : 7E; + 569 : 24; + 570 : 24; + 571 : 24; + 572 : 00; + 573 : 00; + 574 : 00; + 575 : 00; + 576 : 00; + 577 : 08; + 578 : 3E; + 579 : 49; + 580 : 48; + 581 : 48; + 582 : 3E; + 583 : 09; + 584 : 09; + 585 : 49; + 586 : 3E; + 587 : 08; + 588 : 00; + 589 : 00; + 590 : 00; + 591 : 00; + 592 : 00; + 593 : 61; + 594 : 61; + 595 : 01; + 596 : 02; + 597 : 04; + 598 : 08; + 599 : 10; + 600 : 20; + 601 : 40; + 602 : 43; + 603 : 43; + 604 : 00; + 605 : 00; + 606 : 00; + 607 : 00; + 608 : 00; + 609 : 38; + 610 : 44; + 611 : 44; + 612 : 44; + 613 : 44; + 614 : 38; + 615 : 44; + 616 : 44; + 617 : 44; + 618 : 42; + 619 : 3D; + 620 : 00; + 621 : 00; + 622 : 00; + 623 : 00; + 624 : 00; + 625 : 0C; + 626 : 08; + 627 : 10; + 628 : 20; + 629 : 00; + 630 : 00; + 631 : 00; + 632 : 00; + 633 : 00; + 634 : 00; + 635 : 00; + 636 : 00; + 637 : 00; + 638 : 00; + 639 : 00; + 640 : 00; + 641 : 02; + 642 : 04; + 643 : 08; + 644 : 10; + 645 : 10; + 646 : 10; + 647 : 10; + 648 : 10; + 649 : 08; + 650 : 04; + 651 : 02; + 652 : 00; + 653 : 00; + 654 : 00; + 655 : 00; + 656 : 00; + 657 : 20; + 658 : 10; + 659 : 08; + 660 : 04; + 661 : 04; + 662 : 04; + 663 : 04; + 664 : 04; + 665 : 08; + 666 : 10; + 667 : 20; + 668 : 00; + 669 : 00; + 670 : 00; + 671 : 00; + 672 : 00; + 673 : 00; + 674 : 00; + 675 : 41; + 676 : 22; + 677 : 14; + 678 : 7F; + 679 : 14; + 680 : 22; + 681 : 41; + 682 : 00; + 683 : 00; + 684 : 00; + 685 : 00; + 686 : 00; + 687 : 00; + 688 : 00; + 689 : 00; + 690 : 00; + 691 : 08; + 692 : 08; + 693 : 08; + 694 : 7F; + 695 : 08; + 696 : 08; + 697 : 08; + 698 : 00; + 699 : 00; + 700 : 00; + 701 : 00; + 702 : 00; + 703 : 00; + 704 : 00; + 705 : 00; + 706 : 00; + 707 : 00; + 708 : 00; + 709 : 00; + 710 : 00; + 711 : 00; + 712 : 00; + 713 : 00; + 714 : 18; + 715 : 18; + 716 : 10; + 717 : 20; + 718 : 40; + 719 : 00; + 720 : 00; + 721 : 00; + 722 : 00; + 723 : 00; + 724 : 00; + 725 : 00; + 726 : 7F; + 727 : 00; + 728 : 00; + 729 : 00; + 730 : 00; + 731 : 00; + 732 : 00; + 733 : 00; + 734 : 00; + 735 : 00; + 736 : 00; + 737 : 00; + 738 : 00; + 739 : 00; + 740 : 00; + 741 : 00; + 742 : 00; + 743 : 00; + 744 : 00; + 745 : 00; + 746 : 18; + 747 : 18; + 748 : 00; + 749 : 00; + 750 : 00; + 751 : 00; + 752 : 00; + 753 : 01; + 754 : 01; + 755 : 01; + 756 : 02; + 757 : 04; + 758 : 08; + 759 : 10; + 760 : 20; + 761 : 40; + 762 : 40; + 763 : 40; + 764 : 00; + 765 : 00; + 766 : 00; + 767 : 00; + 768 : 00; + 769 : 08; + 770 : 14; + 771 : 22; + 772 : 41; + 773 : 41; + 774 : 41; + 775 : 41; + 776 : 41; + 777 : 22; + 778 : 14; + 779 : 08; + 780 : 00; + 781 : 00; + 782 : 00; + 783 : 00; + 784 : 00; + 785 : 08; + 786 : 18; + 787 : 28; + 788 : 08; + 789 : 08; + 790 : 08; + 791 : 08; + 792 : 08; + 793 : 08; + 794 : 08; + 795 : 3E; + 796 : 00; + 797 : 00; + 798 : 00; + 799 : 00; + 800 : 00; + 801 : 3C; + 802 : 42; + 803 : 41; + 804 : 01; + 805 : 02; + 806 : 04; + 807 : 08; + 808 : 10; + 809 : 20; + 810 : 40; + 811 : 7F; + 812 : 00; + 813 : 00; + 814 : 00; + 815 : 00; + 816 : 00; + 817 : 3E; + 818 : 41; + 819 : 01; + 820 : 01; + 821 : 01; + 822 : 0E; + 823 : 01; + 824 : 01; + 825 : 01; + 826 : 41; + 827 : 3E; + 828 : 00; + 829 : 00; + 830 : 00; + 831 : 00; + 832 : 00; + 833 : 02; + 834 : 06; + 835 : 0A; + 836 : 12; + 837 : 22; + 838 : 7F; + 839 : 02; + 840 : 02; + 841 : 02; + 842 : 02; + 843 : 02; + 844 : 00; + 845 : 00; + 846 : 00; + 847 : 00; + 848 : 00; + 849 : 7F; + 850 : 40; + 851 : 40; + 852 : 40; + 853 : 40; + 854 : 5E; + 855 : 61; + 856 : 01; + 857 : 01; + 858 : 41; + 859 : 3E; + 860 : 00; + 861 : 00; + 862 : 00; + 863 : 00; + 864 : 00; + 865 : 1E; + 866 : 21; + 867 : 40; + 868 : 40; + 869 : 40; + 870 : 5E; + 871 : 61; + 872 : 41; + 873 : 41; + 874 : 21; + 875 : 1E; + 876 : 00; + 877 : 00; + 878 : 00; + 879 : 00; + 880 : 00; + 881 : 7F; + 882 : 01; + 883 : 01; + 884 : 01; + 885 : 02; + 886 : 04; + 887 : 08; + 888 : 10; + 889 : 20; + 890 : 40; + 891 : 40; + 892 : 00; + 893 : 00; + 894 : 00; + 895 : 00; + 896 : 00; + 897 : 3E; + 898 : 41; + 899 : 41; + 900 : 41; + 901 : 41; + 902 : 3E; + 903 : 41; + 904 : 41; + 905 : 41; + 906 : 41; + 907 : 3E; + 908 : 00; + 909 : 00; + 910 : 00; + 911 : 00; + 912 : 00; + 913 : 3C; + 914 : 42; + 915 : 41; + 916 : 41; + 917 : 43; + 918 : 3D; + 919 : 01; + 920 : 01; + 921 : 01; + 922 : 42; + 923 : 3C; + 924 : 00; + 925 : 00; + 926 : 00; + 927 : 00; + 928 : 00; + 929 : 00; + 930 : 18; + 931 : 18; + 932 : 18; + 933 : 00; + 934 : 00; + 935 : 00; + 936 : 18; + 937 : 18; + 938 : 18; + 939 : 00; + 940 : 00; + 941 : 00; + 942 : 00; + 943 : 00; + 944 : 00; + 945 : 00; + 946 : 18; + 947 : 18; + 948 : 18; + 949 : 00; + 950 : 00; + 951 : 00; + 952 : 18; + 953 : 18; + 954 : 18; + 955 : 10; + 956 : 20; + 957 : 40; + 958 : 00; + 959 : 00; + 960 : 00; + 961 : 01; + 962 : 02; + 963 : 04; + 964 : 08; + 965 : 10; + 966 : 20; + 967 : 10; + 968 : 08; + 969 : 04; + 970 : 02; + 971 : 01; + 972 : 00; + 973 : 00; + 974 : 00; + 975 : 00; + 976 : 00; + 977 : 00; + 978 : 00; + 979 : 00; + 980 : 7F; + 981 : 00; + 982 : 00; + 983 : 7F; + 984 : 00; + 985 : 00; + 986 : 00; + 987 : 00; + 988 : 00; + 989 : 00; + 990 : 00; + 991 : 00; + 992 : 00; + 993 : 40; + 994 : 20; + 995 : 10; + 996 : 08; + 997 : 04; + 998 : 02; + 999 : 04; + 1000 : 08; + 1001 : 10; + 1002 : 20; + 1003 : 40; + 1004 : 00; + 1005 : 00; + 1006 : 00; + 1007 : 00; + 1008 : 00; + 1009 : 3E; + 1010 : 41; + 1011 : 01; + 1012 : 01; + 1013 : 06; + 1014 : 08; + 1015 : 08; + 1016 : 08; + 1017 : 00; + 1018 : 08; + 1019 : 08; + 1020 : 00; + 1021 : 00; + 1022 : 00; + 1023 : 00; + 1024 : 00; + 1025 : 1C; + 1026 : 22; + 1027 : 41; + 1028 : 45; + 1029 : 49; + 1030 : 4E; + 1031 : 40; + 1032 : 40; + 1033 : 41; + 1034 : 22; + 1035 : 1C; + 1036 : 00; + 1037 : 00; + 1038 : 00; + 1039 : 00; + 1040 : 00; + 1041 : 08; + 1042 : 14; + 1043 : 22; + 1044 : 41; + 1045 : 41; + 1046 : 7F; + 1047 : 41; + 1048 : 41; + 1049 : 41; + 1050 : 41; + 1051 : 41; + 1052 : 00; + 1053 : 00; + 1054 : 00; + 1055 : 00; + 1056 : 00; + 1057 : 7E; + 1058 : 21; + 1059 : 21; + 1060 : 21; + 1061 : 21; + 1062 : 3E; + 1063 : 21; + 1064 : 21; + 1065 : 21; + 1066 : 21; + 1067 : 7E; + 1068 : 00; + 1069 : 00; + 1070 : 00; + 1071 : 00; + 1072 : 00; + 1073 : 1E; + 1074 : 21; + 1075 : 41; + 1076 : 40; + 1077 : 40; + 1078 : 40; + 1079 : 40; + 1080 : 40; + 1081 : 41; + 1082 : 21; + 1083 : 1E; + 1084 : 00; + 1085 : 00; + 1086 : 00; + 1087 : 00; + 1088 : 00; + 1089 : 7C; + 1090 : 22; + 1091 : 21; + 1092 : 21; + 1093 : 21; + 1094 : 21; + 1095 : 21; + 1096 : 21; + 1097 : 21; + 1098 : 22; + 1099 : 7C; + 1100 : 00; + 1101 : 00; + 1102 : 00; + 1103 : 00; + 1104 : 00; + 1105 : 7F; + 1106 : 40; + 1107 : 40; + 1108 : 40; + 1109 : 40; + 1110 : 7C; + 1111 : 40; + 1112 : 40; + 1113 : 40; + 1114 : 40; + 1115 : 7F; + 1116 : 00; + 1117 : 00; + 1118 : 00; + 1119 : 00; + 1120 : 00; + 1121 : 7F; + 1122 : 40; + 1123 : 40; + 1124 : 40; + 1125 : 40; + 1126 : 7C; + 1127 : 40; + 1128 : 40; + 1129 : 40; + 1130 : 40; + 1131 : 40; + 1132 : 00; + 1133 : 00; + 1134 : 00; + 1135 : 00; + 1136 : 00; + 1137 : 1E; + 1138 : 21; + 1139 : 40; + 1140 : 40; + 1141 : 40; + 1142 : 47; + 1143 : 41; + 1144 : 41; + 1145 : 41; + 1146 : 21; + 1147 : 1E; + 1148 : 00; + 1149 : 00; + 1150 : 00; + 1151 : 00; + 1152 : 00; + 1153 : 41; + 1154 : 41; + 1155 : 41; + 1156 : 41; + 1157 : 41; + 1158 : 7F; + 1159 : 41; + 1160 : 41; + 1161 : 41; + 1162 : 41; + 1163 : 41; + 1164 : 00; + 1165 : 00; + 1166 : 00; + 1167 : 00; + 1168 : 00; + 1169 : 3E; + 1170 : 08; + 1171 : 08; + 1172 : 08; + 1173 : 08; + 1174 : 08; + 1175 : 08; + 1176 : 08; + 1177 : 08; + 1178 : 08; + 1179 : 3E; + 1180 : 00; + 1181 : 00; + 1182 : 00; + 1183 : 00; + 1184 : 00; + 1185 : 07; + 1186 : 02; + 1187 : 02; + 1188 : 02; + 1189 : 02; + 1190 : 02; + 1191 : 02; + 1192 : 02; + 1193 : 02; + 1194 : 42; + 1195 : 3C; + 1196 : 00; + 1197 : 00; + 1198 : 00; + 1199 : 00; + 1200 : 00; + 1201 : 41; + 1202 : 42; + 1203 : 44; + 1204 : 48; + 1205 : 50; + 1206 : 60; + 1207 : 50; + 1208 : 48; + 1209 : 44; + 1210 : 42; + 1211 : 41; + 1212 : 00; + 1213 : 00; + 1214 : 00; + 1215 : 00; + 1216 : 00; + 1217 : 40; + 1218 : 40; + 1219 : 40; + 1220 : 40; + 1221 : 40; + 1222 : 40; + 1223 : 40; + 1224 : 40; + 1225 : 40; + 1226 : 40; + 1227 : 7F; + 1228 : 00; + 1229 : 00; + 1230 : 00; + 1231 : 00; + 1232 : 00; + 1233 : 41; + 1234 : 63; + 1235 : 55; + 1236 : 49; + 1237 : 49; + 1238 : 41; + 1239 : 41; + 1240 : 41; + 1241 : 41; + 1242 : 41; + 1243 : 41; + 1244 : 00; + 1245 : 00; + 1246 : 00; + 1247 : 00; + 1248 : 00; + 1249 : 41; + 1250 : 41; + 1251 : 61; + 1252 : 51; + 1253 : 49; + 1254 : 49; + 1255 : 45; + 1256 : 43; + 1257 : 41; + 1258 : 41; + 1259 : 41; + 1260 : 00; + 1261 : 00; + 1262 : 00; + 1263 : 00; + 1264 : 00; + 1265 : 3E; + 1266 : 41; + 1267 : 41; + 1268 : 41; + 1269 : 41; + 1270 : 41; + 1271 : 41; + 1272 : 41; + 1273 : 41; + 1274 : 41; + 1275 : 3E; + 1276 : 00; + 1277 : 00; + 1278 : 00; + 1279 : 00; + 1280 : 00; + 1281 : 7E; + 1282 : 41; + 1283 : 41; + 1284 : 41; + 1285 : 41; + 1286 : 7E; + 1287 : 40; + 1288 : 40; + 1289 : 40; + 1290 : 40; + 1291 : 40; + 1292 : 00; + 1293 : 00; + 1294 : 00; + 1295 : 00; + 1296 : 00; + 1297 : 3E; + 1298 : 41; + 1299 : 41; + 1300 : 41; + 1301 : 41; + 1302 : 41; + 1303 : 41; + 1304 : 49; + 1305 : 45; + 1306 : 42; + 1307 : 3D; + 1308 : 00; + 1309 : 00; + 1310 : 00; + 1311 : 00; + 1312 : 00; + 1313 : 7E; + 1314 : 41; + 1315 : 41; + 1316 : 41; + 1317 : 41; + 1318 : 7E; + 1319 : 50; + 1320 : 48; + 1321 : 44; + 1322 : 42; + 1323 : 41; + 1324 : 00; + 1325 : 00; + 1326 : 00; + 1327 : 00; + 1328 : 00; + 1329 : 3E; + 1330 : 41; + 1331 : 40; + 1332 : 40; + 1333 : 40; + 1334 : 3E; + 1335 : 01; + 1336 : 01; + 1337 : 01; + 1338 : 41; + 1339 : 3E; + 1340 : 00; + 1341 : 00; + 1342 : 00; + 1343 : 00; + 1344 : 00; + 1345 : 7F; + 1346 : 08; + 1347 : 08; + 1348 : 08; + 1349 : 08; + 1350 : 08; + 1351 : 08; + 1352 : 08; + 1353 : 08; + 1354 : 08; + 1355 : 08; + 1356 : 00; + 1357 : 00; + 1358 : 00; + 1359 : 00; + 1360 : 00; + 1361 : 41; + 1362 : 41; + 1363 : 41; + 1364 : 41; + 1365 : 41; + 1366 : 41; + 1367 : 41; + 1368 : 41; + 1369 : 41; + 1370 : 41; + 1371 : 3E; + 1372 : 00; + 1373 : 00; + 1374 : 00; + 1375 : 00; + 1376 : 00; + 1377 : 41; + 1378 : 41; + 1379 : 41; + 1380 : 22; + 1381 : 22; + 1382 : 22; + 1383 : 14; + 1384 : 14; + 1385 : 14; + 1386 : 08; + 1387 : 08; + 1388 : 00; + 1389 : 00; + 1390 : 00; + 1391 : 00; + 1392 : 00; + 1393 : 41; + 1394 : 41; + 1395 : 41; + 1396 : 41; + 1397 : 41; + 1398 : 49; + 1399 : 49; + 1400 : 55; + 1401 : 55; + 1402 : 22; + 1403 : 22; + 1404 : 00; + 1405 : 00; + 1406 : 00; + 1407 : 00; + 1408 : 00; + 1409 : 41; + 1410 : 41; + 1411 : 41; + 1412 : 22; + 1413 : 14; + 1414 : 08; + 1415 : 14; + 1416 : 22; + 1417 : 41; + 1418 : 41; + 1419 : 41; + 1420 : 00; + 1421 : 00; + 1422 : 00; + 1423 : 00; + 1424 : 00; + 1425 : 41; + 1426 : 41; + 1427 : 41; + 1428 : 22; + 1429 : 14; + 1430 : 08; + 1431 : 08; + 1432 : 08; + 1433 : 08; + 1434 : 08; + 1435 : 08; + 1436 : 00; + 1437 : 00; + 1438 : 00; + 1439 : 00; + 1440 : 00; + 1441 : 7F; + 1442 : 01; + 1443 : 01; + 1444 : 02; + 1445 : 04; + 1446 : 08; + 1447 : 10; + 1448 : 20; + 1449 : 40; + 1450 : 40; + 1451 : 7F; + 1452 : 00; + 1453 : 00; + 1454 : 00; + 1455 : 00; + 1456 : 00; + 1457 : 1E; + 1458 : 10; + 1459 : 10; + 1460 : 10; + 1461 : 10; + 1462 : 10; + 1463 : 10; + 1464 : 10; + 1465 : 10; + 1466 : 10; + 1467 : 1E; + 1468 : 00; + 1469 : 00; + 1470 : 00; + 1471 : 00; + 1472 : 00; + 1473 : 40; + 1474 : 40; + 1475 : 40; + 1476 : 20; + 1477 : 10; + 1478 : 08; + 1479 : 04; + 1480 : 02; + 1481 : 01; + 1482 : 01; + 1483 : 01; + 1484 : 00; + 1485 : 00; + 1486 : 00; + 1487 : 00; + 1488 : 00; + 1489 : 3C; + 1490 : 04; + 1491 : 04; + 1492 : 04; + 1493 : 04; + 1494 : 04; + 1495 : 04; + 1496 : 04; + 1497 : 04; + 1498 : 04; + 1499 : 3C; + 1500 : 00; + 1501 : 00; + 1502 : 00; + 1503 : 00; + 1504 : 00; + 1505 : 08; + 1506 : 14; + 1507 : 22; + 1508 : 41; + 1509 : 00; + 1510 : 00; + 1511 : 00; + 1512 : 00; + 1513 : 00; + 1514 : 00; + 1515 : 00; + 1516 : 00; + 1517 : 00; + 1518 : 00; + 1519 : 00; + 1520 : 00; + 1521 : 00; + 1522 : 00; + 1523 : 00; + 1524 : 00; + 1525 : 00; + 1526 : 00; + 1527 : 00; + 1528 : 00; + 1529 : 00; + 1530 : 00; + 1531 : 7F; + 1532 : 00; + 1533 : 00; + 1534 : 00; + 1535 : 00; + 1536 : 00; + 1537 : 18; + 1538 : 08; + 1539 : 04; + 1540 : 02; + 1541 : 00; + 1542 : 00; + 1543 : 00; + 1544 : 00; + 1545 : 00; + 1546 : 00; + 1547 : 00; + 1548 : 00; + 1549 : 00; + 1550 : 00; + 1551 : 00; + 1552 : 00; + 1553 : 00; + 1554 : 00; + 1555 : 00; + 1556 : 00; + 1557 : 3E; + 1558 : 01; + 1559 : 01; + 1560 : 3F; + 1561 : 41; + 1562 : 41; + 1563 : 3F; + 1564 : 00; + 1565 : 00; + 1566 : 00; + 1567 : 00; + 1568 : 00; + 1569 : 40; + 1570 : 40; + 1571 : 40; + 1572 : 40; + 1573 : 5E; + 1574 : 61; + 1575 : 41; + 1576 : 61; + 1577 : 61; + 1578 : 61; + 1579 : 5E; + 1580 : 00; + 1581 : 00; + 1582 : 00; + 1583 : 00; + 1584 : 00; + 1585 : 00; + 1586 : 00; + 1587 : 00; + 1588 : 00; + 1589 : 1E; + 1590 : 21; + 1591 : 40; + 1592 : 40; + 1593 : 40; + 1594 : 21; + 1595 : 1E; + 1596 : 00; + 1597 : 00; + 1598 : 00; + 1599 : 00; + 1600 : 00; + 1601 : 01; + 1602 : 01; + 1603 : 01; + 1604 : 01; + 1605 : 3D; + 1606 : 43; + 1607 : 41; + 1608 : 41; + 1609 : 41; + 1610 : 43; + 1611 : 3D; + 1612 : 00; + 1613 : 00; + 1614 : 00; + 1615 : 00; + 1616 : 00; + 1617 : 00; + 1618 : 00; + 1619 : 00; + 1620 : 00; + 1621 : 3E; + 1622 : 41; + 1623 : 41; + 1624 : 7F; + 1625 : 40; + 1626 : 40; + 1627 : 3E; + 1628 : 00; + 1629 : 00; + 1630 : 00; + 1631 : 00; + 1632 : 00; + 1633 : 0E; + 1634 : 11; + 1635 : 10; + 1636 : 10; + 1637 : 7C; + 1638 : 10; + 1639 : 10; + 1640 : 10; + 1641 : 10; + 1642 : 10; + 1643 : 10; + 1644 : 00; + 1645 : 00; + 1646 : 00; + 1647 : 00; + 1648 : 00; + 1649 : 00; + 1650 : 00; + 1651 : 00; + 1652 : 01; + 1653 : 3D; + 1654 : 42; + 1655 : 42; + 1656 : 42; + 1657 : 42; + 1658 : 3E; + 1659 : 02; + 1660 : 02; + 1661 : 42; + 1662 : 3C; + 1663 : 00; + 1664 : 00; + 1665 : 40; + 1666 : 40; + 1667 : 40; + 1668 : 40; + 1669 : 5E; + 1670 : 61; + 1671 : 41; + 1672 : 41; + 1673 : 41; + 1674 : 41; + 1675 : 41; + 1676 : 00; + 1677 : 00; + 1678 : 00; + 1679 : 00; + 1680 : 00; + 1681 : 08; + 1682 : 08; + 1683 : 00; + 1684 : 00; + 1685 : 18; + 1686 : 08; + 1687 : 08; + 1688 : 08; + 1689 : 08; + 1690 : 08; + 1691 : 3E; + 1692 : 00; + 1693 : 00; + 1694 : 00; + 1695 : 00; + 1696 : 00; + 1697 : 02; + 1698 : 02; + 1699 : 00; + 1700 : 00; + 1701 : 02; + 1702 : 02; + 1703 : 02; + 1704 : 02; + 1705 : 02; + 1706 : 02; + 1707 : 02; + 1708 : 02; + 1709 : 42; + 1710 : 3C; + 1711 : 00; + 1712 : 00; + 1713 : 40; + 1714 : 40; + 1715 : 40; + 1716 : 40; + 1717 : 41; + 1718 : 44; + 1719 : 48; + 1720 : 70; + 1721 : 48; + 1722 : 44; + 1723 : 41; + 1724 : 00; + 1725 : 00; + 1726 : 00; + 1727 : 00; + 1728 : 00; + 1729 : 18; + 1730 : 08; + 1731 : 08; + 1732 : 08; + 1733 : 08; + 1734 : 08; + 1735 : 08; + 1736 : 08; + 1737 : 08; + 1738 : 08; + 1739 : 1C; + 1740 : 00; + 1741 : 00; + 1742 : 00; + 1743 : 00; + 1744 : 00; + 1745 : 00; + 1746 : 00; + 1747 : 00; + 1748 : 00; + 1749 : 22; + 1750 : 55; + 1751 : 49; + 1752 : 49; + 1753 : 41; + 1754 : 41; + 1755 : 41; + 1756 : 00; + 1757 : 00; + 1758 : 00; + 1759 : 00; + 1760 : 00; + 1761 : 00; + 1762 : 00; + 1763 : 00; + 1764 : 00; + 1765 : 5E; + 1766 : 61; + 1767 : 41; + 1768 : 41; + 1769 : 41; + 1770 : 41; + 1771 : 41; + 1772 : 00; + 1773 : 00; + 1774 : 00; + 1775 : 00; + 1776 : 00; + 1777 : 00; + 1778 : 00; + 1779 : 00; + 1780 : 00; + 1781 : 3E; + 1782 : 41; + 1783 : 41; + 1784 : 41; + 1785 : 41; + 1786 : 41; + 1787 : 3E; + 1788 : 00; + 1789 : 00; + 1790 : 00; + 1791 : 00; + 1792 : 00; + 1793 : 00; + 1794 : 00; + 1795 : 00; + 1796 : 00; + 1797 : 5E; + 1798 : 61; + 1799 : 61; + 1800 : 61; + 1801 : 61; + 1802 : 5E; + 1803 : 40; + 1804 : 40; + 1805 : 40; + 1806 : 40; + 1807 : 00; + 1808 : 00; + 1809 : 00; + 1810 : 00; + 1811 : 00; + 1812 : 00; + 1813 : 3D; + 1814 : 43; + 1815 : 43; + 1816 : 43; + 1817 : 43; + 1818 : 3D; + 1819 : 01; + 1820 : 01; + 1821 : 01; + 1822 : 01; + 1823 : 00; + 1824 : 00; + 1825 : 00; + 1826 : 00; + 1827 : 00; + 1828 : 00; + 1829 : 4E; + 1830 : 31; + 1831 : 20; + 1832 : 20; + 1833 : 20; + 1834 : 20; + 1835 : 20; + 1836 : 00; + 1837 : 00; + 1838 : 00; + 1839 : 00; + 1840 : 00; + 1841 : 00; + 1842 : 00; + 1843 : 00; + 1844 : 00; + 1845 : 3E; + 1846 : 40; + 1847 : 40; + 1848 : 3E; + 1849 : 01; + 1850 : 01; + 1851 : 3E; + 1852 : 00; + 1853 : 00; + 1854 : 00; + 1855 : 00; + 1856 : 00; + 1857 : 10; + 1858 : 10; + 1859 : 10; + 1860 : 10; + 1861 : 7C; + 1862 : 10; + 1863 : 10; + 1864 : 10; + 1865 : 10; + 1866 : 12; + 1867 : 0C; + 1868 : 00; + 1869 : 00; + 1870 : 00; + 1871 : 00; + 1872 : 00; + 1873 : 00; + 1874 : 00; + 1875 : 00; + 1876 : 00; + 1877 : 42; + 1878 : 42; + 1879 : 42; + 1880 : 42; + 1881 : 42; + 1882 : 42; + 1883 : 3D; + 1884 : 00; + 1885 : 00; + 1886 : 00; + 1887 : 00; + 1888 : 00; + 1889 : 00; + 1890 : 00; + 1891 : 00; + 1892 : 00; + 1893 : 41; + 1894 : 41; + 1895 : 22; + 1896 : 22; + 1897 : 14; + 1898 : 14; + 1899 : 08; + 1900 : 00; + 1901 : 00; + 1902 : 00; + 1903 : 00; + 1904 : 00; + 1905 : 00; + 1906 : 00; + 1907 : 00; + 1908 : 00; + 1909 : 41; + 1910 : 41; + 1911 : 41; + 1912 : 49; + 1913 : 49; + 1914 : 55; + 1915 : 22; + 1916 : 00; + 1917 : 00; + 1918 : 00; + 1919 : 00; + 1920 : 00; + 1921 : 00; + 1922 : 00; + 1923 : 00; + 1924 : 00; + 1925 : 41; + 1926 : 22; + 1927 : 14; + 1928 : 08; + 1929 : 14; + 1930 : 22; + 1931 : 41; + 1932 : 00; + 1933 : 00; + 1934 : 00; + 1935 : 00; + 1936 : 00; + 1937 : 00; + 1938 : 00; + 1939 : 00; + 1940 : 00; + 1941 : 42; + 1942 : 42; + 1943 : 42; + 1944 : 42; + 1945 : 46; + 1946 : 3A; + 1947 : 02; + 1948 : 02; + 1949 : 42; + 1950 : 3C; + 1951 : 00; + 1952 : 00; + 1953 : 00; + 1954 : 00; + 1955 : 00; + 1956 : 00; + 1957 : 7F; + 1958 : 02; + 1959 : 04; + 1960 : 08; + 1961 : 10; + 1962 : 20; + 1963 : 7F; + 1964 : 00; + 1965 : 00; + 1966 : 00; + 1967 : 00; + 1968 : 00; + 1969 : 07; + 1970 : 08; + 1971 : 08; + 1972 : 08; + 1973 : 10; + 1974 : 20; + 1975 : 10; + 1976 : 08; + 1977 : 08; + 1978 : 08; + 1979 : 07; + 1980 : 00; + 1981 : 00; + 1982 : 00; + 1983 : 00; + 1984 : 00; + 1985 : 08; + 1986 : 08; + 1987 : 08; + 1988 : 08; + 1989 : 08; + 1990 : 00; + 1991 : 08; + 1992 : 08; + 1993 : 08; + 1994 : 08; + 1995 : 08; + 1996 : 00; + 1997 : 00; + 1998 : 00; + 1999 : 00; + 2000 : 00; + 2001 : 70; + 2002 : 08; + 2003 : 08; + 2004 : 08; + 2005 : 04; + 2006 : 02; + 2007 : 04; + 2008 : 08; + 2009 : 08; + 2010 : 08; + 2011 : 70; + 2012 : 00; + 2013 : 00; + 2014 : 00; + 2015 : 00; + 2016 : 00; + 2017 : 31; + 2018 : 49; + 2019 : 46; + 2020 : 00; + 2021 : 00; + 2022 : 00; + 2023 : 00; + 2024 : 00; + 2025 : 00; + 2026 : 00; + 2027 : 00; + 2028 : 00; + 2029 : 00; + 2030 : 00; + 2031 : 00; + 2032 : 00; + 2033 : 49; + 2034 : 22; + 2035 : 49; + 2036 : 22; + 2037 : 49; + 2038 : 22; + 2039 : 49; + 2040 : 22; + 2041 : 49; + 2042 : 22; + 2043 : 49; + 2044 : 00; + 2045 : 00; + 2046 : 00; + 2047 : 00; +END; Index: trunk/rtl/Cyclone2/pll_inst.vhd =================================================================== --- trunk/rtl/Cyclone2/pll_inst.vhd (nonexistent) +++ trunk/rtl/Cyclone2/pll_inst.vhd (revision 116) @@ -0,0 +1,8 @@ +pll_inst : pll PORT MAP ( + areset => areset_sig, + inclk0 => inclk0_sig, + c0 => c0_sig, + c1 => c1_sig, + c2 => c2_sig, + locked => locked_sig + ); Index: trunk/rtl/Cyclone2/wb_rom.vhd =================================================================== --- trunk/rtl/Cyclone2/wb_rom.vhd (nonexistent) +++ trunk/rtl/Cyclone2/wb_rom.vhd (revision 116) @@ -0,0 +1,82 @@ +--===========================================================================-- +-- +-- S Y N T H E Z I A B L E ROM / WISHBONE interface +-- +-- www.OpenCores.Org - August 2003 +-- This core adheres to the GNU public license +-- +-- File name : wb_rom.vhd +-- +-- Purpose : Implements a WISHBONE compatble interface +-- for an External ROM +-- +-- Dependencies : ieee.Std_Logic_1164 +-- ieee.std_logic_unsigned +-- work.std_logic_arith (MTI's mti_std_logic_arith.vhd) +-- +-- Author : Michael L. Hasenfratz Sr. +-- +--===========================================================================---- +-- +-- Revision History: +-- +-- Date: Revision Author +--===========================================================================-- +-- 5 Aug 2003 0.1 Michael L. Hasenfratz Sr. +-- Created +-- + +library ieee; +use ieee.std_logic_1164.all; +use ieee.std_logic_unsigned.all; +use ieee.std_logic_arith.all; + +entity wb_rom is + generic ( + ROM_WIDTH : positive range 1 to 64 := 8; -- data bits WIDE + ROM_WIDTHAD : positive range 1 to 32 := 8 -- address bits; + ); + port ( + DAT_O : out std_logic_vector(ROM_WIDTH-1 downto 0); + ADR_I : in std_logic_vector(ROM_WIDTHAD-1 downto 0); + SEL_I : in std_logic_vector((ROM_WIDTH/8)-1 downto 0); + STB_I : in std_logic; -- VMA (Valid Memory Access) + CYC_I : in std_logic; -- CYC in progress + ACK_O : out std_logic; -- Data ready + + rom_adr : out std_logic_vector(ROM_WIDTHAD-1 downto 0); + rom_dat : in std_logic_vector(ROM_WIDTH-1 downto 0); + rom_csn : out std_logic; -- ROM Chip Select + rom_oen : out std_logic -- ROM Output Enable + ); +end; + +architecture bhv_wb_rom of wb_rom is + + signal sel : std_logic; -- internal SELECT + +begin + +--------------------------------------------------------- +-- Interconnections +--------------------------------------------------------- +sel0 : process(SEL_I, CYC_I, STB_I) + variable isel : std_logic; + begin + isel := '0'; -- reset 'or' + -- look for ANY selects + for idx in SEL_I'RANGE loop + isel := isel or SEL_I(idx); + end loop; + sel <= isel and CYC_I; + end process; + + rom_adr <= ADR_I; + rom_csn <= not(sel); + rom_oen <= not(sel) and STB_I; + + DAT_O <= rom_dat; + ACK_O <= sel and STB_I; + +end bhv_wb_rom; + Index: trunk/rtl/Cyclone2/pll.cmp =================================================================== --- trunk/rtl/Cyclone2/pll.cmp (nonexistent) +++ trunk/rtl/Cyclone2/pll.cmp (revision 116) @@ -0,0 +1,26 @@ +--Copyright (C) 1991-2010 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. + + +component pll + PORT + ( + areset : IN STD_LOGIC := '0'; + inclk0 : IN STD_LOGIC := '0'; + c0 : OUT STD_LOGIC ; + c1 : OUT STD_LOGIC ; + c2 : OUT STD_LOGIC ; + locked : OUT STD_LOGIC + ); +end component; Index: trunk/rtl/Cyclone2/pll.vhd =================================================================== --- trunk/rtl/Cyclone2/pll.vhd (nonexistent) +++ trunk/rtl/Cyclone2/pll.vhd (revision 116) @@ -0,0 +1,429 @@ +-- megafunction wizard: %ALTPLL% +-- GENERATION: STANDARD +-- VERSION: WM1.0 +-- MODULE: altpll + +-- ============================================================ +-- File Name: pll.vhd +-- Megafunction Name(s): +-- altpll +-- +-- Simulation Library Files(s): +-- altera_mf +-- ============================================================ +-- ************************************************************ +-- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! +-- +-- 9.1 Build 304 01/25/2010 SP 1 SJ Web Edition +-- ************************************************************ + + +--Copyright (C) 1991-2010 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. + + +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.all; + +ENTITY pll IS + PORT + ( + areset : IN STD_LOGIC := '0'; + inclk0 : IN STD_LOGIC := '0'; + c0 : OUT STD_LOGIC ; + c1 : OUT STD_LOGIC ; + c2 : OUT STD_LOGIC ; + locked : OUT STD_LOGIC + ); +END pll; + + +ARCHITECTURE SYN OF pll IS + + SIGNAL sub_wire0 : STD_LOGIC_VECTOR (5 DOWNTO 0); + SIGNAL sub_wire1 : STD_LOGIC ; + SIGNAL sub_wire2 : STD_LOGIC ; + SIGNAL sub_wire3 : STD_LOGIC ; + SIGNAL sub_wire4 : STD_LOGIC ; + SIGNAL sub_wire5 : STD_LOGIC ; + SIGNAL sub_wire6 : STD_LOGIC_VECTOR (1 DOWNTO 0); + SIGNAL sub_wire7_bv : BIT_VECTOR (0 DOWNTO 0); + SIGNAL sub_wire7 : STD_LOGIC_VECTOR (0 DOWNTO 0); + + + + COMPONENT altpll + GENERIC ( + clk0_divide_by : NATURAL; + clk0_duty_cycle : NATURAL; + clk0_multiply_by : NATURAL; + clk0_phase_shift : STRING; + clk1_divide_by : NATURAL; + clk1_duty_cycle : NATURAL; + clk1_multiply_by : NATURAL; + clk1_phase_shift : STRING; + clk2_divide_by : NATURAL; + clk2_duty_cycle : NATURAL; + clk2_multiply_by : NATURAL; + clk2_phase_shift : STRING; + compensate_clock : STRING; + gate_lock_signal : STRING; + inclk0_input_frequency : NATURAL; + intended_device_family : STRING; + invalid_lock_multiplier : NATURAL; + lpm_hint : STRING; + lpm_type : STRING; + operation_mode : STRING; + port_activeclock : STRING; + port_areset : STRING; + port_clkbad0 : STRING; + port_clkbad1 : STRING; + port_clkloss : STRING; + port_clkswitch : STRING; + port_configupdate : STRING; + port_fbin : STRING; + port_inclk0 : STRING; + port_inclk1 : STRING; + port_locked : STRING; + port_pfdena : STRING; + port_phasecounterselect : STRING; + port_phasedone : STRING; + port_phasestep : STRING; + port_phaseupdown : STRING; + port_pllena : STRING; + port_scanaclr : STRING; + port_scanclk : STRING; + port_scanclkena : STRING; + port_scandata : STRING; + port_scandataout : STRING; + port_scandone : STRING; + port_scanread : STRING; + port_scanwrite : STRING; + port_clk0 : STRING; + port_clk1 : STRING; + port_clk2 : STRING; + port_clk3 : STRING; + port_clk4 : STRING; + port_clk5 : STRING; + port_clkena0 : STRING; + port_clkena1 : STRING; + port_clkena2 : STRING; + port_clkena3 : STRING; + port_clkena4 : STRING; + port_clkena5 : STRING; + port_extclk0 : STRING; + port_extclk1 : STRING; + port_extclk2 : STRING; + port_extclk3 : STRING; + valid_lock_multiplier : NATURAL + ); + PORT ( + inclk : IN STD_LOGIC_VECTOR (1 DOWNTO 0); + locked : OUT STD_LOGIC ; + areset : IN STD_LOGIC ; + clk : OUT STD_LOGIC_VECTOR (5 DOWNTO 0) + ); + END COMPONENT; + +BEGIN + sub_wire7_bv(0 DOWNTO 0) <= "0"; + sub_wire7 <= To_stdlogicvector(sub_wire7_bv); + sub_wire3 <= sub_wire0(2); + sub_wire2 <= sub_wire0(1); + sub_wire1 <= sub_wire0(0); + c0 <= sub_wire1; + c1 <= sub_wire2; + c2 <= sub_wire3; + locked <= sub_wire4; + sub_wire5 <= inclk0; + sub_wire6 <= sub_wire7(0 DOWNTO 0) & sub_wire5; + + altpll_component : altpll + GENERIC MAP ( + clk0_divide_by => 1, + clk0_duty_cycle => 50, + clk0_multiply_by => 1, + clk0_phase_shift => "0", + clk1_divide_by => 2, + clk1_duty_cycle => 50, + clk1_multiply_by => 1, + clk1_phase_shift => "0", + clk2_divide_by => 2, + clk2_duty_cycle => 50, + clk2_multiply_by => 1, + clk2_phase_shift => "0", + compensate_clock => "CLK0", + gate_lock_signal => "NO", + inclk0_input_frequency => 20000, + intended_device_family => "Cyclone II", + invalid_lock_multiplier => 5, + lpm_hint => "CBX_MODULE_PREFIX=pll", + lpm_type => "altpll", + operation_mode => "NORMAL", + port_activeclock => "PORT_UNUSED", + port_areset => "PORT_USED", + port_clkbad0 => "PORT_UNUSED", + port_clkbad1 => "PORT_UNUSED", + port_clkloss => "PORT_UNUSED", + port_clkswitch => "PORT_UNUSED", + port_configupdate => "PORT_UNUSED", + port_fbin => "PORT_UNUSED", + port_inclk0 => "PORT_USED", + port_inclk1 => "PORT_UNUSED", + port_locked => "PORT_USED", + port_pfdena => "PORT_UNUSED", + port_phasecounterselect => "PORT_UNUSED", + port_phasedone => "PORT_UNUSED", + port_phasestep => "PORT_UNUSED", + port_phaseupdown => "PORT_UNUSED", + port_pllena => "PORT_UNUSED", + port_scanaclr => "PORT_UNUSED", + port_scanclk => "PORT_UNUSED", + port_scanclkena => "PORT_UNUSED", + port_scandata => "PORT_UNUSED", + port_scandataout => "PORT_UNUSED", + port_scandone => "PORT_UNUSED", + port_scanread => "PORT_UNUSED", + port_scanwrite => "PORT_UNUSED", + port_clk0 => "PORT_USED", + port_clk1 => "PORT_USED", + port_clk2 => "PORT_USED", + port_clk3 => "PORT_UNUSED", + port_clk4 => "PORT_UNUSED", + port_clk5 => "PORT_UNUSED", + port_clkena0 => "PORT_UNUSED", + port_clkena1 => "PORT_UNUSED", + port_clkena2 => "PORT_UNUSED", + port_clkena3 => "PORT_UNUSED", + port_clkena4 => "PORT_UNUSED", + port_clkena5 => "PORT_UNUSED", + port_extclk0 => "PORT_UNUSED", + port_extclk1 => "PORT_UNUSED", + port_extclk2 => "PORT_UNUSED", + port_extclk3 => "PORT_UNUSED", + valid_lock_multiplier => 1 + ) + PORT MAP ( + inclk => sub_wire6, + areset => areset, + clk => sub_wire0, + locked => sub_wire4 + ); + + + +END SYN; + +-- ============================================================ +-- CNX file retrieval info +-- ============================================================ +-- Retrieval info: PRIVATE: ACTIVECLK_CHECK STRING "0" +-- Retrieval info: PRIVATE: BANDWIDTH STRING "1.000" +-- Retrieval info: PRIVATE: BANDWIDTH_FEATURE_ENABLED STRING "0" +-- Retrieval info: PRIVATE: BANDWIDTH_FREQ_UNIT STRING "MHz" +-- Retrieval info: PRIVATE: BANDWIDTH_PRESET STRING "Low" +-- Retrieval info: PRIVATE: BANDWIDTH_USE_AUTO STRING "1" +-- Retrieval info: PRIVATE: BANDWIDTH_USE_CUSTOM STRING "0" +-- Retrieval info: PRIVATE: BANDWIDTH_USE_PRESET STRING "0" +-- Retrieval info: PRIVATE: CLKBAD_SWITCHOVER_CHECK STRING "0" +-- Retrieval info: PRIVATE: CLKLOSS_CHECK STRING "0" +-- Retrieval info: PRIVATE: CLKSWITCH_CHECK STRING "1" +-- Retrieval info: PRIVATE: CNX_NO_COMPENSATE_RADIO STRING "0" +-- Retrieval info: PRIVATE: CREATE_CLKBAD_CHECK STRING "0" +-- Retrieval info: PRIVATE: CREATE_INCLK1_CHECK STRING "0" +-- Retrieval info: PRIVATE: CUR_DEDICATED_CLK STRING "c0" +-- Retrieval info: PRIVATE: CUR_FBIN_CLK STRING "e0" +-- Retrieval info: PRIVATE: DEVICE_SPEED_GRADE STRING "Any" +-- Retrieval info: PRIVATE: DIV_FACTOR0 NUMERIC "1" +-- Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "1" +-- Retrieval info: PRIVATE: DIV_FACTOR2 NUMERIC "1" +-- Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" +-- Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000" +-- Retrieval info: PRIVATE: DUTY_CYCLE2 STRING "50.00000000" +-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "50.000000" +-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "25.000000" +-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE2 STRING "25.000000" +-- Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0" +-- Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0" +-- Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1" +-- Retrieval info: PRIVATE: GLOCKED_FEATURE_ENABLED STRING "1" +-- Retrieval info: PRIVATE: GLOCKED_MODE_CHECK STRING "0" +-- Retrieval info: PRIVATE: GLOCK_COUNTER_EDIT NUMERIC "1048575" +-- Retrieval info: PRIVATE: HAS_MANUAL_SWITCHOVER STRING "1" +-- Retrieval info: PRIVATE: INCLK0_FREQ_EDIT STRING "50.000" +-- Retrieval info: PRIVATE: INCLK0_FREQ_UNIT_COMBO STRING "MHz" +-- Retrieval info: PRIVATE: INCLK1_FREQ_EDIT STRING "100.000" +-- Retrieval info: PRIVATE: INCLK1_FREQ_EDIT_CHANGED STRING "1" +-- Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_CHANGED STRING "1" +-- Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_COMBO STRING "MHz" +-- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone II" +-- Retrieval info: PRIVATE: INT_FEEDBACK__MODE_RADIO STRING "1" +-- Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "1" +-- Retrieval info: PRIVATE: LONG_SCAN_RADIO STRING "1" +-- Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE STRING "300.000" +-- Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE_DIRTY NUMERIC "0" +-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT0 STRING "deg" +-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "deg" +-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT2 STRING "deg" +-- Retrieval info: PRIVATE: MIG_DEVICE_SPEED_GRADE STRING "Any" +-- Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0" +-- Retrieval info: PRIVATE: MIRROR_CLK1 STRING "0" +-- Retrieval info: PRIVATE: MIRROR_CLK2 STRING "0" +-- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "1" +-- Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "1" +-- Retrieval info: PRIVATE: MULT_FACTOR2 NUMERIC "1" +-- Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" +-- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "50.00000000" +-- Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "25.00000000" +-- Retrieval info: PRIVATE: OUTPUT_FREQ2 STRING "25.00000000" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "1" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "1" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE2 STRING "1" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT2 STRING "MHz" +-- Retrieval info: PRIVATE: PHASE_RECONFIG_FEATURE_ENABLED STRING "0" +-- Retrieval info: PRIVATE: PHASE_RECONFIG_INPUTS_CHECK STRING "0" +-- Retrieval info: PRIVATE: PHASE_SHIFT0 STRING "0.00000000" +-- Retrieval info: PRIVATE: PHASE_SHIFT1 STRING "0.00000000" +-- Retrieval info: PRIVATE: PHASE_SHIFT2 STRING "0.00000000" +-- Retrieval info: PRIVATE: PHASE_SHIFT_STEP_ENABLED_CHECK STRING "0" +-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg" +-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "deg" +-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT2 STRING "deg" +-- Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0" +-- Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "1" +-- Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1" +-- Retrieval info: PRIVATE: PLL_ENA_CHECK STRING "0" +-- Retrieval info: PRIVATE: PLL_ENHPLL_CHECK NUMERIC "0" +-- Retrieval info: PRIVATE: PLL_FASTPLL_CHECK NUMERIC "0" +-- Retrieval info: PRIVATE: PLL_FBMIMIC_CHECK STRING "0" +-- Retrieval info: PRIVATE: PLL_LVDS_PLL_CHECK NUMERIC "0" +-- Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0" +-- Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0" +-- Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0" +-- Retrieval info: PRIVATE: RECONFIG_FILE STRING "pll.mif" +-- Retrieval info: PRIVATE: SACN_INPUTS_CHECK STRING "0" +-- Retrieval info: PRIVATE: SCAN_FEATURE_ENABLED STRING "0" +-- Retrieval info: PRIVATE: SELF_RESET_LOCK_LOSS STRING "0" +-- Retrieval info: PRIVATE: SHORT_SCAN_RADIO STRING "0" +-- Retrieval info: PRIVATE: SPREAD_FEATURE_ENABLED STRING "0" +-- Retrieval info: PRIVATE: SPREAD_FREQ STRING "50.000" +-- Retrieval info: PRIVATE: SPREAD_FREQ_UNIT STRING "KHz" +-- Retrieval info: PRIVATE: SPREAD_PERCENT STRING "0.500" +-- Retrieval info: PRIVATE: SPREAD_USE STRING "0" +-- Retrieval info: PRIVATE: SRC_SYNCH_COMP_RADIO STRING "0" +-- Retrieval info: PRIVATE: STICKY_CLK0 STRING "1" +-- Retrieval info: PRIVATE: STICKY_CLK1 STRING "1" +-- Retrieval info: PRIVATE: STICKY_CLK2 STRING "1" +-- Retrieval info: PRIVATE: SWITCHOVER_COUNT_EDIT NUMERIC "1" +-- Retrieval info: PRIVATE: SWITCHOVER_FEATURE_ENABLED STRING "1" +-- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" +-- Retrieval info: PRIVATE: USE_CLK0 STRING "1" +-- Retrieval info: PRIVATE: USE_CLK1 STRING "1" +-- Retrieval info: PRIVATE: USE_CLK2 STRING "1" +-- Retrieval info: PRIVATE: USE_CLKENA0 STRING "0" +-- Retrieval info: PRIVATE: USE_CLKENA1 STRING "0" +-- Retrieval info: PRIVATE: USE_CLKENA2 STRING "0" +-- Retrieval info: PRIVATE: USE_MIL_SPEED_GRADE NUMERIC "0" +-- Retrieval info: PRIVATE: ZERO_DELAY_RADIO STRING "0" +-- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all +-- Retrieval info: CONSTANT: CLK0_DIVIDE_BY NUMERIC "1" +-- Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50" +-- Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "1" +-- Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0" +-- Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "2" +-- Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50" +-- Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "1" +-- Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0" +-- Retrieval info: CONSTANT: CLK2_DIVIDE_BY NUMERIC "2" +-- Retrieval info: CONSTANT: CLK2_DUTY_CYCLE NUMERIC "50" +-- Retrieval info: CONSTANT: CLK2_MULTIPLY_BY NUMERIC "1" +-- Retrieval info: CONSTANT: CLK2_PHASE_SHIFT STRING "0" +-- Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0" +-- Retrieval info: CONSTANT: GATE_LOCK_SIGNAL STRING "NO" +-- Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "20000" +-- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone II" +-- Retrieval info: CONSTANT: INVALID_LOCK_MULTIPLIER NUMERIC "5" +-- Retrieval info: CONSTANT: LPM_TYPE STRING "altpll" +-- Retrieval info: CONSTANT: OPERATION_MODE STRING "NORMAL" +-- Retrieval info: CONSTANT: PORT_ACTIVECLOCK STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_USED" +-- Retrieval info: CONSTANT: PORT_CLKBAD0 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_CLKBAD1 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_CLKLOSS STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_CLKSWITCH STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_CONFIGUPDATE STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_FBIN STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_INCLK0 STRING "PORT_USED" +-- Retrieval info: CONSTANT: PORT_INCLK1 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_USED" +-- Retrieval info: CONSTANT: PORT_PFDENA STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_PHASECOUNTERSELECT STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_PHASEDONE STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_PHASESTEP STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_PHASEUPDOWN STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_PLLENA STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANACLR STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANCLK STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANCLKENA STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANDATA STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANDATAOUT STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANDONE STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANREAD STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_SCANWRITE STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clk0 STRING "PORT_USED" +-- Retrieval info: CONSTANT: PORT_clk1 STRING "PORT_USED" +-- Retrieval info: CONSTANT: PORT_clk2 STRING "PORT_USED" +-- Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clk5 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clkena0 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clkena1 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clkena2 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clkena3 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clkena4 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clkena5 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_extclk0 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_extclk1 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_extclk2 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_extclk3 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: VALID_LOCK_MULTIPLIER NUMERIC "1" +-- Retrieval info: USED_PORT: @clk 0 0 6 0 OUTPUT_CLK_EXT VCC "@clk[5..0]" +-- Retrieval info: USED_PORT: @extclk 0 0 4 0 OUTPUT_CLK_EXT VCC "@extclk[3..0]" +-- Retrieval info: USED_PORT: @inclk 0 0 2 0 INPUT_CLK_EXT VCC "@inclk[1..0]" +-- Retrieval info: USED_PORT: areset 0 0 0 0 INPUT GND "areset" +-- Retrieval info: USED_PORT: c0 0 0 0 0 OUTPUT_CLK_EXT VCC "c0" +-- Retrieval info: USED_PORT: c1 0 0 0 0 OUTPUT_CLK_EXT VCC "c1" +-- Retrieval info: USED_PORT: c2 0 0 0 0 OUTPUT_CLK_EXT VCC "c2" +-- Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0" +-- Retrieval info: USED_PORT: locked 0 0 0 0 OUTPUT GND "locked" +-- Retrieval info: CONNECT: locked 0 0 0 0 @locked 0 0 0 0 +-- Retrieval info: CONNECT: @inclk 0 0 1 0 inclk0 0 0 0 0 +-- Retrieval info: CONNECT: c0 0 0 0 0 @clk 0 0 1 0 +-- Retrieval info: CONNECT: c1 0 0 0 0 @clk 0 0 1 1 +-- Retrieval info: CONNECT: c2 0 0 0 0 @clk 0 0 1 2 +-- Retrieval info: CONNECT: @inclk 0 0 1 1 GND 0 0 0 0 +-- Retrieval info: CONNECT: @areset 0 0 0 0 areset 0 0 0 0 +-- Retrieval info: GEN_FILE: TYPE_NORMAL pll.vhd TRUE +-- Retrieval info: GEN_FILE: TYPE_NORMAL pll.ppf TRUE +-- Retrieval info: GEN_FILE: TYPE_NORMAL pll.inc TRUE +-- Retrieval info: GEN_FILE: TYPE_NORMAL pll.cmp TRUE +-- Retrieval info: GEN_FILE: TYPE_NORMAL pll.bsf TRUE +-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_inst.vhd TRUE +-- Retrieval info: LIB_FILE: altera_mf +-- Retrieval info: CBX_MODULE_PREFIX: ON Index: trunk/rtl/Cyclone2/char_rom.vhd =================================================================== --- trunk/rtl/Cyclone2/char_rom.vhd (nonexistent) +++ trunk/rtl/Cyclone2/char_rom.vhd (revision 116) @@ -0,0 +1,36 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity char_rom is + Port ( + clk : in std_logic; + rst : in std_logic; + cs : in std_logic; + rw : in std_logic; + addr : in std_logic_vector (10 downto 0); + data_in : in std_logic_vector (7 downto 0); + data_out : out std_logic_vector (7 downto 0) + ); +end char_rom; + +architecture SYN of char_rom is +begin + + rom_inst : entity work.sprom + generic map + ( + INIT_FILE => "char_rom.mif", + WORD_COUNT => 2048, + ADDR_WIDTH => 11 + ) + port map + ( + clk => clk, + addr => addr, + data_in => data_in, + data_out => data_out + ); + +end SYN; + Index: trunk/rtl/Cyclone2/rom2k.vhd =================================================================== --- trunk/rtl/Cyclone2/rom2k.vhd (nonexistent) +++ trunk/rtl/Cyclone2/rom2k.vhd (revision 116) @@ -0,0 +1,83 @@ +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.all; + +ENTITY sprom IS + GENERIC + ( + INIT_FILE : string := ""; + WORD_COUNT : natural := 2048; + ADDR_WIDTH : natural := 11; + DATA_WIDTH : natural := 8; + REG_OUT : string := "UNREGISTERED" + ); + PORT + ( + clk : IN STD_LOGIC ; + addr : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + wren : IN STD_LOGIC ; + data_in : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + data_out : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); +END sprom; + +ARCHITECTURE SYN OF sprom IS + + COMPONENT altsyncram + GENERIC ( + clock_enable_input_a : STRING; + clock_enable_output_a : STRING; + init_file : STRING; + intended_device_family : STRING; + lpm_hint : STRING; + lpm_type : STRING; + numwords_a : NATURAL; + operation_mode : STRING; + outdata_aclr_a : STRING; + outdata_reg_a : STRING; + power_up_uninitialized : STRING; + widthad_a : NATURAL; + width_a : NATURAL; + width_byteena_a : NATURAL + ); + PORT ( + clock0 : IN STD_LOGIC ; + wren_a : IN STD_LOGIC ; + address_a : IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); + data_a : IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); + q_a : OUT STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0) + ); + END COMPONENT; + +BEGIN + + wren <= cs and not rw; + + altsyncram_component : altsyncram + GENERIC MAP ( + clock_enable_input_a => "BYPASS", + clock_enable_output_a => "BYPASS", + init_file => INIT_FILE, + intended_device_family => "Cyclone II", + lpm_hint => "ENABLE_RUNTIME_MOD=NO", + lpm_type => "altsyncram", + numwords_a => WORD_COUNT, + operation_mode => "ROM", + outdata_aclr_a => "NONE", + outdata_reg_a => REG_OUT, + power_up_uninitialized => "FALSE", + widthad_a => ADDR_WIDTH, + width_a => DATA_WIDTH, + width_byteena_a => 1 + ) + PORT MAP ( + wren_a => wren, + clock0 => clk, + address_a => addr, + data_a => data_in, + q_a => data_out + ); + +END SYN; Index: trunk/rtl/Cyclone2/kemap.txt =================================================================== --- trunk/rtl/Cyclone2/kemap.txt (nonexistent) +++ trunk/rtl/Cyclone2/kemap.txt (revision 116) @@ -0,0 +1,107 @@ +-- when x"00d" => ascii <= x"09"; -- Horizontal Tab +-- when x"00e" => ascii <= x"60"; -- ` +-- when x"015" => ascii <= x"71"; -- q +-- when x"016" => ascii <= x"31"; -- 1 +-- when x"01a" => ascii <= x"7a"; -- z +-- when x"01b" => ascii <= x"73"; -- s +-- when x"01c" => ascii <= x"61"; -- a +-- when x"01d" => ascii <= x"77"; -- w +-- when x"01e" => ascii <= x"32"; -- 2 +-- when x"021" => ascii <= x"63"; -- c +-- when x"022" => ascii <= x"78"; -- x +-- when x"023" => ascii <= x"64"; -- d +-- when x"024" => ascii <= x"65"; -- e +-- when x"025" => ascii <= x"34"; -- 4 +-- when x"026" => ascii <= x"33"; -- 3 +-- when x"029" => ascii <= x"20"; -- Space +-- when x"02a" => ascii <= x"76"; -- v +-- when x"02b" => ascii <= x"66"; -- f +-- when x"02c" => ascii <= x"74"; -- t +-- when x"02d" => ascii <= x"72"; -- r +-- when x"02e" => ascii <= x"35"; -- 5 +-- when x"031" => ascii <= x"6e"; -- n +-- when x"032" => ascii <= x"62"; -- b +-- when x"033" => ascii <= x"68"; -- h +-- when x"034" => ascii <= x"67"; -- g +-- when x"035" => ascii <= x"79"; -- y +-- when x"036" => ascii <= x"36"; -- 6 +-- when x"03a" => ascii <= x"6d"; -- m +-- when x"03b" => ascii <= x"6a"; -- j +-- when x"03c" => ascii <= x"75"; -- u +-- when x"03d" => ascii <= x"37"; -- 7 +-- when x"03e" => ascii <= x"38"; -- 8 +-- when x"041" => ascii <= x"2c"; -- , +-- when x"042" => ascii <= x"6b"; -- k +-- when x"043" => ascii <= x"69"; -- i +-- when x"044" => ascii <= x"6f"; -- o +-- when x"045" => ascii <= x"30"; -- 0 +-- when x"046" => ascii <= x"39"; -- 9 +-- when x"04e" => ascii <= x"2d"; -- - +-- when x"049" => ascii <= x"2e"; -- . +-- when x"04a" => ascii <= x"2f"; -- / +-- when x"04b" => ascii <= x"6c"; -- l +-- when x"04c" => ascii <= x"3b"; -- ; +-- when x"04d" => ascii <= x"70"; -- p +-- when x"052" => ascii <= x"27"; -- +-- when x"054" => ascii <= x"5b"; -- [ +-- when x"055" => ascii <= x"3d"; -- = +-- when x"05a" => ascii <= x"0d"; -- Carriage return ("enter" key) +-- when x"05b" => ascii <= x"5d"; -- ] +-- when x"05d" => ascii <= x"5c"; -- \ +-- when x"066" => ascii <= x"08"; -- Backspace ("backspace" key) +-- when x"071" => ascii <= x"7f"; -- (Delete OR DEL on numeric keypad) +-- when x"076" => ascii <= x"1b"; -- Escape ("esc" key) +-- when x"10d" => ascii <= x"09"; -- Horizontal Tab +-- when x"10e" => ascii <= x"7e"; -- ~ +-- when x"115" => ascii <= x"51"; -- Q +-- when x"116" => ascii <= x"21"; -- ! +-- when x"11a" => ascii <= x"5a"; -- Z +-- when x"11b" => ascii <= x"53"; -- S +-- when x"11c" => ascii <= x"41"; -- A +-- when x"11d" => ascii <= x"57"; -- W +-- when x"11e" => ascii <= x"40"; -- @ +-- when x"121" => ascii <= x"43"; -- C +-- when x"122" => ascii <= x"58"; -- X +-- when x"123" => ascii <= x"44"; -- D +-- when x"124" => ascii <= x"45"; -- E +-- when x"125" => ascii <= x"24"; -- $ +-- when x"126" => ascii <= x"23"; -- # +-- when x"129" => ascii <= x"20"; -- Space +-- when x"12a" => ascii <= x"56"; -- V +-- when x"12b" => ascii <= x"46"; -- F +-- when x"12c" => ascii <= x"54"; -- T +-- when x"12d" => ascii <= x"52"; -- R +-- when x"12e" => ascii <= x"25"; -- +-- when x"131" => ascii <= x"4e"; -- N +-- when x"132" => ascii <= x"42"; -- B +-- when x"133" => ascii <= x"48"; -- H +-- when x"134" => ascii <= x"47"; -- G +-- when x"135" => ascii <= x"59"; -- Y +-- when x"136" => ascii <= x"5e"; -- ^ +-- when x"13a" => ascii <= x"4d"; -- M +-- when x"13b" => ascii <= x"4a"; -- J +-- when x"13c" => ascii <= x"55"; -- U +-- when x"13d" => ascii <= x"26"; -- +-- when x"13e" => ascii <= x"2a"; -- * +-- when x"141" => ascii <= x"3c"; -- < +-- when x"142" => ascii <= x"4b"; -- K +-- when x"143" => ascii <= x"49"; -- I +-- when x"144" => ascii <= x"4f"; -- O +-- when x"145" => ascii <= x"29"; -- +-- when x"146" => ascii <= x"28"; -- +-- when x"149" => ascii <= x"3e"; -- > +-- when x"14a" => ascii <= x"3f"; -- ? +-- when x"14b" => ascii <= x"4c"; -- L +-- when x"14c" => ascii <= x"3a"; -- : +-- when x"14d" => ascii <= x"50"; -- P +-- when x"14e" => ascii <= x"5f"; -- _ +-- when x"152" => ascii <= x"22"; -- " +-- when x"154" => ascii <= x"7b"; -- { +-- when x"155" => ascii <= x"2b"; -- + +-- when x"15a" => ascii <= x"0d"; -- Carriage return ("enter" key) +-- when x"15b" => ascii <= x"7d"; -- } +-- when x"15d" => ascii <= x"7c"; -- | +-- when x"166" => ascii <= x"08"; -- Backspace ("backspace" key) +-- when x"171" => ascii <= x"7f"; -- (Delete OR DEL on numeric keypad) +-- when x"176" => ascii <= x"1b"; -- Escape ("esc" key) +-- when others => ascii <= x"ff"; -- 0xff used for unlisted characters. \ No newline at end of file Index: trunk/rtl/Cyclone2/pll.ppf =================================================================== --- trunk/rtl/Cyclone2/pll.ppf (nonexistent) +++ trunk/rtl/Cyclone2/pll.ppf (revision 116) @@ -0,0 +1,13 @@ + + + + + + + + + + + + + Index: trunk/rtl/Cyclone2/keymap_rom.mif =================================================================== --- trunk/rtl/Cyclone2/keymap_rom.mif (nonexistent) +++ trunk/rtl/Cyclone2/keymap_rom.mif (revision 116) @@ -0,0 +1,301 @@ +-- Copyright (C) 1991-2010 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. + +-- Quartus II generated Memory Initialization File (.mif) + +WIDTH=8; +DEPTH=512; + +ADDRESS_RADIX=UNS; +DATA_RADIX=HEX; + +CONTENT BEGIN + [0..12] : 00; + 13 : 09; + 14 : 60; + [15..20] : 00; + 21 : 71; + 22 : 31; + [23..25] : 00; + 26 : 7A; + 27 : 73; + 28 : 61; + 29 : 77; + 30 : 32; + [31..32] : 00; + 33 : 63; + 34 : 78; + 35 : 64; + 36 : 65; + 37 : 34; + 38 : 33; + [39..40] : 00; + 41 : 20; + 42 : 76; + 43 : 66; + 44 : 74; + 45 : 72; + 46 : 35; + [47..48] : 00; + 49 : 6E; + 50 : 62; + 51 : 68; + 52 : 67; + 53 : 79; + 54 : 36; + [55..57] : 00; + 58 : 6D; + 59 : 6A; + 60 : 75; + 61 : 37; + 62 : 38; + [63..64] : 00; + 65 : 2C; + 66 : 6B; + 67 : 69; + 68 : 6F; + 69 : 30; + 70 : 39; + [71..72] : 00; + 73 : 2E; + 74 : 2F; + 75 : 6C; + 76 : 3B; + 77 : 70; + 78 : 2D; + [79..81] : 00; + 82 : 27; + 83 : 00; + 84 : 5B; + 85 : 3D; + [86..89] : 00; + 90 : 0D; + 91 : 5D; + 92 : 00; + 93 : 5C; + [94..101] : 00; + 102 : 08; + [103..112] : 00; + 113 : 7F; + [114..117] : 00; + 118 : 1B; + [119..140] : 00; + 141 : 09; + 142 : 7E; + [143..148] : 00; + 149 : 51; + 150 : 31; + [151..153] : 00; + 154 : 5A; + 155 : 53; + 156 : 41; + 157 : 57; + 158 : 32; + [159..160] : 00; + 161 : 43; + 162 : 58; + 163 : 44; + 164 : 45; + 165 : 34; + 166 : 33; + [167..168] : 00; + 169 : 20; + 170 : 56; + 171 : 46; + 172 : 54; + 173 : 52; + 174 : 35; + [175..176] : 00; + 177 : 4E; + 178 : 42; + 179 : 48; + 180 : 47; + 181 : 59; + 182 : 36; + [183..185] : 00; + 186 : 4D; + 187 : 4A; + 188 : 55; + 189 : 37; + 190 : 38; + [191..192] : 00; + 193 : 2C; + 194 : 4B; + 195 : 49; + 196 : 4F; + 197 : 30; + 198 : 39; + [199..200] : 00; + 201 : 2E; + 202 : 2F; + 203 : 4C; + 204 : 3B; + 205 : 50; + 206 : 2D; + [207..209] : 00; + 210 : 27; + 211 : 00; + 212 : 5B; + 213 : 3D; + [214..217] : 00; + 218 : 0D; + 219 : 5D; + 220 : 00; + 221 : 5C; + [222..229] : 00; + 230 : 08; + [231..240] : 00; + 241 : 7F; + [242..245] : 00; + 246 : 1B; + [247..268] : 00; + 269 : 09; + 270 : 7E; + [271..276] : 00; + 277 : 51; + 278 : 21; + [279..281] : 00; + 282 : 5A; + 283 : 53; + 284 : 41; + 285 : 57; + 286 : 40; + [287..288] : 00; + 289 : 43; + 290 : 58; + 291 : 44; + 292 : 45; + 293 : 24; + 294 : 23; + [295..296] : 00; + 297 : 20; + 298 : 56; + 299 : 46; + 300 : 54; + 301 : 52; + 302 : 25; + [303..304] : 00; + 305 : 4E; + 306 : 42; + 307 : 48; + 308 : 47; + 309 : 59; + 310 : 5E; + [311..313] : 00; + 314 : 4D; + 315 : 4A; + 316 : 55; + 317 : 26; + 318 : 2A; + [319..320] : 00; + 321 : 3C; + 322 : 4B; + 323 : 49; + 324 : 4F; + 325 : 29; + 326 : 28; + [327..328] : 00; + 329 : 3E; + 330 : 3F; + 331 : 4C; + 332 : 3A; + 333 : 50; + 334 : 5F; + [335..337] : 00; + 338 : 22; + 339 : 00; + 340 : 7B; + 341 : 2B; + [342..345] : 00; + 346 : 0D; + 347 : 7D; + 348 : 00; + 349 : 7C; + [350..357] : 00; + 358 : 08; + [359..368] : 00; + 369 : 7F; + [370..373] : 00; + 374 : 1B; + [375..396] : 00; + 397 : 09; + 398 : 60; + [399..404] : 00; + 405 : 71; + 406 : 21; + [407..409] : 00; + 410 : 7A; + 411 : 73; + 412 : 61; + 413 : 77; + 414 : 40; + [415..416] : 00; + 417 : 63; + 418 : 78; + 419 : 64; + 420 : 65; + 421 : 24; + 422 : 23; + [423..424] : 00; + 425 : 20; + 426 : 76; + 427 : 66; + 428 : 74; + 429 : 72; + 430 : 25; + [431..432] : 00; + 433 : 6E; + 434 : 62; + 435 : 68; + 436 : 67; + 437 : 79; + 438 : 5E; + [439..441] : 00; + 442 : 6D; + 443 : 6A; + 444 : 75; + 445 : 26; + 446 : 2A; + [447..448] : 00; + 449 : 3C; + 450 : 6B; + 451 : 69; + 452 : 6F; + 453 : 29; + 454 : 28; + [455..456] : 00; + 457 : 3E; + 458 : 3F; + 459 : 6C; + 460 : 3A; + 461 : 70; + 462 : 5F; + [463..465] : 00; + 466 : 22; + 467 : 00; + 468 : 7B; + 469 : 2B; + [470..473] : 00; + 474 : 0D; + 475 : 7D; + 476 : 00; + 477 : 7C; + [478..485] : 00; + 486 : 08; + [487..496] : 00; + 497 : 7F; + [498..501] : 00; + 502 : 1B; + [503..511] : 00; +END; Index: trunk/rtl/Cyclone2/wb_lpm_rom.vhd =================================================================== --- trunk/rtl/Cyclone2/wb_lpm_rom.vhd (nonexistent) +++ trunk/rtl/Cyclone2/wb_lpm_rom.vhd (revision 116) @@ -0,0 +1,109 @@ +--===========================================================================-- +-- +-- S Y N T H E Z I A B L E Altera LPM_ROM / WISHBONE interface +-- +-- www.OpenCores.Org - August 2003 +-- This core adheres to the GNU public license +-- +-- File name : wb_lpm_rom.vhd +-- +-- Purpose : Implements a WISHBONE compatble interface +-- for the Altera LPM_ROM +-- +-- Dependencies : ieee.Std_Logic_1164 +-- ieee.std_logic_unsigned +-- work.lpm_components (Altera's 220PACK.vhd) +-- +-- Author : Michael L. Hasenfratz Sr. +-- +--===========================================================================---- +-- +-- Revision History: +-- +-- Date: Revision Author +--===========================================================================-- +-- 1 Aug 2003 0.1 Michael L. Hasenfratz Sr. +-- Created +-- + +library ieee; +use ieee.std_logic_1164.all; +use ieee.std_logic_unsigned.all; + +library lpm; +use lpm.lpm_components.all; + +entity wb_lpm_rom is + generic ( + LPM_WIDTH : positive range 1 to 64 := 8; -- data bits WIDE + LPM_WIDTHAD : positive range 1 to 32 := 8; -- address bits; + LPM_FILE : string := "my_rom" -- ROM Data File + ); + port ( + DAT_O : out std_logic_vector(LPM_WIDTH-1 downto 0); + ADR_I : in std_logic_vector(LPM_WIDTHAD-1 downto 0); + SEL_I : in std_logic_vector((LPM_WIDTH/8)-1 downto 0); + STB_I : in std_logic; -- VMA (Valid Memory Access) + CYC_I : in std_logic; -- CYC in progress + ACK_O : out std_logic; -- Data ready + CLK_I : in std_logic; -- System Clock + RST_I : in std_logic -- Reset + ); +end; + +architecture bhv_wb_lpm_rom of wb_lpm_rom is + + signal iack : std_logic; -- Internal ACK + signal isel : std_logic; -- device selected + +begin + +--------------------------------------------------------- +-- Instantiate the ROM interface +--------------------------------------------------------- +rom0 : LPM_ROM + generic map ( + LPM_WIDTH => LPM_WIDTH, + LPM_WIDTHAD => LPM_WIDTHAD, + LPM_OUTDATA => "UNREGISTERED", + LPM_FILE => LPM_FILE + ) + port map ( + Q => DAT_O, + ADDRESS => ADR_I, + INCLOCK => CLK_I + ); + +--------------------------------------------------------- +-- Interconnections +--------------------------------------------------------- + + ACK_O <= isel and iack; + +-- Selection +romsel : process(SEL_I, CYC_I, STB_I) + variable vsel : std_logic; + begin + vsel := '0'; + for ndx in SEL_I'RANGE loop + vsel := vsel or SEL_I(ndx); + end loop; + isel <= vsel and CYC_I and STB_I; + end process; + +-- Read Acknowledge +rdack : process(RST_I, CLK_I) + begin + if CLK_I'EVENT and CLK_I = '1' then + if RST_I = '1' then + iack <= '0'; + elsif iack = '1' then + iack <= '0'; + else + iack <= isel; + end if; + end if; + end process; + +end bhv_wb_lpm_rom; + Index: trunk/doc/Booting_Flex9_Digilent_S3Starter.doc =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/doc/Booting_Flex9_Digilent_S3Starter.doc =================================================================== --- trunk/doc/Booting_Flex9_Digilent_S3Starter.doc (revision 115) +++ trunk/doc/Booting_Flex9_Digilent_S3Starter.doc (nonexistent)
trunk/doc/Booting_Flex9_Digilent_S3Starter.doc Property changes : Deleted: svn:mime-type ## -1 +0,0 ## -application/octet-stream \ No newline at end of property Index: trunk/doc/Booting_Flex9_Digilent_S3Starter.pdf =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/doc/Booting_Flex9_Digilent_S3Starter.pdf =================================================================== --- trunk/doc/Booting_Flex9_Digilent_S3Starter.pdf (nonexistent) +++ trunk/doc/Booting_Flex9_Digilent_S3Starter.pdf (revision 116)
trunk/doc/Booting_Flex9_Digilent_S3Starter.pdf Property changes : Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: trunk/doc/Booting_RAM_DISK_Flex9.pdf =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/doc/Booting_RAM_DISK_Flex9.pdf =================================================================== --- trunk/doc/Booting_RAM_DISK_Flex9.pdf (nonexistent) +++ trunk/doc/Booting_RAM_DISK_Flex9.pdf (revision 116)
trunk/doc/Booting_RAM_DISK_Flex9.pdf Property changes : Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property

powered by: WebSVN 2.1.0

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