導航:首頁 > 源碼編譯 > 可以對模擬文件進行編譯嗎

可以對模擬文件進行編譯嗎

發布時間:2024-06-01 20:43:43

① 關於protues中仿所用的程序,用c語言編的程序和用匯編語言編寫的程序,哪個更有更有優勢

對於問題我想說以下幾點:
1.Proteus模擬時需要載入的是經過匯編(由匯編語言編寫的源程序文件時)或編譯與匯編(由C或其他高級語言編寫的源程序文件要先編譯成匯編語言告則,再匯編成hex、bin文件)的hex文件(稱為目標文件)。
2.Proteus與C語言沒有必然關系,要的只是hex文件,可以經過編譯生成hex文件的語言一大堆。
3.學好Proteus沒有成就遲者感,Proteus只適合一些小的設計,上不了正堂,而且Proteus模擬過的,實物不一定行的通,Proteus只適合理論上的初步驗證,當然學了還是多多益善。
4.匯編語言比C語言等在生成hex文件時形成指令的效率更高,比如,匯編語言幾乎每一句都有用,都會生成有效的二進制指令(除偽指令外),而C語言在生成二進制指令時有好多多餘的語句(比如函數調用時的不必要的入堆棧保護)。
5.匯編簡練,不易移植,不適合大一點的工程;C的編譯效率低,但是可移植性好,總之各有優勢,你現在看的應該是一些學習性的單片機程序,當然是小程序,經常襪旦棚遇到匯編就正常。
6.建議既要會C也要會匯編,這樣在以後用C等編寫的大工程中調試程序時,也可以知道某條語句其實現的原理,以便更好發現問題,解決問題。

② 濡備綍鐢∕odelSim se瀹屽叏緙栬瘧Xilinx搴撴枃浠

Modlesim 浠跨湡搴撶殑寤虹珛錛氬皢Modelsim鏍圭洰褰曚笅鐨刴odelsim.ini鐨勫睘鎬х敱鍙璇繪敼涓哄彲鍐欍傛柊寤轟竴涓鏂囦歡澶癸紝姣斿俵ibrary錛堜負鍙欒堪鏂逛究錛屾妸瀹冩斁鍦╩odelsim鐨勬牴鐩褰曚笅錛夈侱:/modelsim/library.鍚鍔∕odelsim,閫夋嫨[File]/[chang Directory],閫夋嫨D:/modelsim/library.
閫夋嫨[File]/[New]/[library]鍛戒護錛屽脊鍑篬Creat a New library],鍦╗lihrary Name]涓杈撳叆鈥渟imprims_ver鈥,鍚屾椂涓嬩竴鏍忎篃鑷鍔ㄨ緭鍏モ渟imprims_ver鈥濓紝鍗曞嚮OK銆 鍦ㄤ富紿楀彛涓閫夋嫨[compile]/[Compile]鍛戒護錛屽脊鍑篬compile Source Files],鍦╗Library]鐨勪笅鎷夊垪琛ㄤ腑閫夋嫨鈥渟imprims_ver鈥濆湪[鏌ユ壘鑼冨洿]涓閫変腑[Xilinx/veriog/src/simprims]鐩褰曚笅鐨勫叏閮ㄦ枃浠訛紝鍗曞嚮complie榪涜岀紪璇戙(榪欐椂鍙鑳戒細鑺變綘涓浜涙椂闂,鑰愬績絳夊緟緙栬瘧瀹屾瘯)鐢ㄥ悓鏍風殑鏂規硶灝唘nisims鍜孹ilinxcorelib涓変釜浠跨湡搴撹繘琛岀紪璇戙 榪欐椂鍦―:/modelsim/library 涓嬪氨鏈変互涓婁笁涓浠跨湡搴撱 7錛庢葷粨姝ラや負a錛氬緩絝嬪簱鐨勬斁緗璺寰刡錛氬瑰簱榪涜岀紪璇慶錛氬瑰簱榪涜屾槧灝勩傛渶鍚庨噸鏂板惎鍔∕odelsim鍙浠ュ湪鍒楄〃涓鐪嬪埌寤虹珛鐨勪笁涓搴撱

