Dr.Fuzzy Δημοσ. 1 Ιουνίου 2011 Δημοσ. 1 Ιουνίου 2011 Το 1 ήταν ένα πρόβλημα που πλέον διορθώθηκε και τώρα πλέον μου δίνει θετικό slack(αν και δεν είμαι οτι θέλω θετικό...Οπως δεν είμαι σίγουρος και για το αρνητικό :lol: ) Aυτό που με προβληματίζει ειναι το data arrival time που μου δίνει 0.Γτ το 0.75 είναι αυτο που έχω δώσει εγώ με το set_max_delay to[all_outputs].Το set_false_path δεν είδα να κάνει και καμία διαφορά. Το πρόβλημα πλεόν νομίζω είναι πως να δώσω τιμές στα si,τα οποία είναι 5bit,δοκίμασα με set_drive αλλά εκει πρεπει να δώσω ή 0 ή 1,που είναι και unstable καταστάσεις. Κάνε ένα post-synthesis simulation να δεις τι γίνεται και αν έχεις timing violations. Τι εννοείς να δώσεις τιμές στα si, αυτό θα το κάνεις στο simulation (εκτός και αν χάνω κάτι).
paranoid_gr Δημοσ. 1 Ιουνίου 2011 Μέλος Δημοσ. 1 Ιουνίου 2011 Τα si ειναι το scan input των flip-flop.Αυτο θέλω να κάνω άλλα όταν δίνω τιμές στα si.Κάνω set_drive $SI 1 to [all_inputs] ενώ στο simulation μου βγάζει οτι πήρανε την τιμή δεν βλέπω κάποια αλληλεπίδραση απο το κύκλωμα.Αυτο ρωτάω.Θέλω ένα τρόπο να παρουν τιμές τα si....
Dr.Fuzzy Δημοσ. 1 Ιουνίου 2011 Δημοσ. 1 Ιουνίου 2011 Τα si ειναι το scan input των flip-flop.Αυτο θέλω να κάνω άλλα όταν δίνω τιμές στα si.Κάνω set_drive $SI 1 to [all_inputs] ενώ στο simulation μου βγάζει οτι πήρανε την τιμή δεν βλέπω κάποια αλληλεπίδραση απο το κύκλωμα.Αυτο ρωτάω.Θέλω ένα τρόπο να παρουν τιμές τα si.... Πρόσεξε, αν κάνεις στην σύνθεση set_drive 1 στα inputs σου, απλά θα τα καρφώσεις στο 1, οπότε πιο το νόημα να είναι είσοδοι (αν θες να είναι πάντα 1). Κάνε ένα RTL simulation να δεις ότι functionally είσαι οκ, και μετά τη σύνθεση ένα post-synthesis simulation προκειμένου να δεις και timing violations αλλά και functionality. Θα πρέπει να φτιάξεις και κάποιο testbench, αν δεν το έχεις κάνει είδη.
paranoid_gr Δημοσ. 2 Ιουνίου 2011 Μέλος Δημοσ. 2 Ιουνίου 2011 Ok το πρόβλημα διορθώθηκε και πλέον τρέχει κανονικά.Ένα πράγμα που δεν μπορώ να καταλάβω είναι ότι όταν το έτρεξα με το περίοδο 6ns το report_timing για να μου βγαλει 1 μονοπάτι με την μεγαλύτερη καθυστέρηση.Και μου υπολογίζει το μονοπάτι με startpoint to q_reg[1] k endpoint to q_reg[0] και μετα με startpoint to q_reg[2] μέχρι out[0] report_timing **************************************** Report : timing -path full -delay max -max_paths 1 Design : lsu_dcache_lfsr Version: D-2010.03-SP3 Date : Wed Jun 1 17:04:19 2011 **************************************** Operating Conditions: Wire Load Model Mode: top Startpoint: lfsr_reg/q_reg[1] (rising edge-triggered flip-flop clocked by clk) Endpoint: lfsr_reg/q_reg[0] (rising edge-triggered flip-flop clocked by clk) Path Group: clk Path Type: max Point Incr Path ----------------------------------------------------------- clock clk (rise edge) 0.00 0.00 clock network delay (ideal) 0.00 0.00 lfsr_reg/q_reg[1]/CP (FD1) 0.00 0.00 r lfsr_reg/q_reg[1]/Q (FD1) 1.53 1.53 r lfsr_reg/q[1] (dff_s_SIZE5) 0.00 1.53 r U20/Z (EO) 1.13 2.65 f U19/Z (ND2) 0.64 3.29 r U21/Z (AO3) 0.62 3.91 f lfsr_reg/din[0] (dff_s_SIZE5) 0.00 3.91 f lfsr_reg/U7/Z (AO2P) 1.06 4.97 r lfsr_reg/U3/Z (IVP) 0.19 5.17 f lfsr_reg/q_reg[0]/D (FD1) 0.00 5.17 f data arrival time 5.17 clock clk (rise edge) 6.00 6.00 clock network delay (ideal) 0.00 6.00 lfsr_reg/q_reg[0]/CP (FD1) 0.00 6.00 r library setup time -0.80 5.20 data required time 5.20 ----------------------------------------------------------- data required time 5.20 data arrival time -5.17 ----------------------------------------------------------- slack (MET) 0.03 Startpoint: lfsr_reg/q_reg[2] (rising edge-triggered flip-flop clocked by clk) Endpoint: out[0] (output port) Path Group: default Path Type: max Point Incr Path ----------------------------------------------------------- lfsr_reg/q_reg[2]/CP (FD1) 0.00 0.00 r lfsr_reg/q_reg[2]/Q (FD1) 1.47 1.47 f lfsr_reg/q[2] (dff_s_SIZE5) 0.00 1.47 f out[0] (out) 0.00 1.47 f data arrival time 1.47 max_delay 1.50 1.50 output external delay 0.00 1.50 data required time 1.50 ----------------------------------------------------------- data required time 1.50 data arrival time -1.47 ----------------------------------------------------------- slack (MET) Eνώ άμα βάλω περίοδο 1,5ns υπολογίζει τα μονοπάτια με startpoint q_reg[1] μεχρι και q_reg[2] και μετά startpoint q_reg[0] μέχρι out[1]. report_timing **************************************** Report : timing -path full -delay max -max_paths 1 Design : lsu_dcache_lfsr Version: D-2010.03-SP3 Date : Wed Jun 1 17:33:16 2011 **************************************** Operating Conditions: Wire Load Model Mode: top Startpoint: lfsr_reg/q_reg[1] (rising edge-triggered flip-flop clocked by clk) Endpoint: lfsr_reg/q_reg[2] (rising edge-triggered flip-flop clocked by clk) Path Group: clk Path Type: max Point Incr Path ----------------------------------------------------------- clock clk (rise edge) 0.00 0.00 clock network delay (ideal) 0.00 0.00 lfsr_reg/q_reg[1]/CP (FD1P) 0.00 0.00 r lfsr_reg/q_reg[1]/Q (FD1P) 1.56 1.56 f lfsr_reg/q[1] (dff_s_SIZE5) 0.00 1.56 f U20/Z2 (B2I) 0.93 2.49 f U35/Z (MUX21LP) 0.53 3.02 r U37/Z (ND2P) 0.25 3.27 f lfsr_reg/din[2] (dff_s_SIZE5) 0.00 3.27 f lfsr_reg/U9/Z (MUX21LP) 0.56 3.83 r lfsr_reg/U10/Z (IVAP) 0.17 4.00 f lfsr_reg/q_reg[2]/D (FD1) 0.00 4.00 f data arrival time 4.00 clock clk (rise edge) 1.50 1.50 clock network delay (ideal) 0.00 1.50 lfsr_reg/q_reg[2]/CP (FD1) 0.00 1.50 r library setup time -0.80 0.70 data required time 0.70 ----------------------------------------------------------- data required time 0.70 data arrival time -4.00 ----------------------------------------------------------- slack (VIOLATED) -3.30 Startpoint: lfsr_reg/q_reg[0] (rising edge-triggered flip-flop clocked by clk) Endpoint: out[1] (output port) Path Group: default Path Type: max Point Incr Path ----------------------------------------------------------- lfsr_reg/q_reg[0]/CP (FD1P) 0.00 0.00 r lfsr_reg/q_reg[0]/Q (FD1P) 1.54 1.54 f lfsr_reg/q[0] (dff_s_SIZE5) 0.00 1.54 f out[1] (out) 0.00 1.54 f data arrival time 1.54 max_delay 1.50 1.50 output external delay 0.00 1.50 data required time 1.50 ----------------------------------------------------------- data required time 1.50 data arrival time -1.54 ----------------------------------------------------------- slack (VIOLATED) -0.04 Aυτο πραγματικά δεν μ φαίνεται λογικό!!!Για ποιο λόγο γίνεται αυτό.Μήπως υποψιάζεσαι κάτι?
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.