Neurocam 1.0 USER MANUAL
Contents
Chapter 1 Problem and solution with Neurocam
Chapter 2 The visual data input environment
Chapter 3 The automatic pattern processing environment
Chapter 4 The micromorphing technology
Chapter 5 Customer defaults and formats
Chapter 6 Neural network parameters setting
Chapter 7 The files transfer environment
Chapter 8 Statistical data generation
Chapter 9 Installation guide
Chapter 1 Problem and solution with Neurocam
1.1 Drilling misregistration in multilayer pcb
1.2 How to apply Neurocam for low cost problem solving
1.3 System requirements
1.4 Neurocam hardware
Chapter 2 The visual data input environment
2.1 Insertion of data in offset format
2.2 Insertion of visual data with Virtual Reality Measure System
2.3 Putting only the corners data
2.4 How to map the board on the menu panel
2.5 The RUN and RUNVR commands
2.6 Showing old files and new files
2.7 Special commands and settings
Chapter 3 The automatic pattern processing environment
3.1 The basic theory
3.2 The test coupon shape and behavior
3.3 The two edges monitoring system
3.4 Insert test coupons in your panels
3.5 Lay-up informations setting
3.6 Automatic detection of data from ml-pcb
3.7 Running the micromorphing algorithm
Chapter 4 The micromorphing technology
4.1 Vantages of micromorphing algorithm
4.2 The steps after drilling
4.3 The future
Chapter 5 Customer defaults and formats
5.1 Drilling and Gerber format
5.2 Mirroring
5.3 Set test coupon alarm edges
5.4 Names of layers
5.5 Test coupons drill and Gerber files generation
Chapter 6 Neural network parameters setting
6.1 Parameters setting
Chapter 7 The files transfer environment
7.1 Network connection
7.2 Parameter setting
7.3 Files transfer
Chapter 8 Statistical data generation
8.1 Numerical data on laminates distortion
8.2 Numerical data on drill coordinates corrections
8.3 Graphical data on laminates distortion
8.4 Graphical data on drill coordinates corrections
8.5 Graphical spread on laminates distortion
8.6 Graphical spread on drill coordinates corrections
8.7 Test coupon tuning
8.8 Project Process Fitness test(PPF)
8.9 Multilayers test
Chapter 9 Installation guide
9.1 Software installation
9.2 Hardware installation
1.1 Drilling misregistration in multilayer pcb
It' is a very hard problem caused by the shrinkage/expansion of
FR4 laminates during the entire process of ml-pcbs manufactoring.
While the coordinates of drilling are nominal, the coordinates of
the related pads contain a position error and the result is a
mismatch hole/pad or hole/flash that can be critical for behavior
and affidability of pcb.
Actual solutions are the Multiline registration system that can
distribute the error in X and Y (with the resut of divide it x2)
and the X-Ray machines that looking some patterns inside the board
can give an offset/rotation of registering holes in order to optimize
the position of drilling image.
In any case the X-Ray machine can obtain a result similar to
Multiline registration system if the board has shrinkage/expansion:
if you apply an offset/rotation to drill image, you do not
effectively put any hole centered in the related pad but only you
optimize the global error.
Neurocam is a new solution to the problem, and is born by the study
of statistical data generated in actual manufactoring environment.
It can apply a "micromorphing" action, modifing any coordinate of the
drilling image indipendently, in order to center perfecly the pad.
It can compensate any shrinkage/expansion/distortion of the laminates,
appling the same to drilling images.
Someone can think that outer layers, solder-masks or electrical-test-jig
and automatic SMT mounting machines will have mismatch on the board:
follow we will analize the problem with "real numbers" and real process
factors, in order to discard this thesys in five points.
1) The neuro-based micromorphing algorithm can skip any particular
tool selected by user leaving unvaried the coordinates related
to this tool. This fature enables the user to mantain the correct
coordinates of registration/mechanical holes or simply holes
that are not critical, being related with large pads.
2) The topic correction to apply on a multilayer is normally inside
the limit of 5 mils, specially while the manufaturer is using a
Multiline registration system(a global shrinkage or expansion
of 10 mils). This is true in the case of any layer has the same
behavior and thus very improbable. Considering the different
behavior of the layers the optimal topic correction can be
normally more little. While the number of layers grows, this is
more and more true. Also in the limit case of 5 mils, the problem
of coupling the outer-layers is not so critical like the problem
of annular-ring loss or short with gnd in the uninspctionable
and uncorrectable innerlayers.
3) Also if the correction of outer-layers and solder-masks can be
needed in limit cases, it is possible with the Neurocam algorithm,
to make it directly on Gerber files obtaining the pefect match
with drilling(if removed film distortion in photoplotting).
The Jig drilling files can be modified correctly if them are
generated by a BareBoard file. If the signals database is generated
by a Gerber processor, it is possible also use the modified Gerber
files of the outer layers like input for it, in order to create a
signals-file with matching coordinates.
4) The problem of mismatch related with automatic mounting machines
does'nt exist in the considered range of error. Effectively the
error of 5 mils in positioning a component does'nt create a
problem because of the solder-past while refuses pulls the
component in the correct position. Really this is normal because
outer layers of many pcb are not nominal.
5) While a superficial evaluation of this system can make doubts,
a serious analisis of statistical data of the real problem
can demonstrate that Neurocam has centered the problem with
his variables in an actual manufactoring environments.
1.2 How to apply Neurocam for low cost problem solving
Neurocam can be used in two environments that differ in the mode
how the data about misregistration are created.
In the visual environment, the user can apply the program to a simple
low-cost X-Ray camera and put the misregistration data for any
desired zone on the surface of pcb. It can be made selecting an offset
or simply recreating the image of the camera in the "Virtual Reality"
environment.
In the automatic pattern processing environment, the program is able
to detect the innerlayers misregistration while the CNC machine is
drilling particular very small test coupons. The program can make it,
sampling an electric signal from pcb through a special probe.
This is an instrument that has high speed and accuracy in
discovering innerlayers misregistration and creating data for any use.
With both the solution, after the misregistration data are created,
the "RUN" command make a new file for any file present in the
list of input(drill or Gerber file).
The results of automatic pattern processing are immediately available
in fashion graphical format like planar sections and hole-crossing
sections. The result of "micromorphing" algorithm on files can be
seen after the "RUN" execution in a graphical double plane composed
of input and output files.
Before the use of the "RUN" command that implements the neural-based
micromorphing algorithm, the user must be sure that the customer
default parameters are correctly setted(see the chapter 5).
1.3 System requirements
Neurocam 1.0 can run on a PC with:
486 DX2 66 Mhz Processor
DOS 6.2 Operative system
VGA Color Monitor in mode 640x400(driver setted as standard VGA)
16 Mb Extended Memory
1.4 Neurocam hardware
The only hardware provided with Neurocam, is the probe that must be
connected to the parallel port(LPT1) of the PC. This is used in the
automatic pattern processing environment to detect the signal from
pcb when the drill is drilling the test coupons.
The probe is shown in fig 1.1. The terminals of the probe(that
must be connected to the ml-pcb) are three special screws named
"Taptite" having the property of self-fillet with high adherence
without material removing.
Two of the three screws must be insulated from the external copper
surface.
It is possible to change them, chosing longher or shorter ones.
The probe is provided of three leds that rispectively show the
sampling activity of the algorithm, the master signal presence
and the fault signal presence from the ml-pcb.
NOTE: it is recommended the use of Taptite screws with diameter of 3 mm.