閭d箞榪欎釜鍔炴硶鏄庢樉鏄姣旇緝楹葷儲鐨勩傚叾瀹炴垜浠鍙浠ヨ繖鏍峰仛;
棣栧厛灝唌odelsim.ini鏂囦歡鍙璇繪ā寮忓幓鎺夛紝瀛樻。鍓嶉潰鎵撳瑰嬀銆傚湪鎮ㄥ畨瑁卛se鐨勭洰褰曚笅錛岃繘鍏ュ埌bin\nt鐩褰曚笅錛屼緥濡俥:\ise6\bin\nt錛岀『璁ゆ湁compxlib榪欎釜紼嬪簭鍦╟md涓榪愯宑ompxlib -s mti_se -f all -l all -o e:\modeltech_6.0\xilinx_libs灝卞彲浠ヤ簡錛宔:\modeltech_6.0鏄鎴戝畨瑁卪odelsim鐨勭洰褰曪紝鎮ㄥ彲浠ヤ綔鐩稿簲鐨勬洿鏀廣傚弬鏁頒篃鍙浠ユ寜鐓ф偍鐨勮佹眰浣滅浉搴旂殑鏇存敼銆
榪欐牱灝卞彲浠ヤ簡銆
闇瑕佹敞鎰忕殑鏄錛屽崈涓囪頒綇ise鍜宮odelsim鐨勫畨瑁呯洰褰曢兘涓嶈佸嚭鐜扮┖鏍礆紝鏈濂芥槸鐩存帴瀹夎呭湪鏍圭洰褰曚笅
modelsim涓嬬紪璇憍ilinx搴撶殑鏂規硶
榪欏嚑澶╋紝寤哄簱鐨勯棶棰樻瘮杈冨氾紝鍐欎竴涓寤哄簱鐨勬柟娉曘傛墍鐢ㄨ蔣浠訛細ISE7.1i+ModelsimSE6.0璇璦錛歏HDL棣栧厛瀹夎呰蔣浠躲傛敞鎰忥細ISE,Modelsim鐨勫畨瑁呰礬寰勪笉鑳藉惈鏈夌┖鏍箋傚彟澶栵紝Modelsim鐨勫畨瑁呰礬寰勫彲璁句負鈥$:/modelsim鈥濓紝鍏朵腑$涓虹洏絎︼紝涓嶈佷嬌鐢ㄩ粯璁ょ殑瀹夎呰礬寰勩傚皢Modelsim鏍圭洰褰曚笅鐨刴odelsim.ini鏂囦歡鐨勫彧璇誨睘鎬у幓鎺夈傚湪modelsim鐨勫懡浠ょ獥鍙d腑杈撳叆鍛戒護鈥渃ompxlib -s mti_se -arch all -l vhdl -w -lib all鈥濓紝鎸夊洖杞﹂敭鍗沖彲銆傜紪璇戝畬鎴愬悗錛屽皢Modelsim鏍圭洰褰曚笅鐨刴odelsim.ini鏂囦歡鐨勫睘鎬ц劇疆涓哄彧璇匯傚叧浜庘渃ompxlib鈥濆懡浠ゅ悇欏瑰弬鏁扮殑鍚涔夛紝璇峰湪modelsim鐨勫懡浠ょ獥鍙d腑杈撳叆鈥渃ompxlib -help鈥濇煡璇
鎶婂簱寤哄ソ鍚庯紝鎺ヤ笅鏉ョ殑浜嬫儏灝辨槸浣垮畠鎴愪負modelsim鐨勬爣鍑嗗簱銆傝繖鍙瑕佷慨鏀筸odelsim瀹夎呯洰褰曚笅鐨刴odelsim.ini鏂囦歡灝卞彲浠ヤ簡銆備慨鏀瑰悗鐨勫唴瀹瑰備笅錛歔Library]std = $MODEL_TECH/../stdieee = $MODEL_TECH/../ieeeverilog = $MODEL_TECH/../verilogvital2000 = $MODEL_TECH/../vital2000std_developerskit = $MODEL_TECH/../std_developerskitsynopsys = $MODEL_TECH/../synopsysmodelsim_lib = $MODEL_TECH/../modelsim_libsimprim_ver = G:/EDA/Xilinx/simprim_ver錛堝簱鐨勮礬寰勶紝浠ヤ笅鍚岋級unisim_ver = G:/EDA/Xilinx/unisim_verxilinxcorelib_ver = G:/EDA/Xilinx/xilinxcorelib_ver娉ㄦ剰鐨勬槸錛岃繖涓鏂囦歡鏄鍙璇誨睘鎬с備慨鏀逛箣鍓嶈佹妸榪欎釜灞炴у幓鎺夈傜鍏姝ワ細鍏蟲帀宸ョ▼錛岄噸鍚痬odelsim銆傛煡鐪嬭繖3涓搴撴槸鍚﹀湪library妗嗛噷闈銆

