许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  HLS编程环境入门搭建liunx下环境:HLS高层次综合编程环境Linux搭建教程

HLS编程环境入门搭建liunx下环境:HLS高层次综合编程环境Linux搭建教程

阅读数 6
点赞 0
article_banner

一、安装liunx版vivado

须知 安装Vivado下载文件达20G liunx虚拟机环境磁盘需要100G左右

安装前准备

由于我的liunx磁盘过小,所以我对磁盘进行了扩充。链接:VMware虚拟机 Linux系统 Ubuntu 16.04 硬盘/磁盘扩容(超详细图文详解!亲测有效!)。
  1. 将windows中的安装文件放到liunx的共享文件。
这里是我在window中下载了xilinx安装文件压缩包
  1. 解压文件。
sudo tar xvzf /mnt/hgfs/ubuntshare/Vivado_SDK_2018.3_1207_2324.tar.gz
  1. 到解压文件中,运行安装文件。
sudo ./xsetup

安装过程中

  • 实验使用当前版本,不需要更新到最新版本,点contiune。
  • 三个同意,点击 Next。
  • 选择 Vivado HL Design Edition,点击 Next。
  • 勾选需要用到工具,点击 Next。
  • 继续next。
  • 进入安装过程中,想到windows漫长的安装,可以喝杯咖啡了。
  • 完成安装,将license放到文件中。
  • 软件注册成功

添加权限和安装下载驱动

  • 添加权限
sudo chmod -R 777 /tools/Xilinx 
sudo chmod -R 777 ~/.Xilinx/
  • 安装下载器驱动
直接cd到驱动目录,会出错,建议一个一个慢慢进。
cd /tools/Xilinx/Vivado/2018.3/data/xicom
/cable_drivers/lin64/install_script/install_drivers
sudo ./install_drivers 

在这里插入图片描述

  • 写入环境变量方便使用
sudo gedit .bashrc

在该文件末端,添加:

source /tools/Xilinx/Vivado/2018.3/settings64.sh

二、PetaLinux安装

PetaLinux 是一个嵌入式 Linux 系统 开发工具包,用于 XilinxFPGA 片上系统

   的定制、建立、测试和部署 嵌入式   Linux 系统。

安装 依赖库

  1. 安装依赖库
sudo -s
sudo apt-get install gcc git make net-tools libncurses5-dev tftpd zlib1g-dev libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath socat xterm autoconf libtool 
tar unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev 
zlib1g:i386 screen pax gzip gawk
  1. 安装tftp Server。
apt-get install tftpd-hpa
  1. 启动tft Serve,查看状态。
service tftpd-hpa restart
service tftpd-hpa status

在这里插入图片描述

  1. 校验 tftp。
ps ax | grep tftpd

在这里插入图片描述

安装 Petalinux

  1. 安装准备
这里的<your_user_name>填写你的用户名
sudo –s
mkdir –p /opt/pkg/petalinux/2018.3
chown <your_user_name> /opt/pkg/
chown <your_user_name> /opt/pkg/petalinux/
chown <your_user_name> /opt/pkg/petalinux/2018.3/
chgrp <your_user_name> /opt/pkg/
chgrp <your_user_name> /opt/pkg/petalinux/
chgrp <your_user_name> /opt/pkg/petalinux/2018.3/
exit
  1. 为安装包添加运行权限。
sudo chmod +x petalinux-v2018.3-final-installer.run
  1. 安装程序。
./petalinux-v2018.3-final-installer.run /opt/pkg/petalinux/2018.3/
  1. 同意三连。
  2. 验证安装正确性。
source /opt/pkg/petalinux/2018.3/settings.sh
echo $PETALINUX

三、hello_world–灯闪烁

在vivado hls  中操作

  1. 启动vivado hls,使用以下命令。
