throbber
A.G.P. Interface Specification
`
`Revision 1.0
`
`CLK
`eeeee
`eeeee
`eeeee
`eeeee
`eeeee
`eeeee
`""" """
`"""
`%%%%%
`
`An
`
`""" """
`
`"""
`»»»»»
`
`
`
`
`RB F#
`
`REQ#
`
`
`
`Figure 3-31 PCI Transaction Between A.G.P. Request and Data
`
`Figure 3-30 shows the quickest that the A.G.P. compliant master can enqueue a request, perform a PCI
`transaction and then start returning read data. Two clocks are required between the completion of the A.G.P.
`request and the start of a PCI transaction, this is required because the A.G.P. REQ# line must be deasserted
`when P|PE# is asserted to indicate that the current request is the last to be enqueued. The earliest the
`A.G.P. compliant master can request a PCI transaction is on clock 3, and the earliest the arbiter can grant
`permission is on clock 4, which allows the PCI compliant master to initiate its request on clock 6. The two
`clocks between the PCI transaction and the read data is caused because of potential contention on TRDY#.
`This can occur when the PCI compliant master is the core logic and the target is the A.G.P. compliant master.
`
`3.6 Arbitration Signaling Rules
`
`3.6.1 Introduction
`
`This section describes the rules that the A.G.P. compliant master’s REQ# signal and the A.G.P. compliant
`arbiter’s GNT# signal need to follow for correct A.G.P. operation. These rules are a necessary part of the
`A.G.P. protocol.
`
`The rules associated with the master’s REQ# output signal provide an early indication to the A.G.P.
`compliant arbiter as to when an access request transaction will complete. The arbiter may take advantage of
`this to eliminate idle bus clocks between transactions.
`
`The rules associated with the GNT# signal minimize the amount of read data buffering required in the master
`while allowing back-to-back 8 byte transactions without idle bus clocks. In order to achieve back-to-back
`
`July 31,1996
`
`Page 61 of 161
`
`51
`
`Petitioners HTC & LG — Exhibit 1024, p. 61
`
`Petitioners HTC & LG - Exhibit 1024, p. 61
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`Some of the
`data transactions the arbiter may pipeline grants . The master must be able to accept them.
`rules in this section are necessary to limit the number of pipelined transactions that can be outstanding. This
`section will not attempt to describe the arbitration priority algorithms. This is a chipset specific
`implementation issue.
`
`3.6.2 A.G.P. Compliant Master’s REQ#
`
`The A.G.P. compliant master asserts its REQ# signal when it wants to issue either a PCI cycle or enqueue
`requests using P|PE#. The master will de-assert REQ# depending on the type of access request. When
`issuing an A.G.P. access request over the AD bus using P|PE# the master must keep its corresponding
`REQ# asserted until one clock prior to de-asserting P|PE# asserted and REQ# deasserted on the same
`clock edge is an early indication that the current access request transaction is the last and PIPE# will
`deasserted one clock later. The arbiter may utilize this to avoid idle bus clocks when asserting GNT# for a
`subsequent transaction. This rule implies that REQ# will be deasserted for at least one clock between back-
`to-back P|PE# access request transactions. The master should concatenate as many address requests as
`possible into a single P|PE# access request transaction.
`
`When an A.G.P. compliant master or a pure PCI compliant master issues a PCI transaction using FRAME#
`(and no other access requests are pending) it will de-assert REQ# when it asserts FRAME#. If another
`access request is pending the master will keep its REQ# asserted.
`
`These rules are summarized in Table 3-1 1:
`
`Current Access Request
`
`Nfixt
`Access
`
`Request
`
`PCI using FRAME#
`
`A.G.P. using P|PE#
`
`Keep REQ#
`aSSeITed-
`
`De-assert REQ# one clock
`prior to de-asserting PIPE#.
`
`F RAM E#.
`
`.
`
`.
`
`. Keep REQ# asserted De-assert REQ# one clock
`prior to de-asserting P|PE#.
`Concatenate if possible.
`
`De-assert REQ#
`
`De-assert REQ# one clock
`
`When asserting
`
`prior to de-asserting P|PE#.
`
`Table 3-11 A.G.P. Arbitration Rules
`
`Figure 3-8 Multiple Addresses Enqueued, Maximum Delay by Master shows an access request using
`P|PE#. The master deasserts REQ# one clock prior to de-asserting P|PE#. Simultaneous SideBand and
`AD Access Request Generation is Not Allowed. An A.G.P. compliant master that is configured to issue
`commands over the sideband signals is not allowed to generate commands with P|PE# over the AD bus.
`
`52
`
`Page 62 of 161
`
`July 31, 1996
`
`Petitioners HTC & LG — Exhibit 1024, p. 62
`
`Petitioners HTC & LG - Exhibit 1024, p. 62
`
`

`

