Bidirectional semiconductor device having only one one-directional device

Abstract: In a one-directional internal circuit such as a first-in first-out memory (FIFO), switchover switches (SW₁ - SW₄) are provided between the internal input/output ports (IN, OUT) and external ports (I/O A, I/O B), and the switches are controlled by a mode signal (M), thereby enabling a bidirectional data transmission using only one chip.

Description: The present invention relates to a bidirectional semiconductor device which enables a one-directional circuit such as a first-in first-out (FIFO) memory to carry out bidirectional data transmission. Generally, a two-port buffer (chip) such as a FIFO memory, a last-in first-out (LIFO) memory, and a shift register has an input port and a separate output port, thereby establishing a one-directional data transmission path from the input port to the output port. In the prior art, terminals corresponding to these input and output ports are fixed, and if one-directional FIFO's having these fixed input/output pins are used for a bidirectional data transmission, at least two FIFO's are required. As a result, the number of chips on a printed circuit board is increased to increase the area of the board occupied by mounting the chips on it (hereinafter, board occupied area), and in addition, the input/output (I/O) connections on the printed board become complex. Note that the complexity of the I/O connections also reduces the mounting density of the printed board because of the area they occupy and deteriorate the electrical characteristics of the device due to the stray capacity introduced by the connections. US-A-4115868 discloses a bidirectional transfer system in which only one first-in first-out buffer is required. According to this invention, a bidirectional semiconductor device comprises: only one one-directional internal circuit having an internal input port and an internal output port; first and second external input/output ports; and, switching means for connecting the internal input port to one of the first or second external input/output ports and connecting the internal output port to the other of the first and second external input/output ports in accordance with a mode signal generated by a mode signal generating means, characterised in that the one-directional internal circuit further has a plurality of internal control ports, in that the device further comprises a plurality of external control ports connectable to the internal control ports, in that the mode signal generating means is connected to one of the external control ports, in that the switching means also connects the internal control ports to the external control ports in accordance with the mode signal, and in that the mode signal generating means controls the switching means in accordance with a sequence between at least two of said external control ports after an application of a power supply or after an initial set. memory, is provided. This one-directional internal circuit has an internal input port and an internal output port. The internal input port is connectable to either an A-side input/output terminal I/O (A) (external input/output port) or a B-side input/output terminal I/O (B) (external input/output port). The same holds true for the internal output port. The switching of such connections is carried out by a switching means, so that the internal input port is connected to one of the terminals I/O (A) and I/O (B), and the internal output port is connected to the other terminal. As a result, a switchover of bidirectional transmission between data transmission of the A-side input/output terminal I/O (A) → the internal circuit → the B-side input/output terminal I/O (B) and data transmission of the B-side input/output terminal I/O (B) → the internal circuit → the A-side input/output terminal I/O (A) is carried out by the switching means. The present invention will be more clearly understood from the description as set forth below and in contrast with the prior art with reference to the accompanying drawings, wherein: Fig. 1 is a schematic view showing a prior art one-directional device; Fig. 2 is a block circuit diagram showing a prior art bidirectional device; Fig. 3 is a circuit diagram illustrating a first embodiment of the bidirectional semiconductor device according to the present invention; Fig. 4 is a detailed circuit diagram of the circuit of Fig. 3; Figs. 5A through 5D are logic circuit diagrams of the switches of Fig. 4; Fig. 6 is a detailed circuit diagram of the FIFO of Fig. 4; Figs. 7A through 7G are timing diagrams explaining the operation of the circuit of Fig. 6; Fig. 8 is a circuit diagram illustrating a second embodiment of the bidirectional semiconductor memory device according to the present invention; Fig. 9 is a circuit diagram of the mode setting circuit of Fig. 8; Fig. 10 is a circuit diagram of the flip-flop of Fig. 9; Figs. 11A through 11E and Figs. 12A through 12E are timing diagrams explaining the operation of the circuit of Fig. 9; Fig. 13 is a circuit diagram illustrating a third embodiment of the bidirectional semiconductor memory device according to the present invention; Fig. 14 is a circuit diagram of the mode setting circuit of Fig. 13; Fig. 15 is a circuit diagram of the flip-flop of Fig. 14; and Figs. 16A through 16F and Figs. 17A through 17F are timing diagrams explaining the operation of the circuit of Fig. 14. First, the prior art bidirectional semiconductor device will be explained with reference to Figs. 1 and 2. In Fig. 1, which illustrates a prior art one-directional device, i.e., a FIFO memory, a write control signal W is fixed to a first pin, input data IN (I 0 to I 8 ) is fixed to second to sixth pins and 24-th to 27-th pins, a read control signal R is fixed to a 15-th pin, and output data OUT (O 0 to O 8 ) is fixed to 9-th to 13-th pins and 16-th to 19-th pins. Note that V CC and V SS designate power supplies, and other terminals are designated "Full", "Empty" and the like. If one-directional FIFO's having the fixed input/ output pins are used for bidirectional data transmission, two FIFO's are connected as illustrated in Fig. 2. As a result, an FIFO (1) is used for data transmission from A-side to B-side, and an FIFO (2) is used for data transmission from B-side to A-side. However, when a bidirectional device is constructed as illustrated in Fig. 2, the number of chips on a printed circuit board is increased to increase the board occupied area, and in addition, the input/output (I/O) connections on the printed board become complex. The complexity of the I/O connections also increases the mounting density of the printed board, because of the area occupied thereby, and deteriorates the electrical characteristics due to the stray capacity of the connections. In Fig. 3, which illustrates a first embodiment of the present invention, a one-directional internal circuit has an internal input port IN and an internal output port OUT. The internal input port IN is connectable to either an A-side external input/output terminal I/O (A) or a B-side external input/output terminal I/O (B). The same holds true for the internal output port OUT. The switching of such connections is carried out by a switching means, so that the internal input port IN is connected to one of the external ports I/O (A) and I/O (B), and the internal output port OUT is connected to the other external port. Also, referring to Fig. 4, which is a detailed circuit diagram of Fig. 3, a frame indicated by a dotted-solid line designates one chip. In this chip, only one FIFO memory is provided as the one-directional internal circuit. At the FIFO memory, internal ports such as a write control port W , a read control port R , an input port IN, an output port OUT, and a reset port RST i are provided. Also provided in the periphery of the chip, are A-side external ports such as a write/read control port W/R (A) and an input/output port I/O (A), and B-side external ports such as a write/read control port W/R (B), an input/output port I/O (B), and a reset port RST for the connections to the exterior. The external reset port RST is fixed to the internal reset port RST i . Further, a first switch SW₁ is provided between the external ports W/R (A), W/R (B) and the internal port W ; a second switch SW₂ is provided between the external ports W/R (A), W/R (B) and the internal port R ; a third switch SW₃ is provided between the external ports I/O (A), I/O (B) and the internal port IN; and a fourth switch SW₄ is provided between the external ports I/O (A), I/O (B) and the internal port OUT. These switches SW₁ to SW₄ are operated simultaneously by a mode signal M supplied from the exterior of the chip. Note that the internal ports IN and OUT, and the external ports I/O (A) and I/O (B) of Fig. 4, actually have a multi-bit configuration such as a 9-bit configuration as illustrated in Fig. 1, but, for simplification, such ports have a single-bit configuration in Fig. 4. Each of the switches SW₁ to SW₄ of Fig. 4 will be explained with reference to Figs. 5A to 5D. As illustrated in Fig. 5A, the switch SW₁ is comprised of NAND circuits G₁₁ , G₁₂ , and G₁₃ , and an inverter I₁. Therefore, when the mode signal M is "1", the signal at the external control port W/R (A) is supplied to the write control port W of the FIFO memory, and when the mode signal M is "0", the signal at the external control port W/R (B) is supplied to the write control port W of the FIFO memory. Similarly, as illustrated in Fig. 5B, the switch SW₂ is comprised of NAND circuits G₂₁ , G₂₂ , and G₂₃ , and an inverter I₂. Therefore, when the mode signal M is "1", the signal at the external control port W/R (B) is supplied to the write control port W of the FIFO memory, and when the mode signal M is "0", the signal at the external control port W/R (A) is supplied to the write control port W of the FIFO memory. Also, as illustrated in Fig. 5C, the switch SW₃ is comprised of NAND circuits G₃₁ , G₃₂ , and G₃₃ , and an inverter I₃. Therefore, when the mode signal M is "1", the signal at the external port I/O (A) is supplied to the input data port IN of the FIFO memory, and when the mode signal M is "0", the signal at the external port I/O (E) is supplied to the input data port IN of the FIFO memory. Further, as illustrated in Fig. 5D, the switch SW₄ is comprised of NAND circuits G₄₁ , G₄₂ , G₄₃ , and G₄₄ , inverters I₄ to I₈ and CMOS buffers BF₁ and BF₂. Therefore, when the mode signal M is "1", the lower-side circuit of Fig. 5D is operated so that data at the output data port OUT is transmitted to the B-side port I/O (B), and when the mode signal M is "0", the upper-side circuit of Fig. 5D is operated so that data at the output data port OUT is transmitted to the A-side port I/O (A). Thus, in summary, the following table is obtained. M = "1" M = "0" W W/R (A) W/R (B) R W/R (B) W/R (A) IN I/O (A) I/O (B) OUT I/O (B) I/O (A) In Fig. 6, which is a detailed circuit diagram of the FIFO memory of Fig. 4, a static memory cell MC ij is provided between a write word line WL i (W), and a read word line WL i (R), and in write bit lines BL j (W), BL j (W) and read bit lines BL j (R), BL j (R). In a write mode ( W = "0"), write data IN is written by a write amplifier WA into the memory cell MC ij between a word line such as WL i (W) selected by a write pointer WP (1) and write bit lines such as BL j (W), BL j (W) selected by a write pointer WP (2). On the other hand, in a read mode ( R = "0"), data of a memory cell between a read word line such as WL i (R) selected by a read pointer RP (1) and read bit lines such as BL j (R), BL j (R) selected by a read pointer RP (2) is read and is transmitted as output data OUT via a read amplifier RA. In a write operation of the FIFO memory, as illustrated in Figs. 7A to 7D, the write pointers WP (1) and WP (2) are counted up one by one in accordance with a write control signal W , thereby sequentially accessing the memory cells and writing data thereinto. Note that, in this case, the two write pointers serve as one write pointer WP and are reset by a reset signal RST . That is, every time one of the write pointers WP (1) and WP (2) is cycled, the other pointer is counted up by +1. On the other hand, in a read operation of the FIFO memory, as illustrated in Figs. 7A, and 7E to 7G, the read pointers RP (1) and RP (2) are counted up one by one in accordance with a read control signal R , thereby sequentially accessing the memory cells and reading data therefrom. Note that, also in this case, the two read pointers serve as one read pointer RP and are reset by a reset signal RST . That is, every time one of the read pointers RP (1) and RP (2) is cycled, the other pointer is counted up by +1. In Fig. 8, which illustrates a second embodiment of the present invention, a mode setting circuit SC for generating the mode signal M is added to the elements of the first embodiment of Fig. 4. The mode setting circuit SC detects the presence or absence of an overlap at a predetermined level such as "0" level of the signals of at least two originally existing external ports such as RST and W/R (B) without additional special ports, thereby generating the mode signal M within the chip. The mode setting circuit SC of Fig. 8 will be explained with reference to Fig. 9. The mode setting circuit SC is comprised of an overlap detector (NOR circuit) DET1 for detecting an overlap of a low level ("0") of the external reset signal RST and a low level of an external write/read control signal R/ W (B), a fall detector DET2 comprised of a delay circuit DL, an inverter I ¹ , and a NOR circuit G₂ , and an RS flip-flop FF serving as a memory. This RS flip-flop FF is constructed as shown in Fig. 10. In the RS flip-flop FF, a power supply V CC is applied to a set terminal S, a ground potential is applied to a reset terminal R, the output of the overlap detector DET1 is applied to a clock terminal CK, and the output of the fall detector DET2 is applied to a clear terminal CL. Therefore, as illustrated in Figs. 11A through 11E, after the FIFO memory is reset by the signal RST and the flip-flop FF is reset by the output of the fall detector DET2 ( RST = "0"), even when the signal of the external control port W/R (B) is changed after the sufficient recovery of the reset signal RST , the output of the overlap detector DET1 remains at "0". As a result, the flip-flop FF remains in a reset state, and therefore, the mode signal M remains at "1". On the other hand, as illustrated in Figs. 12A through 12E, after the FIFO memory is reset by the reset signal RST and the flip-flop FF is reset by the output of the fall detector DET2 ( RST = "0"), when the signal of the external control port W/R (B) is changed before the recovery of the reset signal RST , the overlap detector DET1 detects an overlap of a low level between RST and W/R (B) to change the output thereof from "0" to "1". As a result, the flip-flop FF is set so that the mode signal M becomes "0". Thus, a desired mode signal M is generated within the chip by the inputs of the originally existing external ports without adding special external ports. Note that, in Fig. 9, the flip-flop FF is reset (cleared) by the reset signal RST , but such a reset operation can be carried out by applying the power supply if the circuit constants of the flip-flop FF are suitably set. Also, as occasion demands, the detector DET1 may detect an overlap of a high level between the two external ports, and a rise detector may be used instead of the fall detector DET2. Further, the mode signal M is set by an overlap of the signals of the two external input signals RST , W/R (B), but other external input signals can be used. In Fig. 13, which illustrates a third embodiment of the present invention, a mode setting circuit SC' for generating the mode signal M is added to the elements of the first embodiment of Fig. 4. The mode setting circuit SC' detects the sequence of the signals of at least two originally existing external ports such as W/R (A) and W/R (B) without additional special ports, thereby generating the mode signal M within the chip. The mode setting circuit SC' of Fig. 13 will be explained with reference to Fig. 14. The mode setting circuit SC' is comprised of two RS flip-flops FF1 and FF2 each of which is constructed as shown in Fig. 15. In the RS flip-flop FF1, a power supply V CC is applied to a set terminal S, a ground potential is applied to a reset terminal R, the reset signal RST is applied to a clear terminal CL, and the signal at the A-side external input/output control port W/R (A) is applied to a clock terminal CK. In addition, the output Q (= Q ₁) of the flip- flop FF1 is supplied with the signal of the B-side external input/output control port W/R (B) to a NAND circuit G₁ which generates a signal . Further, in the flip-flop FF2, a power supply V CC is applied to a set terminal S, a ground potential is applied to a reset terminal R, a reset signal RST is applied to a clear terminal CL, and the signal  is applied to a clock terminal CK. Then, the output Q of the flip-flop FF2 serves as the mode signal M. Therefore, as illustrated in Figs. 16A through 16F, after the FIFO memory is reset by the reset signal RST ( RST = "0"), when the pulse of the A-side input/output control port W/R (A) precedes the pulse of the B-side input/output control port W/R (B), the mode signal M remains at "1". On the other hand, as illustrated in Figs. 17A through 17F, after the FIFO memory is reset by the reset signal RST ( RST = "0"), when the pulse of the B-side input/output control port W/R (B) precedes the pulse of the A-side input/output control port W/R (A), the mode signal M becomes a low level ("0"). Thus, a desired mode signal M is generated within the chip by the inputs of the originally existing external ports without adding special external ports. Note that, in Fig. 14, the flip-flops FF1 and FF2 are reset (cleared) by the reset signal RST , but such a reset operation can be carried out by applying the power supply if the circuit constants of the flip-flops FF1 and FF2 are suitably set. Also, in this case, the mode signal M is determined by which of the A-side input/ output control port W/R (A) and the B-side input/output control port W/R (B) receives a preceding pulse. Further, in the circuit of Fig. 14, it is particularly useful in the FIFO memory to determine which of the ports W/R (A) and W/R (B) is a write-side to which a preceding pulse is applied. That is, in the FIFO memory, after resetting, there is no purpose to a read if there is no written data, and accordingly, a write instruction commonly precedes a read instruction. Note that, in the above-mentioned embodiments, an FIFO memory is used as a one-directional circuit, however, the present invention can be applied to other circuits such as LIFO and a shift register. As explained above, according to the present invention, since the bidirectional semiconductor device is constructed by only one one-directional circuit, the board occupied area on a printed circuit board can be reduced, and in addition, the connections thereof can be simplified.

