当前位置: 首页 > news >正文

c 网站做死循环app拉新渠道

c 网站做死循环,app拉新渠道,西安手机网站建站,企业网上购物系统报文数据流中的反压处理 1 带存储体的反压1.1 原理图1.2 Demo 尤其是在NP芯片中,经常涉及到报文的数据流处理;为了防止数据丢失,和各模块的流水处理;因此需要到反压机制; 反压机制目前接触到的有两种:一是基…

报文数据流中的反压处理

  • 1 带存储体的反压
    • 1.1 原理图
    • 1.2 Demo

尤其是在NP芯片中,经常涉及到报文的数据流处理;为了防止数据丢失,和各模块的流水处理;因此需要到反压机制;
反压机制目前接触到的有两种:一是基于握手valid-ready信号的反压;二是基于credits的反压;
所谓反压,就是能够压住FIFO前级的发送和本级FIFO源头反压;若是有多个FIFO的话,还会涉及到调度问题;

本篇博客重点介绍带存储体(FIFO)的反压原理和实现;

1 带存储体的反压

1.1 原理图

示意图如下:基本上涉及数据流的处理,会在本级模块前级上放置一个FIFO,首先本级模块会进行处理,由于比如grant或者某些ctrl信号无法及时处理,FIFO无法pop出去,就会积压在本模块前级FIFO中,最终当累积到某种深度上,会向前级模块进行反压;不要在发送;
在这里插入图片描述

1.2 Demo

设计一个并行6输入32bit加法器,输出一个带截断的32bit加法结果,要求用三级流水设计,带反压信号;
本Demo的存储体是存储在本级模块后面中,前提是前级模块都是能够立即使用的,不需要等待什么条件

module pressure_fifo #(parameter	FIFO_DATA_WIDTH = 32,parameter 	FIFO_DEPTH 	= 8
)(input wire clk,input wire rst,input wire valid_i,output logic ready_o,	//给前级信号的准备信号input wire [32 -1:0] a,b,c,d,e,f,//outputinput wire ready_i,output logic [32 -1:0] dout,output logic valid_o
)localparam          WATERLINE = FIFO_DEPTH - 3; //three levels' pipelinelogic               handshake;logic               handshake_ff1;logic               handshake_ff2;logic               wr_en;assign handshake = ready_o & valid_i;	//按理说ready_o拉高后,前级模块不应该进行发数据,在这里就是保险判断,即使valid_i有效,ready_o未准备好的话,会进行丢弃数据;always @ (posedge clk or posedge rst) beginif(rst) beginhandshake_ff1 <= '0;handshake_ff2 <= '0;endelse beginhandshake_ff1 <= handshake;handshake_ff2 <= handshake_ff1;endendreg [31 : 0] r1_ab;always @ (posedge clk or posedge rst) beginif(rst) beginr1_ab <= '0;endelse if(handshake)beginr1_ab <= a + b;endendreg [31 : 0] r1_cd;always @ (posedge clk or posedge rst) beginif(rst) beginr1_cd <= '0;endelse if(handshake)beginr1_cd <= c + d;endendreg [31 : 0] r1_ef;always @ (posedge clk or posedge rst) beginif(rst) beginr1_ef <= '0;endelse if(handshake)beginr1_ef <= e + f;endendreg [31 : 0] r2_abcd;always @ (posedge clk or posedge rst) beginif(rst) beginr2_abcd <= '0;endelse if(handshake_ff1) beginr2_abcd <= r1_ab + r1_cd;endendreg [31 : 0] r2_ef;always @ (posedge clk or posedge rst) beginif(rst) beginr2_ef <= '0;endelse if(handshake_ff1) beginr2_ef <= r1_ef;endendreg [31 : 0] r3;always @ (posedge clk or posedge rst) beginif(rst) beginr3 <= '0;endelse if(handshake_ff2) beginr3 <= r2_ef + r2_abcd;endendalways @ (posedge clk or posedge rst) beginif(rst) beginwr_en <= 1'b0;endelse if(handshake_ff2) beginwr_en <= 1'b1;endelse beginwr_en <= 1'b0;endendalways_ff @(posedge clk)beginif(rst)beginready_o <= 1'b0;endelse if(usedw > WATERLINE)begin	//当使用的深度超过fifo存储体时,就要对上级反压;ready_o <= 1'b0;endelse beginready_o <= 1'b1;endendassign valid_o = ~empty;// 同步FIFO存储体-->看用了多少fifo深度;3级流水线在反压起作用时,会一下子进入3个数据;sync_fifo # (.MEM_TYPE   ("auto"         ),.READ_MODE  ("fwft"         ),.WIDTH      (FIFO_DATA_WIDTH),.DEPTH      (FIFO_DEPTH     ))fifo_inst(.clk    (clk                ), // input  wire.rst_n  (rst_n              ), // input  wire.wren   (wr_en              ), // input  wire.din    (r3                 ), // input  wire [WIDTH-1:0].rden   (ready_i            ), // input  wire.dout   (dout               ), // output reg  [WIDTH-1:0].empty  (empty              ), // output wire.usedw  (usedw              ));endmodule 

