当前位置: 首页 > news >正文

轻松搭建FPGA开发环境:第三课——Vivado 库编译与设置说明

工欲善其事必先利其器,很多人想从事FPGA的开发,但是不知道如何下手。既要装这个软件,又要装那个软件,还要编译仿真库,网上的教程一大堆,不知道到底应该听谁的。所以很多人还没开始就被繁琐的开发环境搭建吓退了,还没开始就放弃了!

笔者用几节课的时间,从头讲解FPGA开发的相关环境如何搭建,让大家都能轻松的搭建FPGA的开发环境,从而享受FPGA开发乐趣。

本节主要讲解如何编译Vivado的仿真库文件,以及如何在modelsim中如何配置。

  • Vivado 库编译

首先,在 Modelsim 安装路径 D:\modeltech64_10.5 下新建一个文件夹 Vivado_Library,

用于一会编译 Vivado 的库文件所存放的文件夹。

打开 Vivado,点击菜单 Tools-Compile Simulation Libraries…

如图进行设置,注意 Compiled library location 设置D:\modeltech64_10.5\Vivado_Library, 然后点击 Compile 进行库编译。

开始编译,要等待一会,一般需要半个小时以上。

完成编译后,可以看到当前 D:\modeltech64_10.5\Vivado_Library 文件夹下出现了很编译译好的库文件。

  • 配置编译库路径

用UE打开 D:\modeltech64_10.5\Vivado_Library 文件夹下的 modelsim.ini 文件

搜索到下面这句话:

;mvc_lib = $MODEL_TECH/../mvc_lib

接着从以下这行代码开始复制库的路径信息:

secureip = D:/modeltech64_10.5/Vivado_Library/secureip

一直复制到[DefineOptionset]上面一行(注意不包括这一行)为止。

回到 D:\modeltech64_10.5 路径下,找到 modelsim.ini 文件,右键单击,弹出菜单中选择“属性”。

去掉“只读”前面的勾选,然后点击“确定”。

用UE打开这个 modelsim.ini 文件,找到下面这行代码:

modelsim_lib = $MODEL_TECH/../modelsim_lib

将前面复制的库文件路径粘贴到 modelsim_lib = $MODEL_TECH/../modelsim_lib 这行的

下面。

保存文件,关闭即可。

打开 ModelSim SE-64 10.5,可以在 Library 下面出现了刚才添加的所有库文件信息,Vivado库配置成功,后续有关Vivado IP核的仿真可以直接调用相关的仿真文件即可。

相关文章:

轻松搭建FPGA开发环境:第三课——Vivado 库编译与设置说明

工欲善其事必先利其器,很多人想从事FPGA的开发,但是不知道如何下手。既要装这个软件,又要装那个软件,还要编译仿真库,网上的教程一大堆,不知道到底应该听谁的。所以很多人还没开始就被繁琐的开发环境搭建吓…...

【PostgreSQL】从零开始:(十一)PostgreSQL-Dropdb命令删除数据库

dropdb命令删除数据库 命令 [postgrespostgre-sql bin]$ dropdb --help dropdb removes a PostgreSQL database.Usage:dropdb [OPTION]... DBNAMEOptions:-e, --echo show the commands being sent to the server-f, --force try to terminate …...

UDP网络编程其他相关事项

netstat指令 netstat -an 可以查看当前主机网络情况,包括端口监听情况和网络连接情况。 netstat -an | more 可以分页显示。 要求在dos控制台下执行。 说明:(1)Listening表示某个端口在监听;(2&#xf…...

Redhat LINUX 9.3 + PG 16.1 搭建主备流复制

一直想搭建一个PG流复制,最近正好有一个新环境,操作系统是最新的,rhel 9.3,数据库是最新的 pg 16.1,借鉴了网上的步骤,尤其是小工到专家的内容,在此谢过。 1.安装环境 1)IP: 主:192.168.133.151…...

kafka设置消费者组

安装部署后 consumer.properties group.idtest-group 单机测试,自己开俩窗口,一个测试消费者,一个测试生产者(创建消息那步) 创建主题 bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replica…...

Worker-Thread设计模式

Worker-Thread模式类似于工厂流水线,有时也称为流水线设计模式。线程池在某种意义上也算是Worker-Thread模式的一种实现,线程池初始化时创建线程类似于在流水线等待工作的工人,提交给线程池的Runnable接口类似于需要加工的产品,Ru…...

npm 安装包遇到问题的常用脚本(RequestError: socket hang up)

