Μετάβαση στο περιεχόμενο

Λογική Σχεδίαση — Ιούνιος 2026 (Ομάδα Α)

Μεταγραφή από τη φωτογραφία IMG_2577.jpg της εξέτασης Ιουνίου 2026, Ομάδα Α.

IMG_2577.jpg

UNIVERSITY OF PATRAS — ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 25/6/2026 — Διάρκεια: 2hrs Εξέταση μαθήματος: «Λογική Σχεδίαση» Εξάμηνο: Εαρινό, ακαδ. έτος 2025-26 Ομάδα Α

Επώνυμο Όνομα ΑΜ Υπογραφή

Θέματα 1. Σε ένα κύκλωμα 3 εισόδων (x,y,z) και δύο εξόδων (f1, f2) παίρνουμε το διπλανό διάγραμμα χρονισμού. i. Να σχεδιαστεί το ψηφιακό κύκλωμα (10 μονάδες) ii. Να σχεδιαστεί το ψηφιακό κύκλωμα μόνο με πύλες NOR2 (5 μονάδες) iii. Να προσδιοριστεί η καθυστέρηση διάδοσης για τη μετάβαση (xyz): 011→001 αν \(t_{pLH, NOR}=2.6\text{ns}\) και \(t_{pHL, NOR}=2.1\text{ns}\) για την περίπτωση ii. (5 μονάδες) iv. Να σχεδιαστεί το ψηφιακό κύκλωμα με MUX 2→1 (χωρίς είσοδο Enable) και λογικές πύλες NAND2 (5 μονάδες) Σε κάθε περίπτωση να χρησιμοποιηθεί ο ελάχιστος αριθμός πυλών

[Σχήμα: Διάγραμμα χρονισμού με κυματομορφές x, y, z, f1, f2]

  1. Να υλοποιηθεί η συνάρτηση F(x,y,z,w)=A-k-2m με χρήση DEMUX 4→16 και πύλες OR, όπου A είναι προσημασμένος αριθμός δύο δυαδικών ψηφίων (A=\(a_1 a_0\)) και k, m μη προσημασμένοι δυαδικοί 1bit. Η αναπαράσταση του F να γίνει με «συμπλήρωμα ως προς 2» (25 μονάδες)

  2. Να σχεδιαστεί σύγχρονος μετρητής με JK FFs θετικής ακμοπυροδότησης που να μπορεί να μετράει είτε σε αύξουσα (1→2→3→4→5→1...) είτε σε φθίνουσα σειρά (5→4→3→2→1→5...) ανάλογα με την τιμή ενός σήματος S. Να ελεγχθεί αν ο μετρητής επιτυγχάνει αυτόματη διόρθωση και να δοθεί το διάγραμμα καταστάσεων του (25 μονάδες)

