集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
楼主: lcytms

跟李凡老师学FPGA之D04:有限状态机设计(20160426课堂笔记)

[复制链接]
 楼主| lcytms 发表于 2017-4-18 22:03:04 | 显示全部楼层
1047       
        因为你写的时候就不会写错。
        哪些信号写在赋值号的左侧,哪些信号在右侧。
        多一个是画蛇添足,少一个就不正确。
        记住这张图就不会写错,这四张图。
        现在我们就来说如何变成,理论模型变成这个代码模型?
        首先1/3的部分就是原来1/2的部分,仍然是描述了这个寄存器,就是状态寄存器,就是我们只需要描述NS连接到CS,就会形成state寄存器。
        这是1/3的部分。
        输入NS,输出是CS,它是一个闭节点,描述了CS引入到NS,就是把NS赋给它。
       

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2017-4-18 22:13:02 | 显示全部楼层
1048       
        用闭节点的方式描述,就会得到这个寄存器。
        这是1/3的部分。
        2/3的部分,描述ST,是一个ON。
        ST有输入的CS信号,输入的现场信号。
        ST的输出,是NS。
        这个代码块,我只描述ST,是用ON的方式来描述,开节点的方式来描述,种瓜得瓜种豆得豆。
        它的输出未被加工,是一个ON。
       

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2017-4-18 22:30:25 | 显示全部楼层
1049       
        然后剩下的,写米利,描述米利,写摩尔,描述摩尔。
        这次呢,我们是用一个闭节点来写。
        如果是摩尔,摩尔需要什么?
        CS,单独引进CS,这一次的输出由于我们写成闭节点,就一定会生成寄存器。
        也就是摩尔的这个输出,无论是输出是ABCD、count等等,它一定会出现在赋值号的左侧,这个左侧的信号一定会生成一个寄存器,输出。
        三段式。
        这是摩尔。
       

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2017-4-19 09:04:17 | 显示全部楼层
1050       
        如果是米利呢,再加上输入信号。
        这就得到了描述的一个转换关系。
        就是理论模型如何得到代码模型?
        转换关系理解即可。
        这四张图背下来。
        这是有意义的。
        虽然我们状态机今天只是第一天,但是这四张图你背下来,一定对你是有益的。
        放近一点的话,至少对我们这一百天是有意义的。
        一百天的学习,你会带来一些方便。
       

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2017-4-19 09:15:53 | 显示全部楼层
本帖最后由 lcytms 于 2017-4-19 14:02 编辑

1051       
        说得远一点呢,可能会影响到一个整个的职业生涯。
        我们知道,我们在小学学汉字的时候,就是汉字的初始的基础甚至可能会影响到我们的一生,所以基础的部分很可能会直接影响到我们的未来。
        这就是状态机的理论基础。
        下面我们来说一下状态机的设计。
        现代EDA状态机的设计,我们已经讨论了如何用verilog、用语言来描述你的模型,但是如何来把一个事物、一个事件发展的规律,正确地描述为一个状态机的解决方案呢?
        数字电路告诉我们有一种方法,就是状态转移图。
        状态转移图之前还有些方法,比方说,象状态转移表等等,之类的,但是数字电路里面比较经典的还是状态转移图。       

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2017-4-19 09:29:46 | 显示全部楼层
1052
        我们就来讨论规划的方法,就是规划一个状态机的现代方法。
        我们来复习一下数字电路里面的状态转移图,称之为STG,State Transition Graphs。
        数字电路里面,我们经常看到这样的一个状态转移图。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2017-4-19 09:36:50 | 显示全部楼层
1053
        状态转移图的输入项。可能会有类似这样一些状态转移图的描述,数字电路是这样的。
        这个呢,无论在我们的康华光、阎石,国内的清华或者是象华中理工都是这么叙述它的状态转移图。
        描述的内容象移位寄存器、象计数器,甚至象存储器,都可以用这样的逻辑。
        但是都是规模比较小,所处理的复杂性也并不高。
 楼主| lcytms 发表于 2017-4-19 10:08:32 | 显示全部楼层
1054
        国外的课程也是如此。
        大致是这样的描述。
        但是引入EDA描述现实的处理的逻辑,要比这个复杂得多。
        因此象现代的这种EDA,在EDA里面的状态转移图,要改进,得到了强化的处理。
        也就是说,我们有时候是描述这个圈,表明到了一个状态。
        而这个线段呢,表示状态的转移,状态转移的时候发生什么?
        所以说,有的时候设计者是站在状态的角度上考虑问题,到了一个状态做什么事情。
        另外一种想法呢,是站在转移的角度上考虑问题,发生转移我们该做什么?
        在数字电路里面,我们做的这个分式,通常把分子的部分作为输入和条件,分母的部分作为驱动。
        是这样的。
 楼主| lcytms 发表于 2017-4-19 10:13:11 | 显示全部楼层
1055
        每一个设计者都需要声明,我的分母的第一个逗号表明是什么?
        表明是A,表明是B,表明是C,表明是D。
        你只要看这个状态转移图就知道。
        引入EDA以后,这些都做了强制性的约束。当描述节点的时候,描述一个状态的时候,我们称之为这是一个节点。
        我们把状态称之为一个节点。
        这是Node。
        转移称之为edge。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| lcytms 发表于 2017-4-19 10:28:15 | 显示全部楼层
1056
        那么对节点和转移的描述,这个呢,是在设计时候的规划,仍然沿用数字电路的方式,沿用一个分式。
        它是对节点的描述。
        我们特别强调,是基于节点的描述。
        Node based description,NBD,首字母缩写。
        就是基于节点的描述。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|集成电路技术分享 ( 京ICP备20003123号-1 )

GMT+8, 2024-5-10 09:04 , Processed in 0.077148 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表