基于FPGA的数据无阻塞交换设计
0 引言
随着FPGA和大规模集成电路的发展,数据交换的实现有了新的方法。在该设计中,FPGA完成串口数据信号(TXD、RXD)的交换,专用的时隙交换芯片完成串口握手线(RTS、CTS、DTR、DSR、DCD、RI)的交换。内部有硬件冲突监测功能,能够自动检测到2个终端同时连接到同一个信道或2个信道连接到同一个终端,并自动将旧的连接状态拆除,建立新的链路。这样就使原来的连接终端进入空闲状态,保证终端和信道时间轴上的无缝隙切换。通过判断RI的状态,它还可以监视信道DCE的状态,判断出信道是否有请求,并上报给监控。
技术指标如下:①交换规模:40×40×8;②最大切换建立时间:200μs;③握手线最大传输延时:125μs;④数据线最大传输延时:小于1μs;⑤串行数据速率:8.192 Mbps。
1 硬件实现
数据交换矩阵在主控单元的控制下,将终端数据端口和信道数据端口进行物理交换。交换矩阵包括DTE端口40个(包含24个DTE接口,16个DTE/DCE可配置接口),DCE端口40个(包含24个DCE接口,16个DTE/DCE可配置接口)。数据交换矩阵是由数据线交换矩阵(TXD、RXD)、握手线交换矩阵(RTS、CTS、DTR、DSR、DCD、RI)和交换控制模块(单片机实现)组成。交换控制模块管理数据线和握手线2个交换模块,连续对2个模块进行操作。数据线交换由可编程逻辑器件完成,握手线交换由时隙交换器件完成。
数据线交换模块由FPGA实现,选用30万门的可编程逻辑器件实现,其资源已经满足了数据线路交换的需求,并可以再扩展。握手线交换模块选用TSI(TIME SLOT INTERCHANGE)芯片MT90820,具有16对收发数据流,最大可实现2 048×2 048通道无阻塞交换。交换矩阵的控制单元选用通用的8051系列单片机。CPLD_1、CPLD_2和CPLD_3选用MAX7064,可以接4组串口握手线(CPLD_1、CPLD_2和CPLD_3的功能也可以用一个较大资源的FPGA来实现,这里选用小的CPLD来完成)。功能如图1所示。
随着FPGA和大规模集成电路的发展,数据交换的实现有了新的方法。在该设计中,FPGA完成串口数据信号(TXD、RXD)的交换,专用的时隙交换芯片完成串口握手线(RTS、CTS、DTR、DSR、DCD、RI)的交换。内部有硬件冲突监测功能,能够自动检测到2个终端同时连接到同一个信道或2个信道连接到同一个终端,并自动将旧的连接状态拆除,建立新的链路。这样就使原来的连接终端进入空闲状态,保证终端和信道时间轴上的无缝隙切换。通过判断RI的状态,它还可以监视信道DCE的状态,判断出信道是否有请求,并上报给监控。
技术指标如下:①交换规模:40×40×8;②最大切换建立时间:200μs;③握手线最大传输延时:125μs;④数据线最大传输延时:小于1μs;⑤串行数据速率:8.192 Mbps。
1 硬件实现
数据交换矩阵在主控单元的控制下,将终端数据端口和信道数据端口进行物理交换。交换矩阵包括DTE端口40个(包含24个DTE接口,16个DTE/DCE可配置接口),DCE端口40个(包含24个DCE接口,16个DTE/DCE可配置接口)。数据交换矩阵是由数据线交换矩阵(TXD、RXD)、握手线交换矩阵(RTS、CTS、DTR、DSR、DCD、RI)和交换控制模块(单片机实现)组成。交换控制模块管理数据线和握手线2个交换模块,连续对2个模块进行操作。数据线交换由可编程逻辑器件完成,握手线交换由时隙交换器件完成。
数据线交换模块由FPGA实现,选用30万门的可编程逻辑器件实现,其资源已经满足了数据线路交换的需求,并可以再扩展。握手线交换模块选用TSI(TIME SLOT INTERCHANGE)芯片MT90820,具有16对收发数据流,最大可实现2 048×2 048通道无阻塞交换。交换矩阵的控制单元选用通用的8051系列单片机。CPLD_1、CPLD_2和CPLD_3选用MAX7064,可以接4组串口握手线(CPLD_1、CPLD_2和CPLD_3的功能也可以用一个较大资源的FPGA来实现,这里选用小的CPLD来完成)。功能如图1所示。

文章出处:作者:白海斌,邵淼青