fig1.1
2.1 Insertion of data in offset format
Choose the "Visual input processing" environment.The menu shows some
options and commands. Select the command "PANEL" and you will see the
mapping of a board in 200 zones(20x10). Select the zone where you want
to put the offset-data, clicking left on the position, and choose the
"OFFSET" command. Now you can select in the same mode the offset that
you want to apply to coordinates in the previously selected zone.
The MUL factor is the multiplication factor normally setted MUL x 1.
Choose the "SET" command to apply or the "EXIT" command to discard.
At this step you have inserted the first offset. You can insert any
new data in the same mode and you can see the positions previously
inserted choosing the "DATMAP" command.
If you want discard all the inserted data, choose the "DELETE" command
and after the "DELETE ALL" command.
2.2 Insertion of visual data with Virtual Reality Measure System
Choose the "Visual input processing" environment. The menu shows some
options and commands. Select the "VRD" command and set the measure of
holes and pads that you are looking with your X-Ray camera.
Select the command "PANEL" and you will see the mapping of a board in
200 zones(20x10). Select the zone where you want to put the offset-data,
clicking left on the position, and choose the "VR" command. Now move with
arrows the position of the hole related to the pad, in order to reproduce
the image that you see on the camera. Press "=" to set the datum and
quit or "x" to discard datum and quit. Repeat the process from the
selection of the zone, for any zone where you want put the datum.
This system has terrific precision and speed while is very easy to
use by any person. It is based on the fact that for human mind is very
hard the evaluation of a distance between two objects while it is very
easy to reproduce an image with the correct proportions moving the
object in a "virtual space" (fig2.2).
2.3 Putting only the corners data
The data must be sufficiently distributed on the global board surface
and the corners must be covered. If you want you can put only the data
related to the four corners and choose the "INTERPOL" command to make
a primary rough interpolation:this is the fastest process to insert
data and is more sure because of it reduces the probability of wrong
data insertion.
2.4 How to map the board on the menu panel
If you don't use the "INTERPOL" command due to insert particular
distortions informations in the center of the board(this is a
particular limit case), you must map your board surface on the menu
panel. This is not difficult with a little experience in using this
tool, but in any case you can divide with a pencil, the surface of your
board in 20 zones in X and 10 zones in Y. Don't worry if your board has
different proportion(x>y):this is not a problem. Remember in any case
that the origin of the board(the smallest x/y in the drill file) is in
the left-down corner of the menu-panel and that the orizontal axis is
the X-axis while the vertical axis is the Y-axis.
2.5 The RUN and RUNVR commands
Before any other operation you must specify the names of the files
that you want to correct. You have 7 positions:
1)Drill
2)Gerber (outer layer 1)
3)Gerber (outer layer 2)
4)Gerber (solder-mask 1)
5)Gerber (solder-mask 2)
6)Jig-Up
7)Jig-Mid (guide plane)
Normally you will use only the Drill file:put the name of the drill
file in the first text field and cancel any name on the other fields.
These commands implement the "micromorphing" on the files that are
specified in the menu text fields. The input files must be previously
copied on the "\neurocam\input" directory and the output files(with
the corrected coordinates) will be created by the program to the
"\neurocam\output" directory. You must use the "RUN" command if you
have inserted data in offset format, while you must use the "RUNVR"
command if you have inserted data with the Virtual Reality Measure
System. For this motive you can't insert data mixed with both systems.
The difference between the two algorithms is only based on the
fact that the database of the offsets is witten in a neutral format
(compatible with a neural network algorithm) and the conversion of
output data are based on different values.
The basic algorithm is based on a Back-Propagation neural Network
with two hidden neurons-layers and is able to learn any complex
interpolation law that links the position(x,y) to the offset(x,y).
After the running one of the above mentioned algorithms you can see
the result of the micromorphing like explained follow.

