登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
单片机应用于方案
›
ATM流量控制器IP核的设计和实现
更新自动建库工具PCB Footprint Expert 2023.13 Pro / Library Expert 破解版
ATM流量控制器IP核的设计和实现
[复制链接]
1210
0
ad***
管理员
发表在
FPGA/PLD
2013-6-12 00:35:59
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
引言
ATM异步传递方式是建立在电路交换和分组交换基础上的一种面向连接的快速分组交换技术。
它采用定长分组作为传输和交换的单位,并具有端到端QOS保证、完善的流量控制和拥塞控制,以及较好的技术综合能力等优势,这些都是目前的IP技术所不及的。和传统的STM电路相比,ATM技术对数据交换中猝发分组的适应能力和传输线路的利用率都是很高的。虽然,由于灵活性和价格的原因,ATM技术没有获得预期的成功,但其流量控制机制对当前变长分组骨干网的流量控制还是具有重要的参考价值,所以有必要对ATM的流量控制及其实现方式进行深入的研究。
IP核是一段具有特定电路功能的硬件描述语言代码,该程序与集成电路工艺无关,因而可以移植到不同的半导体工艺中去生产集成电路芯片。随着
CPLD
/
FPGA
的规模越来越大,设计越来越复杂,使用IP核是一个趋势。
本文研究了ATM流量控制的原理,并给出了一种IP核的实现方法,该IP核不仅可以用于独立芯片,还可以作为系统的一个子模块直接调用。
1 ATM流量特性分析
由于ATM支持的业务范围很广,各种业务对网络传输的要求也大不相同,所以需要对不同的业务进行管理。当用户建立连接时都必须与网络达成一个合约,并在通信过程中要受该合约的约束,同时网络按合约提供相应的服务,具体的业务特性参数描述如下:
(1)峰值信元速率(PCR)表示用户可以发送信元的最大瞬时速率;
(2)持续信元速率(SCR)表示一段时间内的平均信元速率。但SCR并不是任意一段时间内的平均信元速率。它是一个ATM连接上的平均信元速率的上限值;
(3)最大突发长度(MBS)指的是以峰值信元速率能够连续发送的最大信元数目;
(4)最小信元速率(MCR)则是用户可接受的最小信元传送速率。
而后,ATM
论坛
又按照用户要求的比特率特点将业务划分为以下几种主要的类型:
(1)恒定比特率(CBR)
用户要求固定带宽的连接,带宽大小由PCR说明。该类服务对CDVT有严格要求,适用于实时应用,如话音和视频信号传输等。
(2)变比特率(VBR)
在连接期间的带宽要求随时间变化,其带宽值用PCR、SCR、MBS表征,适用于突发的数据传输。
(3)不指明比特率(UBR)
支持非实时业务,如文件传送和电子邮件。UBR用PCR来表征,但网络只是以“最大努力”来传送这类业务。
(4)可用比特率(ABR)
ABR不适用于实时应用,但它要求保持较低的信元丢失率。当连接建立时,系统将以PCR和MCR分别指明最大需求带宽和最小可用带宽。而当连接建立后,系统则将根据网络当前负载情况的反馈信息来调整发送速率,但不能小于MCR。该类常用于信令的传输。具体的流量类型和参数见表1所列。
2 ATM流量控制器的原理和设计
实际应用中最常见的两种业务模式是CBR和VBR,它们分别对应着当前通信传输的语音和数据业务。针对ATM的流量算法为GCRA(一般信元速率算法)。该算法可采用公式GCRA (I,L)来描述。其中I是时间增量,表示相对当前时刻的下一个信元到达时间间隔的理论值(期望值)。L是信元时延偏差容限,表示相对期望值的下一信元可以提前到达的最大容忍范围。对应于双漏桶算法,它可以表示为第一级漏桶处理PCR,相应模型为GCRA1 (1/PCR,CDVT)。第二级漏桶处理SCR的相应模型为GCRA2 (1/SCR,BT+CDVT),根据ATM论坛规定,PCR是必须的,而SCR是可选的。如果其中的L的值较大,则将增大数据的突发程度。第一级漏桶的监控是针对单个信元的,经过第一级漏桶的平均速率可以得到控制,但是突发性还是没有得到控制。第二级漏桶是以监控若干个信元为目的,它对突发性有良好的监控和抑制作用。对于CBR型的流量,只需要第一级漏桶,因为它没有数据突发的概念,而对于VBR业务类型,第二级漏桶也是需要的,因为它有数据突发可能,所以要对它进行监控。其两级漏桶算法的示意图如图1所示。
由此可见,ATM的流量控制技术是较为复杂的,而且也是其精髓之所在。在参考各种资料的基础上,本文提出了一种流控的调度算法。这种调度算法是基于各个UTOPIA的PHY接口实现的。每个PHY的接口上可能存在多种流量类型(如CBR,VBR等)。该算法可根据每个PHY的流量类型来设置相应的多个调度表,每个表代表一种流量类型(如CBR,VBR等)。每个表由多个时隙槽组成,每个时隙槽中有多个要请求发送的ATM连接,每个时隙槽中的连接容量定义为cell per slot(CPS)。每个表由两个指针组成,分别为实时指针RP和服务指针SP,其中RP在每经过CPS个CELL发送时间后将移动到下一个时隙槽,而SP则要等到某个时隙槽没有等待发送的CELL时才能往下移动。如果一个连接在本时隙槽发送完后接着被调度到下个时隙槽发送,那么,此时将达到连接的最大比特速率为:
链接的最大速率=PHY端口的线速/CPS
同理,某连接的最小速率就表示在每次表的轮询过程中只被调度一次,其可以表示为:
最小比特速率=PHY端口的线速/((时隙数-1)×CPS)
假设PHY0的调度表的初始状态如图2左上角的图形所示,其中CPS=2,有8个时隙(timeslot),PHY0共有两个流量类型,那么,将有两个优先级的调度表,分别是CBR和UBR业务类型,显然CBR业务类型的优先级高于UBR。调度表中的空白表示该时隙没有连接,连接1、2被安排在时隙B发送,连接3在时隙C,连接4、5、6在时隙D。CBR和UBR都是PCR通信类型,它们可根据参数PCR来进行调度。对于连接1、2,PCR=1/2MaxPCR;对于连接3,PCR=1/3MaxPCR;对于连接4、5、6,PCR=1/4MaxPCR。开始时,服务指针和实时指针都指向时隙A。从图2可以看到PHY0的整个调度过程。
第一次调度时,两个调度表的当前时隙(时隙A)均没有CELL;
第二次调度时,调度表中仍没有连接,实时指针指向下一个时隙(时隙B);
第三次调度时,CBR调度表的时隙B中有连接2和1,先调度2发送,然后为连接2重新安排调度,由于连接2的PCR=1/2MaxPCR,所以将2写入时隙D;
第四次调度时,连接1的处理类似;
第五次调度时,调度连接3,其下次调度安排在时隙F;
第六次调度时。CBR和UBR调度表的当前时隙(时隙C)中都没有连接,实时指针指向时隙D;
第七次调度时,CBR和UBR调度表的时隙D中均有连接,由于CBR优先级高.故从CBR调度表中读取连接1;
第八次调度时,连接2被调度,实时指针指向时隙E,注意到此时由于UBR的连接未被调度,所以SP的指针就指在了那里:
第九次调度时,CBR调度表的时隙E中没有连接,而UBR的时隙D有3个连接要求调度,这时从UBR调度表中调度连接4,调度完后根据流量参数将连接4写入时隙H;
第十次调度时,调度连接5,然后将连接5写入时隙H同时实时指针下移,但是,因为还有连接6没有被调度,所以服务指针还在D处。其余的调度可以以此类推。
3 功能仿真及验证
该ATM流量控制器可采用硬件描述语言Verilog HDL进行描述。图3所示是在ModelSim软件环境中进行功能仿真的相应仿真结果。
在图3所示的PHY0调度功能仿真结果中,CLK是工作时钟,reset是复位信号,S_Req是调度请求信号(S_Req有效时进行调度),clr_S是调度请求清除信号,PHY是选中的物理设备的地址(即要进行调度的物理设备地址),chn是调度到的ATM的连接号。APCLC是当前调度到的连接所连接的下一个连接号,PCR是峰值信元速率对应的时隙调度速率,CPS是每个时隙发送的信元数,CPS_CNT是信元计数,ATY是ATM通信类型指示(00表示PCR通信类型)。本设计中的CBR和UBR都是PCR通信类型,所以ATT均为00。从仿真结果可以看出,调度到的连接号依次为0、0、2、1、3、0、1、2、4、5、2、1、3、6、1、2…,可见,与上面调度算法的分析结果一致。
4 结束语
本文主要研究了在FPGA上利用VerilogHDL实现ATM流量控制的方法,提出了一种较为实用的算法机制,并在此基础上给出了对应的IP核设计。通过对其进行的功能仿真结果表明,该算法运行良好且高效,可以满足实际系统的需要。
举报
回复
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
VKL144A TSSOP48 点阵式液晶驱动芯片/低功
产品品牌:永嘉微电/VINKA 产品型号:VKL44A 封装形式:TSSOP48 概述 VKL144是
高抗干扰液晶显示驱动/省电液晶驱动IC/LCD
产品品牌:永嘉微电/VINKA 产品型号:VKL128 封装形式:SSOP44 概述 VKL128是一
VK2C23A/B LQFP64/48LCD驱动控制器/高抗干
产品品牌:永嘉微电/VINKA 产品型号:VK2C23A/B 封装形式:LQFP64/48 概述 VK2C
高抗干扰液晶驱动/点阵式液晶显示IC/VK2C21
产品品牌:永嘉微电/VINKA 产品型号:VK2C21D 封装形式:SOP16 概述 VK2C21D是
I2C通信接口段码液晶驱动芯片VK2C21C SOP20
产品品牌:永嘉微电/VINKA 产品型号:VK2C21C 封装形式:SOP20 概述 VK2C21C是
更多
精华推荐
VKL144A TSSOP48 点阵式液晶驱动芯片/低功
高抗干扰液晶显示驱动/省电液晶驱动IC/LCD
VK2C23A/B LQFP64/48LCD驱动控制器/高抗干
高抗干扰液晶驱动/点阵式液晶显示IC/VK2C21
I2C通信接口段码液晶驱动芯片VK2C21C SOP20
VK2C21B SOP24高抗干扰LCD液晶段码驱动芯片
低成本、高性能、带EEPROM了解一下
工控仪表/水电气表LCD驱动/抗干扰液晶段码
更多
社区学堂
VKL144A TSSOP48 点阵式液晶驱动芯片/
高抗干扰液晶显示驱动/省电液晶驱动IC/
VKL144A TSSOP48 点阵式液晶驱动芯片/低功
产品品牌:永嘉微电/VINKA 产品型号:VKL44A 封装形式:TSSOP48 概述 VKL144是
高抗干扰液晶显示驱动/省电液晶驱动IC/LCD
产品品牌:永嘉微电/VINKA 产品型号:VKL128 封装形式:SSOP44 概述 VKL128是一
VK2C23A/B LQFP64/48LCD驱动控制器/高抗干
产品品牌:永嘉微电/VINKA 产品型号:VK2C23A/B 封装形式:LQFP64/48 概述 VK2C
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表