一种基于FPGA的EMIF与CAN互转通信方法及系统技术方案

技术编号:37153935 阅读:9 留言:0更新日期:2023-04-06 22:13
本发明专利技术公开了一种基于FPGA的EMIF与CAN互转通信方法及系统,应用于通信领域,方法包括:基于FPGA中预先构建的EMIF总线模块,接收来自微处理器DSP的数据/控制信号;利用所述EMIF总线模块分配EMIF地址总线的不同位,以选通不同的CAN功能以及片选CAN总线的不同SJA1000设备;根据所述EMIF总线模块的读写使能信号发起所述SJA1000设备的读写时序状态;根据所述SJA1000设备的读写时序状态向所述SJA设备的地址/数据总线写入地址信号,并按照所述地址信号写入或读取数据信号。通过本发明专利技术的技术方案,增加了系统的外设可扩展性,也相应增加了系统数据处理能力,提高了系统的适应性、可靠性。性。性。

【技术实现步骤摘要】
一种基于FPGA的EMIF与CAN互转通信方法及系统


[0001]本专利技术涉及通信
,尤其涉及一种基于FPGA的EMIF与CAN互转通信方法以及一种基于FPGA的EMIF与CAN互转通信系统。

技术介绍

[0002]目前,面对日益复杂的功能需求,控制系统要求系统设计具有数据处理速度快、数据吞吐率高、外设丰富等特点,并具有多任务处理功能。
[0003]传统的控制系统通常采用单片机、FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)或者微处理器DSP(Digital Signal Processing,数字信号处理)/ARM(Advanced RISC Machines,ARM处理器)来实现,单片机的处理速度慢,无法满足实时控制系统的要求;FPGA具有很强的灵活性,可以根据实际功能来进行系统配置,可扩展出很多外设接口,但是对数据处理能力较弱;微处理器DSP/ARM虽然对数据处理能力很强,但是外设较少,对于复杂的控制系统就显得力不从心。
[0004]现有技术存在的问题:
[0005]1、单独使用微处理器DSP,对外通信接口有限,难以支撑日益复杂的通信系统。
[0006]2、FPGA拥有较好的并行处理能力,但是数据处理能力还是不及微处理器。

技术实现思路