前言 最近在给一个基于 Electron 的开源项目做贡献,需要去安装一些 npm 库,由于众所周知的原因,经常会出现报错: npm ERR! path D:\Projects\project\node_modules\electron npm ERR! command failed npm ERR! command C:\Windo…...

活动 | Mint Blockchain 将于 2024 年 1 月 10 号启动 MintPass 限时铸造活动

MintPass 是由 Mint Blockchain 官方发行的 Mint 网络和社区的 NFT 通行证,将在 2024 年 1 月份启动限时铸造活动。今天这篇文章会着重向大家介绍即将举办的 MintPass 活动的基础信息。 MintPass 有 2 种类型: 类型 1:Mint Genesis NFT Mint…...

Android动画(四)——属性动画ValueAnimator的妙用

目录 介绍 效果图 代码实现 xml文件 介绍 ValueAnimator是ObjectAnimator的父类,它继承自Animator。ValueAnimaotor同样提供了ofInt、ofFloat、ofObject等静态方法,传入的参数是动画过程的开始值、中间值、结束值来构造动画对象。可以将ValueAnimator看…...

C语言飞机大战

一、前言 [设计难度 : ★☆☆☆☆ [参考书籍:《C语言课程设计与游戏开发实践教程》 [主要涉及知识:函数封装 循环判断语句 [程序运行效果图: [主要的游戏功能: 通过按键’w’,‘s’,‘a’,d’分别实现飞机的上下左右移动 按空格…...

js 原型 和 原型链

function Person(name,age){ this.name name this.age age } var p new Person(张三,11) //创建构造函数的时候,解析器会自动为构造函数创建prototype属性,prototype属性对应的对象就是原型对象 // prototype 翻译为 原…...

如何利用SD-WAN节省运维成本和简化运维工作?

在当今数字化时代,企业对于网络的要求越来越高,需要保障网络的安全性、可靠性和灵活性。同时,随着企业的上云和远程办公等需求的增加,传统的WAN网络已经无法满足企业的需求。因此,SD-WAN技术应运而生。 SD-WAN节省运维…...

在工作中使用CHAT提高效率

问CHAT:数智时代与中国情境下的营销管理创新方向:市场营销(管理)的使命 CHAT回复:市场营销(管理)的使命可以被概述为寻找、吸引和保留消费者。通过识别、满足甚至超越消费者期望,以实…...

Maven 项目的三种打包方式与 pom.xml 文件中项目描述

目录&#xff1a; 定义项目的信息 本项目描述相关标签<parent> 标签<relativePath/> 标签<scope> 标签 Maven 三种打包方式 JARWARPOM 原文链接 — —...

【普中】基于51单片机简易计算器数码管显示设计( proteus仿真+程序+实物演示+讲解视频)

【普中开发板】基于51单片机简易计算器数码管显示设计( proteus仿真程序实物演示讲解视频&#xff09; Proteus 仿真&#xff1a;Proteus 8.16(有低版本) 程序编译器&#xff1a;keil 4/keil 5 编程语言&#xff1a;C语言 设计编号&#xff1a;P04 1. 主要功能&#xff1a…...

【Android】DeepLink

官方文档&#xff1a;创建指向应用内容的深层链接 Intro to Deep Linking on Android What is Deep linking? Deeplinks are a concept that help users navigate between the web and applications. They are basically URLs which navigate users directly to the specif…...

微服务Redis-Session共享登录状态

一、背景 随着项目越来越大&#xff0c;需要将多个服务拆分成微服务&#xff0c;使代码看起来不要过于臃肿&#xff0c;庞大。微服务之间通常采取feign交互&#xff0c;为了保证不同微服务之间增加授权校验&#xff0c;需要增加Spring Security登录验证&#xff0c;为了多个服务…...

30道C++ 基础高频题整理(附答案背诵版)

1. C和C有什么区别&#xff1f; C是C语言的超集&#xff08;我看网上很多文章说这是不对的&#xff09;&#xff0c;这意味着几乎所有的C程序都可以在C编译器中编译和运行。然而&#xff0c;C引入了许多新的概念和特性&#xff0c;使得两种语言在一些关键点上有显著的区别。 …...

【Spark面试】Spark面试题答案

目录 1、spark的有几种部署模式&#xff0c;每种模式特点&#xff1f;&#xff08;☆☆☆☆☆&#xff09; 2、Spark为什么比MapReduce块&#xff1f;&#xff08;☆☆☆☆☆&#xff09; 3、简单说一下hadoop和spark的shuffle相同和差异&#xff1f;&#xff08;☆☆☆☆☆…...

Axure的动态面板

目录 动态面板 什么是Auxre动态模板 动态模板的步骤 应用场景 实战案例 轮播图 多功能登录界面 主界面左侧菜单栏 动态面板 什么是Auxre动态模板 动态面板是Axure中的一个重要功能&#xff0c;它允许用户创建可交互的页面&#xff0c;并模拟用户与页面的交互。通过添加元素…...

PyTorch/TensorFlow深度学习环境搭建:在Windows10上一步到位搞定CUDA和cuDNN(避坑合集)

PyTorch/TensorFlow深度学习环境搭建&#xff1a;在Windows10上一步到位搞定CUDA和cuDNN&#xff08;避坑合集&#xff09; 刚入坑深度学习的开发者&#xff0c;最头疼的莫过于环境配置。明明按照教程一步步安装了PyTorch或TensorFlow&#xff0c;却在代码运行时看到CUDA不可用…...

ARM AMUv1架构解析与性能监控实战

1. ARM AMUv1活动监视器架构解析活动监视器&#xff08;Activity Monitor Unit&#xff0c;简称AMU&#xff09;是ARM架构中用于性能监控的关键硬件组件。作为处理器微架构的一部分&#xff0c;AMU通过专用硬件计数器实现对处理器行为的精确测量。我第一次在Cortex-A76芯片上接…...

AI智能体技能库开发指南:模块化设计、安全实践与性能优化

1. 项目概述&#xff1a;一个面向AI智能体的技能库最近在折腾AI智能体&#xff08;Agent&#xff09;开发&#xff0c;发现一个挺有意思的项目&#xff1a;jdrhyne/agent-skills。这名字听起来就挺直白&#xff0c;一个“智能体技能库”。简单来说&#xff0c;它不是一个完整的…...

3个技巧快速掌握加密压缩包密码找回:ArchivePasswordTestTool新手指南

3个技巧快速掌握加密压缩包密码找回&#xff1a;ArchivePasswordTestTool新手指南 【免费下载链接】ArchivePasswordTestTool 利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码 项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool 你是否曾…...

基于MCP协议构建智能Telegram助手:连接AI与外部服务的实践指南

1. 项目概述&#xff1a;一个连接AI与Telegram的智能桥梁如果你正在寻找一种方法&#xff0c;让你在Telegram上使用的AI助手&#xff08;比如ChatGPT、Claude等&#xff09;能够“活”起来&#xff0c;不仅能聊天&#xff0c;还能帮你查天气、看新闻、管理待办事项&#xff0c;…...

CVPR2021_PLOP 论文代码环境搭建步骤

安装cuda 10.2 wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run sudo sh cuda_10.2.89_440.33.01_linux.run #只选择 cudatoolkit 安装conda 换源&#xff0c;北外源比较快 参考&#xff1a; https://mi…...

Nodeunit源码探秘:核心模块与异步测试实现原理

Nodeunit源码探秘&#xff1a;核心模块与异步测试实现原理 【免费下载链接】nodeunit Easy unit testing in node.js and the browser, based on the assert module. 项目地址: https://gitcode.com/gh_mirrors/no/nodeunit Nodeunit 是一个基于 Node.js 断言模块的轻量…...

AI应用治理平台ZLAR:从网关到统一架构的演进与实践

1. 项目概述&#xff1a;从单一工具到统一平台的演进最近在折腾AI应用开发&#xff0c;特别是涉及到多模型调用、安全审计和策略执行这块&#xff0c;发现很多开源项目都是“各自为政”。比如&#xff0c;你需要一个网关来管理AI模型的访问&#xff0c;又需要一个独立的日志系统…...

openOii:开源工业信息集成框架架构解析与实战指南

1. 项目概述与核心价值最近在开源社区里&#xff0c;一个名为openOii的项目引起了我的注意。这个由开发者 Xeron2000 发起的项目&#xff0c;从名字上就透着一股“开放”和“工业”的气息。作为一个在工业自动化和数据集成领域摸爬滚打了十多年的老兵&#xff0c;我深知在制造业…...

CANoe各版本软件包怎么找?从Demo到Full Installer的下载指南与版本选择建议

CANoe版本管理与资源获取全攻略&#xff1a;从Demo到Full Installer的深度实践指南 在汽车电子开发与测试领域&#xff0c;Vector公司的CANoe软件堪称行业标准工具。但许多工程师在实际工作中常遇到这样的困境&#xff1a;项目需要特定历史版本进行兼容性测试&#xff0c;而官网…...