the present invention relates to methods for testing memory cells particularly in non - volatile memories such as eprom &# 39 ; s . under certain manufacturing procedures it is often necessary to test an eprom after it has been bulk erased and sealed in a uv - opaque package for shipment from the factory . the unprogrammed eprom is difficult to test since programming is to be avoided . a variety of test approaches have been proposed , most requiring additional memory cells or cell groups which are not part of the regular memory array and which can be programmed for limited testing of circuits shared with normal memory cells , i . e . a statistical sampling method . u . s . pat . nos . 4 , 920 , 515 and 4 , 862 , 418 are recent examples of this approach . another partial solution has been the addition of circuits used to measure thresholds of normal memory cells without causing permanent change of state . this approach is exemplified by the teachings of u . s . pat . nos . 4 , 956 , 816 , 4 , 779 , 272 and 4 , 393 , 475 . though leakage current and stray capacitance can be monitored by such techniques , additional circuits are needed and the assurance of a completely tested memory cell is lacking . doyle , in u . s . pat . no 5 , 031 , 152 places a programmable latch at the output of a non - volatile memory cell , programs the latch , and allows the erased memory cell to reset the latch thereby demonstrating an ability to perform that part of the memory cell &# 39 ; s task . but even the doyle test circuit requires the addition of at least one circuit per sense amplifier . one particular problem arises when it is desired to test the read access time for each eprom in the array , to achieve higher reliability than in the statistical approach . after a first eprom transistor in a low state is accessed , the read access time is the time delay in which the memory output follows the access request . when all of the transistors are low , there is ambiguity in determining this time delay . what is needed is a method for testing the operability and read access delay time of normal memory cells without the addition of a large number of throwaway memory cells or special testing circuits . it is an object of the present invention to provide a method for testing the normal memory cells of a non - volatile memory without writing or erasing any cell , without adding a large number of throwaway cells or cell groups , and by adding a minimum of additional circuitry . it is a further object of this invention to provide a method for testing all normal cells and cell groups for both operability and for speed . the above objects have been met by a method which provides a non - volatile memory having rows and columns of memory cells in a first memory state , an auxiliary transistor cell or row or bank or dummy cell in a second memory state , distinguishable from the first state , and at least one sense amplifier providing a memory output . each memory cell in the first state is associated with a time delay between the cell &# 39 ; s being addressed while in the first state and the cell &# 39 ; s producing a memory output . the memory output of an addressed cell in the first state is a first logic level . the memory output when addressing the auxiliary cell , row , bank or dummy cell is a second logic level . memory cells are tested by first addressing the alternate cell so that memory output is at the second logic level . then a cell or row or column in the main array is addressed and the delay from enabling to appearance of the first logic level at the memory output is measured . the measurement is compared with a limit representing a maximum acceptable delay . if the limit is exceeded , the address is recorded and identified as a weak cell . in this manner it is possible to test one hundred percent of the normal memory cells in an efficient manner . fig1 is a block diagram showing an apparatus for the practiced the present invention . fig2 is a waveform diagram showing a portion of the operation of the apparatus of fig1 . fig3 is a block diagram of a second embodiment of the invention of fig1 . with reference to fig1 there is shown non - volatile memory 10 , upon which may be practiced the present invention . memory 10 has a memory bank 12 having rows and columns of addressable memory cells , of which cell 26 is an example . memory 10 has at least one sense amplifier 16 producing a signal out on memory output line 18 . memory 10 receives address signals on lines 20 . these are connected as inputs to an address decoder 14 for producing a plurality of row select signals , an example of which is shown on line 22 , and a plurality of column select signals , as for example the signal on line 24 . these individual select signals are used to address predetermined rows and columns of normal memory cells . address decoder 14 receives an enable input from inverter 30 in response to a test signal on input line 28 . a selected cell , such as cell 26 , produces an output which is amplified by sense amplifier 16 , producing the output signal out on memory output line 18 . when address decoder 14 addresses an alternate cell , such as a dummy cell , not shown , an output signal out will be at a second logic level . when an address is applied to address decoder 14 and the input signal test is negated , the address decoder is enabled and select signals such as those on line 22 and 24 are generated selecting a cell to be tested , such as cell 26 of fig1 . all the normal memory cells , such as cell 26 , are in a first state . when memory cells in a first state are selected , after an interval of time output signal out will be at a first logic level . the length of this interval is inversely proportional to a time delay of the selected cell . if the resulting interval is less than or equal to a predetermined fixed limit , the cell is said to have passed its test . if , on the other hand , the resulting interval is greater than the fixed limit , the cell has failed its test and the address which resulted in the cell &# 39 ; s selection is identified as a weak cell -- the address itself is referred to as the weak cell even though it is technically the address of a weak cell . in memories which are equipped with means for doing so , the address of a weak cell is recorded and a redundant row or column substituted in its place . fig2 shows several signal waveforms associated with the practice of the method of the present invention upon the apparatus of fig1 . the vertical axis of the diagram is used to represent a logic level for each of the three waveforms . the horizontal axis is used to represent time which increases from left to right . the top waveform represents the input signal test of fig1 . initially shown at a high logic level 30 , it switches at time t 0 , depicted by falling waveform 32 , to a low logic level 34 at which level it remains . the middle waveform represents an input to sense amplifier 16 of fig1 . the signal sa begins at a low logic level 36 and , after an interval of time , begins to rise passing through a switching threshold 38 at time t 1 , continuing to rise to a high logic level 40 at which it remains . the bottom waveform represents output signal out of fig1 . it is shown at the left side of fig2 at a false logic level 42 . at time t 1 it changes level at transition 44 and thereafter remains at a true logic level 46 . the waveforms depicted in fig2 are related to one another by the behavior of elements of memory 10 during an interval beginning just before input signal test goes low at t 0 , initiating a memory cell selection cycle , and continuing beyond the end of the cycle at time t 1 . when test changes from true to false at t 0 , address decoder 14 of fig1 begins a process of decoding an address , ultimately producing , in the example of fig1 select signals on lines 22 and 24 . the simultaneous appearance of select signals on these two lines results in the selection of cell 26 of fig1 . at a point in time intermediate between time t 0 and time t 1 , a signal sa at the input to sense amplifier 16 of fig1 begins to rise from a low level 36 toward a high level 40 . at a level 38 of signal sa which corresponds to a switching threshold of sense amplifier 16 , the output of the sense amplifier , out , will switch from a previously low level 42 to a high level 46 thereby producing an output on line 18 of fig1 . if the interval of time between t 0 and t 1 is less than or equal to the predetermined fixed limit , cell 26 will have passed its test . if on the other hand the above described interval of time exceeds the fixed limit , the address which resulted in the selection of cell 26 will be identified as a weak cell . by repeating this process with each of the cells or cell groups of memory bank 12 of fig1 all the cells can be tested without a need to write into any normal or dummy cell or to erase any cell . an exemplary testing method includes the following steps : ( 1 ) providing an apparatus suitable for the practice of the method such as that depicted in fig1 and described above ; ( 2 ) disabling addressing -- in the example of fig1 by asserting the test signal ; ( 3 ) applying an address to the address decoder -- in the present example by applying the address to the address lines 20 of the apparatus of fig1 ; ( 4 ) enabling address decoding -- in the present example by negating the test signal ; ( 5 ) measuring the length of the interval from the enabling of address decoding to the time of the appearance of an output -- in the present example , measuring from time t 0 to the appearance of a true logic level at signal out at time t 1 ; ( 6 ) comparing the resulting measurement with the predetermined fixed limit and if the measurement is less than or equal to the limit , concluding that the cell has passed the test , but if the measurement exceeds the limit , declaring the address of the cell as a weak cell . the validity of a test of this type arises from the fact that the ability of an addressed cell , previously in a first state , to produce the signal sa of fig2 at the input to sense amplifier 16 of fig1 resulting in an output out on line 18 of fig1 within the predetermined fixed limit provides an acceptable assurance that the cell can be read at a speed guaranteed by the device specifications . further , the testing method allows the testing of all the memory cells or cell groups without the addition of apparatus beyond that needed to disable and enable address decoding . fig3 is a block diagram of a second apparatus upon which the present invention may be practiced . non - volatile memory 50 includes at least two memory banks 52 and 54 . each memory bank has its own address decoder 60 and 62 , and at least one sense amplifier 68 and 80 . the outputs of each sense amplifier are connected to separate data inputs of a selector 56 whose output is controlled by a select signal generated by , for example exclusive - or gate 76 . the selector output provides memory output signal out on line 58 . the address decoders 60 and 62 for each memory bank receive all the address signals except the most significant address signal on input lines 64 . these signals are referred to as the lsb &# 39 ; s to indicate that they do not include the most significant bit of the address . the address signal corresponding to the most significant address bit is referred to as the msb and is received on input line 66 . signal msb is applied directly to the enable input of address decoder 62 for the second memory bank 54 . signal msb is inverted by inverter 74 and the resulting signal is applied to the enable input of address decoder 60 for the first memory bank 52 . with such a connection , the first memory bank 52 will respond to addresses for which the msb is a 0 while the second memory bank 54 will respond to addresses for which the msb is a 1 . thus for example , if each memory bank is capable of responding to 1024 different addresses , the first memory bank 52 will respond to addresses 0 through 1023 while the second memory bank 54 will respond to addresses 1024 through 2047 . the exclusive - or gate 76 , used to select the sense amplifier whose output will provide output signal out on line 58 , receives inputs from msb and an input signal test received on input line 84 . in normal memory operation , test remains at a low logic level or line 84 simply remains unconnected . under these conditions , the output of gate 76 is equal to the logic level of msb . when the logic level of msb is low , the output 78 of sense amplifier 68 is selected to provide output signal out . this selection corresponds to the fact that when the logic level of msb is low , address decoder 60 is enabled producing row and column select signal 70 to the first memory bank 52 . address decoder 62 is disabled . alternatively , when the logic level of msb is high , address decoder 60 is disabled and address decoder 62 is enabled generating row and column select signals 72 to the second memory bank 54 . the output 82 of sense amplifier 80 is selected to produce the output signal out on line 58 . thus it can be seen that the msb 66 can be used to enable or disable the output of the address decoders 60 and 62 . but the disabling of one address decoder assures the enabling of the other address decoder as can be seen in fig3 . under normal operating conditions , the selector 56 will select the output of the sense amplifier receiving an input from the memory bank whose address decoder is enabled . when the msb 66 is being used to disable the address decoder for a given memory bank , we do not want the other memory bank , which is enabled , to produce an output on line 58 . therefore the test signal is provided to reverse the meaning of signal msb as it relates to output selection . when the logic level of signal test is false , msb selects the output of the memory bank whose address decoder is enabled . but when the logic level of signal test is high , the meaning of msb with respect to selection of memory output is inverted by the action of the exclusive - or gate 76 . while the logic level of test is high , msb selects the output of the second memory bank 54 when msb is 0 , and selects the output of the first memory bank 52 when msb is 1 . this result is the reverse of the normal action of msb with respect to output selection , but is useful during testing as will be seen . an application of the testing method of the present invention to the apparatus of fig3 includes the following steps : ( 1 ) addressing a cell or cell group in one of the memory banks , assuming for this example the first memory bank 52 and applying the lsb &# 39 ; s to lines 64 ; ( 2 ) changing address decoder 60 by making the logic level of signal msb be 1 ; ( 3 ) overriding output selection to select the output of the first memory bank 52 by asserting input signal test ; ( 4 ) making msb a 0 to enable address decoder 60 and negating signal test to maintain selection of the output of the first memory bank 52 ; ( 5 ) measuring the length of the interval between the time of enabling the address decoder 60 and the appearance of an output on line 58 ; ( 6 ) comparing the length of the measured interval with a predetermined fixed limit and if the length is less than or equal to the limit , declaring that the addressed cell or cell group has passed the test , and if the length exceeds the limit , declaring address of the cell or cell group to be a weak cell ; ( 7 ) repeating the steps from step ( 1 ) using a different address until testing of the first memory bank is completed , then reversing the logic level of signal msb in all steps and repeating the steps from step ( 1 ) until testing of the second memory bank is completed . the additional steps of recording addresses of weak cells and substituting redundant rows or columns as necessary are to be included for memories having such capabilities . the details of address decoder enabling and output selection and override discussed above with respect to use of the invention with the apparatus of fig3 can be easily modified for alternative addressing and selection configuration . the steps which are present in any application of the invention include : switching address decoding for the memory bank being tested ; selecting the output of the memory bank being tested ; addressing the cell or cell group to be tested ; enabling the address decoding for the memory bank being tested ; measuring the delay from address enabling to appearance of an output ; comparing the measurement with the limit and taking appropriate follow up action .