This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MT28EW128ABA flah selection

Hi team

for now, we were using MT28EW128ABA as flash in our DLP system. While we use DLP writing progress, which Part number of Flash should we select?

if we can find right Part number in the list, can we add some contents in FlashDevice.txt. Contents are as follow:

// Mfg      MfgID   LMfgID,                    Device   DevID   LDevID,            Mb Alg     Size #sec  Sector_Addresses

"Micron",   0x0089, 0x0000000000000089,   "MT28EW128A", 0x227E, 0x000000000000227E,128,0,0x1000000, 128, 0,0x20000, 0x40000, 0x60000, 0x80000, 0xA0000, 0xC0000, 0xE0000, 0x100000, 0x120000, 0x140000, 0x160000, 0x180000, 0x1A0000, 0x1C0000, 0x1E0000, 0x200000, 0x220000, 0x240000, 0x260000, 0x280000, 0x2A0000, 0x2C0000, 0x2E0000, 0x300000, 0x320000, 0x340000, 0x360000, 0x380000, 0x3A0000, 0x3C0000, 0x3E0000, 0x400000, 0x420000, 0x440000, 0x460000, 0x480000, 0x4A0000, 0x4C0000, 0x4E0000, 0x500000, 0x520000, 0x540000, 0x560000, 0x580000, 0x5A0000, 0x5C0000, 0x5E0000, 0x600000, 0x620000, 0x640000, 0x660000, 0x680000, 0x6A0000, 0x6C0000, 0x6E0000, 0x700000, 0x720000, 0x740000, 0x760000, 0x780000, 0x7A0000, 0x7C0000, 0x7E0000, 0x800000, 0x820000, 0x840000, 0x860000, 0x880000, 0x8A0000, 0x8C0000, 0x8E0000, 0x900000, 0x920000, 0x940000, 0x960000, 0x980000, 0x9A0000, 0x9C0000, 0x9E0000, 0xA00000, 0xA20000, 0xA40000, 0xA60000, 0xA80000, 0xAA0000, 0xAC0000, 0xAE0000, 0xB00000, 0xB20000, 0xB40000, 0xB60000, 0xB80000, 0xBA0000, 0xBC0000, 0xBE0000, 0xC00000, 0xC20000, 0xC40000, 0xC60000, 0xC80000, 0xCA0000, 0xCC0000, 0xCE0000, 0xD00000, 0xD20000, 0xD40000, 0xD60000, 0xD80000, 0xDA0000, 0xDC0000, 0xDE0000, 0xE00000, 0xE20000, 0xE40000, 0xE60000, 0xE80000, 0xEA0000, 0xEC0000, 0xEE0000, 0xF00000, 0xF20000, 0xF40000, 0xF60000, 0xF80000, 0xFA0000, 0xFC0000, 0xFE0000,

  • Hello Zhanpeng,

    Here is an updated version of our FlashDeviceParameter.txt file that supports the Micro MT28EW128A flash part. You can either replace the file, or you can copy the micron specific contents into your existing parameters file.

    Version, 3
    // Flash Device Information.
    // DLPC4422
    //
    //
    // Parameters that need to be setup:
    //==================================
    // Mfg              = Company name.
    // MfgId            = Manufacturer ID stored in part
    // LMfgId           = Long version of Manufacturer ID stored in part
    // Device           = Part number from data sheet.
    // DevID            = Device ID stored in part.(short_id - see Note 1.)
    // LDevID           = Long Device ID stored in part. (long_id - see Note 1.)
    // MB               = size of device in MBits (4, 8, or 16 MBit)
    // alg              = A, B or C programming algothrim (0, 1, or 2 - See Note 2.)
    // Size             = Number of bytes total.
    // #sec             = Number of sectors.
    // Sector_Addresses = List of sector addresses.
    //
    // Note 1: short_id and long_id definition
    //========================================
    // Recent Spansion and AMD devices have run out of the traditional 1-byte device IDs. To compensate for this, a new 3-byte
    // device IDs are now being used to determine the flash ID. In this file, the 1-byte IDs are referred to as "short_id" and
    // the 3-byte device IDs are referred to as "long_id". Since this text file can be used with devices that have either a
    // short_id or a long_id, each ID field will have its own column. DLP Composer will try to match the long_id value first,
    // then will resort to the short_id if the long_id cannot be found.
    //
    // If the long_id is not known or does not exist, please use 0x0000 as the long_id.
    //
    // In order to maintain consistency, the Manufacturer ID is also included in both short and long form - MfgID and LMfgID.
    //
    // Note 2: programming algorithm definition
    //=========================================
    // Most of the data above can be determined by the data sheet. Programming mode, however, is related to which 
    // family of devices the part belongs. AMD & its family of devices are denoted as class A, Intel & its family
    // are denoted as Class B, and Class C is a mix of manufacturers. The class is determined by how the device
    // is programmed and erased:
    //
    // Word Programming differences:
    //                                  Class A             Class B             Class C
    //                                  ========            =======             =======
    // 1st write cycle (addr/data):     555H/AAH            XXX/40H             5555H/AAH
    // 2nd write cycle (addr/data):     2AAH/55H            PA/PD               AAAAH/55H
    // 3rd write cycle (addr/data):     555H/A0H                                5555H/A0H
    // 4th write cycle (addr/data):     PA/PD                                   PA/PD
    //
    // PA=Programming Address
    // PD=Programming Data
    //
    // Sector Erase differences:
    //                                  Class A             Class B             Class C
    //                                  ========            =======             =======
    // 1st write cycle (addr/data):     555H/AAH            XXX/20H             5555H/AAH
    // 2nd write cycle (addr/data):     2AAH/55H            SA/D0H              2AAAH/55H
    // 3rd write cycle (addr/data):     555H/80H                                5555H/80H
    // 4th write cycle (addr/data):     555H/AAH                                5555H/AAH
    // 5th write cycle (addr/data):     2AAH/55H                                2AAAH/55H
    // 6th write cycle (addr/data):     SA/30H                                  SA/30H
    //
    // SA=Sector Address
    //
    // For the information in the table below, choose 0 for Class A devices, 1 for Class B devices, and 2 for Class 3 devices.
    // Only Flash Devices with the first sector size of 128Kb are supported.
    // Please refer to the data sheets for these parts to determine which class any new devices fall into.
    //
    //
    // Mfg      MfgID   LMfgID,                    Device   DevID   LDevID,            Mb Alg     Size #sec   Sector_Addresses
    "Macronix", 0x00C2, 0x00000000000000C2,   "MX29GL128F", 0x227E, 0x000022012221227E,128,0,0x1000000, 128,  0, 0x20000, 0x40000, 0x60000, 0x80000, 0xA0000, 0xC0000, 0xE0000, 0x100000, 0x120000, 0x140000, 0x160000, 0x180000, 0x1A0000, 0x1C0000, 0x1E0000, 0x200000, 0x220000, 0x240000, 0x260000, 0x280000, 0x2A0000, 0x2C0000, 0x2E0000, 0x300000, 0x320000, 0x340000, 0x360000, 0x380000, 0x3A0000, 0x3C0000, 0x3E0000, 0x400000, 0x420000, 0x440000, 0x460000, 0x480000, 0x4A0000, 0x4C0000, 0x4E0000, 0x500000, 0x520000, 0x540000, 0x560000, 0x580000, 0x5A0000, 0x5C0000, 0x5E0000, 0x600000, 0x620000, 0x640000, 0x660000, 0x680000, 0x6A0000, 0x6C0000, 0x6E0000, 0x700000, 0x720000, 0x740000, 0x760000, 0x780000, 0x7A0000, 0x7C0000, 0x7E0000, 0x800000, 0x820000, 0x840000, 0x860000, 0x880000, 0x8A0000, 0x8C0000, 0x8E0000, 0x900000, 0x920000, 0x940000, 0x960000, 0x980000, 0x9A0000, 0x9C0000, 0x9E0000, 0xA00000, 0xA20000, 0xA40000, 0xA60000, 0xA80000, 0xAA0000,0xAC0000, 0xAE0000, 0xB00000, 0xB20000, 0xB40000, 0xB60000, 0xB80000, 0xBA0000, 0xBC0000, 0xBE0000, 0xC00000, 0xC20000, 0xC40000, 0xC60000, 0xC80000,0xCA0000, 0xCC0000, 0xCE0000, 0xD00000, 0xD20000, 0xD40000, 0xD60000, 0xD80000, 0xDA0000, 0xDC0000, 0xDE0000, 0xE00000, 0xE20000, 0xE40000, 0xE60000, 0xE80000, 0xEA0000, 0xEC0000, 0xEE0000, 0xF00000,0xF20000, 0xF40000, 0xF60000, 0xF80000, 0xFA0000, 0xFC0000, 0xFE0000,
    "Spansion", 0x0001, 0x0000000000000001,   "S29GL128S",  0x227E, 0x000022012221227E,128,0,0x1000000, 128,  0, 0x20000, 0x40000, 0x60000, 0x80000, 0xA0000, 0xC0000, 0xE0000, 0x100000, 0x120000, 0x140000, 0x160000, 0x180000, 0x1A0000, 0x1C0000, 0x1E0000, 0x200000, 0x220000, 0x240000, 0x260000, 0x280000, 0x2A0000, 0x2C0000, 0x2E0000, 0x300000, 0x320000, 0x340000, 0x360000, 0x380000, 0x3A0000, 0x3C0000, 0x3E0000, 0x400000, 0x420000, 0x440000, 0x460000, 0x480000, 0x4A0000, 0x4C0000, 0x4E0000, 0x500000, 0x520000, 0x540000, 0x560000, 0x580000, 0x5A0000, 0x5C0000, 0x5E0000, 0x600000, 0x620000, 0x640000, 0x660000, 0x680000, 0x6A0000, 0x6C0000, 0x6E0000, 0x700000, 0x720000, 0x740000, 0x760000, 0x780000, 0x7A0000, 0x7C0000, 0x7E0000, 0x800000, 0x820000, 0x840000, 0x860000, 0x880000, 0x8A0000, 0x8C0000, 0x8E0000, 0x900000, 0x920000, 0x940000, 0x960000, 0x980000, 0x9A0000, 0x9C0000, 0x9E0000, 0xA00000, 0xA20000, 0xA40000, 0xA60000, 0xA80000, 0xAA0000,0xAC0000, 0xAE0000, 0xB00000, 0xB20000, 0xB40000, 0xB60000, 0xB80000, 0xBA0000, 0xBC0000, 0xBE0000, 0xC00000, 0xC20000, 0xC40000, 0xC60000, 0xC80000,0xCA0000, 0xCC0000, 0xCE0000, 0xD00000, 0xD20000, 0xD40000, 0xD60000, 0xD80000, 0xDA0000, 0xDC0000, 0xDE0000, 0xE00000, 0xE20000, 0xE40000, 0xE60000, 0xE80000, 0xEA0000, 0xEC0000, 0xEE0000, 0xF00000,0xF20000, 0xF40000, 0xF60000, 0xF80000, 0xFA0000, 0xFC0000, 0xFE0000,
    "Micron",   0x0089, 0x0000000000000089,   "MT28EW128A", 0x227E, 0x000000000000227E,128,0,0x1000000, 128,  0, 0x20000, 0x40000, 0x60000, 0x80000, 0xA0000, 0xC0000, 0xE0000, 0x100000, 0x120000, 0x140000, 0x160000, 0x180000, 0x1A0000, 0x1C0000, 0x1E0000, 0x200000, 0x220000, 0x240000, 0x260000, 0x280000, 0x2A0000, 0x2C0000, 0x2E0000, 0x300000, 0x320000, 0x340000, 0x360000, 0x380000, 0x3A0000, 0x3C0000, 0x3E0000, 0x400000, 0x420000, 0x440000, 0x460000, 0x480000, 0x4A0000, 0x4C0000, 0x4E0000, 0x500000, 0x520000, 0x540000, 0x560000, 0x580000, 0x5A0000, 0x5C0000, 0x5E0000, 0x600000, 0x620000, 0x640000, 0x660000, 0x680000, 0x6A0000, 0x6C0000, 0x6E0000, 0x700000, 0x720000, 0x740000, 0x760000, 0x780000, 0x7A0000, 0x7C0000, 0x7E0000, 0x800000, 0x820000, 0x840000, 0x860000, 0x880000, 0x8A0000, 0x8C0000, 0x8E0000, 0x900000, 0x920000, 0x940000, 0x960000, 0x980000, 0x9A0000, 0x9C0000, 0x9E0000, 0xA00000, 0xA20000, 0xA40000, 0xA60000, 0xA80000, 0xAA0000, 0xAC0000, 0xAE0000, 0xB00000, 0xB20000, 0xB40000, 0xB60000, 0xB80000, 0xBA0000, 0xBC0000, 0xBE0000, 0xC00000, 0xC20000, 0xC40000, 0xC60000, 0xC80000, 0xCA0000, 0xCC0000, 0xCE0000, 0xD00000, 0xD20000, 0xD40000, 0xD60000, 0xD80000, 0xDA0000, 0xDC0000, 0xDE0000, 0xE00000, 0xE20000, 0xE40000, 0xE60000, 0xE80000, 0xEA0000, 0xEC0000, 0xEE0000, 0xF00000, 0xF20000, 0xF40000, 0xF60000, 0xF80000, 0xFA0000, 0xFC0000, 0xFE0000,
    

    But to answer you question, yes you are able to modify the FlashDeviceParameter.txt file to support whatever flash device you use. Just ensure you use the correct parameters or you may get errors when trying to read/write to the flash.

    Regards,
    Oscar