fig2.2
2.6 Showing old files and new files
After the runnung of the "RUN" or "RUNVR" program you can see the
result on the coordinates files with the following superposition
combinations:
1) Drilling new on drilling old
2) Gerber 1 new on Gerber 1 old
3) Jig-up new on Jig-up old
4) Drilling new on Gerber 1 new
5) Jig-up new on Gerber 1 new
Normally you will look only the first option where you can see the
coordinates of the modified file on the coordinates of the original
one. You are enabled to make zoom on any zone and make measure of the
offset(mils). The origin of the file is mapped on the low-left corner
of the video. You must click left on the mouse due to have the zoom
and click left again to return to complete image.
If you have modified some other type of files you can see the
matching of the output with the 4) and 5) options. When you use
these options you must sometime manually to registrate one file on the
other beacuse of the Gerber image can have a not prfectly distributed
dimension on the drilling file. To register the files you must before
make a zoom and after click left on the circle at the up-left corner
of the video. The cursor will look like an aircraft. Click left again
in the position of a drill pattern and click again in the position
of the related Gerber pattern. Sometime you need to repeat this process
two or three times, but after you are enabled to see the correct
matching between the files.
If the files don't match means that a wrong parameter setting exists
in the customer defaults:check it and re-run when correct.
The zoom can be setted off-line at the desired value of amplification
using the command "ZOOM-SET".
2.7 Special commands and settings
The "RUN_S" command saves the brain file(the file that contains the
sinaptic values of the neural network) after the neural network
training. It is the same command of "RUN" plus this particular feature
that enables you to process an other file in a second time with the
command "L_RUN", loading the previously saved sinaptic file and
skippig the learning process. The means of "RUN_S" and "L_RUN" are
rispectively "run and store" and "load and run". These commands are
correctly usable only for the offset-data input with the MUL
factor setted equal to 1(not for the vr-data input).
The "DELETE" command enables you to delete all the data in the input
data file(the offset to apply), and is correct to use it before any
new job. You can cotrol the positions of the previously inserted data
with the "DATMAP" command.
The "VRD" command enables you to change the dimension of the hole
and the related pad that you want to use with Virtual Reality Measure
System.
The "MIRROR" command enables the mirroring of the data that you insert:
you need to be sure that it is correcly setted(normally not mirrored).
It is used for vision systems that mirror the image.
The "SIDE" command similarly enables the mirroring only on the X axis,
and is used for data input looking the board from the two opposit
faces. Normally with a little X-Ray camera you see the board on the
component side, so you must set "not mirror x".
3.1 The basic theory
This system is based on the fact that the drill while is speedly
rotating iside the FR-4 and removing material, behaves like a
"dynamic metallization" of the hole. This means that with a particular
test coupon we can detect some electrical links between layers.
The test coupon is composed of 20 zones, one for any testable layer,
and any zone has 6 holes. We can detect, for any layer, six signals
associated with different meanings.
The electrical signal derived by the short circuit created by the
drill between layers is sampled through the parallel port of the
PC using a special probe.
The coupon must be inserted at the four corners of the pcb without
mirroring or rotating.
3.2 The test coupon shape and behavior
The basic shape is equal for any layer but is placed in different
positions(the basic shapes are not superimposed). A basic shape is
shown in fig 3.1 where you can see the six holes and the related six
flashes without copper.
The first position is monitoring the left(x-) movement of material
with the alpha size.
The second position is monitoring the right(x+) movement of material
with the alpha size.
The third position is monitoring the up(y+) movement of material
with alpha size.
The fouth position is monitoring the down(y-) movement of material
with the alpha size.
The fifth position is monitoring the y+/- movement of material
with the beta size.
The sixth position is monitoring the x+/- movement of material
with the beta size.
When the material has moved of a alpha size in some direction,
one or two(x/y) of the first four holes contacts the copper, and
it means that the drill contacts the copper. In the same position
on other layers there is a copper line that behaves like a return
line for the signal. In this mode the the connection between the
points A and B of the fig 3.2 is completed using drill like a "wire".
The input of signal and the return of signal are made through three
holes where special screws are inserted. Two signals are involved
in the process: the master-signal coming by external copper that is
present for any hole, and the layer-signal that is present only
on fault. The three wires of the probe are related to these signal
and a common return line(fig 3.8).

