1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought ProgrammerSought ☰ search Basic use of IC Compiler II (ICC II) tags: rear end Content Article Directory Content Blocks and Design Libraries Objects Attributes of Objects Application Options(App Options) Finding/Applying Application Options IC Compiler II GUI Built-In Script Editor Design Setup Overview IC Compiler II Library Manager Library Manager(icc2_lm_shell) Flow Library Prep-icc2_lm_shell APR Flow - Design & Timing Setup Create a “Container”: The Design Library Read the Netlist and Create a Design Multiple Modes and Corners Concurrent MCMM Optimization TOP https://www.programmersought.com/article/86877197473/ 1/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Mode, Corner and Scenario Setup Loading Constraints Defining PVT Directly - Recommended Specify TLUplus Parasitic RC Models Controlling Scenario Analysis / Optimization APR Flow - Floorplan Definition Floorplanning Overview Create the Initial Floorplan Place Macros and Standard Cells Place I/O Pins Power Planning Challenges Pattern_Based Power Network Synthesis Write out the Floorplan for ICC II/DC-G APR Flow - Placement & Optimization Key Steps of the Placement Phase Design and Flow Requirement Setup Steps Congestion-Focused Setup Steps The Five Stages of placve_opt Placement and Logic Optimization:place_opt Recommended place_opt Exploration Flow Example Script APR Flow - CTS & Optimization Clock Tree Synthesis Goal and Flows Comparing Classic CTS versus CCD Clock Tree Balancing Setup Non-Default Rules Defining/Applying NDR Defining CTS-Specific DRC Values CTS Execution Analyzing CTS Results: Clock QoR Report Analyzing CTS Results: Clock Timing Report Example Script TOP https://www.programmersought.com/article/86877197473/ 2/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought APR Flow - Routing & Optimization Routing Phase Goal Recommended Routing Flow Check Zroute DRC Violations Example Script APR Flow - Signoff Signoff Prime Time Signoff-driven Physically Aware ECO Flow Function ECO Flow Standard Cell Fillers and Metal Fill Filler Insertion & Removal In-Design Signoff DRC Checking and Fixing Signoff DRC using IC Validator Metal Fill Insertion Customer Support Solvnet Regerence Flow NDM block library New infrastructure Multi-level physical hierarchy Scalable Timer Parallel optimization preroute optimization main feature Fusion with redhawk Fusion with StarRC & PT/PX Fusion with ICV other fusion PT StarRC reads ICCII DataBase directly Reference Blocks and Design Libraries https://www.programmersought.com/article/86877197473/ TOP 3/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Block is the carrier of all design data, create a block for the netlist Some commands for block are named *_block, such as open_block, save_block 1 1. read_verilog 2 2. open_block save_block 3 3. create_lib open_lib save_lib Objects 1 1. get_* 2 2. help_attributes https://www.programmersought.com/article/86877197473/ TOP 4/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Attributes of Objects Every object has attributes, and attributes have values 1 1. report_attributes -application [get_selection] Application Options(App Options) SPG: Synopsys Physical Guidence, use the back-end physical floor plan information to synthesize, highlight some problem information, and use it for the back-end process TOP https://www.programmersought.com/article/86877197473/ 5/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought 1 1. place_opt.flow.do_spg 2 2. category.sub_category.option_name Finding/Applying Application Options 1 1. report_app_options get_app_options 2 2. report_app_options time.* (Report Timing related app_options) 3 3. report_app_options -non_default (usually the default value, this comm 4 4. set_app_options -name time.remove_clock_reconvergence_pessimism -valu IC Compiler II GUI TOP https://www.programmersought.com/article/86877197473/ 6/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Built-In Script Editor Design Setup TOP https://www.programmersought.com/article/86877197473/ 7/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Overview Design Library includes Block, Cell Libraries (ndm format), Technology Library (ndm format) Block includes Gate-Level Netlist (gate-level netlist) and some files of Design constraints IC Compiler II Library Manager TOP https://www.programmersought.com/article/86877197473/ 8/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought ndm is generated using an ICC II Library Manager For some standard units/memory/IP/IO used in all design, you need to know Timing information (.db file)/physical information (.frame/LEF/GDS)/technical files Generate NDM through ICC II Library Manager, NDM contains logic/physical information, and then use it in ICC II Library Manager(icc2_lm_shell) Flow TOP https://www.programmersought.com/article/86877197473/ 9/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Library Prep-icc2_lm_shell A simple script, 1 1. create_workspace needs to specify a name and the required tech file 2 2. read_db 3 3. check_workspace 4 read_lef 4. commit_workspace save ndm https://www.programmersought.com/article/86877197473/ TOP 10/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought APR Flow - Design & Timing Setup With ndm, design & timing setup can be carried out Create a “Container”: The Design Library TOP https://www.programmersought.com/article/86877197473/ 11/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought create of design library: 1 2 1. Specify technology and some cell library (cell is ndm) 2. The default library is stored in memory Read the Netlist and Create a Design Read netlist to generate block https://www.programmersought.com/article/86877197473/ TOP 12/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Multiple Modes and Corners The current chip will operate in many modes and different corners Concurrent MCMM Optimization Because of the different application scenarios, these modes and corners are combined to form a scenario, that is, scenario, scene https://www.programmersought.com/article/86877197473/ TOP 13/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought IC can be optimized in different scenarios at the same time Mode, Corner and Scenario Setup First define mode and corner, then mode and corner are combined together to form scenarios 1 create_mode M1 2 create_mode M2 3 create_corner C1; 4 5 create_scenario -mode M1 -corner C1 -name M1_C1 6 create_scenario -mode M2 -corner C2 -name M2_C1 Loading Constraints TOP https://www.programmersought.com/article/86877197473/ 14/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought After getting the scenarios, you need to read in some constraint files 1 current_scenario M1_C1 current_scenario M2_C1 2 read_sdc C1_corner.sdc read_sdc M2_mode.sdc 3 read_sdc M1_mode.sdc read_sdc M2_C1_scenario.sdc 4 read_sdc M1_C1_scenario.sdc 5 6 read_sdc global_constraints.sdc Defining PVT Directly - Recommended For each scenario to specify the corresponding process/voltage/temperature It is recommended to use this direct assignment method for assignment Specify TLUplus Parasitic RC Models TOP https://www.programmersought.com/article/86877197473/ 15/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Bring in the parasitic parameter extraction model For each corner, read in the TLUplus file corresponding to the corner TLUplus can be read in from the ndm in the previous tech library, or specified in the subsequent design library 1 set_parasitic_parameters -corner c_slow -library $(techlib) -early_spec m 2 set_parasitic_parameters -corner c_fast -library $(techlib) -early_spec m Controlling Scenario Analysis / Optimization TOP https://www.programmersought.com/article/86877197473/ 16/54 1/28/22, 11:15 PM 1 create_scenario 2 set_scenario_status Basic use of IC Compiler II (ICC II) - Programmer Sought APR Flow - Floorplan Definition TOP https://www.programmersought.com/article/86877197473/ 17/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Floorplanning Overview Defining Defined size and shape The shape and location of the voltage domain Macro's location I/O pin location In order to avoid congestion, some standard unit blockages may be used Generate power network PNS Write out the floor Create the Initial Floorplan TOP https://www.programmersought.com/article/86877197473/ 18/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought To define the size, use: initialize_floorplan Place Macros and Standard Cells Put both the macro and standard units in 1 2 create_placement -floorplan [-congestion] set_fixed_objects fix hard_macro before place_opt Place I/O Pins TOP https://www.programmersought.com/article/86877197473/ 19/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought I/O Pins need to be placed after macro placement Usually when placing the macro, he will be placed next to the block, but sometimes it will block the macro When placing pins, you need to pay attention. Sometimes there will be some interactions between blocks, so there may be restrictions on the placement of pin blocks; or there are some special requirements for the placement of special pins, such as signal pins, clocks, and differential signal pins. , If required, you need to read it in before placing the pins, and use place_pins -self to place all the pins in the correct position. 1 set_block_pin_constraints 2 place_pins -self Power Planning Challenges TOP https://www.programmersought.com/article/86877197473/ 20/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Build a power network Pattern_Based Power Network Synthesis First define an area to it Define power grid structure: level, line width, distance between lines TOP https://www.programmersought.com/article/86877197473/ 21/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Put the pattern in the PG region, and apply it to the voltage area or bounds at the same time. You need to specify which nets to play, such as VDD, VSS, etc.; the advantage of this is that there will be no fixed coordinates in the whole process. When floorplan When there are some changes in the future, it is very flexible, and there is no need to manually change these values compile power network Write out the Floorplan for ICC II/DC-G Write down the floorplan information, if you need to re-run the ICC, you can quote the previously saved information If it is sent to the front-end synthesis, there is no need to include the placement of standard units. DC will reconsider the placement of macros during synthesis. 1 write_floorplan -output ORCA_TOP.fp 2 write_floorplan -format icc -output ORCA_TOP.fp.dc -net_types {power grou APR Flow - Placement & Optimization TOP https://www.programmersought.com/article/86877197473/ 22/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Key Steps of the Placement Phase Design and Flow Requirement Setup Steps TOP https://www.programmersought.com/article/86877197473/ 23/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Specify scenario to optimize Choose whether to open SPG Flow, SPG is to generate an initial position information after the previous DCG synthesis, ICC II can directly use this information to make the following optimization remove unwanted ideal networks Specify a specific type of library cell to use Choose whether to optimize leakage or dynamic or total optimization of leakage+dynamic Congestion-Focused Setup Steps TOP https://www.programmersought.com/article/86877197473/ 24/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought QoR is mainly divided into three parts: Congestion/Timing/Power Congestion Analyze congestion and cell/pin density after running place_opt If there is a congestion problem, you can use the following methods to solve congestion Timing Power/Area The Five Stages of placve_opt TOP https://www.programmersought.com/article/86877197473/ 25/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought initial_place/initial_drc/iniitial_opto/final_place/final_opto Placement and Logic Optimization:place_opt place_opt will run through five stages directly by default You can use the -from/-to control phase to improve efficiency Can be controlled by app options: congestion/timing, etc. Recommended place_opt Exploration Flow TOP https://www.programmersought.com/article/86877197473/ 26/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Example Script APR Flow - CTS & Optimization TOP https://www.programmersought.com/article/86877197473/ 27/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Clock Tree Synthesis Goal and Flows Comparing Classic CTS versus CCD https://www.programmersought.com/article/86877197473/ TOP 28/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Classic CTS does not look at the data path, only whether the tree between the clk entry point and each reg point is flat, reducing skew deviation The data path is in an untouched state during optimization The clock tree may be moved during CCD optimization, but Classic CTS will not Clock Tree Balancing Setup TOP https://www.programmersought.com/article/86877197473/ 29/54 1/28/22, 11:15 PM 1 # Set clock tree balance 2 set_clock_balance_points Basic use of IC Compiler II (ICC II) - Programmer Sought 3 4 5 # Specify the expected delay and the deviation between each other set_clock_tree_options 6 7 # Control which cell CTS chooses 8 set_lib_cell_purpose -include cts $cts_cells 9 set_dont_touch $cts_cells false 10 11 create_clock_balance_group 12 13 derive_clock_balance_constraints -slack_less_than -0.3 Non-Default Rules Defining/Applying NDR TOP https://www.programmersought.com/article/86877197473/ 30/54 1/28/22, 11:15 PM 1 create_routing_rule 2 set_clock_routing_rules Basic use of IC Compiler II (ICC II) - Programmer Sought Defining CTS-Specific DRC Values 1 set_max_transition <value> -clock_path [all_clocks] 2 set_max_capacitance <value> -clock_path [all_clocks] 3 4 set_max_transition 0.2 -clock_path -scenarios "S1 S4" [get_clocks SYS_CLK TOP https://www.programmersought.com/article/86877197473/ 31/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought CTS Execution Analyzing CTS Results: Clock QoR Report Analyzing CTS Results: Clock Timing Report TOP https://www.programmersought.com/article/86877197473/ 32/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Example Script APR Flow - Routing & Optimization TOP https://www.programmersought.com/article/86877197473/ 33/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Routing Phase Goal Recommended Routing Flow TOP https://www.programmersought.com/article/86877197473/ 34/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Check Zroute DRC Violations Example Script TOP https://www.programmersought.com/article/86877197473/ 35/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought APR Flow - Signoff Signoff TOP https://www.programmersought.com/article/86877197473/ 36/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Mainly do some Timing ECO or some Functional ECO Prime Time Signoff-driven Physically Aware ECO Flow Function ECO Flow TOP https://www.programmersought.com/article/86877197473/ 37/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought There may be bugs in the design design, and some problems will also occur in the post-imitation. We need to make some corrections, and will not restart from the synthesis. We often use ECO to solve them. First compare, write the changed things; then apply change, put the eco cell in it; finally make an eco route Standard Cell Fillers and Metal Fill TOP https://www.programmersought.com/article/86877197473/ 38/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Filler Insertion & Removal In-Design Signoff DRC Checking and Fixing TOP https://www.programmersought.com/article/86877197473/ 39/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Signoff DRC using IC Validator Metal Fill Insertion TOP https://www.programmersought.com/article/86877197473/ 40/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Customer Support Solvnet TOP https://www.programmersought.com/article/86877197473/ 41/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Regerence Flow NDM Timing View can be understood as db, including timing information and power consumption information TOP https://www.programmersought.com/article/86877197473/ 42/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Design view is equivalent to design, such as block, the design itself has the result of winding and place frame view and lef are the same block library block library can also be understood as ndm The abstract view is more important. It is a simplified design view. The abstract view is used when the top is implemented, which extracts the physical information of the interface and the physical information on the clock tree. New infrastructure TOP https://www.programmersought.com/article/86877197473/ 43/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought The library manager is a tool for generating ndm Multi-level physical hierarchy If you don’t support multi-level physical hierarchy, you have to parallelize it, and you can include it if you support it. TOP https://www.programmersought.com/article/86877197473/ 44/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Scalable Timer Timer can perform timing operation ICCII is based on mode rather than scenario. The library corresponding to a mode has different voltage/temperature/process, so that different PVT can be interpolated, thereby adding more flexibility Parallel optimization TOP https://www.programmersought.com/article/86877197473/ 45/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought preroute optimization The first is place, there is an early clock after the place, that is, an early CTS, the purpose is to consider the influence of the clock on the winding and the area of the clock cell/clock buffer in the place stage; if the IC is optimized, it is impossible to know the ICG The slack, because you did not make a tree, that is, early clock is to make an initial tree to estimate the timing of the ICG, and then optimize it; therefore, the early clock needs to be enabled in the place stage so that the time after the timing is completed Very match TOP https://www.programmersought.com/article/86877197473/ 46/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought The timing after place can be consistent with the timing after cts. main feature Fusion with redhawk Fusion with StarRC & PT/PX TOP https://www.programmersought.com/article/86877197473/ 47/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Fusion with ICV TOP https://www.programmersought.com/article/86877197473/ 48/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought other fusion PT StarRC reads ICCII DataBase directly TOP https://www.programmersought.com/article/86877197473/ 49/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Reference Synopsys Online Course: IC Compiler Jishu dry goods|Mount-a new generation of layout bus system IC Compiler II first acquaintance (PPT download + video playback) Copyright Complaint Spam Report Intelligent Recommendation Project II Task Three compiler to configure the network to use vim Subtasks using a [setup] command to configure the IP address Step 1: Run command [setup] Use [setup] command to configure the IP address. Press Enter after the command descending input [setup] comm... Microsoft Portable Compiler Daquan II TOP https://www.programmersought.com/article/86877197473/ 50/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Take the last Microsoft portable compiler Daquan I MSVC_QUICKCPP Download Extraction code: 8888 Usually need to temporarily modify the number of changes in the code sometimes because the compiler is d... 【Full-text search_06】Basic use of Elastic search (ii) 1.1 Simple search 1.1.1 Full document retrieval Query all data usage in MySQLSELECT * FROM table, In Elasticsearch we useGET index/_search To query all data. The response content will not ... "Part II: Basic Concept of TortoiseSVN and Methods of Use" "Part II: Basic Concept of TortoiseSVN and Methods of Use" table of Contents First, SVN's basic concept Second, SVN server installation Third, SVN client installation Fourth, SVN's basic ope... ICC II official tutorial notes 3 start design s etup from create_ndm 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 sta... More Recommendation 227 Basic Calculator II Basic Calculator II TOP https://www.programmersought.com/article/86877197473/ 51/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Implement a basic calculator to calculate a simple string expression. The string expression contains only non-negative integer, +, -, *, / four operands and spaces. Integer division retain only the in... Basic Calculator II (C ++ Basic Calculator II) ... ii Write permissions, build packages, and guide dependencies. “((13[0-9])|(14[5,7,9])|(15[4])|(18[0-9])| (17[0,1,3,5,6,7,8]))\d{8}$”; Layout main interface Registration interface Display inter... II Title link:http://acm.zzuli.edu.cn/problem.php?id=2523 Time limit: 1 sec memory limit: 64 MB Topic description recently learned the primary and other number theory, and a great interest in taking the ... WebRTC Learning II: compiler (updated M ay 2018) A. Prepare 1. Operating System Win7 64 spaces and above, must be 64-bit. I use Win10,64 bit. 2.VS version Visual Studio 2015 Update 3 and above. I useVisual Studio 2015 Update 3 http://download.micro... Related Posts https://www.programmersought.com/article/86877197473/ 。 TOP 52/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought ICC II official tutorial notes 2 placement ICC II 5 CTS (Clock Tree Comprehensive) ICC II 9 Signoff (Delivery) and Eco Flow Scrapy (II): basic use Mongodb II (basic use) ICC II Official Tutorial Note 4 TIMING SETUP ICC II 6 CTS Setup (set before the clock tree) Implementation of ICC II 7 top floor design (TOP Level IMPLEMENTATION) Chapter II compiler theory --Chapter II compiler theory Popular Posts Supplement FZU 1989 【CVPR2020】:High-Order Information Matters: Learning Relation and Topology for Occluded Person Re-Ide vivado programming FPGA speed adjustment Android RxJava practical application explanation: network request nested callback [Title] brush BZOJ 1061 [Noi2008] Volunteer Recruitment CentOS screen recording UNI-APP calls local JSON parsing implementation method Closed bag entry example, loop all over the list of indexes do not match problems DHCP build under Centos7 How to write excellent code? The six principles of design patterns tell you Recommended Posts JsonFormat date is missing 8 hours? Return me Spring Cloud OpenFeign declarative service call After phpexcel sets the border, the border is incomplete or only the vertical line problem is solved [ElasticSearch] Use Docker to install ElasticSearch, basic addition, deletion, modification, and use Jizhong Summer Vacation Camp 2020.08.10 [NOIP Improvement Group] Simulation T2: Fix Can't distinguish between copying and aliasing of arrays? Introduction of OTSU algorithm and C ++ implementation of openCV https://www.programmersought.com/article/86877197473/ TOP 53/54 1/28/22, 11:15 PM Basic use of IC Compiler II (ICC II) - Programmer Sought Spark read excel csv I. NIO Foundation - Netty Learning Road 、 、 、 static_cast dynamic_cast reinterpret_cast const_cast Related Tags DC ASIC Synopsys Compiler theory Parallel programming script translater windows Full Text Search elasticsearch es Copyright DMCA © 2018-2022 - All Rights Reserved www.programmersought.com User Notice TOP https://www.programmersought.com/article/86877197473/ 54/54