Libre RISC-V Mailing list Archives (accessible via public-inbox)
 help / color / Atom feed
* [libre-riscv-dev] daily kan-ban update 09jun2020
@ 2020-06-09 21:49 Alain D D Williams
  2020-06-09 22:48 ` Luke Kenneth Casson Leighton
  0 siblings, 1 reply; 16+ messages in thread
From: Alain D D Williams @ 2020-06-09 21:49 UTC (permalink / raw)
  To: nLibre-RISCV General Development

Sigh ... trying to get bzkanban working ......

I implemented the latest bugzilla - this works nicely (bugzilla that is, not bzkanban)

If you want to play with it you need to put this into your /etc/hosts

46.235.227.77   bugs-5.0.6.libre-soc.org

I can make that the current bugzilla if it does not break anything.


So: I then got bugzilla (5.0.6) working under another Debian 10 machine under
nginx with postgresql - that works.

Blood on my keyboard when I tried to get bzkanban working.

Run up Apache and, after a couple of sillies, it works - bugzilla and bzkanban I mean.

Flip back & forth between the two - never under works nginx, always under
apache. I'm stopping - there is an Einstein quote popping up in my head.


So: if you want bzkanban - I can install apache & replace nginx. I'm *****ed
if I can see another way.

Is there a good reason for needing nginx ?

I'm off to bed.

-- 
Alain Williams
Linux/GNU Consultant - Mail systems, Web sites, Networking, Programmer, IT Lecturer.
+44 (0) 787 668 0256  https://www.phcomp.co.uk/
Parliament Hill Computers Ltd. Registration Information: https://www.phcomp.co.uk/Contact.html
#include <std_disclaimer.h>

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 21:49 [libre-riscv-dev] daily kan-ban update 09jun2020 Alain D D Williams
@ 2020-06-09 22:48 ` Luke Kenneth Casson Leighton
  0 siblings, 0 replies; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-09 22:48 UTC (permalink / raw)
  To: Libre-RISCV General Development

On Tue, Jun 9, 2020 at 10:49 PM Alain D D Williams <addw@phcomp.co.uk> wrote:
>
> Sigh ... trying to get bzkanban working ......
>
> I implemented the latest bugzilla - this works nicely (bugzilla that is, not bzkanban)
>
> If you want to play with it you need to put this into your /etc/hosts
>
> 46.235.227.77   bugs-5.0.6.libre-soc.org

nicely done, alain.  actually we can probably put that into the dns.

>
> I can make that the current bugzilla if it does not break anything.
>
>
> So: I then got bugzilla (5.0.6) working under another Debian 10 machine under
> nginx with postgresql - that works.
>
> Blood on my keyboard when I tried to get bzkanban working.
>
> Run up Apache and, after a couple of sillies, it works - bugzilla and bzkanban I mean.

hurrah!

> Flip back & forth between the two - never under works nginx, always under
> apache. I'm stopping - there is an Einstein quote popping up in my head.

:)

>
> So: if you want bzkanban - I can install apache & replace nginx. I'm *****ed
> if I can see another way.
>
> Is there a good reason for needing nginx ?

mmm... i switched all my web services (including for clients) over to
it after learning of its lower workload and greater security by
design.

if it's getting in the way, although it makes me slightly nervous we
can flip over to it.

l.

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-10 18:53         ` Michael Nolan
@ 2020-06-10 21:30           ` Cole Poirier
  0 siblings, 0 replies; 16+ messages in thread
From: Cole Poirier @ 2020-06-10 21:30 UTC (permalink / raw)
  To: Libre-RISCV General Development; +Cc: libre-riscv-dev

On Jun 10 2020, at 11:53 am, Michael Nolan <mtnolan2640@gmail.com> wrote:
> While I don't remember exactly how I did it, I think I placed a 
> breakpoint on the instruction after the end of the program and had
> qemu 
> continue until it hit the breakpoint. Since trapping will never
> trigger 
> that breakpoint I don't know what will happen. I suspect it will
> require 
> a more creative solution though.

