设为首页收藏本站帮助中心
查看: 43|回复: 0
收起左侧

Quartus Verilog HDL/FPGA 实现 74HC179/74LS179 具有复位和预置功能的四位移位寄存器

[复制链接]
发表于 2024-1-11 18:23:15 | 显示全部楼层 |阅读模式
main.png
  1. module hc179(        //具有复位和预置功能的四位移位寄存器 VCC:Pin16 GND:Pin8
  2.         input SI,        //移位输入 Pin4
  3.         input [3:0] D,        //[4位宽] 预置值输入 Pin:14,15,2,3
  4.         input CLK,        //时钟(上升沿触发) Pin6
  5.         input SHIFT,//高电平:允许移位 低电平:禁止移位 Pin13
  6.         input LOAD,        //高电平:允许预置 (SHIFT和LOAD同时高电平则为移位) Pin10
  7.         input MR,        //异步低电平(下降沿)清零复位 Pin1
  8.         output reg [3:0] Q,        //[4位宽]移位输出 Pin:11,9,7,5
  9.         output _Q3        //Q[3]的互补(反向)输出 Pin12
  10. );
  11. initial Q = 4'd0;
  12. assign _Q3 = !Q[3];
  13. always @(posedge CLK or negedge MR) begin
  14.         if(!MR) begin
  15.                 Q <= 4'd0;
  16.         end else begin
  17.                 if(SHIFT) begin
  18.                         Q <= {Q[2:0],SI};
  19.                 end else if(LOAD) begin
  20.                         Q <= D;
  21.                 end
  22.         end
  23. end
  24. endmodule

  25. module main(
  26.         input clk,        //50Mhz 时钟输入 Pin40
  27.         output out        //八分频输出 (6.25Mhz) Pin40
  28. );

  29. hc179 U1(
  30.         .SI(out),
  31.         .D(4'd0),
  32.         .CLK(clk),
  33.         .SHIFT(1'b1),
  34.         .LOAD(1'b0),
  35.         .MR(1'b1),
  36.         .Q(),
  37.         ._Q3(out)
  38. );

  39. endmodule
复制代码

相关帖子

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则