书签 分享 收藏 举报 版权申诉 / 61
上传文档赚钱

类型第8章Verilog有限状态机设计课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:2899044
  • 上传时间:2022-06-09
  • 格式:PPT
  • 页数:61
  • 大小:2.06MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《第8章Verilog有限状态机设计课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Verilog 有限状态机 设计 课件
    资源描述:

    1、第第8章章 Verilog 有限状态机设计有限状态机设计1第八章第八章 VerilogVerilog有限状态机设计有限状态机设计 第第8章章 Verilog 有限状态机设计有限状态机设计28.1 Verilog HDL有限状态机的一般形式有限状态机的一般形式8.2 Moore型有限状态机设计型有限状态机设计8.3 Mealy型有限状态机设计型有限状态机设计8.4 System Verilog的枚举类型应用的枚举类型应用8.5 状态机图形编辑设计方法状态机图形编辑设计方法8.6 状态编码状态编码8.7 非法状态处理非法状态处理8.8 硬件数字技术排除毛刺硬件数字技术排除毛刺主要内容主要内容 第第

    2、8章章 Verilog 有限状态机设计有限状态机设计38.1 Verilog8.1 Verilog HDL HDL有限状态机的一般形式有限状态机的一般形式第第8章章 Verilog 有限状态机设计有限状态机设计4高效的顺序控制模型:高效的顺序控制模型:状态机克服了纯硬件数字系统顺序方状态机克服了纯硬件数字系统顺序方式控制不灵活的缺点式控制不灵活的缺点。容易利用现成的容易利用现成的EDA优化工具优化工具。性能稳定性能稳定:状态机容易构成性能良好的同步时序逻辑模块状态机容易构成性能良好的同步时序逻辑模块。设计实现效率高设计实现效率高:状态机的状态机的HDL表述丰富多样、程序层次分表述丰富多样、程序

    3、层次分明,易读易懂明,易读易懂。高速性能:高速性能:在高速运算和控制方面,状态机更有其巨大的优在高速运算和控制方面,状态机更有其巨大的优势势。高可靠性高可靠性。8.1.1 为什么要使用状态机为什么要使用状态机第第8章章 Verilog 有限状态机设计有限状态机设计58.1.2 有限状态机的结构有限状态机的结构分类:分类:n从状态机的信号输出方式上从状态机的信号输出方式上:Mealy型与型与 Moore型。型。米利机米利机的下一状态和输出取决于当前状态和当前输入;的下一状态和输出取决于当前状态和当前输入;摩尔机摩尔机的下一状态取决于当前状态和当前输入,但其输出仅取决于的下一状态取决于当前状态和当

    4、前输入,但其输出仅取决于当前状态。当前状态。n状态机的描述结构上:状态机的描述结构上:单过程状态机与多过程状态机。单过程状态机与多过程状态机。n从状态表达方式:从状态表达方式:符号化状态机和确定状态编码的状态符号化状态机和确定状态编码的状态机。机。n状态编码方式上分状态编码方式上分:顺序编码状态机、一位热码编码状:顺序编码状态机、一位热码编码状态机或其它编码状态机态机或其它编码状态机第第8章章 Verilog 有限状态机设计有限状态机设计6状态机的结构状态机的结构1. 说明部分说明部分 状态转换变量的定义和所有可能状态的说明,必要时还要确定每一状态转换变量的定义和所有可能状态的说明,必要时还要

    5、确定每一状态的编码形式。状态的编码形式。包括包括4个部分:个部分:说明部分、主控时序过程、主控组合过程、辅助过程说明部分、主控时序过程、主控组合过程、辅助过程说明:说明:用参数用参数parameter来定义各状态的,其中各状态的取值或编码必须写上。来定义各状态的,其中各状态的取值或编码必须写上。typedef是用户自定义语句关键词,是用户自定义语句关键词,enum是定义枚举类型关键词,是定义枚举类型关键词,type_user是是标示符。标示符。2. 主控时序过程(主控时序过程(REG进程)进程) 负责状态机运行和在时钟驱动下负责状态转换的过程。负责状态机运行和在时钟驱动下负责状态转换的过程。第

    6、第8章章 Verilog 有限状态机设计有限状态机设计73. 主控组合进程(主控组合进程(COM进程)进程) 主控组合过程也可称为状态译码过程,其任务是根据主控组合过程也可称为状态译码过程,其任务是根据外部外部输入的控制信号输入的控制信号(包括来自状态机外部的信号和来自状态机(包括来自状态机外部的信号和来自状态机内部其它非主控的组合或时序过程的信号)以及内部其它非主控的组合或时序过程的信号)以及当前状态的当前状态的状态值状态值确定下一状态(确定下一状态(next_state)的取向)的取向, 即即next_state的取值内容,以及确定的取值内容,以及确定对外输出对外输出或对或对内部其它内部其

    7、它组合时序过程组合时序过程输出控制信号的内容输出控制信号的内容。第第8章章 Verilog 有限状态机设计有限状态机设计84. 辅助进程辅助进程 配合状态机工作的组合过程或时序过程。配合状态机工作的组合过程或时序过程。时序过程时序过程只负责将当前状态转换为下一状态,不管将要转换的只负责将当前状态转换为下一状态,不管将要转换的是哪一个状态。是哪一个状态。第第8章章 Verilog 有限状态机设计有限状态机设计9第第8章章 Verilog 有限状态机设计有限状态机设计10rst是低电平有效,是低电平有效,clk是上升沿有效。是上升沿有效。观察输入信号观察输入信号0到到3的变化,此例是的变化,此例是

    8、Moore还是还是Mealy型?型?第第8章章 Verilog 有限状态机设计有限状态机设计118.1.3 状态机设计初始控制与表述状态机设计初始控制与表述 (1)打开)打开“状态机萃取状态机萃取”开关。开关。 第第8章章 Verilog 有限状态机设计有限状态机设计12第第8章章 Verilog 有限状态机设计有限状态机设计13(2)关于参数定义表述)关于参数定义表述 用用parameter进行参数定义虽然十分必要,一旦打来状态机进行参数定义虽然十分必要,一旦打来状态机萃取开关,状态定义可以十分随意。定义什么值都可以。萃取开关,状态定义可以十分随意。定义什么值都可以。(3)状态变量定义表述)

    9、状态变量定义表述 第第8章章 Verilog 有限状态机设计有限状态机设计148.2 Moore8.2 Moore型有限状态机的设计型有限状态机的设计 Mealy状态机:状态机:输出是当前状态和所有输入信号的函数。不依输出是当前状态和所有输入信号的函数。不依赖时钟同步。赖时钟同步。Moore状态机状态机:输出仅为当前状态的函数,所以在输入发生变:输出仅为当前状态的函数,所以在输入发生变化时还要等待时钟的到来,所以比机要多等待一个时钟周期。化时还要等待时钟的到来,所以比机要多等待一个时钟周期。第第8章章 Verilog 有限状态机设计有限状态机设计158.2.1 ADC采样控制设计及多过程结构型

    10、状态机采样控制设计及多过程结构型状态机 START:转换启动信号,高电平有效。:转换启动信号,高电平有效。ALE:模拟信号输入选通端口地址锁存信号。上升沿有效。模拟信号输入选通端口地址锁存信号。上升沿有效。EOC:转换结束信号。高电平有效,表示转换结束。:转换结束信号。高电平有效,表示转换结束。是是0809发送给状发送给状态机的信号。态机的信号。OE:输出允许信号,高电平有效,表示转换结束可以把结果输出去了。输出允许信号,高电平有效,表示转换结束可以把结果输出去了。第第8章章 Verilog 有限状态机设计有限状态机设计16第第8章章 Verilog 有限状态机设计有限状态机设计17EOC:转

    11、换结束信号。高电平有效,表示转换结束。:转换结束信号。高电平有效,表示转换结束。是是0809发送给状态机发送给状态机的信号。的信号。第第8章章 Verilog 有限状态机设计有限状态机设计18第第8章章 Verilog 有限状态机设计有限状态机设计19接上页接上页第第8章章 Verilog 有限状态机设计有限状态机设计20过程:过程:复位信号后进入状态复位信号后进入状态s0;第二个第二个clk上升沿后,状态机进入上升沿后,状态机进入s1,由由START、ALE发出启动采样和地址选发出启动采样和地址选通的控制信号,之后通的控制信号,之后EOC进入了低电平,进入了低电平,0809的的8位数据输出端

    12、出现高阻位数据输出端出现高阻态态”ZZ”,在状态在状态s2等待了数个等待了数个CLK后,后,EOC变为高电平,表示转换结束。变为高电平,表示转换结束。进入进入s3状态后,状态后,OE变为高电平,此时变为高电平,此时0809的数据输出端的数据输出端D已经输出转换好已经输出转换好的的5EH。在状态在状态s4,LOCK_T发出一个脉冲,其上升沿立即将发出一个脉冲,其上升沿立即将D端数据端数据5E锁入锁入Q和和REGL中。中。第第8章章 Verilog 有限状态机设计有限状态机设计21把例把例8-2中的组合过程可以分成两个组合过程:中的组合过程可以分成两个组合过程:n一个负责状态译码和状态转换。一个负

    13、责状态译码和状态转换。n另一个负责对外控制信号的输出。分开写如下:另一个负责对外控制信号的输出。分开写如下:第第8章章 Verilog 有限状态机设计有限状态机设计228.2.2 序列检测器之状态机设计序列检测器之状态机设计 8位序列数位序列数“11010011”高位在前左移进入检测器后,如次数高位在前左移进入检测器后,如次数与预置的密码数相同,则输出与预置的密码数相同,则输出1,否则输出,否则输出09个参数的定义很随意个参数的定义很随意第第8章章 Verilog 有限状态机设计有限状态机设计23第第8章章 Verilog 有限状态机设计有限状态机设计24第第8章章 Verilog 有限状态机

    14、设计有限状态机设计258.3 Mealy8.3 Mealy型有限状态机的设计型有限状态机的设计 Mealy状态机:状态机:输出是当前状态和所有输入信号的函数。不依赖输出是当前状态和所有输入信号的函数。不依赖时钟同步。与时钟同步。与Moore状态机不同之处在于状态机不同之处在于组合过程组合过程中的输出信号中的输出信号是当前状态和当前输入的函数。是当前状态和当前输入的函数。例例8-5:状态转换方式由状态转换方式由DIN1信号控制,对外控制信号码的输出信号控制,对外控制信号码的输出由由DIN2控制控制第第8章章 Verilog 有限状态机设计有限状态机设计26第第8章章 Verilog 有限状态机设

    15、计有限状态机设计27输出信号有毛刺。因为输出信号不随时钟输出信号有毛刺。因为输出信号不随时钟clk同步。同步。改进一下:设计成只有一个改进一下:设计成只有一个always过程的状态机。过程的状态机。第第8章章 Verilog 有限状态机设计有限状态机设计28第第8章章 Verilog 有限状态机设计有限状态机设计29第第8章章 Verilog 有限状态机设计有限状态机设计30输出信号没有毛刺了。输出信号没有毛刺了。第第8章章 Verilog 有限状态机设计有限状态机设计31例例8-7是把例是把例8-4的双过程改为单过程了。把的双过程改为单过程了。把输出与时钟同步输出与时钟同步这是去毛刺的办法。

    16、这是去毛刺的办法。第第8章章 Verilog 有限状态机设计有限状态机设计328.4 SystemVerilog8.4 SystemVerilog的枚举类型应用的枚举类型应用 把例把例8-4的状态变量改为如下枚举类型:的状态变量改为如下枚举类型:保存类型为保存类型为.sv第第8章章 Verilog 有限状态机设计有限状态机设计338.5 8.5 状态机图形编辑设计方法状态机图形编辑设计方法 第第8章章 Verilog 有限状态机设计有限状态机设计34第第8章章 Verilog 有限状态机设计有限状态机设计35第第8章章 Verilog 有限状态机设计有限状态机设计36第第8章章 Verilog

    17、 有限状态机设计有限状态机设计37第第8章章 Verilog 有限状态机设计有限状态机设计38第第8章章 Verilog 有限状态机设计有限状态机设计39第第8章章 Verilog 有限状态机设计有限状态机设计40第第8章章 Verilog 有限状态机设计有限状态机设计418.6 8.6 状状 态态 编编 码码 给状态编上码。给状态编上码。8.6.1 直接输出型编码直接输出型编码 第第8章章 Verilog 有限状态机设计有限状态机设计42计数器计数器:计数输出就是各状态的状态码。:计数输出就是各状态的状态码。当计数到当计数到m时,采用时,采用异步清异步清0的方式可以的方式可以模模m计数器计数

    18、器。当计数到当计数到m时,采用时,采用同步清同步清0的方式可以的方式可以模模m+1计数器计数器。当把状态编码直接输出作为控制信号,即当把状态编码直接输出作为控制信号,即out=state。状态码状态码直接输出型状态机。直接输出型状态机。第第8章章 Verilog 有限状态机设计有限状态机设计43第第8章章 Verilog 有限状态机设计有限状态机设计44说明:说明:优点:优点:输出速度快,不大可能出现毛刺。输出速度快,不大可能出现毛刺。缺点:缺点:可读性差、用于状态译码的组合逻辑资源比其他形同触可读性差、用于状态译码的组合逻辑资源比其他形同触发器数量构成的状态机多、控制非法状态出现的容错技术高

    19、。发器数量构成的状态机多、控制非法状态出现的容错技术高。第第8章章 Verilog 有限状态机设计有限状态机设计45用宏定义用宏定义define来定义来定义状态元素。放在状态元素。放在模块外面,是全模块外面,是全局变量,可以在局变量,可以在不同模块里通用。不同模块里通用。优点:优点:在波形里在波形里面直接可以看到面直接可以看到这些编码这些编码第第8章章 Verilog 有限状态机设计有限状态机设计468.6.2 宏定义命令语句宏定义命令语句 define 用宏定义命令语句用宏定义命令语句 define 定义的标示符,在使用的时候要加定义的标示符,在使用的时候要加上上.宏定义的语句末尾宏定义的语

    20、句末尾不需要加分号不需要加分号。第第8章章 Verilog 有限状态机设计有限状态机设计478.6.3 顺序编码顺序编码 优点:优点:触发器少,剩余的非法状态也少。容错技术简单。触发器少,剩余的非法状态也少。容错技术简单。缺点:缺点:状态译码麻烦,占用组合逻辑电路多,容易出现毛刺。状态译码麻烦,占用组合逻辑电路多,容易出现毛刺。 保密性差,不适合军用。保密性差,不适合军用。 对对CPLD合适:组合电路多,触发器少。不适合合适:组合电路多,触发器少。不适合FPGA设计。设计。第第8章章 Verilog 有限状态机设计有限状态机设计488.6.4 一位热码状态编码一位热码状态编码一位热码编码:一位

    21、热码编码:n个触发器来实现具有个触发器来实现具有n个状态的状态机。状态机中个状态的状态机。状态机中的每一个状态都由其中一个触发器的状态表示。即当处于该状态时,的每一个状态都由其中一个触发器的状态表示。即当处于该状态时,对用的触发器是对用的触发器是1,其余触发器都是,其余触发器都是0.优点优点:译码速度快,转换速度快,提高了系统稳定性。适合:译码速度快,转换速度快,提高了系统稳定性。适合FPGA设计。设计。Quartus II中是默认的编码方式。中是默认的编码方式。第第8章章 Verilog 有限状态机设计有限状态机设计498.6.5 状态编码设置状态编码设置 1. 用户自定义方式用户自定义方式

    22、 2. 用属性定义语句设置用属性定义语句设置 第第8章章 Verilog 有限状态机设计有限状态机设计50第第8章章 Verilog 有限状态机设计有限状态机设计513. 直接设置方法直接设置方法 第第8章章 Verilog 有限状态机设计有限状态机设计528.7 8.7 非法状态处理非法状态处理 s5,s6,s7是非法状态。是非法状态。第第8章章 Verilog 有限状态机设计有限状态机设计538.7.1 程序直接导引法程序直接导引法 说明说明:不要太依赖:不要太依赖default语句。语句。 适合顺序编码的状态机适合顺序编码的状态机第第8章章 Verilog 有限状态机设计有限状态机设计5

    23、48.7.2 状态编码监测法状态编码监测法 一位热键编码方式设计的状态机。一位热键编码方式设计的状态机。把状态的每一位相加看结果如果大于把状态的每一位相加看结果如果大于1,发出一个警告信号,发出一个警告信号alarm,系统根据此决定是否要转向或者复位,系统根据此决定是否要转向或者复位8.7.3 借助借助EDA优化控制工具生成安全状态机优化控制工具生成安全状态机 (*syn_encoding=“safe,one-hot”*)第第8章章 Verilog 有限状态机设计有限状态机设计558.8 8.8 硬件数字技术排除毛刺硬件数字技术排除毛刺 8.8.1 延时方式去毛刺延时方式去毛刺 现代方式的延时

    24、现代方式的延时不采用组合逻辑不采用组合逻辑,而是,而是采用触发器、寄存器等采用触发器、寄存器等时序元件对输时序元件对输入输出电路通道上的信号进行适当的延时或延时采样。,使处理过的信号在入输出电路通道上的信号进行适当的延时或延时采样。,使处理过的信号在输出后能避开毛刺。输出后能避开毛刺。时序电路中最常用。时序电路中最常用。第第8章章 Verilog 有限状态机设计有限状态机设计56特点:特点:只能除去数据或者是时钟单边沿的毛刺。只能除去数据或者是时钟单边沿的毛刺。延时时钟周期信号的周期应该与主通道上面的输入数据延时时钟周期信号的周期应该与主通道上面的输入数据时序宽度或时钟的周期有较好的配合。时序

    25、宽度或时钟的周期有较好的配合。第第8章章 Verilog 有限状态机设计有限状态机设计578.8.2 逻辑方式去毛刺逻辑方式去毛刺 实质就是一个过滤器:,将信号中的毛刺、随机噪声或电子抖动信实质就是一个过滤器:,将信号中的毛刺、随机噪声或电子抖动信号过滤掉,只让真正的信号通过。号过滤掉,只让真正的信号通过。第第8章章 Verilog 有限状态机设计有限状态机设计58特点:特点:输出脉冲宽度变小了。信号有一个延迟。输出脉冲宽度变小了。信号有一个延迟。CLK的频率应该足够高,至少的频率应该足够高,至少4个上升沿被包含在正常信号脉宽里面。个上升沿被包含在正常信号脉宽里面。CLK的频率不能太高,不能太

    26、小于干扰信号的频率。的频率不能太高,不能太小于干扰信号的频率。增加增加D触发器的数量,可以提高滤波性能。触发器的数量,可以提高滤波性能。第第8章章 Verilog 有限状态机设计有限状态机设计598.8.3 定时方式去毛刺定时方式去毛刺 用两个计数器分别对输入信号的高低电平的持续时间进行计数,只用两个计数器分别对输入信号的高低电平的持续时间进行计数,只有当时间大于某个值时,则判断为遇到正常信号。输出有当时间大于某个值时,则判断为遇到正常信号。输出1或或0第第8章章 Verilog 有限状态机设计有限状态机设计60特点:特点:输出信号的脉宽比逻辑方式输出的信号宽很多。输出信号的脉宽比逻辑方式输出

    27、的信号宽很多。KH与与KL的计数位宽可以视具体情况而定。的计数位宽可以视具体情况而定。第第8章章 Verilog 有限状态机设计有限状态机设计61CPUCPU总是按照一定的时钟节拍与时序工作:总是按照一定的时钟节拍与时序工作:振荡周期振荡周期/ /时钟周期时钟周期: TcTc= =晶振频率晶振频率foscfosc(或外加频率)的倒数(或外加频率)的倒数状态周期状态周期:Ts=2Ts=2个时钟周期个时钟周期(Tc(Tc) )(很少用到此概念)(很少用到此概念)机器周期:机器周期:Tm=6Tm=6个状态周期个状态周期(Ts)=12(Ts)=12个振荡周期个振荡周期(Tc(Tc) )指令周期指令周期: : Ti:Ti:执行一条指令所需的机器周期执行一条指令所需的机器周期(Tm)(Tm)数数牢牢记住牢牢记住: 振荡周期振荡周期 = = 晶振频率晶振频率foscfosc的倒数;的倒数; 1 1个机器周期个机器周期 = 12= 12个振荡周期;个振荡周期; 1 1个指令周期个指令周期 = 1= 1、2 2、4 4个机器周期个机器周期

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第8章Verilog有限状态机设计课件.ppt
    链接地址:https://www.163wenku.com/p-2899044.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库