CA1317682C - System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration - Google Patents

System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration

Info

Publication number
CA1317682C
CA1317682C CA000597890A CA597890A CA1317682C CA 1317682 C CA1317682 C CA 1317682C CA 000597890 A CA000597890 A CA 000597890A CA 597890 A CA597890 A CA 597890A CA 1317682 C CA1317682 C CA 1317682C
Authority
CA
Canada
Prior art keywords
arbitration
system bus
bus
access
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA000597890A
Other languages
French (fr)
Inventor
Patrick Maurice Bland
Mark Edward Dean
Philip Erna Milling
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of CA1317682C publication Critical patent/CA1317682C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/28Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 for polarising
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B21/00Projectors or projection-type viewers; Accessories therefor
    • G03B21/54Accessories
    • G03B21/56Projection screens
    • G03B21/60Projection screens characterised by the nature of the surface
    • G03B21/604Polarised screens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Abstract

ABSTRACT

A multi-bus microcomputer system includes a cache subsystem and an arbitration supervisor. A CPU is provided with a PREEMPT signal source which generates a preempt signal in CPU cycles extending beyond a specified duration. The preempt signal is effective at any device having access to the bus to initiate an orderly termination or the bus usage.
When that device signals its termination of bus usage, the arbitration supervisor changes the state or an ARB/GRANT conductor, which had been in the grant phase, to the arbitration phase. During the arbitration phase each of the devices (other than the CPU) cooperates in an arbitration mechanism for bus usage during the next grant phase. On the other hand, the CPU, having asserted preempt, responds to a signal indicating initiation or the arbitration phase by immediately accessing the system bus.

Description

:: 80386/82385 MICROCOMPUTER SYSTEM WITH ARBITRATION
::
DESCRIPTION

,~.
~ Field of the Invention ., '`' ~
~ The inventi.on relates to providing an 80386 with an entry ; into bus arbitration in an 80386/82385 microcomputer system ~ wherein the 82385 operates in master mode.
:' ~
`

Background:Art ~ : Background~ informatlon~ respecting the 80386, its Y ~ characteri~stics ~ and~ its use in: microcomputer systems ;including~cache memory subsystems are described in Intel s Introduction to the 80386", April 1986 and the 80386 Hardware Reference Manual (1986). The ~::: : : :

, ~ :

characteristics and operating performance of the 82385 are described in the Intel publication "82385 High Performance -~ 32-Bit Cache Controller" (1987).

Microcomputer systems including a cache subsystem ar,o, architecturally, significantly different from microcomputer systems without cache subsystems. Microcomputer systems with a cache subsystem operate as dual bus devices. More particularly, in microcomputer systems with a cache subsystem, there is a first bus (referred to as the CPU
local bus) which interconnects the CPU, cache memory and cache control. Other devices are coupled to a different 30 bus (system bus). Such other devices include for `

. I
: ;
:' ':
!
:
: ' :, :

~ , BC988-00~

example main memory, I~O devices and ancillary apparatus. In addition ~o tne foregoing àevices, the system bus may also be coupled to the cacne controi.

The cache subsystem typically relieves the system bus from a large proportion or memory accesses that wouid otherwise be carried by the system bus in the absence of the cache subsystem. That is, to tne extent thai tne CPU can obtain inrormation from the cache memory, then for that particular cycle the CPU does not require access to the system bus. Accordingly, other devices can, during the same period or time, use the system bus ror other operations. This is expected to result in a significant reduction of the system bus cycles which are actually used by the CPU. Usually the cache control is coupied to both the system bus and the CPU local bus, and one of the ` functions of the cache control is to supervise the `arbitratic,n supervisor which, in the single bus systems, had been supervised by the CEU.

20 One avaiiable cacne controller, tne 82385, has the capaDility or~operating in a master or a siave mode. - -When tne 82385~is operated in the master mode, and supervises the arbitration supervisor, there is no longer any mechanism ror the CPu to coniend for the system bus resource.

Accordingly, it is an~object of this invention to -provide a mecnanism whereby a CPU, in a multi-bus microcomputer system witn a cache control element supervising the arbitration supervisor, may access , , :

the system bus resource distributed by the arbitration mechanism.

The arbitration supervisor responds to arbitration request signals which are coupled in common from a plurality of de~ices. When the arbitration supervisor recognizes that one or more devices has requested the common resource, it signals the beginning of an arbitration period by changing the condition of a conductor (the ARB/GRANT is accessible to all the contending devices. When the contending devices see the condition of this conductor changed so as to signal the begi~nning of an arbitration period, the devices generate signals corresponding to their priority levels and drive a plurality of arbitration conductors dedicated to this function with those signals. The connection between the plurality of devices and the arbitration conductors are arranged such that the conductors assume that priority value of the highest priority circuit driving the arhitration conductors. Each device can therefore recognize, by comparing the priority value on the arbitration conductors with its own priority value, whether there is any higher priority device contending for access to the bus. At the termination o a predetermined arbitration period, the ARB/GRANT conductor ~changes state. This begins the grant period, during which that contending device whose priority value~was the priority value on the arbitration conductors assumes~control of the common~ resource to initiate a bus cycle.

~:: :

' ::: :
: :

A

,~

There is another conductor dedicated to a PREEMPT signal which can be generated to force a device having rec~ived access to the system resource, to terminate its access.
Thus, a device which has received access to the system resource and is using that resource, on recognizing an asserted preempt, is re~uired to initiate an orderly termination of its use of the system resource. When the device which is thus preempted terminates it use of the common resource, the arbitration supervisor begins a new arbi.tration period as described above.

In microcomputer systems with a cache subsystem, the CPU
cycles accessing cache (and thus not requiring access to the system bus) are cycles of minimum duration or zero wait state cycles. When CPU cycles extend beyond this minimum, they signal CPU re~uirements for the system bus. Thus CPU
cycles of longer than the minimum duration signal CPU need for the system bus, the common resource.
, In accordance with the invention, the CPU is provided with the means to generate a PREEMPT`signal which will cause any device having gained access to the ;bus through the arbitration mechanism to~ terminate ~that access as has lready been described.~As; wi~ be` described, -the CPU s generation of PREEMPT is~ controlled by detecting a CPU cycle of~duration longer than one requl~red for a cache address.

,~ .
::~:
: ~

~ : :

1 31 76~2 BC98~-ûOds :

However, the CPU's use of the sysiem resource is arranged to conserve as much time as pos~iDie. Iviore particuiariy, when a device whicn had gained access to the bus via an arbitration recognizes a preempt and initiates an orderly termination of its bus access, it signals its termination or the use of the bus. The arbitration supervisor responds to this indication by generating a new arbitration period.
If the CPU was the device which nad generated the preempt to~require release or the ~us, it will respond diferently to the beginning or the arbitration period than will any otner device contending or bus access. At the beginning of the arbitration period, each of the other devices contending for access to ~the bus places its priority value on the arbitration conductors. The C~U does not enter into this process at all; with the beginning of the~arbitration period, tne CPU actually begins ùsing the bus.~ ~ ~

;;In an emDodiment or~the;invention~whicn has actualiy been constructed~tne minimum~arbitration period is 300 nanoseconds.~ However~a zero wait state bus cycle s less than 300~nanoseconds.~ Accordingly, whenever the~CPU preempts~and~thereby~gains~access to the 25~ system DUS,~ it canlactuali~ complete a cycle simultaneous~wlth the arbitratlon process.

Accordlngly,~ ~he present~ nvenilon provldes the CPU
with~means to preempt use~o~;the system bus wnicn had prevlously been dlstributed based on an arbitration .

~' ::

: ~C988-004 :

: 7 ,, mecnanism. Furtnermore, in accordance witn tne present invention, wnen the CPU obtains access to tne ~:~ : system bus via its preempt signal, it can initiate a : ~ ~ bus cycle which can be completed during tne duration S that other devices contend ror access to the bus.

Thus in one aspect, the invention provides a multi-:.~ : bus microcomputer system comprising:

~i ~ a) a processor and a cache subsystem connected : ~together by a CPU local bus, b) a random access memory, an arbitration ~`' supervisor and a plurality of other runciional uni~s conne~ted together by a system bus, c) mean~ coupling said CPU local bus and said system .: bus, :
d) where both said CPU local~bus and said sysiem bus ` include a plurality:of conduc~ors dedicaied ~o arbitrating~access to said ~system bus by at ieast some of said plurality or oiher runctional units, one or~ said plurality or sald conduciors providing a ~ 20 ~preempt signal,~and;~

