Sei sulla pagina 1di 34

1.

COMPANY PROFILE

Netmax Technologies is an organization which is established in the field of Network Support,


Network training and Embedded systems. It provides support and training in the field of
networking solutions (CISCO, LINUX) and embedded systems (Micro controller based design,
Electronics system design).
In Education, it has strategic alliance with REDHAT Inc. It is also NOVELL EDUCATION
PARTNER with which it provides NOVELL and SUSE LINUX courses. Netmax technologies
also conduct courses in CADENCE based design tools. Netmax Technologies also provide
Technical Research & Development support and consultancy to some Electronics companies.
Their clients for R&D support in field of embedded systems are:
1) Recorders and Medicare ltd Chandigarh.
2) TELEBOX India ltd.
3) Lotus Machines Pvt. Ltd. Chandigarh.
4) Impearl Electronics Pvt. Ltd. Chandigarh.
5) KANTA Electrical Ltd. Mohali.
The partial list of our clients for network field is as below:
1) CEDTI, Mohali
2) Premier ISP, Chandigarh
3) Innovative Solutions, Chandigarh
4) Emmtel ISP, Chandigarh
5) NIPER, Mohali
6) Navik Technologies, Chandigarh
7) Software Technology Parks India, Mohali
8) Glide Internet Services
9) Rana Group
10) IDS
11) HFCL Infotel Ltd.
12) Targus technologies pvt ltd
13) STPI, Mohali
14) BBMB
15) The Tribune
16) Quark
17) Ind Swift

1
Support Area (Networking Solutions)
1) LINUX / UNIX networks
2) SUN networks
3) CISCO devices (Routers, Switches, Firewalls, Cache Engine, RAS etc.)
4) Bandwidth Manager software and hardware
5) Radio Links
6) Security Solutions
Design Services (Embedded Systems)
1) MCS 51
2) PIC
3) AVR &Arduino
4) ARM & Raspberry Pi (ARM-11)
5) ELECTRONIC SYSTEM DESIGN
Network Training
1) CISCO CCNA, CCNP, CCIE
2) RED HAT ENTERPRISE LINUX
3) SUN SOLARIS
4) WINDOWS Server 2000, 2003, 2008

Netmax Technologies is a leader in education services and developer of innovative embedded


solutions. To meet the demands of Post PC era Netmax provides complete solutions as well as
design-to-order services to satisfy its customers.

2
2.EMBEDDED SYSTEM
2.1 What is Embedded System?
Embedded system employs a combination of software & hardware to perform a specific
function. It is a part of a larger system which may not be a computer Works in a
reactive & time constrained environment.
Any electronic system that uses a CPU chip, but that is not a general-purpose
workstation, desktop or laptop computer is known as embedded system. Such systems
generally use microprocessors; microcontroller or they may use custom-designed chips
or both.
They are used in automobiles, planes, trains, space vehicles, machine tools, cameras,
consumer and office appliances, cellphones, PDAs and other handhelds as well as
robots and toys. The uses are endless, and billions of microprocessors are shipper every
year for a myriad of applications.
In embedded systems, the software is permanently set into a read-only memory such as
a ROM or flash memory chip, in contrast to a general-purpose computer that loads its
programs into RAM each time. Sometimes, single board and rack mounted general-
purpose computers are called "embedded computers".
2.2 Embedded System Applications:-
Consumer electronics, e.g., cameras, cell phones etc.
Consumer products, e.g. washers, microwave ovens etc.
Automobiles (anti-lock braking, engine control etc.)
Industrial process controller & defense applications.
Computer/Communication products, e.g. printers, FAX machines etc.
Medical Equipments.
ATMs
Aircrafts
2.3 DIFFERENCE BETWEEN MICROPROCESSORS AND
MICROCONTROLLERS:
A Microprocessor is a general purpose digital computer central processing unit
(C.P.U) popularly known as CPU on the chip. The Microprocessors contain no
RAM, no ROM, and no I/P O/P ports on the chip itself.

