Synthesize BOOMv3 with Verilog not System Verilog

73 views
Skip to first unread message

YeWen Li

unread,
Jul 13, 2023, 9:47:00 PM7/13/23
to riscv-boom
Hello, 

I have successfully generated System Verilog through the riscv-boom and chipyard documents, the system verilog is here: 

cd ${chipyard-home}/sim/verilator/
make CONFIG=LargeBoomConfig
微信图片_20230714092417.png

But when I synthesized those files using Design Compiler, these files were reported as unsynthesizable errors. The errors are here:

Error:  ./src/BoomCore.sv:2499: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomCore.sv:2499: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomCore.sv:2510: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomCore.sv:2510: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomCore.sv:2620: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomCore.sv:2620: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Compiling source file ./src/BoomDuplicatedDataArray.sv
Compiling source file ./src/BoomFrontend.sv
Error:  ./src/BoomFrontend.sv:770: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomFrontend.sv:770: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomFrontend.sv:821: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomFrontend.sv:821: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomFrontend.sv:1086: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomFrontend.sv:1086: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomFrontend.sv:1099: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomFrontend.sv:1099: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Compiling source file ./src/BoomIOMSHR.sv
Compiling source file ./src/BoomMSHR.sv
Error:  ./src/BoomMSHR.sv:512: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomMSHR.sv:512: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomMSHR.sv:618: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomMSHR.sv:618: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  ./src/BoomMSHR.sv:620: The construct 'multiple packed dimensions' is not supported in this language. (VER-720)
Error:  Too many errors; can't continue. (VER-40)
*** Presto compilation terminated with 21 errors. ***


How do I generate synthesizable Verilog code?

Jerry Zhao

unread,
Jul 19, 2023, 2:03:44 PM7/19/23
to YeWen Li, riscv-boom
You have to modify the CIRCT verilog emitter options to disallow generating the unsupported constructs. I suspect this is just a flag that needs to be added to where we invoke firtool in chipyard.

-Jerry

--
You received this message because you are subscribed to the Google Groups "riscv-boom" group.
To unsubscribe from this group and stop receiving emails from it, send an email to riscv-boom+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/riscv-boom/bb548954-1d5b-4e1b-9ee1-ff20b912b753n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages