如何在用乘法器创建的VHDL中进行阶乘运算

如何在用乘法器创建的VHDL中进行阶乘运算,vhdl,multiplication,factorial,Vhdl,Multiplication,Factorial,我有16位乘法器。我想用位运算创建阶乘函数。 我该怎么做呢?想想阶乘的作用: 从一个数字开始,将该数字乘以自身减1。然后将这个新数字乘以自身减去2。此过程将重复,直到新数字等于1为止。我建议建立一个管道,每个时钟上发生一次乘法。运行总和被存储到一个信号中,该信号在每次乘法时不断变大。继续检查以确保你还没有达到1,如果你达到了,你的阶乘就完成了 另一个注意事项。。。您需要约束此设计。想一想你要发送给这个阶乘代码的最大数量,并为此进行设计。我有最大数量。输入仅为1到8之间的整数。

我有16位乘法器。我想用位运算创建阶乘函数。
我该怎么做呢?

想想阶乘的作用:

从一个数字开始,将该数字乘以自身减1。然后将这个新数字乘以自身减去2。此过程将重复,直到新数字等于1为止。我建议建立一个管道,每个时钟上发生一次乘法。运行总和被存储到一个信号中,该信号在每次乘法时不断变大。继续检查以确保你还没有达到1,如果你达到了,你的阶乘就完成了


另一个注意事项。。。您需要约束此设计。想一想你要发送给这个阶乘代码的最大数量,并为此进行设计。

我有最大数量。输入仅为1到8之间的整数。