Claims: A bidirectional semiconductor device comprising: only one one-directional internal circuit having an internal input port (IN) and an internal output port (OUT); first and second external input/output ports (I/O(A), I/O (B)); and, switching means (SW) for connecting the internal input port to one of the first or second external input/output ports and connecting the internal output port to the other of the first and second external input/output ports in accordance with a mode signal (M) generated by a mode signal generating means, characterised in that the onedirectional internal circuit further has a plurality of internal control ports (W, R, RST i ), in that the device further comprises a plurality of external control ports ( W/R (A), W/R (B), RST ) connectable to the internal control ports, in that the mode signal generating means (SC) is connected to one of the external control ports, in that the switching means also connects the internal control ports to the external control ports in accordance with the mode signal, and in that the mode signal generating means (SC) controls the switching means in accordance with a sequence between at least two of said external control ports after an application of a power supply or after an initial set. A device as set forth in claim 1, wherein the mode signal generating means (SC') comprises: a first flip-flop (FF1), connected to first and second ports ( RST , W/R (A)) of the external control ports, for detecting a change at the signal of the second port after a signal at the first port is changed; a gate (G₁), connected to a third port ( W/R (B)) of the external control ports and to the output of the first flip-flop, for passing a signal at the third port through it in accordance with an output of the first flip-flop and, a second flip-flop (FF2), connected to the first external control port and to an output of the gate, the second flip-flop being reset by a signal at the first port and set by an output of the gate, thereby generating the mode signal. A device as set forth in any one of the preceding claims, wherein the one-directional internal circuit comprises a first-in first-out memory (FIFO). A device as set forth in any of the preceding claims, wherein the one-directional internal circuit comprises a last-in first-out memory (LIFO). A device as set forth in any of the preceding claims, wherein the one-directional internal circuit comprises a shift register.

Inventors: AOYAMA KEIZO, AOYAMA, KEIZO
Applicants: FUJITSU LTD, FUJITSU LIMITED
Application year: 1987
Main classification: G06F5
IPC codes: G06F5