MXPA01010582A - Iniciacion automatica de una caja de convertidor-descodificador avanzada en un sistema de television por cable al descargar software o firmware en el sistema de cable - Google Patents

Iniciacion automatica de una caja de convertidor-descodificador avanzada en un sistema de television por cable al descargar software o firmware en el sistema de cable

Info

Publication number
MXPA01010582A
MXPA01010582A MXPA/A/2001/010582A MXPA01010582A MXPA01010582A MX PA01010582 A MXPA01010582 A MX PA01010582A MX PA01010582 A MXPA01010582 A MX PA01010582A MX PA01010582 A MXPA01010582 A MX PA01010582A
Authority
MX
Mexico
Prior art keywords
base platform
converter
decoder
terminal
code
Prior art date
Application number
MXPA/A/2001/010582A
Other languages
English (en)
Inventor
Lawrence Vince
Sordo Christopher S Del
Jack M Birnbaum
Christopher Poli
Ira S Lehrman
Ardie Bahraini
S Makofka Douglas
Robert P Mullins
Original Assignee
General Instrument Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by General Instrument Corporation filed Critical General Instrument Corporation
Publication of MXPA01010582A publication Critical patent/MXPA01010582A/es

Links

Abstract

Un método y sistema para programar una terminal del convertidor- descodificador en un sistema de televisión por cable que incluye lanzar automáticamente un objeto de código de arranque a partirde la memoria de sólo lectura de la terminal del convertidor- descodificador cuando la terminal se enciende o se restablece. El objeto de código de arranque automáticamente identificaráy adquiriráe implementaráel código de plataforma base, que puede adquirirse a partir de la memoria de la terminal del convertidor- descodificador o descargarse desde una corriente de transporte de datos proporcionada en el sistema de televisión por cable. Una vez que se ejecuta el código de plataforma base, el código de arranque se termina. El código de plataforma base entonces localiza y adquiere automáticamente el objeto de sistema de operación y cualquier otra aplicación residente de una hilera nativa, que puede jalarse desde la memoria de la terminal del convertidor- descodificador o descargarse desde el sistema de cable. El código de plataforma base autentifica la hilera nativa y después lanza la hilera nativa para proporcionar completamente la funcionalidad de la terminal del convertidor-descodificador.

Description

