随笔分类 -  FPGA

平时所想与总结
乘法器的实现--对流水线操作理解的最好的例程
摘要:刚开始对于流水线操作的理解是没有问题的,这就有点像生产车间里面的流水线操作,但是具体到Verilog代码的生成或者具体的实现,却能体会到理论与实践的差距但是乘法器的实现,却能很好的对流水线操作有个很好的理解。我想仔细想想就会对流水线的实现方法有了更清醒的认识,也就会豁然开朗。关于乘法器的实现,我想网上有很多。比如下列链接们:http://www.cnblogs.com/shengansong/archive/2011/05/23/2054401.htmlhttp://blog.csdn.net/fantasy_wxe/article/details/6787055 阅读全文

posted @ 2013-10-05 09:07 展翅的小鸟 阅读(1114) 评论(0) 推荐(0)

FPGA学习之按键处理实现2
摘要:之前的方法其实很简单,基本上对于按键的消抖都是需要进行延迟的。可能也会有少数情况下也是可以不需要进行按键的去抖动的。本程序采用仿顺序的操作,这样可能看起来会更好一点,样成这样的习惯后可能写程序的时候思路会更通畅一点module key2( input clk,rst_n, input keyin, output [7:0]smg_key, output smgen);reg [7:0] timedata_r;assign smg_key = timedata_r;assign smgen = 1'b0;reg keydown,keyup;wire keydown_r,keyup_r;r 阅读全文

posted @ 2013-03-23 20:08 展翅的小鸟 阅读(397) 评论(0) 推荐(0)

FPGA学习之按键控制
摘要:这几天状态不是很好。效率很低。 之前又忙于给本科生做毕设,有关于生理信号的检测的一个东西,感觉很头疼。最近一段时间感觉又可以把这个放下一段时间了。根据之前的计划,暂时补充一个简单的按键控制数码管显示的程序,程序经过验证,也经过了消抖本想通过状态机进行消抖,但是暂时还是通过简单的20ms的delay,其实是一样的。程序很简单,主要实现的功能就是按键控制数码管从0到9进行循环显示。但是今天晚上也是调试了我好长一段的时间。module Key_Smg( input clk,rst_n,input Keyin,output smgen,output [7:0] KeyData);assign smge 阅读全文

posted @ 2013-03-14 22:01 展翅的小鸟 阅读(1336) 评论(0) 推荐(0)

FPGA学习之数字钟的实现
摘要:简单的数字钟的实现还是很easy的。至少思路很简单。但是正是这个简单的数字钟就能很好的体现出了硬件设计思想和软件设计思想之间的差别。整个系统运用全局时钟,对于一些分频的处理采用使能信号控制。这样能避免出现时序的不满足。整个系统分为五个模块进行实现: gen_en : 产生使能信号,使能1HZ的分频和数码管的扫描 sec,min,hour模块:当然是实现时分秒的处理 data_con:对数码管显示数据的预译码处理,并进行动态扫描整个系统已经经过了初步的测试,基本的功能达到满足,但是没有设置时间的功能,还有就是小时的显示部分并没有做处理,仍然按照60进制进行显示.这部分等到有机会进行时间设置功能的 阅读全文

posted @ 2013-03-03 17:06 展翅的小鸟 阅读(1742) 评论(0) 推荐(0)

FPGA学习之流水灯的实现
摘要:当然作为入门实验的流水灯实验是很简单的。基本没有什么可操作性但是为了完整性,我也试着写了一个简单的。module ledflow( input clk, input rst_n, output [7:0] leds);reg [7:0]leds_r;assign leds = leds_r;reg [24:0] clk_cnt_r;reg en_leds_r;reg [7:0]ledstate;parameter leddata0 = 8'b1111_1110, leddata1 = 8'b1111_1101, leddata2 = 8'b1111_1011, ledd 阅读全文

posted @ 2013-03-03 17:05 展翅的小鸟 阅读(572) 评论(0) 推荐(0)

