dsPIC33F/PIC24H PROGRAMMING SPECIFICATION
FIGURE 4-2:
PROGRAMMING EXECUTIVE 鈥?PROGRAMMER COMMUNICATION PROTOCOL
Host Transmits
Last Command Word
1
2
15 16
Programming Executive
Processes Command
1
2
Host Clocks Out Response
15 16
1
2
15 16
PGC
PGD
MSB X X X LSB
P8
1
P9a
0
P9b
23 碌s
MSB X X X LSB
8ns
MSB X X X LSB
PGC = Input
PGD = Input
PGC = Input (Idle)
PGD = Output
PGC = Input
PGD = Output
4.2
Programming Executive
Commands
4.2.2
PACKED DATA FORMAT
The programming executive command set is shown in
Table 4-1. This table contains the opcode, mnemonic,
length, time out and description for each command.
Functional details on each command are provided in
the command descriptions (Section
4.2.4 鈥淐ommand
Descriptions鈥?.
When 24-bit instruction words are transferred across
the 16-bit SPI interface, they are packed to conserve
space using the format shown in Figure 4-4. This
format minimizes traffic over the SPI and provides the
programming executive with data that is properly
aligned for performing table write operations.
FIGURE 4-4:
15
4.2.1
COMMAND FORMAT
PACKED INSTRUCTION
WORD FORMAT
8
7
0
All programming executive commands have a general
format consisting of a 16-bit header and any required
data for the command (see Figure 4-3). The 16-bit
header consists of a 4-bit opcode field, which is used to
identify the command, followed by a 12-bit command
length field.
LSW1
MSB2
LSW2
LSWx: Least Significant 16 bits of instruction word
MSBx: Most Significant Byte of instruction word
MSB1
FIGURE 4-3:
15
12
11
COMMAND FORMAT
0
Opcode
鈥?/div>
鈥?/div>
Length
Note:
Command Data First Word (if required)
When the number of instruction words
transferred is odd, MSB2 is zero and
LSW2 can not be transmitted.
4.2.3
Command Data Last Word (if required)
The command opcode must match one of those in the
command set. Any command that is received which
does not match the list in Table 4-1 will return a 鈥淣ACK鈥?/div>
response (see
Section 5.3.1.1 鈥淥pcode Field鈥?.
The command length is represented in 16-bit words
since the SPI operates in 16-bit mode. The program-
ming executive uses the command length field to
determine the number of words to read from the SPI
port. If the value of this field is incorrect, the command
will not be properly received by the programming
executive.
PROGRAMMING EXECUTIVE
ERROR HANDLING
The programming executive will 鈥淣ACK鈥?all
unsupported commands. Additionally, due to the
memory constraints of the programming executive, no
checking is performed on the data contained in the
programmer command. It is the responsibility of the
programmer to command the programming executive
with valid command arguments or the programming
operation may fail. Additional information on error
handling is provided in
Section 5.3.1.3 鈥淨E_Code
Field鈥?
DS70152D-page 48
Preliminary
漏
2007 Microchip Technology Inc.
prev
next