• 串行加法器4位全加器 FPGA设计Verilog逻辑源码Quartus工程文件.zip

    串行加法器4位全加器 FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module add4(a,b,ci,s,co); input [3:0] a,b; //输入四位数据a,b input ci; //输入进位ci output [3:0] s; //输出四位数据 s output co; //输出进位co assign {co,s}=a+b+ci; //把a、b、ci相加后的结果赋予co、s,其中co放最高位,s放低三位

    5
    1226
    125KB
    2021-08-23
    5.9
  • 半整数分频1.5小数分频的功能 FPGA设计Verilog逻辑源码Quartus工程文件.zip

    半整数分频1.5小数分频的功能 FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module div_1_5(clk,div); input clk; //输入时钟信号 output div; //输出分频信号 reg count; //计数寄存器 reg div; //输出分频寄存器 reg clk_temp2,clk_temp3; //脉冲控制端2寄存器,脉冲控制端3寄存器 assign clk_temp1=clk^clk_temp2; //脉冲控制端1寄存器,等于clk与clk_temp2取异或运算 always@(posedge clk_temp1) //脉冲控制端的上升沿触发 begin if(count==1'b0) //判断count是否为0,是的话执行以下操作 begin count<=1'b1; //count置1 clk_temp3<=1'b1; //clk_temp3置1 div<=1'b1; //div置1 end else //否的话执行以下操作 begin count<=count-1'b1; //count自减1 clk_temp3<=1'b0; //clk_temp3置0 div<=1'b0; //div置0 end end

    5
    266
    119KB
    2021-08-23
    3.9
  • 8线-3线编码器 优先编码器+八选一数据选择器 FPGA设计Verilog逻辑源码Quartus工程文件.zip

    8线-3线编码器 优先编码器+八选一数据选择器 FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module yxbm_83(y,eo,gs,i,ei); input [7:0] i; //8位输入i input ei; //使能输入端ei output eo,gs; //使能输出端eo,优先标志端gs output[2:0] y; //3位输出y reg[2:0] y; //3位输出寄存器y reg eo,gs; //使能输出寄存器, always@(i,ei) //电平触发方式,当i跟ei有改变的时候,执行以下操作 begin if(ei==1'b1) //当ei为1的时候 begin y<=3'b111; gs<=1'b1; eo<=1'b1; end else begin if(i[7]==1'b0) //当i的第8为0时候 begin y<=3'b000; gs<=1'b0; eo<=1'b1; end else if(i[6]==1'b0) //当i的第七位为0时候 begin y<=3'b001; gs<=1'b0; eo<=1'b1; end else if(i[5]==1'b0) //当i的第6位为0时候 begin y<=3'b010; gs<=1'b0; eo<=1'b1; end else if(i[4]==1'b0) //当i的第5位为0时候 begin y<=3'b011; gs<=1'b0; eo<=1'b1; end else if(i[3]==1'b0) //当i的第4位为0时候 begin y<=3'b100; gs<=1'b0; eo<=1'b1; end else if(i[2]==1'b0) //当i的第3位为0时候 begin y<=3'b101; gs<=1'b0; eo<=1'b1; end else if(i[1]==1'b0) //当i的第2位为0时候 begin y<=3'b110; gs<=1'b0; eo<=1'b1; end

    5
    1458
    745KB
    2021-08-23
    5.9
  • 同步24进制计数器FPGA设计Verilog逻辑源码Quartus工程文件.zip

    同步24进制计数器FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module cnt_24(ten,one,co,clk,clr); input clk; //输入时钟 input clr; //清零输入端 output co; //进位输出端 output[3:0] ten,one; //十位输出,个位输出 reg co; //进位输出端寄存器 reg[3:0] ten,one; //十位输出寄存器,个位输出寄存器 always@(posedge clk) //时钟上升沿触发 begin if(clr) //判断清零信号是否有效,即为1 begin ten<=0; //十位清零 one<=0; //个位清零 end else begin if({ten,one}==8'b00100011) //判断是否计数到23 begin ten<=0; //十位清零 one<=0; //个位清零 co<=1; //进位置1 end else if(one==4'b1001) //判断各位是否为9 begin one<=0; //是的话个位置0 ten<=ten+4'b1; //十位自加1 co<=0; //进位置0 end else

    5
    469
    136KB
    2021-08-23
    4.9
  • 模为60的BCD码加法计数器FPGA设计Verilog逻辑源码Quartus工程文件.zip

    模为60的BCD码加法计数器FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module cnt_60(clk,reset,cin,load,data,cout,qout); input clk,reset,cin,load; //输入时钟,复位,计数端,置数端 input[7:0] data; //预置数输入端 output cout; //输出进位信号端 output[7:0] qout; //计数输出端 reg[7:0] qout; //计数输出端寄存器 always@(posedge clk) //时钟上升沿触发 begin if(reset) //判断是否复位信号端为1 qout<=0; //计数输出端置0 else if(load) //判断置数端是否有效 qout<=data; //将预置数输入端数据赋予计数输出寄存器 else if(cin) //判断计数端是否有效 begin if(qout[3:0]==9) //判断qout的低位是否为9 begin qout[3:0]<=0; //qout低位清0 if(qout[7:4]==5) //判断qout高位是否为5 qout[7:4]<=0; //qout高位清0 else qout[7:4]<=qout[7:4]+4'b1; //高位自加1 end

    5
    2286
    142KB
    2021-08-23
    5.9
  • 同步4位可逆计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip

    同步4位可逆计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module cnt_kn(clk,clr,s,en,updn,d,co,q); input clk,clr,s,en,updn; //输入时钟、清零端(高电平有效)、置数端(高电平有效)、使能端、计数器方向控制端 input[3:0] d; //预置数据端 output[3:0] q; //计数输出端 output co; //进位端 reg[3:0] q; //计数输出寄存器 reg co; //进位输出寄存器 always@(posedge clk) //时钟上升沿触发 begin if(clr) //判断清零端是否有效 begin q<=0; //q置0 end else begin if(s) //判断置数端是否有效 begin q<=d; //q置d中的数据 end else if(en) //判断使能端是否有效 begin if(updn) //判断方向寄存器是否为1 begin if(q==4'b1111) //判断q是否为15 begin q<=4'b0000; //q清0 co<=1; //co置1 end else //q还没到15 begin q<=q+1; //q自加1 co<=0; //co置0

    5
    445
    137KB
    2021-08-23
    5.9
  • 占空比1:4的5分频奇数分频Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip

    占空比1:4的5分频奇数分频Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module f_14(clk_50M,f_14); input clk_50M; //输入时钟,50M,20ns output f_14; //输出5分频,占空比为1:4 reg f_14; //分频寄存器 reg[2:0] cnt; //计数寄存器 always@(posedge clk_50M) //在每个时钟的上升沿触发 begin if(cnt==3'b100) //当cnt为4的时候,执行以下程序 begin f_14<=1'b1; //f_14置1 cnt<=3'b0; //cnt清0 end else begin cnt<=cnt+3'b1; //cnt自加1 f_14<=1'b0; //f_14置0

    0
    192
    250KB
    2021-08-23
    1.9
  • 占空比1:1的2、4、8分频 偶数分频Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip

    占空比1:1的2、4、8分频 偶数分频Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module fengping_1(clk_50M,f_2,f_4,f_8); input clk_50M; //输入时钟,50M,周期为20ns output f_2,f_4,f_8; //输出分频时钟,分别为2分频,4分频,8分频 reg f_2,f_4,f_8; //输出分频寄存器 reg[2:0] cnt; //计数寄存器 always@(posedge clk_50M) //在每个时钟的上升沿触发,执行begin_end里面的语句 begin cnt<=cnt+3'b1; //每个时钟周期计数寄存器自加一 f_2<=cnt[0]; //把计数寄存器的最低位赋予f_2,输出即使2分频 f_4<=cnt[1]; //把计数寄存器的第2位赋予f_4,输出即使4分频

    5
    355
    411KB
    2021-08-23
    3.9
  • 无置数端+有置数端可变模计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip

    无置数端+有置数端可变模计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module cnt_kb_1(clk,clr,m,q); input clk,clr; //输入时钟,清零端(1有效) input[6:0] m; //模值输入端,m只能由小到大变化,否则出错 output[6:0] q; //计数输出端 reg[6:0] q; //计数输出端寄存器 reg[6:0] md; //7位md寄存器 always@(posedge clk) //时钟上升沿触发 begin md<=m-7'b1; //将m减1赋予md if(clr) //判断clr是否有效 begin q<=0; //q清零 end else //当清零端无效时候 if(q==md) //判断q是否等于

    5
    217
    280KB
    2021-08-23
    3.9
  • 同步十位减法计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件.zip

    同步十位减法计数器Cyclone4E FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module cnt_jf(clk,rst,q); input clk; //输入时钟 input rst; //输入复位信号,高电平有效 output[3:0] q; //输出计数端 reg[3:0] q; //输出计数端寄存器 always@(posedge clk) //时钟上升沿触发 begin if(rst) //判断rst是否有效 begin q<=0; //q清零 end else if(q==4'b0000) //q是否等于0 begin q<=4'b1001; //q置9 end else begin q<=q-4'b1; //q自减1

    5
    288
    124KB
    2021-08-23
    3.9
  • 勤写标兵

    授予累计3周发布3篇原创IT博文的用户
  • 笔耕不辍

    累计1年每年原创文章数量>=20篇
  • 创作能手

    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户
  • 持之以恒

    授予累计1月发布8篇原创IT博文的用户
  • 新秀勋章

    用户首次发布原创文章,审核通过后即可获得
  • 至尊王者

    成功上传501个资源即可获取
  • 分享王者

    成功上传51个资源即可获取
  • 分享宗师

    成功上传21个资源即可获取
  • 分享精英

    成功上传11个资源即可获取
  • 分享达人

    成功上传6个资源即可获取
  • 分享小兵

    成功上传3个资源即可获取
  • 分享学徒

    成功上传1个资源即可获取
关注 私信
上传资源赚积分or赚钱