fig3.1
3.3 The two edges monitoring system
The Neurocam test-coupon is based on the monitoring of two alarm
edges. It can be demonstated that monitoring two edges, actual
process environments misregistration can be corrected sufficiently
to reach quality goals in actual project constraints. This rule
can be applied also to future, considering that an enhancement of
project constraints will be possible only after an enhancement of
materials characteristics.
Tab3.1 is a self-expaining table of the above
discussion: this table must be view also in the negative direction,
demonstrating how a +/-12 error can be transformed in
a +/-4 error using two edges alarms.
Customer must choose the correct values for the two edges, tuning them
on his statistical data of misregistration and on his project
and quality constraints.
Example:
Hipothesys:
statistical data: max misregistration = 12 mils
project constraints: pad = 25 mils hole(diam) = 0.4 mm(~15 mils)
quality constraints: minimum annular ring = 1 mils
Thesys:
max misregistartion(drill to layer) admitted:
(pad - hole(diam))/2 - minimum annular ring = (25-15)/2-1=4 mils
In this case we choose low alarm edge = 4 mils and a high alarm
edge as
high_alarm_edge = (max_misreg + low_alarm_edge)/2=(12+4)/2 = 8 mils
STARTING ERROR | LOW ALARM | HIGH ALARM | CORRECTION | RESULTING ERROR
|
+1 | - | - | 0 | +1
|
+2 | - | - | 0 | +2
|
+3 | - | - | 0 | +3
|
+4 | FIRING | - | -4 | 0
|
+5 | FIRING | - | -4 | +1
|
+6 | FIRING | - | -4 | +2
|
+7 | FIRING | - | -4 | +3
|
+8 | FIRING | FIRING | -8 | 0
|
+9 | FIRING | FIRING | -8 | +1
|
+10 | FIRING | FIRING | -8 | +2
|
+11 | FIRING | FIRING | -8 | +3
|
+12 | FIRING | FIRING | -8 | +4
|
Tab3.1
Neurocam can help you to find the correct choice with some tools
provided in statistical data environment. With these tools you can
see how two edges cover the range of possible misregistrations, and
you have some statistical data, that helps you to refine
your edges values in order to optimize the information content.
For more information about the above, look at the chapter 8
(statistical data generation).
The test coupon edges must be setted in the customer default
environment and the test-coupon's Gerber files related can be generated
fastly, to insert in your panels(see chapter 5).

fig3.2
3.4 Insert test coupons in your panels
You must, before, generate the test coupons drill-file(Excellon format)
and the Gerber files. You 'll find in the directory "\neurocam\output",
accessible by the ftp-environment-menu, the 20 Gerber files related to
the monitorable 20 layers. Choose a match between the 20 more used layer
types of your layers-table and the 20 positions of Neurocam.
Place, for any layer, on your recallable panels(related to the single
layer type)the test coupon in the four corner.
Example 1:
You choose match layer_A(signal) to layer 1 of Neurocam.
You must place on your layer_A panels the "sig_1.ger" file
at the four corners(without mirroring or rotate it!).
Example 2:
You choose match layer_B(ground) to layer 2 of Neurocam.
You must place on your layer_B panels the "sig_2.ger" file
at the four corners(without mirroring or rotate it!) creating.
before a rectangular flash(without copper) full-containing
the test coupon.
The same must be made for any of the 20 layers.
Layers table, normally, contains more than 20 layers, but some of them
are most frequently used and some of them are less interesting
for monitoring being full-ground layers(restricted material movements).
The choice must be made on the most frequently used layers giving
preference to the signal layers(less copper=more material movement).
After this step you must create the drill file of test-coupon, for
any panel size you are using, in order to have a CNC program ready for
any panel. This CNC program is that you must use when you connect
the probe to the pcb and run the sampling program.
You must use the single coupon drill file(Excellon format) "necam.dnc",
that contains a pause command, needed for the change of the probe
position on current corner by the operator. This file must be
replicated in the 4 corners of the panel.
The drill file has the same origin of the gerber file and the
correct position between them is that one you can see showing
both the files (see fig 3.3 where
RED=holes YELLOW=copper).
When you have built the test-drill file and the panel with the
test coupons, you can overlap them verifing if the distances
between the circumference of the holes and the edges of the
copper are equal to the monitoring vaules that you set when
you created gerber files of coupons(fig 3.4).
An important work must be made on copperfoil preparation, because of
two of the three screws of the probe must not be in electrical contact
with external copper surfaces of the pcb. In order to obtain this result
it is needed to punch copperfoils in the positions shown in
fig 3.5 with punch diameter = 5 mm.
The diameters of the drills used in the drilling test-coupon program
are:
probe insertion holes(2)=> diam=2.5mm
detection holes(121)=> diam=0.5mm

