从0开始计算机体系结构的学习(一):FGPA预备知识与Vivado环境搭建

news/2024/9/17 12:02:58/文章来源:https://www.cnblogs.com/ranxi169/p/18413083

引入与预备知识

什么是FPGA?

FPGA(Field-Programmable Gate Array,现场可编程门阵列)是一种集成电路(IC),其硬件功能可以通过用户在现场编程来定义。与传统的ASIC(专用集成电路)不同,FPGA在制造完成后仍然可以根据需求进行重新配置。因此,它们被广泛应用于需要灵活性和可定制性且性能要求较高的场景中,如通信、信号处理、自动驾驶和物联网等领域。

FPGA的主要特点包括:

  1. 可编程性:用户可以通过硬件描述语言(HDL),如Verilog或VHDL,来编写FPGA内部的逻辑功能,并通过工具进行综合、实现和下载到FPGA中。

  2. 并行处理能力:FPGA支持高度并行的运算,多个逻辑单元可以同时独立工作,因此它们在处理需要高吞吐量的应用时表现优越,比如图像处理或信号处理。

  3. 硬件加速:在某些特定的计算任务中,FPGA可以作为加速器,通过硬件来实现更高效的运算。

  4. 灵活性:FPGA可以在开发阶段或部署阶段根据需求进行功能修改,而无需像ASIC那样重新设计和制造芯片。

FPGA通常应用在需要高性能、低延迟且具有高度灵活性和可定制性的领域,比如通信基站、航空航天、工业控制、加密处理等。

什么是Vivado?

Vivado 是由 Xilinx(赛灵思)公司开发的一套设计工具,用于 FPGA 和 SoC(System on Chip,片上系统)等可编程逻辑器件的设计、综合、仿真和实现。它是专为 Xilinx FPGA 和可编程 SoC 平台(如 Zynq 系列)设计的,并且提供了从设计输入到硬件实现的全流程支持

Vivado 工具的主要功能和特点包括:

  1. 综合(Synthesis):将硬件描述语言(HDL)代码(如 Verilog、VHDL)转换为可以在 FPGA 上实现的门级电路。Vivado 提供了高效的综合器,可以优化设计的性能、面积和功耗。

  2. 实现(Implementation):综合后的设计需要经过映射、布局布线等步骤,才能变成实际可用于 FPGA 的逻辑配置。Vivado 通过自动化的工具实现这些过程,并提供了详细的报告和优化建议。

  3. IP 集成:Vivado 支持对现成的 IP 核进行集成,这些 IP 核可以是 Xilinx 自带的,也可以是第三方开发的功能模块,能够极大地加快开发过程。Vivado 的 IP Integrator 允许设计人员图形化地集成和连接多个模块。

  4. 仿真和验证:Vivado 提供了仿真功能,帮助设计人员在将设计下载到 FPGA 之前验证逻辑功能的正确性。通过仿真,设计人员可以在虚拟环境中测试设计的行为,减少错误和调试时间。

  5. 调试工具:Vivado 中集成了硬件调试工具,如 Vivado Logic Analyzer 和 Integrated Logic Analyzer(ILA),可以帮助设计人员在 FPGA 上运行代码时实时监控内部信号的状态,便于查找和解决问题。

  6. 高效的界面:Vivado 提供了现代化的图形用户界面(GUI),用户可以通过拖拽、连接组件的方式进行设计,同时也支持命令行和脚本操作,适合不同的设计需求。

Vivado 是 Xilinx FPGA 开发流程的核心工具,支持从 RTL(寄存器传输级)设计输入到最终配置文件生成的全流程,是 FPGA 设计工程师不可或缺的开发环境之一。

环境准备

Vivado下载安装

下载

下载通过百度网盘更加方便,教程和链接可通过此链接获取:win10安装vivado + vitis 2019.2 教程_vitis2019.2安装教程-CSDN博客

需要注意,其他版本的下载链接不附带vitis,故需通过上述链接安装。网盘直达:

Vivado19.2 安装包:链接:https://pan.baidu.com/s/1fPlNDzpC0EPXMhOloDyzfA
提取码:1234

安装教程

  • 参考电子书:《达芬奇 Pro 之 FPGA 开发指南第四章p110,访问链接:

通过网盘分享的文件:FPGA开发指南 V1.3.pdf
链接: https://pan.baidu.com/s/1Zqfn0Vq5Kqbzhe6X5WwMyA?pwd=5y97 提
取码: 5y97

  • 也可直接参考本博客【较为完善】:最详细手把手教你安装 Vivado2019.2

需要补充一点,这里选项很重要(书上没写,也没有涉及图片)!!!选择vitis,我查了下,你选择vitis相当于选择了全家桶,包括了vitis + vivado,如果选择下面vivado选项的话,那么就没有vitis IDE.就不能进行PS端开发。

破解证书

详细教程请看本文:最详细手把手教你安装 Vivado2019.2

  • 安装完成后自动打开许可证管理软件,点击 Load License,点击 Copy License,找到资源包里的许可证文件,点击 打开
  • 也可以通过下图所示再次打开许可证管理软件,选择自己获得的license