u~ e:) a preempt signal~source~with inputs responsive to :a CPU local bus cycle~extending beyond a minimum duration, said preempt s:ignal source naving an output coupied to said:CPU local bus~for generating a 25~ preempt signal efective at any runctional unit with access to said system DUS for limiting a dur~tion or ~ 1 :

:~`

13~768~
~ ~C988-004 ~' ~' 8 ~ ~
said access in response to receipi or said preempt signal.
~ 1 -~ Brief Description of the ~rawings ; ~ ~ig. 1 is an overall three-dimensional view of a typical microcomputer system employing ihe present invention;

Fig. 2 is a detailed block diagram of a majoriiy or the components of a typical microcompu~er system -~ employing the present invention;
:` ` `
Fig. 3 illustrates how the arbitration supervisor and ~, CPU are connected in accordance with a single bus microcomputer system;

Fig. 4 illustrates how the arbitrat.ion supervisor, '~ ~ CPU and cach~ control ?re~interconnected in `~; ~ 15 accordanee with the present invention;

Fig. 5 illustrates~the apparalus associated with tne CPU to generate a P~EEMPT~slgnal;~

FLg. 6 iilustr~ates~the~logic associated with the CPU
for generating a signal C~UR~Q wnich is used in 20~ ~generation of a PRE MPT signal by~the CPU;

ig. 7~ls~a tlnir~dlaqram~illustrating several arbitration and grant cycles, one or which provides access to the system bus by a generic device and ,~ : .
: :~ ': ` :

: :

g another of which provides access ~o tne system bus to ; the CPU via a PREEMPT signal;
:
;` Fig. 8 shows tne relationsnip between the central ~ arbitration supervisor 335 and arbitors 336 ! 5 associated with other devices; -`
Figs. 9 and 10 taken togetner are a block diagram of an arbitration supervisor 335; and . Fig. 11 is a timing diagram for explaining the . operation o~ Fig. 8.

Detailed Description , Fig. 1 shows a typical microcomputer system in wnich the present invention can be employed. As shown, the microcomputer system 10 comprises a number of components which are interconnected together. I~lore iS particularly, a system unit 30 is ccupled to and drives a monitor 20 ~such as a conventional video display). The system~unit 30 is also coupied to input devices sucn as a keyboard 40 and a mouse 50.
An output device such as a printer 60 can also be ; 20~ ~;connected to the system unit~30. Finally, the system unit 30 may include one or more disk drLves, such as the disk drive 70. As wlll be~descriDed below, the system unit 30 responds to input devices sucn as tne keyboard 40 and tne mouse 50, and inpui/output devices sucn as tne disk drive 7û or providing signals to drive output devices such as the monitor ~ ~ 20 and the printer 60. Of course, those skilled in :;
', :

BCg88-oo~ 1 3 1 7 68 ~

the art are aware ~hat other and conventionai components can also be connected to the sys~em unit ;~ 30 ror inieraction iherewith. In accordance with the present invention, tne microcomputer systenl 10 includes (as will be more particularly described below) a cache memory subsystem such that there is a CPU locai bus interconnec~ing a processor, a cache control and a cacne memory which itselr is coupled via a burfer to a system bus. The system bus is interconnected to and interacts with the IjO devices such as the keyboard 40, mouse 50, disk drive 70, moniior 20 and printer 60. Furthermore, in accordance with the present invention, tne system unit 30 may also include a third bus comprising a lS Micro Channel (TM) architecture ror interconnection between the system bus and other inputioutput devices.

