Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 378
» Latest member: tbenz
» Forum threads: 267
» Forum posts: 812

Full Statistics

Latest Threads
axi_xbar integration issu...
Forum: PULP General questions
Last Post: tbenz
Yesterday, 09:30 AM
» Replies: 1
» Views: 50
issue with pulp build
Forum: PULP General questions
Last Post: kgf
07-03-2024, 08:46 PM
» Replies: 1
» Views: 164
i have some issue with si...
Forum: PULP General questions
Last Post: sungyong
06-17-2024, 04:03 AM
» Replies: 0
» Views: 182
Is there any RTL generato...
Forum: PULP General questions
Last Post: sungyong
06-17-2024, 03:55 AM
» Replies: 2
» Views: 367
install issue with pulpis...
Forum: PULP General questions
Last Post: sungyong
06-04-2024, 06:23 AM
» Replies: 3
» Views: 586
ELF Files for Polybench T...
Forum: PULP General questions
Last Post: kgf
05-24-2024, 11:38 AM
» Replies: 1
» Views: 333
OpenOCD Error with Nexys ...
Forum: PULP General questions
Last Post: NEO
04-25-2024, 06:26 AM
» Replies: 1
» Views: 1,593
Booting Pulpissimo from S...
Forum: PULP General questions
Last Post: kgf
04-25-2024, 06:19 AM
» Replies: 1
» Views: 385
how to manipulating of GP...
Forum: PULP General questions
Last Post: zealshah29
04-19-2024, 12:15 PM
» Replies: 6
» Views: 18,913
priviliged interrupts
Forum: PULP General questions
Last Post: tswaehn
04-16-2024, 01:43 PM
» Replies: 0
» Views: 343

 
  ri5cy debugger access to memory and breakpoint facility
Posted by: lightning_fingers - 12-27-2018, 09:30 AM - Forum: PULP General questions - No Replies

Hello again!

The documentation for the ri5cy core, although getting better, is still a little "light" on details for the debugger hardware.

Is there any facility available for accessing memory whilst in debugging mode?
if not, how is it proposed that memory should be accessed when debugging?

what would be the suggested mechanism for implementing a breakpoint mechanism such the executing programme can be run up to a point then the debugger activated?
(I already have a simulation where I can single step the core at a specified simulation clock count, in reality this needs to be at a specified PC).

Thanks in advance

Print this item

  update to ri5cy core interrupt system and toolchain
Posted by: lightning_fingers - 12-27-2018, 09:25 AM - Forum: PULP General questions - Replies (4)

Hello!

I am investigating using the ri5cy core for a commercial application.
Quite some time ago I looked into the ri5cy core via the Embecosm githubu fork:
https://github.com/embecosm/ri5cy

This seems to (now) be a quite old version of the core (32 interrupt inputs, much different csr implementation).

So, I've updated my core payload with the latest ri5cy rtl build.

I now have problems with my prototype interrupt code.
In C I have:


in "main()" {
    set_csr (0x300, 0x00000009);            //enable interrupts?
    write_csr(0x305, my_isr);               // isr address?
   
    // big long delay
    for (int i=0;i<10000;i++) asm("NOP");

}

void __attribute__ ((interrupt())) my_isr (){
    *simresult = (unsigned short int) 0xF111;    // flag result
}

which gives me:
00000300 <my_isr>:
 300: ff010113           addi sp,sp,-16
 304: 00f12423           sw a5,8(sp)
 308: 00e12623           sw a4,12(sp)
 30c: 40002703           lw a4,1024(zero) # 400 <simresult>
 310: 0000f7b7           lui a5,0xf
 314: 11178793           addi a5,a5,273 # f111 <_end+0xece5>
 318: 00f72023           sw a5,0(a4)
 31c: 00c12703           lw a4,12(sp)
 320: 00812783           lw a5,8(sp)
 324: 01010113           addi sp,sp,16
 328: 10000073           eret

The compiler is inserting the correct isr handling code......
But when simulated with the latest ri5cy core I get:
#  - DGB - write 0 into CTRL
#        2465870000 ps: Illegal instruction (core 0) at PC 0x00000328:
#        2469762000 ps: Illegal instruction (core 0) at PC 0x00000328:

I read in the riscv documentation that eret should now probably be an mret.
(At present I am using the embecosm modified toolchain (gcc).)

where can I download the "official" build gcc build tools for the latest ri5cy core (including all of the ri5cy additions like the hardware loop functionality)?

