đ¯ Mistic VLSI Layout Tool
Overview
Mistic is a powerful VLSI (Very Large Scale Integration) layout tool designed for creating and analyzing digital circuit layouts. It provides an intuitive interface for designing CMOS circuits with multiple layers including polysilicon, diffusion regions, metal interconnects, and more.
đ¨ Available Layers
Polysilicon
Gate material for transistors
N+ Diffusion
NMOS transistor regions
P+ Diffusion
PMOS transistor regions
Contact/Via
Layer connections
Metal
Interconnect wiring
VCC/GND
Power connections
đ Contact Placement Rules
âšī¸ Important Rule: Only one contact type can exist in a grid cell at any time. When you place a new contact (Probe, VCC, GND, or Via), any existing contact in that cell will be automatically cleared.
The following contact types are mutually exclusive:
- Probe - Test points with customizable labels (A, B, Q, etc.)
- VCC - Power supply connection (+)
- GND - Ground connection (-)
- Via/Contact - Metal connection between layers
đĄ Tip: This automatic clearing ensures clean circuit layouts and prevents conflicts between different contact types. You can always place a different contact type in the same location by simply clicking on it.
â¨ī¸ Command Line Interface
The tool features a powerful command-line interface at the bottom of the screen for precise control and automation.
Basic Commands
clear - Clear the entire canvas
redraw - Redraw all tiles
help - Show available commands
Drawing Commands
draw <layer> at (x,y) - Single point placement
draw <layer> from (x,y) to (x,y) - Rectangle drawing
Examples
draw metal at (5,5)
- Place metal at coordinate (5,5)
draw polysilicon from (3,3) to (6,3)
- Draw polysilicon line from (3,3) to (6,3)
draw via at (5,1)
- Place a via at (5,1)
draw VCC at (1,1)
- Place VCC at (1,1)
draw probe at (10,10)
- Place a probe at (10,10) (will prompt for label)
draw GND at (15,15)
- Place ground at (15,15)
Layer Aliases
n+ = N+ diffusion
p+ = P+ diffusion
via = contact
đąī¸ Mouse Controls
- Click and drag to draw continuous lines
- Single click to place individual tiles
- Right-click to erase tiles
- Scroll wheel to zoom in/out
đ§ Special Features
Assignment System
For authenticated users, the tool includes an assignment system with automatic grading. Complete assignments to test your circuit designs and receive grades.
NOT Gate Button
Click the Not button to automatically draw a complete NOT gate circuit with all necessary components.
Read Circuit
Use the Read Circuit button to generate draw commands that can replicate your current circuit design. This feature also provides speech synthesis for accessibility.
Layer Visibility
Click the Layers button to toggle layer visibility and control which layers are displayed.
đĄ Tips & Best Practices
đĄ Tip: Use the command line for precise placement and to create repeatable designs. The commands you type can be saved and reused later.
đĄ Tip: Start with power connections (VCC/GND) and work your way down to the signal layers for better organization.
đĄ Tip: Use the "Read Circuit" feature to verify your design and get the exact commands needed to recreate it.
đĄ Tip: When placing probes, use meaningful labels like "A" for input and "Q" for output to make circuit analysis easier.
â ī¸ Important Notes
â ī¸ Warning: Contact/via layers only support single-point placement with the "at" command. They cannot be drawn as rectangles.
â ī¸ Warning: The grid size is currently 30x30. Coordinates outside this range will generate an error.
â ī¸ Warning: Placing a new contact will automatically remove any existing contact in the same grid cell. This is by design to maintain circuit integrity.
đ Troubleshooting
- Command not recognized: Check spelling and use the
help
command
- Invalid coordinates: Ensure coordinates are within the grid bounds (0 to 29)
- Layer not found: Use the exact layer name or accepted alias
- Drawing issues: Try using the
redraw
command to refresh the display
- Contact disappeared: Check if you placed another contact type in the same location
đ Advanced Usage
For complex circuits, consider:
- Using the command line to create scripts of draw commands
- Breaking complex shapes into smaller, manageable rectangles
- Using the layer visibility controls to see how the layers are stacked and connected
- Planning contact placement to avoid conflicts between different contact types
đ Assignment Features
For authenticated users, the tool includes:
- Automatic Grading: Test your circuits against predefined criteria
- LMS Integration: Grades are automatically submitted to your Learning Management System
- Step-by-Step Feedback: Receive detailed feedback on each part of your assignment
- Circuit Validation: Verify that your design meets the assignment requirements
Learning Resources
Happy circuit designing! đ
You can close this tab when you're done reading the documentation.
About This Tool
This MISTIC VLSI tool is part of the Computer Architecture for Everybody course,
available at www.ca4e.com