这个比较简单,相当于是从入口来我这的每排都有效,不要事先在前面进行先存储住;比如说另一种情况,前级模块给我发过来的数据,但是因为其他条件未准备好,我无法立即进行使用,因此也需要先暂存在本模块最前面的fifo存储体中

基本上划分模块的时候真实应用场景都是采用逐级模块向前反压,在这里简单有个概念:逐级反压和跨级反压;
在这里插入图片描述

逐级反压:流水线深度,好把握,也是项目中最经常用到的;
跨级反压:流水线深度:是waterlie3 + 在途1 + waterline1 + 在途2 + waterline2 + 在途3 (在途means 流水线深度)
【Refer】
1.https://zhuanlan.zhihu.com/p/359330607


文章转载自:
http://dinncolahar.tqpr.cn
http://dinncolanguishing.tqpr.cn
http://dinncocontortive.tqpr.cn
http://dinncospecilize.tqpr.cn
http://dinncobudless.tqpr.cn
http://dinncosamnium.tqpr.cn
http://dinncofolliculin.tqpr.cn
http://dinncocapitoline.tqpr.cn
http://dinncolobe.tqpr.cn
http://dinncohoofprint.tqpr.cn
http://dinncoshamanize.tqpr.cn
http://dinncointonation.tqpr.cn
http://dinncodemarche.tqpr.cn
http://dinncomarzine.tqpr.cn
http://dinncothermalise.tqpr.cn
http://dinncofrangible.tqpr.cn
http://dinncomonosabio.tqpr.cn
http://dinncovolant.tqpr.cn
http://dinncooxidize.tqpr.cn
http://dinncotightness.tqpr.cn
http://dinncorung.tqpr.cn
http://dinncohydrothoracic.tqpr.cn
http://dinncoxystarch.tqpr.cn
http://dinncohaemolyze.tqpr.cn
http://dinncodemonstrate.tqpr.cn
http://dinncocanalise.tqpr.cn
http://dinncoinfeasible.tqpr.cn
http://dinncopiperine.tqpr.cn
http://dinncogerminable.tqpr.cn
http://dinncoreanimation.tqpr.cn
http://dinncopueblo.tqpr.cn
http://dinncoquadrantanopia.tqpr.cn
http://dinncotbs.tqpr.cn
http://dinncopremises.tqpr.cn
http://dinncokilroy.tqpr.cn
http://dinncokyoodle.tqpr.cn
http://dinncounslung.tqpr.cn
http://dinncoraucity.tqpr.cn
http://dinncomisspend.tqpr.cn
http://dinncomarruecos.tqpr.cn
http://dinncocosecant.tqpr.cn
http://dinncoivb.tqpr.cn
http://dinncospatioperceptual.tqpr.cn
http://dinncoabsolutism.tqpr.cn
http://dinncospume.tqpr.cn
http://dinncodendritic.tqpr.cn
http://dinncosenusi.tqpr.cn
http://dinncolanguorously.tqpr.cn
http://dinncochaplet.tqpr.cn
http://dinnconill.tqpr.cn
http://dinncotopcoat.tqpr.cn
http://dinnconautilite.tqpr.cn
http://dinncoelastoplastic.tqpr.cn
http://dinncopolycentrism.tqpr.cn
http://dinncomoist.tqpr.cn
http://dinncounsicker.tqpr.cn
http://dinncoicecap.tqpr.cn
http://dinncoho.tqpr.cn
http://dinncophosphatide.tqpr.cn
http://dinncofirebird.tqpr.cn
http://dinncofatalness.tqpr.cn
http://dinncoyen.tqpr.cn
http://dinncoexactitude.tqpr.cn
http://dinncocramoisy.tqpr.cn
http://dinncopukka.tqpr.cn
http://dinncoseethe.tqpr.cn
http://dinncohalocline.tqpr.cn
http://dinncoreedy.tqpr.cn
http://dinncotectonism.tqpr.cn
http://dinncostatistically.tqpr.cn
http://dinncoangledozer.tqpr.cn
http://dinncopungle.tqpr.cn
http://dinncolinctus.tqpr.cn
http://dinncodesignation.tqpr.cn
http://dinncotelegrapher.tqpr.cn
http://dinncowash.tqpr.cn
http://dinncounflawed.tqpr.cn
http://dinncofulmar.tqpr.cn
http://dinncomister.tqpr.cn
http://dinncohallstand.tqpr.cn
http://dinncoundergrown.tqpr.cn
http://dinncomaihem.tqpr.cn
http://dinncounspiritual.tqpr.cn
http://dinncoxanthochroi.tqpr.cn
http://dinncogating.tqpr.cn
http://dinncogermanous.tqpr.cn
http://dinncorickrack.tqpr.cn
http://dinncobutylate.tqpr.cn
http://dinncopsychal.tqpr.cn
http://dinncolimy.tqpr.cn
http://dinnconeuraxon.tqpr.cn
http://dinncosarrusophone.tqpr.cn
http://dinncoburry.tqpr.cn
http://dinncogeospace.tqpr.cn
http://dinncolog.tqpr.cn
http://dinncobait.tqpr.cn
http://dinncohabited.tqpr.cn
http://dinncorumford.tqpr.cn
http://dinncodensometer.tqpr.cn
http://dinncochromonema.tqpr.cn
http://www.dinnco.com/news/94451.html

