Re: Recommended External ROM for AVR

The only way to extend the program space in an AVR is if you are

>running some sort of interpreter. You can then "execute" code from >an external serial or parallel EEPROM or Flash device. Since the AVR >is quite fast, interpreted code can run quite fast.

Thanks for your response, this could help me much ! Could you please tell me more about the interpreting process and how fas the AVRs can run with extended program space ? Where can I find som sample applications ?

N.L.Trung

This message was sent using the comp.arch.embedded web interface o

formatting link

Reply to
trungnl
Loading thread data ...

Embedded interpreters use languages like Forth or Basic. Your application will need to be re-written in this language and will go much slower than compiled code. As the other people have mentioned you really need to change to a uC that supports external code memory or has more code space. Or you could have more than one uC and split the task between them.

Peter

Reply to
Peter

If you have already written the firmware, and "hit the roof", it would be much simpler to choose another MCU from the AVR range.

Assuming that you want to keep PDIP40 package, there are several AVRs with more flashrom.

Max flashrom for PDIP40 is 64k bytes, ATmega644. At 32k there is ATmega32 and ATmega324. At 16k there is ATmega16 and ATmega164.

You will have to check the availability, though.

See:

formatting link

Tom

Reply to
Tom Twist

If your current code is written in C, then you can buy a C compiler targeting a "virtual processor" from

formatting link
The virtual target is called C-Flea. They have code for various MCUs for the virtual machine engine. I used their C version, compiled with avr-gcc to run on the AVR. One then uses the C-Flea C Compiler to compile the application code that runs on the virtual machine. One can easily generate a VM for the PC that emualtes one's peripherals. The "readmem" and "writemem" routines on the VM can be customised to read/write from anywhere. One can even execute code received via the serial port.

Regards Anton Erasmus

Reply to
Anton Erasmus

Thank you for your helps, The reason why I am trying to extend the program space of AVR8515 i because my customer wants to lower the price of the product. My firmwar is expected to reach a codesize of 60KB aprox., but does not require muc peripherals. At first I thought it could cost less by using a low cost MC with external code memory than using a high-end MCU like ATmega64. But fro the information you gave me, this could lead to a more complicate hardware/firmware and a reduced performance. I think I should reconside this solution more carefully. However, how about the PICs MCU ? I have another firmware version fo Microchip PIC18Fxx2. How can I extend the memory space of these MCUs ?

Regards, N.L.Trung This message was sent using the comp.arch.embedded web interface o

formatting link

Reply to
trungnl

just my 2 cents :

how many strings or constant data do you have in the firmware ?

they can be moved to an external memory ( SPI I2C ) and loaded on demand in this way you can/could recover precious space code

for PIC there some devices with lot of flash, 2 romless devices external code only, and some devices with internal flash + external bus interface but they all tend to be big parts

Reply to
mmm

[...]

Anything large enough to support an external address and data bus is going to be a pretty large part. At least in comparison to an AT90S8515...

Regards,

-=Dave

--
Change is inevitable, progress is not.
Reply to
Dave Hansen

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.