基于FPGA的SOC技术毕业设计.docx
- 文档编号:23205205
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:68
- 大小:599.77KB
基于FPGA的SOC技术毕业设计.docx
《基于FPGA的SOC技术毕业设计.docx》由会员分享,可在线阅读,更多相关《基于FPGA的SOC技术毕业设计.docx(68页珍藏版)》请在冰豆网上搜索。
基于FPGA的SOC技术毕业设计
摘要
随着半导体工艺技术的迅猛发展,可编程逻辑器件的集成度越来越高,FPGA中的逻辑资源也日益丰富,已达到百万门量级,这使得使用FPGA实现片上系统成为可能。
基于FPGA的片上系统设计方案具有开发周期短、设计成本低、软硬件在系统可编程、系统设计灵活、可裁减、可扩充、可升级等优点,正在成为电子系统设计的研究热点。
随着设计与制造技术的发展,集成电路设计从晶体管的集成发展到逻辑门的集成,现在又发展到IP的集成,即SOC设计技术。
SOC可以有效地降低电子信息系统产品的开发成本,缩短开发周期,提高产品的竞争力,是未来工业界将采用的最主要的产品开发方式。
FPGA将现代的VLSI逻辑集成的优点和可编程器件设计灵活,制作及上市快速的长处相结合,使设计者在FPGA开发系统软件的支持下,现场直接根据系统要求定义和修改其逻辑功能。
使一个包含数千个逻辑门的数字系统设计实现,采用FPGA技术,即可几天内完成。
本设计实现一种基于FPGA的SOPC解决方案,实现了系统的灵活性架构,以及参数化配置,便于系统的集成与设计修改,具有良好的可继承性与可移植性。
关键词:
系统级芯片(片上系统);现场可编程门阵列;NiosⅡ
Abstract
Withtherapiddevelopmentofsemiconductortechnology,logicresourcesinFPGAhavereachedmillionsordersofmagnitude,whichmakesystem-on-chip(SOC)basedonFPGAhasbecomepossible.ThedesignofSOCbasedonFPGAhasmanyadvantages,suchasashortdevelopmentcycle,low-cost,softwareandhardwarein-systemprogrammable,systemdesignflexibilityandcanbetrimmed,sealable,upgradeable,etc,Becauseofthese,ithasbecameahotspotofresearchofelectricalsystemdesign.
Withthedesignandmanufacturingtechnology,integratedcircuitdesignfromtransistorstointegrateddevelopmentofintegratedlogicgates,andnowdevelopedtotheIPintegration,thatSOCdesigntechnology.SOCcaneffectivelyreducetheelectronicinformationsystemproductdevelopmentcosts,shortendevelopmentcycles,improveproduct'scompetitiveness,isthenextmostimportantindustrywillusemethodsofproductdevelopment.FPAGthemodernlogicofintegrationoftheadvantagesofVLSIandprogrammabledevicedesignflexibility,fasterproductionandmarketstrengthscombinedtoenableFPGAdesignerstodevelopsystemsoftwaresupport,on-sitedirectlyfromsystemrequirementsdefinitionandchangeitslogicfunction.Makealogicgatethatcontainsthousandsofdigitalsystemdesignandimplementation,usingFPGAtechnologycanbecompletedwithinafewdays.
TheDesignandImplementationofFPGA-basedSOPCsolutionstoachievetheflexibilityofthesystemstructureandparametersofconfiguration,easeofsystemintegrationanddesignchanges,hasagoodinheritableandportability.
Keywords:
SOC;FPGA;NiosⅡ
1绪论
1.1课题背景
EDA(ElectronicDesignAutomation)技术是近几年迅速发展起来的计算机软件,硬件和微电子交叉的现代电子学科,涉及计算机操作系统、计算数学、电路理论和微电子学等领域,其内容广泛,综合性强。
SOC技术以片上操作系统技术为核心,通过软硬件协同设计,实现设计的高度灵活性与整合性。
本设计基于EDA设计的思想和方法,结合FPGA技术高度灵活性与模块化的特点,实现基本的SOC设计功能。
通过软件仿真,得到功能的验证,并进行功能逻辑模块的整合,从而验证设计的可行性与可靠性。
使用FPGA进行SOC设计,对多数嵌入式设计工程师和FPGA工程师来说还并不熟悉,目前在基于FPGA上的SOC设计和应用的市场比例并不大,但是使用FPGA作为SOC设计开发具有很大的优势。
1.2目的及意义
FPGA中使用软核处理器比硬核更有优势,其优势在于,硬核实现没有灵活性,通常无法使用最新的技术。
随着系统日益先进,基于标准处理器的方案会被淘汰,而基于NiosII处理器的方案是基于HDL源码构建的,能够修改以满足新的系统需求,避免了被淘汰的命运。
将处理器实现为HDL的IP核,开发者能够完全定制CPU和外设,获得恰好满足需求的处理器。
使用FPGA设计实现SOC的最大的优势在于定制性[1],即为量身定做之意。
设计嵌入式产品在选片过程中很难做到完全接近需求,且还要为在PCB板上添加CPU没有集成的外设资源而支付额外费用,但FPGA则不存在上述问题。
在FPGA内,用户可以通过配置添加任意外设数量,剔除不需要的外设,也可以根据实际需要修改外设的功能,甚至自主设计独特的外设。
做到完全的定制性,而不浪费资源。
相比传统的嵌入式CPU,FPGA内部的处理器核运算能力有一些不足,但嵌入式产品主要功能是控制,在这点上,FPGA可以使用纯逻辑控制方式,具有天然的优势,尤其是在实时性要求较高的场合,FPGA硬件的反应时间在ns级,这是传统嵌入式CPU所不能企及的。
1.3国内外研究现状
1.3.1国外研究现状
1994年摩托罗拉公司发布的FlexCoreTM系统(用于制作基于68000TM和PowerPCTM的定制的微处理器)和1995年LSILogic公司采用SOC微SONY公司进行设计,这可能是基于IP核完成SOC设计的最早报道。
由于SOC可以充分利用已有的设计积累,显著地提高了ASIC的设计能力,因此发展非常迅猛,引起了工业界和学术界的广泛关注。
2000年,美国著名的半导体器件生产厂商Altera公司最先提出了基于可编程逻辑器件的片上系统解决方案,即SOPC技术,并同时推出了相应的开发软件QuartusII以及相应的IP模块库,2002年2月,Altera公司所推出的新一代可编程逻辑器件Stratix被认为是世界上第一个为50ns设计提供的真正意义上的系统级芯片[2]。
全球可编程逻辑器件市场份额占有最大的半导体器件生产厂商美国的Xilinx公司自1985年推出第一片现场可编程逻辑器件至今,就不断推出新器件和开发工具,面对SOPC技术的发展和需求,也有一套完整的SOPC系统解决方案,包括处理器IP核、外设接口IP核、总线架构以及开发工具等等,SOPC系统级芯片(SOC)解决方案被誉为半导体业最重要的发展之一。
目前,国外SOC、SOPC的设计已经进入了主流设计应用阶段,无论是设计技术还是开发平台都比较成熟和完善,基于SOPC技术的产品应用也已开始投放市场。
1.3.2国内研究现状
在国内虽然设计产业发展很快,但是多设计是低层次的,还没达到系统级水平,在SOC技术与应用方面,我国与国外还存在较大的差距。
近年来,国家在这个领域投入了大量的人力、无力和财力,科技部于2000年启动了“十五”国家863计划超大规模集成电路SOC专项工作[3]。
希望通过努力,初步建成具有自主知识产权、品种较为齐全和管理科学的国家级IP核库,并掌握具有国际先进水平的SOC软硬件协同设计、IP核复用和超深亚微米集成电路设计的关键技术。
2002年,“龙芯”CPU研制成功,为改变我国信息产业无“芯”的局面迈出了重要的一步。
2005年4月18日中国科学院计算技术研究所成功研制出“龙芯二号”,最高工作频率为500MHz,其性能相当于800~1000MPentiumIII,2006年5月又推出“龙芯2D”,工作频率为600~800MHz,性能相当于1.3~1.5GPentium4,另外,多内核、多线程机制的“龙芯3号”将计划在“十一五”期间完成。
作为最能直接体现SOPC设计思想的Microblaze和Nios软核处理器IP核,在国外已经有了广泛的应用,但在国内,使用这两种软核的嵌入式设计、开发者甚少,还只是局限于高校科研和教学阶段,具体应用很少,批量产品生产更是无从谈起。
1.4论文章节安排
第一章:
绪论,主要介绍课题的背景、目的意义和国内外研究现状。
第二章:
基于FPGA的SOC技术,包括FPGA、SOC以及SOPC的简介。
第三章:
系统硬件设计,介绍了QuartusII、SOPCBuilder、NiosII处理器和NiosIICPU的搭建。
第四章:
NiosIIIDE的软件设计,包括新建软件工程、主程序设计、UATR串口和LED控制流程图及其代码。
2基于FPGA的SOC技术
2.1FPGA简介
2.1.1FPGA的定义
FPGA是英文FieldProgrammableGateArray的缩写,即现场可编程门阵列,它是在可编程阵列逻辑PAL(ProgrammableArrayLogic)、可编程逻辑器件PLD(ProgrammableLogicDevice)等可编程器件的基础上进一步发展的产物。
它是作为专用集成电路ASIC(ApplicationSpecificIntegratedCircuit)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数量有限的缺点。
FPGA能完成任何数字器件的功能,上至高性能CPU,下至简单的74系列电路,都可以用FPGA来实现[4]。
2.1.2FPGA的组成
FPGA器件在结构上,由逻辑功能模块排列为阵列,它的结构可以分为三个部分:
可编程逻辑块CLB(ConfigurableLogicBlocks)、可编程I/O模块IOB(Input/OutputBlock)和可编程内部连线PI(ProgrammableInterconnect)。
如图2-1所示[5],CLB在器件中排列为阵列,周围有环形内部连线,IOB分布在四周的管脚上。
CLB能够实现逻辑函数,还可以配置成RAM等复杂的形式。
图2-1FPGA的结构原理
FPGA中除了个别几个引脚外,大部分引脚都是与可编程IOB直接相连的,可根据需要,通过配置IOB,将管脚定义成输入端口、输出端口、双向I/O端口或带寄存器的I/O端口。
每个CLB中都是由组合逻辑电路和存储电路(触发器)构成,可根据需要将其配置成组合逻辑电路或时序电路,按照CLB模块的大小可将FPGA分为细粒度FPGA和粗粒度FPGA,细粒度FPGA逻辑功能块规模较小,资源可以充分利用,但连线和开关多,速度慢;粗粒度FPGA逻辑功能块规模较大,功能较强,粗粒度结构有利于EDA软件进行布局布线,优化器件的利用,提高器件的性能,但资源不能充分利用。
为了能够将这些CLB灵活地连接成各种应用电路,在CLB模块之间的区域内配备了丰富的互联资源这些互联资源包括:
不同类型的金属线,可编程的开关矩阵和可编程的连接点。
静态存储器的存储单元有很强的抗干扰能力和很高的可靠性,但掉电后存储器中的数据将丢失,因而每次上电以后必须重新给SRAM加载编程数据,加载过程是在FPGA内部的一个时序电路的控制下自动进行的,这些数据通常是存放在片外的EPROM中。
随着半导体技术的飞速发展和工艺技术的不断进步,新一代现场可编辑逻辑器件突破了传统FPGA密度和性能的限制,集成了许多满足系统级设计要求的新性能,这样一来使得FPGA就不仅仅是可编程逻辑模块,而且成为了一种系统元件。
2.1.3FPGA的结构特点
新一代FPGA为实现系统级设计从软件和硬件两个方面创造了条件,其结构从系统集成、系统存储、系统时序和系统接口四个方面进行了完善以满足SOC的设计要求。
系统集成
规模效应使得单片FPGA的价格十分低廉,丰富的软硬件IP资源集成,特别是微处理器能以IP硬核或软核的形式植入芯片内部,使得片上系统开发变得相对简单。
系统存储
系统级设计要求FPGA不仅具有可编程的逻辑功能块、I/O功能块和丰富的互连线资源,还必须提供第四种可编程资源,即片内块RAM。
目前各种半导体器件生产厂商所生产的FPGA片内都集成了容量比较大的块RAM和分布式RAM(基于SRAM型的FPGA可以非常简单地实现片内分布式RAM)。
这对提高SOPC系统的工作速度是极为有利的,因为片内处理器核访问片内存储器的速度要比访问片外存储器快好几倍。
系统时序
对于高密度的器件,时钟分配是一个非常棘手的问题。
在系统级设计中,时钟脉冲相位差过大就会严重影响系统性能的提高。
新一代FPGA器件中集成了独立的,完全由数字方式实现锁相的延时锁相环,它能轻易实现对系统时钟的倍频及分频,以及实现0°、90°、180°和270°的时钟相移输出。
系统接口
在深亚微米、超深亚微米时代进行高性能的系统级设计,设计者期望有不同的I/O标准,允许与各种类型的器件连接实现应用。
如CPU、存储器、专用标准总线以及混合信号的接口,能提供工业标准、IEEE/JEDECI/O标准等。
在用FPGA进行SOC设计时,就必须提供这样的系统I/O接口,新型系列器件分别采用不同的技术,使得系统能与不同接口标准的外设实现快速连接。
2.1.4FPGA的优点和缺点
1.FPGA的优点
FPGA现场可编程门阵列器件,顾名思义,是一种可由用户根据所设计的数字系统的要求,在现场由自己配置,定义的高密度专用数字集成电路。
FPAG将现代的VLSI逻辑集成的优点和可编程器件设计灵活,制作及上市快速的长处相结合,使设计者在FPGA开发系统软件的支持下,现场直接根据系统要求定义和修改其逻辑功能。
使一个包含数千个逻辑门的数字系统设计实现,采用FPAG技术,即可几天内完成。
通常归纳,FPGA主要优点如下:
(1)FPGA的用户现场可编程的特性大大缩短了设计实现周期,可以在很短的时间由设计工程师现场提供样机,使产品的上市时间大大缩短,适于现代的市场竞争需求。
同时FGPA可以反复编程,重复使用,没有前期投资风险,且可以在开发系统中自接进行系统仿真,故也没有工艺实现的损耗,以致在小批量的产品应用场合,成本远低于门阵列和全定制ASCI。
而且FPAG芯片在出厂之前都做过百分之百的测试,不需要设计人员承担风险,设计人员只需在自己的实验室里就可以通过相关的软硬件环境来完成芯片的最终功能计,所以它可做全定制或半定制ASIC电路的中的样片。
FPGA是设计周期最短、开发费用最低、风险最小的器件之一。
(2)FPGA可以提供比PDL和EPLD器件更大的有效逻辑容量密度,不仅大大减少印刷电路板的空间,大大降低系统功耗;同时大大提高了系统设计的上艺可实现性和产品的可取性。
它所能实现的功能也越来越强,同时也可以实现系统集成。
(3)FPAG内部有丰富的触发器和I/O引脚,而且FPAG采用高速CHMOS上艺,功耗低,可以与CMOS、TTL电平兼容。
(4)FPAG开发软件包中有各种输入工具和仿真工具,及版图设计工具和编程器等全线产品,电路设计人员在很短的时间内就可完成电路的输入、编译、优化、仿真,只至最后芯片的制作。
当电路有少量改动时,更能显示出FPGA的优势。
电路设计人员使用FPGA进行电路设计时,不需要具备专门的CI深层次的知识,FPGA软件易学易用,可以使设计人员更能集中精力进行电路设计,快速将产品推向市场。
正是由于FPGA的各方面相得益彰的优点和长处,使之近年来在通讯、航天、电脑应用、程序控制等多方面获得较好的应用。
特别是通信、网络产品和专业图像处理设备,FPAG都发挥着非常重要的作用。
2.FPGA的缺点
当然,FPGA本身也存在着一些明显的缺点。
他的信号传输延迟时间不是确定的,在构成复杂的数字系统是一般总要将若干个CLB组合起来才能实现,而由于每个信号的传输途径各异,所以造成了信号传输延迟时间不等,这个不仅会给设计工作带来麻烦,而且也限制了器件的工作速度。
由于FPGA中的编程书籍存储器是一个静态随即存储器结构,所以掉电后数据会丢失,因此,每次上电都需要重新加载编程数据,并需要配备保存编程书籍的EPROM或Flash,这些都给使用带来不便。
FPGA的编程书籍一般是存放在EPROM或Flash中,而且要读出并送到FPGA的SRAM中,因而不便于保密。
由于各半导体器件生产厂商之间技术的保密性,造成FPGA在结构和性能上会因厂商不同而略有差异,他们所开发的IP核包括微处理器及其它功能模块只能在各自的FPGA平台上应用,这对普通的SOPC开发人员来说,会造成很大的不便,因为我们只能选用某个厂商的FPGA开发条件及其相关的设计服务。
2.1.5FPGA的发展与应用前景
1.FPGA的发展概况
FPGA器件起源于美国Xi1inx公司的创造,Xilinx公司于1985年推出世界上第一个FGPA器件。
时至今日,FGPA己经历了十几年的发展历史。
在这十几年的发展过程中,以FGPA为代表的数字系统现场集成技术取得了惊人的发展,现场可编程逻辑器件从最初的1200个可利用门,发展到90年代的25万个可利用门,乃至到本世纪初,国际上现场可编程逻辑器件的著名厂商Altera公司、Xilinx公司又陆续推出了数百万门至上千万门的单片FGPA芯片,将现场可编程器件的集成度提高到一个新的水平[6]。
2.FPGA的应用前景
随着FPGA性能的高速发展和设计人员自身能力的提高,FPGA将进一步扩大可编程芯片的领地,将复杂专用芯片挤向高端和超复杂应用。
目前FPAG的发展趋势主要体现在以下几个方面:
(1)继续向更高密度、更大容量的千万门系统级方向迈进,大容量FPGA是市场发展的焦点。
(2)向低成本、低电压、微功耗、微封装和绿色化发展,采用深亚微米的半导体工艺后,器件在性能提高的同时,价格也在逐步降低。
由于便携式应用产品的发展,对现场可编程器件的低压、低功耗的要求日益迫切。
(3)IP资源复用理念将得到普遍认同并成为主要设计方式,IP内核得到进一步发展,由于通讯系统越来越复杂,FGPA的设计也更加庞大,这促进了设计人员对IP核的需求。
各大厂家继续开发新的IP,并将提供“硬件”IP,即一些功能在出厂时就固化在芯片中。
(4)MCU、DSP、MPU等嵌入式处理器IP将成为FPGA应用的核心,SOPC时代将会到来,用户根据应用选择处理器和I/O,然后就可以编程自己的SOPC。
由此,SOCP就进入了DSP/MUC的应用领域,成为普及的产品。
随着FPAG规模不断变大,CUP,DSP,更大规模的存储器都已经或即将嵌入FPAG内,SOCP的时代,可能已经离我们不远了[7]。
2.2SOC概述
2.2.1SOC的定义
SOC的定义多种多样,由于其内涵丰富、应用范围广,很难给出准确定义。
一般说来,SOC(SystemonaChip)称为系统级芯片,也有称为片上系统,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统,并有嵌入软件的全部内容。
同时它又是一种技术,用以实现从确定系统功能开始,到软硬件划分,并完成设计的整个过程。
从狭义角度讲,SOC是信息系统核心的芯片集成,是将系统关键部件集成在一块芯片上。
从广义角度讲,SOC是一个微小型系统,若把中央处理器(CPU)比作大脑,那么SOC就是包括大脑、心脏、眼睛和手的系统。
国内外学术界一般倾向将SOC定义为将微处理器、模拟IP核、数字IP核和存储器(或片外存储控制接口)集成在单一芯片上,通常是客户定制或是面向特定用途的标准产品[8]。
20世纪90年代中期,因使用ASIC实现芯片受到启发,萌生应该将完整计算机所有不同的功能块一次直接集成于一颗硅片上的想法。
SOC应由可设计重用的IP核组成,IP核是具有复杂系统功能的能够独立出售的VLSI块;IP核应采用深亚微米以上工艺技术;SOC中可以有多个MPU、DSP、MCU或其复合的IP核。
SOC中包含了微处理器/微控制器、存储器以及其他专用功能逻辑,但并不是包含了微处理器、存储器以及其他专用功能逻辑的芯片就是SOC。
SOC技术被广泛认同的根本原因,并不在于SOC可以集成多少个晶体管,而在于SOC可以用较短时间被设计出来。
这是SOC的主要价值所在——缩短产品的上市周期,因此,SOC更合理的定义为:
SOC是在一个芯片上由于广泛使用预定制模IP而得以快速开发的集成电路。
从设计上来说,SOC就是一个通过设计复用达到高生产率的硬件软件协同设计的过程。
从方法学的角度来看,SOC是一套极大规模集成电路的设计方法学,包括IP核可复用设计/测试方法及接口规范、系统芯片总线式集成设计方法学、系统芯片验证和测试方法学。
SOC是一种设计理念,就是将各个可以集成在一起的模块集成到一个芯片上,他借鉴了软件的复用概念,也有了继承的概念。
也可以说是包含了设计和测试等更多技术的一项新的设计技术。
2.2.2SOC的一般构成
从一般来分,SOC含有:
1.逻辑核包括CPU、时钟电路、定时器、中断控制器、串并行接口、其它外围设备、I/O端口以及用于各种IP核之间的粘合逻辑等等;
2.存储器核包括各种易失、非易失以及Cacha等存储器;
3.模拟核包括ADC、DAC、PLL以及一些高速电路中所用的模拟电路。
2.2.3SOC的特征
随着设计与制造技术的发展,集成电路设计从晶体管的集成发展到逻辑门的集成,现在又发展到IP的集成,即SOC设计技术。
SOC可以有效地降低电子信息系统产品的开发成本,缩短开发周期,提高产品的竞争力,是未来工业界将采用的最主要的产品开发方式。
_6L5]y0KQ~"X半导体,微电子,集成电路,IC,工艺,设计,器件,封装,测试,MEMS
P:
FJ[1]O8|_4~5{ y)o半导体,微电子,集成电路,IC,工艺,设计,器件,封装,测试,M虽然SOC一词多年前就已出现,但到底什么是SOC则有各种不同的说法。
在经过了多年的争论后,专家们就SOC的定义达成了一致意见。
这个定义虽然不是非常严格,但明确地表明了SOC的特征:
P6G"epLeK7Tq2Q半导体,微电子,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA SOC 技术 毕业设计