throbber
United States Patent i
`Huang
`
`[54] DUAL SOCKET UPGRADEABLE
`COMPUTER MOTHERBOARD WITH
`AUTOMATIC DETECTION AND
`ENABLEMENT OF INSERTED UPGRADE
`CPU CHIP
`
`[75]
`
`Inventor: Hung-Ta Huang, Taipei, Taiwan
`
`[73] Assignee: Acer Incorporated, Taipei, Taiwan
`
`CY0A
`
`US005455927A
`
`[11] Patent Number:
`[45] Date of Patent:
`
`5,455,927
`Oct. 3, 1995
`
`FOREIGN PATENT DOCUMENTS
`
`0333318
`0381448
`0411806
`61-84764
`61-84765
`61-84767
`
`9/1989 European Pat. Off. .
`8/1990 European Pat. Off. .
`2/1991
`European Pat. Off. .
`4/1986 | Japan .
`4/1986
`Japan.
`4/1986
`Japan.
`
`OTHER PUBLICATIONS
`
`[21] Appl. No.: 998,879
`
`IBM Technical Disclosure Bullitin, IBM Corp., Sep. 1989,
`vol. 32, No. 4A, pp. 467.
`
`(22] Filed:
`
`Dec. 28, 1992
`
`“Motherboard Convertibility,” BYTE, Jun. 1991, p. 68.
`
`Related U.S. Application Data
`
`[63] Continuation of Ser, No. 748,780, Aug. 22, 1991, aban-
`doned.
`
`Judy Wong, Modular CPU Upgrade Comparison of Acer,
`ALR and AST, Jun. 13, 1991, pp. 1-2.
`
`Electronic Engineering Times, “Intel Rolls Out Road Map:
`At PC EXPO: Upgrade Plans and 586 Hints,” Jul. 9, 1991.
`
`Tint, C18 iecccccccssssssssssssssssecsssssssnssensessvess GO6F 15/76
`(51]
`[52] US. Che eeececssssensesesscssessnsascssecnensneesaeeanseseessesnecs 395/500
`[58] Field of Search.
`..........ccccssssscsceesees 395/500, 800
`
`Spiegelman, Lisa L., “12 New Microprocessors to be
`Unleashed by Intel: Move Could Speed User Upgrades,”
`Computer Reseller News, Jui. 1, 1991.
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`7/1983 Kaufman et al. oieesse 395/400
`Re. 31,318
`3/1973 Edstrom et al. .
`3,721,961
`2/1978 Fox et al..
`4,075,693
`7/1981 Grants et al. wenn 395/425
`4,281,392
`4/1984 Adcock .
`4,443,846
`11/1984 Stiffler et al. .
`4,484,273
`S/L9B6 Wade et al.
`.....seseresesssesseesees 395/725
`4,591,975
`4,703,419 10/1987 Krause et ab.
`ou.
`ecesssseessecneee 395/725
`
`4,716,526 12/1987 Mori et al. oo...
`eseesneee 395/800
`
`4,860,252
`8/1989 Sykord ....cscessessesersescesensees 395/400
`4,862,355
`8/1989 Newman etal. .
`. 395/500
`4,899,306
`2/1990 Greer.........
`
`. 395/425
`
`4,908,789
`3/1990 Blokkum etal.
`4,947,478
`8/1990 Maeno.......
`
`
`4,951,248
`8/1990 Lynch.........
`4,953,930
`9/1990 Ramscy Ct al, ccsssersenscseseeen 350/357
`4,964,074 10/1990 Suzuki et al.
`.
`5,077,686 12/1991 Rubinstein... sesesseecees 395/550
`5,101,342
`3/1992 Namimoto .
`5,109,506
`4/1992 Begun...eceeeeeeesereereees 395/575
`5,297,272
`3/1994 Luctal..
`
`Primary Examiner—Parshotam S. Lall
`Assistant Examiner—Richard L. Ellis
`Attorney, Agent, or Firm—David N. Slone; Townsend and
`Townsend and Crew
`.
`
`[57]
`
`ABSTRACT
`
`An upgradeable/downgradeable data processing system
`capable of operating with different types of central process-
`ing units (CPU). The system hasa first socket for registration
`of a first CPU and a second socket for registration of a
`second CPU. Meansare provided for preventing possible
`signal contention betweenthe first and second CPU,andfor
`synchronizing clocks for operating a CPU with the system
`clock. Meansare also provided for interfacing with a copro-
`cessor associated with the different types of CPU as well as
`for adjusting the signals to and from the CPUto the signal
`width of the system.
`
`26 Claims, 15 Drawing Sheets
`
`
`
`
`z POWERUP SEQUENCER lmPorOUD
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SaneROEaaoH
`
`
`CORPROCESSOR
`TNTERFACE
`
`
`FLOR,
`
`LI
`INTERFACE
`CONTROLLER
`
`j
`
`OSCILLATOR
`
`Google Exhibit 1021
`Google Exhibit 1021
`Google v. Valtrus
`Googlev. Valtrus
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 1of15
`
` §
`
`5,455,927
`
`MAPS
`
`FIG. 1A|FIG. 1B|FIG. 1C
`
`Figure 1
`
`FIG. 8A|FIG. 8B
`
`FIG. 8C
`
`‘Tigure 8
`
`FIG. 5A|FIG. 5B
`
`igure 5
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 2 of 15
`
`5,455,927
`
`+5V
`
`+5V
`
`Ly
`
`BLAST*
`
`FLUSH* , KEN*
`___PCD,LOCK
`P23M10*
`
`BEOQ*~BE3*
`
`-
`~~ BUS_INTERFACE___
`-—SERBET
`Corer—M/10*
`+iat— BUFFER
`a
`
`DECODER
`
`5
`
`
`
`AQ, A1,BHE*FE
`
`TOWs- AQ-9
`
`‘Tigure 1A
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 3 of 15
`
`5,455,927
`
`P23HOLD
`
`CBRE)|CPURST
`||
`P23HLDA
`
`POWERUP SEQUENCER
`
`POHLDA
`
`
`
`PSHOLD
`
`POWERGOOD
`tL ToT|
`|herp
`AIT
`» HAT1 ik
`
`. ee
`AEE
`EL INTERFACE
`
`O-ORPOEELOM
`
`
`CORPROCESSOR
`
`3”
`
`yi
`
`meWH-rE
`
`DROWMAMwonr-
`
`FONEv4TNEvepOrm~+tno
`
`||
`
`INTERFACE
`CONTROLLER
`
`6
`
`Figure 1B
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 4 of 15
`
`5,455,927
`
`10.
`
`POWER
`
`;
`
`PORSTaJI+5V
`POERROR (36)Si
`
`OSCILLATOR
`
`D
`Pp
`9
`>
`E
`M
`R
`/
`E| A
`i
`9)||
`P| A
`W
`a|
`f
`a|2
`YE
`g
`cnt,
`r——t
`DATA
`ADDR
`
` Ih
`
`I.
`
`|
`
`Le 4
`
`Figure IC
`
`TT)
`ws
`
`

