Lsi 1394 ohci совместимый хост контроллер windows 7 что это

Обновлено: 04.07.2024

«Открытый» хост-контроллер IEEE 1394 — OHCI

Общая информация об «открытом» хост-контроллере IEEE 1394 — OHCI

«Открытый» хост-контроллер (OHC 1394) представляет собой реализацию канального уровня (LINK) шины IEEE 1394 с дополнительными средствами поддержки уровней транзакций и управления шиной. Для высокопроизводительного обмена данными OHC содержит контроллеры прямого доступа к памяти (DMA). Контроллер поддерживает все типы пакетов, передаваемых по шине 1394. Данное описание основано на спецификации 1394 Open Host Controller Interface Specification, версия 1.1, 2000 год .

Для асинхронных транзакций контроллер обеспечивает чтение пакетов из системной памяти хоста и их передачу в шину; пакеты, принимаемые из шины, контроллер записывает в системную память. Обмен производится с помощью каналов DMA. Контроллер может функционировать и как шинный мост, аппаратно отрабатывая запросы транзакций чтения и записи шины 1394 как обращения к пространству памяти хоста.

Для изохронных операций OHC может исполнять роль мастера циклов, синхронизируясь от внутреннего генератора синхронизации или (необязательно) от внешнего источника. Если OHC не исполняет роль мастера циклов, то он поддерживает синхронизацию внутреннего таймера циклов с таймером узла-мастера циклов (по приему пакетов начала цикла). Для изохронных операций OHC имеет два контроллера DMA — для приема и для передачи данных. Каждый из этих контроллеров может поддерживать до 32 каналов DMA, называемых контекстами DMA. Передающий контроллер в каждом цикле может передавать данные из каждого контекста для связанного с ним изохронного канала. Принимающий контроллер способен в каждом цикле принимать данные в каждый контекст из связанного с ним канала. Кроме того, один из принимающих контекстов может быть настроен на прием данных из множества каналов.

По обнаружении сброса на шине OHC автоматически очищает все очереди асинхронных пакетов для передачи; прием пакетов не прерывается, но в потоке пакетов запросов появляется маркер, индицирующий факт сброса. Новый физический идентификатор узла (PHY_ID), получаемый от PHY, контроллер записывает в соответствующий регистр. Контроллер возобновит асинхронные передачи только по указанию программы, при этом повторное использование старых запросов в общем случае невозможно: физический идентификатор узла назначения может измениться. Изохронный прием и передача по сбросу не прекращаются — они возобновляются сразу по завершении инициализации.

Устройство контроллера OHC

Упрощенная структурная схема OHC приведена на рисунке.

структурная схема OHC

Интерфейс системной шины (Host Bus Interface) обеспечивает взаимодействие с контроллером в двух режимах:

  • ведомый режим (PCI Target), обеспечивающий программный доступ к регистрам контроллера со стороны центрального процессора хоста;
  • ведущий режим (PCI Bus Master), обеспечивающий контроллеру возможность прямого доступа к системной памяти хоста. В этом режиме интерфейс системной шины должен выдерживать поток данных, по крайней мере, базовой скорости S100 (100 Мбит/с) с накладными расходами на организацию прямого доступа к памяти.

Контроллеры DMA обеспечивают обмен данными между шиной и системной памятью. В OHC имеются семь типов контроллеров DMA:

LINK-уровень OHC передает пакеты из FIFO-буферов передающих каналов и отдает в FIFO принятые пакеты с корректным адресом, предназначенные данному узлу. Уровень выполняет следующие действия:

  • передает и принимает пакеты форматов IEEE 1394;
  • генерирует соответствующие пакеты квитирования для принятых асинхронных пакетов, отрабатывая однофазный или двухфазный протокол повторов;
  • выполняет функции мастера циклов;
  • генерирует и проверяет корректность 32-битных CRC-кодов;
  • обнаруживает пропуски пакетов начала цикла;
  • взаимодействует с регистрами PHY;
  • принимает изохронные пакеты (все время);
  • игнорирует асинхронные пакеты во время изохронной фазы цикла.

