Pyxis-IC Station Productivity Userware
This is a collection of (hopefully) usefull productivity enhancements
of Mentor Graphics Pyxis tools.
It is developed for DMGR based Flow and on version 2008.2, v9.0 and v10.x of Pyxis IC-Station.
It would be nice to get notice about feedback. Please send a short notice to cparg(at)gmx_de
Source
Browse the latest AMPLE Sources here.
Getting the Source
Checkout the sources using git:
git clone git://git.code.sf.net/p/userware/trunk ProductivityTB
Content
Common functionality
- Improved Mousewheel Zoom (obsolete since v10.0)
- load_ample() search AMPLE_PATH for the given file and load it.
Pyxis IC-Station Layout / ic
- IC Station 3D Viewer - Flash Demo. (Needs Flash plugin.)
Click the "next" button in the lower right corner.
The capturing created some artefacts that do not appear in the real viewer.
- Manual
glview_ic.pdf
- Use the Projects download page
to find a compiled package for several Pyxis Versions and OS.
The Version number gives the Pyxis version the viewer was linked to.
- Quick Install instructions
- Just unpack the tar in $MGC_HOME.
- edit gen_layerstack() function in the AMPLE-File in $MGC_HOME/pkgs/glview_ic/userware/default/glview_ic.ample
- Invoke Pyxis Layout
- reserve process_ascii
- invokde gen_layerstack() from the comandline
- Hotkey 3 to invoke the viewer
- For details refer the Manual.
-
Align Function that alignes devices/cell by a given gap of a given layer in the devices/cell
- Helper functions to ease Interdigitization of MOS devices
- function that saves/restores all kind of operating states of Pyxis
(select filter, slectable layers etc.)
- Alt+Arrow Keys will move selected objects by one grid distance
See ic/user_ic.ample
- Push/Pull objects one hierarchy down/Up the layout hierarchy
See ic/user_ic.ample: push() & pull()
- ic/process_ascii.ample
This is a function that dumps the current process to an ASCII file
Improved the output by "pretty printing" of the vectors.
- additional Pyxis Hotkeys
classic Hotkeys are loaded plus ic/ic_hotkeys.ample
Pyxis Project Manager / dmgr_ic
- added Spice to Schematic translator gen_schematic.ample
Note: This piece is currently under development.
See the sourcefile about how to use it and its limitations.
- dmgr_ic/gen_types
Create some additional Types for dmgr_ic
- added several Type registrations in the types subdirectory.
Set environment variable MGC_CUSTOM_TYPE_DIR to this directory
to make it known to dmgr_ic.
Pyxis Schematic / da_ic
- da_ic/symbol.ample
Function to update an existing Symbol according to the Ports in the
corresponding Schematics
(not loaded, nor tested yet in 2008.2, developed on IC-Studio Mode DA-IC, 09/2007)
- Check&Save in the Schematic Editor will now check for usage of
Implicite Pins. If Impl.Pins were used and the connected net
is missing, little wires in the lower left corner of the sheet are
automatically added now.
See da_ic/schematic.ample and da_ic/fb_schematic.ample
also split() function in base_ic/ui_base.ample is used.
- Userdefined Rules in Sheet Check that checks for invisibe
NET properties and issues Errors when found.
Such typically appear in EDIF converted Schematics and have bad
side effect when wires or Instances are copied. The copied
vertecies might own such a invisible property and create a logical
short between the original and the copied instance.
Since the NET properites are invisble the user get actually no visual
feedback of this short.
-
Note: Obsoleted with the build in Function in Pyxis v10.1.
Look at Setup > Prefernces > Checks.
Set Interface Chack to "prompt"
Update Symbol Function. In Miscelanous Menu there is a new blue Entry
"Update Symbol". It checks for a existance of a Smybol in the same
component as the current sheet and adopts its pins in case it does not
correspond to the schematic port instances.
Known issues:
- the pin property of added symbol pins is vertically not centered
- After adding the pins the symbol editor does not have the input focus.
- Does not work for other Port Symbols than the MGC generic type
- Requires that Port-Symbols are used in the schematic
- Does not understand bus-ports. For instance if a port A[0:7] already exists on
symbol and a single port A[0] is found in the schematic it will add a port A[0] anyway.
- Symbol & Schematic Editor
- Hotkey j - change justification of selected properties
- Hotkey h - change height of selected properties
- Hoteky v - chnages visibility of a selected Property
- DxDesigner & System Vision Symbol import function
here is a direct link to the self-contained AMPLE source of the import function.
- Spice Import
in da_ic parse_spice() function will read a Spice file and create
schematics.
Note: The Implementation is yet pretty limited and does a lot of
assumptions. It might be quite helpfull for advanced
users in many cases, never the less.
Please see the AMPLE sourcefile in da_ic/gen_schematic.ample for details.
However, be warned: DON'T RELY ON ITS CORRECT FUNCTION !!
Coding Guidelines
Ample
- make use of QUICK_HELP in the function header.
Describe the capability of the in one sentence.
- In the Comment explain the Function arguments
- Describe what the function returns
- Each function should have one single exit point.
- Prevent using global variables.
- A function should not be longer than one screen size.
ICgraph
- Rather than using makro-style filter seting and selections,
one should better use $get_object_info() use handles and
Group-Filter functions.
This is faster in execution and less context sensitive,
thus less sideeffects.
Browse the AMPLE sources in the
GIT Repository
AMPLE Syntax Highlighting
The KDE Editors Kate and KWrite can make use of AMPLE syntax highlighting.
The pattern know almost all documented AMPLE Functions.
KDE 4.4.2 Kwrite: Go to Settings / Configure Editor / Open&Save / Mode & Filetypes / Download Highlighting Files / AMPLE
The download is actually a SVN checkout. kio-svn component might be needed.
Eldo
Here is a little Python Example how to speak with the Eldo-Interactive Mode.
It requires the pexpect Python Module.
last Updated $Date:So 28. Jul 20:38:52 CEST 2013$ by $User:cparg$