1. An apparatus comprising: a memory configured to store data; and a controller configured to process a plurality of input/output requests to read/write to/from the memory, the controller comprising a processor configured to initiate a recycle operation by generation of a start index and a search range, and a hardware assist circuit configured to store the start index and the search range in a queue, search exclusively through a first level in a map in response to the start index and the search range, notify the processor in response to a detection in the first level of the map that one or more of the source blocks to be recycled contain valid data, and suspend the recycle operation while servicing a new command to access the memory, wherein the start index and the search range identify a plurality of source blocks in the memory to be recycled in the recycle operation, the map defines a plurality of translations between a plurality of logical addresses used at a host interface and a plurality of physical addresses used in the memory, the map has a plurality of pages in a second level, the first level in the map indicates if data in the source blocks is valid or not, and all of the first level and a portion less than all, of the second level in the map are buffered in a cache while the first level is searched.