פורסם 2012 במאי 313 שנים אני שובר את הראש, מנסה הרבה דברים שונים, ופשוט לא מבין מה הטעות שלי.לצערי אני לא יכול לעשות debug כי ויתרתי על ISE (אני פשוט לא מצליח להבין איך משתמשים בדבר הזה) ואני עכשיו עם Icarus 0.9.5module behavior_ha(b1,b2,sum,carry); input b1,b2; output sum,carry; reg sum_r,carry_r; initial begin carry_r=0; sum_r=0; if (b1==0) if (b2==1) sum_r=1; else if (b1==1) if (b2==0) sum_r=1; else if (b2==1) carry_r=1; $display("behavior ha b1=%b,b2=%b,sum=%b,carry=%b",b1,b2,sum,carry); end assign sum=sum_r; assign carry=carry_r; endmodulemodule behavior_fa(b1,b2,carry_in, sum, carry_out); input b1, b2, carry_in; output sum,carry_out; reg sum,carry_out;// $display("after initial, b1=%b,b2=%b,carry=%b",b1,b2,carry_in); initial begin if (b1==1) if (b2==1) begin if (carry_in==1) sum=1; else sum=0; carry_out=1; end else if (carry_in==1) begin sum=0; carry_out=1; end else begin sum=1; carry_out=0; end else if (b2==1) if (carry_in==1) begin sum=0; carry_out=1; end else begin carry_out=0; sum=1; end else begin if (carry_in==1) sum=1; else sum=0; carry_out=0; end $display("behavior fa b1=%b,b2=%b,carry_in=%b,sum=%b,carry_out=%b",b1,b2,carry_in,sum,carry_out); endendmodulemodule behavior_8_bit_adder(in1, in2, sum); input [7:0] in1; input [7:0] in2; output [7:0] sum; wire [7:1] carry; behavior_ha b1(0,0,sum[0],carry[1]); behavior_fa #15 b2(0,0,carry[1],sum[1],carry[2]); behavior_fa #30 b3(0,0,carry[2],sum[2],carry[3]); behavior_fa #45 b4(1,1,carry[3],sum[3],carry[4]); behavior_fa #60 b5(1,0,carry[4],sum[4],carry[5]); behavior_fa #75 b6(0,0,carry[5],sum[5],carry[6]); behavior_fa #90 b7(0,0,carry[6],sum[6],carry[7]); behavior_fa #105 b8(0,0,carry[7],sum[7],);endmoduleמשום מה זה מדפיס כל הזמן שה- carry_in=zואני פשוט לא מבין למה...שאלות:1. אני צריך בכלל את הדיליי בין ה- instance-ים של החלקים שמרכיבים את המחבר?2. עוד לא הצלחתי להבין -כשאני עושה initial, זה מתבצע לפני מה שמחוץ לבלוקים?בקושי יש לי מושג מה אני עושה, וכל המדריכים שאני מוצא לא עוזרים לי להבין מה הטעות שלי עזרה או המלצה על כלי פשוט שמאפשר דיבאגינג יתקבלו בברכה... תודה!
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.