`

`Sheet 5 of 15
`
`5,455,927
`
`U.S. Patent
`
`Oct. 3, 1995
`
`2aunbiz.
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 6 of 15
`
`5,455,927
`
`|
`
`| |
`
`|| |
`
`|
`|
`
`|
`
`||
`
`|
`
`||
`
`
`
`|
`
`||
`
`CPURST
`
`=,
`
`|
`|
`|
`
`|
`
`CLK2
`
`POWERGOOD
`
`|
`
`[>
`
`
`| Pa3RST
`BREQ
`| BOFF* i
`POHLDA
`
`
`|> } | poge
`
`P|spaieca
`2a
`> » |
`|P9HOLD
`
`|
`!
`|
`|
`
`|[D
`
`>
`
`
`
`|
`
`P23HOLD
`
`|
`
`||
`
`l
`
`1209HOLD |
`
`||||
`
`|__>
`
`||tt
`!
`!
`/8)
`
`eeeeLL |
`
`LeeLL a |
`|
`
`i
`
`|W
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 7 of 15
`
`5,455,927
`
` I
`
`P23RST
`
`_||
`
`FERR*
`
`
`|> *
`
`1209ERROR|
`
`IGNNE™
`
`LD
`
`| | | | | | | | |||
`
`| | || | | | | | | |
`
`P23NEN® }c)
`
`
`
`|
`
`D1
`
`— SA0-10I
`DL |
`a a
`|
`I/0 PORT
`
`Q
`
`FOWR*
`
`{i{ | | iL
`
`o _
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 8 of 15
`
`5,455,927
`
`DO-31
`
`\~ = P9HLDA- ~~ ~~ ~~~ ~~~ ~~ ~~- --=T
`
`PCD
`
`ADS*
`
`
`wee|
`[Bes*||
`
`jBez*||
`
`[pei*||
`
`[eeo*||
`
`Lock||
`
`ee
`||
`
`[E
`
`
`
`|[cpurpy*_|
`||BLAST*|
`|
`
`| |
`
`A15-23
`Cr
`IOW* , SAO-9
`| DO
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 9 of 15
`
`5,455,927
`
`—-—-——ee —po-15
`
`YH
`
`> ee
`
`BHE*|
`
`|| |||
`
`KEN* !
`
`FLUSH*|
`
`| | | |
`
`|
`
`
`
`1/0 PORT
`
`Q
`
`l || ‘
`
`Tigure 5B
`
`|>
`
`HDO-15)
`
`
`
`
`LOW WORD
`SWAP
`
`BUFFER
`
`
`HIGH WORD
`SWAP
`BUFFER
`
`|-----<---4{_____
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 10 of 15
`
`bhhahhhhhhhhhi.THd2HdTHd¢HdTHd2HdTHd@HdTHd2HdTHd@Hd
`
`isund)HrSHRRRRTtaoopuaod
`
`eT«LSUNddTir
`
`WL)©
`
`PUi=
`
`UTtx19
`
`
`
`LTT)ssunasa
`
`5,455,927
`
`v9aunbiz.
`
` £3939399€3231303
`
`

`

`-eerlljfL}92S3b3€3231303
`PTTLpoet
`CECE]YY]
`uULwhLPLLEata
`THdHdTHd2HdTHd2HdTHd2HdTHd2HdTHd2Hd
`
`eHscarex.
`
`OO&4Pf
`
`
`
`HTH)e719
`
`U.S. Patent
`
`Oct. 3
`
`1995
`
`Sheet 11 of 15
`
`5,455,927
`
`MM«
`
`
`
`TTT}tsunasa
`
`TI}coosyanod
`
`isundd
`
`
`

`