FPGA学习之开篇
摘要:这次主要是因为EEPW 的FPGA DIY的活动。由于也申请得到了一块开发板。但是一直也没有实现来公布自己的学习进程。故趁在家期间,也为了温故知新,故还是写一些简单的HDL代码,也是回报这个活动。故就随着一些简单的程序而做一些相应的笔记吧。但是由于EEPW的疏忽,FPGA的板子有一点小错误,板子不是很理想。但是对于学习而言,也就不用追究了。我会根据板载能用的资源,写几个测试性的实例,也是供自己学习了吧。可能由于自己的焊工,会有一些其他的错误,因为DIY活动,没有测试用例,这次也便是全面的测试一下整个板子的板载资源的好坏了。程序中遵循一些代码设计的原则寄存器变量一般会加_r,如data_r则表示 阅读全文

posted @ 2013-03-03 17:04 展翅的小鸟 阅读(214) 评论(0) 推荐(0)

ZYNQ xilinx之困惑
摘要:由于之前在准备考试的一段时间中,看了UCOSII操作系统,也基本上有了个了解。整个系统其实还是很简单的。总是想着操作系统的知识总归是要学习与了解的。对于较复杂的系统,一般都会涉及到操作系统的构建。UCOSII也确实比较适合学习与入门。之前参加了maxim的zynq系列的大赛,手头的ZYNQ的ZedBoard也是一直空着在手,没有用过。知道这块板子的很丰富的资源,但是自己目前的水平确实对他的充分利用感到无能为力。今天也仔细的了解一些,因为刚开始比赛的时候相关的资源还是比较少的,况且学校还不能上国外网站,还要算国际流量费用,连一些有用的资料都没有办法去下载,一直都是找到链接后让别人给帮忙下载,这样 阅读全文

posted @ 2013-01-20 11:12 展翅的小鸟 阅读(607) 评论(0) 推荐(0)

SDRAM之持续中。。。。。。
摘要:虽说网上的资料已经是很多的了。但是还是想自己动手写,这样才能发现更多的问题,因为现在还是主要是在学习的阶段,所以动手去写代码还是对自己有很大的好处的。过两天就回家了。HDL还在写着,目前手头只能用自己比较入门级的板子进行了。回家再详细调试,只能通过串口进行调试了。回来更新。。。。。。 阅读全文

posted @ 2013-01-20 10:57 展翅的小鸟 阅读(263) 评论(0) 推荐(0)

SDRAM之开始----burst length
摘要:最近在看SDRAM的操作,我想对于初学者,还是自己亲自解决它比较好。这样才是学习的过程。网上的资料还是很多的。因为用的已经相当的成熟了。但是正并不妨碍初学者学习的啊。开始。。。开板子上的SDRAM芯片是现代的HY57V641620,查到PDF后,就开始研究了起来。基本上也是一些时序和一些控制字的设置。但是在datasheet中令我迷惑的是这几条:.4096 refresh cycles / 64ms • Programmable Burst Length and Burst Type- 1, 2, 4, 8 or Full page for Sequential Burst- 1, 2, 4 阅读全文

posted @ 2013-01-18 21:19 展翅的小鸟 阅读(5929) 评论(0) 推荐(0)

FPGA学习笔记之QuartusII中的优化设置
摘要:在学习FPGA中,对工具的使用的依赖性感觉还是很大的。那么在quartusII中,可以在多个阶段对设计进行优化.我使用的版本为11.1(这个版本怎么感觉不稳定呢?总是会突然的出现violation而需要重新启动) 一般都会在assignment/settings中进行设置1.全局优化: 在assignment/settings/如图所示中,physical synthesis optimization 中,有如图所示的几个选项: (1)optimize for performance(性能优化) perform physical synthesis for combinational logi 阅读全文

posted @ 2013-01-17 17:47 展翅的小鸟 阅读(9009) 评论(1) 推荐(1)

这几天的问题
摘要:FPGA的学习总是断断续续的。刚开始可是为了他而考研的啊。。。。。。前几天出现的slack为负值的问题总是得不到解决。身边没有用FPGA的朋友,工具的深入使用又一时半会找不到入门的方法,虽然因为slack的问题而又学习到了几个概念,比如multicycle,false path等,但是还是不知道怎么解决关键路径。尽管说中间可以加个D触发器,但是怎么拆分组合逻辑电路呢?着实意识到了这个理论与实践中的落差,再坚持,总会有解决问题的办法的。。。。。。。相信这次问题的解决终会对我对FPGA的设计的理解有个一个进一步的深入! 阅读全文

posted @ 2013-01-11 15:44 展翅的小鸟 阅读(210) 评论(0) 推荐(0)

导航