ICC II o cial tutorial notes 3 start design setup from create_ ndm tags: DC ASIC Synopsys linux NDM cell libraries MW library used in ICC The NDM new data model is used in ICC II; the new data model Introduce the relevant content of the NDM library and the settings before PR; NDM library The standard units and macro units used by ICC are in NDM format and are called CLIBs Does not use .db Milkway GDS LEF files; The entire NDM library also contains four parts, which are used to replace the above file functions; Each CLIB contains the definition of physical and logic timing power consumption required for complete placement and routing optimization; Logic timing power consumption information is stored in timing view; originates from multiple .db files The physical information is stored in the frame view; originates from GDS or LEF is not the information of the MW library CLIB can optionally include design and layout view information; CLIB is related to a specific process; from the .tf file; Library and process information source Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com It can be seen from the above figure that the NDM library is still generated from various files given by the foundry; 2Library Compiler (library synthesizer) creates: Convert .lib files to .db Convert GDS or LEF files to .frame Library Manager (library management tool) Create CLIBs Convert .db .frame tech-file to ndm ICC II uses CLIBs to directly call Library Manager in ICC II; Standard unit de ned in .lib Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Process documents For each process, the process file is unique; It defines all process layer parameters; including: layer name GDSIIlayer num The color and patterns used to display the layout Design rules (width pitch area pitch) The definition of via contact; The rules of the default via array site definition layout vs frame view The frame view is dedicated to layout and routing, which contains the minimum information required for layout and routing; Representation of cell library information CLIB contains logical and physical models; Each .db file matching PVT Corner is represented as a pane Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com After CLIB is created, the source .db and .frame are not needed; library queries can still use the original .db name instruction: get_libs get_lib_cells get_lib_pins get_lib_timing_arcs Both accept the name of the .db library and the name of the NDM library as parameters; When the name of the .db library is used, the name of the NDM library needs to be returned Directly read the contents of the .db and .frame libraries In addition to using the pre-assembled unit library, it also supports direct reading of the contents in the .db and .frame libraries; Library Manager can be called by ICC II. Create cell library (CLBS) The generated CLIBs will automatically link with the design; It is submitted as the configuration of the library; It is similar to DC by setting search_path and link_library variables; The generated CLIBs will be automatically regenerated when their logical or physical source files are changed; library con guration example (automatic CLIB creation) 1 # set searchpath 2 lappend search_path lib_data/DB lib_data/FRAME 3 # specify the link lib 4 set_app_var link_library "ABC14_ff_1p16v_n40c.db ..." 5 6 #Specify .frame view when create_lib create_lib ORCA.dlib \ 7 -technology ABC4_9m.tf 8 -ref_libs {ABC4_svt.frame ...} Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com The assembled CLIBs will be stored in ./CLIBs by default for future use; Con gure (Auto-Assembled) automatically assembled CLIBs (library cache) The configuration of the library allows a central and a local library cache (library cache) Specify the variable value of link_library. Frames also has a central cell library location; If FC finds the corresponding cell library in the central location, it will not create a new library If it is not found, FC will form a new celllibrary in the local location and automatically put in the remaining cell library of the central library; Example of library con guration 1 2 3 4 5 set_app_var search_path ". lib_data/DB lib_data/FRAME" # Run the creation of CLIBs and use the multi-core acceleration on the machine; set_app_options -name lib.configuration.cdpl_host -value "-hosts : 4" # Specify the path to store CLIBs (default is ./CLIBs) to configure the central cache; set_app_options -list { 6 lib.configuration.local_output_dir "./MY_CLIBs" 7 lib.configuration.central_output_dir "./.../TEAM/CLIBs" 8 9 } #Add process lable 10 set_app_options -name lib.configuration.process_lable_mapping \ 11 {{p_slow {BB.db AA.db FF.db}}{p_type {DD.db EE.db}} {p_fast CC.db}} 12 13 14 ## Specify the library file .dbs set_app_var link_library "xx_ff_1p16v_n40c.db ..." 15 # .frame will be specified when create_lib; 16 # Will call Library Manager to create new clibs 17 create_lib ORCA.dlib \ 18 -technology ABC4.tf 19 -ref_libs {xx_abc14_hvt.frame ...} The combination of pre-assembled and newly generated; In addition to generating all CLIBs (.db + .frame), it is feasible to use pre_assembled CLIBs to generate new CLIBs; For example .ndm for standard cell and .db + .frame for macro & IP Compared with .db, .ndm has priority, and those in the specified .db file that are used by .ndm will be ignored; Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com If the pre-built CLIBs library is used from the beginning and the .db file core .frame library has updates available, then CLIBs can be easily regenerated for the updated information; This requires specifying the .db .frame file for clibs at the beginning; Use updated db le 1 # At the beginning, set up the CLIbs using pre_assembled 2 lappend search_path /x/y/clibs 3 create_lib ORCA.dlib -technology ABC4_9m.tf \ 4 -ref_libs {ABC4_std.ndm ABC4_ls.ndm ABC4_sram.ndm} 5 6 # The reference libraries used by create_lib here are all CLIBs analyze ... 7 8 ##Configure to use the updated .db file SRAM.db 9 lappend search_path /x/y/sram_db /x/y/sram_frame 10 11 12 13 14 #Specify a new db file set link_library "ABC4_sram_12c.db ABC4_sram_20c.db ABC4_sram_m40c.db" #Replace the original frame reference of the ndm library set_ref_libs {ABC4_std.ndm ABC4_ls.ndm sram.fram} # The tool will perform the operation of creating the library again 15 16 17 report_ref_libs # Check whether the reference library has been modified; It is necessary to replace the frame library for the existing pre-built CLIBs (.ndm has priority over .db) Library Manager (icc2_lm_shell) ow create a workspace (create a workspace to create the NDM library and read the process file); read input data from the LEF GDS frame db file (read the physical and timing guilty conscience under the required PVT conditions into the do workspace) check the workspace (validate the entered data, identify and automatically correct errors, create a frame view) commit the workshop (write the combined data to the hard disk in the way of the NDM reference library) and remove the workspace exploration ow: automatic cell library creation Exploration flow is an automated process for creating unit libraries; Use commands to load the logic (.db) and physical libraries (LEFGDS.frame) of all units, including the library information of standard unit IP cores in all available PVTs and voltage domains; Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Select the PVT parameters you wish to design work; Then let the library manager do the remaining work: Combine the correct logical and physical library information; Check the consistency of the library; Create a frame view for all loaded cells Create NDM unit library; PVT con guration When you read into the library but don't know which PVT is available, you can use filter Process/voltage/temperature; Before reading into the library, if you already know which PVT is available, use configure Process /voltage/temperature in the set up exploration workshop Using the PVT configuration allows ICC II to find the correct timing library from all imported DBs according to the PVT you specify Exploration ow -example output 1 create_workspace EXPLORE -flow exploration-technology tech.tf 2 set_pvt_configuration -voltage {0.95 1.16} -temperatures {125 -40} 3 read_db [glob ./libs/DB/*.db] 4 foreach frame [glob ./libs/frames/*.frame] 5 6 group_libs 7 write_workspace -file lib_template.tcl 8 9 process_workspace 10 11 # group 1 12 create_workspace "LIB_hvt_ff_c" \ 13 -tech ./LIB_nm_1p9m_ft.tf 14 read_db ff0p95v125c 15 read_db ff0p95v40c 16 read_db ff1p16v40c 17 read_db ff1p16v40c 18 read_ndm hvt_1p9m.frame 19 check_workspace 20 commite_workspace -output hvt_ff_c.ndm 21 #group 2 22 create_workspace "LIB_lvt_ff_c" \ Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com 23 -tech 1p9m_ft.tf 24 read_db ff0p95v125c 25 read_db ff0p95v40c 26 read_db ff1p16v40c 27 read_db ff1p16v40c 28 read_ndm lvt_1p9m.frame 29 check_workspace 30 commite_workspace -output lvt_ff_c.ndm retrieving version information retrieving version information; Retrieve the version information of the library manager used when generating the cell library: separate reference library Each reference library is independent and needs to be specified and opened independently. You need to know which unit is in which library; The search order of the reference library is defined when the design library is created; aggregate reference library An aggregated reference library is a combination of independent NDM reference libraries; It allows simple distribution of multiple related reference libraries; ICC II will prefer to read in an aggregated reference library rather than multiple independent reference libraries; An aggregated reference library has: Any unit in the aggregation library has only one name; Top a search order in the reference library; Reference script of the aggregation library: 1 #Create workspace in aggregation mode 2 create_workspace std_lib -flow aggregate 3 #Open the existing library and add it to the aggregate reference library; Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com 4 read_ndm ./LIBRARIES/ndms/hvt_lib.ndm 5 read_ndm lvt_lib.ndm 6 read_ndm rvt_lib.ndm 7 8 9 10 11 12 ## Report all open libraries get_libs report_workspace # Check the eclipse issues of the aggregate workspace report unit check_workspace 13 14 15 ## Define the search order of the aggregate reference library set_lib _order {hvt rvt lvt} 16 17 18 ## Delivery workspace commit_workspace [-output new_std_lib.ndm] 19 design setup What are the inputs? reference library tech only library Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Create a container: the design library Create a design library Specify tech and cell libraries The default is only created in memory and not stored in the hard disk; 1 lappend search_path /x/y/libs 2 create_lib ORCA.dlib -use_technology_lib abc14_9m_tech.ndm \ 3 -ref_libs { abc14_9m_tech.ndm 4 hvt_std.ndm 5 svt_std.ndm 6 lvt_std.ndm 7 sram.ndm 8 ip.ndm 9 } 10 ## If you use the -use_technology_lib option to specify the tech library, Nan Wu also nee 11 ## If lib.set.on_disk_operation is set to true create_lib will be written to the hard dis Process information If you use a tech library, you need to make sure it contains all the information needed by the NDM database; If you are using tech file, you need to apply TLU+ site and routing track information in ICC II 1 create_lib ORCA.dlib \ 2 -technology abc14_9m_tech.tf \ 3 -ref_libs ... 4 5 read_parasitics_tech -tlup Cmax.tlup -name maxTLU 6 read_parasitics_tech -tlup Cmin.tlup -name minTLU 7 ## Set site routing track information 8 set_attribute [get_site_defs unit] symmetry (symmetric) Y 9 set_attribute [get_site_defs unit] is_default true 10 set_attribute [get_layers {M1 M2}] track_offset 0.03 11 set_attribute [get_layers {M1 M3 M5}] routing_direction horizontal 12 set_attribute [get_layers {M2 M4 M6}] routing_direction vertical compression of block Block can be compressed to save the volume on the hard disk; If you want to compress the storage, you need to do the following settings when creating the design library; Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com 1 #All blocks will be compressed: 2 set_app_var 3 -name lib.setting.compress_design_lib -value true # You can choose to compress the block when saving it 4 save_block -compress 5 save_lib -compress 6 Reference library path There are two ways to specify the reference library when creating the design library; 1 # One is to store reflib's path in search_path 2 #One is to specify the path of the complete ref lib relative to the current session; 3 # This textbook is playful; I don’t want to play anymore; Mobile design library or reference library or design library and reference library; 1 #Corresponding to the above two ways to specify the reference library path When the locati 2 #Use a relative (absolute) reference library path; the first 3 #If the design library is moved, there is no need to make any changes; 4 #If the path of the reference library changes, update the content of search_path 5 6 #Use the relative reference library path; 7 #Reference library needs to be changed along with design_library 8 #If you did not update, you need to update the path of the reference library rebind a design library 1 open_lib $DESIGN_LIBRARY 2 set_search_path 3 set_ref_libs 4 report_ref_libs 5 save_lib Restricting cells (restricting the use of cells) in speci ed modules or regions Use a sub-setting of all available reference library units to restrict the use of units in a specific module or region; Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Only use units with double site height Only use high/low speed units The use of ultra_LVth units is not allowed; Use set_target_library_subset example The sub-design sub1/suba is timing_critical. Set it to use HVT and SVT cells as well as LVT cells. The rest of the design uses SVT/HVT cells. 1 set_target_library_subset -top {lib_HVT LIB_SVT} 2 set_target_library_subset -object Sub1/suba {lib_HVT LIB_LVT LIB_SVT} Perform automatic design settings; If you use DC synthesis, consider using write_icc2_files to create all the necessary input files of ICC II to achieve seamless switching; 1 write_icc2_files -output ORCA_DC_icc2 \ 2 -golden_floorplan ORCA_TOP.fp/floorplan.tcl 3 #### golden floorplan is the DC created by icc II write_floorplan that will only write in 4 Read into the netlist to create a design; 1 # At the beginning, pay attention to adding the path of the netlist to search_path; 2 read_verilog -top ORCA ORCA.v 3 link_block 4 # Block level layout and routing; 5 #Design view will be generated when the netlist is read; linking The success of the link mainly lies in whether there are missing references; 1 # Use the following command report link problem 2 report_design_mismatch -verbose 3 get_cells -hierarchical -filter is_unbound Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Load the parasitic parameter model of nxtgrd or TLUplus 1 read_parasitics_tech -tlup $TLUPLUS_MAX_FILE -name MAXTLU 2 read_parasitics_tech -tlup $TLUPLUS_MIN_FILE -name MINTLU 3 4 5 6 7 get_parasitic_techs # You can view the tlu+ read by the current session; report_lib -parasitic_tech orca.dlib # question: What is dlib? 8 In many advanced nodes, the ntxgrd file is used instead of the tlu+ file, the nxtgrd file contains the information of the TLUplus file, and the same option (-tlup) is used to read the nxtgrd file; Tlup or nxtgrd files smaller than 20M will be copied to the design library, otherwise it will only store the pointer of the file to the design library; Layout site and symmetry (symmetry mirror ip) The process file will not contain the following information: The flip layout requirements of the unit layout; Initialize the default location of the floorplan Set the site attribute 1 set_attribute [get_site_defs unit_st] symmetry {Y} 2 set_attribute [get_site_defs unit_st] is_default true 3 # Routing direction There is no preferential layout direction of the metal line in the process file; Need to manually execute the wiring direction of the metal layer through the attribute; See the example above for the tcl statement; Load power intent (power intent) Mainly through loading UPF file to load description power intent; UPF: unified power format is an international file format; it defines a power intent and structure for a multi-voltage domain design; Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com The netlist read by Plex DC already has multi-voltage design components like level shifter isolation cells retention registers Load and deliver the UPF le; 1 load_upf TOP.upf 2 load_upf -scope I_B B.upf 3 4 5 ### After loading UPF commit_upf Refers to all UPF objects, perform the main power ground check Connect instantiated power management cells with strategies; It is recommended to run the following command after loading UPF to ensure that everything is executed; commit_upf will run automatically in check_mv_design or place_opt; Golden UPF UPF’ UPF" ow support Load the DEF layout le; If the floorplan is saved using write_def; you can use the following command to load the saved DEF file; Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com 1 read_def -add_def_only_objects all ORCA.def 2 # By default, those units that exist in the DEF file but not in the netlist (such as tap 3 #Use 5.8 and later version score files as much as possible; 4 caution: (Caution) Content not supported in DEF; In the 5.8 version of the def file, the following content is not supported: 1. group bound (no fixed coordinates) create_bounds -dimensions 2. partial blockage for category / register / allow_buffer_only create_placement_blockage -type register -blocked_percentage 10 … 3. voltage areas create_voltage_area -power_domains 4. layer assignments set_routing_rule -min_routing_layer "M6" -max_routing_layer "M7" If the above tcl commands are executed in the floorplan stage, then these instructions need to be reapplied after reading the DEF; Load oorplan If you use write_floorplan to save the floorplan of ICC II; 1 source ORCA_TOP.fp /floorplan.tcl 2 #floorplan.tcl will source fp.tcl 3 #And fp.tcl will read the saved score file and all the unsupported content in def reapply Load DC's spg information If you use spg flow in DC, you need to import the following information into ICC; Your layout of standard units; soft constraints of the layer; The write_icc2_files in DC will create all necessary ICC II inputs, including your layout of standard cells and soft constraints of layers; 1 write_icc2_files -output ORCA_DC_icc2 \ 2 -golden_floorplan ORCA_TOP.fp/floorplan.tcl Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com 3 ### jiazai placement and layer constrains 4 5 sourceORCA_DC_icc2/ORCA.floorplan/floorplan.tcl Specify unused wiring layers; By default, ICC II will use all metal layers defined in the process file for wiring; If you use fewer metal layers, it will lead to: Congestion analysis before a more optimistic route; Calculation of inaccurate delay due to inaccurate calculation of RC parasitic parameters In order to get a more accurate analysis of congestion and timing before routing, specify the inapplicable amount or the neglected metal layer before routing, 1 set_ignored_layers -max_routing_layer M7 2 report_ignored_layers Load the information de ned by the scan chain Load scan-def to help ICCII identify the information and reorder of the scan chain; Reorder scanchain will be used during placement to reduce congestion; 1 read_def ORCA_scam.def 2 #scan chain will re_order during layout 3 The function of # scan_def is mainly to identify those units in the circuit that are part Connect PG pin with supply net; The synthesized netlist does not have the supply net and connection of power/ground; it is not allowed to connect the P/G PIN with the supply net. This is a logical link, not a physical metal wiring; The name of P/G net will be defined in the UPF file; In a design without UPF, use the -net option of port_pin_list to view the name of the net; Here will also connect the tie_high /low pin with the P/G PIN; 1 2 connect_pg_net # check_mv_design # Check the violation of multivoltage Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Turn on the option to use tie_high / low cell The tie_high / low unit will be inserted into the design during placement optimization; 1 2 set_dont_touch [get_lib_cells */TIE*] false # Remove the dont touch attribute of tie high set_lib_cell_purpose -include optimization [get_lib_cells */TIE*] # Point the unit intent The name of the reference library depends on the name of the library file using the ndm suffix. For example: std_cell.ndm prefix std_cell: get_lib_cells std_cell/AND3* TIP : design library package The purpose is to save the information of each stage before tapout; You can pack a library at any stage of the design process 1 2 3 4 write_lib_package # Design data and reference library information are stored in a single file, including ap read_lib_package # Restore the design exactly the same as the state before packaging Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Pack /unpack usage details 1 #pack 2 open_lib TOP.dlib 3 open_block abc 4 ... 5 write_lib_package TOP.packed 6 #unpack 7 read_lib_package TOP.packed 8 ls TOP.dlib 9 lib.ndm reflibs abc summary : design setup Copyright Complaint Spam Report Powered By Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Zabbix disk performance for use (the iostat) monitoring the linux Intelligent Recommendation ... Branch and loop Use if statements to make decisions Let if and else cooperate perfectly Repeat opera ons using loops Use for loop to sum up 1 judgment statement, 2 loop statements Miscellaneous Branc... content refer to Note link Transforms introduc on ToTensor() Lambda Transforms refer to Official document - TRANSFORMS conversion Opera ng environment: Google Colab Note link Learn notes - Phorch1.9... Second, start We want to create a game template. First we need to know the basic algorithm of the game, as shown below Created with Raphaël 2.2.0 Start game Ini aliza on game Game is running Up... Content Ar cle Directory Content Blocks and Design Libraries Objects A ributes of Objects Applica on Op ons(App Op ons) Finding/Applying Applica on Op ons IC Compiler II GUI BuiltIn Script Edi... Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com More Recommendation 1, the basic view: Respond to requests for web view View of a python is the func on defined in the views.py Define a view: Add views.py file 2, configure url Urls.py modify files in the project direc... In Django, web pages and other content are delivered by views. Each view is represented by a simple Python func on (or method, in the case of class-based views). Views func on with parameters and co... III. Installa on and tes ng This step, we will add items installa on rules and tes ng support. Rules are very simple to install. For MathFunc ons library, we have to set up libraries and header f... To learn ROS, you must first go to the official ROS wiki tutorialh p://wiki.ros.org/ I will encounter many errors and prompts when learning the elementary tutorials. Some of them can be corrected, an... A Simple Bu on Tutorial In this sec on, we use signals and slots. This is unique to pyqt. When you press the bu on, the terminal will output the statement [I modified his code here, otherwise I can... Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Related Posts ICC II official tutorial notes 2 placement ICC II Official Tutorial Note 4 TIMING SETUP [Caffe2 start from scratch]: Installa on and use of official tutorial 3.caffe2 ICC II 6 CTS Setup (set before the clock tree) Implementa on of ICC II 7 top floor design (TOP Level IMPLEMENTATION) SPARK2.2 official tutorial notes - fast start Unity official tutorial "Tanks" study notes (3) Synopsys ICC notes Hadoop 3.x + Quick Start (configured from the installa on to the official demo) Vue basics (3): start learning Vue from official documents Popular Posts caffe01 simple understanding [luogu1073][NOIP2009T3] Best trade Quick sort algorithm flow Guava implements memory cache Javaweb backend-12.9 1156. Twinkle, Twinkle All the Night Hadoop 04-Ge ng started with Hive Linked list-a summary of some algorithms 1.1 Load balancing: NAT and DR of Linux Virtual Server Oracle deadlock and solu on Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Recommended Posts Codeforces Round #464 (Div. 2) Mul -file opera on of vim under linux Python learning note, thinking map Regular common usage summary (Python style) Ali cloud server using the API Python learning by doing 6 database construc on Typical input processing in the OJ pla orm Windows and Linux virtual machines copy files to each other Floa ng model, text overflow processing, centered rela ve to the browser 5.Mysql group func on Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com Related Tags DC ASIC Synopsys unity EDA tools Hadoop Vue html vue.js node.js C# Copyright DMCA © 2018-2023 - All Rights Reserved www.programmersought.com User Notice Convert web pages and HTML files to PDF in your applications with the Pdfcrowd HTML to PDF API Printed with Pdfcrowd.com