在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1880|回复: 0

[原创] vivado hls工程文件层级设计

[复制链接]
发表于 2021-6-5 22:01:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 WALI-123 于 2021-6-5 22:24 编辑

   Xilinx的高层次综合工具HLS,其具有基于C/C++/System C等多种语言进行设计、C级仿真、综合与RTL级仿真的功能。其强大的功能,对与提高生产率来说,是一个极其高效的工具。本帖通过一个复杂的项目,向大家展示一种布局和规划HLS工程的方法。
   本例采用高级加密算法AES进行介绍。AES算法包括三部分,加密模块,解密模块,以及密钥扩展模块。对于一个设备而言,应该包括这三个模块。HLS算法综合时,对于设计人员来说,第一步需要对算法进行分析,以确定算法的最小单元。即AES算法综合的最优方案是,建立三个工程,分别对AES加密、AES解密和密钥扩展优化和综合,最后输出三个不同的IP部分。 AES算法结构.jpg
         加密模块、解密模块、密钥扩展模块、仿真模块的C代码,以及工程文件,在HLS工程中的层级设计如下。下图中的***_***_src用于存放源代码和头文件,***_***_prj等用于存放HLS的工程文件,即HLS创建工程时,选择的工程目录。
          image.png
        源文件目录下放置源文件和头文件。
         image.png
         工程文件放置HLS工程文件。
          image.png
        按照上述方法,创建好工程后,接下来介绍如何将设计文件加入到工程。如下图所示,列举了AES加密和AES密钥扩展的HLS工程文件结构。特别注意,HLS的工程只需要加入C源文件和dat数据文件即可,不需要加入header(当然,将头文件加入到工程也不会出错)。
image.png
image.png
最后,重要的步骤,否则C仿真会出错(vivado HLS 2019.2)。选择Project -》 project setting -》Simulation,选中用于仿真的C源文件,选择Edit CFLAGS,并输入“-I../extendkey_src -I../aes_dec_src -I../aes_enc_src I../aes_sim_src”。
   其中“I../目录”可以自行搜索和尝试,然后HLS可以正常实现仿真和综合。
image.png

AES算法结构.jpg
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-6 05:02 , Processed in 0.018227 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表