當在多個平行執行的迴圈內用DMA將資料從FPGA傳到主機端時,其中有一個迴圈會被暫停



主要軟體:
主要軟體版本: 2.0
主要軟體修正版本:
次要軟體: N/A

問題:

如果在CRIO-9002/9004或者透過網路(遠端呼叫過程 - PRC)控制FPGA,讓它在多個平行執行的迴圈內使用DMA,則當其它迴圈正在執行時,其中有一個迴圈會被暫停。



解答: 這個問題的解決辦法是透過修改在控制器內的ni-rt.ini 檔案來增加正在執行的cRIO Real-Time控制器的執行緒。cRIO預設是只有一個執行緒。
要增加執行緒的數目,請執行以下步驟:
  1. 在Measurement and Automation Explorer (MAX),在cRIO上按右鍵並選擇Transfer File,以用FTP的方法連到控制器。
  2. 將ni-rt.ini 檔案複製一份備份到你的電腦。
  3. 用記事本或其它文字編輯器來打開ni-rt.ini檔案。
  4. 將以下一行 
    ESys.StdNParallel=1
    修改成 
    ESys.StdNParallel=2
  5. 透過FTP把修改後的ni-rt.ini 檔案傳到cRIO控制器並取代原本的檔案。


注意: 我們建議你在修改ni-rt.ini 檔案前要先做備份。

相關連結:

附加檔案:





報告日期: 03/21/2006
最後更新: 12/11/2007
文件偏號: 3VKDOURY