下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FPGA快速入门经验谈(part2)FPGA入门学习网络讲座:“柏氏”7步FPGA快速入门学习法第三部分:最偷懒的编程可编程芯片的开发,很重要的环节就是对芯片的编程。编程,似乎是一个很复杂的问题,但我们打“穿插”时,只能找最偷懒的捷径,很多可编程芯片的厂家都提供的编程开发平台。对于FPGA/CPLD芯片,XILINX有ISE11平台,Altera也有类似的平台,单片机芯片,如MSP430和AVR等,用IAR平台的也不少这些平台现在都已经很成熟,很完善,使用很方便。它们操作的很多步骤是类似的:1.创建项目并选择芯片,平台会根据你选择的芯片设置相应的参数2.选择相应的开发语言,单片机可以选C语言,FPGA/CPLD可以选VerlogHDL语言。3.编程,编程的内容是越简单越好,没有编程基础的FPGA/CPLD学员可以先选用XILINX的ISE平台,这个平台会给编程人员创造最简单的环境,而且对于简化的程序系统会在后续的操作中自动做一些内部调整。当然,FPGA的开发平台用来输入设计内容的方法很多,语言编程只是方法之一。编程的内容要简单,如果是FPGA/CPLD的编程,可以只做两个赋值语句,如C=A;D=B;等等,如果是单片机的编程,直接用IN,OUT指令写两条输入输出语句就可以了4.编译,因为命令只有两行,编译一般很容易通过。以上四个步骤对单片机和FPGA/CPLD都是类似的,以下5,6两步是FPGA/CPLD特有的5.指定管脚,设定编程时的变量A,B,C,D分别对应哪个管脚6.综合,把编译玩的代码在指定的管脚和特定的芯片形成最终目标代码7.下载,把最终代码通过下载线下载到芯片中以上步骤中,编译和综合的操作,系统能够自动完成,能不能下载成功,主要看自制的开发板电源及JTAG的接线是否正确,也要看一看下载线在计算机一端的连接和设置。这个学习环节似然叫编程,并不是单单是只学习编程,还涉及到其它要学习了解的内容,包括:开发平台的应用,开发环境的设计,设计手段的了解(编程只是其一),针对芯片的操作,编译综合问题,下载和校验等等。这诸多的环节,在入门阶段不一定展开讲述,但要潜移默化地把关键知识点告知学员。编程的内容,越简单越好,更利于理解和验证。另外要强调的一点是,要让学员对逻辑电路和时序电路的特点和区别有一个清楚的了解这对以后的开发学习很重要。FPGA入门学习网络讲座:“柏氏”7步FPGA快速入门学习法--第四部分:检验入门成果下载完成后的,就可以检验“速成”的开发板是否按照设计正常工作了,检验很简单,只要把相应的输入端与电源或地相接,然后再查一下输出端的电位就可以了。如果有人对直接把电源或地线连接到输入管脚有顾虑,可以串接一个1K左右的电阻,这样即使是学员把电源或地错接到其它管脚上,也不会造成芯片管脚的损坏。因为编程的内容很简单,所以验证起来也会很容易,这个只有最简单功能的自制开发板,可以作为学员“穿插式”快速入门的“战利品”,也是最好的入门证书。在入门学习阶段,学员可以得到两个方面的收获:1.明白流程,以后再深入学习各个环节会有所侧重2.建立自信,不会再存在担心学不会,也不再为学习安排的先后轻重问题担心为了加强效果,学员可以多次地变化第三步的编程内容并通过第四步加以验证学员还可以在这个开发板的基础上逐步增加各种外部信号或显示部件,如按键,发光二极管,液晶数码屏等等,当然,也可以对逻辑电路和时序电路的概念。展开循序渐进的学习。以上四个步骤既适用于FPGA开发的学习,也适用于单片机的学习,能够为学员的下一步自学或培训学习打下基础。包括知识上的基础和心理上的自信,下篇部分可以让学员们了解到,FPGA有哪些潜力和发展空间。(下篇:展望篇)FPGA入门学习网络讲座:“柏氏”7步FPGA快速入门学习法--第五部分:FPGA及实现技巧借助FPGA技术实现的片上系统有以下几个特点:1.结构更紧凑,一个FPGA芯片就可以实现一个台式机主板加CPU的所有功能。2.扩充更方便,FPGA有独特的接口性能优势和管脚数量优势,特别是在高速接口方面,远远领先,而无论是单片机还是台式机,在接口和实时信号处理方面都还远远不够。3.可以运行开放软件系统平台LINUX,免费的优势不需多说,FPGA构建的系统可以在移动终端,信息处理,通讯和智能控制等方面,有广阔的开拓空间。学习或应用FPGA技术,对很多人是一个实实在在的挑战。跨专业,跨平台,如何有效学习如何快速实施,需要有个清晰的思路。首先在系统架构上,要以存储部件为中心进行设计,而不是以CPU为中心。在这点上,FPGA构成的系统与传统的台式机有所不同。台式机的目标定位是运行程序,它自然选择了以CPU为核心FPGA构成的系统是为了处理外来信息,CPU的作用是辅助性地管理或处理信息。针对这些特点,可以以存储为中心来进行设计,多用BUFFER,FRAME的方式来组织和处理数据,这种思路对学习者以后的实际构建自己的系统会有帮助。另外,要更充分地利用FPGA的很多特有优势。如果你熟悉总线,就知道实际直连总线要比分时复用总线效率高,易管理。FPGA丰富的布线资源,可以方便地建立多组专用总线FPGA丰富的硬件资源(如数以万计的硬件乘法器等),可以为设计一些快速的硬件处理模块提供了有利的条件。这些硬件模块在设计上应该能有数据存储单元(Buffer或Frame)直接相连。CPU是智能系统不可或缺的部件,与传统的计算机有所不同,在一个FPGA技术构成的系统中,CPU最大的优势是作为一个智能管理者的角色,在人机界面,处理策略,资源调配等方面,起重要作用,而对信息的实际处理上,一些硬件或专用模块,可能会与依靠CPU的软件处理模块,并驾齐驱,甚至硬件模块更能出风头。从一开始,就不要拘泥于传统的以CPU为中心的计算机架构里,这一点很重要。还有一种信息,是大流量的实时数据流,传统计算机原来几乎完全来不及处理。这种数据对象在FPGA系统中,被作为实时“流数据”(Stream)来对待,这些“流数据”往往包含着很多经过数字化的应用信息(如视频音频等),它们如同在生产线上正在被加工的产品,在FPGA系统中被传输,控制,处理和存储。只有在被存储后,CPU和传统的软件模块才把它们作为数据进行处理,而这些传统的处理方式,效率往往并不是最高的。有人知道互联网上很多内容也是以信息流的形式传输的,会占用大量的计算机处理能力。举一个例子,在网络上传送视频,往往会被压缩,以减少数据传输量和处理量。而很多以FPGA为核心实现的系统中,要求的不但是无压缩,而且要“过采样”至于传输链路的带宽问题,利用FPGA技术来解决,更有优势。现在的FPGA芯片,单个接口的速度就可以达到28Gbps,而FPGA本身就管脚多,通道多。将来设计高带宽传输器件和系统,将成为FPGA行业的一大热门。FPGA技术除了以上特定优势外,在传统的计算机能够实现的功能,也不逊色。FPGA借助可以执行“缩减指令”的CPU,得以运行开放式平台LINUX系统。本人认为,将来在LINUX平台上的软件,要比WINDOWS平台上更丰富。WINDOWS就难以处理。再举个例子:要设计一个可以处理10路实时信号输入,10路输出的交换矩阵,用传统的计算机来讲,它处理不了,而对于FPGA来讲,却是小菜一碟。FPGA构成的系统,不但在应用覆盖范围上有优势,在整体系统成本上优势也很明显,本人接触过一个可以胜任WINDOW终端的FPGA产品,其硬件成本只有100元人民币左右。功能的可扩充性,成本的优势,会让FPGA产品不断地蚕食,覆盖传统的计算机产品领域和信息产品领域,现在很多摄像机,数码相机的核心处理芯片都已经使用FPGA。本节比较繁琐,重点是一个建议:要根据数据处理流程来构建FPGA系统!FPGA入门学习网络讲座:“柏氏”7步FPGA快速入门学习法第六部分:专业产品的开发FPGA与专业的信号处理芯片结合,可以开发出很多专业产品,如广播电视,通讯,数据传输等很多领域,都是FPGA的用武之地。用FPGA和专业芯片开发产品,关键是在接口环节,这包括几个方面:1.硬件信号接口2.数据接口3.信息数据格式接口用FPGA开发专业产品,可以做三个层面的工作:1.利用专业接口芯片处理专业信号2.利用FPGA的处理能力替代专业芯片的功能3.设计专业接口IP搞专业产品的开发,需要扎实的FPGA开发方面的基础,也还要有应用专业领域的相应知识,这虽然很难,但对那些原来就从事相关专业的人员,或者较早关注相关领域的FPGA开发人员,却是一个难得的先机。与民用消费品相比,专业产品的设计要求会高一些,不过竞争的人也可能会少一些。专业产品开发,是一个巨大的,潜在的FPGA应用市场。FPGA入门学习网络讲座:“柏氏”7步FPGA快速入门学习法第七部分:个人奋斗—特定IP的开发在FPGA的开发中,常用到一种称为IP的模块,随着FPGA开发市场的逐步扩大,对各式各样的IP的需求会越来越多,例如在视频压缩方面,MPEGII,H.264等IP就已经广泛应用。一个优秀的开发工程师,可以根据自己的特长,开发一些有特色的IP。开发IP模块,不需要太苛刻的开发环境,不需要太多的市场资源,比较适合个人奋斗,特别是对于善于接受新事物的年轻人来讲,可以充分发挥敏锐度和爆发力方面的优势。无论是个人奋斗,还是小型团体的合作,直至跨国公司的大师,大家的开发条件都是一样的,起点也是一样的,谁能胜出,只看创造力。一个开发人员能有如此机会,当年的比尔盖茨和乔布斯也不过如此。以上7部分,前四部分追求的是“跑得快,打得赢”,后三部
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 进社区交通安全宣传
- 怎样正确佩戴安全帽
- 企业年度安全生产工作总结模板
- 综合实践的知识课件
- KAPPA色彩常识介绍模特搭配技巧
- 护理学导论 健康与疾病
- 法学选修-经典法律案例评析-经济法-房地产调控法律分析
- 办公资产管理年终总结
- 2025版高考化学二轮复习 板块1 题型突破4 突破点2
- 腔镜肝癌手术疑难病例讨论
- 数控机床故障维修记录表
- 水泥砂浆与铝合金型材或金属接触腐蚀原因
- 胸腔镜下肺癌根治术手术室护理查房
- 四年级下册竖式计算200道
- 人防通讯系统施工方案范本
- 仓储管理员职业技能操作比赛项目和要求
- 计算机应用基础-终结性考试试题国开要求
- 2021年中国高尿酸及痛风趋势白皮书
- 四年级上册英语说课稿-Unit 12 Peter can jump high. 课时3 湘少版(三起)
- 粉尘火灾应急处置方案
- 安全生产培训课件(完整)
评论
0/150
提交评论