首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 学习vivado第7章Lab2——C代码为了I/O访问的优化
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
学习vivado第7章Lab2——C代码为了I/O访问的优化
发短消息
加为好友
pengpengpang
(pengpengpang)
当前离线
UID
1023229
帖子
6106
精华
0
积分
3055
阅读权限
90
来自
中国
在线时间
156 小时
注册时间
2013-12-20
最后登录
2016-7-3
论坛元老
UID
1023229
来自
中国
1
#
打印
字体大小:
t
T
pengpengpang
发表于 2015-3-28 16:26
|
只看该作者
学习vivado第7章Lab2——C代码为了I/O访问的优化
product
,
接口
在lab1中,你不能使用流接口。C代码指定同一地址多访问的本质防止了流接口的应用。
•在流接口中,值必须按顺序进行访问。
•在代码中,访问也指端口的访问,高层次综合不能删除和优化。C代码规定了在每次product循环启动时,往端口res写0值。这可能是预期的行为的一部分。HLS不能简单地决定改变该算法的规范。
代码直观捕获到矩阵乘法的行为,但这样就阻止了在硬件上流访问行为要求。
这个实验练习使用了C代码更新的版本。在lab1中,你也工作在这个版本下。下面介绍了C代码如何更新的。
图161展示了I/O访问模式对在lab1中的代码。出于需要地址值显示用小的字体。
当变量I,j,和k从0到3迭代时,图161下面部分展示了地址产生为了读a,b和写res。此外,在每次Product循环启动时,res被设置为0。
以顺序流访问的硬件设计,端口的访问仅发生在高亮红色的时候。为了读端口,数据必须被内部缓存为了保证设计不重读端口。为了写端口res,数据必须被保存在临时变量里,并仅在周期里(红色显示的)往端口写。
在这个实验中C代码影响这个行为。
步骤1:创建并仿真工程
1. 在lab1中用命令提示符窗口,变为lab2路径如图162
2. 执行TCL并建立vivado HLS Project,采用的是vivado_hls–f run_hls.tcl如图162所示
3. 在用户界面里打开工程。用vivado_hls–p hamming_window_prj命令打开,
4.在资源管理器中打开源文件夹,并双击window_fn_top.cpp打开代码,如图163
查看代码并确认以下:
•Lab1中指令,包括fifo接口,在代码中指定代码编译
•for循环已被添加到读rol和column的缓存
•临时变量被用于累加,并且端口res仅被写当最后结果已计算出每个值时。
•因为for循环缓存row和column要求多个周期来执行读。流水线指令已被用在Col for循环。保证这些缓存for循环自动展开。
综合设计并验证RTL用协同仿真。
5.在工具栏中点击Run C Synthesis按钮,并把设计综合成RTL
6.当综合完成,用Run C/RTL Cosimulation工具栏按钮加载Cosimulation Dialog框。
7.点击OK,启动RTL仿真。
设计已经被完成综合成采用流FIFO接口在每个时钟周期读取一个样本。
结论在本教程中,您可以:
•学会了如何分析流水线循环和理解真正阻止又换目标实现的限制。
•函数实现循环流水线的优点缺点。
•如何认识到非计划中的代码中的依赖性会阻止硬件设计目标的实现,以及他们如何可以通过修改源代码来克服
附件大小
实验例子.rar
40.94 KB
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议