![](http://xilinx.eetrend.com/files/2020-02/wen_zhang_/100047823-91007-1.png)
具体细节的展示图如下:
![](http://xilinx.eetrend.com/files/2020-02/wen_zhang_/100047823-91008-2.png)
通过上图可知,在OpenCL中提供的存储模型中,有如下几种Memory类型。
Host Memory
Host Memory指的是连接在主板上的内存条,仅供host进行数据读取。
Off-Chip Global memory
Off-Chip Global memory 指的是在FPGA板卡上通过硬件与FPGA芯片连接的内存条。数据存取所花费的时间相对较长,但是容量相对较大。
![](http://xilinx.eetrend.com/files/2020-02/wen_zhang_/100047823-91009-3.png)
• Off-Chip Global Memory
Off-Chip Global Memory Host端可以通过PCIe进行数据读写,Device端同样可以进行数据的读写
• Off-Chip Constant Global Memory
Constant Global Memory同样是在FPGA板卡上通过硬件与大专栏 Xilinx OpenCL的存储模型>FPGA芯片连接的内存条。不同的是Host端只能进行写入,Device端只能进行读出。适用于参数数据的传输。
On-Chip Memory
On-Chip Memory 主要是采用FPGA中BRAM资源组成,具有随机存储和低延时的特点,但是资源有限。
• On-Chip Global Memory
![](http://xilinx.eetrend.com/files/2020-02/wen_zhang_/100047823-91010-4.png)
• On-Chip Pipes
![](http://xilinx.eetrend.com/files/2020-02/wen_zhang_/100047823-91011-5.png)
• Local Memory & Private Memory
Local Memory可用于所有的work-item
Private Memory仅用于single work-item
![](http://xilinx.eetrend.com/files/2020-02/wen_zhang_/100047823-91012-6.png)
参考
OpenCL Memory Architecture
SDAccel Environment Optimization Guide (UG1207)
来源:博客园 - 刘忠荣,转载此文目的在于传递更多信息,版权归原作者所有,如涉及侵权,请联系删除。