Microprocessor question

  • Thread starter Thread starter gary s
  • Start date Start date
G

gary s

I have a question that I hope someone on here can answer, or give me
an insight:

1. Is there any way to do a quick check on a microprocessor to
determine if it's "alive"? I realize manufacturers use million-dollar
testers for functional testing, but is there a way to "generically" do
a quick check on the bench using standard test equipment?

2. Ditto for speed? How can one determine if a microprocessor will run
at its marked speed on a bench?

3. If there is a "generic" feature set that is common to most
microprocessors, and what might that be?

4. How can one check for this - as far as hardware and software
requirements?

I guess I am looking for a "generic" test setup that can do something
like a bare-bones electrical QC on different microprocessor families.

Thanks for your help.

Gary
 
Hi Gary,
1. Is there any way to do a quick check on a microprocessor to
determine if it's "alive"? I realize manufacturers use million-dollar
testers for functional testing, but is there a way to "generically" do
a quick check on the bench using standard test equipment?
Tough. The only crude way I have used in the past is a coil placed on
top of it in a precisely repeatable position and looking at the
spectrum. But that is crude and only comparative. I just needed it to
see if something was running on it and to figure out if any of the
spectrum would be synchronous to noise I was chasing.
2. Ditto for speed? How can one determine if a microprocessor will run
at its marked speed on a bench?
Only via a full electrical test, since all its functions must keep up at
the rated speed.
3. If there is a "generic" feature set that is common to most
microprocessors, and what might that be?
For me it is the noise spectrum emitted from the enclosure and the lines
but that is different for every processor and circuit board. Kind of
like submarine guys who are able to determine what kind of vessel is
cruising above just from hearing its noise.
4. How can one check for this - as far as hardware and software
requirements?

I guess I am looking for a "generic" test setup that can do something
like a bare-bones electrical QC on different microprocessor families.
It'll be different for every processor and you would have to obtain the
QC procedure from the manufacturer, if they are willing to share it for
incoming QC purposes.

Regards, Joerg

http://www.analogconsultants.com
 
I have a question that I hope someone on here can answer, or give me
an insight:

1. Is there any way to do a quick check on a microprocessor to
determine if it's "alive"? I realize manufacturers use million-dollar
testers for functional testing, but is there a way to "generically" do
a quick check on the bench using standard test equipment?

Use a scope. The clock should be clocking, and the address, data, and
control lines will all be going up and down, assuming it's executing
something.

Issue a reset, and you should see some kind of change in the waveforms.
2. Ditto for speed? How can one determine if a microprocessor will run
at its marked speed on a bench?

Build up the circuit, and test it. I think it's extremely unlikely that
you'll get one that doesn't meet its own spec.

If you're at the chip factory, and they're chips coming off the line,
then shame on you! ;-)
3. If there is a "generic" feature set that is common to most
microprocessors, and what might that be?

More or less - they have all the features of a processor. Clock,
address, data, ALU, some control logic. Other than that, it's a
free-for-all. ;-)
4. How can one check for this - as far as hardware and software
requirements?

In-circuit test is the only way to really verify the whole thing,
and this shouldn't be in the end item, but a dedicated bench
fixture with some diagnostic firmware and misc. peripherals and
stuff, which will depend on your needs there.
I guess I am looking for a "generic" test setup that can do something
like a bare-bones electrical QC on different microprocessor families.
I'm afraid each family will need its own tester, or at least personality
modules.

I don't even know if any manufacturers sell different versions that are
plug-compatible, except maybe versions of the HC11 or so. But from
one manufacturer to another, they're different enough that this would
be a wild goose chase.

Thanks for your help.

Sorry I couldn't be more helpful.

Good Luck!
Rich
 
In comp.sys.ibm.pc.hardware.chips gary s said:
1. Is there any way to do a quick check on a microprocessor
to determine if it's "alive"? I realize manufacturers use
million-dollar testers for functional testing, but is there
a way to "generically" do a quick check on the bench using
standard test equipment?

Of course. Plug it into a known-good mobo, fix a heatsink
& boot.
2. Ditto for speed? How can one determine if a microprocessor
will run at its marked speed on a bench?

Leave booted for a while and watch for lockups.
You could try running one of my cpuburn utils
3. If there is a "generic" feature set that is common to
most microprocessors, and what might that be?

