Welcome, Guest |
You have to register before you can post on our site.
|
Forum Statistics |
» Members: 332
» Latest member: Najah
» Forum threads: 246
» Forum posts: 772
Full Statistics
|
Latest Threads |
I2C on Pulpissimo
Forum: PULP General questions
Last Post: Najah
1 hour ago
» Replies: 10
» Views: 26,382
|
What is slm_conv-0.3 in H...
Forum: PULP General questions
Last Post: kgf
09-18-2023, 06:43 AM
» Replies: 1
» Views: 110
|
HERO: Compiling OpenMP ex...
Forum: PULP General questions
Last Post: darbyshaw
08-30-2023, 09:08 AM
» Replies: 0
» Views: 126
|
error when using DC to sy...
Forum: PULP General questions
Last Post: abhishek_tyagi
07-30-2023, 02:38 AM
» Replies: 2
» Views: 6,680
|
Occamy Verilator simulati...
Forum: PULP General questions
Last Post: pquanganh3105
06-15-2023, 01:59 AM
» Replies: 2
» Views: 674
|
boot from external flash ...
Forum: PULP General questions
Last Post: a0000442
06-10-2023, 01:53 AM
» Replies: 0
» Views: 314
|
plp_mkflash cannot run
Forum: PULP General questions
Last Post: a0000442
06-09-2023, 03:07 PM
» Replies: 0
» Views: 305
|
Error building pulp sdk
Forum: PULP General questions
Last Post: costola
05-18-2023, 08:21 AM
» Replies: 0
» Views: 356
|
Sharing data between PULP...
Forum: PULP General questions
Last Post: internetdunyam
05-17-2023, 12:44 AM
» Replies: 13
» Views: 35,359
|
simulation qspi in FPGA
Forum: PULP General questions
Last Post: internetdunyam
05-17-2023, 12:43 AM
» Replies: 1
» Views: 602
|
|
|
Pulp GNU ToolChain Not throwing L2 Overflowed Error |
Posted by: vignajeth - 03-12-2021, 04:52 PM - Forum: PULP General questions
- Replies (3)
|
 |
Hi,
I am currently working with L2 Memories. I notice that even though the size of the stimuli file I have is larger than the total size of L2 private memory (0x1c010000). The compiler does not throw l2 overflowed by ... bytes error. i have not changed the /my-path/pulp-sdk/pkg/sdk/dev/install/rules/pulpissimo/link.ld file.
This the command the make file of hello example uses to compile my code
/my_path/project/gnu_toolchain/bin/riscv32-unknown-elf-gcc -march=rv32imfcxpulpv2 -mfdiv -D__riscv__ -MMD -MP -o /my_path/pulp-rt-examples/hello/build/pulpissimo/test/test /my_path/pulp-rt-examples/hello/build/pulpissimo/test/fc/test.o /my_path/pulp-rt-examples/hello/build/pulpissimo/test/fc//my_path/pulp-rt-examples/hello/build/pulpissimo/rt_conf.o /my_path/pulp-rt-examples/hello/build/pulpissimo/test/fc//my_path/pulp-rt-examples/hello/build/pulpissimo/rt_pad_conf.o -nostartfiles -nostdlib -Wl,--gc-sections -L/my_path/untouched/pulpissimo/pulp-sdk/pkg/sdk/dev/install/rules -Tpulpissimo/link.ld -L/my_path/untouched/pulpissimo/pulp-sdk/pkg/sdk/dev/install/lib/pulpissimo -L/my_path/untouched/pulpissimo/pulp-sdk/pkg/sdk/dev/install/lib/pulpissimo/pulpissimo -lrt -lrtio -lrt -lgcc
pulp-run --config-file=pulpissimo@config_file=chips/pulpissimo/pulpissimo.json --config-opt=platform=rtl --dir=/my_path/pulp-rt-examples/hello/build/pulpissimo --binary=test/test prepare
pulp-run --config-file=pulpissimo@config_file=chips/pulpissimo/pulpissimo.json --config-opt=platform=rtl --dir=/my_path/pulp-rt-examples/hello/build/pulpissimo --binary=test/test
Launching simulator with command:
I notice the pulp_tap exceeding the maximum address of the L2 memory
[pulp_tap_if] WRITE32 burst @1c00f800 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c00fc00 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c010000 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c010400 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c010800 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c010c00 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c011000 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c011400 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c011800 for 1024 bytes.
# [pulp_tap_if] WRITE32 burst @1c011c00 for 1024 bytes.
Any idea why the pulp_gnu_toolchain did not throw any error. does the pulp_gnu_toolchain should be rebuilt because i am playing by extending the Private memory sizes although the above error was produced with no change in the pulpissimo or pulp-sdk code
|
|
|
compile without RISC-V PULP specific extensions |
Posted by: naprpo - 03-08-2021, 01:37 PM - Forum: PULP General questions
- Replies (2)
|
 |
