// // Power Debugger Flash Memory Device Definition File // Copyright (c) 2001-2002 Debug Solutions, All Rights Reserved // // Author : A-Yasuo // Date : Jly 25, 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 Jly25,2005 Change Program/ChipErase/SectorErase Address. // Change Sector Area Address // 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 23 NEG // Adr-1 , Adr00-21 DevDef Data 8 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 L DevDef Reset ON NEG H DevDef WP ON NEG H ProgramStart // program flow definition WriteData 0xaaa 0xaa WriteData 0x555 0x55 WriteData 0xaaa 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 0xaaa 0xaa WriteData 0x555 0x55 WriteData 0xaaa 0x80 WriteData 0xaaa 0xaa WriteData 0x555 0x55 WriteData 0xaaa 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 0xaaa 0xaa WriteData 0x555 0x55 WriteData 0xaaa 0x80 WriteData 0xaaa 0xaa WriteData 0x555 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 0x00001fff 0x00000000 // 8KByte Sector 1 0x00002000 0x00003fff 0x00002000 // 8KByte Sector 2 0x00004000 0x00005fff 0x00004000 // 8KByte Sector 3 0x00006000 0x00007fff 0x00006000 // 8KByte Sector 4 0x00008000 0x00009fff 0x00008000 // 8KByte Sector 5 0x0000a000 0x0000bfff 0x0000a000 // 8KByte Sector 6 0x0000c000 0x0000dfff 0x0000c000 // 8KByte Sector 7 0x0000e000 0x0000ffff 0x0000e000 // 8KByte Sector 8 0x00010000 0x0001ffff 0x00010000 // 64KByte Sector 9 0x00020000 0x0002ffff 0x00020000 // 64KByte Sector 10 0x00030000 0x0003ffff 0x00030000 // 64KByte Sector 11 0x00040000 0x0004ffff 0x00040000 // 64KByte Sector 12 0x00050000 0x0005ffff 0x00050000 // 64KByte Sector 13 0x00060000 0x0006ffff 0x00060000 // 64KByte Sector 14 0x00070000 0x0007ffff 0x00070000 // 64KByte Sector 15 0x00080000 0x0008ffff 0x00080000 // 64KByte Sector 16 0x00090000 0x0009ffff 0x00090000 // 64KByte Sector 17 0x000a0000 0x000affff 0x000a0000 // 64KByte Sector 18 0x000b0000 0x000bffff 0x000b0000 // 64KByte Sector 19 0x000c0000 0x000cffff 0x000c0000 // 64KByte Sector 20 0x000d0000 0x000dffff 0x000d0000 // 64KByte Sector 21 0x000e0000 0x000effff 0x000e0000 // 64KByte Sector 22 0x000f0000 0x000fffff 0x000f0000 // 64KByte Sector 23 0x00100000 0x0010ffff 0x00100000 // 64KByte Sector 24 0x00110000 0x0011ffff 0x00110000 // 64KByte Sector 25 0x00120000 0x0012ffff 0x00120000 // 64KByte Sector 26 0x00130000 0x0013ffff 0x00130000 // 64KByte Sector 27 0x00140000 0x0014ffff 0x00140000 // 64KByte Sector 28 0x00150000 0x0015ffff 0x00150000 // 64KByte Sector 29 0x00160000 0x0016ffff 0x00160000 // 64KByte Sector 30 0x00170000 0x0017ffff 0x00170000 // 64KByte Sector 31 0x00180000 0x0018ffff 0x00180000 // 64KByte Sector 32 0x00190000 0x0019ffff 0x00190000 // 64KByte Sector 33 0x001a0000 0x001affff 0x001a0000 // 64KByte Sector 34 0x001b0000 0x001bffff 0x001b0000 // 64KByte Sector 35 0x001c0000 0x001cffff 0x001c0000 // 64KByte Sector 36 0x001d0000 0x001dffff 0x001d0000 // 64KByte Sector 37 0x001e0000 0x001effff 0x001e0000 // 64KByte Sector 38 0x001f0000 0x001fffff 0x001f0000 // 64KByte Sector 39 0x00200000 0x0020ffff 0x00200000 // 64KByte Sector 40 0x00210000 0x0021ffff 0x00210000 // 64KByte Sector 41 0x00220000 0x0022ffff 0x00220000 // 64KByte Sector 42 0x00230000 0x0023ffff 0x00230000 // 64KByte Sector 43 0x00240000 0x0024ffff 0x00240000 // 64KByte Sector 44 0x00250000 0x0025ffff 0x00250000 // 64KByte Sector 45 0x00260000 0x0026ffff 0x00260000 // 64KByte Sector 46 0x00270000 0x0027ffff 0x00270000 // 64KByte Sector 47 0x00280000 0x0028ffff 0x00280000 // 64KByte Sector 48 0x00290000 0x0029ffff 0x00290000 // 64KByte Sector 49 0x002a0000 0x002affff 0x002a0000 // 64KByte Sector 50 0x002b0000 0x002bffff 0x002b0000 // 64KByte Sector 51 0x002c0000 0x002cffff 0x002c0000 // 64KByte Sector 52 0x002d0000 0x002dffff 0x002d0000 // 64KByte Sector 53 0x002e0000 0x002effff 0x002e0000 // 64KByte Sector 54 0x002f0000 0x002fffff 0x002f0000 // 64KByte Sector 55 0x00300000 0x0030ffff 0x00300000 // 64KByte Sector 56 0x00310000 0x0031ffff 0x00310000 // 64KByte Sector 57 0x00320000 0x0032ffff 0x00320000 // 64KByte Sector 58 0x00330000 0x0033ffff 0x00330000 // 64KByte Sector 59 0x00340000 0x0034ffff 0x00340000 // 64KByte Sector 60 0x00350000 0x0035ffff 0x00350000 // 64KByte Sector 61 0x00360000 0x0036ffff 0x00360000 // 64KByte Sector 62 0x00370000 0x0037ffff 0x00370000 // 64KByte Sector 63 0x00380000 0x0038ffff 0x00380000 // 64KByte Sector 64 0x00390000 0x0039ffff 0x00390000 // 64KByte Sector 65 0x003a0000 0x003affff 0x003a0000 // 64KByte Sector 66 0x003b0000 0x003bffff 0x003b0000 // 64KByte Sector 67 0x003c0000 0x003cffff 0x003c0000 // 64KByte Sector 68 0x003d0000 0x003dffff 0x003d0000 // 64KByte Sector 69 0x003e0000 0x003effff 0x003e0000 // 64KByte Sector 70 0x003f0000 0x003fffff 0x003f0000 // 64KByte Sector 71 0x00400000 0x0040ffff 0x00400000 // 64KByte Sector 72 0x00410000 0x0041ffff 0x00410000 // 64KByte Sector 73 0x00420000 0x0042ffff 0x00420000 // 64KByte Sector 74 0x00430000 0x0043ffff 0x00430000 // 64KByte Sector 75 0x00440000 0x0044ffff 0x00440000 // 64KByte Sector 76 0x00450000 0x0045ffff 0x00450000 // 64KByte Sector 77 0x00460000 0x0046ffff 0x00460000 // 64KByte Sector 78 0x00470000 0x0047ffff 0x00470000 // 64KByte Sector 79 0x00480000 0x0048ffff 0x00480000 // 64KByte Sector 80 0x00490000 0x0049ffff 0x00490000 // 64KByte Sector 81 0x004a0000 0x004affff 0x004a0000 // 64KByte Sector 82 0x004b0000 0x004bffff 0x004b0000 // 64KByte Sector 83 0x004c0000 0x004cffff 0x004c0000 // 64KByte Sector 84 0x004d0000 0x004dffff 0x004d0000 // 64KByte Sector 85 0x004e0000 0x004effff 0x004e0000 // 64KByte Sector 86 0x004f0000 0x004fffff 0x004f0000 // 64KByte Sector 87 0x00500000 0x0050ffff 0x00500000 // 64KByte Sector 88 0x00510000 0x0051ffff 0x00510000 // 64KByte Sector 89 0x00520000 0x0052ffff 0x00520000 // 64KByte Sector 90 0x00530000 0x0053ffff 0x00530000 // 64KByte Sector 91 0x00540000 0x0054ffff 0x00540000 // 64KByte Sector 92 0x00550000 0x0055ffff 0x00550000 // 64KByte Sector 93 0x00560000 0x0066ffff 0x00560000 // 64KByte Sector 94 0x00570000 0x0057ffff 0x00570000 // 64KByte Sector 95 0x00580000 0x0058ffff 0x00580000 // 64KByte Sector 96 0x00590000 0x0059ffff 0x00590000 // 64KByte Sector 97 0x005a0000 0x005affff 0x005a0000 // 64KByte Sector 98 0x005b0000 0x005bffff 0x005b0000 // 64KByte Sector 99 0x005c0000 0x005cffff 0x005c0000 // 64KByte Sector 100 0x005d0000 0x005dffff 0x005d0000 // 64KByte Sector 101 0x005e0000 0x005effff 0x005e0000 // 64KByte Sector 102 0x005f0000 0x005fffff 0x005f0000 // 64KByte Sector 103 0x00600000 0x0060ffff 0x00600000 // 64KByte Sector 104 0x00610000 0x0061ffff 0x00610000 // 64KByte Sector 105 0x00620000 0x0062ffff 0x00620000 // 64KByte Sector 106 0x00630000 0x0063ffff 0x00630000 // 64KByte Sector 107 0x00640000 0x0064ffff 0x00640000 // 64KByte Sector 108 0x00650000 0x0065ffff 0x00650000 // 64KByte Sector 109 0x00660000 0x0066ffff 0x00660000 // 64KByte Sector 110 0x00670000 0x0067ffff 0x00670000 // 64KByte Sector 111 0x00680000 0x0068ffff 0x00680000 // 64KByte Sector 112 0x00690000 0x0069ffff 0x00690000 // 64KByte Sector 113 0x006a0000 0x006affff 0x006a0000 // 64KByte Sector 114 0x006b0000 0x006bffff 0x006b0000 // 64KByte Sector 115 0x006c0000 0x006cffff 0x006c0000 // 64KByte Sector 116 0x006d0000 0x006dffff 0x006d0000 // 64KByte Sector 117 0x006e0000 0x006effff 0x006e0000 // 64KByte Sector 118 0x006f0000 0x006fffff 0x006f0000 // 64KByte Sector 119 0x00700000 0x0070ffff 0x00700000 // 64KByte Sector 120 0x00710000 0x0071ffff 0x00710000 // 64KByte Sector 121 0x00720000 0x0072ffff 0x00720000 // 64KByte Sector 122 0x00730000 0x0073ffff 0x00730000 // 64KByte Sector 123 0x00740000 0x0074ffff 0x00740000 // 64KByte Sector 124 0x00750000 0x0075ffff 0x00750000 // 64KByte Sector 125 0x00760000 0x0076ffff 0x00760000 // 64KByte Sector 126 0x00770000 0x0077ffff 0x00770000 // 64KByte Sector 127 0x00780000 0x0078ffff 0x00780000 // 64KByte Sector 128 0x00790000 0x0079ffff 0x00790000 // 64KByte Sector 129 0x007a0000 0x007affff 0x007a0000 // 64KByte Sector 130 0x007b0000 0x007bffff 0x007b0000 // 64KByte Sector 131 0x007c0000 0x007cffff 0x007c0000 // 64KByte Sector 132 0x007d0000 0x007dffff 0x007d0000 // 64KByte Sector 133 0x007e0000 0x007effff 0x007e0000 // 64KByte Sector 134 0x007f0000 0x007f1fff 0x007f0000 // 8KByte Sector 135 0x007f2000 0x007f3fff 0x007f2000 // 8KByte Sector 136 0x007f4000 0x007f5fff 0x007f4000 // 8KByte Sector 137 0x007f6000 0x007f7fff 0x007f6000 // 8KByte Sector 138 0x007f8000 0x007f9fff 0x007f8000 // 8KByte Sector 139 0x007fa000 0x007fbfff 0x007fa000 // 8KByte Sector 140 0x007fc000 0x007fdfff 0x007fc000 // 8KByte Sector 141 0x007fe000 0x007fffff 0x007fe000 // 8KByte