时序电路设计基础.docx
- 文档编号:4456505
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:15
- 大小:897.50KB
时序电路设计基础.docx
《时序电路设计基础.docx》由会员分享,可在线阅读,更多相关《时序电路设计基础.docx(15页珍藏版)》请在冰豆网上搜索。
时序电路设计基础
CPLD/FPGA设计实验报告
实验名称:
时序电路设计基础
实验目的:
掌握QuartusII软件的基本使用方法,完成基本时序电路设计
实验时间:
2012年5月30日地点:
实验室
学生姓名:
何超学号:
2009118122
实验内容
实验一 简单D触发器
一、创建工程
工程名称:
My_jddcfq顶层实体文件名:
My_jddcfq
器件:
(要求:
Cyclone系列任意器件)
moduleMy_jddcfq(q,d,clk);
inputd,clk;
outputregq;
always@(posedgeclk)
beginq<=d;
end
endmodule
1、新建一个VerilogHDL文件,并输入代码,如下:
2
运行成功。
3、生成PTL文件如下:
4、新建VWF文件,导入节点设置好参数并运行如下:
二、实验二 同步置数的D触发器
三、创建工程
工程名称:
My_tbdcfq顶层实体文件名:
My_tbdcfq
器件:
(要求:
Cyclone系列任意器件)
实验三、试验步骤:
1新建一个工程,将其命名为My_tbdcfq,此过程与实验一类似,再次不作详述。
2新建一个VerilogHDL文件,并输入代码,如下:
3moduleMy_tbdcfq(q,d,clk,ld);
4inputd,clk,ld;
5outputregq;
6always@(posedgeclk)
7begin
8if(ld)q<=d;
9end
10endmodule
11
运行成功。
12、生成RTL图如下:
13、新建VWF文件,设置好参数运行如下:
实验三 同步置数异步清零的D触发器。
四、创建工程
工程名称:
My_tbzsybqlddcfq顶层实体文件名:
My_tbzsybqlddcfq
器件:
(要求:
Cyclone系列任意器件)
实验步骤:
1新建一个工程,将其命名为My_tbzsybqlddcfq,此过程与实验一类似,再次不作详述。
新建一个VerilogHDL文件,并输入代码,如下:
moduleMy_tbzsybqlddcfq(q,d,clk,ld,clr_n);
inputd,clk,ld,clr_n;
outputregq;
always@(posedgeclkornegedgeclr_n)
begin
if(!
clr_n)q<=0;
elseif(ld)q<=1;
elseq<=d;
end
endmodul
2
3
4
运行成功。
5、生成RTL文件如下:
6、新建VWF文件,设置好参数后并仿真如下:
实验四、带反输出的D触发器
实验步骤:
1新建一个工程,将其命名为My_dfscddcfq程与实验一类似,再次不作详述。
新建一个VerilogHDL文件,并输入代码,如下:
moduleMy_dfscddcfq(q,q_n,d,clk,ld,clr_n);
inputd,clk,ld,clr_n;
outputq,q_n;
regq;
assignq_n=~q;
always@(posedgeclkornegedgeclr_n)
begin
if(!
clr_n)q<=0;
elseif(ld)q<=1;
elseq<=d;
end
endmodule
2
3
4、生成RTL图如下:
5、新建VWF文件,设置好参数并仿真如下:
实验五 四选一数据选择器
五、创建工程
工程名称:
My_fco顶层实体文件名:
My_fco
器件:
(要求:
Cyclone系列任意器件)
实验步骤:
1、新建一个工程,将其命名为My_fco
2
、新建一个VerilogHDL文件,并输入代码,如下图:
moduleMy_fco(out,in0,in1,in2,in3,sel);
inputin0,in1,in2,in3;
input[1:
0]sel;
outputregout;
always@(in0orin1orin2orin3orsel)
case(sel)
2'b00:
out=in0;
2'b01:
out=in1;
2'b10:
out=in2;
2'b11:
out=in3;
default:
out=2'bx;
endcase
endmodule
3
4、运行成功并生成RTL图如下:
5、新建波形文件,导入节点,设置好参数并运行如下:
6
实验六、六选一数据选择器。
实验步骤:
1新建一个工程,将其命名为My_lxysjxzq与实验一类似,再次不作详述。
2新建一个VerilogHDL文件,并输入代码,如下:
moduleMy_lxysjxzq(out,in0,in1,in2,in3,in4,in5,sel);
inputin0,in1,in2,in3,in4,in5;
input[2:
0]sel;
outputregout;
always@(in0orin1orin2orin3orin4orin5orsel)
case(sel)
3'b000:
out=in0;
3'b001:
out=in1;
3'b010:
out=in2;
3'b011:
out=in3;
3'b100:
out=in4;
3'b101:
out=in5;
default:
out=2'bxx;
endcase
endmodule
3
4
5、生成RTL文件如下:
6、新建VWF文件,设置好参量并运行如下:
实验七、3-8译码器(assign)。
实验步骤:
1新建一个工程,将其命名为My_sbybq再次不作详述。
2新建一个VerilogHDL文件,并输入代码,如下:
moduleMy_sbybq(Y,a,G1,G2An,G2Bn);input[2:
0]a;inputG1,G2An,G2Bn;output[7:
0]Y;//reg[7:
0]Y;assignY=(G1&&!
(G2An|G2Bn))?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 时序电路 设计 基础