因為begin到end func的語句是並行執行的,也就是說這些語句是同時執行的,所以模擬肯定是錯的。例如,在妳的第二個仿真波形中,當A = 0,B = 0,CI = 0時,那麽X = 1,Y = X和CI。註意此時的X不是1而是0,所以y=0,s=x xor ci,x=0,所以S = 0,Co。
可能是作者習慣了寫C,但在VHDL中,必須註意語句壹般是並行執行的,除非在進程中。
因此,可以進行以下更正
s & lt= ci xor a xor b;
co & lt= (a和b)或(ci和a)或(ci和b);
即去掉中間變量,使結果只與輸入有關。
上一篇:求壹部歐美科幻犯罪電影 前幾天在電影頻道看到的!只看了10多分鐘!下一篇:如何禁止mui-slider的拖動,只需點擊轉換列表