- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM和FPGA通信接口板设计
ARM和FPGA通信接口板设计
摘要: 介绍基于双口RAM的ARM与FPGA通信接口板电路设计,以及驱动程序中的虚拟网卡驱动编制和乒乓操作机制及流控机制。
关键词: 双口RAM;乒乓操作;流控机制
中图分类号:TP3文献标识码:A文章编号:1671-7597(2011)0510044-02
1 概述
某项目中需设计一块通信接口板,实现ARM 2440核心板和FPGA信号处理板之间的通信,因该板交换速率达到10Mbps,要求不能频繁中断ARM处理器,且具备流控机制,设计上有一定难度,基于双口RAM设计了乒乓操作机制和流控机制,有效地降低了系统负荷。
2 电路及驱动设计
2.1 接口板电路设计
接口板基于两片双口RAM芯片IDT CY7C007AV实现,电路示意图如图1所示。每片CY7C007AV有8KB的存储空间,12位地址总线,8位数据总线。为提高端口读写效率,FPGA对ARM发送时采用乒乓操作方式,ARM对FPGA发送时采用流控方式。
由于核心板扩展槽的地址总线和数据总线位宽限制,采用两片双口RAM,一片供FPGA向ARM发送数据用,另一片供ARM向FPGA发送数据用,以下分别建成上部双口RAM和下部双口RAM。上部双口RAM分为两部分,供FPGA采用乒乓操作方式写入数据,FPGA写完上半部后通过在EINT5上产生上升沿中断通知ARM,写完下半部后通过通过在EINT6上产生上升沿中断通知ARM。下部双口RAM供ARM向FPGA写入数据,其接线方式与上部双口RAM类似。
两块双口RAM的电路采用对称方式,其电路如图2所示。两片双口RAM可以互换,下部双口RAM也可供FPGA写入数据,而ARM则写入上部双口RAM。在实际测试中,两种方式均测试过。
ARM与双口RAM连接时,采用SRAM时序,为避免/减弱二次反射,ARM与总线驱动之间加33欧的串联匹配电阻,匹配电阻靠近扩展槽的近端。FPGA端对双口RAM的读写也采用SRAM时序,在与双口RAM连接时均串了33欧姆的匹配电阻。
由于核心板上ARM处理器距离接口板较远,接近十厘米,且核心板为四层板,总线驱动能力较弱,在ARM处理器和双口RAM之间添加四片总线驱动芯片,除增加总线驱动能力外还可通过关断总线驱动芯片,避免接口板噪声干扰核心板。
ARM的8位数据线通过245总线驱动芯片引出,其方向由LnOE读信号控制,地址总线则采用244和541芯片实现。ARM读时,数据由245流向ARM侧,ARM写时,数据由245流向双口RAM一侧。中断信号线连接在244芯片上,数据线连接在245芯片上,二者均采用Ngcs4作为片选线,在ARM一端将Ngcs4定义为GPIO,拉低则选中两块芯片。245驱动接口电路如图3所示。
2.2 接口板驱动设计
1)虚拟网卡驱动
由于ARM核心板采用VxWorks操作系统,接口板作为ARM板的外设,驱动程序参照VxWorks下网卡驱动格式编制,称为虚拟网卡驱动。
在实际网卡中,物理层包括曼彻斯特编解码和链路层的CSMA/CD协议,但虚拟网卡无需实现上述功能,物理层的调制和解调交由FPGA信号处理板实现,链路层的接入协议由ARM核心板按组网协议控制收发时机即可。接口板唯一需要实现的是按照VxWorks的网卡驱动格式实现接口板初始化、数据收发和中断控制等操作。
首先,接口板需要初始化板上的两片双口RAM,双口RAM一片被映射到0x8000000,另一片被映射到0均采用SRAM时序,需要配置BWSCON寄存器,BANKCON1和BANKCON2,对应的时序为:Tacs=1,对应1个时钟周期;Tcos=1,对应4个时钟周期;Tacc=1,对应2个时钟周期;Tcoh=1,对应1个时钟周期;Tcah=1,对应1个时钟周期;Tacp=1,对应3个时钟周期。
完成双口RAM初始化后,需要初始化对应的中断线和GPIO线,ARM处理器与PowerPC处理器类似,存在大量的复用信号线,此时需要将EINT5/6/8定义为中断线,而将EINT7定义为GPIO线;同样要将nGCS4/5定义为GPIO线,而nGCS1/2则默认为片选线。
驱动程序参照VxWorks下END Driver规范撰写,对外提供NET_FUNCS结构的接口函数列表,在启动函数中使能设备,挂载中断服务程序;在发送函数中先向双口RAM填写包长字段,而后将整个数据包拷贝入双口RAM。接收函数由中断启动,先读包长,再偏移指针,从双口RAM中读取相应长度的数据。
2)乒乓操作机制
将双口RAM分为上半部和下半部,每部分大小为2048字节。当FPGA将1500字节写完上半部
您可能关注的文档
最近下载
- 北京十三中2025-2026学年上学期初二数学期中考试试卷.doc VIP
- 2025-2026学年初中信息技术(信息科技)第4册泰山版(2018)教学设计合集.docx
- 黑龙江总工会招聘考试试题及答案.doc VIP
- 六年级上册数学第四单元《解决问题的策略—假设》教学课件(苏教版).pptx VIP
- 新形态一体化教材建设的探索与实践.docx VIP
- 人教版二年级数学上册期中学业质量测评卷 (范围:第一单元至第三单元) (含答案).docx VIP
- 中班科学活动动物的家讲课.pptx VIP
- 生产部绩效考核表经典.doc VIP
- 99(03)S203消防水泵接合器安装(2003年局部修改版).pdf VIP
- 2025年高考模考作文:凡事预则立,不预则废.docx VIP
原创力文档


文档评论(0)