hellwig.geisse at mni.thm.de
Mon Jul 20 09:54:55 CEST 2020
On Mo, 2020-07-20 at 09:14 +0200, Jörg wrote:
> More difficult: if you want to add IO mapped HW (eg Ethernet or Wifi) or memory mapped HW (eg
> color display) to your FPGA and the host machine has an equivalent of this HW, with a little bit
> of effort the emulator can be modified to map the IO register commands or new memory layout to the
> corresponding host HW.
this is normally avoided in emulators. Running under a modern operating
system, the emulator needs special privileges to get access to the real
hardware of the host. Using these privileges will in many cases interfere
with the rest of the system (think of writing to the display hardware,
or even to the disk directly).
The usual implementation of such devices uses operating system services
and some user mode libraries (e.g., X-Windows and xlib in case of the
display under Linux). The emulator can then map these services to any
interface it wants (e.g., the register interface of a graphics card).
> Impossible: if you want to add HW to your FPGA and the host machine does not have an equivalent HW
> (eg a neutrino sensor) then it‘s impossible for the emulator to mimic the new FPGA HW.
I beg to differ: You can of course mimic the behavior of a device that
isn't present on the host system. It's a question of how much of the
environment you are willing to model in software. Example: I used simh,
a famous emulator for old DEC machines, to read/write "tapes", although
my desktop of course never had any tape drive attached.
More information about the Oberon