cancel
Showing results for 
Search instead for 
Did you mean: 

BONOUS? STM32F103C8 IS 128KB!

binxinzhou
Associate II
Posted on April 18, 2012 at 10:27

by accident, i wrote and read from memory banks addressed within 0x0801 FC00 – 0x0801 FFFF for part STM32F103C8, and it worked?!

the datasheet and ads all say this part is 64k one, and it is STM32F103CB to be 128kb part. i have doubled checked the part mentioned above it did marked with C8, not CB.

can somebody tell me what's going on?

regards
5 REPLIES 5
frankmeyer9
Associate II
Posted on April 18, 2012 at 13:15

I'm not having particular inside knowledge of ST, but this is generally an old strategy.

Flash makes up for a large part of the silicon, with the apparent impact on the device. ST would be neither the only one nor the first one to disable that part of the Flash and sell it as a 'downscaled' device.

We recently had an issue with another provider of 8 bit controllers, admitting in this process that they do exactly this in the production process.

Maybe ST did not actively disable that 'additional' Flash. I would not rely on that feature, nor expect it with other devices.

It would be interesting to know if you can use ALL of the additional 64k Flash. I would not be surprised if at least one byte fails ...

emalund
Associate III
Posted on April 18, 2012 at 17:30

Maybe ST did not actively disable that 'additional' Flash. I would not rely on that feature, nor expect it with other devices.

 

 

It would be interesting to know if you can use ALL of the additional 64k Flash. I would not be surprised if at least one byte fails ...

 

''I would not rely on that feature''

 

two known practices (not necessarily ST, but many others)

1) if a 'beefed up' device test with a failure in something 'not available' in a 'basic' device, sell it as 'basic'

2) if the manufacturer is out of 'basic' chips' they  relabel some 'beefed up' devices and next time you order, if you relied on the extras you are hosed, becuase the happened to have 'basics' at that time

case in point (abeit somewhat historical) the 80c31 does not work if you do not enable the 'external memory bit' because it is really a failed 80c51

Erik

Posted on April 18, 2012 at 18:14

The other strategy is to NOT test the features for down marked die, this can reduce tester time significantly. This would be especially true for flash, that might take seconds to erase, write with a couple of test patterns, and at corner conditions.

I can't speak to ST's strategy, but in IC test we used to do some basic wafer level testing as we probed the die sites and inked the defective one, or just marked the ones at zero-yielding sites. The wafers were then cut, and the good die packages. The final packaged die were then fully tested against a vector set for the part, using all the pins, rather than the wafer probe which typically had a minimal number of probes to access the power and scan chains.
Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
frankmeyer9
Associate II
Posted on April 18, 2012 at 20:46

I was just assuming ST is out to sell the parts at the best price possible.

If it's high-end and has no defects, it doesn't sound economical to sell it as mid-end or low-end for less.

There are said to be situations were customers badly need low-end parts, which the producer does not have. In this case, it would also make sense to sell it as low-end - there is no loss for the customer, often he doesn't even notice. Sold cheaper is still better than not sold at all.

Andrew Neil
Chief II
Posted on April 19, 2012 at 00:56

''i wrote and read from memory banks addressed within 0x0801 FC00 – 0x0801 FFFF for part STM32F103C8, and it worked?!''

But did you check that it did not overwrite anything in the lower 64K...?

In addition to the common practices already noted by others, it is also quite common that the physically-present memory will ''repeat'' throughout the address space - ie, the higher address bits are simply ignored...