reversing a gate array

Apr 29, 2008 4 Replies

I've got an old gate array that was developed in the mid-80's. While most of the gate array function is documented, and available, a small portion of it is simply not mentioned in anything I've found yet. It was a custom(by definition?) chip used in a small number of products.



While it's a 48-pin DIP, the majority of the leads are used by the other documented functions. The remaining (4) input leads and (4) output leads are the ones I'm interested in.



Do you think that hooking a logic analyzer to the inputs and outputs would be sufficient to determine the function? I have pinout information and there appears to be a 1->1 relationship for input and output pins. The pins in question are not clocks, or address/data busses.



I've also thought about simulating the inputs, since there are only



2^4=16 possibilities for input, and then recording the results at the output.

There was no reason for obfuscation or encryption, etc --- just lack of documentation.



Or am I completely crazy and have no chance of this working?



Thanks for the psychiatric exam. :)



Keith


This should work for simple lookup functions, but if it is e.g. a counter, a shift register or something like this, or if it is related to the other pins, there is not a simple 1:1 relationship.

Frank Buss, fb@frank-buss.de http://www.frank-buss.de, http://www.it4-systems.de

It usually doesn't work that way. There could be all kinds of sequential things happening in a gate array so that something might come out of it umpteen clock cycles after some input has been static.

:-)

You best bet might be to

a. Try to understand the external stuff connected to those pins and deduce the required gate array behavior from that.

b. Find at least one of the guys who worked on it 20+ years ago. Seriously, that's exactly what I once did during a first consulting project with a new client. I found that the system they produced needed additional filering and a logarithmic function. Documentation of that part? Pretty much zilch. So we searched and found the guy, made him an offer, and bingo.

Regards, Joerg http://www.analogconsultants.com/ "gmail" domain blocked because of excessive spam. Use another domain or send PM.

get the schematics for the boards and the firmware it was previously used with and figure out what it was supposed to do.

Right. I thought about doing multiple random tests so that I could eliminate any type of sequential things, or counters, shift registers, etc like Frank B mentioned in the other post.

Heh. Well to make matters worse, it's connected to another gate array :)

I think that one is better documented, however, and that is sort of the plan I had originally. I'd rather PROVE what's happening inside the gate array than guess. It's not a super critical app though, so I may have to live with a reasonable guess.

I doubt my minor free open source project would be of interest to him.

For anyone who likes light reading, I'd suggest this link

formatting link

I like to day-dream that I'd have such money/skill/knowledge/equipment to go that route!!

Thanks Frank and Joerg.

Keith

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required