Thanks for the insight Michael!!

Cole

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 21:48       ` Luke Kenneth Casson Leighton
  2020-06-09 22:07         ` Luke Kenneth Casson Leighton
  2020-06-10  0:38         ` Cole Poirier
@ 2020-06-10 18:53         ` Michael Nolan
  2020-06-10 21:30           ` Cole Poirier
  2 siblings, 1 reply; 16+ messages in thread
From: Michael Nolan @ 2020-06-10 18:53 UTC (permalink / raw)
  To: libre-riscv-dev

On 6/9/20 5:48 PM, Luke Kenneth Casson Leighton wrote:
>
> therefore to test twi, we add a new unit test to that file, and run
> it.  now, it *may* fail (because it's a trap, and we don't actually
> know how qemu will react to that).  we'll cross that bridge when we
> come to it, ok?  we expect at least the PC to be changed to 0x700, so
> will have to work out how to get the PC out of qemu.

While I don't remember exactly how I did it, I think I placed a 
breakpoint on the instruction after the end of the program and had qemu 
continue until it hit the breakpoint. Since trapping will never trigger 
that breakpoint I don't know what will happen. I suspect it will require 
a more creative solution though.

--Michael


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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-10  0:38         ` Cole Poirier
@ 2020-06-10 13:16           ` Luke Kenneth Casson Leighton
  0 siblings, 0 replies; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-10 13:16 UTC (permalink / raw)
  To: Libre-RISCV General Development

> On Jun 9 2020, at 2:48 pm, Luke Kenneth Casson Leighton <lkcl@lkcl.net> wrote:

> Thank you, I appreciate the walkthrough and the story about going the
> old fashioned paper way. I thought that I had to do something in qemu
> itself, which would have been outside the bounds of this deductive
> reasoning process, as I have a tendency to get lost in forums and
> documentation when dealing with complex, always buggy to some extent,
> software like qemu.

hence the discussion in the bugreport (which you raised a couple days
ago?) about running actually against a POWER9 native.  skipping qemu
and running the programs directly, calling gdb on them.  exactly how
we'll do that, i have no idea yet, because it may require a huge
runtime, or possibly even virtualisation (to be able to run bare-metal
binaries directly).  have to see.

> So I wanted to see if we had prior art pertaining to
> qemu simulation. I think I should have taken the deductive reasoning
> about the codebase approch for my other questions.

it took me several years to work it out.

> I'm fighting my "aaah
> I don't understand," and with your reminder and guide here will be able
> to do so better next time.
>
> > powerpc64-linux-gnu-gdb -interpreter=mi
> > ~-data-list-register-names
> > ^done,register-names=
> >["r0","r1","r2","r3","r4","r5","r6","r7","r8","r9","r10","r11","r12","r13","r14","r15","r16","r17","r18","r19","r20","r21","r22","r23","r24","r25","r26","r27","r28","r29","r30","r31","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","f10","f11","f12","f13","f14","f15","f16","f17","f18","f19","f20","f21","f22","f23","f24","f25","f26","f27","f28","f29","f30","f31","pc","msr","cnd","lr","cnt","xer","fpscr","mq"
>
> > ah HA!  one of those is the condition register!
>
> Very cool and helpful.

i added them to test_sim.py - it causes test_sim.py unit tests to fail
(not your problem) because qemu defaults CR to 0x20000002 at start-up.
we can "fix" that by initialising the simulator CR to the same value.


> I think I over-stressed my self while working on
> the presentation yesterday, which has caused me to inadvertantly 'take'
> today off.

been there... :)

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 21:48       ` Luke Kenneth Casson Leighton
  2020-06-09 22:07         ` Luke Kenneth Casson Leighton
@ 2020-06-10  0:38         ` Cole Poirier
  2020-06-10 13:16           ` Luke Kenneth Casson Leighton
  2020-06-10 18:53         ` Michael Nolan
  2 siblings, 1 reply; 16+ messages in thread
