1.. zephyr:board:: qemu_riscv64 2 3Overview 4******** 5 6The RISCV64 QEMU board configuration is used to emulate the RISCV64 architecture. 7 8Get the Toolchain and QEMU 9************************** 10 11The minimum version of the `Zephyr SDK tools 12<https://github.com/zephyrproject-rtos/sdk-ng/releases>`_ 13with toolchain and QEMU support for the RISCV64 architecture is v0.10.2. 14Please see the :ref:`installation instructions <install-required-tools>` 15for more details. 16 17Programming and Debugging 18************************* 19 20Applications for the ``qemu_riscv64`` board configuration can be built and run in 21the usual way for emulated boards (see :ref:`build_an_application` and 22:ref:`application_run` for more details). 23 24Flashing 25======== 26 27While this board is emulated and you can't "flash" it, you can use this 28configuration to run basic Zephyr applications and kernel tests in the QEMU 29emulated environment. For example, with the :zephyr:code-sample:`synchronization` sample: 30 31.. zephyr-app-commands:: 32 :zephyr-app: samples/synchronization 33 :host-os: unix 34 :board: qemu_riscv64 35 :goals: run 36 37This will build an image with the synchronization sample app, boot it using 38QEMU, and display the following console output: 39 40.. code-block:: console 41 42 ***** BOOTING ZEPHYR OS v1.8.99 - BUILD: Jun 27 2017 13:09:26 ***** 43 threadA: Hello World from riscv64! 44 threadB: Hello World from riscv64! 45 threadA: Hello World from riscv64! 46 threadB: Hello World from riscv64! 47 threadA: Hello World from riscv64! 48 threadB: Hello World from riscv64! 49 threadA: Hello World from riscv64! 50 threadB: Hello World from riscv64! 51 threadA: Hello World from riscv64! 52 threadB: Hello World from riscv64! 53 54Exit QEMU by pressing :kbd:`CTRL+A` :kbd:`x`. 55 56Debugging 57========= 58 59Refer to the detailed overview about :ref:`application_debugging`. 60