您的当前位置:首页floorPlan

floorPlan

2022-06-23 来源:爱问旅游网
Application Notes

Silicon Canvas, Inc.

Floor Planning

Laker PnR package provides powerful editing capabilities for you to finish floor planning easily and cost-effectively. In addition to importing design from LEF and DEF, Laker also allows you to import design from LEF and Verlilog netlist. For importing design from LEF and Verilog netlist, you can import LEF to create libraries first and then import Verilog design. The other way is importing LEF and Verilog netlist simultaneously.

This document is aimed to guide you through some functions used during floor planning, such as: • • • • •

Build design database by importing LEF files and Verilog netlists.

IO cell planning with corner cells, power and ground cells can be inserted in a defined text or CSV format.

Create power and ground core ring, straps and macro ring.

Connect power and ground between core ring, straps, IO cells and macro ring. Partition design into groups. • Define chip size.

Practice

• Tutorial case, fpDemo.tar.gz, is provided under ./fpDemo/data.

Case

The case is prepared to familiar with floorplan capabilities of Laker PnR.

Steps

1

Set up the test case and working directory, and then invoke Laker with PnR license.

%tar zxvf fpDemo.tar.gz %cd fpDemo %mkdir work1 %cd work1

%laker –Level PnR

1/13

2 Create database by importing LEF and Verilog netlist.

2.1 Invoke Create Database by selecting FloorplanÆCreate Database… in Main

Window.

2.2 Define the Design and Library and Configuration tabs of Create Database form.

Design and Library Tab Configuration Tab Technology File: ../data/CHIP_32v1.tf Verilog Library: fp

LEF Library: chipLef Lef1 Lef2

Verilog Design File: ../data/dualCoreIO.v LEF Design File:

chipLef ../data/CHIP.lef

Lef1 ../data/RAMSPNL512X8.lef Lef2 ../data/RAMSPNL256X8.lef Reference Library for Link Verilog and LEF Library: Check these libraries: chipLef, Lef1, Lef2.

Power and Ground: Net for 1’b0: GND

Figure 1: Settings of Create Database->Design and Library tab & Configuration tab

2.3 Click OK to proceed.

2/13

3 Open top design to do floor planning.

3.1 Invoke Open Cell by selecting FileÆOpen Cell in Main Window. 3.2 Select the library fp and the cell TEST.

3.3 Click OK to open the design, as illustrated below.

Figure 2: Library: fp Cell: TEST

4 Create chip boundary and core area.

4.1 Invoke Chip Size Setting by selecting FloorplanÆCreate Chip Size… in Layout

Window.

4.2 Define the Chip Setting group box as follows.

4.2.1 Choose Defined by Core AreaÆUser Assignment 4.2.2 Type 2500 for Core Width 4.2.3 Type 2500 for Core Height 4.2.4 Choose LowerLeft for Chip Origin

3/13

Figure 3: Settings of Chip Size Setting->Chip Setting group box

4.3 Define the Power/Ground Ring Area as follows.

4.3.1 Choose Unified Value and type 70 um for Power/Ground Area Width

Figure 4: Settings of Chip Size Setting->Power/Ground Ring Area group box

4.4 In the IO Cell Area

4.4.1 Choose Unified Value for IO Cell Height

4.4.2 Click on the arrow-down button to select io_site[chipLef] and its value will

show 211.75

4.4.3 Select R0 for Bottom IO Orientation

Figure 5: Settings of Chip Size Setting->IO Cell Area group box

4.5 Click OK to proceed. NOTE:

There are two ways to define chip size. One is defined by die size; the other is defined by core area, which is illustrated in this case. For defined by core size, Laker also provides Tool Estimation approach to estimate the die size according to stand cells’ utilization.

4/13

5 Create corner cells to top design.

Sometimes, Verilog netlist does not include corner cells as they are not purposed for connecting power and ground of IO cells. Verilog netlist may not include power and ground cells, neither. Under this situation, you can use the Create IO Cells command to create those cells.

5.1 Invoke Create IO Cells by selecting FloorplanÆIO PlanningÆCreate IO Cells in

Layout Window.

5.2 Type ../data/createCorner.dat in the File text box.

Figure 6: Create IO Cells

5.3 Click OK to proceed. In this case, four corner instances are created as follows.

Figure 7: Four corner instances are created

6 Place corner cells.

6.1 Invoke Place IO Cells by selecting FloorplanÆIO PlanningÆPlace IO Cells in

Layout Window.

6.2 Type ../data/cornerPlace.dat in the File text box.

5/13

Figure 8: Place IO Cells

6.3 Click OK to proceed. The four corner instances are placed into the cell boundary, as

illustrated below.

Figure 9: Four corner instances are placed into the cell boundary

