Welcome, Guest |
You have to register before you can post on our site.
|
Latest Threads |
Booting Pulpissimo from S...
Forum: PULP General questions
Last Post: ivanhira
04-22-2024, 06:01 PM
» Replies: 0
» Views: 6
|
how to manipulating of GP...
Forum: PULP General questions
Last Post: zealshah29
04-19-2024, 12:15 PM
» Replies: 6
» Views: 17,722
|
priviliged interrupts
Forum: PULP General questions
Last Post: tswaehn
04-16-2024, 01:43 PM
» Replies: 0
» Views: 102
|
Compiling and running CNN...
Forum: PULP General questions
Last Post: NEO
04-11-2024, 12:29 PM
» Replies: 2
» Views: 271
|
How do I get the files ne...
Forum: PULP General questions
Last Post: AlessioBurrello
04-05-2024, 10:22 AM
» Replies: 1
» Views: 392
|
Pulpissimo bitstream gene...
Forum: PULP General questions
Last Post: zealshah29
03-28-2024, 06:41 AM
» Replies: 13
» Views: 40,505
|
Help to run Hello Example
Forum: PULP General questions
Last Post: zealshah29
03-28-2024, 06:31 AM
» Replies: 5
» Views: 10,821
|
Compiling and running app...
Forum: PULP General questions
Last Post: zealshah29
03-28-2024, 06:13 AM
» Replies: 5
» Views: 18,797
|
Understanding the TCDM in...
Forum: PULP General questions
Last Post: zealshah29
02-13-2024, 10:34 AM
» Replies: 7
» Views: 15,103
|
Error while updating IPs
Forum: PULP General questions
Last Post: zealshah29
02-08-2024, 06:03 AM
» Replies: 4
» Views: 9,907
|
|
|
[PULP] Peripheral bus memory map |
Posted by: lukamac - 05-09-2019, 11:05 AM - Forum: PULP General questions
- Replies (1)
|
|
Hello,
I have been working on adding a HWPE to the bigpulp cluster. For start I added the HWPE MAC example into the bigpulp and synthesis passes.
Now, I would like to write an application in HERO-SDK that uses the MAC engine but I could not find the memory map for peripheral bus.
Is there a file in bigpulp which defines offsets of connected peripherals to the peripheral bus or is there any documentation about it?
To be more specific, I would like to know the base address of the HWPE and where it is defined in bigpulp.
|
|
|
clock problem when writing sdc file in order to synthesize PULPino |
Posted by: zhouqiang - 05-08-2019, 12:53 PM - Forum: PULP General questions
- Replies (2)
|
|
Clock problem when writing sdc file in order to synthesize PULPino
I am now trying to write a constraint file (sdc file) to synthesize PULPino (using DC), but I don't know much about PULPino's RTL design, so it is a challenging task for me,my question is:
1. According to the .xdc file in vivado, I infer that PULPino has three asynchronous clocks clk, spi_clk_i, tck_i. What is the frequency relationship between them?
2. In DC, I use the command get_nets/ports *clk*, I also got a spi_master_clk_o, which looks like an output port. What is it used for? Do I need to constrain it?
3. In the ASIC design, I want to set the frequency of the main clock clk to 100MHz. So, how should I set the frequency for the other two clocks?
4. In addition, I also want to constrain the generated clock. Is there a generated clock in PULPino? How should I find out all the generated clocks and the corresponding source clock?
|
|
|
Pulpissimo L2 memory access via JTAG |
Posted by: skor - 05-08-2019, 07:41 AM - Forum: PULP General questions
- Replies (8)
|
|
Hello,
I am trying to write and read L2 memory via JTAG . According to datasheet memory map it should be in 0x1c000000...0x1c080000. and in soc_bus_defines there is definition
// MASTER PORT TO L2
`define SOC_L2_START_ADDR 32'h1C00_0000
`define SOC_L2_END_ADDR 32'h1FFF_FFFF
However the above parameters are not used anywhere and I can not succesfully write and read to that area. I get always zeros from any memory address that i have tried.
So where is the memory located actually ?
I went through the related RTL codes and found local parameter TCDM_START_ADDRESS, which is set to diffrent memory area, and it looked that might be the used area but still the memory access is not working.
As background:
I have succesfylly read and written quite a many peripheral resister, SOC control registers etc, so the JTAG link as such works.
I have implemented Pulpissomo on KIntex FPGA on Genesys board. The xilinx memories seem to be in shape.
Regards, skor
|
|
|
Pulpissimo synthesis |
Posted by: MikkeN - 05-07-2019, 04:19 PM - Forum: PULP General questions
- Replies (5)
|
|
Hi,
are you having some scripts or tools to help making correct code parsing for synthesis?
I have made my own list, but don't know which files should be included. For example there is axi_slice_dc_master_wrap.sv under axi and pulp_soc.
Is there some automation hidden for src_files.yml files under IPs and RTL?
Currently when running synthesis with dc_shell, it gives errors from some of IPs. I assume that those are not needed in Pulpino implementation.
|
|
|
error when using DC to synthesis pulpino |
Posted by: zhouqiang - 05-05-2019, 03:21 PM - Forum: PULP General questions
- Replies (2)
|
|
I tried to use DC to synthesize pulpino, but the following error occurred:
Error: ../input_data/control_tp.sv:34: Unable to open file `fpu_defs_div_sqrt_tp.pvk': in search_path {/home/ichip/Desktop/PULPino_scripts/DC/tmp . /eda/synopsys/syn_vH-2013.03/libraries/ Syn /eda/synopsys/syn_vH-2013.03/minpower/syn /eda/synopsys/syn_vH-2013.03/dw/syn_ver /eda/synopsys/syn_vH-2013.03/dw/sim_ver}. (VER-292)
I opened control_tp.sv and found line 34 is:
Import fpu_defs_div_sqrt_tp::*;
It seems that this sentence caused DC to make a mistake. Can someone help me to see what this sentence means? How should I solve this error? In addition, when using DC to synthesis pulpino, what should be noted?
|
|
|
[HWPE] Microcode |
Posted by: lukamac - 05-04-2019, 01:23 PM - Forum: PULP General questions
- Replies (4)
|
|
Hello,
I found a word document describing the HWPE Interface Specification, Rev 1.2, written in January 2018. by Francesco Conti.
I would like to use the microcode capabilities of the HWPE so I read there, since in the online Interface specification I couldn't find anything about it.
In this document, there was a mention of a Pythong script ucode_compile.py that should be able to compile some high-level code for the microcode processor.
Unfortunately, I could not find it so I have a few questions now.
Is the Microcode processor in the HWPE usable?
Is there somewhere such a "compiler" for microcode?
If it should be hardcoded, is there a specification of the instruction encoding? I found very little information about this in the document.
Thank you in advance!
|
|
|
Error when building Pulpissimo |
Posted by: MikkeN - 05-03-2019, 09:27 AM - Forum: PULP General questions
- Replies (2)
|
|
Hi,
something has changed in Pulpissimo build.
Before (Instructions in Pulpissimo readme)
#building PULPISSIMO design
cd ..
git clone --recursive https://github.com/pulp-platform/pulpissimo.git
cd pulpissimo
git clone https://github.com/pulp-platform/pulp-builder.git
cd pulp-builder
git checkout 43e25418bc9590360456ddb97bd29ffb1a6a05e7
source configs/pulpissimo.sh
./scripts/clean
./scripts/update-runtime
./scripts/build-runtime
source sdk-setup.sh
source configs/rtl.sh
cd ..
./update-ips
------- THIS WAS WORKING
Instructions now:
#building PULPISSIMO design
cd ..
git clone --recursive https://github.com/pulp-platform/pulpissimo.git
cd pulpissimo
git clone https://github.com/pulp-platform/pulp-builder.git
cd pulp-builder
git checkout b3b255b0f653fce950cf730972c8ad07b1be7bf0
source configs/pulpissimo.sh
./scripts/clean
./scripts/update-runtime
./scripts/build-runtime
source sdk-setup.sh
source configs/rtl.sh
cd ..
./update-ips
------ Changed line bolded
ERROR:
drivers/i2s/i2s-v2.c: In function '__rt_i2s_open':
drivers/i2s/i2s-v2.c:131:3: error: implicit declaration of function 'udma_i2s_pdm_setup_set'; did you mean 'udma_i2s_i2s_pdm_setup_set'? [-Werror=implicit-function-declaration]
udma_i2s_pdm_setup_set(
^~~~~~~~~~~~~~~~~~~~~~
udma_i2s_i2s_pdm_setup_set
drivers/i2s/i2s-v2.c:133:5: error: implicit declaration of function 'UDMA_I2S_PDM_SETUP_WORDS'; did you mean 'UDMA_I2S_I2S_PDM_SETUP_OFFSET'? [-Werror=implicit-function-declaration]
UDMA_I2S_PDM_SETUP_WORDS(shift) |
^~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_PDM_SETUP_OFFSET
drivers/i2s/i2s-v2.c:134:5: error: implicit declaration of function 'UDMA_I2S_PDM_SETUP_DECIMATION'; did you mean 'UDMA_I2S_I2S_PDM_SETUP_PDM_DECIMATION'? [-Werror=implicit-function-declaration]
UDMA_I2S_PDM_SETUP_DECIMATION((1<<i2s->decimation_log2)-1) |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_PDM_SETUP_PDM_DECIMATION
drivers/i2s/i2s-v2.c:135:5: error: implicit declaration of function 'UDMA_I2S_PDM_SETUP_MODE'; did you mean 'UDMA_I2S_I2S_PDM_SETUP_PDM_MODE'? [-Werror=implicit-function-declaration]
UDMA_I2S_PDM_SETUP_MODE(0) |
^~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_PDM_SETUP_PDM_MODE
drivers/i2s/i2s-v2.c:136:5: error: implicit declaration of function 'UDMA_I2S_PDM_SETUP_EN'; did you mean 'UDMA_I2S_I2S_PDM_SETUP_PDM_EN'? [-Werror=implicit-function-declaration]
UDMA_I2S_PDM_SETUP_EN(1)
^~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_PDM_SETUP_PDM_EN
drivers/i2s/i2s-v2.c: In function '__rt_i2s_resume':
drivers/i2s/i2s-v2.c:190:3: error: implicit declaration of function 'udma_i2s_clkcfg_setup_set'; did you mean 'udma_i2s_i2s_clkcfg_setup_set'? [-Werror=implicit-function-declaration]
udma_i2s_clkcfg_setup_set(
^~~~~~~~~~~~~~~~~~~~~~~~~
udma_i2s_i2s_clkcfg_setup_set
drivers/i2s/i2s-v2.c:192:5: error: implicit declaration of function 'UDMA_I2S_CLKCFG_SETUP_SLAVE_CLK_DIV'; did you mean 'UDMA_I2S_I2S_CLKCFG_SETUP_SLAVE_CLK_DIV'? [-Werror=implicit-function-declaration]
UDMA_I2S_CLKCFG_SETUP_SLAVE_CLK_DIV(hw_div & 0xff) |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_CLKCFG_SETUP_SLAVE_CLK_DIV
drivers/i2s/i2s-v2.c:193:5: error: implicit declaration of function 'UDMA_I2S_CLKCFG_SETUP_COMMON_CLK_DIV'; did you mean 'UDMA_I2S_I2S_CLKCFG_SETUP_COMMON_CLK_DIV'? [-Werror=implicit-function-declaration]
UDMA_I2S_CLKCFG_SETUP_COMMON_CLK_DIV(hw_div >> 8) |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_CLKCFG_SETUP_COMMON_CLK_DIV
drivers/i2s/i2s-v2.c:194:5: error: implicit declaration of function 'UDMA_I2S_CLKCFG_SETUP_SLAVE_CLK_EN'; did you mean 'UDMA_I2S_I2S_CLKCFG_SETUP_SLAVE_CLK_EN'? [-Werror=implicit-function-declaration]
UDMA_I2S_CLKCFG_SETUP_SLAVE_CLK_EN(1) |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_CLKCFG_SETUP_SLAVE_CLK_EN
drivers/i2s/i2s-v2.c:195:5: error: implicit declaration of function 'UDMA_I2S_CLKCFG_SETUP_PDM_CLK_EN'; did you mean 'UDMA_I2S_I2S_CLKCFG_SETUP_PDM_CLK_EN'? [-Werror=implicit-function-declaration]
UDMA_I2S_CLKCFG_SETUP_PDM_CLK_EN(1) |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_CLKCFG_SETUP_PDM_CLK_EN
drivers/i2s/i2s-v2.c:196:5: error: implicit declaration of function 'UDMA_I2S_CLKCFG_SETUP_SLAVE_NUM'; did you mean 'UDMA_I2S_I2S_CLKCFG_SETUP_SLAVE_NUM'? [-Werror=implicit-function-declaration]
UDMA_I2S_CLKCFG_SETUP_SLAVE_NUM(1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_CLKCFG_SETUP_SLAVE_NUM
drivers/i2s/i2s-v2.c:199:3: error: implicit declaration of function 'udma_i2s_slave_setup_set'; did you mean 'udma_i2s_i2s_pdm_setup_set'? [-Werror=implicit-function-declaration]
udma_i2s_slave_setup_set(
^~~~~~~~~~~~~~~~~~~~~~~~
udma_i2s_i2s_pdm_setup_set
drivers/i2s/i2s-v2.c:201:5: error: implicit declaration of function 'UDMA_I2S_SLAVE_SETUP_WORDS'; did you mean 'UDMA_I2S_I2S_SLV_SETUP_OFFSET'? [-Werror=implicit-function-declaration]
UDMA_I2S_SLAVE_SETUP_WORDS(1) |
^~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_SLV_SETUP_OFFSET
drivers/i2s/i2s-v2.c:202:5: error: implicit declaration of function 'UDMA_I2S_SLAVE_SETUP_BITS'; did you mean 'UDMA_I2S_I2S_SLV_SETUP_OFFSET'? [-Werror=implicit-function-declaration]
UDMA_I2S_SLAVE_SETUP_BITS(16) |
^~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_SLV_SETUP_OFFSET
drivers/i2s/i2s-v2.c:203:5: error: implicit declaration of function 'UDMA_I2S_SLAVE_SETUP_LSB'; did you mean 'UDMA_I2S_I2S_SLV_SETUP_OFFSET'? [-Werror=implicit-function-declaration]
UDMA_I2S_SLAVE_SETUP_LSB(1) |
^~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_SLV_SETUP_OFFSET
drivers/i2s/i2s-v2.c:204:5: error: implicit declaration of function 'UDMA_I2S_SLAVE_SETUP_TWO_CHANNELS'; did you mean 'UDMA_I2S_I2S_PDM_SETUP_PDM_EN_GETS'? [-Werror=implicit-function-declaration]
UDMA_I2S_SLAVE_SETUP_TWO_CHANNELS(dev->dual) |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_PDM_SETUP_PDM_EN_GETS
drivers/i2s/i2s-v2.c:205:5: error: implicit declaration of function 'UDMA_I2S_SLAVE_SETUP_EN'; did you mean 'UDMA_I2S_I2S_PDM_SETUP_PDM_EN'? [-Werror=implicit-function-declaration]
UDMA_I2S_SLAVE_SETUP_EN(1)
^~~~~~~~~~~~~~~~~~~~~~~
UDMA_I2S_I2S_PDM_SETUP_PDM_EN
cc1: all warnings being treated as errors
|
|
|
|