多状态机的协同设计.docx
《多状态机的协同设计.docx》由会员分享,可在线阅读,更多相关《多状态机的协同设计.docx(15页珍藏版)》请在咨信网上搜索。
1、多状态机的协同设计随着微电子技术的迅速发展,人们对数字系统的需求也在提高 1 。不仅要有完善的功能,而且对速度也提出了很高的要求。对于大部分数字系统,都可以划分为控制单元和数据单元两个组成部分。通常,控制单元的主体是一个有限状态机 ,它接收外部信号以及数据单元产生的状态信息,产生控制信号序列。有限状态机设计的关键是如何把一个实际的时序逻辑关系抽象成一个时序逻辑函数,传统的电路图输入法通过直接设计寄存器组来实现各个状态之间的转换, 而用硬件描述语言来描述有限状态机, 往往是通过充分发挥硬件描述语言的抽象建模能力,通过对系统在系统级或寄存器传输级进行描述来建立有限状态机。EDA 工具的快速发展,使
2、通过CAD快速设计有限状态机自动化成为可能。 传统上在系统级和寄存器传输级完成VHDL 的描述主要分以下几步: (1)分析控制器设计指标, 建立系统算法模型图; (2)分析被控对象的时序状态, 确定控制器有限状态机的各个状态及输入.输出条件; (3)应用VHDL 语言完成描述。 使用XILINX的软件包的辅助工具STATECAD能加速有限状态机设计,大大简化状态机的设计过程,实现状态机设计的自动化。使用STATECAD进行状态机设计的流程 (1)分析控制器设计指标, 建立系统算法模型图; (2)分析被控对象的时序状态, 确定控制器有限状态机的各个状态及输入.输出条件; (3) 在STATECA
3、D中输入有限状态机状态图,自动产生VHDL模型描述,使用STATEBENCH进行状态转移分析,分析无误后使用导出VHDL模型块到ISE中进行仿真后综合,实现到CPLD或FPGA的映射。 设计人员的主要工作在第一步。第二步,第三步基本上可以通过STATECAD完成有限状态机的自动生成和分析,还可以利用分析结果来对被控对象的逻辑进行分析,改进,完善系统控制逻辑。 在需要并行处理的场合,往往需要采用多状态机来完成系统的控制任务,这时状态机之间的同步问题往往是设计者需要仔细考虑的问题。如果采用完全人工输入代码的方法来设计,往往力不从心。采用STATECAD完成整个控制逻辑的设计并对设计结果进行验证更能
4、体现CAD设计方法的优势,加速产品开发进度,提高设计生产率。 下面以一个双状态机设计过程来介绍如何使用STATECAD进行多状态机的协同设计。 有二个状态机,一个负责对M0写,一个负责对M0读操作,为了简单起见,系统已经尽量简化了。 负责对M0写的状态机包括四个状态: STATE0:写状态机复位后初始化; write0:对M0写,写满4个转到m0full; m0full:M0满状态; m0writewait:等待。M0满时转入write0状态。 负责对M0读的状态机包括四个状态: STATE1:读状态机复位后初始化 read0:对M0读,读4个转到m0empty m0empty:M0空状态 m
5、0readwait:等待。M0空时转入read0状态 负责对M0写的状态机必须知道M0是空的,而负责对M0读的状态机必须知道M0是满的才能读。读完了通知负责对M0写的状态机M0是空的,可以写了。二个状态机同时并行工作。M0写的状态机在写操作完了,就等待M0空。M0读的状态机在读操作完了,就等待M0满。在STATECAD中,状态本身可以作为其他状态机的转移条件。这也正是在进行多状态机的协同设计中最需要的功能,能大大方便多状态机的设计。 输入完状态图,就基本完成了状态机的设计过程。进行逻辑优化后,使用STATEBENCH进行状态转移分析。以下是自动状态转移模拟波形。由以上的波形看到状态机的工作过程
6、符合设计逻辑。对单独的器件操作也许不需要采用多状态机的设计方法,但在多器件需要并行工作时,多状态机的协同设计就显得必要了。导出VHDL模型块到ISE中进行仿真后综合,这里就不多讲了,以下是产生的代码:- D:“XILINXTUTORIAL“LIBRARY ieee;USE _logic_;LIBRARY ieee;USE _logic_;ENTITY SHELL_DUOZTJI ISPORT (CLK,RESET: IN std_logic;dcounter0,dcounter1 : OUT std_logic);SIGNAL BP_dcounter0,BP_dcounter1,readcou
7、nter0,readcounter1: std_logic;END;ARCHITECTURE BEHAVIOR OF SHELL_DUOZTJI ISSIGNAL sreg : std_logic_vector (1 DOWNTO 0);SIGNAL next_sreg : std_logic_vector (1 DOWNTO 0);CONSTANT m0full : std_logic_vector (1 DOWNTO 0) :=00;CONSTANT m0writewait : std_logic_vector (1 DOWNTO 0) :=01;CONSTANT STATE0 : std
8、_logic_vector (1 DOWNTO 0) :=10;CONSTANT write0 : std_logic_vector (1 DOWNTO 0) :=11;SIGNAL sreg1 : std_logic_vector (1 DOWNTO 0);SIGNAL next_sreg1 : std_logic_vector (1 DOWNTO 0);CONSTANT m0empty : std_logic_vector (1 DOWNTO 0) :=00;CONSTANT m0readwait : std_logic_vector (1 DOWNTO 0) :=01;CONSTANT
9、read0 : std_logic_vector (1 DOWNTO 0) :=10;CONSTANT STATE1 : std_logic_vector (1 DOWNTO 0) :=11;SIGNAL next_BP_dcounter0,next_BP_dcounter1,next_readcounter0,next_readcounter1 : std_logic;SIGNAL BP_dcounter : std_logic_vector (1 DOWNTO 0);SIGNAL dcounter : std_logic_vector (1 DOWNTO 0);SIGNAL readcou
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 状态机 协同 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。