Площадка рядом с башней. Бак № 1

Площадка рядом с башней. Бак № 1

Сообщение Fouras » Вт окт 23, 2018 4:30 pm

Хорошо программистам, они отлично знают, что любой человек может накосячить на ровном месте и не надо держаться за косяки зубами.

Я думаю, ты спутал с синхронизацией внутреннего асинхронного выполнения с внешним синхроимпульсом. Либо с внутренним синхроимпульсом на повышенной частоте, но между АЛУ-блоками.

Subtractive algorithms calculate quotients directly, digit by digit.

Не знаю как аппаратно, но программно этот метод хорош на сверхбольших числах. Ну он просто красивый к тому же.
А софтварно в зависимости от диапазано либо кусочно-линейно+итерация а-ля по Ньютону, либо кусочно квадратичной аппроксимировать и добить итерацией. Итерацию можно довольно по-разному извращать.

Texas Instruments использовали аппроксимацию экспонентой, которую получили мухлежом с битами, а потом вот такая итерация:
i = 5;
do
x0 *= (1.5 - x * 0.5 * x0 * x0);
while (--i);
Аватара пользователя
Fouras
Старожил
Старожил
 
Сообщения: 7249
Зарегистрирован: Пн июн 12, 2017 1:23 am
Медали: 11
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение TailWind » Вт окт 23, 2018 5:24 pm

Аппаратно очень удобно побитно считать

Кроме умножения на 3, которое по сути x*2 + x
Вот этот сумматор на 53 разряда очень много времени съедает
Потому что там перенос, и получается критический путь в 53 логических элемента
Аватара пользователя
TailWind
Гуру
Гуру
 
Сообщения: 10946
Зарегистрирован: Ср апр 15, 2015 1:36 am
Медали: 5
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение Fouras » Вт окт 23, 2018 5:28 pm

TailWind писал(а):Аппаратно очень удобно побитно считать

Кроме умножения на 3, которое по сути x*2 + x
Вот этот сумматор на 53 разряда очень много времени съедает
Потому что там перенос, и получается критический путь в 53 логических элемента


DEC сделали свою Alpha хрен знает в каком году и там у них 64 бита за такт считались, если не ошибаюсь. Потому что внутреннее время процессора не обязано совпадать с тактовой частотой.
Аватара пользователя
Fouras
Старожил
Старожил
 
Сообщения: 7249
Зарегистрирован: Пн июн 12, 2017 1:23 am
Медали: 11
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение TailWind » Вт окт 23, 2018 5:41 pm

Да это наверно какие-нибудь ADD SUB XOR, OR, AND и тд
Эти можно в такт уложить

Но не с плавающей точкой сложные операции
Аватара пользователя
TailWind
Гуру
Гуру
 
Сообщения: 10946
Зарегистрирован: Ср апр 15, 2015 1:36 am
Медали: 5
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение Fouras » Вт окт 23, 2018 5:51 pm

TailWind писал(а):Да это наверно какие-нибудь ADD SUB XOR, OR, AND и тд
Эти можно в такт уложить

Но не с плавающей точкой сложные операции


Нет, умножение можно уложить. И укладывают. Проблемы с делением только.

Внутри считают блоками параллельно сдвиг-сложение, потом складывают блоки и все это внутри без синхронизации, синхронизация только внутри по готовности и потом ожидание внешнего такта синхронизации. Такая схема существовала по меньшей мере 30 лет назад.
Аватара пользователя
Fouras
Старожил
Старожил
 
Сообщения: 7249
Зарегистрирован: Пн июн 12, 2017 1:23 am
Медали: 11
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение TailWind » Вт окт 23, 2018 5:56 pm

Fouras писал(а): и все это внутри без синхронизации

Это как?
Защёлкивают то как промежуточные результаты?
Куда их защёлкивают?
Аватара пользователя
TailWind
Гуру
Гуру
 
Сообщения: 10946
Зарегистрирован: Ср апр 15, 2015 1:36 am
Медали: 5
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение TailWind » Вт окт 23, 2018 5:59 pm

А
Типа избыточностью берут?
Все 53 шага не последовательно выполняют на одном "сумматоре"
А делают 53 последовательных сумматора?
Которые за N-ное количество тактов что-то родят
И в этот момент их результат защёлкивают под клок
Последний раз редактировалось TailWind Вт окт 23, 2018 6:03 pm, всего редактировалось 2 раз(а).
Аватара пользователя
TailWind
Гуру
Гуру
 
Сообщения: 10946
Зарегистрирован: Ср апр 15, 2015 1:36 am
Медали: 5
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение Fouras » Вт окт 23, 2018 6:00 pm

TailWind писал(а):
Fouras писал(а): и все это внутри без синхронизации

Это как?
Защёлкивают то как промежуточные результаты?
Куда их защёлкивают?


