This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to understand .m51 files contents?

Hi Fellas,

Please help me in finding the size of Flash(ROM) and RAM used by the Firmware. The firmware is implemented using C++. Also I have Keil microvision4; will it be helpful to find the ROM and RAM size?

OR do I need to look at the MAP(.M51) file of the firmware to find the memory sizes? OR just telling the size of hex files(.hex) file is enough for locating the size of ROM?

Please help me finding the size of different segments. Just the important contents from my generated map file are,

LINK MAP OF MODULE: Base (PCOEFFS)

TYPE BASE LENGTH RELOCATION SEGMENT NAME -----------------------------------------------------

* * * * * * * D A T A M E M O R Y * * * * * * * REG 0000H 0008H ABSOLUTE "REG BANK 0" REG 0008H 0008H ABSOLUTE "REG BANK 1" REG 0010H 0008H ABSOLUTE "REG BANK 2" REG 0018H 0008H ABSOLUTE "REG BANK 3" BIT 0020H.0 0001H.1 UNIT _BIT_GROUP_ BIT 0021H.1 0000H.3 UNIT ?BI?DT_MAIN BIT 0021H.4 0000H.2 UNIT ?BI?UPLINK 0021H.6 0000H.2 *** GAP *** DATA 0022H 0040H UNIT _DATA_GROUP_ DATA 0062H 0007H UNIT ?DT?UPLINK DATA 0069H 0003H UNIT ?DT?DT_MAIN IDATA 006CH 0019H UNIT ?ID?UPLINK IDATA 0085H 0014H UNIT ?ID?PRESSURE IDATA 0099H 0010H UNIT ?ID?PUTCHAR IDATA 00A9H 000FH UNIT _IDATA_GROUP_ IDATA 00B8H 0002H UNIT ?ID?DT_MAIN IDATA 00BAH 0001H UNIT ?STACK

* * * * * * * X D A T A M E M O R Y * * * * * * * XDATA 0000H 037EH UNIT ?XD?DT_MAIN XDATA 037EH 003EH UNIT ?XD?UPLINK XDATA 03BCH 0015H UNIT ?XD?VIBRATION XDATA 03D1H 0010H UNIT ?XD?PRESSURE XDATA 03E1H 000CH UNIT _XDATA_GROUP_ XDATA 03EDH 0002H UNIT ?XD?PUTCHAR

* * * * * * * C O D E M E M O R Y * * * * * * * CODE 0000H 0003H ABSOLUTE 0003H 0020H *** GAP *** CODE 0023H 0003H ABSOLUTE 0026H 0005H *** GAP *** CODE 002BH 0003H ABSOLUTE 002EH 0005H *** GAP ***
BL51 BANKED LINKER/LOCATER V6.22 12/27/2010 09:36:02 PAGE 3

CODE 0033H 0003H ABSOLUTE 0036H 04CAH *** GAP *** CODE 0500H 0880H UNIT ?CO?PCOEFFS CODE 0D80H 1301H UNIT ?PR?UPLINK_T2_ISR?UPLINK CODE 2081H 0985H UNIT ?C?LIB_CODE CODE 2A06H 0857H UNIT ?PR?MAIN?DT_MAIN CODE 325DH 0784H UNIT ?PR?PRESSUREPROC?PRESSURE CODE 39E1H 066BH UNIT ?PR?VIBRATIONPROC?VIBRATION CODE 404CH 04B9H UNIT ?PR?_GETSECONDARY?UPLINK CODE 4505H 046FH UNIT ?PR?PRINTF?PRINTF CODE 4974H 0450H UNIT ?CO?VIBRATION CODE 4DC4H 03EBH UNIT ?CO?UPLINK CODE 51AFH 03C1H UNIT ?CO?DT_MAIN CODE 5570H 0284H UNIT ?PR?ANALOGUEPROC?ANALOGUE CODE 57F4H 0280H UNIT ?CO?FFT CODE 5A74H 0237H UNIT ?PR?SERIALISR?DT_MAIN CODE 5CABH 0231H UNIT ?PR?_FIX_FFT?FFT CODE 5EDCH 01B8H UNIT ?PR?VIBRATIONADCISR?VIBRATION CODE 6094H 0180H UNIT ?PR?PRESSURESUMISR?PRESSURE CODE 6214H 0122H UNIT ?PR?PRESSUREADCISR?PRESSURE CODE 6336H 0110H UNIT ?PR?ANALOGUEADCISR?ANALOGUE CODE 6446H 00AAH UNIT ?PR?SQRT?SQRT CODE 64F0H 00A8H UNIT ?C_INITSEG CODE 6598H 008EH UNIT ?PR?VIBRATION_INIT?VIBRATION CODE 6626H 008CH UNIT ?C_C51STARTUP CODE 66B2H 005EH UNIT ?PR?_PUTCHAR?PUTCHAR CODE 6710H 005AH UNIT FIX_MPY CODE 676AH 0058H UNIT ?PR?AUXISR?DT_MAIN CODE 67C2H 004DH UNIT ?PR?UPLINK_INIT?UPLINK CODE 680FH 0044H UNIT ?CO?ANALOGUE CODE 6853H 0044H UNIT ?C?LDIV CODE 6897H 003EH UNIT ?PR?ANALOGUESUMISR?ANALOGUE CODE 68D5H 003AH UNIT ADC_SUB CODE 690FH 0036H UNIT ?PR?PRESSURE_INIT?PRESSURE CODE 6945H 0033H UNIT ?PR?_ADDCRCNIBBLE?UPLINK CODE 6978H 0031H UNIT ?PR?UPLINK_MS_ISR?UPLINK CODE 69A9H 0008H UNIT ?PR?_LABS?LABS CODE 69B1H 0001H UNIT ?PR?ANALOGUE_INIT?ANALOGUE 69B2H 16CCH *** GAP *** CODE 807EH 0002H ABSOLUTE