为什么SOPC中的PCIe访问不正确的系统内存地址?
如果您在SOPC Builder和PCIe核行为使用的PCIe®酷睿作为请求者,你可能会遇到PCIe核访问不正确的系统内存地址的问题。可能的原因是系统存储器地址低位不写入Avalon-MM到PCIe地址转换表寄存器。
例如,如果将地址转换表字段中的地址页面大小配置为1MByte(20位),则Avalon-MM到PCIe地址转换表寄存器的最低20位不可写。如果器件驱动程序分配的系统内存地址的最低20位不为零(0x8001_0000),则必须将其附加到PCIe TX从端口的TxsAddress_i。否则,PCIe内核将访问等于实际系统内存地址的地址,最低20位保持为零(0x8000_0000)。在这种情况下,您可以将最低20位(0x1_0000)附加到TxsAddress_i端口以解决此问题。