lcytms 发表于 2018-11-11 21:15:18

0929
        这个你要等done。
        你这个已经发出了清除命令。
        是这个条件有问题。

lcytms 发表于 2018-11-11 21:17:23

0930
        你是这样写的。
        Start为假,或者clear为假。
        有一个是真就在这。
        现在你必须要两者同时为真,怎么可能呢?
        所以这个条件上你有问题。
        我稍微给你修改一下。
        S1上有3个转移,有start的转移,有清除的转移,没有start没有清除。

lcytms 发表于 2018-11-11 21:18:38

0931
        这样写就可以嘛。
        优先start嘛。
        最后else。
        优先权的问题。

lcytms 发表于 2018-11-11 21:21:09

0932
        这样你才能进来嘛。
        进了清除,转到s14。
        否则它永远不会转,永远在s1上,当然就没有。
        一直在s1上。
        条件做错了。
        Tb也要改,这个没有done。
        我先把它关掉,看能不能进清除。

lcytms 发表于 2018-11-11 21:23:50

0933
        Library标签页下重新编译这两个文件。
        编译通过。
        重新运行仿真。
        等到上电结束。
        这就进来了,这就在清了。
        这就对了。
        我再回到testbench。
        再给你搬一下。
        搬应该等done。

lcytms 发表于 2018-11-12 09:24:02

0934
        条件做错了嘛。
        上升沿之后,等到done,#600就可以了。
        做它的搬运。
   

lcytms 发表于 2018-11-12 09:25:33

0935
        Library标签页下重新编译这个tb文件。
        编译通过。
        重新运行仿真。
        先看local_init_done,等上电结束。
        现在还是一条平线。
        好,结束了。
        这个过程是数据清的过程。
        后面是做搬。

lcytms 发表于 2018-11-18 13:29:20

0936
        因为它有数据在里面。
        Dq,是16进制,abcd。
        那么,这个时候,dqs跟它的关系是?
        你现在写的是aaaa,bbbb。
        如果你分开来写,你写abcd,你可以看得更清楚中心对齐的关系。
        现在是同样的字,你看不见了。
        这是写中心。
        块清除都是写嘛。
        然后这边是搬运。
        现在我们看到的这张图,就是非常经典的现代的这种架构,现代的CPU、或者是手机里面的存储器,如果用示波器来看,应该看到的就是这样一个波形。

lcytms 发表于 2018-11-18 13:33:42

0937
        然后搬。
        搬的时候是先读边沿。
        Dqs跟dq是边沿对齐。
        我们是读突发四个字,然后再写突发四个字。
        读边沿,写中心。
        来看一下最后的done的过程。
        这个里面好像还有点问题。
        Done了以后,为什么这边还有动作?
        done了以后就应该停下来了。

lcytms 发表于 2018-11-18 13:40:54

0938
        我的停机的地方稍微长一点。
        #2000吧。
        Library标签页下重新编译这个tb文件。
        编译通过。
        重新运行仿真。
页: 1 2 3 [4] 5 6 7 8 9 10 11 12 13
查看完整版本: 跟李凡老师学FPGA工程D01:《DDR2开发板》基础和原理图(20170513课堂笔记)