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

正文內(nèi)容

verilog第二章簡單的verilog模塊(編輯修改稿)

2025-06-16 23:42 本頁面
 

【文章內(nèi)容簡介】 module module REG4( d, clk, clr, q, qb)。 output [3: 0] q, qb。 input [3: 0] d。 input clk, clr。 DFF d0 (d[ 0], clk, clr, q[ 0], qb[ 0])。 DFF d1 (d[ 1], clk, clr, q[ 1], qb[ 1])。 DFF d2 (d[ 2], clk, clr, q[ 2], qb[ 2])。 DFF d3 (d[ 3], clk, clr, q[ 3], qb[ 3])。 endmodule 語言的主要特點(diǎn) 可以將模塊的實(shí)例通過端口連接起來構(gòu)成一個大的系統(tǒng)或元件。 在上面的例子中, REG4有模塊 DFF的四個實(shí)例。注意,每個實(shí)例都有自己的名字 (d0, d1, d2, d3)。實(shí)例名是每個對象唯一的標(biāo)記,通過這個標(biāo)記可以查看每個實(shí)例的內(nèi)部。 實(shí)例中端口的次序與模塊定義的次序相同。 模塊實(shí)例化與調(diào)用程序不同。每個實(shí)例都是模塊的一個完全的拷貝,相互獨(dú)立、并行。 模塊實(shí)例化 (module instances) 端口與外部信號的連接 在調(diào)用模塊時,可以用 順序連接 和 按名連接 把模塊定義的端口與外部信號連接起來 順序連接:需要連接的 信號 需要與模塊聲明的端口列表一致; 按名連接:端口和外部信號按名字連接在一起 . D_FF d0 (d[ 0], clk, clr, q[ 0], qb[ 0])。 D_FF d1 (d[ 1], clk, clr, q[ 1], qb[ 1])。 D_FF d2 (d[ 2], clk, clr, q[ 2], qb[ 2])。 D_FF d3 (d[ 3], clk, clr, q[ 3], qb[ 3])。 當(dāng)設(shè)計大規(guī)模系統(tǒng)時,端口太多,記住端口順序不大可能,可以采用按名連接方法。 不需要連接的端口直接忽略掉即可 D_FF d0 (.d d[ 0]), .clk(clk), .clr(clr), .q(q[ 0]), .qb(qb[ 0]))。 D_FF d0 (.d(d[ 0]), .clk(clk), .clr(clr), .q(q[ 0]))。 書寫語法建議 一個模塊用一個文件; 模塊名與文件名要同名; 一行一條語句。 信號方向按輸入、輸出、雙向順序描述。 設(shè)計模塊時可考慮采用參數(shù)化,提供設(shè)計的重用。 建模方式 模塊的功能定義可以用采用下面的 4種方式描述: 1) 數(shù)據(jù)流方式 。 2) 行為方式 。 3) 結(jié)構(gòu)方式 。 4) 混合描述方式。 數(shù)據(jù)流的建模方式就是通過對數(shù)據(jù)流在設(shè)計中的具體行為的 描述的來建模。最基本的機(jī)制就是用連續(xù)賦值語句。在連續(xù)賦 值語句中,某個值被賦給某個線網(wǎng)變量(信號),語法如下: assign [delay] _name = expression。 如: assign 2 A = B; 用連續(xù)賦值語句 ? assign? ,只能描述組合邏輯。 無論右邊的操作數(shù)何時發(fā)生變化 , 右邊表達(dá)式都重新計算 , 并 且在指定的時延后賦給左邊線網(wǎng)變量。如果沒有定義時延值 , 缺 省時延為 0。 在數(shù)據(jù)流描述方式中,還必須借助于 HDL提供的一些運(yùn)算符, 如按位邏輯運(yùn)算符:邏輯與( amp。),邏輯或( |)等。 數(shù)據(jù)流描述舉例 1 `timescale 1ns/ 1ns module Decoder2x4 (A, B, EN, Z)。 input A, B, EN。 output [ 0 :3] Z。 wire Abar, Bbar。 assign 1 Abar = ~ A。 assign 1 Bbar = ~ B。 。 assign 2 Z[0] = ~ (Abar amp。 Bbar amp。 EN) 。 assign 2 Z[1] = ~ (Abar amp。 B amp。 EN) 。 assign 2 Z[2] = ~ (A amp。 Bbar amp。 EN) 。 assign 2 Z[3] = ~ (A amp。 B amp。 EN) 。 endmodule 連續(xù)賦值語句是 并發(fā)執(zhí)行 的,也就是說各語句的執(zhí)行順序與其在描述中出現(xiàn)的順序無關(guān)。如上,當(dāng) A有變化時, S T T1 將同時變化, S1的變化又會造成 Sum的變化。 24解碼器電路 數(shù)據(jù)流描述舉例 2 `timescale 1ns/100ps module FA_flow(A,B,Cin,Sum,Count) input A,B,Cin。 output Sum, Count。 wire S1,T1,T2,T3。 assign 2 S1 = A ^ B。 assign 2 Sum = S1 ^ Cin。 assign 2 T3 = A amp。 B。 assign 2 T1 = A amp。 Cin。 assign 2 T2 = B amp。 Cin 。 Endmodule 如上,當(dāng) A有個變化時, S T T1 將同時變化, S1的變化又會造成Sum的變化。 行為描述方式 行為方式的建模是指采用對信號行為級的描述(不是結(jié)構(gòu)級 的描述)的方法來建模, 在表示方面,類似數(shù)據(jù)流的建模方 式,但一般是把用 initial 塊語句或 always 塊語句描述的歸為行為 建模方式。行為建模方式通常需要借助一些行為級的運(yùn)算符如 加法運(yùn)算符( +),減法運(yùn)算符( )等 1) initial語句:此語句只執(zhí)行一次。 2) always語句:此語句總是循環(huán)執(zhí)行 , 或者說重復(fù)執(zhí)行。 只有寄存器類型數(shù)據(jù)能夠在這兩種語句中被賦值。 所有的 initial語句和 always語句在 0時刻并發(fā)執(zhí)行。 行為描述舉例 用 always語句對 1位全加器電路建模 module FA_Seq (A, B, Cin, Sum, Cout)。 input A, B, Cin。 output Sum, Cout。 reg Sum, Cout。 reg T1, T2, T3。 always @ ( A or B or Cin ) begin Sum = (A ^ B) ^ Cin。 T1 = A amp。 Cin。 T2 = B amp。 Cin。 T3 = A amp。 B。 Cout = (T1| T2) | T3。 end endmodule 1位全加器電路 一位全加器的行為建模 module FA_behav2(A, B, Cin, Sum, Cout )。 input A,B,Cin。 ou
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1