CZ20001257A3 - Zařízení pro zpracování digitálních audiovizuálních dat - Google Patents

Zařízení pro zpracování digitálních audiovizuálních dat Download PDF

Info

Publication number
CZ20001257A3
CZ20001257A3 CZ20001257A CZ20001257A CZ20001257A3 CZ 20001257 A3 CZ20001257 A3 CZ 20001257A3 CZ 20001257 A CZ20001257 A CZ 20001257A CZ 20001257 A CZ20001257 A CZ 20001257A CZ 20001257 A3 CZ20001257 A3 CZ 20001257A3
Authority
CZ
Czechia
Prior art keywords
virtual machine
memory
path
event
objects
Prior art date
Application number
CZ20001257A
Other languages
English (en)
Inventor
Hongtao Liao
Rui Liang Yang
Original Assignee
Canal Plus Sa
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 Plus Sa filed Critical Canal Plus Sa
Priority to CZ20001257A priority Critical patent/CZ20001257A3/cs
Publication of CZ20001257A3 publication Critical patent/CZ20001257A3/cs

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

Zařízení pro zpracování digitálních audiovizuálních dat, zejména přijímač/dekodér (2020) pro digitální televizní systém, které má alespoň jeden přidružený hardwarový operační systém (4100) sdružený sjedním nebo více hardwarovými zařízeními pro vysílání a příjem dat., přičemž zařízení dále zahrnuje systém pro zpracování dat obsahující vícecestný virtuální počítač (4250) pro paralelní zpracování zpráv, upravený kromě jiného, pro příjem zpráv o událostech, signalizovaných hardwarovým operačním systémem, a pro přidělení odpovídajícího objektu (4564) události k jedné nebo více cestám (4561) zpracování zpráv. Cesta (4561) zpracování zpráv může být pozastavena během svého vykonávání pro umožněni vykonání jiné cesty pro zpracování zpráv. Dále je navrženo zařízení pro zpracování digitálních audiovizuálníchdat, zahrnující jedno nebo více hardwarových zařízení pro vysílání a příjem dat vně zařízení, které dále zahrnuje systém pro zpracování dat, obsahující první virtuální počítač upravený, kromě jiného, pro přijímání kódu napsaného v interpretačním jazyku zavedeném přesjedno nebo více hardwarových zařízení. Virtuální počítač je upraven pro rozlišení mezi kódem napsaným v alespoň dvou interpretačních jazycích v závislosti na struktuře přijatého kódu a pro propuštění takového kódu k odpovídajícímu interpretačnímu prostředku pro interpretaci a provedení. Je navrženo též zařízení, jehož systém pro zpracování dat

Description

