[go: up one dir, main page]

MXPA99008543A - Data processing system - Google Patents

Data processing system

Info

Publication number
MXPA99008543A
MXPA99008543A MXPA/A/1999/008543A MX9908543A MXPA99008543A MX PA99008543 A MXPA99008543 A MX PA99008543A MX 9908543 A MX9908543 A MX 9908543A MX PA99008543 A MXPA99008543 A MX PA99008543A
Authority
MX
Mexico
Prior art keywords
receiver
decoder
application
data
receptor
Prior art date
Application number
MXPA/A/1999/008543A
Other languages
Spanish (es)
Inventor
Sarfati Jeanclaude
Meric Jerome
Declerck Christophe
Original Assignee
Canal+ Societe Anonyme
Declerck Christophe
Meric Jerome
Sarfati Jeanclaude
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 Canal+ Societe Anonyme, Declerck Christophe, Meric Jerome, Sarfati Jeanclaude filed Critical Canal+ Societe Anonyme
Publication of MXPA99008543A publication Critical patent/MXPA99008543A/en

Links

Abstract

Un receptor/decodificador para un sistema de televisión digital de transmisión, en el cual se pasan las señales que se reciben a través de un receptor al receptor/decodificador y después a un aparato de televisión. El receptor/decodificador descodifica una señal tipo MPEG comprimida, y se controla mediante un aparato microtelefónico, a través de una interconexión en el receptor/decodificador. Se controla la operación del receptor/decodificador mediante una máquina virtual (VM), la cual incluye una máquina de tiempo de arranque (RTE). El receptor/decodificador incluye una pluralidad de interfases a las unidades externas, y dispositivos de unidad de disco lógico para las interfases. Las aplicaciones controlan las unidades externas mediante la RTE, la cual recibe los eventos desde las interfases mediante unconjunto de colas. La RTE comprende una pluralidad de unidades secuenciadoras de proceso asociada con los medios del dispositivo, y medios para extraer los eventos desde los medios de cola y activar las unidades secuenciadoras de proceso como corresponde.

Description

