Libre RISC-V Mailing list Archives (accessible via public-inbox)
 help / color / Atom feed
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] daily kan-ban update 14may2020
Date: Thu, 14 May 2020 23:52:31 +0100
Message-ID: <CAPweEDzDVkscr7JYiH1SBU9EsU1T7CR7g-yQ8LxFn8vr0-zZmQ@mail.gmail.com> (raw)
In-Reply-To: <D51FC0DE-B374-474E-9FD3-E274B2452E18@getmailspring.com>

On Thu, May 14, 2020 at 11:29 PM Cole Poirier <colepoirier@gmail.com> wrote:

> In that regard, Luke, after I am done with the scripts and the
> modifications to the docs on the wiki, is there some testing
> infrastructure that needs to be worked on, or should I try to start
> learning to make nmigen HDL contributions to the project?

that would be a really good challenge to try anyway.  apart from anything
you'd be able to read / recognise the code as it evolves.

> Essentially, what do you reccomend I do next that would be most helpful to the project?

i have nooo idea :)  oh wait - i have an idea.  could you raise a
bugreport "bperm TODO",
look at the pseudo-code here:
    perm <- [0] * 8
    for i = 0 to 7
       index <- (RS)[8*i:8*i+7]
       if index < 64 then
            perm[i] <- (RB)[index]
       else
            perm[i] <- 0
    RA <- [0]*56 || perm[0:7]

and see if you can write that in nmigen?  this is the simulation
version (translated
from the above pseudo-code), it may be easier to understand:

    @inject()
    def op_bpermd(self, RS, RB):
        perm = concat(0, repeat=8)
        for i in range(0, 7 + 1):
            index = RS[8 * i:8 * i + 7 + 1]
            if lt(index, 64):
                perm[i] = RB[index]
            else:
                perm[i] = 0
        RA = concat(concat(0, repeat=56), perm[0:8])

notes:

* repeat=8 you use Repl
* concat you use Cat
* index you will have to actually store that in a temporary Signal (8
bits in length)

l.

_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev

  reply index

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-14 10:54 Luke Kenneth Casson Leighton
2020-05-14 14:23 ` Michael Nolan
2020-05-14 14:43   ` Luke Kenneth Casson Leighton
2020-05-14 15:49     ` Tobias Platen
2020-05-14 16:44       ` Luke Kenneth Casson Leighton
2020-05-14 18:28 ` Jacob Lifshay
2020-05-14 18:55   ` Luke Kenneth Casson Leighton
2020-05-14 21:48     ` Cole Poirier
2020-05-14 22:00       ` Michael Nolan
2020-05-14 22:29         ` Cole Poirier
2020-05-14 22:52           ` Luke Kenneth Casson Leighton [this message]
2020-05-14 22:42       ` Luke Kenneth Casson Leighton
2020-05-14 23:16 ` Yehowshua
2020-05-15  8:28   ` Luke Kenneth Casson Leighton
2020-05-15  9:07     ` Tobias Platen
2020-05-15  9:09       ` Luke Kenneth Casson Leighton
2020-05-15  9:13         ` Luke Kenneth Casson Leighton
2020-05-15 10:55           ` Luke Kenneth Casson Leighton
2020-05-15 11:19             ` Luke Kenneth Casson Leighton

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=CAPweEDzDVkscr7JYiH1SBU9EsU1T7CR7g-yQ8LxFn8vr0-zZmQ@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