随笔分类 - E_IP使用及自用代码
所有使用过的IP及自用的代码块
摘要:前言 在实际的项目开发中,一个逻辑块在不同的时刻可能需由不同的时钟进行驱动。 比如存在clk1,clk2,有always@(posedge i_clk)需要执行,在0时刻使用clk1进行驱动,在1时刻使用clk2进行驱动,则需要进行时钟切换。 参考文档 Glitch free clock switc
阅读全文
摘要:参考文档 https://zhuanlan.zhihu.com/p/82129170 https://zhuanlan.zhihu.com/p/82509188 https://blog.csdn.net/qq_36662353/article/details/107120293 pg022_axi
阅读全文
摘要:前言 当需要对复数求模的时候,用FPGA怎么求呢?怎么开根号? 方法1:先求幅值平方和,再使用cordic IP开根号。(蠢办法) 方法2:直接用cordic求取模值。 此处只介绍方法2,资源占用更少,更方便。 求模原理如下图所示。已知(x0,y0),即复信号的实部和虚部,要求模值和角度,即为(r,
阅读全文
摘要:前言 为了避免每次SPI驱动重写,直接参数化,尽量一劳永逸。 SPI master有啥用呢,你发现各种外围芯片的配置一般都是通过SPI配置的,只不过有3线和四线。 SPI slave有啥用呢,当外部主机(cpu)要读取FPGA内部寄存器值,那就很有用了,fpga寄存器就相当于RAM,cpu通过SPI
阅读全文
摘要:参考博客 https://blog.csdn.net/u010712012/article/details/77755567 https://blog.csdn.net/Reborn_Lee/article/details/87436090 参考论文 基于FPGA的自然对数变换器的设计与实现.pdf
阅读全文
摘要:1 前言 (1) 什么是CRC校验? CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性
阅读全文
摘要:前言 当需要大容量数据存储及处理的时候,FPGA内部自带的存储资源是远远不够的,所以问题来了,怎么使用外带的DDR3? 首要问题在于DDR3是什么?有没有协议?当然只是需要用Xilinx MIG IP去配置使用的话,DDR3内部信号变化关系不需要太明了,当然明了会更佳,有时间可以看看底层内部架构,只
阅读全文
摘要:本文主要是学习按键消抖和数码管动态显示,秒表显示什么的,个人认为,拿FPGA做秒表真是嫌钱多。 感谢 感谢学校和至芯科技,笔者专业最近去北京至芯科技培训交流了一周。老师的经验还是可以的,优化了自己的代码也学习了新的知识。北京是个好地方,故宫没有想象中的那么大,但人真是多到密集恐惧症。至芯科技的最小开
阅读全文
摘要://////////////////2018/10/15 更新源代码; 实现uart这东西其实早就写了,不过不太完善,对于一个完美主义者来说,必须解决掉它。 1.什么是UART? 通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作U
阅读全文
摘要:在很多情况下,需要使用双向IO。不过最好谨慎使用,在top层使用。网上很多描述的代码甚至是不可以综合并且有语法错误的,还是老实自己写个模块吧。 新版本如下: 使用inout口,直接定义个inout口。 然后用使能控制就好了,如果是作为输入,则直接把inout赋值给reg型变量就行。 如果作为输出,则
阅读全文
摘要:感谢 知乎龚大佬 打杂大佬 网上几个nice的博客(忘了是哪个了。。。。) 前言 虽然FIFO都有IP可以使用,但理解原理还是自己写一个来得透彻。 什么是FIFO? Fist in first out。先入先出的数据缓存器,没有外部读写地址线,可同时读写。 规则:永远不要写一个已经写满了的fifo。
阅读全文
摘要:1.altera 提供了两种rom :单口rom和双口rom。 官方文档偷图: 单口rom:输出可以配置寄存器寄存再输出,时钟可以输入输出用不同的时钟。 双口rom:输入输出时钟可不同或者A与B的时钟可不同。输出可寄存。 2.altera 提供了两种ram :单口ram和双口ram。双口ram又分为
阅读全文
摘要:前言 什么是VGA? VGA(视频图形阵列)是IBM公司制定的一种视频数据传输标准。 接口信号主要有5个:R(Red),G(Green),B(Blue),HS(Horizontal synchronization水平同步),VS(Vertical synchronization垂直同步)。水平同步也
阅读全文
摘要:警告 此文章将耗费你成吨的流量,请wifi下阅读,造成的流量浪费本人不承担任何责任。初版源代码获取(请勿用作他用,仅供学习):https://gitee.com/kingstacker/iir.git 若有问题可以联系我邮箱:kingstacker_work@163.com 版权所有,转载请注明出处
阅读全文
摘要:前言 ram这种东西,可以用ip方便,也可以自己写代码描述它。 以下讨论单口ram;8bit*256 流程 1.IP: 使用IP当然是最方便的事情啦,但可移植性差而且可定制性较差。 仿真波形: 2.Verilog描述: 描述就得自己写自己调试代码了,不过写好就是一劳永逸啦。。。 开始写了第一版代码:
阅读全文
摘要:前言 spi从机接口程序,数据位8bit,sck空闲时低电平,工作时第一个沿数据传输。只有一个从机,cs低电平片选,slaver开始工作。 流程: 接口定义: 编码实现:(版权所有,请勿用于商业用途,仅供学习使用) 1 //**************************************
阅读全文
摘要:前言 当你器件的引脚贼少的时候,需要主机和从机通信,spi就派上了用场,它可以一对多,但只是片选到的从机能和主机通信,其他的挂机。 spi:serial peripheral interface 串行外围接口 大致了解: spi是个同步协议,数据在master和slaver间交换通过时钟sck,由于
阅读全文