完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
关于PIC32处理器上的高速缓冲存储器,我有很多问题。感谢任何解释:信息是如何从闪存进入缓存的?这是用专用逻辑在PIC32上自动完成的,还是隐藏在软件中的某个地方?当PIC32从FLASH读取指令时,指令会自动复制到缓存上吗?我能把我经常使用的特定数据放入缓存中,并用它作为PIC32的“RAM”吗?这会对性能有任何改善吗?在软件中可以从高速缓存中读写吗?高速缓存对其他处理器的工作方式是否相同(例如英特尔内核、ARM内核等)?谢谢,贾德
以上来自于百度翻译 以下为原文 I have many questions about the cache memory on the PIC32 processor. Would appreciate any explanations: How does information get from the Flash memory into cache? Is this done automatically on the PIC32 with dedicated logic or is it hidden somewhere in software? Do instructions get automatically copied onto cache when the PIC32 reads them from Flash? Can I put specific data that I use often into the cache and use it as "RAM" for the PIC32? Would this give any kind of improvement in performance at all? Is it possible to read/write from the cache in software? Is the way the cache works the same for other processors as well (for example intel core, ARM core, etc.)? Thanks, Judd |
|
相关推荐
3个回答
|
|
任何计算机体系结构教科书都将阐明处理器缓存如何工作的机制。当缓存丢失发生时,缓存控制器将从内存中填充该缓存行。这是完全透明的。PIC32MZ中的缓存允许锁定单独的缓存行,但是缓存数组不能直接寻址。使用“Cache”汇编指令执行缓存操作,读取MIPS架构手册以获取详细信息。锁定缓存将消除任何闪存等待状态,并减少总线争用,但是您可以通过从RAM执行代码来获得几乎相同的性能改进,而不会增加复杂性。锁定高速缓存行也可以减少其他地方的性能。原则是相同的,但是实现细节不同。例如,一些处理器允许部分或全部缓存用作暂存RAM。
以上来自于百度翻译 以下为原文 Any computer architecture textbook will decribe the mechanics of how processor caches work. When a cache miss occurs, the cache controller will fill that cache line from memory. This happens completely transparently. The cache in the PIC32MZ allows individual cache lines to be locked, but the cache arrays are not directly addressable. Cache manipulation is performed using the "cache" assembly instruction, read the MIPS architecture manuals for details. Locking the cache would remove any flash wait states, and reduce bus contention, but you can get almost the same performance improvement by executing code from RAM, without the added complexity. Locking cache lines can also reduce performance elsewhere. The principles are the same, but the implementation details differ. For example, some processors allow some or all of the cache to be used as scratchpad RAM. |
|
|
|
谢谢你的帮助。我发现了一些关于缓存如何工作的好文章,但是他们只是浏览了一下表面,我想知道代码最初是如何进入的。
以上来自于百度翻译 以下为原文 Thanks for the help. I found some good articles about how the cache works, but they only skimmed the surface and I wanted to know how code actually got in there in the first place. Appreciate the explanation, Judd |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
5003 浏览 9 评论
1921 浏览 8 评论
1852 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3066 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2143 浏览 5 评论
574浏览 1评论
431浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
475浏览 0评论
367浏览 0评论
IPECMD命令烧录AVR128DA48芯片,报找不到芯片错误
852浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-16 14:47 , Processed in 1.297707 second(s), Total 81, Slave 65 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号