fig3.3
3.5 Lay-up informations setting
Any time you are starting to detect misregistration data on a panel,
you must set the number of present layers. For do it, you must select
the "LAY_UP" command and click on the switches to have the "green +"
(active switch) on the layers that are present on the board with coupon.
If you desire that sampling data go on the statistical database,
correctly, choose the "STATISTICAL" command and fill the fields related
to the present layers. In any field you can put the information about
the thikness(2 digits), the layer type(gnd/signal/mixed), the panel size
and the supplier of the laminate. The first information can be expressed
as 01, 02, 03 ...etc(where 01=0.1 mm), but you can choose any other
interpretation of two digits. The second information is made by only
one digit, and you must decide one time forever, the letter associated
to a type. You must make the same thing with the panel format and the
suppling firm.
You must choose the mixed type when the layer is on a laminate that
support both signal and ground layers.
NOTE: while data in the statistical menu are needed only
in order to have correct statistical informations, the switches setting
present layers are necessar to have the correct input to the
micromorphing algorithm that optimize the drilling coordinates.
NOTE: if you have a layer without test-coupon but really present
in the board you must set it like present. This is necessar
to calculate correctly the average error, considering that the
the layer wich you decided do not monitoring must be a layer
with overlookable shrinkage(example: full GND).

fig3.4
3.6 Automatic detection of data from ml-pcb
a) Put your panel on the CNC machine.
b) Load the drilling program of the four test coupons for
the panel format, on the CNC machine.
c) Load the two tools(the first is for probe holes).
d) Start the drilling program and complete the drilling
of the probe-holes with the first tool.
e) Connect the three screws to the first coupon.
d) Choose the "PROBE" command on menu.
e) Choose the "TEST" command on menu.
f) Press the SHIFT-S key to start sampling.
g) Start the drilling of the first coupon with the second tool
(NOTE: 1000 msec pause between holes)
and wait the led on the probe is off or the menu display
the SHIFT-S wait for the next coupon sampling
h) Move the probe to the next corner.
i) Repeat steps from the "f" for all the 4 coupons
(moving any time the probe in the coorrect position before).
l) Press any key to continue.(*)
m) Look at the result of sampling chosing the "DISPLAY" command;
you can see the rectangles tuning the amplification of the
misregistration error(fig3.7),
or the planar section showing the two edges fault
(green=low edge alarm / yellow blinking=high edge alarm).
You can see the hole-crossing-sections remembering that the
dimensions of pad and hole shown are tuned by the "VRD" command
in the Visual Input Environment(fig3.6).
NOTE: This time can be optimized relately to pcb thikness:
lower thikness requires lower pause time.
The total duration of a sampling is controlled by the number of
samplings written in the "scanner.cfg" ascii file that has the following
format "1600000x10": the number after "x" is not actually used but
the number before "x" is the number of samplings. You must write
a number correct for the speed of the computer you are using, in
order to have a duration covering all the drilling time of one
test-coupon(the default is setted for a 486DX266 CPU x 130 secs).
The sampling time can easly measured during a simulation of
sampling: it is the time interval between you make a contact
on the probe(blue wire to green wire) and the led turn off.

fig3.5
3.7 Running the micromorphing algorithm
This operation is the same of that one in the Visual Input Environment
and makes the generation of new files with optimized coordinates.
In this case, the misregistration information, is token from
the sampling result instead of the manual input of the operator.

fig3.6

fig3.7

