日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Verilog左移位

發(fā)布時間:2023/12/14 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Verilog左移位 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

///
/Verilog左移位、、、、、、、、、、、
//
module shift_left(clk,rs,in,out);
?? ?input clk;//時鐘信號輸入端口
?? ?input rs;//高電平復位信號端口
?? ?input [7:0]in;//數(shù)據(jù)輸入信號端口
?? ?output reg[7:0]out;//數(shù)據(jù)輸出信號端口
?? ?
?? ?always@(posedge clk)begin
?? ??? ?if(rs)begin//如果復位信號為高電平
?? ??? ??? ?out<=8'b0;
?? ??? ?end
?? ??? ?//否側左移
?? ??? ?else begin
?? ??? ??? ?out<={in[6:0],in[7]};//把高位拿走
?? ??? ?end
?? ?end
endmodule

///
/Verilog左移位仿真驗證
//

`timescale 1 ps/ 1 ps
module shift_left_vlg_tst();
// constants ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
// general purpose registers
reg eachvec;
// test vector input registers
reg rs;
reg clk=0;
reg [7:0] in="k";
// wires ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
wire [7:0] ?out;

// assign statements (if any) ? ? ? ? ? ? ? ? ? ? ? ? ?
shift_left i1 (
// port map - connection between master ports and signals/registers ??
?? ?.clk(clk),
?? ?.in(in),
?? ?.out(out),
?? ?.rs(rs)
);

parameter ?s_clk=2000;

always #(s_clk)clk=~clk;

initial ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
begin ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
// code that executes only once ? ? ? ? ? ? ? ? ? ? ? ?
// insert code here --> begin ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? #(s_clk%20)rs=1'b1;?

?? ??? ??? ? #(s_clk*2)rs=1'b0;?
// --> end ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
$display("Running testbench"); ? ? ? ? ? ? ? ? ? ? ??
end ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
always ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
// optional sensitivity list ? ? ? ? ? ? ? ? ? ? ? ? ??
// @(event1 or event2 or .... eventn) ? ? ? ? ? ? ? ? ?
begin ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
// code executes for every event on sensitivity list ??
// insert code here --> begin ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
@eachvec; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
// --> end ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
end ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
endmodule

總結

以上是生活随笔為你收集整理的Verilog左移位的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。