Fig. 2 is a high level block diagram illustrating the various components or a typical microcomputer system in accordance witn ~he present invention. A CPU
locai bus 230 (comprising data,~address and conirol ; componentsj provides for the connection or a microprocessor 225 ( sucn~ as an 8u386), a cache ,~
control 26û (whicn may~inciude an 8238; cache controller~ and a random access cache memory 255.
Also coupled on the CEU~local bus 230 is a burrer 240. Tne burrer 2~0 is itselr connected to ihe system DUS 250, also comprising address, data and control components. Tne system DUS 25û extends between tne burrer 2~0 and a further burfer 253.
~,:
;~
:
., :
' :
: , '.
.

The system bus 250 is also connected to a bus control and timing element 265 and a DMA controller 325. An arbitration control bus couples the bus control and timing element 265 and arbitration supervisor 335. The main memory 350 is also connected to the system bus 250. The main memory includes a memory control element 351, an address multiplexer 352 and a data buffer 353. These elements are interconnected with memory elements 361 through 364, as shown in Fig. 2.

A further buffer 2~7 is coupled between the system bus 250 and a planar bus 270. The planar bus 270 includes address data and control components, respectively. Coupled along the planar bus 270 are a variety of I/0 adaptors and other components such as the display adaptor 275 (which is used to drive the monitor 20), a clock 280, additional random access memory 285, an RS 232 adaptor 290 (used for serial I/0 operations), a printer adaptor 295 (which can be used to drive the printer 60), a t.imer 300, a diskette adaptor 305 (which cooperates with the disk drive 70), an interrupt controller 310 and read only memory 315. The buffer 253 provides an interface between system bus 250 and an optional feature bus ~such as the Micro-Channel (TM) bus 320 ; ~represented by the Micro-Channel (TM) sockets. Devices such as~-emoFy~331 may be coupl~ed to the bus 320.

Figa~. 8-~ll are usef~ul~ in~ explaining the arbitration mechanism.; Referri~ng ;now to~ Fig. 8, the relationship between the arbitration supe~vlsor~335 and a local . . . . .
~ ':'' ' ' ' BC988-00~

i2 ~ arbiter unit 336, representative or all iocai arbiter : : units, will be described. ln generai, when a device :~ wants access to the system bus 25û to transEer da~a, a local arbiter unii 336 wili receive a request signal from the particular device to which the arbiier unit is related. The request signai is converted to a /~REElV~T signal whicn is generaied by the local arbiter and transmitted to the arbitration ; supervisor 335 and each or the local arbiters over : the jPREEMPT line oE the arbitration bus. It shouid : : be noted in the speciEic embodiment of this invention that the /PREEMPT lines are OR'ed together and thus it is irrelevant to the arbitration supervisor 33~
which particular device generates ~he request. The ` ~ 15 arbitration supervisor 335 generates the A~B/GKA~-T
signal at an appropriate time as determined by the LDA and ~REFRESH memory signal Erom a rerresh controller (not shown) well known to those skilled in the art, in response to a /PREEMPT signal Erom one or more or the local arbiters 336. HLDA is one signai ; ; cf tne pair HLD~ and HRQ ~(or: EOL~ ) which in a sin~ie ; ous system:was excnanged beiween the arbitration supervisor:335 and tne CPU. ::In dual bus systems ihese~signaIs are:be~ween the arDitration supervisor 2~ :and the 82385~

Thus~ when any:one~or~ihe devIces desires to contend for~use of the system~bus~2~0, i~ generates a request signal to its corresponding local arbiter 336 which then generates a /PREEMPT sIgnallover the ~PREEMPT
3~ :line of tne arbitratIon;bus~.~ Then at the appropriate tLme when the~bus becomes available, as determined by .
,~ ~

.~ :
:

the HOLD and the +REFRESH signal from the refresh controller, the arbitration supervisor 336 generates the ARB state of the ARB/GRANT signal over the arbitration bus to each one of the local arbiters 336. In response to the +ARB state, each of the locaI arbiters 336 which desires access to the system bus 250 drives its priority level onto respective lines ARBO-ARB3 of the arbitration bus. Then each of the local arbiters desiring access to the system bus 250 compares its designated priority level with the priority level on the arbitration bus and takes itself out of contention for the bus in the event its priority level is lower than that being driven onto the arbitration bus. Thus at tha end of the arbitration cycle, only that one of the local arbiters having the highest priority level during that arbitration cycle remains in contention for the bus and thus gains control of the bus when the GRANT state is received from the arbitration supervisor 336 over the ARB/GRANT line.

Referring noW to Figs. 9 and 10, a more detailed circuit description of the arbitration supervisor 335 is illustrated. The arbitration supervisor 335 comprises a modified Johnson ring timing~chain including counters 31 through 34 and OR gate 35, OR~ ~ate 36, NAND gate 37, inverter 38 and OR gate~39. Assuming the bus bsgins in an idle condition with the CPU 225 "owning" the bus, but not ;using it, the circuit operation will be described hereinafter in~con~unction with~ the tlming charge of Fig.
. In the aforesaid condltlon,~ARB/GRANT is then active :: :
~:
: ' :
~ A
, 13176~

i~

low, and the arbitration priority ieveis ARB0 tnrough ARB3 aii have a vaiue or one. The modiried Johnson ring timing chain is heid rese~ by ~he +HLDA signai tnrough the ûR gate 36 and the NAND gaie 3l~ Wnen a device needs access to ~he bus, the i~R~;VI T signal is activated. As shown in ~ig. 10, the jPREElvlPT
signai going active results in tne output or ~he gate going positive, represen~ing a YRûCrSSOR HûL~ R~QU~ST
(+PROC H-KQ ) signai. The +A-K~O through tARB3 signal and a ~GRANT signal are also input to the OR gate or Fig. 10 ~o insure that the CPU 225 will not interrere with bus transrers by other devices. the +PROC HRQ
signal results in deactivating +HLDA wnich results in the reset signai (output rrom ûR gate ~6) being removed from counters 30 through 33. It shouid be understood that inputs -S0, -S1, -CMD and -B-u-RST must be inactive in order ror +HLDA to remove the reset signals rrom the aroresaid counters 31 through 3~, as illustrated in Fig. 11. The -S0 signai represents the WRlTE cycle, and the -S1 signai represents the READ cycle. The -CMD signal~is generatei by the current bus master a speciried time peri.od arter -Sû
or -S1. During READ cycies the -CM~ instructs the slave device to place READ da~a onto the bus and 25~ during -~RITE cycles -CMD~is activated ror validation of WRITE data.

on the next (20 MHz) clock pulse, arter +HLDA is deactivated, ~he counter~31 output is set causing the output or OR gate 39 to go high (+ARB) indicaiing an 30 ~ arbitration~timing period. The OR gate 39 output remains nigh until tne output or counter 33 goes low . : :

, .............. ` .

::

13176g2 sometime arter the outpu~ or counter 34 nas gone high. This establishes a 300 nanosecond timing puise ror the ARB/GRAN~ signai. The output frcm counter 3 remains set untii the device begins a bus cycle by eitner activating -S0 or -Sl. The output is tnen reset, and the counters 31 through 34 are ready to begin timing again at the end or the current bus ; ~ cycle. Ir no devices are requesting bus service, the bus returns to ~he idle condition and control is returned to the processor. HL~A is reactivated and ~ ~ the bus is now available ror processor operations.
.~ . ' .
Fig. 3 shows the interconnection between an 80386 CPU, such as the microprocessor 22;, and the arbitration supervisor ~35. The inputfoutput signals connected at the right o the arbitration supervisor 33; are described in the rererenced applications.
More particularly, the output signal ARBi~RA~ is tne signal derining whether tAe arbitration mechanism is in the arbitration state (during which devices contendin~ ror access to the system resource piace ~` ~ their priority level on the arbitration conductors) or in a granr phase (wherein the àevice obtaining access to the common~resource~can employ that ;~ resource to the exciusion of other devices wnicn may ; 25~ have been contending ror accessj. Another inpui signal to the arbitration supervisor 335 is the PREFMPT signal wnicn~nas aiready been described.
Finally, tne input to the~335 arbitration supervisor represented ~y ARB[0-3]~is the arbitration conductors whicn, during the arbitra ion pnase, are driven by devices contending for access with their own priority ,~ .

:: :

, ~: ~

BCg&8-û04 1 3 1 7 6 8 2 leveis. Tne input/outpu~ connections on tAe lert side or the arbitra~ion supervisor 33S show its ; interconnection with ~he 80386, in a typical single bus microcomputer system. The signals HLDA and HKQ
(sometimes referreà to as RûLD) are handshaking mechanisms wnereDy tne arbitration supervisor 335 can re~uest access to the system resource to the exclusion of the 80386 (HRQ). When the 8û386 acknowledges (HLDA) then the arbitration supervisor ~; 10 335 can distribute access to the resource. In single - bus microcomputer systems, the CPU canno~ preempt on its own behalr. This raises the undesirable potential ror the CPU to be locked out of the common resource by an device wnich is allowed to Durst.

lS Fig. 4 is a block diagram sho~ing seiected interconnections, in a dual bus microcomputer system ~which employs the 80386 CPU and an 82385 cache i , controller. The input/output connections on the . -, .
right side of the arbitration supervisor 335 or Fig.
4 are identical to those in ~ig. 3 and will not be described again. The imporiani point iilustrated in ` ~
Fig. 4 is that tne supervision or the arbitration ; supervisor 335 is now implemented Dy the 82385 cacne controller~, since it is tnat element to wnich the H-KQ
and HLDA signals are connected. ADsent some other arrangement, then, the 8û3~86 CPU could be frozen out or use of tne common resource. The present invention provides that other mechanism and does so, to a large extent, without impacting other devices accessed to 30~ the common~resource.

: ~ .
:: : :
~ ' ~ .. . ... , . .. .. . ~, Figs. 5 and 6, taken toyether, illustrate how the signal CPREEMPT, and its antecedent CPUREQ, are generated.

Referring first to Fig. 6, the logic there can be considered part of the cache control 260. The logic is provided to generate the signal CPUREQ which can be considered a control signal inptlt to the control portion of the buffer 240. The control signal CPUREQ is developed from the inputs shown at the left including /BOSC4C386, READYI, CLK, RESET and /(IM/IO & A31). The latter signal is the decoded address to the coprocessor. The signals /BOSC4C386, READYI and I(IM/IO & A31) are active low signals such that for example when the flip-flop 601 becomes set (through a high input at its D input), its output is high and the CPUREQ signal is low (active). In addition to the flip-flop i 601~ the logic of Fig. 6 includes an OR gate 602, three AND
; gates 603-605 and inverters 606-609.
:~1 Essentially the~inputs to AND gate 603 detect an 80386 cycle which extends beyond the zero wait state and which is not at ~ the same time a cycle dedicated to the coprocessor. Once the ;~ condition is detected, the flip-flop 601 becomes set, and can only be reset at a clock time CLK2 when the condition has terminated. Gates 604 and 605~ are provided to reset flip-flop 601 when CLK is high and READYI is (active) low.
~ This condition occurs when a CPU bus cycle is completed.

'..'~;: :
' ~

: ~

~,., '~
. :' A CPU locai bus cycie extending beyond the zero wait state ~and which is also not a coprocessor dedicated cyciej is a cycle which requires access to the system bus. Accordingiy the CPUREQ under those circumstances becomes active, that is, goes iow. The erfect or this signai is shown in Fig. 5.

Fig. 5 shows iogic which is associated with the ~ system bus 250. As shown in Fig. 5 the con~roi ; element or the burfer 240 has an ou~put CPUREQ ~which -~ 10 is driven by the same signal shown in Fig. 6). The CPUREQ is one input to a gate 501 whose output ~; ~CPREEMPT is, in errect, a preempt signal generated ;l by the 80386. AS see in Fig. 5 the signal /CPREEMPT
~l is coupied to the PREEMPT conductor which is one or the inputs to the arbitration supervisor 335 (see ; Fig. 3 or 4). The signal ~CPREEMPT is generated by the logic shown in Fig. 5 inciuding the gates 5ûl-503. A second input to the gate 501 is the output or gate 503, one or whose inputs is the ARB/GRANT signal (identical to the output of the arbitration ; supervisor 335). The~oiher input is ENCPUPREElvlPT~
The latter is~an output or tne 8û386. When inactive this~signai wili~inhlhl~t jCPREEMPT from ever becoming active. Tnus wnen~ENCPU2REEMPT is inactive, the 25~ 8G386 cannot preempt.~ENCPUPREEMPT may be controlied by a user-s;ettable switcn~or a software switch, depending on the requirements of o~her system d:evlces andior software. Under normai circumstances, ENCPUPREEM~T will be active, thus enabling the 8û386 ; 30 ~to preempi. When the AR~GRANT~ indicates the iiratlOIl~ prDCess lS in~the~grant pnase land ~: , :

ENCPUPREEMPT is active) then the output of gate 503 will be active. An active output of the gate 503 along with an active CPUREQ will enable production of an active /CPREEMPT.
The gate 503 will prevent generation of an active /CPREEMPT
during the arbitration phase, and only allow an active /CPREEMPT during the grant phase of the arbitration process.
The gate 502 is used to monitor the state of the arbitration conductors and wiIl prevent generation of an active /CPREEMPT if all conductors are (active) high, indicating that other devices are not arbitrating for the bus, i.e. the CPU owns the common resource.

Accordingly, by the logic shown in Figs. 5 and 6, for cycles on the CPU local bus which are not dedicated to th~
coprocessor, and which extend beyond a minimum duration (zero wait state), the CPU may preempt, and will preempt, if the arbitration mechanism is in its grant phase. The effect of this preemption Will now be described in connection with Figs. 7~-7E.

Figs. 7A-7E illustrate:
,.`!
' ~ :
use of the system bus by a burs-t device (a-d), 2) ~preemption of that devic;e~by~a~typlcal device ;through use of the PREEMPT signal (b-h), a)~ ~cquialtlon of the bu~by~the LPU v~la use ol the /CPREEMPr Iynal~(k-ol, and ~

"

~ BC388-00~ 1 3 1 7 6 8 2 ~) simultaneous with use of the bus by the ~PU, arbitra~ion ror use of tne bus by-another device (m).

Cv1Ore particuiariy, for purpose or iilustration assume that a Burst mode device has gained controi OL the system DUS as iiiustrated (a) in ~ig. 7D. When another device aiong the system bus asserts PRFEMPT
(b~, the Burst device presentiy in coniroi completes its current transfer as illustrated (c) - Fig. 7C.
lG ~ On compietion of the current transfer, tne ~urst device that is reiinquishing controi of the system bus removes its Burst signal from the Burst line as shown at (d) - Fig. 7D. This Burst device will not participate in the next arbitration cycle. The arbitration supervisor 33~ then places the ARBiGRANT
`1 into the ARB state (e) - Fig. 7A. The same transition represents the beyinning of another arbitration cycle and arbitration for the system bus begins at (f) - Fig. 7B. After the ARB/GRA~-T signal ` 20 goes low, control of the system bus is granted to the new device as illustrated at (gj - Fig. 7A. The new device which has gained~controi or the system DUS
then removes its P~E;MPT signal in response to the GRANT signaI;;as shown at (hj - Fig~ 7E.

2; ~Sometime iater, in the~exampie~or Figs. 7A-7E and ; bas`ed~on conditions reflected on the CPu local bus 230, the CPU asserts~/CPREEMPT which is reflected in PRFEM~T (k) - Fig. 7E.~ As has already been explalned, thls w~ resuit in a new arbitration :

BC988-004 ! 1 3 1 7 6 8 2 cycie beglnning as illustraied (lj - Fig. 7A. The arbitration cycle, as shown in Fig. 7A, ex~ends rrom o). vuring tnis arbitration cycie, tne CPU
actuaily empioys the system bus, and at the beginning of that cycle the CPU de-asserts its PREEMPT signal ln~ - Fig. 7E. During the CPU's use or the system ~; ~ bus, other devices which may contend ror access to the system bus arbitrate ror tha~ resource beginning at (m) - Fig. 7B. At the end or the CP-u cycle, when '~ 10 it has compieted use or the system bus to), a new arbitration has been completed so that immediately `~ ~ therearter some rurther device tir any were l contending ror access to the system bus) can employ ,j ~ that resource in the duration beginning at ~o) - Fig.
~¦ 15 7A.

The /CPREEMPT signal is only active when a CPU bus cycle extends beyond a predetermined duration ~beyond a zero wait state, ror example). ~uring the ~ arbitration phase (A~BjGRA~-T high), the CPU cache 20~ ~ control 260 is reieased from the hoid state by the supervisor 335 dropping HRQ and is ailowed to run one or more cycles.

The compietion of a CPu cycle, aliowed to use the system bus by use of the~preempt mechanism, is 25~ detected by REAvyl~actlve~witn CL~ high. By virtue of the iogic of Fig.~6,~ under t`nese conditions the flip-flop 6ûi is reset~and CPURE~ goes inactive.