`US. Patent
`
`Oct. 3, 1995
`
`Sheet 12 of 15
`
`5,455,927
`
`nahh
`
`2eanby
`
`TTTELLEEEEEEEMM«24EEatt
`eeeTTTTT
`TATTLEee
`HaeeeLLnn
`dT
`THd=THd2HdTHd2HdTHd2HdTHd2HdTHd2HdTHd¢Hd
`83£49399v3€3241907
`
`COTTEJLsundd
`pea
`ȣ2d
`
`iamLSU6d
`
`
`
`2n19
`
`TAT)
`
`
`
`TIN)«2309
`
`LSYE?d
`
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 13 of 15
`
`5,455,927
`
`+5V
`
`+5V
`
`Lye
`
`|
`
`PL pttM/10*
`
`5
`
`BLAST*
`FLUSH* , KEN*
`PCD LOCK
`P23MI0*
`BEO*-BE3*
`HDO-HD31
`
`A
`
`-|C
`
`PURDY*™-—|
`
`DECODER
`
`
`SBEO* -SBE3*ia
`
`I0W*-SA0-9
`
`mw-OO
`
`ae
`
`Tigure 8A
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 14 of 15
`
`5,455,927
`
`2
`
`P23HOLD
`
`
`POWERGOOD
`
`CPURST
`
`
`POWERUP SEQUENCER—|pownp
`
`opP23HLDAhyCLKITeceo
`TTEt .
` rHWwW-hw
` FOND¥NEYFLOMEYED
`
`:
`Tigure 8B
`
`INTERFACE
`CONTROLLER
`
`

`

`U.S. Patent
`
`Oct. 3, 1995
`
`Sheet 15 of 15
`
`5,455,927
`
`10
`
`POWER
`
`PORST
`<5
`
`POERROR*
`
`i]
`(1386)
`
`TT
`
`lL:
`
`td OSCILLATOR
`
`P
`
`eS)
`E
`Q
`P
`8
`U
`
`*
`
`C
`
`D
`|
`4
`R
`i}
`0}
`js
`y
`R
`D
`
`*
`
`Figure 8C
`
`2
`CNIL -TTT TT
`DATA
`!
`ADDR
`
`Le ee a
`
`

`

