Semiconductor memory device having two different output buffers for one output terminal
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a semiconductor memory device such as a programmable read-only memory (PROM) incorporating a logic generating circuit for an identification code including a manufacturer&#39;s code and a device code. 
     2. Description of the Related Art 
     Generally, semiconductor memory devices such as PROM&#39;s incorporate logic circuits for generating identification codes indicating the function thereof. For example, in a PROM, an identification code is ulilized to specify a programming process applied thereto. In this case, the identification code is output before a programming mode to indicate a programming voltage such as 21 V, 12 V, or the like for the PROM. Then, a writing operation is actually performed by a programming device upon the PROM by using the identified voltage. 
     In a prior art PROM, a logic circuit for generating an identification code is interposed within a data path for passing an internal read data signal to an output terminal. As a result, such a logic circuit is a hindrance to high-speed transmission of an internal read data signal, thus reducing the speed of the read operation. This will be explained later. 
     SUMMARY OF THE INVENTION 
     It is an object of the present invention to output internal read data at high speed in a semiconductor memory device such as a PROM incorporating a logic circuit for generating an identification code. 
     According to the present invention, an internal read data signal passes through an output buffer to an output terminal and an identification code signal passes through an output buffer to the output terminal. These two output buffers are enabled and disabled in accordance with a data output enable signal and a code output enable signal. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The present invention will be more clearly understood from the description as set forth below, as compared with the prior art, with reference to the accompanying drawings, wherein: 
     FIG. 1 is a circuit diagram illustrating a prior art semiconductor memory device; 
     FIG. 2 is a circuit diagram illustrating a data output enable signal generating circuit for the data output enable signal of FIG. 1; 
     FIG. 3 is a circuit diagram illustrating an identification code output enable signal generating circuit for the identification code output enable signal of FIG. 1; 
     FIG. 4 is a diagram showing an example of an identification code; 
     FIGS. 5A, 5B, 5C and 5D are detailed circuit diagrams of the logic generating circuit of FIG. 1; 
     FIG. 6 is a circuit diagram illustrating an embodiment of the semiconductor memory device according to the present invention; and 
     FIG. 7 is a circuit diagram of a modification of the output buffer of FIG. 6. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Before the description of an embodiment of the present invention, a prior art semiconductor memory device capable of outputting identification codes will be explained with reference to FIGS. 1, 2, 3, 4, and 5A through 5D. 
     In FIG. 1, which illustrates a prior art semiconductor memory device, assume that eight output terminals DO 0 , DO 1 , . . . , DO 7  are provided. In this case, eight output buffers 1-0, 1-1, . . . , 1-7 are connected to the output terminals DO 0 , DO 1 , . . . , DO 7 , respectively, and eight logic circuits 2-0, 2-1, . . . , 2-7 are connected to the output buffers 1-0, 1-1, . . . , 1-7, respectively. 
     Each of the output buffers 1-0, 1-1, . . . , 1-7 is formed by a P-channel metal-oxide-semiconductor (MOS) transistor Q F  and an N-channel MOS transistor Q n  between a positive power supply Vcc and a ground GND, a NAND circuit G 1  for controlling the P-channels MOS transistor Q P , an inverter I 1  and a NOR circuit G 2  for controlling the N-channel MOS transistor Q n . A data output enable signal OE&#39; is commonly supplied via an inverter I 0  to all of the output buffers 1-0, 1-1, . . . , 1-7. 
     When the data output enable signal OE&#39; is inactive (i.e., logic &#34;1&#34;), the NAND circuit G 1  and the NOR circuit G 2  are both disabled. That is, the output signal of the NAND circuit G 1  is high to thereby turn OFF the P-channel MOS transistor Q P , and also, the output signal of the NOR circuit G 2  is low to thereby turn OFF the N-channel transistor Q n . As a result, all of the output terminals DO 0 , DO 1 , . . . , DO 7  are in a high-impedance state. 
     Conversely, when the data output enable signal OE&#39; is active (i.e., logic &#34;0&#34;), the NAND circuit G 1  and the NOR circuit G 2  are both enabled. That is, the NAND circuit G 1  generates an inverted signal of the output signal of the logic circuit such as 2-0, and also, the NOR circuit G 2  generates an inverted signal of the output signal of the logic circuit such as 2-0. Therefore, the P-channel MOS transistor Q P  and the N-channel MOS transistor Q n  are controlled by the inverted signal of the output signal of the logic circuit such as 2-0, and as a result, the potentials at the output terminals DO 0 , DO 1 , . . . , DO 7  are the same as those at the outputs of the logic circuits 2-0, 2-1, . . . , 2-7, respectively. 
     Note that the data output enable signal OE&#39; is generated from a data output enable signal OE by a series of inverters I 4  and I 5 , as illustrated in FIG 2. 
     Next, the logic circuit, using 2-0 as an example, is explained. The logic circuit 2-0 is formed by transfer gates G 3  and G 4 , inverters I 2  and I 3 , and a logic generating circuit 3-0 for generating an identification code signal ID 0 . In this case, the transfer gate G 3  receives an internal read data signal DA 0  from the memory cells (not shown), while the transfer gate G 4  receives the identification code signal ID 0 . Therefore, the logic circuit 2-0 generates either the internal read data signal DA 0  or the identification code signal ID 0  in accordance with a code output enable signal SIG. 
     Note that the code output enable signal SIG is generated by a comparator formed by a P-channel MOS transistor Q 31  and N-channel MOS transistors Q 32 , Q 33  and Q 34 , as illustrated in FIG. 3. In this case, the N-channel MOS transistor Q 32  has an especially high threshold voltage such as 9 V, and therefore, the comparator compares the potential at a special address port such as A 9  with 9 V. When the potential at the address port A 9  is not higher than 9 V, the code output enable signal SIG is low, while when the potential at the address port A 9  is higher than 9 V, the code output enable signal SIG is high. 
     As shown in FIG. 4, an example of identification code is formed by 16 bits &#34;010 . . . 1011 . . . 0&#34;. In FIG. 1, since the number of output terminals is eight, the output terminals DO 0 , DO 1 , . . . , DO 7  are duplexed by using an address signal A 0 . For example, since the data at the output terminal DO 0  is &#34;0&#34; (A 0  =&#34;0&#34;) and &#34;0&#34; (A 0  =&#34;1&#34;), the logic generating circuit 3-0 is constructed by a circuit as illustrated in FIG. 5A. Also since the data at the output terminal DO 1  is &#34;1&#34; (A 0  =&#34;0&#34;) and &#34;1&#34; (A 0  =&#34;1&#34;), the logic generating circuit 3-1 is constructed by a circuit as illustrated in FIG. 5B. Further, since the data at the output terminal DO 2  is &#34;0&#34; (A 0  =&#34;0&#34;) and &#34;1&#34; (A 0  =&#34;1&#34;), the logic generating circuit 3-2 is constructed by a circuit as illustrated in FIG. 5C. Further, since the data at the output terminal DO 7  is &#34;1&#34; (A 0  =&#34;0&#34;) and &#34;0&#34; (A 0  =&#34;1&#34;), the logic generating circuit 3-7 is constructed by a circuit as illustrated in FIG. 5D. That is, each of the logic generating circuits can be constructed by one of the circuits as illustrated in FIGS. 5A, 5B, 5C and 5D. 
     Thus, in the prior art semiconductor device of FIG. 1, the logic circuit such as 2-0 is controlled by the code output enable signal SIG to generate either an internal read data signal such as DA 0  or an identification code signal such as ID 0 , and the output buffer such as 1-0 is controlled by the output enable signal OE&#39; to generate the same logic signal as the output signal of the logic circuit 2-0. 
     Incidentally, in recent years, as the access speed of central processing units (CPU&#39;s) has been increased, it is also required to operate semiconductor memory devices such as PROM&#39;s at higher speeds. For this purpose, paths for read data have been simplified in a layout form or in a circuit form by reducing the stages of transistors and the load capacity as much as possible. In view of this, since the logic circuits 2-0, 2-1, . . . , 2-7, particularly, the transfer gates G 3 , which have large resistances, are interposed in the paths for read data, this is a hindrance to high-speed read operation, and accordingly, the semiconductor memory device as illustrated in FIG. 1 is disadvantageous. 
     In FIG. 6, which illustrates an embodiment of the present invention, only one output terminal DO 0  is illustrated and the other output terminals are omitted for simplification of the description. In FIG. 6, there are provided two kinds of output buffers 1A-0 and 1B-0 each having the same configuration as the output buffer 1-0 of FIG. 1. According to the present invention the internal read data signal DA 0  is supplied directly to the output buffer 1A-0, and also, the identification code signal ID 0  is supplied directly to the output buffer 1B-0. The logic circuit 2-0 is not provided except for the logic generating circuit 3-0. That is, a path for the read data signal DA 0  is different from a path for the identification code signal ID 0 . 
     The two output buffers 1A-0 and 1B-0 are controlled commonly by an enable control circuit 1 which receives the data output enable signal OE&#39; and the code output enable signal SIG to generate two control signals C 1  and C 2  for controlling the output buffers 1A-0 and 1B-0, respectively. In this case, only one of the output buffers 1A-0 and 1B-0 is enabled, so that no conflict occurs at the output terminal DO 0 . 
     The enable control circuit 1 includes two NOR circuits G 5  and G 6 , and an inverter I 4 . That is, when the data output enable signal OE&#39; is inactive (i.e., logic &#34;1&#34;), the NOR circuits G 5  and G 6  make the control signals C 1  and C 2  low (i.e., logic &#34;0&#34;) in spite of the code output enable signal SIG being &#34;0&#34; and &#34;1&#34;. Therefore, the NAND circuit G 1  and the NOR circuit G 2  of the output buffer 1A-0 and the NAND circuit G 1  &#39; and the NOR circuit G 2  &#39; of the output buffer 1B-0 are disabled, and accordingly, the output buffers 1A-0 and 1B-0 are both disabled so that the output terminal DO 0  is in a high-impedance state. 
     When the code output enable signal SIG is &#34;0&#34; under the condition that the data output enable signal OE&#39; is active (i.e., logic &#34;0&#34;), the NOR circuits G 5  and G 6  make the control signal C 1  and C 2  high (i.e., logic &#34;1&#34;) and low (i.e., logic &#34;0&#34;), respectively. As a result, the output buffer 1A-0 is enabled so as to pass the internal read data signal DA 0  therethrough to the output terminal DO 0 . Conversely, the output buffer 1B-0 is disabled, so that the identification code signal ID 0  cannot pas through the output buffer 1B-0. 
     Similarly, when the code output enable signal SIG is &#34;1&#34; under the condition that the data output enable signal OE&#39; is active (i.e., logic &#34;0&#34;), the NOR circuits G 5  and G 6  make the control signal C 1  and C 2  low (i.e., logic &#34;0&#34;) and high (i.e., logic &#34;1&#34;), respectively. As a result, the output buffer 1B-0 is enabled so as to pass the identification code signal ID 0  therethrough to the output terminal DO 0 . Conversely, the output buffer 1A-0 is disabled, so that the internal read data signal DA 0  cannot pass through the output buffer 1A-0. 
     Note that the internal read data signal DA 0  requires a higher speed operation, and therefore, the P-channel MOS transistor Q P  and the N-channel MOS transistor Q n  are relatively large in size. Conversely, the identification code signal ID 0  per se does not require a particularly high speed, and therefore, the P-channel MOS transistor Q P  &#39; and the N-channel MOS transistor Q n  &#39; can be reduced in size. 
     Also, the output buffers 1A-0 and 1B-0 can be modified. For example, as illustrated in FIG. 7, an output buffer 1A-0&#39; (1B-0&#39;) can be used in place of the output buffer 1A-0&#39; (1B-0&#39;). In the output buffer 1A-0&#39;(1B-0&#39;), two P-channel MOS transistor Q P1  and Q P2  and two N-channel MOS transistors Q n2  and Q n1  are connected between Vcc and GND in this order. The gate of the P-channel MOS transistor Q P1  receives the control signal C 1  (or C 2 ) via an inverter I 5 , and the gate of the N-channel MOS transistor Q n1  directly receives the control signal C 1  (or C 2 ). Also, the gates of the P-channel MOS transistor Q P2  and the N-channel MOS transistor Q n2  receive the internal read data signal DA 0  (or the identification code signal ID 0 ) via an inverter I 6 . 
     As explained hereinbefore, according to the present invention, since the internal read data is directly supplied to the output buffer for the internal read data which is separated from the output buffer for the identification code signal, the internal read data can be output at high speed.