srl16e verilog

复制代码
 1 module SRL16E(Q, A0, A1, A2, A3, CLK, D, CE);
 2 
 3 input A0, A1, A2, A3, CLK, D, CE;
 4 output Q;
 5 
 6 reg[15:0] shift_reg;
 7 reg Q;
 8 
 9 always@(posedge CLK)
10 begin
11   if (CE)
12     shift_reg <= {shift_reg[14:0],D};
13 end
14 
15 always @(A3 or A2 or A1 or A0 or shift_reg)
16 begin
17 
18   case({A3,A2,A1,A0})
19     1: Q = shift_reg[1];
20 
21     2: Q = shift_reg[2];
22 
23     3: Q = shift_reg[3];
24 
25     4: Q = shift_reg[4];
26 
27     5: Q = shift_reg[5];
28 
29     6: Q = shift_reg[6];
30 
31     7: Q = shift_reg[7];
32 
33     8: Q = shift_reg[8];
34 
35     9: Q = shift_reg[9];
36 
37     10: Q = shift_reg[10];
38 
39     11: Q = shift_reg[11];
40 
41     12: Q = shift_reg[12];
42 
43     13: Q = shift_reg[13];
44 
45     14: Q = shift_reg[14];
46 
47     15: Q = shift_reg[15];
48 
49     default: Q = shift_reg[0];
50 
51   endcase
52 
53 end
54 endmodule
复制代码
posted @   IAmAProgrammer  阅读(755)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示