You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Step 3. To add the new delay model, first, you need to copy the {pdk_name}.textproto file to xls/estimators/delay_model/models/. Then, you'll need to add the new target for the delay model like this one here,
Thank you for the explanation. Before trying to generate a delay model 2 things I want to ask:
The PDK I am targeting works with Synopsys tools and I am not familiar with Yosys enough to work with that PDK in Yosys, I am guessing if I edit the run_op_characterization.py file to work with Design Compiler and PrimeTime I can get similar data. Will that work?
While I am targeting an educational PDK I am testing my design on an Xilinx Ultrascale FPGA, I am guessing I need to schedule for that FPGA instead of the PDK to get usable clock speeds. I see that yosys has experimental support for synthesizing for similar FPGAs. Can I do that with Yosys / Vivado tools?
Hi @proppy@hnpl , I’m working with a production PDK now and would really appreciate any help. Is it possible to add a manual data-entry point to the XLS? I can generate the necessary data points with commercial tools and integrate them somehow if possible. Thanks!
@selimsandal First - please note that you'll be generating hundreds of data points, which makes manual generation not exactly ideal.
However - if you insist on doing this manually, what you'd be looking to do is to copy (e.g.) https://github.com/google/xls/blob/main/xls/estimators/delay_model/models/asap7.textproto, and fill out all of the delay and delay_offset values in your new model. You'll also want to make sure you fill out the total_area and sequential_area entries in a corresponding area_model.
Overall, you're probably better off if you can rig up your own "synthesis server" (possibly starting with https://github.com/google/xls/blob/main/xls/synthesis/fake_synthesis_server_main.cc) that invokes your synthesis flow directly - though I suppose you could also build one that drops a Verilog file into a temporary directory, prompts the user to run their synthesis and report back the results, then takes the user input & sends that back as the response. Once you have your synthesis server set up, you can run it - then invoke run_op_characterization.py with the --rpc_port parameter to tell it to use your synthesis server rather than the default one backed by Yosys.
@ericastor Thank you for the reply, I didn't really mean manual as getting the data points by hand, I was thinking of writing a Tcl script to get the data once and handing that to XLS build process, since integrating that with the whole build system using bazel would be very hard for me, my eda tools are usually on a remote server, not on my development machine.
I'll look into building a synthesis server that can generate Tcl scripts for genus based on the requests and send back the data automatically. Thanks!
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Moved from the discussion here #1625.
To create a new delay model, there are 3 steps,
Step 1. To generate the data points, you'll need to add a new xls_model_generation target to this build file,
xls/xls/estimators/delay_model/BUILD
Lines 266 to 270 in 3ca5faa
To build the target, you can run,
Step 2. To join the data points with the delay model's op models, you'll need to build the estimator_model_join target here
xls/xls/estimators/BUILD
Lines 95 to 109 in 3ca5faa
Then join the data points and the op models,
Step 3. To add the new delay model, first, you need to copy the {pdk_name}.textproto file to xls/estimators/delay_model/models/. Then, you'll need to add the new target for the delay model like this one here,
xls/xls/estimators/delay_model/models/BUILD
Lines 48 to 53 in 3ca5faa
Beta Was this translation helpful? Give feedback.
All reactions