Буферы FIFO, находящиеся между каналами DMA и LINK-уровнем, выполняют промежуточную буферизацию данных, считываемых из системной памяти для передачи в шину и принятых из шины для записи в память. Буферы FIFO обеспечивают и согласование выравнивания данных, побайтного для хоста и поквадлетного для шины 1394. При необходимости буферы FIFO вставляют байты-заполнители, выравнивающие данные до границ квадлетов. Переполнение (overflow) или переопустошение (underrun) буферов (по вине интерфейса системной шины и памяти), приводящее к потерям принимаемых или передаваемых пакетов, контролируется аппаратными средствами OHC.

Буферы могут «на лету» выполнять преобразование форматов представления квадлетов. Шина IEEE 1394 и, соответственно, LINK-eровень работают с квадлетами, представленными в формате Big Еndian (старший байт передается первым). Передача данных через хост-интерфейс может выполняться по выбору:

  • в формате Big Endian, используемом на платформах фирмы Apple;
  • в формате Little Endian (младший байт передается первым), используемом на платформах фирмы Intel.

Для поддержки функций управления OHC имеет 64-битный регистр уникального идентификатора (GUID, он же IEEE EUI-64), автоматически загружаемый из энергонезависимой памяти по сбросу контроллера (или однократно программируемый в самом контроллере).

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

Контроллеры DMA

Контроллеры DMA OHC по способу управления разделяются на два типа:

Прием асинхронных пакетов выполняют блок физических запросов и контроллер асинхронного приема.

Блок физических запросов, Physical Request Unit, включается в работу, когда приходит пакет запроса одного из трех типов:

  • запрос к системной памяти хоста, доступной для узлов шины (лежащий в диапазоне нижних адресов);
  • запрос блокированной транзакции (compare_swap), адресованный к одному из автономных регистров (для диспетчера изохронных ресурсов);
  • запрос по адресу памяти конфигурации.

Контроллер DMA изохронной передачи (Isochronous Transmit), IT DMA, поддерживает от 4 до 32 контекстов, каждый из которых обеспечивает передачу одного канала.

Контроллер DMA изохронного приема (Isochronous Receive) поддерживает от 4 до 32 контекстов, каждый из которых обеспечивает прием одного канала. Один из контекстов можно запрограммировать на прием множества каналов.

Специальный контроллер, Self_ID DMA, принимает пакеты самоидентификации и укладывает их последовательно в один выделенный буфер. После каждого обнаруженного сброса контроллер начинает укладку пакетов с начала буфера, затирая предыдущие пакеты.

Фильтрация асинхронных запросов

Каждый приходящий асинхронный запрос, не относящийся к 1-килобайтной области памяти конфигурации, фильтруется трехступенчатым фильтром. Первая ступень фильтра по идентификатору узла-источника определяет судьбу запроса:

  • запрос игнорируется (без посылки каких-либо пакетов квитирования);
  • запрос направляется на вторую и третью ступени фильтрации, где по адресу памяти и идентификатору источника определяется способ обработки:
    -----аппаратный, без привлечения программы хоста;
    -----программный, помещением запроса в контекст асинхронного приема и дальнейшей обработкой программой хоста.

Запросы чтения памяти конфигурации принимаются от любых источников и отрабатываются аппаратно (если в хост-контроллере определен корректный образ памяти конфигурации).

Фильтрацией асинхронных запросов управляют 64-битные регистры AsynchronousRequestFilter и PhysicalRequestFilter, каждый из которых представлен регистрами установки и сброса старшей (Hi) и младшей (Lo) половин. Первая ступень фильтрации выполняется в соответствии с содержимым регистра AsynchronousRequestFilter. В этом 64-битном регистре единица в старшем бите (asynReqResourceAll) разрешает отработку асинхронных запросов от всех источников. При его нулевом значении остальные биты разрешают отработку запросов от узлов с PHY_ID, соответствующих номерам бит (младший бит соответствует PHY_ID = 0). Управление данным фильтром осуществляется через регистры AsynchronousRequestFilterHiSet (100h), AsynchronousRequestFilterHiClear (104h), AsynchronousRequestFilterLoSet (108h), AsynchronousRequestFilterLoClear (10Ch).

