Образовательный портал «Кафедра онлайн» НИЯУ «МИФИ», Обнинск"

Компьютерные сказки

Е.В. Крылов, доцент ИАТЭ НИЯУ «МИФИ», Обнинск

Мысли назойливо лезут в голову, не позволяя спать. Встаю, ставлю чайник и включаю компьютер. Фонтан открыт.

Компьютерные сказки

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

Для взрослых детей и детей-взрослых.

Жил был валик. Его толкала жестокая пружинка и заставляла ворочаться. Валик был усеян крючочками, которые цепляли молоточки, которые били по мальчикам колокольчикам, которые говорили «Динь-Динь». Раздавалась музыка. Крючочки было можно передвигать, музыку было можно менять (программировать). Мои студенты ни разу не назвали первое «русское» описание компьютера, но Вы, уважаемый читатель, узнали сказку Одоевского (Городок в табакерке)?

Давайте нарисуем схему (рис.1) и присвоим квадратикам схемы странные имена. Страшное название ГТЧ означает «генератор тактовой частоты». Теперь перейдём к схеме «звезда», по которой была организована одна из первых советских ЭВМ М20.

Уважаемый читатель уже, конечно, увидел сходство.

Почему-то я написал ЭВМ (электронно-вычислительная машина). Хотя все говорят computer. Наверное, потому, в основе хранения и передачи данных лежат двоичные целые числа без знака.

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

Посмотрим, как можно передавать и хранить двоичные числа.

Перфокарта: кусок картона, на котором на пересечении строк и столбцов можно прорезать дырки (рис.3). Условимся, что наличие дырки соответствует единице, отсутствие нулю. Число можно располагать по строке и по столбцу. Предположим, что число располагается по столбцу. Реальная перфокарта содержала 12 строк и 80 столбцов. Из соображений простоты на рис. 3 показано 5 строк. Тогда первый столбец содержит число 10111.

На ЭВМ М20 и программы и данные вводились с перфокарт. Иногда дырки прорезались вручную. Выглядело это забавно.

Оперативная память была организована на ферритовых кольцах. Это кольцевой электромагнит, через который пропускался проводок с током. Существовало два направления намагниченности кольца. Одному направлению поставим в соответствие единицу, другому ноль. Конструкция позволяла устанавливать направление намагниченности и проверять его. Получались две операции: читать с сохранением состояния и записывать с автоматическим стиранием. Теперь соберём вместе n колец и назовём это ячейкой памяти (регистром). Получили возможность в ячейке хранить n-разрядное двоичное целое без знака. Перенумеруем ячейки памяти, начиная с нуля, и номер ячейки назовём адресом. Существует устройство, называемое контроллером оперативной памяти, которое способно по заданному адресу выполнять две операции: читать с сохранением состояния и записывать с автоматическим стиранием. Не ругайте меня за повтор, здесь придётся делать это часто. Данный метод носит название прямого доступа (RAM – random access method). Оперативная память ЭВМ М20 имела 4096 адресуемых слов, тем не менее на этом компьютере был создан до сих пор не превзойдённый по качественным характеристикам ?-транслятор.

Как Вы думаете, уважаемый читатель, откуда и как контроллер получает адрес и данные? Куда и как он направляет результат?

Теперь посмотрим, как можно хранить данные на магнитной поверхности. На рис.4. показаны маленькие участки поверхности, называемые доменами. Домен можно намагнитить, установив определённое направление намагниченности. Магнитные головки чтения/записи, размещаемые над поверхностью, могут устанавливать и проверять направление намагниченности домена. Будем считать, что с одним направлением связана единица, с другим – ноль. Получается, что домен может хранить двоичный разряд. Связывая вместе n доменов, получаем возможность хранить n-разрядное двоичное целое без знака.