;The loglc equatlons whlch have Deen referenced above are reproduced immedLately below. In this materiai ':^ ~ : - :
- : ~

~ : ~

2~ 3 1 7 6 8 2 the symbols have the following meanings associated with them:

.
:~ Symbol Definition / Negation := A regist~red term, equal to ; = A combinatorial term, equal to : & Logical AND
+ Logical OR
. ~
Logic Siqnals AR8[0-3) Defined in the copending applications ::
ARB/GRANT Defined in the copending applications /(IM/IO & A31) Decoded math coprocessor address /CPREEMPT See Fig. 5 /CPUREQ See Fig. 6 ENCPUPREEMPT Programmable bit to enable or dlsable ability of the CPU to : ge~erate /CPREEMPT
:: : : : ~
PREEMPT ~ ; Defined in the copending ~ applications, modified in this : ~ : application to the extent it may:be generated by /CPREEMPT
~: ` : : :
: ~

'~4 :: :

' 1 3 1 7682 ~` .. , :
,~

p~:

.j ~
rJ
El 0~

r~ ~n ~

O L~ ~ ~ J
r~ ~n ~ r r ~ rn J
. ~ ~ r ln ~ rn r~ r ~ 'n rJ ~ ~ r~
~ o L~ r~ ~ : r~ rJ
Ln p~ ~ ~ r~ rn ~ In : H rJ ~ Ln ~ '~ J