Последний фильтр, управляемый регистром PhysicalRequestFilter, определяет способ обработки запроса-кандидата на физическую обработку. В этом 64-битном регистре единица в старшем бите (physReqResourceAllBuses) разрешает физическую обработку запросов от узлов всех шин. Остальные биты относятся к узлам локальной шины (на которой находится узел с OHC), они разрешают физическую отработку запросов от узлов с соответствующими номерами. Запросы, не прошедшие через данный фильтр, направляются в контекст AR_Request DMA и обрабатываются программно. Управление данным фильтром осуществляется через регистры PhysicalRequestFilterHiSet (110h), PhysicalRequestFilterHi-Clear (114h), PhysicalRequestFilterLoSet (118h), PhysicalRequestFilter-LoClear (11Ch).

Контексты DMA

Контекст DMA, образующий независимый канал DMA, состоит из контекстной программы и регистров контроллера. Контекстная программа — это список команд, отрабатываемых контроллером для передачи и приема пакетов данных. Каждый контекст DMA представлен в контроллере своим блоком регистров, в который входят регистры ContextControl (управление и состояние) и CommandPtr (указатель на команду). В дополнение к этому контексты изохронного приема имеют свои регистры шаблонов совпадений ContextMatch и общий регистр масок мультиканального приема. В последующем описании указывается смещение регистров относительно начального адреса своего блока регистров.

Управляющий регистр ContextControl контекста представлен парой регистров ContextControlSet (+0h) и ContextControlClear (+4h), обеспечивающих установку, сброс и чтение битов и полей. Формат регистра для асинхронных контекстов приведен на рисунке ниже, форматы регистров для изохронных контекстов описаны в соответствующем разделе. Назначение полей, используемых в регистрах всех контекстов, приведено далее:

  • run — программное разрешение (1) и запрет (0) отработки дескрипторов;
  • wake — семафор, установкой которого программа уведомляет о добавлении нового дескриптора в контекст. Хост-контроллер обнуляет бит после выборки каждого дескриптора;
  • dead — хост-контроллер устанавливает этот бит, обнаружив фатальную ошибку. Программный сброс бита run сбрасывает и этот бит;
  • active — признак обработки дескрипторов (управляется хост-контроллером);
  • spd — скорость, на которой был принят пакет (только для контекстов приема). Значение некорректно, если установлен бит wake или active;
  • event_code — код события, раскрытый в таблице ниже.

Формат управляющих регистров асинхронных контекстов

Таблица. Коды событий для контекстов DMA

Код События Контексты
00 evt_no_status, нет индикации события AT, AR, IT, IR
01 reserved
02 evt_long_packet, длина данных в принятом пакете больше, чем размер буфера IR
03 evt_missing_ack, потерян пакет подтверждения ack AT
04 evt_underrun, недостаточно данных в FIFO, переданный пакет усечен AT
05 evt_overrun, переполнение FIFO при изохронном приеме IR
06 evt_descriptor_read, неисправимая ошибка при чтении дескриптора контроллером AT, AR, IT, IR
07 evt_data_read, неисправимая ошибка при чтении контроллером из памяти данных для передачи AT, IT
08 evt_data_write, неисправимая ошибка при записи данных в память хоста AR, IR, IT
09 evt_bus_reset, признак приема пакета, синтезированного по обнаружении сброса на шине AR
0A evt_timeout, не удалась своевременно отправка пакета асинхронного ответа или изохронный контекст не смог записать число пропущенных циклов AT, IT
0B evt_tcode_err, неверный код транзакции в принятом пакете AT, IT
0C-0D Резерв
0E evt_unknown, неизвестная ошибка AT, AR, IT, IR
0F evt_flushed, пакет был отброшен из-за сброса шины AT
10 Резерв
11 ack_complete, пакет запроса или ответа от хоста успешнопринят узлом назначения и на этом транзакция завершена. Для пакетов, не требующих подтверждений, этот признак устанавливается автоматически AT, AR, IT, IR
12 ack_pending, пакет запроса от хоста принят успешно узлом назначения, субакция ответа последует позже AT, AR
13 Резерв
14 ack_busy_X, переданный пакет не принимается узлом назначения (после исчерпания лимита попыток повторов), последний полученный код подтверждения — ack_busy_X AT
15 ack_busy_A, переданный пакет не принимается узлом назначения (после исчерпания лимита попыток повторов), последний полученный код подтверждения — ack_busy_A AT
16 ack_busy_B, переданный пакет не принимается узлом назначения (после исчерпания лимита попыток повторов), последний полученный код подтверждения — ack_busy_B AT
17-1A Резерв
1B ack_tardy, узел назначения не может принять пакет, поскольку его LINK приостановлен (в состоянии suspended) AT
1C Резерв
1D ack_data_error, AT-контекст принял пакет ack_data_error или изохронный контекст обнаружил ошибку CRC или длины данных (при приеме каждого пакета в отдельный буфер) AT, IR
1E ack_type_error, недопустимый тип транзакции AT, AR
1F Резерв

