关键词不能为空

当前您在: 主页 > 英语 >

bcm56540芯片手册学习

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-12 09:10
tags:

-

2021年2月12日发(作者:千分之一)


56540 PCIe DMA


学习总结



本文是基于


56540-PR100-RDS Programmer



s Register Reference Guide


的前六章总结提取


的,并部分 加注了个人的理解。



一、



端口



1


、物理端口



56440


系列芯片共


86



port


,其中


80



physical serdes ports


,一个


CMICm interface

< p>



5



AXP logic port




2


、逻辑端口




虽然有


86


个物理端口,但是最多只有


63


个逻辑端口。

< br>CPU


必须被映射到逻辑端口


0



AXP ports 81/82/83/84/85


必须被 映射到逻辑端口的


61



59



58



60



62


,剩余的


1-5 7


个逻


辑端口号可以被


80

< p>
个物理端口随便映射。




The device uses the logical port number for all switching decisions within the ingress and


egress pipeline,and does not use the physical port number.


3



MMU


端口



虽然有< /p>


86


个物理端口,


但是最多只有


63



MMU


端口


,CPU


必须被映射到


MMU


端口


59




AXP


ports


81/82/83/84/8 5


必须被映射到


MMU


端口的


58



62



56



61



57


。剩余的


MMU


端 口


0-55


以及


60

< br>可以被


80


个物理端口随便映射。




二、


PCI

配置寄存器



从结构上看,


PCI e


是在


CPU


和原来的系统总线之间插 入一级总线,具体由一个桥接电


路实现对这一层的管理,并实现上下之间的接口以协调数 据的发送。


PCI


总线与


CPU


无关,


与时钟频率也无关,因此它可以独立应用于各种平台,支持多处 理器和并发工作。



三、


S-Channel Messaging



S-Channel


用来访问所有的间接映射的寄存器、表以及


packet



需要映射一


块内存映射的寄存器并且需要遵 循


S-Channel messaging


协议




CP U


通过


PCIE


总线发送消息,同时, 消息会带有一个执行读或者写的操作命令,操作


命令后是地址或者数据信息。对应没有消 息的发送,


PCI


控制器会将其从


PC I


内存空间转移


到设备上。操作结束后,

PCIE


控制器会跟踪消息发送或者接受的状态信息,每一个被

CPU


发送的消息都会从


PCI


控 制器得到对应的响应。



1



messaging registers


CPU


发送


S- channel


消息时,需要按照一定的格式构造数据,然后复制到

S-Channel data


register


中,然 后使能


CMIC_SCHAN_CTRL


MSG_START bit







figure 1


所示,


S-Channel message



buffer regigon


最大是


22



32bits


的字。且要求


消息要连续的写入到


bu ffer regigon


中。






通过


S- Channel


访问的寄存器和表有:



Ingress pipeline registers


Egress pipeline registers


XTPORT Port register


CLPORT Port register


MMU register


MAC registers


Statistic counters


Switching memories



可配置现实


S-Channel


消息 操作完成后产生


MSG_DONE


中断,


Interrupt-driven


I/O


is


performed


by


initiating


a


tran saction


。对于中断驱动


I/O


,需要使能


SCH_DONE


bit


in


CMIC_IRQ_MASK.


2


、大小端选择




说的是


CPU


与交换芯片传递数据时的大小端问题。



BCM56540< /p>


中的寄存器是小端,在


BCM56540



CPU


之间传输的


Dwords


的大小端格式


是通过


CMIC_ENDIA NESS_SEL register.


CMIC_ENDIANESS_SEL register



Bits[3:0]


所代表的意义如下图所示:





3



S-BUS message format



Command


的格式:






Address


的格式





这里,


r egsel


表示寄存器的地址偏移。




4


、寄存器的读写过程




以写寄存器为例,接受写寄存器的步骤





另外,


m emery


的读写过程详见


56540-PR100-RDS Programmer



s Register Reference Guide



除此之外,


bcm56540


芯片还提供了


hash


方式的读写命令。



5



S-BUS message


的响应



< p>













2-3



dwords




CMIC


< p>





CMIC_SCHAN_MESSAGE(0/1/2)



CMIC_SCHAN_MESSAGE0


< p>


command


dwords



CMIC_SCHAN_MESSAGE



1/2


)是读到的数据。




对于


memroy

< br>的读操作,响应为


2-21



d words




对于寄存器或者是


memory


的写操作,响应都是一个< /p>


dwords




四、


DMA



Interrupts ,and Endianess



主要介绍

< br>CPU


与设备之间如何通过


PCI


总线传输数据。



1




PCIe


中断













CPU




CMIC_CMC0_IRQ_STAT[4:0]





CMIC_CMC0_PCIE_IR_MAS K[4:0]


做与运算。




PCIE


相关的中断源以及中断处理描述如下图所示:

< br>


-


-


-


-


-


-


-


-



本文更新与2021-02-12 09:10,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/642423.html

bcm56540芯片手册学习的相关文章