Forum Discussion
Hi,
https://community.intel.com/t5/FPGA-Wiki/Implementing-MSI-X-for-PCI-Express-in-Altera-FPGA-Devices/ta-p/735678 this link appears to be broken
>> We are having our page migration from Intel to Altera, those link is in middle of fixing.
>> Please accept my apology for inconvenience cause.
is there any example on how CII interface can be used to monitor MSI-X capability structure accesses?
>> at the moment we do not have any well tested design to ensure it success.
https://www.intel.com/content/www/us/en/docs/programmable/683501/25-1-1/configuration-intercept-interface.html mentions that "The Configuration Intercept Interface (CII) allows the application logic to detect the occurrence of a Configuration (CFG) request on the link and to modify its behavior."
>> Those function is targeted Avalon Streaming.
>> Since you are using MCDMA , I would suggest to check at AXI MCDMA 5.3.5. Configuration Intercept Interface (CII)
Regards,
Wincent_Altera
- UserID43312312 months ago
Occasional Contributor
Anonymous I am attaching screenshot above. When I select Enable CII interface, it adds p0_user_cii port to my dut module, and the signals shown in signal and interface tab shows interface which is matching with what is described on https://www.intel.com/content/www/us/en/docs/programmable/683501/25-1-1/configuration-intercept-interface.html . The list of signals does not match with information provided on https://www.intel.com/content/www/us/en/docs/programmable/817911/25-1-1/configuration-intercept-interface-cii.html
At this point seeing this p0_user_cii port at dut, I am understating that i need to write a custom RTL block that interfaces with this port on dut and intercept transactions going to MSI-X capability offset in Config space but i dont know what is the address at which MSI-X capability is located in PCIe config space.
As i mentioned in original post table 71 on https://www.intel.com/content/www/us/en/docs/programmable/683501/25-1-1/configuration-intercept-inte... provides cii interface signal list and its details - after reviewing them I have following questions.
- pX_cii_wr_o Output Indicates that cii_dout_p0/1 is valid. This signal is asserted only for a configuration write request.
- there is no mention of "pX_cii_rd_o" signal, can pX_cii_wr_o signal be used to determine read request? if this signal is at logic 0 , does it mean that this is CFG read request?
- pX_cii_addr_o[9:0] Output The double-word register address in the received TLP header on the CII.
- is this the address associated with CFW write? how do i know Config space offset at which MSI-X capability is located? So I can compare pX_cii_addr_o along with pX_cii_hdr_first_be_o to check if the CFG access to targeting "MSI-X Enable" or"MSI-X function mask" or not.
- how do I use CII interface so it ignores all offsets other than MSI-X capability structure related
- Wincent_Altera2 months ago
Regular Contributor
Hi ,
Please allow me to have sometime to check on your question.
Will get back to you soon.
Regards,
Wincent- Wincent_Altera2 months ago
Regular Contributor
Hi ,
At the meantime, we have an example design on CII implementation
https://github.com/altera-fpga/agilex7-ed-pcie-ciiCan you please check if those contain fit with your requirement ?
Regards,
Wincent
- pX_cii_wr_o Output Indicates that cii_dout_p0/1 is valid. This signal is asserted only for a configuration write request.