Yes, the x86 instructions set is common to all x86
processors. At least the original IBM PC BIOS tested
some basic functionality.
4. How can one check for this - as far as hardware and
software requirements?

There are pgms that will check operations.
I guess I am looking for a "generic" test setup that can
do something like a bare-bones electrical QC on different
microprocessor families.

JTAG might work if you've got the money.

-- Robert
 
If you're testing older processors such as the Z-80 and the 6502, you could
buy some cheap PCs such as the TRS-80 (Z-80), an Apple II (6502), a Radio
Shack Color Computer (6809) and/or an original Macintosh (68000) and use the
sockets on the motherboards or install one if not already provided. Then
just use each computer as a test bench.
 
Thanks for all the prompt replies I've seen so far.

I work for a reseller, and my company acts as the broker for large
batches of different types of microprocessors bought on the "gray"
market to meet production shortages. There is no longer any
manufacturer's warranty, therefore there is a desire to screen out
parts that are dead, slow, or counterfeit. It appears there are folks
out there who are making a living remarking slow parts, or assembling
parts that have been scrapped off the manufacturer's production
line...

I've been told that after a microprocessor leaves the manufacturer,
there is really no way to test it except on a motherboard/application
board (or some kind of evaluation board). My customers are doing this
after their assembly process. But it would be nice to have some kind
of meaningful acceptance testing at my end before they get the part.

I've received suggestions that (1) maybe there is a way to see if the
thing wiggles (the assumption is if you can wiggle it (maybe getting
it in and out of reset?), it's probably good - or there is a live chip
inside anyway), and (2) maybe there is a way to do something like
adding 2 and 2 (or loop on something) to see if the thing can perform
at the advertised speed.

Evidently I would need the services of an EE to attempt something like
this. And if this "generic microprocessor checker" can be built, I
suspect it's going to be a challenge mechanically, owing to all the
different pin-outs and package types. I just wanted to know from the
experts on here if this is something that is worth pursuing, or
proposing to my management.

Thanks again -

Gary
 
Thanks for all the prompt replies I've seen so far.

I work for a reseller, and my company acts as the broker for large
batches of different types of microprocessors bought on the "gray"
market to meet production shortages. There is no longer any
manufacturer's warranty, therefore there is a desire to screen out
parts that are dead, slow, or counterfeit. It appears there are folks
out there who are making a living remarking slow parts, or assembling
parts that have been scrapped off the manufacturer's production
line...

I've been told that after a microprocessor leaves the manufacturer,
there is really no way to test it except on a motherboard/application
board (or some kind of evaluation board). My customers are doing this
after their assembly process. But it would be nice to have some kind
of meaningful acceptance testing at my end before they get the part.

(snip)

Because of the diversity of types/pinouts I suspect you are chasing the
unachievable unless you have a '70s NASA budget.

What you COULD do is consider moving the client testing into YOUR facility. If
they can provide either end-product or a test jig for the specific micro they
purchase, your outfit could do the testing before on-shipping the chip. That
would relieve them of that burden and give your firm not only confidence in the
shipped part but also a reputation for actually giving a stuff about the client.
 
[about uP testing]
Because of the diversity of types/pinouts I suspect you are chasing the
unachievable unless you have a '70s NASA budget.

What you COULD do is consider moving the client testing into YOUR facility. If
they can provide either end-product or a test jig for the specific micro they
purchase, your outfit could do the testing before on-shipping the chip. That
would relieve them of that burden and give your firm not only confidence in the
shipped part but also a reputation for actually giving a stuff about the client.

Hear! Hear! This is actually a very good idea.
Guess I'm getting old in my old age. ;-)

Have Fun!
Rich
 
gary s said:
I have a question that I hope someone on here can answer, or give me
an insight:

1. Is there any way to do a quick check on a microprocessor to
determine if it's "alive"? I realize manufacturers use million-dollar
testers for functional testing, but is there a way to "generically" do
a quick check on the bench using standard test equipment?

2. Ditto for speed? How can one determine if a microprocessor will run
at its marked speed on a bench?

3. If there is a "generic" feature set that is common to most
microprocessors, and what might that be?

4. How can one check for this - as far as hardware and software
requirements?

I guess I am looking for a "generic" test setup that can do something
like a bare-bones electrical QC on different microprocessor families.

Thanks for your help.

Gary

Do you have a known "good" board?

