- 博客(40)
- 收藏
- 关注
原创 FPGA-AMBA协议、APB协议、AHB规范、AXI4协议规范概述及它们之间的关系
本章节介绍了FPGA中总线协议,AMBA协议、APB协议、AHB规范、AXI4协议规范概述,以及它们之间的关系。简而言之:AMAB包含APB、AHB、AXI;AXI4是AXI第四个版本性能更好;性能:AXI > AHB > APB,对应的使用场景也不同AXI4的协议内容和功能十分重要,对于zynq的学习十分重要,协议的具体内容和代码实现,下个章节再来描述。
2023-12-25 17:16:42
1530
原创 FPGA-ZYNQ-7000 SoC在嵌入式系统中的优势
ZYNQ-7000 SoC在相较于传统的嵌入式系统硬件平台主要在性能(加速),功耗(低),延迟(低),成本(相对低,可编程硬件方面)有明显优势。PL实现软件加速,性能更高、功耗相对于使用arm低,延迟低,同时需要注意是PL端实现软件算法功耗低是因为没有使用arm,没有使用外部的存储器,如果使用了则功耗跟arm一样或更大;同时跟传统的嵌入式系统平台比具有可编程硬件的优势,能够实现在PL重新编程替换掉原来的硬件算法。
2023-12-25 15:33:59
926
原创 FPGA-Xilinx ZYNQ PS端实现SD卡文件数据读取-完整代码
本章节对于FPGA PS 端SD卡文件数据读取处理进行了记录,主要还是防坑记录,毕竟自己也是找了不少资料才完成。还有一些待完善内容,包括:文件读取数据存DDR,从DDR读出来处理后再存回DDR,然后再把处理好的数据传给PL端进行操作。
2023-12-22 11:23:02
3777
5
原创 FPGA-结合协议时序实现UART收发器(六):仿真模块SIM_uart_drive_TB
还得练,要熟练使用modelsim进行仿真,因为比vivado快。要会写仿真代码文件,继续多练。结合协议时序实现UART收发器也算完结了。
2023-09-12 19:46:59
495
原创 FPGA-结合协议时序实现UART收发器(五):串口顶层模块UART_TOP、例化PLL、UART_FIFO、uart_drive
串口顶层模块UART_TOP、例化PLL、UART_FIFO、uart_drive,功能实现,数据缓存先进先出fifo实现,fifo使能控制等功能实现。
2023-09-12 18:46:44
597
原创 FPGA-结合协议时序实现UART收发器(四):串口驱动模块uart_drive、例化uart_rx、uart_tx
串口驱动模块uart_drive实现,功能包含实现,同时例化uart_rx、uart_tx。
2023-09-12 18:05:27
632
原创 FPGA-结合协议时序实现UART收发器(三):串口接收模块uart_rx
串口接收模块uart_rx实现,涉及计数器,移位拼接依次获取数据,握手有效判断,判断是否数据接收完毕,校验位计算等功能实现,具体可对照代码详细注释。
2023-09-12 17:27:12
538
原创 FPGA-结合协议时序实现UART收发器(二):串口发送模块实现uart_tx
串口发送模块uart_tx的功能实现,代码根据协议和时序进行实现,采用了握手来控制发送数据,具体详情可参考代码注释内容。
2023-09-12 17:12:36
419
原创 FPGA-结合协议时序实现UART收发器(一):UART协议、架构规划、框图
通过对照UART协议和时序,以及规划好的架构框图来一步步从小到大实现整体功能。
2023-09-12 16:58:28
723
原创 FPGA-Vivado实现计数器功能,从电路仿真到verilog代码实现
此篇文章进行笔记记录,加深对fpga开发的理解,熟悉verilog语法内容,同时熟悉项目开发时verilog代码基本流程套路。
2023-08-24 00:09:53
1460
原创 FPGA-基于I2C协议的EEPROM驱动控制
FPGA-基于I2C协议的EEPROM驱动控制,内容知识包括I2C的物理层的理解、协议层。协议层内容包括整体时序图、设备器件地址与存储地址、I2C的读写操作。I2C的读写操作中包括单字节写操作、页写操作、随机读操作、顺序读操作,其中还包括各自的时序图,各自的时序操作流程;其实就是读写单字节还是多字节的一个操作知识内容主要参考:FPGA Verilog开发实战指南、野火的学习资料代码实战参考:野火征途开发板代码或ALINX的AX7010。
2023-07-01 01:36:10
646
原创 机器人学基础(3)-动力学分析和力-拉格朗日力学、机器人动力学方程建立、多自由度机器人的动力学方程建立
本章节建立动力学方程,推导动力学方程。当已知机器人的动力学方程,就可以用来估计以一定速度和加速度驱动机器人时各个关节所需的动力,也可以用来为机器人选择合适的驱动器。事实上,大多数情况使用的是在假设条件下的简化形式,即忽略一些不太重要的项,减少计算量;同时也可以根据所得到的动力学方程来观察得到哪一项对此机器人较为重要,通过比较各项,可以确定运动方程中某些特定项的重要性以及它们对总的所需力和力矩的影响。例如在失重情况下,可以忽略重力项,惯量项占主导;
2023-02-24 18:03:37
14457
9
原创 机器人学基础(2)-微分运动和速度-雅可比矩阵计算、雅可比矩阵求逆、计算关节运动速度
通过学习本章内容,利用公式,已知机器人关节速度,利用雅可比矩阵可以得到机器人手的运动速度;已知机器人手的运动速度,求雅可比矩阵的逆可以得到机器人各关节的速度。同时也学习了不使用雅可比矩阵求关节速度的方法,利用机器人的逆微分运动方程,就可以确定每个关节速度为多少才能产生所期望的机器人手速度。知道了机器人逆运动方程和逆运动微分方程,即知道机器人在空间中的位置和速度。第一章运动学的正运动方程和逆运动方程是为了求得机器人的位置;本章节的微分运动是在已知位置的基础上求得机器人的运动速度和各个关节速度。
2023-02-23 23:19:23
21157
9
原创 机器人学基础(1)-位置运动学-正运动学、逆运动学方程建立及其求解
掌握正运动学概念、矩阵变换、正运动学方程建立及求得最终机械臂末端的位置和姿态矩阵掌握逆运动学概念、代数求解、掌握机械臂的一般解表示方法,掌握斯坦福机械臂的一般解对于坐标系矩阵变换的直角(台架)坐标、圆柱坐标、球坐标、链式(拟人或全旋转)坐标,滚动角、俯仰角、偏航角、欧拉角、链式关节等仍不熟悉,后续可进行翻阅课本学习对于逆运动学求解的数值求解方法未掌握,后续需要深入研究时再进行学习。
2023-02-23 16:32:36
36905
1
原创 VScode环境配置-C++环境配置-launch、task配置、自动保存对齐配置及其一些小坑记录
配置环境记录小坑记录。VScode环境配置-C++环境配置-launch、task配置、自动保存对齐配置及其一些小坑记录
2022-12-30 20:53:37
723
原创 C++:链表-理论基础
链表的理论基础:单链表、双链表、循环链表、链表的存储方式、链表定义及其初始、链表的删除节点、添加节点操作、链表与数组的性能差异
2022-12-21 22:40:56
267
原创 C++:Leetcode-螺旋矩阵-54题螺旋矩阵
此题的螺旋矩阵刚好和59题的螺旋矩阵思路相反。此题需要多判断几种情况重点还是把握循环不变量和模拟过程给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。1.依次进行获取m*n矩阵元素,按上行,右列,下行,左列顺序2.遵循循环不变量原则,左闭右开原则依次读取3.行或列为1时,另外进行讨论1、vector二维矩阵的定义及其赋值形式2、vector二维矩阵的行数和列数的获取总结熟悉vector二维的定义及其赋值,行数列数的获取。模拟过程的熟悉,循环不变
2022-12-07 14:55:36
386
原创 C++:Leetcode-滑动窗口-904.水果成篮
重点掌握滑动窗口思想,左指针和右指针分别代表的含义重点掌握熟悉利用**哈希表**进行统计和查重。面对这种同类型数量统计问题或者是查重问题,哈希表是不二之选
2022-12-05 14:07:07
676
原创 C++:Leetcode-滑动窗口-209.长度最小的子数组
重点掌握熟悉滑动窗口法,知道各自指针意义。参考代码随想录方法一是暴力解法,即用两个for循环遍历找出所有的可能性,时间复杂度O(n2),超时方法二是滑动窗口法,即本质是双指针法,不断的调节起始位置和终止位置,用一个for循环实现两个for的功能,时间复杂度O(n)重点掌握滑动窗口法
2022-12-01 22:22:08
468
原创 C++:Leetcode-977题有序数组的平方
此题是简单题,重在熟练运用双指针,知道何时采用双指针效率更高,双指针分别代表什么含义参考代码随想录。一种暴力解法,先平方后排序,时间复杂度O(nlogn)一种双指针法,时间复杂度O(n)重点熟悉掌握双指针的运用
2022-11-30 15:20:02
112
原创 C++:Leetcode-27移除元素
Leetcode27移除元素题,简单题,二分法解法,稍作记录给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。1.重点不新增空间2.不考虑数组中超出新长度的元素3.元素的顺序可以改变,即最后输出的nums = [0,1,4,0,3]元素顺序无所谓,那就更为降低难度总结掌握了二分法后,此题不难,练
2022-11-27 22:13:58
216
原创 C++:数组-二分法-Leetcode-34题在排序数组中查找元素的第一个和最后一个位置
考察对二分法的熟练程度,本题可以求左右边界一块写,但初学者为了更好的理解,还是分开二分法求左右边界好,还是要多练,多调试理解原理。
2022-11-26 17:21:55
700
原创 C++:STL-容器、算法、迭代器知识点与用法详解-map/multimap(4)
C++STL容器,map、multimap等常用容器知识点及其相关函数详解基本完结。
2022-11-17 21:42:47
430
原创 C++:STL-容器、算法、迭代器知识点与用法详解-list、set/multiset、pair(3)
本文重点对C++STL的list容器和set容器、multiset、pair容器知识点、函数相关用法进行详解。
2022-11-17 17:35:00
434
原创 C++:STL-容器、算法、迭代器知识点与用法详解-deque、stack、queue(2)
重点熟悉STL容器deque、stack、queue知识点及其相关函数用法。
2022-11-17 01:17:29
284
原创 C++:STL-容器、算法、迭代器知识点与用法详解-string和vector(1)
本文对STL进行巩固熟悉,本文重点对string容器和vector容器的知识点及其常用函数进行详解。后续的deque容器、stack容器、queue容器知识详解将在后续文章中说明。
2022-11-16 01:06:10
187
原创 CUDA版本不对重装+离线快速下载torch的gpu版本安装+各种坑
CUDA版本不对重装+离线快速下载torch的gpu版本安装+各种坑windows走过配环境的坑,记录以下,防止下次再踩文章目录CUDA版本不对重装+离线快速下载torch的gpu版本安装+各种坑一、CUDA版本不对重装1.查看自己电脑目前已经安装的cuda版本2.输入nvidia-smi,是查看自己电脑支持cuda的最高版本,向下兼容3.卸载cuda二、离线快速下载torch的gpu版本安装1.下载torch包2.安装下载好的torch whl文件包总结一、CUDA版本不对重装1.查看自己电脑
2022-05-12 17:32:01
5807
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人