Cypress enCoRe CY7C63310 User Manual
Page 18

CY7C63310, CY7C638xx
Document 38-08035 Rev. *K
Page 18 of 83
Figure 9-3. SROM Table
The Silicon IDs for enCoRe II devices are stored in SROM tables in the part, as shown in
The Silicon ID can be read out from the part using SROM Table reads (Table 0). This is demonstrated in the following pseudo code.
As mentioned in the section
on page 14, the SROM variables occupy address F8h through FFh in the SRAM. Each of the
variables and their definition is given in the section
AREA SSCParmBlkA(RAM,ABS)
org F8h // Variables are defined starting at address F8h
SSC_KEY1:
; F8h supervisory key
SSC_RETURNCODE:
blk 1 ; F8h result code
SSC_KEY2 :
blk 1 ;F9h supervisory stack ptr key
SSC_BLOCKID:
blk 1 ; FAh block ID
SSC_POINTER:
blk 1 ; FBh pointer to data buffer
SSC_CLOCK:
blk 1 ; FCh Clock
SSC_MODE:
blk 1 ; FDh ClockW ClockE multiplier
SSC_DELAY:
blk 1 ; FEh flash macro sequence delay count
SSC_WRITE_ResultCode: blk 1 ; FFh temporary result code
_main:
mov A, 0
mov [SSC_BLOCKID], A// To read from Table 0 - Silicon ID is stored in Table 0
//Call SROM operation to read the SROM table
mov X, SP
; copy SP into X
mov A, X
; A temp stored in X
add A, 3 ; create 3 byte stack frame (2 + pushed A)
mov [SSC_KEY2], A ; save stack frame for supervisory code
; load the supervisory code for flash operations
mov [SSC_KEY1], 3Ah ;FLASH_OPER_KEY - 3Ah
mov A,6
; load A with specific operation. 06h is the code for Table read
SSC
; SSC call the supervisory ROM
// At the end of the SSC command the silicon ID is stored in F8 (MSB) and F9(LSB) of the SRAM
.terminate:
jmp .terminate
F8h
F9h
FAh
FBh
FCh
FDh
FEh
FFh
Table 0
Table 1
Table 2
Table 3
Table 4
Table 5
Table 6
Table 7
Silicon ID
[15-8]
Silicon ID
[7-0]
Family/
Die ID
Revision
ID