INICIACIÓN AUTOMÁTICA DE UNA CAJA DEL CONVERTIDOR- DESCODIFICADOR AVANZADA EN UN SISTEMA DE TELEVISIÓN POR CABLE AL DESCARGAR SOFTWARE O FIRMWARE EN EL SISTEMA DE CABLE SOLICITUDES RELACIONADAS Esta solicitud reclama prioridad de una solicitud de patente provisional Norteamericana previa titulada "Software and Firmware Initialization and Upgrade Management System and Method for and Advanced Set-Top Box in a Cable Televisión System," No. Serie 60/130,328, presentada el 21 de abril de 1999.
CAMPO DE LA INVENCIÓN La presente invención se refiere al campo de la iniciación de una terminal del convertidor-descodificador de un sistema de televisión por cable y el mejoramiento del software o firmware en la terminal del convertidor-descodificador. Más particularmente, la presente invención se refiere al campo de proporcionar una identificación automática y adquisición de un código de plataforma base apropiado y otros objetos código para la terminal en la red por cable.
ANTECEDENTES DE LA INVENCIÓN En un sistema de televisión por cable típico, a los abonados se les proporciona con una caja o terminal del convertidor-descodificador . La terminal del convertidor-descodificador es una caja de equipo electrónico que se utiliza para conectar la televisión del abonado, y potencialmente otros equipos electrónicos, con la red por cable. La caja del convertidor-descodificador se conecta usualmente a la red por cable a través de un tomacorriente mural o axial. La caja del convertidor-descodificador es esencialmente una computadora que se programa para procesar las señales de la red por cable para proporcionar al abonado con los servicios por cable. Estos servicios de la compañía de televisión por cable típicamente incluyen acceso a un número de canales de televisión y tal vez, a una guía de programa electrónico. Los canales premium adicionales también pueden proporcionarse a los abonados con un cargo adicional. Los eventos de pago por evento y vídeo a pedido también puede proporcionarse en la red. La caja del convertidor-descodificador se programa para proporcionar estos y otros servicios al abonado. Sin embargo, los servicios de la compañía por cable no necesitan limitarse para proporcionar la programación de televisión. Algunas compañías de cable ahora están ofreciendo acceso a Internet y e-mail en sus redes de cable a velocidades mucho más rápidas que las que están disponibles en las líneas telefónicas convencionales. Se anticipa en el futuro que más y más servicios se proporcionarán en la red por cable, incluyendo, incluso servicio telefónico básico. Eventualmente, cada casa u oficina puede tener una sola conexión, mediante la red por cable, a todos los servicios de datos electrónicos. Cuando una nueva terminal del convertidor-descodificador se suma a la red por cable, ésta debe iniciarse. Para iniciar una terminal del convertidor-descodificador, la terminal debe proporcionarse con la programación requerida para permitir que funcione dentro de la red por cable específica a la cual se conecta y para proporcionar con esto los servicios para los cuales ha pagado el abonado. Adicionalmente, a medida que evoluciona la red por cable y los servicios proporcionados, la terminal del convertidor-descodificador también debe evolucionar para ser capaz de proporcionar a los abonados con todos los servicios de la red por cable. Esta evolución de la caja del convertidor-descodificador principalmente implicará cambios a la programación, o tal vez una reiniciación de la caja del convertidor-descodificador. Al mejorar el software o firmware de la caja del convertidor-descodificador, la caja puede hacerse para realizar servicios más eficientes u ofrecer nuevos servicios a medida que evoluciona la red por cable. Para poder iniciar las nuevas terminales del convertidor-descodificador y mejorar la programación en la población existente de cajas del convertidor-descodificador en una red por cable, es preferible transmitir la programación necesaria a las cajas del convertidor-descodificador mediante la red por cable misma. De otra manera, un técnico debe visitar a cada abonado para instalar o mejorar las cajas del convertidor-descodificador. Dichas instalaciones de campo y mejoramientos obviamente pueden tener gastos significantes. El cabezal de cable es la instalación de la cual el operador de red por cable difunde las señales de televisión y proporciona otros servicios en la red de cable. El software que se proporciona a la población de terminales del convertidor-descodificador pueden difundirse del cabezal de cable en la red de cable. Sin embargo, existe una variedad de problemas asociados con el inicio y el mejoramiento de las terminales del convertidor-descodificador al difundir la programación desde el cabezal de cable. Por ejemplo, con el tiempo la población de terminales del convertidor-descodificador probablemente incluirá diferentes marcas y modelos de terminales del convertidor-descodificador con diferentes capacidades. El software requerido para iniciar o mejorar cada marca y modelo de terminal del convertidor-descodificador puede ser diferente. Consecuentemente, existe una necesidad en la técnica de un método para correlacionar el código de programación adecuado con las capacidades de la terminal del convertidor-descodificador que se inicia o mejora. Adicionalmente, existe una necesidad de automatizar el proceso de inicio para eliminar o disminuir el tiempo requerido por un técnico para instalar, mejorar o reiniciar una terminal del convertidor-descodificador.
SUMARIO DE LA INVENCIÓN Es un objeto de la presente invención cumplir las necesidades antes descritas y otras. Específicamente, es un objeto de la presente invención proporcionar un método y mecanismo para correlacionar el código de programación adecuado que se difunde en la instalación de cable con las capacidades de la terminal del convertidor-descodificador que se inician o mejoran. Adicionalmente, es un objeto adicional de la presente invención automatizar el proceso de inicio para eliminar o disminuir el tiempo requerido por un técnico para instalar, mejorar, o reiniciar una terminal del convertidor-descodificador . Objetos adicionales, ventajas y características novedosas de la invención se establecerán en la descripción que sigue o pueden aprenderse por aquellos expertos en la técnica a través de la' lectura de estos materiales o practicando la invención. Los objetos y ventajas de la invención pueden lograrse a través de los medios citados en las reivindicaciones anexas. Para lograr estos objetos establecidos y otros, la presente invención puede modificarse y describirse como un método para iniciar una terminal del convertidor-descodificador en un sistema de televisión por cable al ejecutar automáticamente un objeto de código de arranque almacenado en una unidad de memoria de la terminal del convertidor-descodificador con la provisión de energía a la terminal del convertidor-descodificador. El código de arranque entonces localiza, adquiere y ejecuta automáticamente un objeto de código de plataforma base. El objeto de código de plataforma base puede procesar señales de televisión, pero no puede proporcionar algunas funciones de la terminal del convertidor-descodificador más altas. La adquisición del objeto de código de plataforma base puede incluir localizar una transmisión del objeto de código de plataforma base dentro de una difusión de corriente de transporte de datos en el sistema de televisión por cable y descargar el código de plataforma base. Alternativamente, la locación y adquisición del objeto de código de plataforma base puede incluir identificar el objeto de código de plataforma base ya almacenado en la unidad de memoria de la terminal del convertidor-descodificador. Preferiblemente el método de la presente invención además incluye verificar la autentificación y autorización del objeto de código de plataforma base antes de ejecutar el objeto de código de plataforma base. Una vez que el objeto de código de plataforma base se lanza, el método incluye pasar el control de la terminal del convertidor-descodificador al objeto de código de plataforma base de ejecución desde el objeto de código de arranque. Con el objeto de código de arranque en control de la terminal del convertidor-descodificador, el método de la presente invención procede a localizar, adquirir y ejecutar un objeto de sistema de operación bajo la dirección del objeto de código de plataforma base de ejecución. Como en lo anterior, el objeto de sistema de operación puede descargarse desde la corriente de transporte de datos del sistema de televisión por cable o jalarse desde la unidad de memoria de la terminal del convertidor-descodificador. En el primer caso, la terminal del convertidor-descodificador puede recibir un mensaje de inicio en el sistema de televisión por cable especificando en donde la corriente de transporte de datos localiza y descarga el objeto de sistema de operación. El sistema de operación entonces se verifica para la autorización y se autentifica antes de ser ejecutado. El método de la presente invención también comprende preferiblemente proporcionar dos puntos de pila establecidos dentro de la unidad de memoria de la terminal del convertidor-descodificador; almacenar siempre el objeto de código de plataforma base en la unidad de memoria que inicia en el primero de los dos puntos de pila establecidos; y siempre almacenar el objeto de sistema de operación en la unidad de memoria comenzando en el segundo de los dos puntos de pila establecidos. El método también puede incluir volver a ejecutar el objeto de código de arranque en respuesta a un mensaje de restablecimiento recibido en el sistema de televisión por cable. Preferiblemente, el objeto de código de arranque se almacena en una porción de memoria de sólo lectura de la unidad de memoria. La presente invención también abarca el hardware y los elementos de sistema de una terminal del convertidor-descodificador requerida para implementar el método descrito en lo anterior. Estos incluyen un procesador central de la terminal del convertidor-descodificador para ejecutar los diversos objetos de código almacenados en la memoria y un sintonizador y modem que permitan que la terminal del convertidor-descodificador reciba y/o transmita datos en el sistema de televisión por cable.
BREVE DESCRIPCIÓN DE LOS DIBUJOS Los dibujos anexos ilustran la presente invención y son una parte de la especificación. Junto con la siguiente descripción, los dibujos demuestran y explican los principios de la presente invención.
La Figura 1 es un diagrama de bloque que ilustra las tres etapas diferentes en las cuales los diferentes paquetes de programación tienen control de la terminal del convertidor-descodificador durante el proceso de inicio de la presente invención. La Figura 2 es un diagrama de flujo que ilustra las etapas del proceso de inicio para una terminal del convertidor-descodificador de acuerdo con la presente invención. La Figura 3 es un diagrama de bloque de los diversos dispositivos de memoria y algunos objetos de código utilizados en una caja del convertidor-descodificador de acuerdo con la presente invención.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN: La presente invención se dirige a los problemas implicados en la iniciación de nuevas cajas del convertidor-descodificador o reiniciación de las cajas del convertidor-descodificador existentes utilizando difusión de código de programación en la red de cable. Este proceso incluye proporcionar estos códigos de objeto a las cajas del convertidor-descodificador que son necesarios para permitir que esas cajas del convertidor-descodificador funcionen dentro del sistema de cable y proporcionen los servicios comprados por los abonados.
Establecido en un amplio principio, la presente invención tiene como objetivo proporcionar una arquitectura de terminal del convertidor-descodificador que incluye un objeto de código de arranque residente. Como se muestra en la Figura 3, el objeto (302) de código de arranque reside en la terminal (300) del convertidor-descodificador, preferiblemente en la memoria (ROM) (301) de sólo lectura y puede ejecutar automáticamente e iniciar o reiniciar la terminal del convertidor-descodificador. El código de arranque preferiblemente se ejecutará automáticamente por el procesador central (no mostrado) de la terminal del convertidor-descodificador. La ejecución del código de arranque puede dispararse mediante e inmediatamente después de la conexión de la energía a la terminal del convertidor-descodificador. La presente invención puede requerir adicionalmente la conexión de la señal de corriente de transporte del sistema de cable antes de que se dispare la ejecución del código de arranque. Una vez que se ejecuta el código de arranque, no se necesita requerir de acción adicional por el usuario/instalador. Además, no se requiere interacción específica entre el cabezal de cable y la terminal del convertidor-descodificador que está iniciando o arrancando. Como se describirá en detalle a continuación, el código de arranque de la presente invención encontrará, descargará y comenzará automáticamente la ejecución del objeto de código de software correcto u objetos necesarios para iniciar la terminal del convertidor-descodificador. El código de arranque localizará, identificará y descargará la programación requerida de entre potencialmente muchos objetos de código que pueden multiplexarse en la corriente de transporte que viene de la instalación del cabezal de cable del sistema de televisión por cable. El código de arranque reconoce la configuración de hardware de la terminal del convertidor-descodificador en la cual reside mediante un identificador codificado de ROM interno. Este identificador se correlaciona contra un valor transportado en un mensaje indicador de descarga de objeto de la corriente de transporte para asegurar que el código de arranque obtenga y descargue los objetos apropiados a la terminal del convertidor-descodificador en la cual es residente el código de arranque. Funcionalmente, el código de arranque de la presente invención identificará una frecuencia de canal de control apropiada, encontrará la corriente de paquetes de datos de control dentro del canal de control, identificará y descargará el objeto correcto de entre los objetos en la corriente de transporte, verificará que el código descargado se autorice y este libre de error, e iniciará el código descargado sin ayuda directa por un técnico o intervención del cabezal de cable. El término "código de arranque" como se utiliza en la presente comprende el código mínimo necesario para lograr esta funcionalidad. Esencialmente existen dos fases distintas de programación de una caja del convertidor-descodificador dirigida por la presente invención. La primera es la programación inicial de la caja del convertidor-descodificador. La segunda es el mejoramiento de la programación o reiniciación de la caja del convertidor-descodificador después de que la caja se ha colocado en servicio. La programación inicial de la caja del convertidor-descodificador con frecuencia se realiza por el operador del sistema de cable después de que la caja del convertidor-descodificador se ha comprado a partir de un fabricante. Debido a que cada red por cable se diseña y construye en diferentes momentos por los diferentes proveedores de servicio, cada red por cable puede tener un diseño diferente, arquitectura y objetos de código. Además, los servicios específicos ofrecidos pueden variar entre las redes de cable. Por lo tanto, para adaptar la caja del convertidor-descodificador para funcionar con el ambiente específico de un sistema de cable del proveedor de servicio y para proporcionar el grupo específico de servicios actualmente ofrecidos por ese proveedor de servicio particular, la caja del convertidor-descodificador debe programarse por consiguiente o "iniciarse". El proceso de iniciación de una terminal del convertidor-descodificador de acuerdo con la presente invención se explicará ahora. Para poder iniciar una terminal del convertidor-descodificador, es decir aceptar y utilizar la programación inicial que recibe, debe tener alguna programación base que instruya cómo aceptar y utilizar esa programación inicial. Esta programación de base dentro del contexto de la presente invención se llama el código de arranque. Como se describe en lo anterior, el código de arranque es el código de computadora residente en la memoria permanente de la terminal del convertidor-descodificador que se carga, preferiblemente en la memoria de sólo lectura, en la fábrica y no puede cambiarse una vez que la terminal se ha desplegado. Como se muestra en la Figura 1, existen tres hileras generales o clasificaciones de programación que corren o tienen control de la terminal del convertidor-descodificador durante las diferentes etapas en la iniciación y operación de la terminal de acuerdo con la presente invención. Con referencia a la Figura 1, la primera clasificación del código es el código (1) de arranque. El código de arranque preferiblemente se localiza en la memoria de sólo lectura de la terminal del convertidor-descodificador, pero puede descargarse alternativamente en la memoria Flash. Mientras corre el código (1) de arranque, la terminal del convertidor-descodificador no puede proporcionar algún servicio al abonado. La función (2) del código (1) de arranque es alcanzar la corriente de transporte de datos recibida de la instalación del cabezal de cable para localizar, adquirir y comenzar la ejecución del código (3) de plataforma base el cual es la siguiente hilera o clasificación de programación. El código (1) de arranque se diseña para autentificar el código de plataforma base después de que se descarga el código de plataforma base. El código (1) de arranque preferiblemente volverá a autentificar el código de plataforma base cada vez que lance el objeto (3) de plataforma base. Cuando el código (3) de plataforma base se ejecuta, la ejecución del código (1) de arranque se termina y el control de la terminal del convertidor-descodificador pasa al código (3) de plataforma base. El código (3) de plataforma base puede cargarse en la fábrica. Sin embargo, bajo los principios de la presente invención, el código (3) de plataforma base se transmite preferiblemente a la terminal del convertidor-descodificador desde el cabezal de cable durante la iniciación de la terminal. Esto permite que el operador del sistema de cable se acostumbre al código (3) de plataforma base para la operación óptima en el sistema de cable específico donde se despliega la terminal del convertidor-descodificador. Preferiblemente, el código (3) de plataforma base se transmite en la instalación de cable en una corriente de transporte fuera de banda (00B) . Sin embargo, está dentro del alcance de la presente invención que se transmita al código (3) de plataforma base en un canal de control en banda. El código (3) de plataforma base tiene dos funciones. La primera función del código (3) de plataforma base es proporcionar la capacidad básica de permitir que un abonado vea la televisión utilizando la señal del sistema de televisión por cable. La segunda función es controlar la descarga de (5) de la siguiente clasificación de objetos de código, es decir, el sistema de operación objetivo (0/S) y las aplicaciones (6) residentes. El código (3) de plataforma base, mientras permite que los abonados vean la televisión, no soporta generalmente alguna función adicional de la terminal del convertidor-descodificador. Sin embargo, el código (3) de plataforma base puede adquirir, autentificar, autorizar y ejecutar objetos de la tercera y la clasificación final de la programación (por ejemplo el O/S) (5) . La tercera clasificación de programación, el sistema de operación y las aplicaciones (6) residentes proporcionan las funciones, de la terminal del convertidor-descodificador adicionales disponibles del sistema de cable. El sistema de operación (O/S) típicamente es el código de una tercera parte (tal como inCE™ de Microsoft) que proporciona acceso, con las aplicaciones residentes, a todas las capacidades de la terminal del convertidor-descodificador autorizadas. El sistema de operación típicamente utiliza un módulo de codificación integrado adicional proporcionado por el fabricante de la terminal del convertidor-descodificador que hace interfaz el sistema de operación con el hardware particular de esa terminal del convertidor-descodificador para permitir que el sistema de operación funcione con esa terminal del convertidor-descodificador específica. Las aplicaciones residentes son programas computarizados que corren en las terminales del convertidor-descodificador bajo el sistema de operación. Las aplicaciones residentes trabajan con el sistema de operación para proporcionar las capacidades de la terminal del convertidor-descodificador que están además de mirar la televisión. La hilera nativa es un grupo específico de aplicaciones de software, incluyendo el sistema de operación y tal vez varias aplicaciones residentes, que proporcionan las funciones pretendidas de la terminal del convertidor-descodificador. Los elementos específicos de la hilera nativa se determinan por el operador del sistema. Como se indica en las Figuras 1 y 3, el código (1) de arranque preferiblemente se carga en la fábrica en la memoria de sólo lectura (ROM) de la terminal del convertidor-descodificador y se ejecuta tan pronto como se proporciona energía de CA a la terminal del convertidor-descodificador. Alternativamente, el código de arranque puede ejecutarse en respuesta a una señal (4) de restablecimiento recibida, por ejemplo del cabezal de cable, es decir, el operador de sistema. Esto permite que el operador del sistema vuelva a iniciar la terminal del convertidor-descodificador siempre que se desee. La señal (4) de restablecimiento se recibe preferiblemente por el código (3) de plataforma base que entonces termina la ejecución del sistema de operación y las aplicaciones (6) residentes, si se corre, y comienza la ejecución del código (1) de arranque. Alternativamente, la señal (4) de restablecimiento puede provocar que el código (3) de plataforma base termine y vuelva a cargar la hilera (6) nativa en lugar de ejecutar el código (1) de arranque. Como se describe en lo anterior, siempre que se ejecute, el código (1) de arranque adquiere y descarga el código (3) de plataforma base. El código de plataforma base puede proporcionarse a la terminal del convertidor-descodificador en la red por cable desde el cabezal de cable o, alternativamente, puede cargarse en la fábrica junto con el código de arranque. • El código de plataforma base preferiblemente se almacena en la memoria (303) Flash como se muestra en la Figura 3. El código (1) de arranque descargará el código (3) de plataforma base, por ejemplo, en un canal fuera de banda del cabezal de cable o, si el código de plataforma base fuera cargado en la fábrica, identificará el código (3) de plataforma base en memoria. El código (1) de arranque autentifica el código (3) de plataforma base desde cualquier fuente que se obtiene y después ejecuta el código (3) de plataforma base. El código (3) de plataforma base entonces adquiere el sistema de operación y, preferiblemente, los otros objetos de la hilera (6) nativa. El sistema de operación y los otros objetos se descargan desde el cabezal de cable en la red de cable. El código (3) de plataforma base adquirirá el sistema de operación y otros objetos cuando primero se ejecute o, mientras corra, en respuesta a un mensaje (4) de iniciación del operador de sistema. El mensaje (4) de iniciación puede proporcionarse en la red de cable. El sistema de operación y las aplicaciones (6) residentes entonces se ejecutan cuando la hilera nativa se adquiere, se autoriza y se autentifica. La Figura 2 es un diagrama de flujo que proporciona una explicación más detallada de la secuencia de iniciación de acuerdo con la presente invención. Como se muestra en la Figura 2, cuando la terminal del convertidor-descodificador primero se enciende, o una señal de restablecimiento apropiada se ha recibido, el código (29) de arranque se ejecuta. El código de arranque debe primero determinar si la caja del convertidor-descodificador tiene o debe adquirir el código de plataforma base. Para determinar esto, el código de arranque primero verifica la memoria Flash para el código de plataforma base, la última frecuencia transportadora conocida (LKC) de canal de control del cabezal de cable, y una Identificación del Proveedor de Mensaje de Manejo Titulación (201, 202) (EMM Provider ID) . Si cualquiera de las tres siguientes condiciones se descubre, el código de arranque concluirá que debe adquirir el código de plataforma base y explorará el canal fuera de banda o el canal en banda del cual puede obtenerse el código de plataforma base. El código de arranque busca adquirir (1) el código de plataforma base si no se almacenan el código de plataforma base, el último portador conocido y la ID del Proveedor de EMM en la memoria Flash, (2) el código de plataforma base en la memoria Flash equivoca una verificación de autentificación o (3) ninguna memoria volátil indica que la exploración del canal de control (probablemente un canal fuera de banda) se requiere. Si la verificación Flash determina que un objeto de código de plataforma base existe, el código de arranque procede a ejecutar el objeto de plataforma base después de la autorización apropiada y la autentificación como se describe a continuación. Si se descargan tanto la plataforma base como el O/S en Flash, el código de arranque autoriza y autentifica la plataforma base y después lanza la plataforma base y pasa el control de la terminal del convertidor-descodificador al mismo. El objeto de plataforma base, a su vez, autoriza y autentifica (A&A) el O/S. El O/S autentificado entonces se corre y el control pasa al O/S. Si el código de plataforma base no se carga en la memoria Flash, el código de arranque carga la plataforma base fuera de la corriente de transporte fuera de banda (203, 204, 207) . Sin embargo, antes de que se escriba en la memoria Flash, se requiere una autentificación exitosa (206, 205) .
Cuando el código de plataforma base autentificado se ejecuta, el código de arranque pasa el control a la plataforma base (211, 228) . Si el código de plataforma base equivoca en la verificación de autentificación (205) , el código de plataforma base fallado se borra (208) y se incrementa un contador (18) que rastrea el número de intentos en adquirir y autentificar un código de plataforma base. Si el contador está debajo de un número aceptable predeterminado de intentos, el código de plataforma base nuevamente se descarga (207) . Alternativamente, si el número aceptable de intentos por descargar el código de plataforma base se excede, la terminal del convertidor-descodificador puede señalar al cabezal de cable una llamada de servicio (210) . Bajo los principios de la presente invención, el código de arranque localiza el objeto de plataforma base que utiliza un mensaje de código de arranque o "mensaje_control_de código de arranque" que se envía periódicamente en la corriente de transporte fuera de banda (204). El uso del mensaje_control_de código de arranque ahora se describirá en detalle. Cuando el código de arranque determina la necesidad de descargar el objeto de plataforma base, éste primero explora el canal de control. Una tabla de frecuencias portadoras posibles en las cuales el canal de control o canales se difundirán se incluye en el código de arranque. Estas frecuencias pueden estar tanto en banda como fuera de banda. El código de arranque provocará que la terminal del convertidor-descodificador sintonice cada una de estas frecuencias a su vez hasta se localice el canal de control se obtenga una inmovilización del portador. Si no se recibe algún canal de control a una frecuencia particular durante un periodo de tiempo predeterminado, la terminal del convertidor-descodificador sintonizará la siguiente frecuencia en la tabla. El canal de control es una corriente de paquetes de datos que pueden recibirse y utilizarse por la terminal del convertidor-descodificador. Para poder difundir un número de diferentes objetos simultáneamente, el cabezal de cable dividirá los objetos que se transmiten en el canal de control en paquetes. Los paquetes de los diversos objetos que se transmiten pueden entonces intercalarse o multiplexarse en tiempo juntos para que varios objetos se transmitan todos esencialmente en forma simultánea. Los paquetes para cada objeto particular tendrán un identificador de paquete común o "PID". De este modo, una terminal del convertidor-descodificador puede identificar los paquetes para el objeto que está trabajando para adquirir. Al adquirir todos los paquetes con un PID particular, el objeto completo puede entonces reensamblarse por la terminal de convertidor-descodificador a partir del conjunto de paquetes con PID particular. De acuerdo con la presente invención, una terminal del convertidor-descodificador puede iniciar en cualquier lugar en progresión para adquirir un objeto y continuar cíclicamente hasta que todos los paquetes necesarios se descargan. Por ejemplo, la terminal del convertidor-descodificador puede cargar el primer paquete que recibe con un PID X. Ese paquete puede ser un paquete de 50 de 100 marcado por PID X. La terminal entonces continúa recolectando los paquetes 51 a 100 con PID X, después 1 a 49. Con todos los paquetes 100 obtenidos, la terminal puede reensamblar el objeto en paquetes. El cabezal de cable puede difundir un número de objetos simultáneamente ya que puede existir diferentes tipos o clases de terminales del convertidor-descodificador en la población. Cada clase de terminales del convertidor-descodificador puede necesitar una versión diferente de, por ejemplo, el código de plataforma base, el O/S o una aplicación residente. Por lo tanto, cuando el código de arranque va a iniciar la terminal del convertidor-descodificador y debe adquirir el código de plataforma base, el código de arranque debe determinar donde adquirir la plataforma base apropiada para la terminal de convertidor-descodificador en la cual está corriendo. De este modo, una vez que se logra la inmovilización del portador y el canal de control está siendo recibido, el código de arranque comenzará a recolectar los paquetes de la corriente de transporte en el canal de control que se identifica con PID 1. El PID 1 se dedica al mensaje de acceso condicional en el estándar MPEG. Los paquetes de PID 1 proporcionarán al código de arranque que corre en la terminal del convertidor-descodificador con una Tabla de Acceso Condicional (CAT) de las ID de Proveedor de EMM cada una de las cuales identifica un PID para un conjunto de paquetes en la corriente de transporte que constituye una corriente de EMM (Mensaje de Manejo de Titulación) . El código de arranque comenzará con el primer EMM y comenzará los paquetes de carga de la corriente de transporte que se marcan con el PID de EMM dado por la primera ID del Proveedor de EMM. Los paquetes de PID de EMM que se adquieren contendrán el mensaje de código de arranque de la presente invención que, a su vez, incluye un identificador de plataforma. El código de arranque que se instala en la fábrica en la terminal del convertidor-descodificador también incluirá un identificador de plataforma que es específico al tipo de terminal en la cual el código de arranque es residente. Cuando se corre, el código de arranque intentará correlacionar el identificador de plataforma proporcionado en la fábrica con el identificador de plataforma del mensaje de código de arranque de los paquetes de PID de EMM. Si no se encuentra correlación, el código de arranque seleccionará la siguiente ID del Proveedor de EMM en el CAT y verificará los paquetes del PID de EMM identificados por ese descriptor de la ID del Proveedor de EMM para un mensaje de código de arranque con un identificador de plataforma de correlación. Esto continúa hasta que el identificador de plataforma de correlación se encuentra (203) . Puede ser posible buscar el PID de EMM múltiple simultáneamente para reducir el tiempo de validación de EMM y el tiempo requerido para encontrar el mensaje de código de arranque de correlación. Si todas las ID del Proveedor de EMM en el CAT de PID 1 se verifican y no se encuentra correlación para el identificador de plataforma, el código de arranque buscará otro canal de control en otra frecuencia portadora al regresar a la tabla de frecuencias del portador. Cuando otra frecuencia con un canal de control se identifica y se busca, el código de arranque extraerá el PID 1 y repetirá el proceso antes delineado. Esto continúa hasta que se' encuentra un mensaje de código de arranque con un identificador de plataforma que correlaciona el identificador de plataforma de código de arranque. Cuando el código de arranque encuentra un mensaje de código de arranque con un identificador de plataforma de correlación, el código de arranque extraerá un PID descargado (DL PID) especificado por el mensaje de código de arranque de correlación. El PID descargado (DL PID) es el identificador para los paquetes que transportan el objeto de código, por ejemplo, el objeto de código de plataforma base, que es apropiado para el tipo de terminal del convertidor-descodificador con el identificador de plataforma en el mensaje de código de arranque. El código de arranque entonces puede descargar el objeto de código de plataforma base al adquirir los paquetes con el DL PID y al reensamblar los datos en esos paquetes en el código de plataforma base. Como se muestra en la Figura 2, una vez que el código de plataforma base ha sido descargado o identificado como ya residente en la memoria Flash, una verificación de autentificación (206) se realiza para verificar que el código de plataforma base ha sido recibido exacta y completamente y no ha sido alterado por una parte no autorizada. Si la plataforma base falla la verificación de autentificación, ésta se borra (208) . Un contador de carga puede entonces verificarse para determinar el número de veces que la terminal del convertidor-descodificador ha intentado adquirir un código de plataforma base válido (209) . Si el contador excede un límite predeterminado, la terminal del convertidor-descodificador puede señalar al cabezal de cable una llamada de servicio o puede indicar la necesidad de pedir una llamada de servicio al abonado (210) . Si el contador de carga no se excede, el código de arranque revertirá el proceso descrito en lo anterior y nuevamente intentará descargar el código de plataforma base (207). Alternativamente, si el código de plataforma base es autentificado, entonces se lanza (211) . El código de plataforma base entonces determinará si la hilera nativa, incluyendo el O/S, se carga en la memoria Flash (214) . Si no es así, el código de plataforma base buscará descargar la hilera nativa. Con el código de plataforma base corriendo, el operador del sistema puede proporcionar a la terminal del convertidor-descodificador con un conjunto de "mensajes de iniciación" que proporcionan, por ejemplo, mapas de canales, tablas e información de EMM (219, 212) . Estos mensajes deben proporcionarse antes de que se cargue la hilera nativa. Los mensajes de iniciación pueden instruir a la terminal del convertidor-descodificador donde adquirir la hilera nativa. Después de que se ha descargado la hilera nativa o ya se encuentra existente en la memoria Flash, se realiza una verificación de autorización en la hilera nativa (215, 220, 224, 223) . La descarga de la hilera nativa incluirá un Mensaje de Acceso Condicional de Objeto (OCAM) que se registra por la terminal del convertidor-descodificador. La firma de autentificación y el código de autorización para el objeto de hilera nativa se proporcionan en el OCAM y se utiliza para autorizar y autentificar la hilera nativa en la forma descrita en lo siguiente. Si la verificación de autorización no es exitosa, el código de hilera nativa se borra (225, 217) y el código de plataforma base intentará nuevamente adquirir la hilera nativa (221) . Si es exitosa la verificación de autorización, la hilera nativa y cualquier aplicación residente asociada con esta, se carga y una verificación de autenticación se realiza (222) como en lo anterior si la verificación de autentificación falla, el código descargado se borrará (217) y un contador de carga se verificará (216) para ver si otro intento por descargar el código debe hacerse o señalar una llamada de servicio (213) . Alternativamente, si la verificación de autentificación (222, 218) es exitosa, la hilera nativa y cualquier aplicación residente asociada se ejecutarán comenzando con el O/S (226, 227) . El código de plataforma base realiza la autorización y autentificación en el código de O/S. Si el O/S pasa la autorización y verifica la autentificación, el O/S se ejecuta y el control se transfiere al O/S. El BIOS (Software de Entrada/Salida Básico) puede realizar la autorización y la autentificación del resto de la hilera nativa (215, 224, 222) . En resumen, varias porciones del proceso de arranque incluyen un proceso de autorización y autentificación de objeto (A&A) para los objetos recientemente adquiridos o localizados. La verificación de autorización de la hilera nativa se hace dentro de la plataforma base. La autorización de la plataforma base es, a su vez realizada por el código de arranque, el cual sólo puede autentificar un objeto de plataforma base. Cuando se corre, el O/S de la hilera nativa realiza la autentificación y autorización de los objetos subsecuentemente cargados. Estas verificaciones se requieren para que, dada una interrupción en la energía, etc., el estado de autorización de la terminal pueda verificarse. Si en cualquier punto una verificación de autorización o autentificación falla, el objeto que se verifica se desactiva. La autentificación se realiza como sigue. Cuando un objeto de código se difunde en la red de cable, se asocia con un código de autorización y una firma de autentificación.
Para el objeto de plataforma base, el código de autorización preferiblemente se da en un campo de id_objeto del mensaje de código de arranque. La firma de autentificación preferiblemente se da en un campo de descripción_objeto del mensaje de código de arranque. Para otros objetos, el O/S y la hilera nativa, el código de autorización y la firma de autentificación se proporcionan en un OCAM descargado con el objeto. La firma de autentificación se calcula matemáticamente utilizando un algoritmo específico con el objeto de código mismo como la entrada para el algoritmo. La firma entonces se vuelve a calcular por la terminal del convertidor-descodificador utilizando el mismo algoritmo como entrada. Si la firma calculada por la terminal del convertidor-descodificador se correlaciona con la transmitida con el código, el código puede implementarse con la confianza de que ha sido transmitida adecuadamente, sin alteración accidental o maliciosa. La presente invención proporciona dos formas básicas para mejorar la plataforma básica en una población de terminales decodificador una vez que esas terminales se han colocado en servicio completo. Estos dos métodos de mejoramiento son (1) un mejoramiento universal de la población completa (es decir, toda la población sintonizada a una corriente de control particular) y (2) un mejoramiento objetivo de un subconjunto o subconjuntos de la población. Ambos métodos pueden hacer uso del código de arranque para realizar el mejoramiento. Un mejoramiento universal se logra al difundir una orden del cabezal de cable para todas las terminales del convertidor-descodificador en la corriente de control para borrar su objeto de plataforma base existente. El código de arranque entonces comienza a ejecutar, asume el control y realiza el procedimiento de iniciación representado en lo anterior, incluyendo volver a colocar la plataforma base borrada con una plataforma base descargada en la red de cable. Un mejoramiento objetivo aplica a una terminal sencilla o a un grupo pequeño de terminales en un canal de control dado. Cada terminal tiene una dirección de un solo destino específico y, por lo tanto, puede dirigirse por el cabezal de cable e instruirse para borrar el código de plataforma base existente y volver a iniciar con el código de mejoramiento. Alternativamente, cada terminal tiene una o más direcciones de múltiples destinos que se comparten por otras terminales en la población. Se prefieren cuatro direcciones de múltiples destinos para cada terminal. Con una dirección de múltiples destinos, el cabezal de cable puede señalar una purga de código y volver a iniciar una clase específica de terminales que comparten la dirección de múltiples destinos particular. En un mejoramiento objetivo, la plataforma base, utilizando los mensajes de descarga estándares, establece los parámetros de descarga en una base de datos de arranque en una memoria no volátil (véase la Figura 3) y permite que el código de arranque tome el control. El código de arranque entonces utiliza los parámetros para adquirir el código de plataforma base mejorado, reemplazando el código de plataforma base original. Esto se hace mientras la versión más vieja del código de plataforma base aún está girando en una ubicación indicada por el mensaje de arranque. Además de los ejemplos dados en lo anterior, un mejoramiento no necesita trastornar el código de plataforma base. En lugar de ello, el mejoramiento o la señal de restablecimiento, ya sea universal u objetivo, puede instruir a las terminales del convertidor-descodificador terminar y borrar solamente el sistema de operación (O/S) , toda la hilera nativa, o una o más aplicaciones residentes particulares. El control entonces regresa al código de plataforma base el cual adquirirá y autentificará un nuevo O/S, toda la hilera nativa, o porciones de la hilera nativa según sea necesario. De este modo, la hilara nativa (o sólo el O/S) pueden mejorarse sin requerir que el código de plataforma base se vuelva a adquirir también. La Figura 3 ilustra cuatro unidades de memoria de una terminal (300) del convertidor-descodificador de acuerdo con la presente invención. Una unidad de memoria de sólo lectura (ROM) (301) contiene el código (302) de arranque. Una unidad (303) de memoria Flash contiene el código (304) de plataforma base y el objeto (306) O/S. A un lado de estos objetos, la memoria (305) Flash adicional está disponible. Dos punteros (307, 308) de pila designan ubicaciones absolutas en la memoria (303) Flash para el código (304, 308) de plataforma base y el O/S (306, 307) . Es importante que estos dos objetos siempre estén localizados en la misma ubicación en la memoria (303) Flash. Una unidad (310) de memoria no volátil preferiblemente tiene ambos segmentos manejado y no manejado. El código (304) de plataforma base puede almacenar parámetros y otros datos en la porción no manejada de la unidad (310) de memoria no volátil. Finalmente, se proporciona una unidad de memoria de acceso aleatorio (RAM) (309) . Los objetos descargados tales como el código de plataforma base, el O/S, etc., pueden almacenarse en el RAM (309) hasta que se autentifique. Una vez que se completa exitosamente la autorización y la autentificación, los objetos pueden transferirse desde la RAM (309) a la unidad (303) de memoria Flash para el almacenaje a largo plazo. La descripción precedente solamente se ha presentado para ilustrar y describir la invención. No se pretende que sea exhaustiva o limite la invención a cualquier forma precisa descrita. Muchas modificaciones y variaciones son posibles a la luz de la enseñanza anterior. La modalidad preferida se seleccionó y describió para poder explicar mejor los principios de la invención y su aplicación práctica. La descripción precedente se pretende para permitir que otros con experiencia en la técnica utilicen mejor la invención en diversas modalidades y con varias modificaciones según se adecúen al uso particular contemplado.

