lcytms 发表于 2018-3-26 21:44:56

0944
        顶层是ham_encoder。
        输入叫edata,汉明(7,4)码,就是4个比特加载。
        3:0,输入。
        这边输入以后给一个写请求,或者是一个使能,做一个he_en。
        当它为真的时候,就把这个3:0编码出来。
        产生汉明(7,4)码。
        我们这个编码呢,就不是按照绿皮书了,就直接按照汉明的原著了。
        他的论文上就是这么写的。
        输出hc_out,宽度是多少?
        6:0。

lcytms 发表于 2018-3-26 21:46:59

0945
        闭节点。
        我们再做一个汉明的decoder。
        Ham_decoder,解码器。
        输入hc_in,6:0。
        输出ddata,3:0。
        我们仍然改成是写请求和读请求,更简单一些。

lcytms 发表于 2018-3-29 08:53:07

0946
        给出读请求,就把输入的7位的汉明码,6:0,译成信息位的3:0。
        写请求,就把信息位的3:0,编码成汉明(7,4)码。
        我们形成一个层次。
        这是做一个汉明的编解码器,hamming_coder。

lcytms 发表于 2018-3-29 08:53:57

0947
        下面呢,我们就来做这段代码。
        新建工程文件夹hamming_coder。
        打开Quartus。

lcytms 发表于 2018-3-29 08:55:53

0948
        新工程向导。
        选一款器件。
        新建hamming_coder.v文件。

lcytms 发表于 2018-3-30 09:27:13

0949
        编写hamming_coder.v代码。
        开始建模。
        是闭节点,当然有时钟、复位。
        这一段呢,它的验证,我会写ABV。

lcytms 发表于 2018-3-30 09:28:03

0950
        编写hamming_coder.v代码。

lcytms 发表于 2018-3-30 09:28:47

0951
        编写hamming_coder.v代码。
        6:0,汉明码。

大鹏 发表于 2018-3-30 09:28:50

很详细,很值得去学习,谢谢楼主分享,也谢谢李老

lcytms 发表于 2018-4-1 20:59:05

0952
        编写hamming_coder.v代码。
        Ctrl+S、Ctrl+K。
        然后我们就按照黑板上的框架,用攀岩法来写。
        我先写编码器。
        新建hamming_encoder.v文件。
页: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14
查看完整版本: 跟李凡老师学FPGA扩频通信D03:串行通信汉明纠错码(20170...