fig3.8
4.1 Vantages of micromorphing algorithm
This algorithm enables you to correct any type of deformation, while
an offset can only optimize the position of the global image of
drilling. The X-ray machines can optimize the offset/rotation of
the registration holes for any panel but cannot correct better
than a Multiline registartion system when a shrinkage is present.
Statistical data confirm that the most uncontrollable(or most
difficult to control)problem is dimensional stability, because of
dynamical change of materials suppliers, artwork conservation
management and new pcb lay-ups with no statistical data.
The dimensional variation inside a lot of pcb with the same lay-up
has, normally, a very restricted spread. Someone can think it is not
true in his process: the cause is that these data have often noise
of mechanical registration problems that have a random nature.
Mechanical problems are, however, more easy to control providing
the process of good registration mechanical components and
avoiding wrong procedures. This is an aspect that is often not
considered sufficiently.
If mechanical registration systems work correctly, the dimensional
stability is the biggest problem and can be measured on some
champions inside a lot of pcbs having the same lay-up.
Note that the correction made by a micromorphing algorithm is
the best possible and, also in presence of random errors added,
the result can be very good, considering that expansion/shrinkage
makes the bigger error.
Actually some testing systems can test electrically special coupons
in order to have statistical data. These systems are very intelligent
but don't consider the following problems:
- new lay-ups have no statistical data and require a correction
in real time of drilling
- the correction of artwork is sometime hard to manage
- the suppling firms of materials can be changed because of
cost and the old statistical data are no more attendible
In any case Neurocam is capable of enfold statistical data that
can be used to correct the artwork when the above problems are
not present.
4.2 The steps after drilling
The outer layers can be modified like the drilling file, but it
is really needed only in same cases. The drilling file of the
jigs are modifiable(if the outer layer is modified and smd exists),
but it can be necessar only in limit cases, when fine pitch smd
components are present and critical conditions exist.
The global micromorphing process can be applied on particular
pcb, but normally a topic correction of 4 mils in
drilling position can save an annular ring or prevent a gnd short,
while doesn't create a problem in outer layer matching.
4.3 The future
The perfect distance between two far patterns in a layer of a
ml-pcb, is relly not needed for the correct behavior of the
same one. Why must we look for realize the perfect CAM distance
when the material cannot be perfect like the software?
Why cannot we make that material commands the CAM if it is
not a problem?
Effectively, the only measures that can be important are those
ones determining impedence values, but these are related to
very near patterns(line to parallel line, line dimension etc):
it is not the difference of 5 mils between two lines at the
extremes of the board that makes problem about it.
It is possible to think a future where any CAM system of a
process chain adapts the outputs to process realty.
5.1 Drilling and Gerber format
Drilling input file can be any format with the following constraints:
- absolute coordinates (no incremental coordinates)
- no rotating/mirroring/step&repat commands inside the code
- a carrige-return divides the coordinates
- the tools change must be made by a "Txx" string followed
by a carrige-return.
- the "T01" or "T1" string followed by a carrige-return cannot
exist in the heading.
End of file command is not required and coordinates with only
X or Y are accepted and associated with the last memorized.
EXAMPLE:
COMMENTS
COMMENTS
T01
X23456Y34567
X2345
Y3000
T2
X2000Y2000
Y100
is a correct input file with absolute values of coordinates.
The Gerber format must have the following constraints:
- absolute coordinates(no incremental coordinates)
- no rotating/mirroring commands inside the code
- "*" is the separator of coordinates
For both drilling and Gerber files it is possible to set the
U.M in inch or mm. In the first case the precision can be setted
at 2.3 or 2.4 and in the second case is fixed at 3.2.
5.2 Mirroring
All the files can be mirrored in X and/or Y. This feature is provided
considering the possible mirroring of the components side artworks
in order to have emulsion in contact to pcb.
The four twins_switches related to Gerber are intended from left to right
associated rispectively to Gerber1, Gerber2, Gerber3, Gerber4.
5.3 Set test coupon alarm edges
Choose "TEST_COUPON" command and write the desired values on the
related fields. Normally X and Y have the same values and it is strongly
recommended in order to avoid confusion.
If you want to generate on the output directory, the gerber files with these
edge values and the drill file(it never changes), you must select the
"GERBER-GENERATION" command. When you exit from menu the new values are
automatically setted.
5.4 Names of layers
This setting enable you to see your own layers names in
the lay-up mask when you are going to make a sampling of data.
It is very important that you can recognize fastly the present
layers, looking an internal lay-up document, when you are selecting
them.
5.5 Test coupons drill and Gerber files generation
You can generate the drill file of the test coupon that is fixed in
any case of edges-values, and the Gerber files that change about them.
The files are created under the output directory, and are named as follow:
necam.dnc = drill file
sig_1.ger ...->...sig_20.ger = Gerber for signal layers from 1 to 20
You can use the "sig_n.ger" files also in the ground layes,
putting them on a copper-uncovered area.
Before to create the new files you must set the D-code matching your
own aperture table chosing the "CUSTOMER-DEFINITION" command under
the "TEST-COUPON" menu. It is possible that you must add some D-CODE
to your own table.
In order to regenerate the new files with the new edges you must choose the
command "TEST-COUPON" in the "CUSTOMER-DEFAULTS" menu and after the
"GERBER-GENERATION" command. After this step, the new files are in the
output directory and you can transfer them to an host computer through
the files transfer capability offered by Neurocam(see chapter 7).
6.1 Parameters setting
The settable parameters of the neural-network that makes the
micromorphing of the drill and image files are following explaned:
- EPSILON = learning rate
It is the factor that tunes the speed of learning but the optimal
values is inside the range 0.4 -> 0.7 as shown in the menu.
- TARGET ERROR
It is the target that the network must reach. A value of 0.4
means that the maximum error that the network has when it
implement the micromorphing is 4%. It is like to say that if the
topic correction must be 5 mils it'll can be 4.8 up to 5.2 mils.
- EPOCHS NUMBER
It is the number of epochs of the neural network training.
If the target error is reached before, then the training is, in any
case stopped, but this number is a limit like a "timeout".
These parameters are default setted and it is strongly recommended
don't change them if not sure.
NOTE: The only case that can need a change of max number of epochs
can be that of a Visual Input Data Processing with a lot of
data inserted in the global surface of the board. It can mean
a very complex morphing relationship that need more epochs due
to be learned by the network.
7.1 Network connection
The PC must be connected to an Ethernet network due to have the
capability of files transfer to and from hosts. This is the most
fast mode for do it, also if you can copy the files from and to
the floppy drive.
Due to use the network transfer, your PC must be provided of a
Ethernet card correctly configured and related driver installed.
The pc must be provided of network software that has the "FTP"
command, and a "host-table" file containig the names and the
related address of the hosts that you want reach.
7.2 Parameters setting
Choose the "FILES-TRANSFER" command and select the "LINK" comand.
You'll see the table of the hosts. Insert in the apposite fields
the names of the hosts and the login/passwords. The passwords will
be visible only before the first transfer test, because while
running the program will encrypt the password strings.
Select the "PATH" command and write the complete path of the
gateway or source/destination area related to any host.
Because of the mask provides the setting of 6 hosts, normally,
it is never required the writing of these data by operator
that must only select the switches of the desired hosts link
as explaned follow.
7.3 Files transfer
Select the host or the hosts enabled to the transfer, clicking on the
swithces related, due to have the switch=(+) only for it or them.
You can reach the hosts mask selecting the "LINK" command.
Write the local names and the remote names of the files that you want
to transfer. Naturally the name of the source must be an existing file,
while the target will be created, in both the cases of an input or an
output operation.
Select the "IN" command or the "OUT" command depending of the operation
that you want make. The number of the host actually connected is displayed
and at the end of the global transfer, an errors table is shown.
In the case of multiple hosts selected, the behavior of the transfer is
different in the IN and OUT operations. In the case of input, the files
will be searched in any host and in case them exist in two or more
hosts, the resulting files will be the same of the last host contacted.
In the case of output, the specified files contained in the output
directory will be copied to any specified host.
If you want use the floppy drive as input/output gateway, you can simply
select the commands "FLOPPY-IN" and "FLOPPY-OUT" chosing DOS valid
names for both the source and the target.
8.1 Numerical data on laminates distortion
In this environment you can see the average of distortion in any
single corner of laminate in X and Y.
You can select all type of laminates or discriminate using the
characteristics that you have previously loaded in the lay-up
configuration statistical data before any automated detection.
These characteristics are(see also chapter 3.5):
-2 digits = laminate thikness
-1 digit = type (ground/signal/mixed)
-1 digit = format
-1 digit = suppling firm
(the character '*' can be used as wildcard in some or all fields).
You are enabled to see the total period from start using Neurocam up
to actual period, a limited period from start, or a limited period back
from today. This means that you can calculate the average of material
movement data removing possible noise from them.
The period must be selected with the "thermometer-bar" resources and
the result can be seen on the left of the menu, after the completion
of the "START" command execution.
8.2 Numerical data on drill coordinates corrections
This environment can display average of data like the previous,
selecting periods and format. In this case the data are related
to the global correction of drill coordinates on any board,
instead of the single laminates. Because of it, the only selective
charcteristic is the dimension of the panel that can be selected
with a precision of +/-10%.
8.3 Graphical data on laminates distortion
This graphical environment shows the misregistration error with
the number of laminates in the X axis and the error in Y axis.
The error is shown in red = X-error and in yellow = Y-error in four
windows. Any windows shows the error in the related corner of laminate,
in a range of 275 boards.
Like the numerical environment this program enable you to select the
characteristics of the laminates that you want monitor with the same
modality.
Clicking right on mouse, you go to see the next 275 boards tested with
Neurocam, while clicking left you go to see the previous ones.
You can toggle the visualization of only X-error, Y-error or both.
In order to exit from this environment, click simultaneusly, both left and
right mouse buttons.
8.4 Graphical data on drill coordinates corrections
The behavior of this program is similar to the graphical data
environment for laminates. As we have seen also before, the difference is
that the only selective data are the approximative dimensions of
the panel(fig8.1).
8.5 Graphical spread on laminates distortion
Sometimes it can be useful to see spread of data, specially, related to
particular types of laminates and suppling firms. This enable you to have
intelligent data that can help you to choose suppliers and best materials
to make your lay-ups. The spread data related to a single type of laminate
with all the characteristics selected(no wildcards) is very important
due to renforce the hipotesys of uniformal shrinkage/expansion in a lot
of boards with the same lay-up. This is a very important hypotesys for
the best use of the Neurocam micromorphing alorithm, and the Neurocam
user must be determined to create the best utilization conditions.
Clicking right on the mouse you add the data of the next laminates group,
while clicking left, you reset data to the first group of laminates
(fig8.2).

