Packet processor memory interface
View Patent ↗A mechanism processes memory reads and writes in a packet processor. Each memory access has an associated sequence number and information is maintained allowing the detection of memory conflicts. The mechanism is placed between a processing element and a memory system such that write data is buffered and both reads and writes are recorded. When a memory conflict is detected, based on a strict or alternate ordering model, a restart signal is generated and the entries for the associated sequence number are flushed. When the work associated with a sequence number has completed, a signal is made so that associated write data can be sent to the memory system and the entries for that sequence number can be flushed.
1. An apparatus for interfacing a packet processing engine with a memory system comprising: a first data storage element storing data representing a memory read having a first associated packet identifier; a second data storage element storing data representing a memory write having a second associated packet identifier; conflict detection logic for determining if a memory conflict exists between said memory read and said memory write based on said first associated packet identifier and said second associated packet identifier; and logic for signaling a restart coupled to said conflict detection logic and utilizing said first associated packet identifier.