Is the Chip Ready for Tape-Out Once the Verilog Code is Completed?

If you want to create a SoC chip, self-develop customized IPs to highlight differentiation, and purchase other general-purpose IPs, then connecting them is all that is needed. Making an SoC is just about connecting the dots. Once the Verilog code is done, can the chip be sent for tape-out? Let’s not even talk about the technology of connecting the SoC; what happens after everything is connected?

First, you need to compile successfully, organize the file list, sub-modules, subsystems, and top-level, integrating from the bottom up. Run the RTL compile, clearing all errors. Once the compilation passes, clear all warnings. No errors, no warnings!

Then you need to clear Lint, cleaning sub-modules, subsystems, and top-level, removing all errors and warnings, and waiving those that cannot be cleared. No errors, no warnings!

Is the Chip Ready for Tape-Out Once the Verilog Code is Completed?

Why aim for no warnings? Because many bugs may be hidden in warnings; fixing them reduces the number of bugs during verification.

Release the version for verification.

Generate SDC, writing per block, with the top-level producing only the top SDC. Run pre-synthesis, clearing logs and reports of all errors, and scanning all warnings. Deliver the block and the top. The top-only pre-synthesis should include the block’s lib/db; to speed up early delivery, a fake lib/db can be generated using scripts. The top-level can be delivered in parallel with the block. Deliver the sync cell list and don’t touch list.

Generate UPF, describing low power and power schemes, with block UPF, top-level UPF, and flat UPF. Produce the ISO list. Run CLP/VCLP to ensure UPF syntax and semantics are correct, and that domain divisions do not conflict. Later, perform power analysis and optimization.

Run Formal verification, under normal circumstances, the RTL vs. netlist should pass in one go; if not, either the RTL has issues or the synthesis constraints are unreasonable and need to be supplemented.

Run DFT VCLINT, writing SGDC constraints to describe OCC points, test_rstn points, test mode, and clock mux points. Clear errors and warnings, which can resolve 80% of the uncontrolled issues with register clocks and resets in DFT mode. Deliver no scan list, no wrapper list, and TDR list.

Run CDC/RDC checks, per block, top-only, and full chip flat checks. Waive, no errors, no warnings!

Is the Chip Ready for Tape-Out Once the Verilog Code is Completed?

Release the version to the mid-end.

In the middle and back-end iterations, address DFT feedback issues by adding test_mux and TDR, supplementing unreasonable SDC constraints, increasing timing paths that are too long, and modifying RTL for congestion issues.

Verification debugging, EDA, emulation, FPGA, DFT, low power, and post-simulation verification debugging. Coverage analysis, producing waiver files to achieve “explainable” 100% coverage.

STA analysis, block STA, full chip flat STA. Produce flat SDC, modify unreasonable constraints, and iterate RTL for timing issues.

STC, special timing check, providing path checks to see if they meet expectations, and fixing violations.

RTL Freeze.

ECO, manual ECO or tool automated ECO flow.

Once the Verilog code is completed, can the chip be sent for tape-out? Well, this is just the first step. Note: This article only covers front-end work; middle and back-end work has not yet been addressed. To be continued~

Is the Chip Ready for Tape-Out Once the Verilog Code is Completed?

END

Source: Silicon Farmer

Copyright belongs to the original author. If there is any infringement, please contact for deletion..Recommended ReadingWhy is C++ rarely used in microcontroller development?Xiaomi is really stingy; a single MCU can handle all functions.Uploading a PCB photo with only 2 lines of silk screen, GPT-5 helped me solve everything!→ Follow for more updates ←

Leave a Comment