3
On the other hand a Microcontroller has a C.P.U (microprocessor) in addition to a
fixed amount of RAM, ROM, I/O ports and a timer all on a single chip.
In order to make a Microprocessor functional we must add RAM, ROM, I/O
Ports and timers externally to them ,i.e. any amount of external memory can be
added to it.
But in controllers there is a fixed amount of memory which makes them ideal for
many applications.
The Microprocessors have many operational codes(opcodes) for moving data
from external memory to the C.P.U
Whereas Microcontrollers may have one or two operational codes.
2.4 DISADVANTAGES OF MICROPROCESSORS OVER
MICROCONTROLLERS
System designed using Microprocessors are bulky.
They are expensive than Microcontrollers.
We need to add some external devices such as PPI chip, Memory, Timer/counter
chip, Interrupt controller chip,etc. to make it functional.
2.5 TYPES OF MICROCONTROLLER ARCHITECTURE:
There are two types of Microcontroller architecture designed for embedded system
development. These are:
1) RISC- Reduced instruction set computer.
2) CISC- Complex instruction set computer.
2.6 DIFFERENCE BETWEEN CISC AND RISC:
CISC stands for Complex Instruction Set Computer. Most PC's use CPU based on this
architecture. For instance Intel and AMD CPU's are based on CISC architectures.
Typically CISC chips have a large amount of different and complex instructions. In
common CISC chips are relatively slow (compared to RISC chips)per instruction, but
use little (less than RISC) instructions. MCS-51 family microcontrollers based on CISC
architecture .RICS stands for Reduced Instruction Set Computer. The philosophy behind
it is that almost no one uses complex assembly language instructions as used by CISC
,and people mostly use compilers which never use complex instructions. Therefore
fewer, simpler and faster instructions would be better, than the large, complex and

4
slower CISC instructions. However, more instructions are needed to accomplish a task.
Atmels AVR microcontroller based on RISC architecture.
3. ARDUINO (AVR)

What is arduino technology?


Arduino is an open-source electronics prototyping platform based on flexible, easy-to-
use hardware and software. It's intended for artists, designers, hobbyists, and anyone
interested in creating interactive objects or environments .Arduino can sense the
environment by receiving input from a variety of sensors and can affect its surroundings
by controlling lights, motors, and other actuators. The microcontroller on the board is
programmed using the Arduino programming language (based on Wiring) and the
Arduino development environment (based on Processing). Arduino projects can be
stand-alone or they can communicate with software running on a computer (e.g. Flash,
Processing, MaxMSP).

Figure 1: Arduino Uno Board

3.1 Some of the Advantages/Features of Arduino:


High speed RISC AVR CPU.

5
Compact size board.
Easily programmable and applicable.
Directly programmable through USB.
Support more speed than 8051, PIC and some AVR controllers.
Applications such as MP3 player, Polar Plotter, Automatic Head Tracking using
IR Sensors.
3.2 Getting Starting with Arduino Technology:
Arduino Technology is based upon Advanced Virtual RISC (Microcontroller) simply
AVR, in arduinouno, ATMEGA328 is used. ATMEGA328 is a 28 pin (PDIP) package
microcontroller with various specifications and features as explained below:
3.3 Features:
High Performance, Low Power AVR8-Bit Microcontroller
Advanced RISC Architecture
131 Powerful Instructions Most Single Clock Cycle Execution
32 x 8 General Purpose Working Registers
Fully Static Operation
Up to 20 MIPS Throughput at 20 MHz
On-chip 2-cycle Multiplier
High Endurance Non-volatile Memory Segments
4/8/16/32K Bytes of In-System Self-Programmable Flash program memory
256/512/512/1K Bytes EEPROM
512/1K/1K/2K Bytes Internal SRAM
Write/Erase Cycles: 10,000 Flash/100,000 EEPROM
Optional Boot Code Section with Independent Lock Bits
In-System Programming by On-chip Boot Program
True Read-While-Write Operation
Programming Lock for Software Security
Peripheral Features
Two 8-bit Timer/Counters with Separate Prescaler and Compare Mode
One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and
CaptureMode
Real Time Counter with Separate Oscillator

6
Six PWM Channels
8-channel 10-bit ADC in TQFP and QFN/MLF package Temperature
Measurement
6-channel 10-bit ADC in PDIP Package Temperature Measurement
Programmable Serial USART
Master/Slave SPI Serial Interface
Byte-oriented 2-wire Serial Interface (Philips I2C compatible)
Programmable Watchdog Timer with Separate On-chip Oscillator
On-chip Analog Comparator
Interrupt and Wake-up on Pin Change
Special Microcontroller Features
Power-on Reset and Programmable Brown-out Detection
Internal Calibrated Oscillator
External and Internal Interrupt Sources
Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down,
Standby,and Extended Standby
3.4 Pin Diagram:
Core Architecture:

