- Компьютерная Энциклопедия
- Архитектура ЭВМ
- Компоненты ПК
- Интерфейсы
- Мини блог
- Самое читаемое
- Введение
- Параллельные и последовательные интерфейсы
- Общая информация параллельных и последовательных интерфейсов
- Скорость передачи данных интерфейсов
- Повышения пропускной способности параллельных интерфейсов
- Повышения пропускной способности последовательных интерфейсов
- Шина параллельной передачи данных
- 🔥 Видео
Видео:Передача данных - шина SPIСкачать
Компьютерная Энциклопедия
Архитектура ЭВМ
Компоненты ПК
Интерфейсы
Мини блог
Самое читаемое
Видео:2020весна ЦУиМП Параллельная шинаСкачать
Введение
Видео:03. Основы устройства компьютера. Память и шина. [Универсальный программист]Скачать
Параллельные и последовательные интерфейсы
Видео:Цифровые интерфейсы и протоколыСкачать
Общая информация параллельных и последовательных интерфейсов
Для компьютеров и связанных с ним устройств наиболее распространенной является задача передачи дискретных данных, и, как правило, в значительных количествах (не один бит). Самый распространенный способ представления данных сигналами — двоичный: например, условно высокому (выше порога) уровню напряжения соответствует логическая единица, низкому — логический ноль (возможно и обратное представление). Для того чтобы передавать группу битов, используются два основных подхода к организации интерфейса:
- параллельный интерфейс — для каждого бита передаваемой группы используется своя сигнальная линия (обычно с двоичным представлением), и все биты группы передаются одновременно за один квант времени. Примеры: параллельный порт подключения принтера (LPT-порт, 8 бит), интерфейс ATA/ATAPI (16 бит), SCSI (8 или 16 бит), шина PCI (32 или 64 бита);
- последовательный интерфейс — используется лишь одна сигнальная линия, и биты группы передаются друг за другом по очереди; на каждый из них отводится свой квант времени (битовый интервал). Примеры: последовательный коммуникационный порт (COM-порт), последовательные шины USB и FireWire, PCI Express, интерфейсы локальных и глобальных сетей.
На первый взгляд организация параллельного интерфейса проще и нагляднее и этот интерфейс обеспечивает более быструю передачу данных, поскольку биты передаются сразу пачками. Очевидный недостаток параллельного интерфейса — большое количество проводов и контактов разъемов в соединительном кабеле (по крайней мере по одному на каждый бит). Отсюда громоздкость и дороговизна кабелей и интерфейсных цепей устройств, с которой мирятся ради вожделенной скорости. У последовательного интерфейса приемопередающие узлы функционально сложнее, зато кабели и разъемы гораздо проще и дешевле. Понятно, что на большие расстояния тянуть многопроводные кабели параллельных интерфейсов неразумно (и невозможно), здесь гораздо уместнее последовательные интерфейсы.
Видео:Лекция 292. Блокировка ошибок параллельной передачиСкачать
Скорость передачи данных интерфейсов
Теперь подробнее разберемся со скоростью передачи данных. Очевидно, что она равна числу бит, передаваемых за квант времени, деленному на продолжительность кванта. Для простоты можно оперировать тактовой частотой интерфейса — величиной, обратной длительности кванта. Это понятие естественно для синхронных интерфейсов, у которых имеется сигнал синхронизации (clock), определяющий возможные моменты возникновения всех событий (смены состояния). Для асинхронных интерфейсов можно воспользоваться эквивалентной тактовой частотой — величиной, обратной минимальной продолжительности одного состояния интерфейса. Теперь можно сказать, что максимальная (пиковая) скорость передачи данных равна произведению тактовой частоты на разрядность интерфейса. У последовательного интерфейса разрядность 1 бит, у параллельного она соответствует числу параллельных сигнальных цепей передачи битов данных. Остаются вопросы о достижимой тактовой частоте и разрядности. И для последовательного, и для параллельного интерфейсов максимальная тактовая частота определяется достижимым (при разумной цене и затратах энергии) быстродействием приемопередающих цепей устройств и частотными свойствами кабелей. Здесь уже очевидны выгоды последовательного интерфейса: для него, в отличие от параллельного интерфейса, затраты на построение высокоскоростных элементов не приходится умножать на разрядность.
В параллельном интерфейсе существует явление перекоса (skew), существенно влияющее на достижимый предел тактовой частоты. Суть его в том, что сигналы, одновременно выставленные на одной стороне интерфейсного кабеля, доходят до другого конца не одновременно из-за разброса характеристик цепей. На время прохождения влияет длина проводов, свойства изоляции, соединительных элементов и т. п. Очевидно, что перекос (разница во времени прибытия) сигналов разных битов должен быть существенно меньше кванта времени, иначе биты будут искажаться (путаться с одноименными битами предшествующих и последующих посылок). Вполне понятно, что перекос ограничивает и допустимую длину интерфейсных кабелей: при одной и той же относительной погрешности скорости распространения сигналов на большей длине набегает и больший перекос. Перекос сдерживает и увеличение разрядности интерфейса: чем больше используется параллельных цепей, тем труднее добиться их идентичности. Из-за этого даже приходится «широкий» (многоразрядный) интерфейс разбивать на несколько «узких» групп, для каждой из которых используются свои управляющие сигналы. В 90-х годах в схемотехнике приемопередающих узлов стали осваиваться частоты в сотни мегагерц и выше, то есть длительность кванта стала измеряться единицами наносекунд. Достичь соизмеримо малого перекоса можно лишь в пределах жестких компактных конструкций (печатная плата), а для связи отдельных устройств кабелями длиной в десятки сантиметров пришлось остановиться на частотах, не превышающих десятков мегагерц. Для того чтобы ориентироваться в числах, отметим, что за 1 нс сигнал пробегает по электрическому проводнику порядка 20–25 см. Наносекунда — это период сигнала с частотой 1 ГГц.
Читайте также: Зимняя шина nitto terma spike
Повышения пропускной способности параллельных интерфейсов
Для повышения пропускной способности параллельных интерфейсов с середины 90-х годов стали применять двойную синхронизацию DDR (Dual Data Rate). Ее идея заключается в выравнивании частот переключения информационных сигнальных линий и линий стробирования (синхронизации). В «классическом» варианте данные информационных линий воспринимаются только по одному перепаду (фронту или спаду) синхросигнала, что удваивает частоту переключения линии синхросигнала относительно линий данных. При двойной синхронизации данные воспринимаются и по фронту, и по спаду, так что частота смены состояний всех линий выравнивается, что при одних и тех же физических параметрах кабеля и интерфейсных схем позволяет удвоить пропускную способность. Волна этих модернизаций началась с интерфейса ATA (режимы UltraDMA) и прокатилась уже и по SCSI (Ultra160 и выше), и по памяти (DDR SDRAM). Кроме того, на высоких частотах применяется синхронизация от источника данных (Source Synchronous transfer): сигнал синхронизации, по которому определяются моменты переключения или действительности (валидности) данных, вырабатывается самим источником данных. Это позволяет точнее совмещать по времени данные и синхронизующие импульсы, поскольку они распространяются по интерфейсу параллельно в одном направлении. Альтернатива — синхронизация от общего источника (common clock) — не выдерживает высоких частот переключения, поскольку здесь в разных (пространственных) точках временные соотношения между сигналами данных и сигналами синхронизации будут различными.
Повышение частоты переключений интерфейсных сигналов, как правило, сопровождается понижением уровней сигналов, формируемых интерфейсными схемами. Эта тенденция объясняется энергетическими соображениями: повышение частоты означает уменьшение времени, отводимого на переключения сигналов. Чем выше амплитуда сигнала, тем выше должна быть скорость нарастания сигнала и, следовательно, выходной ток передатчика. Повышение выходного тока (импульсного!) нежелательно по разным причинам: большие перекрестные помехи в параллельном интерфейсе, необходимость применения мощных выходных формирователей, повышенное тепловыделение. Тенденцию снижения напряжения можно проследить на примере порта AGP (3,3/1,5/0,8 В), шин PCI/PCI-X (5/3,3/1,5 В), SCSI, шин памяти и процессоров.
Повышения пропускной способности последовательных интерфейсов
В последовательном интерфейсе явления перекоса отсутствуют, так что повышать тактовую частоту можно вплоть до предела возможностей приемопередающих цепей. Конечно, есть ограничения и по частотным свойствам кабеля, но изготовить хороший кабель для одной сигнальной цепи гораздо проще, чем для группы цепей. А когда электрический кабель уже «не тянет» требуемые частоту и дальность, можно перейти на оптический, у которого есть в этом плане огромные, еще не освоенные «запасы прочности». Устраивать же параллельный оптический интерфейс — слишком дорогое удовольствие.
Вышеприведенные соображения объясняют современную тенденцию перехода на последовательный способ передачи данных.
Видео:Как работает LIN шина автомобиля. K-Line L-Line шины данных. Лин шина автомобиля. Lin-bus networkСкачать
Шина параллельной передачи данных
Параллельная передача данных между контроллером и ВУ является по своей организации наиболее простым способом обмена. Для организации параллельной передачи данных помимо шины данных, количество линий в которой равно числу одновременно передаваемых битов данных, используется минимальное количество управляющих сигналов.
В простом контроллере ВУ, обеспечивающем побайтную передачу данных на внешнее устройство (рис. 3.5), в шине связи с ВУ используются всего два управляющих сигнала: «Выходные данные готовы» и «Данные приняты».
Рис. 3.5. Простой параллельный контроллер вывода.
Для формирования управляющего сигнала «Выходные данные готовы» и приема из ВУ управляющего сигнала «Данные приняты» в контроллере используется одноразрядный адресуемый регистр состояния и управления А2 (обычно используются раздельные регистр состояния и регистр управления). Одновременно с записью очередного байта данных с шины данных системного интерфейса в адресуемый регистр данных контроллера (порт вывода А1) в регистр состояния и управления записывается логическая единица. Тем самым формируется управляющий сигнал «Выходные данные готовы» в шине связи с ВУ.
Читайте также: Легкосплавные диски 15 с шинами 185 65 r15
ВУ, приняв байт данных, управляющим сигналом «Данные приняты» обнуляет регистр состояния контроллера. При этом формируются управляющий сигнал системного интерфейса «Готовность ВУ» и признак готовности ВУ к обмену, передаваемый в процессор по одной из линий шины данных системного интерфейса посредством стандартной операции ввода при реализации программы асинхронного обмена.
Логика управления контроллера обеспечивает селекцию адресов регистров контроллера, прием управляющих сигналов системного интерфейса и формирование на их основе внутренних управляющих сигналов контроллера, формирование управляющего сигнала системного интерфейса «Готовность ВУ». Для сопряжения регистров контроллера с шинами адреса и данных системного интерфейса в контроллере используются соответственно приемники шины адреса и приемопередатчики шины данных.
Рассмотрим на примере, каким образом контроллер ВУ обеспечивает параллельную передачу данных в ВУ под управлением программы асинхронного обмена. Алгоритм асинхронного обмена в данном случае передачи прост.
1. Процессор микроЭВМ проверяет готовность ВУ к приему данных.
2. Если ВУ готово к приему данных (в данном случае это логический 0 в нулевом разряде регистра А2), то данные передаются с шины данных системного интерфейса в регистр данных А1 контроллера и далее в ВУ. Иначе повторяется п. 1.
Пример 2.1. Фрагмент программы передачи байта данных в асинхронном режиме с использованием параллельного контроллера ВУ (рис. 3.5). Для написания программы асинхронной передачи воспользуемся командами процессора 8086.
MOV | DX, A2 | номер порта A2 помещаем в DX |
m1:IN | AL, DX | чтение байта из порта A2 |
TEST | AL, 1 | проверка нулевого состояния регистра A2 |
JNS | ml | переход на метку ml если разряд не нулевой |
MOV | AL, 64 | выводимый байт данных помещается в AL |
MOV | DX, A1 | номер порта A1 записываем в DX |
OUT | DX, AL | содержимое регистра AX передаем в порт A1 |
Команда во второй строке приводит к следующим действиям. При ее выполнении процессор по шине адреса передает в контроллер адрес А2, сопровождая его сигналом «Ввод» (IORD#; здесь и далее в скобках указаны сигналы на шине ISA). Логика управления контроллера, реагируя на эти сигналы, обеспечивает передачу в процессор содержимого регистра состояния А2 по шине данных системного интерфейса.
Команда в третьей строке приводит к следующим действиям. Процессор проверяет значение соответствующего разряда принятых данных. Нуль в этом разряде указывает на неготовность ВУ к приему данных и, следовательно, на необходимость возврата к проверке содержимого А2, т. е. процессор, выполняя три первые команды, ожидает готовности ВУ к приему данных. Единица в этом разряде подтверждает готовность ВУ и, следовательно, возможность передачи байта данных.
В седьмой строке осуществляется пересылка данных из регистра AX процессора в регистр данных контроллера А1. Процессор по шине адреса передает в контроллер адрес А1, а по шине данных — байт данных, сопровождая их сигналом «Вывод» (IOWR#). Логика управления контроллера обеспечивает запись данных с шины данных в регистр данных А1 и устанавливает в ноль бит готовности регистра состояния А2, формируя тем самым управляющий сигнал для ВУ «Выходные данные готовы». ВУ принимает байт данных и управляющим сигналом «Данные приняты» устанавливает в единицу регистр состояния А2. (Далее контроллер ВУ по этому сигналу может сформировать и передать в процессор сигнал «Готовность ВУ», который в данном случае извещает процессор о приеме данных внешним устройством и разрешает процессору снять сигнал «Вывод» и тем самым завершить цикл вывода данных в команде пересылки, однако в IBM-совместимых персональных компьютерах с шиной ISA сигнал «Готовность ВУ» не формируется, а имеется сигнал IO CH RDY#, позволяющий продлить цикл обмена, если устройство недостаточно быстрое. В данном случае нет необходимости в сигнале «Готовность ВУ», т.к. шина ISA является синхронной и, следовательно, все операции выполняются по тактовым импульсам.)
Блок-схема простого контроллера ВУ, обеспечивающего побайтный прием данных из ВУ, приведена на рис. 3.6. В этом контроллере при взаимодействии с внешним устройством также используются два управляющих сигнала: «Данные от ВУ готовы» и «Данные приняты».
Читайте также: Шины маршал повер грип
Рис. 3.6. Простой параллельный контроллер ввода
Для формирования управляющего сигнала «Данные приняты» и приема из ВУ управляющего сигнала » Данные от ВУ готовы» используется одноразрядный адресуемый регистр состояния и управления А2.
Внешнее устройство записывает в регистр данных контроллера А1 очередной байт данных и управляющим сигналом «Данные от ВУ готовы» устанавливает в единицу регистр состояния и управления А2.
При этом формируются: управляющий сигнал системного интерфейса «Готовность ВУ»; признак готовности ВУ к обмену, передаваемый в процессор по одной из линий шины данных системного интерфейса посредством операции ввода при реализации программы асинхронного обмена.
Тем самым контроллер извещает процессор о готовности данных в регистре А1. Процессор, выполняя программу асинхронного обмена, читает байт данных из регистра данных контроллера и обнуляет регистр состояния и управления А2. При этом формируется управляющий сигнал «Данные приняты» в шине связи с внешним устройством.
Логика управления контроллера и приемопередатчики шин системного интерфейса выполняют те же функции, что и в контроллере вывода (см. рис. 3.5),
Рассмотрим работу параллельного интерфейса ввода при реализации программы асинхронного обмена. Алгоритм асинхронного ввода так же прост, как и асинхронного вывода.
1. Процессор проверяет наличие данных в регистре данных контроллера А1.
2. Если данные готовы (логическая 1 в регистре А2), то они передаются из регистра данных А1 на шину данных системного интерфейса и далее в регистр процессора или ячейку памяти микрокомпьютера. Иначе повторяется п. 1.
Пример 2.2. Фрагмент программы приема байта данных в асинхронном режиме с использованием параллельного интерфейса (контроллер ВУ, рис. 3.6):
MOV | DX, A2 | номер порта A2 помещаем в DX |
m1:IN | AL, DX | чтение байта из порта A2 |
TEST | AL, 1 | проверка нулевого разряда состояния регистра A2 |
JZ | ml | переход на метку ml если разряд не нулевой |
MOV | DX, A1 | номер порта A1 записываем в DX |
IN | AL, DX | содержимое регистра A1 передаем в регистр AL |
В третьей строке выполняется проверка содержимого регистра А2, т.е. признака наличия данных в регистре данных А1. Команда выполняется точно так же, как и в примере 2.1. Единица в нулевом разряде (содержимое регистра А2) подтверждает, что данные от ВУ записаны в регистр данных контроллера и необходимо переслать их на шину данных. Нуль в знаковом разряде указывает на неготовность данных от ВУ и, следовательно, на необходимость вернуться к проверке готовности.
IN AL, DX — пересылка данных из регистра данных контроллера A1 в регистр процессора AL. Процессор передает в контроллер по шине адреса системного интерфейса адрес A1, сопровождая его сигналом «Ввод». Логика управления контроллера в ответ на сигнал «Ввод» (IORD#) обеспечивает передачу байта данных из регистра данных A1 на шину данных и, в общем случае, но не в IBM-совместимом персональном компьютере с шиной ISA, сопровождает его сигналом «Готовность ВУ», который подтверждает наличие данных от ВУ на шине данных и по которому процессор считывает байт с шины данных и помещает его в указанный регистр. (В IBM-совместимом персональном компьютере с шиной ISA процессор считывает байт с шины данных по истечении определенного времени после установки сигнала IORD#.) Затем логика управления обнуляет регистр состояния и управления А2, формируя тем самым управляющий сигнал для внешнего устройства «Данные приняты». Таким образом завершается цикл ввода данных.
Как видно из рассмотренных примеров, для приема или передачи одного байта данных процессору необходимо выполнить всего несколько команд, время выполнения которых и определяет максимально достижимую скорость обмена данными при параллельной передаче. Таким образом, при параллельной передаче обеспечивается довольно высокая скорость обмена данными, которая ограничивается только быстродействием ВУ.
- Свежие записи
- Нужно ли менять пружины при замене амортизаторов
- Скрипят амортизаторы на машине что делать
- Из чего состоит стойка амортизатора передняя
- Чем стянуть пружину амортизатора без стяжек
- Для чего нужны амортизаторы в автомобиле
🔥 Видео
15 Параллельные и последовательные интерфейсыСкачать
Лекция "Интерфейсы (часть I). RS-232/422/485. SPI"Скачать
скорость параллельной шины данных 16 битСкачать
Лекция 308. Шина I2CСкачать
Лекция 310. Шина USB - функциональная схемаСкачать
Системная шина процессораСкачать
Типовые ошибки при монтаже: шина передачи данныхСкачать
Как использовать шину данных для передачи значений между компонентамиСкачать
лекция 403 CAN шина- введениеСкачать
АЗЫ ДИАГНОСТИКИ. Шины передачи данных. Часть 3. Шина LinСкачать
Введение в шину I2CСкачать
Кан шина, что это? Поймет школьник! принцип работыСкачать
Подробно про CAN шинуСкачать
Урок №18. Цифровые интерфейсы современного автомобиля: шины данных CAN и LINСкачать