This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion
Parents
  • Note: This was originally posted on 25th March 2009 at http://forums.arm.com

    Hi isogen74:

         Thank you for your reply .

         in my system, i really use the write-back mode, i post question using write-though mode only because i want to know exactly what is the meaning of "buffered store to external memory".

         i am sorry that i still can not understand how to buffered store to external momory. does it mean that when write cahce hit, data first updated in DCache, and then send data to write buffer, and after a little time, we assue it is 1us, the data in write buffer is updated to SDRAM automatically.

    >All ARM9 caches are read-allocate. A write that misses will not update the cache.

           in my mind, i think write miss should of course do linefill immediately, why doesn't ARM implement this on ARM9? is it because of cost?  and in arm11, is this implemented?


           another question:  in ARM9 TRM, it said as below:

    The write buffer is used for all writes to a noncachable, bufferable region, write-through
    region, and write misses to a write-back region. A separate buffer is incorporated in the
    DCache for holding write-back data for cache line evictions or cleaning of dirty cache
    lines.
    The main write buffer has a 16-word data buffer and a four-address buffer.
    The DCache write-back buffer has eight data word entries and a single address entry.
    The MCR drain write buffer instruction enables both write buffers to be drained under
    software control.
        
          does it mean that there are two physical write buffer on ARM9, one is specifically for CPU STR instruction which may write data to SDRAM, and the other is epecifically for DCache?


    Best Regards
Reply
  • Note: This was originally posted on 25th March 2009 at http://forums.arm.com

    Hi isogen74:

         Thank you for your reply .

         in my system, i really use the write-back mode, i post question using write-though mode only because i want to know exactly what is the meaning of "buffered store to external memory".

         i am sorry that i still can not understand how to buffered store to external momory. does it mean that when write cahce hit, data first updated in DCache, and then send data to write buffer, and after a little time, we assue it is 1us, the data in write buffer is updated to SDRAM automatically.

    >All ARM9 caches are read-allocate. A write that misses will not update the cache.

           in my mind, i think write miss should of course do linefill immediately, why doesn't ARM implement this on ARM9? is it because of cost?  and in arm11, is this implemented?


           another question:  in ARM9 TRM, it said as below:

    The write buffer is used for all writes to a noncachable, bufferable region, write-through
    region, and write misses to a write-back region. A separate buffer is incorporated in the
    DCache for holding write-back data for cache line evictions or cleaning of dirty cache
    lines.
    The main write buffer has a 16-word data buffer and a four-address buffer.
    The DCache write-back buffer has eight data word entries and a single address entry.
    The MCR drain write buffer instruction enables both write buffers to be drained under
    software control.
        
          does it mean that there are two physical write buffer on ARM9, one is specifically for CPU STR instruction which may write data to SDRAM, and the other is epecifically for DCache?


    Best Regards
Children
No data