废话不说了,下面进入正题,学习FPGA经历了这么几个阶段:①、Verilog语言的学习,熟悉Verilog语言的各种语法。
②、FPGA的学习,熟悉QuartusII软件的各种功能,各种逻辑算法设计,接口模块(RS232,LCD,VGA,SPI,I2c等)的设计,时序分析,硬件优化等,自己开始设计简单的FPGA板子。
③、NiosII的学习,熟悉NiosII的开发流程,熟悉开发软件(SOPC,NiosIIIDE),了解NiosII的基本结构,设计NiosII开发板,编写NiosIIC语言程序,调试板子各模块功能。
先来说说第一个阶段,现在主要的硬件描述语言有VHDL,Verilog两种,在本科时老师一般教VHDL,不过现在Verilog用的人越来越多,其更容易上手(与C语言语法比较类似),也更灵活,现在的IC设计基本都用Verilog。
像systemC,systemVerilog之类的应该还在萌芽阶段,以后可能会有较大发展。
鉴于以上原因我选择了Verilog作为我学习的硬件描述语言。
其实有C语言的基础,学起Verilog的语言很简单,关键要有并行的概念,所有的module,assign,always都是并行的,这一点与软件语言有明显不同。
这里推荐几本评价比较好的学习Verilog的书籍:①、《verilog数字系统设计教程》,这本书对于入门是一本很好的书,通俗易懂,让人很快上手,它里面的例子也不错。
但本书对于资源优化方面的编程没有多少涉及到。
②、《设计与验证VerilogHDL》,这本书虽然比较薄,但是相当精辟,讲解的也很深入,很多概念看了这本书有种豁然开朗的感觉,呵呵。
学习Verilog其实不用看很多书,基本的语法部分大家都一样,关键是要自己会灵活应用,多做练习。
Verilog语言学了一段时间,感觉自己可以编点东西,希望自己编的程序在板子上运行看看结果,下面就介绍我学习的第二个阶段。
刚开始我拿了实验室一块CPLD的开发板做练习,熟悉QuartusII的各种功能,比如IP的调用,各种约束设置,时序分析,Logiclock设计方法等,不过做到后面发现CPLD的资源不太够(没有内嵌的RAM、不能用SignalTapII,LE太少等),而实验室没有FPGA开发板,所以就萌生了自己做FPGA开发板的意图,刚好Cadence我也学的差不多了,就花了几天时间主要研究了FPGA配置电路的设计,在板子上做了Jtag和AS下载口,在做了几个用户按键和LED,其他的口全部引出作为IO口,电路比较简单,板子焊好后一调就通了(心里那个爽啊...)。
我选的FPGA是cycloneII系列的EP2C5,资源比以前的FPGA多了好几倍,还有PLL,内嵌的RAM,可以试试SignalTapII,用内嵌的逻辑分析仪测试引脚波形,对于FPGA的调试,逻辑分析仪是至关重要的。
利用这块板子我完成了项目中的几个主要功能:RS232通信,指令译码,配置DDS,AD数据高速缓存,电子开关状态设置等,在实践中学习起来真的比平时快很多,用到什么学什么动力更大。
这个时候我主要看的数据有这几本感觉比较好:①、《AlteraFPGA/CPLD设计(基础篇)》:讲解一些基本的FPGA设计技术,以及QuartusII中各个工具的用法(IP,RTL,SignalProbe,SignalTapII,TimingClosureFloorplan,chipEditor等),对于入门非常好。
②、《AlteraFPGA/CPLD设计(高级篇)》:讲解了一些高级工具的应用,LogicLock,时序约束很分析,设计优化,也讲述了一些硬件编程的思想,作为提高用。
③、《FPGA设计指南--器件,工具和流程》:这本书看了他的目录忍不住就买了,这本书讲述了FPGA设计的各个方面,虽然每个方面都是点到为止,但能让你有个整体的概念,了解FPGA的所有设计功能,了解FPGA开发的整个流程。
2025/11/11 0:01:05 131.03MB FPGA 学习 文档 合集
1
本篇论文叙述了数字滤波器的基本原理、IIR数字滤波器的设计方法和IIR数字高通滤波器设计在MATLAB上的实现与IIR数字滤波器在实际中的应用
2025/11/9 5:19:22 77KB 数字滤波器 巴特沃斯
1
本书以实例讲解的方式对HDL语言的设计方法进行介绍。
全书共分9章,第1章至第3章主要介绍了VerilogHDL语言的基本概念、设计流程、语法及建模方式等内容;
第4章至第6章主要讨论如何合理地使用VerilogHDL语言描述高性能的可综合电路;
第7章和第8章重点介绍了如何编写测试激励以及Verilog的仿真原理;
第9章展望HDL语言的发展趋势。
本书配有一张光盘,光盘中收录了书中示例的工程文件、设计源文件及说明文件等。
另外为了配合读者进一步学习,光盘中还提供了Verilog1995和Verilog2001这两个版本的IEEE标准文献,读者可以从中查阅Verilog的语法细节。
本书围绕设计和验证两大主题展开讨论,内容丰富,实用性强,可作为高等院校通信工程、电子工程、计算机、微电子和半导体等相关专业的教材,也可作为硬件工程师和IC工程师的参考书。
[1-2]
2025/11/4 1:22:56 13.85MB Verilog 吴继华 王诚
1
1.设计用于竞赛抢答的四人抢答器。
(1)有多路抢答,抢答台数为4;
(2)抢答开始后20秒倒计时,20秒倒计时后无人抢答显示超时,发出报警信号;
(3)能显示超前抢答台号并显示犯规警报。
2.系统复位后进入抢答状态,当有一路抢答按键按下,该路抢答信号将其余各路抢答信号封锁,同时铃声响起,直至该路按键松开,显示该路抢答台号。
3.用VerilogHDL语言设计符合上述功能要求的四人抢答器,并用层次化设计方法设计该电路。
2025/10/20 5:01:12 23.92MB Verilog FPGA 抢答器 硬件编程
1
本书以中低轨道遥感卫星和静止轨道通信卫星为重点,系统地阐述卫星轨道和姿态动力学的基本原理、轨道和姿态控制的设计思想及设计方法。
主要内容包括:卫星轨道的基本特性、特殊轨道的设计,轨道摄动分析,入轨控制和轨道保持控制;
卫星姿态运动特性,姿态确定,姿态稳定和机动的控制方式。
内容丰富,文笔流畅,工程实用性强。
2025/10/11 6:11:22 5.21MB 卫星 控制 卫星姿态
1
软件测试用例的设计方法
2025/10/7 6:29:31 468KB 软件测试 设计
1
滑模变结构控制MATLAB仿真基本理论与设计方法仿真程序,为数不多的基本滑膜教材的代码,可以参考的学习理论和加深理解
2025/10/1 6:23:28 860KB 滑模控制程序
1
以后还是不把分设高了,这么多人下也只给我增加了100分。
分不能修改,我也没办法,不过告诉大家怎么下不要分,下完了发个评论然后在点上面的星星评个分就可以得到11分了。
同学的毕业设计,完整版包括:一.毕业设计论文(答辩)二.附件三.开题报告(答辩)四.翻译五.源程序1.绪论 11.1传统考试的弊端 11.2在线考试系统的问题的提出及发展背景 11.3考试系统的研究目的及其意义 21.4考试系统的功能和作用 21.5课题研究的主要内容以及个人任务 31.6课题研究的价值 32.可行性研究 42.1可行性分析 42.1.1技术可行性 42.1.2经济可行性 42.1.3操作可行性 42.2系统实现目标 42.3ASP.NET概述 52.3.1ASP.NET的技术概述 52.3.2ASP.NET程序运行原理 52.3.3ASP.NET与数据库访问 63.需求分析 73.1系统需要解决的主要问题 73.2系统应该具备的基本功能 74.系统设计 84.1考试系统总体结构设计 84.4.1网站风格 84.1.2登录与导航模块 94.1.2在线考试模块 94.1.3管理模块 94.2数据库的设计 94.2.1基本概念 94.2.2数据模型 104.2.3数据库设计方法简述 114.2.4数据库设计的基本步骤 124.3属性图 134.3.1学生信息属性图 134.3.2成绩属性图 134.4考试系统数据库建表及其说明 134.5系统流程图 165.系统实现 175.1用户登录 175.2用户注册 195.3导航栏 196.功能测试 206.1测试目标 206.2测试项目说明 206.3测试评价 207.结论 21谢辞 22参考文献 23附录:程序部分后台代码 24用户登录: 24用户注册: 27用户信息管理: 28查看成绩: 30
2025/9/27 15:53:09 9.36MB .net 在线考试系统 数值分析 考试系统
1
从SoC芯片设计者的视角分析和介绍嵌入式系统的基础知识
2025/9/17 4:13:19 38.57MB soc 郭炜
1
本书详细介绍了柔顺机构主要的建模和设计方法,全面总结了柔顺机构的综合方法,并分类整理了包含数百种柔性单元和柔顺装置的大型图库。
  本书旨在启迪和引导设计人员开展柔顺机构的研发。
2025/8/26 8:03:56 55.57MB 柔顺机构 柔性机构 建模 设计实例
1
共 356 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