Microprocessor question

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?

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

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

  1. 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

Reply to
gary s
Loading thread data ...

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

Reply to
gary s

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.

Reply to
Tom Seim

Hi Gary,

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.

Only via a full electrical test, since all its functions must keep up at the rated speed.

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.

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

formatting link

Reply to
Joerg

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.

You probably need to use a external clock to drive the micro at the rated speed or greater.

A generic feature would be the number of I/O lines and internal program RAM and ROM available.

Is this a homework problem?

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

Reply to
Bill Bowden

Of course. Plug it into a known-good mobo, fix a heatsink & boot.

Leave booted for a while and watch for lockups. You could try running one of my cpuburn utils

Yes, the x86 instructions set is common to all x86 processors. At least the original IBM PC BIOS tested some basic functionality.

There are pgms that will check operations.

JTAG might work if you've got the money.

-- Robert

Reply to
Robert Redelmeier

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.

Reply to
Matt J. McCullar

family. I

which

prototyping

processor

clock)

a

crystal

onboard

instead.

basic

course

need.

and

your own

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.

million-dollar

do

run

something

families.

Reply to
Watson A.Name - "Watt Sun, th

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

Reply to
Tam/WB2TT

(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.

Reply to
budgie

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.

Reply to
Gareth Magennis

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

Reply to
gary s

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

Reply to
gary s

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!).

Reply to
CWatters

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

Reply to
CWatters

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

Reply to
Wim Ton

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.

Reply to
Gareth Magennis

Good reason to stay away from "independent" distributors - No warranty, suspicious circumstances re how they get their product. Stick with the "franchised" distributors. They get their parts directly from manufacturers. They also receive full technical support from manufacturers (as opposed to having to ask questions on Usenet)

Reply to
geneguy

What you have in mind is a real challenge! A semiconductor manufacturer is happy, if the test coverage exceeds 95% of all the nodes inside the chip. That means that roundabout 5% of the chip remains untested. And that is done with very sophisticated and expensive test equipment, which can access the internal test logic. In addition to the very fundamental IDDq test (measuring the qiescent current), this results in a failure rate of a few ppm at the customer.

Without access to the test structures inside the device and without thorough understanding of its design, you will hardly ever test more than a third of the device with any test software. The other simple tests which have been proposed here in other posts, will probably not cover more than just 5 to 10% of the device.

One can find about 70% of all possible failures by means of dedicated test software. We have done that for a 32-bit RISC CPU. It requires the RTL description of the device and many days of simulation time per iteration on expensive machines with even more expensive software.

The most simple test that you could do is the IDDq test (assuming the device is CMOS and fully static). Measure the current consumption of the device during Reset and then clock the device slowly. Measure the static current after each clock edge. If it is more than the specified leakage current, then discard the device. This test can find more than

50% of all possible bugs and therefore it is better than most test software (which would still increase the coverage though). The idea behind the IDDq test is that a failure will probably be caused by a gate that is stuck at high or stuck at low, i.e. a transistor that is constantly switched on or off. If the other transistor switches on, then a short circuit exists and the leakage current is increased. Note that such a short doesn't draw amps, but microamps...

Run the device at nominal conditions (specified voltage and room temperature) and use 1.5 times the specified clock frequency. That should assure that the device works at minimum voltage and maximum temperature at the specified speed.

I hope that helps.

Michael

Reply to
Michael Kr?mer

Not always the case. Here in down-under-land, Maxim (as one example, also LinearTechnology) are officially distibuted by Arrow Electronics Australia, AFAIK a wholly owned subsidiary of Arrow Electronics in the U.S. Arrow Aus order through Arrow in U.S. who in turn order from the factory. While that distinction may sound minor, the US-based parent won't move until it has factory MOQ orders in hand from its downstream. That means we can wait an indefinite time for parts through "our" franchised distributor simply because of their organisational structure. We had to wait 14 weeks for a Maxim eval kit that was ex-stock Maxim throughout the entire waiting period because of this "food chain". We also have to order factory MOQ as this sytem does not warehouse or break down factory MOQ at any point.

As an alternative, there is a Maxim distributor next door (in N.Z.) who doesn't seem to have the same hangups. His delivery is typically a couple of weeks vs many months via the "official" chain - AND we get to order 20 chips instead of

500. So when we needed 20 chips for a pre-production run, guess which small distributor got the business.

Not with Arrow Aust. If it isn't on the chip manufacturer's website then you may as well forget it - or ask on usenet. Maybe they aren't representative of authorised/franchised distributors elsewhere, but they certainly don't support your model.

Reply to
budgie

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.