收录日期:2020/10/31 21:50:55 时间:2016/07/04 16:42:41 标签:数据结构与算法
流水线的三种不同计算方法:1)各段均取周期法2)最省时法3)各叠加段取最大值法 

在各段均取周期法中,流水线时间计算公式:第一条指令的执行时间+(指令条数-1)*周期,周期是指最大的一个阶段。 

最近碰到一个问题,来源于文章<<Wrapper Design for the Reuse of Networks-on-Chip as Test Access Mechanism>>中的5.2.3节公式(4),T=max(s1,s2)*n+min(s1,s2),也就是SOC封装测试中对core的测试时间的计算,对这个公式有点模糊~~~~~~~~~. 

扫描链扫入时,有3个阶段:扫入,响应,捕获。现有扫描电路,由以下三个部分构成:封装输入单元,长度为L1;扫描链单元,长度为L2;封装输出单元,长度为L3。现在合并成两个阶段{s1,s2},其中,s1=L1+L2,s2=L2+L3。 
问题:有n个向量,从这3个阶段经过,采用流水线方式,求总共需要多少时间。假设每个单位长度的移动要1个时钟。并且响应等待为1个时钟,在计算中由于每个向量都有等待,所以忽略。 

解:就一个向量而言,从扫描输入到扫描捕获完成需要的时间为:L1+L2+L3 

采用各段均取周期法,时间公式为T=(L1+L2+L3)+(n-1)*max(L1,L2,L3) 

由于我们问题的特殊性,所以我将时间公式应改为T=(L1+L2+L3)+(n-1)*max(L1,L2,L3)+(n-1)*L2    (@) 

举个例子。如L1=4,L2=8,L3=3,即s1=12,s2=11;n=3 

则T=(4+8+3)+2*max(4,8,3)+2*8=47 

由原来我们给定的公式T=max(s1,s2)*n+min(s1,s2)=12n+11=12*3+11=47 

从而验证原来给定的公式是正确的。我现在只能想出将各段均取周期法的公式改为@式,可以验证出来。@式的来由我是这样想的:由于每个向量都在扫入和扫出时都做为s1和s2的一个部分,所以就假定这个部分只经过一次,然后在最后加上。不知道对不对~~~~~~~ 

感觉实际上这只是流水线操作方式的一种变形,不过原来给定的公式还是不清楚怎么推导。。。。也就是说,是怎么由T=(L1+L2+L3)+(n-1)*max(L1,L2,L3)而推出T=max(s1,s2)*n+min(s1,s2),主要是不清楚在s1和s2向L1,L2,L3变形时是怎么按步骤推的。。。。希望能有公式化的推导。 

请高手指点 !~~~~~~~~~~~~~~~~~~~~~~~~~ 
不胜感激 !~~~~~~~~~~~~~~~~~~~~~~~~~

如何在相关网站上做广告宣传自己? ClientDataSet怎么能调用带参数的存储过程??? 想做关于电话自动答录的软件,高手给点指教. 怎么启动oracle 的management server 急!突然死机,导致写好的文件丢失,怎么找回来啊,救命!!! 小问题 如何得到本地IP地址 急:如何做好MIS进销存软件的需求分析?(高分相送) 小问题 如何加载第三方控件 TListBox能换行吗??? 请问在2000server中怎么可以直接登陆不输入用户名啊 ? 续:我想和认识两年多的女朋友分手,和三个月前认识的网友结婚,我不是一时冲动!!!! 一个很奇怪的现象 今天装诺顿未成功!重启的时候出问题啦 有什么办法,当鼠标停在某一控件一会,就会在旁边给出提示? 在网页中如何用图形显示实时数据(最好用javascript) 我按你们的方法做了,可是~~~!~!~??? 急需JAVA RMI相关中文资料 请问在看别人写的asp程序时,怎么查找他用了那些控件? 请教各位 高分相送!!!20贴内给分~~ 急!!狂急,我要写一个串口检测的dll,怎么写? 急,左框架如何读取右框架页面的源代码?() 终于盼来实践的机会. TOMCAT部署应用程序的问题,急呀 请教高手:如何在excel中用vba编写菜单?(在系统菜单中添加自定义菜单包括子菜单和相应调用宏)?请给一详细实例!谢谢。 如何在按钮的onclick事件中判断文本框是否为空? 编译一个CPP文件时,出现这个错误怎么办? richtextbox无法显示Word文档转成RTF格式后的“横线、文本框” VC为什么会这样?