发明名称 一种片上网络路由器输出缓冲系统
摘要 本发明涉及一种片上网络路由器输出缓冲系统,包括共享输出缓冲存储器、可用地址队列模块、与输出端口数对应的通道队列模块,设路由器有I个输入端口和J个输出端口,则路由器的每个输入端口通过消息数据线RDATA_i与存储器连接,每个输出端口通过消息数据线SDATA_j与存储器连接;可用地址队列模块与存储器、每个通道队列模块之间通过I条输入地址数据线RAddr_i连接;每个通道队列模块有一条输出地址数据线SAddr_j分别连接到存储器、可用地址队列模块。本发明将所有输出端口的缓冲资源整合到一起,统一由硬件动态分配管理,通过模块间的协同工作,实现了交叉开关的基本功能,改善了片上网络对拥塞的承受能力。
申请公布号 CN102821046B 申请公布日期 2015.05.06
申请号 CN201210275130.7 申请日期 2012.08.03
申请人 北京理工大学 发明人 计卫星;张凌宇;石峰;王一拙;高玉金
分类号 H04L12/861(2013.01)I 主分类号 H04L12/861(2013.01)I
代理机构 代理人
主权项 一种片上网络路由器输出缓冲系统,其特征在于,包括共享输出缓冲存储器、可用地址队列模块、与输出端口数对应的通道队列模块,设路由器有I个输入端口和J个输出端口,则路由器的每个输入端口通过消息数据线RDATA_i与共享输出缓冲存储器连接,每个输出端口通过消息数据线SDATA_j与共享输出缓冲存储器连接;可用地址队列模块与共享输出缓冲存储器、每个通道队列模块之间通过I条输入地址数据线RAddr_i连接;每个通道队列模块有一条输出地址数据线SAddr_j分别连接到共享输出缓冲存储器、可用地址队列模块;其中;共享输出缓冲存储器用于存储被传递的消息,在输入消息时,可用地址队列模块向共享输出缓冲存储器输入消息的存储地址,共享输出缓冲存储器将从输入端口接收的消息存入对应的地址中;在输出消息时,输出端口对应的通道队列模块向共享输出缓冲存储器输入消息的存储地址,共享输出缓冲存储器将该地址对应的消息输出到对应的输出端口;可用地址队列模块用环形队列的方式,存放共享输出缓冲存储器中尚未使用的消息存储单元地址,该队列设有pTail指针指向可用地址队列的队尾,并且设有I个pAddr_i指针指向下一个将要分配给来自输入端口i的消息存储单元地址;当从输入端口i接收一个要分配给输出端口j的消息时,可用地址队列模块将该输入端口对应的可用地址即pAddr_i指针指向的地址传输到共享输出缓冲存储器和对应的通道队列模块,并为pAddr_i分配新的可用地址;当输出端口j要输出消息时,可用地址队列模块将从输出端口j对应的通道队列模块接收到的地址数据进行回收,即插入到可用地址队列的队尾;通道队列模块用环形队列的形式存放分配给对应输出端口的消息在共享输出缓冲存储器中的地址,当从输入端口i接收一个需要分配给输出端口j的消息时,端口j对应的通道队列模块从可用地址队列模块接收地址数据,并存储到自己的队列中;当输出端口j要输出数据时,端口j对应的通道队列模块将队首的地址数据传输到共享输出缓冲存储器和可用地址队列模块。
地址 100081 北京市海淀区中关村南大街5号