EP0358773A1 - Microcomputer - Google Patents
Microcomputer Download PDFInfo
- Publication number
- EP0358773A1 EP0358773A1 EP19890901876 EP89901876A EP0358773A1 EP 0358773 A1 EP0358773 A1 EP 0358773A1 EP 19890901876 EP19890901876 EP 19890901876 EP 89901876 A EP89901876 A EP 89901876A EP 0358773 A1 EP0358773 A1 EP 0358773A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- instruction
- byte
- nand
- pla
- decoder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30156—Special purpose encoding of instructions, e.g. Gray coding
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318516—Test of programmable logic devices [PLDs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
- G06F11/2736—Tester hardware, i.e. output processing circuits using a dedicated service processor for test
Definitions
- the present invention relates to a microcomputer including a programmable logic array therein (hereinafter referred to as MC) and a method of testing the same.
- MC programmable logic array
- a conventional MC includes a data bus, an instruction register IR, a programmable logic array PLA, a data register D, a stack pointer SP, accumulators A, B, temporary registers TRB, TRC, a programmable counter PC, a ROM, and a RAM.
- the program counter specifies instructions stored in the ROM, the instructions being sequentially transmitted to the instruction register IR via the data bus.
- the PLA includes control output lines connected to internal registers and memories, etc., decodes instruction data transmitted from the IR, and delivers control signals such as an EM (enable memory) signal, a WACC (write accumulator) signal, an EROM (enable read only memory) signal, and a WM (write memory) signal.
- EM encodeable memory
- WACC write accumulator
- EROM encodeable read only memory
- WM write memory
- the ROM stores instruction codes constituting instructions shown in Fig. 2 for example.
- An instruction “ADD A, # N” which is represented by an instruction code “1010, 1010” or “A, A”
- An instruction "ADD A, M” which is represented by an instruction code "0110, 0101” or "6, 5", means that the contents stored in the accumulator A are added with the contents stored in the RAM, and then a result of the addition is stored into the accumulator.
- the PLA 200 includes, as illustrated in Fig. 3 for example, a plurality of NAND decoders 1, precharge circuits 2, 3, and a sense amplifier 18.
- the NAND decoder 1 comprises enhancement FETs indicated by circles (0) and depressionFETs indicated by crosses (x).
- the precharge FET 2 has its one terminal connected to one terminal of the N AND decoder 1 and its other terminal connected to the earth.
- the precharge FET 3 has its one terminal connected to the other terminal of the NA N D decoder 1 and its other terminal connected to a power supply V DD .
- Those precharge FETs 2, 3 further have their gates connected to precharge signal lines PRC, respectively.
- the control signal EROM opens the output gate of the ROM to fetch out the instruction code stored in the ROM onto the bus and the control signal WIR opens the input gate of the instruction register to store the instruction code on the bus in the instruction register 100.
- the instruction code fetched out from the instruction register IR 100 is "'A, A"
- the NAND decoders 1 on decode lines L'l, L'3 3 become conductive in a machine cycle interval M2 to permit the sense amplifier 18 to input a signal "H" into the AND gate 6.
- the control output signal EACC is generated on a control output signal line 4 via the. AND gate 6, and in a timing cycle interval T4 the control output signal WACC is generated.
- the instruction codes is "6, 5"
- the NAND decoders 1 located on decode lines L'2, L'4 become conductive in a machine cycle interval M2 to permit the sense amplifier 18 to input a signal "H" into the AND gate 6. Therefore, in the timing cycle interval T3 the control output signal ACC is generated on the control output signal line 4, and in a timing cycle interval T4 the control output signal WACC is generated.
- the control signals such as EROM, WIR, PCUP, and the like illustrated in Fig. 1 are issued from a timing control circuit T/C.
- Such a conventional PLA circuit however has a problem that all instruction codes must be decoded to generate control signals in need of the execution of the instructions.
- One instruction code generally requires four decode lines on the average, for example the instruction "A, A” requires the decode lines L'1, L'3, the instruction "6, 5" requires the decode lines L'2, L'4, L'5, ... That is, about 100 instructions.require 400 through 600 decode lines in all. If the width of a single decode line of PLA circuit which is formed on a semiconductor chip is assumed to be 10p m upon integrating the PLA, the PLA has its entire width ranging from 4 to 7 mm and hence occupies a wide areas of the semiconductor chip, causing a problem of its being made large sized.
- a typical MC includes about output lines 4 of 100 through 200 for the control signals issued from the PLA. However, those control signal output lines 4 are connected to input/output gates of varieties of registers included in the MC but not connected to external output terminals. This does not allow a direct check on that any control signal is issued from the PLA. Accordingly, to test the existence of any short-circuit along the wirings in the PLA and that of any abnormal FET in the same, a MC program stored in the ROM is first executed in succession for every instructions.
- the aforementioned test operation to test the PLA requires a data check concerning internal circuits amounting 1000 to 100000 steps using the tester, substantially making it impossible to achieve the complete test.
- the tester since the tester must usually be employed for varieties of test excepting the aforementioned object, use of such an expensive tester over a long period of time makes uneconomical the associated device.
- a program for such a test is very complicated, requiring much labor for preparation thereof.
- a microcomputer includes in general varieties of instructions amounting in total about one hundred, some of which have a very similar format.
- the foregoing instructions "ADD A, #N” and “ADD A, M” are the same instruction of addition, and are different only in that the former allows data to be fetched from "#N” or the second byte thereof or the buffer from a memory designated at " M ".
- Such similar instructions very similar as such have almost common formats of control line signals and timing of the same.
- a microcomputer in accordance with the first embodiment of the invention comprises, in view of a feature of those similar instructions being common in operation timing, a memory for storing a first instruction including a first byte and a second instruction including a first byte and a second byte having the same code as that of the first byte of the first instruction, an instruction register and means for loading the second byte of the second instruction to the instruction register after decoding the first byte of the second instruction.
- a test circuit for testing a microcomputer which has a programmable logic array, said programmable logic array comprising :
- Fig. 1 is a circuit block diagram illustrating a typical microcomputer (MC); Fig, 2 is a view illustrating formats of conventional instruction code; Fig. 3 is a circuit block diagram illustrating a conventional programmable logic array; Fig. 4 is a circuit block diagram illustrating a programmable logic array (PLA) of an embodiment according to the present invention; Fig. 5 is a view illustrating formats of instruction codes in the embodiment of Fig. 4; Fig. 6 is a timing chart illustrating the operation of the embodiment of Fig. 4; Fig. 7 is a logic circuit diagram illustrating a sense amplifier for use in the present invention; Fig. 8 is a logic circuit diagram illustrating a delay circuit for use in the present invention; Fig.
- PDA programmable logic array
- FIG. 9 is a circuit diagram illustrating a PLA test circuit of the embodiment according to the present invention.
- Fig. 10 is a logic circuit diagram illustrating an OR gate for use in the present invention;
- Fig. 11 is a timing chart illustrating a test on the PLA of the embodiment according to the present invention;
- Fig. 12 is a circuit diagram illustrating a PLA test circuit of another embodiment according to the present invention.
- Fig. 5 illustrates addition instructions "ADD A, #N” and "ADD A, M", the latter being analogous to the former addition instruction "ADD, A, M” previously described in the prior art.
- the former addition instruction “ADD A, #N” is not different from the conventional instruction code illustrated in Fig. 2.
- a first byte code 11 of a certain addition instruction “ADD A, M” is not different from the conventional one, but a second byte code 12 of the same possesses the same code as the first byte code 13 of the analogous addition instruction "ADD A, #N".
- a decode line L1 is a NAND decoder for a code “6, 5", that is, the addition instruction "Add A, M”, which is operated in a machine cycle interval M1. Namely, when the first byte instruction code "6, 5" of the instruction "ADD A, M" is entered into an instruction register 106, the decode line L1 is activated (i.e., to a "L” level) to permit a "H" level signal to be entered into a delay circuit 17 via a sense amplifer 18.
- the sense amplifier 18 and the delay circuit 17 are arranged as illustrated in Figs. 7 and 8.
- the delay circuit D issues a control signal WIR in the next timing cycle interval M2, T1 under the control of gates 14, 15, 16, to open an instruction register IR gate for thereby loading the instruction register IR with a second byte code "A, A" from a bus. Simultaneously, a control line signal WTRB is prohibited from being generated.
- the decode line L1 decodes the first byte of the instruction as described above, the delay circuit 17, and the gates 14, 15, 16 load the instruction register IR with the second byte of that instruction.
- a decode line L 4 corresponds to the decode line L 5 shown in the circuit diagram of the conventional PLA of F ig. 3 . It therefore issues a control signal EM in a timing cycle interval M1, T4.
- Decode lines L2, L3 correspond to L'1, L'3 involved in the conventional PL A circuit of Fig. 3, respectively, which issue a control signal EACC in a timing cycle interval M2, T3 and a control signal WACC in a timing cycle interval M2, T4.
- the PLA of the embodiment according to the first invention illustrated in Fig. 4 can exhibit the operation timing of control signals illustrated in Fig. 6, as in the covnentional PLA shown in Fig. 3. It should here be understood from a comparison of the decode lines in the PLA of Figs. 3 and 4 that the conventional decode lines L'2 and L'4 are not required but with L1 which is inexistent in the conventional case.
- Decode lines for control signals WTARC and FADD can also be reduced, although not illustrated in the PLA circuit diagram of Fig. 4.
- the MC includes substantially about 16 groups of analogous instructions such as ADD, ADC, SUB, SBB, OR, AND, EOR, INC, DEC, CMP, CPL, RRC, RLC, SRC, SLC, and the like.
- analogous instructions such as ADD, ADC, SUB, SBB, OR, AND, EOR, INC, DEC, CMP, CPL, RRC, RLC, SRC, SLC, and the like.
- 5 decode lines on the average can be reduced among analogous instructions and about 80 decode lines as a whole can be reduced.
- first and second byte instruction codes were shown as being commmon as an illustrative example, a combination of the second and third bytes may also be possible or with a replacement thereof for the machine cycles a combination of second and third machine cycles may be possible, as a matter of course.
- a PLA circuit which includes in itself a NAND decoder 1, precharge FETs 2, 3, and a sense amplifier, etc., is constructed as in the first embodiment.
- an OR gate 21 has its input connected to a test terminal 22 and a PRC (precharge) signal line and has its output connected to a gate of a precharge FET 2.
- the precharge FET which is of an enhancement type as described previously, grounds the NAND decoder 1 at all times when the test terminal 22 is "H" at its input together with the conventional PRC input being “H", or when a test is executed.
- an external power supply 25 is connected via an external ammeter 24 to a VDD terminal 23 disposed on a semiconductor chip.
- the VDD terminal 23 is connected to one end of a precharge FET 3 whose other end is connected to the output of the NAND decoder 1.
- the ammeter 24 is a current measuring unit in a general-purpose tester
- the DC power supply 25 is a +5V one included in the same tester.
- Fig. 11 is a timing chart illustrating a test operation for the PLA in the MC in the embodiment according to the second invention. In what follows, operation of the just mentioned test operation will be described with reference to Fig. 11 and to the circuit diagram of Fig. 9.
- the test terminal 22 is kept at a "H" level.
- the precharge FET 2 becomes conductive to permit the NAND decoder 1 to be grounded at its one end at all times.
- an instruction is entered. For example, when an instruction "MOV A, B" is entered, the NAND decoder 1 for an instruction code corresponding to that instruction becomes conductive.
- the precharge signal (PRC) is at a "H” level, and the PRC becomes a "L" level.
- the precharge FET 3 becomes conductive because of its being of a P channel type, and in the timing T1 a current IDD from the power supply 25 flows through a current route: precharge FET 3, NAND decoder 1, and precharge FET 2 because all those elements become conductive thereupon, allowing a current corresponding to the single NAND decoder or that corresponding to the single control signal to be read by the ammeter 24.
- Such a conduction current through the single NAND decoder is approximately 50 ⁇ A when the MC is constructed with a CMOS semiconductor. In opposition, if a current to that degree is detected, then it can be estimated that one control signal has been activated. In addition, although in the above situation a current flowed in the timing T1 corresponding to one control signal, the reason is that since the timing lies during the time when an instruction is entered, only that instruction is selected. Then, when the PRC becomes a "L" level in the timing T2, the PRC becomes a "H” level and the precharge FET 3 is switched off. Hereby, no power supply current IDD flows.
- the measured number of NAND decoders made conductive is not equal to that of NAND decoders made conductive on the design in each timing, allowing a bad PLA to be immediately detected by a tester program.
- the PLA of a MC includes ingeneral NAND decoders amounting to about 100 through 500, requiring the steps of its test of about 400 through 2000 even when the test is assumed to be done in respective timings of T1 and T2. This corresponds to a very short time.
- a PLA circuit of another embodiment according to the second invention illustrated in Fig. 12 is the same in its operation principle as that of the first embodiment illustrated in Fig. 9. Namely, a precharge FET 2 i-s made conductive to establish a DC path through a NAND decoder 1. In this situation, if there is any signal to be decoded corresponding to an input from an instruction register 100, a T timing input, and a M timing input, then a DC current flows from a power supply VDD via a precharge FET 3. The current is compared with the number of decoded signals for determination of the quality of the measurement.
- the present invention is applicable also for a PLA of a microprocessor.
- the number of decode lines can be reduced by employing analogous instruction codes as being common. That is, since the second byte of a certain instruction set among analogous instruction sets can intactly utilize a control signal output of the first byte of the certain instruction set being an analogous instruction of that instruction. Accordingly, if there is a decode line only for the first byte of the certain instruction set, then the intact use of that decode line in the analogous instruction enables the analogous instruction to be executed.
- the first invention which employs a certain decode line for other decode lines, can reduce the occupation area of those decode lines on the chip compared with the prior MCs, which include for a different instruction code a corresponding decode line.
- 400 through 600 decode lines can be reduced by about 80 ones, and the area occupied by the PLA on the whole semiconductor chip area can be reduced by 10 through 20 %.
- the first invention can thus reduce the chip area greatly, keeping the same function of the device as in the conventional PLA circuit, and assuring very high industrial applicability.
- the number of the conducted NAND decoders. is measured on the basis of the power supply current IDD in the part of the PLA of the MC. Accordingly, the power supply current IDD may be measured only for all timings of the instruction sets possessed by the MC. This simplifies a data check in the conventional case amounting 10000 through 100000 steps to about 2000 steps.
- a direct test of the circuit part of the PLA can be achieved without requiring a check on data stored in registers, etc., which can be checked externally of the MC. Thus, greater shortening of the time required for a test and sharp reduction of the step number for preparation of a test program can be realized, assuring very high industrial applicability.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Executing Machine-Instructions (AREA)
- Microcomputers (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Abstract
Description
- The present invention relates to a microcomputer including a programmable logic array therein (hereinafter referred to as MC) and a method of testing the same.
- As illustrated in Fig. 1, a conventional MC includes a data bus, an instruction register IR, a programmable logic array PLA, a data register D, a stack pointer SP, accumulators A, B, temporary registers TRB, TRC, a programmable counter PC, a ROM, and a RAM.
- The program counter specifies instructions stored in the ROM, the instructions being sequentially transmitted to the instruction register IR via the data bus.
- The PLA includes control output lines connected to internal registers and memories, etc., decodes instruction data transmitted from the IR, and delivers control signals such as an EM (enable memory) signal, a WACC (write accumulator) signal, an EROM (enable read only memory) signal, and a WM (write memory) signal. Those control signals are to switch on and off the internal registers and the memories, and tranfer the data stored in the RAM, accumulator, and ROM, etc., onto the data bus or write the data on the data bus in the RAM and accumulator, etc.
- The ROM stores instruction codes constituting instructions shown in Fig. 2 for example. An instruction "ADD A, #N", which is represented by an instruction code "1010, 1010" or "A, A", means that the contents stored in the accumulator A are added with #N or the contents of the second byte, and then, a result of the addition is stored into the accumulator. An instruction "ADD A, M", which is represented by an instruction code "0110, 0101" or "6, 5", means that the contents stored in the accumulator A are added with the contents stored in the RAM, and then a result of the addition is stored into the accumulator.
- The
PLA 200 includes, as illustrated in Fig. 3 for example, a plurality ofNAND decoders 1,precharge circuits sense amplifier 18. TheNAND decoder 1 comprises enhancement FETs indicated by circles (0) and depressionFETs indicated by crosses (x). The precharge FET 2 has its one terminal connected to one terminal of the NAND decoder 1 and its other terminal connected to the earth. Theprecharge FET 3 has its one terminal connected to the other terminal of the NAND decoder 1 and its other terminal connected to a power supply VDD. Thoseprecharge FETs - In the following, operation of the PLA circuit shown in Fig. 3 will be described with reference to timing charts shown in Figs. 6(a), (b). In a time interval T1 of a timing cycle in an interval M1 of a machine cycle, the control signal EROM opens the output gate of the ROM to fetch out the instruction code stored in the ROM onto the bus and the control signal WIR opens the input gate of the instruction register to store the instruction code on the bus in the
instruction register 100. When the instruction code fetched out from theinstruction register IR 100 is "'A, A", theNAND decoders 1 on decode lines L'l,L'3 3 become conductive in a machine cycle interval M2 to permit thesense amplifier 18 to input a signal "H" into theAND gate 6. Therefore, in a timing cycle interval T3 the control output signal EACC is generated on a controloutput signal line 4 via the. ANDgate 6, and in a timing cycle interval T4 the control output signal WACC is generated. Additionally, when the instruction codes is "6, 5", theNAND decoders 1 located on decode lines L'2, L'4 become conductive in a machine cycle interval M2 to permit thesense amplifier 18 to input a signal "H" into theAND gate 6. Therefore, in the timing cycle interval T3 the control output signal ACC is generated on the controloutput signal line 4, and in a timing cycle interval T4 the control output signal WACC is generated. Here, the control signals such as EROM, WIR, PCUP, and the like illustrated in Fig. 1 are issued from a timing control circuit T/C. - Such a conventional PLA circuit however has a problem that all instruction codes must be decoded to generate control signals in need of the execution of the instructions. One instruction code generally requires four decode lines on the average, for example the instruction "A, A" requires the decode lines L'1, L'3, the instruction "6, 5" requires the decode lines L'2, L'4, L'5, ... That is, about 100 instructions.require 400 through 600 decode lines in all. If the width of a single decode line of PLA circuit which is formed on a semiconductor chip is assumed to be 10p m upon integrating the PLA, the PLA has its entire width ranging from 4 to 7 mm and hence occupies a wide areas of the semiconductor chip, causing a problem of its being made large sized.
- Hereupon, such a PLA incorporated in the MC is in need of any test on whether or not it is operational in a proper manner. Such a test is carried out two or three times on the last stage of the manufacture of semiconductors or in a packaging process of those semiconductors. A typical MC includes about
output lines 4 of 100 through 200 for the control signals issued from the PLA. However, those controlsignal output lines 4 are connected to input/output gates of varieties of registers included in the MC but not connected to external output terminals. This does not allow a direct check on that any control signal is issued from the PLA. Accordingly, to test the existence of any short-circuit along the wirings in the PLA and that of any abnormal FET in the same, a MC program stored in the ROM is first executed in succession for every instructions. Then, contents in a register being an execution object of each instruction and contents in all registers other than the execution object of each instruction are read out each time for their checks. It is hereby checked that decoding and execution control of the instructions are carried out correctly, and tested indirectly that the PLA is normal. When for example an instruction "MOV A, B" is given from the outside to the MC and executed, it is needed to check the contents stored in an accumulator (ACC) and a temporary register B (TRB) for confirmation of a fact that the contents stored in the TRB have been moved into the ACC,, and to check that there is no change in the contents stored in other registers and the like after fetching out those contents to the outside followed by execution of instruction "MOVE A, B". However, the aforementioned test operation to test the PLA requires a data check concerning internal circuits amounting 1000 to 100000 steps using the tester, substantially making it impossible to achieve the complete test. In addition, since the tester must usually be employed for varieties of test excepting the aforementioned object, use of such an expensive tester over a long period of time makes uneconomical the associated device. Furthermore, a program for such a test is very complicated, requiring much labor for preparation thereof. - In view of the drawback of the prior art , it is an object of the present invention to reduce in one aspect the absolute number of decode lines keeping the same function as in the prior art , and to assure for a short period of time in the other aspect a test on whether or not all wirings in the programmable logic array circuit are operational normally.
- A microcomputer includes in general varieties of instructions amounting in total about one hundred, some of which have a very similar format. For example, the foregoing instructions "ADD A, #N" and "ADD A, M" are the same instruction of addition, and are different only in that the former allows data to be fetched from "#N" or the second byte thereof or the buffer from a memory designated at "M". Such similar instructions very similar as such have almost common formats of control line signals and timing of the same.
- A microcomputer in accordance with the first embodiment of the invention comprises, in view of a feature of those similar instructions being common in operation timing, a memory for storing a first instruction including a first byte and a second instruction including a first byte and a second byte having the same code as that of the first byte of the first instruction, an instruction register and means for loading the second byte of the second instruction to the instruction register after decoding the first byte of the second instruction.
- In accordance with the second embodiment of the invention, there is provided a test circuit for testing a microcomputer which has a programmable logic array, said programmable logic array comprising :
- (a) a NAND type decoder having (i) inputs for receiving an instruction code and a timing signal, (ii) a control signal output line, and (iii) a plurality of MOSFETs serially connected ;
- (b) a first precharge MOSFET connected between one end of the output line of the decoder and the ground ; and
- (c) a second precharge MOSFET connected between the other end of the output line of the decoder and a power supply; the improvement wherein the test circuit further has means for making the first precharging MOSFET conductive during testing the programmable logic array.
- Fig. 1 is a circuit block diagram illustrating a typical microcomputer (MC); Fig, 2 is a view illustrating formats of conventional instruction code; Fig. 3 is a circuit block diagram illustrating a conventional programmable logic array; Fig. 4 is a circuit block diagram illustrating a programmable logic array (PLA) of an embodiment according to the present invention; Fig. 5 is a view illustrating formats of instruction codes in the embodiment of Fig. 4; Fig. 6 is a timing chart illustrating the operation of the embodiment of Fig. 4; Fig. 7 is a logic circuit diagram illustrating a sense amplifier for use in the present invention; Fig. 8 is a logic circuit diagram illustrating a delay circuit for use in the present invention; Fig. 9 is a circuit diagram illustrating a PLA test circuit of the embodiment according to the present invention; Fig. 10 is a logic circuit diagram illustrating an OR gate for use in the present invention; Fig. 11 is a timing chart illustrating a test on the PLA of the embodiment according to the present invention; and Fig. 12 is a circuit diagram illustrating a PLA test circuit of another embodiment according to the present invention.
- In the following, a first embodiment of the invention will be described with reference to Figs. 4 through 8.
- Fig. 5 illustrates addition instructions "ADD A, #N" and "ADD A, M", the latter being analogous to the former addition instruction "ADD, A, M" previously described in the prior art. The former addition instruction "ADD A, #N" is not different from the conventional instruction code illustrated in Fig. 2. Against this, a first byte code 11 of a certain addition instruction "ADD A, M" is not different from the conventional one, but a
second byte code 12 of the same possesses the same code as thefirst byte code 13 of the analogous addition instruction "ADD A, #N". - As illustrated in Fig. 4, which exhibits a test circuit for a PLA of the embodiment according to the first invention, a decode line L1 is a NAND decoder for a code "6, 5", that is, the addition instruction "Add A, M", which is operated in a machine cycle interval M1. Namely, when the first byte instruction code "6, 5" of the instruction "ADD A, M" is entered into an instruction register 106, the decode line L1 is activated (i.e., to a "L" level) to permit a "H" level signal to be entered into a
delay circuit 17 via a sense amplifer 18. Here, thesense amplifier 18 and thedelay circuit 17 are arranged as illustrated in Figs. 7 and 8. The delay circuit D issues a control signal WIR in the next timing cycle interval M2, T1 under the control ofgates delay circuit 17, and thegates decode line L4 corresponds to thedecode line L5 shown in the circuit diagram of the conventional PLA of Fig. 3. It therefore issues a control signal EM in a timing cycle interval M1, T4. Decode lines L2, L3 correspond to L'1, L'3 involved in the conventional PLA circuit of Fig. 3, respectively, which issue a control signal EACC in a timing cycle interval M2, T3 and a control signal WACC in a timing cycle interval M2, T4. - Thus the PLA of the embodiment according to the first invention illustrated in Fig. 4 can exhibit the operation timing of control signals illustrated in Fig. 6, as in the covnentional PLA shown in Fig. 3. It should here be understood from a comparison of the decode lines in the PLA of Figs. 3 and 4 that the conventional decode lines L'2 and L'4 are not required but with L1 which is inexistent in the conventional case.
- Decode lines for control signals WTARC and FADD can also be reduced, although not illustrated in the PLA circuit diagram of Fig. 4.
- The MC includes substantially about 16 groups of analogous instructions such as ADD, ADC, SUB, SBB, OR, AND, EOR, INC, DEC, CMP, CPL, RRC, RLC, SRC, SLC, and the like. In a typical MC operational with about 8 bits, 5 decode lines on the average can be reduced among analogous instructions and about 80 decode lines as a whole can be reduced.
- Although in the above description the first and second byte instruction codes were shown as being commmon as an illustrative example, a combination of the second and third bytes may also be possible or with a replacement thereof for the machine cycles a combination of second and third machine cycles may be possible, as a matter of course.
- In succession, an embodiment of a test circuit for a microcomputer according to the second embodiment will be described with reference to Figs. 9, 10, and 11. Here, the like symbols shall be applied to the like constituent elements as those of the conventional one and the first invention, and the description thereof will here be omitted. Namely, a PLA circuit which includes in itself a
NAND decoder 1,precharge FETs OR gate 21 has its input connected to atest terminal 22 and a PRC (precharge) signal line and has its output connected to a gate of aprecharge FET 2. The precharge FET, which is of an enhancement type as described previously, grounds theNAND decoder 1 at all times when thetest terminal 22 is "H" at its input together with the conventional PRC input being "H", or when a test is executed. On the contrary, anexternal power supply 25 is connected via anexternal ammeter 24 to aVDD terminal 23 disposed on a semiconductor chip. TheVDD terminal 23 is connected to one end of aprecharge FET 3 whose other end is connected to the output of theNAND decoder 1. In the present embodiment, theammeter 24 is a current measuring unit in a general-purpose tester, and theDC power supply 25 is a +5V one included in the same tester. - Fig. 11 is a timing chart illustrating a test operation for the PLA in the MC in the embodiment according to the second invention. In what follows, operation of the just mentioned test operation will be described with reference to Fig. 11 and to the circuit diagram of Fig. 9.
- In a test interval for the PLA, the
test terminal 22 is kept at a "H" level. Hereby, theprecharge FET 2 becomes conductive to permit theNAND decoder 1 to be grounded at its one end at all times. In succession, in the timing T1, an instruction is entered. For example, when an instruction "MOV A, B" is entered, theNAND decoder 1 for an instruction code corresponding to that instruction becomes conductive. In the timing T1, the precharge signal (PRC) is at a "H" level, and the PRC becomes a "L" level. Hereby, theprecharge FET 3 becomes conductive because of its being of a P channel type, and in the timing T1 a current IDD from thepower supply 25 flows through a current route:precharge FET 3,NAND decoder 1, andprecharge FET 2 because all those elements become conductive thereupon, allowing a current corresponding to the single NAND decoder or that corresponding to the single control signal to be read by theammeter 24. - Such a conduction current through the single NAND decoder is approximately 50µ A when the MC is constructed with a CMOS semiconductor. In opposition, if a current to that degree is detected, then it can be estimated that one control signal has been activated. In addition, although in the above situation a current flowed in the timing T1 corresponding to one control signal, the reason is that since the timing lies during the time when an instruction is entered, only that instruction is selected. Then, when the PRC becomes a "L" level in the timing T2, the PRC becomes a "H" level and the
precharge FET 3 is switched off. Hereby, no power supply current IDD flows. - It is here assumed that two control outputs are activated to a "H" level in a timing T3 for execution of the instruction "MOV A, B". Hereupon, two
NAND decoders 1 have been conductive unless there is any short-circuit through wirings and any disconnection therealong. In this situation, the PRC changes to a "H" level in the timing T3, a conduction current flows through theprecharge FET 3 because theNAND decoder 1 and theprecharge FET 3 have already been conductive. Since thereupon the two NAND decoders have been conductive, there flows approximately 100p A of the power supply current IDD corresponding to the two control signals. - In succession, it is assumed on the design that the four control signal outputs have been at an active "A" level in the timing T4. Since in this situation, the four NAND decoders are conductive as in the timing T3, there flows the power supply current corresponding to the four control signal outputs. It is thus possible to measure the number of the control signal outputs by measuring the power supply current in each timing. Accordingly, a complete test can be achieved for all NAND decoders. If there is any trouble such as disconnection or short-circuit of wirings or bad transistors,or the like in the PLA in the manufacture of semiconductors of the MC, then the measured number of NAND decoders made conductive is not equal to that of NAND decoders made conductive on the design in each timing, allowing a bad PLA to be immediately detected by a tester program.
- The PLA of a MC includes ingeneral NAND decoders amounting to about 100 through 500, requiring the steps of its test of about 400 through 2000 even when the test is assumed to be done in respective timings of T1 and T2. This corresponds to a very short time.
- A PLA circuit of another embodiment according to the second invention illustrated in Fig. 12 is the same in its operation principle as that of the first embodiment illustrated in Fig. 9. Namely, a
precharge FET 2 i-s made conductive to establish a DC path through aNAND decoder 1. In this situation, if there is any signal to be decoded corresponding to an input from aninstruction register 100, a T timing input, and a M timing input, then a DC current flows from a power supply VDD via aprecharge FET 3. The current is compared with the number of decoded signals for determination of the quality of the measurement. - Although in the present specification the PLA of the MC was described, the present invention is applicable also for a PLA of a microprocessor.
- According to the MC of the first invention, as described above, the number of decode lines can be reduced by employing analogous instruction codes as being common. That is, since the second byte of a certain instruction set among analogous instruction sets can intactly utilize a control signal output of the first byte of the certain instruction set being an analogous instruction of that instruction. Accordingly, if there is a decode line only for the first byte of the certain instruction set, then the intact use of that decode line in the analogous instruction enables the analogous instruction to be executed. Thus, the first invention, which employs a certain decode line for other decode lines, can reduce the occupation area of those decode lines on the chip compared with the prior MCs, which include for a different instruction code a corresponding decode line. To be concrete, 400 through 600 decode lines can be reduced by about 80 ones, and the area occupied by the PLA on the whole semiconductor chip area can be reduced by 10 through 20 %. The first invention can thus reduce the chip area greatly, keeping the same function of the device as in the conventional PLA circuit, and assuring very high industrial applicability.
- Additionally, according to the PLA test circuit of the second invention, the number of the conducted NAND decoders.is measured on the basis of the power supply current IDD in the part of the PLA of the MC. Accordingly, the power supply current IDD may be measured only for all timings of the instruction sets possessed by the MC. This simplifies a data check in the conventional case amounting 10000 through 100000 steps to about 2000 steps. Furthermore, according to the second invention, a direct test of the circuit part of the PLA can be achieved without requiring a check on data stored in registers, etc., which can be checked externally of the MC. Thus, greater shortening of the time required for a test and sharp reduction of the step number for preparation of a test program can be realized, assuring very high industrial applicability.
Claims (4)
the improvement wherein the test circuit further has means for making the first precharge MOSFET conductive during testing the programmable logic array.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP95116976A EP0704802B1 (en) | 1988-01-27 | 1989-01-25 | Microcomputer and a method of testing the same |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14757/88 | 1988-01-27 | ||
JP1475788 | 1988-01-27 | ||
JP6318688 | 1988-03-18 | ||
JP63186/88 | 1988-03-18 | ||
PCT/JP1989/000065 WO1989007297A1 (en) | 1988-01-27 | 1989-01-25 | Microcomputer and a method of testing the same |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP95116976.2 Division-Into | 1989-01-25 | ||
EP95116976A Division EP0704802B1 (en) | 1988-01-27 | 1989-01-25 | Microcomputer and a method of testing the same |
Publications (3)
Publication Number | Publication Date |
---|---|
EP0358773A1 true EP0358773A1 (en) | 1990-03-21 |
EP0358773A4 EP0358773A4 (en) | 1993-01-27 |
EP0358773B1 EP0358773B1 (en) | 1996-06-05 |
Family
ID=26350769
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP95116976A Expired - Lifetime EP0704802B1 (en) | 1988-01-27 | 1989-01-25 | Microcomputer and a method of testing the same |
EP89901876A Expired - Lifetime EP0358773B1 (en) | 1988-01-27 | 1989-01-25 | Microcomputer |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP95116976A Expired - Lifetime EP0704802B1 (en) | 1988-01-27 | 1989-01-25 | Microcomputer and a method of testing the same |
Country Status (4)
Country | Link |
---|---|
US (1) | US5101483A (en) |
EP (2) | EP0704802B1 (en) |
DE (2) | DE68926597T2 (en) |
WO (1) | WO1989007297A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT1247640B (en) * | 1990-04-26 | 1994-12-28 | St Microelectronics Srl | BOOLEAN OPERATIONS BETWEEN TWO ANY BITS OF TWO ANY REGISTERS |
JPH05334075A (en) * | 1992-04-13 | 1993-12-17 | Nec Corp | Digital processor |
US5966514A (en) | 1995-05-31 | 1999-10-12 | Matsushita Electric Industrial Co., Ltd. | Microprocessor for supporting reduction of program codes in size |
US5867681A (en) * | 1996-05-23 | 1999-02-02 | Lsi Logic Corporation | Microprocessor having register dependent immediate decompression |
US5905893A (en) * | 1996-06-10 | 1999-05-18 | Lsi Logic Corporation | Microprocessor adapted for executing both a non-compressed fixed length instruction set and a compressed variable length instruction set |
US5896519A (en) * | 1996-06-10 | 1999-04-20 | Lsi Logic Corporation | Apparatus for detecting instructions from a variable-length compressed instruction set having extended and non-extended instructions |
US5794010A (en) * | 1996-06-10 | 1998-08-11 | Lsi Logic Corporation | Method and apparatus for allowing execution of both compressed instructions and decompressed instructions in a microprocessor |
US6023564A (en) * | 1996-07-19 | 2000-02-08 | Xilinx, Inc. | Data processing system using a flash reconfigurable logic device as a dynamic execution unit for a sequence of instructions |
US6633969B1 (en) | 2000-08-11 | 2003-10-14 | Lsi Logic Corporation | Instruction translation system and method achieving single-cycle translation of variable-length MIPS16 instructions |
US8700886B2 (en) * | 2007-05-30 | 2014-04-15 | Agere Systems Llc | Processor configured for operation with multiple operation codes per instruction |
US8914615B2 (en) | 2011-12-02 | 2014-12-16 | Arm Limited | Mapping same logical register specifier for different instruction sets with divergent association to architectural register file using common address format |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3657705A (en) * | 1969-11-12 | 1972-04-18 | Honeywell Inc | Instruction translation control with extended address prefix decoding |
US4236206A (en) * | 1978-10-25 | 1980-11-25 | Digital Equipment Corporation | Central processor unit for executing instructions of variable length |
US4346437A (en) * | 1979-08-31 | 1982-08-24 | Bell Telephone Laboratories, Incorporated | Microcomputer using a double opcode instruction |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3949370A (en) * | 1974-06-06 | 1976-04-06 | National Semiconductor Corporation | Programmable logic array control section for data processing system |
JPS5920049A (en) * | 1982-07-26 | 1984-02-01 | Nec Corp | Arithmetic processor |
JPS61170828A (en) * | 1985-01-24 | 1986-08-01 | Hitachi Ltd | Microprogram control device |
JPS61289600A (en) * | 1985-06-17 | 1986-12-19 | Fujitsu Ltd | Semiconductor memory device |
-
1989
- 1989-01-25 US US07/415,275 patent/US5101483A/en not_active Expired - Lifetime
- 1989-01-25 EP EP95116976A patent/EP0704802B1/en not_active Expired - Lifetime
- 1989-01-25 EP EP89901876A patent/EP0358773B1/en not_active Expired - Lifetime
- 1989-01-25 DE DE68926597T patent/DE68926597T2/en not_active Expired - Fee Related
- 1989-01-25 WO PCT/JP1989/000065 patent/WO1989007297A1/en active IP Right Grant
- 1989-01-25 DE DE68929258T patent/DE68929258T2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3657705A (en) * | 1969-11-12 | 1972-04-18 | Honeywell Inc | Instruction translation control with extended address prefix decoding |
US4236206A (en) * | 1978-10-25 | 1980-11-25 | Digital Equipment Corporation | Central processor unit for executing instructions of variable length |
US4346437A (en) * | 1979-08-31 | 1982-08-24 | Bell Telephone Laboratories, Incorporated | Microcomputer using a double opcode instruction |
Non-Patent Citations (1)
Title |
---|
See also references of WO8907297A1 * |
Also Published As
Publication number | Publication date |
---|---|
DE68929258D1 (en) | 2000-11-30 |
US5101483A (en) | 1992-03-31 |
EP0358773A4 (en) | 1993-01-27 |
EP0704802B1 (en) | 2000-10-25 |
DE68926597T2 (en) | 1997-01-23 |
EP0704802A1 (en) | 1996-04-03 |
DE68929258T2 (en) | 2001-06-07 |
WO1989007297A1 (en) | 1989-08-10 |
DE68926597D1 (en) | 1996-07-11 |
EP0358773B1 (en) | 1996-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5212693A (en) | Small programmable array to the on-chip control store for microcode correction | |
EP0095928B1 (en) | Pipeline processing apparatus having a test function | |
KR0155180B1 (en) | Semiconductor memory device having a coincidence detection circuit and its test method | |
US5412260A (en) | Multiplexed control pins for in-system programming and boundary scan state machines in a high density programmable logic device | |
EP0704802B1 (en) | Microcomputer and a method of testing the same | |
EP0747905A1 (en) | Memory testing apparatus for microelectronic integrated circuit | |
US5184067A (en) | Signature compression circuit | |
US4422141A (en) | Microprocessor architecture for improved chip testability | |
US5144627A (en) | Test mode switching system for lsi | |
KR100286187B1 (en) | Microcomputer with Flash Memory | |
US6757844B1 (en) | Architecture and logic to control a device without a JTAG port through a device with a JTAG port | |
US5231637A (en) | Apparatus for testing a PLA by measuring a current consumed by the PLO when activated with known codes | |
EP0833249B1 (en) | Semiconductor integrated circuit with error detecting circuit | |
US7571068B2 (en) | Module, electronic device and evaluation tool | |
EP0350888A2 (en) | Signature compression circuit | |
US6922820B1 (en) | Circuit for generating silicon ID for PLDS | |
US6005502A (en) | Method for reducing the number of bits needed for the representation of constant values in a data processing device | |
US7299391B2 (en) | Circuit for control and observation of a scan chain | |
US5459734A (en) | Test circuit for signal input circuit having threshold | |
US6611935B1 (en) | Method and system for efficiently testing circuitry | |
JP2583055B2 (en) | IC test system | |
US6600685B2 (en) | Semiconductor memory device having test mode | |
EP1574867A1 (en) | Semiconductor device and method for testing the same | |
US6848095B1 (en) | Method of assigning logic functions to macrocells in a programmable logic device | |
US7685483B1 (en) | Design features for testing integrated circuits |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 19891020 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): DE FR GB |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: TANAGAWA, KOUJI, OKI ELECTRIC INDUSTRY CO., LTD. |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 19921208 |
|
AK | Designated contracting states |
Kind code of ref document: A4 Designated state(s): DE FR GB |
|
17Q | First examination report despatched |
Effective date: 19940923 |
|
GRAH | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOS IGRA |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): DE FR GB |
|
XX | Miscellaneous (additional remarks) |
Free format text: TEILANMELDUNG 95116976.2 EINGEREICHT AM 27/10/95. |
|
REF | Corresponds to: |
Ref document number: 68926597 Country of ref document: DE Date of ref document: 19960711 |
|
ET | Fr: translation filed | ||
GRAH | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOS IGRA |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed | ||
REG | Reference to a national code |
Ref country code: GB Ref legal event code: IF02 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20020110 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20020123 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20020227 Year of fee payment: 14 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030125 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030801 |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee | ||
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030930 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST |