- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2003.2.16 DSP原理及应用 第2章 TMS320C54x的硬件结构 ② 单寻址存储器的流水线操作 无时序冲突的操作: ■ CPU同时寻址不同的存储器块; ■ CPU同时处理两条指令访问不同的存储器块。 有时序冲突的操作: CPU同时访问两次同一个存储器块。 解决办法: 将第二次寻址操作自动延迟到下一个周期。 第2章 TMS320C54x的硬件结构 5.流水线的等待周期 ’C54x的流水线结构,允许多条指令同时利用CPU的内部资源。由于CPU的资源有限,当多于一个流水线上的指令同时访问同一资源时,可能产生时序冲突。 解决的办法: ① 由CPU通过延时自动解决; ② 通过程序解决,如重新安排指令或插入空操作指令。 第2章 TMS320C54x的硬件结构 5.流水线的等待周期 (1)流水线冲突 产生流水线冲突的硬件资源: ① 辅助寄存器(AR0~AR7); ② 重复块长度寄存器(BK); ③ 堆栈指针(SP); ④ 暂存器(T); ⑤ 工作方式状态寄存器(PMST); ⑥ 状态寄存器(ST0和ST1); ⑦ 块重复计数器(BRC); ⑧ 存储器映像累加器(A和B)。 第2章 TMS320C54x的硬件结构 流水线冲突情况: ’C54x系统程序 C语言程序 不产生冲突 汇编语言程序 存储器映象寄存器 MMR写操作 CALU运算 不会产生冲突 早安排写操作 不产生冲突 其它MMR写操作 需用等待周期表 1 2 3 4 第2章 TMS320C54x的硬件结构 流水线冲突情况: ① 若采用C语言编写源程序,经编译后生成的代码不会产生流水线冲突; ② 若采用汇编语言编写源程序,使用算术运算操作不会产生流水线冲突; ③ 若采用汇编语言编写源程序,初始化时对MMR寄存器进行设置,不会发生流水线冲突; ④ 通常流水线冲突发生在对MMR寄存器的写操作,可用等待周期表加以解决。 第2章 TMS320C54x的硬件结构 【例2.7.2】分析下列指令的流水线冲突。 N LD *AR1,B w STLM A,AR1 A →AR1 对AR1进行间接寻址 问题:第1条指令中的AR1数据还没有准备好,第二条指令就已经开始对AR1进行寻址读操作。 解决办法:采用保护性指令STM。 STM为双字指令,占用两条流水线。 无等待周期 N LD *AR1,B #1k w STM #1k,AR1 第2章 TMS320C54x的硬件结构 【例2.7.3】分析下列指令的流水线冲突。 w STLM A,AR0 w STM #10,AR1 #k N LD *AR1,B 在T6后半周期,第一条指令和第二条指令发生时序冲突。 冲突 ’C54x内部可自动地将STM指令的写操作延迟一个周期,缓解时序冲突。 ? w 在执行第三条指令时,AR1的内容还没有准备好,出现新的冲突。 解决的办法:在STLM指令后插入一条NOP指令或任何 一条与程序无关的单字指令。 ?NOP NOP N LD *AR1,B #k w STM #10,AR1 第2章 TMS320C54x的硬件结构 5.流水线的等待周期 (2)等待周期表 当指令对MMR、ST0、ST1和PMST等硬件资源进行写操作时,有可能造成流水线冲突。 解决的办法:是在写操作指令的后面,插入若干条 NOP指令。 例如: N LD *AR1,B w STLM A,AR1 N LD *AR1,B NOP NOP N 第2章 TMS320C54x的硬件结构 (2)等待周期表 等待周期表给出了对映像寄存器以及控制字段进行写操作的各种指令所需插入的等待周期数。 为了避免流水冲突,可以根据等待周期表来选择插入的NOP指令的数量。 第2章 TMS320C54x的硬件结构 流水线操作等待周期表 STM #lk,ST0 ST #lk,ST0 2周期 所有存储操作 包括SSXM和RSXM SXM C16 FRCT OVM 所有其他存储操作 LD #k9,DP LD Smem,DP DP CPL=0 所有其他存储操作 LD #k5,ASM LD Smem,ASM ASM 所有其他存储操作,包括EXP STM #lk,T MVDK Smem,T LD Smem,T LD Smem,T || ST T 3周期 1周期 0周期 控制范围 第2章 TMS320C54x的硬件结
您可能关注的文档
最近下载
- 行政编制事业编制参公管理企业编制.doc VIP
- 参公、行政编制与事业编制的区别(修正版).docx VIP
- 22D701-3电缆桥架安装(26.9MB)(26.85MB)5ce2e72e69780631(1).pdf VIP
- 学堂在线 日语与日本文化 章节测试答案.docx VIP
- 危险化学品企业工艺平稳性关键SOP、一般SOP示例.pdf VIP
- 精密与特种加工技术(第3版):热作用特种加工技术PPT教学课件.pptx
- 公、行政编制与事业5编制的区别(修正版).doc VIP
- 港珠澳大桥主体工程桥梁工程钢箱梁制造新工艺及关键技术.ppt VIP
- 社区矫正心理测试.docx VIP
- 西双版纳傣自治州“十三五”规划研究报告.doc VIP
文档评论(0)