If so, you can probe around with an oscope and you will get some
repeatible waveforms. Now go to your "bad" board and do an A-B
comparison. With some trial and error you will find some waveforms
(pins) that will give you a "state-of-health". And this without
knowing anything about the processor or application.
 
gary s said:
I have a question that I hope someone on here can answer, or give me
an insight:

1. Is there any way to do a quick check on a microprocessor to
determine if it's "alive"? I realize manufacturers use million-dollar
testers for functional testing, but is there a way to "generically" do
a quick check on the bench using standard test equipment?

Just use a scope and look for square waves on various pins of the
micro. That will tell you something is happening, maybe correct,
maybe not. If you don't have a scope, use a DMM to measure the
DC voltage on various pins. The DC voltage will vary from 0 to 5 volts
or 0 to the power supply voltage indicating something is happening on
that particular pin. But it's hard to tell exactly what is going on
without knowing the program. And then it would be difficult to
interpret the digital signals from the program. If you have a good
micro, you can compare the waveforms of the test micros to the known
good micro and usually identify the problems.
2. Ditto for speed? How can one determine if a microprocessor will run
at its marked speed on a bench?

You probably need to use a external clock to drive the micro
at the rated speed or greater.
3. If there is a "generic" feature set that is common to most
microprocessors, and what might that be?

A generic feature would be the number of I/O lines and internal
program RAM and ROM available.
4. How can one check for this - as far as hardware and software
requirements?

Is this a homework problem?
I guess I am looking for a "generic" test setup that can do something
like a bare-bones electrical QC on different microprocessor families.

You need different tests for different processors. The pin assignments
will be different, so you have to look at different pins for different
activity of different processors.

-Bill
 
It is not beyond feasible to build a test jig for each microprocessor
family.

For example, I've been messing about learning the 8051 processor family. I
have an EPROM / Flash programmer I bought new from ebay for about $45 which
will program almost everything. My "Test Jig" consists of a prototyping
breadboard into which I've plugged a simple power supply, the processor
(with onboard flash memory), one crystal and 2 capacitors (for the clock)
and a reset switch. You can write a trivial looping program to output a
square wave, program the processor using your PC, use the maximum crystal
frequency, and see if you get a square wave. For processors without onboard
program space you can add an EPROM to the breadboard and blow that instead.
This jig should work for all processors in the 8051 family of the same
package (number of pins). This will indicate the processor can run a basic
function at maximum rated speed. There could be other faults of course
(falty onboard RAM) but it sounds like this simple test is what you need.

If all this sounds too daunting, get a Microprocessor Programming book and
spend a few evenings reading it, and you may find it's well within your own
capability. This isn't rocket science despite appearances.


Gareth.
 
Gareth Magennis said:
It is not beyond feasible to build a test jig for each microprocessor
family.

For example, I've been messing about learning the 8051 processor family. I
have an EPROM / Flash programmer I bought new from ebay for about $45 which
will program almost everything. My "Test Jig" consists of a prototyping
breadboard into which I've plugged a simple power supply, the processor
(with onboard flash memory), one crystal and 2 capacitors (for the clock)
and a reset switch. You can write a trivial looping program to output a
square wave, program the processor using your PC, use the maximum crystal
frequency, and see if you get a square wave. For processors without onboard
program space you can add an EPROM to the breadboard and blow that instead.
This jig should work for all processors in the 8051 family of the same
package (number of pins). This will indicate the processor can run a basic
function at maximum rated speed. There could be other faults of course
(falty onboard RAM) but it sounds like this simple test is what you need.

If all this sounds too daunting, get a Microprocessor Programming book and
spend a few evenings reading it, and you may find it's well within your own
capability. This isn't rocket science despite appearances.

You're right about a microcontroller like the 8051. But the common
microprocessor has more than ten times the number of pins, and it's a
lot more than rocket science to get it running without any support
system.
 
gary s said:
Thanks for all the prompt replies I've seen so far.

I work for a reseller, and my company acts as the broker for large
batches of different types of microprocessors bought on the "gray"
market to meet production shortages. There is no longer any
manufacturer's warranty, therefore there is a desire to screen out
parts that are dead, slow, or counterfeit. It appears there are folks
out there who are making a living remarking slow parts, or assembling
parts that have been scrapped off the manufacturer's production
line...

I've been told that after a microprocessor leaves the manufacturer,
there is really no way to test it except on a motherboard/application
board (or some kind of evaluation board). My customers are doing this
after their assembly process. But it would be nice to have some kind
of meaningful acceptance testing at my end before they get the part.

