Протокол usb-устройства для игровой машины
Иллюстрации
Показать всеИзобретение относится к игровым перифериям для игровых машин типа слот-машин и машин для видеопокера. В частности, настоящее изобретение относится к коммуникационным подключениям стандартной периферии между игровой периферией и игровой машиной. Технический результат заключается в упрощении замены и установки периферийных устройств в игровых машинах и расширении функциональных возможностей игровых машин. Такой результат достигается за счет того, что предлагаемая игровая машина имеет множество игровых периферий, каждая из которых обменивается информацией с ведущим игровым контроллером посредством стандартного интерфейса периферии типа USB (универсальная последовательная шина). Для USB-совместимой связи определены характеристики класса игровой USB-периферии. Класс игровой USB-периферии обеспечивает возможность управления настройками игровой USB-периферии в классе игровой USB-периферии с помощью USB-хоста совместимым с USB образом. 16 з.п. ф-лы, 12 ил.
Реферат
Изобретение относится к игровым перифериям для игровых машин типа слот-машин и машин для видеопокера. В частности, настоящее изобретение относится к коммуникационным подключениям стандартной периферии между игровой периферией и игровой машиной.
Имеется множество различных вспомогательных устройств, которые могут быть подключены к игровой машине типа слот-машины или машины для видеопокера. В качестве отдельных примеров этих устройств можно назвать источники света, билетопечатающие устройства, считыватели для карточек, динамики, купюроприемники, монетоприемники, панели отображения, клавишные и кнопочные панели. Многие из этих устройств встроены в игровую машину. Зачастую некоторые устройства сгруппированы вместе в отдельном корпусе, который размещают наверху машины. Устройства этого типа обычно называются приставкой.
Как правило, игровая машина управляет различными комбинациями устройств. Эти устройства обеспечивают игровые настройки, расширяющие настройки игровой машины. Кроме того, многие устройств типа приставок спроектированы с возможностью их снятия с игровой машины, чтобы обеспечить гибкость в выборе игровых настроек данной игровой машины.
Управление настройками любого устройства обычно осуществляется "ведущим игровым контроллером" в составе игровой машины. Например, в процессе игры ведущий игровой контроллер может подать команду на источники света для их включения и выключения в различных комбинациях, подать команду на принтер для печати билета или послать информацию, которая будет отображена на экране дисплея. Для обеспечения выполнения этих операций ведущим игровым контроллером устройства подключаются проводами непосредственно к электронной плате какого-либо типа (например, к "системной плате" или "материнской плате"), на которой находится ведущий игровой контроллер.
Для управления устройством ведущему игровому контроллеру требуется информация о параметрах, о рабочих настройках и о конфигурации, предназначенная для каждого конкретного периферийного устройства. Эта информация включена в программное обеспечение и хранится в устройстве памяти какого-либо типа в составе ведущего игрового контроллера. Это специфическое для устройства программное обеспечение управляет настройками устройства в процессе игры. Как пример, для управления комплектом источников света программному обеспечению для ведущего игрового контроллера требуется такая информация, как число и типы источников света, настройки источников света, сигналы, которые соответствуют каждой настройке, и время ответа источников света.
Один недостаток существующего способа обслуживания устройств, управляемых ведущим игровым контроллером, состоит в необходимости выключения игровой машины в каждом случае замены устройства. При этом идущую от устройства проводку отключают от ведущего игрового контроллера и к ведущему контроллеру подключают с помощью проводов новое устройство. Замена устройства может осуществляться с целью изменения игровых настроек или восстановления работоспособности устройства. Точно также, если монтажная схема, на которой установлен ведущий игровой контроллер, или сам ведущий игровой контроллер нуждается в ремонте, то перед демонтажем игрового контроллера должна быть демонтирована проводка от всех устройств, подключенных к игровому контроллеру. После ремонта или замены ведущий игровой контроллер должен быть подключен проводами ко всем устройствам. Этот процесс проводного соединения требует времени и может привести к значительному простою игровой машины. Кроме того, от человека, выполняющего монтаж, требуется детальное знание механизмов в составе игровой машины. Следовательно, было бы желательно создать стандартный коммуникационный протокол и/или систему подключения для монтажа или демонтажа устройств и ведущих игровых контроллеров, которые позволят упростить этот процесс проводного соединения.
Другой недостаток существующего способа обслуживания устройств, управляемых ведущим игровым контроллером, связан с программным обеспечением для устройств. При установке нового устройства в игровой машине в ведущий игровой контроллер должно быть инсталлировано специфическое для устройства программное обеспечение. При этом опять-таки игровая машина должна быть выключена и от человека, выполняющего процесс инсталляции, требуется детальное знание игровой машины и устройства. Следовательно, было бы желательно упростить процесс инсталляции программного обеспечения.
КРАТКОЕ ИЗЛОЖЕНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Предлагаемое изобретение направлено на удовлетворение обозначенных выше потребностей путем создания игровой машины, имеющей множество "игровых периферий", каждая из которых обменивается информацией с ведущим игровым контроллером посредством стандартного интерфейса периферийных устройств типа USB (универсальной последовательной шины). Для некоторых игровых периферий связь между ведущим игровым контроллером и игровой периферией может включать в себя различные настройки защиты типа шифрования, защищенных портов и защищенных хабов. Для USB-совместимой связи определены характеристики класса игровой USB-периферии. Класс игровой USB-периферии позволяет управлять настройками игровой USB-периферии в классе игровой USB-периферии с помощью USB-хоста, совместимым с USB образом.
Один объект настоящего изобретения касается игровой машины. Игровая машина может быть, в общем, охарактеризована как содержащая ведущий игровой контроллер, спроектированный или сконфигурированный для управления одной или более играми, ведущимися на игровой машине, и обмена информацией с множеством игровых USB-периферий с использованием USB-совместимой связи; и множество игровых USB-периферий, подсоединяемых к игровой машине с возможностью обмена информацией с ведущим игровым контроллером. Каждая из множества игровых USB-периферий может содержать: 1) USB-совместимое коммуникационное подключение, 2) одно или более периферийных устройств, специфических для каждой игровой USB-периферии, причем каждое периферийное устройство поддерживает одну или более USB-настроек и 3) контроллер USB-периферии, спроектированный или сконфигурированный i) для управления одним или более периферийными устройствами и ii) для обмена информацией с ведущим игровым контроллером и периферийными устройствами с использованием USB-совместимой связи. Контроллер USB-периферии может содержать один или более USB-совместимых интерфейсов, каждый из которых назначен одной USB-настройке в одном из периферийных устройств. Игровая машина может представлять собой механическую слот-машину, машину для видеослота, машину для кено, машину для лотерейной игры или машину для видеопокера. Одно или более периферийных устройств выбраны из группы, в состав которой входят источники света, принтеры, накопители монет, купюроприемники, считыватели для билетов, считыватели для карточек, клавишные и кнопочные панели, экраны дисплеев, динамики, информационные панели, двигатели, массовые запоминающие устройства и соленоиды.
В частном примере осуществления игровая машина может содержать USB-совместимый хост-контроллер. Игровая машина может дополнительно содержать множество USB-совместимых драйверов настроек, причем каждый драйвер настройки обменивается информацией с USB-настройкой в одном из периферийных устройств, связанных с драйвером настройки. Ведущий игровой контроллер может быть дополнительно спроектирован или сконфигурирован для выполнения процессов клиентов настроек, которые обмениваются информацией с одной из USB-настроек с использованием связанного с ней USB-совместимого драйвера настройки.
В другом примере осуществления ведущий игровой контроллер может быть дополнительно спроектирован или сконфигурирован 1) для проведения опроса игровой USB-периферии с целью определения возможностей игровой USB-периферии, и 2) для загрузки драйвера класса игровой USB-периферии и/или USB-совместимых драйверов настроек для управления определенными возможностями игровой USB-периферии. Поэтому ведущий игровой контроллер может содержать память, хранящую один или более USB-совместимых драйверов для, по меньшей мере, некоторых из игровых USB-периферий. USB-совместимый драйвер класса игровой периферии может быть использован для обслуживания каждой игровой USB-периферии. USB-совместимый драйвер класса игровой периферии может быть выполнен с возможностью проведения опроса USB-совместимых интерфейсов с целью определения USB-настроек игровой USB-периферии. Кроме того, USB-совместимый драйвер класса игровой периферии может быть выполнен с возможностью загрузки USB-совместимых драйверов настроек для каждой определенной USB-настройки.
В частных примерах осуществления ведущий игровой контроллер может содержать память, хранящую программное обеспечение для шифрования, дешифрования или шифрования и дешифрования USB-совместимой связи между ведущим игровым контроллером и по меньшей мере одной из игровых USB-периферий. Контроллер USB-периферии может содержать энергонезависимую память, предназначенную для хранения а) параметров конфигурации, специфических для отдельной игровой USB-периферии, и/или b) информации журнала состояний игровой USB-периферии.
В состав параметров конфигурирования может входить назначение USB-совместимых интерфейсов, соответствующих USB-настройкам. Игровая USB-периферия может дополнительно содержать USB-совместимый контроллер устройства или USB-совместимый хаб.
Эти и другие признаки настоящего изобретения будут рассмотрены более детально в приведенном ниже подробном описании изобретения со ссылками на соответствующие фигуры.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
ФИГ. 1 - перспективное изображение игровой машины, имеющей приставку и другие устройства.
Фиг.2 - блок-схема игровой периферии и ее подключения к ведущему игровому контроллеру.
Фиг.3 - блок-схема более детального примера игровой периферии в соответствии с этим изобретением.
Фиг.4 - блок-схема последовательности операций при включении питания игровой периферии и в процессе обмена информацией с ведущим игровым контроллером.
Фиг.5 - блок-схема последовательности операций в процессе обмена информацией между игровой периферией и ведущим игровым контроллером на стадии после включения питания.
Фиг.6 - блок-схема последовательности операций в процессе общего обмена информацией с периферийным устройством посредством интерфейса стандартной периферии, который представлен на фиг.5, в частностях.
Фиг.7 - блок-схема последовательности операций в процессе транзакции общего события, представленной на фиг.5.
Фиг.8 - блок-схема архитектуры USB-связи, которая может быть использована для обеспечения USB-связи в настоящем изобретении.
Фиг.9 - блок-схема ведущего игрового контроллера, участвующего в обмене информацией с игровой USB-периферией.
Фиг.10 - схема взаимодействия хоста и игровой USB-периферии, соответствующих настоящему изобретению, в режиме двусторонней передачи информации.
Фиг.11 - блок-схема архитектуры программного обеспечения в игровой машине для обмена информацией с игровой USB-периферией.
Фиг.12 - блок-схема последовательности операций в реализуемом в игровой машине способе инициализации связи между игровой машиной и игровой USB-периферией.
ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ПРИМЕРОВ ОСУЩЕСТВЛЕНИЯ
На фиг.1 изображена видеоигровая машина 2, соответствующая настоящему изобретению. Машина 2 содержит основной корпус 4, который, как правило, окружает внутреннюю часть машины (не показана) и который доступен взгляду пользователей. Со своей передней стороны основной корпус 4 имеет главную дверцу 8, открывающуюся для обеспечения доступа внутрь машины. Как правило, главная дверца 8 и/или любые другие дверцы, которые обеспечивают доступ внутрь машины, используют механизм блокировки какого-либо вида как настройку защиты для ограничения доступа внутрь игровой машины. На поверхность главной дверцы выведены переключатели или кнопки 32 ввода для игрока, монетоприемник 28 и купюроприемник 30, лоток 38 для монет, защитное стекло 40 и рамка 42 монитора. Через главную дверцу можно видеть монитор с видеодисплеем 34 и информационную панель 36. Монитор с дисплеем 34, как правило, представляет собой катодно-лучевую трубку, плоскопанельный жидкокристаллический (ЖК) дисплей с высоким разрешением или другой обычный видеомонитор с электронным управлением. Информационная панель 36 может представлять собой стеклянную панель с задней подсветкой и выполненными методом трафаретной печати надписями для отображения общей игровой информации, в том числе, например, количества играющих монет. Купюроприемник 30, переключатели 32 ввода для игрока, монитор с видеодисплеем 34 и информационная панель являются устройствами, используемыми для ведения игры на игровой машине 2. Управление этими устройствами осуществляется схемами (не показаны), размещенными внутри основного корпуса 4 машины 2. Предлагаемая в данном изобретении игровая машина может обеспечить ведение всевозможных игр, в том числе традиционных слотов, видеослотов, видеопокера, кено и лотереи.
Игровая машина 2 имеет в своем составе приставку 6, которая установлена на верхней поверхности основного корпуса 4. Внутри приставки 6 находится ряд устройств, в том числе динамики 10, 12, 14, стеклянная панель с лампами 16 отображения, билетопечатающее устройство 18, которое может печатать билеты 20 со штрих-кодом, клавишная панель 22 для ввода данных трекинга игрока и считыватель 26 карточек для ввода карточки с магнитной полосой, содержащей данные трекинга игрока. В приставке 6 могут быть размещены другие или дополнительные устройства, отличные от показанных на фиг.1 и 2. Устройства, размещенные в приставке 6, придают игре, ведущейся на машине 2, дополнительные настройки. Управление этими устройствами в процессе игры осуществляется частично с помощью схем (не показано), размещенных внутри основного корпуса 4 машины 2. Схемы управления периферией в приставке 6 также обеспечивают некоторые функции управления для устройств приставки. Приставка 6 спроектирована так, что ее можно снимать с машины 2. Как правило, приставку 6 заменяют для того, чтобы отремонтировать устройство внутри приставки 6 или установить новую приставку 6 с другим набором устройств.
Когда пользователь желает запустить игровую машину 2, он (или она) вводит наличные деньги через монетоприемник 28 или купюроприемник 30. В начале игры игрок может ввести данные своего трекинга, используя считыватель 26 для карточек, клавишную панель 22 и флуоресцентный дисплей 26. В процессе игры игрок просматривает игровую информацию, используя видеодисплей 34. Обычно в ходе игры у игрока возникает необходимость в принятии ряда решений, оказывающих влияние на результат игры. Возможность выбора этих вариантов игрок может реализовать с помощью переключателей 32 ввода для игрока. При определенных игровых событиях игровая машина 2 может воспроизводить визуальные и звуковые эффекты, оказывающие на игрока несомненное влияние. Эти эффекты придают игре дополнительный эмоциональный накал, вызывающий у игрока желание продолжить игру. Звуковые эффекты могут представлять собой различные звуки, воспроизводимые динамиками 10, 12, 14. В качестве визуальных эффектов могут быть использованы вспыхивающие или стробирующие огни или другие узоры, воспроизводимые источниками света на игровой машине 2, в том числе источниками света, расположенными за передним стеклом 16 на приставке 6 или за защитным стеклом 40. По окончании игры игрок может получить игровые жетоны из лотка 38 для монет или билет 20 из принтера 18, причем этот билет может быть использован для дальнейших игр. Кроме того, игрок может получить из принтера 18 билет 20 на еду, товары или игры.
На фиг.2 представлена блок-схема игровой периферии и ее подключения к ведущему игровому контроллеру. Ведущий игровой контроллер 200, показанный на фиг.2, размещен в основном корпусе 4 игровой машины 2, изображенной на фиг.1. Ведущий игровой контроллер 200 управляет одной или более играми, ведущимися на игровой машине 2. Как правило, ведущий игровой контроллер подключен к материнской плате или к "системной плате" 202, которая крепится к задней стенке основного корпуса 4 игровой машины 2. Системная плата 202 может иметь держатель с защелкой (не показано) для механического соединения или сцепления с ведущим игровым контроллером 200 и корневой хаб 206 расширения с одним или более стандартными коммуникационными портами 208. Стандартные коммуникационные порты 208 используются для подключения к другим устройствам со стандартными коммуникационными портами.
Стандартные коммуникационные порты 208, корневой хаб 206 расширения, хаб 210 и хаб 230, и подключения к устройствам составляют систему связи, которая позволяет ведущему игровому контроллеру 200 обмениваться информацией с устройствами, подключенными к этой системе. Устройства и подключения, показанные на фигуре, являются только одним примером осуществления настоящего изобретения. Как правило, подключения устройства к конкретному порту не требуется. Среди примеров устройств, которые могут быть подключены к корневому хабу 206 расширения со стандартными коммуникационными портами 208 на материнской плате 202 с ведущим игровым контроллером 200, можно назвать волоконно-оптический конвертор 204, удаленный хаб 210, монетоприемник 216, купюроприемник и игровое периферийное устройство 228. Эти устройства могут быть размещены внутри основного корпуса 4 игровой машины 2 или могут постоянно находиться вне основного корпуса 4. В качестве других примеров устройств, которые могут иметь стандартный коммуникационный порт 208, обменивающийся информацией с ведущим игровым контроллером 200, можно назвать накопитель монет 212, купюроприемник 214, монетоприемник 216, кнопочную панель 218, матрицу 236 источников света, принтер 238, считыватель 240 для карточек и камеру 242 на фиг.2, а также динамик 10, который является частью аудиосистемы, экран 34 дисплея, информационную панель 36 и клавишную панель 22 на фиг.1. Эти устройства могут быть подключены непосредственно к материнской плате 202, содержащей корневой хаб 206 расширения, с использованием одного или более стандартных коммуникационных портов 208 или через одно или более устройств, содержащих стандартные коммуникационные порты, которые подключены к корневому хабу 206 расширения на материнской плате 202. Например, накопитель монет 212 подключен к стандартному коммуникационному порту 222 на купюроприемнике 214. Купюроприемник 214 подключен к корневому хабу 206 расширения на материнской плате 202, содержащей ведущий игровой контроллер 200. В качестве другого примера, камера 242 подключена к хабу 230 на игровой периферии 228, который подключен к корневому хабу 206 расширения на материнской плате 202.
Корневой хаб 206 расширения, интегрированный в системную плату 202, обеспечивает коммутационные подключения для устройств внутри игрового корпуса, не требуя при этом дополнительных аппаратных средств или неинтегрированного расширения коммуникационного порта, в том числе удаленного хаба 210 или хаба 230. Как правило, подключения к корневому хабу 206 расширения идут от подключения к корневому порту в схеме ведущего игрового контроллера 200 (т.е. к корневому порту, предусмотренному в схеме в составе ведущего игрового контроллера 200). Когда корневой хаб расширения подключен к корневому порту на ведущем игровом контроллере 200, то корневому хабу 206 расширения может быть обеспечен более высокий уровень защиты, чем у других удаленных хабов, в том числе у хабов 210 и 230. Вообще, любому хабу можно обеспечить более или менее высокий уровень защиты, чем другим хабам в игровой машине. Защита для хаба может быть обеспечена путем ограничения доступа внутрь игровой машины с помощью одной или более дверец с механическими и/или электрическими механизмами блокировки. Наблюдение за этими механизмами блокировки может вестись ведущим игровым контроллером 200 с использованием датчиков, в том числе электрических выключателей. Далее порты 208 и 224 в корневом хабе расширения могут иметь дополнительные настройки защиты. Например, доступ к портам может быть ограничен с помощью электронного ключа или крышек с механическими блокировками, предотвращающими доступ. Кроме того, устройства, подключенные к этим портам, могут быть блокированы для предотвращения отключения устройства. Далее электронные или механические датчики, в том числе специальная пленка, могут быть использованы применительно к конкретному порту, чтобы определить, имело ли место обращение к порту или нет. Одна или более из этих настроек защиты, также как и другие настройки защиты, могут быть использованы для защиты определенных портов на корневом хабе 206 расширения или любых других портов, используемых для подключения устройств.
Использование стандартных коммуникационных портов 208 и корневого хаба 206 расширения позволяет снимать ведущий игровой контроллер 200 с держателя на материнской плате, которая прикреплена к системной плате 202, без отключения или перемонтажа каких бы то ни было устройств, подключенных к стандартным коммуникационным портам 208. Кроме того, дополнительные устройства могут быть подключены к корневому хабу 206 расширения на материнской плате 202 без перемонтажа материнской платы 202 и ведущего игрового контроллера 200. Например, при отключении удаленного хаба 210 от одного из коммуникационных портов 208 на корневом хабе 206 расширения и замене на подключение к другому устройству, в том числе к камере 242 и т.д., накопитель 212 монет, купюроприемник 214 или монетоприемник 216, а также материнская плата 202 и ведущий игровой контроллер 200 перемонтажу не подлежат.
Кроме того, стандартные коммуникационные порты в корневом хабе 206 расширения, хабе 210 и 230 могут допускать подключения к устройствам не всех типов, чтобы обеспечить дополнительную защиту. Например, уровень защиты стандартного коммуникационного порта 224 может быть выше, чем других стандартных коммуникационных портов 208 на корневом хабе 206 расширения. Поэтому стандартный коммуникационный порт 224 на корневом 206 хабе расширения может допускать подключения исключительно устройств, требующих более высокого уровня защиты, в том числе купюроприемника 214, монетоприемника 216 и игровой периферии 228. В этом примере ведущий игровой контроллер 200 не распознает входных данных от купюроприемника 214, монетоприемника 216 или игровой периферии, если эти устройства не подключены через стандартный коммуникационный порт с более высоким уровнем защиты, в том числе 224. Эта защита может быть обеспечена механическим, электронным или программным средством или их комбинацией. Например, порт 224 может быть размещен внутри защищенного кожуха с блокировкой, чтобы гарантировать, что никто не может подключиться или отключиться через тот порт, не имея необходимого ключа. В другом примере ведущий игровой контроллер имеет временный порт или хаб 201. Обычно этот порт 201 используется для электронного ключа и для диагностики и других безопасных работ на ведущем игровом контроллере. В процессе работы игровой машины устройство обычно не подключается через этот порт. Защищенные порты и шифрование данных способствуют выполнению необходимых требований по защите игровой машины.
В процессе работы игровой машины 2 ведущий игровой контроллер 200 обменивается данными с устройствами, подключенными через систему стандартных коммуникационных портов и подключений. Ведущий игровой контроллер 200 имеет в своем составе память, хранящую программное обеспечение для исполнения стандартного коммуникационного протокола, который позволяет осуществлять связь с различными устройствами с использованием стандартных коммуникационных подключений. Этот коммуникационный протокол может включать в себя возможность шифрования для обмена информацией с одним или более устройствами. Ведущий игровой контроллер 200 обменивается информацией с устройствами для получения информации об устройстве, в том числе информации о том, работает ли оно должным образом или подключено ли оно по-прежнему или нет. Подробно этот процесс связи описан со ссылками на фиг.4, 5, 6 и 7.
В процессе игры ведущий игровой контроллер 200 управляет устройствами. Используя стандартные коммуникационные подключения и стандартный коммуникационный протокол, ведущий игровой контроллер 200 может посылать в устройство команды на выполнение определенной операции. Эти команды могут быть в форме команд низкого или высокого уровня. Ведущий игровой контроллер 200 посылает команды нижнего уровня в устройства, которыми он непосредственно управляет. Среди примеров команд нижнего уровня могут быть команды на включение определенного источника света, выключение определенного источника света, запуск двигателя или останов двигателя. Ведущий игровой контроллер может посылать команды высокого уровня в игровое периферийное устройство 228. Игровое периферийное устройство 228 - это устройство, которое содержит, например, хаб 230 со стандартными коммуникационными подключениями, контроллер 234 периферии и подключения с одним или более периферийными устройствами. Как правило, контроллер периферии управляет одним или более периферийными устройствами. Кроме того, при использовании коммуникационных подключений и стандартного коммуникационного протокола контроллер 234 периферии разрешает обмен информацией между ведущим игровым контроллером 200 и одним или более периферийными устройствами. Среди примеров некоторых периферийных устройств, которые могут быть включены в состав игровой периферии 228 в качестве части, источники 236 света, принтер 238, считыватель 240 для смарт-карт, купюроприемник 214, монетоприемник 216 и кнопочная панель 218 на фиг.2, а также динамик 10, экран 34 видеодисплея, клавишная панель 22 и флуоресцентный дисплей 24 на фиг.1. Контроллер 234 периферии управляет периферийными устройствами, подключенными к контроллеру 234 периферии, в том числе источниками 236 света, принтером 238 и считывателем 240 для смарт-карт. Когда ведущий игровой контроллер 200 посылает команду высокого уровня в игровое периферийное устройство 228 для инициирования запроса на выполнение операции периферийным устройством, управляемым контроллером 234 периферии, контроллер 234 периферии получает команду высокого уровня и преобразует ее в команды нижнего уровня, специфические для операции, запрашиваемой ведущим игровым контроллером 200. Например, ведущий игровой контроллер 200 может послать в игровое периферийное устройство 228 команду высокого уровня на "стробирование" его источников 236 света. Контроллер 234 периферии получает эту команду высокого уровня и отправляет на источники 236 света ряд команд нижнего уровня, в том числе команды включения и выключения определенных источников света с определенными интервалами. В другом примере ведущий игровой контроллер может послать в игровую периферию 228 команду на "печать купона", контроллер 234 периферии примет эту команду высокого уровня и преобразует ее в ряд команд нижнего уровня для принтера 238, в том числе в команды на запуск двигателя, печати строки, перехода к новой строке, протяжки бумаги и останова двигателя. Система команд высокого уровня, позволяющая ведущему игровому контроллеру 200 управлять периферийным устройством в составе игровой периферии 228 с помощью контроллера 234 периферии, хранится как программное обеспечение драйверов устройств в запоминающем устройстве в составе ведущего игрового контроллера 200.
На фиг.3 представлена блок-схема более детального примера игровой периферии в соответствии с этим изобретением. Ведущий игровой контроллер 200 подключен к хабу 230, имеющему в своем составе стандартные коммуникационные подключения в игровой периферии. Контроллер 234 периферии подключен к хабу 230 с использованием линии 300 связи с периферией. Линия 300 связи с периферией подключена к схеме 304 защиты от бросков напряжения и переходных процессов. Схема 304 защиты от бросков напряжения и переходных процессов защищает контроллер периферии от сигналов, поступающих в линии связи с периферией, способных повредить управляющий микропроцессор 312.
Мощность от ведущего игрового контроллера 200 передается в преобразователь 302 мощности. Преобразователь 302 мощности преобразует напряжение, поступающее от ведущего игрового контроллера 200, в напряжения, необходимые для управляющего микропроцессора 312 в составе контроллера 234 периферии или любого из периферийных устройств, подключенных к контроллеру 234, в том числе для двигателя 320, источников 322 света или принтера 324 и др. Периферийные устройства могут также получать мощность непосредственно от блока питания (не показано) с помощью или без помощи преобразователя 302 мощности. Блок питания обычно находится внутри основного корпуса игровой машины.
Аппаратные средства, необходимые для подключения контроллера 234 периферии к определенному периферийному устройству, размещены в интерфейсе 318 периферии. По меньшей мере одно или более периферийных устройств подключены к интерфейсу 318 периферии. В число этих периферийных устройств могут входить двигатель 320, источники 322 света, принтер 324, считыватели для карточек, клавишные панели, кнопочные панели, информационные панели, экраны дисплеев, купюроприемники и монетоприемники. Конфигурация контроллера 234 периферии, в которую входит информация о типах периферийных устройств, управляемых контроллером 234 периферии, хранится в энергонезависимой памяти 316. При замене периферийных устройств в составе игровой периферии энергонезависимая память 316 может быть заменена или перепрограммирована, чтобы содержать в себе новую конфигурацию.
В состав контроллера периферии входит управляющий микропроцессор 312, который управляет связью с ведущим игровым контроллером 200. Кроме того, управляющий микропроцессор 312 преобразует команды высокого уровня от ведущего игрового контроллера 200, инициирующего запросы на определенные операции от периферийных устройств, управляемых контроллером 234 периферии, в команды нижнего уровня, необходимые для выполнения операции. В одном примере осуществления в состав управляющего микропроцессора 312 входят постоянная память 310, энергозависимая память 308, таймер 314, блок 315 обеспечения отказоустойчивости и блок 306 связи с ведущим контроллером. В других примерах осуществления постоянная память 310 или энергозависимая память 308, или они обе могут не входить в состав управляющего микропроцессора.
Энергозависимая память 308 и постоянная память 310 могут быть модернизированы с использованием расширения 309 энергозависимой памяти и расширения 311 постоянной памяти. Расширение 311 постоянной памяти может быть выполнено в форме ППЗУ или флэш-памяти. При использовании флэш-памяти возможно обновление действующего кода контроллера периферии в условиях эксплуатации. Расширение 309 энергозависимой памяти может быть в форме статической оперативной памяти, которая использует батарею с длительным сроком эксплуатации для защиты содержимого памяти при отключении питания.
В предпочтительном примере осуществления каждая игровая периферия, содержащая контроллер 234 периферии, содержит, по существу, тот же самый управляющий микропроцессор 312. В таких модульных проектах схема 302 преобразования мощности и схема защиты от бросков напряжения/переходных процессов будут также, по существу, такими же самыми как у одной, так и у другой периферии. Различия между контроллерами периферии в отдельных перифериях останутся только в интерфейсе 318 периферии и информации, хранимой в энергонезависимой памяти 316. Это упрощает разработку периферии игровых машин и снижает расходы на их эксплуатацию.
Блок 306 связи с ведущим контроллером в составе управляющего микропроцессора 312 управляет связью между контроллером 234 периферии и ведущим игровым контроллером 200. Управляющий микропроцессор может быть серийным устройством, в том числе из семейства микроконтроллеров Infineon Technologies C541U. Блок 306 связи с ведущим контроллером обеспечивает связь с использованием стандартного коммуникационного протокола. По существу, этот блок реализует протокол, связанный со стандартным коммуникационным протоколом типа USB, IEEE1394 или т.д. Таймер 314 пересылает сигналы в управляющий микропроцессор 312, который управляет исполнением кода. Отказоустойчивый таймер 315 содержит код, который является независимым от кода в управляющем микропроцессоре 312. В случае утраты кода в управляющем микропроцессоре 312 или работы кода со сбоями отказоустойчивый таймер 315 сбрасывает всю игровую периферию. Как пример, отказоустойчивый таймер 315 может ожидать от управляющего микропроцессора 312 сообщения с фразой "не сбрасывать". При получении этого сообщения отказоустойчивый таймер 315 будет ожидать в течение определенного интервала времени следующего сообщения с фразой "не сбрасывать". Если по истечении определенного интервала отказоустойчивый таймер 315 не получает сообщения с фразой "не сбрасывать", он сбрасывает игровую периферию.
Постоянная память 310 - память только для чтения, содержимое которой сохраняется при снятии питания управляющего микропроцессора 312. Постоянная память 310 хранит базовый код, используемый управляющим микропроцессором 312 при работе. Код, хранимый в постоянной памяти 310, может быть тем же самым, что и в каждом контроллере 234 периферии. Чтобы управлять определенным периферийным устройством, управляющий микропроцессор 312 использует код, хранимый в постоянной памяти 310 со ссылками на определенную информацию о периферийном устройстве, хранимую в энергонезависимой памяти 316. Энергозависимая память 308 хранит код, параметры, данные от периферийных устройств и данные от ведущего игрового контроллера 200, необходимые для работы управляющего микропроцессора 312. Данные в энергозависимой памяти 308 теряются при снятии питания с управляющего микропроцессора 312. Критическая информация, в том числе информация о текущем состоянии периферийных устройств, хранится в энергонезависимой памяти 316. Энергонезависимая память может представлять собой СППЗУ, карточную флэш-память или оперативную память с питанием от батареи. В случае сбоя питания или какого-либо другого сбоя информация в энергонезависимой памяти 316 используется для восстановления игровой периферии в состояние, предшествующее сбою. Например, когда игрок вводит наличные деньги в игровую машину 2, эта информация может храниться в энергонезависимой памяти 316 контроллера 234 периферии. После сохранения в энергонезависимой памяти эта информация будет доступна для определения состояния машины 2 при любых последующих сбоях.
На фиг.4 представлена типичная блок-схема последовательности операций при включении питания игровой периферии и в процессе обмена информацией с ведущим игровым контроллером. Описание процесса дано для одной игровой периферии. В случае множества игровых периферий этот процесс осуществляется для каждой игровой периферии. Снятие питания с игровой периферии, которое может произойти случайно или иметь место при плановом техническом обслуживании игровой периферии, обычно сопровождается процессом на фиг.4. Когда игровая периферия впервые получает питание, стандартный управляющий микропроцессор, как пример см. 312 на фиг.3, на этапе 400 выполняет самодиагностику, чтобы подтвердить правильность работы периферии. При этом управляющий микропроцессор загружает программное обеспечение, хранимое в своей постоянной памяти. С помощью этого программного обеспечения управляющий микропроцессор выполняет ряд тестов по самодиагностике, чтобы принять решение о правильности работы своих различных компонентов. Среди этих тестов можно назвать тестирование функций процессора, таймера, отказоустойчивого таймера и блока связи с ведущим контроллером в составе управляющего микропроцессора.
После того как на этапе 400 управляющий микропроцессор завершает свою самодиагностику, на этапе 410 выполняется загрузка конфигурации и журнала состояний игровой периферии в энергозависимую память управляющего микропроцессора из энергонезависимой памяти, не входящей в состав управляющего микропроцессора. Энергонезависимая память хранит информацию о периферийных устройствах, подключаемых к управляющему микропроцессору через интерфейс перифери