DRAM总线的其他用途 - 分析宽带系统互联中的串行选择
时间:03-15
来源:互联网
点击:
串行选择
对于子系统内部链路,由于带宽需求增大,并行总线频率和距离折中的方法带来了更严重的问题。在某些点,需要给出一些解决方法。Altera工程师Kaushik Mittra指出,“随着带宽的增大,在某些点,您不得不放弃并行总线。长度也是一个因素。如果一条宽总线的运行频率非常高,在大约40英寸时,走线之间的时序偏移占据了大部分总线周期时间。这根本无法工作。”我们在图2中描述了这一点。
图2.在快速并行总线上,比特间偏移会导致无法正常工作
通过使用足够高的时钟频率,非常注意阻抗匹配、走线匹配,以及供电方法,在较短的芯片至芯片连接上,同步并行总线可实现较大的带宽。如果电路板布板被改变了,在稍长的距离上,相同的设计就有可能失败。
而解决方法是高速串行链路。采用商用器件,单条通路工作速率可以高达28 Gbps,因此几条通路可以承载速率很高的数据流,作为高速宽带并行总线使用。由于每一条通路都是独立的,其时钟藏在数据流中,因此,不需要处理偏移问题,极大地简化了布线问题。而且,正如Altera现场应用工程师Susannah Martin所指出的,即使是并行总线能够工作在相似的环境下,几条串行通路的引脚和电路板成本要比同等并行总线低得多。
好在您所需要的高速串行互联硬件已经由您选择的SoC提供了。很多ASSP甚至是某些高级MCU都有1 Gbps以太网(GbE)或者10GbE端口,在某些情况下,还有PCIe端口,所有这些都可以用在芯片至芯片应用中。即使是低端FPGA现在都有通用多千兆位收发器,您可以定制这些收发器以满足您的链路需求。而且,Mittra指出,某些芯片包括了芯片至芯片串行链路,符合特殊应用环境的标准要求。一个例子是网络环境下的Interlaken。
延时问题
在串行链路上承载子系统之间的宽带数据流有很多优势。Martin指出,除了上面提到的低成本,还能够大幅度降低功耗。但是也有一个问题。Martin提示说,与直接并行连接相比,消息排队、串化和传输,最终在远端解串化和重新构建消息这一过程会显著增加端到端延时。在某些系统中,可能需要重新组织逻辑以解决这一延时问题。
这些问题并不意味着您在彼此异步的子系统之间只能使用串行连接。链路的最大端到端延时只要在系统总时序要求范围内,您就可以使用串行链路来实现子系统之间的传输。您的确需要使用某些可靠的方法在远端重新同步数据,但是这一问题与您使用其他的时钟域交叉方法完全不同。实际上,如果需要,通过仔细的设计,您甚至可以使用状态机内部的串行链路。
这样,还带来了另一种可能性。目前为止,我们已经讨论了采用串行链路来替代并行总线。但是,您只要仔细的理解了时序问题,也可以将一组独立的异步I/O引脚汇集成串行链路。实际上,某些基于FPGA的逻辑仿真系统使用了这一方法来划分两个或者多个内部FPGA之间的逻辑云。
另一种解决方案
在以供应商设计的ASSP和MCU为主的环境下,系统互联体系结构的范围似乎已经规定好了。但实际上,作为一名系统设计人员,您的确还很大的自由度。您当然可以选择您所设计好的芯片。一旦您确定使用SoC,您可以重新使用芯片提供的I/O,根据系统需求来使用它们,而不是限于芯片设计人员所提供的使用方法。您还可以选择使用可编程逻辑器件,完全控制互联体系结构。
通过这种自由选择,随着子系统之间链路带宽的增大,多千兆位串行互联将会扮演越来越重要的角色。在很多情况下,SoC已经有了收发器,FPGA当然也有。还有可靠的信号完整性、成本和功耗优势。采用一些几乎封装好的串行链路布板,最终的电路板将多层结构的布板难题变为相对简单的设计。在一些高性能应用中,高速串行链路I/O已经替代了并行总线,未来的应用会更加广泛。
对于子系统内部链路,由于带宽需求增大,并行总线频率和距离折中的方法带来了更严重的问题。在某些点,需要给出一些解决方法。Altera工程师Kaushik Mittra指出,“随着带宽的增大,在某些点,您不得不放弃并行总线。长度也是一个因素。如果一条宽总线的运行频率非常高,在大约40英寸时,走线之间的时序偏移占据了大部分总线周期时间。这根本无法工作。”我们在图2中描述了这一点。
图2.在快速并行总线上,比特间偏移会导致无法正常工作
通过使用足够高的时钟频率,非常注意阻抗匹配、走线匹配,以及供电方法,在较短的芯片至芯片连接上,同步并行总线可实现较大的带宽。如果电路板布板被改变了,在稍长的距离上,相同的设计就有可能失败。
而解决方法是高速串行链路。采用商用器件,单条通路工作速率可以高达28 Gbps,因此几条通路可以承载速率很高的数据流,作为高速宽带并行总线使用。由于每一条通路都是独立的,其时钟藏在数据流中,因此,不需要处理偏移问题,极大地简化了布线问题。而且,正如Altera现场应用工程师Susannah Martin所指出的,即使是并行总线能够工作在相似的环境下,几条串行通路的引脚和电路板成本要比同等并行总线低得多。
好在您所需要的高速串行互联硬件已经由您选择的SoC提供了。很多ASSP甚至是某些高级MCU都有1 Gbps以太网(GbE)或者10GbE端口,在某些情况下,还有PCIe端口,所有这些都可以用在芯片至芯片应用中。即使是低端FPGA现在都有通用多千兆位收发器,您可以定制这些收发器以满足您的链路需求。而且,Mittra指出,某些芯片包括了芯片至芯片串行链路,符合特殊应用环境的标准要求。一个例子是网络环境下的Interlaken。
延时问题
在串行链路上承载子系统之间的宽带数据流有很多优势。Martin指出,除了上面提到的低成本,还能够大幅度降低功耗。但是也有一个问题。Martin提示说,与直接并行连接相比,消息排队、串化和传输,最终在远端解串化和重新构建消息这一过程会显著增加端到端延时。在某些系统中,可能需要重新组织逻辑以解决这一延时问题。
这些问题并不意味着您在彼此异步的子系统之间只能使用串行连接。链路的最大端到端延时只要在系统总时序要求范围内,您就可以使用串行链路来实现子系统之间的传输。您的确需要使用某些可靠的方法在远端重新同步数据,但是这一问题与您使用其他的时钟域交叉方法完全不同。实际上,如果需要,通过仔细的设计,您甚至可以使用状态机内部的串行链路。
这样,还带来了另一种可能性。目前为止,我们已经讨论了采用串行链路来替代并行总线。但是,您只要仔细的理解了时序问题,也可以将一组独立的异步I/O引脚汇集成串行链路。实际上,某些基于FPGA的逻辑仿真系统使用了这一方法来划分两个或者多个内部FPGA之间的逻辑云。
另一种解决方案
在以供应商设计的ASSP和MCU为主的环境下,系统互联体系结构的范围似乎已经规定好了。但实际上,作为一名系统设计人员,您的确还很大的自由度。您当然可以选择您所设计好的芯片。一旦您确定使用SoC,您可以重新使用芯片提供的I/O,根据系统需求来使用它们,而不是限于芯片设计人员所提供的使用方法。您还可以选择使用可编程逻辑器件,完全控制互联体系结构。
通过这种自由选择,随着子系统之间链路带宽的增大,多千兆位串行互联将会扮演越来越重要的角色。在很多情况下,SoC已经有了收发器,FPGA当然也有。还有可靠的信号完整性、成本和功耗优势。采用一些几乎封装好的串行链路布板,最终的电路板将多层结构的布板难题变为相对简单的设计。在一些高性能应用中,高速串行链路I/O已经替代了并行总线,未来的应用会更加广泛。
Altera 电路 USB 总线 SoC 电压 FPGA MCU ADC 电阻 仿真 收发器 相关文章:
- G.723.1在DSP数字对讲机基带系统中的应用(01-14)
- 基于FPGA的无线同播频率校准装置的设计(03-11)
- 利用串行RapidIO交换机设计模块化无线基础系统(03-12)
- 基于CAN核的四冗余通信板设计与仿真(03-18)
- 基于FPGA实现DSP与Rapid IO网络互联(04-13)
- 基于FPGA的嵌入式系统USB接口设计(04-20)