Memory Requirements and
Performance for LetterWise
The memory and CPU requirements of Eatoni's LetterWise
are by far the lowest of any predictive text system.
LetterWise has been ported to several 8-bit processors,
including the Intel 80C51 and the Mitsubishi 740. A port to the
4-bit Winbond W742(C)816 is in progress.
These and similar CPUs are the workhorse processors
at the heart of numerous electronic devices, especially low-cost
and/or low power consumption devices. These include remote controls,
toys, cordless phones, televisions, in-car navigation system, and
CD players.
In every case, LetterWise functions have had runtime
well below required minimums and memory consumption is miserly.
For example:
- On the Mitsubishi 740, the LetterWise engine
occupies a mere 651 bytes and uses 24 bytes of RAM.
- LetterWise language databases can occupy as
little as a few hundred bytes.
- In one 80C51 implementation, LetterWise and
six languages (Dutch, English, French, German, Italian, Spanish)
were provided in under 5K of space.
- On the 80C51, the main LetterWise function (called
between keystrokes) completes in 7-10 milliseconds.
- LetterWise uses at most 4 stack frames, consuming,
at worst, 184 bytes of stack memory.
- LetterWise performance degrades gracefully with
reduced sized database. Simplistic dictionary-based methods (such
as T9 and eZiText) are forced to discard entire words: to halve
the memory requirement for these methods, throw out half your words
and make your product even worse. With LetterWise, halving memory
typically has relatively little impact on performance.
No competing predictive text-entry product can
operate under such intense technical constraints on code size, database
size, and processor power. And yet, the value that easy-to-use text
entry adds to such products is no less important than the value
brought to devices that are by comparison "power-tools",
such as cell phones.
With LetterWise, predictive text entry can be made
available in formerly unimaginable places.
If you manufacture a device based on a 8-bit (or
even 4-bit) processor and you have a few kilobytes of memory to
spare, please contact us to discuss your text-entry needs. We may
be able to help.
|