浜屻 鍦↖SE鐜澧冧笅錛岃皟鐢╯ynplify錛岀敓鎴愬悗浠跨湡鎵闇瑕佺殑鏂囦歡銆 涔嬫墍浠ヨ佸湪ISE鐜澧冧笅璋冪敤synplify錛屼富瑕佹槸鍥犱負鏂逛究錛佹垜涔熷皾璇曡繃鍦╯ynplify鐜澧冧笅緇煎悎璁捐℃枃浠訛紝鐒跺悗鍦↖SE閲岀紪璇憇ynplify鐢熸垚鐨別dif鏂囦歡銆備絾鏄涓嶆垚鍔熴侷SE鍦ㄧ涓夋柟宸ュ叿鏀鎸佹柟闈㈠仛鐨勬槸姣旇緝濂界殑錛屾劅瑙夎窡鐢↖SE鐩存帴緇煎悎涓鏍楓備笉榪囨湁涓涓緙虹偣鏄鐪嬩笉浜哛TL鍘熺悊鍥俱備綘鍙浠ュ湪synplify涓鎵撳紑ISE鐢熸垚鐨剆ynplify宸ョ▼鏂囦歡錛岃В鍐沖湪ISE涓涓嶆柟渚挎煡鐪媠ynplify緇煎悎緇撴灉鐨勯棶棰樸傜幇鍦錛屽氨瑕佸紑濮嬬浜屼釜澶фラや簡錛佺涓姝ワ細鍒涘緩ISE宸ョ▼鏂囦歡銆傞夋嫨濂藉櫒浠躲傛敞鎰廌esign Flow涓涓瀹氳侀夋嫨Synplify Pro Verilog銆傜浜屾ワ細緇煎悎璁捐℃枃浠訛紝涔熷氨鏄痸erilog鏂囦歡銆侷SE灝變細鑷鍔ㄨ皟鐢╯ynplify銆傦紙濡傛灉娌℃湁鐨勮瘽錛岄偅鍙鑳芥槸浣犵殑緋葷粺鐜澧冨彉閲忔病鏈夎劇疆濂斤級銆傛ゆ椂浼氬脊鍑轟竴涓瀵硅瘽妗嗭紝瑕佷綘閫夋嫨synplify鐨刲iscense銆傦紙榪欐ユ湰鏉ヤ笉鐢ㄨ寸殑銆傚傛灉娌℃湁瀵硅瘽妗嗗脊鍑烘潵鐨勮瘽錛屼篃涓嶈佺揣錛夐殢渚塊夋嫨涓涓錛屽氨絳夌粨鏋滀簡銆 絎涓夋ワ細鐢熸垚鍚庝豢鐪熼渶瑕佺殑鏂囦歡銆傛垜浠鍙浠ョ湅鍒板湪Implement Design涓鏈変笁涓澶у垎鏀錛岃繖瀵瑰簲鐫涓夌嶄豢鐪熴傛寜浣犵殑闇瑕佹寜涓嬬浉搴旂殑鍥炬爣錛岀敓鎴恗odelsim鍚庝豢鐪熸墍闇瑕佺殑鏂囦歡錛屼笅闈㈠圭敓鎴愮殑鏂囦歡鍜岀敓鎴愯繖浜涙枃浠剁殑鍥炬爣榪涜岃存槑銆

