From: Luke Kenneth Casson Leighton <lkcl@lkcl.net>
To: Libre-RISCV General Development <libre-riscv-dev@lists.libre-riscv.org>
Subject: Re: [libre-riscv-dev] little-endian only power cores and spec compliance
Date: Tue, 12 May 2020 09:07:09 +0100
Message-ID: <CAPweEDx2w25Wx0_quaJyNz87nXPVwDs3RyQh-aiOkk0LHcSMkg@mail.gmail.com> (raw)
In-Reply-To: <CAC2bXD4ko6A1P9omroZSMq0YjYzyShAr5D05csQw1aDh3-eNOw@mail.gmail.com>
On Tue, May 12, 2020 at 8:46 AM Jacob Lifshay <programmerjake@gmail.com> wrote:
>
> On Tue, May 12, 2020, 00:40 Jacob Lifshay <programmerjake@gmail.com> wrote:
>
> > On Tue, May 12, 2020, 00:32 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
> > wrote:
> >
> >>
> >> without BE, this is flat-out impossible to do.
> >>
> >
> > Oops, forgot about that.
> >
>
> Never mind, now that I take more than 15s to think about it, we need BE for
> the instruction stream but LE for data access (since that's effectively
> industry standard),
(this is a myth: only in the West is it the industry standard - see below)
> so it's still effectively a LE-only architecture since
> everything but the instruction decoder is LE, but the instruction decoder
> can be switched to BE mode.
yes. it's.... odd.
> Having our architecture require BE for all memory accesses just because we
> want to support 16-bit instructions is a non-starter in my opinion
it's a different feature / capability. i believe it's possible to
select any combination: BE/LE for instructions, BE/LE for data.
i can kinda see where they would want full BE support because there
still exists OSes compiled up - and maintained - to run on it. not
supporting BE sends a clear (blunt) message to those users, "you don't
matter any more", and IBM really can't do that.
additionally, with pretty much the entirety of the Asia Industrial
complex (Japan in particular, India as well) still using BE hardware
and thus having a massive software codebase where BE is hard-coded
into control peripheral drivers, we would be cutting ourselves off
from that market by not having full BE compatibility.
the Shakti Group showed me VME Bus systems that they had to be
compatible with. these are 40+ year old systems *still in service*,
for which radical rewrites of the software are absolutely out of the
question.
so that's a definite "decision" that we need to take seriously, rather
than dismiss lightly.
the largest (by far) downloaders of the debian ppc (not ppc64le)
distribution is Japan.
l.
_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev
next prev parent reply index
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-12 7:24 Jacob Lifshay
2020-05-12 7:31 ` Luke Kenneth Casson Leighton
2020-05-12 7:40 ` Jacob Lifshay
2020-05-12 7:46 ` Jacob Lifshay
2020-05-12 8:07 ` Luke Kenneth Casson Leighton [this message]
2020-05-12 8:23 ` Luke Kenneth Casson Leighton
2020-05-13 1:22 ` [libre-riscv-dev] [OpenPOWER-HDL-Cores] " Hugh Blemings
2020-05-13 1:41 ` Benjamin Herrenschmidt
2020-05-13 9:11 ` Luke Kenneth Casson Leighton
2020-05-13 2:27 ` [libre-riscv-dev] " Jacob Lifshay
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=CAPweEDx2w25Wx0_quaJyNz87nXPVwDs3RyQh-aiOkk0LHcSMkg@mail.gmail.com \
--to=lkcl@lkcl.net \
--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