another week

This commit is contained in:
Ivan I. Ovchinnikov 2023-03-10 14:27:18 +03:00
parent 9576ffec68
commit 267a69c0da
2 changed files with 104 additions and 31 deletions

View File

@ -240,7 +240,7 @@ $\frac{\sin{X}}{X}$ -- первый замечательный предел
\[X(t) = \sum_{k=-\infty}^\infty x(t_k) \frac{sin 2\pi f_a(t-t_k)}{2\pi f_a(t-t_k)}\] \[X(t) = \sum_{k=-\infty}^\infty x(t_k) \frac{sin 2\pi f_a(t-t_k)}{2\pi f_a(t-t_k)}\]
где $t_k = \frac{k}{2f_a}$, $k=0, \pm1, \pm2, \pm3...$. где $t_k = \frac{k}{2f_a}$, $k=0, \pm1, \pm2, \pm3...$.
$\frac{sin 2\pi f_a(t-t_k)}{2\pi f_a(t-t_k)}$ -- импульсная характеристика идеального фильтра низких частот с прямоугольной АЧХ. То есть это указание о том, как именно восстанавливать сигнал -- пропустить через идеальный ФНЧ. Важно в теореме -- ширина спектра сигнала. а не максимальная частота. $\frac{sin 2\pi f_a(t-t_k)}{2\pi f_a(t-t_k)}$ -- импульсная характеристика идеального фильтра низких частот с прямоугольной АЧХ. То есть это указание о том, как именно восстанавливать сигнал -- пропустить через идеальный ФНЧ. Важно в формулировке теоремы -- ширина спектра сигнала. а не максимальная частота.
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@ -263,7 +263,7 @@ $\frac{sin 2\pi f_a(t-t_k)}{2\pi f_a(t-t_k)}$ -- импульсная харак
\item Фазовая манипуляция \item Фазовая манипуляция
\end{itemize} \end{itemize}
Котельников в лоб -- дискретизация должна быть на 400+ МГЦ. Если применить теорему Котельникова в лоб -- дискретизация должна быть на 400+ МГЦ.
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@ -306,15 +306,10 @@ $\frac{sin 2\pi f_a(t-t_k)}{2\pi f_a(t-t_k)}$ -- импульсная харак
\centering \centering
\fontsize{12}{1}\selectfont \fontsize{12}{1}\selectfont
\includesvg[scale=1.01]{pics/04-cedd-00-freq-z-dd.svg} \includesvg[scale=1.01]{pics/04-cedd-00-freq-z-dd.svg}
\caption{ } \caption{Полосовой фильтр}
\end{figure} \end{figure}
полосовой фильтру Полоса пропускания $f_1...f_2$, переходная полоса справа $f_2...2f_s - f2$ слева $f_1...f_s-f_1$, полоса задержания меньше $f_s-f_1$ и больше $2f_s-f_2$. Если большой ДД -- нужен большой порядок фильтра. Снизить требование поможет также передискретизация -- плис -- цифровая фильтрация с прореживанием.
полоса пропускания f1-f2
переходная полоса справа f2...2fs-f2 слева f1...fs-f1
полоса задержания <fs-f1 >2fs-f2
Если большой ДД -- нужен большой порядок фильтра. Снизить требование поможет также передискретизация -- плис -- цифровая фильтрация с прореживанием.
Методика расчёта чатоты дискретизации при субдискретизации (Как сделать, чтобы сигнал лежал строго в середине зоны) Методика расчёта чатоты дискретизации при субдискретизации (Как сделать, чтобы сигнал лежал строго в середине зоны)
@ -322,7 +317,7 @@ $f_c$ -- центральная частота полосового сигнал
\[f_s = \frac{4f_c}{2z-1}\] \[f_s = \frac{4f_c}{2z-1}\]
$z$ -- номер зоны. Пусть ширина полосы = 4МГц, центральная частота 71МГц, по теореме К $f_s = 8$МГц. зона будет равна 18.25, зона не может быть дробным, округялем до ближайшего целого, снова подставляем в эту же формулу, частота дискретизации будет 8,1143МГц. Если хотим запас фильтрации больше -- фс=10МГц, подставляем в выражение - зона 14,7, округляем до 14, частота дискретизации = 10,519МГц. $z$ -- номер зоны. Пусть ширина полосы = 4МГц, центральная частота 71МГц, по теореме К $f_s = 8$МГц. зона будет равна $18.25$, зона не может быть дробным, округялем до ближайшего целого, снова подставляем в эту же формулу, частота дискретизации будет $8,1143$МГц. Если хотим запас фильтрации больше -- $f_s=10$МГц, подставляем в выражение -- зона $14,7$, округляем до $14$, частота дискретизации = $10,519$МГц.
\section{Квантование} \section{Квантование}
Дискретный сигнал -- это сигнал с конечным количеством отсчётов, но разрядность пока бесконечна, поэтому возможно применить разрядность АЦП. Передаточная характеристика идеального квантователя Дискретный сигнал -- это сигнал с конечным количеством отсчётов, но разрядность пока бесконечна, поэтому возможно применить разрядность АЦП. Передаточная характеристика идеального квантователя
@ -335,7 +330,7 @@ Signal-Noise-Ratio
\[SNR = 6,02N + 1,76dB\] \[SNR = 6,02N + 1,76dB\]
N -- разрядность. Сигнал -- нестационарный процесс, имеет равномерное распределение от 0 до фс/2, не коррелирует со входным сигналом, матмодель - входной сигнал умножается на шум квантования. N -- разрядность. Сигнал -- нестационарный процесс, имеет равномерное распределение от 0 до $f_s/2$, не коррелирует со входным сигналом, матмодель - входной сигнал умножается на шум квантования.
Если аналоговая частота больше -- есть более общий вариант Если аналоговая частота больше -- есть более общий вариант
@ -348,7 +343,9 @@ N -- разрядность. Сигнал -- нестационарный про
(6) (6)
память+пэвм -- способ проверить АЦП для своей системы. память+пэвм -- способ проверить АЦП для своей системы.
Характеристики могут быть статические и динамические. Статические: Характеристики могут быть статические и динамические.
\subsection{Статические}
\begin{itemize} \begin{itemize}
\item Дифференциальная нелинейность DNL \item Дифференциальная нелинейность DNL
\item Интегральная нелинейность INL \item Интегральная нелинейность INL
@ -374,17 +371,50 @@ N -- разрядность. Сигнал -- нестационарный про
Эти ошибки возможно исправить программно или внешними аналоговыми цепями. Эти ошибки возможно исправить программно или внешними аналоговыми цепями.
Динамические характеристики \subsection{Динамические характеристики}
\begin{itemize} \begin{itemize}
\item Реальное отношение сигнал-шум ($SNR_{real}$) \item Реальное отношение сигнал-шум ($SNR_{real}$). Реальная характеристика точно будет отличаться. Точность разрядности возможно посчитать по формуле
для н-разрядного АЦП возможно посчитать теорию. Реальная характеристика точно будет отличаться. \[\frac{1}{LSB} \cdot 100\%\]
для N=8 это 0.4\%. SNR = 48dB(1,76dB). Младшие биты АЦП всегда шумят, тест нужно делать на постоянном токе (например, замкнуть на землю, при условии, что земля не дрожжит).
N=8, SNR=49,7dB. реальный может быть 48,1 или 47,1 (первый лучше) зависит от частоты типовой график N=8, SNR=49,7dB. реальный может быть 48,1 или 47,1 (первый лучше) зависит от частоты типовой график
(9) (9)
обратный график - эффективное число бит обратный график - эффективное число бит
\[ENoB = \frac{SNR_{real} - 1,76dB}{6,02}\] \[ENoB = \frac{SNR_{real} - 1,76dB}{6,02}\]
\item Коэффициент гармонических искажений Total Harmonic Distortion -- отражает качество и линейность кармоник. Чем меньше брать в расчёт гармоник - тем легче продать. $THD=\sqrt{\frac{A_2+A_3...}{A_1}}\%$. \item Коэффициент гармонических искажений Total Harmonic Distortion -- отражает качество и линейность кармоник. Чем меньше брать в расчёт гармоник - тем легче продать. $THD=\frac{A_1}{\sqrt{A_2^2+A_3^2...}}\%$. AD -- считает по 5 гармоникам, TI -- по 7.
(10)
\item сигнал шум и искажение (SINAD) типовая схема 4096 отсчётов. более качественный параметр. \item сигнал шум и искажение (SINAD) типовая схема 4096 отсчётов. более качественный параметр.
\item свободный динамический диапазон (SFDR spurious free dynamic range) -- свободный от наиболее мешающих компонент. иногда указывают самый мешающий компонент peak spurious (dB). эта характеристика всегда больше СШ. ДД замеряется по самой высокой гармонике.
(11)
\item частотная характеристика: полномощная полоса пропускания (full-power bandwidth) -- частота на которой амплитуда реконструируемой синусоиды отличается на -3дБ.
(12)
\item частотная характеристика: полнолинейная полоса (Full linear bandwidth) срез -0,1дБ, показывает где АЧХ максимально плоская.
\item при интермодуляции в общем случае появляются гармоники каждой частоты (кубические составляющие).
(13) продукт интермодуляционных искажений
Intermodulation distortion (IMD). обычно используется сигнальный тест на два компонента и используются продукты второго и третьего порядка.
\[ IMD = \frac{\sqrt{a_{f_1}^2 + a_{f_2}^2}}{\sqrt{\text{сумма квадратов коэффициентов интермодуляции}}} \%\]
В ВЧ и радиочастотных цепях -- это критическая характеристика. Измеряется также через БПФ.
\item время восстановления после перенапряжения. overvoltage recovery.
(14) время восстановления измерения с приемлемой точностью (1МЗР)
Может возникнуть от помех или наводок, индустриальные помехи, итд.
\item время установления выходного напряжения (setting time, $t_{set}$) -- фактически, переходная характеристика.
(15)
характеристика может быть критична для многоканальных систем (мультиплексор перед АЦП) частота переключения каналов.
\item апертурная неопределённость (апертурный джиттер, aperture jitter). дрожание фазы
(16)
Если это тактовый сигнал который подаётся на АЦП, даётся среднеквадратичное значение.
(17)
влияет на динамический диапазон (напрямую зависит от скорости нарастания сигнала (вольт/мкс)). Если величина этой ошибки превышает 1МЗР -- она становится определяющей. Тогда это нужно определять выходную частоту.
(18)
Фазовые шумы ТИ накладываются на внутренние фазовые шумы АЦП и так теряются разряды. ТИ должны идти в ту же сторону, что и распространение сигнала. Обязательно через внешние драйверы ТИ с нулевой задержкой. Эмиттерно-селективная логика, дифференциальные сигналы. Снизить шумы позволяют clock-cleaner на основе ФАПЧ.
\end{itemize} \end{itemize}
\end{document} \end{document}

