Features/Xtensa: Difference between revisions

From QEMU
No edit summary
(remove implemented features from the TODO list, add new goals)
 
(2 intermediate revisions by the same user not shown)
Line 10: Line 10:
== Status ==
== Status ==


Target can run linux on sim and xtfpga (lx60/lx200/ml605/kc705) boards with dc232b/dc233c/fsf/custom cpus in system emulation mode. Kernel may be loaded with -kernel option, or by u-boot from FLASH or from TFTP, rootfs may be in a filesystem image file for the sim board, or may be mounted via NFS for the xtfpga.
Target can run linux on sim and xtfpga (lx60/lx200/ml605/kc705) boards with dc232b/dc233c/fsf/custom cpus in system and linux-user emulation modes. Kernel may be loaded with -kernel option, or by u-boot from FLASH or from TFTP, rootfs may be in a filesystem image file for the sim board, or may be mounted via NFS for the xtfpga.


Target configured with custom cpu can run ThreadX RTOS.
Support for new cpu cores may be added automatically by reusing architecture variant overlay, but only core ISA instructions are supported.


Support for new cpu cores may be added with minimal amount of hand-written code by reusing architecture variant overlay.
xtensa softmmu QEMU is used in several projects:
* [http://docs.zephyrproject.org/boards/xtensa/qemu_xtensa/doc/board.html Zephyr OS]
* [https://www.alsa-project.org/main/index.php/Firmware#Using_the_Qemu_DSP_emulator Sound Open Firmware for Intel Baytrail chips]


== TODO ==
== TODO ==


* implement TIE support;
* implement remaining hardware for xtfpga boards (LEDs, DIP switches, LCD?, audio codec?);
* implement remaining hardware for xtfpga boards (LEDs, DIP switches, LCD?, audio codec?);
* implement remaining core ISA options: cache;
* implement cycle-accurate simulation mode;
* implement ISA extensions like FLIX, wide branches or SIMD;
* implement interrupt distribution hardware for SMP configurations;
* implement user emulation mode;


== Development ==
== Development ==


Current development status, useful links and related repos may be found there: http://osll.ru/doku.php?id=etc:users:jcmvbkbc:qemu-target-xtensa
Current development status, useful links and related repos may be found there: http://wiki.osll.ru/doku.php?id=etc:users:jcmvbkbc:qemu-target-xtensa


Linux/xtensa page about [http://wiki.linux-xtensa.org/index.php/Xtensa_on_QEMU Xtensa on QEMU].
Linux/xtensa page about [http://wiki.linux-xtensa.org/index.php/Xtensa_on_QEMU Xtensa on QEMU].


[[Category:Completed feature pages]]
[[Category:Completed feature pages]]

Latest revision as of 01:45, 13 March 2019

Summary

Add emulation of the Tensilica Xtensa processor family.

Owner

  • Name: Max Filippov / Open Source and Linux Lab
  • Email: jcmvbkbc@gmail.com

Status

Target can run linux on sim and xtfpga (lx60/lx200/ml605/kc705) boards with dc232b/dc233c/fsf/custom cpus in system and linux-user emulation modes. Kernel may be loaded with -kernel option, or by u-boot from FLASH or from TFTP, rootfs may be in a filesystem image file for the sim board, or may be mounted via NFS for the xtfpga.

Support for new cpu cores may be added automatically by reusing architecture variant overlay, but only core ISA instructions are supported.

xtensa softmmu QEMU is used in several projects:

TODO

  • implement TIE support;
  • implement remaining hardware for xtfpga boards (LEDs, DIP switches, LCD?, audio codec?);

Development

Current development status, useful links and related repos may be found there: http://wiki.osll.ru/doku.php?id=etc:users:jcmvbkbc:qemu-target-xtensa

Linux/xtensa page about Xtensa on QEMU.