FBL-VN1-LL01-0移位寄存器的Verilog建模
發(fā)布時(shí)間:2019/10/19 16:26:21 訪問次數(shù):1683
組合電路可以在邏輯門級通過調(diào)用內(nèi)置的邏輯門元件進(jìn)行描述,也可以使用數(shù)據(jù)流描述語句和行為級描述語句進(jìn)行描述,而觸發(fā)器通常使用行為級描述語句進(jìn)行描述。由于時(shí)序邏輯電路通常由觸發(fā)器和邏輯門構(gòu)成,所以可以將數(shù)據(jù)流描述語句和行為級描述語句結(jié)合起來對它的邏輯功能(即行為)進(jìn)行描述。下面通過幾個(gè)例子進(jìn)行介紹。
移位寄存器的Verilog建模,例6.6.1通過行為級描述語句always描述了一個(gè)4位雙向移位寄存器,它有兩個(gè)選擇輸入端、兩個(gè)串行數(shù)據(jù)輸人端、4個(gè)并行數(shù)據(jù)輸入端和4個(gè)并行輸出端,完成的功能與圖6.5.7所示74HCT194類似。它有5種功能:異步置零、同步置數(shù)、左移、右移和保持原狀態(tài)不變。當(dāng)清零信號CR跳變到低電平時(shí),寄存器的輸出被異步置零;否則,當(dāng)CR=1時(shí),與時(shí)鐘信號有關(guān)的4種功能由case語句中的兩個(gè)選擇輸人信號s1、sO決定(在case后面S1、SO被拼接成2位矢量)。移位由串行輸入和3個(gè)觸發(fā)器的輸出拼接起來進(jìn)行描述,
例如:
Q<={Ds1,Q[3:1]|;
說明了左移操作,即在時(shí)鐘信號CP上升沿作用下,將左移輸入端Dsl的數(shù)據(jù)直接傳給輸出Q[3],而觸發(fā)器輸出端的數(shù)據(jù)左移1位,Q[3:1]傳給Q[2:0](即Q[3]一>Q[2],Q[2]->Q[1],Q[1]一>Q[0]),于是,完成將數(shù)據(jù)左移1位的操作。注意,例6.6,1中所注釋的右移和左移方向與圖6.5.7中的邏輯圖一致,而與Vem。g描述語句中的排列和移動方向正好相反。后者與一般計(jì)算機(jī)程序一致(即高位在左,低位在右)。
例6.6.1
//Behavioral description of 1.Jniversal shift register
//see IFig.6.5.7 and rrable 6.5.4
module shift74x194(S1、sO、D、Ds1、Dsr、Q、CP、CR)1
input S1,sO; //select inputs
input Dsl,Dsr; //seria1 Data inputs
input CP,CR; //Clock and Reset
input[3:OlD; //Parallel Data input
output[3:0]Q; //Register output
reg[3:0]Q;
always@(posedge CP or negedge CR)
iF(~CR~)Q <=4’b0000;
else
case({s1,SO})
2’b00:Q(=Q; //No change
21 bO1:Q(={Q[2:0],Dsr}; //shift right
2’b10:Q(={Dsl,Q[3:1]}; //Shift len
2i b11:Q(=D; //Para11e1 1oad input
endcase
endmnodule
組合電路可以在邏輯門級通過調(diào)用內(nèi)置的邏輯門元件進(jìn)行描述,也可以使用數(shù)據(jù)流描述語句和行為級描述語句進(jìn)行描述,而觸發(fā)器通常使用行為級描述語句進(jìn)行描述。由于時(shí)序邏輯電路通常由觸發(fā)器和邏輯門構(gòu)成,所以可以將數(shù)據(jù)流描述語句和行為級描述語句結(jié)合起來對它的邏輯功能(即行為)進(jìn)行描述。下面通過幾個(gè)例子進(jìn)行介紹。
移位寄存器的Verilog建模,例6.6.1通過行為級描述語句always描述了一個(gè)4位雙向移位寄存器,它有兩個(gè)選擇輸入端、兩個(gè)串行數(shù)據(jù)輸人端、4個(gè)并行數(shù)據(jù)輸入端和4個(gè)并行輸出端,完成的功能與圖6.5.7所示74HCT194類似。它有5種功能:異步置零、同步置數(shù)、左移、右移和保持原狀態(tài)不變。當(dāng)清零信號CR跳變到低電平時(shí),寄存器的輸出被異步置零;否則,當(dāng)CR=1時(shí),與時(shí)鐘信號有關(guān)的4種功能由case語句中的兩個(gè)選擇輸人信號s1、sO決定(在case后面S1、SO被拼接成2位矢量)。移位由串行輸入和3個(gè)觸發(fā)器的輸出拼接起來進(jìn)行描述,
例如:
Q<={Ds1,Q[3:1]|;
說明了左移操作,即在時(shí)鐘信號CP上升沿作用下,將左移輸入端Dsl的數(shù)據(jù)直接傳給輸出Q[3],而觸發(fā)器輸出端的數(shù)據(jù)左移1位,Q[3:1]傳給Q[2:0](即Q[3]一>Q[2],Q[2]->Q[1],Q[1]一>Q[0]),于是,完成將數(shù)據(jù)左移1位的操作。注意,例6.6,1中所注釋的右移和左移方向與圖6.5.7中的邏輯圖一致,而與Vem。g描述語句中的排列和移動方向正好相反。后者與一般計(jì)算機(jī)程序一致(即高位在左,低位在右)。
例6.6.1
//Behavioral description of 1.Jniversal shift register
//see IFig.6.5.7 and rrable 6.5.4
module shift74x194(S1、sO、D、Ds1、Dsr、Q、CP、CR)1
input S1,sO; //select inputs
input Dsl,Dsr; //seria1 Data inputs
input CP,CR; //Clock and Reset
input[3:OlD; //Parallel Data input
output[3:0]Q; //Register output
reg[3:0]Q;
always@(posedge CP or negedge CR)
iF(~CR~)Q <=4’b0000;
else
case({s1,SO})
2’b00:Q(=Q; //No change
21 bO1:Q(={Q[2:0],Dsr}; //shift right
2’b10:Q(={Dsl,Q[3:1]}; //Shift len
2i b11:Q(=D; //Para11e1 1oad input
endcase
endmnodule
熱門點(diǎn)擊
- 基于FTU的饋線自動化系統(tǒng)構(gòu)成
- 基于FTU的饋線自動化系統(tǒng)的功能
- A/D轉(zhuǎn)換器的每一個(gè)測量過程分為自動穩(wěn)零
- 電網(wǎng)故障相的對地電容的放電波
- 實(shí)驗(yàn)數(shù)據(jù)分析結(jié)果
- 重合器的應(yīng)用場合
- 問答式通信規(guī)約又稱為Polhg規(guī)約
- P487A06信息圖表:不同類
- 按照不同的分類標(biāo)準(zhǔn),重合器有如
- MC74LS125 電路或圖騰柱
推薦技術(shù)資料
- 循線機(jī)器人是機(jī)器人入門和
- 循線機(jī)器人是機(jī)器人入門和比賽最常用的控制方式,E48S... [詳細(xì)]
- iNEMO系統(tǒng)級封裝 (SiP
- 增強(qiáng)型模塊化輸入輸出系統(tǒng) (eMIOS)
- 最新60和100V器件FERD
- 32位汽車微控制器SPC5系列
- 新一代高性能接近和測距傳感器
- 新型場效應(yīng)整流二極管(FERD
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究