Регистр CommandPtr (+Ch) содержит указатель на блок дескрипторов (старшие 28 бит адреса в поле descriptorAddress) и индикатор длины этого блока (поле Z). Длина (поле Z) указывается в 16-байтных блоках; дескрипторы выровнены по границе параграфа (младшие 4 бита — нулевые). Индикатор Z = 0 означает недействительность указателя — признак окончания контекстной программы. Допустимое число блоков в дескрипторе зависит от типа контекста. При инициализации контекста в регистр заносится указатель на начальный блок дескрипторов и их число в блоке. Дальнейшая программная модификация регистра допустима лишь при нулевом значении признаков run и active. Чтение регистра, в зависимости от состояния признаков run, dead, active и wake, дает различные значения указателей:

  • указывает на последний исполненный, текущий или следующий дескриптор;
  • указывает на блок с Z = 0, вызвавший прекращение активности контекста или блок, вызвавший фатальную ошибку.

Инициализация контекста начинается с проверки состояния — биты run, active и dead должны быть сброшены. При этом условии в регистр CommandPtr помещается указатель на блок дескрипторов (и длина блока), после чего можно программно установить бит run.

Добавление дескрипторов в список возможно в любое время. Для этого в памяти формируется дескриптор или связанный список дескрипторов, и указатель на него (и поле Z) помещается в адрес перехода, находящийся в последнем дескрипторе прежнего списка. После этого необходимо программно установить бит wake — указать контроллеру на обновление списка.

Остановка контекста выполняется программным сбросом бита wake, но это может и не привести к немедленной остановке. Признаком остановки контекста после сброса run является обнуленный бит active.

Ohci1394.sys - это драйвер в Windows. Драйвер — это маленькая программа, обеспечивающая взаимодействие компьютера с оборудованием и устройствами. Это означает, что драйвер имеет прямой доступ к внутренностям операционной системы, аппаратным средствам и т.д.
Бесплатный форум с информацией о файлах может помочь вам разобраться является ли ohci1394.sys вирусом, трояном, программой-шпионом, рекламой, которую вы можете удалить, или файл принадлежит системе Windows или приложению, которому можно доверять.

  1. Используйте программу Настройщик Windows, чтобы найти причину проблем, в том числе и медленной работы компьютера.
  2. Обновите программу 1394 OpenHCI Port Driver. Обновление можно найти на сайте производителя (ссылка приведена ниже).
  3. В следующих пунктах предоставлено описание работы ohci1394.sys.

Информация о файле ohci1394.sys

Описание: ohci1394.sys важен для Windows. Ohci1394.sys находится в папке C:\Windows\System32\drivers. Известны следующие размеры файла для Windows 10/8/7/XP 61,696 байт (40% всех случаев), 61,056 байт, 55,680 байт, 61,312 байт или 61,952 байт.
Драйвер может быть включен и выключен из Панели Инструментов - Сервисы или другими программами. Это системный процесс Windows. У процесса нет видимого окна. У процесса нет детального описания. Это файл, подписанный Microsoft. ohci1394.sys представляется сжатым файлом. Поэтому технический рейтинг надежности 2% опасности.

