Create a queue and supply a DecoupledIO containing the product.
Create a queue and supply a DecoupledIO containing the product.
Create a queue and supply a IrrevocableIO containing the product.
Create a queue and supply a IrrevocableIO containing the product. Casting from Decoupled is safe here because we know the Queue has Irrevocable semantics; we didn't want to change the return type of apply() for backwards compatibility reasons.
Factory for a generic hardware queue.
output (dequeue) interface from the queue
consumer.io.in <> Queue(producer.io.out, 16)