Hello,
I am trying to compile GPIO test without pulp specific instructions.
https://github.com/pulp-platform/pulp-rt...put/test.c
I modified the make file as follows:
Code: PULP_APP = test
PULP_APP_FC_SRCS = test.c
PULP_CFLAGS = -O3 -g
PULP_FC_ARCH_CFLAGS = -march=rv32imc
include $(PULP_SDK_HOME)/install/rules/pulp_rt.mk
failed with following errors:
Code: pulpissimo/pulp-rt-examples/gpio/input/build/pulpissimo/test/fc/test.o: In function `rt_gpio_set_dir':
pulpissimo/pulp-rt-examples/gpio/input/test.c:13: undefined reference to `__builtin_pulp_OffsetedRead'
pulpissimo/pulp-rt-examples/gpio/input/test.c:13: undefined reference to `__builtin_pulp_OffsetedWrite'
pulpissimo/pulp-rt-examples/gpio/input/test.c:13: undefined reference to `__builtin_pulp_OffsetedRead'
pulpissimo/pulp-rt-examples/gpio/input/test.c:13: undefined reference to `__builtin_pulp_OffsetedWrite'
pulpissimo/pulp-rt-examples/gpio/input/build/pulpissimo/test/fc/test.o: In function `main':
pulpissimo/pulp-rt-examples/gpio/input/test.c:13: undefined reference to `__builtin_pulp_OffsetedRead' collect2: error: ld returned 1 exit status
Any suggestion if it is possible use API without pulp specific instructions? or any work around ?
Thank you..
Br, naprpo
|
|
|
I2C cannot write to TX_SADDR |
Posted by: nikolas - 03-03-2021, 11:07 AM - Forum: PULP General questions
- Replies (2)
|
 |
Hey everyone
I am trying to set up an I2C on my NEXYS 4 board without using the rt api from the sdk.
Now I think I have understood the way how the uDMA works an I am also able to transmitt something over the I2C (clock is there and a signal on the SDA is there too), but this are
not the data I wanted to transfer.
My main problem now is, I am not able to write the address of my TX buffer to the TX_SADDR register. In the manual I can see that the TX_SADDR should be a read/write register but writing to it seams not be possible.
Does someone know what the problem could be or is there maybe an example how to setup peripherals connected to the uDMA without the help of the rt api?
Would really appreciate your help.
Thank you very much and have a nice day.
Code: //in a headerfile called pulpissimo.h
#define I2C0_RX_SADDR (*((volatile uint32_t *)0x1A102180))
#define I2C0_RX_SIZE (*((volatile uint32_t *)0x1A102184))
#define I2C0_RX_CFG (*((volatile uint32_t *)0x1A102188))
#define I2C0_TX_SADDR (*((volatile uint32_t *)0x1A102190))
#define I2C0_TX_SIZE (*((volatile uint32_t *)0x1A102194))
#define I2C0_TX_CFG (*((volatile uint32_t *)0x1A102198))
//in hal_i2c.c
__attribute__((section(".l2_data"))) uint8_t tx_buff[BUFFERSIZE];
__attribute__((section(".l2_data"))) uint8_t rx_buff[BUFFERSIZE];
__attribute__((section(".l2_data"))) uint8_t cmd_buff[BUFFERSIZE];
//in an initialisation function in hal_i2c.c
I2C0_RX_SADDR |= (uint32_t)&rx_buff[0]; //after this there is 0x00000000 in the register
I2C0_RX_SIZE |= BUFFERSIZE; //after this there is 0x00000000 in the register
I2C0_TX_SADDR |= (uint32_t)&tx_buff[0]; //after this there is 0x00000000 in the register
I2C0_TX_SIZE |= BUFFERSIZE; //after this there is 0x00000000 in the register
I2C0_CMD_SADDR |= (uint32_t)&cmd_buff[0]; //after this there is 0x00000000 in the register
I2C0_CMD_SIZE |= BUFFERSIZE; //after this there is 0x00000000 in the register
|
|
|
PULPino or PULPismo ? for a low-power microcontroller |
Posted by: sit-vlsi - 02-28-2021, 03:01 PM - Forum: PULP General questions
- Replies (4)
|
 |
Hello, We are trying to design a ultra low-power microcontroller for IoT applications in a 0.18um CMOS technology and I am trying to decide to choose the PULPino or PULPismo platform.
PULPino seems like the more matured platform but PULPismo seems to be the replacement for PULPino.
Our core strength is analog so we want a platform which has a well-supported toolchain, etc.
So any advice on this topic will be greatly appreciated.
|
|
|
how to simulate CV32E40P core |
Posted by: gsaitejareddy - 02-08-2021, 08:11 AM - Forum: PULP General questions
- Replies (2)
|
 |
Hi,
I am trying to simulate CV32E40P core. In example_tb file in core folder there is a make file. It is showing error
vlib-"10.7b" work
/bin/sh: 1: vlib-10.7b: not found
make: *** [Makefile:87: .lib-rtl] Error 127
I read in the documentation that there is a separate repository for verification. I have run the makefile in core-v-verif/cv32/sim/core. i was able to run hello world program. But i dont why in CV32E40P core it was not running.
I wanted to explore floating point unit in CV32E40P core. Can you please say how to simulate with system verilog files
I am not able to understand how to give input to the core. Please help me
Thanks in advance
|
|
|
Question about bitstream generation |
Posted by: zorrolee777 - 02-04-2021, 06:24 PM - Forum: PULP General questions
- Replies (4)
|
 |
Hi, I'm new to this and got some errors when generating the bitstream file.
The code I ran:
Code: $ cd $COREVMCU/fpga
$ make clean_nexys rev=nexysA7-100T
$ make nexys rev=nexysA7-100T
After running the above codes, I got the following errors.
Code: ERROR: [Synth 8-439] module 'xilinx_slow_clk_mngr' not found [/home/core-v-mcu/fpga/pulpissimo-nexys/rtl/fpga_slow_clk_gen.sv:48]
ERROR: [Synth 8-6156] failed synthesizing module 'fpga_slow_clk_gen' [/home/core-v-mcu/fpga/pulpissimo-nexys/rtl/fpga_slow_clk_gen.sv:24]
ERROR: [Synth 8-6156] failed synthesizing module 'safe_domain' [/home/core-v-mcu/rtl/pulpissimo/safe_domain.sv:12]
ERROR: [Synth 8-6156] failed synthesizing module 'pulpissimo' [/home/core-v-mcu/rtl/pulpissimo/pulpissimo.sv:13]
ERROR: [Synth 8-6156] failed synthesizing module 'xilinx_pulpissimo' [/home/core-v-mcu/fpga/pulpissimo-nexys/rtl/xilinx_pulpissimo.v:22]
When I commented out the module, some other errors would come out, saying those modules are not found. I guess there're four of them, which are xilinx_clk_mngr, xilinx_slow_clk_mngr, xilinx_private_ram and xilinx_interleaved_ram. I'm not sure if those modules are supposed to be generated by myself, or where should I get and put them? Any comments would be appreciated. Thanks in advance!
Sincerely,
Zorro
|
|
|
|