bigpulp
bigpulp copied to clipboard
bigPULP with private FPU
Hello,
I am looking at the possibilities offered by the HERO platform with my ZC706 board.
I'm trying to configure the architecture to have a private FPU at each core. I modified the files fe/rtl/includes/pulp_soc_defines.sv and fe/ips/pulp_cluster/packages/apu_package.sv.
When I use the make synth-pulp_cluster command I get on vivado ERROR: [Synth8-439] module 'fpu_private'not found [.../fe/ips/riscv/riscv_ex_stage.sv:392].
My question is: does bigPULP support the the private FPU at each core? Or is it through a shared fpu?
Thanks in advance.
Hi @Olivier-Dopeli , thanks for opening this issue.
It's a long time ago, but if I remember correctly, the private FPU can't be used insdie bigPULP. The bigPULP cluster is based on Mr. Wolf which has 8 cores in the cluster and 2 FPUs (each shared by 4 cores).
Best, Pirmin
Ciao @Olivier-Dopeli,
@vogelpi is right, we did not support "officially" the private FPU. You can emulate a private FPU increasing the number of shared FPUs up to the number of cores. Unfortunately, I do not have right now the list of changes that are required to achieve it, I will tell you soon about.
Otherwise, you can find here the FPU IP that contains also the private FPU, but I cannot guarantee if it will work as a black box: https://github.com/pulp-platform/fpu/blob/master/hdl/fpu_v0.1/fpu_private.sv
Alessandro