鍦ㄨ繖3縐嶄豢鐪熶腑錛屽彧鏈夌涓縐嶆病鏈夌敓鎴恠df鏂囦歡銆備篃灝辨槸璇村湪modelsim涓錛屽彧鏈夌涓縐嶅彲浠ヤ笉鐢ㄦ妸sdf娣誨姞鍒頒豢鐪熷櫒涓錛堝簾璇濓紒錛侊級銆傚埌榪欐椂錛屾墍鏈変負鍚庝豢鐪熸墍鍋氱殑鍑嗗囧伐浣滃氨閮藉畬鎴愪簡銆備笅闈㈠氨鍚庝豢鐪熶婦渚嬨傛垜浠瑕佽繘琛岀殑鏄疨lace&Route Simulation錛佹墍浠ユ寜涓嬪浘鏍囷紝鐢熸垚涓轟笅涓姝ョ殑宸ヤ綔鎵闇瑕佺殑鏂囦歡鍚с備笁銆佺敤modelsim榪涜屽悗浠跨湡銆 鍦ㄥ紑濮嬭繖涓姝ヤ箣鍓嶏紝寤鴻涓轟綘鐨勮捐℃柊寤轟竴涓鏂囦歡澶廣傚綋鐒朵綘涔熷彲浠ヤ笉榪欐牱鍋氾紝涓嶈繃瀵逛簬鎵閫犳垚鐨勯夯鐑︼紝鏈浜轟笉璐熻矗錛 鍚庝豢鐪熸誨叡闇瑕3涓*.v鏂囦歡銆備竴涓鏄浣犵殑妯″潡鐨勬祴璇曟枃浠訛紝涓涓鏄疘SE鐢熸垚鐨剎xx_timsim.v錛堟敞鎰忥紝鎴戜滑瑕佹洿鏀硅繖涓鏂囦歡鐨勬枃浠跺悕錛屾敼涓簒xx.v錛屼篃灝辨槸浣犵殑欏跺眰妯″潡鍚嶄簡銆傝繖涔熸槸鎴戣佹眰鏂板緩鏂囦歡澶圭殑鍘熷洜浜嗭紝閲嶅悕榪欎歡浜嬫瘮灝.鐩栬尐鏄涓嶇瓟搴旂殑錛夈傚彟涓涓鏄痝lbl.v鏂囦歡銆傝繖涓鏂囦歡鍦╔ilinx瀹夎呯洏:\Xilinx\verilog\src涓嬨俈HDL涓嶉渶瑕佺3涓鏂囦歡銆傚嶅埗榪3涓鏂囦歡鍒版柊寤虹殑鏂囦歡澶逛笅錛屽紑濮嬫垜浠鐨勭涓姝ュ伐浣溿傜琌姝ワ細涓簒xx_timsim.v鏀瑰悕錛侊紒錛佺涓姝ワ細鏂板緩宸ョ▼錛屾妸3涓鏂囦歡娣誨姞鍒拌繖涓宸ョ▼閲屻傦紙澶у墮兘榪欎箞鐔熶簡錛屼笉鐢ㄦ暀浜嗗惂錛夌浜屾ワ細鍦╬roject妗嗛噷鎸夊彸閿鈥斻媋dd to project 鈥撱媋dding simulation configuration錛屽備笅鍥撅細

絎涓夋ワ細鍦ㄥ脊鍑虹殑瀵硅瘽妗嗛噷錛岄夋嫨SDF欏廣傛妸ISE鐢熸垚鐨凷DF鏂囦歡娣誨姞榪涘嚭銆傚備笅鍥撅細
璁頒綇Apply to Region榪欎竴欏硅佸啓濂姐傚畠瀵瑰簲鐨勬槸浣犵殑tb鏂囦歡錛堝氨鏄嫻嬭瘯鏂囦歡錛夎皟鐢ㄧ殑欏跺眰妯″潡鍚嶃傦紙涓嶆槸欏跺眰妯″潡鍚嶏紒錛侊級姣斿備綘鐨勬祴璇曟枃浠舵槸text錛屼緥鍖栭《灞傛ā鍧梩op涓篿_top,閭d綘搴旇ヨ繖鏍峰~錛歵ext/i_top鎴栬/text/i_top銆傚傛灉鏄絎涓縐嶄豢鐪燂紝姝ゆュ彲浠ョ渷鐣ャ
絎鍥涙ワ細娣誨姞library銆傛垜浠鍒涘緩鐨勯偅涓変釜搴撶粓浜庢淳涓婄敤鍦轟簡錛佹垜浠瑕佹坊鍔犵殑灝辨槸榪3涓銆傞夋嫨library欏癸紝娣誨姞榪3涓搴撱備綘鐨勫簱寤哄湪鍝閲岋紝灝卞幓鍝閲屾壘錛佽繖涓涔熶笉鐢ㄨ翠簡鍚
絎浜旀ワ細閫夋嫨瑕佷豢鐪熺殑妯″潡銆備綘鍏堜笉瑕佹ワ紝鐪嬫竻妤氬啀閫夈傦紙鏈変簺鏈嬪弸鎬у瓙鎬ワ紝椹捐交灝辯啛灝遍変簡錛夋垜浠瑕侀夌殑浠跨湡妯″潡鍙涓嶆涓涓錛屽備笅鍥撅紝鐢–TRL閿瀹炵幇錛侊紒閫変簡涔嬪悗鐐0k錛侊紒

