基于SoPC网络模块设计与实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于SoPC的网络模块设计与实现[图] ( 2012/6/28 13:24 ) 网络模块是网络设备中必不可少的部分,随着近年来物联网技术的高速发展,对互联设备的网络模块提出的更高要求。本文提出了基于NIOS的SoPC系统设计与实现的网络模块。 美国Altera公司于2000年提出了SoPC(Systemon a Programmable Chip,可编程片上系统)技术,并同时推出了相应的开发软件Quartus及硬件平台FPGA (Field-Programmable Gate Array)。SOPC具备嵌入式处理器内核,具有丰富的IP核资源可供选择,拥有足够的片上可编程逻辑资源,提供处理器调试接口和FPGA编程接口,具有单芯片、低功耗、小封装等的优点。NIOS是Altera公司发布的软核处理器,其最大特点是可配置性较好,即用户可根据自已的标准定制处理器,按照需求选择合适的外设、存储器和接口。此外还可以轻松集成自己专有的功能,使设计具有独特的竞争优势。Nios软核处理器的原理框图如图1所示,其中对用户可见的单元电路包括存储器文件、算术逻辑单元(ALU)、与用户自定义指令逻辑的接口、异常控制器、中断控制器、指令总线、数据总线、指令及数据缓存、紧密耦合存储器接口电路及JTAG调试模块等。本设计通过Altera公司的FPGA芯片和NIOS嵌入式系统实现SoPC。 1 系统总体方案设计 Altera公司的SoPC Builder为建立SoPC设计提供了标准化的图形环境,SoPC Builder包含在Quartus软件中。SoPC Builder帮助设计者自动完成系统集成的工作,ScPC提供了直观的图形用户界面(GUI),帮助设计者添加和配置系统所需的外设(包括存储器、定制外设和IP模块),根据设计者的要求将这些外设与处理器连接在一起,并自动完成外设和存储器的地址映射、中断控制和总线控制等工作。完成系统配置之后,SoPC Builder根据要求生成VHDL或Verilog HDL的系统级设计代码,并自动生成部分外设的硬件抽象层(HAL)代码和底层硬件驱动代码,为软件开发做好准备。图2所示为SoPC Builder为本次设计生成的系统模块的应用实例。 2 网络模块设计与实现 SoPC系统设计流程如图3所示。设计者根据任务要求决定系统需求,用SoPC Builder建立自已的SoPC系统。在硬件方面,建立一个顶层设计文件,将生成的SoPC系统例化,并设置引脚分配、时序要求及其它设计约束,然后编译硬件设计并将FPGA设计下载到目标板中。在软件方面,用Nios IIIDE开发应用软什,在其中使用Nios II指令仿真器运行并调试软件。之后将可执行软件下载到目标板上的Nios系统中,在目标板上运行调试软件,并对设计的不足进行收进。 2.1 硬件模块设计 系统选用Altera公司Cyclone II系列的EP2C35F672C6,构建一个基于NIOS II的SoPC系统。本设计中,NIOS II CPU负责网络模块的控制、数据的传输以及I/O接口等功能,故选用高端NIOS II/f内核以满足所要求的功能,其约占1400—1800个逻辑单元,3个M4K RAM块,可以用来增加指令缓存。NIOS II/f的最好性能可达到101 MIPS将NIOS II处理器的复位地址设置为cfi_flash,其为非易失存储器Flash。将NIOS II处理器的异常地址设置为sdram_0,其为掉电易失的存储器SDRAM在“JTAG Debug Module”标签下选择Level 1,此时占用逻辑资源最少,为300—400逻辑单元,2个M4K RAM块。 网络模块选用DAVICOM半导体公司的DM9000A DM9000A集成了带有通用处理器接口的MAC和PHY,支持100Base-T应用,带有auto-MDIX,支持10Mb/s和100Mb/s的全双工操作DM9000A既可支持8位处理器,也可支持16位处理器接口。DM9000A完全兼容IEEE 802.3u规范,支持IP/ TCP/UDP求和检验,支持半双工模式背压数据流控。 DM9000A内部功能框罔如图4所示,左边带有AUTO—MDIX的收发器提供RJ45的接口,中间为MAC,右边则为处理器接口。处理器可通过这个接口实现对DM9000A的控制,具体引脚包括: nRD读命令; nWR写命令; nCS/nAEN片选; SD0~SD7数据总线(低8位); SD8~SD15数据总线(高8位),在16位模式下才有用; CMD命令类型。低电平时,读写INDEX口;高电平时,读写DATA口; INT中断请求。 SoPC的标准组件库中并不包含网络控制器DM9000A,在这里需要添加自定义组件。 在SoPC Builder中,用C

文档评论(0)

nnh91 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档