6.2.2. Flushing AFVALIDM and AFREADYM

Whenever one of the trace sinks initiates a flush to remove old information from the system then the replicator must propagate this request even when the other sink has not requested it.

This does not cause any problems with the non-requested trace sink. It receives the flushed data. If the second master port receives a request to start a flush when there is already a flush operation under way that was begun by the first master port, then the Replicator must wait until the first request is serviced and then hold AFVALIDS HIGH to service the second request.

Figure 6.2 shows the expected interactions of the three AFVALID and AFREADY signal pairs. A flush request is started on master port 0 at time t0 that propagates to the slave port interface, AFVALIDM0 to AFVALIDS. While this is still being serviced a second request is made, at time t1, but on master port 1, AFVALIDM1. At t2, the first request is completed by the indication of ATREADYS on the slave port. This causes AFREADYM0 to complete the flush request. Because of the second request being made, the Replicator holds AFVALIDS HIGH to initiate a second flush of the system that continues until AFREADYS goes HIGH a second time at time t3.

Figure 6.2. ATB replicator flushing behavior


Copyright © 2004-2009 ARM. All rights reserved.ARM DDI 0314H
Non-Confidential