2008-12-10 222 views
5

我正在使用Altera Quartus 2來執行自定義8位處理器,並且需要永久性地在我的筆記本電腦上進行編譯。我只使用模擬,並在原理圖(框圖)和VHDL中製作處理器。現在編譯需要大約10分鐘,這是一個痛苦,因爲我更關注項目的調試階段,在這個階段我必須修復內部時序並做很多很少的更改以查看會發生什麼。如何使Quartus II更快地編譯

我實際上並沒有把它放在FPGA上,所以我需要編譯階段的「鉗工」和「彙編」?

我可以更改一個lpm_ram_dq的內存文件的內容,並在模擬中對其進行測試而無需重新編譯?

總之,任何人都知道如何讓它編譯得更快?

回答

2

按重要性遞減。

  • 更多記憶。 4 GB爲32位操作系統。 某些設計需要更多,並且 需要64位操作系統。
  • 請勿過度約束設計。
  • 將編輯選項更改爲不嘗試爲 難。這是在任務> 設置>鉗工設置>快速適合 (或自動適應)
  • 8.1支持多個核心。
  • Hiearchical編譯幫助,特別是如果您有同一個塊的多個實例。

2分鐘真的很短,我同意以前的海報。一扇門將需要很長時間。

+0

1:我的筆記本電腦有2GB內存,應該足夠我的項目 2:你的意思是? 3:沒有奏效,Fitter仍需要很長時間 4:我該怎麼做?我不能讓它使用我的CPU的100% 5:我確實有很多同一個塊的實例,我該如何做一個hiearchical編譯? – Hoffmann 2008-12-20 03:11:34

2

有些事情:

  • 如果你不把它放在一個FPGA,爲什麼採用Quartus編譯?只需用Modelsim或者ActiveHDL或者其他任何模擬器來模擬它。
  • 2分鐘是非常短編譯時間短。真的:-)
  • 嘗試的Quartus 8,它比7更快和更老多
  • 要檢查你的代碼正確合成,看到了網表,你確實不需要鉗工和彙編步驟
+0

1:沒有選擇,我正在做一個大學任務,教授需要Quartus II Simulation。 2:我的項目現在編譯時間爲10分鐘,大約6分鐘處於鉗工階段。我使用Quartus 8.1 4:我不明白,你能解釋得更好嗎?我是一名硬件設計師noob ... – Hoffmann 2008-12-20 03:03:58

+1

只需用Altera版本的ModelSim做一些迭代仿真,然後在您認爲自己已經有了工作的情況下運行Quartus模擬器。如前所述,如果不針對FPGA,則不要進行完整編譯,只需執行分析和綜合部分即可。 – 2014-09-17 13:20:53

2

如果您只需要在Quartus中模擬,則不必運行完整編譯。如果您按下Ctrl-K,則只執行分析和闡述。 quartus模擬器應該爲你做這個。

還有其他幾個人提到的:10分鐘很短的編譯時間。對於真正的設計,讓它至少運行一個小時並不罕見。

2

如果您不關心完全優化結果並希望得到悲觀估計值或進行比較,那麼可以使Quartus綜合速度更快。

set_global_assignment -name PHYSICAL_SYNTHESIS_EFFORT FAST 

指定的工作量,在編譯時間上,物理綜合應該使用。快速使用較少的編譯時間,但可能會降低物理綜合能夠實現的性能增益。

set_global_assignment -name FITTER_EFFORT    FAST_FIT 

快速飛度下降的優化措施,以減少編譯時間,這可能會降低設計性能。

代替execute_flow -compile而且,使用:

execute_flow -implement 

選項來運行編譯高達路線階段,跳過後密集型算法所有的時間。

與英特爾/ Altera公司的工程師會議,使用-implement這是球停在比-compile快約20%,和時序收斂結果進行遍歷時,來了建議。

你也可以嘗試以下方法:

set_global_assignment -name SYNTHESIS_EFFORT   FAST 

注:這有以下警告,雖然我傾向於看到一些設計的整體運行速度。

設置爲快速時,省略一些步驟可以更快地完成合成;然而,可能會有一些性能和資源成本。 Altera建議僅在運行早期時序估計時將此選項設置爲快速。運行「快速」綜合會產生一個網表,這對Fitter的路線來說會稍微困難一點,因此整體擬合過程會變得更慢,從而抵消了由於「快速」綜合而實現的任何性能提升。