Figure 2: Pin Diagram of ATMega328p


7
3.5 Programming in Arduino:
In arduino programming is done with sketchbook provided by arduino itself. This
sketchbook is the IDE + Compiler + Burner Software, a combined package for
programming an arduino board.

8
Menu

Smart

Buttons

Code

Window

Status

Figure 3: Arduino Sketchbook


Port Status

4. Programming and Interfacing


4.1 Advantages of C over Assemble Language programming:
Knowledge of the processor instruction set is not required.
Details like register allocation and addressing of memory and data is managed by
the compiler.
Programs get a formal structure and can be divided into separate functions.
Programming and program test time is drastically reduced, this increases
efficiency.
Keywords and operational functions can be used that come closer to how humans
think.

9
The supplied and supported C libraries contain many standard routines such as
numeric conversions.
Reusable code: Existing program parts can be more easily included into new
programs, because of the comfortable modular program construction.
The C language based on the ANSI standard is very portable. Existing programs
can be quickly adapted to other processors as needed.
1: LED interfacing and its blinking (PORT Programming).

The interfacing of LEDs shown in the figure above. It is given VCC through resistors
of 330E, also a darlington pair IC is also used i.e. ULN 2803 which shift the DC level of
voltage coming from the port PIC microcontroller.
Now to glow the desired LED, proper hexadecimal code for its binary is programmed in
Arduino. Eg.: To glow alternative LEDs, the binary given code will be 10101010 and
its corresponding hexadecimal code will be 0xAA. So 0xAA is fed to controller with
coding.
CODE FOR BLINKING:
int led=0; //LED connected to pin 0;
void setup()
{

10
pinMode(led, OUTPUT); //Make LED Pin 0 OUTPUT
}
void loop()
{
digitalWrite(led, HIGH); //Write Logic 1 (HIGH) to Pin 0
delay(500); //Delay of 500 miliseconds
digitalWrite(led, LOW); //Write Logic 0 (LOW) to Pin 0
delay(500);
}
CODE FOR RUNNING LEDs:
int led[] = {0,1,2,3,4,5,6,7};
intledup = 7;
intleddn = 0;
int n = 20;
void setup()
{
for(inti=0; i<=ledup; i++)
{
pinMode(led[i], OUTPUT);
}
}
void loop()
{
while(n!=0)
{
for(inti=0; i<=ledup; i++)
{
digitalWrite(led[i], HIGH);
delay(50);
digitalWrite(led[i], LOW);
delay(5);
}
for(inti=7; i>=leddn; i--)
11
{
digitalWrite(led[i], HIGH);
delay(50);
digitalWrite(led[i], LOW);
delay(5);
}
n--;
}
n=0;
}
Thus LED blinking practical is done successfully
2: SEVEN SEGMENT DISPLAY AND INTERFACING
A Seven segment display consists of seven LEDs arranged in a pattern of digit 8.

We use BCD to seven segment decoder which saves a pin of microcontroller from seven
(one for each LED) to four. So we have to give BCD code for desired digit to be
displayed on it. Now also we can display more than one seven segment display
simultaneously but it will take a number of pins of controller, so we use two pins from
controller to control the display of seven segment display one by one from port such that
it appears to be displaying simultaneously. This is done by providing a very small delay
such that our eyes cant even detect the change over from one display to another.

12
Coding for Display:
// include the library code:
#include <SevenSegment.h>
//set counter to zero initially
int count = 0;
void setup()
{
//set up the 7 segment data and switching pins
sevenSeg_Init(0,1,2,3,4,5,6,7);
}
void loop()
{
//Increment counting
count++;
/*display count n 7 segment with 1 second delay
function uses 1 as 100 milli second delay
sosegment_Disp(count, 5) means = 500 ms delay
andsegment_Disp(count, 10) means = 1000 ms delay
*/
segment_Disp(count, 10);
}

