【通用设计方法】之接收异常保护
创始人
2024-04-12 12:26:28
0

目录

前言

一、接收异常保护

二、超短包、背靠背的支持

后记


前言

        为了系统的鲁棒性,我们常常会做一系列的异常保护功能,避免系统挂死。

        这里仅仅介绍接收保护的某些设计思路,抛砖引玉。

一、接收异常保护

        设计思路:通过可配置的门限阈值来对超长包/异常包进行截断处理,并将异常情况上报。

        这里门限可分为两种,一是数据包的长度,二是时间。

        当接收数据超过门限(超长/超时)而还没收到eop信号的时候,就截断报文,并自行产生一个eop信号。

        下面以超时为例,简单写下代码:


input 	    [31:0] 		i_cut_cycle_threshold;//寄存器配置,可加使能信号
input 	    [31:0] 		i_cut_len_threshold;
output 	reg [31:0] 		o_rpt_cycle_cut_cnt;//异常上报
output 	reg [31:0] 		o_rpt_len_cut_cnt;reg					    s_frm_running;
reg 	[31:0] 		    s_cycle_cnt;assign 	s_rx_sop 		= 	i_rx_sop && i_rx_vld && o_rx_rdy;
assign 	s_rx_eop 		= 	(i_rx_eop && i_rx_vld && o_rx_rdy) || s_cycle_cut_en;
assign 	s_cycle_cut_en	= 	s_cycle_cnt >= i_cut_cycle_threshold;always@(posedge clk or negedge rst_n)beginif(~rst_n)s_frm_running 	<= 	1'b0;else if(s_rx_eop)s_frm_running 	<= 	1'b0;else if(s_rx_sop)s_frm_running 	<= 	1'b1;
endalways@(posedge clk or negedge rst_n)beginif(~rst_n)s_cycle_cnt 	<=	32'b0;else if(s_rx_eop || s_rx_sop)s_cycle_cnt 	<= 	32'b0;else if(s_frm_running)	s_cycle_cnt 	<= 	s_cycle_cnt + 32'd1;
endalways@(posedge clk or negedge rst_n)beginif(~rst_n)	o_rpt_cycle_cut_cnt 	<= 	32'b0;else if(s_cycle_cut_en)o_rpt_cycle_cut_cnt 	<= 	o_rpt_cycle_cut_cnt + 32'd1;
end

        超长包截断代码大致相同,就不啰嗦了,重点是设计时要有这种异常保护的意识。

        另外一种做法可以是在超过门限时,将running信号拉低,再由running&&rx_vld作为最终的vld信号,同时产生一个eop信号。

二、超短包、背靠背的支持

超短包就是包长为1,sop,eop重叠,如下图:

        背靠背就是两个包之间没有间隔,如下图:

         因为内部接收到数据后进行处理都是需要时间的,而这两种情况恰恰都没有提供足够的时间给到我们。

情况1,超短包的情况,可以考虑根据数据处理所需时钟周期进行打拍处理。

情况2,可以考虑在接收到每一包的eop信号后,强制拉低一个时钟周期的rdy信号来反压前级。

具体代码就懒得写了,也没什么东西;但是有没有其他更好的处理方式?

后记

        这是一个爬坡的过程,需要我们不断积累经验。

        欢迎分享交流。

相关内容

热门资讯

事关浙江的每一条江河、溪流!这... 近日,《浙江省河湖保护治理条例》经省第十四届人民代表大会常务委员会第二十一次会议通过,将于2026年...
国中水务(600187)披露参... 截至2025年12月30日收盘,国中水务(600187)报收于2.51元,较前一交易日下跌1.57%...
中南股份(000717)披露募... 截至2025年12月30日收盘,中南股份(000717)报收于2.59元,较前一交易日下跌1.14%...
受权发布丨中华人民共和国增值税... 新华社北京12月30日电 中华人民共和国增值税法实施条例 第一章 总则 第一条 根据《中华人民共和国...
个人销售住房增值税政策明年起调... 新华社北京12月30日电(记者申铖)财政部、国家税务总局12月30日对外发布公告,明确自2026年1...
浮山县司法局组织开展2025年... 为进一步加强行政执法规范化建设,切实提高行政执法人员依法履职能力,根据《临汾市司法局关于开展2025...
“护航”增值税法实施 完善现行... 新华社北京12月30日电 题:“护航”增值税法实施 完善现行增值税制度——聚焦增值税法实施条例出台 ...
李凯任北京市律师协会秘书长 第十二届北京市律师协会召开理事会第七次会议 2025年12月30日,第十二届北京市律师协会理事会召开...
《中华人民共和国增值税法实施条... 《中华人民共和国增值税法实施条例》(以下简称《条例》)公布,自2026年1月1日起施行。《条例》旨在...