драйвер устройства ieee для приставки
Классы МПК: | G06F13/10 программное управление для периферийных устройств |
Автор(ы): | МЕРИК Жером (FR), ДЕКЛЕРК Кристоф (FR) |
Патентообладатель(и): | КАНАЛЬ+Сосьетэ Аноним (FR) |
Приоритеты: |
подача заявки:
1998-07-23 публикация патента:
10.04.2004 |
Изобретение относится к обеспечению интерфейса между программными приложениями и физическими устройствами. Технический результат заключается в устранении проблем обмена данными приложений с интерфейсом IEEE 1394. Драйвер устройства IEEE содержит средства для хранения логического адреса и для хранения логического идентификатора канала, средства для подачи приложению логического адреса для осуществления обмена данными между драйвером устройства и приложением средства выделения канала, средства выделения соединения для приема запроса от приложения на выделение соединения между периферийными устройствами, подключенными к интерфейсу, средства идентификации периферийного устройства, средства сообщения о событии для сообщения приложению о различных событиях, средства идентификации канала. 5 с. и 37 з.п. ф-лы, 5 ил.
Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5, Рисунок 6, Рисунок 7, Рисунок 8, Рисунок 9, Рисунок 10, Рисунок 11, Рисунок 12, Рисунок 13, Рисунок 14, Рисунок 15, Рисунок 16, Рисунок 17, Рисунок 18, Рисунок 19, Рисунок 20, Рисунок 21, Рисунок 22, Рисунок 23, Рисунок 24, Рисунок 25, Рисунок 26, Рисунок 27, Рисунок 28, Рисунок 29, Рисунок 30, Рисунок 31, Рисунок 32, Рисунок 33, Рисунок 34, Рисунок 35, Рисунок 36, Рисунок 37, Рисунок 38, Рисунок 39, Рисунок 40, Рисунок 41, Рисунок 42, Рисунок 43
Формула изобретения
1. Способ обмена данными через драйвер устройства между приложением и интерфейсом, имеющим по меньшей мере одно интерфейсное средство, которому присвоен соответствующий интерфейсный идентификатор, где присвоенный упомянутому интерфейсному средству интерфейсный идентификатор может быть подвержен изменению после по меньшей мере одного события, включающий для по меньшей мере одного упомянутого интерфейсного средства сохранение соответствующего логического идентификатора; подачу упомянутого логического идентификатора в упомянутое приложение для осуществления ассоциированного с соответствующим интерфейсным средством обмена данными между драйвером устройства и упомянутым приложением; поддержание соответствия между упомянутым одним или каждым логическим идентификатором и упомянутым одним или каждым интерфейсным средством независимо от интерфейсного идентификатора, присвоенного упомянутому одному или каждому интерфейсному средству, так что обмен данными между приложением и драйвером устройства, осуществляемый с использованием некоторого конкретного логического идентификатора, остается ассоциированным с соответствующим конкретным интерфейсным средством после изменения присвоенного этому средству соответствующего интерфейсного идентификатора.2. Способ по п.1, в котором обмен данными между интерфейсом и драйвером устройства осуществляется на основе упомянутого одного или каждого интерфейсного идентификатора.3. Способ по любому из предшествующих пунктов, включающий формирование перечня логических идентификаторов и соответствующих интерфейсных идентификаторов для всех интерфейсных средств, удовлетворяющих заранее заданным критериям.4. Способ по любому из предшествующих пунктов, в котором драйвер устройства выполнен с возможностью передачи упомянутому приложению, по запросу, интерфейсного идентификатора, соответствующего некоторому логическому идентификатору.5. Способ по любому из предшествующих пунктов, в котором драйвер устройства выполнен с возможностью приема запросов от приложения на установление соединений между физическими устройствами, подключенными к шине, с использованием по меньшей мере одного логического идентификатора вместо интерфейсного идентификатора.6. Способ по любому из предшествующих пунктов, в котором приложение выполнено с возможностью обмена данными с драйвером устройства с помощью менеджера устройств.7. Способ по любому из предшествующих пунктов, в котором по меньшей мере одно упомянутое интерфейсное средство включает в себя периферийное устройство, подключенное к интерфейсу, и соответствующий интерфейсный идентификатор включает в себя физический адрес, присвоенный этому периферийному устройству, а логический идентификатор включает в себя логический адрес, присвоенный этому периферийному устройству.8. Способ по п.4, в котором по меньшей мере одно упомянутое интерфейсное средство включает в себя периферийное устройство, подключенное к интерфейсу, и соответствующий интерфейсный идентификатор включает в себя физический адрес, присвоенный этому периферийному устройству, а логический идентификатор включает в себя логический адрес, присвоенный этому периферийному устройству, и в котором операция передачи интерфейсного идентификатора для заданного периферийного устройства включает передачу физического адреса периферийного устройства, и также включает передачу уникального идентификатора узла, включающего в себя дополнительную информацию, идентифицирующую периферийное устройство.9. Способ по п.7 или 8, в котором поддержка соответствия включает опрашивание каждого периферийного устройства, которому присвоен логический адрес, с целью определения физического адреса, присвоенного периферийному устройству после сброса шины.10. Способ по любому из предшествующих пунктов, в котором по меньшей мере одно упомянутое интерфейсное средство включает в себя канал с заданными параметрами, доступный через интерфейс, и соответствующий интерфейсный идентификатор включает в себя номер упомянутого интерфейсного канала, при этом логический идентификатор включает в себя логический идентификатор канала.11. Способ по п.10, в котором драйвер устройства выполнен с возможностью приема от приложения запроса на выделение канала с заданными параметрами и возврата логического идентификатора канала, если канал был выделен успешно.12. Способ согласно п.10 или 11, в котором драйвер устройства выполнен с возможностью приема номера предпочтительного интерфейсного канала, выделения упомянутого предпочтительного интерфейсного канала, если он доступен, и выделения свободного канала, если предпочтительный интерфейсный канал недоступен, или если предпочтительный интерфейсный канал не указан.13. Способ по любому из пп.10-12, в котором драйвер устройства выполнен с возможностью приема идентификатора предпочтительного интерфейсного канала, распознавания заранее заданного кода вместо реального номера интерфейсного канала как указания на отсутствие предпочтительного интерфейсного канала, и сообщения приложению об ошибке, если указаны иные некорректные номера интерфейсных каналов.14. Способ по любому из пп.10-13, в котором драйвер устройства выполнен с возможностью передачи приложению номера интерфейсного канала и по меньшей мере одного из следующих параметров: максимальная выделенная для канала скорость передачи данных, возможная в данный момент скорость передачи данных, количество соединений, использующих данный канал, и идентификаторы каждого из соединений, использующих данный канал.15. Способ по любому из предшествующих пунктов, в котором драйвер устройства выполнен с возможностью приема от приложения запросов на установку одного или нескольких соединений между периферийными устройствами, подключенными к интерфейсу, путем ссылки на логические адреса и логические идентификаторы каналов.16. Способ по любому из предшествующих пунктов, в котором драйвер устройства выполнен с возможностью установления по меньшей мере широковещательного соединения.17. Способ по любому из предшествующих пунктов, в котором драйвер устройства выполнен с возможностью сообщения приложению об одном или нескольких событиях, где упомянутые события предпочтительно включают в себя хотя бы одно из следующих: сброс шины, причем предпочтительно о начале и окончании сброса шины сигнализируют отдельные события, изменение параметров топологии шины, параметров канала или соединения.18. Драйвер устройства для осуществления обмена данными между приложением и интерфейсом, имеющим хотя бы одно интерфейсное средство, которому присваивается интерфейсный идентификатор, причем упомянутый один или каждый интерфейсный идентификатор может быть подвержен изменению после по меньшей мере одного события, содержащий: средства для хранения по меньшей мере одного логического идентификатора, соответствующего соответствующему интерфейсному идентификатору; средства для подачи приложению упомянутого логического идентификатора для осуществления обмена данными, ассоциированного с соответствующим интерфейсным средством, между драйвером устройства и приложением, и средства для поддержания соответствия между упомянутым одним или каждым логическим идентификатором и упомянутым одним или каждым интерфейсным средством независимо от интерфейсного идентификатора, присвоенного упомянутому одному или каждому интерфейсному средству, так что обмен данными между приложением и драйвером устройства, осуществляемый с использованием некоторого конкретного логического идентификатора, остается ассоциированным с соответствующим конкретным интерфейсным средством после изменения присвоенного этому средству соответствующего интерфейсного идентификатора.19. Драйвер устройства по п.18, который реализован программно, предпочтительно с возможностью выполнения вычислительными средствами, которыми выполняется упомянутое или каждое приложение.20. Драйвер устройства по п.18 или 19, в котором драйвер устройства выполнен с возможностью формирования перечня логических идентификаторов и соответствующих интерфейсных идентификаторов для всех интерфейсных средств, удовлетворяющих заранее заданным критериям.21. Драйвер устройства по любому из пп.18-20, содержащий средства передачи приложению, по запросу, интерфейсного идентификатора, соответствующего некоторому логическому идентификатору.22. Драйвер устройства по любому из пп.18-21, содержащий средства приема запросов от приложения на установление соединений между физическими устройствами, подключенными к шине, с использованием по меньшей мере одного логического идентификатора вместо интерфейсного идентификатора.23. Драйвер устройства по любому из пп.18-22, в котором по меньшей мере одно упомянутое интерфейсное средство включает в себя периферийное устройство, подключенное к интерфейсу, и соответствующий интерфейсный идентификатор включает в себя физический адрес, присвоенный этому периферийному устройству, и логический идентификатор включает в себя логический адрес, присвоенный этому периферийному устройству.24. Драйвер устройства по п.21, в котором по меньшей мере одно упомянутое интерфейсное средство включает в себя периферийное устройство, подключенное к интерфейсу, и соответствующий интерфейсный идентификатор включает в себя физический адрес, присвоенный этому периферийному устройству, и логический идентификатор включает в себя логический адрес, присвоенный этому периферийному устройству, и в котором средства передачи интерфейсного идентификатора для заданного периферийного устройства содержат средства для передачи физического адреса периферийного устройства, и содержат также средства для передачи уникального идентификатора узла, содержащего дополнительную информацию, идентифицирующую периферийное устройство.25. Драйвер устройства по п.23 или 24, выполненный с возможностью опрашивания каждого периферийного устройства, которому присвоен логический адрес, с целью определения физического адреса, присвоенного периферийному устройству после сброса шины.26. Драйвер устройства по любому из пп.18-25, в котором по меньшей мере одно упомянутое интерфейсное средство включает в себя канал с заданными параметрами, доступный через интерфейс, и соответствующий интерфейсный идентификатор содержит номер упомянутого интерфейсного канала, при этом логический идентификатор содержит логический идентификатор канала.27. Драйвер устройства по п.26, содержащий средства выделения канала, выполненные с возможностью приема запроса от приложения, для выделения канала с заданными параметрами и возврата логического идентификатора канала, если канал был выделен успешно.28. Драйвер устройства по п.27, в котором средства выделения канала выполнены с возможностью приема номера предпочтительного интерфейсного канала, выделения упомянутого предпочтительного интерфейсного канала, если он доступен, и выделения свободного канала, если предпочтительный интерфейсный канал недоступен, или если предпочтительный интерфейсный канал не указан.29. Драйвер устройства по п.27 или 28, в котором средства выделения канала выполнены с возможностью приема идентификатора предпочтительного интерфейсного канала, распознавания заранее заданного кода вместо реального номера интерфейсного канала как указание на отсутствие предпочтительного интерфейсного канала, и сообщения приложению об ошибке, если указаны иные некорректные номера интерфейсных каналов.30. Драйвер устройства по любому из пп.26-29, содержащий средства для передачи приложению идентификатора интерфейсного канала и по меньшей мере одного из следующих параметров: максимальная выделенная для канала скорость передачи данных, возможная в данный момент скорость передачи данных, количество соединений, использующих данный канал, и идентификаторы каждого из соединений, использующих данный канал.31. Драйвер устройства по любому из пп.18-30, содержащий средства приема от приложения запросов на установку одного или нескольких соединений между периферийными устройствами, подключенными к интерфейсу, путем ссылки на логические идентификаторы каналов и, в случае запроса на установку двухточечного соединения, путем ссылки на логические адреса периферийных устройств.32. Драйвер устройства по любому из пп.18-31, содержащий средства, выполненные с возможностью установления по меньшей мере широковещательного соединения, по запросу приложения.33. Драйвер устройства по любому из пп.18-31, содержащий средства для сообщения приложению об одном или нескольких событиях, где упомянутые события предпочтительно включают хотя бы одно из следующих: сброс шины, предпочтительно о начале и окончании сброса шины сигнализируют отдельные события, изменение параметров топологии шины, параметров канала или соединения.34. Система обработки данных, содержащая: подсистему реального времени для выполнения приложения; интерфейс для соединения с по меньшей мере одним устройством, причем этот интерфейс имеет по меньшей мере одно интерфейсное средство, которому присваивается интерфейсный идентификатор, причем упомянутый один или каждый интерфейсный идентификатор может быть подвержен изменению после по меньшей мере одного события; и драйвер устройства для осуществления обмена данными между приложением и интерфейсом согласно любому из пп.18-33.35. Приемник/декодер, в котором реализована система обработки данных по п.34 и который содержит средства для приема вещательных данных, причем интерфейс выполнен с возможностью соединения с устройством цифровой видеозаписи, цифровым устройством отображения или с компьютером для отображения или сохранения по меньшей мере части принятых данных.36. Приемник/декодер по п.35, в котором драйвер устройства выполнен с возможностью взаимодействия с другим драйвером устройства для модификации принимаемого потока данных с целью получения измененного потока данных для передачи на упомянутый интерфейс.37. Приемник/декодер по п.35 или 36, в котором интерфейс соответствует стандарту IEEE 1394 или его разновидности.38. Приемник/декодер по любому из пп.35-37, в котором приложение выполняется на интерпретируемом языке, и драйвер устройства скомпилирован.39. Приемник/декодер по любому из пп.35-38, в котором драйвер устройства выполнен с возможностью передачи команд приложения для управления устройством цифровой видеозаписи, и/или с возможностью приема данных, относящихся к информации, сохраняющейся в устройстве цифровой видеозаписи.40. Приемник/декодер по п.39, в котором передаваемые данные являются данными формата MPEG.41. Драйвер устройства для использования в приемнике/декодере, содержащем подсистему реального времени для выполнения приложения и интерфейс IEEE 1394, к которому может быть подключено по меньшей одно периферийное устройство, способное иметь соответствующий присвоенный ему физический адрес, причем упомянутый интерфейс выполнен с возможностью обеспечения по меньшей мере одного канала обмена данными, который имеет соответствующий присвоенный ему реальный идентификатор канала, при этом упомянутые реальный идентификатор канала, присвоенный каждому каналу, и адрес, присвоенный каждому периферийному устройству, может быть подвержен изменению после сброса шины, причем этот драйвер устройства выполнен с возможностью обеспечения обмена данными между приложением и интерфейсом IEEE 1394, и содержит: средства для хранения по меньшей мере одного логического адреса, соответствующего соответствующему периферийному устройству, и для хранения по меньшей мере одного логического идентификатора канала, соответствующего соответствующему реальному каналу; средства для подачи приложению упомянутого логического адреса для осуществления обменом данными между драйвером устройства и приложением; средства выделения канала для приема запроса от приложения на выделение канала обмена данными и, если подходящий канал обмена данными доступен, для выделения упомянутого доступного подходящего канала обмена данными и подачи приложению логического идентификатора канала для осуществления обмена данными между драйвером устройства и приложением; средства выделения соединения для приема запроса от приложения на выделение соединения между периферийными устройствами, подключенными к интерфейсу, с использованием канала, указанного упомянутым логическим идентификатором канала, и для выделения соединения, если это возможно, причем в случае запроса на выделение двухточечного соединения между периферийными устройствами эти периферийные устройства указываются с помощью упомянутых логических адресов; средства идентификации периферийного устройства, выполненные с возможностью приема от приложения запроса на идентификацию периферийного устройства, соответствующего заданному логическому адресу и, в ответ на этот запрос, передачи физического адреса соответствующего периферийного устройства и передачи уникального идентификатора узла, содержащего дополнительную информацию, идентифицирующую периферийное устройство; средства сообщения о событии для сообщения приложению о различных событиях, включая сброс шины интерфейса; и средства идентификации канала, выполненные с возможностью приема от приложения запроса на идентификацию канала, соответствующего заданному логическому идентификатору канала, и, в ответ на этот запрос, передачи интерфейсного идентификатора канала для соответствующего канала и передачи по меньшей мере одного дополнительного параметра упомянутого канала, указывающего по меньшей мере одно из следующего: максимальная выделенная пропускная способность канала и доступная на данный момент пропускная способность канала, причем средства выделения канала выполнены с возможностью приема идентификатора предпочтительного реального канала и выделения упомянутого предпочтительного реального канала, если он доступен, и выделения свободного канала, если упомянутый предпочтительный канал недоступен, или если упомянутый идентификатор предпочтительного реального канала содержит заранее заданный код вместо допустимого идентификатора реального канала, и выдачи сообщения об ошибке приложению, если идентификатор предпочтительного канала соответствует недопустимому идентификатору реального канала, отличному от упомянутого заранее заданного кода.42. Приемник/декодер, содержащий средства для приема вещательных данных; средства подсистемы реального времени для выполнения по меньшей мере одного приложения; средства интерфейса IEEE 1394 для подключения по меньшей мере одного периферийного устройства; средства драйвера устройства по п.41 для обеспечения интерфейса упомянутого или каждого приложения со средствами интерфейса IEEE 1394 и средства для передачи принимаемых данных в интерфейс IEEE 1394.Описание изобретения к патенту
Текст описания в факсимильном виде (см. графическую часть).Класс G06F13/10 программное управление для периферийных устройств