13
3: INTERFACING AND CONTROLLING STEPPER MOTOR WITH
ARDUINO.
Stepper motor is that which rotates in steps like
all motors it is also based on
electromagnetic induction i.e. electric field
produces a magnetic field whose variation
causes a torque which rotates the motor.
A Stepper motor is brushless, synchronous
electric motor that can divide a full rotation
into large number of steps. The motors
position can be controlled precisely, without
any feedback mechanism. Stepper motors
are similar to switched reluctance motors,
which are very large stepping motors with a
reduced pole count and generally are closed
loop commutated.
Fundamentals of Operation: Stepper motors operate much differently from normal DC
motors, which rotate when voltage is applied to their terminals. Stepper motors, on the
other hand, effectively have multiple toothed electromagnets (a.k.a. phases) arranged
around a central gear-shaped piece of iron. The electromagnets are energized by an
external control circuit, such as microcontroller. To make the motor shaft turn, first 1
electromagnet is given power, which makes the gears teeth magnetically attracted to the
electromagnets teeth.

When the gears teeth are thus aligned to the first electromagnet, they are slightly offset
from the next electromagnet. So when the next electromagnet is turned on and the first
is turned off, the gear rotates slightly to align with the next one, and from the process is
repeated. Each of those slight rotations is called a step. In that way, the motor can be

14
turned a precise angle. Now to run the motor we have to feed the binary code to turn on
the current of that winding.
For pair 1st 0b00000011 0x03
For pair 2nd 0b00000110 0x06
For pair 3rd 0b00001100 0x0c
For pair 4th 0b00011000 0x09
Arduino code:
int M[] = {0,1,2,3};
void setup()
{
for(inti=0;i<4; i++)
{
pinMode(M[i], OUTPUT);
}
}
void loop()
{
digitalWrite(M[0], HIGH);
digitalWrite(M[1], LOW);
digitalWrite(M[2], LOW);
digitalWrite(M[3], LOW);
delay(20);
digitalWrite(M[0], LOW);
digitalWrite(M[1], HIGH);
digitalWrite(M[2], LOW);
digitalWrite(M[3], LOW);
delay(20);
digitalWrite(M[0], LOW);
digitalWrite(M[1], LOW);
digitalWrite(M[2], HIGH);
digitalWrite(M[3], LOW);
delay(20);
digitalWrite(M[0], LOW);
15
digitalWrite(M[1], LOW);
digitalWrite(M[2], LOW);
digitalWrite(M[3], HIGH);
delay(20);
}
The above code will rotate the motor in forward direction.
The stepper motor has been studied successfully.
4: LCD INETRFACING WITH ARDUINO

LCD Stands for Liquid Crystalline Display. To


run it via PIC16F73, we need command
signals and supply voltage. The signal that
is required to display character is produced by
an IC which is already embedded on it which
is HD44780.

PIN Description of the LCD is provided below in the table


Pin No. Name Function
1 VSS Ground
2 VDD +ve Supply
3 VEE Set Contrast
4 RS Register Select
5 R/W Read/Write Mode
6 E Enable
7 14 D0 D7 Data Bits 0 - 7

Arduino Code:
#include <LiquidCrystal.h>

LiquidCrystallcd(7,6,5,4,3,2);
void setup()
{
lcd.begin(16,2);
}
void loop()
{
Lcd.print(Hello);
16
}
The above code will display Hello on LCD.
Arduino Code for Scrolling:
#include <LiquidCrystal.h>
LiquidCrystallcd(7,6,5,4,3,2);
void setup()
{
lcd.begin(16,2);
}
void loop()
{
lcd.setCursor(0,0);
lcd.print("Hello");
for(inti=0; i<16; i++)
{
lcd.scrollDisplayRight();
delay(250);
}
for(inti=0; i<32; i++)
{
lcd.scrollDisplayLeft();
delay(250);
}
for(inti=0; i<16; i++)
{
lcd.scrollDisplayRight();
delay(250);
}
}
It will shift the character to right& left with a delay of 1 second between it. Thus LCD
Display studied successfully.

17
OrCAD

5. Introduction to Capture CIS

This document introduces you to a suite of computer programs that are used to design
electronic circuits. Cadence OrCAD PCB Designer with PSpice comprises three main
applications.

18
Capture is used to drawn a circuit on the screen, known formally as schematic capture. It
offers great flexibility compared with a traditional pencil and paper drawing, as design changes
can be incorporated and errors corrected quickly and easily. (On the other hand, it is much
faster to develop the outline of a circuit using pencil and paper.)

Figure 1: Dialogue box to choose product when Capture starts. Select OrCAD
Unison Ultra

5.1 Starting OrCAD


