电子设计自动化技术(EDA)ppt课件.pptx
《电子设计自动化技术(EDA)ppt课件.pptx》由会员分享,可在线阅读,更多相关《电子设计自动化技术(EDA)ppt课件.pptx(79页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、EDA技术与应用 中国地质大学 通信工程系数字系统中状态机的设计数字系统中状态机的设计EDA技术与应用 中国地质大学 通信工程系回忆计数器设计 设计一电路,包含基4计数器,和译码输出模块。计数器的输出(Present_value)从0到3循环;当计数值为2时,译码输出(DataOut)为“1”,否则输出“0”。Regs1ClkPresent_valueQ(n)Next_valueQ(n+1) 译码DataOutZ(n)EDA技术与应用 中国地质大学 通信工程系Regs1ClkPresent_valueQ(n)Next_valueQ(n+1) 译码DataOutZ(n)00/001/010/11
2、1/0EDA技术与应用 中国地质大学 通信工程系Regs/-1ClkPresent_valueQ(n)Next_valueQ(n+1) 译码DataOutZ(n)00/001/010/111/0扩展一个输入端扩展一个输入端din,当当din = 1时计时计数器递增计数;当数器递增计数;当din = 0时计数器递时计数器递减计数。减计数。dinDin = 1Din = 1Din = 1Din = 1Din = 0Din = 0Din = 0Din = 0EDA技术与应用 中国地质大学 通信工程系Regs/-1ClkPresent_valueQ(n)Next_valueQ(n+1) 译码DataO
3、utZ(n)再将计数器修改成再将计数器修改成一个状态转换器,一个状态转换器,状态为状态为S0, S1, S2, S3。每个状态的取每个状态的取值根据具体情况而值根据具体情况而定。比如定。比如S0 = 00, S1 = 11, S3 = 01, S4 = 10。dinDin = 1Din = 1Din = 1Din = 100/001/010/111/0Din = 0Din = 0Din = 0Din = 0EDA技术与应用 中国地质大学 通信工程系Regs译码ClkPresent_valueQ(n)Next_valueQ(n+1) 译码DataOutZ(n)再将计数器修改成再将计数器修改成一个
4、状态转换器,一个状态转换器,状态为状态为S0, S1, S2, S3。每个状态的取每个状态的取值根据具体情况而值根据具体情况而定。比如定。比如S0 = 00, S1 = 11, S3 = 01, S4 = 10。dinDin = 1Din = 1Din = 1Din = 1S0/0S1/0S2/1S3/0Din = 0Din = 0Din = 0Din = 0EDA技术与应用 中国地质大学 通信工程系Regs译码ClkPresent_stateQ(n)Next_stateQ(n+1) 译码DataOutZ(n)dinDin = 1Din = 1Din = 1Din = 1S0/0S1/0S2/
5、1S3/0Din = 0Din = 0Din = 0Din = 0现在我们得到了一个现在我们得到了一个比较通用的时序电路,比较通用的时序电路,这种电路统称为状态这种电路统称为状态机机(State Machine)。EDA技术与应用 中国地质大学 通信工程系状态机的分类:状态机的分类: NS组合逻辑电路 CS 寄存器 OL组合逻辑电路DIN CP RDMoore状态机内部结构图DOUTDOUT NS组合逻辑电路 CS 寄存器 OL组合逻辑电路DIN CP RDMealy状态机的内部结构图moore型和型和mealy型型EDA技术与应用 中国地质大学 通信工程系状态机的表示方法状态机的表示方法1方
6、法一:状态转换表方法一:状态转换表输入当前状态下一状态输出0000001010000000EDA技术与应用 中国地质大学 通信工程系状态机的表示方法状态机的表示方法2方法二:算法流程图方法二:算法流程图 方法与软件程序的流程图类似状态转换表和算法流程图都不适合复杂系统的设计状态机的表示方法状态机的表示方法3方法三:状态转换图方法三:状态转换图这是最流这是最流行的表示行的表示方法方法状态1状态4状态2状态3入入/出出入入入入入入/出出/出出/出出Moore条件控制定序直接控制定序状态机的表示方法状态机的表示方法3方法三:状态转换图方法三:状态转换图这是最流这是最流行的表示行的表示方法方法状态1状
7、态4状态2状态3入入 /出出入入入入入入/出出/出出/出出/出出Mealy条件控制定序直接控制定序EDA技术与应用 中国地质大学 通信工程系为什么要使用状态机为什么要使用状态机一般有限状态机的设计一般有限状态机的设计 有限状态机克服了有限状态机克服了纯硬件数字系统顺序方式控制不灵活纯硬件数字系统顺序方式控制不灵活的缺点。的缺点。 状态机的结构模式相对简单状态机的结构模式相对简单。 状态机容易构成性能良好的同步时序逻辑模块状态机容易构成性能良好的同步时序逻辑模块。 状态机的状态机的VHDLVHDL表述丰富多样表述丰富多样。 在高速运算和控制方面,状态机更有其巨大的优势在高速运算和控制方面,状态机
8、更有其巨大的优势。 就可靠性而言,状态机的优势也是十分明显的就可靠性而言,状态机的优势也是十分明显的。EDA技术与应用 中国地质大学 通信工程系有限状态机的有限状态机的VHDL设计设计用户自定义数据类型定义语句用户自定义数据类型定义语句TYPETYPE语句用法如下:语句用法如下:TYPE TYPE 数据类型名数据类型名 IS IS 数据类型定义数据类型定义 OF OF 基本数据类型基本数据类型 ; ;或或TYPE TYPE 数据类型名数据类型名 IS IS 数据类型定义数据类型定义 ; ;以下列出了两种不同的定义方式:以下列出了两种不同的定义方式:TYPE TYPE myarraymyarra
9、y IS ARRAY ( 0 TO 15 ) OF STD_LOGIC ; IS ARRAY ( 0 TO 15 ) OF STD_LOGIC ;TYPE week IS (sunTYPE week IS (sun,monmon,tuetue,wedwed,thuthu,frifri,sat) ;sat) ;EDA技术与应用 中国地质大学 通信工程系有限状态机的有限状态机的VHDL设计设计用户自定义数据类型定义语句用户自定义数据类型定义语句TYPE m_state IS ( st0,st1,st2,st3,st4,st5 ) ;SIGNAL present_state,next_state :
10、 m_state ;EDA技术与应用 中国地质大学 通信工程系一般有限状态机的设计实现一般有限状态机的设计实现有限状态机的有限状态机的VHDL设计设计1. 1. 说明部分说明部分2. 2. 主控时序进程主控时序进程com b_outputsstate_inputsresetclkF S M :s_m achineC O Mnext_statecurrent_stateP R O C E S SR E GP R O C E S S一般状态机结构框图工作示意图一般状态机结构框图工作示意图ARCHITECTURE .IS TYPE FSM_ST IS (s0,s1,s2,s3); SIGNAL cu
11、rrent_state, next_state: FSM_ST; . 主控时序进程主控组合进程EDA技术与应用 中国地质大学 通信工程系3. 3. 主控组合进程主控组合进程一般有限状态机的设计实现一般有限状态机的设计实现 主控组合进程的任务是根据外部输入的控制信号主控组合进程的任务是根据外部输入的控制信号(包括来自状态机外部的信号和来自状态机内部其它非(包括来自状态机外部的信号和来自状态机内部其它非主控的组合或时序进程的信号),或(和)当前状态的主控的组合或时序进程的信号),或(和)当前状态的状态值确定下一状态(状态值确定下一状态(next_statenext_state)的取向,即)的取向,
12、即next_statenext_state的取值内容,以及确定对外输出或对内部其的取值内容,以及确定对外输出或对内部其它组合或时序进程输出控制信号的内容。它组合或时序进程输出控制信号的内容。4. 4. 辅助进程辅助进程EDA技术与应用 中国地质大学 通信工程系LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY s_machine IS PORT ( clk,reset : IN STD_LOGIC; state_inputs : IN STD_LOGIC_VECTOR (0 TO 1); comb_outputs : OUT INTEGER RANG
13、E 0 TO 15 );END s_machine;ARCHITECTURE behv OF s_machine IS TYPE FSM_ST IS (s0, s1, s2, s3); SIGNAL current_state, next_state: FSM_ST;BEGIN REG: PROCESS (reset,clk) BEGIN IF reset = 1 THEN current_state = s0; ELSIF clk=1 AND clkEVENT THEN current_state comb_outputs= 5; IF state_inputs = 00 THEN next
14、_state=s0; ELSE next_state comb_outputs= 8; IF state_inputs = 00 THEN next_state=s1; ELSE next_state comb_outputs= 12; IF state_inputs = 11 THEN next_state = s0; ELSE next_state comb_outputs = 14; IF state_inputs = 11 THEN next_state = s3; ELSE next_state = s0; END IF; END case; END PROCESS; END beh
15、v;接上页接上页思考:moore?ormealy?EDA技术与应用 中国地质大学 通信工程系状态机的工作时序图状态机的工作时序图一般有限状态机的设计一般有限状态机的设计状态机的应用设计例子:设计一个二进制序列检测器,当检测例子:设计一个二进制序列检测器,当检测到到10110序列时,就输出序列时,就输出1(一个时钟周期的脉一个时钟周期的脉冲冲)。其他情况下输出。其他情况下输出0。 规定检测到一次之后,检测器复位到最初规定检测到一次之后,检测器复位到最初始的状态,重新从头检测。如下所示:始的状态,重新从头检测。如下所示:输入:01101101101100输出:00000001000001状态转换图
16、设计(Moore)10110S0/0S1/0S2/0S3/0S4/0S5/1Reset1100110100101011 0s1 s2s3s4 s5s0问题问题1:如何保证:如何保证状态机在初始时状状态机在初始时状态为态为s0?问题问题2:在状态:在状态机跑飞,即脱离机跑飞,即脱离有效状态有效状态(s0s5)时,如何使状时,如何使状态机能恢复工作态机能恢复工作Sx/0波形 波形如下图所示问题:如果需要问题:如果需要将输出脉冲往前将输出脉冲往前推一个时钟周期,推一个时钟周期,该如何修改设计?该如何修改设计?101101011 0s1 s2s3s4 s5s0输入输入时钟时钟输出输出当前状态当前状态
17、发现当当前壮发现当当前壮态为态为s4,并且输并且输入为入为0时时,输出,输出为为1。状态转换图设计(Mealy)S0S1S2S3S4S5Reset100110100101sX/0/0/0/0/0/0/0/0/0/1/0/0101101011 0s1 s2s3s4 s5s0/00/1s0EDA技术与应用 中国地质大学 通信工程系练习:用状态机设计序列检测器(练习:用状态机设计序列检测器(1101001)在通信系统中可以在通信系统中可以有什么用途?有什么用途?EDA技术与应用 中国地质大学 通信工程系EDA技术与应用 中国地质大学 通信工程系 VHDL综合器易于优化 易构成性能良好的时序逻辑模块
18、结构模式简单、层次分明、易读易懂、易排错 运行模式类似于CPU,易于进行顺序控制 利用同步时序和全局时钟线可实现高速FSM 高可靠性,非法状态易控制 EDA技术与应用 中国地质大学 通信工程系EDA技术与应用 中国地质大学 通信工程系AD574控制方法 现在我们来讨论AD574A 的CE、12/n8、nCS、R/nC和A0 对其工作状态的控制过程。在CE=1、nCS=0 同时满足时,AD574A 才会正常工作, 在AD574 处于工作状态时,当R/nC=0 时A/D 转换,当R/nC=1 时进行数据读出。12/n8和A0 端用来控制启动转换的方式和数据输出格式。 A0=0时,启动的是按完整12
19、 位数据方式进行的。当A0=1 时,按8 位A/D 转换方式进行。 当R/nC=1,也即当AD574A 处于数据状态时,A0 和12/n8控制数据输出状态的格式。当12/n8=1 时,数据以12 位并行输出,当12/n8=0 时,数据以8 位分两次输出。而当A0=0 时,输出转换数据的高8 位,A0=1 时输出A/D 转换数据的低4 位,这四位占一个字节的高半字节,低半字节补零。其控制逻辑真值表见表1。EDA技术与应用 中国地质大学 通信工程系Moore型有限状态机的设计型有限状态机的设计三进程有限状态机三进程有限状态机CE nCS R/nC 12/n8 A0工 作 状 态0XXXX禁止X1X
20、XX禁止100X0启动12位转换100X1启动8位转换1011X12位并行输出有效10100高8位并行输出有效10101低4位加上尾随4个0有效AD574逻辑控制真值表(逻辑控制真值表(X表示任意)表示任意)EDA技术与应用 中国地质大学 通信工程系三进程有限状态机三进程有限状态机AD574工作时序工作时序 STATUS:AD574芯片的一个输出引脚,标志芯片的忙或闲的状态,在转换进行时,它为高电平,转换结束时变低电平。EDA技术与应用 中国地质大学 通信工程系8051与AD574的接口电路EDA技术与应用 中国地质大学 通信工程系三进程有限状态机三进程有限状态机AD574工作时序工作时序ED
21、A技术与应用 中国地质大学 通信工程系三进程有限状态机三进程有限状态机 采样状态机结构框图采样状态机结构框图EDA技术与应用 中国地质大学 通信工程系LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY AD574 IS PORT (D :IN STD_LOGIC_VECTOR(11 DOWNTO 0); CLK ,STATUS : IN STD_LOGIC;-状态机时钟状态机时钟CLK,AD574状态信号状态信号STATUS LOCK0 : OUT STD_LOGIC; -内部锁存信号内部锁存信号LOCK的测试信号的测试信号 CS,A0,RC,K
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子设计 自动化 技术 EDA ppt 课件
限制150内