How to drive data that might contain part of two packets?

In reply to warnerrs:

Thank you for your ideas, but the item_done(rsp) is executed after the a single item is completely driven onto the interface, right? why can’t it be an indication of which item is completed?