View File

@ -243,11 +243,12 @@ DevOps-инженер -- высококвалифицированный спец
Образ контейнера это переносимый пакет, содержащий программное обеспечение. При запуске он становится контейнером. Образ контейнера неизменен. После сборки образа внести в него изменения нельзя. Единственный способ изменить образ создать новый. Эта особенность дает гарантию того, что образ, используемый в рабочей среде, полностью совпадает с образом, который применялся при разработке и контроле качества. Образ контейнера это переносимый пакет, содержащий программное обеспечение. При запуске он становится контейнером. Образ контейнера неизменен. После сборки образа внести в него изменения нельзя. Единственный способ изменить образ создать новый. Эта особенность дает гарантию того, что образ, используемый в рабочей среде, полностью совпадает с образом, который применялся при разработке и контроле качества.
\subsection{Когда следует использовать контейнеры Docker?} Образы Docker - это файлы большого размера, которые изначально сохраняются на компьютере. Для управления ими нужны специальные средства. Интерфейс командной строки (CLI) Docker позволяет управлять образами:
\begin{itemize}
Управление средами размещения. Среда для приложения настраивается внутри контейнера. Благодаря этому команда эксплуатации может более гибко управлять средой приложения. Можно также управлять тем, какие приложения следует установить, обновить или удалить, не затрагивая другие контейнеры. Каждый контейнер изолирован. Облачные развертывания. Контейнеры Docker поддерживаются на многих облачных платформах. \item выполнять их сборку
\item получать их список
Переносимость приложений. Контейнеры могут выполняться практически везде: на Настольных компьютерах, физических серверах, в виртуальных машинах и в облаке. Такая совместимость со средами выполнения позволяет легко перемещать контейнерные приложения между разными средами. Так как контейнеры требуют меньше ресурсов, увеличение времени запуска или завершения работы сказывается на виртуальных машинах. Благодаря этому упрощается и ускоряется повторное развертывание. \item удалять и запускать образы
\end{itemize}
Dockerfile -- это текстовый файл с инструкциями для сборки и запуска образа Docker. Dockerfile -- это текстовый файл с инструкциями для сборки и запуска образа Docker.
\begin{itemize} \begin{itemize}
@ -265,13 +266,6 @@ Dockerfile -- это текстовый файл с инструкциями д
Оба типа образов позволяют создавать многократно используемые образы. Однако базовые образы дают больше возможностей для содержимого итогового образа. Помним, что образ является неизменяемым. В него можно добавлять компоненты, но удалять из него ничего нельзя. Оба типа образов позволяют создавать многократно используемые образы. Однако базовые образы дают больше возможностей для содержимого итогового образа. Помним, что образ является неизменяемым. В него можно добавлять компоненты, но удалять из него ничего нельзя.
Образы Docker - это файлы большого размера, которые изначально сохраняются на компьютере. Для управления ими нужны специальные средства. Интерфейс командной строки (CLI) Docker позволяет управлять образами:
\begin{itemize}
\item выполнять их сборку
\item получать их список
\item удалять и запускать образы
\end{itemize}
Пример Dockerfile для создания образа для веб-сайта. Пример Dockerfile для создания образа для веб-сайта.
\begin{itemize} \begin{itemize}
@ -428,16 +422,21 @@ docker run -d tmp-ubuntu
\begin{verbatim} \begin{verbatim}
-v /home/docker_data:/usr/share/nginx/html -v /home/docker_data:/usr/share/nginx/html
-mount type=bind,source=/home/docker_data,destination=/usr/share/nginx/html -mount type=bind, \
source=/home/docker_data, \
destination=/usr/share/nginx/html
\end{verbatim} \end{verbatim}
Так выглядит запуск контейнера с проброшенной папкой: Так выглядит запуск контейнера с проброшенной папкой:
\begin{verbatim} \begin{verbatim}
docker run -d--name nginx_vol1 -v /home/docker_data:/usr/share/nginx/html:ro nginx docker run -d--name nginx_vol1
-v /home/docker_data:/usr/share/nginx/html:ro nginx
docker run -d--name nginx_vol2 \ docker run -d--name nginx_vol2 \
-mount type=bind,source=/home/docker_data,destination=/usr/share/nginx/html,ro nginx -mount type=bind, \
source=/home/docker_data, \
destination=/usr/share/nginx/html,ro nginx
\end{verbatim} \end{verbatim}
B mount мы используем следующие параметры: B mount мы используем следующие параметры:
@ -475,4 +474,48 @@ Macvlan. Контейнер подключается при помощи вир
Overlay. Использование этого драйвера позволяет строить сети на нескольких хостах с Docker (обычно на Docker Swarm кластере). У контейнеров также есть свои адреса сети и подсети, и они могут напрямую обмениваться данными, даже если они располагаются физически на разных хостах. Overlay. Использование этого драйвера позволяет строить сети на нескольких хостах с Docker (обычно на Docker Swarm кластере). У контейнеров также есть свои адреса сети и подсети, и они могут напрямую обмениваться данными, даже если они располагаются физически на разных хостах.
\section{Когда следует использовать контейнеры Docker?}
Переносимость приложений. Контейнеры могут выполняться практически везде: на Настольных компьютерах, физических серверах, в виртуальных машинах и в облаке. Такая совместимость со средами выполнения позволяет легко перемещать контейнерные приложения между разными средами. Так как контейнеры требуют меньше ресурсов, увеличение времени запуска или завершения работы сказывается на виртуальных машинах. Благодаря этому упрощается и ускоряется повторное развертывание.
Доставка приложений при использовании докер единицей распространения становится контейнер, благодаря этому происходит стандартизация.
Управление средами размещения. Среда для приложения настраивается внутри контейнера. Благодаря этому команда эксплуатации может более гибко управлять средой приложения. Можно также управлять тем, какие приложения следует установить, обновить или удалить, не затрагивая другие контейнеры. Каждый контейнер изолирован. Облачные развертывания.
Контейнеры Docker поддерживаются на многих облачных платформах.
\section{Когда НЕ следует использовать контейнеры Docker?}
использование ядро ОС хоста, которое может стать объектом атаки. для обеспечения безопасности нужно принимать во внимание конфигурацию хранения и сети, в некоторых случаях целесообразнее использовать виртуальные машины.
Управление контейнерами сложнее, чем ВМ, можем узнать состояние, но получить журнал за определённое время - не очень просто (\code{docker stats} это поток данных, поэтому их обработка и хранение не производится).
\section{docker-compose}
Надстройка над docker, применяется для многоконтейнерных приложений. позволяет запускать множество сервисов при помощи одной команды. docker применяется для управления отдельными контейнерами или сервисами. compose -- для одновременного управления несколькими контейнерами.
compose написан на python, конфигурация в yaml-файлах.
в составе docker desktop (Windows, mac) уже есть, на linux надо доставить руками.
докер-композ
нгинкс
докерфайл
пхп
докерфайл
ввв
индекс.хтмл
подменяем нгинкс.конф
докер-композ ямл - описывает процесс загрузки и настройки контейнеров.
Основные команды
\begin{itemize}
\item build -- сборка
\item up -- запуск
\item up -d -- запуск в фоне
\item down -- остановка и удаление
\item stop -- остановка сервисов
\item restart -- перезапуск
\end{itemize}
\end{document} \end{document}