ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:1MB ,
资源ID:9242716      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9242716.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(NiosII软核处理器设计研究.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

NiosII软核处理器设计研究.docx

1、NiosII软核处理器设计研究 毕业设计(论文)论文题目:NiosII软核处理器设计研究基于NiosII的数字频率测量电路系统设计频率测量电路系统设计姓 名:王克勤学 号:学 院:机电与信息工程学院专 业:电子信息科学与技术年 级:2007级指导教师:郑亚民 摘 要随着电子技术的不断发展,电子产品向体积越来越小、设计时间越来越短、集成度越来越精密、产品周期越来越短、成本越来越低、功能越来越强大等方向发展。Nios嵌入式系统是一种面向用户的、可以灵活定制的通用RISC(精简指令集架构)嵌入式CPU。使用Nios处理器的用户可以根据需要调嵌入式系统的特性、性能以及成本,快速使得产品推向市场,扩展产

2、品的生命周期,并且避免处理器的更新换代。本设计结合Quatrtus、SOPC Builder、NiosIDE和ModelSim等多种技术实现基于Nios的数字电路频率测量电路系统的设计。本设计包含三部分电路设计:计数器电路、计数器控制电路、Nios软核处理器系统电路,其核心和难点是Nios软核处理器系统的硬件电路设计、NiosIDE软件开发及系统集成。本设计完成了单元电路的设计、系统集成、Nios软核处理器系统的软硬件开发及用ModelSim仿真波形。关 键 词 SOPC Builder NiosIDE ModelSim Nios 频率测量 AbstractWith the continuou

3、s development of electronic technology, electronic products of size is getting smaller and smaller, shorter and shorter design time, more and more sophisticated integration, product life cycle is becoming shorter and shorter, more and more low-cost, more and more powerful features, and so on. The us

4、e of Nios processor users can base on their need to transfer the characteristics of embedded systems, performance and cost of making products to market quickly, and expand the products life cycle and to avoid the replacement of the processor. Niosembedded system is an user-orientated and can be flex

5、ibly customized common-use embedded cpu with RISC(Reduced Instruction Set Computer). This design combines the technology of Quartus2 with SOPC Builder and NiosIDE and ModelSim to achieve the designment of the digital circuit frequency measurement system based on Nios.And it contains three circuit la

6、yout:The counter circuit,the counter control circuit and the Niossoft core processor circuit,the key parts and difficulties of which are the hardware design of Niossoft core processor circuit and the software development of NiosIDE and the system integration. The design completes the designments of

7、all the element circuits ,the integration of the whole system , the development of hardware and software of the Niossystem,including the waveforms simulation of the system.Key WordsSOPC Builder,NiosIDE,ModelSim,Nios,frequency measurement一、 绪论 随着微电子技术的发展,促使集成电路向高速、高集成度、低工耗的系统集成方向发展,SOPC(System On a P

8、rogrammable Chip、片上可编程系统)是现代电子技术和电子系统设计的汇聚点和发展方向。它将传统的EDA技术、计算机系统、嵌入式系统、数字信号处理技术、数字通讯系统以及自动控制系统等融为一体,在结构上凝为一片。SOPC综合了SOPC和PLD、FPGA各自的优点,集成了硬核和软核CPU、DSP、存储器、外围I/O可编程模块,用户可以利用SOPC平台自行设计高速、高性能的DSP处理器或特定功能的CPU处理器,从而是电子系统设计进入一个全新的模式。当前嵌入式系统迅速发展起来,基于Nios II的嵌入式系统以其自己的优点被广泛应用。 Nios符合工业技术的发展潮流,即硬件设计软件化。采用Ni

9、os II能有效地降低人力和物力成本,提高产品竞争力;硬件设计软件化还能方便对硬件进行仿真、验证,整个系统结构的数字逻辑设计使得验证工作可以通过仿真软件顺利地实现,可以掌握详细、清楚的信息;减少硬件设计的错误,使得对硬件接口不是很熟悉的人也可以进行系统平台的集成。Nios的价值在于它为FPGA的应用拓展了新的方向,真正在FPGA上实现了SOPC。本设计基于Nios II的嵌入式系统设计,利用SOPC Builder技术在FPGA芯片上实现系统设计,完成数字信号频率测量电路的系统设计。首先对Nios进行简单介绍,然后介绍频率测量原理及电路设计要求及系统设计的总体思路,之后是本设计的核心部分,频率

10、测量电路的单元设计和Nios软核处理器系统的设计。在本设计过程中,Nios软核处理器系统采用SOPC嵌入式设计方法,分嵌入式硬件和软件两部分进行设计。设计的两个部分分别在SOPC Builder和Nios II IDE中进行,在SOPC Builder添加组件构建系统,系统生成后在Quartus II中进行例化,由于没有开发板,只做到仿真。在Nios II IDE中编写程序,实现功能控制,编译并运行。本设计的仿真工作是在ModelSim软件下进行的,其专业仿真软件比Quartus本身自带的波形仿真效果要好。 本设计是基于Nios II的嵌入式系统设计,设计灵活,是电子设计的新方向。二、 Nio

11、s软核处理器的理论知识介绍(一) Nios软核处理器的概述 Nios软核处理器是一种32位RISC嵌入式处理器,具有超过200DMIP的性能,它是一种软核、可配置的系统。软核表示处理器的目标器件、可编程逻辑器件,只有在下载设计文件后才具有处理器的功能;可配置意味着处理器系统的组成和性能可以根据要求进行调整。一个Nios软核处理器系统是一个包含了一个可配置CPU软内核、FPGA偏少存储器和片外存储器、外设及外设接口等的一个片上可编程系统,它可以工作在Altera 公司的Stratix、Stratix、Cyclone、Cyclone等系列的可编程逻辑器件上。(二) NIOS软核处理器系统结构 图2

12、-1 Nios处理器系统 如图2-1所示,为一个典型的Nios处理器系统。在图2-1中,整个Nios处理器系统包括Nios处理器内核(调试模块)、Avalon总线和系统外设。系统中的外设,如SDRAM控制器、片内RAM、三态桥、UTART、定时器、LED显示驱动电路、通用I/O、Compact Flash等都是由FPGA内部的逻辑和RAM资源实现的。(三) Nios软核处理器的三种内核的比较 Nios软核处理器具有三种内核可供用户选择,用来满足不同的设计要求。它们分别是快速性、经济型和标准型。快速型NiosII内核具有最高的性能,经济型NiosII内核具有最低的资源占用,而标准型在性能和面积之

13、间做了一个平衡。 Nios的3种类型内核的比较如表2-1所示:表2-1 Nios3种类型内核的比较特性Nios/eNios/sNios/f目标最小核较小核最快的执行速度DMIPS/MHz0.150.741.16Max. DMIPS31127218Max.f/MHz200165185面积/LE70014001800流水线1级5级6级外部地址空间/GB222指令Cache无512B-64KB静态分支预测512B-64KB静态分支预测数据Cache无无512B-64KBALU只能移位操作、无硬件乘法、除法硬件乘法、除法和移位操作硬件乘法、除法和移位操作(四) 使用Nios软核处理器的优势1. 提供合

14、理的性能基于处理器进行应用系统设计时,设计者很难在众多的处理器芯片中选择到合适的芯片,因为处理器芯片的功能和技术指标是确定的。为了满足某一些性能和技术指标,常常不得不选择一种还具有多余功能的处理器芯片,这就导致了产品成本的提高。若为了满足产品成本的要求,常常又会使设计达不到理想的性能和技术指标。采用Nios软核处理器系统,设计者能够根据自己的想法来配置处理器系统,包括选择合适的处理器内核、希望的外部设备,以及处理器与外部设备之间的接口。设计者还能过在Nios软核处理器系统中集成自己专有的逻辑功能,如浮点算术运算电路、数字信号处理(DSP)电路等。2. 提升系统的性能设计者不仅可以采用快速型内核

15、“Nios/f”,并添加硬件电路来提升Nios软核处理器系统的性能,还可以通过在一个系统中添加多个处理器内核来提高系统的性能。Altera公司现在提供多个系列的可编程逻辑器件,既有包含大量逻辑资源的芯片,又有经济、价廉的芯片。例如,高性能的Stratix系列的EP2S180芯片,一个Nios软核处理器只占用这种芯片的1%的逻辑资源,这使得在一个可编程逻辑器件中能够实现多个Nios软核处理器,这样提高了应用系统的性能。3. 延长产品的生命周期使用Nios软核处理器进行应用系统设计可以从以下几个方面延长产品的生命周期。首先,在硬件方面,Nios软核处理器的目标器件为可编程逻辑器件,它的可编程特性避

16、免了专用集成电路设计制作周期长的缺点;在软件方面,Altera公司提供了完整的开发软件、大量的设计参考和调试电路。其次,Nios软核处理器系统的软核、可配置特点使得用户能够容易地对应用系统的硬件电路部分进行升级。即使产品已经交给了用户,仍然可以方便地进行升级。最后,Nios软核处理器系统可以方便地移植到新的可编程逻辑器件中。例如,当一个设计被确定,并且准备大批量生产时,可以选择将它移植到Altera公司的HardCopy(一种结构化的专用集成电路)上,使成本降低。三、 频率测量原理与电路设计要求频率的概念与时间的概念直接相关,信号频率的另一种描述就是信号的周期。频率与周期的关系式为:f=1/T

17、,式中,f为频率,单位为Hz(赫兹);T为周期,单位为s(秒)。实现数字信号频率测量的核心电路是计数器,利用计数器实现数字信号频率测量的方法有两种:计数法和定时法。采用计数法可以直接获得待测数字信号的频率。这时计数器的计数触发信号为待测信号,另外还需要一个计数控制信号。如果计数器控制信号的有效时间固定,如1s,则在计数控制信号的有效时间内到来的待测数字信号的个数就是其频率值。采用定时法可以直接获得待测数字信号的周期,这时计数器的计数触发信号为一个频率一定的信号,计数控制信号为待测数字信号。这样由一个待测数字信号周期内到来的固定频率计数触发信号个数就可以获得待测数字信号的周期。如果希望有较高的测

18、量精度,同时有一个较快的测量速度这时需要在测量电路中根据不同情况采用不同方法。在待测数字信号频率较高时,适合采用计数法;反之则适合采用定时法。这是因为如果待测数字信号的频率较低,采用计数法就需要计数控制信号的有效时间较长,从而使得测量需要的时间较长;如果待测数字信号的频率较高,即待测数字信号的周期较小,采用定时法在一个待测数字信号周期中到来的计数触发信号个数较少,从而使得测量精度较小。在待测信号的频率范围较宽的情况下,联合使用以上两种测量方法既可以保证测量精度,又可以加快测量速度。作为一种设计方法的学习和Nios软核处理器及FPGA器件的应用学习,本设计完成的频率测量系统测量信号的频率范围为测

19、量结果用频率、周期两种显示方式,测量结果使用7个数码管显示。当频率数据较大时用科学计数法表示,前四位4个显示测量数据的有效数位;后两位显示以10为底的幂的符号,最后一位显示幂次方。当频率/周期数值在四位及以下时候,测量结果用前四位显示,后三位清零。频率的单位为Hz(赫兹),周期的单位为s(秒)。四、 频率测量电路的系统设计实现数字信号频率/周期测量的计数器的工作很简单,每来一个计数信号它的内容就加1。计数器需要较高的计数速度,速度的快慢不仅影响采用计数法时的最高测量频率,而且也影响采用定时法时的周期测量精度,因此计数器模块采用可编程逻辑器件,使用硬件描述语言来设计。Nios软核处理器系统虽然提

20、供定时器内核,但是它的计数信号只能是系统时钟,这样只能实现定时法,不能实现计数法,当待测信号频率很高时将影响测量精度。采用定时法,在计数触发信号采用50MHz的Nios软核处理器系统的时钟时,如果要求测量数据具有4位有效数字那么这时用做计数控制信号的待测信号的最小周期为20us,对应待测信号的最高频率为50kHz。提高计数触发信号频率可以扩展测量范围。采用计数法,在待测信号频率为50kHz时,如果同样要求测量数据具有4位有效数字,那么这时用做计数控制信号的有效时间至少为20ms。如果待测信号频率降低,在保证测量数据具有的有效数字不变的情况下,必须加大计数控制信号的有效时间,这将使得系统的测量速

21、度下降。联合采用定时法和计数法来完成数字信号的频率测量,在待测信号频率较低时采用定时法,在待测信号频率较高时采用计数法。由于采用不同的方法,实现数字信号频率/周期测量队计数器的技术触发信号和计数控制信号的来源不同,因此需要一个计数器控制模块进行信号的分配。计数器控制模块的输入信号包括待测信号、频率固定的Nios软核处理器系统的系统时钟信号和该模块自己的控制信号,输入信号包括计数触发信号和计数控制信号。计数控制信号模块实现的是信号分配,不涉及算术运算,因此这里也将采用可编程逻辑器件,使用硬件描述语言来设计。由于所设计的系统要求能够显示待测量数字信号的频率和周期,由信号频率和信号周期的关系式可知,

22、计数其中的测量数据从一种格式转换为另一种格式将需要进行除法运算。利用Nios软核处理器系统处理这些数据将是合适的选择。在Nios软核处理器系统中,计数器中的测量数据可以在一个由开关输入信息的控制下,获得需要的显示数据格式,并通过显示模块显示。由于在待测信号频率较低时适合采用定时法,在待测频率较高时适合采用计数法,因此Nios软核处理器系统还需要根据测量结果自行选择测量方式,并产生合适的控制信号送到计数器控制模块。综上所述,本设计的频率测量电路的组成方框图4-1所示:系统时钟(sys_clk) 测量控制信号 测量数据准备好信号计数触发信号 计数使能信号 显示格式 控制开关 测量数据图4-1频率测

23、量电路的组成方框图频率测量电路的工作是在Nios软核处理器控制下进行的。待测信号的频率/周期测量是连续、循环进行的,这样不仅能测量信号的频率/周期,而且能在一定程度上跟踪信号的频率/周期变化。每个测量循环从Nios软核处理器系统向计数器控制模块发出启动计数法测量控制信号开始。计数器控制模块将待测信号作为计数触发信号,以系统时钟为时间基准产生20ms宽的计数使能信号送往计数器模块。在20ms宽的计数使能信号结束之后,计数器控制模块向Nios软核处理器系统发送测量数据准备好信号。Nios软核处理器系统接到测量数据准备好信号以后,从计数器模块读取测量数据。接着对数据进行判断,如果测量数据具有4为有效

24、数字,Nios软核处理器系统则对其进行处理,否则再次向计数器控制模块发出启动定时法测量控制信号。计数器控制模块这时将系统时钟信号作为计数触发信号,以一个完整待测信号周期产生的计数使能信号送往计数模块。在计数使能信号结束之后,计数控制模块再次向Nios软核处理器系统发送测量数据准备好信号,后者再次从计数器模块中读取测量数据。Nios软核处理器系统则对测量数据进行处理,工作包括产生满足格式要求的待测信号的频率和周期数据,完成处理的数据根据显示要求送到显示模块进行显示,接着进行下一个测量循环。五、 频率测量电路的单元电路设计(一) 计数器电路1. 计数器电路的VHDL语言 计数器的工作不仅需要计数使

25、能信号和计数触发信号,在开始每次计数工作之前还需要对计数器内容进行清零。计数器的每个计数循环从计数器内容进行清零开始,接着计数使能信号有效,使得计数器在计数触发信号的控制下从0开始计数。在计数使能信号有效时间过后,计数器停止计数,保持本次技术循环的技术数据等待Nios软核处理器系统读取,然后等待下一个计数循环的开始。计数器具有的数据位数也需要仔细选择,既要满足设计要求,又要尽可能地节省器件资源。如果在这里多考虑其他模块的工作,则可以降低整个系统的设计难度。如果考虑系统4位测量精度的要求,则计数器具有15位数据位数即可满足要求,但在计数器控制模块中还需要具有量程自动切换电路,因此需要扩展计数器的

26、数据位数,使得在整个测量范围内计数器不会发生溢出,这是将不需要量程自动切换电路。在使用定时法测量时,如果用做计数触发信号的系统时钟频率为50MHz,这样在待测信号达到1Hz的最小频率,即1s内的最大周期时,计数器的最大计数数据为,这时计数器需要27为数据位数。在使用计数法测量时,如果采用20ms宽的固定计数使能信号,则在待测信号达到9.999Hz的最高频率时,计数器的最大计数数据为1.9998,这时计数器需要19位数据位数。综上所述,这里计数器选择27位数据位数。其VHDL语言代码见附录一所示。计数器需要较高的计数速度,在Quartus2窗口中,由菜单“Assignments-Settings

27、-Analysis & Synthesis Settings”打开分析、综合设置对话框,在优化技术选择栏“Optimization Technique”中选择速度优先“Speed”。图5-1 计数器电路的编译报告如图5-1所示,在选用EP2C35F672C6作为目标芯片的情况下,对上面的数据电路的VHDL语言代码进行编译。编译报告显示电路占用芯片逻辑单元为55,仅占不到整个芯片33216个逻辑单元的1%。电路所支持的最高计数触发信号频率为253MHz,满足在使用定时法测量时输入50MHz计数触发信号的要求。2. 计数器电路的模拟测试 图5-2 计数器电路的RTL Viewer级电路 图5-3

28、计数器电路模拟结果如图5-3所示为所设计的计数器电路的ModelSim模拟仿真结果。ModelSim是Mentor公司的生产的一款业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业界唯一的单内核支持VHDL和Verilog混合仿真的仿真器。它采用直接优化的编译技术、Tcl/Tk技术、和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,便于保护IP核,个性化的图形界面和用户接口,为用户加快调错提供强有力的手段,是FPGA/ASIC设计的首选仿真软件。模拟的计数时钟信号(counter_clk)采用50MHz的实际应用最高频率。计数器清零信号(counter_clean)为低电平有

29、效,当它有效时,计数器(counter)的内容被清零。计数器使能信号(counter_en)也是低电平有效,当它有效时,每来一个计数时钟信号(counter_clk),计数器(输出端口)(counter_data)的内容加1。输出端口(counter_data)的数据在计数器使能信号有效期间跟随计数器的内容变化,因此在该端口上的数据必须要等测量完成之后才能读取。计数器电路需要的所有输入信号来自计数器控制电路,同时计数器控制电路还需要在测量完成之后,即计数器使能信号有效期间结束之后,产生一个测量数据准备好信号触发Nios软核处理器系统读取测量数据。(二) 计数器控制电路1. 计数器控制电路的VH

30、DL语言描述计数控制电路的输入信号包括待测量的数字信号、系统时钟信号,以及从Nios软核处理器系统来控制信号。计数器控制电路的输出信号包括送到计数器的计数器清零信号(counter_clean)、计数时钟信号(counter_clk)、计数使能信号(counter_en),以及送到Nios软核处理器系统的测量数据准备好信号。计数器控制电路的VHDL代码采用有限状态机(Finite State Machine,FSM)模型进行编写。有限状态机是一种为进行时序逻辑电路设计而创建的专门模型,这种模型对设计任务顺序明确的数字控制系统非常有用。由电路的状态转换表或电路的状态转换图,利用VHDL可以设计出

31、不同应用特点的状态机,而且这些状态机都具有相对固定的语句及表达方式。在从Nios软核处理器系统来的启动控制信号的控制下,利用有限状态机模型写出的控制代码很容易实现一个周期的控制时序结束以后自动等待,因此实现一个完整的测量循环很容易。其VHDL语言代码如附录二所示。图5-4 计数器控制电路的编译报告如图5-4所示,在选用EP2C35F672C6作为目标芯片,选择速度优先“Speed”优化技术的情况下,对上面的计数器控制电路的VHDL语言代码进行编译。编译报告显示电路占用芯片逻辑单元为37,与计数器电路类似,仍然只占了不到整个芯片33216个逻辑单元的1%。2. 计数器控制电路的模拟测试图5-5 计数器控制电路在Quartus中的模拟结果图5-6 计数器控制电路用ModelSim仿真的波形图如图5-5、图5-6所示,为所设计的计数器控制电路的模拟结果,模拟结果的前面为采用计数法进行待测信号的频率测量,这时Nios软核处理器先输出“00”,计数器的计数时钟为待测信号,产生计数器清零信号,接着输出“01”的控制信号,在系统时钟信号的控制下产生计数器使能信号。计数使能信号结束以后,输出数据准备好信号。模拟结果的后面为采用定时法进行待测信号的周期测量,计数器的计

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2