存储器设计思想——冯诺依曼结构和哈佛结构

冯诺依曼结构

冯诺依曼结构,也叫普林斯顿结构,指令和数据是不加区别地混合存储在同一个存储器中的,共享数据总线。指令和数据地址指向同一个存储器的不同物理位置,指令和数据的宽度相同由于指令和数据放在同一个存储器中,因此冯诺依曼结构中不能同时获取指令和数据又由于存储器的速度远低于CPU的速度,从而使CPU与存储器交换数据成了影响高速计算和系统性能的瓶颈。ARM7,80x86等都是冯诺依曼结构 

哈佛结构

哈佛结构,指令和数据是完全分开,存储器分为程序存储器和数据存储器;至少拥有2组总线:程序存储器的数据总线和地址总线,数据存储器的数据总线和地址总线,这种分开的程序总线和数据总线,可允许同时获取指令字(来自程序存储器)和操作数(数据存储器),互不干扰。这意味着在一个机器周期内可以同时准备好数据和指令,本条指令执行时可以预取下一条指令,所以哈佛结构的CPU具有较高的执行效率。同时由于指令和数据分开存放,可以使指令和数据有不同的宽度。ARM9、ARM10、ARM11,大多数单片机和数字信号处理系统等都是哈佛结构结构

混血儿——冯诺依曼结构和哈佛结构

许多现代微型计算机的高速缓冲存储器采用哈佛结构,将Cache分为指令Cache和数据Cache而主存采用冯诺依曼结构,只有一个存储器,由数据和指令混用。如此将哈佛结构和冯诺依曼结构结合起来,不仅可以提高主存的利用率,而且可以提高程序执行的效率,缩短指令执行的时钟周期 

猜你喜欢

转载自blog.csdn.net/bleauchat/article/details/92805301