1Принципы организации оперативных блоков АЛУ процессора За чуть более чем четвертьвековую историю микропроцессоры прошли поистине гигантский путь. На сегодняшний день рекордные показатели принадлежат микропроцессорам Alpha 21264 фирмы DEC и составляют: 600 МГц, 15.2 миллиона транзисторов, 2 миллиарда операций в секунду и около 300 долларов соответственно. На сегодняшний день компьютеризация является одним из главных направлений научно-технического прогресса и концентрированным его выражением. В микропроцессорах - наиболее сложных микроэлектронных устройствах - воплощены самые передовые достижения инженерной мысли. Универсальные микропроцессоры предназначаются для применения в вычислительных системах : персональных ЭВМ, рабочих станциях, а в последнее время и в массово-параллельных супер-ЭВМ. Основной их характеристикой является наличие развитых устройств для эффективной реализации операций с плавающей точкой над 64 разрядными и более длинными операндами. Предназначаются в основном для проведения научно-технических расчетов. Цифровые сигнальные процессоры рассчитаны на обработку в реальном времени цифровых потоков, образованных путем оцифровывания аналоговых сигналов. Это обусловливает их сравнительно малую разрядность и преимущественно целочисленную обработку. Наибольшей специализацией и разнообразием функций обладают микроконтроллеры, используемые во встроенных системах управления, в том числе и в бытовых приборах. Общее число кристаллов с различными системами команд превышает 500, и все они, в силу существования изделий с их использованием, имеют свою устойчивую долю рынка. Центральный процессор в персональных компьютерах представляет собой микропроцессор, то есть построен на одной микросхеме (БИС,СБИС). В его состав входят: Центральное устройство управления - комплекс средств автоматического управления процессами передачи и обработки информации; Арифметико-логическое устройство - устройство, осуществляющее обработку информации и выработку признаков управляющих сигналов. Модули оперативной и постоянной памяти, связаны с микропроцессором напрямую. Остальные устройства ( монитор, клавиатура, накопители на магнитных носителях и т.д.) связаны с микропроцессором через контроллеры ввода-вывода, которые, в свою очередь, связаны с микропроцессором через системную шину. Микропроцессор является ядром ЭВМ. Он осуществляет обработку данных и функции управления системой. Логическая структура включает ряд функциональных средств: средства обработки информации локальная память средства управления системой и программами управление интерфейсом и каналами Структурно эти средства разбиваются на центральное устройство управления, АЛУ, внутреннюю память и управляющие устройства, связанные с конкретными устройствами вычислительной машины. Центральное устройство управления принимает и расшифровывает команды, формирует адреса команд и операндов, формирует последовательности управляющих сигналов и обеспечивает координацию работы всех функциональных узлов, посредством выработки синхронизирующих сигналов. Внутренняя память входит в состав первого уровня и связана с АЛУ и другими блоками центрального процессора непосредственно и имеет скорость работы соизмеримую со скоростью работы блоков процессора. Управляющая память входит в состав центрального устройства управления и относится к классу постоянной памяти. Регистровая память выполнена на триггерных элементах и входит в состав центрального процессора. Емкость ее невысока, скорость высокая, но меньше, чем у управляющей памяти. Основной характеристикой данного типа памяти является разрядность 2Структура системы программного обеспечения ВМ. Управляющие и обрабатывающие программы. 4 МАШИН И СИСТЕМ 1.1. Аппаратные и программные средства реализации алгоритмов Вычислительная машина (ВМ) - это искусственная инженерная система для автоматической обработки информации по заданному алгоритму. Как известно, средства реализации алгоритмов вычислений делятся на аппаратные и программные. Любая вычислительная структура (ВС) это совокупность указанных средств. Их соотношение определяется требованиями к производительности и стоимости ВС. Аппаратные средства реализуют какие-либо действия алгоритма одномоментно, без возможности дробления со стороны программиста. (Примеры аппаратной реализации: сумматоры, быстрые умножители, устройства для преобразования сигналов в реальном времени и т.д.) Программные средства – это совокупности инструкций по реализации вычислительного процесса с помощью аппаратных средств в соответствии с алгоритмом. Традиционно под программированием обычно понимают процедурное программирование – задание последовательности действий по реализации алгоритма, причем действия происходят последовательно во времени. В то же время «программировать» решение задачи можно и структурно, пользуясь заданным набором аппаратных средств, в этом случае программирование – это указание путей следования потоков данных от одних аппаратных средств к другим. (Термин «структурное программирование» в литературе по вычислительной технике обычно используется для указания на определенную методологию разработки программного обеспечения, подразумевающую нисходящее проектирование системы, использование только основных управляющих конструкций, отказ от операторов GOTO и т.д. В данном контексте «структурное программирование» означает программирование в пространстве аппаратных структур.) Структурное программирование еще называют «аппаратурно-ориентированным». Программирование структуры и процедурное программирование не являются взаимоисключающими подходами, как правило, они дополняют друг друга. При программной реализации алгоритма вычислительный процесс организуется как последовательность процедур, выполняемых поочерёдно во времени на одном операционном устройстве (ОУ). Такое процедурное представление алгоритма удобно оформлять в виде блок-схемы алгоритма. При аппаратурной реализации алгоритма вычислительный процесс разворачивается в пространстве операционных блоков, соединённых между собой в соответствии с потоковым графом алгоритма и работающих параллельно во времени. На рис. 1.1 показаны два варианта представления алгоритма, а на рис. 1.2 – два варианта его реализации. Очевидно, что во втором случае отпадает необходимость в программной памяти, так как программа вычислений заменяется схемой соединений операционных блоков. 3Физический и электрический интерфейс Стандарт IEEE 1284 определяет физические характеристики приемников и передатчиков сигналов. К передатчикам предъявляются следующие требования: Уровни сигналов без нагрузки не должны выходить за пределы -0,5... +5,5 В. Уровни сигналов при токе нагрузки 14 мА должны быть не ниже +2,4 В для высокого уровня (voh) и не выше +0,4 В для низкого уровня (vol) на постоянном токе. Выходной импеданс ro, измеренный на разъеме, должен составлять 50(±)5 Ом на уровне voh-vol. Для обеспечения заданного импеданса в некоторых случаях используют последовательные резисторы в выходных цепях передатчика. Согласование импеданса передатчика и кабеля снижает уровень импульсных помех. Скорость нарастания (спада) импульса должна находиться в пределах 0,05-0,4 В/нс. Требования к приемникам: Допустимые пиковые значения сигналов -2,0...+7,0. Пороги срабатывания должны быть не выше 2,0 В (vih) для высокого уровня и не ниже 0,8 В (vil) для низкого. Приемник должен иметь гистерезис в пределах 0,2-1,2 В. Входной ток микросхемы не должен превышать 20 мкА. Входная емкость не должна превышать 50 пФ. Стандарт IEEE 1284 определяет три типа используемых разъемов. Типы Л (DB-25) и В (Centronics-36) используются в традиционных кабелях подключения принтера, тип С — новый малогабаритный 36-контактный разъем. Интерфейсные кабели, традиционно используемые для подключения принтеров, обычно имеют от 18 до 25 проводников, в зависимости от числа проводников цепи GND. Стандарт IEEE 1284 регламентирует и свойства кабелей: Все сигнальные линии должны быть перевитыми с отдельными обратными (общими) проводами. Каждая пара должна иметь импеданс 62(±)6 Ом в частотном диапазоне 4-16 МГц. Уровень перекрестных помех между парами не должен превышать 10%. Кабель должен иметь экран (фольгу), покрывающий не менее 85% внешней поверхности. На концах кабеля экран должен быть окольцован и соединен с контактом разъема. Кабели, удовлетворяющие этим требованиям, маркируются надписью IЕЕЕ Std 1284-1994 Compliant”. Они могут иметь длину до 10 метров. Режимы передачи данных Стандарт IEEE 1284 определяет пять режимов обмена, один из которых полностью соответствует традиционному стандартному программно-управляемому выводу по протоколу Centronics. Остальные режимы используются для расширения функциональных возможностей и повышения производительности интерфейса. Стандарт определяет способ согласования режима, по которому программное обеспечение может определить режим, доступный и хосту (в нашем случае это PC), и периферийному устройству. Режимы нестандартных портов, реализующих протокол обмена Centronics аппаратно (“Fast Centronics, “Parallel Port FIFO Mode”), могут и не являться режимами IEE1284, несмотря на наличие в них черт ЕРР и ЕСР. При описании режимов обмена фигурируют следующие понятия: Хост — компьютер, обладающий параллельным портом. ПУ — периферийное устройство, подключаемое к этому порту (им может оказаться и другой компьютер). обозначениях сигналов Ptr обозначает передающее периферийное устройство. Прямой канал — канал вывода данных от хоста в ПУ. Обратный канал канал ввода данных в хост из ПУ. CR.2 — Init — нулевое значение бита соответствует низкому уровню на выходе Imt# (16) — сигнал аппаратного сброса принтера. CR.1 — Auto LF — единичное значение бита соответствует низкому уров­ню на выходе Auto LF# (14) — сигналу на автоматический перевод строки (LF — Line Feed) по приему байта возврата каретки (CR — Carriage Return). CR.O —Strobe — единичное значение бита соответствует низкому уровню на выходе Strobeff (1) — сигналу стробирования выходных данных. Запрос аппаратного прерывания (обычно IRQ7 или IRQ5) вырабатывается по отрицательному перепаду сигнала на выводе 10 разъема интерфейса (АСК#) при установке CR.4=1. Прерывание вырабатывается, когда принтер подтвер­ждает прием предыдущего байта. Процедура вывода байта по интерфейсу Centronics через стандартный порт включает следующие шаги (в скобках приведено требуемое количество шинных операций процессора): Вывод байта в регистр данных (1 цикл IOWR#). Ввод из регистра состояния и проверка готовности устройства (бит SR.7 — сигнал BUSY). По получении готовности выводом в регистр управления устанавливается строб данных, а следующим выводом строб снимается (2 цикла lOWRff). Стандартный порт сильно асимметричен — при наличии 12 линий (и бит), нормально работающих на вывод, на ввод работает только 5 линий состояния. Если необходима симметричная двунаправленная связь, на всех стандартных портах работоспособен режим полубайтного обмена — Nibble Mode. В этом режи­ме, называемым также и Hewlett Packard Bitronics, одновременно передаются 4 бита данных, пятая линия используется для квитирования. Функции BIOS для LPT-порта BIOS обеспечивает поддержку LPT-порта, необходимую для организации вы­вода по интерфейсу Centronics. В процессе начального тестирования POST BIOS проверяет наличие парал­лельных портов по адресам ЗВСЬ, 378h и 278h и помещает базовые адреса обнаруженных портов в ячейки BIOS DATA AREA 0:0408h, 040Ah, 040СП, 040ЕП. Эти ячейки хранят адреса портов с логическими именами LPT1-LPT4. В ячейки 0:0478, 0479, 047А, 047В заносятся константы, задающие выдержку тайм-аута для этих портов. Поиск портов обычно ведется по базовому адресу. Если считанный байт совпал с записанным, считается, что найден LPT-порт, и его адрес помещают в ячейку BIOS DATA AREA. Адрес порта LPT4 BIOS самостоятельно установить не может, поскольку в списке стандартных адресов поиска имеются только три вышеука­занных. Обнаруженные порты инициализируются — записью в регистр управления формируется и снимается сигнал Initff, после чего записывается значение 00h, соответствующее исходному состоянию сигналов интерфейса. Программное прерывание BIOS I NT 17h обеспечивает следующие функции поддержки LPT-порта: 00h — вывод символа из регистра AL по протоколу Centronics. Данные помещаются в выходной регистр и после готовности принтера формируется строб. 01h — инициализаия интерфейса и принтера. 02h — опрос состояния принтера. При вызове INT 17h номер функции задается в регистре АН, номер порта — в регистре DX (0 — LPT1, 1 — LPT2...). При возврате после любой функции регистр АН содержит код состояния — биты регистра состояния SR[7:3] (биты 6 и 3 инвертированы) и флаг тайм-аута в бите 0. Флаг тайм-аута устанавливается при неудачной попытке вывода символа. Расширения параллельного порта Недостатки стандартного порта частично устраняют новые типы портов, поя­вившихся в компьютерах семейства PS/2. Двунаправленный порт 1 (Typel parallel port) — интерфейс, введенный с PS/2. Такой порт кроме стандартного режима может работать в режиме ввода или двунаправленном. Протокол обмена формируется программно, а для указания направления передачи в регистр управления порта введен специальный бит: при CR.5=0 буфер данных работает на вывод, при CR.5=1 — на ввод. Порт с прямым доступом к памяти (Type 3 DMA parallel port) применялся в PS/2 моделей 57, 90, 95. Этот тип был введен для повышения пропускной способности и разгрузки процессора при выводе на принтер. Программе, рабо­тающей с данным портом, требовалось только задать блок данных в памяти, подлежащих выводу, и вывод по протоколу Centronics производился без участия процессора. Физический и электрический интерфейс Стандарт IEEE 1284 определяет физические характеристики приемников и пе­редатчиков сигналов. К передатчикам предъявляются следующие требования: Уровни сигналов без нагрузки не должны выходить за пределы -0,5... +5,5 В. Уровни сигналов при токе нагрузки 14 мА должны быть не ниже +2,4 В для высокого уровня (voh) и не выше +0,4 В для низкого уровня (vol) на постоянном токе. Выходной импеданс ro, измеренный на разъеме, должен составлять 50(±)5 Ом на уровне voh-vol. Для обеспечения заданного импеданса в некоторых случаях используют последовательные резисторы в выходных цепях передатчика. Согласование импеданса передатчика и кабеля снижа­ет уровень импульсных помех. Скорость нарастания (спада) импульса должна находиться в пределах 0,05-0,4 В/нс. Требования к приемникам: Допустимые пиковые значения сигналов -2,0...+7,0. Пороги срабатывания должны быть не выше 2,0 В (vih) для высокого уровня и не ниже 0,8 В (vil) для низкого. Приемник должен иметь гистерезис в пределах 0,2-1,2 В. Входной ток микросхемы не должен превы­шать 20 мкА. Входная емкость не должна превышать 50 пФ. Стандарт IEEE 1284 определяет три типа используемых разъемов. Типы Л (DB-25) и В (Centronics-36) используются в традиционных кабелях подклю­чения принтера, тип С — новый малогабаритный 36-контактный разъем. Интерфейсные кабели, традиционно используемые для подключения принте­ров, обычно имеют от 18 до 25 проводников, в зависимости от числа провод­ников цепи GND. Стандарт IEEE 1284 регламентирует и свойства кабелей: Все сигнальные линии должны быть перевитыми с отдельными обратны­ми (общими) проводами. Каждая пара должна иметь импеданс 62(±)6 Ом в частотном диапазоне 4-16 МГц. Уровень перекрестных помех между парами не должен превышать 10%. Кабель должен иметь экран (фольгу), покрывающий не менее 85% внеш­ней поверхности. На концах кабеля экран должен быть окольцован и со­единен с контактом разъема. Кабели, удовлетворяющие этим требованиям, маркируются надписью IЕЕЕ Std 1284-1994 Compliant». Они могут иметь длину до 10 метров. Режимы передачи данных Стандарт IEEE 1284 определяет пять режимов обмена, один из которых пол­ностью соответствует традиционному стандартному программно-управляемому выводу по протоколу Centronics. Остальные режимы используются для расшире­ния функциональных возможностей и повышения производительности интерфей­са. Стандарт определяет способ согласования режима, по которому программное обеспечение может определить режим, доступный и хосту (в нашем случае это PC), и периферийному устройству. Режимы нестандартных портов, реализующих протокол обмена Centronics аппаратно («Fast Centronics, «Parallel Port FIFO Mode»), могут и не являться режимами IEE1284, несмотря на наличие в них черт ЕРР и ЕСР. При описании режимов обмена фигурируют следующие понятия: Хост — компьютер, обладающий параллельным портом.