lcytms 发表于 2017-3-26 23:17:36

1056       
        同样把这testbench文件粘贴到test_tcl的根目录下面。
          

lcytms 发表于 2017-3-26 23:18:26

1057       
        方法是这样。我们把昨天的设计的ppt打开。
        day3_练习.ppt

lcytms 发表于 2017-3-26 23:20:02

1058       
        顶层我们仍然是这么做。
        添加顶层文件led_driver.v。
   

lcytms 发表于 2017-3-26 23:21:16

1059       
        这是顶层。
        我们要把这段称之为显模的建模改成为隐式建模。
        这是隐式建模。
        现在一般的建模我们称之为显式建模。
       

lcytms 发表于 2017-3-26 23:23:12

1100       
        显式建模就是我们昨天的建模的方式。
        我们也可以把它变成隐模。
        隐模就是implicit module,这种隐模的建模在很多的代码里面都是这么写的。
        就是在一个module的文件里面就写完了完整的一个driver。       
1101       
        可不可以呢?
        当然可以。
        我们今天同样把它注解掉。
        大家可以跟着我一起做。
        把原来结构化的部分先注释掉。
        我们把中间变量dhex改成data,跟我们现在的命名是一致的。
        但data信号的声明呢,我们要看到,如果是结构化的时候呢,它是非行为的输出。
        现在我们写成隐模,它是谁的输出呢?
        它是led_mux的输出。
        显然使用行为来写。

lcytms 发表于 2017-3-26 23:24:37

1102       
        所以说把它改成reg。
        这是中间信号,其它都是端口。
        就是唯一的中间信号。
        只不过这个中间信号是行为的输出了。
        现在我们一段一段地来写。
        首先我们来写counter,我可以到counter里面把它复制过来,打开led_addr.v,把这段隐模复制过来。
       

lcytms 发表于 2017-3-26 23:25:36

1103       
        把sel改成addr。
        跟我们昨天做的是一致的。
       

lcytms 发表于 2017-3-26 23:28:00

1104       
        然后接着写led_mux的隐模。
        打开led_mux.v,把这段隐模复制过来。
          

lcytms 发表于 2017-3-26 23:29:50

1105       
        加上default,data=0,写成安全行为。
       

lcytms 发表于 2017-3-26 23:31:16

1106       
        打开seg_decoder.v,把这段隐模复制过来。
        把dhex改成data。
          
页: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16
查看完整版本: 跟李凡老师学FPGA之D03:使用tcl脚本(数码管)、二进制转BCD(20160425课堂笔记)