simulavr-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

AtXmega32/64/168 support


From: Rémy
Subject: AtXmega32/64/168 support
Date: Wed, 8 Dec 2021 18:38:07 +0100

Hello,

My company have to works with *atxmega128a1 *and *atxmega128a4u *devices
but unfortunately these are not implemented on Simulavr project.
We use Simulavr for running unit test on our programs.

I have developed a patch for implementing the basic features of the atxmega
microcontroller. It can be found at
https://drive.google.com/file/d/18jhbJ9M7zGnB_K132_1OYwk5ZpIDLyH9/view?usp=sharing
(The savannah account is not working yet and i can not do pull request)
It will provided without any counterpart, in order to improve *simulavr *
software.

The patch will manage
- The CPU implementation
- The full set of atxmega32/64/128 instructions
- RAM addressing, and extended addressing
- Hardware GPIO port
- EEPROM and non-volatile memory controller for eeprom part.
These features will be sufficient for running our unit tests and checking
algorithms.

However,
- The most of IO registers are mapped to RAM.
- No interruption are implemented
- Timers are not implemented
- Communication lines like SPI, UART, I2C are not implemented
- GPIO special functions like detecting edge or PWM are not implemented
- Read and write into flash memory are not tested yet
- Some feature use atmega128 implementation, near to atXmega but
uncompleted regarding to atXmega features.

The software was tested with code running on atxmega128a1 and atxmega128a4u
devices. We have also take care of not breaking the existing compatibility.
Checks had done with atmega32/64/128 code as far as we could have.

Thanks,
MALMARTEL Rémy


reply via email to

[Prev in Thread] Current Thread [Next in Thread]