<@U016EM8L91B> <@U016HSAA3RQ> I hear there is plan...
# shuttle
d
@Tim Edwards @jeffdi I hear there is plan for OpenFrame (Excluding Caravel CPU + Subsystem) tape-out. Where i can find more details on this? Are we started accepting this Open Frame based tapeout ?
👀 2
t
Yes! We have not made an announcement pending a few fixes and a few trial runs of the tapeout procedure. So there is no specific online documentation on how to use the openframe design yet. But I have an example design that I am currently keeping in https://github.com/RTimothyEdwards/caravel_openframe_project. The README file has all the steps to get to the final GDS (but nothing yet about the submission process). We ran a test layout from that example project on the September shuttle run, shoving it manually through/past the prechecks. That test run uncovered several issues that needed to be patched up, but it's nearly ready now (as in a few days' work).
d
@Tim Edwards Are we allowed use Openframe based project for next nov shuttle?
t
Yes, it should be ready very soon and you may start designing with it.
d
🙏
@Tim Edwards I am in process of porting Riscduino SOC into caravel openframe format. I see there are contradiction definition in between fixed_wrapper and config.json File: https://github.com/RTimothyEdwards/caravel_openframe_project/blob/main/openlane/openframe_project_wrapper/fixed_dont_change/fixed_wrapper_cfgs.tcl # Power & Pin Configurations. DON'T TOUCH. set ::env(FP_PDN_CORE_RING) 1 set ::env(FP_PDN_CORE_RING_VWIDTH) 3.1 set ::env(FP_PDN_CORE_RING_HWIDTH) 3.1 set ::env(FP_PDN_CORE_RING_VOFFSET) 12.45 set ::env(FP_PDN_CORE_RING_HOFFSET) $::env(FP_PDN_CORE_RING_VOFFSET) set ::env(FP_PDN_CORE_RING_VSPACING) 1.7 set ::env(FP_PDN_CORE_RING_HSPACING) $::env(FP_PDN_CORE_RING_VSPACING) set ::env(FP_PDN_VWIDTH) 3.1 set ::env(FP_PDN_HWIDTH) 3.1 set ::env(FP_PDN_VSPACING) [expr 5*$::env(FP_PDN_CORE_RING_VWIDTH)] set ::env(FP_PDN_HSPACING) [expr 5*$::env(FP_PDN_CORE_RING_HWIDTH)] Where as https://github.com/RTimothyEdwards/caravel_openframe_project/blob/main/openlane/openframe_project_wrapper/config.json I see CORE RING PDN values are over-written "FP_PDN_CORE_RING": 1, "FP_PDN_CORE_RING_VWIDTH": 20, "FP_PDN_CORE_RING_HWIDTH": 20, "FP_PDN_CORE_RING_VOFFSET": -4, "FP_PDN_CORE_RING_HOFFSET": -4, "FP_PDN_CORE_RING_VSPACING": 2.4, "FP_PDN_CORE_RING_HSPACING": 2.4, "FP_PDN_VWIDTH": 6.4, "FP_PDN_HWIDTH": 6.4, "FP_PDN_HSPACING": 3.2, "FP_PDN_VSPACING": 3.2,
t
I threw the project to the openlane developers and they generated the files like
config.json
, so I don't know much about their contents other than that it works and I can reproduce the final example project GDS using their instructions and those files. I think the
fixed_wrapper_cfgs.tcl
file was just copied from Caravel and if the values don't agree with the
config.json
file, then the
config.json
should be assumed to have the correct values.
d
@Tim Edwards Typically assumption is fixed_wrapper_cfg.tcl hold the master config and user config should not over-right it. It would be nice if you can share me final example GDS for cross-reference.
t
It seems counter-intuitive to me that the user config should not override the master config, but also counter-intuitive that there should be both a master and user config in the same directory. But anyway, anything contradictory in the example is due to my own lack of knowledge about openlane and the fact that I just passed the whole project on to the openlane developers and folded their configuration files back into the project. Once I could run the example through openlane and generate a final layout, I didn't look around for any remaining issues.
d
@Tim Edwards I have reviewed config.json, it does not uses fixed_dont_change/default_wrapper_cfgs.tcl & fixed_dont_change/fixed_wrapper_cfgs.tcl file. It would be better to remove this unused files in fixed_dont_change folder to avoid confusion. What is process to running pre-check for this openframe? My local pre-check run's shows following Error 1. {{CONSISTENCY CHECK FAILED}} caravel_openframe.v file was not found in /opt/caravel/verilog/gl - Where to get caravel_openframe.v, What is expected top module name ? From Example i thought "openframe_project_wrapper" is top module name 2. {{XOR CHECK UPDATE}} Total XOR differences: 901 - I need to review the golden gds file. 3. ERROR LVS FAILED, Could not find LVS configuration file /home/dinesha/workarea/opencore/git/openframe_riscduino_dcore/lvs/openframe_project_wrapper/lvs_config.json - Where to find this LVS configuration file. Is local pre-check is clean-up for openframe database ?
t
@Dinesh A: You would need to contact @jeffdi about the condition of the precheck process (local or remote) for caravel openframe.