cancel
Showing results for 
Search instead for 
Did you mean: 

STM32 CPU Identification

ivanov-i
Associate II
Posted on May 27, 2008 at 06:57

STM32 CPU Identification

15 REPLIES 15
ivanov-i
Associate II
Posted on May 17, 2011 at 12:23

Dear STOne-32,

Is it possible to identify the size of the Flash memory by reading some of the chip identification registers?

Best regards,

Ivan

16-32micros
Associate III
Posted on May 17, 2011 at 12:23

Dear Ivan,

Yes we can :

To read Flash Size : You can read Address 0x1FFFF7E0&0x1FFFF7E1 (2 Bytes)

The unit is the Kbyte , For example if you Read

0x0080 which is 128 in decimal that means the flash

size is 128Kbytes.

Same for RAM Size : You can read Address 0x1FFFF7E2&0x1FFFF7E3(2 Bytes)

The unit is the Kbyte , For example if you Read

0x000A which is 10 in decimal that means the RAM

size is 10Kbytes.

This information will be added in our Documentation in a while. I hope you will happy with these information 🙂 Regards,

STOne-32.

dale2
Associate II
Posted on May 17, 2011 at 12:23

STOne-32,

Can you please verify these addresses? I can see the first value (FLASH size in KBytes) but the second value (SRAM in KBytes) always reads out as ''0xFF 0xFF'' on my STM3210B-EVAL.

Thanks,

Dale Wheat

16-32micros
Associate III
Posted on May 17, 2011 at 12:23

Dear Dale,

I presume that you have an early silicon we have given to boards assemblers

and producers. Could you please provide your chip Data code written on the Package , I will investigate its tracibility and let you know why we can not read the RAM size. Thank you 😉

STOne-32

dale2
Associate II
Posted on May 17, 2011 at 12:23

Ivan,

Perhaps STOne-32 can verify this for us, but I think we can make some assumptions about the SRAM size based on the FLASH size. This would only apply to Rev A silicon, which we can identify by the ''0xFF 0xFF'' reported.

For SMT32F101 (access line) devices:

32K FLASH = 6K SRAM

64K FLASH = 10K SRAM

128K FLASH = 16K SRAM

For STM32F103 (performance line) devices:

32K FLASH = 10K SRAM

64K FLASH = 20K SRAM

128K FLASH = 20K SRAM

Now the question becomes: How do we differentiate the 101 and 103 devices from each other?

Thanks,

Dale Wheat

dale2
Associate II
Posted on May 17, 2011 at 12:23

STOne-32,

Thank you for your reply. Here is the information you requested:

The evaulation board is labelled: STM32F10X-128K-EVAL

The STM32 device is labelled:

STM32F103

VBT6 B

2209P VC

MLT 22 735

ST (e4) ARM

P03

I hope the date code is in there, somewhere. I'm not 100% certain about the final ''3'' on the last line.

Thanks,

Dale Wheat

ivanov-i
Associate II
Posted on May 17, 2011 at 12:23

Thank you STOne-32,

This is exactly what I needed.

Unfortunately, the chip I am playing now is also Rev. A and I read 0xFFFF in these locations.

Will wait for the production board, which hopefully will have later chips.

Ivan

dale2
Associate II
Posted on May 17, 2011 at 12:23

STOne-32,

Thank you for the information. I have requested some shiny, new parts to upgrade my evaluation board.

Were there any Rev A access line parts delivered? If not, we can assume that when we read ''0xFF 0xFF'' in the SRAM size location that it is a performance line part and then we'd know what size the SRAM really was (see previous post).

If so, then how can we distinguish between the access and performance line parts via the bootloader?

Thanks,

Dale Wheat

16-32micros
Associate III
Posted on May 17, 2011 at 12:23

Hi Dale , ivanov-i,

For revA this is an early engineering silicon and so these locations are blanks. For Dale device, I presume that this device date code which is 735

means Week 35 , Year 2007 and was prepared to put on our evaluation boards before including the whole Flash and RAM size on these locations. But now all devices are embedding this feature and also another one that I will let you know in a while, I have a device 745 and containing the right sizes.

Hope this helps you. You can order your STM32 sample on-line for free using our web pages. Cheers,

STOne-32