Вход/Регистрация
Инженер 2.1
вернуться

Нерский Эд

Шрифт:

— Пойдём, не нужно больше здесь находиться. — сказал я поднимаясь — Я заменил свою маскировку и попросил Риту маскировать тебя.

— Риту?

— Рыбка, что у тебя на руке. Нам нужно отойти от этого места подальше и побыстрее. Пошли!

Ввиду понесённых потерь караван решил вернуться в Лоори. Люди собирали разбросанные вещи и мёртвые тела. В одну из телег грузили трупы и останки нападавших.

Нам предложили взять долю от артефактов, найденных при них, но мы отказались.

Нас не устраивало, то, что караван разворачивается, да и не хотелось отвечать на вопросы попутчиков, поэтому мы попрощались и двинулись в степь.

…

Я ехал и размышлял о наблюдении видящих. А что если здесь, в придуманных сценах или, как они называют, в астрале, можно не только видения строить? Может быть можно плести плетения? Или чародейским способом атаковать? Нужно попробовать потренироваться с Корой в паре. Для пробы я создал конструкта, который иногда думает о страшном зубастом крокодиле, который ходит на задних лапах, высматривая наблюдателей. Этот крокодил-тиранозавр питается теми, кто смотрит на него. Может быть вреда не нанесёт, так хоть напугает?

— Я не видела тебя во время боя, только результаты твоих действий. — напомнила о своём существовании Кора.

— Я же говорил, я оборотнем воевал. Нападающие тоже меня не видели и это сильно сбило их с толку.

— Странно это, я должна была тебя видеть.

— На самом деле, скорее всего, ты меня видела, но не думала, что это я. Или не смотрела вверх. Я летал над всем этим безобразием.

— Вот оно что! Наверное я правда не смотрела вверх. Куда мы едем?

— В Цехин. Наш план не изменился. Думаю ближе к нему можно будет найти другой караван. Да и мы так быстрее доберёмся. Ты подумала над моим предложением о поездке в Юрбэ?

— Да. Только надо решить как мне вернуться. Фургона нет.

— Чего проще? Возьми нож и нацарапай на седле своего лорга что-нибудь. Потом вернёшься к нему. Дать тебе пару телепортов?

— Нет. Только один. Если удастся у Инроргна получить телепорт, то я верну его тебе.

— Я не требую его возвращать. — сказал я.

— Я знаю. Ты ведёшь себя как демон, а должно быть наоборот…

— Тогда не будем медлить. Отправляйся прямо сейчас!

Немного повозившись, чтобы обеспечить себе возможность вернуться, Кора отправилась домой, а я привязал её лорга к седлу своего и поехал дальше.

Дорогой я занялся модификацией своих перфокарт. Нужно было сделать так, чтобы одна перфокарта могла использовать другую, как подпрограмму. У меня, увы, всё ещё не было полноценного компьютера.

Я сделал однобитный сумматор на одной перфокарте. Два цифровых входа, два цифровых выхода — результат и переполнение. Затем, сделал другую перфокарту, плетующую сто двадцать восемь таких сумматоров. Получился сумматор моего будущего ALU. После этого я сделал однобитную ячейку памяти и так же масштабировал её до регистра размером в сто двадцать восемь бит.

Поскольку, на начальном этапе я собираюсь делать процессор с минимальным набором команд, то экспериментальные сборки плетений я отлаживал не на ста двадцати восьми, а всего на четырёх битах.

Я решил, что все ядра моего будущего компьютера, как и Радио-86РК, будут тактироваться от многофазного генератора. Таким образом, никогда не будет ситуации, что в одну ячейку памяти придёт больше одного процессора и случится логическая гонка.

Тот кто посмотрит на мою архитектуру скажет: “это можно было бы сделать с одним ядром, работающем на большей частоте!”. И я соглашусь с ним. Да одно ядро, переключая свой контекст с задачи на задачу может делать то же самое. А мои ядра, по сути — это и есть аппаратная поддержка переключения контекста с задачи на задачу.

Поддержку прерываний я решил не делать и, таким образом, ядро моего CPU радикально упрощается.

Я сплёл четырёхбитный прототип шины данных, сделал регистр адреса и занялся мультиплексором, переключающим внутреннее содержимое ALU в зависимости от кода на входе. Это самая сложная и плохо масштабируемая часть.

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

Первая команда, которую я сделал — это загрузка адресного регистра значением. Фактически это команда перехода. JUMP по абсолютному адресу. Когда, спустя неделю, у меня получился процессор умеющий переходить по адресу, то я как ребёнок баловался программами “перейти по адресу 2, перейти по адресу 0”. Такая минимальная версия моего процессора, помещалась на двадцати семи металлических пластинках-перфокартах. Заменив константы в шести из них, я могу сделать из четырёхбитного компьютера сто двадцати восьми битный.

На плетение четырёхбитного одноядерного прототипа, умеющего выполнять только одну команду, мой Радио-86РК тратит около тридцати секунд. Это вместе с шестнадцатью ячейками памяти. Полноценный прототип будет, видимо, собираться значительно дольше, но зато потом он начнёт строить сам себя и наступит сингулярность развития моего вычислительного потенциала.

После команды JUMP я пришёл всё-таки к необходимости делать систему прерываний, либо придумывать альтернативу. Если мой процессор дойдёт до неизвестного кода команды, то хотелось бы иметь возможность писать программы-эмуляторы. Так же без прерываний не обойтись, если я захочу программно останавливать код на том или ином CPU. Вместо того, чтобы делать систему прерываний, я решил упростить себе жизнь и добавил ещё один регистр, куда копируется регистр адреса и программа после этого просто переходит в фиксированное место. Сейчас там нет никакой программы, но в будущем, по мере расширения моего ассемблера, я смогу вписать там эмулятор новой функциональности. Причина прерывания просто отображается в некоторых битах регистра адреса. Ещё в регистре статуса я выделил место под константу с версией моего процессора, её можно использовать при создании эмуляторов.

  • Читать дальше
  • 1
  • ...
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: