新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于MPC8280的PCI驱动设计

基于MPC8280的PCI驱动设计

作者:时间:2016-09-12来源:网络收藏
基于MPC8280的PCI驱动设计

MPC8280被动引起的,即由外部主机( Master)通过PCI对MPC8280发起PCI,MPC8280侧地址译码流程如图6所示。MPC8280在收到外部发起的PCI数据传输时,会判断PCI总线上的地址是否落在寄存器定义的PCIInbound空间或是落于PIMMR空间。若是,就根据寄存器配置,对外部PCI总线上的地址进行译码,然后判断译码后的地址是否落在PCI内存空间,若落于PCI内存空间,则进行数据操作,并设置Devsel信号,否则将进行60x总线操作。

基于MPC8280的PCI驱动设计

2.4 I/O空间读写设计

PCI的I/O空间读写流程可参见流程,其与内存空间读写的不同在于:在配置时,对应的InBound空间和OutBound空间配置为I/O空间,AD[31:0]中所有bit为其提供一个完整的地址,AD[1:0]用来产生Devsel信号和本次传输中最低有效的字节数;而内存空间地址译码只使用AD[31:2],这说明内存空间操作时,每次操作传送4 Byte数据,操作后地址将递增4,以备进行后续传送。

3 结束语

PCI初始化配置完毕后,CPU通过线程调用PCI函数对外部的交换芯片进行轮询探测,正确获取了BCM56514的设备ID为B514,成功发现BCM56514芯片,进而对BCM56514进行了配置和管理,并通过调用PCI内存空间读写函数和I/O空间读写函数对BCM56514的内存空间和I/O空间进行了读写测试,实现了与BCM56514的数据信息交互,为实现MPC8280在大容量路由交换领域得到成熟应用提供了接口驱动支持。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