I have noticed that the "Auto Find" IC search procedure in the logic tests probably does not check all lines of the logic vector.
How many lines of a vector are checked or how is it checked if a given vector fits into an integrated circuit?
1. check how many pins of the chips.
2. check all lines
admin 发表于 2021-8-10 16:38
This is probably not entirely true. While testing the "Auto Find" function on all ICs I have, I noticed that it is impossible to find the 7491 chip. Manually searching for an IC and running a logic test gives the correct result, but this chip is not found automatically.
The answer may be the construction of a logic vector, because in this vector, logic states at the outputs of the integrated circuit are checked only from 8 lines.
If all lines were checked, the IC would be detected.
I performed the tests on a real M74LS91P integrated circuit from Mitsubishi.
I do not understand what effect on the IC search algorithm, since the number of pins and all vector lines are checked, and the programmed GAL is a shuffle digital circuit like others, a combination of logic gates. The "Auto Find" algorithm must contain some additional conditions by which it does not check all lines of the logic vector, because if it checked all lines, it would find this system.
This registry has no clear or reset input. First, you must give some input signals 8 times to be able to start reading and checking these logical values from the 9th line.
Some values must be given for the inputs and it does not matter whether we give only logical zeros or ones, or maybe other values, because you can start reading only from 9 lines.
You might think that after switching the system on, the register will only have logical zero values, but the R-S flip-flops may have random values after applying the power.
But the XGecu TL866+ programmer always performs IC testing twice, so you cannot be sure of the initial values of this register.
In my opinion, this test is done optimally. It is divided into 3 sections:
1. Lines 1-8 enter data into the register, do not check any states on the outputs.
2. Lines 9-16 check previously entered data and enter new data.
3. Lines 17-24 check that the data input on lines 9-16 has not been disturbed by running the input data and checking the output data.
Yes, you can skip lines 17-24, but then the test would not be complete. In this register it is not possible to check the current state of saved data, most of the flip-flops are unavailable (inside the register). It is therefore important to check all possible interactions and disturbances between the internal elements.
That's it for the description of this logic test.
However, we still don't know why "Auto Find" doesn't check all lines of this test.
If possible, please take a look at this function, maybe there are some conditional statements or some other program elements that don't want to check the whole of the vector.