Character rom

Hi,

Recently I have a MCU design problem. I have designed a electronic device which can communicate with computer by ethernet to retrieve data. And I want to include character ROM so that it can display native characters. However, I have calculated the ROM size requirement is about 2M bytes.

So the ROM must transfer data to the MCU serially as there are not so many free pins at MCU side. For such a large ROM size with serial interface I found only flash memory such as MMC card can do that. However, because it is flash memory I need to read a minimum of one sector which is 256 bytes for each character. This made the display slow.

Actually I have thought to retrieve the font by the ethernet. However, the menu cannot display correctly during offline and this brings a lot of other problems.

Do anyone think another solution for me?

Thanks!

Reply to
derek
Loading thread data ...

Atmel Dataflash

Posted Via Nuthinbutnews.Com Premium Usenet Newsgroup Services

---------------------------------------------------------- ** SPEED ** RETENTION ** COMPLETION ** ANONYMITY **

----------------------------------------------------------

formatting link

Reply to
Dave Garnett

Why don't you try to compress data?

Reply to
Ziza

I read in sci.electronics.design that Ziza wrote (in ) about 'Character rom', on Mon,

13 Dec 2004:

Investigate the design of Teletext character ROMs. Made in the days when

2 MB was a dream.
--
Regards, John Woodgate, OOO - Own Opinions Only. 
The good news is that nothing is compulsory.
The bad news is that everything is prohibited.
http://www.jmwa.demon.co.uk Also see http://www.isce.org.uk
Reply to
John Woodgate

Sorry, the exact size should be about 700K bytes. The font is Chinese which is 16x16.

Reply to
dereklai2k

We should have figured that out from the .hk domain.

My back of envelope tells me that you have about 22K distinct characters to encode. Does that sound right?

Since I don't know Chinese, I couldn't tell you if there are any language specific tricks one could use such as defining characters as groups of simpler blocks which only need to be stored once.

If no such tricks are available, a simple compression algorithm could save you some memory. Make sure you look for one that supports efficient random access into the compressed data so you don't have to unpack the whole ROM to look for one character.

--
Paul Hovnanian     mailto:Paul@Hovnanian.com
------------------------------------------------------------------
Personally, I'm against people who give vent to their loquacity by
extraneous bombastic circumlocution.
Reply to
Paul Hovnanian P.E.

I just calculate the total characters (22K) from Big5 table:

formatting link

Reply to
dereklai2k

Each character takes 32 bytes, so that's about 2M bits. If you store the data in a serial rom (such as dataflash) so that you can use the serial access to get all 32 bytes, you can get it out quite fast, with a 10MHz clock you could get all 32 bytes out in < 30 usec. Note that this means that sequential addresses have to contain all 32 bytes so that you just have to set the address and read instruction up once, and then clock the data out with the succeeding 32 clock edges.

If you need faster than that, there are parallel flash memory and EPROM chips that will require more glue logic around them-- up to 16M or so. I think that one of their main applications is just this sort of thing.

Do you have to encode both the traditional and simplified character sets? Or just the traditional characters used in HK/Taiwan (but not the mainland)?

Best regards, Spehro Pefhany

--
"it's the network..."                          "The Journey is the reward"
speff@interlog.com             Info for manufacturers: http://www.trexon.com
Embedded software/hardware/analog  Info for designers:  http://www.speff.com
Reply to
Spehro Pefhany

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.