На уровне транзисторов не знаю. Только на уровне фольклора:
Первый вариант: внутренняя частота намного больше внешней.
Второй вариант: название было типа "распространяющейся волны", там каждая операция висит и ждет сигнала готовности от предыдущей. Операции все аппаратные, и буквально распространяется волна вычислений по кристаллу.
Аватара пользователя
Fouras
Старожил
Старожил
 
Сообщения: 7249
Зарегистрирован: Пн июн 12, 2017 1:23 am
Медали: 11
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение Fouras » Вт окт 23, 2018 6:04 pm

TailWind писал(а):А
Типа избыточностью берут?
Все 53 шага не последовательно выполняют на одном "сумматоре"
А делают 53 последовательных сумматора?
Которые за N-ное количество тактов что-то родят
И в этот момент их под клок защёлкивают результат


Да, избыточностью.
Допустим, нам надо умножить два 8-и битных числа X и Y.
X = a+b*16
Y = c+d*16
X*Y = (a+b*16) * (c+d*16)
= (a*c) + (a*d*16) + (b*c*16) + (b*d*256)

Понятно, что сдвиги аппаратно просто проводами, это даже не рассматривается.
У нас 4 4-х битных умножителя работающих параллельно. Например, тупо таблично. Результат складывается сразу по готовности.
Аватара пользователя
Fouras
Старожил
Старожил
 
Сообщения: 7249
Зарегистрирован: Пн июн 12, 2017 1:23 am
Медали: 11
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение Буран » Вт окт 23, 2018 6:08 pm

Любопытно. Получается, что умножение можно распраллелить, а сложение - нет. Складывать 53-битные числа всё равно придётся последовательно - переносы-то накапливаются.
Аватара пользователя
Буран
КБ 'Грядущее'
КБ 'Грядущее'
 
Сообщения: 33333
Зарегистрирован: Чт сен 03, 2015 5:29 pm
Медали: 15
Пол: Мужской
Тип по психе-йоге: Лао-цзы (ЛВФЭ)
Профессия: проповедник неокосмизма

Площадка рядом с башней. Бак № 1

Сообщение Fouras » Вт окт 23, 2018 6:14 pm

Parf писал(а):Любопытно. Получается, что умножение можно распраллелить, а сложение - нет. Складывать 53-битные числа всё равно придётся последовательно - переносы-то накапливаются.

Как складывать за один такт научились давно. Переносы учитываются, но вовсе не обязательно с тактовой частотой процессора
Аватара пользователя
Fouras
Старожил
Старожил
 
Сообщения: 7249
Зарегистрирован: Пн июн 12, 2017 1:23 am
Медали: 11
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение TailWind » Вт окт 23, 2018 6:16 pm

Интересно
С умножением дела не имел

На самом деле все простейшие операции типа сложения, умножения, вычитания
Кроме деления, квадратного корня итд
Современные синтезаторы логических схем уже умеют сами делать
Они там встроены в виде библиотечных элементов. Или делаются по известным шаблонам
Ты просто пишешь a + b, а на выходе получаешь идеальный сумматор под твои запросы
С точки зрения площади на кристалле / скорости работы
Аватара пользователя
TailWind
Гуру
Гуру
 
Сообщения: 10946
Зарегистрирован: Ср апр 15, 2015 1:36 am
Медали: 5
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение Буран » Вт окт 23, 2018 6:22 pm

Я так понимаю, большая часть математических функций тоже считается в сопроцессоре? То есть всякие синусы-косинусы, экспоненты, логарифмы?
Аватара пользователя
Буран
КБ 'Грядущее'
КБ 'Грядущее'
 
Сообщения: 33333
Зарегистрирован: Чт сен 03, 2015 5:29 pm
Медали: 15
Пол: Мужской
Тип по психе-йоге: Лао-цзы (ЛВФЭ)
Профессия: проповедник неокосмизма

Площадка рядом с башней. Бак № 1

Сообщение TailWind » Вт окт 23, 2018 6:26 pm

Синусы конечно в FPU

Это же floating point
Аватара пользователя
TailWind
Гуру
Гуру
 
Сообщения: 10946
Зарегистрирован: Ср апр 15, 2015 1:36 am
Медали: 5
Пол: Мужской

Площадка рядом с башней. Бак № 1

Сообщение TailWind » Вт окт 23, 2018 6:29 pm

Parf писал(а):Любопытно. Получается, что умножение можно распраллелить, а сложение - нет. Складывать 53-битные числа всё равно придётся последовательно - переносы-то накапливаются.

Ты наверно плюсики не заметил в формуле )
Ну и MULT 4 гораздо больше места занимает чем SUM 2
Аватара пользователя
TailWind
Гуру
Гуру
 
Сообщения: 10946
Зарегистрирован: Ср апр 15, 2015 1:36 am
Медали: 5
Пол: Мужской

Пред.След.

Вернуться в Башня старца Фура

Кто сейчас на конференции

Зарегистрированные пользователи: GoGo [Bot], Google [Bot], Google Search Appliance, Neo, rtanya, vadimr, whoh, Yandex 3.0 [Bot], Yandex [Bot]