Forum Discussion

Ric2's avatar
Ric2
Icon for New Contributor rankNew Contributor
2 years ago
Solved

Inter-Kernel and Kernel-Host Pipes in one design

Hi, we are transfering a HLS IP core design to the new sycl HLS tool flow. During this migration several issues came up. We have one of them isolated here and generated a reproducer (please see attac...
  • whitepau_altera's avatar
    whitepau_altera
    2 years ago

    This issue was successfully reproduced.

    You can use the sycl::ext::intel::experimental::pipe as an inter-kernel pipe or as a host pipe. I was able to get your code to compile by changing ProducerToConsumerPipe as so:


    using ProducerToConsumerPipe = ext::intel::experimental::pipe< // Defined in the SYCL headers.
    class ProducerConsumerPipeId, // An identifier for the pipe.
    INTRA_KERNEL_TYPE, // The type of data in the pipe.
    4>; // The capacity of the pipe.

    It's odd that you can't have a mixture of experimental pipes and non-experimental pipes; we've opened a bug report internally on this. Thanks for reporting!