- •Contents
- •Preface
- •About This Manual
- •Other Information Sources
- •Syntax Conventions
- •Text Command Syntax
- •About the Graphical User Interface
- •Using Menus
- •Using Forms
- •Introduction to Ambit BuildGates Synthesis
- •Separately Licensed Software Products
- •Low Power Synthesis
- •Physically Knowledgeable Synthesis
- •Datapath Synthesis
- •AC_Shell / DC_Shell Equivalencies
- •Getting Started
- •Invoking Ambit BuildGates Synthesis
- •Exiting Ambit BuildGates Synthesis
- •Files Used in Ambit BuildGates Synthesis Software
- •Key Bindings and Mouse Operations
- •Using the GUI
- •Main Menu Functions
- •File Menu Options
- •Edit Menu Options
- •View Menu Options
- •Commands Menu Options
- •Reports Menu Options
- •Window Menu Options
- •Help Menu Options
- •The Tool Bar
- •The Browsers
- •The Module Browser
- •The Variable Browser
- •Work Area Tools
- •HDL and Tcl Editors
- •Constraints Tool
- •The Schematic Viewer
- •Distributed Processing
- •Update Mode
- •The ac_shell Console
- •The Status Bar
- •Flow Procedures
- •Typical Synthesis Flow
- •Read the Libraries
- •Read the Design Data
- •Build Generic Netlist
- •Set Constraints
- •Optimize the Design
- •Generate Reports
- •Save Final Netlist
- •Viewing the Schematic Design
- •How to Use the Schematic Viewer
- •Keyboard Shortcuts
- •Mouse Operations
- •Objects in the Schematic Database
- •Accessing Context-Sensitive Pop-Up Menus
- •Highlighting Path Between Pins
- •Viewing Bus Properties
- •The Schematic Tool Bar
- •The Module Title Bar
- •Searching for an Object
- •Grouping Instances
- •Dissolving Instances
- •Creating a Unique Module
- •Displaying Logic Cones
- •Extracting Logic Cones
- •Displaying Port Constraints
- •Printing a Schematic
- •Setting Constraints
- •Setting a Hierarchical Context
- •Units in Constraints
- •Timing Constraints
- •Timing Analysis
- •Setting up Timing Context
- •Clock Insertion Delay Time
- •Data Arrival Time
- •External Delay
- •Multicycle Paths
- •Setting Drive Cell for Input Ports
- •Setting Drive Resistance
- •Slew Related Commands
- •Technology and Design Rule Constraints
- •Operating Conditions
- •Estimating Capacitance and Resistance
- •Port Capacitance
- •Capacitance Limit
- •Fanout
- •Fanout Limit
- •External Sources and Sinks
- •Wire Capacitance
- •Wire Resistance
- •Wire Load Model Selection
- •Optimizing Before Place and Route
- •Running do_optimize Command
- •Top-Down Optimization
- •Bottom-Up Optimization
- •Deriving Constraints from Context
- •Time Budgeting
- •Preserving Module Contents
- •Uniquifying Instances
- •Collapsing Hierarchy
- •Incremental Optimization
- •Applying Timing Corrections
- •Optimizing with Logic Transforms
- •Introduction to Transforms
- •Logic Optimization Steps
- •Optimizing Generic Logic
- •Mapping and Unmapping of Generic Logic
- •Constraint-Driven Optimizing
- •Summary Listing of Transform Commands
- •Optimizing After Place and Route
- •Timing Analysis
- •Backannotating
- •A Script Showing the Backannotation of a Design
- •Reading SDF Data
- •Optimizing to Correct Late and Early Slack
- •Report Generation
- •Report Header
- •Timing Reports
- •Area Reports
- •Sample Area Report
- •Library Reports
- •Hierarchy Reports
- •Sample Hierarchy Report
- •Design Rule Violations Reports
- •Sample Design Rule Violations Report
- •VHDL Library Reports
- •Sample VHDL Library Report
- •End Point Slack and Path Histogram Reports
- •Fanin and Fanout Reports
- •Sample Fanin Report
- •Finite State Machine Reports
- •Sample FSM Report
- •Customizing Report Column Width
- •Using Tcl within ac_shell and pks_shell
- •The Tcl Language
- •Procedures
- •Tcl Variables and Control Structures
- •Variables
- •Syntax
- •Tcl Commands
- •get_names Command
- •Abbreviating Commands
- •Searching for Commands
- •Accessing Environment Variables
- •Returning Unix Command Values
- •Error Handling
- •Quick Reference
Ambit BuildGates Synthesis User Guide
Getting Started
Files Used in Ambit BuildGates Synthesis Software
The default file extensions used in Ambit BuildGates synthesis software are shown in the table below.
Table 2-2 Default File Extensions
File Name Extensions |
Description |
|
|
.vhd,.vhdl |
VHDL |
|
|
.v, .vh, .h, .vpp |
Verilog |
|
|
.txt |
text files |
|
|
.alf |
Ambit library format (technology library) |
|
|
.tcl |
Tcl source files |
|
|
.html |
HTML files for on-line documentation |
|
|
.adb |
Ambit database files |
|
|
tcl_menu.cmds |
User-created commands on the Tcl menu |
|
|
ambit.state |
Stores state information, user preferences, window |
|
positions, and so on. |
|
|
Key Bindings and Mouse Operations
Table 2-3 lists the key sequences and mouse operations that can be used in the HDL/Tcl editors and ac_shell console; unless indicated, the key/mouse operation applies to both the editor and console. The Page_Up, Page_Down, Prior, and Next keys refer to the keys to the left of the numeric keypad; the PgUp and PgDn keys on the numeric keypad do not operate in the editors or ac_shell console.
Table 2-3 Key Sequences and Mouse Operations
Key/Mouse |
Description |
|
|
Left Arrow, Control-b |
Move back one character. |
Right Arrow, Control-f |
Move forward one character. |
Up Arrow, Control-p |
In editors: move insertion cursor up one line. In console: |
|
display previous history event. |
September 2000 |
31 |
Product Version 4.0 |
Ambit BuildGates Synthesis User Guide
Getting Started
Table 2-3 Key Sequences and Mouse Operations, continued
Key/Mouse |
Description |
|
|
Down Arrow, Control-n |
In editors: move insertion cursor down one line. In console, |
|
display next history event. |
Prior, Page_Up |
Scroll up one page. |
Next, Page_Down |
Scroll down one page. |
Home, Control-a |
Move insertion cursor to the beginning of the line. |
End, Control-e |
Move the insertion cursor to the end of the line |
Tab |
In console: command completion (on first word) or file |
|
completion (on any other word). In editors: standard tab |
|
function. |
Control-Tab |
In console: file completion. |
Shift-Tab |
In console: command completion. |
Control-i |
Insert tab. |
Return |
In console: issue a command. In editors: insert a carriage |
|
return (blank line). |
Delete |
Delete highlighted character(s) or delete character in front of |
|
the insertion cursor |
BackSpace, Control-h |
Delete highlighted character(s) or delete character to the left |
|
of the insertion cursor. |
Control-d |
Delete the character to the right of the insertion cursor. |
Control-k |
Delete from the insertion cursor to the end of the line. |
Control-l |
In console: clear console buffer, without losing current |
|
command line input. |
Control-m |
Toggle between the standard split-screen and the whole- |
|
screen display to minimize or maximize the window in which |
|
the cursor resides. |
Control-o |
In console: open a new line in the input. In editors: open a |
|
new file. |
Control-t |
Reverse the order of the characters to the right and to the left |
|
of the insertion cursor. |
Control-u |
In console: clear the command line. |
September 2000 |
32 |
Product Version 4.0 |
Ambit BuildGates Synthesis User Guide
Getting Started
Table 2-3 Key Sequences and Mouse Operations, continued
Key/Mouse |
Description |
|
|
Meta-d |
Delete the word to the right of the insertion cursor. |
Meta-BackSpace |
Delete the word to the left of the insertion cursor |
Click middle mouse button, |
Paste the highlighted text where the cursor is located. |
Insert |
|
Copy, Control-c |
In console: copy the highlighted text to the clipboard. In |
|
editors: Copy functions as in console. |
Cut, Control-x |
In console: copy the highlighted text to the clipboard and |
|
delete the text. In editors: Cut functions as in console and |
|
Control-x exits Ambit BuildGates synthesis software. |
Paste, Control-v |
In console: paste the contents of the clipboard onto the |
|
command line. In editors: Paste functions as in console. |
|
|
September 2000 |
33 |
Product Version 4.0 |
Ambit BuildGates Synthesis User Guide
Getting Started
September 2000 |
34 |
Product Version 4.0 |