在VHDL中我必须在entity
块中指定什么是我的输出长度,但我怎么能事先知道它会是什么?
如果我添加两个9位向量,则输出可以是10位向量,但也可以是9位向量。例如:"100100111" + "001001000" = "101101111"
但是当我为ex:"11110011" + "110001110" = "1010000001"
做时,它可能是一个10位向量。所以我不知道如何处理这些案件。
答案 0 :(得分:1)
如您所说,如果添加两个N位数字,则需要N + 1位来存储(或输出)结果。就是这样。例如:
111111111 + 111111111 = 1111111110
000000000 + 000000000 = 0000000000
所以
100100111 + 001001000 = 0101101111
^
|