- Silicon Labs Community
- Welcome and Announcements
- Silicon Labs Knowledge Base
- 8-bit MCU
- 32-bit MCU
- Bluetooth / Wi-Fi
- Other Products Category
- Optical/RH/Temp Sensor
- Other Products
- Hardware and Software Tools
- Simplicity Studio and Software
- General Discussions and Suggestions
- Chinese Forum
- Software Libraries
- Development Kits
- Reference Designs
- Third Party Tools
- White Papers
- Official Blog of Silicon Labs
- Chinese Blog
01-02-2017 05:55 AM
@elib The Flash size is 64 kB for C8051F381.
Currently 64 kB Flash is the largest size that we have for 8-bit USB MCU families.
There are some 8-bit MCUs with 96/128 kB Flash without USB function.
If need larger Flash (more than 64 kB Flash) with USB function, you can refer to our 32-bit MCUs, such as Leopard Gecko, Giant Gecko, and Wonder Gecko devices.
01-02-2017 08:47 AM
I have corresponded with larger flash.
I guess that means that you need a larger flash
But I would like Foot Print identical
this day and age, unless it as issue of large tables, I (who love the 8-bitters) consider it a mistake to use an 8 bitter for apps requiring 64k+. what are you doing that require this?
01-02-2017 09:24 AM - edited 01-02-2017 09:27 AM
if you would show and explain what you are actually doing, there might be help, there are means of reducing table sizes, if it was clear what you are doing one of those might fit.
as an example I, once, reduced a thermistor linearizing table size to 1/4 with no loss of precision
01-02-2017 03:02 PM - edited 01-02-2017 05:25 PM
simple example reducing to half:
8:36 // added for below
reduced by half:
shift index 1 right, save "dropped bit:,
if "dropped bit = 0. result is there (table[index])
if dropped bit:= 1
result is pointed to by index + ([pointed to by index+1 - pointed to by index]/2)
in this coarse example you may get a small error, with more digits in values, the error disappears
BTW to make it work faster/better can't you use scaling instead of float? I doubt your min/max it beyond what could be accomplished with scaling. that would also give you some free memory, since the FP routines are not exactly small.
01-05-2017 02:32 PM
I have three arrays of 5100 values with float type.microprocessor calculates them according to a certain equation.
What is the equation, numeric limits, and what precision do you actually need ?
What is the Sensor + ADC error specs ?
How quickly do you need the results ?
Floating point libraries are usually around 4k bytes on the 8051, and items like Power can be used to curve-fit, with precision usually well above sensor variations.