DATA PROCESSING SYSTEM The present invention relates to receivers / decoders for digital television systems. The advent of digital transmission systems that were primarily intended to transmit television signals, particularly but not exclusively satellite television systems, has opened up the possibility of using these systems for other purposes. One of these is to provide interactivity with the end user. The present invention finds specific application in a digital television transmission system in which the received signals are passed through a receiver / decoder and thence to a television set. The receiver / decoder decodes a compressed MPEG type signal into a television signal for the television set. This is controlled by a combined handset of the remote controller, through an interface in the receiver / decoder. One way to provide the interactivity described above is to execute an application in the receiver / decoder through which the television signal is received. The code for the application can be permanently stored in the receiver / decoder. However, this would be somewhat limiting. Preferably, the receiver / decoder should be able to download the code for a required application. In this way, more variety could be provided, and applications could be updated as required, without any action on the part of the user. It is desirable to allow a number of different manufacturers to manufacture the receiver / decoder. Obviously, all manufacturers should satisfy certain common functional specifications, but subject to this, it would be desirable to allow them to make their own selections regarding the details in their designs, including hardware details. However, the general operation of the receiver / decoder, and in particular the functional manner in which it processes the applications, must be identical for all receivers / decoders. The design of those parts of your control system in relation to application processing should therefore be common to all receivers / decoders, and should be the responsibility of the system operator, rather than the manufacturers of JL. hardware These two objectives (freedom in hardware design and common functionality of the system) are obviously difficult to harmonize. The object of the present invention is to overcome this difficulty. In accordance with this main aspect, the present invention provides a. receiver / decoder for a digital television system, comprising: means for receiving a compressed MPEG type signal; means for decoding the received signal to provide a television signal; means for supplying the television signal to a television; a user input interface; and a computer system for controlling the receiver / decoder in accordance with the input signals that are received through the user's input interface, the computer system comprising: means of administering the device to receive the signals from a plurality of ports and provide data to those ports; and virtual machine means, coupled to the means of administering the device, comprising means for processing the data that was received from the device administration means and returning the data thereto. Preferably, the virtual machine means comprises an operating machine, a routine library, an interpreter, storage means for storing a plurality of instruction sequences, queue management means, and buffer management means. Preferably, the receiver / decoder further comprises a plurality of interfaces to be coupled to external units, means for administering the device comprising at least one device means associated with either at least one interface or with at least one function of the receiver / decoder. Preferably also, the means for administering the device include at least one device means coupled to at least one impeller of the device. Preferably, the receiver / decoder includes a plurality of application sources, each to provide an application for controlling the receiver / decoder and / or the television, and wherein the operating machine is located between the sources of applications and the means of communication. logical device, and includes queuing means to receive the events that are generated through the means of administration of the device and passes them to the machine. Preferably, the operating machine comprises a plurality of process sequencing units associated with the means of the device, and means for extracting the events from the queuing means and activating the associated process sequencing units accordingly. Preferably also, filter means exist to match an event compared to a list of event types, before entering the event in the queue media. Preferably also, the receiver / decoder further includes means for storing at least one application. A further aspect of the present invention provides a receiver / decoder for receiving transmission signals, the receiver / decoder comprising: means for controlling the receiver / decoder in accordance with the signals received, the control means comprising: means for receive the signals from the plurality of ports and provide the data to those ports; and virtual machine means for processing the data that was received from the receiving means and returning the data thereto. Another aspect of the present invention comprises a system comprising a plurality of receivers / decoders each as described above, wherein the different receivers / decoders have common virtual machine means and different respective device management means, coupled to the system of respective circuits different. The preferred features of the present invention will now be described, merely by way of example, with reference to the accompanying drawings, in which: - Figure 1 shows the general architecture of a digital television system in accordance with the preferred embodiment of the present invention; Figure 2 shows the architecture of an interactive system of the digital television system; Figure 3 shows the configuration of the files within a module that was downloaded into the memory of an interactive receiver / decoder; Figure 4 is a schematic diagram of the receiver / decoder interfaces; Figure 5 shows the configuration of the memory volumes of the interactive receiver / decoder memory; Figure 6 is a functional block diagram of the receiver / decoder; and Figure 7 shows certain components of the virtual machine and the runtime machine in more detail. In Figure 1 an overview of a digital television system 1000 is shown. The invention includes a mostly conventional digital television system 2000, which uses the known MPEG-2 compression system to transmit compressed digital signals. In more detail, the compressor 2002 MPEG-2 is a transmission center receives a stream of digital signals (typically a stream of video signals). The compressor 2002 is connected to a multiplexer and encoder 2004 by means of the link 2006. The multiplexer 2004 receives a plurality of additional input signals, assembles one or more transport streams and transmits compressed digital signals to a transmitter 2008 of the transmission center by link 2010, which of course can take a wide variety of forms, including telecom links. The transmitter 2008 transmits electromagnetic signals by means of the 2012 uplink to a 2014 satellite transmitter-receiver, where these are electronically processed and transmitted via the 2016 speculative downlink to the land receiver 2018, conventionally in the form of a own dish or rented by the end user. The signals received by the receiver 2018 are transmitted to an integrated receiver or decoder 2020 owned or rented by the end user, and connected to the television set 2022 of the end user. The receiver / decoder 2020 decodes the compressed MPEG-2 signal to a television signal for the television set 2022. A conditional access system 3000 is connected to the 2004 multiplexer and the receiver / decoder 2020, and is located partially in the transmission center, and partially in the decoder. This allows the end user to access the digital television transmissions from one or more transmission providers. A smart card can be inserted, capable of deciphering messages related to commercial offers (that is, one or many television programs sold by the transmission provider), within the receiver / decoder 2020. Using the decoder 2020 and the smart card, the end user can buy commercial offers in either a subscription mode or a pay-per-event mode. An interactive system 4000, also connected to the multiplexer 2004 and the receiver / decoder 2020, and again partially located in the transmission center and partially in the decoder, allows the end user to interact with different applications by means of a modulated return channel 4002. -desmodulated. Figure 2 shows the general architecture of the interactive television system 4000 of the digital television system 1000 of the present invention. For example, the interactive 4000 system allows an end user to buy catalog items on the screen, check local news and climate maps on demand, and play games through their television set. The interactive system 4000 comprises in general four main elements: - an originating tool 4004 in the transmission center (or some other place), to allow a transmission provider to create, develop, debug and test applications; an application and data server 4006, in the transmission center, connected to the originating tool 4004, to allow a transmission provider to prepare, authenticate, and format applications and data for dispatch to the multiplexer and encoder 2004 for insertion into the stream of MPEG-2 transport (typically the private section thereof) to be transmitted to the end user; a virtual machine that includes a runtime machine (RTE) 4008, which is an executable code installed in the receiver / decoder 2020 own or rented by the end user, to allow the end user to receive, authenticate, decompress, and load applications within working memory 2024 of receiver / decoder 2020 for execution. Machine 4008 also runs resident, general-purpose applications. The machine 4008 is independent of the hardware and operating system; and a modulated-demodulated back channel 4002 between the receiver / decoder 2020 and the application and data server 4006, to enable signals that tell the server 4006 to insert data and applications into the MPEG-2 transport stream upon request of the end user. The interactive television system operates using "applications" that control the functions of the receiver / decoder and different devices contained therein. The applications are represented on the machine 4008 as "resource files". A "module" is a set of files and resource data. Many modules may be required to form an application. A "memory volume" of the receiver / decoder is a. storage space for the modules. An "interface" is used to download modules. The modules can be downloaded into the receiver / decoder 2020 from the MPEG-2 transport stream. Now the elements mentioned in the previous paragraph will be described in more detail. For the purposes of this specification, an application is a piece of computer code for controlling high-level preference functions of the receiver / decoder 2020. For example, when the end user places the focus of a remote controller on a button object that is seen on the screen of the television set 2022, and presses the validation key, the sequence of instructions associated with the button is executed. An interactive application proposes menus and executes commands on the end user's request, and provides data related to the purpose of the application. The applications can be either resident applications, that is, stored in the ROM (or FLASH or other non-volatile memory) of the receiver / decoder 2020, or transmitted and downloaded into the RAM or FLASH of the decoder 2020. The examples of the applications are; - • An Initialization Application. The receiver / decoder 2020 is equipped with a resident initialization application which is an adaptive collection of modules (this term being defined in more detail later herein), which allows the receiver / decoder 2020 to be immediately operative in the MPEG environment. 2. The application provides core characteristics that can be modified by the transmission provider if required. It also provides an interface between resident applications and downloaded applications. • An Ignition Application. The ignition application allows any application, whether downloaded or resident, to run on the receiver / decoder 2020. This application acts as a loading operation on the arrival of a service, in order to start the application. The ignition is discharged into the RAM and, therefore, can be easily updated. This can be configured in such a way that the interactive applications available on each channel can be selected and executed, either immediately after downloading or after preloading. In the case of pre-loading, the application is loaded into the 2024 memory, and activated by power-on when required.
• A Program Guide. The Program Guide is an interactive application that gives complete information about programming. For example, it can give information about, say, the one-week television programs provided by each channel of a digital television bouquet. By pressing the key on the remote controller 2026, the end user accesses an added screen, above the event that is displayed on the television set 2022 screen. This added screen is a navigator that gives information about the current and future events of each channel of the digital TV corsage. By pressing another key on the remote controller 2026, the end user accesses an application that visually displays a list of information about the events during a week. The end user can also search and select events with simple and custom criteria. The end user can also directly access a selected channel. • One Pay Per View application. The pay-per-view application is an interactive service available on each Pay Per View channel of the digital TV bouquet, in conjunction with the 3000 conditional access system. The end user can access the application using a TV guide or channel navigator. Additionally, the application automatically starts as soon as the Pay Per View event is detected on the Pay Per View channel. Then the end user is able to buy the event in progress either through his smart daughter 3020 card or via communication server 3022 (using the modem, a telephone and DTMF, MINITEL or similar codes). The application can be either resident in the ROM of the receiver / decoder 2020 or downloadable within the RAM of the receiver / decoder 2020. • A PC Download application. Upon request, an end user can download computer software using the PC download application. • A Magazine Browser application. The magazine browser application comprises a cyclic video transmission of images with navigation of the end user via buttons on the screen. • A questionnaire application. The questionnaire application is preferably synchronized with a transmission questionnaire program. As an example, multiple selection questions are displayed on the 2022 television screen visually, and the user can select a response using the remote 2026 controller. The questionnaire application can inform the user if the answer is correct or not, and can keep score of the user. • An application of Shopping by Television. In one example of the television shopping application, offers of goods for sale are transmitted to the receiver / decoder 2020, and displayed visually on the television 2022. Using the remote controller, the user can select a particular item to buy it. The order of the article is sent via the modulated-demodulated return channel 4002 to the application and data server 4006, or to a separate sales system, whose telephone has been downloaded to the receiver / decoder, possibly with an order to charge the account to a credit card that has been inserted in one of the 4036 card readers of the receiver / decoder 2020. • A Telebanca application. In one example of the telebanking application, the user inserts a bank card into one of the receiver cards 4036 of the receiver / decoder 2020. The receiver / decoder 2020 marks the user's bank, using a telephone number stored on the card bank or stored in the receiver / decoder, and then the application provides a number of facilities that can be selected using the remote 2026 controller, for example, to download an account statement via the telephone line, transfer funds between accounts, request a checkbook, etc. • An Internet Browser application. In an example of the Internet browser application, the user instructions are entered, such as a request to view a web page having a particular URL, using the remote controller 2026, and these are sent through the modulated-demodulated return channel 4002 to the application and data server 4006. The appropriate web page is then included in the transmissions from the transmission center, received by the receiver / decoder 2020 via the ascending 2012 link, the 2014 transceiver and the descending 2016 link, and visually displayed on the 2022 television.
The applications are stored in the locations of the memory in the receiver / decoder 2020 and are represented as resource files. Resource files include graphics object description unit files, variable block unit files, instruction sequence files, application files, and data files. The graphic object description unit files describe the screens, the man-machine interface of the application. The variable block drive files describe the data structures that the application handles. The instruction sequence files describe the processing operations of the applications. The application files provide the entry points for the applications. Applications made in this way can cause data files, such as icon library files, image files, character font files, color table files, and ASCII text files. An interactive application can also obtain data online by making entries and / or outputs. The machine 4008 only loads into its memory those resource files that it needs at a given moment. These resource files are read from the graphic object description unit files, instruction sequence files, and application files; the variable block drive files are stored in the memory after a procedure call to load the modules and remain blocked there until a specific call is made to a procedure to download the modules. With reference to Figure 3, a module 4010, such as a television shopping module, is a set of resource and data files comprising the following: a single application file 4012; an indeterminate number of files 4014 of the graphic object description unit; an indeterminate number of 4016 files of variable blocks unit; an indeterminate number of 4018 instruction sequence files; and where appropriate, 4020 data files, such as icon library files, image files, character font files, color table files and ASCII text files. In the MPEG data stream, each module comprises a group of MPEG tables. Each MPEG table can be formatted as a number of sections. In the MPEG data stream, each section has a "size" of up to 4 kbytes. For the data transfer through the serial and parallel port, for example, the modules are divided in a similar way into tables and sections, the size of the section varying with the means of transport. The modules are transported in the MPEG data stream in the form of data packets of typically 188 bytes, within respective types of streams, of data, for example, the video data streams, the audio data streams and the data streams. teletext data streams. Each packet is preceded by a packet identifier (PID) of 13 bits, a PID for every packet transported in the MPEG data stream. A table of program maps (PMT table) contains a list of the different data streams, and defines the content of each data stream, according to the respective PID. A PID can notify a device of the presence of applications in the data stream, the PID being identified using the PMT table. With reference to Figure 4, the receiver / decoder 2020 includes several interfaces; specifically, a tuner 4028 for the MPEG signal stream, a serial 4030 interface, a parallel 4032 interface, and two card readers 4036, one for a smart card that is part of the system and one for the bank cards (which are used to make payments, home banking, etc.). The receiver / decoder 2020 also includes an interface 4034 to a modulated-demodulated return channel 4002 to the producer of the television signal, so that the user can indicate preferences, etc., back to the producer of the television signal (program). A memory volume is a storage space for the modules 4010. These storage spaces are located in the memory 2024 of the receiver / decoder 2020. With reference to Figure 5, the memory 2024 is divided into a volume 4022 RAM, volume 4024 FLASH, and volume 4026 ROM, but this physical organization is different from the logical organization. The memory can be further divided into memory volumes associated with the different interfaces, through which the modules are downloaded from the MPEG bit stream and a serial volume for storing the received modules by means of a serial interface . From one point of view, memory can be considered as part of the hardware; from another point of view, the memory can be considered as supporting or containing the total of the system that is shown apart from the hardware. It is expected that several different manufacturers design and manufacture the receiver / decoder. Therefore, this may have different hardware designs, although all of them will of course conform to the same functional specification. It is therefore important that a given application behaves in the same way in every receiver / decoder, and that a receiver / decoder executes all the applications in the same correct way.
It can be considered that the system is centered on a runtime machine 4008 that is part of a virtual machine 4007. This is coupled to the applications on one side (the "high level" side), and, on the other side (the "low level" side), by means of different intermediate logical units discussed later, to the hardware 4061 receiver / decoder. It can be considered that the receiver / decoder includes the different ports or interfaces, as discussed above (the interface 2030 to the combined handset 2026, the interphase 4028 of the MPEG stream, the serial interface 4030, the parallel 4032 interface, the interfaces to the card readers 4036, and the interface 4034 to the modulated-demodulated return channel 4002). With reference to Figure 6, different applications 4057 are coupled to unit 4007; some of the most commonly used applications may be resident in the system more or less permanently, as indicated in 4057, while others will be downloaded into the system, for example, from the MPEG data stream or from other ports , as required. The unit 4007 includes, in addition to the runtime machine 4008, some resident library functions 4006, which include a toolbox 4058. The library contains miscellaneous functions in the C language used by the machine 4008. These include manipulation of data such as compression, expansion or comparison of data structures, line drawing, and so on. The library 4006 also includes information about firmware 4060 on the receiver / decoder 2020, such as the hardware and software version numbers and the available RAM space, and a function that is used when a new 4062 device is being downloaded. You can download the functions in the library, which is stored in Flash memory or RAM. The execution time machine 4008 is coupled to the administrator 4068 of the device, which is coupled to a set of devices 4064, which are coupled to the impellers 4060 of the device, which in turn are coupled to the ports or interfaces. In broad terms,. it can be considered that the device driver defines a logical interface, so that two different device drivers can be coupled to a common physical port. A device driver will normally be coupled to more than one device driver; if a device is coupled to a single device driver, the device will typically be designed to incorporate the full functionality required for communication, so that the need for a separate device driver is eliminated. Certain devices can communicate with each other. As will be described later, there are 3 forms of communication from the 4064 devices to the runtime machine: by means of variables, buffers, and events that are passed to a set of event queues. In terms of the designers or suppliers of these different functions, different service providers (programs) will generate the applications. The runtime machine will be designed and provided by the authority or designer of the system. Device manager, devices, and device drivers will be provided by the receiver / decoder manufacturer (hardware provider). It will be evident, however, that this correspondence between the different levels of the receiver / decoder and the three levels of providers will not normally be accurate. For example, normally the system authority will also provide some of the applications in practice, the receiver / decoder manufacturer may be included in the design of the logical device, and so on. Each function of the receiver / decoder 2020 is represented as a 4062 device. The devices can be either local or remote. Local 4064 devices include smart cards, SCART connector signals, modems, serial and parallel interfaces, an MPEG audio and video player and an MPEG section and table extractor. Remote 4066 devices, which run at a remote location, differ from the local devices on which the port and procedure should be defined by the authority or system designer, rather than by a device and driver of the device that is provided and designed by the manufacturer of the receiver / decoder. When a new 4062 device is created, it can be installed on existing receivers / decoders 2020 by downloading the relevant 4056 application from the transmission center. This is downloaded to the receiver / decoder 2020 by application 4056, which verifies the hardware and software versions and, if correct, loads the software module representing the new 4062 device and requests a library procedure 4006 to install the new device code inside the firmware (in Flash memory). This can provide a flexible and secure installation of the new functions within the receiver / decoder 2020 without affecting the rest of the software. The administrator 4068 of the device is a common software interface between the application 4056 and the specific functions of the receiver / decoder 2020. the administrator 4068 of the device controls the access to the devices 4062, declares the reception of an unexpected event, and manages the memory shared. The run time machine 4008 is run under the control of the microprocessor and a common application programming interface. These are installed in each receiver / decoder 2020, so that all the receivers / decoders 2020 are identical from the point of view of the application. The machine 4008 executes the 4056 applications in the receiver / decoder 2020. It executes the 4056 interactive applications and receives the events from outside the receiver / decoder 2020, visually displays the graphics and text, calls the devices for services and uses the functions of the 4006 library connected to the machine 4008 by specific computation. The runtime machine 4008 is an executable code that is installed in each receiver / decoder 2020 and includes an interpreter to interpret and execute the applications. The machine 4008 can be adapted to any operating system, including a single task operation system (such as MS-DOS). The machine 4008 is based on the process sequencing units (which take different events such as a key pressure, to perform different actions), and contains its own scheduler to manage event queues from the different hardware interfaces. It also manipulates the visual display of graphics and text. A process sequencing unit comprises a set of action groups. Each event causes the process sequencer unit to move from its current action group to another action group, depending on the character of the event, and to execute the actions of the new action group. As noted above, a logical channel is different from a physical port, so that there may be, for example, two different types of logical channel using the same physical port. The events in those logical channels will be passed to the respective different process sequence units. In addition, there may be two different logical channels of the same type that use a physical port. In that case, each of the two channels will of course require its own process sequencing unit, so that two instances will be created (examples) of the same process sequencer unit. The machine 4008 comprises a code loader for loading and unloading the applications 4056 within the memory 2028 of the receiver / decoder. Only the necessary code is loaded into the RAM or Flash memory, in order to ensure optimal use. The download of data is verified through an authentication mechanism, to avoid any modification of an application 4056 or the execution of any unauthorized application. The machine 4008 additionally comprises a decompressor. As the application code (a form of intermediate code *) is being compressed for space saving and fast download from the MPEG-2 transport stream by means of an interconstructed receiver / decoder mode, the code should be decompressed before to load it into RAM. The machine 4008 also comprises an interpreter to interpret the application code to update the different variable values and determine the state changes, and an error verifier. The main circuit of the machine 4008 extracts the events from the queuing means and activates the associated process sequencing units accordingly. At each turn of the main circuit, a procedure is called to receive external events (such as pressing one of the keys on the remote control, receiving an MPEG-2 section or a message on a serial port) from the event interface. All events, as they are introduced to the presentation function (discussed later), or that are received through an interface, pass through an event interface before being processed by machine 4008. For each detected event, the method comprises a message, which is called an "event", which is placed within one of the 5 queues of the machine 4008, with respective priority levels of 0 to 4. After the call to the event interface, which fills the queues with events, machine 4008 looks for the queues with the objective of decreasing the priority (from level 4 to level 0") for an event. this way it is removed from the queues and used to activate the process sequencing unit for which it is intended Before using the services of any 4062 device, a program must be declared (such as a sequence of application instructions) As a "client", that is, a logical access to the device 4006 or the device administrator 4068. The administrator gives the client a client number that is referenced in all accesses to the device. customers, the number of clients for each device 4066 being specified depending on the type of device 4066. A client is introduced to the device 4066 by means of a procedure "Device: Open Channel" ("Device : Open Channel "). This procedure assigns a 'customer number to the customer. A client can be removed from the client list of the 4068 administrator of the device using a "Device: Cióse Channel" procedure. Access to the 4062 devices provided by the 4068 administrator of the device can be either synchronous or asynchronous For synchronous access, a procedure "Device: Cali" (Device: Llama ") is used. This is a means to gain access to data that is immediately available or functionality that does not include waiting for the desired response. For asynchronous access, a procedure is used: "Device: I / O" ("Device: I / O"). This is a means to gain access to the data that involves waiting for a response, for example, to track the frequencies of the tuner to find a multiplex or to return to a table of the MPEG stream. When the requested result is available, an event is placed on the machine's tail to signal its arrival. An additional procedure "Device: Event" (Device: Event) provides a means to manage unexpected events, as noted above, the main circuit of the runtime machine is coupled to a variety of process sequencing units, and when the main circuit encounters an appropriate event, it is. temporarily transfers the control to one of the process sequencing units. Communication between the runtime machine and the applications is also carried out mainly by means of two types of process sequencing units, a graphic object description unit, process sequencing units and an instruction sequence process sequencing unit. The essentials of the operation of the process sequencing units can be better described by considering the operation of the graphical object description unit and the instruction sequence process sequencing units; The operation of the other process sequencing units is similar. The process sequencing units of the graphic object description unit manages the man-machine interface, and the instruction sequence process sequencing unit executes the instruction sequences in response to the execution of the instruction sequence that was received from the process sequence unit of the graphic object description unit. (A sequence of instructions is a sequence of uncompressed intermediate code commands.) A presentation function that communicates with the machine 4008 manages the presentation of the text and graphics to the end user, and the presentation of the actions of the end user to the user. machine 4008. The text and graphics are superimposed on the visual display in the television set 2022, and the user can interact with the 4056 application by means of a keyboard (using that term to include the remote 2026 controller). A process sequencing unit of the graphic object description unit receives the query events from the end user's TV screen, and processes this query by starting to read the corresponding interface file 4014. Then he uses the graphic functions of the interface to track the graphic targets on the screen of the television set 2022. The end user can use the four arrow keys of remote controller 2026 to move around the graphic object. Each time a key is pressed, an event is processed by the process sequencer unit of the graphic object description unit. When the user validates a selection using the VALID key on the remote 2026 control, the event code is processed by the process unit of the graphic object description unit, which generates the sequences of request instructions of events to be executed and sends them to the sequence sequencing instruction unit. When the instruction sequence process sequencing unit receives an instruction sequence execution request from the process sequencer unit of the graphic object description unit, it reads the corresponding instruction sequence file 4018 and loads it by complete within the memory. Then it begins to execute the sequence of instructions and continues until the sequence of instructions is finished or until it finds a function called re-routing. When the sequence of instructions is finished, the system returns to the cycle through the main circuit to acquire the events and re-plan. There are also many download process sequencing units, whose function is to process the different protocols linked to the different volumes containing the applications 4056. With reference to Figure 7, the administrator of the device includes a queue 100 within which the events from the devices for temporary storage. At appropriate intervals, the virtual machine sends a signal to this queue to extract the first article from it. This article of the event is moved to a structure 101 of queues in the virtual machine. Depending on the priority level of the event article, it is inserted within the appropriate one of the 5 queues 0 to 4. The event items are extracted from the queue structure 101 via a queue selector unit 102, under the control of the runtime machine. When an event is selected from the queue structure 101, it is passed to a machine 104 of the process sequencing unit, which consists of an impeller 105 of the process sequencing unit and a set of process sequencing units 106. Each sequencing unit of the process is a set of action groups linked together, so that each step of an action group towards the next action group is, in general, dependent on the current action group and the nature of the event. Different process sequencing units have different sizes and complexities, including one in which the "next" action group, that is, the action group in which the system is initiated in response to an event, is dependent only on the nature of the action. event, but it is independent of the current action group. Also, as shown on the right side of the process sequencer unit block, there may be several copies of a process sequencing unit, i.e., several identical process sequencing units, for dealing, for example, with different data stream using identical protocols through a single port. When an event is selected, it is passed to the appropriate process sequencing unit. It selects the appropriate output from the current action group in the process sequencer unit. This results in the selection of the next appropriate action group and actions to be performed in that action group, including, for example, sending a message to the device administrator or executing a sequence of instructions. The action groups in the process sequencing unit can also send event messages to other process sequencing units. If a sequence of instructions is selected, the identification of the instruction sequence is sent to an instruction sequence selector 107. It obtains the desired instruction sequence from an instruction sequence memory 108 and passes it to an instruction sequence interpreter 109, which executes the sequence of instructions. The system also includes a filter 110, which is loaded with types of events, for example from the process sequencing units 106. When an event article is passed from queue 100 in the device manager to queue structure 101 in the virtual machine, its type or character is matched against the list in filter 110, and if it is of a type that does not it is recognized, it is rejected. This ensures that, if to say, the administrator of the device or the keyboard generates events of a type with which the virtual machine can not deal, those events are not passed to the structure 101 of queues. (If the events of this class are passed to the queue structure 101, these will accumulate in that queue structure or could cause a malfunction of the machine 104 of the process sequencer unit). It will be understood that the present invention has been described above purely by way of example, and any modifications of the detail may be made within the scope of the invention. Each feature described in the description may be provided, and (where appropriate) the claims and drawings independently or in any appropriate combination. In the preferred embodiments mentioned above, certain features of the present invention have been implemented, using computer software. However, it will of course be clear to the experienced person that any of these features can be implemented, using the hardware. Additionally, it will be readily understood that the functions performed by the hardware, computer software, and the like, are performed on or using electrical or similar signals. The cross reference is made to our pending requests, all of them having the same filing date, and titled Signal Generation and Transmission (Lawyer Reference Number PC / ASB / 19707), Card Intelligent to use with a Signal Receiver Transmission In Code, and Receiving System (Lawyer Reference Number PC / ASB / 19708), Transmission and Reception and Conditional Access System for it (Lawyer Reference Number PC / ASB / 19710), Downloading a Computer File from of a Transmitter through a Receiver / Decoder to a Computer (Lawyer Reference Number PC / ASB / 19711), Transmission and Reception of Television Programs and Other Data (Lawyer Reference Number PC / ASB / 19712), Downloading Data (Reference Lawyer Number PC / ASB / 19713), Organization of Computer Memory (Lawyer Reference Number PC / ASB / 19714), Development of Television or Radio Control System (Lawyer Reference Number PC / ASB / 19715), Extracting Sections from Data from a Transmitted Data Stream (Lawyer Reference Number PC / ASB / 19716), Access Control System (Lawyer Reference Number PC / ASB / 19717), Data Processing System (Reference of "Abog No. PC / ASB / 19718), and Transmission and Reception System, and Receiver / Decoder and Remote Controller for the same (Lawyer Reference Number PC / ASB / 7L9720). The descriptions of these documents are incorporated herein by reference. The list of applications includes the present application.

Claims (12)

1. A receiver / decoder for a digital television system, comprising: means for receiving a compressed MPEG-type signal; means for decoding the received signal to provide a television signal; means for supplying the television signal to a television; a user input interface; and a computer system for controlling the receiver / decoder in accordance with the input signals that are received through the user's input interface, the computer system comprising: means of the device administrator to receive the signals desired a plurality of ports and provide data to those ports; and virtual machine means, coupled to the means of the device administrator, comprising means for processing the data that was received from the device administrator's means and returning the data thereto. A receiver / decoder according to claim 1, wherein the means of the virtual machine comprises an operating machine, a routine library, an interpreter, storage means for storing a plurality of sequences of instructions, means of administration of queues, and means of buffer administration. A receiver / decoder according to claim 1 or 2, characterized in that it further comprises: a plurality of interfaces for coupling to the external units; device manager means comprising at least one device means associated with either at least one interface, or with at least one function of the receiver / decoder. 4. A receiver / decoder according to claim 3, wherein at least one of the means of the device is coupled to at least one impeller of the device. 5. A receiver / decoder according to claim 3 or 4, characterized in that it includes a plurality of application sources, each to provide an application for controlling the receiver / decoder and / or the television, and wherein the operation machine it is located between the application sources and the means of the device, and includes means of queues to receive the events that are generated through the means of the administrator of the device and passes them to the machine. A receiver / decoder according to claim 5, wherein the operating machine comprises a plurality of process sequencing units associated with the means of the device, and means for extracting the events from the queuing means and activating the sequencing units. of associated processes in accordance. 7. A receiver / decoder according to either claim 5 or 6, characterized in that it includes filter means for matching an event in comparison with a list of event types, before entering the event in the queue means. 8. A receiver / decoder according to any of the preceding claims, characterized in that it also includes means for storing at least one application. 9. A receiver / decoder for receiving transmission signals, the receiver / decoder comprising: means for controlling the receiver / decoder in accordance with the received signals, the control means comprising: means for receiving signals from a plurality of ports and provide data to those ports; and virtual machine means for processing the data that was received from the receiving means and returning the data to it. A system comprising a plurality of receivers / decoders, each in accordance with any of claims 1 to 8, wherein the different receivers / decoders have common virtual machine means and different means of the respective device manager coupled to different respective circuit systems. 11. A receiver / decoder substantially as described herein. 1
2. A system substantially as described herein.
MXPA/A/1999/008543A 1997-03-21 1999-09-17 Data processing system MXPA99008543A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP97400650.4 1997-03-21

Publications (1)

Publication Number Publication Date
MXPA99008543A true MXPA99008543A (en) 2001-09-07

Family

ID=

Similar Documents

Publication Publication Date Title
US6938166B1 (en) Method of downloading of data to an MPEG receiver/decoder and MPEG transmission system for implementing the same
HUP0002939A2 (en) A receiver/decoder for digital television systems and for receiving broadcast signals, as well as a system comprising said receiver/decoder
AU740740B2 (en) Data processing system
US20040139472A1 (en) Transmission and reception of television programmes and other data
EP0968602A1 (en) Extracting data sections from a transmitted data stream
AU742956B2 (en) Television or radio control system development
US6360195B1 (en) Television or radio control system development
AU742213B2 (en) Access control system
MXPA99008543A (en) Data processing system
KR20000076406A (en) Data processing system
MXPA99008545A (en) Access control system
CZ331899A3 (en) Data processing system
EP1067455A1 (en) Running and testing applications
CZ331799A3 (en) Access control system
MXPA99008547A (en) Television or radio control system development
MXPA99008549A (en) Method of downloading of data to an mpeg receiver/decoder and mpeg transmission system for implementing the same
HK1025450B (en) Method of downloading of data to an mpeg receiver/decoder
MXPA99008546A (en) Extracting data sections from a transmitted data stream
AU1565002A (en) Method of downloading of data to an MPEG receiver/decoder and MPEG transmission system for implementing the same