Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
8 years ago

PCIe configuration registers changed after resuming from Windows sleep

We are developing a PCIe card, some details are listing bellow:

Stratix V FPGA

FPGA Configuration AS x4 mode

PCIe Gen 3.0 8x lanes

PCIe Avalon-MM DMA IP core

Quartus 14.0

Windows 7/10 64 bit

It works fine after normal Windows booting, but it doesn't work after Windows resuming from sleep.

It looks like the PCIe configuration registers changed after resuming.

The registers before sleep:

->see attachment 1, no marks

The registers after resuming, the marked registers are changed:

->see attachment 2, marked

What has happened? Is it a bug of IP core or Windows?

I tried to save the register values into a file before sleeping, and restored the register values after resuming, then it can work.

I don't like the way of save/restore values because it seems as a abnormal method, and then I have to program for checking the Windows status of normal booting or resuming.

Any other way to solve the problem?

Thanks,

wisywyx
No RepliesBe the first to reply