PL183663B1 - Data processing system - Google Patents
Data processing systemInfo
- Publication number
- PL183663B1 PL183663B1 PL97335775A PL33577597A PL183663B1 PL 183663 B1 PL183663 B1 PL 183663B1 PL 97335775 A PL97335775 A PL 97335775A PL 33577597 A PL33577597 A PL 33577597A PL 183663 B1 PL183663 B1 PL 183663B1
- Authority
- PL
- Poland
- Prior art keywords
- receiver
- decoder
- application
- virtual machine
- event
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims description 6
- 238000000034 method Methods 0.000 claims abstract description 63
- 230000008569 process Effects 0.000 claims abstract description 49
- 230000015654 memory Effects 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 20
- 230000000694 effects Effects 0.000 description 15
- 230000002452 interceptive effect Effects 0.000 description 14
- 238000007726 management method Methods 0.000 description 13
- 230000009471 action Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
- G06Q20/40975—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/0014—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for vending, access and use of specific services not covered anywhere else in G07F17/00
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/004—Diagnosis, testing or measuring for television systems or their details for digital television systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4367—Establishing a secure communication between the client and a peripheral device or smart card
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44236—Monitoring of piracy processes or activities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/163—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/167—Systems rendering the television signal unintelligible and subsequently intelligible
- H04N7/1675—Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Virology (AREA)
- Quality & Reliability (AREA)
- Biomedical Technology (AREA)
- Discrete Mathematics (AREA)
- Computer Graphics (AREA)
- Finance (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Circuits Of Receivers In General (AREA)
- Stored Programmes (AREA)
Abstract
Description
Przedmiotem wynalazku jest odbiornik-dekoder do odbioru nadawanych sygnałów, zwłaszcza dla układów telewizji cyfrowej.The subject of the invention is a receiver-decoder for receiving transmitted signals, in particular for digital television systems.
Znane są układy do transmisji danych cyfrowych, przeznaczone głównie do emisji sygnałów telewizyjnych, szczególnie, ale nie wyłącznie dla układów telewizji satelitarnej, stosowane także do innych celów, na przykład do zapewniania interakcyjności z końcowym użytkownikiem. Odbierane sygnały są przesyłane do odbiomika-dekodera, a następnie do odbiornika telewizyjnego. Odbiornik-dekoder dekoduje skompresowany sygnał standardu MPEG na sygnał telewizyjny, przeznaczony dla odbiornika telewizyjnego, sterowany przez ręczny układ zdalnego sterowania, poprzez interfejs w odbiomiku-dekoderze.Digital data transmission systems are known, mainly intended for broadcasting television signals, in particular, but not only, for satellite television systems, also used for other purposes, for example for providing end user interaction. The received signals are sent to the receiver / decoder and then to the television set. The receiver / decoder decodes the compressed MPEG standard signal into a television signal intended for a television set, controlled by a handheld remote control, via an interface on the receiver / decoder.
Znane jest zapewnianie interakcyjności przez wykonywanie aplikacji w odbiomiku-dekoderze, przez który odbieranyjest sygnał telewizyjny. Kod aplikacji jest na przykład na stałe zapisany w odbiomiku-dekoderze, jednak to narzuca ograniczenia. Odbiornik-dekoder ładuje kod żądanej aplikacji, zapewnia większą różnorodność i aplikacje są uaktualniane bez udziału użytkownika.It is known to provide interactivity by executing an application on a receiver / decoder through which a television signal is received. For example, the application code is permanently stored in the receiver / decoder, but this imposes limitations. The receiver-decoder loads the code of the requested application, provides more variety, and the applications are updated without user interaction.
183 663183 663
Znane odbiomiki-dekodery mająpewne wspólne parametry funkcjonalne, ale różne szczegóły konstrukcyjne, włącznie ze szczegółami sprzętowymi. Jednak ogólne działanie odbiornika-dekodera, a w szczególności funkcjonalny sposób, w jaki przetwarza on aplikacje, jest identyczny we wszystkich odbionukach-dekoderach. Konstrukcja części ich układu sterującego, związanych z aplikacjami przetwarzającymi, jest wspólna dla wszystkich odbiomików-dekoderów, za co odpowiada operator układu.Known receiver-decoders share some functional parameters but different design details, including hardware details. However, the overall operation of the receiver-decoder, and in particular the functional way in which it processes applications, is identical for all the receiver-decoders. The design of the parts of their control system related to processing applications is common to all receiver-decoders, which is the responsibility of the system operator.
Znany jest na przykład z publikacji Philips Journal of Research, tom 50, nr 1, strony 169-184, terminal multimedialny mający hierarchię oprogramowania, w której wierzchołku są zlokalizowane aplikacje, rezydujące i ładowane z urządzenia nadrzędnego do podrzędnego dla dostosowania się do protokołu API złącza programowego aplikacji DAVID. Poniżej warstwy aplikacyjnej jest warstwa oprogramowania systemu operacyjnego, złożona z programów zarządzania DAVID WEJŚCIE-wYjśCIE, programów obsługi urządzenia i jądra OS-9. To kompletuje hierarchię oprogramowania. Poniżej warstwy oprogramowania systemu operacyjnego jest warstwa sprzętowa zawierająca specyficzne urządzenia DET Philipsa. Poniżej warstwy sprzętowej jest złącze warstwy fizycznej z siecią. Znanyjest z publikacji Philips Journal ofResearch, tom 50, nr 1, strony 185-199, podobny terminal multimedialny. Jądro systemu operacyjnego jest odpowiedzialne za szeregowanie różnych żądań dla mikroprocesora w terminalu. Jądro OS-9 również zarządza komunikacjąmiędzyprocesowąpomiędzy różnymi żądaniami i procesami w terminalu.It is known, for example, from the publication of the Philips Journal of Research, vol.50, no.1, pages 169-184, for a multimedia terminal having a software hierarchy in which the applications are located at the vertex, residing and loaded from master to slave to conform to the connector API protocol. software DAVID application. Below the application layer is the operating system software layer, composed of the DAVID INPUT-OUTPUT management programs, device handlers and the OS-9 kernel. This completes the software hierarchy. Below the operating system software layer is the hardware layer containing specific Philips DET devices. Below the hardware layer is the physical layer interface to the network. It is known from the publication of the Philips Journal of Research, Vol 50, No. 1, pages 185-199 as a similar multimedia terminal. The operating system kernel is responsible for scheduling various requests for the microprocessor in the terminal. The OS-9 kernel also manages interprocess communication between various requests and processes in the terminal.
Odbiomik-dekoder według wynalazku zawiera maszynę wirtualną umieszczoną pomiędzy urządzeniami odbiorczymi i tą co najmniej jedną aplikacją dla przetwarzania danych odbieranych z urządzeń odbiorczych i przywracania do nich danych, a maszyna wirtualna zawiera interpreter do interpretowania tej co najmniej jednej aplikacji i wykonywania tej co najmniej jednej interpretowanej aplikacji zgodnie z danymi odbieranymi z urządzeń odbiorczych dla sterowania funkcją odbiomika-dekodera.The receiver device according to the invention comprises a virtual machine arranged between the receiving devices and the at least one application for processing the data received from the receiving devices and restoring data to them, and the virtual machine includes an interpreter for interpreting the at least one application and executing the at least one interpreted application. the application in accordance with data received from the receiving devices for controlling the receiver-decoder function.
Korzystnie maszyna wirtualna zawiera motor czasu przebiegu do przetwarzania danych odbieranych z urządzeń odbiorczych.Preferably, the virtual machine includes a runtime engine for processing data received from the receiving devices.
Korzystnie motor czasu przebiegujest umieszczony pomiędzy tą co najmniej jedną aplikacją i co najmniej jednym urządzeniem odbiorczym oraz zawiera strukturę kolejek do odbioru zdarzeń wytwarzanych przez urządzenia odbiorcze i przesyłania zdarzeń do motoru czasu przebiegu.Preferably, the time cycle engine is interposed between the at least one application and the at least one receiving device, and includes a queue structure for receiving events generated by the receiving devices and transmitting the events to the time run engine.
Korzystnie motor czasu przebiegu zawiera wiele modułów sekwencji procesów, związanych z urządzeniem odbiorczym oraz układ wyboru kolejki do wydzielania zdarzeń z kolejek i uruchamiania zgodnie z tym związanych z nimi modułów sekwencji procesów do wykonywania aplikacji.Preferably, the runtime engine comprises a plurality of process sequence modules associated with the receiving device and a queue selection system for extracting events from the queues and starting the associated process sequence modules for application execution accordingly.
Korzystnie motor czasu przebiegu zawiera filtr zdarzeń do dopasowania zdarzenia do listy typów zdarzeń przed wprowadzeniem zdarzenia do struktury kolejek.Preferably, the runtime engine comprises an event filter for matching the event to a list of event types before entering the event into the queue structure.
Korzystnie maszyna wirtualna zawiera bibliotekę serwera aplikacji i danych.Preferably, the virtual machine includes an application and data server library.
Korzystnie maszyna wirtualna zawiera pamięć sekwencji instrukcji.Preferably, the virtual machine includes an instruction sequence memory.
Zaletą wynalazku jest zapewnienie swobody w konstruowaniu i jednakowa funkcjonalność układu odbiomika-dekodera.The advantage of the invention is the freedom in construction and the same functionality of the receiver-decoder circuit.
Przedmiot wynalazku jest uwidoczniony w przykładach wykonania na rysunku, na którym fig. 1 przedstawia ogólną architekturę systemu telewizji cyfrowej według wynalazku, fig. 2 - architekturę układu interakcyjnego, będącego częścią systemu telewizji cyfrowej, fig. 3 - układ plików w module załadowanym do pamięci interakcyjnego odbiomika-dekodera, fig. 4 - schematycznie interfejsy odbiomika-dekodera, fig. 5 - układ obszarów pamięci interakcyjnego odbiomika-dekodera, fig. 6 - schemat funkcjonalny odbiomika-dekodera i fig. 7 - dokładniej pewne elementy maszyny wirtualnej i motor czasu przebiegu.The subject of the invention is illustrated in the drawing in which Fig. 1 shows the general architecture of the digital television system according to the invention, Fig. 2 - the architecture of the interactive circuit being part of the digital television system, Fig. 3 - the file layout in the module loaded into the interactive memory. Receiver-decoder, Fig. 4 - schematic diagram of the receiver-decoder interfaces, Fig. 5 - arrangement of memory areas of the interactive receiver-decoder, Fig. 6 - functional diagram of the receiver-decoder and Fig. 7 more specifically some virtual machine components and runtime motor.
Figura 1 przedstawia system telewizji cyfrowej 1000, który zawiera głównie tradycyjny układ telewizji cyfrowej 2000 wykorzystujący układ kompresji MPEG-2 do przesyłania skompresowanych sygnałów cyfrowych. Kompresor 2002 standardu MPEG-2 w centrum emisyjnym odbiera strumień sygnałów cyfrowych, zwykle strumień sygnałów wizyjnych. Kompresor 2002 jest połączony łączem 2006 z układem multiplekserowym i kodującym 2004. Układ multiplekserowy i kodujący 2004 odbiera liczne inne sygnały wejściowe, tworzy jeden lub kilka strumieni transportowych i przesyła skompresowane sygnały cyfrowe do nadajnika 2008 centrum emisyjnegoFigure 1 shows a digital television system 1000 which mainly comprises a conventional digital television system 2000 using an MPEG-2 compression system to transmit compressed digital signals. An MPEG-2 standard compressor 2002 at the broadcasting center receives a stream of digital signals, typically a stream of video signals. Compressor 2002 is connected via link 2006 to multiplexer and encoder 2004. Multiplexer and encoder 2004 receives numerous other input signals, creates one or more transport streams, and transmits compressed digital signals to transmitter 2008 of broadcast center
183 663 łączem 2010, które przyjmuje różne. .postacie, włącznie z łączami telekomunikacyjnymi. Nadaj nik 2008 centrum emisyjnego przesyła sygnały elektromagnetyczne łączem 2012 w stronę przekaźnika satelitarnego 2014, gdzie są one przetwarzane elektronicznie i emitowane przez wirtualne łącze 2016 do naziemnego odbiornika 2018, zwykle w postaci czaszy, należącego lub wynajętego przez końcowego użytkownika. Sygnały odebrane przez naziemny odbiornik 2018 są przesyłane do zintegrowanego odbiomika-dekodera 2020 należącego lub wynajętego przez końcowego użytkownika i połączonego z odbiornikiem telewizyjnym 2022 końcowego użytkownika. Odbiomik-dekoder 2020 przetwarza skompresowany sygnał MPEG-2 na sygnał telewizyjny dla odbiornika telewizyjnego 2022.183 663 link 2010 which adopts different. .forms, including telecommunications links. The broadcast center transmitter 2008 transmits electromagnetic signals over the 2012 link towards the 2014 satellite relay, where they are electronically processed and emitted over the 2016 virtual link to the 2018 terrestrial receiver, usually in the form of a dish, owned or rented by the end user. The signals received by the 2018 terrestrial receiver are transmitted to the integrated receiver / decoder 2020 owned or rented by the end user and connected to the end user's TV 2022. Receiver-decoder 2020 converts the compressed MPEG-2 signal into a TV signal for the TV set 2022.
Układ warunkowego dostępu 3000, połączony z układem multiplekserowym i kodującym 2004 oraz odbiomikiem-dekoderem 2020, jest umieszczony częściowo w centrum emisyjnym, a częściowo w dekoderze i umożliwia końcowemu użytkownikowi uzyskiwać dostęp do emisji telewizji cyfrowej jednego lub kilku dostawców emisji. Karta inteligentna, która odszyfrowuje informacje odnoszące się do ofert handlowych, to jest jednego lub kilku programów telewizyjnych sprzedawanych przez dostawcę emisji, jest wkładana do odbiomika-dekodera 2020. Wykorzystując odbiomik-dekoder 2020 i kartę inteligentną, końcowy użytkownik zakupuje oferty handlowe albo w trybie przedpłat albo w trybie opłat za prawo do oglądania programu.The conditional access circuit 3000, coupled to the multiplexer and encoder 2004 and the receiver / decoder 2020, is located partly at the broadcasting center and partly at the decoder and allows the end user to access digital television broadcasts from one or more broadcasting providers. A smart card that decrypts information relating to commercial offers, i.e. one or more TV programs sold by the broadcasting provider, is inserted into the 2020 receiver-decoder. Using the 2020 receiver-decoder and the smart card, the end-user purchases commercial offers either in prepaid mode. or by paying for the right to watch the program.
Interakcyjny układ telewizyjny 4000, również połączony z układem multiplekserowym i kodującym 2004 oraz odbiomikiem-dekoderem 2020, również umieszczony częściowo w centrum emisyjnym, a częściowo w dekoderze, umożliwia końcowemu użytkownikowi interakcje z różnymi aplikacjami przez kanał modemowy 4002.The interactive television chip 4000, also connected to the multiplexer and encoder 2004 and the reflector-decoder 2020, also located partly at the broadcast center and partly at the decoder, allows the end user to interact with various applications via modem channel 4002.
Figura 2 przedstawia ogólną architekturę interakcyjnego układu telewizyjnego 4000 systemu telewizji cyfrowej 1000 według wynalazku.Figure 2 shows the general architecture of the interactive television system 4000 of digital television system 1000 according to the invention.
Na przykład, interakcyjny układ telewizyjny 4000 umożliwia końcowym użytkownikom zakup rzeczy z wyświetlanych na ekranie katalogów, przeglądanie żądanych lokalnych wiadomości i map pogody oraz granie w gry przez zestawy telewizyjne.For example, the interactive television system 4000 allows end users to purchase items from on-screen catalogs, view desired local news and weather maps, and play games on television sets.
Interakcyjny układ telewizyjny 4000 zawiera zwykle cztery główne elementy. Pierwszym elementem jest narzędzie opracowań autorskich 4004 w centrum emisyjnym lub gdzie indziej, umożliwiające dostawcy emisji tworzenie, opracowywanie, poprawianie i testowanie aplikacji. Drugim elementem jest serwer 4006 aplikacji i danych, znajdujący się w centrum emisyjnym, połączony z narzędziem opracowań autorskich 4004, umożliwiający dostawcy emisji przygotowywanie, legalizowanie i formatowanie aplikacji i danych dla dostarczenia ich do układu multiplekserowego i kodującego 2004 dla włączenia do strumienia transportowego MPEG-2, zwykle do jego prywatnej sekcji, w celu wyemitowania do końcowego użytkownika. Trzecim elementem jest maszyna wirtualna, zawierająca motor czasu przebiegu 4008, który jest kodem wykonawczym, zainstalowanym w odbiomiku-dekoderze 2020, należącym do lub wynajętym przez końcowego użytkownika, umożliwiającym końcowemu użytkownikowi odbieranie, legalizowanie, dekompresję i ładowanie aplikacji do pamięci roboczej 2024 odbiomika-dekodera 2020 w celu ich wykonania. Motor czasu przebiegu 4008 wykonuje również rezydentne aplikacje ogólnego przeznaczenia. Motor czasu przebiegu 4008 jest niezależny od sprzętu i systemu operacyjnego. Czwartym elementem jest kanał modemowy 4002 między odbiornikiem-dekoderem 2020 a serwerem 4006 aplikacji i danych, umożliwiającym przesyłanie sygnałów instruujących serwer 4006 aplikacji i danych, aby wprowadzał dane i aplikacje do strumienia transportowego MPEG-2 na żądanie końcowego użytkownika.The interactive television chip 4000 typically includes four major components. The first component is the authoring tool 4004 at the broadcast center or elsewhere, enabling the broadcast provider to create, develop, improve and test an application. The second component is the application and data server 4006, located in the broadcast center, connected to the authoring tool 4004, enabling the broadcast provider to prepare, legalize and format applications and data for delivery to the multiplexer and encoder system 2004 for inclusion in the MPEG-2 transport stream. , usually to its private section for broadcast to the end user. The third element is a virtual machine containing a runtime engine 4008, which is an execution code, installed in the receiver-decoder 2020, owned or rented by the end user, enabling the end user to receive, validate, decompress and load the application into the working memory 2024 of the receiver-decoder 2020 for their implementation. The runtime motor 4008 also executes general-purpose resident applications. The runtime motor 4008 is independent of the hardware and the operating system. The fourth component is a modem channel 4002 between the receiver / decoder 2020 and the application and data server 4006, allowing signals to be sent instructing the application and data server 4006 to input data and applications into the MPEG-2 transport stream upon request by the end user.
Interakcyjny układ telewizyjny 4000 działa, używając aplikacji, które sterują funkcjami odbiornika-dekodera i różnych układów, które są w nim zawarte. Aplikacje są reprezentowane w motorze czasu przebiegu 4008 jako pliki zasobów. Zestawem plików zasobów i danych jest moduł, przy czym może być wymaganych kilka modułów, aby utworzyć aplikację. Miejscem przechowywania modułów jest obszar pamięci odbiornika-dekodera. Do ładowania modułów jest stosowany interfejs. Moduły sąładowane do odbiornika-dekodera 2020 na przykład ze strumienia transportowego MPEG-2.Interactive TV chip 4000 works by using applications that control the functions of the receiver / decoder and the various circuits it contains. Applications are represented in the runtime engine 4008 as resource files. The set of resource and data files is a module, and several modules may be required to build an application. The storage of modules is the receiver-decoder memory area. An interface is used to load modules. The modules are loaded into the receiver / decoder 2020 from, for example, an MPEG-2 transport stream.
183 663183 663
Zostanąteraz opisane dokładniej elementy wspomniane w poprzednim akapicie. Aplikacja jest fragmentem kodu komputerowego, służącym do kontrolowania funkcji wysokiego poziomu odbiornika-dekodera 2020. Na przykład, gdy użytkownik końcowy wybiera przy pomocy układu zdalnego sterowania obiekt klawiszowy widoczny na ekranie odbiornika telewizyjnego 2022 i naciska klawisz zatwierdzenia, wykonywana jest sekwencja instrukcji związana z wybranym klawiszem.The elements mentioned in the previous paragraph will now be described in more detail. An application is a piece of computer code that is used to control the high level functions of the 2020 receiver-decoder. For example, when an end-user selects a key object displayed on the 2022 TV screen with the remote control and presses the enter key, the instruction sequence associated with the selected key is executed. .
Aplikacja interakcyjna proponuje menu i wykonuje polecenia na żądanie końcowego użytkownika oraz dostarcza dane odnoszące się do przeznaczenia aplikacji. Aplikacje sąna przykład aplikacjami rezydentnymi, to jest zapisanymi w pamięci ROM lub błyskowej albo innej pamięci trwałej odbiornika-dekodera 2020 lub też emitowane i ładowane do pamięci RAM lub błyskowej odbiornika-dekodera 2020.An interactive application proposes menus and executes commands when requested by the end user, and provides data related to the application's purpose. The applications are for example resident applications, i.e., stored in ROM or flash or other persistent memory of the receiver-decoder 2020, or emitted and loaded into the RAM or flash-memory of the receiver-decoder 2020.
Przykładem aplikacji jest aplikacja inicjująca. Odbiornik-dekoder 2020 jest wyposażany w rezydentną aplikację inicjującą, będącą adaptacyjnym zbiorem modułów, który zostanie zdefiniowany dokładniej poniżej i który umożliwia pracę odbiornika-dekodera 2020 natychmiast w środowisku MPEG-2. Aplikacja zapewnia podstawowe cechy pamięci, które są modyfikowane w razie potrzeby przez dostawcę emisji oraz zapewnia interfejs między aplikacjami rezydentnymi a aplikacjami ładowanymi.An example of an application is the initiator application. The receiver / decoder 2020 is equipped with a resident initiation application, which is an adaptive set of modules to be defined in more detail below, and which allows the receiver / decoder 2020 to operate immediately in an MPEG-2 environment. The application provides basic memory features that are modified as needed by the broadcast provider, and provides an interface between resident applications and load applications.
Inną aplikacją jest aplikacja uruchomieniowa, która umożliwia uruchomienie dowolnej aplikacji, zarówno ładowanej jak i rezydentnej, w odbiorniku-dekoderze 2020. Ta aplikacja działa jako ładowanie początkowe, wykonywane po pojawieniu się usługi w celu uruchomienia aplikacji. Aplikacja uruchomieniowa jest ładowana do pamięci RAM, a zatem może być łatwo uaktualniona. Jest ona konfigurowana tak, że mogą być wybrane i uruchomione interakcyjne aplikacje dostępne w każdym kanale, zarówno natychmiast po załadowaniu, jak i po ładowaniu wstępnym. W przypadku ładowania wstępnego aplikacja jest ładowana do pamięci 2024 i jest uaktywniana w razie potrzeby przez aplikację uruchomieniową.Another application is a runtime application that allows any application, both loadable and resident, to run in the 2020 receiver-decoder. This application acts as a bootstrap, performed when a service arrives to start the application. The runtime application is loaded into RAM and can therefore be easily upgraded. It is configured so that interactive applications available on each channel can be selected and run, both immediately after loading and after preloading. In the case of preloading, the application is loaded into memory 2024 and is activated as needed by the launch application.
Poradnik programów jest aplikacją interakcyjną, która daje pełną informację o programie telewizyjnym. Na przykład podaje informacje o programach telewizyjnych na cały tydzień, które są dostarczane w każdym kanale telewizji cyfrowej. Przez naciśnięcie klawisza w układzie zdalnego sterowania 2026, użytkownik końcowy uzyskuje dostęp do dodatkowej planszy nałożonej na zdarzenia pokazywane na ekranie odbiornika telewizyjnego 2022. Dodatkowa plansza jest przeglądarką podającą informacje o aktualnych i przyszłych zdarzeniach w każdym kanale telewizji cyfrowej. Przez naciśnięcie innego klawisza w układzie zdalnego sterowania 2026, użytkownik końcowy uzyskuje dostęp do aplikacji, która wyświetla listę informacji o zdarzeniach, obejmującą cały tydzień. Użytkownik końcowy wyszukuje również i porządkuje zdarzenia według prostych i dostosowanych kryteriów. Użytkownik końcowy uzyskuje również dostęp bezpośrednio do wybranego kanału.Program Guide is an interactive application that gives you complete information about a TV program. For example, it gives information about TV shows for the whole week that are provided on each digital TV channel. By pressing a key on remote control 2026, the end user accesses an additional screen superimposed on the events shown on the television screen 2022. The additional screen is a viewer giving information about current and future events on each digital television channel. By pressing another key on remote control 2026, the end user accesses an application that displays a list of event information covering the entire week. The end user also searches for and organizes events according to simple and customized criteria. The end user also gets direct access to the selected channel.
Aplikacja płacenia za prawo do oglądania programu jest usługą interakcyjną, dostępną w każdym kanale telewizji cyfrowej w połączeniu z układem warunkowego dostępu 3000. Użytkownik końcowy uzyskuje dostęp do aplikacji, stosując poradnik programów telewizyjnych lub przeglądarkę kanałów. Dodatkowo aplikacja jest uruchamiana automatycznie, jak tylko zostaje wykryte zdarzenie w kanale. Użytkownik końcowy może kupić prawo do oglądania aktualnego zdarzenia przez kartę inteligentną lub przez serwer komunikacyjny, stosując modem, telefon i kody DTMF, MINITEL itp. Aplikacja jest albo rezydentna w pamięci ROM odbiornika-dekodera 2020 albo ładowalna do pamięci RAM odbiornika-dekodera 2020.The Pay-for-Watch-Right application is an interactive service available on any digital TV channel in conjunction with conditional access 3000. The end user accesses the application using the TV Guide or Channel Browser. Additionally, the application starts automatically as soon as an event is detected in the channel. The end user may purchase the right to view the current event via a smart card or via a communication server using modem, telephone and DTMF codes, MINITEL etc. The application is either resident in the 2020 receiver-decoder ROM or loadable into the 2020 receiver-decoder RAM.
Aplikacja ładowania PC służy do załadowania programu komputerowego przez użytkownika końcowego.The PC loading application is used to load a computer program by the end user.
Aplikacja przeglądania czasopism obejmuje cykliczne emitowanie obrazów wizyjnych, przy czym użytkownik końcowy przegląda obrazy, korzystając z klawiszy widocznych na ekranie.The magazine browsing application includes the periodic emission of visual images, with the end user browsing the images using the on-screen buttons.
Aplikacja quizowa jest korzystnie zsynchronizowana z emitowanym programem quizowym. Na przykład pytania z licznymi odpowiedziami do wyboru są wyświetlane na ekranie odbiornika telewizyjnego 2022 i użytkownik wybiera odpowiedź, stosując układ zdalnego sterowania 2026.The quiz application is preferably synchronized with the broadcast quiz program. For example, multiple selectable answer questions are displayed on the television 2022 and the user selects the answer using remote control 2026.
183 663183 663
Aplikacja quizowa informuje użytkownika, czy odpowiedź jest poprawna, czy nie i zlicza wyniki uzyskiwane przez użytkownika.The quiz app tells the user if the answer is correct or not and counts the scores the user gets.
Aplikacja telezakupów jest stosowana, gdy oferty towarów na sprzedaż są przesyłane do odbiornika-dekodera 2020 i wyświetlane na ekranie odbiornika telewizyjnego 2022. Stosując układ zdalnego sterowania, użytkownik wybiera daną rzecz do zakupu. Zamówienie jest wysyłane przez kanał modemowy 4002 do serwera 4006 aplikacji i danych lub do oddzielnego punktu sprzedaży, którego numer telefoniczny został załadowany do odbiornika-dekodera, korzystnie z poleceniem obciążenia rachunku karty kredytowej, która została włożona do jednego z czytników kart 4036 odbiornika-dekodera 2020.A teleshopping application is used when offers for goods for sale are sent to the 2020 receiver-decoder and displayed on the 2022 television set screen. Using the remote control system, the user selects the item to be purchased. The order is sent via modem channel 4002 to the application and data server 4006 or to a separate point of sale whose telephone number has been loaded into the receiver-decoder, preferably with an order to debit the credit card account that was inserted into one of the card readers 4036 of the receiver-decoder 2020 .
Aplikacja telebankowa jest stosowana, gdy użytkownik wkłada kartę bankową do jednego z czytników kart 4036 odbiornika-dekodera 2020. Odbiornik-dekoder 2020 wywołuje bank użytkownika, stosując numer telefoniczny zapisany w karcie bankowej lub zapisany w odbiornikudekoderze, a następnie aplikacja zapewnia pewna liczbę funkcji wybieranych przy użyciu układu zdalnego sterowania 2026, na przykład dla załadowania przez linię telefoniczną stanu rachunku, przekazania pieniędzy między rachunkami, żądania wydania książeczki czekowej itd.The telebank application is used when the user inserts a bank card into one of the card readers 4036 of the receiver-decoder 2020. The receiver-decoder 2020 calls the user's bank using the telephone number stored in the bank card or stored in the receiver-decoder, and then the application provides a number of functions to be selected at using remote control 2026, for example, to load account balances over a telephone line, transfer money between accounts, request a check book, etc.
Aplikacja przeglądania internetu jest stosowana, gdy instrukcje użytkownika, takie jak żądanie wyświetlenia strony internetowej o konkretnym URL, są wprowadzane przy użyciu układu zdalnego sterowania 2026 i są wysyłane kanałem modemowym 4002 do serwera 4006 aplikacji i danych. W transmisjach z centrum emisji jest zawarta właściwa strona internetowa, odbierana przez odbiornik-dekoder 2020 poprzez łącze 2012, przekaźnik satelitarny 2014 i łącze 2016, oraz jest wyświetlana na ekranie odbiornika telewizyjnego 2022.The internet browsing application is used when user instructions, such as a request to view a website with a specific URL, are entered using remote control 2026 and are sent over modem channel 4002 to the application and data server 4006. The broadcasts from the broadcast center contain the relevant website, received by the receiver-decoder 2020 via the link 2012, the satellite transmitter 2014 and the link 2016, and is displayed on the screen of the television receiver 2022.
Aplikacje są przechowywane w komórkach pamięci odbiornika-dekodera 2020 i są reprezentowane jako pliki zasobów, które obejmująpliki z opisami obiektów graficznych, pliki z blokami zmiennych, pliki z sekwencjami instrukcji oraz pliki aplikacji i danych.Applications are stored in the memory cells of the 2020 receiver-decoder and are represented as resource files, which include files with descriptions of graphics objects, files with variable blocks, files with sequences of instructions, and application and data files.
Pliki z opisem obiektów graficznych przedstawiają plansze, interfejs aplikacji między człowiekiem a urządzeniem. Pliki z blokami zmiennych przedstawiają struktury danych obsługiwane przez aplikację. Pliki z sekwencjami instrukcji przedstawiają operacje aplikacji związane z przetwarzaniem danych. Pliki aplikacji dostarczają punkty wejściowe do aplikacji.Files with the description of graphic objects present the boards, the application interface between a human and a device. Variable block files represent data structures supported by the application. The instruction sequence files represent the data processing operations of the application. Application files provide entry points to the application.
Aplikacje utworzone w ten sposób stosują pliki danych, na przykład pliki bibliotek ikon, pliki obrazów, pliki fontów, pliki z tabelami kolorów i pliki z tekstem ASCII. Aplikacja interakcyjna uzyskuje również dane na bieżąco przez wysyłanie i odbieranie danych.Applications created this way use data files, such as icon library files, image files, font files, color table files, and ASCII text files. The interactive application also obtains data on the fly by sending and receiving data.
Motor czasu przebiegu 4008 ładuje do swojej pamięci tylko te pliki zasobów, które potrzebuje w danym momencie. Pliki zasobów są odczytywane spośród plików z opisami obiektów graficznych, plików z sekwencjami instrukcji i plików aplikacji. Pliki z blokami zmiennych są zapisywane w pamięci w wyniku wywołania procedury ładowania modułów i pozostają w pamięci aż do wywołania procedury usuwania modułów.The runtime motor 4008 loads into its memory only those resource files that it needs at any given time. Resource files are read from graphic object description files, instruction sequence files, and application files. The files with the variable blocks are saved in memory by calling the module loading procedure and remain in memory until the module removal procedure is called.
Na fig. 3 jest przedstawiony moduł 4010, taki jak moduł telezakupów, który jest zestawem plików zasobów i danych, obejmującym plik 4012 pojedynczej aplikacji, nieokreśloną liczbę plików 4014 z opisem obiektów graficznych, nieokreśloną liczbę plików 4016 z blokami zmiennych, nieokreśloną liczę plików 4018 sekwencji instrukcji i inne pliki danych 4020, na przykład pliki bibliotek ikon, pliki obrazów, pliki z fontami, pliki tabel kolorów i pliki tekstu ASCII.Figure 3 shows a module 4010, such as a teleshopping module, which is a set of resource and data files including a single application file 4012, an indefinite number of graphics files 4014, an indefinite number of variable block files 4016, an indefinite number of sequence files 4018 instruction and other data files 4020, such as icon library files, image files, font files, color table files, and ASCII text files.
W strumieniu danych MPEG każdy moduł zawiera grupę tabel MPEG. Każda tabela MPEG jest sformatowana jako pewna liczba sekcji. W strumieniu danych MPEG każda sekcja ma wymiar do 4 kilobajtów. Przy przesyłaniu danych przez port szeregowy lub równoległy, moduły sąna przykład podobnie dzielone na tabele i sekcje, przy czym wymiar sekcji zmienia się zależnie od środka transportu.In an MPEG data stream, each module contains a group of MPEG tables. Each MPEG table is formatted as a number of sections. In an MPEG data stream, each section is up to 4 kilobytes in size. When transmitting data via a serial or parallel port, the modules, for example, are similarly subdivided into tables and sections, the dimension of the sections varying depending on the mode of transport.
Moduły są transportowane w strumieniu danych MPEG w postaci pakietów danych, zawierających zwykle 188 bajtów we właściwych typach strumienia danych, na przykład w strumieniu danych wizyjnych, strumieniu danych akustycznych i strumieniu danych teletekstu. Każdy pakiet jest poprzedzany przez identyfikator pakietu złożony z 13 bitów, po jednym identyfikatorze pakietu na każdy pakiet transportowany w strumieniu danych MPEG. Tabela mapy programu zawiera listę różnych strumieni danych i definiuje zawartość każdego strumienia danychThe modules are transported in an MPEG data stream in the form of data packets, typically having 188 bytes in the appropriate data stream types, for example a video data stream, an audio data stream and a teletext data stream. Each packet is preceded by a packet identifier of 13 bits, with one packet identifier for each packet transported in the MPEG data stream. The program map table lists the different data streams and defines the content of each data stream
183 663 według właściwego identyfikatora pakietu, który informuje urządzenie o obecności aplikacji w strumieniu danych, przy czym identyfikator pakietu jest określany przy użyciu tabeli PMT.183 663 according to a proper packet identifier that informs the device about the presence of an application in the data stream, the packet identifier being determined using the PMT table.
Na fig. 4 odbiornik-dekoder 2020 zawiera kilka interfejsów, w szczególności interfejs MPEG 4028 dla strumienia sygnałów MPEG, interfejs szeregowy 4030, interfejs równoległy 4032 i dwa czytniki kart 4036, jeden dla karty inteligentnej, stanowiącej część układu i jeden dla kart bankowych, stosowanych do dokonywania płatności, operacji bankowych itd. Odbiornikdekoder zawiera również interfejs modemu 4034 dla kanału modemowego 4002 producenta sygnału telewizyjnego, tak że użytkownik może wskazywać preferencje producentowi sygnału telewizyjnego.In Fig. 4, the receiver-decoder 2020 comprises several interfaces, in particular an MPEG interface 4028 for the MPEG signal stream, a serial interface 4030, a parallel interface 4032, and two card readers 4036, one for the smart card that is part of the chip and one for the bank cards used. for making payments, banking, etc. The receiver / decoder also includes a modem interface 4034 for the modem channel 4002 of the TV signal producer, so that the user can indicate preferences to the producer of the TV signal.
Obszar pamięci jest miejscem przechowywania modułów 4010 umieszczonych w pamięci 2024 odbiornika-dekodera 2020.The memory area is the storage location of modules 4010 located in memory 2024 of the receiver-decoder 2020.
Na fig. 5 pamięć 2024 jest podzielona na obszar pamięci RAM 4022, obszar pamięci błyskowej 4024 i obszar pamięci ROM 4026, ale ta fizyczna organizacja jest inna niż organizacja logiczna. Pamięć może być również podzielona na obszary pamięci związane z różnymi interfejsami, przez które moduły sąładowane do odbiornika-dekodera 2020, na przykład obszar MPEG do przechowywania modułów ładowanych ze strumienia bitów MPEG i obszar interfejsu szeregowego do przechowywania modułów odbieranych przez interfejs szeregowy. Z jednego punktu widzenia pamięć jest traktowanajako część sprzętu, z innego punktu widzenia pamięć j est traktowana jako wspomagająca lub zawierająca cały pokazany układ poza sprzętem.In Fig. 5, memory 2024 is partitioned into RAM area 4022, flash memory area 4024, and ROM area 4026, but this physical organization is different from logical organization. The memory may also be divided into memory areas associated with various interfaces through which modules are loaded to the receiver / decoder 2020, for example an MPEG area for storing modules loaded from the MPEG bitstream and a serial interface area for storing modules received via the serial interface. From one point of view, memory is regarded as part of the hardware, from another point of view, memory is regarded as supporting or including all of the circuit shown except the hardware.
Odbiornik-dekoder może mieć różne konstrukcje sprzętowe, chociaż wszystkie spełniają te same parametry funkcjonalne. Jest istotne, żeby dana aplikacja zachowywała się w ten sam sposób w każdym odbiorniku-dekoderze i żeby odbiornik-dekoder wykonywał wszystkie aplikacje w ten sam poprawny sposób.The receiver-decoder may have different hardware designs, although they all meet the same functional parameters. It is essential that a given application behaves the same way in every receiver-decoder and that the receiver-decoder executes all applications in the same correct way.
Figura 6 pokazuje, że układ jest skoncentrowany na motorze czasu przebiegu 4008, stanowiącym część maszyny wirtualnej 4007. Jest ona sprzężona z jednej strony z aplikacjami po stronie wysokiego poziomu, a z drugiej strony z aplikacjami po stronie niskiego poziomu, przez różne pośrednie jednostki logiczne opisane poniżej.Figure 6 shows that the circuit is focused on the runtime engine 4008, which is part of the virtual machine 4007. It is coupled on the one hand to the applications on the high level, and on the other hand to the applications on the low level, through various intermediate logical units described below. .
Na fig. 4 odbiornik-dekoder zawiera różne porty lub interfejsy, między innymi interfejs 2030 układu zdalnego sterowania 2026, interfejs MPEG 4028, interfejs szeregowy 4030, interfejs równoległy 4032, interfejsy czytników kart 4036 i interfejs 4034 kanału modemowego 4002.In Fig. 4, the receiver-decoder includes various ports or interfaces, including remote control interface 2030 2026, MPEG interface 4028, serial interface 4030, parallel interface 4032, card reader interfaces 4036, and modem channel interface 4034, 4002, among others.
Na fig. 6 różne aplikacje 4057 są sprzężone z maszyną wirtualną 4007. Pewne powszechnie stosowane aplikacje sąaplikacjami bardziej lub mniej rezydentnymi w układzie, podczas gdy inne sąładowane do układu, na przykład ze strumienia danych MPEG.In FIG. 6, various applications 4057 are coupled to virtual machine 4007. Some commonly used applications are more or less resident applications on the chip, while others are loaded onto the chip, for example from an MPEG data stream.
Maszyna wirtualna 4007 zawiera, oprócz motoru czasu przebiegu 4008, pewne funkcje rezydentnej biblioteki dla serwera 4006 aplikacji i danych, które obejmują narzędzia 4058. Biblioteka zawiera różne funkcje napisane w języku C, stosowane przez motor czasu przebiegu 4008. Obejmują one manipulacje danymi, na przykład kompresję, rozszerzanie lub porównywanie struktur danych, rysowanie linii itd. Biblioteka serwera 4006 aplikacji i danych zawiera również informacje w odbiorniku-dekoderze 2020, takie jak wersje sprzętu i oprogramowania oraz dostępna przestrzeń pamięci RAM i funkcje stosowane podczas ładowania nowego urządzenia 4062. Funkcje sąładowane do biblioteki po zapisie w pamięci błyskowej lub RAM.Virtual machine 4007 includes, in addition to runtime engine 4008, some resident library functions for application and data server 4006, which include utilities 4058. The library includes various C-language functions used by runtime engine 4008. These include data manipulations, e.g. compression, extension or comparison of data structures, line drawing, etc. The application and data server 4006 library also contains information in the 2020 receiver-decoder such as hardware and software versions and available RAM space and functions used when loading the new 4062 device. Functions are loaded into libraries after saving to flash memory or RAM.
Motor czasu przebiegu 4008 jest połączony z układem zarządzania 4068 urządzeniami, który jest sprzężony z zestawem urządzeń 4062 połączonych ze sterownikami 4066 urządzeń, które są z kolei połączone z portami lub interfejsami. Ogólnie sterownik 4066 urządzenia jest uważany za tworzący interfejs logiczny, także dwa różne sterowniki 4066 urządzeń sąpołączone ze wspólnym portem fizycznym. Urządzenie 4062 może być połączone z więcej niż jednym sterownikiem 4066 urządzenia, a jeśli urządzenie 4062 jest połączone z jednym sterownikiem 4066 urządzenia, urządzenie 4062 jest przystosowane do pełnej funkcjonalności potrzebnej do komunikacji, więc unika się potrzeby stosowania oddzielnego sterownika 4066 urządzenia. Pewne urządzenia 4062 mogą komunikować się między sobą.Runtime motor 4008 is coupled to device management 4068, which is coupled to a set of devices 4062 coupled to device drivers 4066 that are in turn coupled to ports or interfaces. Generally, device driver 4066 is considered to constitute the logical interface, so that two different device drivers 4066 are connected to a common physical port. Device 4062 may be coupled to more than one device controller 4066, and if device 4062 is coupled to one device controller 4066, device 4062 is capable of having all the functionality needed for communication, so the need for a separate device driver 4066 is avoided. Some devices 4062 can communicate with each other.
Istnieją trzy formy komunikacji urządzeń 4062 z motorem czasu przebiegu 4008: przy pomocy zmiennych, buforów i zdarzeń, które są przekazywane do zestawu kolejek zdarzeń.Devices 4062 communicate with the runtime engine 4008 in three ways: with variables, buffers, and events that are passed to a set of event queues.
183 663183 663
Pod względem konstruktorów lub dostawców różnych funkcji, aplikacje są wytwarzane przez różnych dostawców usług i programów. Motor czasu przebiegu 4008 jest konstruowany i dostarczany przez administratora układu lub konstruktora. Układ zarządzania 4068 urządzeniami, urządzenia 4062 i sterowniki 4066 urządzeń sądostarczane przez wytwórcę odbiornika dekodera czyli dostawcę sprzętu. Tązależność między różnymi poziomami odbiornika-dekodera a trzema poziomami dostawców niejest zwykle precyzyjna. Na przykład administrator układu będzie w praktyce również dostarczał pewne aplikacje, producent odbiornika-dekodera może brać udział w konstruowaniu urządzeń logicznych itd.In terms of developers or vendors of different functions, applications are produced by different vendors of services and programs. The runtime motor 4008 is constructed and provided by the system administrator or developer. The device management system 4068, devices 4062, and device drivers 4066 are provided by the decoder receiver manufacturer or hardware supplier. The relationship between the different tiers of receiver-decoder and the three tiers of vendors is usually not precise. For example, the system administrator will in practice also provide certain applications, the receiver-decoder manufacturer may be involved in the construction of the logic devices, etc.
Każda funkcja odbiornika-dekodera 2020 jest reprezentowana jako urządzenie 4062. Urządzenia 4062 mogą być albo lokalne, albo zdalne. Lokalne urządzenia 4064 obejmują karty inteligentne, sygnały łączą SCART, modemy, interfejsy szeregowe i równoległe, odtwarzacze sygnałów wizyjnych i akustycznych MPEG oraz separatory sekcji i tabel MPEG. Sterowniki 4066 urządzeń, zlokalizowane w oddalonym miejscu, różniąsię od urządzeń lokalnych tym, że port i procedura są definiowane przez specjalistę układowego lub konstruktora, a nie przez urządzenie 4062 i sterownik 4066 urządzenia, dostarczone i skonstruowane przez producenta odbiornika-dekodera.Each receiver / decoder 2020 function is represented as device 4062. Devices 4062 can be either local or remote. Local 4064 devices include smart cards, signals connect SCART, modems, serial and parallel interfaces, MPEG video and audio players, and MPEG section and table separators. Remote device drivers 4066 differ from local devices in that the port and routine are defined by a hardware specialist or builder, not device 4062 and device driver 4066 provided and engineered by the receiver-decoder manufacturer.
Gdy jest utworzone nowe urządzenie 4062, może być ono zainstalowane w istniejącym odbiorniku-dekoderze 2020 przez załadowanie właściwej aplikacji 4056 z centrum emisji. Ładowanie to jest wykonywane w odbiorniku-dekoderze 2020 przez aplikację 4056, która sprawdza wersję sprzętu i oprogramowania i jeśli sąpoprawne, ładuje moduły programowe, reprezentujące nowe urządzenie 4062 i prosi procedurę biblioteki serwera 4006 aplikacj i i danych o zainstalowanie kodu nowego urządzenia w sprzęcie w pamięci błyskowej. Może to zapewnić elastyczną i bezpieczną instalację nowych funkcji w odbiorniku-dekoderze 2020 bez wpływania na resztę oprogramowania.When a new device 4062 is created, it can be installed in the existing receiver / decoder 2020 by loading the correct application 4056 from the broadcast center. This load is performed in the receiver-decoder 2020 by the application 4056 which checks the hardware and software version and if correct, loads the program modules representing the new device 4062 and asks the application and data server library routine 4006 to install the new device code in the hardware in flash memory . This can ensure flexible and secure installation of new features in the 2020 receiver-decoder without affecting the rest of the software.
Układ zarządzania 4068 urządzeniami jest wspólnym interfejsem oprogramowania między aplikacją 4056 a specyficznymi funkcjami odbiornika-dekodera 2020. Układ zarządzania 4068 urządzeniami kontroluje dostęp do urządzenia 4062, deklaruje odbiór nieoczekiwanego zdarzenia i zarządza współdzieloną pamięcią.Device management 4068 is a common software interface between application 4056 and receiver / decoder 2020 specific functions. Device management 4068 controls access to device 4062, declares receipt of unexpected events, and manages shared memory.
Motor czasu przebiegu 4008 pracuje pod kontrolą mikroprocesora i ogólnego interfejsu programowania aplikacji. Są one zainstalowane w każdym odbiorniku-dekoderze 2020, tak że wszystkie odbiorniki-dekodery 2020 są identyczne z punktu widzenia aplikacji.Run time motor 4008 runs under the control of a microprocessor and a general application programming interface. They are installed in every 2020 receiver-decoder, so that all 2020 receiver-decoders are identical from an application point of view.
Motor czasu przebiegu 4008 wykonuje aplikacje 4056 w odbiorniku-dekoderze 2020. Wykonuje interakcyjne aplikacje 4056 i odbiera zdarzenia z zewnątrz odbiornika-dekodera 2020, wyświetla grafikę i tekst, wywołuje urządzenia w celu uzyskania określonych usług i stosuje funkcje z biblioteki serwera 4006 aplikacji i danych, połączonej z motorem czasu przebiegu 4008 w celu wykonywania określonych obliczeń.Run-time motor 4008 executes applications 4056 at receiver-decoder 2020. Executes interactive applications 4056 and receives events from outside of receiver-decoder 2020, displays graphics and text, calls devices to obtain specific services, and applies functions from application and data server library 4006. coupled to the run time engine 4008 to perform specific calculations.
Motor czasu przebiegu 4008 jest kodem wykonawczym, zainstalowanym w każdym odbiorniku-dekoderze 2020 i zawiera interpreter w celu interpretacji i wykonywania aplikacji. Motor czasu przebiegu 4008 jest przystosowany do dowolnego systemu operacyjnego, włącznie z jednozadaniowym systemem operacyjnym, takim jak system MS-DOS. Motor czasu przebiegu 4008 jest oparty na modułach z sekwencjami procesowymi, które reagująna różne zdarzenia, takie jak naciśnięcie klawisza, wykonując różne działania i zawiera własny program planujący, dla zarządzania kolejkami zdarzeń, pochodzącymi z różnych interfejsów sprzętowych. Motor czasu przebiegu 4008 obsługuje również wyświetlanie grafiki i tekstu. Moduł z sekwencjami procesowymi zawiera zestaw grup działań. Każde zdarzenie powoduje, że moduł z sekwencjami procesowymi przechodzi z bieżącej grupy działań do innej grupy działań w zależności od charakteru zdarzenia i wykonuje działania nowej grupy działań.The runtime motor 4008 is an execution code, installed in each receiver-decoder 2020, and includes an interpreter for interpreting and executing the application. The runtime engine 4008 is adapted to any operating system, including a single tasking operating system such as MS-DOS. Runtime motor 4008 is based on modules with process sequences that respond to various events, such as a keystroke, perform various actions, and contain its own scheduler to manage event queues from various hardware interfaces. The runtime motor 4008 also supports the display of graphics and text. The process sequence module contains a set of action groups. Each event causes the process sequence module to move from the current activity group to a different activity group depending on the nature of the event and perform the activities of the new activity group.
Kanał logiczny różni się od portu fizycznego, na przykład mogą być zastosowane dwa różne typy kanałów logicznych, stosujące ten sam port fizyczny. Zdarzenia w tych dwóch kanałach logicznych sąprzekazywane do innych modułów sekwencji procesowych. Dodatkowo mogąbyć użyte dwa inne kanały logiczne tego samego typu, stosujące port fizyczny. W tym przypadku każdyThe logical channel is different from the physical port, for example, two different types of logical channels may be used using the same physical port. The events in these two logical channels are forwarded to other process sequence modules. In addition, two other logical channels of the same type using a physical port can be used. In this case, everyone
183 663 z dwóch kanałów wymaga zastosowania własnego modułu sekwencji procesowych, tak że są tworzone dwie instancje czyli egzemplarze tego samego modułu sekwencji procesowych.183,663 of the two channels requires a proprietary process sequence module so that two instances or instances of the same process sequence module are created.
Motor czasu przebiegu 4008 zawiera ładowarkę kodu do zapisywania i ładowania aplikacji 4056 do pamięci odbiornika-dekodera. Potrzebny kod jest zapisywany w pamięci RAM lub błyskowej w celu zapewnienia optymalnej pracy. Załadowane dane są weryfikowane przez mechanizm identyfikujący w celu uniknięcia wszelkiej modyfikacji aplikacji 4056 lub wykonywania nielegalnej aplikacji. Motor czasu przebiegu 4008 zawiera również dekompresor. Gdy kod aplikacji czyli postać kodu pośredniego jest skompresowana w celu oszczędzenia przestrzeni i szybkiego ładowania ze strumienia transportowego MPEG-2 lub przez wprowadzony tryb odbior mika-dekodera, kod musi być zdekompresowany przed załadowaniem go do pamięci RAM. Motor czasu przebiegu 4008 zawiera również interpreter do interpretowania kodu aplikacji dla uaktualniania wartości różnych zmiennych i określania zmian statusu oraz kontroler błędów.Run time motor 4008 includes a code loader for writing and loading application 4056 to the receiver-decoder memory. The necessary code is saved in RAM or flash memory for optimal operation. The uploaded data is verified by an identification mechanism to avoid any modification of the application 4056 or execution of an illegal application. Run time motor 4008 also includes a decompressor. When the application code or intermediate code form is compressed to save space and load quickly from an MPEG-2 transport stream or by the introduced mica-decoder mode, the code must be decompressed before loading it into RAM. The runtime engine 4008 also includes an interpreter for interpreting the application code for updating the values of various variables and determining changes in status, and an error controller.
Główna pętla motoru czasu przebiegu 4008 wydziela zdarzenia ze środków kolejkowych i uaktywnia związane ze zdarzeniem moduły sekwencji procesowych. Przy każdym przejściu pętli głównej wywoływana jest procedura odbierania zewnętrznych zdarzeń, takich jak naciśnięcie jednego z klawiszy układu zdalnego sterowania, odbiór sekcji MPEG-2 lub komunikatu z portu szeregowego z interfejsu zdarzeń. Wszystkie zdarzenia albo wprowadzone do funkcji prezentacyjnej omawianej poniżej albo odebrane przez interfejs przechodząprzez interfejs zdarzeń, zanim są przetwarzane przez motor czasu przebiegu 4008. Dla każdego wykrytego zdarzenia procedura zawiera komunikat zwany zdarzeniem, który jest umieszczany w jednej z 5 kolejek motoru czasu przebiegu 4008, o właściwym poziomie priorytetu od 0 do 4. Po wywołaniu interfejsu zdarzeń, który umieszcza zdarzenia w kolejkach, motor czasu przebiegu 4008 przeszukuje kolejki według malejącego priorytetu od poziomu 4 do poziomu 0. Znalezione w ten sposób zdarzenie jest usuwane z kolejki i stosowane do uaktywnienia modułu sekwencji procesowych, dla którego jest ono przeznaczone.The main loop of the runtime engine 4008 extracts events from the queue means and activates event-related process sequence modules. Each time the main loop goes through, the routine for receiving external events is called, such as pressing one of the remote control keys, receipt of an MPEG-2 section or a serial port message from the event interface. All events either entered into the presentation function discussed below or received by the interface pass through the event interface before being processed by the runtime engine 4008. For each detected event, the procedure includes a message called an event that is placed in one of the 5 queues of the runtime engine 4008, the appropriate priority level from 0 to 4. When the event interface is called, which puts the events in queues, runtime engine 4008 searches the queues in descending priority from level 4 to level 0. The event thus found is removed from the queue and used to activate the sequence module process for which it is intended.
Przed użyciem usług dowolnego urządzenia 4062, program, taki jak sekwencja instrukcji aplikacji, musi być zadeklarowany jako klient, to jest sposób logicznego dostępu do urządzenia 4066 lub układu zarządzania 4068 urządzeniami. Układ zarządzania 4068 urządzeniami nadaje klientowi numer klienta, który jest powoływany we wszystkich odwołaniach do urządzenia. Urządzenie 4066 może mieć kilku klientów, przy czym liczba klientów dla każdego urządzenia 4066 jest określona w zależności od typu urządzenia 4066. Klient jest wprowadzany do urządzenia 4066 przez procedurę urządzenia: otwartego kanału. Procedura ta przypisuje klientowi numer klienta. Klient może zostać usunięty z listy klientów układu zarządzania 4068 urządzeniami przez procedurę urządzenia: otwartego kanału.Before using the services of any device 4062, a program, such as an application instruction sequence, must be declared a client, i.e., a method of logically accessing device 4066 or device management 4068. The device management system 4068 assigns the client a customer number which is referenced in all device references. Device 4066 can have several clients, with the number of clients for each device 4066 being determined depending on the type of device 4066. The client is entered into device 4066 via an open channel device procedure. This procedure assigns the customer a customer number. A client can be removed from the device management 4068 client list by an open channel device procedure.
Dostęp do urządzeń 4062, zapewniony przez układ zarządzania 4068 urządzeniami, może być albo synchroniczny albo asynchroniczny. Dla dostępu synchronicznego stosowana jest procedura urządzenia: wywołanie. Jest to środek do uzyskiwania danych, które sąnatychmiast dostępne lub funkcja, która nie obejmuje czekania na żądaną odpowiedź. Dla dostępu asynchronicznego stosowana jest instrukcja urządzenia: wejścia-wyjścia. Jest to środek do uzyskiwania danych, który uwzględnia czekanie na odpowiedź, na przykład skanowanie częstotliwości tunera, w celu znalezienia zwielokrotnienia lub odczytania tabeli ze strumienia MPEG. Gdy żądany wynik jest dostępny, zdarzenie jest umieszczane w kolejce motoru w celu zasygnalizowania swojego przybycia. Inna procedura urządzenia: zdarzenia zapewnia środki do zarządzania nieoczekiwanymi zdarzeniami.Access to the devices 4062, provided by the device management 4068, can be either synchronous or asynchronous. For synchronous access, a device procedure is used: call. It is either a means of obtaining data that is immediately available or a function that does not include waiting for a requested response. For asynchronous access, the device instruction: input / output is used. It is a data acquisition means that includes waiting for a response, e.g. scanning the frequency of the tuner to find a duplicate or read a table from the MPEG stream. When the desired result is available, the event is placed on the motorized queue to signal its arrival. Another device procedure: Events provides the means to manage unexpected events.
Główna pętla motoru czasu przebiegu 4008 jest dołączona do różnych modułów z sekwencjami procesowymi i gdy główna pętla napotyka właściwe zdarzenie, sterowanie jest chwilowo przenoszone do jednego z modułów z sekwencjami procesowymi.The main loop of the runtime engine 4008 is connected to various process sequence modules, and when the main loop encounters the correct event, control is temporarily transferred to one of the process sequence modules.
Komunikacja między motorem czasu przebiegu 4008 i aplikacjami jest wykonywana również głównie przez dwa typy modułów sekwencji procesowych: moduły sekwencji procesowych opisów obiektów graficznych i moduł sekwencji procesowych sekwencji instrukcji.Communication between runtime engine 4008 and applications is also mainly performed by two types of process sequence modules: process sequence modules for graphic object descriptions and process sequence modules for sequence instructions.
Działanie modułów sekwencji procesowych jest najlepiej opisane przez rozważenie działania modułu opisu obiektów graficznych i modułów sekwencji instrukcji. ModułyThe operation of the process sequence modules is best described by considering the operation of the graphic object description module and instruction sequence modules. Modules
183 663 sekwencji procesowych opisów obiektów graficznych obsługuje interfejs między urządzeniem a człowiekiem, zaś moduł sekwencji procesowych sekwencji instrukcji działa w reakcji na żądania wykonania sekwencji instrukcji, odebrane z modułu sekwencji procesowych opisów obiektów graficznych, przy czym sekwencja instrukcji jest sekwencją zdekompresowanych rozkazów kodu pośredniego.183,663 process image description process sequences support the device-human interface, and the process instruction sequence module operates in response to instruction sequence execution requests received from the image process description sequence module, the instruction sequence being a decompressed intermediate code instruction sequence.
Funkcja prezentacyjna, która komunikuje się z motorem czasu przebiegu 4008, dotyczy prezentacji tekstu i grafiki dla użytkownika końcowego i prezentacji działań użytkownika końcowego dla motoru czasu przebiegu 4008. Tekst i grafika są nakładane na wyświetlany obraz na ekranie odbiornika telewizyjnego 2022 i użytkownik może oddziaływać przez aplikację 4056 przy pomocy klawiatury układu zdalnego sterowania 2026.The presentation function that communicates with the runtime engine 4008 relates to the presentation of text and graphics to the end user and the presentation of end user activities for the runtime motor 4008. The text and graphics are superimposed on the displayed image on the television screen 2022 and the user can interact through the application. 4056 with the remote control keypad 2026.
Moduł sekwencji procesowych opisów obiektów graficznych odbiera zdarzenia w postaci pytań z ekranu odbiornika telewizyjnego 2022 użytkownika końcowego i przetwarza zapytania przez odczytywanie pliku 4014 interfejsu. Następnie wykorzystuje funkcje graficzne interfejsu do śledzenia obiektu graficznego na ekranie odbiornika telewizyjnego 2022. Użytkownik końcowy używa cztery klawisze układu zdalnego sterowania 2026 do przesuwania obiektu graficznego po ekranie. Za każdym razem, gdy klawisz jest naciskany, zdarzenie jest przetwarzane przez moduł sekwencji procesowych opisów obiektów graficznych. Gdy użytkownik potwierdza wybór, używając klawisz ważny w układzie zdalnego sterowania 2026, a kod zdarzenia jest przetwarzany przez moduł sekwencji procesowych opisów obiektów graficznych, który generuje zdarzenia żądające wykonania sekwencji instrukcji i wysyła je do modułu sekwencji procesowych sekwencji instrukcji.The graphic object description process sequence module receives query events from the end user television 2022 and processes the query by reading an interface file 4014. It then uses the graphical functions of the interface to trace the graphical object on the television 2022 screen. The end user uses the four keys of the remote control 2026 to move the graphical object across the screen. Each time a key is pressed, the event is processed by the process sequence module of graphic object descriptions. When the user confirms the selection using a valid key in remote control 2026, the event code is processed by the graphic object description process sequence module which generates events requesting the execution of the instruction sequence and sends them to the instruction sequence process sequence module.
Gdy moduł sekwencji procesowych sekwencji instrukcji odbierze żądanie wykonania sekwencji instrukcji z modułu sekwencji procesowych opisów obiektów graficznych, odczytuje właściwy plik 4018 sekwencji instrukcji i ładuje go w całości do pamięci. Następnie rozpoczyna wykonywanie sekwencji instrukcji i kontynuuje, aż sekwencja instrukcji zostanie skończona lub aż napotka funkcję wywołującą zmianę marszruty.When the process instruction sequence module receives a request to execute an instruction sequence from the graphic object description process sequence module, it reads the appropriate instruction sequence file 4018 and loads it completely into memory. It then begins execution of the instruction sequence and continues until the instruction sequence is complete or it encounters a function that causes the route change.
Po zakończeniu sekwencji instrukcji układ wraca do krążenia w głównej pętli w celu uzyskiwania zdarzeń i zmiany kolejności wykonywania programu.After the instruction sequence is complete, the system returns to circulation in the main loop to obtain events and change the order in which the program is executed.
Istnieje również kilka modułów sekwencji procesów ładowania, których funkcjąjest przetwarzanie protokołów związanych z różnymi obszarami zawierającymi aplikacje 4056.There are also several load sequence modules whose function is to process protocols related to the various areas containing the 4056 applications.
Na fig. 7 układ zarządzania 4068 urządzeniami zawiera kolejkę 100, do której zdarzenia z urządzeń są przesyłane w celu tymczasowego przechowania. We właściwych odstępach czasu maszyna wirtualna wysyła sygnał do kolejki w celu wydzielenia z niej pierwszego zdarzenia. Zdarzenie to jest przenoszone do struktury kolejki 101 w maszynie wirtualnej. Zależnie od poziomu priorytetu, zdarzenie jest umieszczane we właściwej spośród pięciu kolejek o numerach od 0 do 4. Zdarzenia są wydzielane ze struktury kolejki 101 przez układ wyboru kolejki 102 pod kontrolą motoru czasu przebiegu 4008.In Fig. 7, device management 4068 includes a queue 100 to which events from devices are sent for temporary storage. At the correct intervals, the virtual machine sends a signal to the queue to extract the first event from it. This event is moved to the queue structure 101 in the virtual machine. Depending on the priority level, the event is placed in the correct one of five queues numbered 0 through 4. Events are extracted from the queue structure 101 by queue selector 102 under the control of the runtime engine 4008.
Po wybraniu zdarzenia ze struktury kolejki 101, jest ono przekazywane do motoru modułu sekwencji procesów 104, który składa się ze sterownika modułu sekwencji procesów 105 i zestawu modułów sekwencji procesów 106. Każdy moduł sekwencji procesów 106 jest zestawem połączonych jedna z drugą grup działań, a każde przejście od jednej grupy działań do następnej grupy działań zależy od aktualnej grupy działań i natury zdarzenia. Różne moduły sekwencji procesów 106 mająróżne wymiary i złożoność, włącznie z takimi, w których następna grupa działań, to jest grupa działań, do której układ przechodzi w reakcji na zdarzenie, jest zależną jedynie od natury zdarzenia, ale nie jest zależna od aktualnej grupy działań. Również, jak widać po prawej stronie schematu blokowego modułów sekwencji procesów 106, może być kilka kopii modułu sekwencji procesów; to jest kilka identycznych modułów sekwencji procesów do obsługi na przykład kilku oddzielnych strumieni danych przesyłanych przez pojedynczy port, stosując identyczne protokoły.When an event is selected from the queue structure 101, it is passed to the process sequence module engine 104, which consists of a process sequence module driver 105 and a set of process sequence modules 106. Each process sequence module 106 is a set of interconnected action groups, each the transition from one activity group to the next activity group depends on the current activity group and the nature of the event. The various modules of the process sequence 106 have different dimensions and complexity, including those in which the next group of activities, i. E. The group of activities to which the system passes in response to an event, is dependent only on the nature of the event, but is not dependent on the actual group of activities. Also, as seen on the right side of the flowchart of the process sequence modules 106, there may be several copies of the process sequence module; that is, several identical process sequence modules to handle e.g. several separate data streams sent over a single port using identical protocols.
Po wybraniu zdarzenia, jest ono przekazywane do właściwego modułu sekwencji procesów 106. Wybiera on właściwe wyjście z aktualnej grupy działań w module sekwencji procesów. Powoduje to wybór właściwej następnej grupy działań i wykonanie działań w danej grupie działań,Once an event is selected, it is passed to the appropriate process sequence module 106. It selects the correct output from the current activity group in the process sequence module. This causes the selection of the next appropriate group of activities and execution of activities in a given group of activities
183 663 obejmujących na przykład wysłanie komunikatu do układu zarządzania 4068 urządzeniami lub wykonanie sekwencji instrukcji. Grupy działań w module sekwencji procesów 106 mogą również wysyłać komunikaty zdarzeń do innych modułów sekwencji procesów 106.183,663, for example, sending a message to a device management system 4068 or executing a sequence of instructions. Action groups in process sequence module 106 may also send event messages to other process sequence modules 106.
Jeśli zostanie wybrana sekwencja instrukcji, jej identyfikacja jest wysyłana do selektora 107 sekwencji instrukcji. Otrzymuje on żądanąsekwencje instrukcji z pamięci 108 sekwencji instrukcji i przekazuje ją do interpretatora 109 sekwencji instrukcji, który wykonuje sekwencję instrukcji.If an instruction sequence is selected, its identification is sent to the instruction sequence selector 107. It receives the requested instruction sequence from the instruction sequence memory 108 and passes it to the instruction sequence interpreter 109 which executes the instruction sequence.
Układ zawiera również filtr zdarzeń 110, który jest ładowany typami zdarzeń, na przykład z modułów sekwencji procesów 106. Gdy zdarzenie jest przekazywane z kolejki 100 w układzie zarządzania 4068 urządzeniami do struktury kolejki 101 w maszynie wirtualnej, jego typ lub charakter jest porównywany z listąw filtrze zdarzeń 110 i jeśli jest ono typu, który nie jest rozpoznany, jest usuwane. Jeśli zapomocąukładu zarządzania 4068 urządzeniami lub klawiatury generuje się zdarzenie typu, którego maszyna wirtualne nie może obsłużyć, zdarzenia takie nie są przekazywane do struktury kolejki 101, gdyby zdarzenia tego typu zostały przekazane do struktury kolejki 101 albo gromadziły się w strukturze kolejki 101 albo mogły spowodować niesprawność motoru modułu sekwencji procesów 104.The system also includes an event filter 110, which is loaded with event types, for example, from process sequence modules 106. When an event is forwarded from queue 100 in device management 4068 to queue structure 101 in the virtual machine, its type or nature is compared to the list in the filter. event 110, and if it is of an unrecognized type, it is cleared. If the 4068 device management system or the keyboard generates an event of a type that the virtual machine cannot handle, such events are not passed to the queue structure 101 if such events were passed to the queue structure 101 or accumulated in the queue structure 101 or could cause a malfunction. engine of the process sequence module 104.
Fig.2.Fig.2.
183 663183 663
Fig.3.Fig.3.
183 663183 663
Fig.4.Fig.4.
Fig.5.Fig 5.
iand
20242024
183 663183 663
Fig.6.Fig. 6.
40564056
40614061
183 663183 663
183 663183 663
Fig.1Fig.1
Departament Wydawnictw UP RP. Nakład 60 egz. Cena 4,00 zł.Publishing Department of the UP RP. Mintage 60 copies. Price PLN 4.00.
Claims (7)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP97400650 | 1997-03-21 | ||
PCT/EP1997/002116 WO1998043433A1 (en) | 1997-03-21 | 1997-04-25 | Data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
PL335775A1 PL335775A1 (en) | 2000-05-22 |
PL183663B1 true PL183663B1 (en) | 2002-06-28 |
Family
ID=26070211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PL97335775A PL183663B1 (en) | 1997-03-21 | 1997-04-25 | Data processing system |
Country Status (13)
Country | Link |
---|---|
EP (1) | EP0968611A1 (en) |
JP (1) | JP2001518262A (en) |
CN (1) | CN1254478A (en) |
AU (1) | AU740740B2 (en) |
BR (1) | BR9714598A (en) |
CA (1) | CA2284011A1 (en) |
IL (1) | IL131947A0 (en) |
NO (1) | NO994540L (en) |
NZ (1) | NZ500206A (en) |
PL (1) | PL183663B1 (en) |
TR (1) | TR199902271T2 (en) |
WO (1) | WO1998043433A1 (en) |
ZA (1) | ZA973613B (en) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0893765A1 (en) | 1997-07-24 | 1999-01-27 | CANAL+ Société Anonyme | IEEE 1394 Set Top Box device driver |
EP0944257A1 (en) * | 1998-03-06 | 1999-09-22 | CANAL+ Société Anonyme | Multimedia terminal adapted for multiple users |
EP1067806A1 (en) * | 1999-07-09 | 2001-01-10 | CANAL+ Société Anonyme | Apparatus for and method of testing applications |
FR2809914B1 (en) * | 2000-06-06 | 2003-01-24 | Sagem | TELEVISION DECODER WITH ASSISTANCE |
EP1175058A1 (en) * | 2000-07-21 | 2002-01-23 | Alcatel | Processor system, and terminal, and network-unit, and method |
US11204729B2 (en) | 2000-11-01 | 2021-12-21 | Flexiworld Technologies, Inc. | Internet based digital content services for pervasively providing protected digital content to smart devices based on having subscribed to the digital content service |
US11467856B2 (en) | 2002-12-12 | 2022-10-11 | Flexiworld Technologies, Inc. | Portable USB device for internet access service |
WO2002042896A1 (en) | 2000-11-20 | 2002-05-30 | Flexiworld Technologies, Inc. | tOBILE AND PERVASIVE OUTPUT COMPONENTS |
US20020097416A1 (en) | 2001-01-19 | 2002-07-25 | Chang William Ho | Output controller processor for universal data output |
EP1304871A3 (en) * | 2001-08-21 | 2003-06-18 | Canal+ Technologies Société Anonyme | Method and apparatus for a receiver/decoder |
US7908401B2 (en) | 2002-12-12 | 2011-03-15 | Flexiworld Technology, Inc. | Method and device for wireless communication between computing devices |
ATE372026T1 (en) * | 2003-03-04 | 2007-09-15 | Gamelogic Inc | CONDITIONAL ACCESS METHOD AND APPARATUS |
CN107832241B (en) | 2003-04-11 | 2021-10-08 | 富意科技公司 | Integrated circuit storage device or method capable of realizing automatic operation |
FR2882452B1 (en) * | 2005-02-18 | 2007-06-15 | Tv Card Soc Par Actions Simpli | DATA CARRIER AND SOFTWARE APPLICATION DEVELOPMENT ASSISTANCE METHOD FOR DIGITAL SIGNAL DIGITAL DECODER CHIP CARD |
US20060193337A1 (en) * | 2005-02-25 | 2006-08-31 | Toni Paila | Device management broadcast operation |
CN100420202C (en) * | 2005-10-20 | 2008-09-17 | 联想(北京)有限公司 | Computer management system and computer management method |
CN100454964C (en) * | 2006-02-28 | 2009-01-21 | 中国科学院声学研究所 | A method for loading a network interface module of a digital TV set-top box |
CN102510531A (en) * | 2011-10-20 | 2012-06-20 | 山东泰信电子有限公司 | Method for automatically identifying tuner and demodulator of digital television STB (Set Top Box) |
-
1997
- 1997-04-25 EP EP97921756A patent/EP0968611A1/en not_active Ceased
- 1997-04-25 IL IL13194797A patent/IL131947A0/en unknown
- 1997-04-25 ZA ZA9703613A patent/ZA973613B/en unknown
- 1997-04-25 CA CA002284011A patent/CA2284011A1/en not_active Abandoned
- 1997-04-25 BR BR9714598-0A patent/BR9714598A/en not_active IP Right Cessation
- 1997-04-25 WO PCT/EP1997/002116 patent/WO1998043433A1/en not_active Application Discontinuation
- 1997-04-25 NZ NZ500206A patent/NZ500206A/en unknown
- 1997-04-25 PL PL97335775A patent/PL183663B1/en unknown
- 1997-04-25 JP JP54476998A patent/JP2001518262A/en not_active Ceased
- 1997-04-25 CN CN97182174A patent/CN1254478A/en active Pending
- 1997-04-25 AU AU27709/97A patent/AU740740B2/en not_active Ceased
- 1997-04-25 TR TR1999/02271T patent/TR199902271T2/en unknown
-
1999
- 1999-09-17 NO NO994540A patent/NO994540L/en not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
EP0968611A1 (en) | 2000-01-05 |
PL335775A1 (en) | 2000-05-22 |
CA2284011A1 (en) | 1998-10-01 |
TR199902271T2 (en) | 1999-12-21 |
NZ500206A (en) | 2002-08-28 |
WO1998043433A1 (en) | 1998-10-01 |
IL131947A0 (en) | 2001-03-19 |
AU2770997A (en) | 1998-10-20 |
NO994540L (en) | 1999-11-22 |
CN1254478A (en) | 2000-05-24 |
JP2001518262A (en) | 2001-10-09 |
AU740740B2 (en) | 2001-11-15 |
NO994540D0 (en) | 1999-09-17 |
BR9714598A (en) | 2002-08-06 |
ZA973613B (en) | 1998-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
PL183663B1 (en) | Data processing system | |
RU2195083C2 (en) | Broadcasting and reception of tv programs and other data | |
RU2181929C2 (en) | Extraction of data sections from translated data flow | |
EP1194847A2 (en) | Running and testing applications | |
US6360195B1 (en) | Television or radio control system development | |
AU742956B2 (en) | Television or radio control system development | |
AU742213B2 (en) | Access control system | |
EP0908821A1 (en) | Digital code interpreter | |
CZ200287A3 (en) | Device and method for testing software applications | |
KR20000076406A (en) | Data processing system | |
CZ331799A3 (en) | Access control system | |
CZ331899A3 (en) | Data processing system | |
MXPA99008545A (en) | Access control system | |
MXPA99008543A (en) | Data processing system | |
CZ331599A3 (en) | Development and testing process of supervisory program | |
MXPA99008547A (en) | Television or radio control system development | |
MXPA00000776A (en) | Ieee set top box device driver | |
CZ20003997A3 (en) | Method of processing video data and receiver/decoder | |
MXPA99008546A (en) | Extracting data sections from a transmitted data stream | |
CZ331499A3 (en) | Arrangement of computer memory | |
MXPA00007900A (en) | Processing of digital picture data in a decoder |