您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)Intel Quartus如何在ubuntu18.04.4上安裝,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
首先去Intel的Quartus官網(wǎng)https://www.intel.cn/content/www/cn/zh/software/programmable/quartus-prime/overview.html找到下載界面
然后選擇版本和操作系統(tǒng)
點(diǎn)擊下載
注意這里有官方的問題解答和安裝教程,建議看英文版的安裝教程https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/manual/quartus_install.pdf,介紹更加全面和詳細(xì)
有一點(diǎn)疑惑是問題解答說安裝目錄可以有空格,但是英文版的安裝教程說不能有,很奇怪
下載完解壓,按照教程安裝,然后啟動(快捷圖標(biāo)和命令行都可以,根據(jù)英文版教程,用<installation-directory>/quartus/bin/quartus
即可啟動,我加了alias(2020.8.9:因?yàn)樯婕暗矫钚屑澳_本,最終選擇了用戶變量$PATH),直接quartus啟動),報(bào)錯: quartus: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
大概意思是說缺少這個libpng12.so.0,然后復(fù)制這個erro到谷歌,打開了第一個回答、第二個回答和第一個回答下面的子回答
第一個回答https://community.intel.com/t5/Programmable-Devices/Quartus-can-t-find-shared-library/td-p/161251是說他有l(wèi)ibpng12.so.0但是沒有識別到,可能路徑不對,我locate我的libpng12.so.0發(fā)現(xiàn)在snap里面
zli@lizhen:~/altera_lite/15.1/quartus$ locate libpng12.so.0 /opt/kingsoft/wps-office/office6/libpng12.so.0 /opt/kingsoft/wps-office/office6/libpng12.so.0.50.0 /snap/core/7270/lib/x86_64-linux-gnu/libpng12.so.0 /snap/core/7270/lib/x86_64-linux-gnu/libpng12.so.0.54.0 /snap/core/7270/usr/lib/x86_64-linux-gnu/libpng12.so.0 /snap/core/9665/lib/x86_64-linux-gnu/libpng12.so.0 /snap/core/9665/lib/x86_64-linux-gnu/libpng12.so.0.54.0 /snap/core/9665/usr/lib/x86_64-linux-gnu/libpng12.so.0 /snap/sublime-text/85/lib/x86_64-linux-gnu/libpng12.so.0 /snap/sublime-text/85/lib/x86_64-linux-gnu/libpng12.so.0.54.0 /snap/sublime-text/85/usr/lib/x86_64-linux-gnu/libpng12.so.0
第二個回答與第一個回答一樣。第一個回答下面的子回答有一個是下載libpng16-16然后手動創(chuàng)建文件夾后ln過去https://askubuntu.com/questions/1093817/when-trying-to-install-crossover-deb-i-get-error-dependency-is-not-satisfiable,其余的子回答感覺很復(fù)雜的樣子,沒仔細(xì)看。但其實(shí)第三個主回答就有答案https://stackoverflow.com/questions/53403790/cannot-open-shared-object-file-libpng12-so-0,只不過當(dāng)時(shí)覺得復(fù)雜看不懂。
然后我在最前面加了ubuntu18 再次搜索,一略而過覺得很復(fù)雜,但其實(shí)第一個回答就是剛才的第三個主回答。
我本想?yún)⒄漳莻€子回答用ln把snap中的libpng12.so.0 link過去,但靈機(jī)一動可以用ubuntu quartus install關(guān)鍵詞再搜索一次,然后發(fā)現(xiàn)了這篇文章https://www.bitsnbites.eu/installing-intelaltera-quartus-in-ubuntu-17-10/
他說安裝Qurtus需要用到linpng12,而ubuntu17沒有,所以需要先安裝。
我覺得ubuntu18也沒有,于是返回剛才的搜索界面找到第一個回答https://stackoverflow.com/questions/53403790/cannot-open-shared-object-file-libpng12-so-0,sudo su以后運(yùn)行回答提供的命令
wget -q -O /tmp/libpng12.deb http://mirrors.kernel.org/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1_amd64.deb \ && dpkg -i /tmp/libpng12.deb \ && rm /tmp/libpng12.deb
再打開quartus就可以了。
####啟示:1.不要看子回答,不相關(guān);2.換搜索關(guān)鍵詞的思路。
我用命令行打開后會報(bào)兩個錯誤
zli@lizhen:~$./altera_lite/15.1/quartus$/bin/quartus Gtk-Message: 16:29:40.101: Failed to load module "canberra-gtk-module" (quartus:16485): Gtk-WARNING **: 16:29:40.608: Error loading theme icon 'window-close' for stock: Unable to load image-loading module: /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so: /home/zli/altera_lite/15.1/quartus/linux64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /usr/lib/x86_64-linux-gnu/libicuuc.so.60)
第一個錯誤直接谷歌,按照https://askubuntu.com/questions/208431/failed-to-load-module-canberra-gtk-module執(zhí)行
sudo apt-get install libcanberra-gtk-module
搞定。
第二個錯誤直接谷歌,按照http://www.stevesmuddlings.org/2015/09/test-post-1.html執(zhí)行
cd <install_dir>/15.1/quartus/linux64 sudo mv libstdc++.so.6 libstdc++.so.6.quartus_distrib sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6
搞定。
裝好后按照這個教程熟悉一下GUI界面:https://blog.csdn.net/Alexanderrr/article/details/51615254,注意文中所說的文件名要與module后面定義的實(shí)體名一致
。
如果碰到Warning (12125): Using design file test_for_blif.v, which is not specified as a design file for the current project, but contains definitions for 1 design units and 1 entities in project Info (12023): Found entity 1: test_for_blif
是因?yàn)闆]有把文件添加到project里面,打開File把文件添加進(jìn)去:
我寫了一個一位全加器(笑)
module test_for_blif( input cin, input a, input b, output reg [1:0] s ); always @ (*) s = a + b + cin; endmodule
然后按照CAD_Flow0的教程一次就可以成功,修改完qsf文件后不用重啟quartus,保存以下直接編譯就行。這里給出before_optimize和after_lut_map(after complete optimization and tech-mapping)后的結(jié)果,還是很明顯有區(qū)別的,after_lut_map(after complete optimization and tech-mapping)已經(jīng)映射到了兩個3LUT上去:
before_optimize:
.model test_for_blif .inputs cin a b .outputs s[0] s[1] #g1 = Add0~synth .names a b g1 10 1 01 1 #g1 = Add0~synth #s[0] = Add1~synth .names cin g1 s[0] 10 1 01 1 #g3 = Add0~synth .names a b g3 11 1 #g1 = Add0~synth #g4 = Add1~synth .names cin g1 g4 11 1 #g3 = Add0~synth #g4 = Add1~synth #s[1] = Add1~synth .names g3 g4 s[1] 00 0 .end
after_lut_map(after complete optimization and tech-mapping):
.model test_for_blif .inputs cin a b .outputs s[0] s[1] #s[0] = Add1~synth .names cin a b s[0] 100 1 010 1 001 1 111 1 #s[1] = Add1~synth .names cin a b s[1] 110 1 101 1 011 1 111 1 .end
還需要注意一點(diǎn)的是根據(jù)論文Benchmarking Method and Designs Targeting Logic Synthesis for FPGAs
在before_optimize和after_lut_map(after complete optimization and tech-mapping) 中間的after complete optimization還可以輸出一次blif,但是CAD_Flow0的教程中并沒有教這一步應(yīng)該怎么做。
我猜測肯定是改為before_lut_map或者是after_optimize,前者不行,后者成功!這里給出after_optimize的結(jié)果,因?yàn)槲疫@個只是一位全加器。邏輯簡單,所以優(yōu)化不優(yōu)化都一樣
after_optimize:
.model test_for_blif .inputs cin a b .outputs s[0] s[1] #g1 = Add0~synth .names a b g1 10 1 01 1 #g1 = Add0~synth #s[0] = Add1~synth .names cin g1 s[0] 10 1 01 1 #g3 = Add0~synth .names a b g3 11 1 #g1 = Add0~synth #g4 = Add1~synth .names cin g1 g4 11 1 #g3 = Add0~synth #g4 = Add1~synth #s[1] = Add1~synth .names g3 g4 s[1] 00 0 .end
#2020.7.26 在ubuntu 18.04.4下嘗試Quartus 20.1、一個簡單的一位全加器代碼分別在before_optimize、after_optimize和after_lut_map可以生成對應(yīng)的blif文件。
另外,CAD_Flow0的命令太老了,跑大例子跑不通,沒有打開balckbox,所以復(fù)現(xiàn)論文Benchmarking Method and Designs Targeting Logic Synthesis for FPGAs的例子時(shí)是采用例子中的.ini中的命令來執(zhí)行的。
只需要把CAD_Flow0中的命令全部去掉,改為:
set_global_assignment -name INI_VARS "cdb_ignore_error_for_rom_missing_mif=on;no_add_ops=on;dump_blif_with_blackboxes=on;dump_blif_before_optimize=on;abort_after_dumping_blif=on"即可。
after_optimize、after_lut_map只需要做相應(yīng)更改即可。
cdb_ignore_error_for_rom_missing_mif=on 這條命令是針對rom的初始化來說的,如果verilog或者vhdl里面沒有rom的話,這條命令可有可無。
no_add_ops=on 這條命令是有用的,實(shí)際測試有這條命令在after_optimize后生成的blif文件比沒有這條命令生成的blif文件行數(shù)會減少。after_lut_map后也同樣如此。
dump_blif_with_blackboxes=on 這條命令也是需要的,生成blackbox必須的,沒有會報(bào)錯。
關(guān)于“Intel Quartus如何在ubuntu18.04.4上安裝”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。