Forum Discussion
18 Replies
- Altera_Forum
Honored Contributor
Any PCIe example working on XP must support legacy interrupts. The PCIe core that is used in Altera's example presumably does; if I get time I'll have a look at the application note. You need to check your SOPC PCIe configuaration builder settings to see if this capability exists and, if it does, make sure its selected. The core that I used supported only msi so I had no choice but to move to Vista and W7 for development.
You can, of course, manually control the DMA registers and poll them to see if DMA is actually working in your design, without using/needing interrupts. Kind regards Andy - Altera_Forum
Honored Contributor
Hi,
I have two question, I'm working on the basic SOPC builder Design example ( chapter 8 in the PCIe complier User guide). I'm using Arria GX kit dev - simulation running fine, while I was synthesis the design I got a critical warning of crossing between clocks if one of the clocks are from transceiver - and the constrains at the pcie_complier.sdc file are ignored - I try to use set false path between those clocks -no critical warning. I use simple Linux application that write and read packet to/from host to local RAM, low rate of packet everything work fine. I moved to higher rate (not real high 34MByte/s) and after 10,000 packets the DMA "stuck" und don't send back the Interrupt, I add signal tap on the Avalon and on the 512 test signal, and when this occur the error signal are asserted on error sequence number at the Data link layer, my question are : 1. Constrains- what should I do with this crossing clock critical warning if not ignore it? 2. Avalon MM seems to be problematic in case of error from the transaction layer (PCIe) -no signal that indicate error on this transaction? Thank you, Tal. - Altera_Forum
Honored Contributor
Hi,
Can any one suggest how we can simulate PCIE SOPC design example using SystemVerilog/VMM based environemt under Synopsys VCS compiler? I assume the follwoing: 1) Endpoint as RTL (DUT) 2) Root Port (RP and VC) as BFM 3) How can driver be used thru an interfcae to the BFM. Thanks. Regards, Muhammad - Altera_Forum
Honored Contributor
Hi Mohammad,
I will take one step back and try to use the Avalon verification suite (Quartus 9.1). you can add to your SOPC system Avalon BFMs and Avalon Monitors. I believe that this will be a good start point - verifying you Avalon MM components. and for this you don't need the PCIe core. later when you sure that your component are well covers you try using the PCIe VMM. Hope that I help a bit? Regards, Tal. - Altera_Forum
Honored Contributor
Has anyone had issues with PC hanging and require power cycle when using SOPC based PCIe Hard IP core? Our own PCIe driver installs but if we try to disable the driver, the PC hangs. The same driver doesn't hang when disabling/enabling/uninstall for Altera's PCIe_hiperf_a2gx builds. However, Altera didn't use SOPC for their hiperf demos. I am using the Arria II GX 125k dev board. Also, Jungo created .inf files hang the PC during install with SOPC based PCIe, but exhibit no problems with Altera's hiperf demos. We can read and write to regs in our SOPC version with Jungos GUI and all seems to work fine except when trying to change the driver.
- Altera_Forum
Honored Contributor
Andy,
Did you do any speed tests when you did get the DMA working? Our setup is working but the speed is only 16Mbyte/s to 65Mbyte/s depending on the host chipset. We are using 9.1sp2 and x1 lane with SOPC flow. - Altera_Forum
Honored Contributor
hello:
I downloaded your files and did some simulation in modelsim-altera6.5.First I built an sopc system including DMA Control,On Chip memory(RAM) and PCI Express.My quartus version is 9.1.Then I run the testbentch provided in the project folder.The result is in the attachement,I think the result is not correct. I don't understand why the value of DMA signal "length" is always"000000",and the simulation result is also run out of control,Can anyone figure out the reason? - Altera_Forum
Honored Contributor
btesar,
Your PC hanging When you uninstall PCIE driver. This case was described in "MegaCore IP Library Release Notes and Errata". It said "When the host programs the PMCSR register at address 0x1f to the D3 state, Hard IP endpoint variants created in SOPC Builder might hang while performing the power management message handshaking protocol with the root port." The solution is to set test_in[7] = 1 to disable all low state power negotiations. And this was fixed in version 10.1 of the PCI Express MegaCore function.