Differences in the SQTP Feature Between MPLAB® IDE v8.xx and MPLAB IPE for the Flash Data Memory Region

Table 1 shows examples of SQTP files created by MPLAB® IDE v8.92 and several versions of MPLAB IPE for the PIC12F529T39A Flash Data memory region. Issues with these files are discussed in the following sections

Table 1: SQTP Files for the PIC12F529T39A

Example IDE Settings SQTP File
1 MPLAB IDE v8.92 Generation Method: Random*
Location: Flash Data
Access Method: RETLW (Raw Data selection unavailable)
Start Address (Hex): 0
Number of Bytes (Dec): 2
Number of Parts (Dec): 5
:020000040000fa
:04060000F808D1081D
:040600005508B308DE
:04060000850852080F
:040600009B08EC085F
:040600006008840802
:00000001FF
2 MPLAB IPE v2.20 (and before) Generation Method: Random*
Location: Flash Data
Access Method: RETLW (Raw Data selection unavailable)
Start Address (Hex): 600
Number of Bytes (Dec): 2
Number of Parts (Dec): 5
:020000040000FA
:04060000F808D1081D
:040600005508B308DE
:04060000850852080F
:040600009B08EC085F
:040600006008840802
:00000001FF
3 MPLAB IPE v2.25 Generation Method: Random*
Location: Flash Data
Access Method: RETLW (Raw Data selection unavailable)
Start Address (Hex): 600
Number of Bytes (Dec): 2
Number of Parts (Dec): 5
:020000040000FA
:040C0000F808D10817
:040C00005508B308D8
:040C00008508520809
:040C00009B08EC0859
:040C000060088408FC
:00000001FF
4 MPLAB IPE v2.26 (and later) Generation Method: Random*
Location: Flash Data
Access Method: Raw Data (RETLW selection unavailable)
Start Address (Hex): 600
Number of Bytes (Dec): 2
Number of Parts (Dec): 5
:020000040000FA
:020C0000F8D129
:020C000055B3EA
:020C000085521B
:020C00009BEC6B
:020C000060840E
:00000001FF
* The same "random" serial numbers are shown in each example for comparison.

Issue 1: RETLW Included in SQTP file

In Table 1, Examples 1, 2 and 3, the RETLW option for the SQTP file should not have been allowed for Flash data because Flash data is equivalent to the EEPROM region which should not contain the RETLW instruction.

Example 4 shows the issue fixed and does not have the option for RETLW in Flash data memory.

For the examples in Table 1, RETLW is 08h.

Issue 2: SQTP Does Not Load Properly

For Table 1, Example 1, the incorrectly added RETLW instruction in the SQTP file (see Issue 1: RETLW Included in SQTP file) is omitted when the file is reloaded into IDE memory. For Examples 2 and 3, the SQTP file is reloaded into IPE memory with the RETLW instruction. See Table 2.

Table 2: SQTP Reloaded into IDE/IPE Memory

Table 1 Example Flash Data Memory View
1
FlashDataIDEv8.png
2* and 3*
FlashDataIPE.png
* Flash Data memory begins at 600h. MPLAB IPE memory window shows first address of this memory region as 0h.

Issue 3: MPLAB IDE v8 SQTP File Addressing Not Intel Hex Standard

MPLAB IDE v8 does not follow the Intel Hex file standard in addressing Flash data. There is no issue for those who generate and use the file in MPLAB IDE v8. However, there is an issue when the SQTP files from MPLAB IDE v8 are used in MPLAB IPE before v2.25. The issue has been fixed in MPLAB IPE v2.25 (and after).

For Table 1, Examples 1 and 2 have an SQTP file address of 0600, whereas Examples 3 and 4 correctly show 0C00.

© 2017 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.