[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[avr-libc-dev] [patch #6718] Optimize the EEPROM functions
From: |
Dmitry Xmelkov |
Subject: |
[avr-libc-dev] [patch #6718] Optimize the EEPROM functions |
Date: |
Fri, 09 Jan 2009 04:05:54 +0000 |
User-agent: |
|
URL:
<http://savannah.nongnu.org/patch/?6718>
Summary: Optimize the EEPROM functions
Project: AVR C Runtime Library
Submitted by: dmix
Submitted on: Птн 09 Янв 2009 04:05:52
Category: None
Priority: 5 - Normal
Status: None
Privacy: Any
Assigned to: dmix
Originator Email:
Open/Closed: Open
Discussion Lock: Any
_______________________________________________________
Details:
The EEPROM funtions are not the best yet:
* The multibyte reading is very slow.
* The space expense is large: inlined byte functions are include
into each source file, each call of multibyte function adds the
indirect address arg filling.
* The indirect call is not work with 256 KW flash chips (Binutils
bug, now it is workarounded by inlining all functions).
This version does not contain inline: all functions are pure ones
from library. To obtain a set of different hardwares there is used
the CCP substitution of function names.
Minor changes are:
* The group of 'update' functions is added: burn only the different
bytes.
* The group of 'float' function is added.
* The XMEGA is realized.
Reading speed is high: there is no check of ready between bytes, no
indirect calls, in case of Xmega the mapping into data space is used.
Space expense is small: for example, all the eeprom_read_word/dword/
block functions use the same code. Also with small SRAM and/or small
EEPROM chips the code for high address byte or for high counter byte
is omited.
This project was started before the discussion of library per device.
So it is not needed in any GCC or Binutils changes.
Note, there is no any manual work to sort the chips into any groups:
all variants are compiled separatly.
At this moment the XMEGA is not tested. More, it is not tryed to
compile.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Птн 09 Янв 2009 04:05:53 Name: avr-libc.tar.gz Size: 13kB By:
dmix
Sources and all other files thar are changed.
<http://savannah.nongnu.org/patch/download.php?file_id=17230>
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/patch/?6718>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [avr-libc-dev] [patch #6718] Optimize the EEPROM functions,
Dmitry Xmelkov <=