结构2_流水线(20100915)

结构2_流水线(20100915)

ID:65444665

大小:1.56 MB

页数:46页

时间:2022-01-08

结构2_流水线(20100915)_第1页
结构2_流水线(20100915)_第2页
结构2_流水线(20100915)_第3页
结构2_流水线(20100915)_第4页
结构2_流水线(20100915)_第5页
结构2_流水线(20100915)_第6页
结构2_流水线(20100915)_第7页
结构2_流水线(20100915)_第8页
结构2_流水线(20100915)_第9页
结构2_流水线(20100915)_第10页
资源描述:

《结构2_流水线(20100915)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第2章数字信号处理器结构1、处理器(基本结构)2、指令控制单元与流水线3、处理单元与数据通道4、存储器结构5、Cache、VLIW结构、SIMD结构、中断机制、片上通用外设结构BIT/TI1第二节指令控制单元与流水线1、指令控制单元2、指令流水线BIT/TI21、指令控制单元组合逻辑电路时序逻辑电路组成:如何控制?BIT/TI32、流水线非流水与流水的CPUBIT/TI42、流水线流水线基本级描述(Fetch)(Decode)(Execute)BIT/TI53、指令流水线执行BIT/TI64、C62x指令流水线C6000的指令、译码、执行阶段都分为更细的子阶段,或称为节

2、拍取指级有4个节拍(phase)译码级有2个节拍执行级对不同类型指令有不同数目的节拍,最长为5节拍。BIT/TI74、C62x指令流水线:①取指流水线取指级的4个节拍分别如下:PG:程序地址产生(Programaddressgenerate)PS:程序地址发送(Programaddresssend)PW:程序访问等待(Programaccessreadywait)PR:程序取指包接收(Programfetchpacketreceive)BIT/TI84、C62x指令流水线:①取指BIT/TI94、C62x指令流水线:①取指取指包通过流水线取指级的各节拍流程8条指令组成一

3、个取指包,共256bitBIT/TI104、C62x指令流水线:②译码流水译码级的2个节拍DP:指令分配(Instructiondispatch),确定指令到功能单元路线DC:指令译码(Instructiondecode),指令在功能单元译码BIT/TI114、C62x指令流水线:②译码各节拍流水线译码框图BIT/TI124、C62x指令流水线:③执行C62x/C64x所有指令仅需要1个周期执行,但有些指令的结果被延迟。(C67x有功能单元等待时间)延迟间隙BIT/TI134、C62x指令流水线:③执行BIT/TI144、C62x指令流水线:③执行BIT/TI154、C

4、62x指令流水线:③执行BIT/TI164、C62x指令流水线:③执行乘法指令MPY.M1A1,A2,A3读A1,A2E2M1aM1bM1aM1b写A3下一个乘法指令MPY.M1A1,A2,A3E1乘法指令MPY:Why“NOP1”?BIT/TI174、C62x指令流水线:③执行取数据指令(LD):Why“Nop4”?虽然取指令只需一个周期执行操作(E1),但结果延迟4个周期BIT/TI184、C62x指令流水线:③执行取跳转指令B:Why“NOP5”?E1E2E3E4E5E6…B目的地址的指令PGPSPWPRDPDCE1…NOP5BIT/TI194、C62x指令流水线

5、E2-E6结果延迟节拍C67,E1~E10C62x/C64x总流水线节拍BIT/TI204、C62x指令流水线在周期7,取指包FPn的指令达到E1,同时FPn+1的指令正在译码,FPn+2的指令处在DP,FPn+3,n+4,n+5,n+6分别处在取指的4个节拍阶段BIT/TI215、流水线等待时间流水线等待时间(latency)是一条流水线的二次启动之间的时间单位(时钟周期)数。等待时间为k是指二次启动之间有k个时钟周期的间隔延迟间隙(delayslots)是指一条指令在第一个执行节拍E1以后占用的CPU周期数。根据延迟间隙可确定指令的执行周期。BIT/TI226、流水

6、线冲突冲突在同一时间,试图二次或更多次启动使用同一流水线段将会引起冲突(collision)。流水线冲突是指在一条流水线里试图同时使用同一硬件的资源冲突。冲突将破坏流水线的正常流水执行,降低流水线的工作效率,因此在指令流的安排时要尽量避免资源冲突。充分利用流水线是DSP高性能的一个重要因素。当程序中的算法保持流水线充满,这时的流水线最有效BIT/TI236、流水线冲突例子BIT/TI246、流水线冲突例子BIT/TI25代码通过流水线过程举例BIT/TI26点积代码BIT/TI271、程序取指开始BIT/TI282、程序取指结束BIT/TI293、指令分配BIT/TI3

7、04、指令译码BIT/TI315、执行(E1)BIT/TI326、MVK完成,LD→E1BIT/TI33指令类型和延迟间隙(delayslots)BIT/TI347、第二个LD进入E1BIT/TI358、MPY到达E1BIT/TI369、ADD到达E1BIT/TI3710、MPY/ADD指令完成问题?BIT/TI3811、使ADD延迟执行BIT/TI3912、ADD进入E1BIT/TI40NOP与延迟间隙BIT/TI41添加NOPBIT/TI42使用多周期NOPBIT/TI43代码性能内核循环:第一个LD1第二个LD5MPY2ADD/SU

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。