Электронщики умеют делать электронное устройство «триггер», которое может долго находится в одном из двух состояний. Существуют электронные средства, позволяющие читать состояние триггера и устанавливать. Связав с одним из состояний значение единица, с другим ноль, получаем возможность хранить, записывать и считывать двоичный разряд. Соединим в одно устройство n разрядов, тогда в нашем распоряжении n-разрядный электронный регистр, хранящий n-разрядное целое двоичное без знака. Современная оперативная память строится на блоках электронных регистров. Принцип прямого доступа сохраняется. Однако сейчас ячейка памяти, как правило, восьмиразрядная и называется байтом. Один разряд байта носит имя «бит».

Посмотрим теперь передачу данных по каналам связи. Представим, что имеется токопроводящая нить (линия) (Рис. 5). На входе линии расположен передатчик, который может установить на линии высокое, либо низкое напряжение, на выходе приёмник, способный измерить напряжение. Расположив приёмник и передатчик на обоих концах линии, получим возможность двусторонней передачи.

Если высокое напряжение связать с единицей, а низкое с нулём, получим возможность передать по линии двоичный разряд. Однако этот метод имеет существенный недостаток. Линия занята, пока передатчик задаёт напряжение, пока электрическое поле распространяется по линии (со скоростью несколько меньшей скорости света в вакууме v<c), пока приёмник обрабатывает пришедший сигнал. В результате получаем низкую скорость передачи.

Значительно большей скоростью обладает импульсная передача (Рис. 6). Пусть имеется линия связи. Разместим вдоль неё напряжёметры (так говаривал незабвенный Борис Николаевич Самойлов). Вы, читатель, не знакомы с Борисом Николаевичем, но поверьте мне, это был Человек.

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

Итак! Передатчик на входе линии произвёл мгновенный скачёк напряжения. Назовём это передним фронтом. Электрическое поле со скоростью v поползло по линии. Через время ? волшебный передатчик мгновенно сбрасывает напряжение. По линии с той же скоростью v ползёт задний фронт. Время ? назовём шириной импульса. Поскольку фронты перемещаются по линии с одинаковой скоростью, ширина импульса сохраняется. Через некоторое время передний фронт доползает до первого напряжёметра. Отмечается скачёк напряжения. Через время ? приходит задний фронт, показание напряжёметра сбрасывается в ноль.

Отмечаем, что импульс прошёл через первый напряжёметр. Далее импульс приходит к волшебному приёмнику. Если связать наличие импульса с единицей, о отсутствие с нулём, получим возможность импульсной передачи двоичного разряда. Заметим, что импульс не занимает полностью линии, поэтому по линии могут проходить одновременно несколько импульсов (рис.7).

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

Объединив n линий в общее сказочное устройство, которое назовём «шиной», получим возможность передавать и принимать n-разрядное двоичное целое без знака. Вертикальную последовательность импульсов и пустых позиций назовём «пакетом». Каждый пакет содержит двоичное число. На рис. 8 показана пятиразрядная шина, по которой передаются числа 10111 01100 00001 10111.

Объединим на схеме линии в единое целое, добавим передатчик и приёмник, получим «канал». Где начало у кольца? Где начало шины? В сказке всё возможно. Предположим, что вход в шину возможен в любой её точке, где существует соединительное устройство, называемое «разъём» (рис. 10).

К разъёму можно подключить устройство двусторонней передачи, которое назовём «ПеПри».

Ох как должны посыпаться вопросы! Уважаемый читатель, у Вас нет вопросов? Тогда у меня будет вопрос. Вы помните, что расстояния между пакетами произвольны?

Скажите, как передать ноль? Ноль – это отсутствие импульсов по всем линиям! Как приёмник опознает, что пришёл пакет?

Продолжение следует.

1 комментарий

Похожие публикации
 
 

1 комментарий

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

 
 

Вы можете оставить комментарий

 





 
 

Выполните простое задание (антиспам). Картинки можно сибирать приблизительно, без точной подгонки фрагментов.


 
 
 

Наверх