Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Sep 27 06:11
    abignail commented #9
  • Sep 27 06:10
    abignail commented #9
  • Sep 27 02:34
    abignail commented #9
  • Jun 20 03:54
    Tianhang-Cheng opened #13
  • Jun 17 14:08
    Tianhang-Cheng closed #12
  • Jun 17 14:08
    Tianhang-Cheng commented #12
  • Jun 17 08:45
    Tianhang-Cheng opened #12
  • Jun 17 08:31
    Tianhang-Cheng commented #11
  • Oct 30 2020 04:53
    dhxsy1994 closed #11
  • Oct 19 2020 10:06
    dhxsy1994 edited #11
  • Oct 19 2020 10:06
    dhxsy1994 opened #11
  • Oct 21 2019 19:20
    salmansheikh opened #10
  • Jul 27 2019 15:28
    apaj opened #9
  • Feb 18 2019 14:46

    codelec on master

    fix link (compare)

  • Feb 13 2019 02:45
    kai413629305 opened #8
  • Jan 01 2019 05:52

    codelec on master

    newer jars on maven restore nor… (compare)

  • Dec 16 2018 05:34

    codelec on master

    use older chisel3 and chisel-io… (compare)

  • Jul 15 2018 12:04

    codelec on master

    [common][rv32_1stage] use chise… (compare)

  • Jun 15 2018 08:59
    codelec closed #4
  • Jun 14 2018 18:37

    codelec on master

    [common] remove cloneType in fa… [1stage] modify imports to incl… [2stage] modify imports to incl… and 4 more (compare)

Christopher Celio
@ccelio
have you guys ever tried IntelliJ? I'm trying to see if I can get it set up for my own stuff, using (http://blog.edmondcote.com/2018/04/using-intellij-as-rocketchip-ide.html) as inspiration.
it looks like it would really cut down on the confusion of what the dependencies and project hierarchy is doing.
kritik bhimani
@codelec
i have modified the uarch diagrams yesterday, they are not supposed to replace to the chisel design sources and are just for reference purpose so you will not find every signal in those diagrams.
Stefan Wallentowitz
@wallento
great, thanks!
Peter Aaser
@PeterAaser
Has anyone here used sodor along with PYNQs?
We'll be using them for a course this fall, was hoping to use sodor for the coursework
Christopher Celio
@ccelio
yah, @codelec has demonstrated Sodor on a PYNQ board. Not sure on the status of that though. WHen I tried it the challenge was loading a binary of your choice into its memory.
Peter Aaser
@PeterAaser
We have a framework in chisel 2 for it actually. The pynq is frustratingly close to a nice user experience...
Honestly if it was up to me I'd run the whole course on emulators exclusively, but the damage done by VHDL is hard to undo.
kritik bhimani
@codelec
@PeterAaser you can ping me if you have any issue with using sodor on pynq
the last time i tried all the benchmarks and isa tests were passing on pynq
it shouldn't take much time for you to try it on pynq .. instructions given in repo are complete and known to work. Loading all isa tests and bmarks on pynq is automated
kritik bhimani
@codelec
please ensure the binary is compiled with -march=rv32i -mabi=ilp32 as flag to compiler .. if a binary works on zynqsimtop emulator it should work on pynq
kritik bhimani
@codelec
@ccelio did you try it on emulator
Christopher Celio
@ccelio
@codelec super sorry, I haven't had a chance to try your latest efforts yet. My PYNQ sits on my desk shaming me every day.
Peter Aaser
@PeterAaser
@codelec awesome, I'll let you know if I run into trouble
kritik bhimani
@codelec
custom.c
#include "util.h"
int main(){
    setStats(1);
    int a = 45;
    int b = 99;
    printf(" add:%d sub:%d mul:%d\n",a+b,b-a,a*b);
    printf("hello world\n");
    setStats(0);
}
riscv64-unknown-elf-gcc -Iriscv-tests/env -Iriscv-tests/benchmarks/common -DPREALLOCATE=1 -mcmodel=medany -static -std=gnu99 -O2 -ffast-math -fno-common -fno-builtin-printf -march=rv32i -mabi=ilp32 -o custom.riscv custom.c riscv-tests/benchmarks/common/syscalls.c riscv-tests/benchmarks/common/crt.S -static -nostdlib -nostartfiles -lm -lgcc -T riscv-tests/benchmarks/common/test.ld
spike --isa=RV32I custom.riscv
cd emulator/<config>/
make emulator
./emulator +loadmem=../../custom.riscv
custom.riscv works on zynqsimtop
kritik bhimani
@codelec
@PeterAaser any suggestions on how the layout could be made better. Sodor does not implement interrupts. Exceptions are supported to give brief insight into fault handling i.e. "what do you do when something happens that the product is not designed for?"
in other words what should sodor do when it gets a misaligned load address should it give back some junk value or should it fail safely
Peter Aaser
@PeterAaser
Does anyone have any good sources for test programs for RV32IM?
MilesZhao
@MilesZhao
Hi there, I new to Sodor core. I am doing homework at my school. I have a question to set the bypassing configurations. I want to how to set "EXE->EXE(forward output of EXE to the input of EXE)".
I know that the code should in dpath.scala and cpath.scala
nikhilnimmagadda
@nikhilnsv_twitter
@MilesZhao did you find the solution for the posted question..i'm also looking for the same
Nikolai
@qqttrr
Hello everyone! We begin implementing a minion core. The core will have custom ISRs, instruction SRAM with firmware loaded in, several read memory ports, and Tilelink interface to DRAM. For this we decided to modify sodor. There are 3 branches of sodor: ucb-bar, librecores/master and librecores/tilelink2_fpga. Which one would you suggest as the starting point for our case? Thanks in advance!
Christopher Celio
@ccelio
Probably librecores/master? I think Kritik's work is the most up-to-date.
Peter Aaser
@PeterAaser
Anyone here got a list of pseudo-ops for risc-v?
writing a parser for my test suite and I need to desugar gcc output
Cassiel-girl
@Cassiel-girl
who has lookup chisel code?
Christopher Celio
@ccelio
Cassiel-girl
@Cassiel-girl
how generate testbench that can be used by third-party eda tools???
Peter Aaser
@PeterAaser
Anyone know what "tail" desugars to?
egads
Cassiel-girl
@Cassiel-girl
how to create and initilize reg vec in chisel2?
Peter Aaser
@PeterAaser
there is a section on it
sec
Peter Aaser
@PeterAaser
oh, might be different in chisel 2
but I think you can just use RegInit( Vec(List.fill(n)(0.U(32.W))) )
just be careful that you dont do it the other way around, or you'll get a combinatoric circuit
at least in chisel3
it's a VHDL tier flaw, no idea why it's allowed
ericwu13
@ericwu13
hello I'm new to riscv and I just run the riscv-sodor. but unfourtunately, I could not find the "tracer data" in the sim results after I type "make run-emulator". Does anybody know how to get the stats report? Thanks!
Christopher Celio
@ccelio
I think that may only exist on a separate branch for the in-class lab version. It was very fragile.
kuanforml
@kuanforml
hello every i'm new to riscv-sodor. i want to run my own benchmark located in ${SODOR_DIR}/riscv-tests/build/benchmarks (benchmarks compiled by riscv-toolchains), however, after i run "make run-bmarks-test" in ${SODOR_DIR}/emulator/rv32_3stage, it just ran the global benchmarks (located in ${SODOR_DIR}/install). How can i run my custom benchmarks? Thanks!
ericwu13
@ericwu13
@ccelio thanks.... so do you know how to add tracer in the master branch?
Christopher Celio
@ccelio
ericwu13
@ericwu13
wow! thanks I will try it!
kuanforml
@kuanforml
@ccelio hello I have cloned the branch you posed above. however I failed to compile the emulator for many times. Do you know how to compile successfully?