ug871-vivado-high-level-synthesis-tutorial第3章lab3中文

来源:互联网 发布:视频同步录制软件 编辑:程序博客网 时间:2024/06/16 22:28

Lab3: C++任意精度类型验证

概述

这个练习是用C++任意精度类型做的设计,您可以在用户界面查看并调试这个设计

步骤1:创建打开工程

1.   lab2中使用的Vivado HLS命令提示符下,更改为Lab3目录

2.   创建一个新的vivado HLS 工程,键入命令为vivado_hls –f run_hls.tcl

3.    打开vivado HLS 用户界面,键入vivado_hls –phamming_window_prj

4.    在资源管理器中打开源文件夹,双击hamming_window.cpp 打开代码如图49

 

5.按住Ctrl键并单击hamming_window.h45行,打开这个头文件。
6.
向下滚动,以查看类型定义(图50

注意:在这个实验中,所做的设计和Lab1和lab2是一样的有一点除外。这个设计是用C++并且类型已经用C++任意精度类型更新,ap_in,是Vivado HLS定义提供的头文件ap_int.h

步骤2:运行C调试

1.   点击工具栏里Run CSimulation按钮,打开C仿真对话框

2.   选择Debug选项

3.   点击OK运行仿真

打开调试环境

1. 选择hamming_window.cpp 代码标签

2. 在61行设置断点,如图51

3. 点击恢复按钮(Resume button)F8,来执行代码到断点处。

4. 点击两次Step Into按钮,或F5,看到图52

在设计中的这个变量是C++任意精度类型,这些类型在ap_int.h头文件中定义,当调试碰到这些类型,它会进入到这个头文件里面。

当你继续单步执行代码,您有机会更详细地观察结果的任意精度的类型是如何计算出来的。

更高效的方法是退出ap_int.h头文件并返回查看结果。

8. 点击Step Return 按钮,或者F7,返回到调用函数

9. 选择Variables 标签

10. 展开outdata变量,如图53看到在VAL参数中所示的变量的值。

任意精度的类型是一个强有力的手段来创建高性能,精确到位的硬件设计。然而,在调试环境,可以通过定义头文件来减少工作量。使用断点和单步返回特点,跳过低级别的计算并查看在变量选项卡变量的值。

结论
在本教程中,您学习:

•的C试验台在模拟过程中的重要性。

•如何使用C调试环境,设置断点和单步执行代码。

•如何调试CC+ +任意精度类型。

 

 

0 0
原创粉丝点击