| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> VIVADO入门教学系列 1.1工程的建立逻辑分析仪的使用 -> 正文阅读 |
|
[嵌入式]VIVADO入门教学系列 1.1工程的建立逻辑分析仪的使用 |
随着FPGA行业热度的水涨船高,越来越多的学校开设了对应的课程,但是相信有部分同学的学校和我们一样,采用的试验箱比较老旧,对应的芯片类型不支持目前主流的VIVADO,自己购入卡发板后熟悉软件是一个比较磨人的过程。本系列文章便是为了为想要熟悉VIVADO和入门SOC的同学分享一些经验。 1.建立FPGA工程为你的工程命名并选择对应路径 可以选择在这里创建源文件,也可以选择在工程创立后创建,这里我们选择之后再添加。一直点NEXT就可以了。 根据你的芯片选择对应的芯片型号,可以通过封装啊,速度啊来减小筛选范围?。 再工程建立完成后,添加你的需要用到的自定义IP到工程的文件夹中,这里我们添加的IP文件夹名为user_src(用户源文件)里面一共有两个IP核,一个叫math是一个简单的加法器,另外一个为GPIO_LITE_ML_0. ?点击SEETING--->IP---->Repostiory,点击加号,添加上述文件夹路径。 再将被识别后的IP选中,连击OK。 ?2.搭建 FPGA BD 工程 VIVADO本质上来说是一个调用IP核来实现功能的分步设计软件,SOC的设计的精髓就是IP核的调用。VIVADO的拖拽和绘图式连接无疑使得这一过程更加的直观,同时大大的降低了难度。 点击 IP INTEGROR 中的create Bolck Design 因为是SOC设计,所以这个实验工程中,除了我们上述添加的两个自定义IP,还需要调用一个处理器核。?我用的是ZYQN7020,这个芯片里自己集成了一块硬核,Z系列的其他芯片也有对应的硬核,如果卡发板上是其他系列的FPGA芯片可以从ARM官网上下载软核的IP来进行调用。除了处理器核,这里还会调用两个将来会很常用的IP核;Processor System Reset --复位 IP 和 AXI Interconnect--?总线互联 IP。 按住Ctrl+L后,输入这些IP核的名字,查找并调用他们,将它们摆放在相同位置后,如下图进行连线。在连线之前,双击这里的AXI Interconnect,设置成1个Slave,2个Mater的形式。然后注意时钟连线在一起,保证全局同步。 ?添加逻辑分析仪IP,同样是Ctrl+L,查找ila模块。调用后双击该模块,进行参数设置,将其设置的与GPIO部分相匹配,然后相连接。这个里为了后续方便观察,我们引出GPIO_LED.只用选中该口后Ctrl+T即可。 下面一步我们添加vio的 IP。老规矩Ctrl+L,查找模块vio。添加进来后,双击VIO core 修改参数?。 然后将它与mathIP进行连接。 ?右击需要观察的总线,这里选择 math_ip 的 S_AXI 接口,然后点击Debug。添加完成后,单击 内容框上方出现的Run Conection Automation。? 整体架构图如下所示? ?紧接着,根据电路板情况,编写引脚约束文件 1、分配引脚 2、电压设置 ?3、对生成的bit文件进行压缩 3.SDK部分的搭建? 创建一个空的工程 同时创建并将下面的代码复制到main.c
?对代码进行一定的解释,这是一段很简单的给加法器送数据和读数据的代码,while循环里放的是GPIO口值移位的程序。对总线概念不是很明确的同学可能不是很明白,去学习总线的相关概念后,整体就明朗了。 可以看到math IP的基地址为0x43C00000,所以在main中进行这个设置。两个地址偏移量和读地址偏移量是在IP核自定义时设置的,在后续我们也会分享如何自定义IP核心。 为了方便调试,我们可以在代码中添加一些断点,只需要双击main函数左边的蓝色框,即可在你期望的位置停下来。 ?准备工作都玩成了,我们连接上JTAC准备进入到调试模式。调试模式的打开方式如下图。? 双击下图蓝色框部分 勾选下面两个选项,然后单击Apply,单机Debug ?进入调试模式后,可以连接串口 点击加号后,设置串口的端口号和波特率,方便接受我们在main中写的print函数打印出的结果。 ?点击此处可以开始运行软核代码 4.观察时序图 ?点击Open Taeget打开逻辑分析仪 可以看到我们打开了三个调试块, 第一部分是GPIO口的部分,运行后可以看到它会定时跳转。 第二部分是我们添加的AXI4总线部分可以设置好触发条件后,观察自己想了解的信号,同样这部分需要有一些总线基础知识。 ?第三部分为VIO部分,我们也可以通过关闭片选信号,来测试逻辑的正确性 逻辑分析仪调用这部分就到此为止了,希望对大家有一点参考价值,下面是打包好的工程的链接,顺带安利一下不限速的阿里云盘。 「project_1」,点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。 链接:https://www.aliyundrive.com/s/PxfVVkj9s4g |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 10:25:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |