doc.tex (2896B)
1 \documentclass{article} 2 \usepackage[utf8]{inputenc} 3 \usepackage[greek,english]{babel} 4 \usepackage{alphabeta} 5 \usepackage{fancyhdr} 6 \usepackage{listings} 7 \usepackage{mathtools} 8 \usepackage{xcolor} 9 \usepackage{biblatex} 10 \usepackage[left=2cm,right=2cm]{geometry} 11 12 \lstset { 13 basicstyle=\ttfamily, 14 columns=fullflexible, 15 breaklines=true, 16 keepspaces=true 17 } 18 19 \title{Σχεδίαση Ψηφιακών Συστημάτων - Εργασία Θεωρίας (Μέρος 3)} 20 \author{Χρήστος Μαργιώλης} 21 \date{Ιούλιος 2020} 22 23 \begin{document} 24 25 \begin{titlepage} 26 \maketitle 27 \end{titlepage} 28 29 \renewcommand{\contentsname}{Περιεχόμενα} 30 \tableofcontents 31 32 \section{Κώδικας και τεκμηρίωση} 33 34 \subsection{\lstinline{alu_ctrl.vhd}} 35 36 Το παρακάτω κύκλωμα υλοποιεί την μονάδα ελέγχου της ALU. Ο τρόπος υλοποιήσης 37 της αρχικτεκτονικής προκύπτει από τους πίνακες λειτουργίας που υπάρχουνε στην 38 εκφώνηση της άσκησης και στις διαφάνειες του μαθήματος. Το κύκλωμα θα μπορούσε 39 να υλοποιηθεί εναλλακτικά χρησιμοποιώντας την δομή \lstinline{with-select} ή την 40 \lstinline{case}. \\ 41 42 \lstinputlisting[language=VHDL]{../alu_ctrl.vhd} 43 \pagebreak 44 45 \subsection{\lstinline{alu_ctrl_tb.vhd}} 46 47 Στο παρακάτω testbench δοκιμάζουμε την μονάδα ελέγχου ALU δίνοντας τις τιμές 48 που υπάρχουνε στην εκφώνηση της άσκησης. \\ 49 50 \lstinputlisting[language=VHDL]{../alu_ctrl_tb.vhd} 51 \pagebreak 52 53 \subsection{\lstinline{alu_ctrl_test_alu.vhd}} 54 55 Το παρακάτω κύκλωμα υλοποιεί ένα «δοκιμαστικό» κύκλωμα για την ALU και την μονάδα 56 ελέγχου της. Το μόνο που χρειάζεται είναι απλώς να δηλώσουμε ως components την ALU 57 που δημιουργήθηκε στο μέρος 1 και το προηγούμενο κύκλωμα, και να τα κάνουμε 58 map στα κατάλληλα πεδία του entity του κυκλώματος. Αυτή τη φορά, η αρχιτεκτονική 59 θα είναι structural. \\ 60 61 \lstinputlisting[language=VHDL]{../alu_ctrl_test_alu.vhd} 62 \pagebreak 63 64 \subsection{\lstinline{alu_ctrl_test_alu_tb.vhd}} 65 66 Testbench για το παραπάνω κύκλωμα. \\ 67 68 \lstinputlisting[language=VHDL]{../alu_ctrl_test_alu_tb.vhd} 69 \pagebreak 70 71 \section{Εκτέλεση} 72 73 \subsection{\lstinline{alu_ctrl_tb}} 74 \includegraphics[width=\textwidth]{res/alu_ctrl.png} 75 76 \subsection{\lstinline{alu_ctrl_test_alu_tb}} 77 \includegraphics[width=\textwidth]{res/alu_ctrl_test_alu.png} 78 79 \end{document}