Claims (24)

  1. REIVINDICACIONES 1. Un método para iniciar una terminal del convertidor-descodificador en un sistema de televisión por cable que comprende ejecutar automáticamente un objeto de código de arranque almacenado en una unidad de memoria de la terminal del convertidor-descodificador con la provisión de energía a la terminal del convertidor-descodificador, en donde el código de arranque automáticamente localiza, adquiere y ejecuta un objeto de código de plataforma base.
  2. 2. El método de la reivindicación 1, que además comprende adquirir el objeto de códigb de plataforma base al localizar una transmisión del objeto de código de plataforma base dentro de una incursión de corriente de transporte de datos en el sistema de televisión por cable.
  3. 3. El método de la reivindicación 1, que además comprende verificar la autentificación y autorización del objeto de código de plataforma base antes de ejecutar el objeto de código de plataforma base.
  4. 4. El método de la reivindicación 1, que además comprende pasar el control de la terminal del convertidor-descodificador al objeto de código de plataforma base ejecutante.
  5. 5. El método de la reivindicación 4, que además comprende localizar, adquirir y ejecutar un sistema de operación objeto con el objeto de código de plataforma base ejecutante.
  6. 6. El método de la reivindicación 5, que además comprende : proporcionar dos puntos de pila dentro de la unidad de memoria de la terminal del convertidor-descodificador; almacenar siempre el objeto de código de plataforma base en la unidad de memoria comenzando en el primero de los dos puntos de pila establecidos; y siempre almacenar el objeto de sistema de operación en la unidad de memoria comenzando en el segundo de los dos puntos de pila establecidos.
  7. 7. El método de la reivindicación 5, en donde la adquisición del objeto de sistema de operación además comprende localizar y descargar el objeto de sistema de operación desde una difusión de corriente de transporte de datos en el sistema de televisión por cable.
  8. 8. El método de la reivindicación 7, que además comprende recibir con la terminal del convertidor-descodificador un mensaje de iniciación en el sistema de televisión por cable que especifica donde la corriente de transporte de datos localiza y descarga el objeto de sistema de operación.
  9. 9. El método de la reivindicación 5, que además comprende autorizar y autentificar el objeto del sistema de operación antes de ejecutar el objeto de sistema de operación.
  10. 10. El método de la reivindicación 1, que además comprende volver a ejecutar el objeto de código de arranque en respuesta a un mensaje de restablecimiento recibido en el sistema de televisión por cable.
  11. 11. El método de la reivindicación 1, que además comprende localizar y adquirir el objeto de código de plataforma base para identificar el objeto de código de plataforma base almacenado en la unidad de memoria de la terminal del convertidor-descodificador.
  12. 12. El método de la reivindicación 1, que además comprende almacenar el objeto de código de arranque en una porción de la memoria de sólo lectura de la unidad de memoria.
  13. 13. Un sistema para iniciar una terminal del convertidor-descodificador en un sistema de televisión por cable que comprende: medios para ejecutar automáticamente un objeto de código de arranque almacenado en una unidad de memoria de la terminal del convertidor-descodificador con la provisión de energía a la terminal del convertidor-descodificador; y medios controlados por el objeto de código de arranque ejecutante para, localizar, adquirir y ejecutar automáticamente un objeto de código de plataforma base.
  14. 14. El sistema de la reivindicación 13, en donde los medios para localizar y adquirir el objeto de código de plataforma base además comprende medios para localizar una transmisión del objeto de código de plataforma base dentro de una difusión de corriente de transporte de datos en el sistema de televisión por cable.
  15. 15. El sistema de la reivindicación 13, que además comprende medios para verificar la autentificación y autorización del objeto de código de plataforma base antes de ejecutar el objeto de código de plataforma base.
  16. 16. El sistema de la reivindicación 13, que además comprende medios para pasar el control de la terminal del convertidor-descodificador al objeto de código de plataforma base ejecutante.
  17. 17. El sistema de la reivindicación 16, que además comprende medios controlados por el objeto de código de plataforma base ejecutante para localizar, adquirir y ejecutar un objeto de sistema de operación.
  18. 18. El sistema de la reivindicación 17, que además comprende : medios para establecer dos puntos de pila establecidos dentro de la unidad de memoria de la terminal del convertidor-descodificador; medios para almacenar siempre el objeto de código de plataforma base en la unidad de memoria comenzando en el primero de los dos puntos de pila establecidos; y medios para almacenar siempre el objeto de sistema de operación en la unidad de memoria comenzando en el segundo de los puntos de pila establecidos.
  19. 19. El sistema de la reivindicación 17, en donde los medios para adquirir el objeto de sistema de operación además comprende medios para localizar y descargar el objeto de sistema de operación desde una difusión de corriente de transporte de datos en el sistema de televisión por cable.
  20. 20. El sistema de la reivindicación 19, que además comprende medios para recibir con la terminal del convertidor-descodificador, un mensaje de iniciación en el sistema de televisión por cable especificando en donde la corriente de transporte de datos localiza y descarga el objeto de sistema de operación.
  21. 21. El sistema de la reivindicación 17, que además comprende medios para autorizar y autentificar el objeto de sistema de operación antes de ejecutar el objeto de sistema de operación.
  22. 22. El sistema de la reivindicación 13, que además comprende medios para volver a ejecutar el objeto de código de arranque en respuesta a un mensaje de restablecimiento recibido en el sistema de televisión por cable.
  23. 23. El sistema de la reivindicación 13, en donde el medio para localizar y adquirir el objeto de código de plataforma base comprende medios para identificar el objeto de código de plataforma base almacenado en la unidad de memoria de la terminal del convertidor-descodificador.
  24. 24. El sistema de la reivindicación 13, en donde el objeto de código de arranque se almacena en una porción de memoria de sólo lectura de la unidad de memoria.