I've received suggestions that (1) maybe there is a way to see if the
thing wiggles (the assumption is if you can wiggle it (maybe getting
it in and out of reset?), it's probably good - or there is a live chip
inside anyway), and (2) maybe there is a way to do something like
adding 2 and 2 (or loop on something) to see if the thing can perform
at the advertised speed.

Evidently I would need the services of an EE to attempt something like
this. And if this "generic microprocessor checker" can be built, I
suspect it's going to be a challenge mechanically, owing to all the
different pin-outs and package types. I just wanted to know from the
experts on here if this is something that is worth pursuing, or
proposing to my management.

Thanks again -

Gary
What I have done to test a new board is to write a simple program that
executes on power up:
1) write 55 to some memory location
2) write AA to same memory location
3) Read memory location
4 loop back to 1)

Hor an Intel type chip, I also did an IOR and IOW.

This obviously requires different hardware for each type of chip. I don't
see any way around that.

Tam
 
gary s said:
I have a question that I hope someone on here can answer, or give me
an insight:

1. Is there any way to do a quick check on a microprocessor to
determine if it's "alive"?

Most single chip micros will configure all the pins as inputs on Reset/POR.
Early in the code the programmer has to configure the pins to be inputs or
outputs. If you see all the pins floating or pulled hi/low by external
components then it probably hasn't executed that early code. If we are
talking about a new flash programmable part then it's also possible someone
forgot to program it (eg it's still blank!).
 
gary s said:
I have a question that I hope someone on here can answer, or give me
an insight:

1. Is there any way to do a quick check on a microprocessor to
determine if it's "alive"? I realize manufacturers use million-dollar
testers for functional testing, but is there a way to "generically" do
a quick check on the bench using standard test equipment?

2. Ditto for speed? How can one determine if a microprocessor will run
at its marked speed on a bench?

3. If there is a "generic" feature set that is common to most
microprocessors, and what might that be?

4. How can one check for this - as far as hardware and software
requirements?

Elektor magazine had a suggestion way back: fill a memory with NOP's
suitable for the processor. If everything is working, you should see halving
the frequency on every higher address line. And you may use a variable clock
source to see when things start to go wrong.

Wim
 
Do you have a known "good" board?

If so, you can probe around with an oscope and you will get some
repeatible waveforms. Now go to your "bad" board and do an A-B
comparison. With some trial and error you will find some waveforms
(pins) that will give you a "state-of-health". And this without
knowing anything about the processor or application.

I believe you've just invented the "signature analyzer." :-)

Cheers!
Rich
 
Please let us know who your customers are so we can avoid buying from them!

Chances are you have something in your house from one of my customers.
But rest assured their outgoing QC is 100%.

A lot of my inventory comes from OEMs in sealed, virgin condition so
there is little that needs to be done. There is a huge market for
excess and obsolete parts, and there is always a demand somewhere for
them. Unfortunately, it is the stuff of questionable pedigree that's
giving everybody headaches.

Regards -

Gary
 
It is not beyond feasible to build a test jig for each microprocessor
family.

For example, I've been messing about learning the 8051 processor family. I
have an EPROM / Flash programmer I bought new from ebay for about $45 which
will program almost everything. My "Test Jig" consists of a prototyping
breadboard into which I've plugged a simple power supply, the processor
(with onboard flash memory), one crystal and 2 capacitors (for the clock)
and a reset switch. You can write a trivial looping program to output a
square wave, program the processor using your PC, use the maximum crystal
frequency, and see if you get a square wave. For processors without onboard
program space you can add an EPROM to the breadboard and blow that instead.
This jig should work for all processors in the 8051 family of the same
package (number of pins). This will indicate the processor can run a basic
function at maximum rated speed. There could be other faults of course
(falty onboard RAM) but it sounds like this simple test is what you need.

If all this sounds too daunting, get a Microprocessor Programming book and
spend a few evenings reading it, and you may find it's well within your own
capability. This isn't rocket science despite appearances.

This is similar to what was suggested to me. My problem is in somehow
"generalizing" this to a superset to include 16 and 32-bit parts with
hundreds of pins.

Thanks -

Gary
 
Yes, sorry about that, I was assuming the poster was talking
microcontrollers in consumer equipment rather than big computing systems. I
see a lot of this stuff.
 
Back
Top