ИК1303. Трансцендентное
<img src="https://habrastorage.org/getpro/habr/upload_files/b5d/0a5/112/b5d0a511206df4f889761085fe7709b7.jpg" /><p>Я не вижу себя в качестве писателя. Но так случилось, что я столкнулся с прекрасным.</p><p>Занимаясь археологическими изысканиями в микрокоде МК-61, я задался вопросом: а как же деды запихали столько ума в такие ограниченные ресурсы, и даже без умножителей? Сейчас на целочисленном кортексе использование одной плавающей запятой приводит к взрыву прошивки (да, утрирую, но эмоционально оно так).</p><p>Если коротко: есть калькулятор МК-61 (1983). Внутри пять микросхем, которые соединены в однобитовую последовательную кольцевую шину: две памяти и три вычислителя со своей специализацией. Фактически они работают параллельно и синхронизируются через этот канал связи. Можно сказать, что это прообраз парадигмы NOC (network on chip) в современном железе применительно к FPGA.</p><p>Собственно о красоте. Чип ИК1303 (1980) отвечает за математические расчёты. В нём восемнадцать вычислительных операций: четыре бинарных (+ — * /) и четырнадцать F‑функций (10^x e^x lg ln arcsin arccos arctg sin cos tg sqrt x^2 x^y 1/x). Сверх них — обмен x<→y и служебные, видные только изнутри: нормализация, генератор констант, приведение угла.</p><p>Никаких CORDIC, никакой двоичной плавающей запятой! Но как?! Просто и изящно. Одна функция для большей части операций! ОДНА!</p> <a href="https://habr.com/ru/articles/1078478/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1078478#habracut">Читать о функции</a>
Read full article →