December 3, 2005 S29WS-N_m0_I0
43
Pr elim ina r y
&KLS(UDVH&RPPDQG6HTXHQFH
&KLS HUDVH LV D VL[EXV F\FOH RSHUDWLRQ DV LQGLFDWHG E\
7DEOH 7KHVH FRPPDQGV LQYRNH WKH
(PEHGGHG (UDVH DOJRULWKP ZKLFK GRHV QRW UHTXLUH WKH V\VWHP WR SUHSURJUDP SULRU WR HUDVH 7KH
(PEHGGHG (UDVH DOJRULWKP DXWRPDWLFDOO\ SUHSURJUDPV DQG YHULILHV WKH HQWLUH PHPRU\ IRU DQ DOO
]HURGDWDSDWWHUQSULRUWRHOHFWULFDOHUDVH$IWHU DVXFFHVVIXOFKLSHUDVHDOOORFDWLRQVRIWKHFKLS
FRQWDLQ ))))K 7KH V\VWHP LV QRW UHTXLUHG WR SURYLGH DQ\ FRQWUROV RU WLPLQJV GXULQJ WKHVH RS
HUDWLRQV 7KH &RPPDQG 'HILQLWLRQ VHFWLRQ LQ WKH DSSHQGL[ VKRZV WKH DGGUHVV DQG GDWD
UHTXLUHPHQWVIRU WKH FKLS HUDVH FRPPDQG VHTXHQFH
:KHQ WKH (PEHGGHG (UDVH DOJRULWKP LV FRPSOHWH WKDW EDQN UHWXUQV WR WKH UHDG PRGH DQG DG
GUHVVHV DUH QR ORQJHU ODWFKHG 7KH V\VWHP FDQ GHWHUPLQH WKH VWDWXV RI WKH HUDVH RSHUDWLRQ E\
XVLQJ'4 RU'4'4 5HIHUWR:ULWH 2SHUDWLRQ6WDWXV IRULQIRUPDWLRQRQWKHVHVWDWXVELWV
$Q\FRPPDQGVZULWWHQGXULQJWKHFKLSHUDVHRSHUDWLRQDUH LJQRUHG+RZHYHU QRWHWKDWDKDUG
ZDUH UHVHW LPPHGLDWHO\ WHUPLQDWHV WKH HUDVH RSHUDWLRQ ,I WKDW RFFXUV WKH FKLS HUDVH FRPPDQG
VHTXHQFH VKRXOG EH UHLQLWLDWHG RQFH WKDW EDQN KDV UHWXUQHG WR UHDGLQJ DUUD\ GDWD WR HQVXUH GDWD
LQWHJULW\
7KHIROORZLQJ LVD&VRXUFH FRGH H[DPSOH RIXVLQJWKHFKLSHUDVHIXQFWLRQ5HIHUWRWKH 6SDQVLRQ
/RZ /HYHO 'ULYHU 8VHUV *XLGH DYDLODEOH RQZZZDPGFRPDQG ZZZIXMLWVXFRPIRUJHQHUDO LQ
IRUPDWLRQRQ 6SDQVLRQ)ODVKPHPRU\ VRIWZDUHGHYHORSPHQWJXLGHOLQHV
/* Example: Chip Erase Command */
/* Note: Cannot be suspended
*/
*( (UINT16 *)base_addr + 0x555 ) = 0x00AA;
/* write unlock cycle 1
*/
*( (UINT16 *)base_addr + 0x2AA ) = 0x0055;
/* write unlock cycle 2
*/
*( (UINT16 *)base_addr + 0x555 ) = 0x0080;
/* write setup command
*/
*( (UINT16 *)base_addr + 0x555 ) = 0x00AA;
/* write additional unlock cycle 1 */
*( (UINT16 *)base_addr + 0x2AA ) = 0x0055;
/* write additional unlock cycle 2 */
*( (UINT16 *)base_addr + 0x000 ) = 0x0010;
/* write chip erase command
*/
(UDVH6XVSHQG(UDVH5HVXPH&RPPDQGV
:KHQ WKH (UDVH 6XVSHQG FRPPDQG LV ZULWWHQ GXULQJ WKH VHFWRU HUDVH WLPHRXW WKH GHYLFH LP
PHGLDWHO\ WHUPLQDWHV WKH WLPHRXW SHULRG DQG VXVSHQGV WKH HUDVH RSHUDWLRQ 7KH (UDVH 6XVSHQG
FRPPDQG DOORZV WKH V\VWHP WR LQWHUUXSW D VHFWRU HUDVH RSHUDWLRQ DQG WKHQ UHDG GDWD IURP RU
SURJUDP GDWD WR DQ\ VHFWRU QRW VHOHFWHG IRU HUDVXUH 7KH EDQN DGGUHVV LV UHTXLUHG ZKHQ ZULWLQJ
WKLV FRPPDQG 7KLV FRPPDQG LV YDOLG RQO\ GXULQJ WKH VHFWRU HUDVH RSHUDWLRQ LQFOXGLQJ WKH PLQ
LPXP W6($ WLPHRXW SHULRG GXULQJ WKH VHFWRU HUDVH FRPPDQG VHTXHQFH 7KH (UDVH 6XVSHQG
FRPPDQG LVLJQRUHG LIZULWWHQ GXULQJ WKH FKLS HUDVH RSHUDWLRQ
Software Functions and Sample Code
Table 10.17.
Chip Erase
//')XQFWLRQ
OOGB&KLS(UDVH&PG
Cycle
Description
Operation
Byte Address
Word Address
Data
8QORFN
:ULWH
%DVH $$$K
%DVH K
$$K
8QORFN
:ULWH
%DVH K
%DVH $$K
K
6HWXS &RPPDQG
:ULWH
%DVH $$$K
%DVH K
K
8QORFN
:ULWH
%DVH $$$K
%DVH K
$$K
8QORFN
:ULWH
%DVH K
%DVH $$K
K
&KLS (UDVH &RPPDQG
:ULWH
%DVH $$$K
%DVH K
K