Введение
Контрольная панель с использованием электрических шнуров
Плагин или панель управления (выбор термина зависит от области применения) представляет собой набор разъемов или гнезд (часто называемых концентраторами), в которые вставляются шнуры для замыкания электрической цепи. Панели управления иногда использовались для управления работой машин обработки данных с перфокарт, шифровальных машин и ранних компьютеров. Набор отверстий обычно размещается на плоской съемной панели, которую можно вставить в машину и прижать к массиву контактов. Это позволяет быстро переключать машину между различными задачами. Контакты на машине жестко соединены с различными устройствами, составляющими машину, такими как реле, счетчики, входы от каждой колонки считывателя карт, выходы в колонку перфоратора или позицию принтера и так далее. Соединения на плагине соединяют эти устройства для выполнения определенной функции, например, чтения карт и суммирования чисел, пробитых в группе столбцов. Современным аналогом может служить полевая программируемая вентильная матрица (FPGA), где плагин выполняет ту же функцию, что и слой проводников в FPGA.
Проводка панелей управления устройства записи
Оборудование для обработки перфокарт обычно конфигурировалось для выполнения конкретной задачи с помощью съемной панели управления. Электрические соединения различных компонентов в машине для обработки перфокарт выводились на панель, а соединения между ними определялись проводкой, при этом фактические соединения осуществлялись при вставке панели в машину и ее фиксации. Ближайшим современным аналогом, пожалуй, является полевая программируемая вентильная матрица (FPGA), где доступно фиксированное количество логических компонентов, а их схема соединений определяется пользователем. Подключение панели управления машиной для обработки перфокарт требовало знания компонентов машины и их временных ограничений. Компоненты большинства машин для обработки перфокарт были синхронизированы с вращающимся валом. Один оборот соответствовал одному циклу машины, в течение которого перфокарты перемещались с одной станции на другую, могла быть напечатана строка, начислена сумма и так далее. Циклы делились на точки в зависимости от того, когда строки на перфокарте оказывались под станцией чтения или пробивки. На большинстве машин карты подавались лицевой стороной вниз, сначала 9-м краем (нижним краем). Таким образом, первая точка в цикле карты соответствовала 9-му времени, вторая – 8-му времени и так далее до 0-го времени. Временные отметки от 9 до 0 назывались цифрами. За ними следовали 11-е и 12-е временные отметки, также известные как зоны. На станции чтения набор из 80 пружинных проволочных щеток прижимался к карте, по одной для каждого столбца (станция чтения 407, построенная без щеток, удерживала карту неподвижно и могла считывать карту несколько раз, каждый раз генерируя те же импульсы, что и станция с 80 пружинными щетками). Когда отверстие проходило под щеткой, щетка замыкала контакт с проводящей поверхностью под картой, которая была подключена к источнику электрической энергии, и генерировался электрический импульс, называемый в терминологии IBM "импульсом". Каждая щетка была подключена к отдельному контакту на панели управления, откуда ее можно было подключить к другому контакту по мере необходимости. Действие, вызванное импульсом на проводе, зависело от того, когда в цикле он произошел, что являлось простой формой мультиплексирования с разделением по времени. Таким образом, импульс, произошедший в 7-е время на проводе, подключенном к пробивному магниту 26-го столбца, пробивал отверстие в 7-й строке 26-го столбца. Импульс на том же проводе, произошедший в 4-е время, пробивал 4 в 26-м столбце. Импульсы, рассчитанные таким образом, часто исходили от щеток чтения, которые обнаруживали отверстия, пробитые в картах, когда они проходили под щетками, но такие импульсы также испускались другими схемами, такими как выходы счетчиков. Для алфавитно-цифровой печати требовались как импульсы зон, так и импульсы цифр. Оба могли быть отправлены по одному проводу, а затем разделены релейными схемами в зависимости от времени в цикле. Панель управления для каждого типа машины представляла выходные (выходные) и входные (входные) контакты в логической последовательности. Во многих местах два или более смежных общих контакта соединялись, что позволяло подключить к этому выходу или входу более одного провода. Некоторые группы контактов были соединены друг с другом, но не подключены к каким-либо внутренним схемам. Эти общие контакты могли использоваться для подключения нескольких проводов при необходимости. Также над панелью управления были доступны небольшие соединительные блоки, называемые разветвителями проводов, для соединения трех или четырех проводов. Несколько из них видны на фотографии панели IBM 402. Возможности и сложность компонентов машин для обработки перфокарт развивались в течение первой половины 20-го века и часто были специфичны для потребностей конкретного типа машины. Следующие группировки контактов были типичны для более поздних машин IBM: щетки для чтения, 80 выходных контактов, по одному для каждого столбца карты. В табуляторе могло быть две или три станции чтения, каждая из которых имела свой набор из 80 контактов. Воспроизводящий пробив мог иметь дополнительную станцию чтения после станции пробивки для проверки. Пробивные магниты. Машины, которые могли пробивать карты, такие как воспроизводящий пробив, имели входные контакты для каждого столбца карты. Импульс в одном из этих входов активировал электромагнит, который начинал пробивать отверстие в этом положении столбца. Печатные контакты, по одному контакту для каждой позиции печати. Импульсы к этим контактам управляли движением печатных планок или колес для установки правильного типового элемента под печатные молотки. 407 также имела выходы от каждого печатного колеса, которые затем могли подавать данные в счетчики для сложения или вычитания. Это гарантировало, что итоги всегда соответствовали напечатанному. Входные контакты счетчиков. Машина табулирования IBM, такая как серия 402 или 407, имела несколько доступных счетчиков разных размеров. (Например, IBM 402/403 имела четыре набора счетчиков с 2, 4, 6 и 8 цифрами, обозначенных как 2A, 2B, 2C, 2D, 4A, 4B и т. д.) Каждый счетчик имел два контакта управления счетчиком для указания либо сложения (плюс), либо вычитания (минус). Если ни один из них не был активирован, операция не выполнялась. Если было задано сложение, цифра импульса, подключенная к входному контакту счетчика, начинала вращение колеса счетчика. Он автоматически останавливался в 0-е время. Таким образом, импульс в 8-е время заставлял колесо продвигаться на 8 шагов, добавляя значение 8 к этому положению счетчика. Перенос внутри группы выполнялся автоматически. Контакты переноса позволяли соединять счетчики, что позволяло накапливать большие числа. Вычитание было более сложным и использовало арифметику в дополнительном коде. Выходные контакты итогов счетчика. Контакт "Итог" счетчика заставлял счетчик генерировать импульсы итогов, которые можно было подключить к позициям печати. После печати итога счетчик сбрасывался. Специальные схемы позволяли правильно печатать отрицательные значения, а не в дополнительном коде, и был предусмотрен специальный выход для печати соответствующего символа ("cr" или " ") рядом с числом, если оно было отрицательным. Сравнение. Простые схемы сравнения имели два входа и один выход, который генерировал импульс, когда импульсы поступали на входы в разное время. Некоторые машины, например, колляторы, могли определить, какое число больше, если они не равны. Машина табулирования могла сравнивать номер счета на последовательных картах и печатать итог, когда появлялся новый номер счета. Для функции сравнения IBM реализовала то, что сейчас называется логическим элементом XOR, используя встречные электромагниты. Если ни один из магнитов не был активирован или оба магнита были активированы одновременно, релейный якорь не двигался. Если был активирован только один магнит, якорь двигался и касался одного из двух контактов, расположенных по обе стороны. Два контакта были соединены внутренне и подключены к выходному контакту, указывающему на неравное сравнение. Распределители позволяли подключить выходной импульс к более чем одному входу, не создавая обратной цепи между входами. Эмиттеры представляли собой наборы из 12 выходных контактов, которые автоматически генерировали импульс в каждой указанной временной точке в цикле карты. Двенадцать выходных контактов были подключены к контактам поворотного переключателя, который вращался вместе с циклом карты. Таким образом, подключение 6-го выхода от эмиттера к входному контакту пробивного магнита приводило к пробиванию 6 в этой позиции. Эмиттеры могли использоваться для нанесения числового постоянного значения, например, даты, на каждую карту. Алфавитно-цифровые постоянные данные можно было создать, тщательно комбинируя импульсы цифр и зон. Более поздние машины, такие как 407, также имели полный набор алфавитно-цифровых эмиттеров, для использования которых требовалась только одна проводка. Селекторы направляли импульс от общего входа к одному из двух выходов в зависимости от того, был ли активирован релейный магнит. Использовалось много типов селекторов, которые отличались способом активации "подхватывающего" реле. В самом простом случае, входах немедленного действия (I), магнит активировался при получении импульса и оставался активированным в течение всего цикла. Более сложные селекторы, называемые пилотными селекторами, имели входной контакт D, который заставлял магнит селектора подхватываться на следующем цикле машины, и входной контакт X, который также задерживал, но активировался только импульсом 11 или 12. Задержка в один цикл была необходима, потому что в большинстве случаев к тому времени, когда импульс был обнаружен, было слишком поздно, чтобы надежно предпринять какие-либо действия в этом цикле. Соселекторы имели только i...
Read brushes, 80 exit hubs, one for each card column. A tabulating machine might have two or three read stations, each with its own set of 80 hubs. A reproducing punch might have an additional read station after the punch station for verification. Punch magnets Machines that could punch cards, such as a reproducing punch, had hub entries for each card column. An impulse to one of those entries triggered the electromagnet that initiated the punching of a hole at that column position. Print entries, one hub for each print position. Impulses to these entries controlled the motion of print bars or wheels to place the correct type element under the print hammers. The 407 also had exits from each print wheel that could then feed the counters for addition or subtraction. This insured that totals always matched what was printed. Counter entries. An IBM tabulating machine, such as the 402 or 407 series would have several counters available in different sizes. (For example, the IBM 402/403 had four sets each of 2, 4, 6 and 8 digit counters, labeled 2A, 2B, 2C, 2D, 4A, 4B etc.) Each counter had two counter control entries to specify either addition (plus) or subtraction (minus). If neither were pulsed, no operation was performed. If addition was commanded, a digit impulse wired from a column to a counter entry hub started the counter wheel turning. It stopped automatically at zero time. Thus a pulse at 8 time caused the wheel to advance 8 steps, adding the value 8 to that counter position. Carries within a group were performed automatically. Carry in and carry out hubs allowed counters to be coupled, permitting longer numbers to be accumulated. Subtraction was more complicated and used nines complement arithmetic. Counter total exits. A counter's Total entry hub caused that counter to emit total pulses which could be wired to print positions. After a total was printed, the counter was reset. Special circuits allowed negative values to be printed correctly, not as nines complements, and a special exit was provided to allow an appropriate symbol ("cr" or " ") to be printed next to the number when it was negative. Comparing. Simple comparing circuits had two entries and one exit that emitted a pulse whenever pulses arrived at the entries at different times. Some machines, e. g. collators, could detect which number was higher if they were not equal. A tabulating machine might compare the account number on successive cards and print a total when a new account number appeared. For the compare function, IBM implemented what would now be called a XOR gate using opposing electromagnets. If neither magnet was energized or both magnets were energized at the same time, the relay armature would not move. If only one magnet was energized, the armature would move and touch one of two contacts placed on either side. The two contacts were wired together internally and connected to an exit hub that indicated an unequal comparison. Distributors allowed an output pulse to be wired to more than one input without creating a back circuit between the inputs. Emitters were sets of 12 exit hubs that automatically generated a pulse at each specified time in the card cycle. The twelve exit hubs were wired to contacts on a rotary switch that turned with the card cycle. Thus wiring the 6 exit from an emitter to a punch magnet entry would cause a 6 to be punched at that position. Emitters might be used to put a numeric constant value, say a date, on every card. Alphanumeric constant data could be created by carefully combining digit and zone pulses. Later machines, such as the 407 also had a complete set of alphanumeric emitters that only required one wire to use. Selectors directed a pulse from a common entry to either of two outputs, depending on whether a relay magnet was energized. Many types of selectors were employed that differed in how the "pickup" relay was energized. In the simplest case, immediate (I) entries, the magnet was energized when a pulse was received and held for the remainder of the cycle. More complex selectors, called pilot selectors, had a D entry hub that caused the selector magnet to pick up on the next machine cycle, and X entry hub that also delayed but was only triggered by an 11 or 12 pulse. The one cycle delay was needed because in most cases, by the time a pulse was detected it was too late to reliably take action in that cycle. Co selectors had only an immediate input, but five sets of contacts and were typically triggered by a pilot selector's coupling exit, hence the names. Digit selectors were similar to emitters, with one exit hub for each cycle point, but they also had an entry hub that was switched to the successive exit hubs as the cycle progressed. A digit selector could be converted to a digit emitter by wiring its entry hub to a constant source of cycle pulses. But it could also be fed other signals and used to detect a particular digit. Wiring a first read brush to a digit selector's entry and connecting, say, its 4 exit to a pilot selector's D entry would cause that selector to transfer on the next read cycle if a 4 was punched in that first read brush's column. Column splits were relays that energized during only at 11 and 12 time, allowing digit pulses to be separated from zone pulses. Storage. Later machines such as the 407 and 602 could store several values for later use, by means of a mechanical device somewhat similar to an emitter, except it contained a sliding contact that determined at what time point an impulse was to be emitted. The contact slider was positioned electro mechanically when a value was stored, and stayed in position until the storage was cleared.
Цифровые машины
На знаменитой машине «Энигма» использовалась коммутационная панель, которая была несъемной. В этом случае коммутационная панель функционировала как «четвертый ротор» в механизме работы роторной машины. Соединения на коммутационной панели входили в состав «суточных настроек», определявших, какие роторы устанавливать в какие гнезда и какие соединения на панели следует выполнить. На практике коммутационная панель действительно повышала безопасность генерируемого шифра, но поскольку она не менялась с каждым нажатием клавиши, в отличие от роторов, её влияние было ограничено. См. Криптоанализ «Энигмы».
Первые компьютеры
Первая версия компьютера ENIAC программировалась с помощью кабелей, переключателей и панелей с разъемами. Кабельная сеть ENIAC позже была перенастроена для использования существующей памяти ROM таблиц функций в качестве программной памяти ROM (переключатели и панели продолжали использоваться в перенастроенном ENIAC). IBM 305 RAMAC использовал панель с разъемами для всех операций сравнения программ и всех операций ветвления. Другие панели управляли чтением и перфорацией карт, принтером и консольной пишущей машинкой. Многие периферийные устройства, например, IBM 711 и 716, для компьютеров IBM первого и второго поколений, включая серии IBM 700/7000 и IBM 650, были основаны на устройствах обработки перфокарт и включали панели с разъемами. Панели с разъемами оставались в использовании в специализированных компьютерах в течение некоторого времени, функционируя как память только для чтения (ROM), но при этом позволяя ручное перепрограммирование непосредственно на месте. Одним из примеров является компьютер Ferranti Argus, использовавшийся в ракете Bristol Bloodhound, который имел панель с разъемами, программируемую путем вставки небольших ферритовых стержней в слоты, фактически создавая ручную память только для чтения.