throbber
US006166984A
`6,166,984
`[11] Patent Number:
`United States Patent
`Bohac, Jr.
`[45] Date of Patent:
`Dec. 26, 2000
`
`
`(15
`
`[54] NON-VOLATILE COUNTER
`
`[75]
`
`Inventor: Frank John Bohac, Jr., Tustin, Calif.
`
`Primary Examiner—Terrell W. Fears
`Attorney, Agent, or Firm—Blakely Sokoloff Taylor &
`Zafman LLP
`
`[73] Assignee: Custom Silicon Solutions, Inc.,
`Huntington Beach, Calif.
`
`[57]
`
`ABSTRACT
`
`[21] Appl. No.: 09/360,404
`
`.
`;
`;
`invention relates to a
`the present
`In one embodiment,
`particular configuration of a non-volatile counter, which
`significantly reduces the amount of area required for imple-
`mentationin an integrated circuit and improvesits reliability
`Jul. 23, 1999
`Filed:
`[22]
`of operation. This is accomplished by (1) replacing the
`Tint, C07 iccccccccssssscsssssssstsessetesneten G1IC 13/00
`FSU]
`volatile binary counter with a volatile counter coded for
`[52] US. Cl
`365/229; 365/226
`
`More equal distribution the changes in logic state over the
`[58] Field of Searchccs 365/51, 185.18,
`entire counter, (2) replacing the non-volatile latch circuit
`365/185.26, 185.27
`oe with a single non-volatile memory element, and (3) devel-
`oping testing techniques for complete and efficient testing of
`the critical non-volatile memory elements.
`
`[56]
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`5,656,840
`
`8/1997 Yang ose eceeeeeecetenees 365/185.27
`
`22 Claims, 11 Drawing Sheets
`
`READIB &———_+
`
`-
`
`VDD
`
`READB ©
`
`EGND
`
`630
`
`620
`sho
`>
`RGND © ee
`
`oLE
`
`—0
`
`STORE ©
`
`DATAB > es
`445 ay
`
`440
`4
`
`\ 430
`
`435
`
`VPP >
`
`STOREB ©
`
`GND @>
`
`aa

`
`> DATAOUT
`
`Google Exhibit 1007
`Google Exhibit 1007
`Google v. Valtrus
`Google v. Valtrus
`
`

`

`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 1 of 11
`
`6,166,984
`
`\Vv
`
`9S¢¢70
`
`OZ1~oor—
`
`
`
`JoauqAeydsiqJoyuNo?DDg2Ne[OA-UON
`
`
`
`sostndsourjsiq
`
`[adns1y
`
`
`
`
`

`

`6,166,984
`
`SEC
`
`7aAns1
`
`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 2 of 11
`
`OLE
`
`(F)SLAdLNO
`
`Ose
`
`UALYAANOOD
`
`qdoddd
`
`
`
`ALRAM/AIVaa
`
`JOULINOD
`
` TOT
`
`
`
`
`(ry)SINdLOOSNA
`
`TAaDOVIS
`
`
`
`

`

`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 3 of 11
`
`6,166,984
`
`DATAIN1
`
`DATAIN2
`
`DATAIN3
`
`DATAIN4
`
`205;
`
`350
`
`NV MEMORYREGISTER 3/0
`CINB
`330
`
`READIB
`
`READB
`
`LGND
`
`RGND
`
`VPP
`
`STORE
`
`DATAOUT1
`
`DATAOUT2
`
`DATAOUT3
`
`DATAOUT4
`
`NVOUTI
`
`| NVOUT2
`ry NVOUT3
`v
`NVOUT4
`
`RESETB
`
`TESTB
`
`CLOCKN
`
`PSEUDO GRAY DECADE COUNTER
`
`320
`
`BUS INTERFACE
`
`Figure 3
`
`

`

`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 4 of 11
`
`6,166,984
`
`INOVLIVd
`
`pfaANSLY
`
`1~
`
`~
`~*~
`
`

`

`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 5 of 11
`
`6,166,984
`
`dda
`
`GND
`
`dada
`
`CND
`
`dda
`
`daND
`
`eTHepoauoujtGND
`
`
`
`"Jf0,,poumuueiso1d
`
`
`
`SIOOPJO}sIsUeT)
`
`¢AANSLY
`
`[(reo7.u0p)x=aV.LVa
`
`
`
`
`
`|(ares1,u0p)X=VLVd
`
`
`
`
`
`

`

`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 6 of 11
`
`6,166,984
`
`LNOVLVda—1—~<]
`
`
`
`
`
`cop<?--————_—_—_—————__<glavau
`
`orgSYSoogdavay
`097De
`
`ddA
`
`O190091zoZ
`
`0&9
`
`[TrooR3UNDY
`
`
`aUND]
`
`

