Libre RISC-V Mailing list Archives (accessible via public-inbox)
 help / color / Atom feed
From: bugzilla-daemon@libre-riscv.org
To: libre-riscv-dev@lists.libre-riscv.org
Subject: [libre-riscv-dev] [Bug 241] OpenPOWER SImulation is needed of standards
Date: Sun, 15 Mar 2020 16:17:04 +0000
Message-ID: <bug-241-13-Boe9NfwSxI@http.bugs.libre-riscv.org/> (raw)
In-Reply-To: <bug-241-13@http.bugs.libre-riscv.org/>

http://bugs.libre-riscv.org/show_bug.cgi?id=241

--- Comment #6 from Luke Kenneth Casson Leighton <lkcl@lkcl.net> ---
(In reply to Luke Kenneth Casson Leighton from comment #5)
> http://pearpc.sourceforge.net/
> 
> another one to investigate

pear is, honestly, looking a lot simpler to work with, although it's going to
take some unit tests like those in riscv-isa-tests to get it into shape.

see
http://lists.libre-riscv.org/pipermail/libre-riscv-dev/2020-March/005091.html

to get whatever we need into shape it will go like this:

* get "basic" (non-GUI) ability to run "bare-metal" programs.  this involves
either overloading a system call (writing one), peek/poke to a memory address
and having the emulator say "writes to this address are directed to stdout,
reads from this address result in characters from stdin being accepted".

* start writing some *really* simple unit tests (20-50 lines of assembler) that
test "addic", "mul", etc. etc.

* begin the process of allowing dynamic (runtime) emulation of 64-bit
instructions (not a static emulator-compile-time option)

* *recompile* the unit tests using a 64-bit ppc compiler and test that those
still work

* start adding "basic" SimpleV support (a 48-bit instruction with the 16-bit
"SV" Prefix) which does *NOT* support element-width.  just a straight for-loop
on integer math.

* write unit tests - in assembler - for SVPrefix add, addic, mul etc.

* move slowly forward adding full IEEE754 FP support (using Jacob's algorithmic
library, so that we have *proper* POWER IEEE754 emulation, not "x86" IEEE754
rules)

* add in elwidth support, predication, and so on, basically replicate the
traillazing done in the spike-sv emulator.


at the same time:

* add support for dynamic LE and BE (unit tests for the same)

* attempt to compile up more recent linux kernels, boot loaders (yaboot), in
particular track down why Debian 8.0 PPC ISO cannot recognise (find) yaboot
files on the ISO

* see if the MMU (TLB) code is adequate to run a 64-bit OS

* after the 64-bit bare-metal unit tests all pass, attempt to run larger
programs and even a linux kernel.


we *might* also want to consider porting the spike pk library to powerpc.  it's
a "bare minimum POSIX environment" which will allow the absolute bare minimum
of POSIX applications to function.  or, finding something else suitable to
port.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev

  parent reply index

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-13 13:07 [libre-riscv-dev] [Bug 241] New: " bugzilla-daemon
2020-03-13 18:29 ` [libre-riscv-dev] [Bug 241] " bugzilla-daemon
2020-03-14 10:30 ` bugzilla-daemon
2020-03-14 10:31 ` bugzilla-daemon
2020-03-14 14:17 ` bugzilla-daemon
2020-03-14 14:18 ` bugzilla-daemon
2020-03-15 16:17 ` bugzilla-daemon [this message]
2020-03-15 17:34 ` bugzilla-daemon
2020-03-16  9:59 ` bugzilla-daemon
     [not found] <bug-241-13@https.bugs.libre-soc.org/>
2020-04-27 20:27 ` bugzilla-daemon
2020-04-27 20:29 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-241-13-Boe9NfwSxI@http.bugs.libre-riscv.org/ \
    --to=bugzilla-daemon@libre-riscv.org \
    --cc=libre-riscv-dev@lists.libre-riscv.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Libre RISC-V Mailing list Archives (accessible via public-inbox)

Archives are clonable: git clone --mirror https://inbox.libre-soc.org/libre-riscv-dev

Example config snippet for mirrors


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git