Oblast techniky
Předkládaný vynález se týká zařízení pro zpracování digitálních audiovizuálních dat, zejména dekodéru pro digitální televizní systém včetně datového procesoru pro paralelní zpracování zpráv.
Dosavadní stav technikv
Systém na bázi softwaru pro řízení dekodéru v digitálním televizním systému, který využívá virtuální počítač a prováděcí prostředek pro zpracování digitálních televizních dat a zavedených (stažených) aplikací, je popsán v PCT přihlášce PCT/EP97/02116. Tento systém má množství výhod ve srovnání s předtím známými systémy pro příjímače/dekodéry, zejména ve vztahu k nezávislosti aplikačních vrstev systému na hardwarových prvcích vyrobeného dekodéru, prostřednictvím využití struktury virtuálního počítače.
Systém popsaný v této přihlášce využívá principu jednosouborové struktury na bázi fronty pro řízení a zpracování událostí, které vznikají v systému. S touto strukturou na bází fronty je spojeno množství nevýhod, včetně relativně pomalé odezvy na události s vysokou prioritou a na nemožnost účinně zpracovat množství současných vstupů do systému. Jak bylo popsáno, systém obsahuje množství řadících jednotek zpracování. Ačkoliv systém může činnost těchto řadičů provádět s určitými prioritami, jakmile je spuštěn určitý proces, není možné jej změnit na jiný.
fe fefe « ·· fe · ·· ··· ·· ··♦ ·· · < ·· ·««· ···« ···* ·· · ·· «· ·«
Tyto nevýhody popisované struktury jsou obzvláště výrazné v případě, kdy přijímač/dekodér obsahuje interaktivní aplikaci. Například, neschopnost systému měnit úlohy v odezvě na prioritní příkaz, spojená s Často slouhou dobou potřebnou pro zavedení dat, může mít za následek, že systém se zabývá jednou činností bez ohledu na příkazy od uživatele pro změnu do jiného režimu.
Existuje rovněž potřeba zjednodušit strukturu řídícího programu zařízení u tohoto známého systému. Komunikace mezi prováděcím prostředkem a zařízeními hardwarové úrovně známého dekodéru je realizována prostřednictvím množství řídících programů zařízení, jejichž celková organizace je zpracována prostřednictvím správce zařízení, který řídí řazení zpráv o událostech do priorit a jejich vstupy do frontové struktury jednotek řadičů zpracování. Jak je v přihlášce diskutováno, zatímco prováděcí prostředek je zajišťován provozovatelem systému, řídící programy zařízení a správce zařízení jsou obvykle zajišťovány výrobcem dekodéru podle specifikací provozovatele systému.
V této souvislosti je termín zařízení obvykle použit pro označení zařízení rozhraní, použitého pro zpracování dat přijatých a přenášených dekodérem, jako jsou data přijatá přes inteligentní kartu nebo přes přenášený (vzduchem) datový tok a podobně.
Rozdíly v interpretaci specifikace výrobců dekodérů mohou vést na problémy, kdy například správce zařízení nerespektuje správnou klasifikaci prioritních událostí. V takovém případě bude systém fronty narušen, protože události přiváděné do filtru událostí a řadiče zpracování budou špatně identifikovány ve smyslu jejich priorit a budou nesprávně zpracovány systémem fronty.
Cílem předkládaného vynálezu je překonat shora uvedené problémy.
Podstata vynálezu
Podle prvního aspektu předkládaného vynálezu je navrženo zařízeni pro zpracování digitálních audiovizuálních dat, které má alespoň jeden přidružený hardwarový operační systém sdružený s jedním nebo více hardwarovými zařízeními pro vysílání a příjem dat, přičemž toto zařízení dále zahrnuje systém pro zpracování dat obsahující vícecestný virtuální počítač pro paralelní zpracování zpráv, upravený, kromě jiného, pro příjem zpráv o událostech, signalizovaných hardwarovým operačním systémem, a pro přidělení odpovídajícího objektu události k jedné nebo více cestám zpracování zpráv, a přičemž cesta zpracování zpráv, zahrnující objekt události, může být pozastavena během svého vykonávání pro umožnění vykonání jiné cesty pro zpracování zpráv.
Prostřednictvím použití této vícecestné architektury pro paralelní zpracování zpráv tak předkládaný vynález umožňuje systému reagovat účinně na příchod události, přijaté přes vnější rozhraní zařízení, což umožňuje rychlé zpracování vysoce prioritních událostí během dočasného pozastavení nenaléhavých procesů.
V jednom provedení vynálezu má virtuální počítač preemptívní vícecestnou architekturu, ve které je cesta pozastavena během svého provádění po vytvoření cesty s vyšší prioritou. Ačkoliv toto provedení je výhodné pro svoji reaktivitu na prioritní události, mohou být předpokládána jiná provedení, jako je provedení s časovými intervaly, ve kterém virtuální počítač přerušuje vykonávání cesty v předem stanovených periodických intervalech, aby zjistil, zda neexistuje jiná cesta, která by měla být provedena.
Výhodně virtuální počítač zahrnuje správce událostí upravený pro odezvu na zprávu o události, signalizovanou hardwarovým operačním systémem, prostřednictvím uložení objektu události do jedné nebo více cest v prioritně organizované frontě cest.
Tímto způsobem může být přiřazení priorit událostem zpracováno přímo prostřednictvím virtuálního počítače, což odstraňuje problémy známého systému, ve kterém jsou události nejprve seřazeny pro vložení do fronty pro zpracování prostřednictvím ní2koúrovňových řídících programů zařízení a správců zařízení. Jak bylo diskutováno výše, realizace řídícího programu může být různá v závislosti na výrobci. Naproti tomu v tomto výhodném provedení jsou zprávy o událostech tříděny a řazeny podle priorit prostřednictvím správce událostí uvnitř virtuálního počítače, jehož charakteristiky jsou neměnné mezi různými platformami.
Přes skutečnost, že zpracování zpráv je nyní účinně prováděno prostřednictvím virtuálního počítače, může systém rovněž zahrnovat v určitých provedeních jeden nebo více řídících programů zařízení, aby sloužily jako rozhraní mezi operačním systémem virtuálního počítače a operačním systémem, hardwarové úrovně.
Kromě zpracování událostí pocházejících z 30 hardwarového operačního systému může být správce událostí ··· · 11 rovněž uspořádán pro odezvu na zprávy o událostech, pocházející z vnitřku virtuálního počítače nebo z vysokoúrovňových aplikací.
Ve výhodných provedeních, může být podle priorit 5 rovněž řazen pořádek objektů události uvnitř cesty podle priority události a/nebo doby příchodu události. To může být doplňkem k počátečnímu přiřazení priorit, provedenému při přidělování instrukcí k cestám ve frontě cest.
V jednom provedení může virtuální počítač rovněž 10 zahrnovat směrovací tabulku obsahující informace, týkající se možných zpráv o událostech, a adresovatelnou správcem událostí pro umožnění správci událostí, aby určil cestu odpovídající přijaté zprávě o události. Tato směrovací tabulka může rovněž být použita pro určení priority objektu události uvnitř cesty. Jak by mělo být zcela zřejmé osobám v oboru znalým, mohou být rovněž použity alternativní prostředky.
Kromě správce událostí a směrovací tabulky virtuální počítač výhodně zahrnuje rozvrhovač (rozvrhující program) upravený pro ověřování cest, udržovaných v prioritně organizované front cest, a pro vydávání příkazů pro vykonání cesty mající v daném okamžiku nejvyšší prioritu. Aby byla realizována preemptivní činnost správy cest, může být správce událostí upraven pro signalizaci příchodu zprávy o události a pro řízení rozvrhovače, aby ověřil nový stav cest udržovaných ve frontě cest.
Další problém, spojený se systémem popsaným v PCT přihlášce PCT/EPS7/02116, jak bylo uvedeno výše, se týká zpracování přijatého kódu. Ačkoliv použití virtuálního β
• ·· ··· · 0 0 · · počítače a prováděcího prostředku umožňuje systému popisovanému v této přihlášce, aby byl značně nezávislý na hardwarové úrovní systému, otevřenost tohoto systému je přesto omezena kódem použitým pro napsání aplikací, které jsou umístěny na vrcholu úrovně virtuálního počítače ve známém systému. Jak je v přihlášce popsáno, kód je napsán interpretačním jazyku, který je zaváděn do přijímače z vysílacího centra a interpretován interpretem ve virtuálním počítači.
θ Přestože kód může být zvolen tak, aby byl komerčně známým a standardizovaným jazykem, mohou vznikat problémy tam, kde přijímač musí zpracovávat aplikace napsané ve dvou nebo více různých kódech. Tyto problémy mohou vznikat, například, když dekodér je nainstalován do přenosového systému, ve kterém jsou již existující dekodéry upraveny pro přijímání aplikací napsaných v kódu odlišném od kódu používaného v tomto nově instalovaném dekodéru. V takovém případě může být operátor donucen k tomu, aby danou aplikaci zaváděl dvakrát; jednou tak, jak je napsána v původním jazyku θ pro existující dekodéry, a jednou, jak je napsána v novém kódu pro nové dekodéry. Jak bude zřejmé osobám znalým, taková činnost je poměrně neefektivní, pokud se týká využití šířky pásma.
Dalším cílem předkládaného vynálezu je překonat výše popisovaný problém.
Podle druhého aspektu předkládaného vynálezu je vytvořeno zařízení pro zpracování digitálních audiovizuálních dat, zahrnující jedno nebo více hardwarových zařízení pro q vysílání a příjem dat vně zařízení, přičemž toto zařízení dále zahrnuje systém pro zpracování dat, obsahující první ·»·· · • · ·· *· ·· virtuální počítač upravený, kromě jiného, pro přijímání kódu napsaného v interpretačním jazyku zavedeném přes jedno nebo více hardwarových zařízení, přičemž uvedený virtuální počítač je upraven pro rozlišení mezi kódem napsaným v alespoň dvou interpretačních jazycích v závislosti na struktuře přijatého kódu a pro propuštění takového kódu k odpovídajícímu interpretačnímu prostředku pro interpretaci a provedení.
Prostřednictvím vytvoření virtuálního počítače, upraveného pro rozlišení mezi přijímanými kódy, společně s množstvím interpretačních prostředků pro interpretaci takových kódu předkládaný vynález odstraňuje problémy spojené se systémy dosavadního stavu techniky a umožňuje zařízení, aby zpracovávalo instrukce přicházející v různých interpretačních jazycích. Takto může být vytvořen zcela otevřený systém, jak vzhledem k vysokoúrovňových aplikacím tak i vzhledem k nízkoúrovňovým hardwarovým rozhraním.
V jednom provedení virtuální počítač rozlišuje mezi interpretačním kódem v alespoň dvou interpretačních jazycích na základě charakteristik zprávy záhlaví, sdružené s modulem kódu v jednom z jazyků, zejména může virtuální počítač rozlišovat mezi interpretačními kódy na základě přítomnosti nebo nepřítomnosti zprávy záhlaví, sdružené s modulem kódu v jenom z jazyků. Lze si představit samozřejmě i jiná provedení, ve kterých virtuální počírač rozlišuje mezi kódy 25 na základě příznaku nebo jiného kódového prvku v toku nebo na konci toku vysílaného kódu nebo ve jménu souboru modulu kódu.
Předkládaný vynález je obzvláště využitelný pro 30 situaci, ve které jeden nebo více interpretačních jazyků odpovídá objektově orientovanému jazyku. V takovém případě • ·· i · ’·· • ·· ·· ·* «4 může virtuální počítač ověřovat přítomnost zprávy záhlaví, sdružené se standardním souborem v tomto jazyku.
Za účelem provedení kódu může každý interpretační prostředek provádět kód ve spojení s odkazy na jednu nebo 5 více knihoven funkcí. Výhodně je množství interpretačních prostředků sdílena společná knihovna funkcí, aby se snížilo množství paměti, potřebné pro knihovny funkcí.
Bez ohledu na přítomnost společné knihovny funkcí, může jeden nebo více interpretačních prostředků provádět kód ve spojení s odkazy na knihovnu funkcí výhradně pro tento interpretační prostředek. To může být žádoucí, například, když určité specializované funkce jsou snáze prováděny prostřednictvím odkazu na přidělenou knihovnu funkcí. Jak bude zcela zřejmé, velikost systému může být omezena 15 prostřednictvím použití knihoven funkcí, které jsou společné oběma virtuálním počítačům, kdykoliv je to možné a/nebo výhodné.
Další problém, spojený se systémem podle PCT 20 přihlášky PCT/EP9702116, jak bylo popsáno výše, se týká manipulace s pamětí použitou systémem při zpracování příkazů. Systém, popisovaný v této přihlášce, spoléhá na správce zařízení při řízení paměťových prvků, v tomto zařízení jsou všechna volání paměti z virtuálního počítače zpracována stejně. V této přihlášce navíc není žádná diskuse o tom, jak využití paměťového prostoru může být optimalizováno správce zařízení.
Správce zařízení tvoří část vrstvy pod virtuálním počítačem a je realizován spíše výrobcem přijímače/dekodéru než provozovatelem systému. Existuje zde tudíž riziko, že • 4 44 realizace zvolená výrobcem přijímače/dekodéru nebude právě optimální ve srovnání s potřebami prvků vyšší úrovně systému, jako virtuální počítač, konstruovaných provozovatelem systému.
Je tudíž cílem předkládaného vynálezu v dalším aspektu překonat některé nebo všechny z výše popisovaných problémů a vytvořit zlepšený systém pro správu paměti uvnitř audiovizuálního zařízení.
Podle třetího aspektu předkládaného vynálezu je vytvořeno zařízení pro zpracování digitálních audiovizuálních dat, zahrnující systém pro zpracování dat, obsahující paměť, a správce paměti pro přidělování a ukládání objektů v paměti, a ve kterém je první sada objektů přidělena správcem paměti ve spojení s odkazy na sadu manipulátorů, přičemž každý manipulátor obsahuje odkaz na paměťovou adresu odpovídajícího objektu, a ve kterém druhá sada objektů je přidělena a uložena přímo v paměti bez odkazu na manipulátor.
Prostřednictvím rozdělení paměti mezi objekty, přístupné prostřednictvím manipulátoru, a objekty přímo vybíratelné, předkládaný vynález rozlišuje mezi první sadou objektů, které mohou být zpracovávány množstvím způsobů prostřednictvím správce paměti pro optimalizaci paměťového prostoru, jak bude diskutováno níže, a těmi častěji přistupovanými objekty, které mohou být adresovány přímo bez potřeby odkazu na manipulátor.
Výhodně v jednom provedení vynálezu může být objekt ve druhé sadě vybíratelný přímo prostřednictvím dalších prvků v systému pro zpracování dat bez nutnosti postupovat přes správce paměti. Správce paměti může být přesto žádán o
4 4· »4 ·· * · 4 * 4 4 4
-· 4 4 4 ·· 44 přiděleni a uložení objektů druhé sady v paměti, aby byla udržena kontrola nad obsahem paměti.
V jednom provedení mohou být manipulátory uloženy v příslušné paměti. Jsou ovšem možné jiné realizace, ve kterých jsou manipulátory uloženy v jiném paměťovém prostoru. Manipulátory mohou být uloženy dynamicky nebo ve statickém poli.
V jedné realizaci je správce paměti upraven pro přemísťování objektů první sady uvnitř paměti a pro příslušnou změnu adresového odkazu, uloženého v odpovídajícím manipulátoru. Objekty mohu být přemístěny, například, když již více objektů nemůže být do paměti uloženo. Přemístění může být prováděno, například, podle vhodného zhušťovacího algoritmu. Tímto způsobem může být optimalizován volný paměťový prostor při současném jednoduchém a efektivním sledování uložených objektů.
Aby byl umožněn přístup v každém okamžiku k objektům druhého typu, jsou tyto objekty výhodně nepřemístitelné uvnitř paměti. Jsou ovšem představitelná i jiná provedení, ve kterých by, například, přemístění objeknu druhého typy bylo sdruženo s procedurou pro změnu adresy objektu, na které se v systému nachází.
Předkládaný vynález je obzvláště použitelný pro provedení, ve kterých má virtuální počírač vícecestnou architekturu typu, popisovaného ve spojení s prvním aspektem vynálezu, ve kterém cesta může být dočasně pozastavena během svého provádění, aby bylo umožněno provedeni jiné cesty.
V takovém případě vícecestný virtuální počítač může ,
výhodné obsahovat vnitrné vytvářenou uvolňovací sběrnou * ·· • 0 · 0 0 00 000 0 · 0 _ _ 00000000000 0000 ·· 00 00 ·· 00 cestu, přičemž virtuální počítač působí pří provádění této cesty na volné objekty v paměti, které v daném okamžiku nejsou žádány. Alternativně, nebo přídavně, může provedení této uvolňovací sběrné cesty rovněž způsobit, že virtuální počítač provede přemístění objektů první sady podle zhušťovacího algoritmu, aby sloučil dohromady maximální množství volného paměťového prostoru.
Příslušný paměťový prostor může odpovídat RAM paměti systému, ačkoliv předkládaný vynález je použitelný stejně tak
IQ pro jiné paměťové komponenty, jako jsou FLASH nebo EEPROM jednotky.
Ačkoliv je předkládaný vynález obzvláště využitelný pro dekodér pro příjem a zpracování digitálních televizních systémů, mělo by být zcela zřejmé, že principy systému pro 15 zpracování dat, uvedené v této přihlášce, mohou být aplikovány rovněž na další zařízení pro manipulaci s digitálními audiovizuálními daty, jako jsou digitální videorekordéry a podobně.
V souvislosti s dekodérem pro digitální televizní přenos, mohou hardwarová zařízení dekodéru obsahovat jedno nebo všechna z následujících: MPEG demultiplexor společně s ladičem (tunerem), sériové rozhraní, paralelní rozhraní, modem a jedno nebo více zařízení pro čtení inteligentních karet.
Termín přijímač/dekodér používaný v tomto popisu může zahrnovat přijímač pro přijímání bud’ 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 může rovněž zahrnovat « fefe * fe fefe » fefe · . - fefefefe • fefe fefefefe fefefefe • fefefe ·· fefe fefe fefe fefe dekodér pro dekódováni 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 (STB), nebo takový dekodér, který funguje v kombinaci s fyzicky samostatným přijímačem, nebo takový dekodér, který zahrnuje přídavné funkce, jako je webový prohlížeč, videorekordér nebo televize.
Zde použitý termín digitální vysílací systém zahrnuje jakýkoliv vysílací systém pro vysílání nebo přenos, například, primárně audiovizuálních nebo multimediálních dat.
Ačkoliv je předkládaný vynález zejména využitelný pro přenosový (vzduchem) digitální televizní systém, může být tento vynález rovněž použitelný pro pevnou telekomunikační 15 síť pro multimediální internetovské aplikace, pro uzavřený televizní okruh a podobně.
Zde použitý termín digitální televizní systém zahrnuje například jakýkoliv satelitní, pozemní, kabelový nebo jiný systém.
Termín MPEG označuje standardy datového přenosu, vyvinuté Mezinárodní Standardizační Organizací v pracovní skupině Expertní skupina pro film a zejména, ale ne výhradně, standard MPEG-2 vyvinutý pro digitální televizní aplikace a definovaný v dokumentech ISO 13818-1, ISO 13818-2, ISO 13818-3 a ISO 13818-4. V kontextu s touto přihláškou předkládaného vynálezu tento termín zahrnuje všechny varianty, modifikace nebo rozvinutí MPEG formátů použitelných pro oblast digitálního datového přenosu.
• 00
0 00 • · · 0 0· • 0 0 0000 00
0 0 · 0· 0« * 0 0 00
V následujícím popisu budou pouze prostřednictvím příkladu popsána výhodná provedení předkládaného vynálezu ve spojení s odkazy na připojené výkresy.
Přehled obrázků na výkresech
Obr.l znázorňuje celkový pohled na digitální televizní systém;
Obr.2 znázorňuje prvky interaktivního systému uvnitř digitálního televizního systému podle obr. 1;
Obr.3 znázorňuje architekturu systému na bázi softwaru, který je realizován uvnitř přijímače/dekodéru podle předkládaného vynálezu;
Obr.4 znázorňuje architekturu virtuálního počítače uvnitř systému podle obr. 3, obsahující zejména sadu správce událostí, interpretační sadu a paměťovou sadu;
Obr.5 znázorňuje strukturu interpreteru použitého ve virtuálním počítači;
Obr. 6 znázorňuje cestu prováděnou uvnitř virtuálního počítače;
Obr.7 znázorňuje činnost správce událostí a rozvrhovače virtuálního počítače; a
Obr. 8 znázorňuje správu paměťové oblasti prostřednictvím virtuálního počítače.
Φ 00 • 0 ·· • 0 *·0 0 0 0 0 0 00 0 0 00 0000 000 0 0*·· 0· 00 00 0> 00
Příklady provedení vynálezu
Digitální televizní síť
Obr. 1 znázorňuje obecně digitální televizní systém 5 1000, podle předkládaného vynálezu. Tento systém zahrnuje většinou běžný digitální televizní systém 2000, 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 komprímátor 2002 ve vysílacím centru přijímá tok digitálního signálu (obvykle tok video signálů). Komprímátor 2002 je spojen s multiplexorem a kodérem 2004 prostřednictvím spojení 2006.
Multiplexor 2004 přijímá množství dalších vstupních signálů, sestavuje jeden nebo více vysílacích toků a vysílá komprimované digitální signály do vysílače 2008 vysílacího centra přes spojení 2010, 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č 2008 vysílá elektromagnetické signály přes vzestupné spojení 2012 směrem k satelitnímu odpovídači 2014, kde jsou tyto signály elektronicky zpracovány a vysílány přes teoretické sestupné spojení 2016 do pozemního přijímače 2018, běžně ve formě parabolické antény vlastněné nebo pronajímané koncovým uživatelem. Signály přijímané přijímačem 2018 jsou vysílány do integrovaného přijímače/dekodéru 2020 vlastněného nebo pronajímaného koncovým uživatelem a spojeného s televizním zařízením 2022 koncového uživatele. Přijímač/dekodér 2020 dekóduje komprimovaný MPEG-2 signál na televizní signál pro televizní zařízení 2022.
Systém 3000 podmíněného přístupu je spojen s ,
multiplexorem 2004 a přijímačem/dekodérem 2020 a je umístěn • fefe • · ·· • · · * · · · · » · fe· · • fefe · · · · fe··· ···· fefe fefe ·· ·· fefe čá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 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 2020. S použitím dekodéru 2020 a inteligentní karty může koncový uživatel nakupovat vysílané událostí buď v módu předplacení nebo v módu platby za shlédnutí.
Interaktivní systém uvnitř digitální televizní sítě
S multiolexorem 2004 a přijímačem/dekodérem 2020 je 15 rovněž spojen interaktivní systém 4000, který je opět umístěn částečně ve vysílacím centru a částečně v dekodéru a který umožňuje koncovému uživateli interagovat s různými aplikacemi přes modemový zpětný kanál 4002.
2o Obr. 2 znázorňuje obecnou architekturu interaktivního televizního systému 4000 zahrnujícího Čtyři hlavní prvky:
1. Tvůrčí nástroj 4004 ve vysílacím centru nebo kdekoliv jinde pro umožnění poskytovateli vysílání vytvářet, vyvíjet, ladit a testovat aplikace.
2. Aplikační a datový obslužný kanál 4006 ve vysílacím centru, spojený s tvůrčím nástrojem 4004 pro umožnění poskytovateli vysílání připravovat, ověřovat a formátovat aplikace a data pro dodání do multiplexoru a kodéru 2004 pro začlenění do MPEG-2 transportního datového • 00 • ··
0 · 0 0 0 0 »00 0 0 φ ·0 0000 0 0 0 0 • 000 00 00 00 ·0 ·» toku (obvykle jeho privátní části), aby byla vysílána ke koncovému uživateli.
3. Systém 4008 pro zpracování dat v přijímači/dekodéru pro přijímání a zpracovávání aplikací a 5 dat a pro správu komunikace s dalšími prvky interaktivního systému a s hardwarovými prvky přijímače/dekodéru, tento systém 4008 zahrnuje virtuální počítač s prováděcím prostředkem (RTE), realizovaný jako proveditelný kód instalovaný v přijímači/dekodéru.
4. Modemový zpětný kanál 4002 mezi přijímačem/dekodérem 2020 a aplikačním a datovým obslužným kanálem 4006 pro umožnění signálům instruujícím tento aplikační a datový obslužný kanál 4006 zavádět data a aplikace do MPEG-2 transportního datového toku na žádost 15 koncového uživatele.
Přijímač/dekodér 2020 obsahuje množství zařízení pro komunikaci s vnějšími zařízeními uvnitř interaktivního systému, jako ladič (tuner) pro ladění přijímače, MPEG
2o demultiplexor pro demultiplexing MPEG signálu, sériové rozhraní, paralelní rozhraní, modem a jedno nebo dvě kartová zařízení upravená pro čtení, například, kreditních karet nebo účastnických (předplatitelských) inteligentních karet dodávaných se systémem. Vlastnosti takovýchto zařízení jsou velmi dobře známé v oblasti digitálních televizních systémů a nebudou v tomto popisu podrobně rozebírány.
Podobně jsou osobám v oboru znalým zcela zřejmé druhy interaktivních aplikací, které mohu být vytvářeny (home banking, teleshopping, zavádění počítačového softwaru a podobně), takže v tomto popisu rovněž nebudou podrobně ·· •t n ♦••••••♦tet i Z ···· ·· ·» *· ·· ·· popisovány. Ačkoliv architektura pro systém dekodéru, jak je popsána níže, je obzvláště vhodná pro interaktivní aplikace, mělo by být zcela zřejmé, že popisovaná architektura může být použita v jednodušších ne-ínteraktivních digitálních televizních systémech, jako je zcela běžný placený televizní systém.
Architektura systému dekodéru
Z obr. 3, na kterém je znázorněna architektura systému uvnitř přijímače/dekodéru, je dobře patrné, že je použito vrstvové architektury. První vrstva 4100 reprezentuje operační systém hardwaru přijímače/dekodéru. To je systém pracující v reálném čase, zvolený výrobcem pro řízení hardwarových prvků přijímače/dekodéru. Systém pracující v reálném čase má relativně rychlou časovou odezvu, aby byl schopen správně synchronizovat hardwarové operace. Zprávy událostí jsou předávány mezi touto vrstvou a prostřední vrstvou 4200 aplikačního programového vybavení bezprostředně výše.
Systém 4008 pro zpracování dat je umístěn na vrcholu hardwarového operačního systému a zahrnuje vrstvu aplikačního programového vybavení a aplikační (nebo přesněji vrstvu aplikačního rozhraní) vrstvu 4300.
Vrstva aplikačního programového vybavení je napsána v jazyku, jako je C ANSI, a zahrnuje prvky virtuálního počítače 4250 a množství rozhraní 4260, včetně grafického rozhraní 4261, rozhraní 4262 paměti FLASH/PROM, protokolového rozhraní 4263 a rozhraní 4264 zařízení.
444« 44 • «444 4
44 • * 4 ·· 4»
Jako u systému podle patentové přihlášky
PCT/EP97/02116, popisovaného detailněji v úvodu, předkládaný vynález využívá virtuální počítač za účelem zajištění nezávislosti mezi aplikacemi vyšší úrovně a operačním systémem nižší úrovně, realizovaným výrobcem.
Rozhraní 4260 zajišťují propojení mezi operacemi virtuálního počítače a operačním systémem první vrstvy 4100 a rovněž obsahují množství aplikačních modulů prostřední vrstvy, které lze mnohem snáze vykonávat na této úrovni.
Aplikační vrstva 4300 (API) zahrnuje množství vysokoúrovňových sad 4310 - 4314, napsaných v objektově orientovaném interpretačním jazyku, jako je Java. Tyto sady zajišťují rozhraní mezi aplikacemi, vytvořenými poskytovatelem služby (interaktivní programový průvodce, teleshopping, internetovský vyhledávač a podobně), a virtuálním počítačem systému. Příklady takových aplikací jsou uvedeny níže.
Spodní úroveň (první vrstva) OS je obvykle začleněna 20 v hardwarových komponentech dekodéru, ačkoliv v některých realizacích může být tato spodní vrstva OS zaváděna (stahována). Programové sady vrstvy aplikačního programového vybavení a vrstvy aplikačního rozhraní mohou být zaváděny do RAM nebo FLASH paměti dekodéru z přenášeného vysílání.
Alternativně některé nebo všechny prvky vrstvy aplikačního programového vybavení nebo vrstvy aplikačního rozhraní mohou být uloženy v ROM nebo (pokud je přítomná) FLASH paměti dekodéru. Jak by mělo být zcela zřejmé, fyzická organizace paměťových prvků dekodéru je odlišná od logické organizace
3Q paměti.
»· • · · ♦· * to « to ·· toto
Vrstva aplikačního rozhraní
Pokud se týká vrstvy 43CC aplikačního rozhraní, která je znázorněna na obr. 3, a jak je popsáno výše, jsou programové sady v této vrstvě napsány v objektově orientovaném jazyku, jako je Java. Každá sada definuje řadu knihoven tříd, volaných během činnosti systému. V předkládaném systému jsou instalovány následující sady:
Sada 4310 Lang/Util. Tato sada definuje třídy potřebné pro manipulaci s objekty prostřednictvím virtuálního počítače. Tyto knihovny tříd obvykle tvoří část standardní knihovny spojené se zvoleným, objektově orientovaným jazykem.
Sada 4311 MHEG-5. Tato sada definuje třídy sdružené s manipulací grafických objektů na televizní obrazovce. Takové objekty se odlišují od audiovizuálních dat a mohou tvořit, například, identifikátory kanálů nebo text kladený přes zobrazené obrazy. Definice tříd uvnitř této sady by měla respektovat MHEG-5 normy definované standardy ETS 300777-3 a ISO/ISE 13522-5 (a standardem ISO/ISE 13522-6 v případě systému realizovaném v jazyku Java).
Sada 4312 nástrojů. Tato sada obsahuje třídy použité pro zavádění a dekomprimování informací a rovněž třídy spojené se správou systémových souborů a paměti uvnitř přijímače/dekodéru a tříd sdružené s připojením na internet a podobně.
Sada 4313 zařízení. Tatc sada definuje třídy potřebné pro správu periferních zařízení připojených k přijímači/dekodéru, jak jsou diskutována výše a která zahrnují modem, zařízení pro čtení inteligentních karet, ladič MPEG toku a podobně.
• ·· • » · • 0 0 0 0 0 ·0 0 » · 0 0 000 «· 00 00 Φ0
Sada 4314 služeb. Tato sada definuje třídy potřebné pro implementaci vyvolání interaktivních aplikací vyšší úrovně, jako je správa data na kreditní kartě a podobně.
Sada 4315 DSMCC-UU. Tato sada realizuje protokoly 5 potřebné pro komunikaci mezi klientem a obslužným kanálem pro vyhledávání a čtení datových souborů. Realizace této sady by měla respektovat normu ISO/IEC 13818-6 a direktivy definované v DAVIC část 9.
Další vrstva interaktivních aplikací, napsaných poskytovatelem služby a zaváděných během přenosu, jako u běžných systémů, bude umístěna přes tuto aplikační vrstvu programových sad, definovaných výše. V závislosti na aplikacích, které mají být zavedeny, mohou být některé z hora uvedených sad vypuštěny. Například, pokud poskytovatel služby není určen pro poskytování společné cesty pro čtení dat, může být z finálního systému vypuštěna sada DSMCC-UU.
Sady aplikační vrstvy 4300 vytvářejí knihovny tříd pro prostředí objektově orientovaného programování. Chování
2Q jejich tříd bude závislé na zvoleném jazyku. V případě použití jazyku Java, například, bude využito jedné průvodní struktury tříd.
Prostřední vrstva rozhraní aplikačního programového vybavení
Jak je znázorněno, vrstva rozhraní aplikačního programového vybavení je sestavena z čtyř modulů a to grafického modulu 4261, modulu 4262 správy paměťových souborů, protokolového modulu 4263 a správce zařízení 4264.
Ačkoliv moduly v této úrovni jsou popisovány jako moduly • 44 • 4· •4·· 44 44 «4 44 44 rozhraní, jejich funkcí je vytvořit přilepenou vrstvu pro implementaci programových sad aplikačního rozhraní a pro činnost virtuálního počítače obecně.
Grafický modul 4261, například, zajišťuje vytváření a 5 správu grafických objektu. Žádá spodní úroveň OS o zobrazení základních grafických tvarů, jako jsou jednotlivé body, čáry, obdélníky a podobně. Implementace tohoto modulu závisí na grafických možnostech spodní vrstvy OS výrobce. V některých provedeních komplementárně k sadě 4311 MHEG-5 mohou být tyto funkce účinněji vykonávány na této kódové úrovni, než na vyšší kódové úrovni zvolené pro aplikační vrstvu výše.
Podobným způsobem zahrnuje modul 4262 správy paměťových souborů příkazy spodní úrovně souborů pro
Čtení/zápis, sdružené s paměťovými komponenty systému.
Obvykle hardwarový operační systém obsahuje příkazy potřebné pouze pro čtení/zápis úseku nebo strany uvnitř paměťového komponentu. Jako u grafického modulu 4261 umožňuje tento modul, aby do systému byla účinně zavedena sada jednodušších aplikací nižší úrovně.
Protokolový modul 4263 (modul pro správu protokolu) definuje knihovnu komunikačních protokolů, které mohou být volány při komunikacích přes, například, TCP/IP vrstvy dekodéru.
Správce 4264 zařízení je mírně odlišný od ostatních modulů v této vrstvě tím, že zajišťuje propojení nebo rozhraní mezi hardwarovým operačním systémem a vrstvami výše, včetně ostatních modulů v této vrstvě rozhraní aplikačního programového vybavení a včetně virtuálního počítače. Příkazy nebo zprávy událostí, které jsou přijímány/vysílány do ·· * · ·· hardwarové spodní vrstvy OS z virtuálního počítače, například, jsou nevyhnutelně předávány prostřednictvím správce zařízení pro konverzi podle specifikací rozhraní mezi těmito dvěma úrovněmi.
Popis virtuálního počítače
Ve spojení s odkazy na obr. 4 bude nyní popsána struktura virtuálního počítače 4250, použitého v systému ]_0 podle předkládaného vynálezu. Virtuální počítač, použitý v předkládaném vynálezu, je preemptivní počítače vícecestného typu. Obecné charakteristiky takového počítače jsou známé v jiných souvislostech mimo oblasti audiovizuální techniky a digitální televize, přičemž následující popis se zaměří právě na tyto oblasti, které jsou pro předkládaný vynález nej důležitější.
Virtuální počítač je sestaven z množství prvků, které spolu interagují, jak je zhruba znázorněno na obr. 4.
Rozvrhovač 4270, sestavený ze služby 4271 správy cest a služby 4272 správy sledování, tvoří jádro vícecestneho počítače. Rozvrhovač 4270 přikazuje provádění cest vytvářených aplikacemi vně virtuálního počítače a cest vytvářených samotných virtuálním počítačem (například uvolňovací sběrná cesta, jak je diskutováno níže).
Správce 4273 událostí manipuluje se směrovací tabulkou událostí a se seznamy událostí, přidělovaných cestami, a centralizuje odbavování zpracování událostí.
Správce 4274 paměti zajišťuje přidělování a 30 uvolňování paměťových zón uvnitř paměti systému a rovněž .·»· ·· ·* « ** ·* zajišťuje odstraňování neoznačených objektů z paměti (inventarizace volných míst - uvolňovací sběr).
Správce 4275 tříd mění třídy aplikačního kódu zaváděného v přenášeném signálu, přičemž interaguje se správcem 4280 zabezpečení pro ověření integrity zaváděného kódu a se správcem 4276 souborů, který implementuje aplikace.
Správce 4276 souborů provádí implementaci systémových souborů a spravuje mechanismus zavádění interaktivních aplikací a dat.
Správce 4280 zabezpečení spravuje úroveň přístupu, povolenou zaváděným aplikacím, přičemž některé aplikace mají ve vztahu k systémovým souborům možnost provádět více operací než jiné.
Interpreter 4277, zahrnující službu 4278 interpretace slabikového kódu a službu 4279 interpretace m-kódu, spravuje interpretaci aplikací, napsaných v těchto dvou kódech, přičemž slabikový (bytový) kód je spojen s aplikacemi v jazyku Java a m-kód je jméno dané autorizovanému kódu, vyvinutému přihlašovatelem přihlášky. Jak bude diskutováno níže, mohou být přidány další interpretační služby, pokud je to žádoucí.
Činnost a implementace správce tříd, správce souborů a správce zabezpečení mohou být zcela běžné. Popis se nyní zaměří na činnost interpretem, rozvrhovače, správce událostí a správce paměti.
Interpreter
Ve spojení s odkazy na obr. 5 bude v následujícím popisu popsána činnost interpreteru 4277 použitého v • ·· • · · « · ···· ·· provedení podle předkládaného vynálezu. Jak je diskutováno v úvodu, nevýhodou běžných operačních systémů, použitých v dekodérech navrhovaných až doposud, byla jejich závislost na jednom typu kódu pro vysokoúrovňové aplikace. Ačkoliv zvolený kód může být komerčně dostupným a široce známým aplikačním kódem, mohou přesto vznikat problémy v tom případě, kdy je potřebné udržovat oblast s mnoha dekodéry využívajícími různé aplikace, napsané v množství kódů. Interpreter předkládaného systému umožňuje interpretaci množství typů kódů.
Jak je znázorněno, soubory, přicházející do systému, ať již třídy slabikového kódu nebo moduly m-kódu, jsou vyhodnocovány správcem 4500 modulů tříd podle struktury souboru, takže aplikační kód dodávaný do intepreteru 451Q má 15 indikaci o svém formátu. V případě aplikace ve slabikovém kódu, například, bude mít zavedený soubor třídy charakteristické identifikační záhlaví o délce 4 osmibitových slabik, po kterém následuje číslo verze, rovněž o délce 4 osmibitových slabik. Interpreter může rozlišovat mezi kódy na
0 základě přítomnosti nebo nepřítomnosti tohoto záhlaví slabikového kódu.
V jiných provedeních mohou být využity jiné charakteristiky typů kódů pro rozlišení mezi jakýmkoliv množstvím aplikačních jazyků, jako je například jméno 25 souboru.
V závislosti na výsledku indikátoru formátu, jsou instrukce slabikového kódu posílány do interpreteru 4278 slabikového kódu, kde jsou provedeny ve spojení s odkazy na knihovnu 4520 funkcí, sdruženou s instrukcemi slabikového kódu, jak je běžné v případě instrukcí interpretačního kódu.
«· • ·· ···»
Knihovna funkcí instrukcí ve strojovém kódu je definována ve virtuálním počítači.
V případě instrukcí v m-kódu, jsou tyto instrukce předávány do interpreteru 4279 m-kódu. Většina z instrukcí v m-kódu může být implementována a vykonána ve spojení s odkazy na knihovnu 4520 funkcí, sdruženou s instrukcemi slabikového kódu, a interpreter 4279 m-kódu volá knihovnu 4520, aby vykonal takovéto funkce v m-kódu, kdykoliv je to možné.
Za určitých okolností mohou ale instrukce v m-kódu potřebovat specifické prováděcí funkce, které není možné snadno provádět ve spojení s odkazy na společnou knihovnu funkcí. V takových případech lze předpokládat, že instrukce budou realizovány ve spojení s odkazy na samostatnou knihovnu
4530 funkcí.
Rozvrhovač a správce události
Nyní bude diskutována činnost rozvrhovače 4270 a správce 4273 událostí ve spojení s odkazy na obr. 6, který znázorňuje živost cesty uvnitř systému, a obr. 7, který znázorňuje oznámení o události cestě prostřednictvím systému v odezvě na událost signalizovanou prováděcím operačním systémem spodní úrovně.
Popis se bude soustředit na zpracování vytvoření , . . . , cesty, která reprezentuje prováděcí souvislosti, zejmena vyplývající ze signalizované události. Mělo by být zcela zřejmé, že cesta může být vytvořena inicializací příkazu, vytvořeného aplikací vyšší úrovně, který má být poslán do hardwarové spodní úrovně OS, a prostřednictvím vrácení tohoto • 00
00 ·« «Λ /“ ΖΌ *000 0* • 0 00 příkazu. Cesta může být rovněž vytvořena uvnitř samotného virtuálního počítače, například uvolňovací sběrná cesta.
Jak bylo zmiňováno výše, předkládané provedení spoléhá na virtuální počítač s preemptivním zpracováním cest, jako je tomu například u systému na bázi jazyku Java. V takovém počítači je vytvářeno množství cest a ty jsou ukládány ve frontě cest. Rozvrhovač kontroluje frontu cest a volí cestu s nejvyšší prioritou, která má být vykonána. Normálně ta cesta, která je vykonávána, má nejvyšší prioritu, ale taková cesta může být přerušena cestou s ještě vyšší prioritou, jako u běžného systému s preemptivními cestami. V takovém případě je stav přerušené cesty uložen a cesta je opětovně aktivována, jakmile je opětovně zvolena, aby byla provedena.
V určitých případech cesta sama může obsahovat tak zvanou vytěžovací instrukci, která způsobí, že rozvrhovač pozastaví provádění cesty a zkontroluje frontu cest, zda neobsahuje nějakou další cestu pro provedení. Vytěžovací instrukce může být přítomná ve vnitřně vytvářených úlohách s nízkou prioritou, jako je funkce inventarizace volných míst, prováděná systémem za účelem odstranění nepoužívaných objektů z paměti systému.
Tyto aspekty jsou znázorněny na obr. 6. Vytvoření 25 4550 cesty způsobuje, že vznikne cesta uložená ve frontě 4551 cest. Tato nově vytvořená cesta má stav 4 552 init. Pokud žádná další cesta nemá vyšší prioritu, je cesta provedena prostřednictvím instrukce start () a bude mít stav 4553 provádění. Pokud je v cestě provedena instrukce stop(), stává se cesta pasivní, jak je naznačeno stavem 4554. Cesta může stejně tak dosáhnout tohoto stavu, pokud je zcela
Z l * 00 * »· v··· ·· 00 0· ·· 0* dokončena, jako je naznačeno inszrukcí run{}fini. Pokud v samotné cestě dojde k instrukci yield() (vytěžovací instrukce), nebo vně cesty je vykonána instrukce suspendO (pozasuavovací instrukce), je cesta pozastavena a uvedena do stavu 4556 neprovádění.
Ve spojení s odkazy na obr. 7 bude nyní popsána interakce mezi operačním systémem spodní úrovně 4100, správcem 4273 událostí a rozvrhovačem 4270. Prvotní události, signalizované prováděcím operačním systémem spodní vrstvy ° 4100, jsou předávány přes správce 4313 zařízení do správce
4273 událostí. Ve výhodném provedení určité přiřazení priorit přijatých událostí může být provedeno správcem 4313 zařízení a/nebo systémem souběžného zpracování v operačním systému spodní vrstvy 4100. Jak ale bude zcela zřejmé, jedna z výhod předkládaného systému podle vynálezu spočívá ve skutečnosti, že, na rozdíl od systému popisovanému v PCT/EP97/02116, zpracování událostí je spravováno uvnitř virtuálního počítače 4250, což umožňuje tvůrci prostřední vrstvy aplikačního programového vybavení dosáhnout úplné kontroly nad procedurou zpracování událostí.
V předkládaném provedení jsou události, posílané přes správce 4313 zařízení, klasifikovány prostřednictvím jejich kódu a jejich typu. Kód identifikuje charakteristiky události, například, v případě události, vytvořené 5 prostřednictvím činnosti dálkového ovladače sdruženého s dekodérem, může kód identifikovaz stlačené tlačítko. Typ identifikuje původ události, například dálkový ovladač.
Při přijeti signálu o události správce 4273 událostí q využívá směrovací tabulku 4560 pro určení priority události a cílového místa cesty a vkládá odpovídající objekty 4564 do
Λ η ζο * 44 » 4 44 4 4 4
44 * 4 4 4 444 • ♦• 4 44 ·· · · 44 jedné nebo více cest 4561, umístěných uvnitř fronty cest 4562 na bázi priorit. Jeden nebo více objektů 4564 události může být uloženo uvnitř dané cesty, jak je reprezentováno cestou 4563. Objekty 4564 událostí jsou ukládány uvnitř cesty podle jejich prioritní klasifikace. Objekty cest uvnitř cesty se stejnou prioritou jsou tříděny podle jejich doby příchodu (FIFO).
Při přijetí události správce 4273 událostí signalizuje její příchod rozvrhovači 4270, který potom prověřuje frontu události, aby zjistil, zda cesta má vyšší prioritu než cesta, která je právě prováděna. Pokud tomu tak je, je právě prováděná cesta potom pozastavena, jak je popisováno výše, a je prováděna ncvá cesta. Tímto způsobem je realizován systém s preemptivním zpracováním cest.
Tímto způsobem výhodné provedení vynálezu umožňuje efektivní zpracování cest v dekodéru tak, aby systému bylo umožněno rychle reagovat na volání událostí, dokonce i v případě, kdy systém právě zpracovává existující předcházející událost. Tím jsou překonány nevýhody známého systému s jednou frontou pro zpracování.
Ačkoliv výhodné provedení bylo právě popsáno ve spojení s preemptivním systémem, ve kterém příchod události do správce událostí způsobuje signalizaci do rozvrhovače, aby přerušil provádění cesty, jsou možné i jiné realizace.
Například v systému s časovými incervaly může rozvrhovač periodicky přerušovat vykonávání cesty, aby ověřoval stav fronty cest. Alternativně může být rozvrhovač upraven pro přerušení provádění cesty, aby ověřoval frontu cest po každé instrukci, ve které je cesta realizována.
• · ·* • · · · · · » > 0 0 · • 00 0 00 00 «· 0* 00
Správce paměti
Jak je zcela zřejmé ve spojení s přijímačem/dekodérem, správa paměťových oblastí uvnitř systému je obzvláště důležitá, protože paměťový prostor je relativně omezený ve srovnání například s PC nebo jinou platformou na bá2i pevného disku. V následujícím popisu paměťová oblast odpovídá paměťovému prostoru uvnitř RAM přijímače/dekodéru. Jak je ale zmiňováno výše, vztah mezi fyzikou a logickou organizací paměti není přesný a paměťová oblast, popisovaná níže, může být umístěna v nebo sdílena mezi dalšími fyzickými paměťovými zařízeními, jako je FLASH paměť, EEPROM paměť a podobně, uvnitř přijímače/dekodéru.
Obr. 8 znázorňuje organizaci dostupné paměti v systému. Mělo by být jasně patrné, že paměťový prostor je sdílený mezi oblastí 4600 manipulátorů, oblastí 4610 přemístitelných objektů a oblastí 4620 nepřemístitelných objektů.
Každý objekt v oblasti 4610 je identifikován prostřednictvím odpovídajícího manipulátoru uloženého v oblasti 4600. Vztah mezi manipulátorem a jemu odpovídajícím objektem je spravován programovou sadou správce 4274 paměti (viz obr. 4), která rovněž řídí přístup do oblasti. Všechna volání objektů v oblasti jsou prováděna prostřednictvím jejich manipulátorů. Hranice mezi oblastmi 4600 a 4610 je posunutelná. Když má být v paměti uložen nový objekt, je vytvořen manipulátor v oblasti 4600 obsahující ukazatel na adresu objektu uvnitř oblasti 4610. V takovém případě bude seznam manipulátorů zvětšen o jednu, manipulátory jsou organizovány v seznamu vytvořeném v oblasti pro umožnění zhuštění prostřednictvím správce paměti.
» fe • · fe fe
Λ j**S • fefe » fe fefe fe • fefefe fefe
Objekty budou umísťovány v oblasti podle potřeby a podle dostupného prostoru. V případě, že je žádáno umístění objektu, který potřebuje větší prostor v jednom bloku, nez je právě dostupný prostor, bude potřebné zhustit objekty v paměti již umístěné. Zhuštění objektů v paměti může být prováděno podle jakéhokoliv známého zhušťovacího algoritmu, například kopírovacího-zhušťovacího algoritmu. V předkládaném provedení je použit zhušťovací algoritmus podle Marka Sweepa. Aby se zhustil prostor, jsou objekty přesouvány v oblasti
4160 tak, aby se objekty seskupily blíže k sobě a vyloučily se jakékoliv prostory mezi sousedními objekty. Tímto způsobem je veškerý volný paměťový prostor seskupen dohromady v bloku tak, aby byl přidělen pro nový objekt v oblasti 4610.
Jak bylo zmiňováno výše, programový soubor správce paměti udržuje vztah mezi manipulátory v oblasti 4600 a objekty v oblasti 4610 a nové adresy objektů v oblasti budou aktualizovány do ekvivalentních manipulátorů pro budoucí přístup.
Zatímco použití manipulátorů pro přístup k určitým objektům umožňuje systému, aby optimalizoval paměťový prostor v oblasti, proces zvětšuje dobu potřebnou pro přístup k takovýmto objektům, protože je vždy nezbytné nejprve vyhledat manipulátor, aby bylo možné vyhledat adresu objektu. V určitých situacích a pro objekty odpovídající určitým určeným událostem může být požadován mnohem rychlejší časový přístup.
V takovém případě mohou být objekty umístěny v oblasti 4620 nepřemístitelných objektů. Adresy takových objektů jsou pevné uvnitř této oblasti. Není zde tudíž
3Q potřebné vytvářet manipulátor a objekty jsou přímo používány systémem, čímž se zjednodušuje přístupová procedura pro tyto 'l Ί
Ji • toto • ·♦ • * * 1 to to · I • ·· ··· · «·»« ··· »· ·· ·· ·· ·· speciální objekty. Opět, jako u hranice mezi oblastmi 4600 a 4610, bude hranice mezi oblastmi 4620 a 4610 posouvána v závislosti na informacích uložených v oblasti 4620.
V případě, že, například, nepřemístitelný objekt má 5 být umístěn v oblasti 4620 a vzhledem k uspořádání přemístitelných objektů v oblasti 4610 zde není dostatek prostoru, může být provedeno zhuštění přemístitelných objektů, jak bylo popisováno výše. Jakmile jsou objekty v oblasti přeorganizovány tak, aby uvolnily maximální množství prostoru, může pak být umožněno umístění nepřemístitelného bloku v oblasti 4620.
Volba které z objektů jsou přemístitelné a které z objektů jsou nepřemístitelné, je v kompetenci rozhodování konstruktéra systému. Například objekty, odpovídající systému, mohou být voleny jako nepřemístitelné vzhledem k důležitosti těchto objektů, zatímco objekty vysokoúrovňových aplikací mohou být přemístitelné. V určitých případech mohou být přemístitelné objekty dočasně zajištěny na místě tak, aby byly považovány za nepřemístitelné objekty.
Aby se eliminovaly nežádoucí objekty z paměťové oblasti, systém může obsahovat rovněž tak zvanou inventarizaci volných paměťových míst (uvolňovací sběr). To .zahrnuje vytvoření speciální uvolňovací sběrné cesty s nejnižší prioritou, která bude adresována rozvrhovačem v případě, Že žádné další cesty právě nejsou uloženy ve frontě. Při provádění budou uvolněny všechny přemístitelné objekty aktuálně umístěné v oblasti, které právě nejsou v daném okamžiku označeny. Uvolňovací sběrná cesta může rovněž
3q provést zhuštění všech ostatních přemístitelných objektů tak, jak bylo popisováno výše.
4 44 i η Já
4444 44 4·
44
Vytvoření uvolňovací sběrné cesty je známé ve spojení s jinými systémy paralelního zpracování zpráv, používanými v jiných aplikacích mimo oblast digitálního televizního systému, a nebude v tomto popisu dále podrobněji diskutováno.
mělo by ale být zcela zřejmé, že použití uvolňovací sběrné procedury v kombinaci s dalšími technikami správce paměti, jak bylo popisováno výše, poskytuje v předkládaných souvislostech obzvláštní výhody.