`

`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 7 of 11
`
`6,166,984
`
`d[eTOAUON
`
`
`QA-),SU0,,0)potuueISo1dIo}sIsuRI]
`
`LAns
`
`

`

`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 8 of 11
`
`6,166,984
`
`STORE
`
`VDD.
`GND.
`
`~ GND.
`
`VDD.
`
`GND.
`-VDD_
`
`GND.
`
`NPP.
`
`VPP
`
`VDD.
`
`GND
`
`_ VPP
`
`VPP
`
`VDD+tIVPPI = ~ 16 V
`
`|
`
`|
`
`GND
`
`READIB=VDDi —_¥y
`READB = VDD
`
`
`
`Figure 8
`
`

`

`U.S. Patent
`
`
`
`1+_<]£€LNOAN
`
`11_<ZTLMOAN
`
`<pLNOAN
`
`<511NOAN
`
`Dec. 26, 2000
`
`Sheet 9 of 11
`
`6,166,984
`
`
`
`dpO0<a
`
`ize
`
`qoa
`
`OzE
`
`
` toyaoqo—<3€NIO
`o7ooNIDOTO
`6AANSL]
`
`daLnoo<a{|
`
`OZ
`
`ANY00£
`
`<)HLASHTYa
`
`

`

`U.S. Patent
`
`Dee. 26, 2000
`
`Sheet 10 of 11
`
`6,166,984
`
`OTaansiy
`
`008
`
`018xladav
`
`
`
`—___<]xz7uadav
`
`<_})a10
`
`XuUYddv
`
`<<]dzO
`
`<7dO
`
`<]dr
`
`

`

`6,166,984
`
`[[aans1y
`
`LNOPVO<
`
`--<
`
`<]¢Snd
`
`<7]vSNd
`
`S N
`
`-
`a
`wr
`xs
`N
`
`wa|- =
`
`<jcSNd
`
`Isnd
`
`U.S. Patent
`
`Dec. 26, 2000
`
`Sheet 11 of 11
`
`LnNOzaahLN0Id—C|
`
`
`
`

`