[0007]针对上述问题,本专利技术提供了一种基于FPGA的EMIF(External Memory Interface,外部存储器接口)与CAN(Controller Area Network,控制器域网)互转通信方法及系统,利用FPGA灵活的逻辑资源可配置特性,将EMIF读写时序转化成SJA1000(一种独立CAN控制器)读写时序,实现EMIF接口与CAN接口互转通信,可以根据实际功能需求适配多路CAN总线的SJA1000设备,提升了微处理器DSP的对外CAN设备的扩展功能,增加了系统的外设可扩展性,也相应增加了系统数据处理能力,提高了系统的适应性、可靠性。
[0008]为实现上述目的,本专利技术提供了一种基于FPGA的EMIF与CAN互转通信方法,包括:
[0009]基于FPGA中预先构建的EMIF总线模块,接收来自微处理器DSP的数据/控制信号;
[0010]利用所述EMIF总线模块分配EMIF地址总线的不同位,以选通不同的CAN功能以及片选CAN总线的不同SJA1000设备;
[0011]根据所述EMIF总线模块的读写使能信号发起所述SJA1000设备的读写时序状态;
[0012]根据所述SJA1000设备的读写时序状态向所述SJA设备的地址/数据总线写入地址信号,并按照所述地址信号写入或读取数据信号。
[0013]在上述技术方案中,优选地,所述利用所述EMIF总线模块分配EMIF地址总线的不同位,以选通不同的CAN功能以及片选CAN总线的不同SJA1000设备的具体过程包括:
[0014]分配所述EMIF地址总线的最高位以选通不同的CAN功能;
[0015]分配所述EMIF地址总线的次高三位以片选CAN总线中多个SJA1000设备中的一个,其中,所述EMIF地址总线的次高三位足够选择8个SJA1000设备中的一个。
[0016]在上述技术方案中,优选地,所述按照所述地址信号写入或读取数据信号的过程中,写入数据信号的具体操作包括:
[0017]先将所述EMIF总线模块的地址总线低8位数据写入所述SJA1000设备的地址/数据总线,同时,将所述SJA1000设备的地址锁存信号拉高,延时预设时间,然后将对应的所述SJA1000设备的地址锁存信号信号拉低,延时预设时间;
[0018]将针对所述SJA1000设备的片选信号拉低,延时预设时间,将所述SJA1000设备的写使能信号拉低,延时预设时间,将所述EMIF地址总线的数据总线低8位数据写入所述SJA1000设备的地址/数据总线,延时预设时间,将所述SJA1000设备的写使能信号拉高,延时预设时间,将对应的所述SJA1000设备的片选信号拉高,完成一次写操作流程。
[0019]在上述技术方案中,优选地,所述按照所述地址信号写入或读取数据信号的过程中,读取数据信号的具体操作包括:
[0020]先将所述EMIF总线模块的地址总线低8位数据写入所述SJA1000设备的地址/数据总线,同时将所述SJA1000设备的地址锁存信号拉高,延时预设时间,然后将所述SJA1000设备的地址锁存信号拉低,延时预设时间,同时将所述SJA1000设备的地址/数据总线信号设置为输入信号,准备接收所述CAN总线的数据;
[0021]将针对所述SJA1000设备的片选信号拉低,延时预设时间,将所述SJA1000设备的读使能信号拉低,延时预设时间,将所述SJA1000设备的地址/数据总线数据赋给所述EMIF总线模块的数据总线低8位,延时预设时间,将所述SJA1000设备的读使能信号拉高,延时预设时间,将对应的所述SJA1000设备的片选信号拉高,完成一次读操作流程。
[0022]本专利技术还提出一种基于FPGA的EMIF与CAN互转通信系统,其特征在于,应用如上述技术方案中任一项公开的基于FPGA的EMIF与CAN互转通信方法,包括:
[0023]EMIF总线模块,预先构建于FPGA中,用于接收来自微处理器DSP的数据/控制信号;
[0024]EMIF转CAN总线模块,用于利用所述EMIF总线模块分配EMIF地址总线的不同位,以选通不同的CAN功能以及片选CAN总线的不同SJA1000设备;
[0025]所述EMIF转CAN总线模块还用于根据所述EMIF总线模块的读写使能信号发起所述SJA1000设备的读写时序状态;
[0026]所述EMIF转CAN总线模块还用于根据所述SJA1000设备的读写时序状态向所述SJA设备的地址/数据总线写入地址信号,并按照所述地址信号写入或读取数据信号。
[0027]在上述技术方案中,优选地,所述EMIF转CAN总线模块具体用于:
[0028]分配所述EMIF地址总线的最高位以选通不同的CAN功能;
[0029]分配所述EMIF地址总线的次高三位以片选CAN总线中多个SJA1000设备中的一个,其中,所述EMIF地址总线的次高三位足够选择8个SJA1000设备中的一个。
[0030]在上述技术方案中,优选地,所述EMIF转CAN总线模块具体用于:
[0031]先将所述EMIF总线模块的地址总线低8位数据写入所述SJA1000设备的地址/数据总线,同时,将所述SJA1000设备的地址锁存信号拉高,延时预设时间,然后将对应的所述SJA1000设备的地址锁存信号信号拉低,延时预设时间;
[0032]将针对所述SJA1000设备的片选信号拉低,延时预设时间,将所述SJA1000设备的写使能信号拉低,延时预设时间,将所述EMIF地址总线的数据总线低8位数据写入所述SJA1000设备的地本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的EMIF与CAN互转通信方法,其特征在于,包括:基于FPGA中预先构建的EMIF总线模块,接收来自微处理器DSP的数据/控制信号;利用所述EMIF总线模块分配EMIF地址总线的不同位,以选通不同的CAN功能以及片选CAN总线的不同SJA1000设备;根据所述EMIF总线模块的读写使能信号发起所述SJA1000设备的读写时序状态;根据所述SJA1000设备的读写时序状态向所述SJA设备的地址/数据总线写入地址信号,并按照所述地址信号写入或读取数据信号。2.根据权利要求1所述的基于FPGA的EMIF与CAN互转通信方法,其特征在于,所述利用所述EMIF总线模块分配EMIF地址总线的不同位,以选通不同的CAN功能以及片选CAN总线的不同SJA1000设备的具体过程包括:分配所述EMIF地址总线的最高位以选通不同的CAN功能;分配所述EMIF地址总线的次高三位以片选CAN总线中多个SJA1000设备中的一个,其中,所述EMIF地址总线的次高三位足够选择8个SJA1000设备中的一个。3.根据权利要求2所述的基于FPGA的EMIF与CAN互转通信方法,其特征在于,所述按照所述地址信号写入或读取数据信号的过程中,写入数据信号的具体操作包括:先将所述EMIF总线模块的地址总线低8位数据写入所述SJA1000设备的地址/数据总线,同时,将所述SJA1000设备的地址锁存信号拉高,延时预设时间,然后将对应的所述SJA1000设备的地址锁存信号信号拉低,延时预设时间;将针对所述SJA1000设备的片选信号拉低,延时预设时间,将所述SJA1000设备的写使能信号拉低,延时预设时间,将所述EMIF地址总线的数据总线低8位数据写入所述SJA1000设备的地址/数据总线,延时预设时间,将所述SJA1000设备的写使能信号拉高,延时预设时间,将对应的所述SJA1000设备的片选信号拉高,完成一次写操作流程。4.根据权利要求3所述的基于FPGA的EMIF与CAN互转通信方法,其特征在于,所述按照所述地址信号写入或读取数据信号的过程中,读取数据信号的具体操作包括:先将所述EMIF总线模块的地址总线低8位数据写入所述SJA1000设备的地址/数据总线,同时将所述SJA1000设备的地址锁存信号拉高,延时预设时间,然后将所述SJA1000设备的地址锁存信号拉低,延时预设时间,同时将所述SJA1000设备的地址/数据总线信号设置为输入信号,准备接收所述CAN总线的数据;将针对所述SJA1000设备的片选信号拉低,延时预设时间,将所述SJA1000设备的读使能信号拉低,延时预设时间,将所述SJA1000设备的地址/数据总线数据赋给所述EMIF总线模块的数据总线低8位,延时预设时间,将所述SJA1000设备的读使能信号拉高,延时预设时间,将对应的所述SJA1000设备的片选信号拉高,完成一次读操作流程。5.一种基于F...

【专利技术属性】
技术研发人员:田伟龚小进徐元
申请(专利权)人:湖北三江航天红峰控制有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1