注意:先输入,source /tools/Xilinx/Vivado/2018.3/settings64.sh
vivado_hls
  1. 创建文件,设置目录及文件名。
    在这里插入图片描述
    在这里插入图片描述
  2. 选择器件,根据实际情况。
    在这里插入图片描述
  3. 在source右键,新建led.cpp文件。在这里插入图片描述

        内容为:
#include "led.h"
void flash_led(led_t *led_o , led_t led_i){
	#pragma HLS INTERFACE ap_vld port=led_i
	#pragma HLS INTERFACE ap_ovld port=led_o
	cnt_t i;
	for(i=0;i<CNT_MAX;i++)
	{
		if(i==FLASH_FLAG)
		{
			*led_o = ~led_i;
		}
	}
}



  1. 新建led.h文件。内容:
#ifndef _SHIFT_LED_H_
#define _SHIFT_LED_H_

#include "ap_int.h"

#define CNT_MAX 100000000
//#define CNT_MAX 100

#define FLASH_FLAG CNT_MAX-2
// typedef int led_t;
// typedef int cnt_t;

typedef ap_int<1> led_t;
typedef ap_int<32> cnt_t;
void flash_led(led_t *led_o , led_t led_i);

#endif

  1. 添加C仿真文件,右键test Bench新建文件。

        内容:
#include "led.h"
void flash_led(led_t *led_o , led_t led_i){
	cnt_t i;
	for(i=0;i<CNT_MAX;i++)
	{
		if(i==FLASH_FLAG)
		{
			*led_o = ~led_i;
		}
	}
}
  1. 设置信号 led_o 进行约束 led_i 进行约束。
  2. 进行仿真之前,我们首先选中我们要仿真的顶层函数,点击 project 选择 project seethings选择 synthesisbrowser选择 flash_led 作为顶层函数。
  3. 然后点击 project  Run C simulation,进行仿真。
  4. 接下来,进行 C 综合,编译器会将 C++代码映射到 RTL 电路,点击 Solution Run C Synthesis  Active Solution。等待一段时间后,编译器会提示综合后的结果。
  5. 接下来,我们进行 C/RTL 联合仿真,来验证映射出来的 RTL 电路是否正确。
注意设置library目录
  1. 出现错误。
ERROR: [COSIM 212-104] Cannot find Mentor Graphics ModelSim. Make >sure it is accessible through the PATH variable. 一键获取完整项目代码bash1 错误原因:仿真软件在path找不到。 解决:在环境变量中,添加仿真软件路径。
  1. 联合仿真,成功结果。
    在这里插入图片描述

        次执行完联合仿真后,我们可以使用Modelsim 或者 Vivado 软件打开联合仿真所产生的波形。
  2. 导出 HLS 工程生成的 IP 核,solution 选择 Export RTL。

在vivado中操作

  1. 新建vivado项目工程
    在这里插入图片描述
    在这里插入图片描述
  2. 在setting导入hls中生成ip核。在这里插入图片描述
  3. 在ip catalog查看导入成功的ip。
    在这里插入图片描述
  4. 点击该ip,ok.]。在这里插入图片描述
  5. 新建文件,完成
    在这里插入图片描述
    在这里插入图片描述

        代码如下:
  1. 创建约束文件
    在这里插入图片描述

        内容:
##############LED define################## 
set_property PACKAGE_PIN P15 [get_ports {led_o}]
set_property IOSTANDARD LVCMOS33 [get_ports {led_o}]
##############Reset define################## 
set_property PACKAGE_PIN P16 [get_ports {rst_n}]
set_property IOSTANDARD LVCMOS33 [get_ports {rst_n}]
##############50M CLK define################## 
create_clock -period 20.000 -name clk -waveform {0.000 10.000} [get_ports clk]
set_property PACKAGE_PIN N18 [get_ports {clk}]
set_property IOSTANDARD LVCMOS33 [get_ports {clk}]
  1. 编译综合,生成bitstream。
    在这里插入图片描述

        成功后,最下面点击完成开发板下载。
    在这里插入图片描述

四、参考

学习 内容为:微相Z7_Lite系列教程


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空