Cypress Semiconductor Perform CY8C24x94 User Manual Page 14

  • Download
  • Add to my manuals
  • Print
  • Page
    / 28
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 13
14 PSoC® 1 ISSP Programming Specifications, Document No. 001-15239 Rev. *J
Programming Flow
A Bulk Erase operation must be executed to prepare the
flash for programming.
The ERASE vector-set is sent. As before, the programmer
must wait and poll the SDATA line for a HIGH to LOW
transition before continuing with the Program procedure.
To place the actual program image into the flash, the
program portion of the .hex (see Appendix B on page 25) is
read by the programmer in 64-byte blocks. This is written
into the SRAM of the target, one byte at a time, using the
WRITE-BYTE vector whose format is shown in Figure 3-10.
After the programmer completely writes the block into the
target’s SRAM, the block number to be written is set using
the SET-BLOCK-NUM vector. Then the PROGRAM-BLOCK
is sent. The PROGRAM-BLOCK vector executes a write
block operation. Following the previous commands, the
programmer must wait and poll the SDATA line before
continuing. This loop is executed for each 64-byte block of
the program image until the entire program is loaded into the
flash. Note that data can only be written to Flash in 64-byte
blocks.
Figure 3-10. WRITE-BYTE (D7..D0) to Target PSoC 1 (At address A7..A0)
3.4 Verify Procedure
The Verify Procedure, as shown in Figure 3-12 on page 15, is responsible for verification of the programmed Flash.
Flash must be verified to ensure program integrity. This procedure uses a loop to read back the same number of blocks
programmed into the flash. To verify a block of flash, the SET-BLOCK-NUM vector (see Appendix A on page 21) is first sent
with the ‘dddddddd’ in the vector replaced with the block number to be read from flash.
The programmer sends the VERIFY-SETUP vector-set and then waits and polls. Each Read Block operation reads a 64-byte
block from Flash and stores the data in the target’s SRAM. The programmer must then use the READ-BYTE vector (see
Figure 3-11) to individually read each byte in the block. After the programmer reads the block, the programming software must
compare it with the block written to the flash. Data mismatch denotes an incorrect flash write; the programmer must terminate
the programming flow as a failure.
Figure 3-11. READ-BYTE From Target for Verify operation
1
0
0
A7
A6
A1
A0
D7
D6
D1
D0 1
1
1
SCLK
SDATA
1
0
1
ZD7D6
D1
D0 Z 1
SCLK
SDATA
Programmer Drives SDATA
Target Drives SDATA
A5 A0A4
0
1
Page view 13
1 2 ... 9 10 11 12 13 14 15 16 17 18 19 ... 27 28

Comments to this Manuals

No comments