- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
谈程序在RAM,FLASH 和外部RAM中运行的速度
以TMS320F28335芯片为例在内部RAM中程序能够,达到150MHZ,也即150MIPS.用下面这段程序测试:? ?for(;;)? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???|? ?{? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?|? ???GpioDataRegs.GPACLEAR.bit.GPIO0=1;? ?? ?? ?? ?? ?? ? |? ?? ???DSP28x_usDelay(29992);//29992*5+9个时钟周期? ?|总共300001个时钟周期? ???GpioDataRegs.GPASET.bit.GPIO0=1;? ?? ?? ?? ?? ?? ?? ?? ?|? ?? ???DSP28x_usDelay(30000);//30000*5+9个时钟周期? ?|? ?}? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??在RAM中运行上面的程序能够正常,GPIO 的周期为500HZ
在外部RAM中运行在外部RAM中最大能达到多少的速度呢?试一下,在28335中,XCLK=SYSCLK的时候。设置? ? XintfRegs.XTIMING7.bit.XRDLEAD = 1;? ? XintfRegs.XTIMING7.bit.XRDACTIVE =2;? ? XintfRegs.XTIMING7.bit.XRDTRAIL = 1;? ?? ?? ?? ?
也就是说XINTF读取一个外部RAM中的数据要1+3+1个时钟周期,为5跑上面谈到的程序,GPIO的周期为100HZ,比在RAM中慢了5倍,因为RAM中读取一个数据只要1个时钟周期,外部RAM中读取要5个改变一下:? ? XintfRegs.XTIMING7.bit.XRDLEAD = 1;? ? XintfRegs.XTIMING7.bit.XRDACTIVE = 1;? ? XintfRegs.XTIMING7.bit.XRDTRAIL = 0;? ?? ?? ??
?也就是说XINTF读取一个外部RAM中的数据要1+2+0个时钟周期,为3跑上面谈到的程序,GPIO的周期为166.7HZ,899984时钟周期,因为RAM中读取一个数据只要1个时钟周期,外部RAM中读取要3个理论上在外部RAM中运行最快可以为75MHZ,但一般我们只能达到50MHZ,因为一般我们不能设置.XRDACTIVE 为0
在FLASH中运行在FLASH中运行上面的程序,打开flash pipeline。会发现运行的比外部RAM还慢,只有138.888HZ的GPIO周期。FLASH中运行程序,需要说到FLASH pipeline。FLASH pipeline可以一次读取FLASH中的64bits,也就是正常的4条指令。那么理论上有FLASH pipeline的时候,FLASH的运行最优的速度为37 ns的FLASH介入时间乘以4,也就是108 MHz 。但是,如果如我上面的测试代码那样充满了跳转指令(也即FLASH pipeline一次取4个指令指令后发现是跳转指令无法连续运行后面的指令)那么最坏的结果,是FLASH运行在108/4=27MHZ下。所以,只能这样说,程序在FLASH中的运行速度为27~108MHZ,一般情况下,程序优化的还不错跳转指令比较少,在FLASH中28335的运行速度为80~90MHZ。
您可能关注的文档
- that引导名词性从句用法详解.doc
- THDS-B型远程标定装置用户手册(探测站软件修改版)20160401.doc
- The Best Teamwork 最佳团队合作.doc
- The Blind Side英国文学影视赏析论文.doc
- the bluest eye读后感-英国当代文学.doc
- The Brief Study on Black Humor in Catch-22 简析黑色幽默技巧在二十二条军规中的应用.doc
- The Cat and the Mouse are Friends 猫和老鼠做朋友.doc
- The differences between Chinese and western education 中西方教育的不同.doc
- The effects of technology on learning 科技对学习的影响英语作文.doc
- the great gatsby(了不起的盖茨比) 英文介绍及赏析.doc
原创力文档


文档评论(0)