PCIE协议解析 synopsys IP Register配置空间 读书笔记(8)

来源:互联网 发布:javac编译多个java文件 编辑:程序博客网 时间:2024/06/05 10:05

对于PCIE配置空间寄存器的读写可以通过DBI接口完成,同时也可以通过远程终端通过PCIE Configuration Request完成寄存器的读写,但对于每一个配置空间的访问权限,有以下规定:

HwInit

HwInit(cs)

HwInit(cs2)

Hardware Initialized

该bit是core的硬件控制,并且为read_only,这些bit只能通过cold reset改变,而FLR(function level reset)、warm rest、hot reset都无法改变HwInit的值。

而HwInit(cs)和HWInit(cs2)表示DBI访问时,需要dbi_cs2的使能。

RO

RO(cs)

RO(cs2)

Read-Only

只读寄存器,无法通过软件改变,除非有特殊的说明。寄存器可以通过硬件完成初始化。

有些只读寄存器可以通过本地的DBI接口改变,但不可以通过远程的link partner访问。

RO(cs),RO (cs2)表示DBI访问时,需要dbi_cs2的使能

WO(cs)

WO(cs2)

Write -Only

只写寄存器,只能通过本地的DBI进行写操作,远程的host无法进行写操作。本地DBI和远程的host无法读取该寄存器,寄存器可以被core硬件初始化。

在有些case中,必须配置这些只写寄存器。

例如:BAR Mask寄存器只有在BARn_SIZING_SCHEME_N==1是可以通过DBI接口进行写操作。

 

RW

读写寄存器

RW1C

Read-Only Status/Write-1-to-Clear Status

只读状态寄存器/写1清零,写入0的话没有效果。

ROS

ROS(cs)

ROS(cs2)

Sticky Read-Only

只读寄存器,host和application software无法改变,除非特殊说明。

寄存器的值无法通过hot reset和FLR进行初始化和修改,有一些bit被设计为当有备用电源时在上电后将不会受任何形式的复位影响。

RWS

Sticky Read-Write

可以通过DIB读写,但是无法通过Hot reset和FLR进行初始化和修改。

RW1CS

Sticky Read-Only Status/Write-1-to-Clear Status

只读状态寄存器/写1清零,写入0的话没有效果。

无法通过Hot reset和FLR进行初始化和修改。

RsvdP

Reserved and Preserved

保留寄存器,只读,读取返回值为0。

软件在写同一个寄存器的其他bit时,需要保证写入 reserved bit值与读取出来的值一致。(是否对于有reserved bitregister都需要先读取reserved的值,再写入??)

RsvdZ

Reserved and Zero

保留,只读,读取返回值为0.

软件在写同一个寄存器的其他bit时,该bit必须写入0.

PF

Physical Function

Indicates that this Virtual Function (VF) register bit inherits its value from the corresponding parent Physical Function.

0 0