// // Power Debugger Flash Memory Device Definition File // Copyright (c) 2001-2002 Debug Solutions, All Rights Reserved // // Author : A-Yasuo // Date : Jun 06, 2005 // Document Tytle : MBM29DL640E80/90/12 // MBM29DL640F60/70 // Document No. : DS05-20887-2(MBM29DL640E80/90/12) // DS05-20898-2(MBM29DL640F60/70) // // Revision History: Ver1.2 Jun06,2005 support Address Fetch Timing Definition. // separate 8bit_Composition and 8bit_Composition. // Ver1.1 Sep09,2002 Written. // // // Capacity : 64Mbit // Composition : 08bit x 8M // 16bit x 4M // DevVer 1 2 DevMaker Fujitsu DevName MBM29DL640E // | // +------ MBM29DL640F // Device definition DevDef Adr 22 NEG // Adr00-21 DevDef Data 16 DevDef Sector 142 DevDef CS1 ON NEG H DevDef CS2 OFF DevDef OE1 ON NEG H DevDef OE2 OFF DevDef WE1 ON NEG H DevDef WE2 OFF DevDef Byte ON NEG H DevDef Reset ON NEG H DevDef WP ON NEG H ProgramStart // program flow definition WriteData 0x555 0xaa WriteData 0x2aa 0x55 WriteData 0x555 0xa0 WriteData #Address #Data :Data_Polling ReadData #Address // Set read data to intenal variable CompData 0x80 #Data then :OK // Compare { internal_variable & bit_mask(0x80) } to { #Data & bit_mask(0x80) } CompData 0x20 0x20 else :Data_Polling // Compare { internal_variable & bit_mask(0x20) } to 0x20 ReadData #Address CompData 0x80 #Data then :OK else :Error_Det :OK End :Error_Det Error ProgramEnd // program flow definition end ChipEraseStart // chip erase flow definition WriteData 0x555 0xaa WriteData 0x2aa 0x55 WriteData 0x555 0x80 WriteData 0x555 0xaa WriteData 0x2aa 0x55 WriteData 0x555 0x10 :Data_Polling ReadData 0x0 // Chip erase address allow anywhere in chip CompData 0x80 0x80 then :OK // Compare { internal_variable & bit_mask(0x80) } to { #Data & bit_mask(0x80) } CompData 0x20 0x20 else :Data_Polling // Compare { internal_variable & bit_mask(0x20) } to 0x20 ReadData 0x0 CompData 0x80 0x80 then :OK else :Error_Det :OK End :Error_Det Error ChipEraseEnd // chip erase flow definition end SectorEraseStart // sector erase flow definition WriteData 0x555 0xaa WriteData 0x2aa 0x55 WriteData 0x555 0x80 WriteData 0x555 0xaa WriteData 0x2aa 0x55 WriteData #Address 0x30 :Data_Polling ReadData #Address // Sector erase address allow anywhere in sector CompData 0x80 0x80 then :OK // Compare { internal_variable & bit_mask(0x80) } to { #Data & bit_mask(0x80) } CompData 0x20 0x20 else :Data_Polling // Compare { internal_variable & bit_mask(0x20) } to 0x20 ReadData #Address CompData 0x80 0x80 then :OK else :Error_Det :OK End :Error_Det Error SectorEraseEnd // sector erase flow definition end // // Sector Area Range // // Num Start_Adr End_Adr Erase_Adr //------------------------------------------------------------ Sector 0 0x00000000 0x00000fff 0x00000000 // 4KWord( 8KByte) Sector 1 0x00001000 0x00001fff 0x00001000 // 4KWord( 8KByte) Sector 2 0x00002000 0x00002fff 0x00002000 // 4KWord( 8KByte) Sector 3 0x00003000 0x00003fff 0x00003000 // 4KWord( 8KByte) Sector 4 0x00004000 0x00004fff 0x00004000 // 4KWord( 8KByte) Sector 5 0x00005000 0x00005fff 0x00005000 // 4KWord( 8KByte) Sector 6 0x00006000 0x00006fff 0x00006000 // 4KWord( 8KByte) Sector 7 0x00007000 0x00007fff 0x00007000 // 4KWord( 8KByte) Sector 8 0x00008000 0x0000ffff 0x00008000 // 32KWord(64KByte) Sector 9 0x00010000 0x00017fff 0x00010000 // 32KWord(64KByte) Sector 10 0x00018000 0x0001ffff 0x00018000 // 32KWord(64KByte) Sector 11 0x00020000 0x00027fff 0x00020000 // 32KWord(64KByte) Sector 12 0x00028000 0x0002ffff 0x00028000 // 32KWord(64KByte) Sector 13 0x00030000 0x00037fff 0x00030000 // 32KWord(64KByte) Sector 14 0x00038000 0x0003ffff 0x00038000 // 32KWord(64KByte) Sector 15 0x00040000 0x00047fff 0x00040000 // 32KWord(64KByte) Sector 16 0x00048000 0x0004ffff 0x00048000 // 32KWord(64KByte) Sector 17 0x00050000 0x00057fff 0x00050000 // 32KWord(64KByte) Sector 18 0x00058000 0x0005ffff 0x00058000 // 32KWord(64KByte) Sector 19 0x00060000 0x00067fff 0x00060000 // 32KWord(64KByte) Sector 20 0x00068000 0x0006ffff 0x00068000 // 32KWord(64KByte) Sector 21 0x00070000 0x00077fff 0x00070000 // 32KWord(64KByte) Sector 22 0x00078000 0x0007ffff 0x00078000 // 32KWord(64KByte) Sector 23 0x00080000 0x00087fff 0x00080000 // 32KWord(64KByte) Sector 24 0x00088000 0x0008ffff 0x00088000 // 32KWord(64KByte) Sector 25 0x00090000 0x00097fff 0x00090000 // 32KWord(64KByte) Sector 26 0x00098000 0x0009ffff 0x00098000 // 32KWord(64KByte) Sector 27 0x000a0000 0x000a7fff 0x000a0000 // 32KWord(64KByte) Sector 28 0x000a8000 0x000affff 0x000a8000 // 32KWord(64KByte) Sector 29 0x000b0000 0x000b7fff 0x000b0000 // 32KWord(64KByte) Sector 30 0x000b8000 0x000bffff 0x000b8000 // 32KWord(64KByte) Sector 31 0x000c0000 0x000c7fff 0x000c0000 // 32KWord(64KByte) Sector 32 0x000c8000 0x000cffff 0x000c8000 // 32KWord(64KByte) Sector 33 0x000d0000 0x000d7fff 0x000d0000 // 32KWord(64KByte) Sector 34 0x000d8000 0x000dffff 0x000d8000 // 32KWord(64KByte) Sector 35 0x000e0000 0x000e7fff 0x000e0000 // 32KWord(64KByte) Sector 36 0x000e8000 0x000effff 0x000e8000 // 32KWord(64KByte) Sector 37 0x000f0000 0x000f7fff 0x000f0000 // 32KWord(64KByte) Sector 38 0x000f8000 0x000fffff 0x000f8000 // 32KWord(64KByte) Sector 39 0x00100000 0x00107fff 0x00100000 // 32KWord(64KByte) Sector 40 0x00108000 0x0010ffff 0x00108000 // 32KWord(64KByte) Sector 41 0x00110000 0x00117fff 0x00110000 // 32KWord(64KByte) Sector 42 0x00118000 0x0011ffff 0x00118000 // 32KWord(64KByte) Sector 43 0x00120000 0x00127fff 0x00120000 // 32KWord(64KByte) Sector 44 0x00128000 0x0012ffff 0x00128000 // 32KWord(64KByte) Sector 45 0x00130000 0x00137fff 0x00130000 // 32KWord(64KByte) Sector 46 0x00138000 0x0013ffff 0x00138000 // 32KWord(64KByte) Sector 47 0x00140000 0x00147fff 0x00140000 // 32KWord(64KByte) Sector 48 0x00148000 0x0014ffff 0x00148000 // 32KWord(64KByte) Sector 49 0x00150000 0x00157fff 0x00150000 // 32KWord(64KByte) Sector 50 0x00158000 0x0015ffff 0x00158000 // 32KWord(64KByte) Sector 51 0x00160000 0x00167fff 0x00160000 // 32KWord(64KByte) Sector 52 0x00168000 0x0016ffff 0x00168000 // 32KWord(64KByte) Sector 53 0x00170000 0x00177fff 0x00170000 // 32KWord(64KByte) Sector 54 0x00178000 0x0017ffff 0x00178000 // 32KWord(64KByte) Sector 55 0x00180000 0x00187fff 0x00180000 // 32KWord(64KByte) Sector 56 0x00188000 0x0018ffff 0x00188000 // 32KWord(64KByte) Sector 57 0x00190000 0x00197fff 0x00190000 // 32KWord(64KByte) Sector 58 0x00198000 0x0019ffff 0x00198000 // 32KWord(64KByte) Sector 59 0x001a0000 0x001a7fff 0x001a0000 // 32KWord(64KByte) Sector 60 0x001a8000 0x001affff 0x001a8000 // 32KWord(64KByte) Sector 61 0x001b0000 0x001b7fff 0x001b0000 // 32KWord(64KByte) Sector 62 0x001b8000 0x001bffff 0x001b8000 // 32KWord(64KByte) Sector 63 0x001c0000 0x001c7fff 0x001c0000 // 32KWord(64KByte) Sector 64 0x001c8000 0x001cffff 0x001c8000 // 32KWord(64KByte) Sector 65 0x001d0000 0x001d7fff 0x001d0000 // 32KWord(64KByte) Sector 66 0x001d8000 0x001dffff 0x001d8000 // 32KWord(64KByte) Sector 67 0x001e0000 0x001e7fff 0x001e0000 // 32KWord(64KByte) Sector 68 0x001e8000 0x001effff 0x001e8000 // 32KWord(64KByte) Sector 69 0x001f0000 0x001f7fff 0x001f0000 // 32KWord(64KByte) Sector 70 0x001f8000 0x001fffff 0x001f8000 // 32KWord(64KByte) Sector 71 0x00200000 0x00207fff 0x00200000 // 32KWord(64KByte) Sector 72 0x00208000 0x0020ffff 0x00208000 // 32KWord(64KByte) Sector 73 0x00210000 0x00217fff 0x00210000 // 32KWord(64KByte) Sector 74 0x00218000 0x0021ffff 0x00218000 // 32KWord(64KByte) Sector 75 0x00220000 0x00227fff 0x00220000 // 32KWord(64KByte) Sector 76 0x00228000 0x0022ffff 0x00228000 // 32KWord(64KByte) Sector 77 0x00230000 0x00237fff 0x00230000 // 32KWord(64KByte) Sector 78 0x00238000 0x0023ffff 0x00238000 // 32KWord(64KByte) Sector 79 0x00240000 0x00247fff 0x00240000 // 32KWord(64KByte) Sector 80 0x00248000 0x0024ffff 0x00248000 // 32KWord(64KByte) Sector 81 0x00250000 0x00257fff 0x00250000 // 32KWord(64KByte) Sector 82 0x00258000 0x0025ffff 0x00258000 // 32KWord(64KByte) Sector 83 0x00260000 0x00267fff 0x00260000 // 32KWord(64KByte) Sector 84 0x00268000 0x0026ffff 0x00268000 // 32KWord(64KByte) Sector 85 0x00270000 0x00277fff 0x00270000 // 32KWord(64KByte) Sector 86 0x00278000 0x0027ffff 0x00278000 // 32KWord(64KByte) Sector 87 0x00280000 0x00287fff 0x00280000 // 32KWord(64KByte) Sector 88 0x00288000 0x0028ffff 0x00288000 // 32KWord(64KByte) Sector 89 0x00290000 0x00297fff 0x00290000 // 32KWord(64KByte) Sector 90 0x00298000 0x0029ffff 0x00298000 // 32KWord(64KByte) Sector 91 0x002a0000 0x002a7fff 0x002a0000 // 32KWord(64KByte) Sector 92 0x002a8000 0x002affff 0x002a8000 // 32KWord(64KByte) Sector 93 0x002b0000 0x002b7fff 0x002b0000 // 32KWord(64KByte) Sector 94 0x002b8000 0x002bffff 0x002b8000 // 32KWord(64KByte) Sector 95 0x002c0000 0x002c7fff 0x002c0000 // 32KWord(64KByte) Sector 96 0x002c8000 0x002cffff 0x002c8000 // 32KWord(64KByte) Sector 97 0x002d0000 0x002d7fff 0x002d0000 // 32KWord(64KByte) Sector 98 0x002d8000 0x002dffff 0x002d8000 // 32KWord(64KByte) Sector 99 0x002e0000 0x002e7fff 0x002e0000 // 32KWord(64KByte) Sector 100 0x002e8000 0x002effff 0x002e8000 // 32KWord(64KByte) Sector 101 0x002f0000 0x002f7fff 0x002f0000 // 32KWord(64KByte) Sector 102 0x002f8000 0x002fffff 0x002f8000 // 32KWord(64KByte) Sector 103 0x00300000 0x00307fff 0x00300000 // 32KWord(64KByte) Sector 104 0x00308000 0x0030ffff 0x00308000 // 32KWord(64KByte) Sector 105 0x00310000 0x00317fff 0x00310000 // 32KWord(64KByte) Sector 106 0x00318000 0x0031ffff 0x00318000 // 32KWord(64KByte) Sector 107 0x00320000 0x00327fff 0x00320000 // 32KWord(64KByte) Sector 108 0x00328000 0x0032ffff 0x00328000 // 32KWord(64KByte) Sector 109 0x00330000 0x00337fff 0x00330000 // 32KWord(64KByte) Sector 110 0x00338000 0x0033ffff 0x00338000 // 32KWord(64KByte) Sector 111 0x00340000 0x00347fff 0x00340000 // 32KWord(64KByte) Sector 112 0x00348000 0x0034ffff 0x00348000 // 32KWord(64KByte) Sector 113 0x00350000 0x00357fff 0x00350000 // 32KWord(64KByte) Sector 114 0x00358000 0x0035ffff 0x00358000 // 32KWord(64KByte) Sector 115 0x00360000 0x00367fff 0x00360000 // 32KWord(64KByte) Sector 116 0x00368000 0x0036ffff 0x00368000 // 32KWord(64KByte) Sector 117 0x00370000 0x00377fff 0x00370000 // 32KWord(64KByte) Sector 118 0x00378000 0x0037ffff 0x00378000 // 32KWord(64KByte) Sector 119 0x00380000 0x00387fff 0x00380000 // 32KWord(64KByte) Sector 120 0x00388000 0x0038ffff 0x00388000 // 32KWord(64KByte) Sector 121 0x00390000 0x00397fff 0x00390000 // 32KWord(64KByte) Sector 122 0x00398000 0x0039ffff 0x00398000 // 32KWord(64KByte) Sector 123 0x003a0000 0x003a7fff 0x003a0000 // 32KWord(64KByte) Sector 124 0x003a8000 0x003affff 0x003a8000 // 32KWord(64KByte) Sector 125 0x003b0000 0x003b7fff 0x003b0000 // 32KWord(64KByte) Sector 126 0x003b8000 0x003bffff 0x003b8000 // 32KWord(64KByte) Sector 127 0x003c0000 0x003c7fff 0x003c0000 // 32KWord(64KByte) Sector 128 0x003c8000 0x003cffff 0x003c8000 // 32KWord(64KByte) Sector 129 0x003d0000 0x003d7fff 0x003d0000 // 32KWord(64KByte) Sector 130 0x003d8000 0x003dffff 0x003d8000 // 32KWord(64KByte) Sector 131 0x003e0000 0x003e7fff 0x003e0000 // 32KWord(64KByte) Sector 132 0x003e8000 0x003effff 0x003e8000 // 32KWord(64KByte) Sector 133 0x003f0000 0x003f7fff 0x003f0000 // 32KWord(64KByte) Sector 134 0x003f8000 0x003f8fff 0x003f8000 // 4KWord( 8KByte) Sector 135 0x003f9000 0x003f9fff 0x003f9000 // 4KWord( 8KByte) Sector 136 0x003fa000 0x003fafff 0x003fa000 // 4KWord( 8KByte) Sector 137 0x003fb000 0x003fbfff 0x003fb000 // 4KWord( 8KByte) Sector 138 0x003fc000 0x003fcfff 0x003fc000 // 4KWord( 8KByte) Sector 139 0x003fd000 0x003fdfff 0x003fd000 // 4KWord( 8KByte) Sector 140 0x003fe000 0x003fefff 0x003fe000 // 4KWord( 8KByte) Sector 141 0x003ff000 0x003fffff 0x003ff000 // 4KWord( 8KByte)