Claims (5)

  1. PATENTOVÉ NÁROKY
    1. Zařízení pro zpracování digitálních audiovizuálních dat, které má alespoň jeden přidružený hardwarový operační systém sdružený s jedním nebo více hardwarovými zařízeními 5 pro vysílaní a příjem dat, vyznačující se tím, že dále zahrnuje systém pro zpracování dat obsahující vícecestný virtuální počítač pro paralelní zpracování zpráv, upravený, kromě jiného, pro příjem zpráv c událostech, signalizovaných hardwarovým operačním systémem, a pro přidělení odpovídajícího objektu události k jedné nebo více cestám zpracování zpráv, a přičemž cesia zpracování zpráv může být pozastavena během svého vykonávaní pro umožnění vykonání jiné cesty pro zpracování zpráv..
  2. 2. Zařízení podle nároku 1, vyznačující se tím, že virtuální počítač má preemptivní vícecestnou architekturu, ve které je cesta pozastavena během svého provádění prostřednictvím vytvoření cesty s vyšší prioritou.
  3. 3. Zařízení podle nároku 1 nebo 2, vyznačující se tím, že virtuální počítač zahrnuje správce událostí, upravený pro odezvu na zprávu o události, signalizovanou hardwarovým operačním systémem prostřednictvím uložení objektu události v jedné nebo více cestách v prioritně organizované frontě cest.
    25 4. Zařízení podle nároku 3, vyznačující se tím, že zprávy o událostech, posílané z hardwarového operačního systému do správce událostí, jsou nejprve zpracovány jedním nebo více správci zařízení uvnitř systému pro zpracování dat.
    5. Zařízení podle nároku 3 nebo 4, vyznačující se tím, že
    30 správce událostí je navíc upraven pro odezvu na zprávu o
  4. 4 9 * · ♦ · · • ·· 0 · ··
    Μ·* 0* «0 ·· události, vytvořenou uvnitř virtuálního počítače nebo přijatou z vysokoúrovňová aplikace uvnitř nebo vně systému pro zpracování dat.
    6. Zařízení podle kteréhokoliv z nároků 3 až 5, vyznačující se tun, ze správce událostí klasifikuje objekty událostí uvnitř cesty podle priority zprávy o události a/nebo doby příchodu zprávy o události.
    7. Zařízení podle kteréhokoliv z nároků 3 až 6,
    2_q vyznačující se tím, že virtuální počítač dále zahrnuje směrovací tabulku obsahující informace týkající se možných zpráv o událostech a adresovatelnou správcem událostí pro umožnění správci událostí určit cestu odpovídající přijaté zprávě o události.
    Ί C
    8. Zařízení podle nároku 7, vyznačující se tím, ze směrovací tabulka obsahuje informace pro umožnění správci událostí určit prioritu objektu události uvnitř cesty.
    9. Zařízení podle kteréhokoliv z nároků 3 až 8,
    20 vyznačující se tím, že virtuální počítač dále zahrnuje rozvrhovač upravený pro ověřování cest udržovaných v prioritně organizované frontě cest a pro přikázání provedení cesty mající nejvyšší prioritu v daném okamžiku.
    10. Zařízení podle nároku 9, vyznačující se tím, že správce
    25 událostí je upraven pro signalizaci příchodu zprávy o události a pro řízení rozvrhovače, aby zkontroloval nový stav cest, udržovaných ve frontě cest.
    11. Zařízení pro zpracování digitálních audiovizuálních dat, zahrnující jedno nebo více hardwarových zařízení pro vysílání a příjem dat vně zařízení, vyznačující se tím, že • ·· • · ·· » · · ♦ • fe* · · · · · · · · ···· ·· ♦· · ·· ·· dále zahrnuje systém pro zpracování dat, obsahující první virtuální počítač upravený, kromě jiného, pro přijímání kódu napsaného v interpretačním jazyku zavedeném přes jedno nebo více hardwarových zařízení, přičemž uvedený virtuální počítač
  5. 5 je upraven pro rozlišení mezi kódem napsaným v alespoň dvou interpretačních jazycích v závislosti na struktuře přijatého kódu a pro propuštění takového kódu k odpovídajícímu interpretačnímu prostředku pro interpretaci a provedení.
    12. Zařízení podle nároku 11, vyznačující se tím, že virtuální počítač rozlišuje mezi interpretačním kódem v alespoň dvou interpretačních jazycích na základě charakteristik zprávy záhlaví, sdruženého s modulem kódu v jednom z jazyků.
    15 13. Zařízení podle nároku 11 nebo 12, vyznačující se tím, že virtuální počítač rozlišuje mezi interpretačním kódem na základě přítomnosti nebo nepřítomnosti zprávy záhlaví, sdruženého s modulem kódu v jednom z jazyků.
    14. Zařízení podle kteréhokoliv z nároků 11 až 13,
    2 0 vyznačující se tím, že alespoň jeden z jazyků je objektově orientovaný jazyk.
    15. Zařízení podle kteréhokoliv z nároků 11 až 14, vyznačující se tím, že virtuální počítač identifikuje kód napsaný v objektově orientovaném jazyku prostřednictvím přítomnosti zprávy záhlaví, sdruženého se souborem třídy v tomto jazyku.
    16. Zařízení podle kteréhokoliv z nároků 11 až 15, vyznačující se tím, že každý interpretační prostředek • 4«
    4 4 4 4444 444 • 444 ·· 44 4· 44 44 vykonává kód ve spojení s odkazy na jednu nebo více knihoven funkcí.
    17. Zařízení podle nároku 16, vyznačující se tím, že množstvím interpretačních prostředků je sdílena společná knihovna funkcí.
    18. Zařízení podle nároku 16 nebo 17, vyznačující se tím, že jeden nebo více interpretačních prostředků provádí kód ve spojení s odkazy na knihovnu funkcí, určenou výhradně pro tento interpretační prostředek.
    19. Zařízení pro zpracování digitálních audiovizuálních dat, vyznačující se tím, že zahrnuje systém pro zpracování dat, obsahující paměť, a správce paměti pro přidělování a ukládání objektů v paměti, přičemž první sada objektů je přidělena správcem paměti ve spojení s odkazy na sadu manipulátorů, přičemž každý manipulátor obsahuje odkaz na paměťovou adresu odpovídajícího objektu, a přičemž druhá sada objektů je přidělena a uložena přímo v paměti bez odkazu na manipulátor.
    20. Audiovizuální zařízení podle nároku 19, vyznačující se tím, že objekty v druhé sadě jsou přidělovány a ukládány v paměti prostřednictvím správce paměti, ale mohou být vyjímány přímo prostřednictvím dalších prvků systému pro zpracování dat,
    21. Audiovizuální zařízení podle nároku 19 nebo 20, vyznačující se tím, že sada manipulátorů je rovněž uložena v paměti.
    22. Audiovizuální přístroj podle kteréhokoliv z nároků 19 až 21, vyznačující se tím, že správce paměti je upraven pro
    0 0 00 • 00 _ - , 0 * 0* 00*0 0 0 0 0 • 000 00 00 00 00 00 přemístění objektů první sady uvnitř paměti a pro odpovídající změnu adresového odkazu uloženého v příslušném manipulátoru.
    23. Audiovizuální zařízení podle nároku 22, vyznačující se 5 tím, že objekty první sady jsou přemístěny uvnitř paměti prostřednictvím správce paměti, když již více objektů nemůže být uloženo v paměti bez přesunutí existujících uložených objektů.
    ]_0 24. Audiovizuální zařízení podle nároku 22 nebo 23, vyznačující se tím, že objekty první sady jsou přesunuty podle zhušťovacího algoritmu, aby se seskupila dohromady maximální velikost volného paměťového prostoru uvnitř paměti, jak je vypočítáno prostřednictvím tohoto zhušťovacího
    15 algoritmu.
    25. Audiovizuální zařízení podle kteréhokoliv z nároků 19 až 24, vyznačující se tím, že objekty druhé sady jsou nepřemístitelné uvnitř paměti.
    2Q 26. Audiovizuální zařízení podle kteréhokoliv z nároků 19 až 25, vyznačující se tím, že systém pro zpracování dat obsahuje virtuální počítač, přičemž správce paměti tvoří součást virtuálního počítače.
    27. Audiovizuální zařízení podle nároku 26, vyznačující se
    25 tím, že virtuální počítač má vícecestnou architekturu pro paralelní zpracování, ve které cesta může být dočasně pozastavena během jejího provádění pro umožnění provedení další cesty.
    28. Audiovizuální zařízení podle nároku 27, vyznačující se tím, že vicecestný virtuální počítač pro paralelní zpracování ι 4 44
    4 4 44· 44 *· 4» 4
    4 4« 444 * 4«· 4
    4444 44 44 44 44 44 obsahuje uvnitř vytvořenou uvolňovací sběrnou cestu, přičemž virtuální počítač při provádění oéto cesty působí pro uvolnění objektů v paměti, které v daném okamžiku právě nejsou označeny.
    5 . , ,
    29. Audiovizuální zařízeni pod_e nároku 28, vyznačující se tím, že provádění uvolňovací sběrné cesty rovněž způsobuje, že virtuální počítač provede přesunutí objektů první sady podle zhušťovacího algoritmu, aby seskupil dohromady maximální množství volného oameťcvého prostoru.
    30. Audiovizuální zařízení podle kteréhokoliv z nároků 19 až 29, vyznačující se tím, že paměť je definována jedním nebo více RAM komponenty.
    31. Zařízení podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že je dekodérem pro digitální vysílací systém, jako je digitální televizní systém,
    32. Zařízení podle kteréhokoliv z nároků 1 až 18, vyznačující se tím, že jedno z hardwarových zařízení zahrnuje
    2Q MPEG demultiplexor.
    33. Zařízení podle kteréhokoliv z nároků 1 až 18, vyznačující se tím, že hardwarová zařízení mohou zahrnovat alespoň jedno z následujících, ladič, sériové rozhraní, paralelní rozhraní, modem a jedno nebo více zařízení pro
    25 čtení inteligentních karet.
    34. Zařízení pro zpracování digitálních audiovizuálních dat, vyznačující se tím, že zahrnuje:
    hardwarový operační prostředek sdružený s jedním nebo více hardwarovými zařízeními pro vysílání a příjem dat; a vícecestný virtuální počítač pro paralelní zpracování, který • ·· · · »· · * * * • · · · · · · » · · · * Β • · · * » · · ·*·· ·♦·♦ ·· ·· ·· *· ♦· zahrnuje prostředek pro příjem zpráv o událostech, signalizovaných hardwarovým operačním prostředkem, prostředek pro přidělení odpovídajících objektů události jedné nebo více cestám, a prostředek pro pozastavení cesty během jejího
    5 provádění pro umožnění provedení další cesty.
    35. Zařízení pro zpracování digitálních audiovizuálních dat, vyznačující se tím, že zahrnuje jedno nebo více hardwarových zařízení pro vysílání a příjem dat vně zařízení, a virtuální počítač zahrnující prostředek pro příjem kódu, napsaného v interpretačním jazyku zavedeném přes jedno nebo více hardwarových zařízení, prostředek pro rozlišení mezi kódem, napsaným v alespoň dvou interpretačních jazycích v závislosti na struktuře přijatého kódu, a prostředek pro předání tohoto kódu odpovídajícímu interpretačnímu prostředku pro interpretaci a provedení.
    36. Zařízení pro zpracování digitálních audiovizuálních dat, vyznačující se tím, že zahrnuje paměť a správce paměti, zahrnující prostředek pro přidělení první sady objektů s
    20 odkazem na sadu manipulátorů, přičemž každý manipulátor obsahuje odkaz na paměťovou adresu odpovídajícího objektu, a prostředek pro přidělení a uložení druhé sady objektů přímo v paměti bez odkazu na manipulátor.
    37. Zařízení pro zpracování digitálních audiovizuálních dat
    2 5 v podstatě podle zde uvedeného popisu.