Важно: Некоторые вредоносные программы маскируют себя как ohci1394.sys, особенно, если они расположены не в каталоге C:\Windows\System32\drivers. Таким образом, вы должны проверить файл ohci1394.sys на вашем ПК, чтобы убедиться, что это угроза. Мы рекомендуем Security Task Manager для проверки безопасности вашего компьютера.

Комментарий пользователя

вр,что этот файл повреждён.
Вяч.
вр,что этот файл повреждён.
Вяч.
Итого: Средняя оценка пользователей сайта о файле ohci1394.sys : - на основе 1 голоса с 2 отзывами. 42 пользователей спрашивали про этот файл. 2 пользователей не поставили рейтинг ("я не знаю"). Один пользователь оценил, как важный для Windows или установленной программы.

Лучшие практики для исправления проблем с ohci1394

Аккуратный и опрятный компьютер - это главное требование для избежания проблем с ohci1394. Для этого требуется регулярная проверка компьютера на вирусы, очистка жесткого диска, используя cleanmgr и sfc /scannow, удаление программ, которые больше не нужны, проверка программ, которые запускаются при старте Windows (используя msconfig) и активация Автоматическое обновление Windows. Всегда помните о создании периодических бэкапов, или в крайнем случае о создании точек восстановления.

Если у вас актуальные проблемы, попробуйте вспомнить, что вы делали в последнее время, или последнюю программу, которую вы устанавливали перед тем, как появилась впервые проблема. Используйте команду resmon, чтобы определить процесс, который вызывает проблемы. Даже если у вас серьезные проблемы с компьютером, прежде чем переустанавливать Windows, лучше попробуйте восстановить целостность установки ОС или для Windows 8 и более поздних версий Windows выполнить команду DISM.exe /Online /Cleanup-image /Restorehealth. Это позволит восстановить операционную систему без потери данных.

Следующие программы могут вам помочь для анализа процесса ohci1394.sys на вашем компьютере: Security Task Manager отображает все запущенные задания Windows, включая встроенные скрытые процессы, такие как мониторинг клавиатуры и браузера или записей автозагрузки. Уникальная оценка рисков безопасности указывает на вероятность процесса быть потенциально опасным - шпионской программой, вирусом или трояном. Malwarebytes Anti-Malware определяет и удаляет бездействующие программы-шпионы, рекламное ПО, трояны, кейлоггеры, вредоносные программы и трекеры с вашего жесткого диска.

ohci1394 сканер

Security Task Manager показывает все запущенные сервисы Windows, включая внедренные скрытые приложения (например, мониторинг клавиатуры или браузера, авто вход). Уникальный рейтинг надежности указывает на вероятность того, что процесс потенциально может быть вредоносной программой-шпионом, кейлоггером или трояном.

Бесплатный aнтивирус находит и удаляет неактивные программы-шпионы, рекламу, трояны, кейлоггеры, вредоносные и следящие программы с вашего жесткого диска. Идеальное дополнение к Security Task Manager.

SpeedUpMyPC бесплатное сканирование, очистка, восстановление и оптимизация вашей системы.

После обновления до Windows 7 порт FireWire не работает, или Windows 7 зависает при попытке обновить хост-контроллер IEEE 1394.

Чтобы решить эту проблему, подключите компьютер к Интернету и выполните следующие действия.

Перезагрузите компьютер, если Windows 7 не отвечает. Если откроется окно Plug and Play для IEEE 1394, отмените установку.

Щелкните элемент Диспетчер устройств в списке результатов поиска.

Выберите контроллер 1394, совместимый хост-контроллер LSI 1394 OHCI (в данном примере) и выберите Обновить драйвер.

Рис. : Хост-контроллер 1394 в Диспетчере устройств

Нажмите Автоматический поиск обновленного драйвера. Что происходит?

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

