【Vivado HLS Coding Style-2】2维卷积:C代码构建高效硬件

------------------------------------------------------------------------------------------------------------

作者:王超

联系:526160753(wechat\QQ)

wordchao     (facebook)

研究:机器学习、深度学习

图像识别检测、车牌识别、人脸识别

人工智能算力优化、FPGA 协处理

------------------------------------------------------------------------------------------------------------

以Xilinx Vivado HLS官方Sample Code(2D_convolution_with_linebuffer)为蓝本,探讨Hardware Efficient C Code

Sample Code路径:(SDx root)\2017.1\Vivado_HLS\examples\design\2D_convolution_with_linebuffer

vivado_hls –f run_hls.tcl

vivado_hls –p proj_2D_convolution_with_linebuffer

原文地址:https://www.cnblogs.com/wordchao/p/9066366.html

时间: 2024-12-07 23:54:48

【Vivado HLS Coding Style-2】2维卷积:C代码构建高效硬件的相关文章

Vivado HLS Coding Style

Vivado Design Suite User GuideHigh-Level SynthesisUG902 (v2017.2) June 7, 2017 Chapter 3. High-Level Synthesis Coding Styles 3级目录 4级目录 原文地址:https://www.cnblogs.com/wordchao/p/9066065.html

HLS Coding Style: C++ Classes and Templates

IMPORTANT: Classes and class member functions cannot be the top-level for synthesis. Instantiate the class in a top-level function. IMPORTANT: The top-level function cannot be a template. Constructors, Destructors, and Virtual Functions Global Variab

二维卷积c代码

二维信号的卷积原理请参考另外一篇文章:http://blog.csdn.net/carson2005/article/details/43702241 这里直接给出参考代码: void Conv2(int** filter, int** arr, int** res, int filterW, int filterH, int arrW, int arrH) { int temp; for (int i=0; i<filterH+arrH-1; i++) { for (int j=0; j<f

基于Vivado HLS在zedboard中的Sobel滤波算法实现

 基于Vivado HLS在zedboard中的Sobel滤波算法实现 平台:zedboard  + Webcam 工具:g++4.6  + VIVADO HLS  + XILINX EDK + XILINX SDK 系统:ubuntu12.04 总体设计思路 sobel 算法理论基础       索贝尔算子(Sobel operator)主要用作边缘检测,在技术上,它是一离散性差分算子,用来运算图像亮度函数的灰度之近似值.在图像的任何一点使用此算子,将会产生对应的灰度矢量或是其法矢量. 该

coding style 的两点

通俗介绍coding style两点建议: 模块划分 这个如果做得不好,简直不能忍.有的代码非常莫名其妙,有些东西本身不复杂,非要将其拆成好几个部分,然后做成一个一个碎散的模块,这样并不好.举个例子,比如有的代码就是一个小fifo,单独搞成了一个模块,一个小队列搞成了一个小模块.然后,信号每进出一次模块就会改变一次名字,导致阅读其代码大脑内存消耗很大,很吃力.不得不说,频繁的对同一信号进行变量名更换是非常低等的设计. 变量名 不要设计不知所云的变量名缩写.一般情况阅读代码都是半读半猜,变量名起的

编程风格(Coding Style)要求

编程风格(Coding Style)要求2.1.1 文件(1) 每个模块(module)一般应存在于单独的源文件中,通常源文件名与所包含模块名相同.(2) 每个设计文件开头应包含如下注释内容:? 年份及公司名称.? 作者.? 文件名.? 所属项目.? 顶层模块.? 模块名称及其描述.? 修改纪录.2.1.2 大小写(1) 如无特别需要,模块名和信号名一律采用小写字母.(2) 为醒目起见,常数(`define定义)/参数(parameter定义)采用大写字母.2.1.3 标识符(1) 标识符采用传

Google&#39;s C++ coding style

v0.2 - Last updated November 8, 2013 源自 Google's C++ coding style rev. 3.274 目录 由 DocToc生成     头文件        #define用法        前向声明        内联函数        -inl.h文件        函数参数顺序        include的命名和顺序    作用域        命名空间            未命名空间            命名空间       

linux c coding style

Linux kernel coding style This is a short document describing the preferred coding style for the linux kernel. Coding style is very personal, and I won't _force_ my views on anybody, but this is what goes for anything that I have to be able to mainta

[CPP] Coding Style

C++ Coding Style C++很多强大的语言特性导致它的复杂,其复杂性会使得代码更容易出现bug.难于阅读和维护. 本Coding Style用来约束C++编程,使得代码在有效使用C++语言特性的同时易于管理[代码的一致性高于一切]. 参考:<Google C++ Style Guide> 分类 标题 规则 备注(示例) 头文件 每个.cc文件都应对应一个.h文件 #define保护 1.  #define PROJECT_PATH_FILE_H_ 防止.h文件被多重包含: 1. P