Our customer wants to know how multicore can submit multiple outstanding requests of posted WRITE operations. It seems to be not supported by SRIO hardware that multicore submits multiple outstanding requests by using eight LSU register sets.
Serial RapidIO (SRIO) for KeyStone Devices User's Guide (Rev. B)
http://www.ti.com/lit/ug/sprugw1b/sprugw1b.pdf
(Page 57)
"There are eight LSU register sets. This allows eight outstanding requests for all
transaction types that require a response (i.e. non-posted). For multicore devices,
software manages the usage of the registers. A shared configuration bus (VBUSP
interface) is used to access all register sets. A single core device can utilize all eight LSU
blocks."
2.3.2.2.1 WRITE Transactions (Page 61)
"For posted WRITE operations that do not require a RapidIO response packet, a core
may submit multiple outstanding requests. For instance, a single core may have many
streaming write packets buffered at any given time, given out-going resources. In this
application, the LSU can be released to the shadow registers as soon as the packet is
written into the shared TX buffer pool. If the request has been flow controlled, the
peripheral will set the completion code status register and appropriate interrupt bit of
the ICSR. The control/command registers can be released after the interrupt service
routine completes."
Our customer often sees that the output port receives a packet-retry control symbol after multicore submits multiple outstanding requests of posted WRITE operations by using one LSU register set for each core.
Should the customer change the current method that multicore submits multiple outstanding requests of posted WRITE operations?
If so, how can it be implemented?
Best regards,
Daisuke