This invention relates to integrated circuits, and more particularly, to circuitry such as memory circuitry that may incorporate asymmetric transistors and stacked transistors.
There is a trend with each successive generation of integrated circuit technology to scale transistors to smaller sizes, smaller threshold voltages, and smaller power supply voltages. Made properly, these adjustments allow improved performance and lowered costs. Care must be taken, however, to avoid issues such as excessive power consumption.
One aspect of lowering power consumption on an integrated circuit relates to transistor leakage currents. Leakage currents are undesired currents that flow between the terminals of a transistor during normal operation. An ideal transistor would exhibit no leakage. In the real world, however, leakage currents are unavoidable and must be minimized as best possible. If leakage currents are too high, a circuit may exhibit unacceptably large static power consumption. Particularly in circuits with large numbers of transistors, such as modern integrated circuits that include memory cells, leakage current minimization can be highly beneficial. Although leakage currents can be reduced by limiting power supply voltages and using less leaky transistors such as transistors with increased threshold voltages and reduced gate widths, these approaches tend to slow circuit speed and may not be acceptable for many designs.
It would therefore be desirable to be able to provide transistor structures that help improve the tradeoffs that exist between transistor performance and leakage current reduction.
An integrated circuit may be provided with asymmetric transistors and stacked transistors. Memory cells and other circuits in the integrated circuit may be provided with asymmetric transistors. For example, asymmetric transistors may be used as address transistors. Memory cells and other circuits in the integrated circuit may also be provided with stacked transistors. For example, stacked transistors may be used to replace some or all of the transistors used in forming bistable elements for memory cells.
Asymmetric transistors may be formed by creating an energy barrier at one source-drain terminal of a transistor and not the other. The energy barrier may be formed by creating a dopant implant of opposite doping type to that of the source-drain. Asymmetric transistors may also be formed using dual-gate structures having first and second gate conductors of different work functions.
Stacked transistors may be formed by stacking two transistors of the same channel type in series (i.e., two n-channel devices or two p-channel devices). One of the source-drain terminals of each of the two transistors is connected to a common node. The gates of the two transistors are also connected together. The two transistors may have different threshold voltages. The threshold voltage of the transistor that is located higher in the stacked transistor may be provided with a lower threshold voltage than the other transistor in the stacked transistor.
Further features of the invention, its nature and various advantages will be more apparent from the accompanying drawings and the following detailed description of the preferred embodiments.
An illustrative integrated circuit that may contain asymmetric and stacked transistors is shown in
Memory elements 20 can be used in any suitable integrated circuits that use memory. These integrated circuits may be memory chips, digital signal processing circuits with memory arrays, microprocessors, application specific integrated circuits with memory arrays, programmable integrated circuits such as programmable logic device integrated circuits in which memory elements are used for configuration memory, or any other suitable integrated circuit. For clarity, the use of memory elements 20 is sometimes be described in the context of programmable integrated circuits such as programmable logic device integrated circuits. This is, however, merely illustrative. Memory cells 20 and the asymmetric and stacked transistors in such memory cells may be used in any suitable circuits.
On integrated circuits such as memory chips or other circuits in which memory is needed to store processing data, memory elements 20 can be used to perform the functions of static random-access memory (RAM) cells and are sometimes referred to as SRAM cells. In the context of programmable logic device integrated circuits, memory elements 20 can be used to store configuration data and are therefore sometimes referred to in this context as configuration random-access memory (CRAM) cells.
As shown in
Integrated circuit 10 may contain volatile memory elements 20. For example, integrated circuit 10 may be a programmable integrated circuit such as a programmable logic device integrated circuit that can be loaded with configuration data (also called programming data) using pins 14 and input/output circuitry 12. Once memory elements 20 are loaded in this way, the memory elements each provide a corresponding static control output signal that controls the state of an associated logic component in programmable logic 18. If desired, memory elements 20 may be used in SRAM-type memory arrays (e.g., to store data for processing circuitry during operation of device 10).
Each memory element 20 may be formed from a number of transistors configured to form a bistable circuit (i.e., a latch-type circuit). True and complement data storage nodes in the bistable circuit element can store corresponding true and complement versions of a data bit.
A bistable circuit element may be based on any suitable number of transistors. For example, the bistable portion of each memory element may be formed from cross-coupled inverters, from groups of multiple inverter-like circuits (e.g., in a distributed configuration that provides enhanced immunity from soft-error-upset events, etc.). Arrangements with bistable elements formed from cross-coupled inverter pairs are sometimes described herein as an example. This is, however, merely illustrative. Memory elements 20 may be formed using any suitable memory cell architecture.
With one suitable approach, complementary metal-oxide-semiconductor (CMOS) integrated circuit technology is used to form the memory elements 20, so CMOS-based memory element implementations are described herein as an example. If desired, other integrated circuit technologies may be used to form the memory elements and the integrated circuit in which the memory elements are used to form memory arrays.
The memory elements may be loaded from any suitable source of data. As an example, memory elements 20 may be loaded with configuration data from an external erasable-programmable read-only memory and control chip or other suitable data source via pins 14 and input/output circuitry 12. Loaded CRAM memory elements 20 may provide static control signals that are applied to the terminals (e.g., gates) of circuit elements (e.g., metal-oxide-semiconductor transistors) in programmable logic 18 to control those elements (e.g., to turn certain transistors on or off) and thereby configure the logic in programmable logic 18. The circuit elements may be transistors such as pass transistors, parts of multiplexers, look-up tables, logic arrays, AND, OR, NAND, and NOR logic gates, etc.
The memory elements 20 may be arranged in an array pattern. In a typical modern integrated circuit such as a programmable integrated circuit, there may be millions of memory elements 20 on each chip. During programming operations, the array of memory elements is provided with configuration data by a user (e.g., a logic designer). Once loaded with configuration data, the memory elements 20 produce static control signals at their outputs that selectively control portions of the circuitry in the programmable logic 18 and thereby customize its functions so that it will operate as desired.
The circuitry of device 10 may be organized using any suitable architecture. As an example, the logic of device 10 may be organized in a series of rows and columns of larger programmable logic regions each of which contains multiple smaller logic regions. The logic resources of device 10 may be interconnected by interconnection resources 16 such as associated vertical and horizontal conductors. These conductors may include global conductive lines that span substantially all of device 10, fractional lines such as half-lines or quarter lines that span part of device 10, staggered lines of a particular length (e.g., sufficient to interconnect several logic areas), smaller local lines, or any other suitable interconnection resource arrangement. If desired, the logic of device 10 may be arranged in more levels or layers in which multiple large regions are interconnected to form still larger portions of logic. Still other device arrangements may use logic that is not arranged in rows and columns.
When memory elements 20 are arranged in an array, horizontal and vertical conductors and associated loading circuitry may be used to load the memory elements with configuration data. Any suitable memory array architecture may be used for memory elements 20. One suitable arrangement is shown in
As shown in
Array 28 may include rows and columns of memory cells 20. In the example of
Lines such as lines 32, 34, 36, and 38 may be used to distribute signals in array 28. One or more lines per column such as lines 34 may be used to load data into cells 20 and may be used to read data out from cells 20. Lines 34 may sometimes be referred to as data lines or bitlines. One or more lines 34 per row may be used to convey address signals and may sometimes be referred to as address lines or word lines. In some array configurations, the cells of the array may be cleared (e.g., during power-up operations). Array 28 may be cleared by writing zeros into the array using through the data lines or by asserting one or more global clear signals using a global (or nearly global) network of clear lines such as clear lines 36.
During data writing operation, write drivers in circuitry 24 may supply data to array 28 on lines 34 (e.g., in appropriate columns of the array) while appropriate address lines are asserted to define the desired array location (i.e., the appropriate rows of the array) to which the data is to be written. During read operations, appropriate address lines are asserted to define the desired array location from which data is to be read (i.e., appropriate rows) while the outputs of appropriate data lines 34 are monitored (e.g., using sense amplifiers). Single-ended and differential schemes may be used for reading and/or writing. In differential write schemes, a pair of true and complement data lines are used. In differential read schemes, a differential sense amplifier may be used in reading signals from a pair of true and complement data lines.
In circuits such as circuit 10, asymmetric transistors and/or stacked transistors can be used to improve the tradeoff between transistor performance (i.e., drive strength and therefore speed) and leakage current (i.e., static power consumption). These arrangements may be used to improve transistor speed while maintaining existing levels of leakage current performance or even somewhat relaxing leakage current performance. These arrangements may also be used to improve leakage current performance while maintaining or even somewhat reducing transistor performance. Arrangements in which leakage current and transistor performance are simultaneously improved are also possible.
A metal-oxide-semiconductor (MOS) transistor has four terminals: a source, a drain, a gate that overlies a channel region, and a body. The source and drain are sometimes collectively referred to as source-drain terminals. By convention, the drain of an MOS transistor is typically the source-drain terminal that is biased high, whereas the source is grounded or biased at a lower voltage. Because the labels “source” and “drain” may therefore be context-sensitive, it may sometimes be clearest to refer to the both the source and the drain of a MOS transistor as being “source-drain” terminals or “source-drains.”
In a symmetric transistor, the source-drain terminals of the transistors are substantially identical. It therefore does not matter whether the source-drain terminals of a symmetrical transistor are reversed, as performance will not significantly change. In an asymmetric transistor, however, there is an energy barrier at one of the source-drain terminals that is not present at the other of the source-drain terminals. This leads to different performance characteristics depending on how the transistor is operated.
Asymmetric transistors may be formed by adjusting the sizes, shapes, and materials of the structures that make up the transistor. With one suitable arrangement, an asymmetric transistor is formed by making a one-sided energy-barrier-inducing pocket implant. This type of approach is shown in
Initially, as shown in
As shown in
The doping type of the pocket implant P in an asymmetric transistor is of the opposite doping type to that of the source-drain implants. For example, if the source-drains of a given transistor are n-type, the pocket implant in that transistor will be p-type (i.e., p+). In n-channel metal-oxide-semiconductor (NMOS) asymmetric transistors, the source-drain terminals are n-type and doping type of semiconductor channel region is p-type. The pocket implant in an NMOS asymmetric transistor will therefore be p-type. In p-channel metal-oxide-semiconductor (PMOS) asymmetric transistors, the source-drain terminals are p-type. The pocket implant in a p-channel asymmetric transistor will therefore be n-type.
To complete formation of the source-drain terminals, a high density implant operation may be performed. Spacers SP (
Another way in which to form an asymmetric transistor involves the use of a dual gate structure. As shown in
Over the portion of the channel region that would conventionally contain an energy-barrier-inducing pocket implant, the gate may be formed from a metal with a relatively high work function. In an n-channel metal-oxide-semiconductor transistor, this metal may, for example, have a work function of about 5.1 eV, which makes its electrical performance comparable to that of a heavily doped p-type gate conductor such as a p+ polysilicon gate conductor. Over the remaining portion of the channel region in the n-channel transistor, the gate may be formed from a metal that has a relatively low work function. This portion of the gate may, for example, have a work function of about 4.2 eV, which makes its electrical performance comparable to that of a heavily doped n-type gate conductor such as an n+ polysilicon gate conductor. Other arrangements may also be used such as arrangements in which the metal work functions for different gate conductors differ by different amounts (e.g., by less than 0.3 eV, by 0.3 eV or more, by at least 0.6 eV, by at least 0.9 eV, etc.). P-channel metal-oxide-semiconductor asymmetric transistors may also be formed using mixed gates (i.e., gate conductors with different work functions).
Both the asymmetric transistor of
The asymmetric performance of an asymmetric transistor may be understood with reference to the energy band diagrams of
When writing a logic zero from source-drain SDA to source-drain SDB, electrons initially need not overcome barrier EB. Rather, electrons may accelerate due to the electric field present in region A. After accelerating in region A, the electrons can surmount energy barrier EB with relative ease. The configuration of
When writing a logic one from source-drain SDA to source-drain SDB, however, electrons are initially required to surmount energy barrier EB, before reaching region A. This is a less favorable condition than the situation in
A graph showing how more drain-source current flows through an asymmetric transistor when operated in the strong mode rather than the weak mode is shown in
In addition to serving as address transistors, asymmetric transistors may be used in other portions of a memory cell or in other circuits on device 10. In some configurations, stacked transistors that are formed from multiple series-connected transistors, may be used alone or in combination with asymmetric transistors. For example, memory cells and other circuits may be provided with both stacked transistors and asymmetric transistors.
An illustrative memory cell circuit in which asymmetric transistors and stacked transistors may be used is shown in
As shown in
Cell 20 may include true and complement data storage node. True data storage node ND may hold a true version of the data bit that is being stored in cell 20. Complementary data storage node CND may store an inverted (complementary) version of the data bit on node ND. These stored values are therefore complementary to each other, but both represent the same stored data. Either the data on node ND or the data on node CND may be used as an output. In the example of
Cell 20 may receive address signals such as read address signal RADD and write address signal WADD on address lines (word lines) 32. Write address signal WADD and read address signal RADD may be asserted independently. During write operations, write control signal WADD is systematically asserted (e.g., taken high) in each row into which data is being written, while all read address signals RADD in the memory array are maintained low (e.g., by deasserting all RADD lines). During read operations, all WADD signals in the array are deasserted, while read control signal RADD is systematically asserted in all rows of memory array from which it is desired to read data.
Data may be routed to and from memory cell 20 using data lines (bit lines) 34. Data that is to be written into cell 20 may be provided to cell 20 on as write data signal WDATA. Data read from cell 20 (RDATA) may be read out from bistable element BE using an address transistor or, as shown in the example of
Clear signals may be supplied to clear transistor M6 during power-up operations (i.e., signal CLR may be asserted when cell 20 is powered up, thereby clearing cell 20 and ensuring that output signal OUT on output line 38 will initially be low).
Transistor M5 may be formed from an asymmetric transistor. With this type of arrangement, the asymmetric performance of transistor M5 can help improve the tradeoff between leakage and performance for cell 20.
During power-up, cells 20 are cleared. This places a logic zero on the data storage node ND in each cell (i.e., a ground voltage Vss) and a logic high on each complementary data storage node CND. When loading data into array 28 (
A “flip” of node ND from zero to one is accomplished by driving a logic zero onto complementary data node CND. In cleared cells, CND is initially at a logic one value. Successful data writing operations therefore involve overpowering bistable element BE so that the initial logic one on node CND is overwritten with a logic zero.
When driving a logic zero onto node CND to replace a logic one on node CND, the asymmetric nature of transistor M5 assists the writing process. As shown in
When using an asymmetric transistor for transistor M5 of cell 20, transistor M5 exhibits a weakened ability to drive a logic zero from node CND onto a logic one on source-drain SDA. This is acceptable in the cell arrangement of
In the example of
If desired, differential schemes may be used for writing, reading, and/or clearing operations. For example, a pair of address transistors may be used for performing differential write operations and the same pair of address transistors may be used for performing differential read operations. With this type of arrangement, clear operations may be performed by loading cells with logic zeros. Asymmetric transistors may be used for one or both of the address transistors with this type of approach.
Another illustrative arrangement is shown in
Leakage currents in memory cells 20 and other circuits on device 10 may also be reduced using stacked transistors. An illustrative n-channel metal-oxide-semiconductor (NMOS) stacked transistor TN is shown in
As shown in the example of
There are two contributions to static leakage—body leakage current Iboff and source-drain leakage current Isoff. As shown in
The way in which leakage currents are limited in stacked transistors can be understood with reference to the graph of
Consider, as an example, a scenario in which terminal SDU is biased at 1.0 volts and terminal SDL is biased at 0 volts. Gate G is biased at 0 volts to turn off transistor TN. With gate G at 0 volts, the gates of both transistors T1 and T2 are at 0 volts. The voltage at node N in this type of situation will tend to equilibrate at a value near to the voltage at SDL. For example, the voltage at node N might be 0.15 volts (as an example). In a conventional (not stacked) transistor, the drain-source voltage of the transistor would be 1.0 volts and the transistor would exhibit leakage currents of Isoffr and Iboffr. In a stacked transistor such as stacked transistor TN of
Iboff for transistor T2 will be relatively low (see, e.g., Ibofff2 in
Further reductions in leakage current may be achieved by lowering the threshold voltage of transistor T1 relative to that of transistor T2. The value of Iboff tends to decrease with reductions in threshold voltage and tends to increase with increases in threshold voltage. To reduce Iboff1, the threshold voltage VT1 of transistor T1 may therefore be lowered. For example, threshold voltage VT1 of transistor T1 may be lowered relative to threshold voltage VT2 of transistor T2. When VT1 is reduced relative to VT2, Iboff1 will be reduced, thereby reducing the overall Iboff of stacked transistor TN. Isoff1 will not be able to rise in response to the reduction in VT1, because Isoff1 is pinned at the value of Isoff2 due to the series connection of T1 and T2.
In a typical semiconductor fabrication process, it may be possible to fabricate different types of transistors on the same integrated circuit die. For example, the process may allow a circuit designer to choose between two, three, or more than three different transistor types, each of which may have a different threshold voltage. A process may, for example, allow a first set of transistors to be fabricated with a threshold voltage of about 0.05 volts to 0.15 volts (so-called low VT or LVT transistors), a second set of transistors to be fabricated with a threshold voltage of about 0.15 volts to 0.3 volts (so-called high VT or HVT transistors), and a third set of transistors to be fabricated with a threshold voltages of about 0.3 to 0.5 volts (so-called ultra-high VT or UHVT transistors). In this type of illustrative environment, transistor T1 may be implemented with an LVT transistor (e.g., VT1=0.1 volts) and transistor T2 may be implemented with a UHVT transistor (e.g., VT2=0.4 volts), as an example. Other illustrative configurations for T1/T2 that may be implemented in this type of process environment are LVT/HVT and LVT/UHVT pairs. Stacked transistors with T1/T2 configurations of LVT/LVT, HVT/HVT, or UHVT/UHVT may also be used, although these configurations will typically exhibit somewhat larger Iboff values then configurations in which VT1 is less than VT2.
Stacked transistors such as transistor TN of
As an example, transistors such as transistors M1 and M3 (and, if desired, transistors M2 and M4) in bistable elements BE of cells 20 (see, e.g.,
If desired, stacked transistors and/or asymmetric transistors may be used in memory cells with bistable elements that are formed from more than four transistors (i.e., more transistors than are contained in a pair of cross-coupled inverters). For example, it may be desirable to form a bistable element from four interconnected inverter-like circuits to provide enhanced immunity to soft error upset events due to radiation strikes. In this type of arrangement, eight transistors may be used to implement bistable element BE.
Data can be conveyed over true and complement data lines DATA and NDATA. Address signal ADD may be used to control address transistors TA. Memory cell 20 may be cleared by loading logic zeros into cell 20. Differential reading and writing operations may be performed using differential data lines DATA and NDATA.
There are four labeled nodes in memory element 20 of
Memory element 20 exhibits bistable operation. When memory element has been loaded with a “1,” the values of X0, X1, X2, and X3 will be “1,” “0,”, “1,” and “0,” respectively. When memory element has been loaded with a “0,” the values of X0, X1, X2, and X3 will be “0,” “1,”, “0,” and “1,” respectively. The architecture of memory element 20 of
In the illustrative configuration of
Consider, as an example, the situation in which it is desired to load a 1 onto node X2. If node X2 is already high, no transitions will take place during data loading operations. If, however, the current state of node X2 is low, transitions will occur.
When loading a logic one onto a low node X2, data signal DATA will be 1 (high) and its complement NDATA will be 0 (low). While DATA is high, address line ADD is taken high to turn on transistors TA. When transistors TA are turned on by the high ADD signal, transistors TA drive logic one values onto nodes X2 and X0 and drive logic zero values onto nodes X1 and X3. When loading a logic zero, these signal values are reversed. During read operations, the values of the signals on lines DATA and NDATA are monitored using sense amplifier circuitry while address signal ADD is asserted.
In memory cell 20 of
Memory cell 20 of
Memory cell 20 of
If desired, address transistors M5 and M6 may be implemented using asymmetric transistors. For example, transistors M5 and M6 may be provided with pocket implants P as shown in
The foregoing is merely illustrative of the principles of this invention and various modifications can be made by those skilled in the art without departing from the scope and spirit of the invention.
Number | Name | Date | Kind |
---|---|---|---|
4114049 | Suzuki | Sep 1978 | A |
4175290 | Harari | Nov 1979 | A |
4387444 | Edwards | Jun 1983 | A |
4596938 | Cartwright, Jr. | Jun 1986 | A |
4714519 | Pfiester | Dec 1987 | A |
4894801 | Saito et al. | Jan 1990 | A |
5175605 | Pavlu et al. | Dec 1992 | A |
5296401 | Mitsui et al. | Mar 1994 | A |
5363328 | Browning, III et al. | Nov 1994 | A |
5541549 | Kubota | Jul 1996 | A |
5576238 | Fu | Nov 1996 | A |
5753958 | Burr et al. | May 1998 | A |
5973533 | Nagaoka | Oct 1999 | A |
5977591 | Fratin et al. | Nov 1999 | A |
6033957 | Burns, Jr. et al. | Mar 2000 | A |
6097070 | Mandelman | Aug 2000 | A |
6110783 | Burr | Aug 2000 | A |
6255174 | Yu | Jul 2001 | B1 |
6278290 | Young | Aug 2001 | B1 |
6466489 | Ieong et al. | Oct 2002 | B1 |
6487134 | Thoma et al. | Nov 2002 | B2 |
6501295 | Burr | Dec 2002 | B1 |
6620679 | Tzeng et al. | Sep 2003 | B1 |
6653698 | Lee et al. | Nov 2003 | B2 |
6807081 | Nii | Oct 2004 | B2 |
6949423 | Ma et al. | Sep 2005 | B1 |
7193269 | Toda et al. | Mar 2007 | B2 |
7307905 | Najm et al. | Dec 2007 | B2 |
7332780 | Matsuda et al. | Feb 2008 | B2 |
7362606 | Chuang et al. | Apr 2008 | B2 |
7408800 | Braceras et al. | Aug 2008 | B1 |
7436696 | Wang et al. | Oct 2008 | B2 |
7504850 | Kuboyama et al. | Mar 2009 | B2 |
7511989 | Thomas et al. | Mar 2009 | B2 |
7532501 | Joshi et al. | May 2009 | B2 |
7545007 | Greer et al. | Jun 2009 | B2 |
7652520 | Gatta | Jan 2010 | B2 |
7672152 | Kulkarni et al. | Mar 2010 | B1 |
7876602 | Lawrence et al. | Jan 2011 | B2 |
7888959 | Cannon et al. | Feb 2011 | B2 |
7920410 | Lee et al. | Apr 2011 | B1 |
8036022 | Anderson et al. | Oct 2011 | B2 |
8116118 | Thomas et al. | Feb 2012 | B2 |
20010017390 | Long et al. | Aug 2001 | A1 |
20030141525 | Nowak | Jul 2003 | A1 |
20030181005 | Hachimine et al. | Sep 2003 | A1 |
20040140483 | Yonemaru | Jul 2004 | A1 |
20050224897 | Chen et al. | Oct 2005 | A1 |
20060187700 | Ho | Aug 2006 | A1 |
20070029587 | Greer et al. | Feb 2007 | A1 |
20070262382 | Ishii et al. | Nov 2007 | A1 |
20080308870 | Faul et al. | Dec 2008 | A1 |
20090185409 | Bansal et al. | Jul 2009 | A1 |
20100080035 | Venkatraman et al. | Apr 2010 | A1 |
20100177556 | Chen et al. | Jul 2010 | A1 |
Number | Date | Country |
---|---|---|
1992053 | Sep 1998 | CN |
1938858 | Mar 2007 | CN |
2005096387 | Oct 2005 | WO |
Entry |
---|
Rahim et al., U.S. Appl. No. 12/568,638, filed Sep. 28, 2009. |
Lee et al., U.S. Appl. No. 12/391,230, filed Feb. 23, 2009. |
Liu et al., U.S. Appl. No. 12/790,660, filed May 28, 2010. |
Kim et al., “Relaxing Conflict Between Read Stability and Writability in 6T SRAM Cell Using Asymmetric Transistors”, IEEE Electron Device Letters, vol. 30, No. 8, Aug. 2009. |
Zhou et al. “A Novel Hetero-Material Gate (HMG) MOSFET for Deep-Submicron VLSI Technology”, IEEE Transactions on Electron Devices, vol. 45, No. 12, Dec. 1998. |
Ratnakumar et al., U.S. Appl. No. 12/324,789, filed Nov. 26, 2008. |
Liu et al., U.S. Appl. No. 12/324,791, filed Nov. 26, 2008. |
Xiang et al., U.S. Appl. No. 12/069,271, filed Feb. 8, 2008. |
Xiang et al., U.S. Appl. No. 60/964,917, filed Aug. 16, 2007. |
Liu et al., U.S. Appl. No. 12/629,831, filed Dec. 2, 2009. |
Sinha et al., U.S. Appl. No. 13/110,823, filed May 18, 2011. |