From: Cole Poirier @ 2020-06-10  0:38 UTC (permalink / raw)
  To: Libre-RISCV General Development; +Cc: Libre-RISCV General Development



On Jun 9 2020, at 2:48 pm, Luke Kenneth Casson Leighton <lkcl@lkcl.net> wrote:

> On Tue, Jun 9, 2020 at 10:01 PM Cole Poirier <colepoirier@gmail.com> wrote:
>> 
>> On Jun 9 2020, at 1:15 pm, Luke Kenneth Casson Leighton
>> <lkcl@lkcl.net> wrote:
>> 
>> > with michael having added the qemu-execution thing, you should now
>> > first be able to add a "twi" (or tdi) instruction unit test to that,
>> > first.
>> 
>> This is filling in the pseudo-code for the soc/decoder/isa/caller.py?
> 
> yeees... however the first thing to do is write the unit test.  then
> you have a means by which the code in caller.py py will be... called.
> without writing the unit test, you have no way to call that code,
> therefore how can you know if what you write is correct?
> 
>> > this will allow you to check that the *simulator* is correct.
>> 
>> How do I use qemu to verify that the simulator is correct?
> 
> well, first we recall that it was michael who added the code, under
> the recent bugreport from monday.  so we do this:
> 
> $ git log > /tmp/f
> 
> then, we open up that file, and grep "Michael".   that shows this line:
> commit 613b15043fc7302c8ad4495b6bff65063eb1c0e3
> Author: Michael Nolan <mtnolan2640@gmail.com>
> Date:   Mon Jun 8 13:36:57 2020 -0400
> 
>    Restore test_sim.py, begin modifying it for testing against qemu
> 
> that looks about right, doesn't it?  (i don't know the answer, either,
> however i am simply following a deductive reasoning trail, from
> evidence left by michael).
> 
> so let's do a git diff
> 
> $ git diff 613b15 3a0b0f
> 
> and that shows (just as the comment says) a file called test_sim.py.
> from the top of the diff it shows that that test_sim.py file is in
> soc/simulator/test_sim.py
> 
> so now we know where that file is.
> 
>> Sorry I've
>> looked on the bug report and the wiki? Is there a wiki page with the
>> procedure? If not, what's the procedure I should follow?
> 
> you need to think through a process of deducing this information for yourself.
> 
> looking at that file, it's a unit test, isn't it?  and it has the
> exact same "run_tst_program" pattern that's in the test_pipe_caller.py
> programs, doesn't it?
> 
> therefore, logically, if we put instructions in a unit test listing,
> we expect them to be run, yes?
> 
> and if you look at test_sim.py's "run_tst_program()" function, we can
> see that it has two aspects: the first being that the simulator's
> "run_tst" function is called, and the second that the qemu
> run_program() function is called.
> 
> each of those will modify their respective register files, and
> qemu_register_compare walks through them and compares them, doesn't
> it?
> 
> this really isn't hard to deduce!
> 
> therefore to test twi, we add a new unit test to that file, and run
> it.  now, it *may* fail (because it's a trap, and we don't actually
> know how qemu will react to that).  we'll cross that bridge when we
> come to it, ok?  we expect at least the PC to be changed to 0x700, so
> will have to work out how to get the PC out of qemu.
> 
> 
> in essence, here, there is a series - a chain - of logical deductive
> reasoning that allows us, from a few well-known sources that we have
> access to, to find the information that was sought.
> 
> being able to do this, regardless of the size of the codebase and
> regardless of whether quotes documentation quotes exists, is an
> absolutely essential and critically important skill.
> 
> it is however important that you appreciate and have confidence that
> you *can* in fact deploy such techniques (or others like it) in order
> to find what you seek.
> 
> when this particular technique has failed me (due to the codebase size
> being over a quarter of a million lines) i have been known to print it
> out entirely on double-sided double-column pages (where an 80 char
> limit has been absolutely essential in meeting that), and literally
> going through absolutely every single page in the course of a day,
> speed-reading flicking one by one, to get a "subconscious" handle on
> the codebase that then allows me to go "i've seen that before" and
> stand a chance of being able to find it relatively quickly.
> 
> l.

