用于实现总线连接的方法及系统技术方案

技术编号:6988789 阅读:203 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开用于实现总线连接的方法及系统,该方法包括:主模块缓冲器接收主模块发起的先进可扩展接口总线的传输请求;所述主模块缓冲器根据所述传输请求写入信息;当所述主模块缓冲器中有信息时,所述主模块缓冲器向从模块缓冲器发送所述信息;之后,所述信息被所述从模块缓冲器发送给从模块。采用本发明专利技术提供的用于实现总线连接的方法及系统,在主模块和从模块之间采用了主模块缓冲器和从模块缓冲器,使得主模块和从模块之间的信号输入/输出都是寄存器相连,从而最大程度的保证总线连接的时序优化。

【技术实现步骤摘要】

本专利技术涉及用于实现总线连接的方法及系统
技术介绍
随着集成技术的发展和应用领域的不断扩大,不同类型的集成电路相互镶嵌,形 成了各种嵌入式系统(Embedded System, ES)和片上系统(System On Chip, SOC)。其中, SOC指的是在单个芯片上集成一个完整的系统,对所有或部分必要的电子电路进行包分组 的技术。所谓完整的系统一般包括中央处理器(CPU)、存储器、以及外围电路等。SOC之间的互联对于总线要求也相应的较高,由于先进可扩展接口(Advanced extensible Interface, AXI)总线是一种读写分开,地址和数据分开的效率非常高的高级 总线互联技术,因此,一般SOC之间的互联会采用AXI总线。然而,有时需要在芯片之间或者 芯片与现场可编程门阵列(Field-Programmable Gate Array, FPGA)之间采用AXI总线进 行连接,由于芯片的可编程模拟器件(Programmable Analog Device,PAD)和FPGA的PAD本 身的延迟就比较大,在这种情况下,采用AXI总线连接的时候,其运行的频率不可能很高, 时序不能满足高频率运行的要求。
技术实现思路
本专利技术的目的在于提供用于实现总线连接的方法及系统,克服总线连接时的时序 问题,正确实现数据交互。本专利技术提供用于实现总线连接的方法,该方法包括主模块缓冲器接收主模块发起的先进可扩展接口总线的传输请求;所述主模块缓冲器根据所述传输请求写入信息;当所述主模块缓冲器中有信息时,所述主模块缓冲器向从模块缓冲器发送所述信 息;之后,所述信息被所述从模块缓冲器发送给从模块。进一步的,所述主模块缓冲器向从模块缓冲器发送所述信息包括当所述从模块缓冲器的空位大于预定值时,所述主模块缓冲器向所述从模块缓冲 器写入所述信息。进一步的,所述主模块缓冲器向从模块缓冲器发送所述信息包括所述主模块缓冲器向所述从模块缓冲器发送有效的握手信号;同时,所述主模块缓冲器将所述信息发送出去。进一步的,所述主模块缓冲器向从模块缓冲器发送所述信息还包括所述从模块缓冲器向所述主模块缓冲器反馈握手信号。进一步的,所述主模块缓冲器向从模块缓冲器发送所述信息还包括所述主模块缓冲器将发送的有效的握手信号和所述从模块缓冲器反馈的握手信 号进行逻辑与,得到新的握手信号;所述主模块缓冲器将所述新的握手信号发送给所述从模块缓冲器。本专利技术还提供用于实现总线连接的系统,该系统的各模块之间采用先进可扩展接 口总线连接,该系统包括主模块,用于发起先进可扩展接口总线的传输请求;主模块缓冲器,用于所述接收主模块发起的先进可扩展接口总线的传输请求,写 入信息;从模块缓冲器,用于接收所述主模块缓冲器发送的所述信息;从模块,用于接收所述从模块缓冲器发送的所述信息。进一步的,所述主模块缓冲器包括写入单元,用于根据所述传输请求写入信息;发送单元,用于向所述从模块缓冲器发送所述信息。进一步的,所述主模块缓冲器还包括判断单元,用于判断所述从模块缓冲器的空位是否大于预定值;所述发送单元,还用于当所述从模块缓冲器的空位大于预定值时,向所述从模块 缓冲器写入所述信息。进一步的,所述主模块缓冲器还包括握手单元,用于向所述从模块缓冲器发送有效的握手信号。进一步的,所述主模块缓冲器还包括反馈单元,用于接收所述从模块缓冲器的反馈握手信号。进一步的,所述主模块缓冲器还包括计算单元,用于将所述握手单元的握手信号和所述反馈单元接收的反馈握手信号 进行逻辑与运算,作为新的握手信号,发送给所述从模块缓冲器。采用本专利技术提供的用于实现总线连接的方法及系统,在主模块和从模块之间采用 了主模块缓冲器和从模块缓冲器,使得主模块和从模块之间的信号输入/输出都是寄存器 相连,从而最大程度的保证总线连接的时序优化。进一步的,采用了预发机制,当从模块缓冲器的空位大于预定值时,才可以接收数 据,即,在从模块缓冲器还有部分空位的时候就停止接收数据,从而避免由于延时造成的时 序问题,实现数据的正确交互。更进一步的,采用了携带反馈机制,主模块缓冲器发出的握手信号不仅仅是由主 模块缓冲器发出,还与从模块缓冲器反馈的握手信号进行了逻辑与运算,从而根据反馈的 信号对于主模块缓冲器发出的握手信号进行修正,保证数据的正确传输。附图说明图1示出普通AXI总线连接方式;图2示出普通AXI总线在时序路径过长时候的错误交互;图3示出本专利技术实施例中实现总线连接方法的流程示意图;图4示出本专利技术实施例中带先入先出队列(First Input First Output, FIFO)缓 冲的AXI总线连接;图5示出本专利技术实施例中带FIFO缓冲的AXI总线连接的出错情况;图6示出本专利技术实施例中带FIFO缓冲和预发模式的非标准AXI总线连接;图7示出本专利技术实施例中非标准AXI总线的时序;图8示出本专利技术实施例中FIFO的预发模式;图9示出本专利技术实施例中实现总线连接系统的结构示意图。具体实施例方式下面结合附图对本专利技术的具体实施方式做详细阐述。图1所示是现有的AXI总线 的连接方式。其主模块(AXI MASTER)和从模块(AXI SLAVE)直接相连接,在这种连接情况 下。如果两个芯片或者两个FPGA以及芯片与FPGA之间需要用AXI总线来进行连接,那么 PAD以及走线的延迟(delay)加起来可能会造成超过一个周期的delay。如果主模块和从 模块之间的时序路径超过一个周期,就会出现图2中出现的错误情况。由于连接上出现超 过一个周期的delay,在主模块端有效的valid信号在第一个周期发出,到从模块端,要到 第二个周期才会被采集到。从模块端接收到valid有效信号,将ready信号置为高,然后反 馈到主模块端,需要到第三个周期才能被主模块接收到。在主模块端,valid信号就会一直 维持到第三个周期才会结束,而在从模块端,valid信号会维持到第四个周期才会结束。这 样,从模块端会多接收到两个周期的valid信号,这两个信号可能造成错误的交互操作。为 了克服以上在高频情况下,芯片之间或者芯片与FPGA之间以及FPGA之间采用AXI总线连 接时候的时序问题,本专利技术提出用于实现总线连接的方法,是一种基于AXI协议但不同于 AXI协议的总线连接方法,适用于高频接口上使用。实现本专利技术的总线连接的方法,采用以 下四个模块分别是AXI的主模块(MASTER)、从模块(SLAVE)、主模块FIFO缓冲器和从模块 FIFO缓冲器。其中主模块主要用于发起AXI的传输请求,包括读请求和写请求。从模块为 接受方,受理读请求和写请求。具体的,请参见图3,该方法提出FIFO缓冲机制,包括301、主模块缓冲器接收主模块发起的AXI的传输请求;302、主模块缓冲器根据传输请求写入信息;303、当主模块缓冲器中有信息时,主模块缓冲器向从模块缓冲器发送信息;304、信息被从模块缓冲器发送给从模块。其中,采用的主模块FIFO缓冲器和从模块FIFO缓冲器都是总线缓冲单元,这两个 缓冲单元主要目的是为了保证片间的信号的输入和输出都是寄存器相连,从而保证最大程 度的时序优化。进一步的,本方法还提出预发机制,当从模块缓冲器的空位大于预定值时,主模块 缓冲器向从模块缓冲器写入信息本文档来自技高网...

【技术保护点】
1.用于实现总线连接的方法,其特征在于,该方法包括:主模块缓冲器接收主模块发起的先进可扩展接口总线的传输请求;所述主模块缓冲器根据所述传输请求写入信息;当所述主模块缓冲器中有信息时,所述主模块缓冲器向从模块缓冲器发送所述信息;之后,所述信息被所述从模块缓冲器发送给从模块。

【技术特征摘要】

【专利技术属性】
技术研发人员:方应龙曾代兵林晓涛
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94

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

1