374 lines
31 KiB
TeX
374 lines
31 KiB
TeX
\relax
|
|
\providecommand{\transparent@use}[1]{}
|
|
\providecommand\hyper@newdestlabel[2]{}
|
|
\providecommand\zref@newlabel[2]{}
|
|
\bbl@beforestart
|
|
\catcode `"\active
|
|
\abx@aux@refcontext{none/global//global/global}
|
|
\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument}
|
|
\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined
|
|
\global\let\oldcontentsline\contentsline
|
|
\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}}
|
|
\global\let\oldnewlabel\newlabel
|
|
\gdef\newlabel#1#2{\newlabelxx{#1}#2}
|
|
\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}}
|
|
\AtEndDocument{\ifx\hyper@anchor\@undefined
|
|
\let\contentsline\oldcontentsline
|
|
\let\newlabel\oldnewlabel
|
|
\fi}
|
|
\fi}
|
|
\global\let\hyper@last\relax
|
|
\gdef\HyperFirstAtBeginDocument#1{#1}
|
|
\providecommand\HyField@AuxAddToFields[1]{}
|
|
\providecommand\HyField@AuxAddToCoFields[2]{}
|
|
\babel@aux{english}{}
|
|
\@writefile{toc}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
|
|
\@writefile{lof}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
|
|
\@writefile{lot}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
|
|
\babel@aux{ngerman}{}
|
|
\babel@aux{ngerman}{}
|
|
\@writefile{toc}{\contentsline {section}{Gendererklärung}{i}{Doc-Start}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{Kurzfassung/Abstract}{ii}{Doc-Start}\protected@file@percent }
|
|
\babel@aux{ngerman}{}
|
|
\babel@aux{ngerman}{}
|
|
\@writefile{toc}{\contentsline {section}{Result}{iii}{Doc-Start}\protected@file@percent }
|
|
\babel@aux{english}{}
|
|
\@writefile{toc}{\contentsline {section}{\numberline {1}Task description}{1}{section.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {1.1}Hardware}{1}{subsection.1.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {2}Hardware peripherials}{2}{section.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Parallel bus}{2}{subsection.2.1}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {i}{\ignorespaces Atari PBI Pinout;Source: \url {https://www.atarimagazines.com}\relax }}{2}{figure.caption.1}\protected@file@percent }
|
|
\providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}}
|
|
\newlabel{fig:atari_pbi}{{i}{2}{Atari PBI Pinout;Source: \url {https://www.atarimagazines.com}\relax }{figure.caption.1}{}}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.1.1}Address Bus}{3}{subsubsection.2.1.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Data Bus}{3}{subsection.2.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Control Bus}{3}{subsection.2.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.1}Master Reset}{3}{subsubsection.2.3.1}\protected@file@percent }
|
|
\abx@aux@cite{ad2}
|
|
\abx@aux@segm{0}{0}{ad2}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.2}Write Not}{4}{subsubsection.2.3.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.3}Read Not}{4}{subsubsection.2.3.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.4}Module Select 1 and 2 Not}{4}{subsubsection.2.3.4}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.4}Testing and Measurement}{4}{subsection.2.4}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.4.1}Measurements}{4}{subsubsection.2.4.1}\protected@file@percent }
|
|
\abx@aux@cite{atmega2560}
|
|
\abx@aux@segm{0}{0}{atmega2560}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {ii}{\ignorespaces Digilent Analog Discovery 2;Source: \url {https://www.sparkfun.com/}\relax }}{5}{figure.caption.2}\protected@file@percent }
|
|
\newlabel{fig:ad2}{{ii}{5}{Digilent Analog Discovery 2;Source: \url {https://www.sparkfun.com/}\relax }{figure.caption.2}{}}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.4.2}Testing}{5}{subsubsection.2.4.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.5}Backplane}{5}{subsection.2.5}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {iii}{\ignorespaces Layout of the DIN41612 Connectors on the Backplane\relax }}{6}{figure.caption.3}\protected@file@percent }
|
|
\newlabel{fig:schem_back_conn}{{iii}{6}{Layout of the DIN41612 Connectors on the Backplane\relax }{figure.caption.3}{}}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.1}Termination resistors}{6}{subsubsection.2.5.1}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {iv}{\ignorespaces Measurement at around 1MHz bus clock on MS1\relax }}{7}{figure.caption.4}\protected@file@percent }
|
|
\newlabel{fig:reflex}{{iv}{7}{Measurement at around 1MHz bus clock on MS1\relax }{figure.caption.4}{}}
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.6}Case}{7}{subsection.2.6}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {v}{\ignorespaces The case with installed backplane\relax }}{8}{figure.caption.5}\protected@file@percent }
|
|
\newlabel{fig:case}{{v}{8}{The case with installed backplane\relax }{figure.caption.5}{}}
|
|
\abx@aux@cite{pc16550}
|
|
\abx@aux@segm{0}{0}{pc16550}
|
|
\abx@aux@cite{pc16550}
|
|
\abx@aux@segm{0}{0}{pc16550}
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.7}Serial Console}{9}{subsection.2.7}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.1}16550 UART}{9}{subsubsection.2.7.1}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {vi}{\ignorespaces PC-16550D Pinout\cite {pc16550}\relax }}{9}{figure.caption.6}\protected@file@percent }
|
|
\newlabel{fig:16550_pinout}{{vi}{9}{PC-16550D Pinout\cite {pc16550}\relax }{figure.caption.6}{}}
|
|
\abx@aux@cite{max232}
|
|
\abx@aux@segm{0}{0}{max232}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.2}MAX-232}{10}{subsubsection.2.7.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.3}Schematics}{10}{subsubsection.2.7.3}\protected@file@percent }
|
|
\abx@aux@cite{pc16550}
|
|
\abx@aux@segm{0}{0}{pc16550}
|
|
\abx@aux@cite{pc16550}
|
|
\abx@aux@segm{0}{0}{pc16550}
|
|
\abx@aux@cite{max232}
|
|
\abx@aux@segm{0}{0}{max232}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {vii}{\ignorespaces The schematic of the UART Module\relax }}{11}{figure.caption.7}\protected@file@percent }
|
|
\newlabel{fig:schem_uart}{{vii}{11}{The schematic of the UART Module\relax }{figure.caption.7}{}}
|
|
\@writefile{toc}{\contentsline {paragraph}{Element Description}{12}{figure.caption.7}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {viii}{\ignorespaces Measurement of the 1.8432 MHz Output on J1\relax }}{12}{figure.caption.8}\protected@file@percent }
|
|
\newlabel{fig:uartquartz}{{viii}{12}{Measurement of the 1.8432 MHz Output on J1\relax }{figure.caption.8}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {ix}{\ignorespaces Measurement of a character transmission before and after MAX-232\relax }}{13}{figure.caption.9}\protected@file@percent }
|
|
\newlabel{fig:uart232}{{ix}{13}{Measurement of a character transmission before and after MAX-232\relax }{figure.caption.9}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {x}{\ignorespaces Pinout of the RJ-45 Plug; Src: \url {https://www.wti.com/}\relax }}{13}{figure.caption.10}\protected@file@percent }
|
|
\newlabel{fig:rs232rj45}{{x}{13}{Pinout of the RJ-45 Plug; Src: \url {https://www.wti.com/}\relax }{figure.caption.10}{}}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.4}Demonstration Software}{14}{subsubsection.2.7.4}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xi}{\ignorespaces Measurement of a character echo\relax }}{14}{figure.caption.11}\protected@file@percent }
|
|
\newlabel{fig:232_echo}{{xi}{14}{Measurement of a character echo\relax }{figure.caption.11}{}}
|
|
\@writefile{toc}{\contentsline {paragraph}{Transmit code}{14}{figure.caption.11}\protected@file@percent }
|
|
\newlabel{lst:16550-general}{{I}{14}{Read and write routines for the 16550 UART}{lstlisting.1}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {I}Read and write routines for the 16550 UART}{14}{lstlisting.1}\protected@file@percent }
|
|
\abx@aux@cite{pc16550}
|
|
\abx@aux@segm{0}{0}{pc16550}
|
|
\newlabel{lst:16550-transmit}{{II}{16}{16550 INIT routines and single char transmission}{lstlisting.2}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {II}16550 INIT routines and single char transmission}{16}{lstlisting.2}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xii}{\ignorespaces Transmission of character A via the 16550 UART\relax }}{17}{figure.caption.12}\protected@file@percent }
|
|
\newlabel{fig:16550A}{{xii}{17}{Transmission of character A via the 16550 UART\relax }{figure.caption.12}{}}
|
|
\@writefile{toc}{\contentsline {paragraph}{Echo code}{17}{figure.caption.12}\protected@file@percent }
|
|
\newlabel{lst:16550-echo}{{III}{18}{16550 character echo}{lstlisting.3}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {III}16550 character echo}{18}{lstlisting.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {2.8}Audio Digital-Analog-Converter}{18}{subsection.2.8}\protected@file@percent }
|
|
\abx@aux@cite{tlc7528}
|
|
\abx@aux@segm{0}{0}{tlc7528}
|
|
\abx@aux@cite{tlc7528}
|
|
\abx@aux@segm{0}{0}{tlc7528}
|
|
\abx@aux@cite{tlc7528}
|
|
\abx@aux@segm{0}{0}{tlc7528}
|
|
\abx@aux@cite{tlc7528}
|
|
\abx@aux@segm{0}{0}{tlc7528}
|
|
\abx@aux@cite{idt7201}
|
|
\abx@aux@segm{0}{0}{idt7201}
|
|
\abx@aux@cite{idt7201}
|
|
\abx@aux@segm{0}{0}{idt7201}
|
|
\abx@aux@cite{idt7201}
|
|
\abx@aux@segm{0}{0}{idt7201}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.8.1}TLC 7528 Dual R2R Ladder DAC}{19}{subsubsection.2.8.1}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xiii}{\ignorespaces TLC-7528 Pinout\cite {tlc7528}\relax }}{19}{figure.caption.13}\protected@file@percent }
|
|
\newlabel{fig:tlc7528_pinout}{{xiii}{19}{TLC-7528 Pinout\cite {tlc7528}\relax }{figure.caption.13}{}}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.8.2}IDT7201 CMOS FIFO Buffer}{19}{subsubsection.2.8.2}\protected@file@percent }
|
|
\abx@aux@cite{tlc7528}
|
|
\abx@aux@segm{0}{0}{tlc7528}
|
|
\abx@aux@cite{tlc7528}
|
|
\abx@aux@segm{0}{0}{tlc7528}
|
|
\abx@aux@cite{tlc7528}
|
|
\abx@aux@segm{0}{0}{tlc7528}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xiv}{\ignorespaces IDT-7201 Pinout\cite {idt7201}\relax }}{20}{figure.caption.14}\protected@file@percent }
|
|
\newlabel{fig:idt7201_pinout}{{xiv}{20}{IDT-7201 Pinout\cite {idt7201}\relax }{figure.caption.14}{}}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.8.3}Theory verfication}{20}{subsubsection.2.8.3}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xv}{\ignorespaces TLC-7528 in voltage modet\cite {tlc7528}\relax }}{21}{figure.caption.15}\protected@file@percent }
|
|
\newlabel{fig:tlc7528_volt}{{xv}{21}{TLC-7528 in voltage modet\cite {tlc7528}\relax }{figure.caption.15}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xvi}{\ignorespaces Measurement of a generated SAW signal via the TLC7528\relax }}{21}{figure.caption.16}\protected@file@percent }
|
|
\newlabel{fig:tlc7528_saw_nonlin}{{xvi}{21}{Measurement of a generated SAW signal via the TLC7528\relax }{figure.caption.16}{}}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.8.4}Schematics}{21}{subsubsection.2.8.4}\protected@file@percent }
|
|
\abx@aux@cite{74hc374}
|
|
\abx@aux@segm{0}{0}{74hc374}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xvii}{\ignorespaces The schematic of the DAC Module\relax }}{22}{figure.caption.17}\protected@file@percent }
|
|
\newlabel{fig:schem_dac}{{xvii}{22}{The schematic of the DAC Module\relax }{figure.caption.17}{}}
|
|
\abx@aux@cite{74hc00}
|
|
\abx@aux@segm{0}{0}{74hc00}
|
|
\abx@aux@cite{iec60908}
|
|
\abx@aux@segm{0}{0}{iec60908}
|
|
\abx@aux@cite{audiob}
|
|
\abx@aux@segm{0}{0}{audiob}
|
|
\@writefile{toc}{\contentsline {paragraph}{Element Description}{23}{figure.caption.17}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {paragraph}{NE55 Clock Source}{24}{figure.caption.17}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.8.5}Demonstration Software}{24}{subsubsection.2.8.5}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {paragraph}{SAW Generator}{24}{subsubsection.2.8.5}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xviii}{\ignorespaces Measurement of a generated SAW signal with the FIFO Empty flag\relax }}{24}{figure.caption.18}\protected@file@percent }
|
|
\newlabel{fig:tlc7528_saw_fifo}{{xviii}{24}{Measurement of a generated SAW signal with the FIFO Empty flag\relax }{figure.caption.18}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xix}{\ignorespaces A transmission between the FIFO and the DAC\relax }}{25}{figure.caption.19}\protected@file@percent }
|
|
\newlabel{fig:fifo_dac}{{xix}{25}{A transmission between the FIFO and the DAC\relax }{figure.caption.19}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xx}{\ignorespaces A fifo store operation in contrast to the load operation\relax }}{25}{figure.caption.20}\protected@file@percent }
|
|
\newlabel{fig:fifo_dac_store}{{xx}{25}{A fifo store operation in contrast to the load operation\relax }{figure.caption.20}{}}
|
|
\newlabel{lst:dac_saw}{{IV}{25}{SAW Generation for the DAC with FIFO}{lstlisting.4}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {IV}SAW Generation for the DAC with FIFO}{25}{lstlisting.4}\protected@file@percent }
|
|
\abx@aux@cite{atmega2560}
|
|
\abx@aux@segm{0}{0}{atmega2560}
|
|
\@writefile{toc}{\contentsline {paragraph}{Sine Generator}{26}{lstnumber.4.11}\protected@file@percent }
|
|
\newlabel{lst:dac_sine_lut}{{V}{26}{Sine LUT Generation}{lstlisting.5}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {V}Sine LUT Generation}{26}{lstlisting.5}\protected@file@percent }
|
|
\newlabel{lst:dac_sine}{{VI}{26}{DAC Sine Generation}{lstlisting.6}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {VI}DAC Sine Generation}{26}{lstlisting.6}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxi}{\ignorespaces Storage and retrieval of a sine to and from the FIFO\relax }}{27}{figure.caption.21}\protected@file@percent }
|
|
\newlabel{fig:fifo_sine_store}{{xxi}{27}{Storage and retrieval of a sine to and from the FIFO\relax }{figure.caption.21}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxii}{\ignorespaces Measuremet of the generated sine from the sine LUT on DACA and DACB\relax }}{27}{figure.caption.22}\protected@file@percent }
|
|
\newlabel{fig:sine_dacab}{{xxii}{27}{Measuremet of the generated sine from the sine LUT on DACA and DACB\relax }{figure.caption.22}{}}
|
|
\abx@aux@cite{lvlshift}
|
|
\abx@aux@segm{0}{0}{lvlshift}
|
|
\@writefile{toc}{\contentsline {section}{\numberline {3}Addressing DACA and DACB}{28}{section.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}FPGA to Hardware interface}{28}{subsection.3.1}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxiii}{\ignorespaces 3.3V to 5V conversion using the level shifter\relax }}{29}{figure.caption.23}\protected@file@percent }
|
|
\newlabel{fig:3v35v}{{xxiii}{29}{3.3V to 5V conversion using the level shifter\relax }{figure.caption.23}{}}
|
|
\abx@aux@cite{lvlshift}
|
|
\abx@aux@segm{0}{0}{lvlshift}
|
|
\abx@aux@cite{lvlshift}
|
|
\abx@aux@segm{0}{0}{lvlshift}
|
|
\abx@aux@cite{DB3S406F0L}
|
|
\abx@aux@segm{0}{0}{DB3S406F0L}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxiv}{\ignorespaces 5V to 3.3V conversion using the level shifter\relax }}{30}{figure.caption.24}\protected@file@percent }
|
|
\newlabel{fig:5v3v3}{{xxiv}{30}{5V to 3.3V conversion using the level shifter\relax }{figure.caption.24}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxv}{\ignorespaces The internal schematics of the level shifter\cite {lvlshift}\relax }}{30}{figure.caption.25}\protected@file@percent }
|
|
\newlabel{fig:schem_lvlshift}{{xxv}{30}{The internal schematics of the level shifter\cite {lvlshift}\relax }{figure.caption.25}{}}
|
|
\abx@aux@cite{ad2}
|
|
\abx@aux@segm{0}{0}{ad2}
|
|
\abx@aux@cite{ad2}
|
|
\abx@aux@segm{0}{0}{ad2}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.1.1}Measurement error}{31}{subsubsection.3.1.1}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxvi}{\ignorespaces The internal clamping diodes of the Analog Discovery 2\cite {ad2}\relax }}{31}{figure.caption.26}\protected@file@percent }
|
|
\newlabel{fig:ad2_diode}{{xxvi}{31}{The internal clamping diodes of the Analog Discovery 2\cite {ad2}\relax }{figure.caption.26}{}}
|
|
\@writefile{toc}{\contentsline {section}{\numberline {4}Textadventure}{31}{section.4}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}General Implementation details}{32}{subsection.4.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.1.1}General definitions and pinout of the AVR}{32}{subsubsection.4.1.1}\protected@file@percent }
|
|
\newlabel{lst:textadv-avr.h}{{VII}{33}{The avr.h header file}{lstlisting.7}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {VII}The avr.h header file}{33}{lstlisting.7}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.1.2}Read and Write routines}{34}{subsubsection.4.1.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.1.3}UART and DAC update polling}{34}{subsubsection.4.1.3}\protected@file@percent }
|
|
\newlabel{lst:textadv-routine}{{VIII}{34}{The routine function looped by the main}{lstlisting.8}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {VIII}The routine function looped by the main}{34}{lstlisting.8}\protected@file@percent }
|
|
\abx@aux@cite{atmega2560}
|
|
\abx@aux@segm{0}{0}{atmega2560}
|
|
\newlabel{lst:textadv-routine-uart}{{IX}{35}{The routine function for the UART}{lstlisting.9}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {IX}The routine function for the UART}{35}{lstlisting.9}\protected@file@percent }
|
|
\newlabel{lst:textadv-routine-dac}{{X}{35}{The routine function for the DAC}{lstlisting.10}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {X}The routine function for the DAC}{35}{lstlisting.10}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}DAC sound generation}{35}{subsection.4.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.1}DAC modes}{35}{subsubsection.4.2.1}\protected@file@percent }
|
|
\newlabel{lst:textadv-dac-modes}{{XI}{36}{The DAC operation modes}{lstlisting.11}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {XI}The DAC operation modes}{36}{lstlisting.11}\protected@file@percent }
|
|
\newlabel{lst:textadv-dac-gen}{{XII}{37}{The DAC waveform generation code}{lstlisting.12}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {XII}The DAC waveform generation code}{37}{lstlisting.12}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.2}Tones and Tracks}{40}{subsubsection.4.2.2}\protected@file@percent }
|
|
\newlabel{lst:textadv-isr}{{XIII}{40}{The ISR which fires every millisecond}{lstlisting.13}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {XIII}The ISR which fires every millisecond}{40}{lstlisting.13}\protected@file@percent }
|
|
\newlabel{lst:textadv-upsnd}{{XIV}{40}{The sound update function}{lstlisting.14}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {XIV}The sound update function}{40}{lstlisting.14}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxvii}{\ignorespaces The output of an example track part 1\relax }}{42}{figure.caption.27}\protected@file@percent }
|
|
\newlabel{fig:textadv_track_ex1}{{xxvii}{42}{The output of an example track part 1\relax }{figure.caption.27}{}}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxviii}{\ignorespaces The output of an example track part 2\relax }}{43}{figure.caption.28}\protected@file@percent }
|
|
\newlabel{fig:textadv_track_ex2}{{xxviii}{43}{The output of an example track part 2\relax }{figure.caption.28}{}}
|
|
\abx@aux@cite{dunnet}
|
|
\abx@aux@segm{0}{0}{dunnet}
|
|
\abx@aux@cite{ascii}
|
|
\abx@aux@segm{0}{0}{ascii}
|
|
\abx@aux@cite{vt100}
|
|
\abx@aux@segm{0}{0}{vt100}
|
|
\abx@aux@cite{ascii}
|
|
\abx@aux@segm{0}{0}{ascii}
|
|
\abx@aux@cite{vt100}
|
|
\abx@aux@segm{0}{0}{vt100}
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.3}Track switching}{44}{subsubsection.4.2.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}User command interpretation}{44}{subsection.4.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.1}Command structure and parsing}{44}{subsubsection.4.3.1}\protected@file@percent }
|
|
\newlabel{lst:textadv-ingest}{{XV}{44}{The character ingest function}{lstlisting.15}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {XV}The character ingest function}{44}{lstlisting.15}\protected@file@percent }
|
|
\newlabel{lst:textadv-parsecmd}{{XVI}{45}{The command parsing function}{lstlisting.16}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {XVI}The command parsing function}{45}{lstlisting.16}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.2}Command parameters}{46}{subsubsection.4.3.2}\protected@file@percent }
|
|
\newlabel{lst:textadv-perfact}{{XVII}{46}{The command execution routine}{lstlisting.17}{}}
|
|
\@writefile{lol}{\contentsline {lstlisting}{\numberline {XVII}The command execution routine}{46}{lstlisting.17}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {4.4}Gameplay}{47}{subsection.4.4}\protected@file@percent }
|
|
\abx@aux@cite{atmega2560}
|
|
\abx@aux@segm{0}{0}{atmega2560}
|
|
\abx@aux@cite{elf}
|
|
\abx@aux@segm{0}{0}{elf}
|
|
\abx@aux@cite{progmem}
|
|
\abx@aux@segm{0}{0}{progmem}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxix}{\ignorespaces A regular beginning of the game\relax }}{48}{figure.caption.29}\protected@file@percent }
|
|
\newlabel{fig:tetadv_gameplay}{{xxix}{48}{A regular beginning of the game\relax }{figure.caption.29}{}}
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {4.5}Memory constraints}{49}{subsection.4.5}\protected@file@percent }
|
|
\abx@aux@cite{ghdl}
|
|
\abx@aux@segm{0}{0}{ghdl}
|
|
\abx@aux@cite{gtkwave}
|
|
\abx@aux@segm{0}{0}{gtkwave}
|
|
\abx@aux@cite{yosys}
|
|
\abx@aux@segm{0}{0}{yosys}
|
|
\abx@aux@cite{ghdlsynth-beta}
|
|
\abx@aux@segm{0}{0}{ghdlsynth-beta}
|
|
\abx@aux@cite{nextpnr-xilinx}
|
|
\abx@aux@segm{0}{0}{nextpnr-xilinx}
|
|
\abx@aux@cite{prjxray}
|
|
\abx@aux@segm{0}{0}{prjxray}
|
|
\abx@aux@cite{open-fpga-loader}
|
|
\abx@aux@segm{0}{0}{open-fpga-loader}
|
|
\@writefile{toc}{\contentsline {part}{I\hspace {1em}A short introduction to VHDL}{50}{part.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {5}Prerequisites}{50}{section.5}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {6}Creating a design}{50}{section.6}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {7}Simulating a design}{52}{section.7}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxx}{\ignorespaces Screenshot of the resulting waveform in GTKWave\relax }}{53}{figure.caption.30}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {8}Synthesizing a design}{53}{section.8}\protected@file@percent }
|
|
\abx@aux@cite{nandgame}
|
|
\abx@aux@segm{0}{0}{nandgame}
|
|
\abx@aux@cite{breadboard_computer}
|
|
\abx@aux@segm{0}{0}{breadboard_computer}
|
|
\@writefile{toc}{\contentsline {part}{II\hspace {1em}Meta}{54}{part.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {9}History}{54}{section.9}\protected@file@percent }
|
|
\abx@aux@cite{yosys-paper}
|
|
\abx@aux@segm{0}{0}{yosys-paper}
|
|
\abx@aux@cite{yosys}
|
|
\abx@aux@segm{0}{0}{yosys}
|
|
\abx@aux@cite{nextpnr}
|
|
\abx@aux@segm{0}{0}{nextpnr}
|
|
\abx@aux@cite{ghdlsynth-beta}
|
|
\abx@aux@segm{0}{0}{ghdlsynth-beta}
|
|
\abx@aux@cite{ghdl}
|
|
\abx@aux@segm{0}{0}{ghdl}
|
|
\abx@aux@cite{nextpnr-xilinx}
|
|
\abx@aux@segm{0}{0}{nextpnr-xilinx}
|
|
\abx@aux@cite{prjxray}
|
|
\abx@aux@segm{0}{0}{prjxray}
|
|
\@writefile{toc}{\contentsline {section}{\numberline {10}Tooling}{56}{section.10}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {10.1}Vendor Tools}{56}{subsection.10.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {10.2}Free Software Tools}{56}{subsection.10.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {11}Peripherals}{57}{section.11}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {11.1}UART}{57}{subsection.11.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {11.2}DVI graphics}{57}{subsection.11.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {11.2.1}VGA timing}{57}{subsubsection.11.2.1}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxxi}{\ignorespaces Block diagram of the video core\relax }}{58}{figure.caption.31}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {11.2.2}Text renderer}{58}{subsubsection.11.2.2}\protected@file@percent }
|
|
\abx@aux@cite{liteeth}
|
|
\abx@aux@segm{0}{0}{liteeth}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxxii}{\ignorespaces Diagram of VGA timing intervals\relax }}{59}{figure.caption.32}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {11.2.3}TMDS encoder}{59}{subsubsection.11.2.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {11.3}Ethernet}{59}{subsection.11.3}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxxiii}{\ignorespaces Block diagram of the text renderer\relax }}{60}{figure.caption.33}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {11.4}WS2812 driver}{60}{subsection.11.4}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxxiv}{\ignorespaces Block diagram of the WS2812 driver\relax }}{60}{figure.caption.34}\protected@file@percent }
|
|
\abx@aux@cite{riscv-compliance}
|
|
\abx@aux@segm{0}{0}{riscv-compliance}
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxxv}{\ignorespaces Timing diagram for the WS2812 serial protocol\relax }}{61}{figure.caption.35}\protected@file@percent }
|
|
\newlabel{fig:ws2812_timing}{{xxxv}{61}{Timing diagram for the WS2812 serial protocol\relax }{figure.caption.35}{}}
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {11.5}DRAM}{61}{subsection.11.5}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {11.6}External Bus}{61}{subsection.11.6}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {12}Testing}{62}{section.12}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {subsection}{\numberline {12.1}RISC-V Compliance Tests}{62}{subsection.12.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {part}{III\hspace {1em}The Core}{62}{part.3}\protected@file@percent }
|
|
\@writefile{lof}{\contentsline {figure}{\numberline {xxxvi}{\ignorespaces Block diagram of the CPU core\relax }}{63}{figure.caption.36}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {13}Overview}{63}{section.13}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {14}Control}{63}{section.14}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {15}Decoder}{64}{section.15}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {16}Registers}{65}{section.16}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {17}Arithmetic and Logic Unit (ALU)}{66}{section.17}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {18}Control and Status Registers (CSR)}{66}{section.18}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {19}Memory Arbiter}{67}{section.19}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {20}Exception Control}{68}{section.20}\protected@file@percent }
|
|
\babel@aux{ngerman}{}
|
|
\@writefile{toc}{\contentsline {section}{\numberline {21}Erkl"arung der Eigenst"andigkeit der Arbeit}{70}{section.21}\protected@file@percent }
|
|
\babel@aux{english}{}
|
|
\@writefile{toc}{\contentsline {section}{\numberline {I\tmspace +\thickmuskip {.2777em}}List of Figures}{I}{section.1}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {II\tmspace +\thickmuskip {.2777em}}List of Tables}{II}{section.2}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{\numberline {III\tmspace +\thickmuskip {.2777em}}Listings}{II}{section.3}\protected@file@percent }
|
|
\@writefile{toc}{\contentsline {section}{Anhang}{V}{section.3}\protected@file@percent }
|
|
\newlabel{LastPage}{{}{V}{}{page.V}{}}
|
|
\xdef\lastpage@lastpage{V}
|
|
\xdef\lastpage@lastpageHy{V}
|
|
\abx@aux@refcontextdefaultsdone
|
|
\abx@aux@defaultrefcontext{0}{ad2}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{atmega2560}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{pc16550}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{max232}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{tlc7528}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{idt7201}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{74hc374}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{74hc00}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{iec60908}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{audiob}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{lvlshift}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{DB3S406F0L}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{dunnet}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{ascii}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{vt100}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{elf}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{progmem}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{ghdl}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{gtkwave}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{yosys}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{ghdlsynth-beta}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{nextpnr-xilinx}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{prjxray}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{open-fpga-loader}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{nandgame}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{breadboard_computer}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{yosys-paper}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{nextpnr}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{liteeth}{none/global//global/global}
|
|
\abx@aux@defaultrefcontext{0}{riscv-compliance}{none/global//global/global}
|