-
Notifications
You must be signed in to change notification settings - Fork 0
/
215514_rafal_kolucki_inz.tex
106 lines (85 loc) · 4.3 KB
/
215514_rafal_kolucki_inz.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
\documentclass[a4paper,12pt,twoside,titlepage]{article}
\usepackage{amsmath,amssymb}
\usepackage{mathtools}
\usepackage[MeX]{polski}
\usepackage[utf8]{inputenc}
%\usepackage{tocloft}
\usepackage{lscape}
\usepackage{breqn}
\usepackage{asymptote}
\usepackage{multicol}
\usepackage[margin=2.5cm]{geometry}
\usepackage{float}
\usepackage{multicol}
\usepackage{indentfirst}
\usepackage{cite}
\usepackage{url}
\usepackage{dmcsTitle}
\usepackage{minted}
\usepackage[format=plain,font=it]{caption}
\usepackage{fancyhdr}
\usepackage{afterpage}
\newcommand\myemptypage{
\null
\thispagestyle{empty}
\addtocounter{page}{-1}
\newpage
}
\linespread{1.3}
\setminted{fontsize=\footnotesize,breaklines}
\newenvironment{longlisting}{\captionsetup{type=listing}}{}
\newcommand{\addchapterline}[1]{%
\addcontentsline{toc}{toc}{\protect\numberline{}\textbf{#1}\hfill}%
\addtocontents{toc}{\newline\newline}%
}
\author{Kołucki Rafał}
\indexnumber{215514}
\thesis{inżynierska}
\date{18 września 2022 r.}
\supervisor[mgr Zbigniew Kulesza]{dr inż. Piotr Zając}
\doubletitle{Optymalizacja dostępu procesora do~magistrali systemowej na~platformie RISC-V}{Optimalization of~processor's access to~the~system bus on~the~RISC-V platform}
\begin{document}
\pagestyle{fancy}
\fancyhead{} % clear all header fields
\fancyhead[L]{PRACA INŻYNIERSKA}
\fancyhead[R]{Rafał Kołucki}
\fancyfoot{} % clear all footer fields
\fancyfoot[C]{Strona \thepage}
\fancyfoot[L]{Politechnika Łódzka}
\maketitle
\myemptypage
\section*{Streszczenie}
Rosnąca popularność niestandardowych projektów systemów jednoukładowych, bazujących głównie na programowalnych układach macierzy bramek (FPGA), doprowadziła do zwiększonego zainteresowania technikami optymalizacji wydajności systemów. Jednocześnie pula dostępnych optymalizacji jest ograniczona do samego sposobu działania systemów ze względu na takie parametry jak maksymalna częstotliwość taktowania układu. W ramach tej pracy zrealizowane zostało zaimplementowanie optymalizacji wybranych peryferiów, pozwalając na osiągnięcie większej wydajności transferu danych. Omówione zostały trzy kluczowe zagadnienia.
Pierwszym z nich jest implementacja obsługi transferów potokowych na przykładzie dwóch peryferiów: modułu komunikacyjnego oraz prostej pamięci RAM. Drugim z nich jest analiza poprawności działania oraz wydajności wprowadzonych zmian z wykorzystaniem systemu testów jednostkowych oraz programu mierzącego wydajność testowego systemu jednoukładowego. Na koniec opracowane zostały wnioski oparte na wynikach przeprowadzonych testów.
\newline\newline\newline
\textbf{Słowa kluczowe:} systemy jednoukładowe, magistrala systemowa, testy jednostkowe, FPGA, RISC-V
\newpage
\section*{Abstract}
The growing popularity of custom single-chip system designs, based mainly on field-programmable gate array chips (FPGA), has led to increased interest in system performance optimization techniques. At the same time, the pool of available optimizations is limited to the very way the systems operate due to parameters such as maximum chip clock frequency. This thesis focuses on implementation of the optimizations in selected peripherals, allowing faster data transfers to be achieved. Three key issues are discussed.
The first is the implementation of pipelined transfer support using two peripherals as an example: a communication module and a simple RAM module. The second is the analysis of the correct operation and performance of the implemented changes using a unit tests system and a program measuring the performance of a single-chip test system. Finally, conclusions based on the results of the tests are described.
\newline\newline\newline
\textbf{Keywords:} single-chip systems, system bus, unit tests, FPGA, RISC-V
\newpage
%\renewcommand{\cftsecleader}{\cftdotfill{\cftdotsep}}
\tableofcontents
\vfill
\pagebreak
\include{intro/intro.tex}
\include{soc-theory/soc-theory.tex}
\include{tooling/tooling.tex}
\include{implementation/implementation.tex}
\include{testing/testing.tex}
\include{summary/summary.tex}
\bibliographystyle{plain}
\addchapterline{Literatura}
\bibliography{refs}
\newpage
\addchapterline{\listfigurename}
\listoffigures
\newpage
\addchapterline{\listtablename}
\listoftables
\newpage
\addchapterline{Spis listingów}
\listof{listing}{Spis listingów}
\end{document}