[問題] 如何設計BCD adder

看板Electronics作者 (阿詠~^^萬歲)時間15年前 (2010/06/03 18:40), 編輯推噓2(204)
留言6則, 4人參與, 最新討論串1/1
今天的實驗課是做BCD adder 老師說要照他的步驟做 1.設計一個4-bit full adder,然後使用四個1-bit full adder組成 2.設計一個1-digit BCD full adder,然後要用4-bit full adder組成 3.設計一個2-digit BCD adder然後要使用1-digit full adder組成 我只做完第一步 2.3就不會做了 因為不知道該如何把4-bit full adder跟1-digit BCD full adder用在一起 想了三個小時也想不出來 以下是我的code module onebit(xi,yi,ci,si,ct); input xi,yi,ci; output si,ct; xor(si,xi,yi,ci); wire w1,w2,w3; and(w1,xi,yi); and(w2,xi,ci); and(w3,yi,ci); or(ct,w1,w2,w3); endmodule module fourbit (SW,co,z3,z2,z1,z0); input [7:0]SW; output co,z3,z2,z1,z0; onebit(SW[0],SW[4],0,z0,o1); onebit(SW[1],SW[5],o1,z1,o2); onebit(SW[2],SW[6],o2,z2,o3); onebit(SW[3],SW[7],o3,z3,co); endmodule 懇請高手幫忙解決2.3兩步該如何做.. 然後使用Verilog只能使用gate level的型式 ---------------------------------------------------------------------------- 剛剛才看到課本有one-digit BCD adder的圖 所以我就把他打成Verilog的形式 module bcd (co,z3,z2,z1,z0,LEDR); input co,z3,z2,z1,z0; output [4:0]LEDR; wire p1,p2,l,x; and(p1,z3,z2); and(p2,z3,z1); or(LEDR[4],co,p1,p2); and(LEDR[0],z0,z0); onebit(0,z2,z1,LEDR[1],l); onebit(l,out,out,LEDR[2],x); xor(LEDR[3],z3,x); endmodule 但是我不知道打下來的結果對不對.. 手上沒有DE2可以測試 而且我也不太會用Quartus II 所以就不知道對不對 希望有人能幫我看結果對不對 拜託.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.130.138.118

06/03 18:57, , 1F
沒同學討論?..
06/03 18:57, 1F

06/03 18:59, , 2F
很多都卡第一步..老師也一直不說怎麼做
06/03 18:59, 2F

06/03 18:59, , 3F
然後有個做完的人他做完馬上就走了..
06/03 18:59, 3F

06/03 19:06, , 4F
06/03 19:06, 4F

06/03 19:22, , 5F
所以上面的code都沒錯嗎?
06/03 19:22, 5F
※ 編輯: skyinmoon86 來自: 220.130.138.118 (06/03 19:38)

06/03 21:30, , 6F
好像是 + 6?
06/03 21:30, 6F
文章代碼(AID): #1C1uQ7EC (Electronics)