专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
FPGA
【FPGA每周一练】FPGA的HDL建模第三周
2019-07-16 00:19
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
FPGA
4181
8
1185
【
FPGA
每周一练】FPGA的HDL建模第三周
小编有话讲:各位用户朋友们,我们的每周一练在
@chenchu0910
的付出与大家的支持下,已经迎来了第三周,看到有很多朋友一直在跟着练习,我们都感到很欣慰,希望
电子
发烧友以后能给大家提供更多的学习机会,也希望大家踊跃发言,我们愿与您携手共进,希望在这里能给您一片自由的学习与交流天地!
上周问题答案如下:
问题1:设计一个10进制计数器;
源代码如下:
module count(clk,rstn,en,dout);
input clk,rstn,en;
output reg [4:0] dout;
always@(posedge clk or negedge rstn)
if (!rstn)
dout<=4'b0000;
else
if(en==1'b1)
begin
if(dout==4'b1010)
dout<=4'b0000;
else
dout<=dout+1;
end
endmodule
复制代码
波形图如下:
问题2:设计3-8译码器。
源代码如下:
module decode(Ain,en,dout);
input [2:0] Ain;
input en;
output reg [7:0] dout;
always@(en or Ain)
if(en==1'b1)
case(Ain)
3'b000: dout <= 8'b11111110;
3'b001: dout <= 8'b11111101;
3'b010: dout <= 8'b11111011;
3'b011: dout <= 8'b11110111;
3'b100: dout <= 8'b11101111;
3'b101: dout <= 8'b11011111;
3'b110: dout <= 8'b10111111;
3'b111: dout <= 8'b01111111;
endcase
else
dout<=8'b11111111;
endmodule
复制代码
波形图如下:
以上便是第二周的答案,小伙伴们做对了吗?
本周题目是:用Verilog HDL设计
1、8位循环移位寄存器
2、D触发器(上升沿触发)
下周题目预告:各类触发器
往期回顾:
【FPGA每周一练】FPGA的HDL建模第一练
【FPGA每周一练】FPGA的HDL建模第二周
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
8条回答
天使的名字就是
2019-07-16 18:54
module shiftreg(clk,rst,D,Dout);
input D,clk,rst;
output[7:0] Dout;
reg[7:0] Dout;
always @(posedge clk or negedge rst)
begin
if(~rst) Dout<=8'b00000000;
else Dout<={Dout[6:0],D};
end
endmodule
复制代码
加载中...
查看其它8个回答
一周热门
更多
>
相关问题
如何用FPGA驱动LCD屏?
5 个回答
请教一下各位专家如何用FPGA做eDP接口?
6 个回答
FPGA CH7301c DVI(显示器数字接口)没有数字输出
7 个回答
100颗FPGA的板子,开开眼界
6 个回答
求教自制最小系统版
10 个回答
相关文章
嵌入式领域,FPGA的串口通信接口设计,VHDL编程,altera平台
0个评论
Xilinx的FPGA开发工具——ISE开发流程
0个评论
基于FPGA的详细设计流程
0个评论
干货分享,FPGA硬件系统的设计技巧
0个评论
一种通过FPGA对AD9558时钟管理芯片进行配置的方法
0个评论
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
FPGA
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
- module shiftreg(clk,rst,D,Dout);
- input D,clk,rst;
- output[7:0] Dout;
- reg[7:0] Dout;
- always @(posedge clk or negedge rst)
- begin
- if(~rst) Dout<=8'b00000000;
- else Dout<={Dout[6:0],D};
- end
- endmodule
复制代码一周热门 更多>