- •Архитектура эвм
- •Введение
- •Структура мпс
- •Основные понятия в архитектуре мпс
- •Архитектура фон Неймана
- •Гарвардская архитектура
- •Параллельная архитектура
- •Конвейерная архитектура
- •Суперскалярная архитектура
- •АрхитектурыCisc
- •Архитектуры risc
- •Архитектуры misc
- •Ассемблеры
- •Программа Ассемблер
- •Язык Ассемблер
- •Основы 32-битного программирования в Windows
- •Api функции
- •Сообщения Windows
- •Версии ассемблеров
- •Среды разработки
- •Представление данных в эвм
- •Системы счисления и преобразования между ними
- •Форматы представления чисел
- •Форматы представления двоичных чисел
- •Формат с плавающей точкой
- •Типы адресаций операндов
- •Интерфейсы
- •Последовательный интерфейс rs-232c
- •Интерфейс параллельного порта
- •Инфракрасный интерфейс
- •Интерфейс Bluetooth
- •Интерфейс usb
- •Интерфейс ieee 1394 - FireWire
- •Сопроцессоры
- •Система прерываний и исключений
- •Интерфейс jtag
- •Символы и строки
- •Архитектура cisc от Intel
- •Введение
- •Микроархитектура Intel
- •Микроархитектура р6
- •Микроархитектура NetBurst
- •Микроархитектура Pentium 4
- •Микроархитектура Intel Pentium Mobile
- •Микроархитектура Intel Core
- •Микроархитектура Intel Core Duo
- •Микроархитектура Intel Nehalem
- •Адресация памяти в ia_32
- •Наборырегистров
- •Целочисленныйпроцессор
- •Регистры общего назначения (рон)
- •Регистры флагов eflags
- •Регистр указателя команд
- •Сегментные регистры
- •Управляющие регистры
- •Системные адресные регистры
- •Прямой и обратный порядок следования байтов
- •Виды адресации операндов в памяти
- •Цикл выполнения команды
- •Распределение адресного простраства
- •Образ программы в памяти.
- •Математический сопроцессор
- •Xmm технология
- •Система команд
- •Формат команды
- •Классификация команд
- •Целочисленный процессор
- •Команды общего назначения
- •Команды ввода-вывода
- •Инструкции работы со стеком
- •Арифметико-логические инструкции
- •Цепочечные операции
- •Команды управления
- •Команды поддержки языков высокого уровня
- •Команды прерываний
- •Команды синхронизации процессора
- •Команды обработки цепочки бит
- •Команды управления защитой
- •Команды обмена с управляющими регистрами
- •Команды идентификации и управления архитектурой
- •Управление кэшированием
- •Команды управления кэшированием
- •Сопроцессор с плавающей точкой
- •Классификация команд
- •Команды управления сопроцессором
- •Команды передачи данных
- •Команды сравнения данных
- •Арифметические команды
- •Трансцендентные функции
- •Целочисленное mmx расширение
- •Синтаксис ммх-команд
- •Классификация команд
- •Инициализация
- •Передача данных
- •Упаковка данных
- •Распаковка данных
- •Арифметика
- •Сравнения
- •Дополнительные команды
- •XmMрасширение с плавающей точкой
- •Типы данных
- •Передача данных
- •Арифметика
- •Сравнения
- •Преобразования
- •Управление состоянием
- •Распаковка данных
- •Управление кэшированием
- •Дополнительные команды
- •Цикл трансляции, компоновки и выполнения
- •Ассемблер cisc
- •Введение
- •Средства программирования и отладки
- •Описание masm
- •Структура программы на ассемблере
- •Типы данных
- •Макросредства
- •Директивы
- •Архитектура risc
- •Система команд
- •Архитектура misc
- •Архитектура vliw
- •Архитектура вычислительных систем со сверхдлинными командами
- •Архитектура ia-64
- •Многоядерные архитектуры
- •Микроконтроллер avr от Atmel
- •Архитектура avr от Atmel
- •Ассемблер
- •Команды ассемблера
- •Директивы ассемблера
- •Выражения
- •Микроконтроллеры c28x
- •Архитектура c28x
- •Архитектура f28x
- •Инструментальные средства разработки по
- •Ассемблер
- •Команды ассемблера
- •Формат объектного файла
- •Директивы ассемблера
- •Макроязык и макрокоманды
- •Компоновщик
- •Архиватор
- •Абсолютный листер
- •Листер перекрестных ссылок
- •Утилита 16-ричного преобразования
- •Архитектура VelociTi
- •Структура и состав цсп с6x
- •Средства разработки цсп с6x
- •Ассемблер цсп с6x
- •Команды ассемблера
- •Выражения
- •Листинги
- •Листинги программ
- •Директивы ассемблера
- •Макроязык и макрокоманды
- •Компоновщик
- •Утилиты
- •Поддержка в matlab
- •Введение
- •Встроенные платы для цсп ‘c6x
Интерфейс ieee 1394 - FireWire
Группой компаний при активном участии Apple была разработана технология последовательной высокоскоростной шины, предназначенной для обмена цифровой информацией между компьютером и другими электронными устройствами. В 1995 эта технология была стандартизована IEEE (стандарт IEEE 1394). Компания Apple продвигает этот стандарт под торговой маркой FireWire, а компания Sony - под торговой маркой i-Link.
Интерфейс IEEE 1394 представляет собой дуплексную, последовательную, общую шину для периферийных устройств. Она предназначена для подключения компьютеров к таким бытовым электронным приборам, как записывающая и воспроизводящая видео- и аудиоаппаратура, а также используется в качестве интерфейса дисковых накопителей.
Первоначальный стандарт (1394a) поддерживает скорости передачи данных 100 Мбит/с, 200 Мбит/с и 400 Мбит/с. Последующие усовершенствования стандарта (1394b) обеспечивают поддержку скорости передачи данных 800 и 1600 Мбит/с (FireWire-800, FireWire-1600).
Устройства, которые передают данные на разных скоростях, могут быть одновременно подключены к кабелю (поскольку пары обменивающихся данными устройств используют для этого одну и ту же скорость). Рекомендуемая максимальная длина кабеля между устройствами составляет 4,5 м. К кабелю общей длиной до 72 м может быть одновременно подключено до 63 устройств, называемых узлами (nodes). Для увеличения числа шин вплоть до максимального значения (1023) могут быть использованы мосты.
Каждое устройство обладает 64-разрядным адресом:
6 бит - идентификационный номер устройства на шине,
10 бит - идентификационный номер шины,
48 бит - используются для адресации памяти (каждое устройство может адресовать до 256 Тбайт памяти).
Шина предполагает наличие корневого узла, выполняющего некоторые функции управления. Корневой узел может быть выбран автоматически во время инициализации шины, либо его атрибут может быть принудительно присвоен конкретному узлу (скорее всего, ПК). Некорневые узлы являются или ветвями (если они поддерживают более чем одно активное соединение), или листьями (если они поддерживают только одно активное соединение).
Как правило, устройства имеют по 1-3 порта, причем одно устройство может быть включено в любое другое (с учетом ограничений на то, что между любыми двумя устройствами может быть не более 16 пролетов и они не могут быть соединены петлей). Допускается подключение в "горячем" режиме, поэтому устройства могут подключаться и отключаться в любой момент. При подключении устройств адреса назначаются автоматически, поэтому присваивать их вручную не придется.
IEEE 1394 поддерживает два режима передачи данных (каждый из которых использует пакеты переменной длины).
Асинхронная передача используется для пересылки данных по конкретному адресу с подтверждением приема и обнаружением ошибок. Трафик, который не требует очень высоких скоростей передачи данных и не чувствителен ко времени доставки, вполне подходит для данного режима (например, для передачи некоторой управляющей информации).
Изохронная передача предполагает пересылку данных через равные промежутки времени, причем подтверждения приема не используются. Этот режим предназначен для пересылки оцифрованной видео- и аудиоинформации.
Пакеты данных пересылаются порциям, которые имеют размер, кратный 32 битам, и называются квадлетами (guadlets). При этом пакеты начинаются, по меньшей мере, с двух квадлетов заголовка, после чего следует переменное число квадлетов полезной информации. Для заголовка и полезных данных контрольные суммы (CRC) указываются отдельно. Длина заголовков асинхронных пакетов составляет, как минимум, 4 квадлета. У изохронных пакетов может быть заголовок длиной 2 квадлета, поскольку единственным необходимым при этом адресом является номер канала.
IEEE 1394 выделяет следующие функции устройств:
Хозяин цикла (cycle master) - выполняется корневым узлом, имеет наивысший приоритет доступа к шине, обеспечивает общую синхронизацию остальных устройств на шине, а также изохронных сеансов передачи данных.
Диспетчер шины (bus manager) управляет питанием шины и выполняет некоторые функции оптимизации.
Диспетчер изохронных ресурсов (isochronous resource manager) распределяет временные интервалы среди узлов, собирающихся стать передатчиками (talkers).
Все функции диспетчеризации могут выполняться одним и тем же либо различными устройствами. Хозяин цикла посылает синхронизирующее сообщение о начале цикла через каждые 125 мкс (как правило). Теоретически 80% цикла (100 мкс) резервируется для изохронного трафика, а остальная часть становится доступной для асинхронного трафика.
Для подключения к данному интерфейсу применяется 6-контактный соединитель. Используемый при этом кабель имеет круглую форму и содержит:
экранированную витую пару А (ТРА), в которой используется симметричное, разностное напряжение (для обеспечения требуемой помехоустойчивости), а данные передаются в обоих направлениях с помощью схемы кодирования;
экранированную витую пару В (ТРВ), пересылающую стробирующий сигнал, который изменяет состояние всякий раз, когда два последовательных разряда данных (на другой паре) одинаковы (т.н. кодирование данных со стробированием - data-strobe encoding), и гарантирует изменение состояния в паре для передачи данных либо стробирующих сигналов по фронту каждого разряда;
провода, обеспечивающие питание небольших устройств. При этом по проводу VP подается напряжение 8-40 В, обеспечивающее нагрузку до 1,5 А, а провод VG заземлен;
общий экран, который изолирован от экранов пар и прикреплен к корпусам соединителей.
В IEEE 1394b допускается применять также простые UTP-кабели 5-й категории, но только на скоростях до 100 Мбит/с. Для достижения максимальных скоростей на максимальных расстояниях предусмотрено использование оптоволокна (пластмассового - для длины до 50 метров, и стеклянного - для длины до 100 метров).