6510 Commodore
6510 Commodore
~ semlcanduct:ar group
6510
[K!J~@@ MICROPROCESSOR
WITH I/O
DESCRIPTION
The 651 0 is a low-cost microcomputer system capable of solving a broad range of small-systems
and peripheral-control problems at minimum cost to the user. ~
An 8-bit Bi-Directionall/O Port is located on-chip with the Output Register at ~d,d"Ls0,,000 and
the Data-Direction Register at Address 0 0 0 1. The I/O Port is bit-by-bit proQ(,erl1rf,\:b, .
\\~\\\\\r.\,\\, ., \.
The Three-State sixteen-bit Address Bus allows Direct Memory AC9~~~5'""g~D'~~ multi-
processor systems sharing a common memory. I
The internal processor architecture is identical to the MOS Technolo i~\ ide software
compatibility.
• Address,t5,'[~~~,'J'~'
;0"',",\,,\,,!(ang6 of up to 65K bytes A, 14 27 P,
• Direct:t.m~,'~, cc sl:::apability A. 15 26 p,
• Pipeline;((hf{~ture A" 17 24 P.
2-36
MPS
6510
DATA
DIRECTION
REGISTER
F
I
~ P,o
C
PERIPHERAL PERIPHERAL
OUTPUT INTERFACE
REGISTER
L----....I
L-___B_UF_F_E_R__-J~ P7
AEC
Ao
TID
INDEX
r
INTERRUPT
REG~TER
LOGIC
Al J
A2 --
A3 -
A4 - a:
w
u.
As - u.
:::::>
As - III
A7 _. ffia:
o
o
«
As - w
~
~ TIMING J
~CONTROL
As -- ~w
Alo - a:
J:
.....
1l,IN
All - PROCESSORJ
STATUS
0 2 1N
Au -- REGISTER
Al 3
IL....____.... RIW
Al 4 --
Al 5 ~
LEGEND
D=SBITLINE
I = 1 BIT LINE
2-37
MPS
6510
6510 CHARACTERISTICS
MAXIMUM RATINGS
RATING
I SYMBOL
1 VALUE
1 UNIT
SUPPLY VOLTAGE Vee -0.3 to + 7.0 Vde This device contains Input protection against
-- damage due to high static voltages or
INPUT VOLTAGE Vln -0.3 to + 7.0 Vde electric fields; however, precautions should
be taken to avoid application of voltages
OPERATING TEMPERATURE TA o to + 70 'c higher than the maximum rating.
Capacitance C pF
Vln = 0, TA = 25'C, f = 1MHz)
Logic, PooP, 10
Data 15
AO-A15, AMI Cout 12
0, 30 50
0, 50 80
2-38
MPS
6510
CLOCK TIMING
~-----------------_--------TCYC------------_____________~
I
1 4 - - - - - - - - - PWHO, - . - -_ _ _ _~
VCC-O.2V VCC-O.2V
0,(ln)
0,(ln)
I. TRWS
THRW
2.0V
R/W
THA
ADDRESS
FROM 2.0V
MPU
O.BV
TADS
2.0V
DATA
FROM
MEMORY
O.BV --f\i;:::.-------1t---r
TDSU
TpDSU
PERIPHERAl.
DATA
AES
ADDRESS _
ENABLE
CONTROL
___________
.
f VCC.-02V
2-39
MPS
6510
CLOCK TIMING
~1
------ PWH0. - - - - - l..
VCC-O.2V
I
I
I
0.(ln) _ _ _ _"" O.2V
I
--i TO
VCC-O.2V
~
I
I
I
0,(ln)
O.2V I
R/W
O.8V
ADDRESS
FROM 2.0V
MPU
O.8V
TAOS
DATA
TO
MEMORY
TMDS
PERIPHERAL
DATA
ADDRESS
ENABLE
CONTROL
f""'- .."
2-40
MPS
6510
AC CHARACTERISTICS
CLOCK TIMING
CHARACTERISTIC
Cycle Time
= 5V ± 5%, VSS = OV, TA = 0° -70°C)
Minimum Clock Frequency = 50 KHz
SYMBOL
TCYC
MIN.
1000
TYP. MAX.
f----
MIN.
500
TYP. MAX. UNITS
ns
I
-----------+- ----+ , ' -
~~--
(Measured at 0.2V) ns
--
~J
Delay Time, 02 negative transition
to Peripheral Data valid 1 0.5
TpDW
1--------- - - - , f-~--- 1--
Peripheral Data Setup Time TpDSU 300
1------- -f---- f------
Address Enable Setup Time 60 60 ns
TAES
'~ -_._---
2-41
MPS
6510
SIGNAL DESCRIPTION
Clocks (0" O 2 )
The 6510 requires a two phase non-overlapping clock that runs at the Vcc voltage level.
Reset
This input is used to reset or start the microprocessor from a power down condition. During the time that this line
is held low, writing to or from the microprocessor is inhibited. When a positive edge is detected on the input, the
microprocessor will immediately begin the reset sequence.
After a system initialization time of six clock cycles, the mask interrupt flag will be set and the microprocessor
will load the program counter from the memory vector locations FFFC and FFFD. This is the start location for pro-
gram control.
After Vcc reaches 4.75 volts in a power up routine. reset must be held low for at least two clock cycles. At this
time the R/W signal will become valid.
When the reset signal goes high following these two clock cycles, the microprocessor will proceed with the nor-
mal reset procedure detailed above.
Read/Write (R/W)
This signal is generated by the microprocessor to control the direction of data transfers on the Data Bus. This line
is high except when the microprocessor is writing to memory or a peripheral device.
2-42
MPS
6510
ADDRESSING MODES
ACCUMULATOR ADDRESSING-This form of IMPLIED ADDRESSING-In the Implied ad-
addressing Is represented with a one byte dressing mode, the address containing the
Instruction, Implying an operation on the operand Is Implicitly stated In the operation code
accumulator. of the Instruction.
IMMEDIATE ADDRESSING-In Immediate ad·
dressing, the operand Is contained in the second RELATIVE ADDRESSING-Relative addressing
I
byte of the instruction, with no further memory is used only with branch Instructions and estab-
addressing required. lishes a destination for the conditional branch.
ABSOLUTE ADDRESSING-In absolute ad· The second byte of the Instruction becomes the
dressing, the second byte of the Instruction operand which Is an "Offset" added to the con-
specifies the eight low order bits of the effective tents of the lower eight bits of the program
address while the third byte specifies the eight counter when the counter Is set at the next in-
high order bits. Thus, the absolute addressing struction. The range of the offset is -128 to
mode allpws access to the entire 65K bytes of ad· + 127 bytes from the next instruction.
dressable memory.
INDEXED INDIRECT ADDRESSING-In indexed
ZERO PAGE ADDRESSING-The zero page in- indirect addressing (referred to as [Indirect, Xl),
structions allow for shorter code and execution the second byte of the instruction is added to the
times by only fetching the second byte of the in- contents of the X index register, discarding the
struction and assuming a zero high address byte. carry. The result of this addition points to a
Careful use of the zero page can result in signifi- memory location on page zero whose contents is
cant increase In code efficiency. the low order eight bits of the effective address.
The next memory location in page zero contains
INDEXED ZERO PAGE ADDRESSING-(X, Yin- the high order eight bits of the effective address.
dexing)-This form of addressing Is used in con- Both memory locations specifying the high and
junction with the index register and is referred to low order bytes of the effective address must be
as "Zero Page, X" or "Zero Page, Y." The effective In page zero.
address is calculated by adding the second byte
to the contents of the index register. Since this is INDIRECT INDEXED ADDRESSING-In indirect
a form of "Zero Page" addressing, the content of indexed addressing (referred to as [Indirect, Yl).
the second byte references a location in page the second byte of the instruction points to a
zero. Additionally, due to the "Zero Page" ad- memory location in page zero. The contents of
dressing nature of this mode, no carry is added to this memory location is added to the contents of
the high order 8 bits of memory and crossing of the Y index register, the result being the low order
page boundaries does not occur. eight bits of the effective address. The carry from
this addition is added to the contents of the next
INDEXED ABSOLUTE ADDRESSING-(X, Yin- page zero memory location, the result being the
doxing)-This form of addressing is used in con- high order eight bits of the effective address.
junction with X and Y index register and is re-
ferred to as "Absolute, X," and "Absolute, Y." The ABSOLUTE INDIRECT-The second byte of the
effective address is formed by adding the con- instruction contains the low order eight bits of a
tents of X and Y to the address contained in the memory location. The high order eight bits of that
second and third bytes of the instruction. This memory location is contained in the third byte of
mode allows the index register to contain the in- the instruction. The contents of the fully
dex or count value and the instruction to contain specified memory location is the low order byte
the base address. This type of indexing allows of the effective address. The next memory loca-
any location referencing and the index to modify tion contains the high order byte of the effective
multiple fields resulting in reduced coding and address which is loaded into the sixteen bits of
execution time. the program counter.
2-43
MPS
6510
PROGRAMMING MODEL
7 0 o
L_A===:J ACCUMULATOR A NIV BI D liZ C PROCESSOR STATUS REG "P"
7 0
I Y I INDEX REGISTER Y
....INo
C.-cr::::::J]-
MAHCHOMC-'
n'!&it
III
''104
'E e
t"'"
3 ... 2 ,A 21
~, . "
F' 2 2
3122
MAMC;:HONV'" w If 22
.. -
foo'
u.
~~~~~----r;~+-r+~~~~~7b~-+-rr;~+-r+~+4~~~~+1-+~r;~~,~,-----
I I
~'IG·21JUU"IU8 ItII • a
I I
~ ,,
3'532
~~~·~=~~S~·_~'=~S~r;~+-r+~+4~~r+.~~-+~r;~+-r+~+1-r~~-r+1-+~-+-r+----~----
.... ,
.
W'..u. &-t.,..
9+1"5 Mr •
~
fiI
"
0
T
R
I
p(
ta.,., ..
_,
ISellFlg2J
::::n.,
MlllNe.
RTRNSUE
... ,
•• c ..-..-eo-.. "'''' • t 10 • • •112 t,t I·t N •
• • I
ST. 3 8S 3 '2
.. T • II • • • • •
. ~: :,
1'-"
aA'2 I
Note: Commodore Semiconductor Group cannot assume liability for the use of undefined OP Codes
2-44
C= ~~@@
MPS
6510
FFFF
1 V
ADDRESSABLE
EXTERNAL
MEMORY
f
I
.;'
0200
01FF STACK
01 FF . . . - - - - - POINTER
INITIALIZED
I
STACK
Page 1
0100
OOFF
I
0000
Page 0
OUTPUT REGISTER
0000 :=J
I----.---- Used For
Internal
I/O Port
APPLICATIONS NOTES
Locating the Output Register at the internal I/O Port in Page Zero enhances the powerful Zero Page
Addressing instructions of the 6510.
By assigning the 1/0 Pins as inputs (using the Data Direction Register) the user has the ability to change the con-
tents of address 0001 (the Output Register) using peripheral devices. The ability to change these contents using
peripheral inputs, together with Zero Page Indirect Addressing instructions, allows novel and versatile programming
techniques not possible earlier.
COMMODORE SEMICONDUCTOR GROUP reserves the right to make changes to any products herein to
improve reliability, function or design. COMMODORE SEMICONDUCTOR GROUP does not assume any
liability arising at of the application or use of any product or circuit described herein; neither does it convey
any license under its patent rights nor the rights of others.
2-45