积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> CPLD/FPGA >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
基于FPGA的数据无阻塞交换设计
 
作者:白海斌,邵淼青   来源:中电网    点击数:55   更新时间:2008-8-7
您可以添加到网摘 让更多人关注此文章:

    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和CPLD内部的功能都是通过硬件描述语言VHDL实现的。FPGA完成数据信号的交换、传输切换命令、读取DCE信道状态等功能。它模拟了一个Intel的8位总线接口(连接控制单元);一个Motorola的16位总线接口(连接时隙交换芯片),从而进行接口时序的变换。FPGA中的数据交换状态寄存器与相对应握手线交换芯片中的所有寄存器一致,来确保数据线和握手线交换同步。CPLD完成4组串口握手线的串并转换、组帧、DTE/DCE选择等功能。

CPLD_1只能接DTE,每个DTE的6条握手线(2发4收)对应2个8位寄存器、1个发送寄存器、1个接收寄存器。RST/DTR对应发送寄存器的前2位,CTS\DSR\DCD\JI对应接收寄存器的前4位。当有同步信号Syn时(8 kHz),每个发送寄存器串行移位输出数据,4个发送寄存器每隔一帧循环地发送数据,则组成1个每帧为128时隙、128×8位、8.192 Mb/s数据流(STi),送入握手线交换矩阵。DTE0到DTE3依次占用了数据帧中的第0到第3时隙,剩余都空闲。接收数据流过程相反。由握手线交换矩阵送过来固定帧格式的数据流(STo)进入CPLD,通过同步信号Syn提取第0到第3时隙的前4位,放入相应接收寄存器中,再依次对应到各DTE的握手线信号(CTS\DSR\DCD\RI)。这也就是信道(DCE)端口送来的握手信号,从而实现了交换。每个DTE占用的时隙是固定的,每帧中1个DTE占用1个时隙。如DTE0占用第0时隙,以此类推。如图2所示。

CPLD_2只能接DCE,每个DCE的6条握手线(4发2收)也对应2个8位寄存器。CTS\DSR\DCD\RI对应发送寄存器的前4位,RST/DTR对应接收寄存器的前2位。当有同步信号Syn时(8 kHz),每个发送寄存器串行移位输出数据,4个发送寄存器每隔一帧循环地发送数据,则组成1个数据流(STi),送入握手线交换矩阵。DCE0到DCE3依次占用了数据帧中的第0到第3时隙,剩余都空闲。接收数据流过程相反。由握手线交换矩阵送过来固定帧格式的数据流(STo)进入CPLD,通过同步信号Syn提取第0到第3时隙的前4位,放入相应接收寄存器中,再依次对应到各DCE的握手线信号(RTS\DTR)。这也就是终端(DTE)端口送来的握手信号,从而实现了交换。每个DCE占用的时隙是固定的,每帧中1个DCE占用1个时隙。如DCE0占用第0时隙,以此类推。如图3所示。

CPLD_3是CPLD_1和CPLD_2功能的合并。可根据用户的需要,在FPGA的控制下,在CPLD内部通过数据线和握手线的交叉变换可以把DTE变换成DCE,交叉方法类似于通用的RS232数据交叉线的做法。这样做主要为了把DTE当作DCE用。当该DTE端口与其他DTE端口进行交换时,要把它变成DCE端口用;当该DTE端口与DCE端口进行交换时,不进行改变仍然作为DTE端口用。在确定是DTE或是DCE后,可依据CPLD_1和CPLD_2的方法,送人握手线交换矩阵。

2 软件实现

软件实现采用C语言进行模块化设计,主要包括主程序单元、切换单元、查询单元、中断单元、主动上报单元和看门狗。主程序包括数据交换矩阵的初始化配置和各个功能模块的判断选择。切换单元控制FPGA和时隙芯片进行各个端口的切换连接、拆除连接、冲突检测以及强拆连接。中断单元是与监控通信的接口,负责接收监控传来的命令;发送要主动上报的信息。查询单元可以查询各个信道的状态,信道是否有请求(查询信道振铃信号RI是否有效)。主动上报单元是指歼机上报、定时上报,来指示数据交换矩阵是否工作正常。

3 结束语

通过上面设计,可以做成一个单独的模块。DTE接口可以接数字电话、数字传真等数据终端;DCE接口可以接GSM等数据信道;DTE/DCE接口可以根据用户的需求来配置,比如用于计算机扩展的多串口与DTE或DCE的通信。该技术具有硬件平台通用性好、应用范围广以及功能扩展容易等优点。



相关文章
· 测试检验电路时序的FPGA逻辑验证分析仪[24]
· 第三方软件快速实现FPGA嵌入式系统设计[22]
· 再思考FPGA中的同构和异构设计架构[32]
· 基于FPGA的数字秒表的设计[35]
· 基于EASY CORE 芯片组的专用PLC 设计[46]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
Hitachi Elect
中国芯片供需缺口达七成
西班牙研发出视觉鼠标 眨眼
首条OLED生产线昆山投产 
宇航服电子元器件:航天员的“生命保护
美研发出可卷曲太阳能电池
美国研发嗅觉感受器获新进展 
首尔半导体就日亚(NICHIA)专利
MIPS 科技授权国家集成
美国微芯科技公司与安森美半导体拟以每
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
Agilent代理商 0755...
AD代理商 0755-8832...
Actel代理商 0755-8...
嵌入式系统免费网上学习!...
ARM与uClinux...
ARM与uClinux...
NORDIC最新推出nRF24...
网络摄像机技术的调试与测试...
对于新人,为什么公司不再会成为...
[转帖]低价销售各种数码相机,...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网