FPGA_CPLD应用技术 第6章 数字系统设计实践.ppt
《FPGA_CPLD应用技术 第6章 数字系统设计实践.ppt》由会员分享,可在线阅读,更多相关《FPGA_CPLD应用技术 第6章 数字系统设计实践.ppt(71页珍藏版)》请在沃文网上搜索。
1、第六章 数字系统设计实践第六章 数字系统设计实践任务分析q根据常识,“秒”、“分”和“小时”之间存在各自独立又互相联系的计数和进位关系,“秒”和“分”的计数模式相同,每计数满60个时钟清零并重新开始计数,相当于一个六十进制的计数器。“小时”的计数模式是每计数满24个时钟就进行清零并重新开始计数,相当于一个二十四进制的计数器。所以,六十进制和二十四进制的计数器模块设计是本任务的核心模块。任务19 简易数字钟设计第六章 数字系统设计实践q计数信号来自于开发板提供的时钟信号,这里采用的开发板系统示例中,晶振频率为50MHz,而秒的计数周期是1秒,所以需要对该时钟信号进行分频,因此,分频器模块是本任务
2、中另一个重要模块。q“秒”、“分”和“小时”的计时过程都需要通过LED显示器进行显示,所以还需要设计显示控制模块。任务19 简易数字钟设计第六章 数字系统设计实践q根据以上分析,本任务需要设计的模块如下:q)分、秒和小时的计数器模块;q)分频器模块;q)显示控制模块。任务19 简易数字钟设计第六章 数字系统设计实践系统设计系统结构框图 任务19 简易数字钟设计第六章 数字系统设计实践系统设计系统2)系统接口信号描述 任务19 简易数字钟设计信号名I/O位宽含义clkI1 bit系统时钟输入horhO2 bits小时的高位显示驱动信号horlO4 bits小时的低位显示驱动信号minhO3 bi
3、ts分钟的高位显示驱动信号minlO4 bits分钟的低位显示驱动信号sechO3 bits秒钟的高位显示驱动信号seclO4 bits秒钟的低位显示驱动信号第六章 数字系统设计实践系统设计系统结构框图 任务19 简易数字钟设计第六章 数字系统设计实践系统设计系统结构框图 任务19 简易数字钟设计第六章 数字系统设计实践模块设计 任务19 简易数字钟设计1)分频器模块设计/clk_div.v/Verilog 代码段19-1module clk_div(clk,/输入时钟clk_1 /输出时钟);input clk;output clk_1;reg24:0 counter;/定义计数器来计数时钟
4、,计数25000000,需要用25位计数器reg clk_1;always(posedge clk)if(counter=25h17D7840)/如果等于25000000begincounter=25b1;/把counter恢复成1clk_1=clk_1;/把clk_1翻转endelse /如果不等于25000000 counter=counter+1b1;/counter 继续计数endmodule第六章 数字系统设计实践模块设计 任务19 简易数字钟设计2)计数模块设计信号名I/O位宽含义clk_1I1 bit分频后周期为1s的时钟输出horO5 bits小时计数结果的输出(0-23)mi
5、nO6 bits分钟计数结果的输出(0-59)secO6 bits秒钟计数结果的输出(0-59)第六章 数字系统设计实践模块设计 任务19 简易数字钟设计2)计数模块设计第六章 数字系统设计实践模块设计 任务19 简易数字钟设计3)显示模块设计信号名信号名I/O位位宽宽含含义义horI5 bits时钟计数结果minI6 bit分钟计数结果secI6 bits秒计数结果horhO2 bits小时高位显示信号,BCD码的高两位为0horlO4 bit小时低位显示信号minhO3 bits分钟高位显示信号,BCD码的最高位为0minlO4 bits分钟低位显示信号sechO3 bits秒高位显示信号
6、seclO4 bits秒低位显示信号第六章 数字系统设计实践顶层模块设计 任务19 简易数字钟设计clkclk_1分频器horminsec计时器horh显 示 控制horl minhminlsechsecl第六章 数字系统设计实践任务小结 任务19 简易数字钟设计本任务设计了一个简易数字钟,能实现小时、分钟和秒的计时及显示,其中控制小时、分钟和秒计时的计数模块是本次设计的核心。计数模块的关键在于能够理解三个计时单位之间的联系,即秒计数满60产生一个向分钟的进位,分钟计数满60产生一个向小时的进位,这两个进位信号将小时、分和秒联系起来,是理解本设计的关键点。为时钟设计一个初值设置控制信号,按下设
7、置信号时能利用开发板上的拨码开关或按键对时间进行校对设置。第六章 数字系统设计实践任务分析 任务20可编程多彩霓虹灯设计 任务要求利用开发系统板,设计一个简易的霓虹灯控制芯片。利用开发板上的8个发光二极管来模拟霓虹灯的灯泡,按键来控制霓虹灯的显示模式。设计一个可编程的多彩霓虹灯,实现霓虹灯的可编程多种图案的交替显示。第六章 数字系统设计实践系统设计 任务20可编程多彩霓虹灯设计 1)系统结构框图 第六章 数字系统设计实践系统设计 任务20可编程多彩霓虹灯设计 2)系统原理分析 可编程多彩霓虹灯分为5个模块,包括两个分频器模块、RAM存储器模块、显示模块和按键控制模块。两个分频器都是用来对系统时
8、钟进行分频。由于显示部分需要每1秒中显示一帧图像,所以需要由系统高频时钟分频得到一个1秒的时钟用于控制显示模块。另外一个分频器输出0.1秒的时钟,主要用于按键去抖动,并且能够得到合理速度的按键控制信号,同时这个时钟也用于构建RAM的工作时钟。显示模块的主要作用是从RAM中读出显示数据,并把这个数据显示到LED上。显示控制模块需要每一秒钟从RAM中读数一次,每次读出数据为8bits。键盘、拨码控制模块的主要作用是检测外部的按键信号,如果按键信号有效,就把拨码开关的数据输入到目前地址指针所指的RAM地址中。数据存储RAM模块是最复杂的核心模块,负责数据的存储和读出,该RAM需要处理来自键盘、拨码的
9、数据写入信号,也要处理LED显示控制模块的读数据请求信号,以及二者的冲突仲裁处理。第六章 数字系统设计实践系统设计 任务20可编程多彩霓虹灯设计 系统接口信号描述 信号名I/O位宽含义clkI1 bit系统时钟输入ledO8 bits多彩霓虹灯的显示数据keyI8 bits拨码开关的输入信号pressI1 bit按键开关信号第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 1.分频器1模块设计 Ttn个计数脉冲信号名I/O位宽含义clkI1 bit系统50Mhz时钟输入clk_01sO1 bit分频后周期为0.1s的时钟输出第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹
10、灯设计 2.分频器2模块设计 Ttn个计数脉冲信号名I/O位宽含义clkI1 bit系统50Mhz时钟输入clk_1sO1 bit分频后周期为1s的时钟输出第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 3.显示器模块设计 RAMLED显示控制模块地址信号时钟信号RAM数据8LED数据8信号名I/O位宽含义clk_1sI1 bit分频后周期为1s的时钟输出ledO8 bits输出给LED灯的显示数据disp_addO3 bits输出给RAM的地址disp_dataI8 bits从RAM读出的数据第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 4.按键模块设计 第
11、六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 4.按键模块设计 信号名信号名I/O位位宽宽含含义义clk_01sI1 bit分频后周期为0.1s的时钟输出keyI8 bits外部的拨码开关信号pressI1 bit外部的按键信号wdataO8 bits写入RAM的数据总线key_addO3 bits从按键控制模块输出给RAM的地址信号wrO1 bit写控制信号,按键信号通过上升沿检测电路后,生成一个时钟宽度的写信号第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 4.按键模块设计 信号名信号名I/O位位宽宽含含义义clk_01sI1 bit分频后周期为0.1s的时
12、钟输出keyI8 bits外部的拨码开关信号pressI1 bit外部的按键信号wdataO8 bits写入RAM的数据总线key_addO3 bits从按键控制模块输出给RAM的地址信号wrO1 bit写控制信号,按键信号通过上升沿检测电路后,生成一个时钟宽度的写信号第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 5)RAM模块设计 第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 5)RAM模块设计 信号名I/O位宽含义clk_01sI1 bit分频后周期为0.1s的时钟输出wdataI8 bits写入RAM的数据总线key_addI3 bits从按键控制模块
13、输入给RAM的地址信号wrI1 bit写控制信号,按键信号通过上升沿检测电路后,生成的一个时钟宽度的写信号。disp_addI3 bits显示控制模块输入给RAM的地址信号disp_dataO8 bits显示控制模块从RAM读出的数据第六章 数字系统设计实践模块设计 任务20可编程多彩霓虹灯设计 6)顶层连接模块设计第六章 数字系统设计实践任务分析 任务21多功能数字钟设计 本设计任务是设计一个多功能数字钟,其基本功能应该包括:(1)小时、分钟和秒计时和显示;(2)能够对数字钟的小时和分钟进行校对设置;(3)具有闹钟功能。第六章 数字系统设计实践系统设计 任务21多功能数字钟设计 1)系统结构
14、时钟按键扬声器发光二极管多功能数字钟第六章 数字系统设计实践系统设计 任务21多功能数字钟设计 2)系统原理分析 多功能数字钟系统共包括3个模块,即分频器模块,计数器模块(包括计数、时间设置和闹钟功能)和显示译码模块。多功能数字钟的功能可以从总体上分为三类,分别是正常计时、时钟校对和闹钟设置,所以考虑在系统中设置一个模式控制信号mode。模式控制信号对应一个按键,每按一次按键相当于工作模式进行一次变换,多次按下则数字钟将在正常计时、时间校对和闹钟设置三种工作模式下依次循环变换。在设计中,时钟校对和闹钟设置工作模式都需要对时间进行设置,通常是对小时和分钟进行设置,所以需要在系统中设置一个时间设置
15、信号set,对应一个按键,每次按键相当于在小时设置和分钟设置之间进行转换。时间设置时,分钟和小时计时单位之间互相独立,不存在进位关系。第六章 数字系统设计实践系统设计 任务21多功能数字钟设计 3)系统接口信号描述信号名I/O位宽含义clkI1bit系统时钟输入modeI1bit数字钟工作模式切换信号accumI1bit时钟设置的加1信号setI1bit对小时和分钟进行设置的选择信号voiceI1bit闹钟闹铃/静音设置信号L_alertO1bit闹钟闹铃标志信号L_hourO1bit小时设置标志信号L_minO1bit分钟设置标志信号L_al_setO1bit闹钟设置的标志信号alertO1
16、bit闹铃输出信号hhoutO7bits小时计时高位译码输出信号hloutO7bits小时计时低位译码输出信号mhoutO7bits分钟计时高位译码输出信号mloutO7bits分钟计时低位译码输出信号shoutO7bits秒钟计时高位译码输出信号sloutO7bits秒钟计时低位译码输出信号第六章 数字系统设计实践模块设计 任务21多功能数字钟设计 1)分频器设计信号名I/O位宽含义clkI1 bit系统50Mhz时钟输入clk_1O1 bit分频后频率为1hz的时钟输出module clk_div(clk,/输入时钟clk_1 /输出时钟);input clk;output clk_1;r
17、eg24:0 counter;/定义计数器来计数时钟,计数25000000,需要用25位计数器reg clk_1;always(posedge clk)if(counter=25h17D7840)/如果等于25000000begincounter=25b1;/把counter恢复成1clk_1=clk_1;/把clk_1翻转endelse /如果不等于25000000 counter=counter+1b1;/counter 继续计数endmodule 第六章 数字系统设计实践模块设计 任务21多功能数字钟设计 2)计数器设计信号名I/O位宽含义clk_1I1 bit分频后周期为1s的时钟输出
18、modeI1bit数字钟工作模式切换信号accumI1bit时钟设置的加1信号setI1 bit对小时和分钟进行设置的选择信号voiceI1 bit闹钟闹铃/静音设置信号L_alertO1 bit闹钟闹铃标志信号L_hourO1 bit小时设置标志信号L_minO1 bit分钟设置标志信号L_al_setO1 bit闹钟设置的标志信号alertO1 bit闹铃输出信号hourO8 bits小时计时输出信号minO8 bits分钟计时输出信号secO8 bits秒钟计时输出信号第六章 数字系统设计实践模块设计 任务21多功能数字钟设计 2)计数器设计第六章 数字系统设计实践模块设计 任务21多功
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FPGA_CPLD应用技术 第6章 数字系统设计实践 FPGA_CPLD 应用技术 数字 系统 设计 实践