③ verilog 模擬編譯

testbench是不能被編譯的!
請把testbench在編譯中去掉
testbench 是在模擬時用的

mole test_AND;
reg a,b;//定義兩個寄存器變數a和b
wire out1,out2;//定義兩個線網out1和out2
initial //產生測試數據(激勵信號)
begin
a=0;b=0;
#1 a=1;
#1 b=1;
#1 a=0;
end

initial//監視功能
begin
$monitor("Time=%d a=%b b=%b out1=%b out2=%b",$time,a,b,out1,out2);
end

AND gate1(a,b,out2);/*模塊AND實例,激勵信號通過a和b端進入AND模塊,測試結果從out2輸出*/
NAND gate2(a,b,out1);/*模塊NAND實例,激勵信號通過a和b端進入AND模塊,測試結果從out1輸出*/
endmole

④ 在Quartus2下編譯程序的具體操作步驟是什麼,求各位懂的大神們指導一下

1.建立工程file -> new project wizard
2.建立文件file -> new -> verilog hdl或者vhdl,對想要編譯文件,在project navigator中選擇set as top-level entity,然後選擇start analysis & synthesis(兩個小箭頭的圖標)
3.建立模擬文件 file -> new -> vector waveform file ,添加要模擬的變數,保存(一定要手動保存),然後在主界面的Assignments -> settings 中的simulator settings中選擇 simulation mode為Functional(一般默認為timing,一定要改掉),simulator input中先把剛剛建立好的模擬文件.vwf
4.模擬步驟:主界面Processing -> generate functional simulation netlist,然後點擊start simulation(藍色箭頭圖標)

⑤ 我用keil c51模擬軟體編的匯編程序,編譯後顯示目標沒產生

作為新手,還是按照KEIL默認的安裝路徑安裝吧(雖然這個路徑是可以任意修改的)。
你看看你的Keil是否裝在了 C:\keil\ 這個文件夾下,,如果不是,你默認配置文件中的配置是找不到相應A51、C51、BL51等工具的。你可以嘗試裝到那路徑下。

另外,如果是沒有注冊過的KEIL,當程序超過2K時,會出現代碼限制的錯誤,也是不能通過編譯的,,,這個可以通過KEIL的注冊機解決。

其實當你遇到編譯不能通過時,最好能把你的編譯信息發上來,這樣就能更好的了解你那裡的情況。

我的郵箱是 [email protected]
如果有問題,我有時間的話,可以幫助你.

⑥ 如何在VIVADO中編譯模擬庫

1、選擇vivado菜單「Tools」——>「Compile Simulation Libraries...」命令
2、在彈出的對話框中設置器件庫編譯參數,模擬工具「Simulator」選為ModelSim,語言「Language」、庫「Library」、器件家族「Family」都為默認設置All(當然也可以根據自己的需求進行設置),然後在「Compiled library location」欄設置編譯器件庫的存放路徑,這里選擇新建的vivado2014_lib文件夾,此外在「Simulator executable path」欄設置Modelsim執行文件的路徑,其他參數默認。
3、設置好參數後點擊「Compile」按鈕開始器件庫的編譯。
4、器件庫編譯結束後給出編譯報告,從報告中看出0個警告和0個錯誤。
5、打開vivado2014_lib文件夾,便可以看到已經產生了器件庫。

閱讀全文

與可以對模擬文件進行編譯嗎相關的資料

熱點內容
ad20庫中的51單片機怎麼找 瀏覽:616
阿里雲伺服器有點卡嗎 瀏覽:204
蘋果7如何讓app後台運行 瀏覽:166
耐克app預售產品哪裡看 瀏覽:205
補全演算法一年級 瀏覽:125
evd數據調校軟體加密 瀏覽:437
app聽課與微信如何設置分屏 瀏覽:909
加密的excel怎麼撤銷 瀏覽:39
java動態數組初始化 瀏覽:974
編譯後程序塊過大不適合 瀏覽:673
李煜pdf 瀏覽:843
python寫游戲邏輯 瀏覽:489
pdf轉換成word免費版在線轉換 瀏覽:464
荒廢了三年還能做程序員嗎 瀏覽:658
阿里雲內網vpn伺服器 瀏覽:103
l命令第一個點對第二個點對不上 瀏覽:829
oracle導出表命令 瀏覽:910
怎麼寫域名加密 瀏覽:1003
手機文件壓縮出錯 瀏覽:523
如何登錄毒app 瀏覽:836