CPU设计实战-FPGA基础操作学习

目录

硬件调试方法

ILA(监控内如何端口信号)或VIO核(不仅可以监控还可以驱动)进行硬件调试

添加ILAIP核

实例化ILAIP核

使用ILA排查错误

另一个debug方法

仿真

代码固化(即写入Flash中)

方法一

方法二

时钟IP核(MMCM可动态调整和取反、PLL)


硬件调试方法

主要思路:(看卡到哪一步,然后一步一步向下排查,按照一个个小模块去检查)

1.排查外设的硬件问题(更换硬件器件进行测试)

2.clk与rst

3.主从设备之间有没有正常联系(M-S,看最关键的直接输出的信号)

4.协议检查:对协议中的关键信号进行检查如状态机信号——影响状态机的控制信号——一步一步推比如到计数器之类(state)

5.读写的数据是否正确(data)

6.用假数据测试,用简单的数据如12345678去测试可以方便的排查地址问题(触发信号trgger)

前提:手册读懂

ILA(监控内如何端口信号)或VIO核(不仅可以监控还可以驱动)进行硬件调试

使用方法:

添加ILAIP核

1.搜索栏输入ILA找到ILAIP核进行添加

2.ILAIP核的设置,主要有抓取信号个数和位宽还有抓取深度

实例化ILAIP核

1.找到veo文件里自动实现的实例化代码复制到自己的顶层模块中

2.将需要抓取的信号连接上

使用ILA排查错误

1.自顶向下的思路定位错误信号

2.使用多次触发来查看避免特殊情况

3.使用指定数值触发直接观察信号(如目标数值是data,设置数值达到data触发观察)

4.找到错误修改信号后对应的ILA探针信号也要记得修改,如位宽等,避免再次出错

掌握调试方法是成功实现的第一步!!!!!

另一个debug方法

1.进入原理图界面切换到debug,点击set debug,此时可以对端口信号添加探针,主要只能在BUF端添加,若想对内部信号进行检测需要再信号前加(*mark_debug = "true"*)

后续调试和IAL一样

仿真

1.RTL(行为级即寄存器级)仿真,理想状态下的行为级仿真,测试逻辑功能

2.时序(门级)仿真,综合后的仿真,考虑路径延迟和门延迟,最接近真实情况

代码固化(即写入Flash中)

方法一

1.tools里的CCF中选择flash类型,注意flash位宽是4位,此处的大小是128MB,选择生成路径即可

2.再次之前生成4位宽的比特需要在xdc中写相关原语:

set_property CFGBVS VCCO [current_design]
set_property CONFIG_VOLTAGE 3.3 [current_design]
set_property BITSTREAM.GENERAL.COMPRESS true [current_design]
set_property BITSTREAM.CONFIG.CONFIGRATE 50 [current_design]
set_property BITSTREAM.CONFIG.SPI_BUSWIDTH 4 [current_design]
set_property BITSTREAM.CONFIG.SPI_FALL_EDGE Yes [current_design]

3.上电添加flash进行烧录

方法二

bin文件生成

setting中设置bin文件后直接进行生成bin文件,直接把这个bin文件下载进去就行了

时钟IP核(MMCM可动态调整和取反、PLL)

1.输入clock调用IP核进行设置:选择哪种IP核;生成几个时钟可以设置频率和相位;注意选择复位有效电平,此处应该低电平有效

2.使用veo进行实例化,其实就是连接输入输出管脚

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

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

相关文章

代码随想录算法训练营第四十二天 | 卡码网46. 携带研究材料、416. 分割等和子集

代码随想录算法训练营第四十二天 | 卡码网46. 携带研究材料、416. 分割等和子集 卡码网46. 携带研究材料题目解法 416. 分割等和子集题目解法 感悟 卡码网46. 携带研究材料 题目 解法 题解链接 二维数组 # include <bits/stdc.h> using namespace std;int n, bagweig…

Jackson 2.x 系列【6】注解大全篇二

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Jackson 版本 2.17.0 源码地址&#xff1a;https://gitee.com/pearl-organization/study-jaskson-demo 文章目录 注解大全2.11 JsonValue2.12 JsonKey2.13 JsonAnySetter2.14 JsonAnyGetter2.15 …

WebKit揭秘:从内部结构到应用程序开发

文章目录 WebKit结构简介核心模块其他组件多进程架构&#xff08;WebKit2&#xff09; Wekbit做了什么&#xff1f;应用程序如何利用 Webkit WebKit结构简介 WebKit是一个开源的浏览器引擎&#xff0c;它由多个模块组成&#xff0c;这些模块协同工作以提供Web内容的渲染和交互…

189.轮转 数组

题目描述 解题思路 —————冒泡排序的超时算法—————— 1.k1 就是第一个元素不断向后一个元素调换位子&#xff0c;直到轮转到最后一个位置&#xff08;类似于冒泡排序&#xff0c;不断向后冒出&#xff09; 2.调用循环&#xff0c;当k>0的时候&#xff0c;不断向…

web有哪些方式可以实时更新数据

在Web开发中&#xff0c;有几种方式可以实现数据的实时更新&#xff0c;以确保用户界面能够及时反映后端数据的变化。 以下是一些常用的实现实时数据更新的技术&#xff1a; 一. AJAX轮询&#xff08;Polling&#xff09; 轮询是一种通过定时发送HTTP请求到服务器来检查数据…

【2024最新】vue3的基本使用(超详细)

