1、主从JK触发器设计同步计数器文档编号:WX_HW_0003文档分类:硬件技术文档( AA. 硬件设计技术文档 主从JK触发器设计同步计数器方案Version 1.1版本信息版本日期描述作者V1.12011-10-31用主从JK触发器设计同步计数器王肖 (04096070)张紫阳(04096055)目录目录 31.概述 42.总体描述 42.1.功能描述 42.2.顶层框图 42.3.引脚描述 42.4.接口时序 53.模块划分 63.1 概述(叙述一下划分的几个大的模块) 63.2模块A 63.2.1功能定义 63.2.2信号描述 63.2.3时序描述(包含必要的时序图以及文字说明) 63.2
2、.3 祥细设计 73.3模块B 83.4模块C 8 84.模块分述(设计比较复杂的时候,根据需要对模块进行细化说明,需要加上模块分述这一部分。) 84.1模块A 94.1.1.模块A_1(这部分的内容与模块化分中模块的说明相同) 94.2.2模块A_2 94.2模块B 94.3模块C 95.验证方案 96.测试方案 97.设计开发环境 98.设计开发计划 91.概述本设计采用主从JK触发器设计同步计数器。2.总体描述主从JK触发器由一个钟控D_FF和一个钟控T_FF组成,利用主从JK触发器实现一个同步计数器。2.1.功能描述本设计清零信号clear低电平有效,输入数据在时钟信号clock的上升
3、沿被锁存,触发器在clock的下降沿输出,当count_enable信号为低电平时停止计数。2.顶层框图图2.1计数器顶层框图2.3.引脚描述表2.1 顶层接口信号描述名称输入/输出功能描述clk输入50MHz的晶振时钟信号,50的占空比.clear输入低电平有效的清零信号,输入数据在时钟信号clock的上升沿被锁存。Q输出触发器在clock的下降沿输出,当count_enable信号为高电平开始计数。2.4.接口时序 清零信号clear低电平有效,输入数据在时钟信号clock的上升沿被锁存,触发器在clock的下降沿输出,当count_enable信号为高电平时计数器计数,Q自动加1。具体时
4、序关系如图2.1所示图2.2计数器接口时序图3.模块划分本设计分为三个模块。A:顶层模块B:D_FF模块.C:T_FF 模块3.1 概述(叙述一下划分的几个大的模块)3.2模块Amodule counter(Q , clock, clear);/ I/O portsoutput 3:0 Q;input clock, clear;/ Instantiate the T flipflopsT_ff tff0(Q0, clock, clear);T_ff tff1(Q1, Q0, clear);T_ff tff2(Q2, Q1, clear);T_ff tff3(Q3, Q2, clear);end
5、module3.2.1功能定义本模块采用主从JK触发器设计一个同步计数器。3.2.2信号描述名称输入/输出功能描述clk输入50MHz的晶振时钟信号,50的占空比.clear输入低电平有效的清零信号,输入数据在时钟信号clock的上升沿被锁存。d 输入指示进行数据载入,高有效。时钟上升沿采样。qbar输出执行载入操作时,载入的数据。时钟上升沿采样。q输出Q 输出触发器在clock的下降沿输出,当count_enable信号为高电平开始计数。 表3.1 模块A信号描述3.2.3时序描述(包含必要的时序图以及文字说明)图3.1 计数器的序图3.2.3 祥细设计 3.1 计数器详细结构 .3.3模块
6、Bmodule edge_dff(q, qbar, d, clk, clear);/ Inputs and outputsoutput q,qbar;input d, clk, clear;/ Internal variableswire s, sbar, r, rbar,cbar;/ Data flow statements /Create a complement of signal clearassign cbar = clear;/ Input latchesassign sbar = (rbar & s), s = (sbar & cbar & clk), r = (rbar & c
7、lk & s), rbar = (r & cbar & d);/ Output latchassign q = (s & qbar), qbar = (q & r & cbar);endmodule/ Edge triggered T-flipflop. Toggles every clock/ cycle.3.4模块Cmodule T_ff(q, clk, clear);/ I/O portsoutput q;input clk, clear;/ Instantiate the edge triggered DFF/ Complement of output q is fed back./
8、Notice qbar not needed. Empty port.edge_dff ff1(q, ,q, clk, clear);endmodule/ Ripple counter4.模块分述(设计比较复杂的时候,根据需要对模块进行细化说明,需要加上模块分述这一部分。)4.1模块A4.2模块B4.3模块C.4.4模块 D5.验证方案给出对于整个设计的验证方法,详见xxxx总体仿真验证方案。源程序:/ Edge triggered D flipflopmodule edge_dff(q, qbar, d, clk, clear);/ Inputs and outputsoutput q,qb
9、ar;input d, clk, clear;/ Internal variableswire s, sbar, r, rbar,cbar;/ Data flow statements /Create a complement of signal clearassign cbar = clear;/ Input latchesassign sbar = (rbar & s), s = (sbar & cbar & clk), r = (rbar & clk & s), rbar = (r & cbar & d);/ Output latchassign q = (s & qbar), qbar
10、 = (q & r & cbar);endmodule/ Edge triggered T-flipflop. Toggles every clock/ cycle.module T_ff(q, clk, clear);/ I/O portsoutput q;input clk, clear;/ Instantiate the edge triggered DFF/ Complement of output q is fed back./ Notice qbar not needed. Empty port.edge_dff ff1(q, ,q, clk, clear);endmodule/
11、Ripple countermodule counter(Q , clock, clear);/ I/O portsoutput 3:0 Q;input clock, clear;/ Instantiate the T flipflopsT_ff tff0(Q0, clock, clear);T_ff tff1(Q1, Q0, clear);T_ff tff2(Q2, Q1, clear);T_ff tff3(Q3, Q2, clear);endmodule / Top level stimulus modulemodule stimulus;/ Declare variables for s
12、timulating inputreg CLOCK, CLEAR; wire 3:0 Q;initial $monitor($time, Count Q = %b Clear= %b, Q3:0,CLEAR); initial $gr_waves( clk, CLOCK, Clear, CLEAR, Q, Q3:0, Q0, Q0, Q1, Q1, Q2, Q2, Q3, Q3);/ Instantiate the design block countercounter c1(Q, CLOCK, CLEAR);/ Stimulate the Clear Signalinitialbegin C
13、LEAR = 1b1; #34 CLEAR = 1b0; #200 CLEAR = 1b1; #50 CLEAR = 1b0;end/ Setup the clock to toggle every 10 time units initial begin CLOCK = 1b0; forever #10 CLOCK = CLOCK;end/ Finish the simulation at time 200initialbegin #400 $finish;endendmodule仿真图:6.测试方案(这个只对整个完整的电路功能的测试需要给出测试方案,对于模块设计不需要给出测试方案。)采用FPGA进行硬件测试。使用Xilinx的ISE进行综合。开发板采用Xilinx的ML403,FPGA型号为Virtex-4 XC4VFX12。详见xxxx总体测试方案。7.设计开发环境综合工具: Xilinx ISE 10.1FPGA设计和仿真工具 :Modelsim ,Active HDL 8.18.设计开发计划序号时间工作内容说明110-30指定技术规范210-30按照技术规范,编写制定总体设计方案。310-30总体功能仿真。410-31时序仿真以及后期工作。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1