关闭

PCI 预取和非预取内存映射

标签: PCI-预取
150人阅读 评论(0) 收藏 举报
分类:

博主在学习PCI 手册时遇到这两概念,查阅http://blog.csdn.net/ykqnjust/article/details/6236389该博文时,学习了下。自己的总结如下:
1)PCI设置PCIBARx[3]来配置该模式的选择,而该数值又取决于在引导时间的本地配置寄存器的设定;
2)可预取指的是CPU 可缓存它的内容并且对它做所有类型的优化;可预取性内存是指存储器空间的可预取能力。例如如果读操作没有副作用(即如同从 RAM 中读数据一样不会破坏数据),则称存储器空间可预取。必要时可将字节写操作合并成一个双字写操作。可预取是读取一次以后不会改变读取地址和存储状态的任何改变,因为CPU 可缓存它的内容并且对它做所有类型的优化;
3)非预取的内存就象FIFO地址影射到内存地址,读取数据以后会引起FIFO指针的改变.另外还象一些中断状态I/O影射到内存,读取这个内存后,可能会清除中断标志等等,所以CPU不可缓存这个内存地址;
如果满足以下全部条件,则应该设置为可预取的内存状态:
1.多次读(写)一个长字节产生相同的数据;
2.如果主PCI丢弃读数据,将不会发生负的边际效应;
3.地址空间并没有映射为I/O;
4.允许在转发写缓冲器中进行字节合并;
PS:刚开始学习,很多不懂,知识也有很多错误,欢迎指正;

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1644次
    • 积分:104
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:21篇
    • 译文:2篇
    • 评论:1条
    文章分类
    最新评论