forked from Apple-2-HW/AppleIISd
AddressDecoder verified in simulation
This commit is contained in:
parent
70c0c118fc
commit
91d54ddd9c
@ -51,7 +51,7 @@ architecture Behavioral of AddressDecoder is
|
||||
signal ndev_sel_int : std_logic;
|
||||
signal nio_sel_int : std_logic;
|
||||
signal nio_stb_int : std_logic;
|
||||
signal ncs : std_logic; -- $C800 - $CFFF enabled
|
||||
signal ncs : std_logic; -- $C800 - $CFFE enabled
|
||||
signal a_int : std_logic_vector (11 downto 8);
|
||||
|
||||
begin
|
||||
@ -78,11 +78,13 @@ begin
|
||||
or (ndev_sel_int and nio_sel_int and ncs)
|
||||
or not PHI0;
|
||||
NOE <= not RNW
|
||||
or not NDEV_SEL
|
||||
or (not NIO_STB and ncs);
|
||||
or (not NIO_SEL and not NIO_STB)
|
||||
or (NIO_SEL and NIO_STB)
|
||||
or (NIO_SEL and ncs);
|
||||
NWE <= RNW
|
||||
or not NDEV_SEL
|
||||
or (not NIO_STB and ncs);
|
||||
or (not NIO_SEL and not NIO_STB)
|
||||
or (NIO_SEL and NIO_STB)
|
||||
or (NIO_SEL and ncs);
|
||||
|
||||
cfxx <= a_int(8) and a_int(9) and a_int(10) and not nio_stb_int;
|
||||
|
||||
|
@ -137,12 +137,37 @@ BEGIN
|
||||
NDEV_SEL <= '0';
|
||||
wait until falling_edge(PHI0);
|
||||
NDEV_SEL <= '1';
|
||||
wait until rising_edge(PHI0);
|
||||
|
||||
-- C0nX access, write
|
||||
-- NG must be '0"
|
||||
-- NOE must be '1'
|
||||
-- NWE must be '1'
|
||||
RNW <= '0';
|
||||
A <= "0000"; -- must become "000"
|
||||
wait until rising_edge(PHI0);
|
||||
NDEV_SEL <= '0';
|
||||
wait until falling_edge(PHI0);
|
||||
NDEV_SEL <= '1';
|
||||
wait until rising_edge(PHI0);
|
||||
|
||||
-- CnXX access, select
|
||||
-- NG must be '0'
|
||||
-- NOE must be '0'
|
||||
-- NWE must be '1'
|
||||
-- NWE must be '1'
|
||||
RNW <= '1';
|
||||
A <= "0100"; -- must become "000"
|
||||
wait until rising_edge(PHI0);
|
||||
NIO_SEL <= '0';
|
||||
wait until falling_edge(PHI0);
|
||||
NIO_SEL <= '1';
|
||||
wait until rising_edge(PHI0);
|
||||
|
||||
-- CnXX access, write, select
|
||||
-- NG must be '0'
|
||||
-- NOE must be '1'
|
||||
-- NWE must be '0'
|
||||
RNW <= '0';
|
||||
A <= "0100"; -- must become "000"
|
||||
wait until rising_edge(PHI0);
|
||||
NIO_SEL <= '0';
|
||||
@ -153,7 +178,8 @@ BEGIN
|
||||
-- C8xx access, selected
|
||||
-- NG must be '0'
|
||||
-- NOE must be '0'
|
||||
-- NWE must be '1'
|
||||
-- NWE must be '1'
|
||||
RNW <= '1';
|
||||
A <= "1000"; -- must become "001"
|
||||
wait until rising_edge(PHI0);
|
||||
NIO_STB <= '0';
|
||||
@ -227,6 +253,18 @@ BEGIN
|
||||
NIO_STB <= '0';
|
||||
wait until falling_edge(PHI0);
|
||||
NIO_STB <= '1';
|
||||
wait until rising_edge(PHI0);
|
||||
|
||||
-- C8xx access write, unselected
|
||||
-- NG must be '1'
|
||||
-- NOE must be '1'
|
||||
-- NWE must be '1'
|
||||
RNW <= '0';
|
||||
A <= "1000"; -- must become "001"
|
||||
wait until rising_edge(PHI0);
|
||||
NIO_STB <= '0';
|
||||
wait until falling_edge(PHI0);
|
||||
NIO_STB <= '1';
|
||||
wait until rising_edge(PHI0);
|
||||
|
||||
wait;
|
||||
|
@ -1,5 +1,5 @@
|
||||
Programmer Jedec Bit Map
|
||||
Date Extracted: Thu Feb 14 20:47:09 2019
|
||||
Date Extracted: Thu Feb 14 23:27:44 2019
|
||||
|
||||
QF46656*
|
||||
QP44*
|
||||
@ -104,7 +104,7 @@ L0001656 000000 000000 000000 000000*
|
||||
L0001680 000000 000000 000000 000000*
|
||||
L0001704 000000 000000 000000 000000*
|
||||
L0001728 00000000 00000000 00000000 00000000*
|
||||
L0001760 00000000 10000000 00000000 00000000*
|
||||
L0001760 00000000 00000000 00000000 00000000*
|
||||
L0001792 10000000 00000000 00000000 00000000*
|
||||
L0001824 00000000 00000000 00000000 00000000*
|
||||
L0001856 00000000 00000000 00000000 00000000*
|
||||
@ -114,7 +114,7 @@ L0001952 00000000 00000000 00000000 00000000*
|
||||
L0001984 00000000 00000000 00000000 00000000*
|
||||
L0002016 000000 000000 000000 000000*
|
||||
L0002040 000000 000000 000000 000000*
|
||||
L0002064 000000 000000 000000 000000*
|
||||
L0002064 000000 100000 000000 000000*
|
||||
L0002088 000000 000000 000000 000000*
|
||||
L0002112 000000 000000 000000 000000*
|
||||
L0002136 000000 000000 000000 000000*
|
||||
@ -195,7 +195,7 @@ L0004272 000000 000000 000000 000000*
|
||||
L0004296 000000 000000 000000 000000*
|
||||
L0004320 00000000 00000000 00000000 00000000*
|
||||
L0004352 00000000 00000000 00000000 00000000*
|
||||
L0004384 00000000 00000000 01000000 01000000*
|
||||
L0004384 00000000 10000000 01000000 01000000*
|
||||
L0004416 00000000 00000000 00000000 00000000*
|
||||
L0004448 00000000 00000000 00000000 00000000*
|
||||
L0004480 00000000 00000000 00000000 00000000*
|
||||
@ -205,7 +205,7 @@ L0004576 00000000 00000000 00100000 00000000*
|
||||
L0004608 000000 000000 000000 000000*
|
||||
L0004632 000000 000000 000000 000000*
|
||||
L0004656 000000 000000 000000 000000*
|
||||
L0004680 000000 100000 000000 110000*
|
||||
L0004680 000000 000000 000000 110000*
|
||||
L0004704 000000 000000 000000 000000*
|
||||
L0004728 000000 000000 000000 000000*
|
||||
L0004752 00000000 00000000 00000000 00000000*
|
||||
@ -224,7 +224,7 @@ L0005112 000000 000000 000000 000000*
|
||||
L0005136 000000 000000 000000 000001*
|
||||
L0005160 000000 000000 000000 000000*
|
||||
L0005184 00000011 00000001 00000011 00000011*
|
||||
L0005216 00000011 00000011 00000011 00000011*
|
||||
L0005216 00000011 10000011 00000011 00000011*
|
||||
L0005248 00000011 00000011 00000011 00000011*
|
||||
L0005280 00000011 00000011 00000011 00000011*
|
||||
L0005312 00000011 00000011 00000011 00000011*
|
||||
@ -234,7 +234,7 @@ L0005408 00000011 00000011 00000011 00000011*
|
||||
L0005440 00000011 00000011 00000011 00000011*
|
||||
L0005472 000000 000000 000000 000000*
|
||||
L0005496 000000 000000 000000 000000*
|
||||
L0005520 000000 100000 000000 000000*
|
||||
L0005520 000000 000000 000000 000000*
|
||||
L0005544 000000 000000 000000 000000*
|
||||
L0005568 000000 000000 000000 000000*
|
||||
L0005592 000000 000000 000000 000000*
|
||||
@ -404,8 +404,8 @@ L0010296 000000 000000 000000 000000*
|
||||
L0010320 000000 000000 000000 000000*
|
||||
L0010344 000000 000000 000000 000000*
|
||||
L0010368 00000000 00000000 00000000 00000000*
|
||||
L0010400 00000000 10000010 00000000 00000000*
|
||||
L0010432 00000000 10000000 00000000 00000000*
|
||||
L0010400 00000000 00000010 00000000 00000000*
|
||||
L0010432 00000000 00000000 00000000 00000000*
|
||||
L0010464 00000000 00000000 00000000 00000000*
|
||||
L0010496 00000000 00000000 00000000 00000000*
|
||||
L0010528 00000000 00000000 00000000 00000000*
|
||||
@ -414,13 +414,13 @@ L0010592 00000000 00000000 00000000 00000000*
|
||||
L0010624 00000000 00000000 00000000 00000000*
|
||||
L0010656 000000 100000 000000 000000*
|
||||
L0010680 000000 000000 000000 000000*
|
||||
L0010704 000000 000000 000100 000000*
|
||||
L0010728 000000 000000 000000 000000*
|
||||
L0010704 000000 100000 000100 000000*
|
||||
L0010728 000000 100000 000000 000000*
|
||||
L0010752 000000 000000 000000 000000*
|
||||
L0010776 000000 000000 000000 000000*
|
||||
L0010800 00000000 10000000 00000000 00000000*
|
||||
L0010832 01001000 00000000 00000000 00000000*
|
||||
L0010864 00000000 00000010 00000000 00000000*
|
||||
L0010832 01001000 10000000 00000000 00000000*
|
||||
L0010864 00000000 10000010 00000000 00000000*
|
||||
L0010896 00000000 00000000 00000000 00000000*
|
||||
L0010928 00000000 00000000 00000000 00000000*
|
||||
L0010960 00000000 00000000 00000000 00000000*
|
||||
@ -429,8 +429,8 @@ L0011024 00000000 10000000 00000000 00000000*
|
||||
L0011056 00000000 00000000 00000000 00000000*
|
||||
L0011088 000000 000000 000000 000000*
|
||||
L0011112 000000 000000 000100 000000*
|
||||
L0011136 000010 100000 000000 000000*
|
||||
L0011160 000000 100000 000000 000000*
|
||||
L0011136 000010 000000 000000 000000*
|
||||
L0011160 000000 000000 000000 000000*
|
||||
L0011184 000000 000000 000000 000000*
|
||||
L0011208 000000 000000 000000 000000*
|
||||
L0011232 00000011 00000001 00000011 00000011*
|
||||
@ -588,7 +588,7 @@ L0015584 00000010 00000000 00000000 00000001*
|
||||
L0015616 00000010 00000000 00000000 00000010*
|
||||
L0015648 00000010 00000000 00000010 00000010*
|
||||
L0015680 00000000 00000000 00000000 00000000*
|
||||
L0015712 00000000 01111000 00000000 00000010*
|
||||
L0015712 01000000 01111000 00000000 10000010*
|
||||
L0015744 00000010 00000000 00000000 00000000*
|
||||
L0015776 00000000 00000000 00000000 00000000*
|
||||
L0015808 00000000 00000000 00000000 00000000*
|
||||
@ -604,7 +604,7 @@ L0016048 00000001 00000001 00000000 00000000*
|
||||
L0016080 00000001 00000001 00000001 00000000*
|
||||
L0016112 00000000 00000001 00000001 00000000*
|
||||
L0016144 00000001 00000101 00010001 00000000*
|
||||
L0016176 00000001 00000000 00000001 00000011*
|
||||
L0016176 01000001 00000000 00000001 10000011*
|
||||
L0016208 00000000 00000010 00000000 00000000*
|
||||
L0016240 00000001 00000010 00000001 00000011*
|
||||
L0016272 000000 000000 000000 000000*
|
||||
@ -709,7 +709,7 @@ L0019072 00000000 00000000 00000000 00000000*
|
||||
L0019104 00000000 00000000 00000000 00000000*
|
||||
L0019136 00000011 00000000 00000010 00000011*
|
||||
L0019168 00000010 00000000 00000000 00000000*
|
||||
L0019200 00000000 00000000 00000000 00000000*
|
||||
L0019200 01000000 00000000 00000000 10000000*
|
||||
L0019232 00000011 00000000 00000011 00000011*
|
||||
L0019264 00000010 00000000 00000000 00000000*
|
||||
L0019296 000000 000000 000000 000000*
|
||||
@ -1065,7 +1065,7 @@ L0029328 000000 000000 000000 000000*
|
||||
L0029352 000000 000000 000000 000000*
|
||||
L0029376 00000000 00000001 00000000 00000000*
|
||||
L0029408 00000001 00000010 00000010 00000000*
|
||||
L0029440 00000000 00000000 00000000 00000000*
|
||||
L0029440 00000010 00000000 00000000 00000010*
|
||||
L0029472 00000000 00000000 00000000 00000000*
|
||||
L0029504 00000001 00000001 00000000 00000000*
|
||||
L0029536 00000000 00000000 00000000 00000000*
|
||||
@ -1233,8 +1233,8 @@ L0034160 00000000 00000000 00100000 00000000*
|
||||
L0034192 00000000 00000000 00000000 00000000*
|
||||
L0034224 00000000 00000000 00000000 00000000*
|
||||
L0034256 00000000 00000000 00000000 00000000*
|
||||
L0034288 11000000 00000000 00000000 10010000*
|
||||
L0034320 01000000 00000000 00000000 10000000*
|
||||
L0034288 10000000 00000000 00000000 00010000*
|
||||
L0034320 00000000 00000000 00000000 00000000*
|
||||
L0034352 00000000 00000000 00000000 00000000*
|
||||
L0034384 00000000 00000000 00000000 00000000*
|
||||
L0034416 000000 000000 000000 000000*
|
||||
@ -1335,7 +1335,7 @@ L0037104 000000 000000 000000 000000*
|
||||
L0037128 000000 000000 000000 000000*
|
||||
L0037152 00000000 00000000 00000000 00000000*
|
||||
L0037184 00000000 00000000 00000000 00000000*
|
||||
L0037216 00000000 10000000 00000000 00000000*
|
||||
L0037216 00000000 00000000 00000000 00000000*
|
||||
L0037248 00000000 00000000 00000000 00000000*
|
||||
L0037280 00000000 00000000 00000000 00000000*
|
||||
L0037312 00000000 00000000 00000000 00000000*
|
||||
@ -1345,7 +1345,7 @@ L0037408 00000000 00000000 00000000 00000000*
|
||||
L0037440 000000 000000 000000 000000*
|
||||
L0037464 000000 000000 000000 000000*
|
||||
L0037488 000000 000000 000000 000000*
|
||||
L0037512 000000 000000 000000 000000*
|
||||
L0037512 000000 100000 000000 000000*
|
||||
L0037536 000000 000000 000000 000000*
|
||||
L0037560 000000 000000 000000 000000*
|
||||
L0037584 00000000 00000000 00000000 00000000*
|
||||
@ -1663,5 +1663,5 @@ L0046560 000000 000000 000000 000000*
|
||||
L0046584 000000 000000 000000 000000*
|
||||
L0046608 000000 000000 000000 000000*
|
||||
L0046632 000000 000000 000000 000000*
|
||||
CCD41*
|
||||
1E18
|
||||
CCDC4*
|
||||
1E2E
|
||||
|
Loading…
Reference in New Issue
Block a user