Many thanks in advance

Print this item

  hero-sdk for ZynqMP
Posted by: dave.mcewan - 12-21-2018, 03:57 PM - Forum: PULP General questions - Replies (7)

Hello again,

I'm trying to build hero-sdk, specifically hero-gcc-toolchain, for use on a ZCU102 and I'm running into some errors.
The first error is when compiling aeabi_lcsts.c:

Code:
hero-sdk/hero-gcc-toolchain/install/arm-linux-gnueabihf/libc/usr/include/asm/sigcontext.h:53:2: error: unknown type name '__uint128_t'

With some googling this *may* be related to CFLAGS with a -std=c11 instead of -std=gnu11. However the output from make says I'm already using gnu11:
Code:
arm-linux-gnueabihf-gcc ../sysdeps/arm/aeabi_lcsts.c -c -std=gnu11 -fgnu89-inline [... snip ...]


To retarget the host CPU architecture I've made the following changes in hero-sdk:
Code:
diff --git a/scripts/hero-z-7045-env.sh b/scripts/hero-z-7045-env.sh
index 0c7af43..31bba7d 100755
--- a/scripts/hero-z-7045-env.sh
+++ b/scripts/hero-z-7045-env.sh
@@ -36,11 +36,11 @@ export HERO_TARGET_PATH_DRIVER="${HERO_TARGET_PATH}/drivers"
 export HERO_TARGET_PATH_LIB="${HERO_TARGET_PATH}/libs"
 
 # Host-side platform config
-export PLATFORM="2"
-export BOARD="zc706"
+export PLATFORM="5"
+export BOARD="zcu102"
 
 # Host-side user-space config
-export ARCH="arm"
+export ARCH="arm64"
 export CROSS_COMPILE="arm-linux-gnueabihf-"
 export HERO_LIBPULP_DIR=`realpath hero-support/libpulp`
And in hero-gcc-toolchain:
Code:
diff --git a/scripts/hero_arm_toolchain_env.sh b/scripts/hero_arm_toolchain_env.sh
index 6cedabe..67a3760 100755
--- a/scripts/hero_arm_toolchain_env.sh
+++ b/scripts/hero_arm_toolchain_env.sh
@@ -19,7 +19,7 @@
 
 HERO_HOST_TARGET=arm-linux-gnueabihf
 HERO_BUILD_TARGET=x86_64-linux-gnu
-HERO_HOST_LINUX_ARCH=arm
+HERO_HOST_LINUX_ARCH=arm64
 HERO_HOST_GLIBC=glibc-2.26
 HERO_HOST_FPU_CONFIG="--with-fpu=neon-fp16 --with-float=hard"

 

Build platform is Ubuntu 16.04.
If I leave scripts/hero-z-7045-env.sh so that it's configured for ZC706 with ARM7 host cores then all parts of the hero-sdk build process complete successfully.

Since there appears to be some code related to ZynqMP in the makefiles, is there somebody here who has successfully built for this target?

Print this item

  Busybox Version
Posted by: Muhammad Usman - 12-20-2018, 07:21 PM - Forum: PULP General questions - Replies (1)

Hi,

Can you help me resolve this Busybox version issue?


Code:
cd buildroot && make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- -j4
make[1]: Entering directory '/home/usman/risc-v/pulpino_2015-4/pulpino/fpga/sw/buildroot'
>>> toolchain-external undefined Extracting
>>> toolchain-external undefined Patching
>>> toolchain-external undefined Configuring
Incorrect selection of kernel headers: expected 3.16.x, got 3.19.x
package/pkg-generic.mk:146: recipe for target '/home/usman/risc-v/pulpino_2015-4/pulpino/fpga/sw/buildroot/output/build/toolchain-external-undefined/.stamp_configured' failed

Print this item

  PULP vs ARM
Posted by: Mixermachine - 12-19-2018, 01:31 PM - Forum: PULP General questions - Replies (2)

Hello there,

I currently collect information for my bachelor thesis and want to compare popular RISC-V implementations.
You have a nice graphic 
[Image: pulp_family4.png]

Does there exist a documentation or has somebody knowledge about how the RISC-V cores match to for example ARM cores.
For example:

RI5CY <-> ARM cortex M0
or
PULPino <-> ARM cortex M0

Greetings from Munich,

Aaron

Edit:
The people over at Si-Five compare their cores here for example https://www.sifive.com/core-designer (scroll to the bottom)

Print this item

  Compilation error