Thank you, I appreciate the walkthrough and the story about going the
old fashioned paper way. I thought that I had to do something in qemu
itself, which would have been outside the bounds of this deductive
reasoning process, as I have a tendency to get lost in forums and
documentation when dealing with complex, always buggy to some extent,
software like qemu. So I wanted to see if we had prior art pertaining to
qemu simulation. I think I should have taken the deductive reasoning
about the codebase approch for my other questions. I'm fighting my "aaah
I don't understand," and with your reminder and guide here will be able
to do so better next time.

> powerpc64-linux-gnu-gdb -interpreter=mi
> ~-data-list-register-names
> ^done,register-names=
>["r0","r1","r2","r3","r4","r5","r6","r7","r8","r9","r10","r11","r12","r13","r14","r15","r16","r17","r18","r19","r20","r21","r22","r23","r24","r25","r26","r27","r28","r29","r30","r31","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","f10","f11","f12","f13","f14","f15","f16","f17","f18","f19","f20","f21","f22","f23","f24","f25","f26","f27","f28","f29","f30","f31","pc","msr","cnd","lr","cnt","xer","fpscr","mq"

> ah HA!  one of those is the condition register!

Very cool and helpful. I think I over-stressed my self while working on
the presentation yesterday, which has caused me to inadvertantly 'take'
today off. Will be back and well rested to take on these challenges of
deductive reasoning, especially in using gtkwave to understand the ALU
signaling, tomorrow :)

Cole

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 21:48       ` Luke Kenneth Casson Leighton
@ 2020-06-09 22:07         ` Luke Kenneth Casson Leighton
  2020-06-10  0:38         ` Cole Poirier
  2020-06-10 18:53         ` Michael Nolan
  2 siblings, 0 replies; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-09 22:07 UTC (permalink / raw)
  To: Libre-RISCV General Development

euurrgh took a while

