Data phases - computer architecture, Computer Engineering

Assignment Help:

Data phases:

After the address phase (particularly, starting with the cycle that DEVSEL# goes low) comes a burst of one or more data phases. In all the cases, initiator drives active-low byte choose signals on the C/BE[3:0]# lines, however the data on the AD[31:0] may be driven by the initiator (on case of writes) or target (in case of reads).

During data phases, the C/BE [3:0] # lines are interpreted as active-low byte enables. In case of a write, the asserted signals indicate which of the four bytes on the AD bus are to be written to the addressed location. In the case of a read, they specify which bytes the initiator is interested in. For reads, it is always permissible to ignore the byte enable signals and simply return all 32 bits; cacheable memory resources are needed to always return 32 valid bits. The byte enables are chiefly useful for I/O space accesses where reads have side effects.

A data phase with all 4 C/BE# lines deserted is explicitly allowed by the PCI standard, and must have no effect on the target (other than to advance the address in the burst access in progress).

The data phase continues till both parties are ready to complete the transfer and continue to the next data phase. The initiator asserts the IRDY# (initiator is ready) when it no longer required to wait, whereas the target asserts TRDY# (target ready). Whichever side is providing the data have to drive it on the AD bus before asserting its ready signal.

Once one of the contributors asserts its ready signal, this cannot become un-ready or otherwise alter its control signals till the end of the data phase. The data recipient have to latch the AD bus each cycle till it sees IRDY# and TRDY#  both asserted, which marks the end of the current data phase and mention that the just -latched data is the word to be transferred.

To maintain complete burst speed, the data sender then has half a clock cycle after seeing TRDY# and IRDY# both asserted to drive the next word onto the AD bus.

It continues the address cycle shown above, supposing a single address cycle having medium DEVSEL, so the target responds for clock 3in time. Though, at that time, neither side is ready to transfer data. For clock 4, initiator is ready to transfer, but the target is not ready. On clock 5, both are ready, and a data transfer takes place (as mention by the vertical lines). For clock 6, the target is ready to transfer, but the initiator is not ready. On clock 7, the initiator becomes ready, and then data is transferred. For clocks 8 and 9, both sides remain ready to transfer data and transferred it at the maximum possible rate (32 bits per clock cycle).

In particular case of a read, clock 2 is reserved for turning around the AD bus, so the target is not allowed to drive data on the bus even if it is capable of fast DEVSEL.

Fast DEVSEL# on reads

A target that supports fast DEVSEL could in theory start responding to a read the cycle after the address is existing. However, this particular cycle is reserved for AD bus turnaround. Therefore, a target may not drive the AD bus (and therefore may not assert TRDY#) on the second cycle of a transaction. Notice that most of the targets will not be this type of fast and will not require any special logic to enforce this condition.


Related Discussions:- Data phases - computer architecture

C++ program, A palindrome is a string that reads the same from both the end...

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

Categorize the cpu scheduling algorithms, Categorize the CPU scheduling alg...

Categorize the CPU scheduling algorithms? The various CPU scheduling algorithms are categorized as given below:

Explain the use of structures with pointers., Explain the use of structures...

Explain the use of structures with pointers C permits a pointer to a structure variable. In fact a pointer to a structure is same to a pointer to any other variable. The pointe

Prototyping and incremental development, a) Write  the main differences amo...

a) Write  the main differences among prototyping and incremental development.    b) Explain the commonality and main differences among agile approach and RUP.

Struct and class, https://dl.dropbox.com/u/41918180/Images/Pro%202/2.png ...

https://dl.dropbox.com/u/41918180/Images/Pro%202/2.png https://dl.dropbox.com/u/41918180/Images/Pro%202/3.png https://dl.dropbox.com/u/41918180/Images/Pro%202/4.png">https://dl.d

Synchronization latency problem, Synchronization Latency Problem:  If two s...

Synchronization Latency Problem:  If two simultaneous processes are performing remote loading, then it is not recognized by what time two processes will load, as the issuing proces

Why pic18f452 was used in the project designed, I have used the PIC18F452 m...

I have used the PIC18F452 microcontroller for both the main micro and the interface chip device because of it enhanced features that can be used to meet the specification required

Draw the logic circuit using NOR gates using K-map, Draw the logic circuit ...

Draw the logic circuit using minimizaed equation by K-map for the simplified function using NOR gates only. F (A, B, C, D) = Π M (1, 2, 3, 8, 9, 10, 11,14) ⋅ d (7, 15) Ans

INTERRUPT METHOD, interrupt method in keypad operation coding using PIC16

interrupt method in keypad operation coding using PIC16

Write a program for comparing two strings, Q. Write a program for comparing...

Q. Write a program for comparing two strings? Let's write a program for comparing two strings. Determine the following piece of code that has been written in C to compare two s

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd