![]() |
Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Погрешность входного параметра
Вычисление тригонометрической функции синус происходит на интервале значений аргумента (-π/2, π/2). При этом ошибка датчиков равна 0.005, ошибка АЦП должна быть хотя бы на порядок меньше ошибки датчиков, поэтому возьмем равной 0.0005. Ошибка входного параметра складывается из ошибки датчика и ошибки АЦП:
Найдем величину максимальной неустранимой ошибки по следующей формуле: Возьмем производную от общего ряда (3):
Максимальный аргумент равен
Вычислим необходимую разрядность АЦП – Отсюда Погрешность метода Необходимо определить количество членов ряда, при которых ошибка разложения в ряд не будет превышать максимальную неустранимую ошибку, равную Ряд Тейлора имеет бесконечное количество членов, поэтому, отбросив несколько членов общего ряда (3) по очереди, мы внесем ошибку ограничения. Для всякого знакопеременного сходящегося ряда эта ошибка ограничения по модулю меньше первого отброшенного члена. Таким образом, ищем наименьшую ошибку, удовлетворяющую условию:
· · · · · · ·
Заметим, что после шестой степени условие Тогда можно ограничиться первыми пятью членами общего ряда (3): (5)
с погрешностью разложения:
Аналогично определяется количество используемых членов для общего ряда (4), учитывая, что максимально возможный аргумент:
(6) Общая ошибка для ряда Положим, что:
Исходные величины a1, a2, a3, a4, a5 имеют абсолютные ошибки округления Тогда:
Конечный ряд для вычисления функции синуса (5) может быть записан в общем виде как
, где a1…a5 – определенные ранее константы. Общую ошибку для ряда запишем следующим образом: Запишем ошибки для отдельных операций: Тогда конечное уравнение относительно Решив его при Теперь, зная разрядную сетку, уточним абсолютную ошибку округления коэффициентов: Зная n, вычислим абсолютные ошибки в вычислениях:
Вычисление суммарной ошибки машины Суммарная ошибка нашей машины:
Архитектура машины Наша машина может вычислять значения синуса в диапазоне К такому решению мы прибегли в связи с тем, что наша машина с фиксированной запятой, и она работает только со значениями аргументов, лежащими в диапазоне [-1;1] (так же данное решение позволяет снизить ошибку, связанную с разложением в ряд при большом значении аргумента). Но и при таком решении при углах больше Для того чтобы избежать переполнений в вычислениях при x > · для случая, когда аргумент лежит в интервале · для случая, когда аргумент лежит в интервале Аргумент x поступает в машину с коэффициентом масштабирования Все константы преобразуем в двоичный 13-и разрядный код. Все данные в двоичном представлении (13 знаков после запятой). В машине с инструкцией умножения используется 4 регистра, а в машине с заменой инструкции умножения, сдвигом и сложением - 7. В машине используется память с произвольным доступом. Она характеризуется содержимым, хранящимся в группе ячеек, и расположением (адресом) каждой ячейки. Так как за основу взята архитектура Фон-Неймана, то и программа, и данные располагаются в одной области памяти.
Регистры r3, Res, x, y – рабочие регистры. В них находится один из операндов команды, либо источник, либо адресат. Регистры r1, r2, r4 – регистры данных. Эти регистры выполняют две функции: · Хранят содержимое адресованного регистра данных, если ЦПУ осуществляет цикл чтения; · Хранят данные, которые ЦПУ собирается записать в адресованный регистр данных (цикл записи). Система команд Для случая, когда в машине реализована функция умножения:
Для случая, когда в машине функция умножения не реализована:
|
Последнее изменение этой страницы: 2019-05-08; Просмотров: 164; Нарушение авторского права страницы