`1
`DUAL SOCKET UPGRADEABLE
`COMPUTER MOTHERBOARD WITH
`AUTOMATIC DETECTION AND
`ENABLEMENTOF INSERTED UPGRADE
`CPU CHIP
`
`This is a file wrapper continuation application of U.S.
`patent application Ser. No. 07/748,780,filed Aug. 22, 1991
`now abandoned.
`
`TECHNICAL FIELD
`
`This invention relates in general to a data processing
`system capable of operating with different types of central
`processing units (CPU).
`
`BACKGROUND OF THE INVENTION
`
`5,455,927
`
`2
`80x86 where x represents a different generation of micro-
`processors.
`Some generations have submodels. For example, the ’386
`series of microprocessors includes 80386SX (also known as
`P9) and 80386DX and the ’486 series of microprocessors
`includes 80486DX. Moreover, generation of these comput-
`ers are also classified in accordance with their respective
`operation clock frequencies. For example, 80386 has. sub-
`models that run on 16 MHz, 20 MHz, 25 MHz and 30 MHz
`and 80486 has submodels that run on 20 MHz, 25 MHz,33
`MHz and 50 MHz. However,the differences between dif-
`ferent generations of microprocessors are usually greater
`than the differences between submodels.
`
`10
`
`To make upgrading more economical, the motherboard of
`some prior art computer systems are modulized so that the
`CPUand other relevant circuits (e.g. controller circuits) are
`put onto a special board. The special board can be swapped
`when a new CPU is introduced. In comparison with buying
`a whole new computer, upgrading a computer with modu-
`lized boards is of course more economical. However,as the
`associated circuits in the special boardstill constitute a high
`percentage of its cost, a substantial waste will still be
`incurred in upgrading a modulized CPU board.
`Modulized CPU boards also take up space, a undesirable
`result in view of the current demand for smaller and more
`compact computers.
`Currently, the more popular microprocessors used by the
`industry are the Intel microprocessors model numbers 8086,
`80286, 80386 80486 and 80487SX (80487SX,also known
`as P23N, is a microprocessor having an internal coproces-
`sor). Fhese Intel computers are sometimes referred to as
`
`55
`
`60
`
`65
`
`For a motherboard to be able to operate with different
`types of CPU,the different characteristics of the different
`types of CPU must be considered. Also needed to be
`considered are the specifications of an interface controller
`(such as the Acer M1209interface controller) which controls
`New microprocessors are introduced at such faster and
`the interface between the CPU and system devices.
`faster pace that it seems a new model of microprocessor is
`In addition, for a motherboard to be able to operate with
`introduced once every two years or even sooner. As capa-
`different types of CPU (e.g. 80486 or 80386), the following
`bility and/or speed of newly introduced microprocessors
`technical problems must be considered:
`frequently surpass older products and as they tend to be
`(a) Clock Synchronization
`more adapted to needs of the market, they are usually more
`For example,
`the meaning of “20 MHz” in a model
`expensive. But whenstill newer products are introduced, the
`80386/20 MHz CPUis different from the meaning of “20
`prices of these once-new products usually drop drastically.
`MHz”in a model 80486/20 MHz CPU. In a model 80386
`On the other hand, new application software are intro-
`CPU, a 40 MHzclock is applied to the CPU chip, and “20
`duced almost daily which offer more user-friendly and more
`MHz”actually means the frequency of the clock controlling
`powerful
`functions. But
`these new software typically
`30
`internal operations. For a model 80486 CPU, ‘20 MHz”
`demand more and more processing power. Asaresult, users
`means the clock frequency of the external clock applied to
`frequently find their computers not powerful enough to run
`the chip. In other words, the frequency of the external clock
`new software one or two years after the purchase thereof.
`to the model 80386/20 MHz CPUis actually double that of
`Those given the responsibilities of procuring data processing
`the model 80486/20 MHz CPU.
`equipment, and users in general, therefore, face a problem,
`what computer to purchase and whenis the most appropriate
`time to purchase a new computer.
`Basic components of a typical data processing system
`include a central processing unit (CPU), memories, control
`circuits (e.g. clock generators) and interface circuits (e.g.
`bus interface). In most personal computers, the CPU resides
`in a main processor chip, e.g. the Intel 80x86. Becauseit
`performs logic and arithmetic functions of the system, the
`CPUchipis the heart of the system and is a major deciding
`factor determining a system’s capability and performance.If
`the CPU can be changed,the performance of a system can
`be improved.It is thus desirable to have a computer that can
`be upgradeable when new and more powerful microproces-
`sors are introduced.
`
`15
`
`20
`
`23
`
`35
`
`40
`
`45
`
`Persons skilled in the art know that system clock is
`commonly divided into different phases and that a certain
`system activities, such as reading and storing of information,
`must occur at certain clock phases. For example, in a model
`80386 CPU,
`the cycles of the system clock are divided
`alternately into a phase 1 and a phase 2. Some system
`activities, such as the initiation of a CPU cycle (at which
`time the Address Status signal ADS# is activated) must
`occur at phase 1, and other system activities, such as reading
`the CPU Ready signal (CPURDY#) (which signals the end
`of aCPU cycle) must be performed when phase 2 is changed
`to phase 1. For 80486 and 80386 to beable to operate in the
`same motherboard, clock phase problems mustbe solved.
`(b) Signal contention at the system bus
`Most CPUs go through initialization before they can
`begin normal operation. The initialization typically begins
`when an external signal (for example the CPURSTin the
`80x86 chips) is applied. The external signal causes the CPU
`to enter into RESET whereby the CPUpinsare set to certain
`levels (i.e. high “1”, low “0”, floating “F’ or undefined).
`An external HOLDsignal can be applied to cause certain
`pins of the 80386 to float and electrically isolate from the
`bus. But some microprocessors such as the 80386 will
`ignore the HOLD signal at RESET. For other microproces-
`sors such as the 80486, floating pins can be achieved either
`by applying the HOLDsignalor bysetting the BOFF#signal
`to “0” (80386 does not have the BOFF# pin).
`For a motherboard to be able to operate when two
`different types of microprocessors, such as a 80486 and a
`80386, are present(so that the system can operate with either
`oneof the two microprocessors), signal contentionat the bus
`must be prevented. Prevention of signal contention can be
`
`

`

`5,455,927
`
`3
`prevented by performing a power-up sequenceto control the
`CPUs when entering into operation, taking into consider-
`ation their respective special characteristics.
`(c) Coprocessor interface
`Some microprocessor such as the 80386 have a copro-
`cessor (i.e. 80387) which resides in a separate chip. The
`main processor 80386 must issue a coprocessor cycle in
`order to communicate with its coprocessor. In other micro-
`processors such as models 80487SX and 80486DX CPU,the
`coprocessor is internal to the main processor chip and the
`main processor of these models of CPU can communicate
`directly with its internal coprocessor.
`In many microprocessor designs, the coprocessor must
`interface with an interface controller (which providesinter-
`face between the CPU and other system components).
`Different coprocessors interface differently with the inter-
`face controller. As a result, the interface signals between a
`CPU andtheinterface controller are different (for example,
`interface signals in the 80486 are Floating Point Error
`(“FERR#’)
`and: Ignore Numeric Error
`(“IGNNE#”),
`whereas interface signals in the 80386 are NOBUSY#,
`NSERROR# and N9PEREQ [“N9” represents 80387 and
`“PEREQ”
`represents COPROCESSOR REQUEST)).
`Therefore, for an interface controller to be able to work with
`coprocessors of different microprocessor models, coproces-
`sor interfacing must be provided with the capability to detect
`and process coprocessor errors of different types of copro-
`Cessors.
`
`(d) Different bus sizes and different bus signals
`Data addressing by different types of microprocessors is
`different. For example, 386SX uses a high portion address
`(A2-A23) to access units of 16 bits of data (a “word’’) and
`a low portion address (AO, Al, BHE#) to access either the
`whole word, the high byte (8 bits) of the word or the low
`byte (8 bits) of the word; however, 80486 uses the high
`portion address (A2-A3]) to access units of 32 bits of data
`and the low portion address (BE3#, BE2#, BEI#, BEO#) to
`determine whether the data to be accessed is the whole 32
`bits, or a 24-bit, 16-bit or 8-bit portion thereof.
`Moreover, some microprocessor such as the 80486 have
`an internal cache memory. In such types of microprocessor,
`a cacheable memory read cycle (also called a cacheline full
`cycle) is used to access 128-bit data from external memory.
`Therefore, for a motherboard to be ableto use different
`types of CPU such as either a 80486 or a 80386, bus
`interfacing must be provided to change and process signals
`from the different types of CPU.
`Accordingly, an object of the invention is to provide a
`clock synchronization means to handle clock synchroniza-
`tion problems associated with using different types of CPU.
`Another object of the invention is to provide a power-up
`sequencer which prevents signal contention caused by dif-
`ferent types of CPU.
`Another object of the invention is to provide a coproces-
`sor interface so that coprocessors of different types of CPU
`can operate with an interface controller which controls other
`system components.
`Another object of the invention is to provide a bus
`interface which can change and processsignals between the
`system bus and different types of CPU.
`Other objects and technical characteristics of the inven-
`tions will be understood with reference to the description of
`the preferred embodiment and the drawings.
`
`25
`
`30
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`SUMMARYOF THE INVENTION
`
`This invention provides a data processing system capable
`of operating with different types of central processing units
`(CPU). The system according to the present invention com-
`prises a clock synchronization means for synchronizing
`clocks of different microprocessor models to the system
`clock, a power-up sequencer for controlling a CPU in
`entering normal operation, a coprocessor interface for
`detecting a coprocessor and for handling errors in copro-
`cessors of different types of CPU, and a businterface for
`providing an interface between different types of CPU and
`the system bus.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a map showing the arrangementof FIGS.1a,1b,
`and 1c to form a complete figure,
`FIGS. 1B and 1C are a block diagram of part of a
`computer system in which the present invention is embod-
`ied,
`
`FIG. 2 is a diagram of the clock synchronizer of the
`system shown in FIG.1.
`FIG. 3 is a diagram of the power-up sequencer within the
`system shownin FIG,1,
`FIG.4 is a diagram of the coprocessorinterface within the
`system shown in FIG.1.
`FIG. 5 is a map showing the arrangement of FIGS. 5A and
`5B to form a complete figure.
`FIGS. 5A and 5Bare a diagram ofthe businterface within
`the system shown in FIG, 1 shown in FIG. 1.
`FIG. 6a and 6b are diagrams of the timing sequence
`generated by the clock synchronizer of FIG. 2.
`FIG. 7 is a diagram of the timing sequence of the
`power-up sequencer.
`FIG. 8 is a map showing the arrangement of FIGS. 8A,
`8B, and 8C to form a complete figure.
`FIGS. 8A, 8B, and 8C are a block diagram of another
`embodimentof the present invention.
`
`DESCRIPTION OF THE PREFERRED
`EMBODIMENT
`
`The present invention is described by way of example
`using 80486 and 80386.
`System Architecture
`FIG. 1 shows a computer system motherboard comprising
`a clock synchronizer 1, a power-up sequencer 2, a bus
`interface 15, an interface controller 6, a first CPU socket 9
`for plugging in with a first CPU, a coprocessor socket 8 for
`plugging in with a coprocessor, a second CPU socket 7 for
`plugging in with a second CPU, a power supply 10, an
`oscillator 11 and a system bus 12.
`The second CPU socket 7 according to this preferred
`embodiment is for receiving a CPU chip from the 80486
`family, such as 80487SX, 80486SX and 80486 (’486). The
`first CPU socket 9 according to this preferred embodiment
`is for receiving a CPU from the 80386 family, such as the
`80386SX, 80386DX and 80386 (’386). The coprocessor
`socket 8 is for receiving a coprocessor chip such as the
`80387DX or 80387SX.
`
`Interface controller 6 according to the preferred embodi-
`ment
`is an ASIC chip such as the Acer M1209 which
`provides interfacing between the CPU and the system.
`System start
`
`

`

`5,455,927
`
`5
`Referring to FIG. 1, when power supply 10 is turned on
`and power is supplied to the various parts of the system,
`oscillator 11 will generate a clock CLK2 that has a certain
`frequency F2. CLK2 is supplied to the clock synchronizer 1,
`the power up sequencer 2, the coprocessor socket8,thefirst
`CPU socket 9 and the system bus 12. Through the system
`bus 12, CLK2 is also supplied to the interface controller 6.
`The clock synchronizer 1 receives CLK2 and produces
`another clock CLK1at frequency Fl. This CLK1 from the
`clock synchronizer 1 is supplied to the power-up sequencer
`2, the second CPU socket 7 and the decoder 5 of the bus
`interface 15, Depending on the requirement of the CPU and
`other system components such as the interface controller6,
`F1 may be faster, slower or same as F2. In this preferred
`embodiment F2 is equal to two times F1.
`Power supply 10 has means for detecting stability of
`powerin the system. When powersupply 10 is turned on and
`the voltage level of the power supply becomesstable (e.g.
`whenfluctuations in the powerlevel are less than +x%ofthe
`voltage value), a power good signal (“POWERGOOD”)will
`be sent to the related units (e.g. the power-up sequencer 2,
`the interface controller 6). An inactive POWERGOOD
`(POWERGOOD="0”) meansthat the power supply has not
`yet been stable.
`.
`signal
`Interface controller 6 outputs a CPU reset
`(CPURST=“1”) which is high when poweris turned on and
`before it senses the POWERGOOD="1”signal. Upon sens-
`ing POWERGOOD="“1”, interface controller 6 will drop the
`CPURSTsignal to CPURST=“0”after it has performed an
`internal initialization.
`
`Clock synchronization
`*386 CPUs divide the cycles of CLK2 into two phases
`alternate to each other. The cycle that starts after the drop-
`ping of the RESETsignal (a high-to-low transition of the
`RESETsignal (CPURST)) and every other cycle that fol-
`lowsare identified as phase 2.
`Clock synchronization is performed to cause CLK1to be
`in-phase with CLK2. “In-phase” meansthat the rising edge
`of the CLK1 will occur substantially simultaneously with
`the rising edge of phase 2 of CLK2. The major reason for
`synchronization is to allow those units (i.e. the power-up
`sequencer 2, the second CPU socket 7 and the decoder 5)
`that receive CLK1 to operate in synchronization with the
`interface controller 6.
`
`The principle of operation of the clock synchronizer 1 is
`now described with reference to FIG. 2 and the timing
`diagrams of FIGS. 6a and 6b.
`The major components of the clock synchronizer 1 are a
`D-type flip-flop (e.g. 74F74) U1 whichis used for delaying
`CLK2, a NANDgate (e.g. 74F20) U4, an AND gate (e.g.
`74F11) US, and a J-K flip-flop (e.g. 74F109) U2.
`The preset input (PR) and the clear input (CL) of the
`D-typeflip-flop U1 are connected to +5 V. The data input (D)
`receives the CPUreset signal (CPURST)from the interface
`controller 6. The clock input (C) receives CLK2 from the
`oscillator 11. The data output (Q) of the flip-flop U1 is a
`delayed signal (DCPURST)of the CPU reset (CPURST).
`NAND gate U4 receives the inverted CPU reset signal
`(CPURST#) at a first input, the output (Q) of the D-type
`flip-flop U1 at a second input, and the output (Q) of the J-K
`flip-flop U2 at a third input. The NAND gate 44 output is
`connected to the J-input of the J-K flip-flop U2.
`AND gate US receives the inverted CPU reset signal
`(CPURST#) at a first input, the delayed CPURSTsignal
`(DCPURST)at a second input and the Q output of the J-K
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`60
`
`65
`
`6
`flip-flop U2at a third input. The output of AND gate USis
`connected to K-input of the J-K flip-flop U2. The preset
`input (PR) and the clear input (CL) of the J-K flip-flop U2
`are connected to +5 V. Its clock input (C) receives CLK2
`from the oscillator 11. The outputof the J-K flip-flop U2 as
`a functionof its inputs is shown in the followinglogic table:
`
`TABLE1
`
`Input
`
`g
`
`0
`0
`1
`1
`
`K#)
`
`0
`1
`0
`1
`
`Output
`
`(Q)
`
`0
`Q
`, Q
`1
`
`Because the output signal from the NAND gate U4 and
`the output signal from the AND gate US are at opposite
`levels, J and K# will not be “0” concurrently or “1”
`concurrently. FIG. 6a shows the operation of the J-K flip-
`flop when CLK1 and CLK2 are in-phase. Betweent5 andt6,
`CPURST#=“1” and DCPURST="1”, therefore, if CLK2 is
`low,J will be “1” and K# will be “0” and the output Q ofthe
`J-K flip-flop U2 will, as shown in Table 1, will continue to
`toggle at each cycle of CLK2 whichis receivedat its input
`(C). Thus, the J-K flip-flop U2 will operate as a frequency
`divider to divide the frequency of CLK2. In other words, the
`output Q of the J-K flip-flop U2 will have a clock signal
`(CLK1) which frequency is half the frequency of CLK2
`received at the clock input (C) of the J-K flip-flop U2, as
`shown in FIG. 6a.
`But if CLK2 between t5 andt6 is “1” as shown in FIG.
`6b, so that CLK1 is out of phase with CLK2, then J will be
`“0” and K# will be “1”. As shown in Table 1, the output Q
`of the J-K flip-flop U2 will maintain its previous level. After
`point t6, however, DCPURST will change to “O”, so that
`=“1” and K#=“0", and the output Q ofthe J-K flip-flop U2
`will, as shown in Table 1, resume to toggle at each subse-
`quent cycles of CLK2 receivedat its input (C), at which time
`CLK1 and CLK2 will already be in-phase.
`Power-Up Sequence
`Since there is a possibility that both the first CPU socket
`9 and the second CPU socket 7 will be plugged in with a
`CPU,in which event, the signals from each of the two CPU
`may result in signal contention at the system bus 12.
`Signal contention at the system bus 12 is prevented by
`controlling the signal levels of the CPUs’ pins. Controlling
`the signal levels of the CPUs’ pins is in turn achieved by
`setting the CPU to a predeterminedstate.
`To set the CPU to a predeterminestate, it is first made to
`go through an internalinitialization. For the 80x86 micro-
`“processors, this is performed by applying an external CPU
`reset signal (CPURST) soas to cause the CPU to enter into
`RESET.In orderto cause a °386 atthe first CPU socket 9 to
`enter into RESET, the power-up sequencer 2 generates a
`PORSTsignal (i.c. PARST=“1”) to the "386 in the first CPU
`socket 9.
`
`Table 2 showsthesignal levels at the pins of the °386 at
`RESET (for example, ADS#="1”, D1S—D0=“F’”(floating),
`BHE#=“0", A23—-A1="1” and PPHLDA=“0”).
`POHLDA is actually the HLDA signal of the °386.
`Because the power sequencer 2 receives a HLDAsignal
`from boththe first CPU socket 9 and the second CPU socket
`7, this signal is named P9HLDAto moredistinctly point out
`that it is the HLDAsignal from the °386. Similarly, the
`HOLDsignal is renamed as P9HOLD for the same purpose.
`
`

`

`5,455,927
`
`7
`P9HLDA(i.e. HLDA) is connected to +5 V through a
`resistor R3, but when ’386 enters into RESET, P9HLDAwill
`change from “1” to “0”.
`
`TABLE 2
`
`Pin name
`
`signal state of '386 at reset
`
`ADS#
`D15-D0
`BHE#
`A23-Al
`WIR#
`D/C#
`M/IO#
`LOCK#
`POHLDA (HLDA)
`
`1 (high)
`F (float)
`0 (low)
`1 (high)
`0 dow)
`1 (high)
`0 (ow)
`1 (high)
`0 (low)
`
`Similarly, to cause ’486 in the second CPU socket 7 to
`enter into RESET, a P23RST signal
`(P23RST=“1") is
`applied from the power-up sequencer 2 to the °486.
`Table 3 lists the signal levels of the pins of a ’486 (e.g.
`80486SX) at RESET. As shown in Table 3, at RESET, the
`logic states of A31-A2, BE3#-BE0#, PCD, M/IO# D/C#,
`W/R# BLAST# FERR# are undefined, D31-D0 are in high
`impedancestate, LOCK#, ADS#are in logic “1”, and BREQ
`and P23HLDAarein logic “0”.
`
`TABLE3
`Pin level when HOLD
`and BOFF# are inactive
`and 486SX is in RESET
`
`Undefined
`undefined
`undefined
`undefined
`undefined
`undefined
`undefined
`undefined
`high impedance
`1 (high)
`1 (high)
`0 (low)
`0 (low)
`
`PIN names
`
`A31-A2
`BE3#BEQ#
`PCD
`M/O#
`D/C#
`W/R#
`BLAST#
`FERR#
`D31-D0
`LOCK#
`ADS#
`BREQ
`P23HLDA (HLDA)
`
`P23HLDAis actually the HLDA signal of the 486.
`Because the power sequencer 2 receives a HLDAsignal
`from both the first CPU socket 9 and the second CPU socket
`7, this signal is named P23HLDAto more distinctly point
`out that it is the HLDA signal from the ’486.
`The BREQpin of the second CPU socket 7 is connected
`to the power-up scquencer 2. The BREQis pulled high to +5
`V via a resistor R2 so that if no CPU is plugged into this
`second CPU socket 7, the BREQ pin will be high. But when
`a CPU chipis plugged in and whenit is at RESET (i.e. when
`P23RST=“1”is sent by the power-up sequencer2), the level
`of BREQwill be “0”. From the “0” level of BREQ at reset,
`one can then ascertain that the second CPU socket 7 is
`plugged in with a "486.
`A person skilled in the art will understand that besides
`HLDA,other pins, such as HLDA, LOCK# and ADS# may
`also be used for purposes of ascertaining whether a CPU
`chip is plugged into the socket. However, if a pin such as
`LOCK# and ADS#are used, then such pin should be pulled
`to appropriate levels.
`the power-up
`To float
`the output pins of the °386,
`sequencer 2 sends PPHOLD="1” to the first CPU socket 9.
`Upon receiving PHHOLD=“1”, the ’386 in the socket will
`enter into HOLD and will return P9HLDA=“1” to the
`
`8
`power-up sequencer 2 to notify the power-up sequencer 2
`that °386 has entered into HOLD.
`
`Thelogic levels of the pins of the °386 in HOLDarelisted
`in the following Table 4:
`
`TABLE 4
`
`Pin Names
`Signalstate
`
`
`High “1”
`HLDA
`Float
`LOCK#, M/IO#
`Float
`D/C#, W/R#
`Float
`ADS#, A23-Al
`
`BHE#, D15-D0 Float
`
`Floating output pins of ’486 can be achievedbysetting it
`to HOLD.
`
`The condition under which ’486 can be put to HOLD is
`different from that of "386. When ’486 is in RESET
`(P23RST="1”) it can receive BOFF#="0” anytime to enter
`into HOLDstate. On the other hand, ’386 must have exited
`the RESET (P9RST=“0”) before a PPHOLD=“1” can cause
`it to enter into HOLD.
`
`Moreover, putting ’486 to HOLDcan be doneby applying
`either P23HOLD="1” (as with the ’386) or BOFF#="0".
`(386 does not have an input pin for BOFF#). But if the
`P23HOLDis used, ’486 will return a P23HLDAsignal,
`which will be sent to various system units such as the
`power-up sequencer 2 and the interface controller 6. Since
`the P23HLDA,if sent to the other units, may cause misin-
`terpretation and produce unexpectedresults, putting the ’486
`into HOLDin this preferred embodimentis thus performed
`by setting BOFF#="0” which will not cause °486 to return
`a P23HLDAsignal. Another advantage with using the
`BOFF#=“0”signal is that onceit is received, ’486 will enter
`into HOLD immediately.
`When 486 enters into HOLDstate, its pins will have the
`levels listed in the following Table 5.
`
`TABLE 5
`
`
`Pin name
`Signal state
`
`A2-A31
`Float
`DO-D31
`Float
`BEO#-BE3#
`Float
`ADS#
`Float
`MU0#
`Float
`DIC#
`Float
`W/R#
`Float
`BLAST#
`Float
`LOCK#
`Float
`PCD
`Float
`BREQ
`not float
`P23HLDA (HLDA)
`not float
`
`
`.FERR# notfloat
`
`By comparing Table 4 with Table 5, it can be seen that
`when one of the CPUs (386 or ’486) in the system is in
`HOLD,the output pins of the HOLDed CPU which other-
`wise would have conflicted with pins of the other CPU will
`float, and signal contention at the system bus 12 is pre-
`vented,
`
`With reference to FIGS. 3, 7 and 1, when power is
`supplied from the power supply 10, POWERGOOD="0”
`will be sent from the power supply 10 to the power-up
`sequencer 2 and the interface controller 6. The interface
`controller 6, in response to the POWERGOOD="0", sends
`CPURST="1”to the power-up sequencer 2. In response to
`CPURST="1”, power-up sequencer 2 generates P23RST=
`“1” to 486 and P9ORST="1” to ’386.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`60
`
`65
`
`

`

`5,455,927
`
`9
`As shownin Tables 2 and 3, when ’486 and ’386 are both
`in RESET (P23RST=P9RST="1”), there will be signal con-
`tention between the pins of ’486 and the pins of ’386.
`Therefore, when power-up sequencer 2 receives P23RST=
`“1”, it sends BOFF#=“0”to the *486 to cause the ’486 to
`enter into HOLD. Referring to FIG. 3, P9RST=“1”is also
`generated, butit is delayed by a delay circuit U8 (a 74F174),
`The reason for causing the °486 to enter into HOLD
`(P23RST="1” and BOFF#=“0") first when the ’386 is in
`RESETis to prevent signal contention between the pins of
`the °386 and the pins of ’486. Another reason is because
`when °386 is in RESET,it cannot enter into HOLDstate
`directly as can the *486.
`With reference to Table 2, FIGS. 3 and 7, when ’386is in
`RESET (P9RST="1”), P9IHLDA="0” and HLDAfrom the
`power-up sequencer 2 to the interface controller 6 will be
`“0”.
`
`From Tables 3 and 5, it can be seen that when the second
`CPU socket 7 is plugged in with a ’486 chip and whenthis
`’486 enters into HOLD (P23RST=“1”, BREQ=“0”), BREQ
`will be “0”. This BREQ="0”signal is sent to the power-up
`sequencer2.
`As described above, when the interface controller 6
`receives POWERGOOD="1” (meaning that powersupplyis
`stable), the interface controller 6 will send a CPURST=“0”
`to the power-up sequencer 2. When the power-up sequencer
`2 senses CPURST=“0” and BREQ="0”, it knows that there
`is a ’486 in the second CPU socket 7. A timing control logic
`means U7 (116R8PAL) in the power-up sequencer 2 will set
`P23#="0” to inform the system, including the coprocessor
`interface 3, that there is a 486 in the system. P23#="0”also
`causes the power-up sequencer 2 to generate the PPHOLD
`signal to the first CPU socket 9 to put the "386 into HOLD.
`In addition, the timing control logic means U7 (16R8PAL)
`generates a del

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