Programmable logic array
First Claim
Patent Images
1. A programmable logic array comprising:
- a first array having a plurality of first cells arranged in rows and columns for providing first logical outputs respectively associated with the columns of said first cells, said logical outputs including first logical combinations of logical inputs respectively available at said first cells of respective rows, said first logical combinations being of selectively programmed ones of said first cells in respective columns;
a second array having a plurality of second cells arranged in rows and columns for providing second logical combinations of said first array logical outputs respectively available at said second cells of respective rows, said second logical combinations being of selectively programmed ones of said second cells in respective columns;
storage means for selectively storing either (a) first array row address information and first array row programming information, or (b) second array row address information and second array row programming information;
row addressing means responsive to said first array row address information and associated with said first array for selectively enabling a selected row of said first array for programming pursuant to said first array row programming information stored in said storage means;
switching means respectively associated with said columns of cells of said first array for controlling said first logical outputs to alternatively provide said second array row address information as said first array logical outputs; and
means responsive to said second array row address information contained in said first array logical outputs for enabling the programming of a selected row of said second array pursuant to said second array programming information stored in said storage means.
3 Assignments
0 Petitions
Accused Products
Abstract
A programmable logic array is disclosed employing arrays of electrically erasable and programmable cells. The device includes a dual purpose programming circuit which is employed to provide programming data to the AND array to program the AND array cells, and to provide OR array row selection data during OR array programming, thereby eliminating the need for a separate OR array row decoder. A method and apparatus is also disclosed for efficiently testing the AND array cells and input circuitry by bulk stripe programming the array cells.
144 Citations
15 Claims
-
1. A programmable logic array comprising:
-
a first array having a plurality of first cells arranged in rows and columns for providing first logical outputs respectively associated with the columns of said first cells, said logical outputs including first logical combinations of logical inputs respectively available at said first cells of respective rows, said first logical combinations being of selectively programmed ones of said first cells in respective columns; a second array having a plurality of second cells arranged in rows and columns for providing second logical combinations of said first array logical outputs respectively available at said second cells of respective rows, said second logical combinations being of selectively programmed ones of said second cells in respective columns; storage means for selectively storing either (a) first array row address information and first array row programming information, or (b) second array row address information and second array row programming information; row addressing means responsive to said first array row address information and associated with said first array for selectively enabling a selected row of said first array for programming pursuant to said first array row programming information stored in said storage means; switching means respectively associated with said columns of cells of said first array for controlling said first logical outputs to alternatively provide said second array row address information as said first array logical outputs; and means responsive to said second array row address information contained in said first array logical outputs for enabling the programming of a selected row of said second array pursuant to said second array programming information stored in said storage means. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for programming the cells of a programmable logic array having (a) a first array of cells arranged in rows and columns for providing first logical outputs respectively associated with the columns of first cells, where the first logical outputs include first logical combinations of logical inputs respectively available at the cells of respective rows, and (b) a second array of cells arranged in rows and columns for providing second logical outputs respectively associated with the columns of second cells, where the second logical outputs include logical combinations of the first logical outputs respectively available at the second cells of respective rows, comprising the steps of:
-
(a) serially shifting into a shift register first array row selection information and program information for a selected row of cells of the first array to be programmed; (b) enabling the selected row of cells of the first array to store the program information contained in the shift register; (c) repeating the foregoing steps (a) through (b) as required to achieve the desired programming of the first array of cells; (d) serially shifting into the shift register second array row selection information and program information for a selected row of the second array to be programmed; (e) enabling each of the logical outputs of the first array to respectively provide the row selection information to the second array of cells; (f) enabling the selected row of cells in the second array to store the program information contained in the shift register; and (g) repeating the foregoing steps (d) through (f) to achieve the desired programming of the second array of cells.
-
-
9. A method for functional testing of a programmable logic device having an array of electrically erasable and reprogrammable cells arranged in rows and columns, the programmable logic device providing logical outputs which include logical combinations of logical inputs provided to the electrically erasable array, comprising the steps of:
-
(a) erasing the array cells so that none of the cells contribute to the logical outputs when interrogated; (b) programming in a single programming cycle the cells in a first set of alternating rows to contribute to the logical outputs when interrogated; (c) driving the device inputs with device input signals so that the logical inputs to the first set of rows are at a logical level which does not interrogate the cells of said rows and the logical inputs to the second set of rows are at the cell interrogation logical level; (d) comparing the logical outputs with an expected output signal pattern; (e) sequentially toggling the state of each device input signal and comparing the logical outputs with expected output signal patterns to verify the operation of the contributing cells and associated input circuitry; (f) erasing the array cells so that none of the cells in the first or second sets of rows contribute to the logical outputs when interrogated; (g) programming in a single programming cycle the cells in said second set of rows to contribute to the logical outputs when interrogated; (h) driving the device inputs with device input signals so that the logical inputs to the first set of rows are at the cell interrogation logical level, and the logical inputs to the second set of rows are at a logical level which does not interrogate the row cells; and (i) repeating steps (d) and (e). - View Dependent Claims (10, 11)
-
-
12. A programmable logic device for providing logical outputs which include logical combinations of device input signals, comprising:
-
a plurality of device lines for receiving the device input signals; an input circuit coupled to the device input lines for providing logical array input signals which are true and complement versions of the device input signals; an array of electrically erasable and reprogrammable cells arranged in rows and columns, each row of cells being coupled to a particular one of said logical array input signals, said array providing logical combinations of the array input signals; means responsive to said array for providing logical outputs which include said logical combinations of the array input signals; means for selectively programming said cells to achieve a desired device logic configuration; and
testing means for testing the operation of the programmable logic device, comprising means for bulk stripe programming in a single programming cycle all cells in rows associated with either the true or complement versions of the device input signals to a first state wherein the cells contribute to the logical outputs when interrogated. - View Dependent Claims (13, 14, 15)
-
Specification