CZ200287A3 - Zařízení a způsob pro testování softwarových aplikací - Google Patents

Zařízení a způsob pro testování softwarových aplikací Download PDF

Info

Publication number
CZ200287A3
CZ200287A3 CZ200287A CZ200287A CZ200287A3 CZ 200287 A3 CZ200287 A3 CZ 200287A3 CZ 200287 A CZ200287 A CZ 200287A CZ 200287 A CZ200287 A CZ 200287A CZ 200287 A3 CZ200287 A3 CZ 200287A3
Authority
CZ
Czechia
Prior art keywords
application
decoder
receiver
simulated
testing
Prior art date
Application number
CZ200287A
Other languages
English (en)
Inventor
Hongtao Liao
Bruno Masson
Jean-Bernard Gerard Maurice Beuque
Original Assignee
Canal+ Societe Anonyme
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canal+ Societe Anonyme filed Critical Canal+ Societe Anonyme
Publication of CZ200287A3 publication Critical patent/CZ200287A3/cs

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/04Diagnosis, testing or measuring for television systems or their details for receivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Description

Zařízení a způsob pro testování softwarových aplikací
Oblast techniky
Předkládaný vynález se týká zařízení a způsobu pro testování aplikací. Vynález má’obzvláštní využití v realizačních nástrojích pro použití při vytváření, vývoji a testování aplikací pro interaktivní televizní systémy.
Dosavadní stav techniky
Digitální televizní systémy přenášejí televizní kanály k divákovi spíše v digitální než analogové podobě. Digitální' kanály jsou kódovány do digitálního datového toku na vysílací straně a jsou dekódovány na přijímací straně s použitím digitálního dekodéru, který může být bud’ v digitální nastavovací skříni (set-top box - DSTB) nebo v integrované digitální televizi. Pro umožnění interaktivity může být vytvořena vzestupná linka, bud' přes stejné prostředí, které dodává televizní kanály, nebo přes odlišné prostředí, jako je telefonní linka. Zde používaný termín digitální televizní systém zahrnuje, například, jakýkoliv satelitní, pozemní, kabelový nebo jiný systém.
Digitální dekodéry obvykle obsahují procesor, na kterém mohou být spouštěny programy, známé jako aplikace. Příklady takovýchto aplikací zahrnují programové průvodce, teleshopping, kvízy, domácí bankovnictví a televizní hlasování. Takové aplikace obvykle zobrazují nabídku (menu) na televizní obrazovce, ze které uživatel může zvolit určitou možnost. Výsledek volby může být přenášen přes vzestupnou linku pro umožnění provedení odpovídající akce.
• · φφφφ φφ ···· « φ φ · · · • ··· φ « * • «φφφ φφφφ φ • φ φφφφ φφφ φφφ φφφ φφ ·φ φ· φφφφ
Aplikace mohou interagovat s různými částmi hardwaru, jako jsou zařízeni pro čtení inteligentních karet, grafické karty, obvody infračerveného dálkového ovládání, klávesnice, vstupně/výstupní porty nebo modemy, a mohou rovněž přijímat data z prostředí, ve kterém jsou přenášeny televizní signály. Aby se zajistilo propojovací rozhraní mezi aplikacemi a hardwarem, jsou vytvářeny softwarové moduly, známé jako zařízení. Taková (logická) zařízení sestávají z logických zdrojů, potřebných pro správu vnějších událostí, a z ' 10 fyzických rozhraní. V kontextu s-- předkládaným vynálezem je v této souvislosti výraz,/'zařízení použit pro označení takovéhoto softwarového modulu.
S rychle rostoucím množstvím služeb, které začínají být poskytovány uživatelům, vzniká potřeba realizačních 15 nástrojů pro vývoj aplikací, které mohou umožnit konstruování, vytváření, ladění a testování aplikací.
Známé nástroje pro vývoj aplikací obvykle umožňují, aby aplikace byly vyvíjeny na pracovní stanici, jako je pracovní stanice Windows NT nebo UNIX (tedy pracující s operačním systémem Windows NT nebo UNIX). Když je aplikace připravena pro testování, je stažena celá do digitálního dekodéru, jako je DSTB. Potom může být testován výkon aplikace s digitálním dekodérem. Tato testovací procedura může být těžkopádná.
Podstata vynálezu
Podle předkládaného vynálezu je vytvořeno zařízení pro testování aplikací pro přijímač/dekodér, které zahrnuje prostředek pro simulaci funkce přijímače/dekodéru.
·♦ »·»♦ • · • »·» φφ ·»·· ·· Φ· * · · · · · · • φ * · φ · φ · · · φ φ · φ φ φ • φ φ φ · φ φ · φ φφφ ··♦ φφ » «· φφφφ
Vynález tak poskytuje tu výhodu, že přijímač/dekodér a přidružený hardware nemusejí být k dispozici pro testování aplikace. Vynález rovněž poskytuje tu výhodu, že pracovník, který aplikaci vyvíjí (vývojář aplikace), může sledovat výsledky jakýchkoliv změn v aplikaci bez nutnosti stahování aplikace do přijímače/dekodéru.
Termín přijímač/dekodér, používaný v tomto popisu může v sobě zahrnovat přijímač pro příjem buď kódovaných nebo nekódovaných signálů, například televizních a/nebo rádiových signálů, které mohou'být'přenášeny nebo vysílány nějakým dalším prostředkem: Tento termín v sobě může rovněž zahrnovat dekodér pro dekódování přijímaných signálů. Provedení takovýchto přijímačů/dekodérů mohou zahrnovat dekodér integrální s přijímačem pro dekódování přijímaných signálů, například, v nastavovací řídící skříni (set top box), jako je dekodér pracující v kombinaci s fyzicky odděleným přijímačem, nebo jako je dekodér zahrnující v sobě přídavné funkce, jako je webovský prohlížeč, videorekordér nebo televize. :
Prostředkem pro simulaci funkce přijímače/dekodéru může být, například, procesor, který je naprogramován pro simulaci funkce přijímače/dekodéru.
Zařízení může být upraveno pro spuštění aplikace, což může vývojáři aplikace umožnit, aby sledovat jak by aplikace pracovala, pokud by byla spuštěna na reálném přijímači/dekodéru. Výhodně je zařízení upraveno pro spuštění aplikace v prvním procesu a pro simulaci funkce přijímače/dekodéru v druhém procesu. To může umožnit aby v druhém procesu byly simulovány asynchronní událostí, nastávající v reálném přijímači/dekodéru, zatímco aplikace je ·· ···« ·· ««* W «·· · · * ·«·· «··« φ · · · · · • φ · φ φ · · · · · « ·»«····· ···· ··· ·♦ ·· ·· «φ·φ spuštěna v prvním procesu. První a druhý proces mohou být vzájemně na sobě nezávislé a mohou být spuštěny na stejném procesoru. Zařízení může přídavně zahrnovat rozdělenou paměť pro umožnění předávání dat mezi prvním procesem a druhým procesem.
Zařízení může být upraveno pro spuštění aplikace v první datové cestě a pro simulaci funkce přijímače/dekodéru v druhé datové cestě. První a druhá datová cesta mohou tvořit části jednoho procesu.
. . . Zařízení může dále zahrnovat rozdělenou paměť pro umožnění předávání dat mezi první a druhou datovou cestou.
Funkce přijímače/dekodéru může být alespoň částečně simulována v softwaru, takže hardware v přijímači/dekodéru, který zajišťuje tuto funkci, nemusí být použit. Pokud ale zařízení má dostupný hardware, který odpovídá hardwaru na přijímači/dekodéru, může být tento hardware použit pro simulaci funkce příjímače/dekodéru a tudíž funkce příjímače/dekodéru může být také simulována s využitím
2o hardwaru, který odpovídá hardwaru v přijímači/dekodéru.
Zařízení může zahrnovat paměťový prostředek (jako je paměť, například, počítačová paměť nebo počítačem čitelné médium, jako je pevný disk) pro uložení souboru obsahujícího data, která reprezentují data produkovaná částí hardwaru v přijímači/dekodéru. To může umožnit, aby byla simulována funkce této části hardwaru. Zařízení může být rovněž upraveno pro vytváření výstupu, pro zobrazení na obrazovce, který simuluje výstup přijímače/dekodéru. To může umožnit vývojáři aplikace, aby sledoval na obrazovce výstup aplikace, jak by vypadal, například, na televizní obrazovce. Zařízení můře být ·· ···» *« • « ♦ • »
dále upraveno pro příjem jako vstupu dat, reprezentujících data, která by byla přijímána přijímačem/dekodérem, například, z části hardwaru. Taková část hardwaru může být reprezentována v okně na obrazovce. Například v případě jednotky dálkového ovládání může být reprezentace jednotky dálkového ovládání zobrazena v okně na obrazovce a uživatel může interagovat s touto reprezentací jednotky dálkového ovládání, aby tak testoval aplikaci. Zařízení tedy může být upraveno pro vytváření výstupu pro zobrazení na obrazovce, který reprezentuje část hardwaru> se kterou může přijímač/dekodér interagovat.
Předkládaný vynález rovněž navrhuje zařízení pro editování a testování aplikace, které zahrnuje editor pro editování aplikace a zařízení pro testování aplikace podle výše uvedeného popisu. Mělo by být zcela zřejmé, že termín editor zahrnuje program nebo jiný nástroj pro konstruování, vytváření nebo měnění aplikací. Tímto způsobem může být na stejném zařízení, jako je pracovní stanice, vytvořen editor pro editování aplikace a simulátor pro simulaci chování
0 přijímače/dekodéru za účelem testování aplikace.
Editor může být upraven pro vytváření výstupu pro zobrazení na obrazovce, přičemž prostředek pro simulaci funkce přijímače/dekodéru je upraven pro vytváření výstupu pro zobrazení na stejné obrazovce. To může umožnit vývojáři 25 aplikace, aby sledoval výstup aplikace na stejné obrazovce, která je použita í pro editování aplikace. Procesor může zahrnovat procesor pro spouštění jak editoru tak i prostředku pro simulaci funkce přijímače/dekodéru. Prostředek pro simulaci funkce přijímače/dekodéru může být upraven pro 30 spuštění aplikace, která právě byla editována editorem.
ΦΦ ·*»♦ • · φ φφφφ • φ φ φφ φφφφ φ φ φ φφφ φ φ φ φ • Φ Φ 9 • Φ ΦΦ
ΦΦ ΦΦ •·>Φ Φ Φ Φ
Φ·Φ • Φ Φ
ΦΦ ΦΦΦΦ
Zařízení v kterékoliv z předcházejících podob může být takové, že funkcí přijímače/dekodéru je alespoň jedna funkce z přijímání a zpracování vstupních dat, například z dálkového ovládání, klávesnice nebo komunikačního zařízení, jako je modem, dekódování video dat, vytváření video výstupu, naladění na přenášený signál, komunikování s inteligentní kartou a výhodně funkce alespoň jednoho z následujících zařízení: REMOTE CONTROL, SERIÁL, PARALLEL, BUS 1394, MODEM, NETWORK STACK, CLOCK, KEYBOARD, POINTER, GRAPHIC, PICTURE, * 10 AUDIO, VIDEO, SERVICE, DISPLAY, -SCTV, SCVCR, SCAUX, POWER, BACKUP, MLOAD, TUNER a.,SMARTCARD.
Předkládaný vynález rovněž navrhuje pracovní stanicí, která zahrnuje editor pro editováni aplikací, simulátor pro simulaci funkce přijímače/dekodéru, a displej pro zobrazování výstupu editoru a výstupu simulátoru.
Simulátor pracovní stanice může být upraven pro spuštění aplikace, která právě byla editována editorem.
Výstup simulátoru může být zobrazován v okně na displeji. V okně na displeji může být simulováno vstupní zařízení pro vkládání dat do aplikace.
Ve způsobovém aspektu předkládaného vynálezu je navržen způsob testování aplikace pro přijímač/dekodér, který zahrnuje simulaci funkce přijímače/dekodéru.
Tento způsob může dále zahrnovat krok spuštění aplikace. Aplikace může být spuštěna v prvním procesu a funkce přijímače/dekodéru může být simulována v druhém procesu. První a druhý proces mohou být vzájemně na sobě nezávislé. První a druhý proces mohou být rovněž spouštěny na • Φ φ·φ· φ « φ φ·Φ φφ ··· φ * φ • β φ · φ φ φ φ φφ φφ ·· φφ • φ φ φ φ · φ φ · φ φφφ φφ Φ·Φ· stejném procesoru. Pro předávání dat mezi prvním procesem a druhým procesem může být použita rozdělená paměť.
V uvedeném způsobu může být funkce přijímače/dekodéru alespoň částečně simulována v softwaru. Funkce 5 přijímače/dekodéru může být simulována s použitím hardwaru, který odpovídá hardwaru v přijímači/dekodéru.
Výše popisovaný způsob může rovněž zahrnovat krok použití simulačního souboru pro reprezentování dat vytvářených částí hardwaru přijímače/dekodéru.
Výše popisovaný způsob může rovněž zahrnovat krok vytvoření výstupu pro zobrazení na obrazovce, který simuluje výstup přijímače/dekodéru.
Výše popisovaný způsob může rovněž zahrnovat krok 15 příjmu jako vstupu dat, reprezentujících data, která by byla přijata přijímačem/dekodérem.
Ve způsobovém aspektu předkládaného vynálezu může být navržen způsob editování a testování aplikací, který zahrnuje editování aplikací a dále zahrnuje kterýkoliv z výše popisovaných způsobů testování aplikací.
Způsob editování může vytvářet výstup pro zobrazení na obrazovce a způsob testování může vytvářet výstup pro zobrazení na stejné obrazovce. Způsob editování a způsob testování mohou být spuštěny na stejném procesoru. Způsob testování může testovat aplikaci, která právě byla editována způsobem editování.
Předkládaný vynález rovněž navrhuje počítačem čitelné médium, které má v sobě uložen program pro provádění kteréhokoliv ze shora popisovaných způsobů, a počítačový ·· ·· ·* ···· Φ 9 9
9 99 9 9
9
9 9
9 9
9 9 9
9 9 9
99 ·· ·· • · Φ φ · Φ • · Φ • · Φ •Φ ΦΦΦΦ programový produkt, který zahrnuje program pro provádění kteréhokoliv ze shora popisovaných způsobů.
Předkládaný vynález rovněž navrhuje způsob a zařízení v podstatě podle zde uvedeného popisu ve spojení s odkazy na připojené výkresy a podle znázornění na připojených výkresech.
Znaky jednoho aspektu mohou být aplikovány na jiné aspekty a podobně způsobové znaky mohou být aplikovány na
- znaky zařízení a obráceně.
'
V.následujícím..popisu budou čistě prostřednictvím příkladu podrobněji popsány výhodné znaky předkládaného vynálezu ve spojení s odkazy na připojené výkresy.
Přehled obrázků na výkresech 15
Obr.1 znázorňuje architekturu typického digitálního televizního systému;
Obr.2 znázorňuje architekturu interaktivního systému digitálního televizního systému podle obr. 1;
Obr.3 znázorňuje schematickou ilustraci struktury přijímače/dekodéru podle obr. 1;
Obr.4 znázorňuje funkční blokové schéma vrstvové architektury přijímače/dekodéru;
Obr.5 znázorňuje pracovní stanici pro spouštění realizačního nástroje pro vývoj aplikací;
Obr.6 znázorňuje hlavní prvky realizačního nástroje pro vývoj aplikací;
ΦΦ φφφ· • φ φ
ΦΦΦ· φ φ φ φ ·· φφφ* φφ ♦ · «φ • φφφφ • · · φ • ΦΦΦ φ • φφφ φφ φφ φφφφ
Obr.7 znázorňuje hlavni moduly simulátoru podle jednoho provedení předkládaného vynálezu;
Obr. 8 a obr. 9 znázorňují schematické reprezentace činnosti simulátoru;
Obr.10 znázorňuje reprezentaci druhého příkladu činnosti simulátoru;
Obr.11 znázorňuje příklad toho, jak je pro výstup na přijímači/dekodéru vytvářen obraz; a
Obr,12 a obr'. 13' znázorňují příklady aplikací spuštěných na simulovaném přijímači/dekodéru.
Příklady provedení vynálezu
Celkový přehled digitálního televizního systému 1. je 15 znázorněn na obr. 1. Předkládaný vynález zahrnuje většinou běžný digitální televizní systém 2r který využívá známý MPEG-2 kompresní systém pro vysílání komprimovaných digitálních signálů. Přesněji MPEG-2 komprimátor 2 ve vysílacím centru přijímá tók digitálního signálu (obvykle tok video signálů) . Komprimátor 3. je spojen s multiplexorem a kodérem 1 prostřednictvím spojení 5.
Multiplexor 4, přijímá množství dalších vstupních signálů, sestavuje transportní tok a vysílá komprimované digitální signály do vysílače 6 vysílacího centra přes p c spojení 2/ které samozřejmě může být představováno velkým množstvím různých forem včetně telekomunikačních linek. Vysílač 2 vysílá elektromagnetické signály přes vzestupné spojení 8. směrem k satelitnímu odpovídací 9., kde jsou tyto signály elektronicky zpracovány a vysílány přes teoretické sestupné spojení 10 do pozemního přijímače 12, běžně ve formě φφ φ · φ φ « φ φ φ φ • Φ ·' φ
φ φφ ··»· • φ · * φφφ • · · φφ φφφφ φ φ φ φφφ φ φ φ · • · φ φ • Φ *· φφ φ
parabolické antény vlastněné nebo pronajímané koncovým uživatelem. Jiné transportní kanály pro vysílání dat jsou samozřejmě možné, jako je pozemní přenos, kabelové vysílání, kombinované satelitní/kabelové spojení, telefonní sítě a podobně.
Signály přijímané přijímačem 12 jsou vysílány do integrovaného přij ímače/dekodéru 13 vlastněného nebo pronajímaného koncovým uživatelem a spojeného s televizním zařízením 14 koncového uživatele. Přijímač/dekodér 13
IQ dekóduje komprimovaný MPĚG-2 signál na televizní signál pro televizní zařízení 14. 'Ačkoliv je na obr. 1 znázorněn samostatný přij ímač/dekodér, může být tento přij ímač/dekodér rovněž součástí integrované digitální televize. Ve zde používaném smyslu termín přijímač/dekodér v sobě zahrnuje samostatný přijímač/dekodér, jako je nastavovací řídicí skříň (set-top box), a televizi mající v sobě integrovaný přij ímač/dekodér.
Ve vícekanálovém systému multiplexor 4. zpracovává audío a video informace přijímané z množství paralelních zdrojů a interaguje s vysílačem 6 pro přenos informace po odpovídajícím počtu kanálů. Vedle audiovizuální informace, mohou být zprávy nebo aplikace nebo jakýkoliv jiný druh digitálních dat zaváděny do některých nebo do všech těchto kanálů, proloženě s vysílanou digitální audío a video informací.
Systém 15 podmíněného přístupu je spojen s multiplexorem 4. a přij ímačem/dekodérem 13 a je umístěn částečně ve vysílacím centru a částečně v dekodéru. Tento systém umožňuje koncovému uživateli přístup k digitálním televizním vysíláním (přenosům) od jednoho nebo více
0000 * 0 0 • 000 • 0
0000
V · • · 0
0 • · ·
0000 ♦ · • 0 ·
0 0 0 0 0 « • 0 · * • 0 «0 dodavatelů (poskytovatelů) vysílání. Inteligentní karta, schopná dekódování zpráv týkajících se komerčních nabídek (to jest jeden nebo několik televizních programů, které jsou prodávány dodavatelem vysílání), může být vložena do přijímače/dekodéru 13. S použitím dekodéru 13 a inteligentní karty může koncový uživatel nakupovat komerčně nabízené vysílané události buď v módu předplacení nebo v módu p-latby za shlédnutí.
Jak bylo zmiňováno výše, programy vysílané systémem jsou kódovány v multiplexoru 4., přičemž podmínky a kódovací klíče, aplikované na daný přenos, jsou určovány systémem 15 podmíněného přístupu. Vysílání kódovaných dat tímto způsobem je velmi dobře známé v oblasti placených TV systémů. Obvykle jsou kódovaná data vysílána společně s řídícím slovem pro dekódování těchto dat, přičemž řídící slovo je samo kódováno prostřednictvím tak zvaného exploatačního klíče a vysíláno v kódované formě.
Kódovaná (šifrovaná) data a kódované (šifrované) řídící slovo jsou potom přijímána dekodérem 131, který má přístup k ekvivalentu exploatačního klíče, který je uložen na inteligentní kartě vložené do dekodéru, pro dekódování kódovaného řídícího slova a potom pro dekódování vysílaných dat. Předplacený účastník bude přijímat, například, v přenášené měsíční EMM (opravňovací ovládací zpráva) exploatační klíč potřebný pro dekódování kódovaného řídícího slova a tak pro umožnění sledování vysílání.
Interaktivní systém 16. rovněž spojený s multiplexorem 4. a přijímačem/dekodérem 13 a opět umístěný částečně ve vysílacím centru a částečně v dekodéru, umožňuje koncovému uživateli interagovat s různými aplikacemi přes tt· tt»*tt • tttt • ··» •
• « »99» tttt · • tttt • · · · tttt « •tt tttt tt tttt tttt « tt · tt • tttt • tt tttt·· modemový zpětný kanál 17. Modemový zpětný kanál 17 může být rovněž využit pro komunikace použité v systému 15 podmíněného přístupu. Interaktivní systém 16 může být použit, například, pro umožnění divákovi komunikovat bezprostředně s vysílacím centrem pro požadavek o autorizaci sledování určité události, stažení aplikace a podobně.
Obr, 2 znázorňuje obecnou architekturu interaktivního televizního systému 16 v digitálním televizním systému 1 podle předkládaného vynálezu.
* 10 , . . Například tento interaktivní systém 16 umožňuje koncovému uživateli nakupovat položky z katalogů, umístěných na obrazovce, konzultovat místní zprávy a meteorologické mapy na vyžádání a hrát hry prostřednictvím svého televizního zařízení.
Interaktivní systém 16 zahrnuje v přehledu čtyři hlavní prvky • realizační nástroj 4004 ve vysílacím centru, nebo kdekoliv jinde, pro umožnění dodavateli vysílání vytvářet, vyvíjet, ladit a testovat aplikace;
• aplikační a datový server (obslužný kanál) 4006 ve vysílacím centru, spojený s realizačním nástrojem 4004 pro umožnění dodavateli vysílání připravovat, ověřovat (potvrzovat) a formátovat aplikace a data pro předání do multiplexoru a kodéru 4. pro vložení do MPEG-2 transportního toku (obvykle do jeho privátního úseku), který má být přenesen ke koncovému uživateli;
• virtuální počítač obsahující prováděcí prostředek 4008 , který je v proveditelném kódu instalován v přijímači/dekodéru 13, vlastněném nebo pronajatém φ· • r »·<* t · « » φ · • · ·# Φ · O « · φ φ · · φ φ « · φ φ β ίο · ·βΦ·ΦΦΦ·
-L 'J ΦΦΦΦ ··♦ ·φ φφ »· ·Φ«· koncovým uživatelem, pro umožnění koncovému uživateli přijímat, ověřovat, dekomprimovat a stahovat (zavádět) aplikace do pracovní paměti dekodéru 13 pro provedení. Prováděcí prostředek 4008 rovněž spouští rezidentní aplikace obecného účelu. Prováděcí prostředek 4008 je nezávislý na hardwaru a operačním systému; a • modemový zpětný kanál 17 mezi přijímačem/dekodérem 13 a aplikačním a datovým serverem 4006 pro umožnění přenosu signálů instruujících server 4006, aby vložil data a aplikace do MPEG-2'transportního toku na žádost koncového uživatele.
Interaktivní televizní systém pracuje s využitím aplikací, které řídí funkce přijímače/dekodéru a různých 13 zařízení v něm obsažených. Aplikace jsou reprezentovány v prováděcím prostředku 4008 jako zdrojové soubory. Modul je sada zdrojových souborů a dat. Paměťové médium přijímače/dekodéru je paměťový prostor pro moduly. Moduly mohou být stahovány do přijímače/dekodéru 13 z MPEG-2 transportního toku.
Ve spojení s odkazy na obr. 3 budou nyní popsány prvky příjímače/dekodéru 13, nebo nastavovací řídící skříně (set-top box). Prvky znázorněné na tomto obrázku budou popsány ve spojení s funkčními bloky.
Dekodér 13 zahrnuje centrální procesor 20 obsahující přidružené paměťové prvky a upravený pro příjem vstupních dat ze sériového rozhraní 21, paralelního rozhraní 22., modemu 2.3 (spojeného s modemovým zpětným kanálem 17 podle obr. 1), a přepínacích kontaktů 24 na předním panelu dekodéru.
φ« »·»» · * • φφφ * φ • φ • ΦΦΦ φ·· • » · φ * · • φ φ φ φ φ φ · φφ φφ φφφ φ • φ φ • · φ φφφ φ* φφφφ
Přijímač/dekodér je navíc upraven pro příjem vstupů z infra-červeného dálkového ovladače 25 přes řídící jednotku 26 a rovněž má dvě zařízení 27, 28 pro čtení inteligentních karet, která jsou upravena pro čtení bankovních respektive účastnických inteligentních karet 22, 30. Zařízení 28 pro čtení účastnické inteligentní karty zabírá s vloženou účastnickou inteligentní kartou 30 a s jednotkou 29 podmíněného přístupu pro přivedení potřebného řídícího slova do demultiplexoru/dekodéru 30 pro umožnění dekódování kódovaných přenášených signálů. 'Dekodér rovněž obsahuje běžný ladič (tuner) 31 a'demodulátor 32 pro příjem a demodulaci satelitního vysílání před filtrováním a demultíplexováním prostřednictvím jednotky demultiplexoru/dekodéru 30.
Zpracování dat uvnitř přijímače/dekodéru je obecně realizováno prostřednictvím centrálního procesoru 20. Obr. 4 ilustruje softwarovou architekturu tohoto centrálního procesoru 20 přijímače/dekodéru. Jak je patrné na obr. 4, tato softwarová architektura zahrnuje prováděcí prostředek 4008, správce 4068 (logických) zařízení a množství
0 (logických) zařízení 4062 a ovladačů 4066 zařízení pro spouštění jedné nebo více aplikací 4056.
Pro účely tohoto popisu je aplikace výhodně úsek strojového kódu pro řízení vysokoúrovňových funkcí výhodně přij ímače/dekodéru 13. Například, když koncový uživatel
5 namíří ohnisko dálkového ovladače 25 na tlačítkový objekt viděný na obrazovce televizního zařízení 14 a stlačí potvrzovací klávesu, spustí se sekvence instrukcí, sdružená s tímto tlačítkem.
Interaktivní aplikace nabízí menu a vykonává příkazy na žádost koncového uživatele a poskytuje data týkající se • « • ♦ ftft •·♦ft ft « · •ft ···· účelu této aplikace. Aplikace mohou být buď rezidentními aplikacemi, to znamená, že jsou uloženy v ROM (nebo FLASH nebo jiné energeticky nezávislé paměti) přijímače/dekodéru 13, nebo mohou být vysílány a stahovány do RAM nebo FLASH paměti tohoto přijímače/dekodéru 13.
Aplikace jsou uloženy v paměťových místech přijímače/dekodéru 13 a jsou reprezentovány jako zdrojové soubory. Zdrojové soubory mohou například zahrnovat soubory jednotky popisu grafických objektů, soubory jednotky proměnných bloků, soubory instrukčních sekvencí, aplikační soubory a datové soubory, jak je podrobněji popsáno ve shora zmiňovaných patentových přihláškách.
Přijímač/dekodér obsahuje paměť rozdělenou na RAM médium, FLASH médium a ROM médium, ale tato fyzická organizace je odlišná od logické organizace. Paměť může být dále rozdělena na paměťová média nebo objemy sdružené s různými rozhraními. Z jednoho úhlu pohledu může být paměť považována za součást hardwaru; z jiného úhlu pohledu lze paměť považovat za podporující nebo obsahující celý znázorněný systém, až na hardware.
Centrální procesor 20 lze považovat za soustředěný na prováděcím prostředku 4008 tvořícím část virtuálního počítače 4007. Ten je spojen s aplikacemi na jedné straně (vysokoúrovňová strana) a na druhé straně (nízkoúrovňová strana) přes různé mezilehlé logické jednotky, diskutované níže, s hardwarem 4061 příjímaČe/dekodéru. Hardware 4061 přijímače/dekodéru zahrnuje různé porty nebo rozhraní, jak bylo diskutováno výše (to jest například sériové rozhraní 21, paralelní rozhraní 22., modem 23 a řídící jednotka 26) .
·* ····
Jak je patrné zejména z obr. 4, jsou s virtuálním počítačem 4007 spojené různé aplikace 4056, přičemž některé z běžněji používaných aplikací mohou být více či méně trvale rezidentní v systému, jak je naznačeno prostřednictvím aplikace 4057, zatímco jiné budou stahovány do systému, například z MPEG datového toku nebo z jiných portů podle požadavků.
Virtuální počítač 4007 zahrnuje, kromě prováděcího prostředku 4008, určitou funkci rezidentní knihovny 4006. která obsahuje blok 4058 nástrojů. Knihovna 4006 obsahuje nejrůznější funkce v jazyku C, používané prováděcím prostředkem 4008 Tyto funkce zahrnují manipulaci s daty, jako je komprimování, dekomprimování nebo porovnávání datových struktur, kreslení čar a podobně. Knihovna 4006 rovněž zahrnuje informaci o míkroprogramovém vybavení v příjímači/dekodéru 13, jako jsou čísla verzí hardwaru a softwaru a dostupný prostor RAM, a funkce použité při stahování nového (logického) zařízení 4062. Funkce mohou být stahovány do knihovny, která je uložena ve FLASH nebo RAM paměti.
Prováděcí prostředek 4008 je spojen se správcem 4068 (logických) zařízení, který je spojen se sadou (logických) zařízení 4062, která jsou spojena s ovladači 4060 (logických) zařízení, které jsou dále spojeny s porty nebo rozhraními. V širším smyslu může být ovladač (řídící program) zařízení považován za prostředek, který definuje logické rozhraní, takže dva různé ovladače zařízení mohou být spojeny se společným fyzickým portem. Zařízení bude obvykle spojeno s více než jen jedním ovladačem zařízení; pokud je zařízení spojeno s jedním řídícím programem (ovladačem) zařízení, bude φ φ φ φ · toto zařízení obvykle konstruováno k tomu, aby bylo plně funkční pro komunikaci, takže potřeba samostatného ovladače zařízení je odstraněna. Určitá zařízení mohou komunikovat sama vzájemně mezi sebou.
Jak bude popsáno níže, existují 3 formy komunikace od zařízení 4064 k prováděcímu prostředku: prostřednictvím proměnných, vyrovnávacích pamětí, a událostí, které jsou předávána do sady front události
Každá funkce přijímače/dekodéru 13 je reprezentována jako (logické) zařízení 4Q62 v softwarové architektuře příjímače/dekodéru 12- Zařízení mohou být buď lokální nebo vzdálená. Lokální zařízení 4064 zahrnují inteligentní karty, propojovací signály SCART, modemy, sériová a paralelní rozhraní, přehrávač MPEG video a audio signálů a prostředek pro vyjímání MPEG úseků a tabulek. Vzdálená zařízení 4066, vykonávaná na vzdáleném místě, se liší od lokálních zařízení tím, že port a procedura musí být definovány správcem nebo konstruktérem systému, spíše než aby byly definovány zařízením a ovladačem zařízení a zkonstruovány výrobcem přij ímače/dekodéru.
Prováděcí prostředek 4008 pracuje pod řízením mikroprocesorem a společným aplikačním programovacím rozhraním. Tyto prvky jsou nainstalovány v každém přij ímači/dekodéru 13, takže z pohledu aplikací jsou všechny přijímače/dekodéry 13 naprosto stejné.
Prováděcí prostředek 4008 spouští aplikace 4056 na přijímači/dekodéru 13. Prováděcí prostředek 4008 rovněž vykonává interaktivní aplikace 4056 a přijímá události z vnějšku přijímače/dekodéru 13., zobrazuje grafiku a texty, • 4 ·
4 4 4 4 4 •4 44 4444
4 4 ·« volá zařízení pro poskytování služeb a pro specifické výpočty využívá funkce knihovny 4006, která je s prováděcím prostředkem 4008 spojena.
Prováděcí prostředek 4008 je proveditelný kód instalovaný v každém přijimači/dekodéru 13 a zahrnuje interpreter pro interpretaci a spouštění aplikací. Prováděcí prostředek 4008 je adaptabilní pro jakýkoliv operační systém, včetně operačního systému pracujícího vždy s jednou úlohou (jako je MS-DOS). Prováděcí prostředek 4008 pracuje na bázi jednotek řadiče zpracování (které přebírají různé události,
- - ” * jako je stlačení klávesy, pro provedení různých akcí) a obsahuje svůj vlastní rozvrhující program pro řízení front událostí z různých hardwarových rozhraní. Prováděcí prostředek 4QQ8 rovněž zpracovává zobrazování grafiky a 15 textu. Jednotka řadiče zpracování zahrnuje sadu akcí-skupin. Každá událost způsobuje, že se jednotka řadiče zpracování přesune z její současné akce-skupiny do jiné akce-skupiny v závislosti na charakteru události a vykoná akce této nové akce-skupiny.
Prováděcí prostředek 4008 zahrnuje zaváděcí program kódu pro zavádění a stahování aplikací 4056 do paměti přijímače/dekodéru. Pouze potřebný úsek kódu je stahován do
RAM média nebo FLASH média, aby se zajistilo optimální využití. Stažená data jsou ověřena prostřednictvím ověřovacího mechanismu pro zabránění jakékoliv modifikace aplikace 4056 nebo vykonání jakékoliv neautorizované aplikace. Prováděcí prostředek 4008 dále zahrnuje dekomprimátor. Protože aplikační kód (určitá forma přechodného kódu) je komprimován z důvodů úspor prostoru a 30 kvůli rychlejšímu stahování z MPEG-2 přenosového toku nebo přes vestavěný režim přijímače/dekodéru, musí být kód dekomprimován před zavedením do RAM. Prováděcí prostředek 4008 rovněž zahrnuje interpreter pro interpretaci aplikačního kódu pro aktualizaci různých proměnných hodnot a určováni změn stavů, a prostředek pro ověřování chyb.
Před využitím služeb jakéhokoliv zařízení 4062 musí být program (jako je instrukční sekvence pro aplikaci) deklarován jako klient, to jest logická přístupová cesta k zařízení 4062 nebo správci 4068 zařízení. Správce (řídící program) zařízení poskytuje klientovi klientské číslo, které je uváděno při všech přístupech k zařízení. Zařízení 4062 může mít několik klientů, přičemž počet klientů pro každé zařízení 4062 je specifikován v závislosti na typu zařízení 4062. Klient je zaveden do zařízení 4062 prostřednictvím procedury Device: Open Channel”. Tato procedura přiděluje klientovi klientské číslo. Klient může být vyjmut ze seznamu klientů řídícího programu 4068 prostřednictvím procedury Device: Close Channel.
Přístup k zařízením 4062, zajištěný prostřednictvím správce 4068 zařízení, může být buď synchronní nebo asynchronní. Pro synchronní přístup je použita procedura Device: Cali. To je prostředek pro přístup k datům, který je bezprostředně dostupný, nebo funkce, která s sebou nenese čekání na požadovanou odezvu. Pro asynchronní přístup je použita procedura Device: 1/0. To je prostředek přístupu k datům, který zahrnuje čekání na odezvu, například sledování frekvencí tuneru pro nalezení multiplexu nebo získání zpět tabulky z MPEG toku. Když je požadovaný výsledek dosažen, je událost vložena do fronty prováděcího prostředku pro signalizování jejího příchodu. Další procedura Device:
Φ 9 φ · · · *
Φ φ « • · 9
9 Φ
ΦΦΦ ·· 9ΦΦΦ
Event” zajišťuje prostředek pro správu neočekávaných událostí.
Hlavní smyčka prováděcího prostředku je spojena s různými jednotkami řadiče zpracování a, když hlavní smyčka zachytí příslušnou událost, je řízení dočasně převedeno na jednu z těchto jednotek řadiče zpracování.
Jak bylo zmiňováno výše je realizační nástroj 4004 vytvořen pro umožnění konstruování, vytváření, testování a odlaďování aplikací.,^ Realizační nástroj je spouštěn na pracovní stanici (WS), jako je osobní počítač (PC) pracující s operačním systémem Windows NT, Windows 95 nebo Windows 98, nebo počítač pracující s operačním systémem UNIX, nebo pracovní stanice pracující s jakýmkoliv jiným operačním systémem, a je použit pro vytváření a editování zdrojových souborů a datových souborů, které tvoří aplikaci. Jak je patrné z obr. 5, zahrnuje pracovní stanice 200, která je spojena s přijímačem/dekodérem 226 prostřednictvím linky 228. Pracovní stanice 200 zahrnuje obrazovku 210, počítač 212, klávesnici 214 a myš 216. Počítač 212 zahrnuje procesor 218, paměť 220, pevný disk 222, vstupně/výstupní (I/O) porty 224 a rovněž další součásti hardwaru a softwaru, které jsou běžné v podobných počítačích.
Přehled realizačního nástroje 4004. který je spouštěn na pracovní stanici 200, je znázorněn na obr. 6. Realizační nástroj 4004 zahrnuje editor 410 pro vytváření a editování různých souborů, které vytvářejí aplikaci, knihovnu 412, která uchovává existující soubory pro použití editorem 410, kompilátor 414 pro překlad souborů, které byly vytvořeny editorem 410, do přechodného jazyka, který může být proveditelný virtuálním počítačem, jako je virtuální počítač ·
• · · A ♦ · · v * * · ** AA ♦ · · * AAAA
4007 na obr. 4, a simulátor 100, který je použít pro simulaci chování přijímače/dekodéru za účelem testování a ladění aplikací, jak bude popsáno níže.
Aplikace zahrnuje zdrojové soubory, které obsahují instrukce, napsané v přechodném jazyku konstruovaném pro virtuální počítač, a případně datové soubory, které obsahují data, která mají být využita aplikací. Aplikace může zahrnovat jeden nebo více z následujících typů zdrojových souborů:
a modulové soubory - pro definování vstupních bodů aplikace n panelové soubory - pro definování obrazovek π soubory tříd - pro definování datových struktur, použitých aplikací a soubory skript - pro definování chování aplikace
Příklady datových souborů jsou následující: a knihovní soubory ikon - tyto soubory obsahují sbírku, například, bitových map se 4 bity na obrazový bod až do maximální velikosti 80 x 64 obrazových bodů. Tyto ikony mohou být použity panely (obrazovkami) jako tlačítka nebo jako dekorace.
π obrazy - tyto soubory obsahují jednu bitovou mapu jakékoliv velikosti se čtyřmi bity na obrazový bod, poskytující 16 barev. Tento typ obrazu je obvykle použít jako pozadí pro panel (obrazovku) .
a barevné tabulky - tyto soubory jsou použity pro definování barev, které modul může zobrazit na obrazovce.
« • · · tt · tt · · « 9 • · · » • · · tt · • tttt· • tt· ···· a uživatelské datové soubory - tyto soubory jsou definovány uživatelem pro použití aplikací. Tyto soubory jsou soubory ASCII textu nebo soubory binárních dat.
Při použití vývojář aplikace provádí využití existujících souborů, které jsou uloženy v knihovně 412, aby vytvořil soubory individualizované pro svoji aplikaci s využitím editoru 410. Soubory, které jsou právě editovány, jsou zobrazovány na obrazovce 210 pracovní stanice a změny jsou zadávány s použitím klávesnice 214 a myši 216 Soubory mohou být zobrazovány množstvím způsobů; například grafické soubory mohou být zobrazovány jako grafika na obrazovce, zatímco pro zdrojové soubory může být zobrazován kód v souborech nebo může být zobrazena reprezentace celkové struktury nebo architektury kódu.
Jakmile již aplikace byla vytvořena, je kompilátorem 414 konvertována do přechodného jazyka, který může být proveditelný virtuálním počítačem.
Za účelem testování aplikace je pracovní stanice vytvořena se simulátorem 1QQ, který simuluje chování přijímače/dekodéru, takže aplikace může být testována na pracovní stanici 200, aniž by byla stahována do reálného přijímače/dekodéru. To umožňuje, aby aplikace byla testována okamžitě, a vylučuje to potřebu použít přijímač/dekodér a přidružený hardware.
Jak je patrné na obr. 7, hlavními moduly simulátoru 100 jsou simulovaný virtuální počítač 101, simulovaný správce
102 zařízení, simulované moduly 1Q4, 106 WS zařízení, • * · φ * · φ •ΦΦΦ φφ φ φ • «φφφ φφφ • « φφφφφ • φ · «φφφ simulované moduly 108, 110 non-WS zařízení, simulovaná grafická knihovna 112, simulovaný trasovací port 114 (který je použit pro výstup trasovacích zpráv, které mohu být použity například pro ladění), simulovaný modul 116 dálkového ovládání (který modeluje jednotku dálkového ovládání na obrazovce pracovní stanice), simulované TV okno 118 (které modeluje televizi zobrazováním obrazů na obrazovce pracovní stanice), simulovaný trasovací prohlížeč 120 (který zobrazuje trasovací zprávy, rovněž na obrazovce pracovní stanice), WS zdroje 122 (které jsou částmi hardwaru příslušejícího pracovní -stanici, které lze rovněž nalézt v digitálním dekodéru), a simulační soubory 124, 126 (které obsahují data, která simulují chování hardwaru, který není na pracovní stanici). Aplikační skript 128 je aplikační kód (kód aplikace), který má být testován.
Simulovaný virtuální počítač 101 zavádí (stahuje) a spouští aplikační kód 128. Tento virtuální počítač 101 konvertuje instrukce aplikačního kódu, které jsou v přechodném jazyku, do strojových instrukcí, které mohou být realizovány prostřednictvím simulovaného správce 102 zařízeni a/nebo prostřednictvím WS (pracovní stanice).
Simulovaná správce 102 zařízení zajišťuje pro aplikaci 128 (aplikační kód) jednotný režim přístupu k různým periferiím. Tento správce 102 zařízení poskytuje pro aplikaci 25 prostředek pro vysílání a příjem dat synchronně a asynchronně do a z různých simulovaných periferií. Správce 102 zařízení je realizován ve formě knihovny, která je k dispozici virtuálnímu počítači 101. Správce 102 zařízení či tato knihovna sestává z modulu propojovacího rozhraní, modulu 30 řízení paměti, a systémového modulu, který umožňuje
0· ····
0· 00»· • » i· *
0*0 0 J *
00·· ··· · · 0 • 0 0 0 •0 000· (například mezi procesy) komunikaci pro vysílání příkazů a dat do zařízení a pro synchronní příjem dat vysílaných zařízeními.
Moduly 104 až 110 zařízení simulují chování zařízení v přijímači/dekodéru. V případě modulů 104, 106 WS zařízení hardware, který je spravován zařízením, existuje jak v reálném přijímači/dekodéru tak i v pracovní stanici 200. Příklady takovýchto zařízení jsou hodiny, sériový port, paralelní port, modem, a podobně. Protože hardware je přítomen na pracovní stanici, může být použít vlastní skutečný hardware pracovní stanice, spíše než aby bylo simulováno chování části hardwaru. Zařízení, která nemají přístup k jakémukoliv hardwaru rovněž spadají do této kategorie. Moduly 108, 110 non-WS zařízení simulují zařízení, která spravují části hardwaru, které neexistují na pracovní stanici. Příklady takových zařízení jsou tuner, demultiplexor, zařízení pro črení inteligentních karet, Flash paměť, a podobně, protože odpovídající hardware neexistuje na pracovní stanici, musí být’simulováno rovněž chování tohoto hardwaru. Způsob, kterým je simulace realizována, závisí na chování zařízení. Obecně je chování realizováno s využitím dat uložených ve specifických souborech, jako jsou simulační soubory 124, 126.
Specifické příklady simulátorů budou nyní popsány ve spojení s odkazy na pracovní stanici pracující s operačním systémem UNIX, ačkoliv je zcela zřejmé, že by mohlo být použito i jiných typů prostředí, jako jsou operační systémy Windows NT, Windows 95, Windows 98, Windows 2000, Solaris, Linux, BeOs, NextStep, a podobně.
* » · • Ml ·
Jak je znázorněno na obr. 8, zahrnuje simulovaný správce 102 zařízení modul 150 správce zařízení, který zajišťuje propojovací rozhraní se simulovaným virtuálním počítačem ve formě knihovny, modul 152 řízení paměti, který řídí dynamické paměťové zdroje, a modul 154 komunikace mezi procesy (IPC modul) pro přenos příkazů a dat k zařízením a synchronní příjem dat, emitovaných zařízením. Lokalizace paměťového prostoru, potřebného pro tyto výměny dat, je zajištěna prostřednictvím rozdělené paměti 156, která je »
konfigurována do specifických zó'n prostřednictvím simulovaného správce LQ2 zařízení. Část paměti musí být konfigurována správcem 102 zařízení pro dynamické přidělování a uvolňování paměťového prostoru.
Úlohou rozdělené paměti 156 je reprezentovat reálný paměťový prostor digitálního dekodéru a rovněž umožnit výměnu informací mezi procesy v prostředí UNIX. Paměť je rozdělena do čtyř hlavních oblastí:
• GMP (řízení rozdělené paměti) oblast 158, která je použita správcem zařízení pro řízení paměti • veřejná oblast 160, která je generována simulátorem • oblast 162 ovládaná virtuálním počítačem, která je generována dynamicky, nezávisle na správci zařízení • statická oblast 158, rovněž generovaná virtuálním počítačem, ve které jsou přidělovány privátní oddíly.
Separace paměti do vyrovnávacích paměťových stupňů a přidělování, uvolňování a blokování vyrovnávacích paměťových stupňů se děje pod řízením simulátorem.
0000 ·· fc fc •
fc fc v··· fc··· * fc » • ·♦·
0 » 0 «·· 0* Φ
0 0 0 ·· 00
0 0
Ve spojení s odkazy na obr, 8 je ilustrován první příklad činnosti simulátoru. Je vytvořena hlavní cesta, která pracuje s VM cestou 170 (cesta virtuálního počítače), modulem 150 správce zařízení, modulem 152 řízení paměti a modulem 154 komunikace mezi procesy. Dialog se simulovanými zařízeními 180, 182, 184 probíhá přes UNIX zásuvky 186 a 188 v nepropojeném režimu. Jak bylo uvedeno výše, synchronní výměna dat se zařízeními probíhá prostřednictvím použití procedury Device: Call, zatímco asynchronní výměny dat probíhají prostřednictvím použití procedury Device: 1/0. Když je volána procedura Device: Call nebo procedura Device: I/O, virtuální počítač 101 vysílá do simulovaného správce 102 zařízení adresu datového paměťového vyrovnávacího stupně, přiděleného v rozdělené paměti 156 pro výměnu dat. Správce 102 zařízení přebírá řízení adresy; pokud je adresa vně rozdělené paměti, přiděluje správce zařízení prostor v rozdělené paměti a kopíruje potřebná data do tohoto prostoru. Správce zařízení potom vkládá příkazovou zprávu do fronty událostí pro předání vhodnému simulovanému zařízení.
Simulovaná zařízení 180, 182, 184 pracují v procesech, které jsou zcela nezávislé na simulovaném virtuální počítači 101 (nebo simulátoru 100). Proces v zařízení je spuštěn při prvním otevření zařízení a je zrušen při uzavření posledního klienta. Virtuální počítač vysílá data do zařízení buď s použitím privátního paměťového prostoru zařízení, nebo přes rozdělenou paměť. Zařízení může vysílat data do virtuálního počítače pouze přes paměť přidělenou správcem zařízení. Všechny z příkazových zpráv, které jsou přijímány, nebo odezvy zařízení na tyto zprávy, a rovněž asynchronní události využívají dvě zásuvky. Zásuvka • · » · 9 • · *· · · · • « « » · • ft ft · · ···· ··· ftft ftft * ♦ · ♦ * ft» ftft ftft • ·
186 je přidělena pro synchronní komunikace s virtuálním počítačem, zatímco zásuvka 138 je přidělena asynchronním odezvám zařízení.
Simulovaná zařízení 180, 182 , 184 sestávají z knihoven procedur, které umožňují zařízením, aby byla považována za skupinu příkazů, z nichž každá je sdružena s procedurou. Zařízení dekódují přijímané příkazové zprávy a volají přidružené procedury. Procedury buď přistupují k hardwaru v pracovní stanici, který je ekvivalentní k hardwaru v reálné DSTB, nebo simulačním souborům, které obsahují data, která simulují činnost skutečné DSTB. Odezva z hardwaru, nebo dat v simulačním souboru, je potom předávána zpět do virtuálního počítače přes rozdělenou paměť.
Pro získání simulace asynchronního příjmu událostí, pocházejících ze zařízení, je v hlavní cestě vytvořena cesta 172 asynchronního příjmu (10 cesta). Úlohou této cesty je přijímat události a data, která byla vyslána různými simulovanými zařízeními v pdezvě na příkaz. Přijaté události jsou udržovány v seznamu v pořadí jejich příchodu, potom jsou vysílány do virtuálního počítače 101 pod řízením procedur zajišťovaných virtuálním počítačem.
Obr. 9 ilustruje schematicky softwarové vybavení, simulátoru. Virtuální počítač 101 interaguje se správcem 102 zařízení. Přenos příkazů ze správce 102 zařízení k různým zařízením 191 až 197 probíhá prostřednictvím procedury 301 device call, procedury 302 device I/O a procedury 303 device event, transportního protokolu 304 zásuvky, komunikačního správce 305, více-klientského správce 306 a správce 307 přidělování příkazů k zařízením. Správce 310 paměťového prostoru ovládá sdílenou paměť 312 a přiděluje
I i « * * I
Η « » « 1 < « I
1 1
I ι I • » « « I « «
I » • 4 « a a « a a
« « ' t a
• * · * prostor ve sdílené paměti pro konfigurační zdroje 313, klientské zdroje 314, zdroje 315 zařízení, FIFO (paměť typu první dovnitř první ven) zdroje 316 a veřejný/privátní přidělovací program 317. Jak je popisováno výše, sdílená paměť umožňuje datům, aby byla přenášena mezi hlavní cestou a zařízeními. Správce 320 událostí pracuje s asynchronními událostmi pocházejícími ze zařízení 190 až 197.
V jiném výhodném provedení vynálezu pracuje simulátor zařízení v prostředí Windows NT. V tomto provedení jsou zařízení realizována jako dynamické propojovací knihovny, spíše než- jako samostatné programy v UNIX provedení popisovaném výše. V prostředí Windows NT není IPC modul (modul komunikace mezi procesy). V obou realizacích je správce příkazů odpovědný za přenos událostí z aplikace do simulovaných zařízení a správce událostí je odpovědný za přenos událostí ze simulovaných zařízení do aplikace.
Ve spojení s odkazy na obr. 10 nyní bude popsán druhý příklad činnosti simulátoru. Tato činnost je v některých aspektech podobná jako v prvním příkladu, rozdíl v porovnání s prvním příkladem je ale v tom, že virtuální počítač 450 a simulovaná zařízení 451 a 452 pracují v jednom procesu 453. Tímto jedním procesem 453 může být, například, UNIX proces. Uvnitř jednoho procesu 453 je vytvořena systémová cesta 454, která pracuje s cestou 450 virtuálního počítače společně se simulovaným správcem 455 zařízení a konfiguračním modulem 456 simulátoru.
Dialog se simulovaným zařízením 451 (zařízení X) je inicializováno ve virtuálním počítači 450 voláním 458 funkce zařízení X, obsažené v první knihovně 459. Funkce zařízení X generuje žádost 460 o datovou cestu 457 pro simulaci zařízení
ΦΦ ΦΦΦΦ ΦΦ ΦΦΦΦ ΦΦΑ φφ •φφ φφ i φ |· * • ♦·· φφφ φ φ φ • φφφφ φφφφ · φ φ φφφφ φφφ φφφφ φφφ · φφ φφ φφφφ
451 (zařízení X). Podobným způsobem je inicializován dialog se simulovaným zařízením 452 (zařízení Y) prostřednictvím volání 461 funkce zařízení Y, obsažené v druhé knihovně 462. Funkce zařízení Y generuje žádost 463 o datovou cestu 4 64. pro simulaci zařízení 452 (zařízení Y) .
Volání funkce zařízení v cestě virtuálního počítače může být, například, realizováno následovně:
Cesta vm '10 , } ...
Device_Call()
Získej adresu funkce F zařízení D
Volej funkci F
Funkce F() spusť kód funkce konec funkce F
Konec Device_Call } '
Simulace zařízení 451 a 452 generuje události pro virtuální počítač 450, které jsou vysílány ve zprávách 465 a 4 66 do administrátoru 467 událostí.
Administrátor 467 událostí je modul, který umožňuje:
• virtuálnímu počítači 450 v systémové cestě 454, aby přijímal události generované zařízeními, • datovým cestám 457 a 464 zařízení, aby emitovaly události pro virtuální počítač 450, a n··.
ΦΦ Φ··· • · φ • φφφ φ φ φ φ φ φφφφ φφφ • simulátoru, aby spravoval vymazání událostí, uchovány v seznamu.
Událostí čekající na zpracování virtuálním počítačem 5 450 jsou spravovány ve zřetězeném seznamu, což znamená, že každá událost v seznamu zahrnuje ukazatel na následující událost. Začátek seznamu je identifikován předdefinovaným ukazatelem.
Události jsou potom zadávány virtuálnímu počítači 450 ve zprávě 468. V závislosti na konfiguraci to může být realizováno buď administrátorem 467 událostí, který přerušuje virtuální počítač 450 a zasílá události, nebo samotným virtuálním počítačem 450, který vybírá události v administrátoru 67 událostí.
Funkce zařízení X a Y jsou obsaženy v knihovnách 459 a 462, které patřičně příslušejí k odpovídajícím zařízením. Volání funkcí se provádí prostřednictvím tabulky funkcí.
Simulace zařízení může být přesně nastavena pro 20 potřeby specifického zařízení. Bylo by například možné žádat množství datových cest o simulaci specifického zařízení, ve většině případů je zařízení simulováno s použitím jedné datové cesty, která zpracovává žádosti přijímané z jiných simulovaných funkcí jako úloha na pozadí.
8
Za účelem ilustrace činnosti simulátoru 100 je na obr. 11 znázorněn příklad toho, jak by ve skutečné DSTB mohl být vytvářen obraz pro zobrazení na televizní obrazovce.
Obraz je rozdělen do pěti vrstev: vrstva 350 pozadí, video vrstva 352. vrstva 354 nehybného obrazu, grafická vrstva 356 a vrstva 358 ukazatele. Vrstva ukazatele je uložena přes ·φφ· φφ φ φ φ φ φφφ φ φ φ φ φφφφ φ φφφφ φφφ ·· φφ φφ φφφφ které jsou • Φ φφ»Φ *ν ·»»» ♦ Φ φ · Φ Φ
ΦΦΦ· Φ«Φ
Φ ΦΦΦ» Φ Φ
Φ Φ Φ · Φ φ
ΦΦΦΦ ΦΦΦ ΦΦ ΦΦ grafickou vrstvu, která je uložena přes vrstvu nehybného obrazu a tak dále. Za účelem umožnění divákovi sledovat směs všech těchto vrstev, než aby sledoval pouze horní vrstvu, je každé vrstvě přidělen faktor transparentnosti (průhledností). Vrstva je opakní (neprůhledná), když faktor transparentnosti má hodnotu 0, a je transparentní (průhledná), když faktor transparentnosti má hodnotu 1. ve většině případů je faktor transparentnosti přidělen každému obrazovému bodu ve vrstvě; výjimkami jsou vrstva pozadí ·' 10 (protože za touto vrstvou již není žádná další vrstva), video vrstva, pro kterou.je faktor transparentnosti globální v oblastí, kde je přehráváno video (zbytek vrstvy je transparentní), a vrstva ukazatele, pro kterou je ukazatel opakní a zbytek vrstvy je transparentní.
Vrstva ukazatele, grafická vrstva a vrstva pozadí jsou vytvářeny aplikací 360. zatímco video vrstva a vrstva nehybného obrazu přicházejí z vysílaného digitálního signálu přes MPEG dekodér 362. Různé vrstvy jsou směšovány ve směšovací 364, který je soúčástí grafického procesoru 36 znázorněného na obr. 3. Směšovač sestává z hardwarových čipů, které provádějí směšování uvedených pěti vrstev. V kterémkoliv okamžiku aplikace může změnit faktor transparentnosti pro každou vrstvu (pokud je to přípustné).
Aby to bylo možné provádět vyvolává aplikace pro video vrstvu
5 příkaz zařízení VIDEO, pro vrstvu nehybného obrazu aplikace vyvolává příkaz zařízení PICTURE a pro grafickou vrstvu aplikace volá funkci knihovny GRAPHIC. Smíchaný obraz je zobrazován na televizním zařízení 366 uživatele.
Aby se simulovala situace znázorněná na obr. 11, jsou různá zařízení a přidružený hardware, se kterými aplikace • φφ « • · i • · Φ • Φ · φφ φφφφ
4444 ·* 44|4
4» 4 · * •··· 4 * 4 • 4 4 4 4 4 • 4 *44* ··!· 444 44 »4 • 4 44 • · · · • · · ·» ··»· interaguje, na pracovní stanici nahrazeny softwarovými simulacemi. Tak je, například, vytvořen softwarový směšovač, který směšuje různé obrazové vrstvy. Takto smíchaný obraz je potom zobrazován na obrazovce pracovní stanice spíše, než aby byl zobrazován na samostatné televizní obrazovce. Tímto způsobem konstruktér aplikace může testovat činnost své aplikace bez stahování aplikace do DSTB.
V simulátoru 100 je výše popisovaná směšovací funkce realizována s použitím nízkoúrovňové knihovny, nazvané θ knihovna LAYERS. Prď simulaci směšování různých vrstev spíše, než aby byly psány přímo na obrazovku, každý modul volá knihovnu LAYERS. Každý modul, který modifikuje obsah obrazovky, vypočítává polohu, velikost, obsah a faktor transparentnosti měněné oblasti a předává tuto informaci do knihovny LAYERS. Knihovna LAYERS spravuje čtyři paměťové bloky pro vrstvu pozadí, video vrstvu, vrstvu nehybného obrazu a pro grafickou vrstvu. Pokaždé, když je modifikována oblast ve vrstvě, knihovna LAYERS vypočítá výslednou oblast obrazovky při vzetí do úvahy obsahu ostatních vrstev a jejich faktorů transparentnosti. Při zobrazování videosekvencí, je tato činnost opakována pro každý nový obraz (počet obrazů za sekundu, závisející na přehrávaných souborech). Agoritmy, používané pro směšování oblastí vrstev, jsou tudíž optimalizovány v největší možné míře tak, aby se dosáhlo plynulého přehrávání videa.
Každá vrstva je spravována prostřednictvím mapy obrazových bodů, ve které je každému obrazovému bodu přidělena sada hodnot. V jednom příkladu je pro vrstvy θ nehybného obrazu a grafickou vrstvu přiděleno každému obrazovému bodu 32 bitů: 8 bitů pro každou z barev červená, a 2 bitů 24.
• · · • ··· • · · • · ·♦·♦ 000 zelená a modrá, 6 bitů pro úroveň transparentnosti, rezervní bity, zatímco pro vrstvu pozadí je použito
V závislosti na TV standardu, který má být simulován, to poskytuje 720 x 576 x 4 = 1 658 880 bytů pro standard PAL a 5 720 x 480 x 4 = 1 382 400 bytů pro standard NTSC.
Protože vrstva ukazatele je horní vrstvou a pro ukazatel není aplikován žádný faktor transparentnosti, není nutné aplikovat jakékoliv směšování na vrstvu ukazatele. Tvar ukazatele může být ovládán standardními mechanismy systému.
, . .
V simulátoru, spíše než aby byl používán skutečný ’ MPEG dekodér, jsou vytvořeny soubory, které obsahují data typického výstupu z reálného MPEG dekodéru. Tyto soubory mohou být vytvářeny buď prostřednictvím uložení dat, která přišla ze skutečného MPEG dekodéru, nebo prostřednictvím použití simulačních souborů. Simulačními soubory jsou soubory, které byly vytvořeny tak, aby měly určité vlastnosti, jako jsou titulky.
Obr. 12 znázorňuje^příklad toho, jak se aplikace,
2Q která je spuštěna na simulovaném přijímači/dekodéru, jeví na obrazovce pracovní stanice. Ve znázorněném příkladu aplikace spouští těst video zařízení. TV okno na obrazovce pracovní stanice je použito pro zobrazování výstupu aplikace stejným způsobem, jako by se objevoval na skutečné televizní obrazovce. Na obr. 12 má TV okno zmenšené měřítko na 75 % z celkové plochy obrazovky pracovní stanice.
Další příklad aplikace, která je spuštěna na simulátoru, je znázorněn na obr. 13. Tento příklad znázorňuje video vrstvu s grafickou vrstvou, která zahrnuje obrat hráče fotbalu, uloženou přes video vrstvu. Grafická vrstva má ttt tt ·· ··*· ttt ·»· tttt ttt * tt tt·· · · · • ♦ · · tt tt · tt tttt*·· • ••tt tttt· tttt tttt
• tt tttttt· množství transparentních obrazových bodů, takže video vrstva je viditelná skrz hlavu hráče fotbalu.
Další příklady budou uvedeny v následujícím popisu prostřednictvím realizací simulací určitých zařízení na 5 . , pracovních stanicích s prostředím WINDOWS NT a pracovních stanicích s prostředím UNIX.
WS zařízení '
SERIÁL
Zařízení SERIÁL umožňuje aplikaci komunikovat s jakýmkoliv typem vybavení přes sériovou linku (s využitím, například, standardu RS232) . Toto zařízení je simulováno s 15 použitím standardních API systémů UNIX/NT. Toto zařízeni umožňuje komunikaci přes sériový port pracovní stanice.
PARALLEL
Zařízení PARALLEL umožňuje aplikaci komunikovat přes paralelní linku (s použitím, například, standardu IEEE 1284). Toto zařízení je simulováno s použitím standardních API systémů UNIX/NT. Toto zařízení umožňuje komunikaci přes paralelní port pracovní stanice.
BUS_1394
Toto zařízení umožňuje aplikaci komunikovat s jakýmkoliv typem zařízení přes vysokovýkonnou sériovou sběrnici využívající standard IEC 1883. Toto zařízení je
Μ «·«· ·· »··» k* *« • · » * · * » · a * aaa · · » a · i • a a » · · · * « I • * a β a a aaa •••a ·< »· ** tl ((aa simulováno s využitím externí desky, která zajišťuje přístup ke sběrnici 1394.
UNIMODEM
Toto zařízení umožňuje aplikaci řídit vnitřní nebo vnější modem (s využitím, například, standardu HAYES). Toto zařízení je realizováno s použitím standardních API systémů UNIX/NT. Toto zařízení umožňuje řízení vnějšího modemu přes skutečný sériový port pracovní stanice nebo vnitřního modemu přes virtuální sériový port (pokud je povolen systémem).
NETWORK
Toto zařízení umožňuje aplikaci konfigurovat a používat síťovou zásobníkovou paměť. Je podporováno několik protokolů: TPC, UDP, IP, PPP, a tak dále. Jakmile je zásobníková paměť nakonfigurována, toto zařízení poskytuje aplikaci propojovací rozhraní typu zásuvka BSD pro umožnění otevření TCP spojení, pro vysílání a příjem UPD datagramů, pro spojení skupin výběrového vysílání, a tak dále.
Toto zařízení může být rozděleno do dvou částí: konfigurační část a komunikační část. Konfigurační část nemůže být realizována v systémech UNIX/NT, protože konfigurace může probíhat pouze v okamžiku zavádění systému.
Tato část je tedy pouze simulací. Obvykle jsou odezvy zařízení NETWORK na konfigurační příkazy kódovány na pevno, ale mohou být kódovány v konfiguračním souboru později. Komunikační část je realizována s použitím standardních API systémů UNIX/NT. Tato část umožňuje komunikaci s jiným vybavením s použitím zásuvek BSD.
• · · • · ···· ··*
J
CLOCK
Toto zařízení umožňuje aplikaci přístup k hodinám reálného času. Aplikace může získat a nastavit informace o datu a čase a programovat výstražné alarmy. Toto zařízení je realizováno s použitím standardních API systémů UNIX/NT.
KEYBOARD
Toto zařízení umožňuje aplikaci konfigurovat zařízení 20 KEYBOARD (pokud je dostupné)· a přijímat události z klávesnice a dálkového ovládání (nařízení Remote Control). Toto zařízení je realizováno s použitím standardních API systémů UNIX/NT. Zařízení Remote Control je simulováno s použitím softwarového modulu Remote Control, který vysílá systémové zprávy do zařízeni KEYBOARD. Ačkoliv nemohou komunikovat stejným způsobem (infračervené paprsky pro DSTB (digitální nastavovací skříň) a kabel pro pracovní stanici), jsou zařízení KEYBOARD dekodérů a pracovní stanice podobná.
POINTER
Toto zařízení umožňuje aplikaci konfigurovat zařízení
POINTER (ukazatel = myš) (pokud je dostupné) a přijímat události ukazatele (posun myši, kliknutí tlačítka, a podobně). Toto zařízení je realizováno s použitím standardních API systémů UNIX/NT/Windows. Zařízení POINTER definuje oblasti na obrazovce, kde ukazatel může mít různé tvary. Tyto oblasti příslušejí vrstvě ukazatele (Pointer) na obrazovce.
·”· • φφ* * Φ fl • « • · • t • Φ • · ·
1« Φ·
• · «
•φφφ
GRAPHIC
Toto zařízení umožňuje aplikaci dekomprimovat obrazy, které přicházejí z různých formátů, jako je JPEG, MPEG, GIF a
PNG. Aplikace poskytuje komprimované obrazy v sadě paměťových 5 vyrovnávacích stupňů a toto zařízení vrací dekomprimované obrazy v jiné sadě paměťových vyrovnávacích stupňů. Obrazy mohou být nehybné nebo animované. Paměťové vyrovnávací stupně obrazů přicházejí obecně z DVB úseků stahovaných prostřednictvím zařízení MLOAD. Toto zařízení nepřistupuje k žádné části hardwaru. Toto zařízení nepotřebuje žádné systémové API.
Pro zobrazení obrazů, které jsou dekomprimovány tímto zařízením, aplikace využívá funkce knihovny GRAPHIC. Tato knihovna modifikuje pouze obsah grafické vrstvy obrazovky.
Non-WS zařízení
PICTURE ' , , Toto zařízeni poskytuje stejné služby dekomprimovaní jako zařízení GRAPHIC. Pro zobrazen obrazů, které jsou dekomprimovány s tímto zařízení, ale aplikace využívá samotné zařízení PICTURE. Toto zařízení modifikuje obsah vrstev pozadí a MPEG na obrazovce.
AUDIO
Toto zařízení umožňuje aplikaci programovat audio čip nastavovací řídící skříně (STB). Toto zařízení je schopné přehrávat audio tok a měnit audio parametry (prologic, ···· • · · ·
• · · • ··· v··· ···
stereo, a podobně). Toto zařízení je realizováno s použitím standardních API systémů UNIX/Windows. Změna audio parametrů systému je dostupná pouze, když je to povoleno cílovým systémem.
VIDEO
Toto zařízení umožňuje aplikaci programovat MPEG dekompresní čip. Toto zařízení je schopné měnit polohu, velikost, zvětšení, a podobně, video obrazu. Protože MPEG čip je softwarově simulován v pracovní stanici UNIX/NT zařízením SERVICE, jedinou úlohou zařízení VIDEO je informovat zařízení SERVICE o nových parametrech video obrazu.
SERVICE
Toto zařízení umožňuje aplikaci zvolit danou DVB službu (například TV kanál) prostřednictvím jejích PID (programové identifikátory), například PID video toku, audio toku, titulků nebo teletextů. Toto zařízení může potom směrovat každý tok PID dat do správného hardwarového čipu, aby byl zpracován (dekomprimován) a přehráván.
Zařízení SERVICE je simulováno v pracovních stanicích
UNIX/NT následovně. Když je zvolena služba, zařízení ignoruje všechny PID služeb až na PID video toku. Zařízení využívá tento poslední PID jako vstup do předem konfigurované tabulky, ve které jsou uložena jména diskových souborů. Tyto soubory obsahují data z daného multimediálního formátu. Zařízení SERVICE buď samo čte a přehrává tato data, nebo využívá standardní API systému pro provádění této úlohy. Zařízení SERVICE využívá informace, poskytované zařízením • · * · φ · · » · · • · · · « · · · · • · φ · φ · φ · φ φ φφφφφφφφ
2Q ·φφφ ··· φ· ·Φ ·· ΦΦΦ·
VIDEO, pro určování parametrů velikosti, polohy a zvětšení u zobrazovaných obrazů.
Toto zařízení modifikuje obsah video vrstvy na obrazovce. Video obrazy (obsah, poloha a velikost) jsou vypočítávány jeden po druhém a každý výsledný obraz je zobrazován ve video vrstvě obrazovky.
DISPLAY
2q Toto zařízení umožňuje aplikaci používat zobrazení před terminálem. Aplikace může požadovat zobrazení aktuálního času nebo jakékoliv privátní zprávy. Toto simulační zařízení v systémech UNIX/NT využívá stavovou lištu TV okna pro zobrazení požadovaných zpráv.
SCTV, SCVCR, SCAUX
Tato zařízení umožňují aplikaci kontrolovat a konfigurovat výstup SCART televizního zařízení, videorekordéru (VCR) respektive pomocného vybavení. Odezvy na příkazy SCTV, SCVCR a SCAUX mohou být kódovány na pevno nebo mohou být kódovány v konfiguračním souboru.
POWER
Toto zařízení je použito pro uvedení nastavovací řídící skříně (STB) do pohotovostního režimu (standby) a pro načítání informací a zapnutí. Tato simulace zařízení umožňuje aplikaci zastavit všechna zařízení a opustit proces v systémech UNIX/Windows.
fc· fcfcfcfc fcfc »··· • · • fcfcfc fcfc fcfc fcfc · fcfcfcfc fc · · fcfc · • fcfcfcfc fcfcfcfc · « fcfc··· fcfcfc fcfcfc fcfcfc fcfc fcfc fcfc fcfcfcfc
BACKUP
Toto zařízení umožňuje aplikaci číst z a zapisovat do paměti EEPROM a FLASH. Tato hardwarová zařízení jsou používána pro uložení informací v paměti nezávislé na zdroji energie.
Paměti EEPROM a FLASH jsou simulovány v systémech UNIX/Windows s použitím bloků RAM (energeticky závislé) paměti, mapovaných do diskových souborů. To poskytuje aplikaci stabilní paměť, která simuluje EEPROM a FLASH. V případě selhání napájení může aplikace načítat data uložená v diskových souborech stejně, jako kdyby byla uložená ve stabilní paměti.
MLOAD
Toto zařízení je použito pro stahování DVB úseků z vysílaného datového toku. Aplikace poskytuje PID (programový ID), který obsahuje úseky pro stažení, a filtry pro omezení stahovaného počtu úseků pouze na úseky, které aplikací zaj íma j i.
V tomto simulačním prostředí je diskový soubor přidělen každému PID v předem nakonfigurované tabulce. Když aplikace začíná stahovat úsek z daného PID, toto zařízení otevírá přidružený diskový soubor a cyklicky jej čte.
Pokaždé, když je úsek stažen ze souboru, toto zařízení na něj aplikuje filtrovací kritéria. Pokud úsek projde filtry, je vysílán do aplikace.
Z hlediska aplikace, je chování tohoto zařízení stejné, jako kdyby úseky byly stahovány z přenášeného bitového toku.
• 0 0000 ·0 0··· 00 «0 00« 00 0 000«
0000 00 0 ·0 0 0 0000 0000 0 • 0 0000 «00 0000 000 00 00 0« «000
TUNER
Zařízení TUNER je použito pro vyžádání informací o tuneru (ladiči) nastavovací řídící skříně (set top box), pro 5 čtení stavu tuneru (AGC, BER, a podobné), a pro nastaveni a získání parametrů naladění. Toto zařízení rovněž umožňuje operace prohledávání frekvencí.
V tomto simulačním prostředí toto zařízení přebírá 10 svá data ze souboru,^ který popisuje virtuální anténu. Každá frekvence,, která by byla detekována virtuální anténou, je registrována v souboru se svými vlastnostmi (přenosová rychlost, konvoluční kód, AGC, BER, a tak dále).
Pro každou frekvenci je rovněž registrován adresář 15 pro simulační soubory zařízení MLOAD (PID data). Pokud tedy aplikace naladí na jinou frekvenci, změní se sada PID pro stažení stejně jako ve skutečném případě.
RCARD '' 20
Toto zařízení je použito pro komunikování s pravým (umístěným obvykle vpravo) zařízením pro Čtení inteligentních karet (pokud je dostupné). Toto zařízení je obecně používáno pro bankovní karty. Z bezpečnostních důvodů a protože kód a data bankovních karet jsou chráněna, toto zařízení není 25 simulováno.
LCARD
Toto zařízení je použito komunikování s levým 30 zařízením pro čtení inteligentních karet. Toto zařízení je φφφ φ •φφφ · * • φ φ * · • φφφφ· φφφ ···· φφφ ·Φ φ· φ· φφφφ použito pro inteligentní kartu systému podmíněného přístupu.
Z bezpečnostních důvodů a protože kód a data karty podmíněného přístupu jsou chráněna, toto zařízení není simulováno,
CA (zařízení podmíněného přístupu)
Toto zařízení umožňuje aplikaci získávat informace o systému podmíněného přístupu a pro řízení tohoto systému. Z bezpečnostních důvodů a protože mechanismus podmíněného přístupu je chráněn, toto zařízení není simulováno.
Mělo by být zcela zřejmé, že předkládaný vynález byl výše popsán čistě prostřednictvím příkladů a v rozsahu tohoto vynálezu mohou být prováděny modifikace různých detailů.
Každý znak, popsaný v popisu a (kde je to vhodné) v připojených patentových nárocích a ilustrovaný na výkresech může být realizován nezávisle nebo v jakékoliv vhodné kombinaci s ostatními znaky.
Vztahové značky, uváděné v připojených patentových nárocích, mají pouze ilustrační účel a nemohou mít omezující vliv na rozsah těchto nároků.

Claims (42)

  1. PATENTOVÉ NÁROKY
    1. Zařízení pro testování aplikace pro přijímač/dekodér, vyznačující se tím, že zahrnuje prostředek pro simulaci funkce přijímače/dekodéru.
  2. 2. Zařízení podle nároku 1, vyznačující se tím, že je upraveno pro spuštění aplikace.
  3. 3. Zařízení podle nároku 1 nebo 2, vyznačující se tím, že je upraveno pro spuštění aplikace v prvním procesu a pro simulaci funkce přijímače/dekodéru v druhém procesu.
    . · jiř- ;
  4. 4. Zařízení podle nároku 3, vyznačující se tím, že první a druhý proces jsou vzájemně na sobě nezávislé.
  5. 5. Zařízení podle nároku 3 nebo 4, vyznačující se tím, že 15 první a druhý proces jsou spuštěny na stejném procesoru.
  6. 6. Zařízení podle kteréhokoliv z nároků 3 až 5, vyznačující se tím, že dále zahrnuje rozdělenou paměť pro umožnění předávání dat mezi prvním procesem a druhým procesem.
  7. 7. Zařízení podle nároku 1 nebo 2, vyznačující se tím, že je upraveno pro spuštění aplikace v první cestě a pro simulaci funkce přijímače/dekodéru v druhé cestě.
  8. 8. Zařízení podle nároku 7, vyznačující se tím, že první a 25 druhá cesta tvoří součásti jednoho procesu.
  9. 9. Zařízení podle nároku 7 nebo 8, vyznačující se tím, že dále zahrnuje rozdělenou paměť pro umožnění předávání dat mezi první a druhou cestou.
    • 0 * 0 · 0 0 • 000 0 · · · 0 0 • 0 · 0 · 0 0 0 0 0 • 0 0000 0··
    0000 000 00 «· 00 ····
  10. 10. Zařízení podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že funkce přijímače/dekodéru je alespoň částečně simulována v softwaru.
  11. 11. Zařízení podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že funkce přijímače/dekodéru je simulována s použitím hardwaru, který odpovídá hardwaru v přij ímači/dekodéru.
  12. 12. Zařízení podle kteréhokoliv z předcházejících nároků, IQ vyznačující se tím, že zahrnuje paměťový prostředek pro uložení souboru obsahujícího data, která reprezentují data vytvářená částí hardwaru v přijímači/dekodéru.
  13. 13. Zařízení podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že je upraveno pro vytváření výstupu pro 15 zobrazeni na obrazovce, který simuluje výstup příj ímače/dekodéru.
  14. 14. Zařízení podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že je upraveno pro příjem vstupních dat
    20 reprezentujících data, která by byla přijata přij ímačem/dekodérem.
  15. 15. Zařízení podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že je upraveno pro vytváření výstupu pro zobrazení na obrazovce, který reprezentuje část hardwaru, se
    25 kterou přijímač/dekodér může interagovat.
  16. 16. Zařízení pro editování a testování aplikací, vyznačující se tím, že zahrnuje editor aplikace a zařízení pro testování aplikace, definované podle kteréhokoliv z předcházejících nároků.
    tt tt • ···
    V · ·»·» »» W» • · · · tt · • tt tttt tt • tttttttt · • «tttt tt · · tt· ·· ·· tt···
  17. 17. Zařízení podle nároku 16, vyznačující se tím, že editor je upraven pro vytváření výstupu pro zobrazení na obrazovce, a prostředek pro simulaci funkce přijímače/dekodéru je upraven pro vytváření výstupu pro zobrazení na stejné
    5 obrazovce.
  18. 18. Zařízení podle nároku 16 nebo 17, vyznačující se tím, že zahrnuje procesor pro spouštění jak editoru tak i prostředku pro simulaci funkce přijímače/dekodéru.
    2_0
  19. 19. Zařízení podle kteréhokoliv z nároků 16 až 18, vyznačující se tím., že prostředek pro simulací funkce - - ► přijímače/dekodéru je upraven pro spuštění aplikace, která byla editována editorem.
  20. 20. Zařízení podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že funkcí přijímače/dekodéru je alespoň jedna z funkcí přijímání a zpracování vstupních dat, například z dálkového ovládání, klávesnice nebo komunikačního zařízení, jako je modem, dekódování video dat, vytváření video výstupu, ladění na přenášený signál, komunikování s
    20 , , inteligentní kartou, a výhodně funkce alespoň jednoho z následujících zařízení: REMOTE CONTROL, SERIÁL, PARALLEL, BUS 1394, MODEM, NETWORK STACK, CLOCK, KEYBOARD, POINTER,
    GRAPHIC, PICTURE, AUDIO, VIDEO, SERVICE, DISPLAY, SCTV,
    SCVCR, SCAUX, POWER, BACKUP, MLOAD, TUNER, a SMARTCARD.
  21. 21. Pracovní stanice, vyznačující se tím, že zahrnuje editor pro editování aplikací, simulátor pro simulaci funkce přijímače/dekodéru a displej pro zobrazování výstupu editoru a výstupu simulátoru.
    • Φ φφφφ ·· φφφφ *♦ φφ • φ φ · φ · φ » φ · • φφφ φ φ φ · φ φ φ φφφφ φφφφ φ φ φ φφφφ φφφ φφφφ φφφ ·· φφ φφ Φφφφ
  22. 22. Pracovní stanice podle nároku 21, vyznačující se tím, že simulátor je upraven pro spuštění aplikace, která byla editována editorem.
  23. 23. Pracovní stanice podle nároku 21 nebo 22, vyznačující 5 se tím, že výstup simulátoru je zobrazován v okně displeje.
  24. 24. Pracovní stanice podle kteréhokoliv z nároků 21 až 23, vyznačující se tím, že v okně displeje je simulováno vstupní zařízení pro zadávání dat do aplikace.
  25. 25. Způsob testování aplikace pro přijímač/dekodér, vyznačující se tím) že’zahrnuje simulaci funkce přijímače/dekodéru.
  26. 26. Způsob editování a testování aplikace, vyznačující se
    55 tím, že zahrnuje editování aplikace a dále zahrnuje způsob testování aplikace, definovaný podle nároku 25.
  27. 27. Počítačem čitelné médium, vyznačující se tím, že má na sobě uložený program pro provádění způsobu, definovaného v nároku 25 nebo 26. ;
  28. 28. Počítačem čitelné médium, vyznačující se tím, že má na sobě uložený program pro provádění způsobu testování aplikace pro přijímač/dekodér, přičemž rento způsob zahrnuje simulaci funkce přijímače/dekodéru.
    25
  29. 29. Počítačový programový produkt, vyznačující se tím, že zahrnuje program pro provádění způsobu definovaného v nároku 25 nebo 26.
  30. 30. Počítačový programový produkt, vyznačující se tím, že zahrnuje program pro provádění způsobu testování aplikace pro «V »· »· **«* «« «« • φ φ φφ φ φ φ φ φ φ φφφ φφφ φ φ * φ φφφφ φφφφ φ φ φ φφφφ φφφ φφφφ φφφ φφ φφ φφ φφφφ přijímač/dekodér, přičemž tento způsob dále zahrnuje simulaci funkce přijímače/dekodéru.
  31. 31. Způsob testování aplikace pro přijímač/dekodér v podstatě podle zde uvedeného popisu ve spojení s odkazy na 5 ilustrace na připojených výkresech.
  32. 32. Zařízení pro testování aplikace pro přijímač/dekodér v podstatě podle zde uvedeného popisu ve spojení s odkazy na ilustrace na připojených výkresech.
  33. 33. Zařízení pro testování aplikace pro přijímač/dekodér, přičemž toto zařízéní Zahrnuje pracovní stanici, tato pracovní stanice zahrnuje editor pro vytváření a editování aplikací a simulátor pro přijetí aplikace z editoru a spuštění přijaté aplikace pro testování aplikace, vyznačující i c , , se tím, že simulátor zahrnuje alespoň jeden simulovaný komponent přijímače/dekodéru, přičemž simulace je podle potřeby nastavitelná v závislosti na testované aplikaci.
  34. 34. Zařízení podle nároku 33, vyznačující se tím, že 20 simulovaným komponentem je alespoň jeden komponent ze simulovaného virtuálního počítače, simulovaného správce zařízení a simulovaného zařízení.
  35. 35. Zařízení podle nároku 33 nebo 34, vyznačující se tím, že simulace je simulována alespoň částečně v softwaru.
  36. 36. Zařízení podle kteréhokoliv z nároků 33 až 35, vyznačující se tím, že simulace je simulována alespoň částečně v hardwaru, který modeluje hardware v přij ímači/dekodéru.
    ·· ··<♦ * · · • ·♦· • ft ·· ···· • · · • · · • · ♦ • ♦ · · ·· ♦· ·· a
    • · · • · · · • · · ·· »···
  37. 37. Zařízení podle nároku 36, vyznačující se tím, že uvedený hardware zahrnuje hardware příslušející pracovní stanici,
  38. 38. Způsob testování aplikace pro přijímač/dekodér, využívající pracovní stanici zahrnující editor pro vytváření a editování aplikací a simulátor pro testování aplikace, přičemž uvedený simulátor zahrnuje simulované komponenty přijímače/dekodéru, vyznačující se tím, že zahrnuje kroky:
    . nastavení simulace podle potřeby v závislosti na
    10 .....
    testované aplikaci; a spuštění aplikace pro její testování.
  39. 39. Zařízení pro testování aplikace pro přijímač/dekodér, které zahrnuje pracovní stanici, vyznačující se tím, že ]_5 uvedená pracovní sanice zahrnuje procesor a přidruženou paměť upravené pro simulaci funkce přijímače/dekodéru.
  40. 40. Zařízení pro editování a testování aplikace pro přijímač/dekodér, které zahrnuje procesor a přidruženou paměť, vyznačující se tím,-že procesor a přidružená paměť
    2 0 jsou upraveny pro editovaní uvedené aplikace a zařízení pro testování aplikace je definováno podle nároku 39.
  41. 41. Pracovní stanice, vyznačující se tím, že zahrnuje: procesor a přidruženou paměť, přičemž uvedený procesor
    25 a přidružená paměť jsou upraveny pro:
    editování aplikací; a simulování funkcí přijímače/dekodéru; a displej pro zobrazení výstupu editované aplikace a výstupu simulované funkce.
    • φ φφ φ φ φ · • φ φ φ φ φ φ φ » φφ φφφφ
    ΦΦ φφφφ • φ φ • *φφ • · • φ φφ ···· • φ · φφφ • φ · • · · · ·♦ φ·
  42. 42. Zařízení pro testování aplikace pro přijímač/dekodér, které zahrnuje pracovní stanici, vyznačující se tím, že uvedená pracovní stanice zahrnuje:
    procesor a přidruženou paměť, upravené pro:
    5 vytváření a editování aplikací; a spuštění aplikace pro její testování s použitím alespoň jednoho simulovaného komponentu přijímače/dekodéru, pro provádění simulace funkce přijímače/dekodéru, přičemž uvedená simulace je
    10 nastavitelná podle - potřeby-v závislosti na testované aplikaci.
