freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

【socvista】西電verilog講義(編輯修改稿)

2024-11-13 00:54 本頁面
 

【文章內(nèi)容簡介】 out = b。 endmodule 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 a b sl out 2021/11/11 45 Verilog 模塊的基本概念 ? MUX(多路選擇器)的行為可以描述為:只要信號 a或 b或 sl發(fā)生變化,如果 sl為 0則選擇 a輸出;否則選擇 b輸出。 ? 這個行為的描述并沒有說明如果輸入 a 或 b是三態(tài)的(高阻時)輸出應(yīng)該是什么,但有具體結(jié)構(gòu)的真實電路是有一定的輸出的。 ? 沒有考慮延時問題 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 46 Verilog 模塊的基本概念 【 例 】 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 module twomux (out, a, b, sl)。 input a, b, sl。 output out。 not u1 (nsl, sl )。 and 1 u2 (sela, a, nsel)。 and 1 u3 (selb, b, sl)。 or 2 u4 (out, sela, selb)。 endmodule a b sl selb sela nsel MUX的結(jié)構(gòu)級描述,采用Verilog基本單元 (門 )描述。描述中含有傳輸延時。 2021/11/11 47 Verilog 模塊的基本概念 【 例 】 module adder ( count,sum,a,b,cin )。 input [2:0] a,b。 input cin。 output count。 output [2:0] sum。 assign {count,sum}=a+b+cin。 endmodule 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 這個例子描述了一個三位的加法器。從例子中可以看出,整個 Verilog HDL程序是位于 module和 endmodule聲明語句之間的 2021/11/11 48 Verilog 模塊的基本概念 【 例 】 module pare ( equal,a,b )。 output equal。 //聲明輸出信號 equal input [1:0] a,b。 //聲明輸入信號 a,b assign equal=( a==b)? 1: 0。 /*如果兩個輸入信號相等則輸出為 1。否則輸出為 0*/ endmodule 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 這個程序描述了一個比較器 .在這個程中 ,/*........*/和 //.........表示注釋部分 ,注釋只是為了方便程序員理解程序 ,對編譯是不起作用的。 2021/11/11 49 ? 【 例 】 ? module trist2(out,in,enable)。 ? output out。 ? input in ,enable。 ? bufil1 mybuf(out,in,enable)。 ? endmodule 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 Verilog 模塊的基本概念 2021/11/11 50 【 例 】 module trist1(sout,sin,ena)。 output sout。 input sin,ena。 mytri tri_inst(.out(sout),.in(sin),.enable(ena))。 //調(diào)用由 mytri模塊定義的實例元件 tri_inst,即把已定義的模塊 myfri在本模塊中具體化為 tri_inst endmodule module mytri(out,in,enable)。 output out。 input in,enable。 assign out=enable?in:?bz。 endmodule 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 Verilog 模塊的基本概念 2021/11/11 51 Verilog 用于模塊的測試 ? 如何檢查上述例子其功能是否正確? ? 需要有測試激勵信號輸入到被測模塊 ? 需要記錄被測模塊的輸出信號 ? 需要把用功能和行為描述的 Verilog模塊轉(zhuǎn)換為門級電路互連的電路結(jié)構(gòu)(綜合)。 ? 需要對已經(jīng)轉(zhuǎn)換為門級電路結(jié)構(gòu)的邏輯進行測試(門級電路仿真)。 ? 需要對布局布線后的電路結(jié)構(gòu)進行測試。 (布局布線后仿真)。 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 52 Verilog 用于模塊的測試 被測模塊 激勵和控制信號 輸出響應(yīng)和驗證 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 53 小結(jié) 通過上面的例子可以看到 : ( 1) Verilog HDL程序是由模塊構(gòu)成的。每個模塊的內(nèi)容都是位于module和 endmodule兩個語句之間。每個模塊實現(xiàn)特定的功能。 ( 2)模塊是可以進行層次嵌套的。 ( 3)每個模塊要進行端口定義 ,并說明輸入輸出口 ,然后對模塊的功能進行描述。 ( 4) Verilog HDL程序的書寫格式自由 ,一行可以寫幾個語句 ,一個語句也可以分寫多行。 ( 5)除了 endmodule語句外 ,每個語句和數(shù)據(jù)定義的最后必須有分號。 ( 6)可以用 /*.....*/和 //...對 Verilog HDL程序的任何部分作注釋。一個好的 ,有使用價值的源程序都應(yīng)當(dāng)加上必要的注釋 ,以增強程序的可讀性和可維護性。 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 Verilog 數(shù)字系統(tǒng)設(shè)計教程 第三講 常用 Verilog 語法之一 宋萬杰 西安電子科技大學(xué) 雷達信號處理國家重點實驗室 2021/11/11 55 模塊的結(jié)構(gòu) Verilog的基本設(shè)計單元是 “ 模塊 ” (block) 。一個模塊是由兩部分 組成的,一部分描述接口,另一部分描述邏輯功能,即定義輸入是 如何影響輸出的。 module block1(a, b, c, d)。 input a, b。 output c, d。 assign c = a | b。 assign d = a amp。 b。 endmodule 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 a b c d 2021/11/11 56 Verilog 模塊的結(jié)構(gòu)由在 module和endmodule 關(guān) 鍵詞之間的四個主要部分組成: 端口定義: module block1(a, b, c, d )。 I/O說明 : input a, b, c 。 output d 。 內(nèi)部信號聲明: wire x。 功能定義: assign d = a | x 。 assign x = ( b amp。 ~c )。 endmodule 模塊的結(jié)構(gòu) 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 57 模塊的結(jié)構(gòu) 模塊的端口定義 模塊的端口聲明了模塊的輸入輸出口。其格式如下: module 模塊名 (口 1,口 2,口 3,口 4, ………)。 模塊內(nèi)容 模塊的內(nèi)容包括 I/O說明、內(nèi)部信號聲明、功能定義。 ? I/O說明的格式 輸入口: input[信號位寬- 1: 0] 端口名 1; input[信號位寬- 1: 0] 端口名2; … input[信號位寬- 1: 0] 端口名i; //(共有 i個輸入口 ) 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 58 模塊的結(jié)構(gòu) 輸出口 output[信號位寬- 1: 0] 端口名 1; output[信號位寬- 1: 0] 端口名 2; … output[信號位寬- 1: 0] 端口名 j; //(共有 j個輸出口 ) 輸入 /輸出口: inout[信號位寬- 1: 0] 端口名 1; inout[信號位寬- 1: 0] 端口名 2; … inout[信號位寬- 1: 0] 端口名 k; //(共有 k個雙向總線端口 ) I/O說明也可以寫在端口聲明語句里。其格式如下: module module_name(input port1,input port2,… output port1,output port2… )。 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 59 模塊的結(jié)構(gòu) ? 內(nèi)部信號說明 在模塊內(nèi)用到的和與端口有關(guān)的 wire 和 reg 變量的聲明。 如: reg [width1 : 0] R變量 1, R變量2 …; wire [width1 : 0] W變量 1, W變量 2 …; …… 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 60 模塊的結(jié)構(gòu) ? 功能定義 模塊中最重要的部分是邏輯功能定義部分。有三種方法可在 模塊中產(chǎn)生邏輯。 用 assign 語句(數(shù)據(jù)流描述): assign a = b amp。 c 。 用實例元件(結(jié)構(gòu)化描述): and2 and_inst ( q, a, b)。 用 “ always” 塊(行為描述): always @ (posedge clk or posedge clr) begin if (clr) q= 0。 else if (en) q= d。 end 西安電子科技大學(xué) 雷達信號處理國防科技重點實驗室 2021/11/11 61 模塊的結(jié)構(gòu) 理解要點 如在模塊中邏輯功能由下面三個語句塊組成 : assign cs = ( a0 amp。 ~a1 amp。 ~a2 ) 。 // 1 and2 and_inst ( qout, a, b)。 // 2 always @ (posedge clk or posedge clr) //3 begin if (clr) q= 0。 else if (en) q= d。 end 三條語句是并行的
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1