From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



LabVIEW FPGA 와 HOST VI사이에 동기화 시킬 수 있는 가장 좋은 방법은 무엇 입니까?



주요한 소프트웨어:
주요한 소프트웨어 버전: 1.1
문제가 해결된 소프트웨어 버전: N/A
부차적인 소프트웨어: N/A

문제점: LabVIEW FPGA와 Host사이의 동기화가 필요할때, Interrupt 와 pollong method중 어떤것을 택해야 하는지요?

솔루션: Interrrupts방법은 FPGA에서 보내주는 동기화 신호를 기다리는 동안 Host Interface 가 휴면하고 있다는 장점을 가집니다. 이러한 휴면 시간은 Host가 자신의 능력 모두로 다른일을 수행할 수 있게 하고, 이는 Host 가 Real Time 환경으로 동작하는데 아주 유용합니다. Interrupts 방법의 단점은 이를 수행하는데 17ms정도가 소요되고, 추가로 Interrupt acknowledge를 수행하는데 1.5ms과 FPGA Device로 부터 Host가 불린언 혹은 숫자를 불러오는데 1ms정도가 소요 됩니다.

반면, polling 방법은 Interrupt 방법에 비해 동작이 훨씬 빠르게 수행되지만, Host Interface가 계속 작업을 수행하며, 아주 약간의 시간만을 낮은 우선순위를 가지고 있는(즉, 먼저 수행되어야 하는) 일을 행하는데 할애 하게 됩니다. 이러한 문제는 polling 동기화의 루프 속도를 줄여 줌으로서 완화될 수 있습니다.

Interrupts 방법은 FPGA와 Host간에 데이터가 드문드문 전달 되며, Host가 여러개의 일을 수행해야 할때, Polling 방법은 많은양의 데이터가 보다 정확한 시간 간격을 가지고 전송 되야 할때 사용할 것을 추천해 드립니다.

LabVIEW 8.0에서 새롭게 제공되는 DMA를 사용하면 많은 데이터를 전송하는데 있어서 위와 같은 동기화의 필요성을 생각하지 않아도 되는 편의성을 제공 합니다. DMA에 관한 좀더 자세한 정보는 아래의 웹을 참고 하십시요.

관련 링크: http://zone.ni.com/devzone/conceptd.nsf/webmain/0b5ff8ed662652ee8625708c00548ed8 http://zone.ni.com/devzone/conceptd.nsf/webmain/c1013cb24fc508ef8625708b0071b3fb

첨부:





리포트 날짜: 11/15/2005
마지막 업데이트: 05/29/2006
문서 번호: 3REMEGRY