没有合适的资源?快使用搜索试试~ 我知道了~
基于FPGA的多节点1553B总线协议处理器的实现
19 下载量 102 浏览量
2020-10-16
19:04:52
上传
评论
收藏 576KB PDF 举报
温馨提示
试读
4页
研究设计了一种多节点的1553B总线协议处理器,可以模拟整套1553B总线系统,既可以作为测试设备,也可作为总线上的多个节点在实际应用中使用。针对总线协议处理器逻辑与存储资源占用高、难以单片实现的问题,提出了多核MIMD架构的实现思路,有效地降低了逻辑资源的使用量,使其可以在单片FPGA上实现。基于软硬件融合的理念,通过自定义专用指令集增加指令并行度来提高指令执行的效率,增强了系统的实时性,使其可以在低频时钟下运行,从而降低了系统的功耗。
资源推荐
资源详情
资源评论
基于基于FPGA的多节点的多节点1553B总线协议处理器的实现总线协议处理器的实现
研究设计了一种多节点的1553B总线协议处理器,可以模拟整套1553B总线系统,既可以作为测试设备,也可作
为总线上的多个节点在实际应用中使用。针对总线协议处理器逻辑与存储资源占用高、难以单片实现的问题,
提出了多核MIMD架构的实现思路,有效地降低了逻辑资源的使用量,使其可以在单片FPGA上实现。基于软硬
件融合的理念,通过自定义专用指令集增加指令并行度来提高指令执行的效率,增强了系统的实时性,使其可
以在低频时钟下运行,从而降低了系统的功耗。
潘滨,周昕杰,罗静
(中国电子科技集团公司第五十八研究所, 江苏 无锡 214062)
摘要摘要:研究设计了一种多节点的
关键词关键词:1553B总线;多核;MIMD;FPGA
0引言引言
1553B总线是一种广泛应用的军用总线,它具有异步操作、时钟自对准、数据传输可靠性高等优点[1]。目前,国内科
研院所已经完成了总线协议处理器的国产化,成功研制了多款单节点总线协议处理器。但在用于部分特殊应用和总线测试系统
的多节点协议处理器方面,国内尚未有相关的研究文献。这一方面由于相比单节点处理器,多节点处理器需求量不大;另一方
面由于多节点处理器需要的逻辑与存储资源远高于单节点处理器,实现难度很大,国外同类产品也多是以较大规模的板卡形式
实现,而未能将其集成到单片中[2]。
随着集成电路国产化的范围日益扩大,研制一种单片/单板实现的多节点协议处理器是必然要求。本文将以一种多核
MIMD(多指令多数据)的架构在单片FPGA上实现多节点总线协议处理器,这一设计思路也可以转换到ASIC设计上。
1总体思路总体思路
研究以DDC公司的BU61580型总线协议处理器作为参考范本,功能上实现1个总线控制器、31个总线终端、1个总线监视
器。设计为在外部接口时序上与BU61580兼容,以方便现有软件的移植。
1553B总线协议处理器可以分为逻辑和存储两大核心部分[3]。1553B总线的设计紧贴应用,功能繁杂,逻辑资源使用
量较大。同时,总线上每个节点至少4 K字的存储容量需要大量的存储资源。若采用单节点协议处理器复制32份的方式来实
现,势必耗费大量资源。这就要求设计一种高效简洁的架构,最大程度地复用相似逻辑来减少资源占用。
通过分析总线的事务和总线各节点的行为模型,发现这样两个特性:(1)相比于协议处理器的速度,总线上的数据传输
速率是很慢的,即使依次处理各节点,也不会影响总线事务的正常运行;(2)不同的节点,在对总线事务的处理上,处理的
过程基本是相同的,区别仅在于配置寄存器的不同配置值而产生的细小差异。若采用微控制器来执行指令实现总线上的事务处
理功能,就可以复用大部分的逻辑资源,而对于每个节点的不同配置而产生的细节差异,可以用SFR(特殊功能寄存器)的方
式实现[4]。这样,既达到了压缩逻辑规模的目的,又保证了不同节点独立配置的能力。
2架构设计架构设计
在架构设计中,重点关注简洁性和实时性。简洁的架构能够减少资源的使用量,提高代码的可维护性。实时性能够尽可能
高效快速地完成总线事务,从而实现更高的性能。
2.1MIMD指令集设计指令集设计
首先考虑微控制器核的指令集的设计。将原本并行运行的硬逻辑功能改为串行执行的指令,一个重要的问题就是保证系统
的实时性。
一种思路是采用常规指令集并使用流水线实现微控制器,这样在一个周期内能够执行更多的指令。但这只是提高了指令执
行的速度,并不能改变串行的本质,而且在协议处理器中,微控制器不应该是最复杂的部分,调试工作的重点应该放在与协议
密切相关的具体功能模块上,流水线的控制逻辑复杂,容易引入bug干扰其他模块的调试,这会给设计工作带来很大不便。
另一个思路是采用MIMD(多指令多数据)架构。在每个周期内,同时执行多条指令,处理多个数据,这是在事务层面的
并行化,通过分配指令位域,在一条指令中实现多个不同的功能,可以大大提高指令执行的效率,增强系统的性能。
将32 bit宽度的指令分为4个位域,分别是通用指令INS、特殊功能寄存器指令SFRINS、扩展指令EXT和条件判断码
COND。通用指令是微控制器的指令,完成总线事务的基本操作;特殊功能寄存器指令针对总线协议处理器中的寄存器设计,
实现与总线事务处理流程无关但与处理细节相关的功能;扩展指令用于实现地址的重映射和设备的选择;将需要多步逻辑运算
才能得到结果的条件判断通过硬逻辑实现,供程序根据条件是否成立来选择是否执行该条指令。图1给出了指令编码的位域定
义。
资源评论
weixin_38739164
- 粉丝: 8
- 资源: 951
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功