第8章 有限状态机设计技术

上传人:san****glu 文档编号:37723030 上传时间:2018-04-21 格式:PDF 页数:51 大小:694.64KB
返回 下载 相关 举报
第8章 有限状态机设计技术_第1页
第1页 / 共51页
第8章 有限状态机设计技术_第2页
第2页 / 共51页
第8章 有限状态机设计技术_第3页
第3页 / 共51页
第8章 有限状态机设计技术_第4页
第4页 / 共51页
第8章 有限状态机设计技术_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《第8章 有限状态机设计技术》由会员分享,可在线阅读,更多相关《第8章 有限状态机设计技术(51页珍藏版)》请在金锄头文库上搜索。

1、EDA技术与VHDL EDA技术与VHDL 第8章第8章有限状态机设计技术有限状态机设计技术有限状态机设计技术有限状态机设计技术K KX康芯科技康芯科技K KX康芯科技康芯科技8.1 VHDL一般状态机8.1 VHDL一般状态机8.1.1 类型定义语句类型定义语句TYPE TYPE 数据类型名数据类型名IS 数据类型定义数据类型定义OF 基本数据类型基本数据类型 ;或或TYPE 数据类型名数据类型名 IS 数据类型定义数据类型定义 ; TYPE st1 IS ARRAY ( 0 TO 15 ) OF STD_LOGIC ;TYPE week IS (sun,mon,tue,wed,thu,fr

2、i,sat) ; TYPE m_state IS ( st0,st1,st2,st3,st4,st5 ) ;SIGNAL present_state,next_state : m_state ;K KX康芯科技康芯科技K KX康芯科技康芯科技8.1 VHDL一般状态机8.1 VHDL一般状态机8.1.1 类型定义语句类型定义语句TYPE TYPE BOOLEAN IS (FALSE,TRUE) ;TYPE my_logic IS ( 1 ,Z ,U ,0 ) ;SIGNAL s1 : my_logic ;s1 comb_outputs comb_outputs comb_outputs com

3、b_outputs ALEALE ALE ALE ALE next_state next_state next_state IF (EOC=1) THEN next_state next_state next_state next_state ALEALEALEALEALE ALE IF DATAIN =“10“ THEN C_ST IF DATAIN =“11“ THEN C_ST IF DATAIN =“01“ THEN C_ST IF DATAIN =“00“ THEN C_ST IF DATAIN =“11“ THEN C_ST C_ST IF DATAIN = 1 THEN STX

4、IF DATAIN = 0 THEN STX IF DATAIN = 1 THEN STX IF DATAIN = 0 THEN STX IF DATAIN = 1 THEN STX STX IF DATAIN = 1 THEN Q IF DATAIN = 0 THEN Q IF DATAIN = 1 THEN Q IF DATAIN = 0 THEN Q IF DATAIN = 1 THEN Q Q IF DATAIN = 1 THEN STX IF DATAIN = 0 THEN STX IF DATAIN = 1 THEN STX IF DATAIN = 0 THEN STX IF DA

5、TAIN = 1 THEN STX STX IF DATAIN=1 THEN Q2 :=“10000“; ELSE Q2:=“01010“; END IF; WHEN st1= IF DATAIN=0 THEN Q2 :=“10111“; ELSE Q2:=“10100“; END IF; WHEN st2= IF DATAIN=1 THEN Q2 :=“10101“; ELSE Q2:=“10011“; END IF; WHEN st3= IF DATAIN=0 THEN Q2 :=“11011“; ELSE Q2:=“01001“; END IF; WHEN st4= IF DATAIN=

6、1 THEN Q2 :=“11101“; ELSE Q2:=“01101“; END IF; WHEN OTHERS = Q2:=“00000“ ; END CASE ; IF CLKEVENT AND CLK = 1 THEN Q1 next_state next_state IF (EOC=1) THEN next_state next_state next_state next_state next_state next_state next_state IF DIN = D(7) THEN Q IF DIN = D(6) THEN Q IF DIN = D(5) THEN Q IF D

7、IN = D(4) THEN Q IF DIN = D(3) THEN Q IF DIN = D(2) THEN Q IF DIN = D(1) THEN Q IF DIN = D(0) THEN Q Q vi时,时,LM311输出低电平。在输出低电平。在 LM311输出由输出由1到到0的转折点处,的转折点处,FPGA输向输向0832数据必定与待测信号 电压数据必定与待测信号 电压vi成正比。由此数即可算得成正比。由此数即可算得vi的大小。的大小。(3) 实验内容实验内容1:例例8-13是图是图8-16中中FPGA的一个简单的示例性程序。的一个简单的示例性程序。K KX康芯科技康芯科技实 验

8、与 设 计实 验 与 设 计实验步骤如下:实验步骤如下:首先锁定引脚,编译。选择电路模式首先锁定引脚,编译。选择电路模式No.5,时钟,时钟CLK接接clock0;CLR接键接键1; DD7.0分别接分别接PIO31-PIO24;LM311比较信号接比较信号接PIO37;显示数据;显示数据 DISPDATA7.0,可以由数码,可以由数码8和和7显示显示(PIO47-PIO40)。向。向FPGA下载文件 后,打开下载文件 后,打开+/-12V电源;电源;clock0接接65536Hz。将。将GW48 EDA系统左下角的拨码 开关的系统左下角的拨码 开关的4、5向下拨,其余向上。注意,拨码向下拨,

9、其余向上。注意,拨码5向下后,能将向下后,能将FPGA的的PIO37脚与脚与 LM311的输出端相接,这可以从电路模式的输出端相接,这可以从电路模式No.5对应的电路中看出。由图还能看 出,对应的电路中看出。由图还能看 出,0832的输出端与的输出端与LM311的的“3”脚相连,而实验系统左下的输入口脚相连,而实验系统左下的输入口“AIN0”与与 LM311的的“2”脚相连,因此被测信号可接于脚相连,因此被测信号可接于“AIN0”端。由于端。由于“AIN1”口与电位器 相接,所以必须将口与电位器 相接,所以必须将“AIN1”与与“AIN0”短接,短接,“AIN0”就能获得电位器输出的作为 被测

10、信号的电压了。方法是将实验系统最左侧的跳线座就能获得电位器输出的作为 被测信号的电压了。方法是将实验系统最左侧的跳线座“JL10”的的“AIN0”和和 “AIN1”用短路帽短接。实验操作中,首先调谐电位器输出一个电压值,然后用用短路帽短接。实验操作中,首先调谐电位器输出一个电压值,然后用 CLR复位一次,接着即可从数码管上看到与被测电压成正比的数值。此后,每调 谐电位器输出一个新的电压,就要复位一次,以便能从头搜索到这个电压值。复位一次,接着即可从数码管上看到与被测电压成正比的数值。此后,每调 谐电位器输出一个新的电压,就要复位一次,以便能从头搜索到这个电压值。K KX康芯科技康芯科技实 验

11、与 设 计实 验 与 设 计图图8-16 比较器和比较器和D/A构成构成A/D电路框图电路框图K KX康芯科技康芯科技实 验 与 设 计实 验 与 设 计【例【例8-13】LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DAC2ADC IS PORT ( CLK : IN STD_LOGIC; -计数器时钟计数器时钟 LM311 : IN STD_LOGIC; -LM311输出,由输出,由PIO37口进入口进入FPGA CLR : IN STD_LOGIC; -计数器复位计数器

12、复位 DD : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ;-输向输向0832的数据的数据 DISPDATA : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );-转换数据显示转换数据显示 END; ARCHITECTURE DACC OF DAC2ADC IS SIGNAL CQI : STD_LOGIC_VECTOR(7 DOWNTO 0) ; BEGIN DD = CQI ; PROCESS(CLK, CLR, LM311) BEGIN IF CLR = 1 THEN CQI = “00000000“; ELSIF CLKEVENT AND

13、CLK = 1 THEN IF LM311 = 1 THEN CQI = CQI + 1; END IF;-如果是高电平,继续搜索如果是高电平,继续搜索 END IF; -如果出现低电平,即可停止搜索,保存计数值于如果出现低电平,即可停止搜索,保存计数值于CQI中中 END PROCESS; DISPDATA = CQI WHEN LM311=0 ELSE “00000000“ ;-将保存于将保存于CQI中的数输出中的数输出 END;K KX康芯科技康芯科技实 验 与 设 计实 验 与 设 计(3) 实验内容实验内容2:例例8-14的缺点有的缺点有2个:个:1、无法自动搜索被测信号, 每次测试都必须复位一次;、无法自动搜索被测信号, 每次测试都必须复位一次;2、由于每次搜索都是从、由于每次搜索都是从0开始,从而开始,从而 “A/D转换转换”速度太慢。试设计一个控制搜索的状态机,克服这两个缺点。且尽量提高速度太慢。试设计一个控制搜索的状态机,克服这两个缺点。且尽量提高 “转换转换”速度,如安排一个特定的算法(如黄金分割法)进行快速搜 索。速度,如安排一个特定的算法(如黄金分割法)进行快速搜 索。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号