Sponsored Links


Results 1 to 4 of 4

Thread: CS501 Advance Computer Architecture GDB Close Date 7th to 8th August 2014

  1. #1
    Senior Member
    Join Date
    Oct 2012
    Posts
    323

    CS501 Advance Computer Architecture GDB Close Date 7th to 8th August 2014

    Sponsored Links1




    CS501 Advance Computer Architecture GDB Discussion and Solution Close Date 7th to 8th August 2014


    Sponsored Links



    Topic:

    In computer architecture why does a “system interface unit” provide separate queues for “read” and “write” transactions?
    Is it possible for a “write queue” to directly execute without interference of “read queue”?
    Answers must be to the point and justified with reasons.Note: Your answer should not be more than 300 words.

  2. #2
    Administrator Vuhelper's Avatar
    Join Date
    Apr 2011
    Posts
    9,578
    Read Queue

    Only a few entries are needed to be effective: 2-4 is typical. Reads fetch a whole cache line (by bursting multiple reads onto the main memory bus). However, the requested word could be the last in the cache line, leading to an intolerable delay (with the CPU blocked waiting for the data) while the first words are read. Thus the SIU must also ensure that the requested word is read first and transferred to the cache (and on to the read request in the main pipeline) followed by the remainder of the cache line. So a burst transaction for 8 words (32 bytes) on a 64-bit bus will not always read the words in order

    (0 and 1, 2 and 3, 4 and 5, 6 and 7)
    but may read them out-of-order, eg word 5 is requested, so the order is

    (4 and 5, 6 and 7, 0 and 1, 2 and 3)
    Bus clocks (typically 30-60MHz) are much slower than processor clocks (typically 200-600MHz) so the penalty for not re-ordering the bus transactions is extreme!

    Write Queue

    As with the read queue, a small number of entries suffice: 2-3 is typical. Transactions in the write queue are only selected for execution if the read queue is empty. This is a key function of the SIU - giving priority to read transactions that could block the CPU.

    Note that read requests must be checked against pending transactions in the write queue: the write queue may have the latest value written to a memory location (the main memory has not yet been updated - a coherence problem) and its this value which should be supplied to the read operation.

  3. #3
    Administrator Vuhelper's Avatar
    Join Date
    Apr 2011
    Posts
    9,578
    Read Queue

    Only a few entries are needed to be effective: 2-4 is typical. Reads fetch a whole cache line (by bursting multiple reads onto the main memory bus). However, the requested word could be the last in the cache line, leading to an intolerable delay (with the CPU blocked waiting for the data) while the first words are read. Thus the SIU must also ensure that the requested word is read first and transferred to the cache (and on to the read request in the main pipeline) followed by the remainder of the cache line. So a burst transaction for 8 words (32 bytes) on a 64-bit bus will not always read the words in order

    (0 and 1, 2 and 3, 4 and 5, 6 and 7)
    but may read them out-of-order, eg word 5 is requested, so the order is

    (4 and 5, 6 and 7, 0 and 1, 2 and 3)
    Bus clocks (typically 30-60MHz) are much slower than processor clocks (typically 200-600MHz) so the penalty for not re-ordering the bus transactions is extreme!

    Write Queue

    As with the read queue, a small number of entries suffice: 2-3 is typical. Transactions in the write queue are only selected for execution if the read queue is empty. This is a key function of the SIU - giving priority to read transactions that could block the CPU.

    Note that read requests must be checked against pending transactions in the write queue: the write queue may have the latest value written to a memory location (the main memory has not yet been updated - a coherence problem) and its this value which should be supplied to the read operation.

  4. #4
    Senior Member Entboy's Avatar
    Join Date
    Dec 2011
    Posts
    5,454
    The SIU will manage separate queues for read and write transactions - taking requests from the read queue in preference to those in the write queue. Once the processor has despatched a command to write a result to main memory, it can assume that the operation is complete and continue immediately to the following operation.
    Detecting read requests for data in write buffers
    All read requests must be checked against transactions waiting to be written in the write buffers. This is an example of a coherence requirement - the data in the main memory is not the most recent value of the addressed location. If read requests "hit" data in the write queues, then the request must be satisfied from data in the write queue - not the data in main memory

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. CS501 Advance Computer Architecture Close Date Fall 2014 18th November 2014
    By education-2014 in forum Assignments & Solutions
    Replies: 1
    Last Post: 11-18-2014, 11:01 PM
  2. CS501 Advance Computer Architecture Assignment No. 03 ( Non-Graded ) Fall 2014
    By vuassignments in forum Assignments & Solutions
    Replies: 0
    Last Post: 01-17-2014, 04:27 PM
  3. CS501 - Advance Computer Architecture first assignment date extended
    By Xpert in forum Virtual University Announcenments
    Replies: 0
    Last Post: 11-09-2010, 03:18 PM
  4. Replies: 0
    Last Post: 08-12-2010, 12:28 AM
  5. Replies: 0
    Last Post: 08-11-2010, 12:18 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
-: Vuhelp Disclaimer :-
None of the files shown here are hosted or transmitted by this server. The links are provided solely by this site's users. The administrator's or staff of Vuhelp.net cannot be held responsible for what its users post, or any other actions of its users. You may not use this site to distribute or download any material when you do not have the legal rights to do so. It is your own responsibility to adhere to these terms. If you have any doubts about legality of content or you have any suspicions, feel free to contact us.
Online Education | JhelumSoft