Posted by: kkarthik976 - 12-18-2018, 05:19 AM - Forum: PULP General questions - Replies (1)

I am getting the error at the time of compilation when iI use -march=RV64.
Even i tried with the rv32 or rv64 also.

Regards
Karthik

Print this item

Brick PULPino on Vivado 2018.1
Posted by: Muhammad Usman - 12-14-2018, 03:48 PM - Forum: PULP General questions - Replies (1)

I have been trying to migrate PULPino project to Vivado 2018.1 workflow. I have been successfully able to compile hardware-software project to obtain files in sd_image. Setting up and booting the SD Card sets up Programmable Logic (as indicated by blue light). Linux is NOT booting. Please help me identify and fix the problem.

Print this item

  hero-sdk build process
Posted by: dave.mcewan - 12-12-2018, 07:22 PM - Forum: PULP General questions - Replies (5)

Hello,

I'm building the hero-sdk as per the github instructions but it's failing at the pulp-sdk stage.
Actually I'm trying on 2 systems, Debian 9.2 and Ubuntu 16.04.
Both have the same result and symptoms.
It looks like some files which should be copied from ./pulp-sdk/json-tools to ./pulp-sdk/build/sdk/json-tools are missing. I.E there's no Makefile so make doesn't know what to do.
Anybody on here have an idea what's going wrong?



Code:
$ ./hero-z-7045-builder -p
Configuring HERO SDK at: /home/user0/hero-sdk
Your PATH is correctly set. Skipping installation.
Your LD_LIBRARY_PATH is correctly set. Skipping installation.
Warning: Cannot set compiler and linker flags for libgomp plugin and mkoffload. Missing environment variables PULP_SDK_INSTALL and/or HERO_SUPPORT_DIR!
Your PATH is correctly set. Skipping installation.
Your LD_LIBRARY_PATH is correctly set. Skipping installation.
Configuring HERO SDK at: /home/user0/hero-sdk
Your PATH is correctly set. Skipping installation.
Your PATH is correctly set. Skipping installation.
Your LD_LIBRARY_PATH is correctly set. Skipping installation.
Your LD_LIBRARY_PATH is correctly set. Skipping installation.
Warning: Cannot set compiler and linker flags for libgomp plugin and mkoffload. Missing environment variables PULP_SDK_INSTALL and/or HERO_SUPPORT_DIR!
Your PATH is correctly set. Skipping installation.
Your LD_LIBRARY_PATH is correctly set. Skipping installation.
Configuring Pulp project at /home/user0/hero-sdk/pulp-sdk

sdk:json-tools:build: make all install
#### Building in /home/user0/hero-sdk/pulp-sdk/build/sdk/json-tools
#### Release type is RelWithDebInfo
#### Installing to /home/user0/hero-sdk/pulp-sdk/pkg/sdk/dev/install/ws
( cd /home/user0/hero-sdk/pulp-sdk/build/sdk/json-tools ; make all  VERBOSE=0 )
make[1]: Entering directory '/home/user0/hero-sdk/pulp-sdk/build/sdk/json-tools'
make[1]: *** No rule to make target 'all'. Stop.
make[1]: Leaving directory '/home/user0/hero-sdk/pulp-sdk/build/sdk/json-tools'
Makefile:46: recipe for target 'all' failed
make: *** [all] Error 2
Reached EOF with exit status 2
FATAL ERROR: the command 'build' has failed


And on STDERR:

Code:
No LSB modules are available.
No LSB modules are available.

Print this item

  About Bug Fix for RI5CY Core
Posted by: Dongsheng Wu - 12-11-2018, 02:43 AM - Forum: PULP General questions - Replies (2)

Hi,

I noticed that Google IPU team reported serveral bugs about RI5CY core in the RISC-V Workshop this MAY. I am wondering whether PULP team has yet fixed them in the Github release.

Hope for your response.

----- Details about the bugs -----
Bugs found in:
○ Multiplier
○ LSU

Bugs reported in page 12 of  Google's Reports on the evaluation of RI5CY
RISC-V Workshop website: RISC-V Workshop in Barcelona Proceedings
RTL Core for RI5CY Github release

Print this item

  UVM testbench for PULPINO
Posted by: mnafea - 12-10-2018, 02:57 PM - Forum: PULP General questions - Replies (3)

I'd like to ask is there any UVM environment created for PULPINO SOC, or even for one of the following cores:
  1- RI5CY
  2- Zero-riscy

Thanks  Smile

Print this item