Select Capture with Start > Programs > OrCAD16.0 > OrCAD Capture (the version number may be
different if the software has been updated). There will be a short delay while the software is loaded and
the licence server is accessed. You may be offered a choice of product as in figure 1; select OrCAD
Unison Ultra. Wait until the red splash screen disappears. The screen will then show the OrCAD
Capture main window with a menu bar and a dimmed tool bar. A sub-window shows the Session Log
unless it is minimised, in which case open it.

OrCAD creates a large number of files as it runs, which are organised into a project. Always create a
separate directory (folder) to hold the files for each project. These files should be stored in your
workspace on the Universitys central system, accessed via the network as the H drive. Do not store files
in any other place on the network or on a computer they will be erased.

Always create a new folder whenever you start work on a new project with OrCAD. Terrible things go
wrong if you attempt to store more than one project in the same directory!

Save your work frequently and take regular backups of important circuits. Your first action must
always be to open a project, either a new one when you are starting a design or an existing one if you
are returning to a previous design. Follow these steps to create a new project.

19
Figure 2: Dialogue boxes to create a directory for a new project

1. Select File > New > Project. . . from the menu bar. This brings up the New Project dialogue box

2. Select the Analog or Mixed A/D button. This is essential or you will not be able to use PSpice.
(There is no easy remedy if you get this wrong, other than copying your circuit into a new
project.)

3. Create a directory for the new project if you have not done this already. See figure 2.

Click on the Browse. . . key, which brings up the Select Directory box.
Select drive H and navigate to a suitable location.
Click the Create Dir. . . button, which brings up the Create Directory box. Enter a suitable
name for a subdirectory, such as potdiv and click OK.
Double-click on this new directory to select it. In principle the path and new directory now
show in the Location box but in practice the box is too short.

4. Enter a name for the project, such as potdiv

5. Click on OK in the New Project dialogue box to create the project.

6. Select the Create a blank project button in the small dialogue box that appears, shown in figure
3 on the following page, and click OK. This should open a Schematics window as shown in
figure 4.

20
Figure 3: Final dialogue box to create a PSPice project. Select Create a blank project.
5.2 Capture windows
There are three windows in the screenshot of capture shown in figure 4 on the following
page.
Project manager usually in the top left corner of the screen. Here is what it contains.

Its title is that of the project, except that its far too long to display because it shows
the whole path.

Under the title is the type of project. Remember that this should be Analog or Mixed
A/D if you want to use PSpice.

The body of the window shows the various files that are used by your project,
although you dont have to bother with most of them. I have expanded the tree
for ./potdiv.dsn, which is the current design, by clicking on the + signs. Each design
can contain several schematic drawings, each of which can comprise several pages,
but usually there is only one of each. If you close the schematic window by mistake,
expand the tree and double-click on PAGE1.

Schematic where you draw your circuit. The toolbar down the right-hand edge of the
screen appears when this window is active.
Session Log often hidden behind the other windows and can be minimized out of the
way. Most of the material written to this window can be ignored but you should read it
if an error occurs because this is where you find the explanation.
5.3 Capture menus and toolbars
There is the usual menu bar along the top, which provides all the commands. Please note the
Help menu on the right. Go here first if you need assistance. It provides the usual index and
search. The manuals are also installed as pdf files. Some commands are used so often that there
are buttons and keyboard shortcuts as well. Many of the shortcuts use unmodified letters, such
as P for Place Part, and do not need the Ctrl or Alt key. Here is the function of the button bars,
shown in figure 5 on the next page.

1. The top bar is for Capture commands and falls into several groups.

First are the usual buttons for dealing with files and editing, as in many Windows
applications.

21
Figure 4: Screen of Capture for a new project before the circuit is drawn. The Schematic
window is active and the toolbar on the right is therefore visible.
The dropdown list in the middle contains recently used components so that you can select
them quickly when drawing your circuit. We havent drawn anything yet so the list is empty.
The next set of four buttons are for zooming in and out so that the circuit is drawn on the
screen at a convenient scale.
We wont use the next set in this tutorial; they are more useful for larger circuits and laying
out PCBs.
The next button is important because it controls whether components are placed on a grid or
can be moved freely. Always use the grid (which is the default) or you will

22
have terrible trouble joining the wires to them.

There is a button to select the Project Manager, which can also be activated from the
Window menu.

The final button is for Help.