7 Place IO cells into chip boundary

7.1 Invoke Plan IO by CSV/TEXT by selecting FloorplanÆIO PlanningÆ Plan by

CSV/TEXT Files… in Layout Window. In the CSV File group box, 7.1.1 Type ../data/ioText.csv on the File text box. 7.1.2 Type 0 on the Row Number of Field Title text box. 7.1.3 Choose Comma for Field Separator.

7.1.4 Define the field mapping of CSV file in the Field Mapping list and fill in the

mapping value as follows.

6/13

Figure 10: Plan IO by CSV/TEXT: CSV File settings

7.2 In the Place IO Cells group box,

7.2.1 Select Clockwise for Direction. 7.2.2 Select Spread for Style.

7.2.3 Select The Same on Each Slide for Pad Number.

7.2.4 Set the coordinate of Starting Point of X,Y as X=266.0 Y=0

You can also specify the other coordinate by mouse click on the layout window.

Figure 11: Plan IO by CSV/TEXT: Place IO Cells settings

7.3 Click OK to proceed. All IO cells are placed in the IO area, as illustrated below.

7/13

Figure 12: All IO cells are placed properly in IO area

8 Edit Core Area.

8.1 Change active layer to CoreBdry.

8.2 Invoke the Chop command by selecting EditÆChop in Layout Window. 8.3 Use the Rectangle option to cut the CoreBdry layer shape, as illustrated below.

Figure 13: Cut CoreBdry layer shape

8/13

9 Create core ring.

9.1 Invoke Create Core Ring by selecting FloorplanÆPower PlanningÆCore/Power

Domain Ring… in Layout Window. 9.1.1 Net Names: VDD GND

9.1.2 Left/Right Net Layer: METAL2; Top/Bottom Net Layer: METAL1 9.1.3 Net Width: Set 20 for each. 9.1.4 Spacing of Inner Ring to Core: 10 9.1.5 Spacing between Rings: 10 9.1.6 Extend Inner Rings: On 9.1.7 Click Apply to proceed.

Figure 14: Create Core Ring

10 Connect core ring with power/ground IO cell.

10.1 Invoke Connect/Disconnect Power/Ground by selecting FloorplanÆPower

PlanningÆConnect… in Layout Window. 10.1.1 Type VDD in the Net Name text box. 10.1.2 Type VDD in the Port Pattern text box 10.1.3 Choose IO for Connection Type. 10.1.4 Choose Connect for Mode.

10.1.5 Click Apply to proceed. The net (VDD) of core ring wire will connect to IO

cells.

10.2 Change the value of Net Name and Port Pattern to GND.

10.3 Click OK to proceed. All of the nets (VDD, GND) will connect between IO cells and

core ring, as illustrated below (Max View Level).

9/13

Figure 15: All of the nets (VDD, GND) connect between IO cells and core ring

Place all macro cells in core area.

11.1 Disable Show Flight Line via Options->Preferences->Connectivity tab in Main

Window.

11.2 Use the Move command to place those macro cells, as illustrated below.

Figure 16: Place macro cells

11 10/13

12 Create Macro Ring around the macro cells.

12.1 Invoke Create Macro Ring by selecting FloorplanÆPower Planning ÆMacro

Ring… in Layout Window. Set the following values in the form: 12.1.1 Specified Macros: Selected Macros 12.1.2 Net Names: VDD GND

12.1.3 Left/Right Net Layer: METAL2; Top/Bottom Net Layer: METAL1

Figure 17: Settings of Create Macro Ring

12.1.4 Net Width: Set 5 for each.

12.1.5 Spacing of Inner Ring to Macro: Set 5 for each. 12.1.6 Spacing between Rings: Set 10 for each.

Figure 18: Settings of Create Macro Ring

12.1.7 Click OK to proceed. The macro rings are created as illustrated below.

11/13

Figure 19: Macro rings

13 Create strap.

13.1 Invoke Create Strap by selecting FloorplanÆPower Planning ÆStrap… in Layout

Window. Set the following values in the form: 13.1.1 Net Names: VDD GND

13.1.2 Layer: METAL2 (METAL2 is available only when Vertical direction is

selected)

13.1.3 Width: 10 13.1.4 Spacing: 10 13.1.5 Direction: Vertical 13.1.6 Start X: 285

Figure 20: Settings of Create Strap

13.1.7 Configuration: Groups & Step 13.1.8 Groups: 9

12/13

13.1.9 Step: 300

Figure 21: Settings of Create Strap

13.1.10 Click OK to proceed. The straps are created as follows.

Figure 22: Straps

Conclusion

You have gone through most of the commonly used functions for floor planning. For details of each function, refer to Laker Command Reference.

13/13

因篇幅问题不能全部显示,请点此查看更多更全内容