cweirich
Electrical
- Dec 12, 2003
- 4
The 2903 ALU is an cascadable 4 bit ALU slice.
I am writing an in-circuit test for this device. I created a model for it and created the test with LASAR software but the chip deviates from the simulation when I am doing certain types of shift operations on the Q register or on the ALU output F.
What I am seeing doesn't make any sense at all to me. The model has survived 1050 patterns in LASAR and only now it starts to deviate. I am doing function 4 (F = S + Cn) with I0 high (S = Q) also OEY is low so (Y = F). Basically this means (Y = Q) since Cn is kept low also. I put CCCC (its a four slice circuit with 16 bits total) into the Q register. Then I shift left a couple of times by clocking the CP input with destination D (2Q -> Q) so it goes CCCC to 9999 to 3333 to 6666 and back to CCCC again with external logic to loop the MSS QIO3 ouput around to the LSS QIO0 input. Through all of this the Y output is enabled and basically mirrors what should be in the Q register at any time becase the function code is 4 with I0 high and OEY low. But then when I change the destination to 9 the Y ouput starts to deviate from what I expect not to mention what my simulation expects. I have tried a number of other destination codes as well and I think it only seems to pass if I leave the destination at D. I can't see what could be wrong with my simulation. It just seems like there has been another write to the Q which should not be possible because there has been no transition on CP at this point. That or what has been in Q is not what I thought it was and for some reason it only shows up now. Even a simple F --> Y and Q hold destination fails.
I used the AMD AM2903 datasheet to write the model.
If you have had any experience with the 2903 29203 etc and you might remember experiencing a strange problem like this. I would love to hear about it because this is driving me crazy LOL. Its probably a longshot but we'll see. This thing is really a pretty old chip. I heard the soviets tried to clone it one time.
Craig Weirich
craig.weirich@mantech.com
I am writing an in-circuit test for this device. I created a model for it and created the test with LASAR software but the chip deviates from the simulation when I am doing certain types of shift operations on the Q register or on the ALU output F.
What I am seeing doesn't make any sense at all to me. The model has survived 1050 patterns in LASAR and only now it starts to deviate. I am doing function 4 (F = S + Cn) with I0 high (S = Q) also OEY is low so (Y = F). Basically this means (Y = Q) since Cn is kept low also. I put CCCC (its a four slice circuit with 16 bits total) into the Q register. Then I shift left a couple of times by clocking the CP input with destination D (2Q -> Q) so it goes CCCC to 9999 to 3333 to 6666 and back to CCCC again with external logic to loop the MSS QIO3 ouput around to the LSS QIO0 input. Through all of this the Y output is enabled and basically mirrors what should be in the Q register at any time becase the function code is 4 with I0 high and OEY low. But then when I change the destination to 9 the Y ouput starts to deviate from what I expect not to mention what my simulation expects. I have tried a number of other destination codes as well and I think it only seems to pass if I leave the destination at D. I can't see what could be wrong with my simulation. It just seems like there has been another write to the Q which should not be possible because there has been no transition on CP at this point. That or what has been in Q is not what I thought it was and for some reason it only shows up now. Even a simple F --> Y and Q hold destination fails.
I used the AMD AM2903 datasheet to write the model.
If you have had any experience with the 2903 29203 etc and you might remember experiencing a strange problem like this. I would love to hear about it because this is driving me crazy LOL. Its probably a longshot but we'll see. This thing is really a pretty old chip. I heard the soviets tried to clone it one time.
Craig Weirich
craig.weirich@mantech.com