필터 지우기
필터 지우기

HDL-Coder: Vivado gives errors creating bitstream due to disconnected URAM cascade inputs

조회 수: 1 (최근 30일)
Hello,
Using Simulink/HDL Coder, I've created a system that works "just great" - I can create a bitstream and get static timing results (it meets timing) etc., but this is not a bitstream we can actually load onto our hardware (a custom Zynq Ultrascale+ platform).
I've handed the HDL over to our FPGA engineer. He has embedded it into our larger design and run simulations with it to prove everything works. He then created an IP block for the whole thing and put that into a block design connecting up to the rest of the Zynq. Next step: synthesis, check. Place and route, check. Creating bitstream... failed! (worse yet, no XSA file)
There were numerous issues, and I don't have the list yet, but one that he mentioned has to do with the use of UltraRAMs: the URAM cascade inputs are not connected (paraphrasing our FPGA guy - I'm working on getting the actual messages).
In HDL Coder, I've "hinted" that certain memories should be URAMs. This works just fine; I can see in the Verilog these sorts of directives:
(* ram_style = "ultra" *) reg[DataWidth - 1:0] ram [2**AddrWidth - 1:0];
reg [DataWidth - 1:0] data_int;
We go through synthesis and the report shows the right number of URAMs being used. Same with place and route.
We are both mystified. Obviously, we can't specify a URAM block in Simulink and connect signals to the cascade inputs; the very idea sounds ludicrous. But where along the path did we screw up? Is there some obscure setting somewhere that defaults these unconnected inputs to ground?
Thanks,
Charles

답변 (1개)

Kiran Kintali
Kiran Kintali 2023년 9월 8일
>> Using Simulink/HDL Coder, I've created a system that works "just great"
Glad to hear it.
The error you describe in the message sounds like Vivado synthesis workflow step issue;
Would you be able to connect with MathWorks tech support on this topic? We need a sample model and or code that can reproduce the error.
We should eliminate manual coding error before reaching out to Xilinx/AMD tech support for additional inputs.
  댓글 수: 1
Charles
Charles 2023년 9월 8일
Thanks for your response. Manual coding errors are certainly a possibility. It occurred to me that, with the other issues, the URAM messages might be red herrings and the real issue might be one of the messages. But I need to work with our engineer to get those messages and see if he can resolve them.

댓글을 달려면 로그인하십시오.

제품


릴리스

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by