Windows 7 перестает отвечать, когда устанавливается драйвер. Перезагрузите компьютер и переходите к следующему шагу.

Windows Update не удалось найти более свежий драйвер (проблемы продолжаются). См. следующий шаг.

Оборудование компьютера несовместимо с версией драйвера IEEE 1394 для Windows 7. Повторите данные шаги для запуска Диспетчера устройств и обновления драйвера. Вместо параметра "Автоматический поиск. " выберите Искать драйвер на моем компьютере .

Выберите Указать из списка драйверов устройств на моем компьютере .

Выберите Совместимый хост-контроллер 1394 OHCI (Legacy) и нажмите Далее .

Рис. : Обновить драйвер: Хост-контроллер Legacy

Окно обновления драйвера с выбранным совместимым хост-контроллером 1394 OHCI (Legacy)

Windows 7 автоматически устанавливает более старую версию (legacy) хост-контроллера 1394 и перезагружает компьютер.

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

hp-feedback-input-portlet

hp-feedback-banner-portlet

hp-country-locator-portlet

Выбор местоположения

Северная и Южная Америка

Европа, Ближний Восток, Африка

Азиатско-Тихоокеанский регион и Океания

Выберите язык

hp-detect-load-my-device-portlet

hp-hero-support-search

Примеры: “LaserJet Pro M1132 замятие бумаги”, “HP 250 G5 bluetooth”

Файл был разработан для использования с программным обеспечением . Здесь вы найдете подробную информацию о файле и инструкции, как действовать в случае ошибок, связанных с 1394ohci.sys на вашем устройстве. Вы также можете скачать файл 1394ohci.sys, совместимый с устройствами Windows 10, Windows 8.1, Windows 8, Windows 7, которые (скорее всего) позволят решить проблему.

For Windows

Совместим с: Windows 10, Windows 8.1, Windows 8, Windows 7

Исправьте ошибки 1394ohci.sys

Информация о файле

Основная информация
Имя файла 1394ohci.sys
Расширение файла SYS
Описание 1394 OpenHCI Driver
Программного обеспечения
программа Microsoft® Windows® Operating System
автор Microsoft Corporation
подробности
MIME тип application/octet-stream
Тип файла Driver
система Windows NT 32-bit
Авторские права © Microsoft Corporation. All rights reserved.
Набор символов Unicode
Языковая треска English (U.S.)

1394ohci.sys

Наиболее распространенные проблемы с файлом 1394ohci.sys

  • 1394ohci.sys поврежден
  • 1394ohci.sys не может быть расположен
  • Ошибка выполнения - 1394ohci.sys
  • Ошибка файла 1394ohci.sys
  • Файл 1394ohci.sys не может быть загружен. Модуль не найден
  • невозможно зарегистрировать файл 1394ohci.sys
  • Файл 1394ohci.sys не может быть загружен
  • Файл 1394ohci.sys не существует

1394ohci.sys

Не удалось запустить приложение, так как отсутствует файл 1394ohci.sys. Переустановите приложение, чтобы решить проблему.

Проблемы, связанные с 1394ohci.sys, могут решаться различными способами. Некоторые методы предназначены только для опытных пользователей. Если вы не уверены в своих силах, мы советуем обратиться к специалисту. К исправлению ошибок в файле 1394ohci.sys следует подходить с особой осторожностью, поскольку любые ошибки могут привести к нестабильной или некорректно работающей системе. Если у вас есть необходимые навыки, пожалуйста, продолжайте.

Помните, прежде чем предпринимать какие-либо действия, связанные с системными файлами, сделайте резервную копию ваших данных!

Шаг 1.. Сканирование компьютера на наличие вредоносных программ.

Virus Scan

Файлы Windows обычно подвергаются атаке со стороны вредоносного программного обеспечения, которое не позволяет им работать должным образом. Первым шагом в решении проблем с файлом 1394ohci.sys или любыми другими системными файлами Windows должно быть сканирование системы на наличие вредоносных программ с использованием антивирусного инструмента.

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

Читайте также: