Skip to content

Latest commit

 

History

History
120 lines (68 loc) · 2.87 KB

target-mips.rst

File metadata and controls

120 lines (68 loc) · 2.87 KB

MIPS System emulator

Four executables cover simulation of 32 and 64-bit MIPS systems in both endian options, qemu-system-mips, qemu-system-mipsel qemu-system-mips64 and qemu-system-mips64el. Five different machine types are emulated:

  • A generic ISA PC-like machine "mips"
  • The MIPS Malta prototype board "malta"
  • An ACER Pica "pica61". This machine needs the 64-bit emulator.
  • MIPS emulator pseudo board "mipssim"
  • A MIPS Magnum R4000 machine "magnum". This machine needs the 64-bit emulator.

The generic emulation is supported by Debian 'Etch' and is able to install Debian into a virtual disk image. The following devices are emulated:

  • A range of MIPS CPUs, default is the 24Kf
  • PC style serial port
  • PC style IDE disk
  • NE2000 network card

The Malta emulation supports the following devices:

  • Core board with MIPS 24Kf CPU and Galileo system controller
  • PIIX4 PCI/USB/SMbus controller
  • The Multi-I/O chip's serial device
  • PCI network cards (PCnet32 and others)
  • Malta FPGA serial device
  • Cirrus (default) or any other PCI VGA graphics card

The Boston board emulation supports the following devices:

  • Xilinx FPGA, which includes a PCIe root port and an UART
  • Intel EG20T PCH connects the I/O peripherals, but only the SATA bus is emulated

The ACER Pica emulation supports:

  • MIPS R4000 CPU
  • PC-style IRQ and DMA controllers
  • PC Keyboard
  • IDE controller

The MIPS Magnum R4000 emulation supports:

  • MIPS R4000 CPU
  • PC-style IRQ controller
  • PC Keyboard
  • SCSI controller
  • G364 framebuffer

The Fuloong 2E emulation supports:

  • Loongson 2E CPU
  • Bonito64 system controller as North Bridge
  • VT82C686 chipset as South Bridge
  • RTL8139D as a network card chipset

The mipssim pseudo board emulation provides an environment similar to what the proprietary MIPS emulator uses for running Linux. It supports:

  • A range of MIPS CPUs, default is the 24Kf
  • PC style serial port
  • MIPSnet network emulation

nanoMIPS System emulator

Executable qemu-system-mipsel also covers simulation of 32-bit nanoMIPS system in little endian mode:

  • nanoMIPS I7200 CPU

Example of qemu-system-mipsel usage for nanoMIPS is shown below:

Download <disk_image_file> from https://mipsdistros.mips.com/LinuxDistro/nanomips/buildroot/index.html.

Download <kernel_image_file> from https://mipsdistros.mips.com/LinuxDistro/nanomips/kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/index.html.

Start system emulation of Malta board with nanoMIPS I7200 CPU:

qemu-system-mipsel -cpu I7200 -kernel <kernel_image_file> \
    -M malta -serial stdio -m <memory_size> -hda <disk_image_file> \
    -append "mem=256m@0x0 rw console=ttyS0 vga=cirrus vesa=0x111 root=/dev/sda"