您的位置:首页 > 博客中心 > 网络系统 >

存储器结构、cache、DMA架构分析--【sky原创】

时间:2022-04-03 09:41

存储器的层次结构  gxlsystem.com,布布扣   gxlsystem.com,布布扣   高速缓冲存储器  cache  gxlsystem.com,布布扣 gxlsystem.com,布布扣 读cache操作  gxlsystem.com,布布扣 gxlsystem.com,布布扣   cache如果包含数据就直接从cache中读出来,因为cache速度要比内存快 如果没有包含的话,就从内存中找,找到后就放到cache中去,以后再读的话就直接从cache读了,下次访问很多次的时候就会快很多,相当于提高了命中率,cpu的访问速度就大大提高了   cache能大大提高cpu的访问速率   cache的设计 不能太大,也不能太小   太大的话,因为程序在查看数据的时候需要把cache走一遍,如果cache太大, 那么走一遍的时间就太长,就不能达到提升速率的效果   如果太小的话,存放在内存的块数就少了,命中率降低,访问内存的次数就增加了,cpu性能同样降低了   块大小 Cache与memory的的数据交换单位 由小变大时, 由局部性原理,命中增加 变得更大时, 新近取得数据被用到的可能性,小于那些必须被移出Cache的数据再次用到的可能性,命中率大大降低     DMA   大量移动数据   cpu性能快,外设的速度比较慢,cpu就要一直等待外设 因此诞生了DMA   以前没有DMA,就把数据从内存经过cpu到外设   有了DMA的话,cpu把指令告诉DMA,把内存从某个地址开始,多大的数据写给外设,这样的话DMA就去做了,cpu就不用做了,DMA就把内存中取出数据,然后再到外设,这种机制就是DMA机制,cpu就解放了,做更重要的事,因此这种内存拷贝、数据大量移动拷贝的时候就用DMA来解放cpu,记住cpu只在开始于结束时参与   开始时:  gxlsystem.com,布布扣 gxlsystem.com,布布扣 结束时: 中断处理例程 gxlsystem.com,布布扣     欢迎交流  

新浪博客:http://blog.sina.com.cn/u/2049150530
csdn博客:http://blog.csdn.net/u011749143
博客园:http://www.cnblogs.com/sky-heaven/
chinaUnix: http://blog.chinaunix.net/uid/30049997.html
知乎:http://www.zhihu.com/people/zhang-bing-hua

    gxlsystem.com,布布扣

热门排行

今日推荐

热门手游