This is the mail archive of the ecos-devel@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Flashdriver for TC1796


Hello,

I'm porting Redboot to the Tricore-architecture. In special to the
TC1796-variant on a Infineon-Triboard.

The TC1796 has onchip 2 MByte of Flashmemory devided into several
blocks with sizes from 16 KByte up to 512 KByte.
The TC1796 has about 192 KByte RAM in total.
The Triboard has 1 MByte SRAM used by the TC1796 as external
Memory.

I want to write a driver for the flash memory of the TC1796.

If the Redboot wants to change data in the flash memory it stores
the block to which the data should be written to a buffer in RAM.
Then it changes the data in the buffer and writes it back to flash
memory. The size of the buffer has to be the same size as the
largest block in the flash memory.

Here is my problem. The size of the buffer has to be 512 KByte, but
the TC1796 has less than 512 KByte in total, so there is no space to
create the Buffer an a TC1796.

In my case I could use the RAM of the Triboard, which is large enough.
But then the the driver for the flash memory of the TC1796-variant would
depend on the properites of the Triboard-platform.
I could also use only a part of the flash of the TC1796. In special the blocks
with the size of 16 KBytes. In total I would then be able to use 128 Kbytes
of Flashmemory, which would be enough for me.
But in my opinion both ways are very unsatisfying.

Is there a better way to deal with this problem ?
And what is the best resolution in respect to the
eCos-design-philosophy ?

Thanks !


Rudi


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]