MXPA/A/2001/010582A 1999-04-21 2001-10-19 Iniciacion automatica de una caja de convertidor-descodificador avanzada en un sistema de television por cable al descargar software o firmware en el sistema de cable MXPA01010582A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60/130,328 1999-04-21
US09/545,679 2000-04-07

Publications (1)

Publication Number Publication Date
MXPA01010582A true MXPA01010582A (es) 2002-06-05

Family

ID=

Similar Documents

Publication Publication Date Title
US6718374B1 (en) Method and system for identifying and downloading appropriate software or formware specific to a particular model of set-top box in a cable television system
US8032917B2 (en) Method and system for directing the download of software and firmware objects over a network such as a cable television system
US6813778B1 (en) Method and system for downloading and managing the enablement of a list of code objects
US9749179B2 (en) Fast initialization of multi-mode devices
EP1172006B1 (en) Method and system for targeted or universal upgrades of programming in a population of advanced set-top boxes in a cable television system
EP1210824A1 (en) Method and system for automatically purging code objects being updated by download
MXPA01010582A (es) Iniciacion automatica de una caja de convertidor-descodificador avanzada en un sistema de television por cable al descargar software o firmware en el sistema de cable
WO2000064181A1 (en) Automatic initialization of an advanced set-top box in a cable television system by downloading software or firmware over the cable system
EP1181824A1 (en) Method and system for locating a control channel and data transport stream within the signal received by a set-top box from a cable television system
MXPA01010583A (es) Metodo y sistema para identificar y descargar software o firmware apropiado especifico a un modelo particular de caja del convertidor-descodificador en un sistema de television por cable
MXPA01010584A (es) Metodo y sistema para mejoramientos objetivos o universales de la programacion en una poblacion de cajas del convertidor -descodificador avanzadas en un sistema de television por cable
MXPA01010581A (es) Metodo y sistema para localizar un canal de control y corriente de transporte de datos dentro de la señal recibida mediante una caja de convertidor-descodificador a partir de un sistema de television por cable