Abstract
『Leaving target processor paused』是Nios II初學者常遇到的錯誤訊息,本文提出解決方法。

使用環境:Quartus 6.0 SP1 + Nios II 6.0 + DE2 (Cyclone II EP2C35F627C6)

Introduction
C++在template部分,有一個讓人詬病之處是:compiler所回報的錯誤訊息很難debug,導致很多人對template避而遠之。Nios II也是如此,錯誤訊息並不明顯,初學者常看到以下錯誤訊息。

(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)


導致這個錯誤訊息的原因很多,可惜Nios II並沒有在錯誤訊息中明確的告知錯誤原因,導致初學者不知該如何debug。

Solution
請依序檢查以下設定:

1.在Quartus II中將Unused Pins設成tri-stated
Assignments -> Device

(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)


出現Setteing視窗,按下Device & Pin Options

(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)


出現Device & Pin Options視窗,將Reserve all unused pins:選擇 As input tri-stated。

(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)


2.在SOPC Builder中,將singnal設成Assign in Quartus II Project

(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)


(當SOPC Builder中有設定Target Board時,才需設定此頁,若為Unspecified Board時,則無此頁設定。)

3.clk和reset_n也要加上pin assignment
初學者常忘記將clk和reset_n加上pin assignment,clk的pin assignment在DE2為PIN_N2 (50 Mhz),這沒問題,但reset_n要接什麼呢?這裡很tricky,一定要接上KEY!!接switch沒用!!

(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)


pins.tcl

(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)cmp add_assignment "hello_world" "" "clk" "LOCATION" "PIN_N2"
(原創) 如何解決Nios II的『Leaving target processor paused』的錯誤訊息? (IC Design) (Quartus II) (SOPC Builder) (Nios II)cmp add_assignment 
"hello_world" "" "reset_n" "LOCATION" "PIN_G26"


Conclusion
這是我和Quartus II、SOPC Builder和NIOS II博鬥數天的心得,原本也懷疑是不是DE2開發版有問題,換過5塊版子後,證明是設定的問題。老實說,Quartus II這類EDA工具,還是沒有軟體開發工具如Visual Studio那樣成熟,Visual Studio的錯誤訊息很明顯,很容易根據錯誤訊息debug,但Quartus II、Nios II的錯誤訊息都很含糊, 完全需靠『經驗』和不斷的嘗試錯誤。

See Also
(原創) 如何解決Nios II的Timestamp不match的錯誤訊息? (IC Design) (DE2) (Nios II) (Quartus II) (SOPC Builder)
(原創) 如何解決『Timestamp value does not match: image on board is older than expected』錯誤訊息? (SOC) (Nios II)

相关文章:

  • 2021-09-08
  • 2021-07-26
  • 2022-02-24
  • 2021-09-16
  • 2021-08-31
  • 2021-09-12
  • 2021-09-28
  • 2022-03-04
猜你喜欢
  • 2022-02-27
  • 2021-09-25
  • 2022-01-01
  • 2022-03-09
  • 2022-02-15
  • 2022-01-10
相关资源
相似解决方案