冯诺依曼架构和哈佛架构

当我们用 C语言 进行编程时, 指针 对应的地址,就是这条总线的地址。
对于CPU架构,按总线数量可以分为 冯诺依曼架构 哈佛架构 ,冯诺依曼架构是所有存储器访问共用一条总线,哈佛则是有多条总线(不一定每个数据通道都有一条)。
但是C语言编程时,指针的地址空间只有一个,一个地址只能对应一个存储单元,也就是内存是 统一编址 的,而很多单片机的CPU采用了哈佛架构(如STM32),
由于哈佛架构有多条总线,而每条总线有 独立的地址空间 ,这就与C语言的设计相违背。
实际的应用中,处理器厂商为我们做了这些处理,对外只有一个存储器控制器,内部的多条总线共同访问这一个存储器控制器,这样对芯片外来说,就是统一编址的了。

Intel的PC机系统由于功能较多,主频分级,将这个存储器映射的过程分为两歌步骤来做,所以主板上才会有集成度从大到小的三块芯片(CPU、北桥、南桥)。
由于XH_CPU主要面向单片机应用,对总线的速度匹配不做区分,所以没有了南桥芯片的功能,它被分散在了各个外设模块中。
北桥 其实就是一个 存储器控制器 ,实现前端总线对外部存储器的访问,由于速度不分等级,所以这里把前端总线和存储器控制器合并,直接将存储器和外设挂接在前端总线上。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值