2. The second toolbar along the top is for PSpice commands. You are in trouble if this
is missing! If this happens, first check the type of project, which must be Analog or
Mixed A/D. Ill explain the functions of the buttons later

3. . The third toolbar, down the right-hand side of the screen, is for drawing circuits
and is shown only when a Schematic window is active. Ive resized it and labelled
the buttons in figure 6. Lets put this into action and simulate a simple circuit: a
potential divider

5.4 Capture and simulation of a potential divider

Well first draw and simulate a very simple circuit: a potential divider supplied by a battery. Of
course you can solve this circuit mentally in a second or two but the aim is to gain familiarity
with the software. First, place the components.

5.5 Place the components

Make the Schematic window active. We next need to find the components: two resistors to
form the potential divider, a DC voltage source (battery) and a ground. Their symbols are
shown in figure 7 on the next page. Choose Place > Part. . . from the menu bar, click the Place

23
Part button on the right-hand toolbar or type P. This brings up the dialogue box with a list of
parts shown in figure 8 on the following page, from which you choose the desired component

Figure 7: Components for potential divider before connecting them

Capture includes a database with a vast number of components, which are organised into
libraries for convenience. We must first select the desired libraries, shown in the bottom left
list.

If there are libraries included already, select them all and click the Remove Library button.
Capture will warn you that it cannot remove the Design Cache dismiss the box.

Click Add Library. . . , which brings up the dialogue box shown in figure 9. Always check
that the libraries are in the pspice folder and navigate to it if necessary. Select analog.olb and
click OK. This library contains basic analogue components such as resistors and capacitors.

Repeat this for the source.olb library. This contains sources such as batteries. Almost
every analogue circuit needs these two libraries.

24
Figure 10: Dialogue box for adding a ground connection

A circuit must always have a ground (earth) connection called 0 (zero) if you wish to simulate it
in PSpice. You will get puzzling error messages if you forget this, which is very easy! The
reason is that all voltages in PSpice are measured from a particular node, numbered zero, and
this must be defined as ground. Your circuit should now look something like figure 7 although
the components need not be in exactly the same positions.

5.6 Set the values of the components

Capture gives each component a default value when it is placed but this must usually be
changed. All resistors are initially 1 k, for instance. The unit is not shown ohms are assumed
by default so the display is just 1k. Double-click on a value to change it. This brings up the
dialogue box shown in figure 11 on the next page for the battery (VDC). If you see something
different, you have probably double-clicked in the wrong place. Close the box and try again.
Change the values of the resistances and voltage to those shown in figure 12.

25
5.7 Wire the components

The final step is to connect the components using the wiring tool from the toolbar (or Place >
Wire or typing W).

Place the cursor where you wish to start connecting the circuit and left-click to start a
wire.

Move parallel to the grid, horizontally or vertically.

Left-click again to create a corner if necessary.

Left-click again to end the wire, usually on another component or an existing


wire.

interconnecting wires can be repeated until the wiring is complete. Exit the
wire drawing mode as usual with Esc or right-clicking and choosing End
Mode. Unwanted wires can be highlighted and deleted.

Your circuit should now resemble figure 12 on the next page

Figure 11: Dialogue box for changing the value of a component, VDC here.

26
Figure 12: Final circuit of potential divider, fully connected, with the correct values

6.Orcad Layout Plus

Layout Plus is a circuit board layout tool that accepts a layout-compatible circuit netlist (ex.
from Capture CIS) and generates an output layout files that suitable for PCB fabrication.
Simple steps in producing PCB layout involve importing netlist, placing components, routing
and generating output files and reports. For more information about Layout Plus, please refer to
Layout Help (From Layout Plus menu, go to Help Layout Help)

6.1 Opening Layout Plus and Creating New Design

To open Layout Plus, from Windows Start Menu, select Program Cadence PSD 15.0
Layout Plus. Go to File New to create a new design. You will see the dialog as shown in
figure 1. Enter the default technology template located on
C:\Cadence\PSD_15.0\tools\layout_plus\data\_default.tch in Input Layout TCH textbox.
Enter the netlist (generated from Capture CIS) of your design in Input MNL textbox. And
then enter the location and file name that you want the design file to be saved in Output
Layout textbox. (You might want to save it on your network drive if youre running Capture
CIS in campuss laboratory). Layout Plus will give the output layout file name as same as the
input netlist file by default. If you change the output file, do not change the output file
extension (.max). Then click Apply ECO. Layout Plus will display the dialog shown in figure 2
after you apply ECO. In case of footprint linking error (missing footprints on some
components), you will need to give the footprints to all missing components to complete
AutoECO. (As explained in Capture CIS tutorial, it is better to specify footprints to all parts
during schematic creation.) Hit Accept this ECO to import the netlist into Layout Plus.
Figure3 shows the Layout Plus window after importing a netlist.