powerpc64-linux-gnu-gdb -interpreter=mi
~-data-list-register-names
^done,register-names=["r0","r1","r2","r3","r4","r5","r6","r7","r8","r9","r10","r11","r12","r13","r14","r15","r16","r17","r18","r19","r20","r21","r22","r23","r24","r25","r26","r27","r28","r29","r30","r31","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","f10","f11","f12","f13","f14","f15","f16","f17","f18","f19","f20","f21","f22","f23","f24","f25","f26","f27","f28","f29","f30","f31","pc","msr","cnd","lr","cnt","xer","fpscr","mq"

ah HA!  one of those is the condition register!

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 21:01     ` Cole Poirier
@ 2020-06-09 21:48       ` Luke Kenneth Casson Leighton
  2020-06-09 22:07         ` Luke Kenneth Casson Leighton
                           ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-09 21:48 UTC (permalink / raw)
  To: Libre-RISCV General Development

On Tue, Jun 9, 2020 at 10:01 PM Cole Poirier <colepoirier@gmail.com> wrote:
>
> On Jun 9 2020, at 1:15 pm, Luke Kenneth Casson Leighton <lkcl@lkcl.net> wrote:
>
> > with michael having added the qemu-execution thing, you should now
> > first be able to add a "twi" (or tdi) instruction unit test to that,
> > first.
>
> This is filling in the pseudo-code for the soc/decoder/isa/caller.py?

yeees... however the first thing to do is write the unit test.  then
you have a means by which the code in caller.py py will be... called.
without writing the unit test, you have no way to call that code,
therefore how can you know if what you write is correct?

> > this will allow you to check that the *simulator* is correct.
>
> How do I use qemu to verify that the simulator is correct?

well, first we recall that it was michael who added the code, under
the recent bugreport from monday.  so we do this:

$ git log > /tmp/f

then, we open up that file, and grep "Michael".   that shows this line:
commit 613b15043fc7302c8ad4495b6bff65063eb1c0e3
Author: Michael Nolan <mtnolan2640@gmail.com>
Date:   Mon Jun 8 13:36:57 2020 -0400

    Restore test_sim.py, begin modifying it for testing against qemu

that looks about right, doesn't it?  (i don't know the answer, either,
however i am simply following a deductive reasoning trail, from
evidence left by michael).

so let's do a git diff

$ git diff 613b15 3a0b0f

and that shows (just as the comment says) a file called test_sim.py.
from the top of the diff it shows that that test_sim.py file is in
soc/simulator/test_sim.py

so now we know where that file is.

> Sorry I've
> looked on the bug report and the wiki? Is there a wiki page with the
> procedure? If not, what's the procedure I should follow?

you need to think through a process of deducing this information for yourself.

looking at that file, it's a unit test, isn't it?  and it has the
exact same "run_tst_program" pattern that's in the test_pipe_caller.py
programs, doesn't it?

therefore, logically, if we put instructions in a unit test listing,
we expect them to be run, yes?

and if you look at test_sim.py's "run_tst_program()" function, we can
see that it has two aspects: the first being that the simulator's
"run_tst" function is called, and the second that the qemu
run_program() function is called.

each of those will modify their respective register files, and
qemu_register_compare walks through them and compares them, doesn't
it?

this really isn't hard to deduce!

therefore to test twi, we add a new unit test to that file, and run
it.  now, it *may* fail (because it's a trap, and we don't actually
know how qemu will react to that).  we'll cross that bridge when we
come to it, ok?  we expect at least the PC to be changed to 0x700, so
will have to work out how to get the PC out of qemu.


in essence, here, there is a series - a chain - of logical deductive
reasoning that allows us, from a few well-known sources that we have
access to, to find the information that was sought.

being able to do this, regardless of the size of the codebase and
regardless of whether quotes documentation quotes exists, is an
absolutely essential and critically important skill.

it is however important that you appreciate and have confidence that
you *can* in fact deploy such techniques (or others like it) in order
to find what you seek.

when this particular technique has failed me (due to the codebase size
being over a quarter of a million lines) i have been known to print it
out entirely on double-sided double-column pages (where an 80 char
limit has been absolutely essential in meeting that), and literally
going through absolutely every single page in the course of a day,
speed-reading flicking one by one, to get a "subconscious" handle on
the codebase that then allows me to go "i've seen that before" and
stand a chance of being able to find it relatively quickly.

l.

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 20:15   ` Luke Kenneth Casson Leighton
@ 2020-06-09 21:01     ` Cole Poirier
  2020-06-09 21:48       ` Luke Kenneth Casson Leighton
  0 siblings, 1 reply; 16+ messages in thread
From: Cole Poirier @ 2020-06-09 21:01 UTC (permalink / raw)
  To: Libre-RISCV General Development; +Cc: Libre-RISCV General Development

On Jun 9 2020, at 1:15 pm, Luke Kenneth Casson Leighton <lkcl@lkcl.net> wrote:

> with michael having added the qemu-execution thing, you should now
> first be able to add a "twi" (or tdi) instruction unit test to that,
> first.

This is filling in the pseudo-code for the soc/decoder/isa/caller.py?

> this will allow you to check that the *simulator* is correct.

How do I use qemu to verify that the simulator is correct? Sorry I've
looked on the bug report and the wiki? Is there a wiki page with the
procedure? If not, what's the procedure I should follow?
 
> then after you know that the *simulator* is correct, the same unit
> test can be used in test_pipe_caller.py, and in that way you will then
> be able to test that the *hardware* is correct.

Sounds like a plan.

Cole

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 19:35 ` Cole Poirier
@ 2020-06-09 20:15   ` Luke Kenneth Casson Leighton
  2020-06-09 21:01     ` Cole Poirier
  0 siblings, 1 reply; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-09 20:15 UTC (permalink / raw)
  To: Libre-RISCV General Development

On Tue, Jun 9, 2020 at 8:35 PM Cole Poirier <colepoirier@gmail.com> wrote:

> Today:
>
> I'm excited to start writing unit tests for the TRAP pipeline today, and
> to use the learning methodology you laid out on bug 325 for me that
> involves looking at gtkwave timing diagrams.

with michael having added the qemu-execution thing, you should now
first be able to add a "twi" (or tdi) instruction unit test to that,
first.

this will allow you to check that the *simulator* is correct.

then after you know that the *simulator* is correct, the same unit
test can be used in test_pipe_caller.py, and in that way you will then
be able to test that the *hardware* is correct.

l.

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 13:11 Luke Kenneth Casson Leighton
  2020-06-09 13:23 ` Tobias Platen
  2020-06-09 17:21 ` Jacob Lifshay
@ 2020-06-09 19:35 ` Cole Poirier
  2020-06-09 20:15   ` Luke Kenneth Casson Leighton
  2 siblings, 1 reply; 16+ messages in thread
From: Cole Poirier @ 2020-06-09 19:35 UTC (permalink / raw)
  To: Libre-RISCV General Development; +Cc: Libre-RISCV General Development

On Jun 9 2020, at 6:11 am, Luke Kenneth Casson Leighton <lkcl@lkcl.net> wrote:

> yesterday:
> 
> * reviewed slide deck

Thank you Luke, your help so far has already made the slide deck much
better. Looking forward to your comments as you have time to read. Not
as much of a rush now since the pitch has been moved to next wednesday :)

Yesterday: spent entire day writing slide deck

> * a bit on TRAP including adding a privilege testing function
> today:
> 
> * a bit more on OP_TRAP

Today:

I'm excited to start writing unit tests for the TRAP pipeline today, and
to use the learning methodology you laid out on bug 325 for me that
involves looking at gtkwave timing diagrams.



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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 17:21 ` Jacob Lifshay
@ 2020-06-09 17:44   ` Luke Kenneth Casson Leighton
  0 siblings, 0 replies; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-09 17:44 UTC (permalink / raw)
  To: Libre-RISCV General Development

On Tue, Jun 9, 2020 at 6:21 PM Jacob Lifshay <programmerjake@gmail.com> wrote:

> yesterday:
> not much

:) rest is good

> today:
> working on mul and div units -- they will most likely increase the core's
> gate count by a large amount, particularly the div pipeline, since it's
> designed for high performance, not as much for low area.

hm hm well as long as it is below 45k LUTs we should be good.  last
resort there is always the microwatt div algorithm, which i noticed in
its FSM has the option to skip large batches of zeros (8 at a time).
personally i hope it fits, hmm it should be easy to check, with
synth_ecp5
this is for test_div_pipe_core_bit_width_8_fract_width_4_radix_2.il

=== top ===

   Number of cells:               3411
     CCU2C                         461
     L6MUX21                       116
     LUT4                         1777
     PFUMX                         539
     TRELLIS_FF                    518

that's a very small one, though, isn't it?  bit-width of 8?

> Also, I saw the new *inter-core* speculative execution vulnerability in
> Intel processors, the previous ones were mostly intra-core.

oh no!  i don't know whether to laugh, start to feel sorry for them,
or look it up and make sure we don't make the same mistake.  probably
all of those :)

l.

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 13:11 Luke Kenneth Casson Leighton
  2020-06-09 13:23 ` Tobias Platen
@ 2020-06-09 17:21 ` Jacob Lifshay
  2020-06-09 17:44   ` Luke Kenneth Casson Leighton
  2020-06-09 19:35 ` Cole Poirier
  2 siblings, 1 reply; 16+ messages in thread
From: Jacob Lifshay @ 2020-06-09 17:21 UTC (permalink / raw)
  To: Libre-RISCV General Development

yesterday:
not much

today:
working on mul and div units -- they will most likely increase the core's
gate count by a large amount, particularly the div pipeline, since it's
designed for high performance, not as much for low area.

Also, I saw the new *inter-core* speculative execution vulnerability in
Intel processors, the previous ones were mostly intra-core.

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 13:23 ` Tobias Platen
@ 2020-06-09 16:20   ` Luke Kenneth Casson Leighton
  0 siblings, 0 replies; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-09 16:20 UTC (permalink / raw)
  To: Libre-RISCV General Development

On Tue, Jun 9, 2020 at 2:23 PM Tobias Platen
<libre-soc@platen-software.de> wrote:
>
> yesterday:
>
> not much, reading some of the code only
>
> today:
>
> ld/st splitter and port interface

we're going to need this, it's coming up on the critical path, because
it's the way that mis-alignment will be taken care of.

i've just added that extra argument to LenSplitter which allows it to
create a *byte* mask, where LDSTSplitter rather hilariously deals only
with bits.

l.

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [libre-riscv-dev] daily kan-ban update 09jun2020
  2020-06-09 13:11 Luke Kenneth Casson Leighton
@ 2020-06-09 13:23 ` Tobias Platen
  2020-06-09 16:20   ` Luke Kenneth Casson Leighton
  2020-06-09 17:21 ` Jacob Lifshay
  2020-06-09 19:35 ` Cole Poirier
  2 siblings, 1 reply; 16+ messages in thread
From: Tobias Platen @ 2020-06-09 13:23 UTC (permalink / raw)
  To: libre-riscv-dev

yesterday:

not much, reading some of the code only

today:

ld/st splitter and port interface
 

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [libre-riscv-dev] daily kan-ban update 09jun2020
@ 2020-06-09 13:11 Luke Kenneth Casson Leighton
  2020-06-09 13:23 ` Tobias Platen
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Luke Kenneth Casson Leighton @ 2020-06-09 13:11 UTC (permalink / raw)
  To: Libre-RISCV General Development

yesterday:

* reviewed slide deck
* did some minor "no-brain" code-morphs
* a bit on TRAP including adding a privilege testing function

today:

* a bit more on OP_TRAP
* augmented LenExpand to be byte-capable (for shift/mask in LD/ST)

rest of today:

* looking to do proper byte shift/mask in L0CacheBuffer.

---
crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68

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

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, back to index

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-09 21:49 [libre-riscv-dev] daily kan-ban update 09jun2020 Alain D D Williams
2020-06-09 22:48 ` Luke Kenneth Casson Leighton
  -- strict thread matches above, loose matches on Subject: below --
2020-06-09 13:11 Luke Kenneth Casson Leighton
2020-06-09 13:23 ` Tobias Platen
2020-06-09 16:20   ` Luke Kenneth Casson Leighton
2020-06-09 17:21 ` Jacob Lifshay
2020-06-09 17:44   ` Luke Kenneth Casson Leighton
2020-06-09 19:35 ` Cole Poirier
2020-06-09 20:15   ` Luke Kenneth Casson Leighton
2020-06-09 21:01     ` Cole Poirier
2020-06-09 21:48       ` Luke Kenneth Casson Leighton
2020-06-09 22:07         ` Luke Kenneth Casson Leighton
2020-06-10  0:38         ` Cole Poirier
2020-06-10 13:16           ` Luke Kenneth Casson Leighton
2020-06-10 18:53         ` Michael Nolan
2020-06-10 21:30           ` Cole Poirier

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