fig8.1
8.6 Graphical spread on drill coordinates corrections
This program has the same characteristics of that one related to the
laminates, but the selective data are restricted to the approximative
dimensions of the panel. All the data related with the drill coordinates
correction, are not so meaningful like that ones related to laminates.
While the last ones can help in the choice of material, supplier and in
the preventive correction of the artwork, the previous ones can only
give a supplementary information about the current process.

fig8.2
8.7 Test coupon tuning
This is a very important feature of Neurocam that helps you to refine
the alarm edges values of the test-coupon, optimizing the information
content. The program makes it using the statistical data of laminates.
The best information content of a two alarm edges system is performed
when, in significant statistical data, the two edges are fired with
50% probabiliy anyone.
EX1: number of laminates tested = 2000
number of low-edge fired = 500
number of high-edge fired = 20
In this case both the edges are too high and often not fired
EX2: number of laminates tested = 2000
number of low-edge fired = 1500
number of high-edge fired = 300
In this case the low-edge is too low and the high edge is to high
EX3: number of laminates tested = 2000
number of low-edge fired = 1000
number of high-edge fired = 1000
This the optimal situation of the edges values because of the information
content is the higher possible.
In this environment you can tune the optimal values of the alarm edges
relating it on particular historical data or on all the historical data.
So you can remove any type of noise in the operation of tuning your
edges. You can also select the tuning of the edges on particular
laminates types, but it is really not usefull, so it is better to insert
globally the wildcard in the control string("******").
Select the command "TUNE" and look at the tuned results for any period
that you have selected.
8.8 Project Process Fitness test(PPF)
This utlity shows how much, two alarm edges can be a good information
in order to correct drill cordinates. This test is made considering your
project constraints and the quality of your process.
You can set the low edge equal to the maximum error that you can accept
considering your project constraints(ex:pad and hole diameters) and the
quality target(ex:minimum annular ring), and the high edge equal to the
average of the maximum error that you forecast thinkink to your process
and the low edge.
critical project constraint:
pad(diam) = 25 mils
hole(diam) = 15 mils
nominal annular ring = 5 mils
quality target:
minimum annular ring = 1 mil
known process quality:
maximum error forecasted = 10 mils
LOW-ALARM-EDGE= (pad(diam)-hole(diam))/2 - minimum annular ring = 4 mils
HIGH-ALARM-EDGE= (maximum error forecasted + LOW-ALARM-EDGE)/2 = 7 mils
Select the "GO" command end you'll see the the global range of error
on wich you are covered with these two edges (on one layer).
8.9 Multilayers test
The above procedure is related at only one layer behavior, while the
follow one is related to the matching of two(that is the same of many)
layers and drilling. It makes a test in user defined conditions of
max drill-to-layer and max layar-to-layer misregistration.
Select the command "GO" and answer to the question as explained follow:
max-layer-to-layer misreg = a credible value in your process
max-drill-to-layer misreg = a credible value in your process
low edge = as explained in the provious paragraph rule
high edge = as explained in the previous paragraph rule
The program will ask if you want the step by step execution
or the one-step execution. In the first case you can see any
possible combination of the layers misregistration, while in
the second one, you can see only the final result.
The result shows the total number of misregistration combinations
and the percentage of them that are out of the target condition
(error<=low edge), also after the correction. If you choose the step
by step execution you will see any combination with the old original
error and the final error, distinguishing by the color the passed from
the fail.
It is obvious that a high layer-to-layer misregistration disables
any possibility (or reduce the probability) to reach the quality
target(es: minimum annular ring=1mil).
The following applet is a java version of the above
descripted program:
9.1 Software installation
Insert the install disk 1 on the drive A and type "a:\install".
Insert the install disk 2 when the program ask for it and press enter.
The program is installed.
Save original config.sys with the name config.old and add the following
line in config.sys:
DEVICEHIGH = C:\WINDOWS\RAMDRIVE.SYS 8192 /e
if your system has Windows 3.1 installed
or
DEVICEHIGH = C:\DOS\RAMDRIVE.SYS 8192 /e
if your system has only DOS 6.0.
You must be sure that your computer has 16Mb extended memory.
If your computer has more memory (ex 32Mb) you can create a bigger
ramdrive (consult your DOS manual).
9.2 Hardware installation
To install the Neurocam probe, you must simply to connect it to the
parallel port(LPT1) of your pc and lock the connector with the screws.
"Multiline" is a Trademark of Multiline International
"Taptite" is a Trademark of Taptite International