+` + + + :+: :~ `: ` + + + +

9 ') .
~ ~ .
.

.

`~

, ~ _ _ In ~S) i ~ ~ : U
Z;

. ~ s ~ r~
; ~ j . ~ ~ I¢

rF~ a K ~ S ~4 ~ " r a , r r~~ r ro rr l~ rr ~ , ~n H ~ m ~ m ~ ~ m t0~ ~ uDI ~ z~ ~ rD ~ u ~ D~ Il, r~ r¢ ~A D~ m ~

+ + +: : ~ ` ~: + ~ + +~ ~1 + + ~ + .~ +

~,: : : : - : :
o ` 9 ~ 1 r ` 1317682 1 ~

,_~

- ~ r~

. U R~
n _~ C~
. : ~ ~ r~
.`
u r~
: r~ 'n ~ n P ~

m r~ ~ m s ~ r4 r,~

w ~ u ~ r~s ~ ~3 rc . ? Z ~ a .

~ , ~3C388-ûû4 :

, In the roregoing iogic equations the roiiowing signais are descriDed or rererred to in the cited ; Intei pu~iications:

~; ADS
BADS
. . . ~
~R~ Y E~ :
BREADY
BWjR) actually rererred to as ~WjR, the parenthesis are used to indicate that the entire term is one signai C~
~;i READ~-O
.
RESET
WBS
~`~ 15 ~WjR) actuaily rererred to as WjR, the i parenthesis are used to indicate the entire ` term is a singlè s1gnal ;ADS, when active indicates;a valid address on the CPu locaI bus 230. BAuS,~wnen active indicates a vaiid 2G~ aadress on~ihe s~siem~bus 250. B~DY~ is an outpui o tne 82385~whicn Ls a~antecedent or tne READY signais.
BREAD-~ is a ready~slgnai rrom~the sysiem bus~250 to the CPU local DUs 23û.;~Bw~R~derines a system DUS 250 Write or Read.~CLK~is~a~processor cloc.~ing signai which is in phase with~tne~processor 225. READY~ is anotner output oe~the 82385 in the iine or ready signaisO RESET should be apparent. WBS indicates the condition or the Write Burrer. (WjR) is tne :, ~ 1317682 conventionai Write or Read signai ror tne CPU locai DUS 230.
~, ~; Equations (l)-(ilj define:

BUFw~END

BUsCYC386 CPUNA
LEAB
MISSl PIPECYC38;

~¦ CPUREADY
;` 15 in terms of the define~l signals, the signais described or rererred to in the cited Intel publications and NCA, NACA~HE, REA~YO387 and RDY387PAL.

BREADY385 is a signai like BREADY which in an 1 ;20 ~ embodimeni actually constructed was modified to accommodate~a~6~ cache. ~I;n~he case or a 32K cache as recommended by tne manufacturer) -~READY can De used in lLeu~or BKEADY;3 8 5 ~

BT2 refiects~the~state~or tne~system bus 250. Tne 25~ stals BT2 lS la~sta~e~delLned ln the ciied Intel PUD11Ca~1OnS~

, : :
' ~
~ : :

:, ~31768~

; BUFWREND represents the end of a bufrered ~rite cycie.

BUSC-YC385 aiso rerlects ihe state of the sysiem bus 250. It is high for bus states BTI, BT1, BTlP and low for bus siates BT2, BT2P and ~T2I (again these are bus states rererenced in the cited Intei publications).
~, , ~USCYC386 is high during CPU locai bus 230 states TI, , T1, TlP, T2I and low during T2. It is aiso iow for T2P unless T2I occurs first.

CPUNA is a signal to the 80386 allowing pipelined operation.

LEAB is tne latcn enable (into burfer 240) ror posted writes.
'`1 ` ~ 15 MISS1 is active derining the first cycie in a double ;cycle for handling 64 bit reads to cacheable devices.

; PIPECYC385 is a~iive during BTlP (which is a bus state rererred to in tne ciled Iniel pubiications.

PIPECYC386 is iow~ during~siate TlP or tne C.U locai 2û ~bus 23G.
.-~:, ~ : :
CPUREADY is the ready;input to the 80336.

NCA is a signal created by decodlng tne address component on ine CPU local bus 230 to reflect, when , , :
~':: ' :

, ,,: ~ , , active, a non-cacheable access. CacneaDiiity is determined by a ~ag component (Aîi to ~ and programmabie information defining what tags ;if anyj refer to cacheabie as opposed to non-cacheabie S addresses.

NACAC~E is a signal similar to tne BNA sisnai. BNA is a system generated signal requesting a ne~t address from the CPu locai bus 230, and is referenced in the cited Intel publications. NACACHE differs from BNA
oniy in respeci of the fact rhat BNA is created for ' 32~ cache while NACACHE is creaied for a 6YK cache.
; So long as the cache memory is 32h, as cited in the Intel publications the h-ACAC~E signal referred to here could be replaced Dy the BNA signa;.

READ~0387 is the ready output of the 8G;87 math coprocessor.

RDY387PAL is an output or external logic useci in the event a 80387 math coprocessor is not installed to preveni the absence or the matn coprocessor irom 2û ~interfering in system operations.

Tnus it should be apparent that by use o~ the inveniion, in duai Dus;microcomputer svstem employing an 8G386 processor and 82385 cacne controller, the processor is conditionally ailowed to preempt for use of the sysiem bus under speciIled circumstances.
More particuiarly, ror local~bus cycles P~tending beyond a predetermined duration, the processor can ;assert jCPKFEMPT on the condLtion that tnere are ' BC9~8-û04 otner users contending for access to tne resource and the preempt option has been enabied (~NC~uP~F;~ri~T).
.~owever, when the preempt becomes efrective (as signaiied to the processor by the arbitration supervisorj, then two events occur simuitaneously.
Tne first event is tna~ the processor accesses the system bus. Tnis access wiii not interrere witn any other potentiai bus users since during the period or the processor's access, other contending users are in an arbitration phase. Tnus simultaneous with tne access to tne system bus by tne processor,-otner users may arbitrate ror access to tne grant pnase I rollowing the processor's use of the bus.
- Accordingiy, by use of tne invention, the processor -is enabled to use the system bus even if other user devices are contending, simultaneously, ror access to , ~ the bus. By overlapping tne processor's use or the bus with the arbitration phase (entered into by otner devices~, bus utiiization and er~iciency are increased.

While a particular embodiment of the invention nas been described herein, it;snould D~e apparent tn~t tne invention ~is not iimited~to tne;speciric exampie described nerein and rather should be construed in 2;~ accordance~wlth~the clalms~attacnea nereto.

: :

:' :

;,;
.

Claims (5)

1. A multi-bus microcomputer system comprising a) a processor and a cache subsystem connected together by a CPU local bus;
b) a random access memory, an arbitration supervisor and a plurality of other functional units connected together by a system bus, said other functional units having assigned relative priority values;
c) means coupling said CPU local bus and said system bus;
d) said arbitration supervisor being responsive to service request from said other functional units for terminating control of the system bus by one of said other functional units and for initiating arbitration cycles to grant access to the system bus to one of the requesting functional units at the end of each of said arbitration cycles in accordance with their priority values;
e) said arbitration supervisor being effective to permit processor access to the system bus while no one of said other functional units have access to or requires access to said system bus;
f) logic means, coupled to said arbitration supervisor and responsive to processor signals requesting access to said system bus while one of said other functional units has control of said system bus and at least a second other functional unit is requesting service, for terminating said control of the system bus by said one functional unit and thereafter causing said arbitration supervisor to initiate an arbitration cycle for said other functional units, during which cycle no functional unit has control of the system bus; and g) means coupled to the arbitration supervisor and effective during said last-mentioned arbitration cycle for providing the processor access to the system bus only during the last-mentioned arbitration cycle while said arbitration supervisor responds to the service request to grant access to said second other functional unit at the end of said last mentioned arbitration cycle.
2. A multi-bus microcomputer system comprising:
a processor and a plurality of other functional units coupled to and sharing control of a system bus;
arbitration means coupled to the system bus and determining during an arbitration time period access to said system bus at the end of said arbitration time period by one of said other functional. units in accordance with relative priority levels assigned to each functional unit;
said arbitration means permitting access to said system bus by said processor so long as no other functional unit has requested access to control said system bus;
logic means, coupled to said arbitration and responsive to processor request for access to said system bus while one of said other functional units controls said system bus and at least a second other functional unit has a request for service for initiating a termination control of said system bus;
said arbitration means being effective upon said termination initiating an arbitration time period for control of said system bus by of said other functional units at the end of said arbitration time period no functional unit having control of the system bus during said arbitration time period, and permitting means, responsive to said arbitration means, for permitting processor access to said system bus during the last-mentioned arbitration time period and other functional unit access to the system bus at the end said last mentioned time period.
3. The system of claim 2 further comprising:
program controlled means coupled to said logic means for rendering said logic means alternatively effective or ineffective to respond to a processor request for access to the system bus.
4. A multi-bus microcomputer system comprising;

a processor coupled to a processor local bus;
a system bus coupled to said processor local bus;
a plurality of functional units which share control of said system bus and which are coupled to said system bus;
an arbitration supervisor responsive to a processor signal requesting access to said system bus, while a fist one of said functional units has control of said system bus and while second ones of said functional units have pending requests for service, for initiating a termination of said control of the system bus by said first functional unit and for subsequently initiating an arbitration cycle, during which cycle no functional unit has control of the system bus;
said arbitration supervisor effective during said arbitration cycle for concurrently granting the processor access to said system bus during said arbitration cycle, and determining relative priority values of said second functional units; and said arbitration supervisor effective at the end of said arbitration cycle for granting access to the system bus to one of said second functional units in accordance with their priority values.
5. Data processing apparatus comprising a processor having a local bus;
a system bus and means coupling the system bus to the local bus; a memory connected to the system bus, said system bus routing processor and input/output data transfers with said memory; and an arbitration supervisor for controlling the use of said system bus;
said arbitration supervisor responsive to a processor signal requesting access to said system bus during a current input/output data transfer while at least one input/output request for access to said system bus is pending for initiating a termination of said current input/output data transfer and for subsequently initiating an arbitration cycle, during which cycle no functional unit has control of the system bus;
said arbitration supervisor effective during said arbitration cycle for concurrently granting the processor access to said system bus during said arbitration cycle for a process or data transfer, and determining relative priorities of pending input/output request and said arbitration supervisor effective at the end of said arbitration cycle for granting access to said system bus for an input/output data transfer in accordance with the priorities of the pending input/output requests.
CA000597890A 1988-05-26 1989-04-26 System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration Expired - Fee Related CA1317682C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/198,895 1988-05-26
US07/198,895 US5129090A (en) 1988-05-26 1988-05-26 System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration

Publications (1)

Publication Number Publication Date
CA1317682C true CA1317682C (en) 1993-05-11

Family

ID=22735319

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000597890A Expired - Fee Related CA1317682C (en) 1988-05-26 1989-04-26 System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration

Country Status (23)

Country Link
US (1) US5129090A (en)
EP (1) EP0343770B1 (en)
JP (1) JPH0623970B2 (en)
CN (1) CN1010808B (en)
AT (1) ATE123162T1 (en)
AU (1) AU611287B2 (en)
BE (1) BE1002405A4 (en)
BR (1) BR8902388A (en)
CA (1) CA1317682C (en)
DE (2) DE68922784T2 (en)
DK (1) DK189889A (en)
ES (1) ES2072895T3 (en)
FI (1) FI96145C (en)
FR (1) FR2632096B1 (en)
GB (1) GB2219176A (en)
HK (1) HK23696A (en)
IT (1) IT1230191B (en)
MX (1) MX171578B (en)
MY (1) MY111733A (en)
NL (1) NL8901282A (en)
NO (1) NO176038C (en)
NZ (1) NZ228785A (en)
SE (1) SE8901306L (en)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5034883A (en) * 1987-05-01 1991-07-23 Digital Equipment Corporation Lockhead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
US5111424A (en) * 1987-05-01 1992-05-05 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfer
FR2642246B1 (en) * 1988-12-30 1991-04-05 Cit Alcatel METHOD FOR RELEASING A MULTIBUS MULTIPROCESSOR SYSTEM
CA2016348C (en) * 1989-05-10 2002-02-05 Kenichi Asano Multiprocessor type time varying image encoding system and image processor
US5293493A (en) * 1989-10-27 1994-03-08 International Business Machines Corporation Preemption control for central processor with cache
CA2038012A1 (en) * 1990-03-14 1991-09-15 Hideki Shimizu Oxide superconductor lamination and method of manufacturing the same
US5086427A (en) * 1990-04-09 1992-02-04 Unisys Corporation Clocked logic circuitry preventing double driving on shared data bus
JP4733219B2 (en) * 1990-06-04 2011-07-27 株式会社日立製作所 Data processing apparatus and data processing method
AU648309B2 (en) * 1990-06-14 1994-04-21 International Business Machines Corporation Apparatus and method for assembly of direct access storage device with a personal computer
EP0472274A1 (en) * 1990-08-24 1992-02-26 International Business Machines Corporation Data processing apparatus having connectors to receive system components
US5218681A (en) * 1990-08-31 1993-06-08 Advanced Micro Devices, Inc. Apparatus for controlling access to a data bus
DE69123665T2 (en) * 1990-08-31 1997-07-10 Advanced Micro Devices Inc Integrated digital processing device
GB9019001D0 (en) * 1990-08-31 1990-10-17 Ncr Co Work station including a direct memory access controller and interfacing means to microchannel means
GB9019022D0 (en) * 1990-08-31 1990-10-17 Ncr Co Work station or similar data processing system including interfacing means to microchannel means
GB9018991D0 (en) * 1990-08-31 1990-10-17 Ncr Co Work station with timing independant interface units
GB9018993D0 (en) * 1990-08-31 1990-10-17 Ncr Co Work station interfacing means having burst mode capability
ATE137038T1 (en) * 1990-08-31 1996-05-15 Advanced Micro Devices Inc TRANSMISSION CONTROL SYSTEM FOR A COMPUTER AND PERIPHERAL DEVICES
JPH04141757A (en) * 1990-10-03 1992-05-15 Fujitsu Ltd Bus control system
US5195089A (en) * 1990-12-31 1993-03-16 Sun Microsystems, Inc. Apparatus and method for a synchronous, high speed, packet-switched bus
US5249297A (en) * 1991-04-29 1993-09-28 Hewlett-Packard Company Methods and apparatus for carrying out transactions in a computer system
EP0516323A1 (en) * 1991-05-28 1992-12-02 International Business Machines Corporation Personal computer systems
US5537600A (en) * 1991-05-28 1996-07-16 International Business Machines Corporation Personal computer with alternate system controller
US5392417A (en) * 1991-06-05 1995-02-21 Intel Corporation Processor cycle tracking in a controller for two-way set associative cache
CA2067599A1 (en) * 1991-06-10 1992-12-11 Bruce Alan Smith Personal computer with riser connector for alternate master
US5255373A (en) * 1991-08-07 1993-10-19 Hewlett-Packard Company Decreasing average time to access a computer bus by eliminating arbitration delay when the bus is idle
US5630163A (en) * 1991-08-09 1997-05-13 Vadem Corporation Computer having a single bus supporting multiple bus architectures operating with different bus parameters
CA2068010C (en) * 1991-08-30 1996-10-22 Robert Chih-Tsin Eng Alternate master bursting data rate management techniques for use in computer systems having dual bus architecture
US5581731A (en) * 1991-08-30 1996-12-03 King; Edward C. Method and apparatus for managing video data for faster access by selectively caching video data
US5430860A (en) * 1991-09-17 1995-07-04 International Business Machines Inc. Mechanism for efficiently releasing memory lock, after allowing completion of current atomic sequence
US5301282A (en) * 1991-10-15 1994-04-05 International Business Machines Corp. Controlling bus allocation using arbitration hold
JPH05210977A (en) * 1991-10-15 1993-08-20 Internatl Business Mach Corp <Ibm> Memory-refreshing controller
US5371872A (en) * 1991-10-28 1994-12-06 International Business Machines Corporation Method and apparatus for controlling operation of a cache memory during an interrupt
US5237695A (en) * 1991-11-01 1993-08-17 Hewlett-Packard Company Bus contention resolution method for network devices on a computer network having network segments connected by an interconnection medium over an extended distance
US5548762A (en) * 1992-01-30 1996-08-20 Digital Equipment Corporation Implementation efficient interrupt select mechanism
US5555382A (en) * 1992-04-24 1996-09-10 Digital Equipment Corporation Intelligent snoopy bus arbiter
US5420985A (en) * 1992-07-28 1995-05-30 Texas Instruments Inc. Bus arbiter system and method utilizing hardware and software which is capable of operation in distributed mode or central mode
US5471585A (en) * 1992-09-17 1995-11-28 International Business Machines Corp. Personal computer system with input/output controller having serial/parallel ports and a feedback line indicating readiness of the ports
JP3057934B2 (en) * 1992-10-30 2000-07-04 日本電気株式会社 Shared bus arbitration mechanism
US5699540A (en) * 1992-11-16 1997-12-16 Intel Corporation Pseudo-concurrent access to a cached shared resource
US5500946A (en) * 1992-11-25 1996-03-19 Texas Instruments Incorporated Integrated dual bus controller
CA2116826C (en) * 1993-03-11 1998-11-24 Timothy J. Sullivan Data processing system using a non-multiplexed, asynchronous address/data bus system
US5528765A (en) * 1993-03-15 1996-06-18 R. C. Baker & Associates Ltd. SCSI bus extension system for controlling individual arbitration on interlinked SCSI bus segments
JP3474646B2 (en) * 1994-09-01 2003-12-08 富士通株式会社 Input / output control device and input / output control method
KR0155269B1 (en) * 1995-01-16 1998-11-16 김광호 Bus arbitrating method and its apparatus
US5692211A (en) * 1995-09-11 1997-11-25 Advanced Micro Devices, Inc. Computer system and method having a dedicated multimedia engine and including separate command and data paths
US5845097A (en) * 1996-06-03 1998-12-01 Samsung Electronics Co., Ltd. Bus recovery apparatus and method of recovery in a multi-master bus system
US6560712B1 (en) * 1999-11-16 2003-05-06 Motorola, Inc. Bus arbitration in low power system
US6842813B1 (en) 2000-06-12 2005-01-11 Intel Corporation Method and apparatus for single wire signaling of request types in a computer system having a point to point half duplex interconnect
US6877052B1 (en) * 2000-09-29 2005-04-05 Intel Corporation System and method for improved half-duplex bus performance
US7007122B2 (en) * 2002-11-27 2006-02-28 Lsi Logic Corporation Method for pre-emptive arbitration
US7107375B2 (en) * 2003-05-13 2006-09-12 Lsi Logic Corporation Method for improving selection performance by using an arbitration elimination scheme in a SCSI topology
EP1811393B1 (en) * 2004-08-30 2009-03-11 Magima Digital Information Co., Ltd. Method and system for data transfer
DE102008000031B4 (en) * 2008-01-10 2014-07-10 Koenig & Bauer Aktiengesellschaft Method for controlling an arrangement of printing forms arranged on forming cylinders of a printing machine

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4481580A (en) * 1979-11-19 1984-11-06 Sperry Corporation Distributed data transfer control for parallel processor architectures
US4402040A (en) * 1980-09-24 1983-08-30 Raytheon Company Distributed bus arbitration method and apparatus
US4414624A (en) * 1980-11-19 1983-11-08 The United States Of America As Represented By The Secretary Of The Navy Multiple-microcomputer processing
DE3278891D1 (en) * 1981-06-05 1988-09-15 Ibm I/o controller with a dynamically adjustable cache memory
US4451883A (en) * 1981-12-01 1984-05-29 Honeywell Information Systems Inc. Bus sourcing and shifter control of a central processing unit
US4578782A (en) * 1983-08-26 1986-03-25 Motorola, Inc. Asynchronous memory refresh arbitration circuit
US4631660A (en) * 1983-08-30 1986-12-23 Amdahl Corporation Addressing system for an associative cache memory
US4742454A (en) * 1983-08-30 1988-05-03 Amdahl Corporation Apparatus for buffer control bypass
US4701844A (en) * 1984-03-30 1987-10-20 Motorola Computer Systems, Inc. Dual cache for independent prefetch and execution units
JPS61117650A (en) * 1984-11-13 1986-06-05 Nec Corp Bus control system
US4941088A (en) * 1985-02-05 1990-07-10 Digital Equipment Corporation Split bus multiprocessing system with data transfer between main memory and caches using interleaving of sub-operations on sub-busses
US4794523A (en) * 1985-09-30 1988-12-27 Manolito Adan Cache memory architecture for microcomputer speed-up board
US4949301A (en) * 1986-03-06 1990-08-14 Advanced Micro Devices, Inc. Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs
US4811215A (en) * 1986-12-12 1989-03-07 Intergraph Corporation Instruction execution accelerator for a pipelined digital machine with virtual memory

Also Published As

Publication number Publication date
ATE123162T1 (en) 1995-06-15
DE3909948C2 (en) 1990-05-31
NO176038C (en) 1995-01-18
GB8904919D0 (en) 1989-04-12
MX171578B (en) 1993-11-08
AU3409789A (en) 1989-11-30
MY111733A (en) 2000-12-30
BR8902388A (en) 1990-01-16
FI891786A0 (en) 1989-04-14
CN1037982A (en) 1989-12-13
HK23696A (en) 1996-02-16
DK189889A (en) 1989-11-27
SE8901306L (en) 1989-11-27
SE8901306D0 (en) 1989-04-11
EP0343770B1 (en) 1995-05-24
CN1010808B (en) 1990-12-12
NL8901282A (en) 1989-12-18
IT1230191B (en) 1991-10-18
BE1002405A4 (en) 1991-01-29
FR2632096B1 (en) 1991-09-20
AU611287B2 (en) 1991-06-06
NO891585L (en) 1989-11-27
FI891786A (en) 1989-11-27
DE68922784D1 (en) 1995-06-29
US5129090A (en) 1992-07-07
DE68922784T2 (en) 1995-11-30
JPH0623970B2 (en) 1994-03-30
FI96145B (en) 1996-01-31
DK189889D0 (en) 1989-04-19
DE3909948A1 (en) 1989-11-30
ES2072895T3 (en) 1995-08-01
FI96145C (en) 1996-05-10
EP0343770A2 (en) 1989-11-29
IT8920626A0 (en) 1989-05-24
NO176038B (en) 1994-10-10
EP0343770A3 (en) 1990-11-22
FR2632096A1 (en) 1989-12-01
NZ228785A (en) 1991-04-26
NO891585D0 (en) 1989-04-18
GB2219176A (en) 1989-11-29
JPH0218657A (en) 1990-01-22

Similar Documents

Publication Publication Date Title
CA1317682C (en) System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration
US5388228A (en) Computer system having dynamically programmable linear/fairness priority arbitration scheme
EP0730234B1 (en) Bus master arbitration circuitry having multiple arbiters
US5603050A (en) Direct memory access controller having programmable timing
EP0450233B1 (en) Bus access for digital computer system
EP0795158B1 (en) A computer system having a bridge between buses
US4901234A (en) Computer system having programmable DMA control
US4641266A (en) Access-arbitration scheme
EP0686919B1 (en) An apparatus and method for granting control of a bus during the hot-docking of a dockable computer.
US5923859A (en) Dual arbiters for arbitrating access to a first and second bus in a computer system having bus masters on each bus
US5625824A (en) Circuit for selectively preventing a microprocessor from posting write cycles
US5717873A (en) Deadlock avoidance mechanism and method for multiple bus topology
EP0820018A2 (en) Circuit for handling distributed arbitration in a computer system having multiple arbiters
US5931931A (en) Method for bus arbitration in a multiprocessor system
US6026455A (en) Architecture and method for providing guaranteed access for a retrying bus master to a data transfer bridge connecting two buses in a computer system
KR930001586B1 (en) Microcomputer system
EP0283580B1 (en) Computer system with direct memory access channel arbitration
KR100243868B1 (en) Arbiter logic in main computer system
JP2860733B2 (en) Bus connection device
JPH09223106A (en) Exclusive control system

Legal Events

Date Code Title Description
MKLA Lapsed