xilinx FPGA课程学习总结
一时冲动,跑步进入了FPGA的大门,尤老师是教练,我之前一直做嵌入式软件,数字电路也是十年前大学课堂学过,早已经还给老师了。FPGA对于我来说完全是小白,所以。老师的课程,对于我来说至关重要!因为见过太多从入门到放弃的案例了!
什么样的教程和视频,可以不至于让小白从入门到放弃呢?
我总结了几点:
1.由浅入深,循序渐进,不急躁,不跃进,符合人的认知规律,符合学习记忆的高原曲线。越学越有信心!
2.这个课程避免了陡峭悬崖式学习曲线,不会一股脑儿把所有知识灌输进来,一下子消化不了这么多,认为学习太难,太复杂,就容易放弃!
3.学以致用,用到的时候再引出来相关知识点!比如scope,约束等。
4.学习过程得到尤老师的及时指导,鼓励,这个也很重要。
5.FPGA专业性比较强,我从课程学习到工作方法,跟做嵌入式产品类似,先画出流程图,时序图,再去写代码!否则就本末倒置。
下面是具体章节学习总结。
1.变量类型,赋值语句,运算符合
这部分因为与C语言类似,基本上过一遍就行。
2.时钟分频,这部分也简单,一个变量cnt计数,然后在某些位置置位清零就可以,难度不大。
3.倍频。使用PLL IP核。本章引出来了IP核,后续的FIFO,ram都是需要IP核。直接使用ISE---->TOOL---->core generater去创建就可以,然后有实例化模板,拷贝到自己的*.V文件去使用,就像C语言工程的库函数那样使用,很方便。
4.TOP-DOWN模块化设计,这一章节,其实就是C语言里面的高内聚低耦合原则,模块化原则,在实际项目也是容易掌握的。
5.状态机。FSM。其实也是C语言工程里面状态机,使用case *进入不同的状态,具体到FPGA,一般是状态切换使用一个always语句,其他功能与状态切换分开实现的。
6.按键消抖,售货机,这个小项目我就没有一一做了,这个项目是TOP-DOWN模块化设计和FSM的综合应用,因为与C语言太相似,我准备在全部掌握后再研习一次。
7.RAM和乒乓操作和FIFO核乒乓操作 在几乎所有有通信有数据处理的功能,都需要使用到,RAM相对简单,FIFO有标准模式和FWFT两种模式;这两种模式是由差别的,标准模式,需要提前1拍去给读写信号。这两个差别,需要专门再去练习,体会。
8.VGA sobel图形处理
实现了预定功能!整个工程,没有使用例程的25MHZ,全部统一使用50MHZ。
分辨率改为了800*600@72HZ。实现了图片sobel算法处理,并将图片显示背景色,透明化处理。
需要进一步研究细化的地方:
8.1.matlab对图像的处理。
8.2.sobel算子的深入理解
8.3.使用其他图像来测试下
8.4.十字光标暂时没有练习。
9.ICAP在线升级 原理是使用icap IP模块,会自动通过spi串口从外部w25q64读取bin文件到内部,然后执行,若没有uart升级指令传来,20秒后跳转到外部w25q64的0x400000处,读取Bin文件到fpga。
测试流程:先使用ISE下载ICAP代码到板子,然后使用fpga_update软件下载icap的bin文件到w25q64的0地址,重启板子,使用fpga_update软件下载其他应用的bin到0x400000.
测试通过。
10.SDRAM部分。初步学习了基础理论。
以上就是目前为止,学习FPGA的总结,还有很多需要细细研究,多多测试的地方;同时,我也要调整学习策略,整体目标是zynq,嵌入式Linux也是大头,希望尽早进入到zynq的嵌入式,与FPGA交替着学习。
xilinx FPGA课程学习总结的更多相关文章
- 基于Xilinx FPGA的视频图像采集系统
本篇要分享的是基于Xilinx FPGA的视频图像采集系统,使用摄像头采集图像数据,并没有用到SDRAM/DDR.这个工程使用的是OV7670 30w像素摄像头,用双口RAM做存储,显示窗口为320x ...
- FPGA基础学习(9) -- 复位设计
目录 1. 常见问题 2. 常见的复位方式 3. 合理的复位设计 3.1 复位电平 3.2 异步复位同步化 3.3 恰到好处的复位 4. 补充 4.1 所谓的上电初始化 参考文献 一开始接触到FPGA ...
- C语言课程学习的总结
C语言课程学习的总结 学习C程序这门课一年了,这是我们学的第一门专业课.在大学里,C语言不但是计算机专业的必修课程而且也是非计算机专业学习计算机基础的一门必修课程.所以作为我这个计算机专业的学生来说当 ...
- solr课程学习系列-solr服务器配置(2)
本文是solr课程学习系列的第2个课程,对solr基础知识不是很了解的请查看solr课程学习系列-solr的概念与结构(1) 本文以windows的solr6服务器搭建为例. 一.solr的工作环境: ...
- ACM课程学习总结
ACM课程学习总结报告 通过一个学期的ACM课程的学习,我学习了到了许多算法方面的知识,感受到了算法知识的精彩与博大,以及算法在解决问题时的巨大作用.此篇ACM课程学习总结报告将从以下方面展开: 学习 ...
- node+vue进阶【课程学习系统项目实战详细讲解】打通前后端全栈开发(1):创建项目,完成登录功能
第一章 建议学习时间8小时·分两次学习 总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章]) 视频教程地 ...
- Xilinx FPGA LVDS应用
最近项目需要用到差分信号传输,于是看了一下FPGA上差分信号的使用.Xilinx FPGA中,主要通过原语实现差分信号的收发:OBUFDS(差分输出BUF),IBUFDS(差分输入BUF). 注意在分 ...
- Xilinx FPGA引脚txt文件导入excel中
需求 为了把xilinx FPGA的官方引脚文件txt转成excel文件(实际官网中有对应的csv文件就是excel文件了...) xilinx FPGA引脚地址:https://china.xili ...
- "做中学"之“极客时间”课程学习指导
目录 "做中学"之"极客时间"课程学习指导 所有课程都可以选的课程 Java程序设计 移动平台开发 网络攻防实践 信息安全系统设计基础 信息安全专业导论 极客时 ...
随机推荐
- Steam 游戏 《The Vagrant(流浪者)》修改器制作-[先使用CE写,之后有时间的话改用CheatMaker](2020年寒假小目标08)
日期:2020.02.07 博客期:146 星期五 [温馨提示]: 只是想要修改器的网友,可以直接点击此链接下载: 只是想拿CT文件的网友,可以直接点击此链接下载: 没有博客园账号的网友,可以将页面下 ...
- 关于java自学的内容以及感受(7.28)
这一周学习了关于一些算法运算,我进行了程序的编写与运行,代码如下: public class TestSign{ public static void main(String[] args){ int ...
- centos初始化脚本
centos初始化脚本 添加IP.主机名.挂载/dev/sdb1磁盘 #!/bin/bash # ip=$ hostname=$ if [ -z $ip ] || [ -z $hostname ]; ...
- 「快学springboot」SpringBoot多环境配置文件
前言 我们都知道springboot的配置卸载application.properties配置文件上(或者application.yml).但是,如果想要把不同的环境(如开发环境,测试环境,生产环境) ...
- PTA的Python练习题(一)
最近宅家里没事干,顺便把python给学了.教程和书看了一段时间,但是缺少练习的平台. 想起大一时候练习C语言的PTA平台,就拿来练手了. (因为没有验证码无法提交题目,所以自己用pycharm来做题 ...
- 数据库框架DBUtils
数据库有关框架 1.框架:提高开发效率.按部就班 2.数据库框架: ORM:Object Relation Mapping 对象关系映射.JavaBean --Object数据库----Relatio ...
- ab的压力测试(转)
其中-n代表请求数,-c代表并发数 返回结果: ##首先是apache的版本信息 This is ApacheBench, Version 2.3 <Revision:655654> Co ...
- tensorflow文本分类实战——卷积神经网络CNN
首先说明使用的工具和环境:python3.6.8 tensorflow1.14.0 centos7.0(最好用Ubuntu) 关于环境的搭建只做简单说明,我这边是使用pip搭建了python的 ...
- redhat 7.6 find 命令
1.按名字查找 find ./ -name filename //精确查找 ,./ 代表当前目录 -name 查询名称 filename具体文件名称 find ./ -na ...
- 114、Java中String类之字符串文本复杂二次拆分
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...