Πίνακας αληθείας JK FF | J | K | \(Q_t\) | \(Q_{t+1}\) | |---|---|---|---| | 0 | 0 | \(Q_t\) | \(Q_t\) | | 0 | 1 | X | 0 | | 1 | 0 | X | 1 | | 1 | 1 | X | \(Q_t'\) |

  1. Στο διπλανό σχήμα δίνεται το διάγραμμα μιας μηχανής πεπερασμένων καταστάσεων. Ζητούνται: i. Να δοθεί το ακολουθιακό κύκλωμα με D FFs σύμφωνα με το μοντέλο Mealy (20 μονάδες) ii. Να ελεγχθεί η συμπεριφορά του FSM όταν βρεθεί στην κατάσταση 000 (5 μονάδες)

Πίνακας αληθείας D FF | D | \(Q_{t+1}\) | |---|---| | 0 | 0 | | 1 | 1 |

[Σχήμα: Διάγραμμα καταστάσεων Mealy με 5 καταστάσεις: 001, 011, 010, 101, 100]

Καλή επιτυχία (τα θέματα επιστρέφονται)

Επιπλέον πηγές χωρίς μεταγραφή εδώ (λύσεις → 2026-06-a.solutions.md, ή διπλότυπες φωτογραφίες της ίδιας σελίδας): IMG_2578.jpg, PXL_20260625_0704126732.jpg

Λύσεις (⚪ AI, μη επαληθευμένο)

Κατάσταση: ⚪ AI, μη επαληθευμένο Πηγή: λύσεις AI (antigravity-gemini, gemini-3.7-flash, sonnet), ανεξάρτητη επανάληψη και αντιπαραβολή· καμία δεν έχει ελεγχθεί από άνθρωπο

Προσοχή

Λύση από AI — ελέγξτε την· δεν έχει επαληθευτεί από άνθρωπο. Η ένδειξη «δύο λύσεις συμφωνούν» δεν σημαίνει ότι η απάντηση είναι σωστή.

AI λύσεις — 2026-06-a

Οι λύσεις γράφτηκαν από μοντέλα AI και δεν έχουν ελεγχθεί από άνθρωπο. Η αρίθμηση ακολουθεί το αρχείο θεμάτων.

Θέμα 1

Αξιοπιστία: λύθηκε με βάση τις φωτογραφίες του θέματος· μία λύση AI

Στις φωτογραφίες IMG_2577.jpg και IMG_2578.jpg το διάγραμμα χρονισμού είναι πλήρες και διαυγές. Περιλαμβάνει 8 διαδοχικές χρονικές περιόδους (\(t = 0, 1, 2, 3, 4, 5, 6, 7\)) που αντιστοιχούν στους 8 δυαδικούς συνδυασμούς των εισόδων \((x, y, z)\) από \(000_2\) έως \(111_2\): - \(t = 0: (x,y,z) = (0,0,0) \implies f_1 = 0, \; f_2 = 1\) - \(t = 1: (x,y,z) = (0,0,1) \implies f_1 = 1, \; f_2 = 1\) - \(t = 2: (x,y,z) = (0,1,0) \implies f_1 = 0, \; f_2 = 1\) - \(t = 3: (x,y,z) = (0,1,1) \implies f_1 = 1, \; f_2 = 1\) - \(t = 4: (x,y,z) = (1,0,0) \implies f_1 = 0, \; f_2 = 0\) - \(t = 5: (x,y,z) = (1,0,1) \implies f_1 = 1, \; f_2 = 0\) - \(t = 6: (x,y,z) = (1,1,0) \implies f_1 = 1, \; f_2 = 0\) - \(t = 7: (x,y,z) = (1,1,1) \implies f_1 = 1, \; f_2 = 0\)

Από τον πίνακα αληθείας προκύπτει άμεσα: - Για την \(f_2\): Είναι \(1\) για \(x=0\) και \(0\) για \(x=1\), ανεξάρτητα από τα \(y, z\). Επομένως: $\(f_2(x, y, z) = x'\)$ - Για την \(f_1\): Έχει ελαχιστόρους \(\sum m(1, 3, 5, 6, 7)\). Με απλοποίηση μέσω Karnaugh: - Η ομάδα των \(m(1, 3, 5, 7)\) δίνει τον όρο \(z\). - Η ομάδα των \(m(6, 7)\) δίνει τον όρο \(xy\). Επομένως: $\(f_1(x, y, z) = z + xy\)$


i. Σχεδίαση ψηφιακού κυκλώματος (ελάχιστος αριθμός πυλών)

  • Για την \(f_1\): Μία πύλη AND 2 εισόδων με εισόδους \(x, y\) που παράγει το \(xy\), και μία πύλη OR 2 εισόδων με εισόδους \(z\) και \(xy\) που παράγει την έξοδο \(f_1 = z + xy\) (σύνολο 2 πύλες).
  • Για την \(f_2\): Ένας αντιστροφέας (NOT) με είσοδο \(x\) που παράγει την έξοδο \(f_2 = x'\) (1 πύλη).
  • Συνολικά: 3 πύλες (1 AND, 1 OR, 1 NOT).

ii. Σχεδίαση ψηφιακού κυκλώματος μόνο με πύλες NOR2

Χρησιμοποιούμε μόνο πύλες NOR 2 εισόδων (όπου \(\text{NOR}(a, b) = (a + b)'\) και \(\text{NOR}(a, a) = a'\)): 1. Παραγωγή \(f_2 = x'\): - Πύλη \(N_1\): \(\text{NOR}(x, x) = x' = f_2\) (1 πύλη NOR2). 2. Παραγωγή \(f_1 = z + xy\) σε μορφή NOR (POS / dual De Morgan): - Έχουμε \(f_1 = z + xy = (z + x)(z + y)\). - Άρα \(f_1' = (z + x)' + (z + y)'\). - Επομένως \(f_1 = (f_1')' = \overline{(z + x)' + (z + y)'} = \text{NOR}\Big(\text{NOR}(z, x), \; \text{NOR}(z, y)\Big)\). - Υλοποίηση: - Πύλη \(N_2\): \(\text{NOR}(z, x) = (z + x)'\) - Πύλη \(N_3\): \(\text{NOR}(z, y) = (z + y)'\) - Πύλη \(N_4\): \(\text{NOR}(N_2, N_3) = \overline{(z + x)' + (z + y)'} = (z + x)(z + y) = z + xy = f_1\) - Συνολικά απαιτούνται 4 πύλες NOR 2 εισόδων (1 για την \(f_2\) και 3 για την \(f_1\)).


iii. Καθυστέρηση διάδοσης για τη μετάβαση \((xyz): 011 \to 001\) στο κύκλωμα NOR2

Δίνονται: \(t_{pLH, \text{NOR}} = 2.6\,\text{ns}\) και \(t_{pHL, \text{NOR}} = 2.1\,\text{ns}\). Στη μετάβαση \((x, y, z): 011 \to 001\), αλλάζει μόνο η είσοδος \(y\) από \(1 \to 0\), ενώ \(x=0\) και \(z=1\) παραμένουν σταθερά: - Για την έξοδο \(f_2\): Εξαρτάται αποκλειστικά από το \(x\). Εφόσον \(x\) σταθερό στο 0, η \(f_2\) δεν αλλάζει κατάσταση και δεν υφίσταται μετάβαση. - Για τις πύλες της \(f_1\): - Η πύλη \(N_2 = \text{NOR}(z, x) = \text{NOR}(1, 0) = 0\) (σταθερή στο 0). - Η πύλη \(N_3 = \text{NOR}(z, y)\): - Πριν τη μετάβαση (\(y=1\)): \(\text{NOR}(1, 1) = 0\). - Μετά τη μετάβαση (\(y=0\)): \(\text{NOR}(1, 0) = 0\) (αφού \(z=1\), η έξοδος παραμένει 0). - Επομένως, και οι δύο είσοδοι της \(N_4\) παραμένουν σταθερές στο 0, και η έξοδος \(f_1 = \text{NOR}(0, 0) = 1\) δεν μεταβάλλεται. - Εάν εξεταστεί η διαδρομή διάδοσης από το \(y\) μέσω της πύλης \(N_3\): η είσοδος \(y\) μεταβαίνει από \(1 \to 0\), αλλά επειδή \(z=1\), η έξοδος της πύλης \(N_3\) παραμένει καθηλωμένη στο 0. - Επομένως, δεν προκαλείται καμία μετάβαση στις εξόδους του κυκλώματος: η συνολική καθυστέρηση μετάβασης είναι \(0\,\text{ns}\) (οι έξοδοι \(f_1, f_2\) δεν αλλάζουν τιμή).


iv. Σχεδίαση με έναν MUX 2 \(\to\) 1 (χωρίς Enable) και λογικές πύλες NAND2

  • Χρησιμοποιούμε έναν πολυπλέκτη 2 \(\to\) 1 με γραμμή επιλογής \(S = x\):
  • Όταν \(x = 0\): \(f_1 = z\). Συνδέουμε την είσοδο δεδομένων \(D_0 = z\).
  • Όταν \(x = 1\): \(f_1 = z + y\).
    • Υλοποιούμε το \(z + y\) με πύλες NAND2: \(z + y = (z' \cdot y')' = \text{NAND}(z', y')\).
    • Παράγουμε \(z' = \text{NAND}(z, z)\) (1 πύλη NAND2) και \(y' = \text{NAND}(y, y)\) (1 πύλη NAND2).
    • Η πύλη \(NAND(z', y')\) δίνει το \(z + y\), το οποίο συνδέεται στην είσοδο \(D_1\).
    • Η έξοδος του MUX παράγει την \(f_1 = x' D_0 + x D_1 = x' z + x(z + y) = z + xy\).
  • Για την \(f_2 = x'\):
  • Παράγεται με 1 πύλη NAND2 ως αντιστροφέας: \(f_2 = \text{NAND}(x, x) = x'\).
  • Συνολικά: 1 MUX 2 \(\to\) 1 και 4 πύλες NAND2.

Θέμα 2

Αξιοπιστία: δύο ανεξάρτητες λύσεις συμφωνούν · εμπιστοσύνη λύτη: μέτρια

Παραδοχή (η εκφώνηση δεν το λέει ρητά): \(x=a_1,\ y=a_0,\ z=k,\ w=m\).

\(A=a_1a_0\) σε συμπλήρωμα ως προς 2: \(00=0,\ 01=1,\ 10=-2,\ 11=-1\). Το \(F=A-k-2m\) παίρνει τιμές από \(-5\) (\(A=-2,k=1,m=1\)) έως \(1\), άρα χρειάζονται 4 bit (\(F_3F_2F_1F_0\), συμπλήρωμα ως προς 2).

Ο DEMUX 4→16 χρησιμοποιείται ως αποκωδικοποιητής: με είσοδο δεδομένων 1 και επιλογή \((x,y,z,w)\) ενεργοποιείται η γραμμή \(n=8x+4y+2z+w\).

n A k m F \(F_3F_2F_1F_0\)
0 0 0 0 0 0000
1 0 0 1 −2 1110
2 0 1 0 −1 1111
3 0 1 1 −3 1101
4 1 0 0 1 0001
5 1 0 1 −1 1111
6 1 1 0 0 0000
7 1 1 1 −2 1110
8 −2 0 0 −2 1110
9 −2 0 1 −4 1100
10 −2 1 0 −3 1101
11 −2 1 1 −5 1011
12 −1 0 0 −1 1111
13 −1 0 1 −3 1101
14 −1 1 0 −2 1110
15 −1 1 1 −4 1100

Κάθε έξοδος είναι OR των γραμμών του DEMUX όπου το bit είναι 1 (ο πίνακας και τα σύνολα υπολογίστηκαν με πρόγραμμα): - \(F_0 = \mathrm{OR}(y_2,y_3,y_4,y_5,y_{10},y_{11},y_{12},y_{13})\) - \(F_1 = \mathrm{OR}(y_1,y_2,y_5,y_7,y_8,y_{11},y_{12},y_{14})\) - \(F_2 = \mathrm{OR}(y_1,y_2,y_3,y_5,y_7,y_8,y_9,y_{10},y_{12},y_{13},y_{14},y_{15})\) - \(F_3 = \mathrm{OR}\) όλων των γραμμών εκτός των \(y_0,y_4,y_6\) (εκεί \(F\ge0\) ⇒ \(F_3=0\))· ισοδύναμα \(F_3=\overline{y_0+y_4+y_6}\).

Θέμα 3

Αξιοπιστία: δύο ανεξάρτητες λύσεις συμφωνούν · εμπιστοσύνη λύτη: μέτρια

Παραδοχές: φυσική δυαδική κωδικοποίηση \(Q_2Q_1Q_0\) = ο αριθμός της κατάστασης· \(S=0\) ⇒ αύξουσα, \(S=1\) ⇒ φθίνουσα. Καταστάσεις 0, 6, 7 δεν χρησιμοποιούνται ⇒ οι εξισώσεις γράφονται με αδιάφορους (X) εκεί.

Πίνακας διέγερσης JK: \(0\to0\): \(J=0,K=X\) · \(0\to1\): \(J=1,K=X\) · \(1\to0\): \(J=X,K=1\) · \(1\to1\): \(J=X,K=0\).

Ελαχιστοποίηση (με πρόγραμμα Quine–McCluskey): $\(J_2=Q_1Q_0S'+Q_1'S,\quad K_2=Q_0'S+Q_0S'=Q_0\oplus S\)$ $\(J_1=Q_0'S+Q_2'S',\quad K_1=Q_0\oplus S\)$ $\(J_0=1,\quad K_0=Q_1+Q_2S+Q_2'S'\)$

Έλεγχος με προσομοίωση των εξισώσεων: - Κύκλος \(S=0\): 1→2→3→4→5→1. - Κύκλος \(S=1\): 5→4→3→2→1→5. - Μη χρησιμοποιούμενες καταστάσεις: για \(S=0\): \(0\to3\), \(6\to7\to0\to3\). Για \(S=1\): \(0\to7\to6\to1\), \(7\to6\). Σε όλες τις περιπτώσεις μπαίνουμε σε έγκυρη κατάσταση ⇒ ο μετρητής επιτυγχάνει αυτόματη διόρθωση (για την ειδική επιλογή των X που προέκυψε από την ελαχιστοποίηση).

Διάγραμμα καταστάσεων: οι δύο κύκλοι παραπάνω (πάνω: \(S=0\), κάτω: \(S=1\)) συν τις διαδρομές διόρθωσης \(0\to3\), \(7\to0\), \(6\to7\) (\(S=0\)) και \(0\to7\), \(7\to6\), \(6\to1\) (\(S=1\)).

Θέμα 4

Αξιοπιστία: λύθηκε με βάση τις φωτογραφίες του θέματος· μία λύση AI

Στην εικόνα IMG_2578.jpg (και PXL_20260625_0704126732.jpg) το διάγραμμα καταστάσεων της μηχανής Mealy διακρίνεται αναλυτικά: - Καταστάσεις (5): \(001, 010, 011, 100, 101\). - Μη χρησιμοποιούμενες καταστάσεις (3): \(000, 110, 111\). - Κωδικοποίηση καταστάσεων: \(Q_2 Q_1 Q_0\). Είσοδος: \(x\). Έξοδος: \(Y\) (ετικέτα ακμής \(x/Y\)). - Μεταβάσεις και έξοδοι: - Κατάσταση \(001\): - Για \(x=0\): μετάβαση στην \(001\), έξοδος \(Y = 0\) (βρόχος \(0/0\)) - Για \(x=1\): μετάβαση στην \(100\), έξοδος \(Y = 1\) (\(1/1\)) - Κατάσταση \(100\): - Για \(x=0\): μετάβαση στην \(010\), έξοδος \(Y = 0\) (\(0/0\)) - Για \(x=1\): μετάβαση στην \(011\), έξοδος \(Y = 0\) (\(1/0\)) - Κατάσταση \(010\): - Για \(x=0\): μετάβαση στην \(010\), έξοδος \(Y = 0\) (βρόχος \(0/0\)) - Για \(x=1\): μετάβαση στην \(101\), έξοδος \(Y = 1\) (\(1/1\)) - Κατάσταση \(101\): - Για \(x=0\): μετάβαση στην \(011\), έξοδος \(Y = 1\) (\(0/1\)) - Για \(x=1\): μετάβαση στην \(100\), έξοδος \(Y = 1\) (\(1/1\)) - Κατάσταση \(011\): - Για \(x=1\): μετάβαση στην \(001\), έξοδος \(Y = 0\) (\(1/0\)) - Για \(x=0\): μετάβαση στην \(010\), έξοδος \(Y = 1\) (\(0/1\) ή \(1/1\) στο διάγραμμα ως αναγνώριση εισόδου \(x=0\) με έξοδο 1 προς την \(010\)).


i. Ακολουθιακό κύκλωμα με D Flip-Flops (Μοντέλο Mealy)

Πίνακας διεγέρσεων και εξόδου (\(D_2 = Q_2^+, D_1 = Q_1^+, D_0 = Q_0^+\)):

Παρούσα Κατάσταση (\(Q_2 Q_1 Q_0\)) Είσοδος \(x\) Επόμενη Κατάσταση (\(D_2 D_1 D_0\)) Έξοδος \(Y\)
001 0 001 0
001 1 100 1
010 0 010 0
010 1 101 1
011 0 010 1
011 1 001 0
100 0 010 0
100 1 011 0
101 0 011 1
101 1 100 1
000, 110, 111 0 / 1 \(d\,d\,d\) \(d\)

Με απλοποίηση στους χάρτες Karnaugh 4 μεταβλητών (\(Q_2, Q_1, Q_0, x\)) και αξιοποίηση των αδιάφορων καταστάσεων (\(000, 110, 111\)): - Εξίσωση \(D_2\): $\(D_2 = (Q_1 \oplus Q_0) \cdot x\)$ - Εξίσωση \(D_1\): $\(D_1 = (Q_2 + Q_1) \cdot x' + Q_2 \cdot Q_0'\)$ - Εξίσωση \(D_0\): $\(D_0 = Q_1' Q_0 x' + Q_1 Q_0' x + Q_2 Q_0' x + Q_1 Q_0 x'\)$ - Εξίσωση Εξόδου \(Y\): $\(Y = (Q_1 \oplus Q_0) \cdot x + Q_0 \cdot x' = D_2 + Q_0 \cdot x'\)$

Το κύκλωμα υλοποιείται με 3 θετικά ακμοπυροδότη D Flip-Flops (\(FF_2, FF_1, FF_0\)) συνδεδεμένα στο κοινό σήμα ρολογιού \(CLK\), με τις παραπάνω συνδυαστικές συναρτήσεις στις εισόδους \(D_2, D_1, D_0\) και στην έξοδο \(Y\).


ii. Έλεγχος συμπεριφοράς FSM στην κατάσταση 000

Εξετάζουμε αν η κατάσταση \(000\) οδηγεί αυτόματα σε μία από τις έγκυρες καταστάσεις του συστήματος (αυτοδιόρθωση / self-correction): - Αν οι αδιάφοροι όροι της κατάστασης \(000\) αντιστοιχηθούν στις παραπάνω απλοποιημένες εξισώσεις: - Για \(Q_2 Q_1 Q_0 = 000\) και είσοδο \(x=0\): - \(D_2 = (0 \oplus 0) \cdot 0 = 0\) - \(D_1 = (0 + 0) \cdot 1 + 0 \cdot 1 = 0\) - \(D_0 = 0\) - Άρα η μηχανή παραμένει στο \(000\) αν \(D_0=0\). - Για να διασφαλιστεί αυτόματη διόρθωση (ώστε αν η μηχανή βρεθεί λόγω θορύβου ή εκκίνησης στην κατάσταση \(000\) να μην εγκλωβιστεί σε μη έγκυρη κατάσταση): Ορίζουμε ρητά τη μετάβαση από την \(000\): - Με \(x=0 \implies\) μετάβαση στην αρχική κατάσταση \(001\) (\(D_0 = 1, D_1=0, D_2=0\)). - Με \(x=1 \implies\) μετάβαση στην \(001\) ή \(100\). Έτσι, εντός ενός κύκλου ρολογιού, το κύκλωμα εισέρχεται πλήρως στον κύριο βρόχο των έγκυρων καταστάσεων.

✔ Επιβεβαίωσε · ✖ Βρήκα λάθος


✖ Βρήκα λάθος στη μεταγραφή