CZ20001257A 1998-10-07 1998-10-07 Zařízení pro zpracování digitálních audiovizuálních dat CZ20001257A3 (cs)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CZ20001257A CZ20001257A3 (cs) 1998-10-07 1998-10-07 Zařízení pro zpracování digitálních audiovizuálních dat

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CZ20001257A CZ20001257A3 (cs) 1998-10-07 1998-10-07 Zařízení pro zpracování digitálních audiovizuálních dat

Publications (1)

Publication Number Publication Date
CZ20001257A3 true CZ20001257A3 (cs) 2001-05-16

Family

ID=5470221

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ20001257A CZ20001257A3 (cs) 1998-10-07 1998-10-07 Zařízení pro zpracování digitálních audiovizuálních dat

Country Status (1)

Country Link
CZ (1) CZ20001257A3 (cs)

Similar Documents

Publication Publication Date Title
US8201154B2 (en) Multithread data processor
EP0909094A1 (en) Multithread data processor
JP4895424B2 (ja) 複数ユーザ用マルチメディア・ターミナル
EP0998813B1 (en) Digital transport stream processing
AU741471B2 (en) IEEE set top box device driver
RU2257687C2 (ru) Таблица данных о приложениях для системы цифровой передачи, предоставляющей множество сервисов
EP0908821A1 (en) Digital code interpreter
CZ20001257A3 (cs) Zařízení pro zpracování digitálních audiovizuálních dat
EP0909091A1 (en) Memory manager
KR20020035561A (ko) 애플리케이션을 테스트하는 장치 및 방법
NZ500205A (en) Common interface between applications and computer components
MXPA00003387A (en) Multithread data processor
CZ331799A3 (cs) Systém řízení přístupu
CZ20003254A3 (cs) Terminál pro zpracování digitálních dat a způsob jeho provozu
CZ2000264A3 (cs) Způsob a řídící zařízení pro komunikaci dat
HK1026552B (en) Digital transport stream processing

Legal Events

Date Code Title Description
PD00 Pending as of 2000-06-30 in czech republic