Контроллер параллельной передачи данных и приема. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Контроллер параллельной передачи данных и приема.



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

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

Для формирования управляющего сигнала «Выходные данные готовы» и приема из ВУ управляющего сигнала «Данные приняты» в контроллере используется одноразрядный адресуемый регистр состояния и управле­ния А2. Одновременно с записью очередного байта данных из шины данных системного интерфейса в адресуемый регистр данных контроллера (порт вывода А1) в регистр состояния и управления записывается логическая единица. Тем самым формируется управляющий сигнал «Выходные данные готовы» в шине связи с ВУ.

ВУ, приняв байт данных, управляющим сигналом «Данные приняты» обнуляет регистр состояния контроллера. При этом формируются:

• управляющий сигнал системного интерфейса «Готовность ВУ»;

• признак готовности ВУ к обмену, передаваемый в процессор по одной из линий шины данных системного интерфейса посредством стандартной операции ввода при реализации программы асинхронного обмена.

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

Алгоритм асинхронного обмена в данном случае передачи прост.

1. Проверка готовности ВУ к приему данных.

Проверка содержимого регистра А2, т.е. готовности ВУ к приему данных. При выполнении команды процессор по шине адреса передает в контроллер адрес А2, сопровождая его сигналом «Ввод». Логика управления контроллера, реагируя на эти сигналы, обеспечивает передачу в процессор содержимого регистра состояния и управления А2 по одной из линий шины данных системного интерфейса

Процессор проверяет значение старшего (знакового) разряда принятого слова данных. Единица в старшем разряде (знак минус) указывает на неготовность ВУ к приему данных и, следовательно, на необходимость возврата к проверке содержимого А2, т.е. процессор, выполняя две первые команды, ожидает готовности ВУ к приему данных. Нуль в старшем разряде подтверждает готовность ВУ и, следовательно, возможность передачи байта данных.

2. Передача данных.

Процессор по шине адреса передает в контроллер адрес А1, а по шине данных — байт данных, сопровождая их сигналом «Вывод». Логика управления контроллера обеспечивает запись байта данных с шины данных в регистр данных А1 и устанавливает в 1 регистр состояния и управления А2, формируя тем самым управляющий сигнал для ВУ «Выходные данные готовы». ВУ принимает байт данных и управляющим сигналом «Данные при­няты» обнуляет регистр состояния и управления А2. Контроллер ВУ по этому сигналу формирует и передает в процессор сигнал «Готовность ВУ», который в данном случае извещает процессор о приеме байта данных внешним устройством и завершает цикл вывода данных в команде пересылки.

Взаимодействие устройств;

Внутри системного блока устройства взаимодействуют посредством обмена электрическими сигналами. Например, при перемещении мыши ее электроника передает сигналы ЦПУ. Когда модем принимает данные, он также передает сигналы ЦПУ и т.д.

Устройства, не встроенные в материнскую плату, отправляет ЦПУ сигналы по специальным линиям запроса на прерывание IRQ (interrupt-request) – уведомляя процессор, что требуется его внимание.

Название IRQ связано с тем, что при появлении на одной из линий сигнала, ЦПУ “прерывает” текущие операции, для обслуживания устройства, которое генерирует прерывание. Каждое устройство взаимосвязано с ЦПУ посредством прерываний, обладает собственной линией IRQ.
 

ПК поддерживает 16 линий IRQ. В табл.1 перечислены устройства, которые традиционно используют определенные линии IRQ.

Управление выводом на терминал.

Все видеосистемы используют буфера, в которые отображаются данные для изображения на экране. Экран периодически обновляется сканированием этих данных. Размер и расположение этих буферов меняется с системой, режимом экрана, а также количеством заранее отведенной памяти. Когда в буфере хранится несколько образов экрана, то каждый отдельный образ называют дисплейной страницей.

В текстовых режимах буфера начинаются с данных для верхней строки экрана, начиная с левого угла. Дальнейшие данные переносятся с правого конца одной строки на левый конец следующей, как будто экран представляется одной большой строкой - и с точки зрения видеобуфера так оно и есть. Однако в графических режимах буфер может быть разделен на 2 или 4 части.

При выводе текста различные видеосистемы работают одинаково. Для экрана отводится 4000 байтов, так что на каждую из 2000 позиций экрана приходится 2 байта (25 строк * 80 символов). Первый байт содержит код ASCII. Аппаратура дисплея преобразует номер кода ASCII в связанный с ним символ и посылает его на экран. Второй байт (байт атрибутов) содержит информацию о том, как должен быть выведен данный символ. Для монохромного дисплея он устанавливает будет ли данный символ подчеркнут, выделен яркостью или негативом, или использует комбинацию этих атрибутов. В цветовых системах байт атрибутов устанавливает основной и фоновый цвета символа. В любом случае Ваша программа может писать данные прямо в буфер терминала, что значительно повышает скорость вывода на экран. Все системы, кроме монохромной, предоставляют набор цветных графических режимов, которые отличаются как разрешением, так и числом одновременно выводимых цветов. При использовании 16 цветов каждая точка экрана требует четырех бит памяти, поскольку 4 бита могут хранить числа от 0 до 15. По аналогии, четырехцветная графика требует только 2 бита на точку. Двухцветная графика может упаковать представление восьми точек в один байт видеобуфера. Количество памяти, требуемое для данного режима экрана может быть легко вычислено, если известно количество выводимых в этом режиме точек и количество бит, необходимое для описания одной точки. Текст легко комбинируется с графикой (BIOS рисует символы на графическом экране) и Вы можете создавать свои специальные символы.

Обмен большими объемами данных с устройством.

Если устройства требуют обмена небольшими объемами информации, оно может взаимодействовать с обработчиком прерываний посредством портов ввода/вывода. Порт идеально подходит для мыши, которая движется предавая небольшой объем информации. (величина перемещения или щелчок, двойной щелчок – распознается по интервалу времени между двумя обычными щелчками). Устройства, которые обрабатываются большие массивы данных, такие как CD или винчестер обычно использует стандартные области памяти для хранения информации, которую привод читает или записывает. Начальный адрес такой области называется базовым адресом устройства. При установке нового устройства может возникнуть необходимость указать уникальный базовый адрес ОЗУ, которое не используются другими устройствами. Отобразить области памяти можно с помощью утилиты «Сведения о системе».

Прямой доступ к памяти DMA.

Как уже говорилось выше, устройства с помощью прерываний уведомляют ЦПУ о необходимости выполнения для них некоторых действий. Количество выполняемых операций зависит от типа устройства. Для процессора важно быстро завершить обработку прерывания, чтобы продолжать выполнение предыдущей задачи. Если прерывание сгенерировала мышь, ЦПУ обычно быстро завершает его обработку. Однако операции чтения/записи (R/W) дисковым накопителем требует передачи большого объема данных между ОЗУ и устройствам, что может потребовать значительных затрат времени процессора. Чтобы повысить эффективность использования ЦПУ разработали специальную микросхему DMA (direct memory access – прямой доступ к памяти)– называемую контроллер DMA. ЦПУ может контролирующую ее функционирование, чтобы обеспечить обмен данными между ОЗУ и устройством. Используя микросхему DMA для перемещения данных, ЦПУ упрощает себе задачу передачи каждого бита данных. Это позволяет ЦПУ выполнять другие задачи, пока микросхема DMA контролирует перемещение данных. Например, для чтения информации с диска в память ЦПУ может конфигурировать микросхему DMA, указав ей начальный адрес сектора, количество секторов и область памяти, которую данные должны занять. В свою очередь контроллер DMA будет выполнять операции с диском, пока ЦПУ занят другими задачами. Когда контроллер DMA завершит свою задачу, он посредством прерывания сообщит об этом ЦП. ЦП может проанализировать порты DMA, чтобы определить состояние выполняемой операции. Большинство современных ПК имеет 2 микросхемы DMA, которые подобно контроллеру прерываний функционируют каскадно. Устройства, которые используют DMA можно увидеть в “Сведения о системе”

Ресурсы аппаратуры \ -Канал DMA



Поделиться:


Последнее изменение этой страницы: 2016-08-15; просмотров: 481; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.6.75 (0.008 с.)