27
Figure 1: New Design Dialog

28
Figure 3: Layout Plus Window after importing netlist

6.2 Setting Design Environment

To set the design environment (display unit, grids, rotation, snap) go to Options System
Settings. Modify the setting that suitable for your design. Figure 4 shows the system setting
dialog. Next, you will need to define the layer stack for your design, go to View Database
Spreadsheets Layers. From here, specify layer type and mirror layer (usually the most outer
layers, TOP and BOTTOM, are the mirror layers of each other). An example of layer stack for
4-layer board design (TOP, BOTTOM, POWER and GND) with POWER and GND layers as
power and ground plans and TOP and BOTTOM as routing layers is shown in figure 5.

After modify layer stack, you will need to specify routing spacing (Options Global Spacing),
you can modify track-to-track, track-to-via, track-to-pad, via-to-via, via-to-pad, and pad-to-pad
spacing according to the capabilities of preferred PCB manufacturer. (for example,
www.pcbexpress.com ). Figure 6 shows all routing spacing set to 6 mil. There are many other

29
parameters that you can set and should be carefully checked with the recommended parameters
from PCB manufacturer (drill sizes, padstacks, minimum track width, etc.) In this tutorial
we will use all default parameter values. If you plan to fabricate your boards, please consult the
PCB manufacturer

6.3 Creating Board Outline

Board Outline is the outline for all components and net routings of your PCB. To create board
outline, click on Obstacle Tool on the toolbar or go to Tool Obstacle Select Tool. Then
double click on one corner point you want to make an outline, the Edit Obstacle dialog will
popup, set obstacle type to Board Outline and obstacle layer to Global Layer as shown in
figure 7.

30
Click OK and then draw your board outline as shown in figure 8. You will need to click on four
corners of the obstacle, and then press ESC or left click and select End Command.

6.4 Placing components

You can either manually place components on the board or use auto placement feature of
Layout Plus. To manually place components, click on Component Tool on the toolbar or go to
Tool Component Select Tool. Place all components inside the board outline

. For auto placement, first, you will need to preplace some of the components that you want
them to be placed on specific locations (ex. power connectors and headers). Move the
component to the desired location and then right click and select Lock or press L. Figure 9
shows the preplaced and locked header before auto placement.

31
Figure 9: Preplace components

After preplace components, go to Auto Place Board. Layout plus will auto place
components within your board outline. Then you can adjust the board outline to a proper size.
Figure 10 shows the board after autoplaced.

32
6.5 Routing the board

This section will show simple steps involved in autorouting. For manual routing, please refer to
Layout Plus Help. Before start routing, you need to assign plane layers to power and ground net
and disable routing for power and ground nets. First, go to View Database Spreadsheets
Nets. The nets spreadsheet dialog will show up, double click on power net (VCC), uncheck
Routing Enabled and then click on Net Layers button. From Layers Enabled for Routing
dialog, select the layer that you set to be used as a power plane (ex. POWER) in Plane Layers
box as shown in figure 11. Repeat the same step for ground net (GND) except assign the other
layer for ground plane (ex. GND). After disable routing on power and ground nets and assign
appropriate layers to them, make sure that all other nets have a routing enabled attribute.

Next step is to perform an autoroute, go to Auto Autoroute Board. The result of this step
is shown in figure 12.

Figure 12: Board after autorouting

33
6.6 Design Rules Check

To run DRC, go to Auto Design Rules Check. You can select options you want to be
checked, DRC command will use system environment parameters that you specified (or default
values if you did not modify) as the design rules.

6.7 Print PCB layout

Go to File Print/Plot, the dialog as shown in figure 13 will show up. You can check the
option Print/Plot Current View if you want to print only the layer(s) that are being displayed.

REFERENCES

1. http://ece-research.unm.edu/jimp/ES
2. http://userweb.eng.gla.ac.uk/john.davies/orcad
3. https://en.wikipedia.org/wiki/OrCAD

34

Potrebbero piacerti anche