VScode配置

请看教程:

  • Vivado与Vscode编程环境的搭建_vivado关联vscode-CSDN博客

  • VSCode配置verilog环境(代码提示+自动例化+格式化)_vscode verilog-CSDN博客

Vivado软件教程

请看教程:

  • 03工具篇:Vivado软件的安装哔哩哔哩_bilibili
  • 04Vivado软件的使用(第一讲)哔哩哔哩_bilibili
  • 05Vivado软件的使用第二讲哔哩哔哩_bilibili

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/796792.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WordPress加载流程的解读分析

index.php ```php <?php /** 这个文件只用来加载 /wp-blog-header.php** @package WordPindex.php ```php <?php /* * 这个文件只用来加载 /wp-blog-header.php * * @package WordPress / /* * 声明一个全局变量,用来判断是否加载主题 * * @var bool / define(WP_USE_…

C++ 虚函数表解析

一、何为多态 多态(polymorphism)指为不同数据类型的实体提供统一的接口,或使用单一的符号来表示多个不同的类型。比如我们熟悉的函数重载、模板技术,都属于多态。无论是模板还是函数重载,都是静态绑定的。也就是说,究竟该调用哪个重载函数或者说调用哪个模板类的实例化,…

8-回溯算法

参考代码随想录题目分类大纲如下:一、回溯算法理论基础 什么是回溯法 回溯法也可以叫做回溯搜索法,它是一种搜索的方式。回溯是递归的副产品,只要有递归就会有回溯。回溯法其实就是暴力查找,并不是什么高效的算法 回溯法的效率虽然回溯法很难,很不好理解,但是回溯法并不是…

九月

arc131 C考虑奇数情况,只有一个时先手必胜,设当前异或和为 \(S\),必输的情况是 \(\forall S \oplus a_i \in a\),这些数是一一对应的,但一共有奇数,此时先手必胜。偶数是,若第一回合无法结束游戏则变为后手,同上。 E若一个点所有边颜色相同,包含该点的环便不可能三边颜…

微信小程序开发系列10----页面配置--事件冒泡和阻止

下图点击里面,外面的事件也触发 场景:广告 点击先看广告,之后跳转到功能页面 会冒泡的事件源码获取方式(免费):(1)登录-注册:http://resources.kittytiger.cn/(2)签到获取积分(3)搜索:8-wxmleventMp事件冒泡和阻止

椭圆的第二定义

平面内到定点 \(F(c,0)\)的距离和到定直线 :\(\displaystyle l:x=\frac{a^{2}}{c}\)( 点\(F\)不在\(l\)上)的距离之比为常数\(\displaystyle \frac{a}{c}\)(即离心率\(e\),\(0<e<1\))的点的轨迹是椭圆。(即点\(P\)轨迹) 其中定点\(F\)为椭圆的焦点,定直线\(l\)称…

微信小程序开发系列9----页面配置--事件-参数传递

图点击里面,外面的事件也触发 场景:广告 点击先看广告,之后跳转到功能页面 会冒泡的事件 源码获取方式(免费):(1)登录-注册:http://resources.kittytiger.cn/(2)签到获取积分(3)搜索:7-wxmleventparameter事件-参数传递

NSSM使用方法/使用NSSM把.Net Core部署至 Windows 服务

使用NSSM把.Net Core部署至 Windows 服务 NSSM使用简介1、官网http://www.nssm.cc/,下载地址http://www.nssm.cc/download 2、下载后解压到自己喜欢的目录如:F:\work\nssm-2.24\win643、以管理员权限打开命令行工具,切换到nssm.exe所在路径,运行 nssm install,打开程序配置…

使用NSSM把.Net Core部署至 Windows 服务

使用NSSM把.Net Core部署至 Windows 服务 NSSM使用简介1、官网http://www.nssm.cc/,下载地址http://www.nssm.cc/download 2、下载后解压到自己喜欢的目录如:F:\work\nssm-2.24\win643、以管理员权限打开命令行工具,切换到nssm.exe所在路径,运行 nssm install,打开程序配置…

PC算法详解

基于约束的方法(PC(Peter-Clark)算法) 基于约束的方法大多数是在经验联合分布上测试条件独立性,来构造一张反映这些条件独立性的图。通常会有多个满足一组给定的条件独立性的图,所以基于约束的方法通常输出一个表示某个 MEC(边缘计算) 的图(例如,一个 PAG)。 最有名的…

第十九讲:幻读是什么,幻读有什么问题?

第十九讲:幻读是什么,幻读有什么问题? 简概:引入 ​ 在上一篇文章最后,我给你留了一个关于加锁规则的问题。 ​ 今天,我们就从这个问题说起吧。为了便于说明问题,这一篇文章,我们就先使用一个小一点儿的表。 ​ 建表和初始化语句如下(为了便于本期的例子说明,我把上篇…