Qaboom description
==================
Qaboom help to reproduce on an host personal computer the entire development cycle of an embedded board, from the microprocessor point of view.
For this reason sometimes we use 'cip' as abbreviation of 'Cycle In a Pc'
Thus no flying cable, jtag insertion or serial line or power supply unit to configure; so only half of enojoy
Aspects covered:
- Board construction
We use Qemu to replicate the hardware and modelize the programmable component like fpga, xpld, dsp.
- Board configuration
Many times one board have some kind of configurability, like dip or daughter board. Moreover some architecture has some variant, differing among them for some parameter, like base address for memory mapped serial controller.
To simplify this task a tree based configuration is provided.
Moreover a gui let one to 'navigate' in the board, so clicking on uP chip will open the processor architecture with all core controller related.
- Board execution and test
Starting the board is simply as start Qemu. An mmapped file let the board world and the control world (the gui) to exchange information. Moreover configuration tree can establish a link between board operation, like memory access in a fixed range, with a python callback.
Emulated hardware component let one to simplify some time consuming operation, like burning boot in flash, loading firmware using the emulated but functional ethernet.
- Board debugging
Qemu include a gdb stub opening many possibilities. The Qaboom gui let one to control some issue like stop the system before first instruction was given. For now gdb and Qaboom environment is totally separated.
The board supported is
- dhtwalnut: More info at <http://elinux.org/Flameman/dht-walnut>,
<http://web.tiscali.it/giasalfeusi/cip.html>
Known Problem:
- On Windows, occasionally, two eth interfaces were created. This fact also happen when started from Gui.
No real problem arise, since deinstallation (click on 'unloaded' state) remove all interfaces created.
- Windows XP professional/Vista: Non-admin user can't install tun/tap.
- msvcp71.dl taken from http://www.dlldump.com/cgi-bin/testwrap/downloadcounts.cgi?rt=count&path=dllfiles/M/msvcp71.dll, also available amongs wx.Python dll's.
- Windows XP professional: first time qemu is started, a crush happen 'Send information...'.
The second time all goes ok.
- In Windows os is not possible to name file across different disk unit.
- In Windows, power on led work only for a while, since 'start' shell does keep hierarchy relationship.
TODO
- Change .inf tap0848
- Linux without terminal: is there a highly portable hook for admin passwords?
Eventually we could allocated a terminal if we realize that it is not actually instantited.
- No ping on Windows
- Relative Path -> qemu when system start