CZ200287A 1999-07-09 2000-06-12 Zařízení a způsob pro testování softwarových aplikací CZ200287A3 (cs)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP99401744A EP1067806A1 (en) 1999-07-09 1999-07-09 Apparatus for and method of testing applications

Publications (1)

Publication Number Publication Date
CZ200287A3 true CZ200287A3 (cs) 2002-06-12

Family

ID=8242048

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ200287A CZ200287A3 (cs) 1999-07-09 2000-06-12 Zařízení a způsob pro testování softwarových aplikací

Country Status (12)

Country Link
EP (2) EP1067806A1 (cs)
JP (1) JP2003504977A (cs)
KR (1) KR20020035561A (cs)
CN (1) CN1373970A (cs)
AU (1) AU5240600A (cs)
CA (1) CA2377789A1 (cs)
CZ (1) CZ200287A3 (cs)
NO (1) NO20020025L (cs)
PL (1) PL362901A1 (cs)
TR (1) TR200200006T2 (cs)
WO (1) WO2001005162A1 (cs)
ZA (1) ZA200200269B (cs)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200532560A (en) 2003-11-13 2005-10-01 Qualcomm Inc System and method for dynamically simulating devices at a computing device
US8589142B2 (en) * 2005-06-29 2013-11-19 Qualcomm Incorporated Visual debugging system for 3D user interface program
US8385193B2 (en) 2005-10-18 2013-02-26 Qualcomm Incorporated Method and apparatus for admission control of data in a mesh network
US20070203682A1 (en) * 2006-02-28 2007-08-30 Microsoft Corporation External display simulator
KR101248821B1 (ko) * 2010-12-22 2013-04-03 주식회사 케이티 아이피티브이 단말에 이용되는 위젯을 위한 에뮬레이터 제공 시스템 및 방법
CN104866420B (zh) * 2015-04-27 2018-11-02 深圳市祈锦通信技术有限公司 一种精确记录的手机软件测试方法
JP6543819B2 (ja) * 2015-04-28 2019-07-17 日本放送協会 処理装置およびプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61216417A (ja) * 1985-03-22 1986-09-26 利昌工業株式会社 コンデンサ
US5659793A (en) * 1994-12-22 1997-08-19 Bell Atlantic Video Services, Inc. Authoring tools for multimedia application development and network delivery
US5654751A (en) * 1995-05-31 1997-08-05 Bell Atlantic Network Services, Inc. Testing jig and method of testing video using testing jig
JP2001519125A (ja) * 1997-03-21 2001-10-16 カナル プラス ソシエテ アノニム テレビジョンまたはラジオ制御システムの開発
AU740740B2 (en) * 1997-03-21 2001-11-15 Canal+ Societe Anonyme Data processing system

