4) address decoder
Low_active register read control signal RD#
and low_active register write control signal WE#
go into the address decoder.
They are generated in "2) CS, R/W".
Read address lines A0in, A1in (high_active)
and A0in#, A1in# (low_active) go into the address decoder.
They are generated in "3a) A0, 3b) A1).
Write address lines 2A0in, 2A1in (high_active)
and 2A0in#, 2A1in# (low_active) go into the address decoder.
They are sampled by transparent latches during PHI2
in "3a) A0, 3b) A1".
//Again: _inside_ the 6520, register reads happen during PHI2, in the CPU write cycle.
//But register writes happen in the first half of the PHI2 cycle which follows the write cycle.
Also, the outputs of the register Bits CRA2 and CRB2
go into the address decoder.
Attachment:
6520_4_addressdecoder.png [ 75.92 KiB | Viewed 2515 times ]
;---
Physically, the address decoder breaks into three parts on the chip.
3a) part 1, located East of the "3a) A0, 3b) A1" latches.
Just some NOR gates which detect CRA (control register A)
reads/writes at address $1,
and CRB (control register B) reads writes at address $3.
Attachment:
si6520_4a_addressdecoder.png [ 60.45 KiB | Viewed 2515 times ]
Attachment:
6520_4a_addressdecoder.png [ 81 KiB | Viewed 2515 times ]
;...
3b) part 2, located South of the PORT A circuitry.
Part 2 contains the drivers for the CRA/CRB read/write control signals from 3a).
It also contains the NOR gates for detecting DDRA (data direction register PORT A)
reads/writes at address $0 when CRA2=0,
and for detecting PRA (data register PORT A) reads/writes at address $0 when CRA2=1.
Plus the necessary inverter for the CRA2 signal.
Plus the related drivers for said register control signals.
Attachment:
si6520_4b_addressdecoder.png [ 47.48 KiB | Viewed 2515 times ]
Attachment:
6520_4b_addressdecoder.png [ 150.17 KiB | Viewed 2515 times ]
;...
3c) part 3, located south of the PORT B circuitry.
It contains the NOR gates for detecting DDRB (data direction register PORT B)
reads/writes at address $2 when CRB2=0,
and for detecting PRB (data register PORT B) reads/writes at address $2 when CRB2=1.
Plus the necessary inverter for the CRB2 signal.
Plus the related drivers for said register control signals.
Attachment:
si6520_4c_addressdecoder.png [ 30.37 KiB | Viewed 2515 times ]
Attachment:
6520_4c_addressdecoder.png [ 93.17 KiB | Viewed 2515 times ]
;---
The register read/write control signals which are generated in 4a)..4c) go up North
into the register block.
Note, that there is a FET somewhere up North in the register block
for every register write control signal, switching said signal to GND during PHI2.
We have seen similar things in the 6530 and the 6522.
The designers just wanted to be on the safe side that said control signals
really are disabled during PHI2.
Also note, that register write signals go active with a delay of maybe two logic gates
after the falling edge of PHI2.
This was done because the transparent latches which sample A0 and A1 at PHI2,
generating the write address signals, need some time to have their outputs stable.
BTW: all of the register read/write control signals which are generated
in 4a)..4c) are high_active.
Chip layout for 4b) and 4c) somehow reminds me a little bit to the
address decoder we already had in the
6522 dissection.