PCI高速數(shù)據(jù)采集方案介紹
將UserSIpaceAddress傳遞給應用程序,則應用程序就可以訪問存放數(shù)據(jù)的內(nèi)存空間了。
FPGA在每傳送給CY7C09449一塊2k雙字的數(shù)據(jù)后就通過CY7C09449的引腳IRQ_IN向主機發(fā)送中斷請求。在主機的中斷服務程序中用m_Me-morjPhyPhysicalAddress設置CY7C09449的DMA3E機物理基地址寄存器,然后設置DMA局部基地址寄存器、DMA長度寄存器來配置數(shù)據(jù)傳輸?shù)脑吹刂返刂泛蛿?shù)據(jù)長度,然后再寫CY7C09449的DMA控制寄存器來啟動DMA傳輸。在所有數(shù)據(jù)塊傳輸完畢,主機中斷服務程序發(fā)送給應用程序一個消息,這時應用程序就可以通過UserSpaceAddress訪問接收到的數(shù)據(jù)了。
5 結論
在高速數(shù)據(jù)采集卡的設計中FPGA對局部總線的控制邏輯由于采用了同步數(shù)據(jù)傳輸控制方式使得局部總線的最高傳輸速度可達200Mb/s。在 WindowsXP下的驅動程序設計使用了DMA數(shù)據(jù)傳輸方式,提高了數(shù)據(jù)存儲速度。高速數(shù)據(jù)采集卡可以達到80Mb/s的數(shù)據(jù)采集速度,設備運行穩(wěn)定,達到了設計要求。
評論