| 7113445 | Multi-port memory cell and access method | September, 2006 | Sancheti et al. | 365/230.05 |
| 7307861 | Content addressable memory (CAM) cell bit line architecture | December, 2007 | Bettman et al. | 365/49.15 |
| 7362606 | Asymmetrical memory cells and memories using the cells | April, 2008 | Chuang et al. | 365/154 |
| 20060198181 | Static random access memory utilizing gated diode technology | September, 2006 | Luk et al. | 365/154 |
The present invention relates generally to the data processing field, and more particularly, relates to a method and apparatus for implementing an enhanced SRAM read performance sort ring oscillator (PSRO), and a design structure on which the subject circuit resides.
In advanced CMOS technologies it is becoming common practice for the six-transistor (6T) static random access memory (SRAM) cells to have unique threshold voltage Vt implants independent from standard logic devices. This causes the 6T SRAMs to loose tracking to the standard logic with conventional SRAM performance sort ring oscillators (PSROs) used as performance monitors or on-device wafer monitors for manufacturing line tuning.
FIG. 1 illustrates a conventional six-transistor (6T) static random access memory (SRAM) cell. The prior art 6T SRAM cell includes four transistors defining a pair of parallel reverse polarity connected inverters for storing data and a pair of N-channel field effect transistors (NFETs) receiving a gate input WORDLINE that is activated, turning on respective NFETs to perform a read or write operation.
A need exists for an effective method and apparatus for implementing an enhanced SRAM read performance sort ring oscillator (PSRO).
Principal aspects of the present invention are to provide a method and apparatus for implementing enhanced SRAM read performance sort ring oscillator (PSRO), and a design structure on which the subject circuit resides. Other important aspects of the present invention are to provide such a method and apparatus for implementing enhanced SRAM read PSRO substantially without negative effect and that overcome many of the disadvantages of prior art arrangements.
In brief, a method and a static random access memory (SRAM) cell for implementing an enhanced SRAM read performance sort ring oscillator (PSRO), and a design structure on which the subject circuit resides are provided. A pair of parallel reverse polarity connected inverters defines a static latch or cross-coupled memory cell. The SRAM cell includes independent left and right wordlines providing a respective gate input to a pair of access transistors used to obtain access to the memory cell. The pair of access transistors is respectively connected between a true side of the static latch and a true bitline input, and a complement side of the static latch and a complement bitline input. The SRAM cell includes a voltage supply connection to one side of the static latch. For example, the complement side of the static latch is connected to the voltage supply. A plurality of the SRAM cells is assembled together to form a SRAM base block. A plurality of the SRAM base blocks is connected together to form the SRAM read PSRO.
In accordance with features of the invention, a SRAM base block includes a first column of a plurality of the SRAM cells coupled to first true and complement bitlines and a second column of a plurality of the SRAM cells coupled to second true and complement bitlines. The first column of the SRAM cells receives a left wordline input and the second column of the SRAM cells receives a right wordline input. An internal wordline node between the first and second column of the SRAM cells provides a right wordline input to the first column of the SRAM cells and a left wordline input to the second column of the SRAM cells
In accordance with features of the invention, the SRAM base block includes a first local evaluation circuit coupled to the first true and complement bitlines and provides an input of a first NAND gate having a second input connected to the first true bitline. A first precharge transistor is connected between a voltage supply and the first true bitline having a gate input connection to the internal wordline node. The first NAND gate provides an output of the first column SRAM cells of the SRAM base block. A second local evaluation circuit is coupled to the second true and complement bit lines and provides an input of a second NAND gate having a second input connected to the second true bitline. A second precharge transistor connected between a voltage supply and the second true bitline has a gate input connection to the right wordline input. The second NAND gate provides an output of the SRAM base block.
In accordance with features of the invention, the SRAM base block includes a third NAND gate receiving a wordline input and a reset signal input and having an output applied by an inverter to the internal wordline node. The SRAM base block includes a fourth NAND gate having an input of the output of the first NAND gate and the reset signal input and having an output applied by an inverter to the right wordline input.
In accordance with features of the invention, the SRAM read PSRO includes the plurality of the SRAM base blocks connected in a chain. A reset signal is applied in parallel to each of the plurality of the SRAM base blocks so that the period of the ring oscillator output signal is a function of many series read operation but only a single precharge time. An inverted feedback output is combined with a control signal to stop and start the ring operation. A plurality of inverters is included in a ring output path to expand the pulse width of the ring oscillator output signal.
The present invention together with the above and other objects and advantages may best be understood from the following detailed description of the preferred embodiments of the invention illustrated in the drawings, wherein:
FIG. 1 illustrates a conventional six-transistor (6T) static random access memory (SRAM) cell;
FIG. 2 illustrates a modified six-transistor (6T) static random access memory (SRAM) cell for implementing a performance sort ring oscillator (PSRO) in accordance with the preferred embodiment;
FIG. 3 illustrates an exemplary SRAM base block used for implementing a performance sort ring oscillator (PSRO) in accordance with the preferred embodiment;
FIG. 4 illustrates an exemplary tiling arrangement of the SRAM blocks for implementing a performance sort ring oscillator (PSRO) in accordance with the preferred embodiment;
FIG. 5 illustrates an exemplary SRAM read performance sort ring oscillator (PSRO) in accordance with the preferred embodiment;
FIGS. 6 and 7 are charts illustrating operation of the exemplary SRAM read performance sort ring oscillator (PSRO) of FIG. 5 in accordance with the preferred embodiment; and
FIG. 8 is a flow diagram of a design process used in semiconductor design, manufacturing, and/or test.
Having reference now to the drawings, in FIG. 2, there is shown a modified six-transistor (6T) static random access memory (SRAM) cell generally designated by the reference character 200 for implementing a SRAM read performance sort ring oscillator (PSRO) in accordance with the preferred embodiment.
SRAM cell 200 includes a static latch or cross-coupled memory cell defined by a pair of parallel reverse-connected inverters 202 , 204 for storing data and a pair of N-channel field effect transistors (NFETs) 206 , 208 respectively connected to a respective side of the static latch and a respective one of bit line pair BLC, BLT. The inverters 202 , 204 defining the static latch include four transistors (not shown).
SRAM cell 200 of the preferred embodiment includes independent left and right wordlines WLL (WORDLINE LEFT), WLR (WORDLINE RIGHT) providing a respective gate input to the access transistors 206 , 208 used to obtain access to the memory cell. The pair of access NFETs 206 , 208 is connected between a respective first side or complement side of the static latch and a complement bitline input BLC and a second side or true side of the static latch of the parallel reverse-connected inverters 202 , 204 and a true bit line BLT. NFETs 206 , 208 receive a respective gate input WLL (WORDLINE LEFT), WLR (WORDLINE RIGHT) that is activated, turning on the respective NFETs 206 , 208 .
In accordance with features of the invention, SRAM cell 200 includes a connection of voltage supply VDD to one side of the static latch defined by inverter 202 , 204 . For example, the complement side of the static latch is connected to the voltage supply, as shown in FIG. 2. With this modification to tie one side of the cell to VDD, no initialization of the SRAM cell 200 is required
In accordance with features of the invention, a plurality of the SRAM cells are assembled together with a domino read circuit to define a SRAM base block, as illustrated in FIG. 3. A plurality of the SRAM base blocks is connected together to form the SRAM read PSRO, as illustrated and described with respect to FIGS. 4 and 5.
FIG. 3 illustrates an exemplary SRAM base block generally designated by the reference character 300 used for implementing a performance sort ring oscillator (PSRO) in accordance with the preferred embodiment.
SRAM base block 300 includes a first column generally designated by 302 of a plurality of the SRAM cells 200 , # 1 - 3 coupled to first true and complement bitlines BLT 0 , BLC 0 and a second column generally designated by 304 of a plurality of the SRAM cells 200 , # 4 - 6 coupled to second true and complement bitlines BLT 1 , BLC 1 . The first column 302 of the SRAM cells receives a left wordline input WLL applied to SRAM cell 200 , # 2 and the second column 304 of the SRAM cells receives a right wordline input WLR applied to SRAM cell 200 , # 5 . An internal wordline node WL MID between the first and second columns 302 , 304 of the SRAM cells 200 provides a right wordline input applied to SRAM cell 200 , # 2 of the first column 302 of the SRAM cells 200 and a left wordline input applied to SRAM cell 200 , # 5 the second column 304 of the SRAM cells 200 .
As shown, the first column 302 of the SRAM cells 200 and the second column 304 of the SRAM cells 200 respectively includes one active SRAM cell 200 , # 2 , and SRAM cell 200 , # 5 . The remaining SRAM cells 200 , # 1 , 3 , SRAM cells 200 , # 4 , 6 include a gate input of the access NFETs tied to ground, and are provided to model bitline capacitance in the SRAM base block 300 .
While three SRAM cells 200 , # 1 - 3 , SRAM cells 200 , # 4 - 6 are shown, it should be understood that the invention is not limited to this illustrated arrangement. True and complement bit lines of the SRAM cells are continuous across a local SRAM cell group including a predefined number of SRAM cells 200 , for example sixteen (16) SRAM cells.
SRAM base block 300 includes a first precharge transistor 310 connected between a voltage supply and the first true bitline BLT 0 having a gate input connection to the internal wordline node WL MID for precharging the first true bitline BLT 0 with a low gate input WL MID. SRAM base block includes a first NAND gate 312 having an input connected to the first true bitline BLT 0 . SRAM base block 300 includes a first local evaluation circuit 314 coupled to the first true and complement bitlines and provides a second input of the first NAND gate 312 . The first NAND gate 312 provides an output of the first column 302 of SRAM cells 300 of the SRAM base block 300 .
SRAM base block 300 includes a second precharge transistor 316 connected between a voltage supply and the first true bitline BLT 1 having a gate input connection to the right wordline node WLR for precharging the second true bitline BLT 1 with a low gate input WLR. SRAM base block 300 includes a second NAND gate 318 having an input connected to the second true bitline BLT 1 . SRAM base block 300 includes a second local evaluation circuit 320 coupled to the second true and complement bitlines BLT 1 , BLC 1 and provides a second input of the second NAND gate 318 . The second NAND gate 318 provides an output WLOUT of the SRAM base block 300 .
In accordance with features of the invention, the SRAM base block includes a third NAND gate receiving a wordline input and a reset signal input and having an output applied by an inverter to the internal wordline node. The SRAM base block includes a fourth NAND gate having an input of the output of the first NAND gate and the reset signal input and having an output applied by an inverter to the right wordline input.
SRAM base block 300 includes a third NAND gate 322 receiving a wordline input WLIN and a reset signal input RESET and having an output applied by an inverter 324 to the internal wordline node WL MID. The SRAM base block 300 includes a fourth NAND gate 326 having an input of the output of the first NAND gate 312 indicated at NET 1 and the reset signal input RESET and having an output applied by an inverter 328 to the right wordline input WLR. The NAND gates 322 , 326 and inverters 324 , 328 model wordline driver delay in SRAM base block 300 . SRAM base block 300 shows the NAND gates 322 , 236 and inverters 324 , 328 driven to an optional higher voltage supply VCS; however, for chips with only a single voltage supply this would be VDD.
Operation of SRAM base block 300 may be understood as follows. The RESET signal starts high with WLIN low. For the base building block 300 , signal WLL can be ignored. While RESET is still high when WLIN goes high, WLMID will also goes high and this will cause net BLT 0 , the read bitline, to go low. When BLT 0 goes low, this causes NET 1 to go high and the same operation is repeated in the second column 304 of SRAM cells 200 , causing WLOUT to go high. The RESET signal comes into play with multiple base blocks 300 tiled together from left to right to form a performance sort ring oscillator (PSRO), as illustrated in FIGS. 4 and 5, and is feedback inverted to reset all the read bitlines in parallel as illustrated exemplary waveforms of FIG. 7.
FIG. 4 illustrates a tiling arrangement generally designated by the reference character 400 of the SRAM blocks 300 for implementing a performance sort ring oscillator (PSRO) in accordance with the preferred embodiment. A SRAM blocks 300 are tiled together as shown in FIG. 4 to implement an exemplary SRAM read performance sort ring oscillator (PSRO) as illustrated and described with respect to FIG. 5.
A reset signal RESET is applied in parallel to all the SRAM blocks 300 . An output WLOUT of a first SRAM base block 300 , # 1 is connected to the WLIN input of a next SRAM base block 300 , # 2 , as indicated at a line STG< 1 >. The right wordline input WLR of the first SRAM base block 300 , # 1 is connected to the left wordline input WLL input of a next SRAM base block 300 , # 2 , as indicated at a line WRL< 1 >.
The output WLOUT of the next SRAM base block 300 , # 2 is connected to the WLIN input of a next SRAM base block 300 , # 3 , as indicated at a line STG< 2 >. The right wordline input WLR of the first SRAM base block 300 , # 2 is connected to the left wordline input WLL input of a next SRAM base block 300 , # 3 , as indicated at a line WRL< 2 >. This tiling connection arrangement 400 is continued for all the SRAM blocks 300 in a chain forming a SRAM read PSRO.
FIG. 5 illustrates an exemplary SRAM read performance sort ring oscillator (PSRO) generally designated by the reference character 500 in accordance with the preferred embodiment.
SRAM read PSRO 500 includes a chain 502 of a plurality of SRAM base blocks 300 , # 1 - 10 connected together as illustrated in more detail in FIG. 4. The RESET signal is brought into all SRAM base blocks 300 , # 1 - 10 in parallel.
The RESET signal is applied in parallel to each of the plurality of the SRAM base blocks 300 so that the period of the ring oscillator output signal RINGOUT is a function of many series read operation but only a single precharge time.
As shown, the wordline input WLIN is applied to the first SRAM base block 300 , # 1 and the output WLOUT of the SRAM base block 300 , # 10 provides a feedback signal applied to an inverter 504 providing an inverted feedback signal applied to a NAND gate 506 . The inverted feedback signal is combined with a control signal GO by NAND gate 506 . The NAND gate 506 is used to stop and start the ring operation. The output of NAND gate 506 is applied to an inverter 508 providing an inverted controlled feedback signal applied to a NAND gate 510 . A plurality of inverters 512 , 514 , 516 , 518 is included in a ring output path to a second input to NAND gate 510 to expand the pulse width of the ring oscillator output signal RINGOUT. A final pair of inverters 522 , 522 is connected to the output of NAND gate 510 for providing the ring oscillator output signal RINGOUT FIG. 6 illustrates overall operation generally designated by the reference character 600 of the exemplary SRAM read PSRO 500 in accordance with the preferred embodiment. The control signal GO is shown going from low to high allowing ring operation of the SRAM read PSRO 500 , illustrated by the line labeled RINGOUT. The ring output signal RINGOUT produces a series of repeated pulses where the period is determined by the combination of the series read and single reset operation per pulse.
FIG. 7 illustrates internal operation generally designated by the reference character 700 of the exemplary SRAM read PSRO 500 in accordance with the preferred embodiment. FIG. 7 illustrates exemplary illustrated waveforms WLOUT coupled between the base building blocks 300 and labeled STG # 1 -# 10 with an input waveform WLIN applied to the first block 300 , # 1 . FIG. 7 illustrates how the restore done in parallel with each RINGOUT pulse and labeled PARALLEL RESTORE and the following series nature of the read labeled SERIES READ.
FIG. 8 shows a block diagram of an example design flow 800 . Design flow 800 may vary depending on the type of IC being designed. For example, a design flow 800 for building an application specific IC (ASIC) may differ from a design flow 800 for designing a standard component. Design structure 802 is preferably an input to a design process 804 and may come from an IP provider, a core developer, or other design company or may be generated by the operator of the design flow, or from other sources. Design structure 802 comprises circuits 200 , 300 , 400 , 500 in the form of schematics or HDL, a hardware-description language, for example, Verilog, VHDL, C, and the like. Design structure 802 may be contained on one or more machine readable medium. For example, design structure 802 may be a text file or a graphical representation of circuits 200 , 300 , 400 , 500 . Design process 804 preferably synthesizes, or translates, circuits 200 , 300 , 400 , 500 into a netlist 806 , where netlist 806 is, for example, a list of wires, transistors, logic gates, control circuits, I/O, models, etc. that describes the connections to other elements and circuits in an integrated circuit design and recorded on at least one of machine readable medium. This may be an iterative process in which netlist 806 is resynthesized one or more times depending on design specifications and parameters for the circuits.
Design process 804 may include using a variety of inputs; for example, inputs from library elements 808 which may house a set of commonly used elements, circuits, and devices, including models, layouts, and symbolic representations, for a given manufacturing technology, such as different technology nodes, 32 nm, 45 nm, 90 nm, and the like, design specifications 810 , characterization data 812 , verification data 814 , design rules 816 , and test data files 818 , which may include test patterns and other testing information. Design process 804 may further include, for example, standard circuit design processes such as timing analysis, verification, design rule checking, place and route operations, and the like. One of ordinary skill in the art of integrated circuit design can appreciate the extent of possible electronic design automation tools and applications used in design process 804 without deviating from the scope and spirit of the invention. The design structure of the invention is not limited to any specific design flow.
Design process 804 preferably translates an embodiment of the invention as shown in FIGS. 2, 3 , 4 , 5 along with any additional integrated circuit design or data (if applicable), into a second design structure 820 . Design structure 820 resides on a storage medium in a data format used for the exchange of layout data of integrated circuits, for example, information stored in a GDSII (GDS 2 ), GL 1 , OASIS, or any other suitable format for storing such design structures. Design structure 820 may comprise information such as, for example, test data files, design content files, manufacturing data, layout parameters, wires, levels of metal, vias, shapes, data for routing through the manufacturing line, and any other data required by a semiconductor manufacturer to produce an embodiment of the invention as shown in FIGS. 2, 3 , 4 , 5 . Design structure 820 may then proceed to a stage 822 where, for example, design structure 820 proceeds to tape-out, is released to manufacturing, is released to a mask house, is sent to another design house, is sent back to the customer, and the like.
While the present invention has been described with reference to the details of the embodiments of the invention shown in the drawing, these details are not intended to limit the scope of the invention as claimed in the appended claims.