Also Published As

Publication number Publication date
EP1201090A1 (en) 2002-05-02
WO2001005162A1 (en) 2001-01-18
NO20020025L (no) 2002-03-11
KR20020035561A (ko) 2002-05-11
PL362901A1 (en) 2004-11-02
CA2377789A1 (en) 2001-01-18
JP2003504977A (ja) 2003-02-04
CN1373970A (zh) 2002-10-09
ZA200200269B (en) 2003-03-26
TR200200006T2 (tr) 2002-06-21
NO20020025D0 (no) 2002-01-03
AU5240600A (en) 2001-01-30
EP1067806A1 (en) 2001-01-10

Similar Documents

Publication Publication Date Title
US7039245B1 (en) Processing of digital picture data in a decoder
EP1194847A2 (en) Running and testing applications
US7167820B2 (en) Apparatus for and method of testing applications
EP1574046A1 (en) Interactive television system with partial character set generator
RU2181929C2 (ru) Извлечение секций данных из транслируемого потока данных
AU740740B2 (en) Data processing system
WO2005109865A1 (en) A method for realizing embedded digital television service platform
CZ200287A3 (cs) Zařízení a způsob pro testování softwarových aplikací
BR9910053B1 (pt) Método de processamento de dados de vídeo em um conjunto receptor/decodificador, conjunto receptor/decodificador e sistema de difusão e recepção
AU742213B2 (en) Access control system
Peng et al. Integration of applications into digital television environment
EP1067455A1 (en) Running and testing applications
Fotschl et al. Interactive applications for the multimedia home platform
CZ331799A3 (cs) Systém řízení přístupu
CZ20002999A3 (cs) Dekodér pro digitální audiovizuální vysílací systém a způsob zpracování digitálního obrazu
CZ20003254A3 (cs) Terminál pro zpracování digitálních dat a způsob jeho provozu
KR20000076406A (ko) 데이터 처리 시스템
CZ20003997A3 (cs) Způsob zpracování video dat a přijímač /dekodér
MXPA00010628A (en) Receiver/decoder and method of processing video data
CZ2000266A3 (cs) Zpracování digitálního přenosového toku dat