微控制器的FPGA接口的设计与实现方案介绍

网友投稿 277 2022-11-19

微控制器的FPGA接口的设计与实现方案介绍

图2 PIO向FPGA 写数据 假设t2(FPGA的等待响应时间)也大约是25个 AHB周期,系统大约需要85个AHB周期从FPGA进行读操作(图3)。

图4 EBI-SMC接口 图5显示了EBI读SMC存储器接口的标准时间,而图6显示了其标准写周期。

图5 EBI-SMC读周期

图6 EBI-SMC写周期 注意:这些时间波形是默认的SMC规格。所有可编程参数显示都基于外部设备的速度。 EBI的接口速度比PIO块,是因为EBI有其自己的I / O,且大部分的信号是并行的。但是,如果外部设备很慢或引入等待状态, EBI的速度优势可能会受到损害。 跟PIO接口一样, EBI接口必须由处理器或其他的主AHB来驱动。因此,实现带宽的EBI的还依赖于软件,并取决于它可以利用多少处理器时间。当然,可能受到带宽的限制。这又可能限制了嵌入式处理器旨在实现的其他系统功能。 在MCU中使用专用的FPGA接口 基于ARM7的微控制器提供一个特殊接口,它允许FPGA通过DMA存取2个主AHB和四个副AHB直接接入MCU的内部AHB总线。在启动时,一个外加的副AHB可用于重新映射ROM,它通过使用外部ZBT RAM具有PROM重新映射功能的FPGA来实现。 该接口还提供了FPGA接入14个副先进外围总线(APB)、两个全双工的DMA通道、多达13个中断优先编码(IRQs)、两个DMA传输的非编码IRQs和32位共享可编程I/O。该FPGA接口通过微控制器接入预先定义的主副AHB(图7)。

图8 ARM7与FPGA接口 该并串行转换器模块能处理所有的AHB和串行通讯。它由一个有限状态机(FSM)和移位器组成。有限状态机解读AHB,并与AHB对话。当主AHB初始化一个传输(读/写操作)时,FSM通过使用遵守的AHB协议的HREADY来引入等待状态。FSM直接根据AHB时钟和串行时钟之间的比例来自动处理引入等待周期的数量。比例越小,引入的等待周期就越少。 FSM控制移位器,负责处理所有微控制器和FPGA之间的数据转移(序列化),每周期传输在2个bits的数据。如果串行时钟速率为100兆赫,移位器的传输速度为200 Mbps。 这些并串行转换器模块处理主口A / B、副口A / B和副口C/D,通过FPGA 内的“模式”模块在复位时程序化,使可用的I / O数量尽可能多。设计者可以为一个单一的串行配置选择使用所有的10个I / O线。在这种情况下,串行模块将只处理一个的AHB接口。例如,如果用户仅想使用AHB主口A,串行模块将所有主口设定为“串行单配置” 。这种配置将改善转换器之间的传输速度,从而加快了微控制器和FPGA之间的传输速度(图9)。

图9 串行单配置 另一种选择是配置串行模块为“双串行配置”使其能处理2个AHB接口,2个AHB (主/副)之间共用10个I / O线。在这种情况下,微控制器和FPGA之间的数据传输速率较低,但数据带宽更高,因为有2个AHB接口可用。双配置给另一个AHB接口重新使用一半以上的专用I / O(图10)。

表1 模式位 一个供应商提供的模板可用于FPGA接口的主从AHB实例。提供具体的例子。在FPGA模板,一个模块所谓的“自定义MP”不费力的整合AHB / APB外设。因为系统将使用FPGA逻辑,此模板让设计师使用迁移的两片MCU加FPGA毫不费力的实现单芯片可定制微控制器。 外部ZBT-RAM和NVM/SDRAM/SRAM是可选的,它基于应用程序和系统要求。 设计人员还可以在FPGA添加非AHB逻辑,为添加与AHB总线无关的功能提供了灵活性。 在单一配置模式下,单一AHB接口从微控制器传输所有的AHB信息到FPGA需要4个AHB时钟周期,反之亦然(图11 ) 。在双配置模式下,双AHB接口从微控制器传输所有的AHB信息到FPGA需要8个AHB时钟周期,反之亦然。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:深入解析kafka 架构原理
下一篇:Hadoop——分布式计算框架MapReduce
相关文章

 发表评论

暂时没有评论,来抢沙发吧~