`A.G.P. Interface Specification
`
`Revision 1.0
`
`3.6.3 GNT# and ST[2::0]
`
`The A.G.P. compliant arbiter will assert GNT# to initiate PCI or A.G.P. (non-sideband) activity. The
`ST[2: :0] signals are only meaningfirl while GNT# is asserted and are used to communicate the type of PCI
`or A.G.P. activity being initiated. The ST[2: :0] encodings are shown in Table 3-8 A.G.P. Status Signals.
`
`3.6.4 GNT# for Single Transactions
`
`For PCI and A.G.P. access requests GNT# will stay asserted until the arbiter samples either FRAME# or
`P|PE# asserted. The A.G.P. compliant master must drive P|PE# or FRAME# so that it is asserted either
`one or two clocks after the clock it samples GNT# asserted. Therefore GNT# will be asserted to an A.G.P.
`compliant master for a minimum of two clocks and a maximum of three clocks (for a single access request
`when the bus is idle). If the A.G.P. compliant master does not assert P|PE# or FRAM E# from either the
`same clock that GNT# is first sampled asserted or the followin clock, the arbiter may de-assert GNT# and
`consider the master inoperative. A pure PCI compliant masterl on the A.G.P. bus may take longer to assert
`FRAM E# after sampling its GNT# asserted. A pure PCI compliant master may be considered inoperative
`if it doesn’t drive FRAME# within 16 idle bus clocks after GNT# is asserted.
`
`For read and write data transfers, GNT# will be asserted along with the corresponding ST[2: :0] signals for
`one clock cycle per transaction. This is summarized in Table 3-12.
`
`A.G.P. Transaction Type
`
`GNT# Duration
`
`PCI Cycle
`
`Until FRAME# sampled asserted
`
`AD Access Request
`
`Until PlPE# sampled asserted
`
`
`
`One lx clock period per transaction
`One lx clock period per transaction
`
`Table 3-12 GNT# Duration
`
`Figure 3-31 shows an A.G.P. compliant master asserting REQ# to run a PCI cycle. The master samples
`GNT# asserted on clock edge #4 with ST[2: :0] encoding of ‘l 1 1’ indicating permission to generate either a
`PCI cycle or an A.G.P. request. The master is allowed to take one or two clocks to assert FRAME#. In this
`example the master asserts FRAME# one clock after sampling GNT# asserted. Since no subsequent access
`request is pending the master de-asserts REQ# at the same time it asserts FRAM E#. The arbiter samples
`FRAME# asserted on clock edge #3 and de-asserts GNT# clock 6. In this case GNT# is asserted for two
`clocks. If the master would have taken an additional clock to assert FRAME# the arbiter would have
`
`asserted GNT# for three clocks. Once the arbiter asserts GNT# (ST=l 1 1), the arbiter will continue driving
`it until either PIPE# or FRAME# are sampled asserted.
`
`Figure 3-11 shows a read data transaction. The arbiter asserts GNT# for a single clock with an ST[2: :0]
`encoding of ‘00x’ indicating permission for the target to drive either high or low priority read data. Both the
`master and the target sample GNT# asserted on clock edge #2. The master must be ready to accept data on
`the next clock edge. The target is allowed to take one or two clocks to assert TRDY# and begin driving read
`
`15 A PCI 2.1 compliant master that does not generate A.G.P. transactions.
`
`July 31,1996
`
`Page 63 of 161
`
`53
`
`Petitioners HTC & LG — Exhibit 1024, p. 63
`
`Petitioners HTC & LG - Exhibit 1024, p. 63
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`data. In this example the target asserts TRDY# and begins driving read data one clock afier sampling GNT#
`asserted. GNT# is only asserted for one clock since this is a single read transaction consisting of four data
`phases.
`
`§4
`
`E5
`
`is
`
`
`
`
`9
`
`
`
`
`
`CLK
`
`-----
`AD
`°'BE# ----- @9636!
`T
`3
`Z
`AD_STBxi “““ fi"‘
`IRDY#? """ fi"‘
`
`eeeee
`eeeee
`eeeee
`eeeee
`eeeee
`eeeee
`
`
`sn12uo]}x Ilflllllfillllfili{l§I|Ilfillllfilillfillllfilire
`RBF#§
`
`
`€36
`E
`2
`
`Figure 3-32 Write Data Followed by Read
`
`Figure 3-32 shows a 32 byte write followed by a read. The arbiter asserts GNT# on clock edge #2 for a
`single clock with an ST[2: :0] encoding of ‘O10’ indicating permission for the master to drive low priority
`write data. Both the master and the target sample GNT# asserted on clock edge #2. The target must be able
`to accept write data on the next clock. The master is allowed to take one or two clocks to assert IRDY# and
`begin driving write data. In this example the target asserts IRDY# and begins driving write data one clock
`afier sampling GNT# asserted. GNT# is only asserted for one clock since this is a single write transaction
`consisting of eight data phases.
`
`3.6.5 GNT# Pipelining
`
`In order run back-to-back 8 byte data transactions (in 2x data transfer mode) without idle bus clocks between
`transactions the arbiter must pipeline GNT#s. The arbiter limits the number of outstanding GNT#s resulting
`from pipelining, to minimize the master’s GNT# tracking logic. The master must be able to support the same
`number of outstanding pipelined GNT#s. The rules associated with attaining these goals are documented in
`this section.
`
`When GNT# is pipelined the new bus driver is responsible for correctly sequencing from the current
`transaction to the next. If an idle bus clock is required between transactions to allow for bus turnaround, the
`new bus driver is responsible for guaranteeing the turn around bus clock.
`
`0
`
`If GNT# is pipelined for an access request or for write data the master is responsible for correctly
`sequencing from the previous transaction to the next.
`
`0 When GNT# is pipelined for read data the target is responsible for correctly sequencing from the
`previous transaction to the next.
`
`The rules governing the earliest point that GNT# may be pipelined for the next transaction is solely
`dependent on the current transaction type. If the current transaction is read data, the arbiter must wait to drive
`
`54
`
`Page 64 of 161
`
`July 31, 1996
`
`Petitioners HTC & LG — Exhibit 1024, p. 64
`
`Petitioners HTC & LG - Exhibit 1024, p. 64
`
`

`

`A.G.P. Interface Specification
`
`Revision 1.0
`
`GNT# for the next transaction such that GNT# is first sampled asserted on the last data phase of the current
`read. The last data phase is defined as the last rising lx clock edge of the data transaction. This rule (along
`with proper use of the RBF# signal) minimizes the amount of low priority read data buffering required in
`the master. For a sequence of back-to-back 8 byte data transactions (in 2x data transfer mode) GNT# will be
`asserted on every lx clock edge since, by definition, every lx clock edge is the last data phase of a
`transaction.
`
`If the current transaction is write data, GNT# for the next transaction can be asserted on the clock
`
`immediately following the GNT# for the current write data while there are less than four outstanding write
`data GNT#s. The arbiter tracks the number of outstanding write data GNT#s and will only assert a GNT#
`for a subsequent transaction if there are less than 4 outstanding write data GNT#s. The arbiter increments its
`write data GNT# counter when it asserts GNT# for write data and decrements the counter when it samples
`IRDY#” asserted by the master for a write data transaction. The master must be able to handlefive
`pipelined GNT#s (this assumes that a master doesn’t consider a GNT# “canceled” until the data transaction
`has finished, one request currently being handled and four more enqueued). This rule allows back-to-back 8
`byte write data transactions to proceed when the master takes two clocks to assert the initial IRDY# after
`sampling GNT# asserted.
`
`If the current transaction is a PIPE# request, GNT# for a data transaction can be asserted immediately
`following the GNT# for the current access request. Since REQ# will stay asserted (but doesn’t indicate
`another request) until one clock prior to P|PE# de-assertion, it is impossible to pipeline a GNT# for
`another PCI or P|PE# access request if the current transaction is a P|PE# access request. Note that a
`GNT# for a P|PE# access request could immediately be followed by up to four GNT#s for write data
`transfers (or three writes and one additional transaction). The master’s GNT# pipeline logic must be able to
`handle this case.
`
`If the current transaction is a PCI cycle, GNT# for the next transaction can be asserted immediately
`following the GNT# for the current PCI cycle. Note that a GNT# for a PCI cycle could immediately be
`followed by up to four GNT#s for write data transfers (or three writes and one additional transaction). The
`master’s GNT# pipeline logic must be able to handle this case. An A.G.P. pipelined transaction is not
`allowed to start (after a PCI transaction) until the bus is IDLE (F RAM E# and IRDY# deasserted) for one
`clock. Table 3-13 entries refer to the earliest clock edge off which the arbiter can drive GNT# asserted for
`the next cycle.
`
`1° The count is 4 when a latched version of IRDY# is used to decrement the number of outstanding grants.
`Since the target could use either a latched or unlatched version the target is required to handle 4
`outstanding pipelined transactions.
`
`July 31,1996
`
`Page 65 of 161
`
`55
`
`Petitioners HTC & LG — Exhibit 1024, p. 65
`
`Petitioners HTC & LG - Exhibit 1024, p. 65
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`Current AD Activity
`
`PCI
`
`A.G.P.
`Command
`
`Read Data
`
`Write Data
`
`PCI or A.G.P.
`Command
`
`FRAM E# of
`current
`transaction
`sampled
`asserted.
`
`REQ# sampled
`asserted after
`being
`deasserted.
`
`2nd to last data
`phase of current
`transaction.
`
`Next
`
`AD
`
`A°tiVitY
`
`Read Data
`
`F RAM E# of
`current
`transaction
`
`sampled
`asserted.
`
`P|PE# of
`current
`transaction
`
`sampled
`asserted.
`
`(Depends on
`RBF#)
`
`(Depends on
`RBF#)
`
`Write Data
`
`F RAM E# of
`current
`transaction
`
`sampled
`asserted.
`
`P|PE# of
`current
`transaction
`
`sampled
`asserted.
`
`2nd to last data
`
`phase of current
`transaction to
`allow max. of
`
`40 bytes of
`buffering in
`master. See
`section
`
`describing
`RB F# signal.
`(Depends on
`R B F#)
`
`2nd to last data
`
`phase of current
`transaction.
`
`Immediately
`following
`GNT# for
`current write
`while <4
`
`outstanding
`GNT#s.
`
`Immediately
`following
`GNT# for
`current write
`
`(Depends on
`RB F#) while
`<4 outstanding
`GNT#s.
`
`Immediately
`following
`GNT# for
`current write
`while <4
`
`outstanding
`GNT#s.
`
`Table 3-13 Current/Next AD Activity
`
`Figure 3-16 shows a sequence of back-to-back 8 byte read data transactions in 2x data transfer mode. The
`target samples GNT# asserted on clock edge #2 and responds by asserting TRDY# and driving read data
`(L6) on the following clock. The arbiter can assert the GNT# for the second read data transaction (H4) on
`clock edge #3 since that is the last data phase of the L6 read data transaction. GNT# is asserted on every
`clock edge so that an 8 byte read data transaction can occur on every clock edge.
`
`56
`
`Page 66 of 161
`
`July 31, 1996
`
`Petitioners HTC & LG — Exhibit 1024, p. 66
`
`Petitioners HTC & LG - Exhibit 1024, p. 66
`
`

`

`A.G.P. Interface Specification
`
`Revision 1.0
`
`1
`
`2
`
`3
`
`4
`
`5
`
`6
`
`7
`
` V
`
`JAD
`
`L _____ _;___
`E 3559393099;
`amt -----+~aaaaaaaaaas
`
`
`
`Figure 3—33 GNT# assertion for 16. 8. and then 16 byte Read Transfers
`
`Figure 3-33 shows a sequence of 2); read data transactions. GNT# for The second read transaction (M) is
`asserted ml the clock edge #4 which is the last data phase of the R1 read transactioii. GNT# for the third
`read transaction (R3) is asserted on clock edge #5 which is the last data phase of the R2 1'ead transaction.
`
` °”‘:
`AD; ----- +mswwwwmmwmwmwawx
`<wBE#% ----- -+~n+»xwx»xmxsxmxsxmxsxmxsxmxsxmxg
`AD—STBx? """ 'T"
`x
`/
`x
`/
`x
`/
`x
`/
`x
`/
`x
`/
`3
`/
`%
`RBF#§
`E
`i
`i
`i
`i
`i
`i
`
`i F
`
`igure 3—34 GNT# Assertion for next Read Data after long Data Transfer
`
`July 31, 1996
`
`Page 6? of 161
`
`57
`
`Petitioners HTC & LG — Exhibit 1024, p. 67
`
`Petitioners HTC & LG - Exhibit 1024, p. 67
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`Figure 3-34 shows a 40 byte read transaction followed by another read transaction in 2x data transfer mode.
`GNT# for the second read data transaction (R2) is asserted on clock edge #7 which is the last data phase of
`the R1 read transaction.
`
`
`
`CLK
`_
`. 999999
`eeeee
`eeeee
`eeeee Maaeaeaeaa
`cm: —————
`
`
`
`
`Figure 3-35 GNT# assertion for Back to Back Write Data Transfers
`
`Figure 3-35 shows back-to-back 8 byte write data transactions in 2x data transfer mode. The following
`figures show that a maximum of 3 transaction are outstanding and will transfer data. The reason that it is
`only 3 and not 4 is that these diagrams assume that the arbiter is not using the latched version of IRDY#.
`When the latched version is used then all the number of grants outstanding are increased by one, since the
`arbiter delays the decrement. However, the arbiter can have 4 actually outstanding otherwise dead clocks
`can occur on the bus.
`
`The master samples GNT# asserted on clock edge #2 and asserts |RDY# and drives write data W1 two
`clocks after sampling (clock edge #4). On clock edge #2 the arbiter increments its write GNT# counter to 1.
`Since the GNT# counter is less than three the arbiter asserts GNT# for write data W2 on clock edge #3 and
`the arbiter increments the write GNT# counter to 2. Since the GNT# counter is still less than three the
`
`arbiter asserts GNT# for write data W3 on clock edge #4. Even though GNT# is asserted on clock edge #4
`the write GNT# counter does not increment since |RDY# for W1 is sampled asserted on clock edge #4. The
`arbiter continues asserting GNT# on every clock edge sustaining the back-to-back 8 byte transfers since the
`write GNT# counter is always less than three. In fact it is this waveform that established the need to allow
`up to three outstanding write GNT#s.
`
`58
`
`Page 68 of 161
`
`July 31, 1996
`
`Petitioners HTC & LG — Exhibit 1024, p. 68
`
`Petitioners HTC & LG - Exhibit 1024, p. 68
`
`

`

`A.G.P. Interface Specification
`
`Revision 1.0
`
`CLK
`
`
`
`eeeee
`eeeee
`An
`mmfi eeeee 3eeeee +~@@@@@@@@@@@@e
`
`
`
`
`31
`
`
`
`GNT#§
`ST[2::0]
`
`
`
`
`Figure 3-36 Back to Back GNT# with Delay on Initial Transfer
`
`Figure 3-36 shows a sequence of 16 byte write data transaction in 2x data transfer mode. The master asserts
`|RDY# and drives write data W1 two clocks after sampling GNT# asserted on clock edge #2. On clock
`edge #2 the arbiter increments its write GNT# counter to 1. Since the GNT# counter is less than three the
`arbiter asserts GNT# for write data W2 on clock edge #3 and the arbiter increments the write GNT# counter
`to 2. Since the GNT# counter is still less than three the arbiter asserts GNT# for write data W3 on clock
`
`edge #4. Even though GNT# is asserted on clock edge #4 the write GNT# counter does not increment since
`|RDY# for W1 is sampled asserted on clock edge #4. Since the write GNT# counter is still less than three
`the arbiter asserts GNT# for write data W4 on clock edge #5. Since there is no |RDY# asserted on clock
`edge #5 the write GNT# counter increments to three and the arbiter is prohibited from asserting GNT# for
`W5 on clock edge #6.
`|RDY# for W2 is asserted on clock edge #6 decrementing the write GNT# counter to
`two. This allows the arbiter to assert GNT# for W5 on clock edge #7. This again increments the write
`GNT# counter to three and prohibits GNT# assertion for W6 on clock edge #8. Note that on clock edge #5
`four GNT# have been pipelined to the master and the first transaction is still underway. This is the worst
`case scenario that the master’s GNT# pipeline logic needs to account for.
`
`July 31,1996
`
`Page 69 of 161
`
`59
`
`Petitioners HTC & LG — Exhibit 1024, p. 69
`
`Petitioners HTC & LG - Exhibit 1024, p. 69
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`CLK
`
`
`Ao %%%%%s%%%%%esmaaaeamawae t
`c/354;; »»»»»
`—————
`A°—STBX§::§:I:'_L/i8'_L/i€‘_\_/_“
`
`
`
`
`~.>-—z
`
`’3______
`5.;
`
`Figure 3-37 Pipelined GNT#s - Read and Writes (part 1)
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`CLK
`
`AD
`ClBE#
`AD_STBx§
`
`TRDY#§
`GNT#'*’
`sT[2::o1
`
`E
`5
`
`E
`
`E
`
`
`%%%%%%
`%%%%%
`%%%%%
`§"'%-iv''
`T’
`
`
`Q‘
`
`
`
`' "E ' ' ' ' ' "5 ' ' ' ' ' ' "E
`
`' ' ' "'3' ' ' '
`
`
`
`'
`
`8-88
`
`Figure 3-38 Pipelined GNT#s - Read and Writes (part 2)
`
`Figure 3-37 shows the first half of a long sequence of write data transactions mixed with read data
`transactions. While Figure 3-38 shows the conclusion of the transaction. These need to be Viewed as a
`single figure for the following discussion. The first three GNT#s are for write data transactions. The master
`inserts a wait state between the write data transactions. The GNT# asserted on clock edge #5 is for read
`data transaction R1. Note that the GNT# for R1 on clock edge #5 did not cause the write GNT# counter to
`increment from two to three. The write GNT# counter only increments for GNT#s associated with write
`data transactions. The arbiter dc-asserts GNT# on clock edge #6 and waits to assert GNT# for read data
`R2 on clock edge #10 which is the last data phase of read data transaction R1. Note that by this time the
`write GNT# counter decremented to zero by sampling |RDY# asserted on clock edges #6 and #8. Note also
`that the write GNT# counter does not increment on clock edge #10 since the GNT# is for a read data
`transaction. The target is responsible for inserting the idle clock for bus turnaround between transactions W3
`and R1. Read data transaction R2 is a 40 byte transaction so the next GNT# assertion is delayed by the
`arbiter until clock edge #15 which is the last data phase of R2. The GNT# on clock edges #15 is for write
`
`60
`
`Page 70 of 161
`
`July 31, 1996
`
`Petitioners HTC & LG — Exhibit 1024, p. 70
`
`Petitioners HTC & LG - Exhibit 1024, p. 70
`
`

`

`A.G.P. Interface Specification
`
`Revision 1.0
`
`data transaction W4. This causes the write GNT# counter to increment. The master is responsible for
`inserting the idle clock for bus turnaround between transactions R2 and W4. The arbiter asserts GNT# for
`W5, W6 and W7 on clock edges #l6,l7 and 18# respectively. The arbiter is prohibited from asserting
`GNT# on clock edge #19 for another transaction since the write GNT# counter is at three.
`
`3.6.6 GNT# Interaction with RBF#
`
`The A.G.P. compliant arbiter will not assert GNT# for a low priority read data transaction if the RBF#
`signal is asserted. In the case where RB F# is asserted on the same clock edge as GNT# is asserted, the
`master is required to accept that transaction. The arbiter must deassert GNT# immediately upon sampling
`RBF# asserted so that no further low priority read data transactions are signaled. RBF# only prohibits
`GNT# from being asserted for low priority read data transactions. GNT# assertion for high priority read
`data, write data, and access requests can still be generated even though RBF# is asserted.
`
`
`
`Figure 3-39 LP GNT# Pipelining Stopped While RBF# is Asserted
`
`Figure 3-39 shows the master asserting the RB F# signal indicating that it can’t accept fiirther low priority
`read data. The master samples GNT# asserted on clock edge #2 with ST[2: :0] indicating a low priority
`read data transaction. The master asserts RBF# on clock edge #3 because it doesn’t have sufficient buffer
`space to take the next two low priority read transactions. The arbiter has already asserted GNT# on clock
`edge #3 which is the last data phase of L6. The master must accept the GNT# on clock edge #3 for read data
`transaction L7. The arbiter samples RB F# asserted on clock edge #3 and deasserts GNT# until it samples
`RBF# deasserted on clock edge # 5. Note that if the arbiter didn’t deassert GNT# immediately upon
`sampling RB F# asserted on clock edge #3, then GNT# would be asserted on clock edge #4. This would
`increase the minimum amount of low priority read data buffering required in the master.
`
`3.7 A.G.P. Sequencer State Machine Equations
`
`This section will provide a concise statement of protocol rules to allow a designer to verify the correctness
`of his A.G.P. compliant bus sequencer. TBD.
`
`July 31,1996
`
`Page 71 of 161
`
`61
`
`Petitioners HTC & LG — Exhibit 1024, p. 71
`
`Petitioners HTC & LG - Exhibit 1024, p. 71
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`3.7.1 Error Reporting
`
`The error reporting philosophy of PCI applies to A.G.P. as well. This philosophy requires any device
`involved in the transfer or storage of permanent or retained system state (e.g., disk) to detect and report parity
`errors, and to compute parity. Devices involved with transient data only (e.g., graphics) are not so required.
`Since the sole purpose of the A.G.P. is the connection of video display devices, no provision has been made
`in the current spec for detecting or reporting of any bus errors. The current thinking is that if this becomes an
`issue in the future, bus parity detection and reporting will be added in essentially the same way as it is
`currently done on the PCI bus.
`
`Admittedly this approach begs the question of address errors on writes to system memory (a problem that did
`not occur on PCI when graphics devices were targets only), as well as the possibility of data corruption on
`ancillary channels such as VBI. Nonetheless, this position seems to be congruent with current graphics
`accelerator practice, and therefore remains the current plan.
`
`62
`
`Page 72 of 161
`
`July 31, 1996
`
`Petitioners HTC & LG — Exhibit 1024, p. 72
`
`Petitioners HTC & LG - Exhibit 1024, p. 72
`
`

`

`A.G.P. Interface Specification
`
`Revision 1.0
`
`4. Electrical Specification
`
`4.1 Overview
`
`4.1.1 Introduction
`
`As with the protocol enhancements, the A.G.P. electrical specification extends PCI to provide a much higher
`performance graphics interface. Most of the electrical interface requirements are based on the PCI spec, and
`this document will reference that spec wherever possible.
`
`The A.G.P. physical interface is optimized for a point to point topology using a 3.3V signaling environment.
`The baseline performance level utilizes a 66 MHz clock, to provide a peak bandwidth of 266MB/sec.
`
`A.G.P. includes an option for higher performance levels, providing peak bandwidths of 533MB/sec”. This
`optional mode uses a double-clocked data technique to transfer twice the data per each A.G.P. clock. This
`A.G.P. mode, referred to as 2X transfer made (also 2X mode or A.G.P.-13318), requires additional interface
`timing strobes and different signal timings from the 1X mode. Components supporting the 2X transfer mode
`must also support the 1X mode. 2X mode requirements are a superset of the 1X mode timings.
`
`The next section establishes a conceptual framework by which to understand the two modes.
`
`4.1.2 1X Transfer Mode Operation
`
`The 1X mode, 66 MHz A.G.P. interface can be designed using common I/O buffer technology. Since A.G.P.
`is a point to point interface, adjustments have been made in the system timing budgets that relax component
`input requirements relative to PCI.
`
`Conceptually, the 1X mode A.G.P. operation is similar to PCI. All timings are referenced to a single clock,
`the A.G.P. clock.
`
`4.1.3 2X Transfer Mode Operation
`
`The A.G.P. protocol provides Qword access granularity. Qword transfers normally take two clock cycles in
`the 1X mode. Likewise, sideband address commands normally take two clocks per each 16-bit command.
`The 2X transfer mode provides a mechanism for doubling the data transfer rate of the AD, CI B E# and SBA
`signals”. With 2X transfer, Qword transfers only require one clock cycle, and sideband commands only
`require one clock per 16-bit command.
`
`17 533MB/sec results from the actual minimum clock period of l5ns.
`
`18 “l33 ” connotes a 133MHz peak transfer rate.
`
`19 The clock mode of these signals is controlled as a unified group; independent control of the clocking
`mode for sub-groups is not provided.
`
`July 31,1996
`
`Page 73 of 161
`
`63
`
`Petitioners HTC & LG — Exhibit 1024, p. 73
`
`Petitioners HTC & LG - Exhibit 1024, p. 73
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`The 2X transfer mode is implemented as a timing layer beioi I-‘ the 1X protocol's flow control mechanisms.
`This timing layer. referred to as the inner‘ loop. specifies timing relationships for the reliable transfer of data
`from the output latches at the transmitting device to the input latches at the receiving device. The logical
`protocol mechanisms operate above this layer. via an outer loop. to control the actual transfer of data
`between the data queues. A model showing these various time domains is shown in Figure 4~1.
`
`Inner Loop
`
`Outer Loop
`
`Transmitter
`_,._.TTT
`“‘-..
`I
`
`-
`
`.
`
`Receiver
`_e_.m
`
`_
`
`-.
`
`K
`
`timing
`
`I Timing E
`
`timing
`
`A.G.P. CLK
`
`Figure 4-1 2X Mode Time Domains
`
`The outer loop of both devices operates from a common A.G.P. clock, and outer loop controls are specified
`relative to this clock (as in the 1X operation mode). The inner loop timings use additional source
`synchronous timing signals to realize the data transfer. Note that the only clock defined in the system is the
`A.G.P. clock.
`
`Source timed strobes. where the device sourcing the data also sources a timing signal for use by the receiver.
`are used since data transport delays are nulled out at the receiver. These source synchronous stmbes a1'e
`derived fi'o1n the COI.l]lJ10I1 A.G.P. clock at the transmitter, placed at the center of the output data valid
`window. and used by the receiver to directly capture data at the interface.
`
`The inner loop and outer loop timing dependencies are defined by a set of relationships between the strobes
`and the A.G.P. clock. The relationship allows for a deferniinisrir transfer of data between the inner and
`outer loops. These timing dependencies are specified in such a way as to allow implementation flexibility at
`the receiver. A tradeoif can be made between the latency through the inner loop and the implementation
`technology andfor design complexity. Refer to the A.G.P. Design Guide for more information.
`
`The timing model presented above contains four different time domains. to be detailed in the following
`sections:
`
`Transmiti’Rec eive Outer Loop
`
`Transmit to Receive Inner loop
`
`I
`
`I
`
`64
`
`Page 74 of 161
`
`July 31, 1996
`
`Petitioners HTC & LG — Exhibit 1024, p. 74
`
`Petitioners HTC & LG - Exhibit 1024, p. 74
`
`

`

`A.G.P. Interface Specification
`
`Revision 1.0
`
`0
`
`0
`
`Transmit Outer to Inner Loop
`
`Receive Inner to Outer Loop
`
`4.1.3.1 TransmitlReceive Outer Loop
`
`The outer loop between the devices uses the 1X mode A.G.P. timings for bi-directional control information
`transfer between the transmitter and receiver.
`
`4.1.3.2 Transmit to Receive Inner loop
`
`Transfer of data20 between the transmit and receive inner loop circuits is accomplished using a timing strobe
`sent from the transmitter to the receiver, with a set of simple timing relationships between the data and strobe.
`Both edges of the strobe are used to transfer data, with the first half of data corresponding to the falling edge
`of the strobe, and the second half corresponding to the rising edge.
`
`The transmit strobe edges are positioned near the center of the minimum data valid window, to give the
`receiver a good input data sampling window for all the various system timing skew cases. A minimum data
`valid before strobe edge (tDVb), and a minimum data valid after strobe edge (tDva) are specified. The
`transmit strobe/data timings are shown in Figure 4-2.
`
`Transmit Strobe
`
`tDvb
`
`tDva
`
`tDvb
`
`tDva
`
`Trenemiteete
`
`Figure 4-2 Transmit Strobe/Data Timings
`
`The receive strobe input is directly used to capture data into the device. Again, both edges of the strobe are
`used to capture data, since new data is valid on each edge. A minimum setup (tDsu) and hold time (tDh)
`relative to the strobe edges is therefore required, as shown in Figure 4-3.
`
`
`
`tDsu
`
`tDh
`
`tDsu
`
`tDh
`
`Receive Strobe
`
`Receive Date
`
`Figure 4-3 Receive Strobe/Data Timings
`
`2° Data refers to any of the 2X capable signal groups: AD[31:0], C/BE[3:0]# or SBA[7:0].
`
`July 31,1996
`
`Page 75 of 161
`
`65
`
`Petitioners HTC & LG — Exhibit 1024, p. 75
`
`Petitioners HTC & LG - Exhibit 1024, p. 75
`
`

`

`Revision 1.0
`
`A.G.P. Interface Specification
`
`4.1.3.3 Transmit Outer to Inner Loop
`
`The next timing relationship to understand is the relationship between the outer loop and inner loop at the
`transmitter. These timing specs are needed to create a deterministic data relationship between the inner loop
`transfer and the related outer loop flow control events (e. g. |RDY#). The relationship is specified by
`relating the output strobe to the A.G.P. clock, as shown in Figure 4-4. Note that two clock periods, T1 and
`T2, are shown since the strobe pulse is permitted to cross the A.G.P. clock boundary.
`
` tTSf MIN
`
`tTSf MAX
`
`Transmit Strobe
`
`V
`
`tTSr
`
`i
`
`/
`
`\
`
`Figure 4-4 Transmit Strobe/Clock Timings
`
`To guar

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