Changeset 288 for trunk/modules


Ignore:
Timestamp:
Jan 16, 2013, 1:48:31 PM (11 years ago)
Author:
joannou
Message:

Bug fix in vci_cc_vcache_wrapper_v4 : unwanted reset of the r_dcache_pending_unc_write flag
Description : an unc write is registered by the DCACHE FSM in the write buffer,
then a cacheable write resets the flag (THIS SHOULD NOT HAPPEN) and is
registered in the write buffer. Then, a second unc write is also registered in
the write buffer (could be avoided by the flag being correctly set). The CMD
FSM then becomes ready to consume from the write buffer and chooses to send the
second unc write first. (This bug appeared when trying to dsiplay giet_vm boot
debug messages in a tsarv4_generic_mmu platform with a 1 cluster / 4 processors
configuration)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/vci_cc_vcache_wrapper_v4/caba/source/src/vci_cc_vcache_wrapper_v4.cpp

    r285 r288  
    20912091                else          // update the write_buffer state extension
    20922092                {
    2093                     r_dcache_pending_unc_write = not r_dcache_p0_cacheable.read();
     2093                    if(not r_dcache_pending_unc_write.read())
     2094                        r_dcache_pending_unc_write = not r_dcache_p0_cacheable.read();
    20942095
    20952096                    // read directory to check local copy
Note: See TracChangeset for help on using the changeset viewer.