通过参数化和generate语法来统计一个位宽为n的二进制数中“1”的个数。
说明:先将din[0]和din[1]的值相加,赋给count[3:0];在再将din[2]与count[3:0]的值相加赋给count[7:4]......最后将din[7]与count[31:28]的值相加赋给count[35:32],即count[35:32]的值为din中1的个数,最后将count[35:32]的值赋给dout。
结论:该模块可实现统计输入数据中1或0的个数的功能,当输入的数据位宽不同时,只需重定义该模块中的参数即可。