一、Vue 3 概述 1. 为什么要学习Vue 3 Vue 3是Vue.js的最新主要版本&#xff0c;它带来了许多改进和新特性&#xff0c;包括但不限于&#xff1a; 性能提升&#xff1a;Vue 3提供了更快的渲染速度和更低的内存使用率。Composition API&#xff1a;引入了一个新的API&#xf…

英伟达智算先锋训练,冲刺智算时代实战

随着数字经济的深入发展&#xff0c;智能算力作为关键生产力&#xff0c;其规模在2022年已达到268.0 EFLOPS&#xff0c;并预计到2028年将增长至2769 EFLOPS&#xff0c;显示出强劲的发展势头。在2024年政府工作报告中&#xff0c;也首次提出了“人工智能”行动&#xff0c;强调…

baseDao增删改查.

这里写目录标题 1、baseDao增删改查介绍2、basDao类3、BasDao类的作用 1、baseDao增删改查介绍 (1)、增加Create&#xff09;操作&#xff1a; 通过BaseDao的insert方法可以向数据库中插入一条新的记录。 该方法接受一个实体对象作参数&#xff0c;将该对象的属性映射到表的字…

Python轻量级框架Flask开发web应用(附源码自取)

目录 介绍 安装 简单初使用 新建项目目录 视图映射 无参映射 带参映射 ? 传参映射 连接mysql orm对象视图映射建表 ​编辑 crud操作 新增操作 查询操作 普通查询 查询返回json数据 前端传递json体数据查询 更新操作 删除操作 orm表关系映射 flask-migrate迁…

【Vue】vue3简介与环境配置

文章目录 项目编码规范什么是 Vue&#xff1f;安装node环境nvm针对node版本惊醒管理的工具 项目编码规范 组合式API Typescript setup(语法糖) 什么是 Vue&#xff1f; Vue 是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建&#xff0c;…

JavaBean是什么?

Bean的本意为豌豆、子实&#xff0c;在这里引申为一种实体。JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean&#xff0c;类必须是具体的和公共的&#xff0c;并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性&#xff0…

951. 翻转等价二叉树

跳转题目 判断两棵树是否为反转关系。 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr)…

操作系统高频面试知识总结 part1

操作系统 1.什么是操作系统&#xff1f;2.并发与并行&#xff1f;3.同步与异步&#xff1f;4.阻塞和非阻塞&#xff1f;5.什么是进程&#xff1f;6.什么是线程&#xff1f;7.进程与线程的区别&#xff1f;8.进程地址空间&#xff1f;9.进程常见状态&#xff1f;10.进程间通信&a…

Google人才选拔的独特视角

Google人才选拔的独特视角 独特的人才选拔标准 Google作为全球最大的搜索引擎公司&#xff0c;拥有无数优秀的人才。他们的选拔标准与众不同&#xff0c;有着自己独特的人才观。 重视多元化的背景 Google相信人才的多元化背景能够给公司带来不同的思考角度和创新思维。他们…

【总结】在嵌入式设备上可以离线运行的LLM--Llama

文章目录 Llama 简介运用另一种&#xff1a;MLC-LLM 一个令人沮丧的结论在资源受限的嵌入式设备上无法运行LLM&#xff08;大语言模型&#xff09;。 一丝曙光&#xff1a;tinyLlama-1.1b&#xff08;10亿参数&#xff0c;需要至少2.98GB的RAM&#xff09; Llama 简介 LLaMA…

Java language programming:作品评分系统

题目&#xff1a; 全国中小学生Scratch作品大赛拉开了序幕。每个参赛选手可以通过网络直接上传作品。本次比赛人人可做评委。每个网络评委可以通过网络对每一件作品进行打分。其自动去掉一个最高分和一个最低分&#xff0c;求出平均分。 输入格式: 输入数据包括两行: 第一行为…

电商技术揭秘四:电商平台的物流管理系统

文章目录 引言一、物流管理系统的功能与架构1.1 物流管理系统在电商平台中的作用概述保障订单的及时配送优化库存管理控制运营成本提升客户服务水平支持数据驱动的决策应对市场变化 1.2 订单处理功能分析自动化处理流程订单分配与履行错误检测与处理机制实时订单状态更新订单数…

ZKP价值链路的垂直整合

1. ZKP proof生命周期 从ZKP&#xff08;zero-knowledge proof&#xff09;生命周期&#xff0c;先看围绕ZKP的价值链路形成&#xff1a; 1&#xff09;User intent用户意图&#xff1a;以某用户意图为起点&#xff0c;如想要在某zk-rollup上swap某token、证明其身份、执行某…

【从零开始】自建高质量免费ip代理池(截止2024.4.1最新版)

文章目录 前言基础常识代理服务器状态码端口号 常见免费ip代理池网站实现思路代码实现main.pyutils.pydemo.py 结果如下 前言 为了防止ip被封后还能爬取网页&#xff0c;最常见的方法就是自己构建一个ip代理池。 本来用的是下面这个开源项目ip代理池&#xff0c; github开源项…

二维数字滤波器设计

Rafael C. Gonzalez “Digital Image Processing”的错误 按理说这本书的第三作者Steven是数字信号处理出身&#xff0c;他本人又对信号处理非常熟悉&#xff0c;不能理解为什么这本书的频域滤波器一章几乎没有对的地方。 对于巴特沃斯等模拟滤波器&#xff0c;利用全通带减去…