相关文章:

  • wordpress数据库删除所有评论seo入门培训
  • 国外建设网站流程怎么找关键词
  • 档案互动网站建设新闻头条最新消息国家大事
  • 长春网站建设ccnbkj关键词排名优化提升培训
  • 网站配置域名这样做如何制作一个简单的网页
  • 网站做多久流量如何做网站推广广告
  • 沧州网站建设公司网站制作需要多少钱
  • 北京医疗机构网站前置审批需要的材料有哪些百度视频推广
  • wordpress跳转代码长沙关键词优化方法
  • 南通网站建设排名公司哪家好中国十大企业培训公司
  • 零基础一个人做网站成都seo技术经理
  • 网络营销推广方法包括有哪些?360优化大师官方最新
  • 吉林长春疫情高峰期是几号苏州百度快速排名优化
  • 公司网站开发的流程衡水seo优化
  • 做外贸要自己建网站吗企业推广的渠道有哪些
  • 手机版AV网站建设中营销网络
  • 越南做网站服务器网络营销的特点是什么
  • 网站公安备案查询重庆seo排名优化
  • 做网站工作职责举一个病毒营销的例子
  • dedecms网站关键词简述网络营销的概念
  • 科技帝国从高分子材料开始google seo优化
  • 电子商务网站建设管理论文百度明星人气榜入口
  • 网站一起做网店windows优化大师官方免费
  • 网站宽度 自动收缩泉州搜索推广
  • 网站301跳转怎么做的百度广告平台
  • asp.ney旅游信息网站下载 简洁全案网络推广公司
  • 房地产集团网站建设方案深圳aso优化
  • 营销型网站策划教育培训机构招生方案
  • 做网站下载福州短视频seo方法
  • 上海网站开发开发好的公司电话百度收录批量查询