66 lines
3.7 KiB
TeX
66 lines
3.7 KiB
TeX
|
\documentclass[a4paper,fontsize=14bp]{article}
|
|||
|
|
|||
|
\input{../common-preamble}
|
|||
|
\input{../fancy-listings-preamble}
|
|||
|
\input{../bmstu-preamble}
|
|||
|
\setcounter{secnumdepth}{4}
|
|||
|
\numerationTop
|
|||
|
|
|||
|
\begin{document}
|
|||
|
\thispagestyle{empty}
|
|||
|
\makeBMSTUHeader
|
|||
|
|
|||
|
\makeReportTitle{лабораторной}{№ 4}{Проектирование цифрового синтезатора}{Проектирование цифровых устройств на \\ программируемых логических интегральных схемах (ПЛИС)}{}{С.В. Фёдоров}
|
|||
|
|
|||
|
\newpage
|
|||
|
\sloppy
|
|||
|
\pagestyle{fancy}
|
|||
|
\section{Цель}
|
|||
|
Осуществить полный цикл проектирования цифрового устройства на ПЛИС на языке SystemVerilog. Реализовать генератор периодических функций на основе метода прямого цифрового синтеза на микросхеме семейства Cyclone IV E.
|
|||
|
|
|||
|
\section{Задачи}
|
|||
|
\begin{itemize}
|
|||
|
\item Реализовать модули «Накопителя фазы», «Просмотровой таблицы», «Сигма-Дельта модулятора».
|
|||
|
\item Реализовать синтезатор, используя разработанные модули.
|
|||
|
\item Осуществить моделирование каждого этапа разработки.
|
|||
|
\item В рамках самостоятельной подготовки провести расчёт значений $u_n$,$x_n$,$y'_n$ и $\varepsilon_n$ для 5 тактов работы дельта-сигма модулятора. Приведите значения для каждого такта и график выходного сигнала $y_n$.
|
|||
|
\end{itemize}
|
|||
|
|
|||
|
\section{Выполнение работы}
|
|||
|
\subsection{Самостоятельная подготовка}
|
|||
|
Вариант 9 для первой группы $x_n = 9 * 3 - 21 = 6$.
|
|||
|
|
|||
|
\begin{figure}[H]
|
|||
|
\centering
|
|||
|
\resizebox{\textwidth}{!}{\input{pics/03-fpga-04-sigdel.pgf}}
|
|||
|
\caption{1}
|
|||
|
\label{pic:1}
|
|||
|
\end{figure}
|
|||
|
|
|||
|
\begin{enumerate}
|
|||
|
\item $x_n = 6, \varepsilon_n = 127$, уровень квантования 127;
|
|||
|
\item $u_{n + 1} = x_n - \varepsilon_n = 6 – 127 = -121$, при этом $\varepsilon_n = -128-(-121)=-7$, а уровень квантования -128;
|
|||
|
\item $u_{n + 2} = x_n - \varepsilon_n = 6 – (–7) = 13$, при этом $\varepsilon_n = 127 - 13 = 104$, а уровень квантования 127;
|
|||
|
\item $u_{n + 3} = x_n - \varepsilon_n = 6 – 104 = -98$, при этом $\varepsilon_n= -128-(-98) = -30$, а уровень квантования -128;
|
|||
|
\item $u_{n + 4} = x_n - \varepsilon_n = 26 – (–30) = 106$, при этом ξn= 127-106 = 11, а уровень квантования 127 F: Un+1=XN-ξn=26 – 11 = 15, при этом ξn= 127-15 = 112, а уровень квантования 127
|
|||
|
G: Un+1=XN-ξn=26 – 112 = -86, при этом ξn= -128-(-86) = -42, а уровень квантования -128 H: Un+1=XN-varepsilonn=26 – (–42) = 88, при этом ξn= 127-88 = 39, а уровень квантования 127
|
|||
|
\end{enumerate}
|
|||
|
\subsection{Разработка модулей}
|
|||
|
По шагам из методического материала был создан проект в САПР Quartus Prime (доступен по \href{https://git.iovchinnikov.ru/ivan-igorevich/fpga-lab-2/commits/branch/lab4}{ссылке}).
|
|||
|
|
|||
|
\section{Выводы}
|
|||
|
|
|||
|
\newpage
|
|||
|
\appendix
|
|||
|
\setcounter{secnumdepth}{4}
|
|||
|
\section{Приложения}
|
|||
|
\subsection{Исходные коды проекта}
|
|||
|
\label{appendix:src}
|
|||
|
|
|||
|
\lstinputlisting[language=C,style=CCodeStyle,caption={\code{sem.c}},label={lst:sem}]{src/sem.c}
|
|||
|
|
|||
|
\end{document}
|
|||
|
|
|||
|
|
|||
|
|