`6,166,984
`
`1
`NON-VOLATILE COUNTER
`BACKGROUND
`
`1. Field
`This invention rclates to non-volatile clectronic counters
`in integrated circuits, more specifically, a counter which can
`store volatile digital data in a non-volatile register prior to
`power outage and can recall the data following the power
`outage.
`2. General Background
`Non-volatile counters implemented in integrated circuits
`typically consist of a volatile counter that has the capability
`of transferring its contents to a non-volatile register prior to
`powerbeing removed. When poweris restored, the contents
`of the non-volatile register (retained during the power off
`condition) are transferred back into the volatile counter and
`counting can continue where it ended prior to the disruption
`of power. This integrated circuit configuration is typically
`implemented with (i) binary volatile counter well known in
`the industry and (ii) one or more non-volatile registers
`(referred to as a “latch circuit”) as set forth in U.S. Pat. No.
`4,571,704.
`This latch circuit configuration is complex to design and
`occupies a large amount of area when implemented in an
`integrated circuit. Kor example, the latch circuit requires two
`non-volatile transistors to store its logic state during the
`power off condition, one for each side of the latch circuit.
`Often, since the non-volatile memory elements have a
`limited lifetime, two non-volatile transistors are used for
`each side of the latch circuit
`to provide more reliable
`operation through redundancy. Since the non-volatile tran-
`sistors used in the latch circuit are all relatively large, the use
`of four non-volatile transistors to store one bit of data is an
`inefficient use of area in the integrated circuit and results in
`a high implementation cost.
`There are also reliability concerns for this implementa-
`tion. Under conventional memorydesigns, non-volatile tran-
`sistors placed in a parallel redundant mannerare tested in a
`collective manner by monitoring a voltage level at a shared
`node. These transistors cannot be tested independently after
`manufacture. One difficulty is that that non-volatile transis-
`tors typically reside in an “open” or non-conducting state
`upon failure. Therefore, if one of the transistors has failed
`and no redundancyis present,the testing may still reveal that
`the latch circuit is operating properly. This has an effect on
`long term reliability of the non-volatile counters.
`Also, a general reliability problem in non-volatile
`counters is that the volatile counter is typically coded in
`binary, where the least significant bits change state substan-
`tially more often than the mostsignificantbits in the counter.
`Therefore, when information in the counter is transferred
`into the non-volatile latches, the latches receiving the Icast
`significant bits change state more often than those receiving
`the more significant bits. As a result, the latches responsible
`for storing the least significantbit of the volatile counter will
`normally fail well before latches associated with the other
`bits. In manysituations, the volatile counter is implemented
`in a binary coded decimal configuration (a decimal
`configuration, with each decimal coded in binary and often
`referred to as a “BCD”configuration) rather than a straight
`binary counter. The reliability problem is the same for this
`configuration, as the least significant bits of each decimal
`stage change state in a binary fashion and the lower order
`decimal stages change state more often than the higher order
`stages.
`
`SUMMARY
`
`In one embodiment, the present invention relates to a
`particular configuration of a non-volatile counter, which
`
`10
`
`15
`
`30
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`significantly reduces the amount of area required for imple-
`mentation in an integrated circuit and improvesits reliability
`of operation. This is accomplished by (1) replacing the
`volatile binary counter with a volatile counter coded for
`more equal distribution the changes in logic state over the
`entire counter, (2) replacing the non-volatile latch circuit
`with a single non-volatile memory element, and (3) devel-
`oping testing techniques for complete and efficient testing of
`the critical non-volatile memory elements.
`This configuration for the volatile counter significantly
`improvesthe reliability by reducing the maximum number
`of times bits of the non-volatile memory clementare likely
`to change during the lifetime of the volatile counter. By
`more equally distributing the count overall the bits of the
`register,
`the typical characteristic for failure of the least
`significant bits is climinated. The decimal counting configu-
`ration is ideal for using this new counting algorithm sinceit
`requires the same numberof flip-flops as a (BCD) counter,
`yet reduces the maximum numberof state changes by a
`factor of approximately 2.5.
`The non-volatile memory element in this invention is a
`single element, such as a single non-volatile memory tran-
`sistor. This transistor is programmed to reside in either an
`ONor OFFstate, depending on the state the volatile counter
`at power-down. At power-on,a bias current is applied to the
`non-volatile transistor to determine its state, either ON or
`OFF. This increased simplicity, compared to the prior art,
`which consisted of two non-volatile transistors configured in
`a latching circuit, would result in reduced silicon area which
`makesthe integrated circuit in whichit is fabricated smaller
`and less expensive. In addition, it is simple in this case to add
`parallel redundancy to improve the reliability of the non-
`volatile transistor. Since there is only one non-volatile
`transistor, only one redundanttransistor would be needed.
`Also, since the non-volatile transistors are not in a latching
`configuration,
`it
`is easy to test
`them individually after
`manufacture to assure both are working. This assures the
`redundancy, and hence the required reliability is achieved.
`BRILI DESCRIPTION OP THE DRAWINGS
`
`The features and advantages of the present invention will
`become apparent from the following detailed description of
`the present invention in which:
`FIG. 1 is an illustrative embodiment of a non-volatile
`
`counter employed in an odometer system.
`FIG. 2 is an illustrative block diagram of an N-stage
`non-volatile binary coded decimal (BCD) counter including
`a pseudo gray-to-BCD (PGBCD) converter.
`FIG. 3 is an illustrative block diagram of an embodiment
`of a single stage of the non-volatile BCD counter of FIG. 2.
`FIG. 4 is an illustrative block diagram of an embodiment
`of a non-volatile memory cell and programming and reading
`circuitry employed in the single stage of FIG. 3.
`FIG. 5 is an illustrative diagram of READ waveforms for
`understanding the operation of the non-volatile memory cell
`of FIG. 4.
`
`FIG. 6 is an illustrative block diagram of an embodiment
`of a non-volatile memory cell with redundancy and pro-
`grammingandreading circuitry employedin the single stage
`of FIG. 3.
`
`VIG. 7 is an illustrative diagram of an embodiment of a
`non-volatile memory transistor test waveform to test the
`non-volatile transistors associated with the non-volatile
`
`memory ccll of FIG. 6.
`FIG. 8 is an illustrative diagram of an embodiment of
`programming waveforms necessary to program the non-
`volatile memorycell of FIG. 4.
`
`

`

`6,166,984
`
`3
`FIG. 9 is anillustrative block diagram of an embodiment
`of a pseudo gray decade counter of FIG. 3 and associated
`input/output circuitry of FIG. 3.
`FIG. 10 is an illustrative block diagram of an embodiment
`of circuitry of the bus interface of FIG. 3.
`FIG. 11 is an illustrative block diagram of an embodiment
`of logic forming the PGBCD converter of FIG. 2.
`DETAILED DESCRIPTION
`
`Herein, embodiments of an improved non-volatile counter
`are illustrated in FIGS. 1-11. The non-volatile counter is
`
`designed to significantly reduce the amount of area needed
`for implementation in an integrated circuit and to improve
`reliability. This is accomplished by implementing (i) a
`counter that more cqually distributes changesin logic state
`over the entire counter in lieu a volatile binary counter and
`Gi)
`a single non-volatile memory element
`in lieu of a
`non-volatile latch circuit. Also, the improved non-volatile
`counter provides for complete and efficient testing of the
`critical non-volatile memory elements.
`In the following description, certain terminology is used
`to describe characteristics of the present invention as well as
`its functionality. For example, a “counter” includes logic
`that adjusts a count value by incrementing or decrementing
`the count value. The term “high” indicates that a signalis at
`a predetermined voltage (e.g., 4-5 volts). The term “low”
`indicates that a signalis at a voltage ranging from zero to one
`volt. Of course, these voltage levels may be adjusted for
`higher and/or lower power supply voltages. A signal
`is
`chosen to be “active low” when thelast letter of the signal
`name ends with the letter “B”.
`
`Referring to FIG. 1, an illustrative embodiment of a
`non-volatile binary coded decimal (BCD) counter 100 is
`shown. Herein, counter 100 is used as an odometer system
`of a vehicle. Distance pulses from a vehicle sensor are
`counted by non-volatile BCD counter 100 and the result is
`displayed in an odometer display 110 via a display driver
`120 of a vehicle control panel 130. Non-volatile BCD
`counter 100 stores the counted miles in non-volatile memory
`whenthe vehicle poweris removed andrestores that mileage
`when the poweris restored.
`Referring now to FIG. 2, an embodimentof non-volatile
`BCD counter 100 of FIG. 1 is shown. Herein,
`in this
`embodiment, non-volatile BCD counter 100 comprises an
`N-stage pseudo gray counter 200 and a pseudo gray-to-
`binary coded decimal (PGBCD)converter 250. Each stage
`205,-205,, of pseudo gray counter 200 is coupled in parallel
`to a clock signal line 205 anda test signal line 210. Clock
`signal line 205 provides a standard clock signal (CLK) for
`synchronization of N-stages of pseudo gray counter 200
`without prior loading on carry signals. Test signal line 210
`places BCD counter 100 into a test mode whentest signal
`line 210 is active.
`DATA/ADDRESS line 215 receives data or address as
`input to select the N™ stage of pseudo gray counter 200.
`READ/WRITEcontrol line 220 controls the operations of
`pseudo gray counter 200. Most carry signal inputs (CINB)
`and carry signal outputs (COUTB) 230 are provided to
`successive stages of pseudo-gray counter 200. Of course,
`CINB 225 ofa first stage 205, is tied low and remainsactive
`while CINB signals for the remaining N-1” stages are
`provided from COUTRsignals of a proceeding stage.
`As shown, DATA/ADDRESSline 215 selects from which
`stage 205,—205,, binary output bits are placed on output bus
`235. Herein, output bus 235 is represented by four (4)bit
`lines for configuration as a binary decimal counter, although
`
`10
`
`15
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`the invention may be employed with different-sized
`counters. The output bits placed on output bus 235 are in
`accordance with a coding is similar to a well-known Gray
`coding (referred to a “pseudo-gray” code) and not standard
`binary coding. This pseudo-gray code is illustrated as fol-
`lows:
`
`Decimal Count
`0
`1
`2
`3
`4
`5
`6
`7
`8
`9
`
`Binary Code
`o000
`0001
`0010
`0011
`0100
`0101
`0110
`0111
`1000
`1001
`
`Pseudo-Gray Code
`9000
`0001
`0011
`0110
`0100
`1000
`1001
`1011
`1110
`1100
`
`For each stage of pseudo gray counter 200, it is contem-
`plated thatits least significant bit changes state four (4) times
`in a ten (10) count as compared to ten (10) times for a
`standard binary counter. Thus, pseudo gray counter 200
`reduces the maximum numberof times anyparticular bit
`changes. This will improve thereliability of the non-volatile
`register in whichthebits are stored since typical non-volatile
`counters are limited in the maximum numberoftimes they
`may changestate.
`As still shown in FIG. 2, pseudo gray-to-BCD (PGBCD)
`converter 250 converts this pseudo-gray code routed to bus
`input port 260 to standard binary coding producedat output
`270. In this case, there is no provision for driving a display
`and the outputs would probably be read by a computer or
`processor.
`FIG. 3 illustrates an embodimentofa single stage (e.g.,
`first stage 205,) of pseudo-gray counter 200 of FIG. 2. Stage
`205, comprises a non-volatile (NV) memoryregister 310, a
`pseudo gray decade counter 320 and a businterface 330. NV
`memoryregister 310 further comprises non-volatile memory
`cells (NV CELL) 311-314. The contents of non-volatile
`counter 100 of FIG. 1 are transferred in parallel between
`non-volatile memory register 310 and pseudo-gray decade
`counter 320 over a first bus 340 at power-up and over a
`second bus 350 at power-down.
`For example, information is transferred to non-volatile
`memory register 310 via QxB ports 321 and DATAINxports
`315 at power-down (where “x” ranges up to the number of
`bits supported by NV cells 311-314). The information is
`returned to pseudo-gray decade counter 320 at power-up via
`DATAOUTx and NVOUT«ports 316 and 322, respectively.
`If each stage 205,-205,, of FIG. 2 is used in this manner,
`non-volatile counter 100 of FIG. 1 will retain ils count
`
`during power-down, and will start with that count when
`poweris returned. In this embodiment, bus interface 330 is
`used to transfer incoming information (e.g., pseudo-gray
`code) to output bus 235 during a normal read operation.
`Referring now to FIGS. 4 and 5, an embodiment of a
`non-volatile memory register (e.g., NV cell 311) is shown.
`NV cell 311 comprises (i) a non-volatile transistor 400, (ii)
`a programming circuit 410 and (iii) an output readingcircuit
`450. Programming circuit 410 is used to program non-
`volatile transistor 400 and includes PMOStransistors 420,
`425 and NMOStransistors 430, 435, 440, 445 in this
`embodiment. Transistors 420, 425, 430 and 435 constitute a
`cross-coupled level shifter. Output reading circuit 450
`includes a PMOStransistor 455, an NMOStransistor 460
`and an inverter 465.
`
`

`

`6,166,984
`
`5
`As shownin FIG. 5, waveformsillustrate how NV cell
`311 of FIG. 4 functions during a read operation where
`PMOStransistor 455 acts as a current source with the bias
`current input from READIB 500. A control gate (V,) 401
`and source (V,) 402 of non-volatile transistor 400 are at
`ground (GND).
`If non-volatile transistor 400 has been
`programmed with a negative threshold, it will be turned on.
`Thus, when READBinput 510 goes low (turning off NMOS
`transistor 460), it will keep the input (V,) to inverter 465 low
`and DATAOUT520 high. If non-volatile transistor 400 has
`been programmedto a positive threshold, it will be turned
`off so that when the READBinput 510 goes low, the input
`(V,,) to inverter 465 will rise due to the current from PMOS
`transistor 455 and DATAOUT 520 will go low. During the
`read operation, STOREB 530 is high and VPP 540 is at
`GND,assuring that control gate (V,) 401 of non-volatile
`transistor 400 is at GND. Therest of the circuitry in FIG. 4
`is used for programming.
`Another non-volatile transistor can be added to NV cell
`311 to provide redundancy and thereby improvereliability.
`This non-volatile memory cell with redundancy is shown in
`FIG. 6. Two non-volatile transistors 600 and 610 are coupled
`in parallel except for the sources, which are brought out
`separately as test lines LGND 620 and RGND 6390. Therest
`of the circuitry is the same as NV cell 311 of FIG. 4.
`Bringing the sources out separately allows for an indepen-
`dent test of non-volatile transistors 600 and 610.
`
`Referring to FIG. 7, an embodiment of non-volatile
`memory transistor test waveforms is shownin orderto better
`illustrate how non-volatile memorytransistors 600 and 610
`of FIG. 6 may be tested. If one of non-volatile transistors
`600 or 610 is shorted, it will be caught in normal read
`testing. However, an open (or non-programmable) non-
`volatile transistor cannot be detected during the normal read
`(due to the redundancy). The non-volatile memorytransistor
`test waveforms of FIG. 7 illustrate how to test for this
`condition. First, the non-volatile memory cell with redun-
`dancy is programmed with negative thresholds in non-
`volatile transistors 600 and 610. Normal read commandsare
`
`applied to all inputs except LGND 620 and RGND 630.
`When LGND 620 is pulsed high and RGND remainslow,it
`tests non-volatile transistor 610. When RGND 630is pulsed
`high and LGND remainslow,it tests non-volatile transistor
`600. If DATAOUT 640 goes low when oneof non-volatile
`transistor 600 or 610 is being tested, non-volatile transistor
`600 or 610 is open or not programmed adequately. Passing
`these tests assures that both non-volatile transistors 600 and
`610 are operational and the benefits of redundancy are
`available. The ability to fully test the redundancy of the
`non-volatile memory cell is a feature not practiced in the
`priorart.
`Referring now to FIGS. 4 and 8, to program a memory
`cell, the inputs READIB 500 and READB 510are held high
`at VDD. Data is input via the DATA and DATAB inputs 550
`and 560. When STORE input 570 is taken high, data is
`transferred via PMOStransistors 420 and 425 to cross-
`coupled NMOStransistors 430 and 435, whereit is latched.
`The input STOREB 530 is low, so that NMOStransistors
`440 and 445 are off. One side of this latch is connected to
`a diffusion underthe tunnel oxide (V,,,,,) 403 of non-volatile
`transistor 400, and the other side of the latch is connected to
`control gate (V,) 401 of non-volatile transistor 400. At this
`point, the programmingvoltageis only at the VDDlevel (not
`sufficient to program non-volatile transistor 400). The input
`VPP 540 begins the programming sequence at ground and
`then becomes negative to attain a sufficient voltage to
`program non-volatile transistor 400. This results in the
`
`6
`difference of the negative voltage (VPP) 540 and the positive
`voltage (VDD) being applied across the tunnel oxide of
`non-volatile transistor 400, programmingit to either an “on”
`state or an “off” state depending on the state of input DATA
`550. Note that if non-volatile transistor 400 is already in the
`same state to be programmed,there is no state change. This
`is an advantage over more typical memorycells, which are
`first erased and then rewritten with the same state informa-
`tion.
`
`Referring to FIG. 9, pseudo-gray decade counter 320 of
`FIG. 3 comprises a counter 700 and a small numberoflogic
`gatcs. Counter 700 includes a plurality of D-type flip-flops
`(DFF1-DFF4) 710-713 and NOR GATE720. The output of
`DFF1 710 dependson the state of DFF2 711 and DFF3 712.
`DFF2 711 and DFF3 712 are configured as a shift register.
`DFF4 713 toggles with the data from the output of preceding
`DFF3 712. Together, this circuitry generates the pseudo-gray
`code described earlier.
`The clock for DFF1 710, DFF2 711 and DFF3 712 is
`provided from NORgate 730 having inputs CLOCKN and
`CINB. CINB is an input carry signal from a preceding stage
`(or tied low) and CLOCKN isthe input clock signal. NOR
`gate 740 and NAND gate 750 receive an input CINB from
`a preceding stage (ortied low) and outputs from counter 700
`(Q4B, Q3B, Q2B) generate the carry output COUTB. This
`implementation is considerably less complex than a standard
`BCDcounter, saving area (costs) when implemented in an
`integrated circuit.
`Referring nowto FIG. 10, an embodimentof bus interface
`330 for a stage of pseudo-gray counter 200 of FIGS. 2 and
`3 is shown. In this embodiment, bus interface 330 comprises
`an AND gate 800, an inverter 810 and a plurality oftri-state
`inverters 820 (e.g., tri-state inverters 821-824). The function
`of bus interface 330 is simply to transfer data from an output
`of pseudo-gray decade counter 320 to output bus 235 of FIG.
`3.
`
`Finally, in FIG. 11, an embodiment of PGBCD converter
`250 of FIG. 2 is shown. Herein, the data on outputbus(e.g.,
`BUS1-4) 235 is converted from the pseudo-gray code to
`standard binary code typical of BCD counters. Combinato-
`rial logic (e.g., a collection of AND gates, NOR gates, XOR
`gates, and/orinverters, etc.) is used for this conversion. In
`this embodiment, the output (QxOUT, x=1, 2, 3, or 4) of
`PGBCD converter 250 is the following:
`Q1OUT=BUS1 XOR (BUS2 XOR BUS4);
`Q20UT=[NOT(BUS4) NOR QOUT1] XOR BUS2;
`Q30UT=NOT[((BUS2 AND BUS3) NOR BUS4) XOR
`BUS3]; and
`Q40UT=BUS3 AND BUS4.
`‘The present invention described herein may be designed
`in many different architectures and using many different
`components. While the present invention has been described
`in terms of various embodiments, other embodiments may
`come to mind to those skilled in the art without departing
`from the spirit and scope of the present
`invention. For
`example, the invention may be utilized in other types of
`counters besides BCD counters. The invention should,
`therefore, be measured in terms of the claims that follow.
`Whatis claimed is:
`1. Anon-volatile memorycell comprising:
`a programmable transistor to store a logic state during
`power off,
`the programmable transistor including a
`control gate and a diffusion under a tunnel oxide;
`a programmable circuit coupled to the control gate of the
`programmable transistor and the diffusion,
`the pro-
`gramming circuit to program the programmable tran-
`sistor; and
`
`10
`
`15
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`65
`
`

`

`6,166,984
`
`7
`an output reading circuit coupled to a source and a drain
`of the programmable transistor.
`2. The non-volatile memorycell of claim 1, wherein the
`programmable transistor is a single non-volatile transistor.
`3. The non-volatile memorycell of claim 1, wherein the
`programming circuit includes a cross-coupled level shifter
`coupled to the control gate and the diffusion.
`4. The non-volatile memory cell of claim 3, wherein the
`cross-coupled level shifter applies one polarity of a most
`positive and a most negative potentials across the control
`gate and the diffusion.
`5. The non-volatile memory cell of claim 2, wherein the
`output reading circuit including
`a PMOStransistor coupled to the drain of the non-volatile
`transistor;
`a NMOStransistor coupled to the source of the non-
`volatile transistor; and
`an inverter coupled to a drain of the PMOStransistor,the
`drain of the non-volatile transistor and a drain of the
`NMOStransistor.
`
`6. The non-volatile memory cell of claim 1, wherein the
`programmable transistor includes a pair of non-volatile
`transistors having gates and drains in parallel and sources
`lacking parallelism.
`7. The non-volatile memorycell of claim 6, whereina test
`line is coupled to each source of the non-volatile transistors.
`8. A memory cell comprising:
`a transistor including a control gate and a diffusion under
`a tunnel oxide;
`a programming circuit coupled to the control gate of the
`programmable transistor and the diffusion; and
`an output reading circuit coupled to a source and a drain
`of the programmable transistor.
`9. The memory cell of claim 8, wherein the transistor is
`programmable.
`10. The memorycell of claim 9, wherein the program-
`mable transistor is a single non-volatile transistor.
`11. The memorycell of claim 8, wherein the programming
`circuit includes a cross-coupled level shifter coupled to the
`control gate and the diffusion.
`12. The memory cell of claim 11, wherein the cross-
`coupled level shifter applies one polarity of a most positive
`and a most negative potentials across the control gate and the
`diffusion.
`
`13. The memory cell of claim 8, wherein the output
`reading circuit including
`a PMOStransistor coupled to the drain of the transistor;
`a NMOStransistor coupled to the source of the transistor;
`and
`
`8
`an inverter coupled to a drain of the PMOStransistor, the
`drain of the transistor and a drain of the NMOS
`transistor.
`
`14. The memory cell of claim 9, wherein the program-
`mable transistor includes a pair of non-volatile transistors
`having gates and drains in parallel and sources lacking
`parallelism.
`15. The memory ccll of claim 14, whercin a test linc is
`coupled to each source of the non-volatile transistor.
`16. A non-volatile memory cell comprising:
`a programmabletransistor to store a logic state during
`power off the programmable transistor including a
`control gate and a diffusion under a tunnel oxide; and
`a programmable circuit coupled to the control gate of the
`programmable transistor, and the diffusion,
`the pro-
`grammable circuit to program the programmable tran-
`sistor.
`
`17. The non-volatile memory cell of claim 16, further
`comprising:
`an output reading circuit coupled to a source and a drain
`of the programmabletransistor.
`18. The non-volatile memorycell of claim 16, wherein the
`programmable transistor is a single non-volatile transistor.
`19. The non-volatile memorycell of claim 16, wherein the
`programmable circuit includes a cross-coupled level shifter
`coupled to the control gate and the diffusion, the crass-
`coupled level shifter applies on polarity of a most positive
`and a most negative potentials across the control gate and the
`diffusion.
`
`20. The non-volatile memorycell of claim 17, wherein the
`output reading circuit including
`a PMOStransistor coupledto the drain of the non-volatile
`transistor;
`a NMOStransistor coupled to the source of the non-
`volatile transistor; and
`an inverter coupled to a drain of the PMOStransistor, the
`drain of the non-volatile transistor and a drain of the
`NMOStransistor.
`
`21. The non-volatile memorycell of claim 16, wherein the
`programmable transistor includes a pair of non-volatile
`transistors having gates and drains in parallel and sources
`lacking parallelism.
`22. The non-volatile memory cell of claim 21, wherein a
`test
`line is coupled to each source of the non-volatile
`transistors.
`
`10
`
`15
`
`30
`
`35
`
`40
`
`45
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket