新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 如何使用STATECAD进行多状态机设计实例分析

如何使用STATECAD进行多状态机设计实例分析

作者:时间:2012-03-26来源:网络收藏

随着微电子技术的迅速发展,人们对数字系统的需求也在提高。不仅要有完善的功能,而且对速度也提出了很高的要求。对于大部分数字系统,都可以划分为控制单元和数据单元两个组成部分。通常,控制单元的主体是一个有限状态机 ,它接收外部信号以及数据单元产生的状态信息,产生控制信号序列。有限状态机设计的关键是如何把一个实际的时序逻辑关系抽象成一个时序逻辑函数,传统的电路图输入法通过直接设计寄存器组来实现各个状态之间的转换, 而用硬件描述语言来描述有限状态机, 往往是通过充分发挥硬件描述语言的抽象建模能力,通过对系统在系统级或寄存器传输级进行描述来建立有限状态机。EDA 工具的快速发展,使通过CAD快速设计有限状态机自动化成为可能。

  传统上在系统级和寄存器传输级完成VHDL 的描述主要分以下几步:

  (1) 分析控制器设计指标, 建立系统算法模型图;

  (2) 分析被控对象的时序状态, 确定控制器有限状态机的各个状态及输入.输出条件;

  (3) 应用VHDL 语言完成描述。

  使用XILINX的ISE6.1软件包的辅助工具能加速有限状态机设计,大大简化状态机的设计过程,实现状态机设计的自动化。使用进行状态机设计的流程如下:

  (1) 分析控制器设计指标, 建立系统算法模型图;

  (2) 分析被控对象的时序状态, 确定控制器有限状态机的各个状态及输入.输出条件;

  (3) 在中输入有限状态机状态图,自动产生VHDL模型描述,使用STATEBENCH进行状态转移分析,分析无误后使用导出VHDL模型块到ISE中进行仿真后综合,实现到CPLD或FPGA的映射。

  设计人员的主要工作在第一步。第二步,第三步基本上可以通过STATECAD完成有限状态机的自动生成和分析,还可以利用分析结果来对被控对象的逻辑进行分析,改进,完善系统控制逻辑。

  在需要并行处理的场合,往往需要采用来完成系统的控制任务,这时状态机之间的同步问题往往是设计者需要仔细考虑的问题。如果采用完全人工输入代码的方法来设计,往往力不从心。采用STATECAD完成整个控制逻辑的设计并对设计结果进行验证更能体现CAD设计方法的优势,加速产品开发进度,提高设计生产率。

  下面以一个双状态机设计过程来介绍如何使用STATECAD进行的协同设计。

  有二个状态机,一个负责对M0写,一个负责对M0读操作,为了简单起见,系统已经尽量简化了。

  负责对M0写的状态机包括四个状态:

  STATE0:写状态机复位后初始化;

  Write0:对M0写,写满4个转到M0full;

  M0full:M0满状态;


上一页 1 2 3 4 5 6 7 8 9 下一页

关键词: STATECAD 多状态机 实例分析
分享给小伙伴们:

评论


相关推荐

技术专区

关闭