PCI和PCIE_No.1

 1. CPU如何访问外部设备

cpu发出地址,先到达内存控制器,内存控制器根据地址判断这个地址数据哪个设备,然后向该设备发出片选信号(cs)选中这个设备。在同一时间,只有一个片选信号有效。

其中flash与GPIO都不是内存,但是使用的接口与内存一样,都是RAM-Like接口。只要是这种接口,就可以使用这种方法访问。

在芯片手册中会有各种片上设备的地址范围。

当CPU访问EMMC FLASH时,CPU发出的地址是属于CPU空间的地址,而EMMC控制器向EMMC FLASH发出的地址是属于EMMC控制器地址空间。两个地址空间是隔离的。

如果cpu空间的地址能够转换为PCI空间的地址,当CPU发出地址时经过转换就能够访问PCI设备,访问PCI设备时就会像访问内存一样简单。问题的关键在于如何进行这个转换,如何确定这个地址。

“地址转换”这个活是由PCI控制器干的。

①PCI设备都有一个配置空间。在配置空间里会声明需要多大的空间(PCI地址空间)。

②CPU读出这个声明后,会分配给他所需的空间。并把这段空间的起始地址和长度写入配置空间

③应该使用CPU空间的哪一个地址来访问PCI空间的地址?设置PCI或者PCIE控制器,进行CPU地址空间与PCI地址空间的转换。去写PCI控制器里面的某个寄存器就可以,设置这两个地址空间之间的偏移值。

综上:使用PCI或者PCIE时,可以像访问内存一样访问外部设备。

2. PCI接口与PCIE接口

无论PCI接口与PCIE接口是什么样子,他们都能够传输地址,传输数据。

2.1 PCI接口

地址和数据是复用的。属于并行接口(并行接口传输速率高,但是当速率高到一定程度时,相互之间会产生较大的干扰)。

2.2 PCIE接口

属于串行接口。使用查分信号传输。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值