数据流编码示例 - 2022.1 简体中文

Vitis 统一软件平台文档 应用加速开发 (UG1393)

Document ID
UG1393
Release Date
2022-05-25
Version
2022.1 简体中文

在数据流编码示例中,您应留意:

  1. 通过应用 pragma HLS dataflow 来指令编译器启用数据流最优化。它并非用于在 PS 与 PL 之间进行连接的数据移动器,而是用于解决数据流经加速器的方式。
  2. stream 类用作为数据流区域内每个函数之间的数据传输通道。
    提示: stream 类可在可编程逻辑中用于推断先入先出 (FIFO) 存储器电路。此存储器电路在软件编程中充当队列,从而在函数之间提供数据级同步,并改善性能。
void compute_kernel(ap_int<256> *inx, ap_int<256> *outx, DTYPE alpha) {
  hls::stream<unsigned int>inFifo;
  #pragma HLS STREAM variable=inFifo depth=32
  hls::stream<unsigned int>outFifo; 
  #pragma HLS STREAM variable=outFifo depth=32

  #pragma HLS DATAFLOW
  read_data(inx, inFifo);
  // Do computation with the acquired data
  compute(inFifo, outFifo, alpha);
  write_data(outx, outFifo);
  return;
}