基于sopc的flash数据烧写

基于sopc的flash数据烧写

ID:23777957

大小:63.50 KB

页数:11页

时间:2018-11-10

基于sopc的flash数据烧写_第1页
基于sopc的flash数据烧写_第2页
基于sopc的flash数据烧写_第3页
基于sopc的flash数据烧写_第4页
基于sopc的flash数据烧写_第5页
资源描述:

《基于sopc的flash数据烧写》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于SOPC的Flash数据烧写作者;王晓雁,黄孜理,汪一鸣摘要:随着EDA技术的发展和可编程逻辑器件性能的不断提高,可编程片上系统技术为系统设计提供了一种简单、灵活、高效的途径,而NiosII嵌入式处理器是Altera公司新近开发的可编程片上系统解决方案。本文简单介绍了基于NiosII的可编程片上系统的系统设计,并以Flash数据烧写为实例,讨论了在应用过程中遇到的一些问题和解决方案。关键词:可编程片上系统;嵌入式处理器;Flash烧写;同步动态随机存储器引言随着微电子技术的飞速发展,集成电路设计和工艺技术水平有了很大的提高,从而使得由许多IC组成的电子系统集成在一个单片硅片上已

2、成为可能,构成所谓的片上系统(SystemOnChip,SOC)。对于一些仅为小批量应用或处于开发阶段的SOC,若马上投入生产,风险较大,SOPC(SystemOnaProgrammableChip)技术的出现为此提供了有效的解决方案。SOPC是以大规模FPGA为物理载体进行的系统芯片的设计,是基于FPGA解决方案的SOC,简单易行而且成本低廉。构成SOPC的方案有多种途径,其中将IP软核嵌入FPGA的SOPC系统被广泛使用,目前最具有代表性的软核嵌入式处理器是Altera的Nios和NiosII核。Nios嵌入式CPU是一种专门为SOPC设计应用而优化的CPU软核,NiosII是

3、继之推出的第二代Nios嵌入式处理器,处理性能更高。随着现代设计越来越复杂化,FPGA中片内存储器的资源早已不能满足用户的需要,往往需要使用外部存储器来解决问题。其中,Flash烧写就提供了一个有效手段。一般地,烧写Flash最常用的方法是用编程器把程序或数据写入Flash,但如果要把Flash存储器和芯片(比如FPGA芯片)连接起来使用,那么就需要用硬件来做成一个接口模块,而现在很多FPGA开发板本身就带有Flash存储器,这就为FPGA芯片和Flash通信提供了方便,而且NiosIIIDE为此提供了一个方便的Flash编程方法,任何连接到FPGA的兼容通用闪存接口(CFI)的F

4、lash器件都可以通过NiosIIIDE闪存编程器(FlashProgrammer)来烧录。虽然NiosIIIDE闪存编程器(FlashProgrammer)为FPGA开发板提供了一种Flash烧写方法,但是使用它更多地是为了将程序烧入Flash,避免每次上电时需要下载程序的麻烦。如果仅仅想把大量数据写入Flash存储器,作为系统的输入信息使用,则可以采用一种更为简单、方便的方法。本文提出的即是一种基于SOPC开发的Flash数据烧写方法。它利用SOPC开发过程,把Flash作为普通的外设来对待,待数据写入Flash后,SOPC系统所占的资源就可以释放,所以它为Flash数据烧写提

5、供了一种简单、方便并且能够节省FPGA资源的有效方法。1基于NiosII的SOPC开发与传统嵌入式系统设计不同,Nios系统的开发分硬件开发和软件开发两个流程。硬件开发过程主要由用户定制系统硬件,软件开发在NiosIIIDE中完成,NiosII使用NiosIIIDE集成开发环境来完成整个软件工程的编辑、编译、调试和下载。图1所示的是基于NiosII的SOPC系统开发流程。设计规划将硬件程序下载至开发板上将软件程序下载至开发板上SOPC系统实现硬件设计定义NiosII处理器系统(SOPCBuilder)(SOPCBuilder)分配引脚、编译硬件(QuartusII)生成系统模块(S

6、OPCBuilder)软件设计根据硬件系统生成HAL(NiosIIIDE)编写应用程序(NiosIIIDE)编译、连接、调试(NiosIIIDE)图1基于NiosII的SOPC系统开发流程  NiosII的硬件设计是为了定制合适的CPU和外设,利用SOPCBuilder的图形用户界面,可以快速方便地定义和连接复杂的系统。系统定义过程中,可对CPU和各外设模块的特性、大小及在系统中地址分配等进行设定。接着让SOPCBuilder帮助NiosII开发者生成SOPC系统,实际上,它是用生成的.ptf文件来描述NiosII处理器系统。同时,也生成了用于QuartusII编译的HDL文件。在

7、完成上述操作之后,使用QuatusII软件对NiosII系统上的各种I/O口进行引脚分配,并且进行硬件编译。在编译的过程中,QuatrusII从HDL源文件综合生成一个适合目标器件的网表。最后,将生成的配置文件下载到开发板上。NiosIIIDE(NiosII集成开发环境)为NiosII的软件开发提供了一个平台,利用它可以向生成的SOPC系统写入程序。在进行软件开发时,会涉及到与硬件设备的通信问题。HAL(硬件抽象层)系统库工程包括所有和硬件处理器相关的接口,它是在Ni

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。