Design services
Manual place and route.
For compute blocks with a repeating structure, we place by script and by hand, design custom clock trees, abut the sub-blocks, and integrate the result with a standard digital back-end flow.
- Covers
- Hand placement, critical routing, custom clock trees and abutment
- Best for
- Pipelined datapaths and compute blocks with a repeating structure
- Integration
- Hardened as a block, or custom cells fixed by a placement script
- Our work
- A hand-placed compute core on 16 nm FinFET, with sub-blocks abutted at 95% placement utilisation at tape-out
What manual place and route does
The most regular layout, where it matters most.
Hand placement
Cells placed in data-flow order shorten wires and balance setup and hold paths, and a repeating layout makes process variation more uniform across the block.
Custom cell heights
Custom cells of different heights on critical paths, for deep optimisation of timing and power.
Abutment
Sub-blocks abutted without boundary cells, raising placement utilisation and reducing area.
Custom clock trees
Clock distribution designed for the pipeline structure, controlling skew and power.
Power delivery and IR drop
The power network designed with the placement, with static and dynamic IR drop analysis.
Integration with automated flows
The custom part hardened as a block, or its cells fixed by a placement script, while the other logic follows the automated flow.
The place-and-route flow
Six steps, from floorplan to sign-off.
Floorplan
Hierarchy, block sizes, abutment and power structure.
Hand placement
Cells placed by script, bit slice by bit slice, with iteration on the critical paths.
Clock tree
Clock distribution designed to balance skew and power.
Routing
Critical signals routed by rule, with the rest completed by tools.
Extraction and timing
Parasitic extraction, post-layout simulation and static timing analysis.
Sign-off
Timing across corners, IR drop and physical rules.
Questions about manual place and route
How does it differ from automated place and route?
In automated place and route, tools decide cell positions and wiring, which suits control logic and interfaces. In manual place and route, engineers decide the placement of key blocks by script, which suits regular, repeating datapaths.
Can it work with an automated flow?
Yes. The custom part can be hardened as a block that gives the top level its timing and physical models, or a placement script can fix the custom cells in a way that stays fully compatible with the automated flow.
How are timing, power, IR or ECO issues handled?
In the same way as in an automated flow. The key to full-custom design is treating the architecture, netlist, cells and placement as one.
Which blocks suit manual place and route?
Pipelined blocks with a regular bit width and high switching activity. The larger and more repetitive the block, the greater the gain.
Related pages
Have a block worth placing by hand?
Send its structure, the target process, and where its energy and area go, and we will reply.