CZ9400549A3 - Počítačový systém s více medii - Google Patents
Počítačový systém s více medii Download PDFInfo
- Publication number
- CZ9400549A3 CZ9400549A3 CZ1994549A CZ54994A CZ9400549A3 CZ 9400549 A3 CZ9400549 A3 CZ 9400549A3 CZ 1994549 A CZ1994549 A CZ 1994549A CZ 54994 A CZ54994 A CZ 54994A CZ 9400549 A3 CZ9400549 A3 CZ 9400549A3
- Authority
- CZ
- Czechia
- Prior art keywords
- dsp
- digital signal
- signal processor
- dma
- memory
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/509—Offload
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Computer And Data Communications (AREA)
- Hardware Redundancy (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Complex Calculations (AREA)
- Selective Calling Equipment (AREA)
- Communication Control (AREA)
Description
Oblast techniky ' ! ^7
Vynález se týká obecně počítačových systémů s’~pro'ťenopy-signálů a s řízením přímého přístupu do paměti a podrobněji se týká dynamických požadavků zpracování signálů souběžných úloh v trvalém reálném čase společně prováděných v počítačových systémech s více medii.
Dosavadní stav techniky
Procesory signálů jsou dobře známé součásti v četných v současnosti dostupných počítačových systémech. Specializované procesory číslicových signálů (DSP) jsou komerčně dostupné od množství výrobců a používají se prd vysoce rychlé iterativní provádění algoritmů užívaných pro filtraci číslicových signálů, rozpoznávání řeči nebo syntézu řeči, řízení servomechánizmů, vyvíjení kódované řeči, vyvíjení vzorkovaného hi-fi zvuku a hudby kompaktních disků, funkce modulace a demodulace modemových dat, kódovací a dekódovací funkce vysílání faksimilních dat, funkce zhuštění a zobrazení na displeji barevných a černobílých obrazových dat, funkce zpracování pohybu video a přeměnu nebo kódování protokolu dat, opravy chyb nebo podobné funkce. Ve skutečnosti jsou navrhované seznamy použití procesorů Číslicových signálů pro vysoce rychlé opakované provádění takových algoritmů jako je Fourierova transformace atd. na vysoce rychlých proudech vzorků číslicových analogových signálů v průmyslu velmi rozšířeny.
Zvláště výhodná architektura procesoru signálů je známá z patentového spisu Spojených států amerických číslo 4,794,517 uděleného přihlašovateli předložené přihlášky vynálezu. Ze zmíněného patentového spisu je možné poznaj^r stavbu a použití procesorů číslicových signálů. Odborníkům školeným v oboru je však zřejmé, že zmíněná architektura procesoru signálů je pouze jedna z mnohých, které jsou dostupné na trhu. Kromě toho se aplikace procesorů číslicových signálů množí geometrickou řadou, zejména v rostoucí oblasti tak zvaných počítačových systémů s více medii, V takových systémech může uživatel žádat současné provádění četných funkcí jako je kódování řeči pro vysílání, pohyb video, vysílání a příjem modemu nebo reprodukce pozadí CD hudby jako příkladů několika audiovizuálních aplikací nebo aplikací s více medii. Tyto aplikace mohou být prováděny na typickém hlavním
-2systému jako je některý počítač IEM Osobní Systém/2 nebo některý z množství podobných dostupných počítačových systémů pro souběžné úlohy, které se v současnosti běžně prodávají.
V takových systémech s více medii se úlohy zpracování signálů obvykle přenášejí s přímým přístupem do paměti (EMA) do specializovaného vysoce rychlého procesoru číslicových signálů. Nicméně, jak roste rychlost a kapacita pamětí procesorů, i samotné procesory číslicových signálů mohou provádět uživatelské úlohy, jak bude vysvětleno dále. V takovém systému by vskutku mohla být funkce přímého přístupu do paměti prováděna procesorem číslicových signálů. Je-li požadován pouze malý počet kanálů s přímým přístupem do paměti, může řídicí jednotka s přímým přístupem do paměti dovolit procesoru signálů a hlavnímu procesoru obsluhovat jeden nebo několik přístrojů technických prostředků. Nicméně když hlavní procesor je jediný určen pro souběžné úlohy a existuje velké množství vstupních a výstupních přístrojů, opatření i malého počtu kanálů s přímým přístupem do paměti mezi hlavním procesorem pro souběžné úlohy a pomocným procesorem číslicových signálů se může stát úzkým profilem, který je nepřekonatelný když prostředek s přímým přístupem do paměti je současně sdílen všemi činnými vstupními a výstupními přístroji a rozličnými souvislostmi provádění úloh^' které jsou v běhu.
Uvažujme typické prostředí s více medii, které může obsahovat četné vzorky hi-fi audiosignálu zpracovávané s použitím nezávislých tabulek hlavní paměti audiovzorků a množství řídicích tabulek paměti a energie a obálek délky uložených v paměti, a je zde systém vyžadující zajištění více než sta oddělených kanálů s přímým přístupem do paměti v časovém úseku kratším než jedna milisekunda. Při šestnácti hi-fi stereofonních kanálech audiosignálu vyžaduje každý audiokanál přenos 88200 bytů vzorku za 1 sekundu. V tak krátkém čase je možné seznat, že 100 kanálů s přímým přístupem do paměti vyžaduje 100000 transakcí bloků za 1 sekundu, přičemž každý blok má svůj vlastní jediný zdroj a adresu určení a délku přenosu bloku. Při použití obvyklého přístroje s přímým přístupem do paměti by systémový procesor jako procesor číslicových signálů měl být přerušen pro přenos nových dat pro provedení požadovaných operací průměrně vždy po každých 10 mikrosekundách. Pro provedení každého přenosu by bylo nutné více strojových cyklů a systém by se brzy stal neschopným činnosti, protože
-3žádný zdroj procesoru by nebyl schopný provádět úlohy zpracování aktuálního signálu přídavně k úlohám nutným pro řízení přímého přístupu do paměti.
Přídavně k typickým audioaplikacím se mohou provádět jiné hlavní úlohy,’ které vyžadují komunikaci mezi procesorem číslicových signálů a hlavním procesorem zatímco audiosignály jsou přehrávány”. Příkladem může být pohyb obrazových dat faksimilního modemu do nebo z paměti systému hlavního počítače ve spojení s přehráváním audiohudby, řeči nebo pozadí. Přídavně může probíhat úloha rozpoznávání řeči, která vyžaduje pohyb šablon řeči z a do paměti hlavního systému do paměti procesoru signálů pro účely přizpůsobení a potom zpětný zápis rozlišitelných jednotek rozpoznávání řeči když byly rozpoznány. Také může být prováděna funkce syntézy řeči s výtahem fonémových dat ze systémové paměti zatímco může být prováděno počítačem podporované užití displeje, při kterém procesor signálů musí otáčet třírozměrným objektem nalezeným ve vyrovnávací paměti stínítka, což vyžaduje četné složité iterační výpočty. Důsledkem je možnost potřeby velmi velkého počtu účinných kanálů s přímým přístupem do paměti ve složitém multiprocesoru a prostředí souběžných úloh prováděných procesorem signálů.
Jsou známé vícenásobné čipové řídicí jednotky s přímým přístupem do paměti, jako je ona popsaná a znázorněná v patentovém spisu Spojených států amerických číslo 4,831,523. Takové přístroje pracují jako periferní řídicí jednotky a jsou navrženy pro připojení pevného počtu, v daném případě čtyř fyzických periferních přístrojů k systémové sběrnici. Fyzické přístroje nejsou přizpůsobeny procesům souběžných úloh, které vyžadují vzorky signálů zpracované v trvalém reálném čase ke provádění procesů úloh, které vyžaduje uživatel. Čtyři fyzické periferní přístroje představují mez přibližně osmi logických kanálů s přímým přístupem do paměti a ve zmíněném patentovém spisu nejsou přístroje provozovány v pevném časovém úseku, protože jsou obsluhovány cyklicky a jeden přístroj může potřebovat nezávisle dlouhý čas pro dokončení své činnosti, tudíž potlačí schopnost jiného přístroje pracujícího v reálném čase dokončit svou činnost v pevném časovém úseku.
Mechanismus sdílení kanálu s přímým přístupem do paměti je popsán v časopisu IEM Technical Disclosure Bulletin, Sv.30, C.7, ?
prosinec 1987, str.369 a 370. Nicméně popsaný mechanismus vyžaduje
-4vstupní a výstupní přístroj technických prostředků, který může být dynamicky přeřazován. Je zřejmé, že tento mechanismus představuje pouze programový prostředek, který dynamicky přiřazuje malý počet kanálů technických prostředků s přímým přístupem do paměti pro dotazování vnějších přístrojů technických prostředků umožňujících sdílení kanálů s přímým přístupem do paměti. Není zde deterministická informace o délce, počtu nebo časovém úseku, ve kterém může být povoleno provedení služby pro jakékoli požadavky a nejsou dány žádné podrobnosti, jak může přístroj technických prostředků vytvořit takový požadavek. Znázorněný systém není přirozený systém reálného času, to znamená, že žádané úlohy, jejichž vzorky signálů mají být zpracovány a vydány, nejsou zpracovávány během přesných a opakovaných časových úseků, jako CD systém reprodukce hudby s 88200 byty informace za 1 sekundu, které mají být přeneseny, zpracovány a zpracované signály mají být přeneseny zpět pro použití v požadované úloze.
Patentový spis Spojených států amerických číslo 4,807,121 znázorňuje periferní systém rozhraní mající vstupní a výstupní procesor připojený ke čtyřem multiplexním jednotkám, kde každá taková jednotka tvoří rozhraní až pro čtyři řídicí jednotky. Vstupní a výstupní procesor má kanál s přímým přístupem do paměti, který přijímá multiplexovaná sériová data z multiplexorů. Data se přenášejí mezi vstupním a výstupním procesorem a některou řídicí jednotkou plněním ukládací oblasti ve vyrovnávací paměti z místní paměti vstupního a výstupního procesoru v sériovém tvaru přes kanál s přímým přístupem do paměti. Je zajištěn pouze jeden kanál a multiplexní schéma dovoluje jeho využití. Skupiny dat jsou přenášeny ze řídicí jednotky do multiplexoru na bázi časových poloh a z ukládací oblasti multiplexoru do paměti v sériovém tvaru. Nicméně není zde žádný údaj, že tento systém má nějaký prostředek pro splnění dynamického požadavků činnosti v trvalém reálném čase daného aplikačními úlohami zmíněného typu probíhajícími souběžně.
Na základě výše uvedených obtíží dosavadního stavu techniky je úkolem předloženého vynálezu vytvořit účinný počítačový systém s více medii a s mechanismem přenosu dat pro provádění operací v trvalém reálném čase v souběžných úlohách ve hlavním procesoru.
-5aPodstata vynálezu
Vyřešení zmíněných úkolů je provedeno v přednostním provedení vynálezu přivedením požadavků úloh do procesoru signálů z hlavního procesoru, analýzou přivedených požadavků úloh a vytvořením seznamu požadavků přenosu paketů v rozdělené řadě v paměti, provedením přístupu k rozdělené řadě řídicí jednotkou s přímým přístupem do paměti interprocesoru a přenosem nutných vzorků signálu dat do nebo z procesoru číslicových signálů přes mechanismus přímého přístupu do paměti během pevného minimálního předepsaného časového úseku. Seznamy požadavků přenosu paketů dat jsou provedeny procesorem číslicových signálů ve formě řídicích paketů s přímým přístupem do paměti pro toto provedení.
Každý požadavek paketu obsahuje více slov řídicí informace a adresu zdroje a adresu určení pro přenos vzorků dat. Jedna adresa je příslušná adresa systémové paměti, která bude obsahovat nebo přijme data nebo vzorky procesu. Druhá adresa je příslušná místní instrukce procesoru číslicových signálů nebo adresa paměti dat do nebo ze které budou psány nebo čteny vzorky prvotního zpracovaného signálu. Řídicí informace obsahuje určitý počet bitů dat nebo instrukce, které představují délku přemisťovaného bloku dat a směr přemístění, tj. zdali má informace jít do nebo z procesoru číslicových signálů. Seznam paketů s přímým přístupem do paměti vytvořený operačním systémem procesoru číslicových signálů se udržuje v datové paměti procesoru číslicových signálů a je k němu postupně vytvářen přístup a provádění řídicí jednotkou technických prostředků s přímým přístupem do paměti připojenou ke sběrnicím procesoru číslicových signálů a sběrnicím hlavního procesoru. Procesor s přímým přístupem do paměti přistupuje a zpracovává celý obsah jednoho oddílu v rozděleném seznamu požadavků paketů v pravidelných časových úsecích, které jsou vztaženy k maximálnímu požadavku určité možné zvolené uživatelské úlohy prováděné ve hlavním procesoru. Například pro zajištění zpracování číslicového vzorku hudby pro audiopřehrávání ze signálu nebo vzorky obsažená v paketech
-5bstereofonních CD disků musí do procesoru signálů být posláno 88200 16-bitových vzorků, zpracováno a posláno do číslicově analogového převodníku nebo do hlavního procesoru na pravidelné periodické bázi během každé sekundy.
Podle dalšího provedení předloženého vynálezu je . každý z požadavků přenosu dat s přímým přístupem do paměti zajištěn druhým procesorem číslicových signálů DSP. Pole v uvedeném stavu určují paměť, zdrojové a cílové adresy, směr přenosu, počet jednotek dat, které mají být přeneseny, a operační indikátory řízení, jakož i konec indikátoru požadavku.
Podle dalšího provedení vynálezu je vytvořena řídicí jednotka DMA/10 vstupu a výstupu s přímým přístupem do paměti interprocesoru pro řízení přenosu dat mezi prvním procesorem číslicových signálů DP a druhým procesorem číslicových signálů DSP. Datové a adresové sběrnice propojují řídicí jednotku DMA/10 vstupu a výstupu s přímým přístupem do paměti s prvním procesorem číslicových signálů DP a druhým procesorem číslicových signálů DSP.
Podle dalšího provedení vynálezu provádí řídicí jednotka DMA/10 vstupu a výstupu s přímým přístupem do paměti interprocesoru přenos dat mezi prvním procesorem číslicových signálů DP a druhým procesorem číslicových signálů DSP přístupem k rozdělené frontě a řízením přenosu dat v souhlasu s poli specifikujícími data v uvedených požadavcích.
Podle dalšího provedení vynálezu druhý procesor číslicových signálů DSP vytváří část fronty a ukládá požadavky přenosu dat řídicí jednotky DMA/IQ vstupu a výstupu s přímým přístupem do paměti interprocesoru do ní během pravidelných časových intervalů, během kterých řídicí jednotka DMA/10 vstupu a výstupu s přímým přístupem do paměti interprocesoru pro vádí přenosy dat na základě požadavků přenosu dat z jiné části fronty.
Podle dalšího provedení vynálezu je vytvořen prostředek pro odhad požadavku zdroje zpracování signálu druhého procesoru číslicových signálů DSP nutného pro podporu každého programu
-5cuživatelových úloh jeho volbou uživatelem. Odhad obsahuje určení požadavku přenosu maxima dat programu zvoleného uživatelem během určeného časového intervalu, maximum žádané rychlosti provádění a maximum velikosti paměti požadované druhým procesorem číslicových signálů DSP.
Podle dalšího provedení vynálezu řídicí jednotka DMA/10 vstupu a výstupu s přímým přístupem do paměti interprocesoru obsahuje vyrovnávací paměť a provádí požadavky přenosu dat přístupem ke zdrojové adrese paměti, přenosem dat z ní do vyrovnávací paměti, přístupem k adrese určení paměti a přenosem dat do ní z vyrovnávací paměti.
Dále je jako řešení shora popsaných problémů navržen způsob řízení činnosti počítačového systému s mnoha medii pro zajištění efektivních datových přenosů, majícího první procesor číslicových signálů DP, hlavní procesor, pro provádění programů uživatelských úloh a druhý procesor číslicových signálů DSP pro provádění požadavků zpracování číslicových signálů_v podporovaném provádění programů uživatelských úloh v prvním procesoru číslicových signálů DP. Navržený způsob obsahuje kroky:
určení 3, 6 (Obr.6) celkového požadavku zdroje druhého procesoru číslicových signálů DSP pro podporu provádění jakéhokoli aktivního uživatelem zvoleného programu úkolu;
porovnání 3, 6, (Obr.6) celkového požadavku zdroje druhého procesoru číslicových signálů DSP s maximální kapacitou zdroje druhého procesoru číslicových signálů DSP;
potlačení 4., (Obr. 6) provádění programu uživatelem zvoleného úkolu v prvním procesoru číslicových signálů DP, jestliže požadavek zdroje programu úkolu způsobuje, že celkový požadavek zdroje druhého procesoru číslicových signálů DSP přesahuje maximální dostupnou kapacitu zdroje druhého procesoru číslicových signálů DSP;
vytvoření 3, (Obr.l), odezvou na příjem požadavků o zpracování číslicových signálů u druhého procesoru číslicových
-5d signálů DSP, žádostí o přenos dat rozdělené fronty s přímým přístupem do paměti; a vložení dělicích znaků do fronty v pravidelných časových intervalech.
Podle dalšího provedení vynálezu způsob dále obsahuje krok přístupu k datům, která mají být přenesena do prvního procesoru číslicových signálů DP nebo do druhého procesoru číslicových signálů DSP. V dalším kroku jsou data přesunuta do vyrovnávací paměti. V následujícím kroku je proveden přístup do paměti prvního procesoru číslicových signálů DP nebo druhého procesoru číslicových signálů DSP, kde jsou data, která mají.být zapsána a poté je proveden přenos dat do paměti prvního procesoru číslicových signálů DP nebo druhého procesoru číslicových signálů DSP.
Podle dalšího provedení vynálezu způsob dále obsahuje krok provedení požadavků přenosu dat do části fronty v časovém intervalu, ve kterém druhý procesor číslicových signálů DSP vytváří jinou část fronty.
Přehled obrázků na výkresech
Vynález je znázorněn na výkresech, kde obr.1 znázorňuje
votifcCKA ZELtNý ÓVOPČÍK KALEI A PARTNER!
120 00 Praha 2, Hálkova 2 Česká republika
-6ve schematickém tvaru přednostní provedení s operačním tokem dat do a ze hlavního procesoru a procesoru číslicových signálů přes řídicí jednotku s přímým přístupem do paměti meziprocesoru, který je propojen k potřebným sběrnicím systémových adres a dat ve hlavním systému a v systému procesoru číslicových signálů, obr.2 znázorňuje schematicky propojení mezi procesorem číslicových signálů a systémem hlavního počítače přes ovladač sběrnice s přímým přístupem do paměti a řídicí jednotku interprocesoru, obr.3 znázorňuje schematicky tok dat ve programovatelném tvaru z ovladače vstupní a výstupní sběrnice interprocesoru s přímým přístupem do paměti, řídicí jednotky a rozhodovacího řadiče podle vynálezu, obr.4 znázorňuje podrobně formát a obsah požadavků paketu s přímým přístupem do paměti vytvořeného procesorem číslicových signálů, a co může znamenat kódování těchto požadavků, obr.5 znázornu je uspořádání obr.JjA a 5B znázorňující tok dat a z vyrovnávací paměti paketu a registrů pro tok dat a řízení v interprocesoru s přímým přístupem do paměti, obr.6 znázorňuje schematicky tok u hlavního procesoru, který vyvíjí seznamy nebo požadavky zpracování úkolů procesorem číslicových signálů, obr.7 znázorňuje uspořádání obr,7A a 7B, které znázorňuje schematický tok operací v řídicí jednotce s přímým přístupem do paměti interprocesoru a rozhodovacím řadiči když zpracovává seznamy požadavků paketů s pří mým přístupem do paměti vytvářené v procesoru číslicových signálů, obr.8 znázorňuje manipulační program technických prostředků s pří mým přístupem do paměti pro přednostní provedení vynálezu, obr.9 znázorňuje uspořádání obr.9A a 9B, které znázorňuje přenosový proces s přímým přístupem do paměti prováděný rozhodovacím řadičem a řídicí jednotkou interprocesoru s přímým přístupem do paměti a obr.10 znázorňuje vývojové schéma vysoké úrovně procesu konstrukce seznamu paketů v procesoru číslicových signálů.
Přiklad provedeni vynálezu
Bude uveden úplný popis přednostního provedení vynálezu s ohledem na jeho vyobrazení na výkresech. V úvodu se nicméně pokládá za žádoucí vysvětlit závažnost vytyčeného problému a dále vysvětlit účinnost a zlepšení získané použitím systému a mechanismu řídicí jednotky paketů s přímým přístupem do paměti podle předloženého vynálezu.
Řízení toku dat do a z podsystému procesoru číslicových signálů by mohlo, jak bylo výše poznamenáno, způsobit potenciálně
7jak bylo výše poznamenáno, způsobit potenciálně vysoké zatížení procesoru číslicových signálů. Jako příklad můžeme uvažovat komerčně běžný počítač, jako je Motorola 68030, což je obecně dostupný procesor tvořící jádro mnohých osobních počítačů. Typickým procesorem číslicových signálů by mohl být procesor Motorola 56000 osobního počítače, který může být implementován na rovinné desce procesoru. Je zde cesta přímého přístupu do paměti mezi 56000 a 68030; nicméně technické prostředky s přímým přístupem do paměti pouze odlehčují hlavní procesor 68030 a nečiní nic pro zlepšení funkce procesoru číslicových signálů 56000. Pro každé slovo, které musí být přemístěno mezi 68030 a 56000 je zde krátké přerušení k 68030. Během přerušení je sběrnice hlavního procesoru přidělena přístroji s přímým přístupem do paměti, který takto přenese slovo dat nebo vzorek signálu. Nicméně když je slovo jednou shromážděno procesorem číslicových signálů, procesor číslicových signálů musí současně být přerušen. Procesor číslicových signálů musí zastavit svou činnost a přemístit slovo dat do své paměti přes manipulační program přerušení.
Odhad počtu cyklů procesoru číslicových signálů pro vykonání tohoto je asi 10. Je zde přibližně ztráta jednoho cyklu následkem trojfázového zřetězení v 56000; dva nebo tři další cykly procesoru jsou nutné pro uschování obsahu několika registrů, několik dalších cyklů procesoru je nutné pro ustavení ukazatele indexu pro pamět procesoru číslicových signálů a pro řízení indexu čítače modulo. Konečně několik dalších cyklů je třeba pro obnovu stavu stroje procesoru číslicových signálů a pro návrat do úlohy, která byla přerušena. To všechno činí celkem asi 10 cyklů požadovaných pro přemístění pouze jednoho slova dat nebo vzorku do nebo z procesoru číslicových signálů. Tento procesor číslicových signálů je typu popsaného v patentovém spisu Spojených států amerických číslo 4,794,517, který má také architekturu trojfázového zřetězení procesoru číslicových signálů.
Předložený vynález vytváří zlepšený systém s více medii používající paketový stroj s přímým přístupem do paměti, to je programovaný mechanismus pro zajištění přenosu dat mnohem účinnějším způsobem. Přenosy s přímým přístupem do paměti začínají požadavky na programové prostředky provedenými procesorem číslicových signálů, nikoliv mechanismem s přímým přístupem do paměti. Mechanismus s přímým přístupem do paměti, což je řídicí jednotka a
-8a rozhodovací řadič, dává zaručenou službu z procesoru číslicových signálů uvnitř časových oken, která se opakují a mají délku podle nejvíce žádané úlohy, která má být prováděna v menu souběžných úloh hlavního procesoru* Tak například časové okno 726 mikrosekund je schopné přijímat 32-bitové vzorky (celé slovo) nutné pro zpracování typických 88200 číslicových stereo audiovzorků pro přehrávání průměrně každých 726 mikrosekund. Při typické rychlosti provozu, procesoru číslicových signálů může být více než 100 takových 32-bitových paketů zpracováno během časového úseku 726 mikrosekund. To by zajistilo kapacitu pro více než 100 jednotlivých transakcí nebo komunikačních kanálů pro tok dat mezi úlohami v multiprocesním hlavním systému a operace prováděné v subsystému procesoru číslicových signálů.
Když řídicí jednotka s přímým přístupem do paměti čte požadavek přenosu paketu umístěného v rozdělené službu žádající úlohou procesoru číslicových signálů při provádění, rozhodovací řadič a řídicí jednotka se rozhodne pro sběrnici hlavního systému, například ΙΗΛ PS/2 mikrokanálu nebo podobnou hlavní sběrnici a když je přístup ke sběrnici povolen hlavním systémem k řídicí jednotce s přímým přístupem do paměti a rozhodovacímu řadiči pro požadavek umístěný procesorem číslicových signálů, až 16 bytů dat (v závislosti na velikosti vyrovnávací paměti) může být přeneseno do vyrovnávací paměti typu FIFO první zařazen první vybrán” registru v řídicí jednotce s přímým přístupem do paměti. Když jsou byty jednou ve FIFO, rozhodovací řadič a řídicí jednotka s přímým přístupem do paměti rozhodne pro místní datovou sběrnici procesoru číslicových signálů a když je povoleno, jedno 16-bitové slovo je převedeno a potom je potlačen požadavek sběrnice. Toto slovo je potom převedeno do paměti procesoru číslicových signálů a procesor číslicových signálů bude zastaven po dobu jednoho cyklu sběrnice. Proces tudíž pro každé převedené slovo spotřebuje jeden cyklus procesoru číslicových signálů. Řídicí jednotka s přímým přístupem do paměti a rozhodovací řadič budou pokračovat v rozhodování pro místní sběrnici procesoru číslicových signálů až do vyprázdnění celého obsahu FIFO uvnitř řídicí jednotky s přímým přístupem do paměti. Řídicí jednotka s přímým přístupem do paměti potom provede nový požadavek ke sběrnicím hlavního systému pro převod dalších dat.
Budiž poznamenáno, že proces pro rozhodování buď pro systémovou sběrnici nebo sběrnici procesoru číslicových signálů se
-9nejúčinněji provádí zavedenými programovanými technickými prostředky a procesy jako jsou ony implementované v rozhodovacím řadiči s přímým přístupem do paměti a v řídicí jednotce. Schopnost zpracování seznamu paketů řídicí jednotkou s přímým přístupem do paměti dovoluje účinné použití sběrnice hlavního systému a sběrnice procesoru číslicových signálů. Přihlédneme-li k návrhu dosavadního stavu techniky popsanému výše, je zřejmé, že tímto návrhem se ušetří průměrně devět z deseti cyklů procesoru číslicových signálů.
Tak například vrátíme-li se k výše uvedené úloze zpracování hi-fi stereosignálu nutného ke provádění stereofonní CD hudby, je třeba přehrát standardních 88200 16-bitových číslicových vzorků každou sekundu. To vyžaduje převedení 88200 slov dat každou sekundu mezi procesorem hlavního systému, který bude číst CD disk, přenos přečtených vzorků do procesoru číslicových signálů, příjem zpracovaných audiovzorků z procesoru číslicových signálů a jejich rekonstrukci na analogové integrované zvukové segmenty v počtu 88200 za sekundu. Ve stroji a systému dosavadního stavu techniky uvedených výše by samotná tato operace vyžadovala 88200 slov za sekundu při 10 cyklech na jedno slovo nebo při 882000 cyklech za sekundu prováděcí schopnosti procesoru číslicových signálů. Ve přednostním provedení předloženého vynálezu se žádá pouze 88200 cyklů procesoru číslicových signálů, neboli jedna desetina počtu cyklů použitých v dosavadním stavu techniky.
Přihlédneme ke příkladu rozhodovacího řadiče s přímým přístupem do paměti, řídicí jednotky a používaného systému hlavního procesoru a budeme předpokládat, že současně běží úloha rozpoznávání řeči a úloha hi fi stereo CD audiopřehrávání podle volby uživatele na hlavním procesoru, a že tyto úlohy vyžadují pro jejich provádění zařízení procesoru číslicových signálů. Úloha rozpoznávání řeči bude vyžadovat přibližně dva kanály s přímým přístupem do paměti pro provoz, jeden vstupní a jeden výstupní, každý s maximální velikostí asi 256 slov na kanál. Úloha CD hudby bude vyžadovat jeden kanál s přímým přístupem do paměti a s maximální velikostí asi 64 slov pro kanál. Vždy když běží úloha CD audio a úlohy zpracování signálů na vzorcích běží v procesoru číslicových signálů, procesor číslicových signálů bude potřebovat přenášet 64 slov dat z paměti hlavního procesoru systému do paměti procesoru číslicových signálů. Pro vykonání těchto činností procesor číslicových signálů vyvolá svou operační služební rutinu
-10pro požadavek přímého přístupu do paměti vždy když běží. Při každém zavolání zajistí následující adresu systémového procesoru, aby byla přístupná, a následující adresu vnitřní paměti a začátek čítání, kde má být uloženo 64 slov, která mají být vyvolána. Vždy když běží úloha rozpoznávání řeči v procesoru číslicových signálů, vyvolá dvakrát servisní rutinu žádosti přímého přístupu do paměti procesoru číslicových signálů. Každý požadavek bude mít jedinou systémovou adresu u hlavního systému, ze které se má vybrat nebo do které má být uložena informace, a jedinou adresu paměti procesoru číslicových signálů, kde mají.být uloženy vzorky nebo odkud mají být vyvolány. Procesor číslicových signálů uloží dvě šablony rozpoznávání vždy když jeho iterativní úloha běží v procesoru číslicových signálů. Každá šablona bude mít délku asi 256 slov.
Tři požadavky přímého přístupu do paměti representované jediným požadavkem pro úlohu CD a dvěma požadavky pro úlohu rozpoznávání řeči budou umístěny v segmentované řadě procesorem číslicových signálů když se objeví. Například úloha rozpoznávání řeči může začít a umístit svůj první požadavek a potom může být přerušena zatímco úloha CD v procesoru číslicových signálů převzala řízení a umístila svůj požadavek přímého přístupu do paměti. Po vydání požadavku úlohy CD může být úloha rozpoznávání řeči znovu spuštěna a umístí svůj druhý požadavek přímého přístupu do paměti. Jestliže byly pouze tyto tři požadavky umístěny během jednoho intervalu 726 mikrosekund, během kterého je procesorem číslicových signálů vytvořena rozdělená řada, nebudou provedeny řídicí jednotkou s přímým přístupem do paměti během času, kdy byly umístěny v řadě. Při následujícím přerušení hodin o kmitočtu 1378 Hz (1/726 mikrosekundy) bude další skupina paketů požadavku přímého přístupu do paměti, která byla umístěna během předchozích 726 mikrosekund, zpřístupněna a provedena řídicí jednotkou s přímým přístupem do paměti a rozhodovacím řadičem.
V tomto příkladu řídicí jednotka s přímým přístupem do paměti a rozhodovací řadič nejprve najde požadavek paketu, který žádá, aby bylo provedeno 256 slov pro úlohu rozpoznávání řeči. Převede označená řídicí slova z požadavku paketu ke zjištění kolik slov má být převedeno a přenese řídicí hranice adresované modulo. Potom přečte adresu paměti hlavního systému a adresu paměti procesoru číslicových signálů a rozhodne pro sběrnici hlavní paměti. Když bylo jednou získáno povolení ke sběrnici hlavní paměti, řídicí
-11jednotka a přímým přístupem do paměti a procesor přenesou určitý počet bytů, v tomto provedení 16 bytů, dat z paměti procesoru hlavního systému do jeho vlastní vyrovnávací paměti. Potom rozhodne pro sběrnici procesoru číslicových signálů a vždy když dostane povolení, zapíše další slovo do paměti procesoru číslicových signálů podle počáteční adresy paměti procesoru číslicových signálů čtené z požadavku řízení paketů s přímým přístupem do paměti. Po zapsání všech 16 bytů se vrátí pro nové povolení sběrnice paměti hlavního systému. Proces bude pokračovat pokud není pře vedeno všech 256 slov. Potom stroj přímého přístupu do paměti pře čte další paket v seznamu požadavků přenosu paketů s přímým přístupem do paměti. Podle tohoto příkladu to bude paket CD úlohy. Pro tento paket má být převedeno 64 slov při použití stejné operace jaká byla výše popsána. Když bylo převedeno všech 64 slov, rozhodovací řadič s přímým přístupem do paměti a řídicí jednotka přistoupí k dalšímu požadavku přenosu paketu, což bude druhý paket pro úlohu rozpoznávání řeči a po jeho zpracování stejným způsobem nezjistí žádné další pakety a vstoupí do stavu čekání dokud neuplyne 726 mikrosekund časového okna. Jestliže přišlo více požadavků paketů s přímým přístupem do paměti umístěných v rozdělené řadě vytvořené procesorem číslicových signálů během běžných 726 mikrosekund okna, nebudou zpracovány než nastane následující okno.
S přihlédnutím k obr.l může být celkový operační tok tohoto typu procesu vysvětlen,' přičemž se začne v bloku 1 obr.l. Uživatel hlavního osobního počítače odstartuje operace vyvoláním nebo výběrem požadavků aplokačníbo programu pro provádění na osobním počítači, což nutně zavede úlohy zpracování číslicových signálů pro jejich provádění. Příkladem může být hi-fi audiopřehrávání, rozpoznávání řeči, přenos dat modemu a funkce faksimilních dat, pohyb video, syntéza řeči nebo jiné z množství aplikací z oblasti více medií, které jsou odborníkům dobře známé.
Hlavní osobní počítač si vyžádá úlohy procesoru číslicových signálů, které mají být prováděny vysíláním identifikace úloh požadovaných k operačnímu systému procesoru číslicových signálů. To nastane v bloku 2 obr.l.
Ve bloku 2 operační systém procesoru číslicových signálů vytvoří seznamy rozdělených paketů z aktivních požadavků úlohy umístěním nějakého konce k rozdělení požadavků v opakovatelných časových intervalech. Obr.10 znázorňuje tok procesu na vysoké
-12úrovni pro vytváření operace seznamu paketů procesoru číslicových signálů. V jednom přednostním provedení popsaném výše se tyto opakované Časové intervaly konec seznamu vyskytují vždy po 726 mi kro s ekundá ch.
Procesor číslicových signálů bude dávkovat nebo taktovat řídicí jednotku s přímým přístupem do paměti interprocesoru, jak ukazuje blok £ při hodinovém kmitočtu 726 mikrosekund a bude pokračovat ve vytváření seznamu požadavků rozdělených paketů ke provádění' nějakých aktivních úloh, které mohou běžet v procesoru číslicových signálů nebo které jsou vyžadovány novými požadavky uživatele přicházejícími z osobního počítače, jak je patrno z bloku 11.
V bloku 2 řídicí jednotka s přímým přístupem do paměti interprocesoru přijímá dávkovaný hodinový signál začínající časovým intervalem 726 mikrosekund z procesoru číslicových signálů, jak je znázorněno. V bloku 6 řídicí jednotka s přímým přístupem do paměti interprocesoru začíná číst seznam paketů z oddílu seznamu paketů požadavků přímého přístupu do paměti vytvořeného procesorem číslicových signálů. Řídicí jednotka s přímým přístupem do paměti rozhodne pro systém nebo data procesoru číslicových signálů nebo sběrnice paměti vhodné pro požadovaný přenos paketů, jak je znázorněno v obr.7, přijme povolení pro přístup ke vhodné sběrnici, jak je znázorněno v bloku 8, a potom převede určitý počet paketů do nebo z vyrovnávací paměti s přímým přístupem do paměti v bloku 2 a znovu rozhodne pro přístup k systému nebo sběrnicím procesoru číslicových signálů, jak je znázorněno vazbou mezi blokem 2 a blokem 2, dokud nejsou všechny přenosy úplné, jak je znázorněno v bloku 10.
Jak je zřejmé z předešlého popisu toku vzhledem k obr.l, některé řízení hlavním systémem, nebo procesorem číslicových signálů, jestliže má dostatečnou kapacitu, nebo pomocným procesorem, je-li žádáno, musí být prováděno tak, že požadavky úloh procesoru číslicových signálů mohou být vesměs prováděny během minimálního časového úseku, například 726 mikrosekund, nebo by jinak byl důsledek ten, že žádná další úloha vyžadovaná uživatelem by nemohla být splněna v trvalém reálném čase. Pro splnění zmíněného požadavku je ve přednostním provedení implementovaného schéma zdroje říze> ní a přidělování procesoru číslicových signálů ve hlavním procesoru. Funkce řízení a přidělování je schematicky znázorněna v obr.6
-13a může být prováděna procesorem číslicových signálů nebo je-li žádáno, pomocným procesorem, a je dále popsána.
Funkce řízení a přidělování zdroje zachovává cestu celkového zatížení, které je přivedeno procesorem číslicových signálů úlohami zadanými uživatelem. Zatížení je měřeno výrazy celkové dosažitelné šířky pásma přenosu bytů s přímým přístupem do paměti, délky seznamu paketů a dosažitelného výkonu nebo rychlosti zdroje procesoru číslicových signálů měřeného v cyklech provádění procesoru číslicových signálů v milionech instrukcí za sekundu (MIPS). Funkce řízení a přidělování zajištuje, že dostatečný zdroj procesoru signálů bude k dispozici v každém intervalu 726 mikrosekund pro všechny vyžadované úlohy procesoru číslicových signálů, aby bylo zaručeno, že požadavek přímého přístupu do paměti v reálném čase může být splněn pro každou úlohu procesoru číslicových signálů.
Celkový dostupný zdroj je závislý na implementaci Částečného systému, to je na rychlosti procesoru číslicových signálů v milionech instrukcí za sekundu, schopnosti přenosu šířky pásma mechanismu s přímým přístupem do paměti a délce oddílu v seznamu požadavků přenosu paketů vytvářeného procesorem číslicových signálů. Zatímco všechny tyto veličiny mohou být podle implementace proměnlivé, když byly jednou implementovány, jsou pro daný systém stélé. Šířka pásma přímého přístupu do paměti je vázána, to je omezena menší ze šířek pásma sběrnice hlavního procesoru, časem instrukčního cyklu procesoru číslicových signálů nebo šířkou pásma mechanismu technických prostředků s přímým přístupem do paměti. Délka seznamu paketů je vázána, jak bylo uvedeno výše, velikostí dostupného uložení dat procesoru číslicových signálů a rychlostí hodin instrukcí procesoru číslicových signálů.
Za účelem implementace funkce řízení a přidělení zdrojů se žádá, aby každá uživatelská úloha u hlavního systému obsahovala oznámení nebo deklaraci celkového zdroje úlohy procesoru číslicových signálů požadované ve výrazech maximální šířky pásma přímého přístupu do paměti, délky a milionů signálů za sekundu procesoru číslicových signálů, které budou spotřebovány při maximu vyvolanou úlohou. Jestliže jsou žádány úlohy procesoru číslicových signálů uživateli u hlavního systému, funkce řízení a přidělení zdrojů v obr.6 přiděluje deklarované požadavky zdrojů požadovaným úlohám procesoru číslicových signálů v procesoru
-14číslicových signálů. Pokud mohou být požadavky na zdroje úloh procesoru číslicových signálů splněny v rámci omezení systému, úloha procesoru číslicových signálů bude zavedena do procesoru číslicových signálů. To je provedeno hlavním systémem, který umístí požadavek úlohy procesoru číslicových signálů do operačního systému procesoru číslicových signálů. Nejsou-li k dispozici dosta tečné zdroje, požadavek úlohy procesoru číslicových signálů umístě ný uživatelem bude odmítnut a bude vydána příslušná zpráva chyby uživatele.
V obr.6 začala operace uživatele požadující úlohu na jeho osobním počítači: například rozpoznávání řeči. Bude vyvolán program rozpoznávání řeči ve hlavním osobním počítači a bude obsahovat vhodné parametry pro požadavky, které umístí na šířce pásma ve výrazech maximálního počtu slov na časový interval okna přímého přístupu do paměti maxima milionů instrukcí za sekundu procesoru číslicových signálů, které jsou žádány, a maxima velikosti paměti procesoru číslicových signálů, které může vyvolat, jak je patrno z bloku 1 v obr.6. Dostupné maximum zdroje procesoru číslicových signálů je také systému známo, neb bylo zavedeno uživatelem nebo zakódovanými (neznázorněnými) registry dotazovacích technických prostředků systému přítomných v řídicí jednotce s přímým přístupem do paměti a rozhodovacího řadiče a v procesoru číslicových signálů. To je znázorněno v bloku 2.
V bloku 2. áe vytvořen součet všech požadavků uživatelské úlohy, to je celkových požadavků přímého přístupu do paměti, sloučením požadavků pro všechny přítomné a některé nové požadované úlohy. To je srovnáno s maximem celkové schopnosti přenosu slov s přímým přístupem do paměti a celkovým zdrojem procesoru číslicových signálů v bloku 2.. Jestliže celkový požadavek přenosu slov přesahuje dostupný zdroj, úloha není zavedena, jak je znázorněno v bloku 4, a je oznámen návrat na volbu úlohy uživatelem v bloku £. Není-li celkový požadavek přímého přístupu do paměti úlohy uživatele překročen, systém postoupí ke bloku 6, kde je součet všech zdrojů provádění instrukcí procesorem Číslicových signálů pro aktivní úlohu uživatele srovnán s maximálními dostupnými miliony instrukcí za sekundu procesoru číslicových signálů. Jestliže celkové miliony instrukcí za sekundu procesoru číslicových signálů nejsou překročeny, systém postoupí ke bloku 2., kde je proveden součet všech požadavků paměti procesoru číslicových
-15signálů pro všechny úlohy uživatele a srovnán s maximální možnou velikostí datové paměti procesoru číslicových signálů.
Jestliže maximum není překročeno, řídicí procesor pracovní zátěže procesoru číslicových signálů (který by mohl být umístěn v procesoru číslicových signálů nebo v nějakém pomocném procesoru, dle žádosti), který provádí řízení zdrojů a přidělení ve hlavním osobním počítači, postoupí ke bloku 8, kde zavede úlohu sdělením operačnímu systému procesoru číslicových signálů, aby vybavil začátek nové úlohy zvolené uživatelem a potom rutina končí ve bloku £.
Jak bylo uvedeno výše, seznamy požadavků přenosu paketů dat s přímým přístupem do paměti jsou vytvářeny v rozděleném tvaru v paměti procesoru číslicových signálů operačním systémem procesoru číslicových signálů. Když jsou požadavky úloh procesoru číslicových signálů přeneseny do operačního systému procesoru číslicových signálů, vytvoří seznam požadavků přenosu paketů dat s přímým přístupem do paměti nutný pro provádění požadované úlohy. Formát požadavků paketů je znázorněn v obr.4.
V obr.4 je pět slov požadavků paketů s přímým přístupem do paměti obsahujících dvě řídicí slova uložená v řídicích registrech 1 a 2, dvě slova adresy paměti hlavního systému (tvořící spodní adresu a horní adresu) a jedno slovo adresy paměti procesoru číslicových signálů, které představuje umístění, kde počet slov přenesených do nebo z paměti začíná. Kódování specifických řídicích slov pro řídicí registry je znázorněno v obr.4. Tato řídicí slova jsou použita rozhodovacím řadičem s přímým přístupem do paměti a řídicí jednotkou interprocesoru, jak bude podrobněji popsáno déle.
Operační systém procesoru číslicových signálů vytvoří v paměti seznamy požadavků přenosu paketů s přímým přístupem do paměti. Adresování je takové, že pamět pracuje jako kruhová vyrovnávací pamět uvnitř procesoru číslicových signálů. Seznam požadavků paketů je rozdělený seznam, takže obsahuje skupinu jednoho nebo několika individuálních požadavků přenosu paketů s přímým přístupem do paměti a koncový znak Stav čekání nebo Konec seznamu. Konec seznamu v paměti procesoru číslicových signálů obsahuje ukazatel zpětného skoku na začátek, takže vyrovnávací pamět bude bezkončitě probíhána. Dostupná pamět procesoru číslicových signálů pro sestavení vyrovnávací paměti musí být dostatečně velká, aby obsav hovala alespoň dva úplné seznamy požadavků paketů v každém okamžiku.
•16To je nutné, protože technické prostředky řídicí jednotky s přímým přístupem do paměti budou zpracovávat obsah jednoho seznamu požadavků zatímco operační systém procesoru číslicových signálů je činný při vytváření obsahu dalšího oddílu seznamu. Operační systém procesoru číslicových signálů vytváří seznamy požadavků paketů s přímým přístupem do paměti (viz obr,10), pro přenos dat připojenými požadavky paketů po jednom ke běžným obsahům seznamu paketů jako aktivní úlohy v procesoru číslicových signálů umístí požadavky přímého přístupu do paměti bud k zavedení nových vzorků signálu pro zpracování nebo pro přenos zpracovaných vzorků zpět k požadované úloze uživatele jak je vhodné.
Nějaká daná úloha prováděná v procesoru číslicových signálů vyžaduje přenos paketů s přímým přístupem do paměti prvním uložením do interně specifikovaných registrů procesoru číslicových signálů se žádanou zdrojovou adresou, adresou určení a nějakou řídicí informací, která je nutná, a za druhé vyvoláním operačního systému, který připojí tento požadavek k seznamu běžně vytvářenému v rozdělených seznamech. Úlohy procesoru číslicových signálů mohou zahrnovat požadavky přenosu paketů ve kterémkoli čase. Takové požadavky mohou být asynchronní vzhledem ke provádění seznamů rozhodovacího řadiče s přímým přístupem do paměti a řídicí jednotky vedeného v řídicím stroji přímého přístupu do paměti. Provádění seznamu paketů řídicím strojem přímého přístupu do paměti se provádí ve přesných časových, intervalech operačním systémem procesoru číslicových signálů, který umístí Paket čekání nebo Znak konce seznamu jako znak na konci oddílu v seznamu paketů, který se běžně vytváří. Ve přednostním provedení jsou tyto znaky předem zapsány do řady v paměti, takže se vyskytují v pravidelných intervalech jak je řada čtena přístrojem přímého přístupu do paměti. Ve přesně periodických Časech procesor číslicových signálů oznamuje řídicí jednotce s přímým přístupem do paměti, aby pokračovala ve provádění seznamu požadavků přenosu paketů, který má následně být zpracován. Paket čekání bude sloužit jako prostředek nebo jako znak zastavení technických prostředků s přímým přístupem do paměti když dokončil zpracování běžného seznamu. Jak úlohy v procesoru číslicových signálů pokračují, prováděním požadavků přenosu paketů dat s přímým přístupem do paměti, začne operační systém naplňovat další oddíly; v seznamu paketů. Takové procesory jako Motorola 56000 jsou v průmyslu dobře známé a
-17schopnost jejich operačního systému vytvářet takové seznamy v paměti je dobře známa odborníkům a nevyžaduje dalšího podrobného vysvětlování.
V obr.2 jsou znázorněny celkové fyzické uspořádání a tok dat paketů informací z typického hlavního systému, :jako je IEM PS/2 nebo Motorola 68030 uvedený výše, přes příslušné sběrnice dat a adres příslušného hlavního systému k řídicí jednotce s přímým přístupem do paměti a rozhodovacímu řadiči interprocesoru, jako je řídicí jednotka s přímým přístupem do paměti a programovatelný mikrokanál Intel 82525. Rozhraní z rozhodovacího řadiče s přímým přístupem do paměti a řídicí jednotky interprocesoru do typického procesoru číslicových signálů, jako je uvedeno v patentovém spisu Spojených států amerických číslo 4,794,517 společnosti IEM, což je trojfázový zřetězený procesor číslicových signálů nebo Motorola 56000 popsaný výše, jsou také znázorněny. Pakety dat jsou převáděny do a z paměti hlavního systému do vyrovnávací paměti uvnitř rozhodovacího řadiče s přímým přístupem do paměti a řídicí jednotky a do a z vyrovnávací paměti v řídicí jednotce s přímým přístupem do paměti přes sběrnice paměti do paměti procesoru číslicových signálů pro data nebo instrukce.
Pro tyto účely může být použita programovatelná řídicí jednotka a rozhodovací řadič ovladače sběrnice 3 přímým přístupem do parně ti dostupné ve formě čipu Intel 82325. Ten může být označen jako technický prostředek “ovladač sběrnice”, který provádí aktuální přenos požadovaných paketů dat mezi datovou pamětí hlavního osobního počítače a pamětí instrukcí nebo dat procesoru číslicových signálů. Řídicí jednotka ovladače sběrnice může být rozdělena ve dvě hlavní funkční složky: procesor seznamu paketů a manipulační program převádění. Procesor seznamu paketů přijímá '‘startovní” dávkovači signál z operačního systému procesoru číslicových signálů na začátku jednoho intervalu například 726 mikrosekund. Začíná číst rozdělení ze seznamu paketů vytvořeného v paměti procesoru číslicových signálů vytvořeného v paměti procesoru číslicových signálů z adresy, kde naposled nalezl požadavek paketu čekání, který je ohraničením oddílu nebo znakem. Informace řízení a adresy v požadavku paketu s přímým přístupem do paměti z paměti procesoru číslicových signálů je zpracována a zavedena k mechanismu manipulačního programu přenosu s přímým přístupem do paměti, který provádí specifikovaný přenos s přímým přístupem do paměti.
-18Informace řízení a adresy v seznamu požadavků paketů je zpracována a přenesena do manipulačního programu mechanismu přímého přístupu do paměti, který provádí specifikovaný přenos s přímým přístupem do paměti jako v jakémkoli normálním řídicím přístroji hlavní sběrnice. Proces pokračuje opakováním požadavku paketu dokud opět nenarazí na Čekací paket. To zastaví technický prostředek hlavní sběrnice s přímým přístupem do paměti a ukončí zpracování oddílu seznamu požadavku paketů.
Vratme se k výše uvedenému příkladu uživatele, který si přeje na svém osobním počítači provádět funkci rozpoznávání řeči a funkci přehrávání hi-fi CD hudby použitím procesoru číslicových signálů. Uživatel nejprve bude požadovat rozpoznávání řeči a funkci hi-fi volbou například vhodných obrázků přes myš nebo kurzor nebo jiný prostředek na svém osobním počítači. Tato volba vydá požadavek zavedení příslušných úloh procesoru číslicových signálů. Požadavek prochází procesorem znázorněným v obr.6, aby se nejprve zjistilo, zda jsou dostupné vhodné velikosti zdroje procesoru číslicových signálů a šířky pásma s přímým přístupem do paměti. Dříve než jsou tyto požadované úlohy skutečně zavedeny, jsou vyvolány řízení zdroje a funkce přidělení (u hlavního osobního počítače ve přednostním provedení) pro ověření, že existuje dostatečný zdroj pro uspokojení požadavků úlohy procesoru číslicových signálů, které budou deklarovány vyvoláním požadovaných úloh uživatelem. Jestliže existuje dostatečný zdroj, jak je znázorněno v obr.6, budou úlohj' zavedeny a funkce začnou operace v procesoru číslicových signálů. Jinak bude vyvinuta odpovídající zpráva chyby uživatelským osobním počítačem pro sdělení uživateli, že požadovaná úloha nemůže být zavedena.
V tomto popisu se předpokládá, že operační systém procesoru číslicových signálů již byl inicializován a že před přijetím jakýchkoli nových požadavků funkcí procesoru číslicových signálů byly na sběrnicích umístěny požadavky přenosu s přímým přístu» pem do paměti a znaky pro jakékoli předem požadované funkce ve vyrovnávací paměti seznamu paketů a byly inicializovány nebo taktovány technické prostředky řídicí jednotky s přímým přístupem do paměti v každém časovém intervalu, jako je předpokládaných 726 mikrosekund. Za předpokladu, že nebyly požadovány žádné předešlé úlohy, bude tento příklad předpokládat, že úloha rozpoznávání řeči deklaruje požadavek dvou kanálů s přímým přístupem
-19do paměti a šířku pásma mající vrcholovou hodnotu 256 slov na kanál a že úloha hi-fi deklaruje jeden kanál s přímým přístupem do paměti a šířku pásma mající vrcholovou hodnotu 64 slov pro jejich požadavky. Vždy když úloha CD běží v procesoru číslicových signálů, bude žádat dalších 64 slov dat z paměti procesoru hlavního systému ve formě vzorků číslicového signálu původně čtených z CD disku. Tyto musí být přeneseny z paměti hlavního systému k paměti procesoru číslicových signálů do vyrovnávací kruhové paměti seznamu paketů pro provádění. Aby se to provedlo, procesor číslicových signálů zavolá služební rutinu svého operačního systému pro umístění požadavku přímého přístupu do paměti a to se bude provádět pokaždé když úloha poběží, to znamená, že vždy musí být vzorek 64 slov zpracován. Při každém volání procesor číslicových signálů zajistí zapsání další adresy paměti procesoru hlavního systému nebo čtení z a do další adresy vyrovnávací paměti procesoru číslicových signálů při které začíná čítání 64 slov.
Kromě toho vždy když běží úloha rozpoznávání řeči v procesoru číslicových signálů, zavolá službu požadavku přímého přístupu do paměti operačního systému procesoru číslicových signálů.
Každý požadavek bude mít jedinou systémovou adresu a jedinou adresu vyrovnávací paměti procesoru číslicových signálů pro vydání dvou rozpoznávacích šablon z hlavního systému vždy když běží. Každá šablona bude mít délku 256 slov v největším počtu programů rozpoznávání řeči,' ve všech budou zapsány tři požadavky přímého přístupu do paměti postupně do seznamu požadavků paketů s přímým přístupem do paměti operačním systémem procesoru číslicových signálů jak se vyskytují.
Požadavky přenosu paketů s přímým přístupem do paměti budou prováděny technickými prostředky řídicí jednotky s přímým přístupem do paměti a rozhodovacím řadičem během postupných 726 mikrosekund následujících po umístění rozdělovacího znaku0 Znak je stav čekání nebo konec seznamu v segmentu seznamu požadavků přenosu s přímým přístupem do paměti vytvářeného procesorem číslicových signálů.. Na začátku této další části periody operační systém procesoru číslicových signálů umístí požadavek paketu stavu čekání jako ukončovací znak v oddílu seznamu paketů, který právě vytvořil a odstartuje technický prostředek s přímým přístupem do paměti hlavní sběrnice hodinovým signálem nebo dávkovacím příkazem.
Technický prostředek s přímým přístupem do paměti hlavní
-20sběrnice přistoupí do paměti procesoru Číslicových signálů, nalezne paket, který požaduje přemístění 256 slov pro úlohu rozpoznávání řeěi, zavede řídicí slova přítomná v požadavku paketu, aby se zjistilo, kolik slov musí být přemístěno a jaké jsou hranice řízení adresování modulo. Potom se přečte pamět procesoru hlavního osobního počítače a adresy paměti lokálního procesoru číslicových signálů z požadavku přenosu paketů s přímým přístupem do paměti. Potom se rozhodne o přístupu buď do mikrokanálu osobního počítače nebo jiné hlavní sběrnice a když bude povolen přístup ke sběrnici, bude přenesen určitý počet (16 bytů) dat z paměti hlavního procesoru do vyrovnávací paměti v technickém prostředku s přímým přístupem do paměti. Řídicí jednotka s přímým přístupem do paměti potom rozhodne pro sběrnici paměti procesoru číslicových signálů a vždy když dostane povolení, zapíše další slovo do paměti procesoru číslicových signálů podle adresy paměti procesoru číslicových signálů, kterou čte ze seznamu požadavků paketů s přímým přístupem do paměti. Proces pokračuje jak bylo popsáno výše dokud nebyly všechny potřebné pakety s přímým přístupem do paměti zpracovány. I když bylo více požadavků paketů s přímým přístupem do paměti umístěno operačním systémem procesoru číslicových signálů během běžných 726 mikrosekund, nebyly zpracovány a nebudou před začátkem dalšího časového intervalu. Proces pokračuje periodicky dokud všechny úlohy procesoru číslicových signálů nejsou případně ukončeny uživatelem ve hlavním systému.
V tomto návrhu budiž uvedeno, Že seznam požadavků přenosu paketů s přímým přístupem do paměti spolu s procesorem číslicových signálů a s přidělením šířky pásma s přímým přístupem do paměti a řídicím procesorem (vedeným ve hlavním osobním počítači v tomto provedení) zajištuje provádění a pohyb všech požadavků přenosu datových paketů s přímým přístupem do paměti během dvojnásobku základního hodinového intervalu ke procesoru s přímým přístupem do paměti. Takto budou nevyřízené požadavky s přímým přístupem do paměti v rozděleném seznamu vytvořeném operačním systémem procesoru číslicových signálů v paměti procesoru číslicových signálů v jednom intervalu zpřístupněny a čteny strojem přímého přístupu do paměti a provedeny během následujícího časového intervalu 726 mikrosekund ve příkladu uvedeném výše. Jestliže vzorky měly být vzaty z paměti hlavního osobního počítače a zavedeny do paměti procesoru číslicových signálů, stane se to během
-21časového intervalu 726 mikrosekund. Během následujícího časového intervalu procesor číslicových signálů začne zpracovávat vzorky dat a vytvářet nové požadavky paketů s přímým přístupem do paměti pro zavedení zpracovaných vzorků zpět do hlavního systému.
Tyto požadavky budou umístěny do oddílu seznamu požadavků s přímým přístupem do paměti následujícího za právě prováděným řídicí jednotkou a rozhodovacím řadičem s přímým přístupem do paměti. Takto se v dalším následujícím časovém intervalu “dokončené vzorky“ stanou dostupnými pro přenos s přímým přístupem do pa· měti z procesoru číslicových signálů zpět do procesoru hlavního systému s celkovým časovým zpožděním zpracování pouze dvou intervalů přímého přístupu do paměti.
Stejná operační rychlost bude dosažena pro všechny nevyřízené požadavky úloh za předpokladu, že celkový zdroj procesoru číslicových signálů požadovaný úlohami a celková Šířka pásma s přímým přístupem do paměti nebyly překročeny. To je zajištěno přidělovacím a řídicím mechanismem pracujícím v systému hlavního osobního počítáme. To znamená, že “tvrdé” úlohy v reálném čase běžící v procesoru Číslicových signálů mohou být zajištěny vydáním dostatečných dat nebo odváděním zpracovaných dat pro vyhovění požadavkům jakýchkoli úloh požadovaných uživatelem. Protože pro všech ny úlohy, které mají běžet ve hlavním systému, se vyžaduje napřed specifikace maximálního počtu slov, který má být přenesen požadav kem paketů a maximálního požadovaného počtu milionů instrukcí za sekundu u procesoru číslicových signálů, přidělovací jednotka zdrojů ve hlavním osobním počítači bude přesně znát, jak dlouhý může být seznam požadavků přenosu s přímým přístupem do paměti ve kterémkoli okamžiku a když je nebezpečí překročení schopnosti, není dovoleno vyvolání jakýchkoli nových úloh.
Řídicí jadnotka a rozhodovací řadič s přímým přístupem do paměti tedy vždy zpracovává požadavky přenosu paketů s přímým přístupem do paměti v procesoru číslicových signálů, které byly umístěny úlohami během předešlých časových intervalů. A zatímco stroj přímého přístupu do paměti pracuje na svém rozdělení běžného seznamu požadavků s přímým přístupem do paměti, jsou nové požadavky přenosu paketů s přímým přístupem do paměti umístěny do dalšího následujícího rozdělení řady požadavků paketů s přímým přístupem do paměti v paměti procesoru Číslicových signálů pro přístup mechanismem přímého přístupu do paměti a prováděním
-22v nejbližším časovém intervalu. Tento návrh zajištuje jednoduchou migrační cestu ke mnohonásobným procesorům číslicových signálů v systému. Každý procesor číslicových signálů by mši svůj vlastní technický prostředek provádění přenosu paketů s přímým přístupem do paměti působící jako ovladač sběrnice pro sběrnici procesoru číslicových signálů nebo sběrnice hlavního osobního počítače. Na. víc, jestliže všechny procesory číslicových signálů sdílejí jedny a tytéž hodiny časového zdroje přerušení jako stroj přímého přístupu do paměti, potom by pamět hlavního systému mohla zajišťovat jednoduchý prostředek nebo vyrovnávací pamět pro data mezi procesory číslicových signálů.
Je tedy zřejmé, že řídicí jednotka a rozhodovací řadič s přímým přístupem do paměti pro provádění požadavků paketů představuje solidní řešení problému zacházení s velkým množstvím komunikačních kanálů nebo požadavků mezi hlavním procesorem a procesorem číslicových signálů nebo mezi množstvím procesorů číslicových signálů a prováděním úloh ve všech různých procesorech. Při pokusu o implementaci více než 100 kanálů s přímým přístupem do paměti při pouhém použití technických prostředků, jako použitím 100 jednotlivých přístrojů technických prostředků s přímým přístupem. do paměti by mělo za následek nákladný systém, který by téměř nebyl schopný rozhodování a řízení. Řídicí jednotka, rozhodovací řadič a procesor seznamů vyloučí požadavek rozhodování mezi 100 kanály s přímým přístupem do paměti, protože jsou časově multiplexovánj' tím, že budou všechny obslouženy během cyklického časového intervalu pro zpracování sekvenčním způsobem individuálním rozhodováním o sběrnici, povoleními a přenosem řetězců dat, která jsou zajištěna pro přivádění ve předepsaném časovém intervalu.
Jak je zřejmé z předešlého popisu, řídicí jednotka a rozhodovací řadič ovladače sběrnice vstupu a výstupu s přímým přístupem do paměti je základním prvkem systému znázorněného v obr,2.
V obr.5 je znázorněn celkový tok dat a hlavní řízení technických prostředků takové řídicí jednotky a rozhodovacího řadiče. Taková řídicí jednotka může být koupena na trhu majíc dostatečnou schopnost technických prostředků a programového vybavení pro provádění operací znázorněných v obr.3 a může to být Intel Model 82325 jako programovatelná řídicí jednotka a rozhodovací řadič ovladače sběrnice. Řídicí jednotka a rozhodovací řadič ovladače
-23vstupní a výstupní sběrnice s přímým přístupem do paměti (nebo krátce ovladač sběrnice) používá čtyři řídicí jednotky technických prostředků znázorněných v obr.3. Jsou to řídicí jednotka 10 paketů, manipulační a řídicí jednotka 11 přímého přístupu do paměti,řídicí jednotka a rozhodovací řadič 13 místního procesoru číslicových signálů s přímým přístupem do paměti a rozhodovací řadič 12 hlavního systému s přímým přístupem do paměti.
V obr.3 řídicí jednotka 10 paketů čte slova řízení paketů z datové paměti procesorů číslicových signálů z rozděleného sezná mu požadavků zanesených tam operačním systémem procesoru číslicových signálů. Po čtení pěti řídicích slov, jak je znázorněno v obr.4, pro daný požadavek paketu spustí řídicí jednotka 10 paketů manipulační a řídicí jednotku 11 s přímým přístupem do paměti.
Manipulační a řídicí jednotka 11 s přímým přístupem do paměti rozdělí čítání bytů paketu oznámené v řídicích slovech paketu s přímým přístupem do paměti do nějakého počtu řetězců dat.
V závislosti na směru přenosu, označeném směrem bitu přenosu v požadavku paketu s přímým přístupem do paměti manipulační a řídicí jednotka 11 opakovaně inicializuje buď sběrnici hlavního sys tému, řídicí jednotku a rozhodovací řadič 12 ovladače sběrnice nebo řídicí jednotku a rozhodovací řadič 13 ovladače sběrnice procesoru číslicových signálů pro provedení rozhodnutí pro příslušné sběrnice a přenos vhodné délky řetězce dat do nebo z počátečních adres v obr,3. V obr.5 je registr 14 vytvořen z několika segmentů, jak je znázorněno, a je to ukazatel paketů s přímým přístupem do paměti. Je to 16*bitový registr, který může být čten pouze procesorem číslicových signálů a obsahuje 12 nejméně významných bitů ukazatele k seznamu požadavků paketů s přímým přístupem do paměti v datové paměti procesoru číslicových signálů. Registr je aktualizován technickými prostředky a tři bity nejvyššího řádu budou nulové. Tři bity nejnižěího řádu a bit 15 neexistují jako takové a jsou čteny jako nulové v dané implementaci. Data v datové paměti, která budou přiváděna do tohoto registru, jsou uložena jako bytová adresa. Registr 19 je složen z několika částí a obsahuje adresu paměti systému nebo hlavního systému.
Je to 32-bitový registr, který není možno číst nebo zapisovat do něho buď procesorem číslicových signálů nebo procesorem systému
-24pro hlavní systém. Obsahuje adresu k paměti hlavního systému nebo prostoru vstupu a výstupu, který bude použit pro přenos paketů. Nižších 24 bitů tohoto registru 19 se samočinně zvyšuje pro přenosy paměti procesoru hlavního systému. Volba paměti nebo prostoru vstupu a výstupu je označena bitem systémové paměti vstupu a výstu j pu. Adresa uložená v tomto registru je bytová adresa.
Registr 18 je adresa paměti procesoru číslicových signálů a je to 16-bitový samočinně se zvyšující registr, který není možno číst nebo do něho psát procesorem číslicových signálů nebo systémem hlavního osobního počítače. Obsahuje adresu paměti dat nebo instrukcí procesoru číslicových signálů použitých pro přenos paketů. Jsou užity bity řízené modulo pro řízení přírůstků tohoto registru. Data v datové paměti, která budou zaváděna do registru, jsou uložena jako slovo nebo instrukční adresa s pouze nižšími 15 bity použitými pro tvorbu adresy k datové paměti.
Manipulační jednotka 11 s přímým přístupem do paměti v obr.3 je inicializována startovním signálem s přímým přístupem do paměti ze řídicí jednotky 10 paketů, jak je znázorněno v obr.3. Manipulač· ní jednotka 11 nejprve změní čítání paketů přijaté ze řídicí jednotky 10 paketů na čítání bytu paketů. Funkce manipulační jednotky 11 s přímým přístupem do paměti spočívá v rozdělení čítání bytu paketů v čítání řetězců protože vnitřní vyrovnávací pamět řídicího mechanismu s přímým přístupem do paměti obsahuje v daném provedení dvě paměti s přímým přístupem s 18 osmibitovými byty, takže velikost řetězců je omezena na 32 byty v nějakém čase. Jestliže bit bytu nebo slova ze řídicích registrů ukazuje bytový modus, data v datové paměti nebudou zhušťována. Pouze byt nižšího řádu datové paměti je využit pro operace ovládače sběrnice. Za těchto podmínek je použita normální velikost řetězce 16 bitů.
Přenosy s přímým přístupem do paměti se provádějí s použitím čítání řetězce Čítání řetězce je rovné délce řetězce vyjma případu kdy zbývající nebo počáteční čítání paketu je menší než délka řetězce. Čítání bytu paketu je opakovaně rozděleno na řetězce až do vyčerpání.
V obr.8 je počáteční čítání bytu zavedeno do akumulátoru 35* Manipulační jednotka 11 technických prostředků s přímým přístupem do paměti obsahuje technické prostředky znázorněné v obr08. Délka řetězce je založena na hodnotě bitu bytu nebo slova obsaženého
-25v řídicí informaci v požadavku přenosu s přímým přístupem do paměti. Je-li znaménkový bit nulový, znamená to, že hodnota v . akumulátoru 35 je větší než délka řetězce. Délka řetězce se předem zvolí podle použitého systému, jak bylo popsáno výše. Čítání bytů se zavede do systému a do čítače s přímým přístupem do paměti procesoru číslicových signálů a manipulační jednotka 11 s přímým přístupem do paměti hlídá směrové bity.
Jestliže směrové bity čtené ve bloku 29 v obr.7 oznamují čtení z paměti hlavního systému, manipulační jednotka II sepne řízení multiplexoru vstupních dat s portem systémových dat, jak je patrno na výstupu bloku 11 v obr.3. Řízení systémové vyrovnávací paměti bude také zvoleno a manipulační jednotka 11 s přímým přístupem do paměti spustí hlavní řídicí jednotku 12 systému. Hlavinf řídicí jednotka 12 systému bude pracovat k naplnění vyrovnávací paměti 14 vnitřní paměti s přímým přístupem do paměti a bude inter· pretovat operaci jako čtení z paměti hlavního systému k vyrovnávací paměti. Po napsání dat k vyrovnávací paměti 14 hlavní řídicí jednotka 12 systému oznámí dokončení přenosu zpět manipulační jednotce 11 s přímým přístupem do paměti, jak je patrno z čáry signálu v obr.3.
Po přijetí dokončovacího signálu manipulační jednotka II s přímým přístupem do paměti sepne řízení vyrovnávací paměti k řídicí jednotce 13 s přímým přístupem do paměti procesoru číslicových signálů. Manipulační jednotka 1JL s přímým přístupem do paměti odstartuje řídicí jednotku 13 s přímým přístupem do paměti procesoru číslicových signálů, která bude provádět přenos dat z vyrovnávací paměti 14 k pamgti procesoru číslicových signálů a po dokončení oznámí zpět manipulační jednotce 11 s přímým přístupem do paměti, že dokončila přenos.
Jestliže manipulační jednotka 11 s přímým přístupem do paměti zjistila zápis do systémové paměti jako směr přenosu, manipulační jednotka 11 s přímým přístupem do paměti sepne řízení multiplexoru vstupních dat k datovému portu s přímým přístupem do paměti procesoru číslicových signálů a řízení vyrovnávací paměti s přímým přístupem do paměti procesoru číslicových signálů bude vybráno pro vyrovnávací pamět 14 pro řídicí jednotku 13 s přímým přístupem do paměti procesoru číslicových signálů. Manipulační jednotka 11 s přímým přístupem do paměti potom odstartuje řídicí jednotku 13 s přímým přístupem do paměti procesoru číslicových
-26signálů, která bude interpretovat operaci jako čtení z paměti procesoru číslicových signálů do vyrovnávací paměti 14* Řídicí jednotka 12 bude pokračovat v plnění vyrovnávací paměti 14 a po načtení dat do vyrovnávací paměti 14 oznámí zpět dokončení přenosu manipulační jednotce 11. Když tato zjistí, že operace s přímým přístupem do paměti procesoru číslicových signálů byla dokončena, manipulační jednotka 11 sepne řízení vyrovnávací paměti ke straně systému, provede inicializaci řídicí jednotky 12 ovládače sběrnice hlavního systému a přenese data z vyrovnávací paměti 14 do paměti hlavního systému. Po dokončení řídicí jednotka 12 oznámí tuto skutečnost zpět do manipulační jednotky 11 a přímým přístupem do paměti.
Po přenosu prvního řetězce manipulační jednotka 11 naplní akumulátor 35 v obr.8 zbývajícím čítáním bytů. Je-li opět znaménkový bit nulový, čítání řetězce se nastaví rovné délce řetězce a toto množství dat se přenese operací s přímým přístupem do paměti. Je-li však znaménkový bit rovný 1, čítání v akumulátoru 35 bude nižší než je délka řetězce v registru 36 řetězce. Multiplexor 22 dvě ku jedné potom vybere obsah akumulátoru 35 jako konečný a poslední přenos s přímým přístupem do paměti. Jednička pro znaménkový bit je brána jako záporné číslo a nula pro tento bit je brána jako kladné číslo nebo jako nula. Detekce nuly je důležitá, protože oznamuje, že nulové čítání by nemohlo být provedeno. Po vyčerpání čítání bytů paketu manipulační jednotka 11 odpoví řídicí jednotce 10 paketů v obr.3 oznámením o dokončení.
Rozhodovací řadič a řídicí jednotka 13 s přímým přístupem do paměti v obr.3 procesoru číslicových signálů je součástí výše uvedené programovatelné řídicí jednotky vstupu a výstupu s přímým přístupem do paměti Intel 82325* Využívá čítač adres procesoru číslicových signálů s čítáním modulo jakož i obsahu čítače bytů naplněného čítáním řetězce, jak je znázorněno výstupy bloků 14 a 15 směrovanými do bloku 13 v obr.3. Řídicí jednotka 10 paketů plní čítač adres ve 13 a manipulační jednotka 11 s přímým přístupem do paměti plní čítač bitů a nuluje adresu vnitřní vyrovnávací paměti při inicializaci startu operací s přímým přístupem do paměti procesoru číslicových signálů. Manipulační jednotka 11 s přímým přístupem do paměti také nastavuje cesty dat vyrovnávací paměti s přímým přístupem a řídí před startem řídicí jednotku 13 s přímým přístupem procesoru číslicových signálů.
-27Čítač čítání bytů s přímým přístupem do paměti procesoru Číslicových signálů čítá po jednom nebo po dvou když operace ovladače sběrnice zavede ukládání dat. Čítač bytů Čítá po jedné v modu bytů a po dvou v modu slov. Čítač bytů čítá po čtyřech když operace působí uložení instrukce, jak je patrno z bloku 38 v obr.5.
Po přijetí startovacího signálu řídicí jednotka 13 s přímým přístupem do paměti procesoru číslicových signálů pracuje tak, že buď čte data z procesoru číslicových signálů a ukládá je do vnitřní vyrovnávací paměti 14 nebo je čte z vnitřní vyrovnávací paměti U a ukládá je do procesoru číslicových signálů a nebo čte vyrovnávací pamět a ukládá ji do paměti instrukcí procesoru číslicových signálů v závislosti na informaci směrových bitů Ol a 02, jak je znázorněno v obre4.
Řídicí jednotka a rozhodovací řadič 12 ovladače sběrnice hlavního systému v obr<>3 je také částí čipu Intel 82325· Tato řídicí jednotka ovládá dvousměrný pohyb dat mezi sběrnicemi hlavního osobního počítače a vyrovnávací pamětí—vnitřní paměti s přímým přístupem^14v obr.3. Tato řídicí jednotka 12 využívá sekvenční obvod ósmibodového greyova kódu, který je taktován po 30 nanosekundách a dává cykly řetězců o délce 240 nanosekund. Řídicí jendnotka obsahuje logiku pro rozhodování pro sběrnici hlavního systému, srovnání bytů, řízení dat, funkce krokování a udrv žování pro modulo adresování paměti a logiku zhuštování vnitřní vyrovnávací paměti. Krokováním se rozumí přírůstek adresy skákající ze startovní adresy v paměti na následující startovní adresu. Udržováním se rozumí počet slov (adres) od nějaké počáteční adresy, které mají být v každém čase čteny. Skokem” se rozumí počet slov (adres) nečtených, to znamená počet slov, u kterých krokování překračuje hodnoty udržování. Řídicí jednotka 12 je připojena k řídicí jednotce 10 paketů a k manipulační jednotce 11 s přímým přístupem do paměti, jak je znázorněno v obr.3. Připojení k řídicí jednotce 10 paketů je jednoduché připojení řídicím slovem a parametry řídicího slova ze řídicího slova v obr.4 jsou přeneseny do ovladače sběrnice hlavního systému a rozhodovacího řadiče. Obsahuje směrovací bity, indikátor slova bytu, horní a spodní adresy systému atd., jak je znázorněno v obr.3. Směrové bity informují řídicí jednotku 12 zda se budou provádět operace čtení nebo zápisu v paměti hlavního systému. Systémový bit informuje řídicí jednotku 12 zda se má číst nebo psát bud do paměti
-28hlavního osobního počítače nebo do jejího prostoru pro vstup a výstup. Horní a spodní systémová adresa spolu spojeny specifikují startovní adresy použité řídicí jednotkou 12 pro operace ovladače v
sběrnice, čítač systémových adres je schopný zvyšování přes 20 bitů, takže všechny operace jsou uspořádány v rozsahu 1 megabytu. Bity krokování/udržování a povolení vložené do řídicí jednotky 12 ze řídicí jednotky 10 paketů dovolují zvyšování adres hlavního systému pro umožnění skoků, to znamená provádět adresování modulo nebo bloků paměti když je dovoleno. Hodnoty krokování a udržování jsou bytové hodnoty zavedené do řídicí jednotky 12 řídicí jednotkou 10 paketů. Hodnota ''udržování je inklusivní v hodnotě krokování” podle obecné formule udržování plus skok je rovno krokování, jak bylo uvedeno výše.
Manipulační jednotka 11 s přímým přístupem do paměti inicializuje start operací v systému řídicí jednotky a rozhodovacího řadiče 12 ovladače sběrnice. Po inicializaci má řídicí jednotka 12 Λ----- íÍHtu)-, úplné řízeni(vyrovnávací^sběrniceyl4 vnitřní paměti s přímým přístupem^ pro kterou zajištuje adresy vyrovnávací paměti a signály povolení zápisu a přijímá nebo získává data vyrovnávací paměti. Čítání řetězců a čítání parametrů nových paketů se převádí manipulační jednotkou 11 s přímým přístupem do paměti do řídicí jednotky 12.
Celková operace řídicí jednotky 10 paketů začíná signálem z procesoru číslicových signálů uvedených dříve jako dávkovači řízení. Začínaje v obr.9 bude tok operací v řídicí jednotce 10 paketů v obr,9 podrobně popsán. Řídicí jednotka 10 paketů začíná dávkovacím signálem z procesoru číslicových signálů. Ve bloku 40 přistupuje do datové paměti procesoru číslicových signálů, kde je uložen seznam paketů s přímým přístupem do paměti a čte čítač cyklů. Získá první startovní polohu ukazatele paketu s přímým přístupem do paměti ve bloku 41 z procesoru číslicových signálů a potom čte datovou pamět procesoru číslicových signálů a čítač cyklů ve bloku 42. Ve bloku 43 je ukazatel zvýšen a ve bloku 44 je provedena zkouška, aby se zjistilo, zda byl dosažen konec seznamu paketů v seznamu požadavků paketů s přímým přístupem do paměti v procesoru číslicových signálů. Kebyl-li konec dosažen, řídicí jednotka přečte směrové bity ve bloku 45 a když jsou oba nulové, značí to, že byl dosažen paket modus čekání, zvýší se čtyřikrát ukazatel paketů ve bloku 46 a následuje návrat ke bloku 40 a čeká se na nový
-29dávkovací signál.
Nebyly-li zjištěny žádné bity modu čekání, pokračuje operace do bloku 48, kde se čte řídicí registr, jak je označeno ukazatelem paketů. Ve bloku 49 je ukazatel zvýšen a provede se zkouška bitů vysokého řádu, aby se zjistilo, zda jsou větší než nula. Jsou-11 větší než nula, neprovede se ve bloku 51 žádné vložení parametrů udržování a krokování. Jsou-li však bity 11-15 nenulové, vloží se hodnoty pro udržování a krokování do adres bitů obsažených v bitech 11-15 z registrů 1 a 2 řídicího slova, jak je podrobně ukázáno v obr.4.
Ve bloku 53 se do bitů 08-23 registru adres systému vloží data, která jsou označena ukazatelem, který se zvýší ve bloku 56, kde se do specifikovaného registru adres vloží data označená ukazatelem, který se potom zvýší ve bloku 58.
Ve bloku 58 se adresa procesoru číslicových signálů uloží, když je provedena adresa slova a přenos ve bloku 60 z nebo do adresy procesoru číslicových signálů oznámená inicializací manipulační jednotky 11 s přímým přístupem do paměti z obr.3. Operace pokračuje zpět ke bloku 42 pro načtení další adresy datové paměti procesoru číslicových signálů, atd. Opět se provedeou zkoušky na konec seznamu ve bloku 44 a když byl dosažen konec seznamu, ve bloku 47' se vloží adresa ukazatele s přímým přístupem do paměti se startovní polohou ukazatele paketů, takže řídicí jednotka 10 paketů se vrátí zpět k dalšímu rozdělení segmentovaného seznamu požadavků s přímým přístupem do paměti vytvořeného procesorem číslicových signálů.
Ze předešlého popisu je zřejmé, že popsaný systém je celkový počítačový systém obsahující podsystém s přímým přístupem do pěměti a hlavní počítač ke přímému přístupu do paměti a přímý přístup do paměti ke množině procesorů číslicových signálů podsystémů , které jsou jedinečně vhodné pro požadavky aplikací souběžných úloh v trvalém reálném čase jako jsou úloha prováděné v počítačovém systému s více medii. Prvky celkového počítačového systému s více medii obsahují dobře známé a komerčně dostupné součástky jako procesory číslicových signálů, čipy rozhodovacích řadičů a řídicích jednotek s přímým přístupem do paměti a jednotek vstupu a výstupu, a počítače hlavního systému výše popsané a znázorněné.
Uspořádání systému a podsystému a prostředky řízení a komunikace mezi podsystémy a jednotlivými procesory zajišťuje
-30jedinečné výhody předloženého vynálezu, přičemž odborníkovi bude zřejmé, žě jsou možné četné odchylky ve struktuře technických prostředků i ve struktuře programového vybavení systému i podsystémů aniž by se vybočilo z rámce způsobu činnosti funkčního uspořádání systému. Tak například ačkoliv běžně dosažitelná rychlost procesoru číslicových signálů a kapacita paměti jsou výborné, budou brzy dosažitelné značně rychlejší procesory s větší pamětí, načež bude přeložení funkce manipulování se zdrojem od zpracování dat ke procesoru číslicových signálů praktické, nebo, naopak, přeložení řízení požadavků zdroje procesoru číslicových signálů může být předáno pomocnému procesoru ve stejném systému jako zpracování dat a procesor číslicových signálů nebo může procesor číslicových signálů mít takovou rychlost a kapacitu paměti, že je schopen nejen provádět úlohy procesoru číslicových signálů, avšak řídit přidělování vlastního zdroje a aktuálně provádět uživatelské úlohy místo zpracování dat, vše bez vybočení z rámce myšlenky předloženého vynálezu. Také přímý přístup do paměti může být účelně nahrazen když procesor číslicových signálů dostane přímé provádění programů uživatelských úloh, takže řídicí jednotka vstupu a výstupu s přímým přístupem do paměti interprocesoru nebude požadována pokud operační systém procesoru číslicových signálů může řídit všechny příděly zdroje zpracování signálu procesoru číslicových signálů se řízenými seznamy úloh, stejně j ako řídicí jednot ka vstupu a výstupu s přímým přístupem do paměti a seznamy paketů procesoru číslicových signálů jsou ve přednostním provedení řízeny. Tak například požadavky seznamu paketů procesoru číslicových signálů by mohly být zpracovány a řízeny samotným procesorem číslicových signálů, jako by mohl počáteční úkol přidělení zdroje, je-li k dispozici dostatečně rychlý procesor Číslicových signálů a je dostupná kapacita hlavní paměti. Krátce řečeno, vynález uvažuje provádění uživatelských úloh, přidělování zdroje, vytváření seznamů přenosů dat, provádění úloh zpracování signálů pro uživatelské úlohy a celkové nahrazení funkce přímého přístupu do paměti použitím jednoho samotného procesoru číslicových signálů když jsou dosažitelné vyšší rychlosti provádění a/nebo větší kapacity pamětí v takových procesorech číslicových signálůo
Claims (8)
- PATENTOVÉ NÁROKY1. Počítačový systém s více medii pro zajištění efektivních datových přenosů, zahrnující:první procesor číslicových signálů (DP, hlavní procesor) pro provádění programů uživatelských úloh, který umísťuje požadavky zpracování číslicových signálů na systém v podporovaném provádění uvedených uživatelských úloh;druhý procesor číslicových signálů (DSP) pro provádění uvedených požadavků zpracování číslicových signálů podporováním provádění programů uživatelských úloh prvním procesorem (DP);prostředek, reagující na přijetí požadavku zpracování číslicových signálů uvedeným druhým procesorem číslicových signálů (DSP), pro přizpůsobení uvedeného druhého procesoru číslicových signálů (DSP) pro vytvoření rozdělené fronty požadavků přenosu dat s přímým přístupem do paměti pro přenos dat do nebo z uvedeného druhého procesoru číslicových signálů (DSP) s podporou uvedeného ,_ ___ požadavku na zpracování uvedeného číslicového signálu;uvedený systém se vyznačující tím, že obsahuje prostředek pro přizpůsobení uvedeného prvního procesoru číslicových signálů (DP) pro předání uvedenému druhému procesoru číslicových signálů (DSP) pouze těch požadavků zpracování číslicových signálů, jejichž požadavky zdroje zpracování kombinovaného signálu nepřesahují dostupnou kapacitu zdroje zpracování signálu druhého procesoru číslicových signálů (DSP); a uvedená rozdělená fronta obsahuje znaky rozdělení v pravidelných časových intervalech zavedené uvedeným druhým procesorem číslicových signálů (DSP).
- 2. Počítačový systém podle nároku 1, vyznačující se tím, že každý z uvedených požadavků přenosu dat s přímým přístupem do paměti je-32zajištěn uvedeným druhým procesorem číslicových signálů (DSP) s poli specifikujícími paměť, zdrojové a cílové adresy, směr přenosu, počet jednotek dat, které mají být přeneseny, a operační indikátory řízení, jakož i konec indikátoru požadavku.
- 3. Počítačový systém podle nároku 1 nebo 2, vyznačující se tím, že dále obsahuje:U řídicí jednotka (DMA/IO) vstupu a výstupu s přímým přístupem do paměti interprocesoru pro řízení přenosu dat mezi uvedeným prvním procesorem číslicových signálů (DP) a uvedeným druhým procesorem číslicových signálů (DSP); aC( datové a adresové sběrnice propojující uvedená řídicí jednotka' (DMA/IO) vstupu a výstupu s přímým přístupem do paměti s uvedeným prvním procesorem číslicových signálů (DP) a druhým procesorem číslicových signálů (DSP).
- 4. Počítačový systém podle nároků 2 a 3, vyznačující se tím, že uvedená řídicí jednotka (DMA/IO) vstupu a výstupu s přímým přístupem do paměti interprocesoru provádí přenos uvedeným prvním procesorem číslicových signálů (DP) procesorem číslicových signálů (DSP) přístupem rozdělené frontě a řízením přenosu dat v souhlasu s uvedenými poli specifikujícími data v uvedených požadavcích.dat mezi a druhým uvedené
- 5. Počítačový systém podle nároku 3 nebo 4, vyznačující se tím, že uvedený druhý procesor číslicových signálů (DSP) vytváří část uvedené fronty a ukládá požadavky přenosu dat uvedená řídicí jednotka (DMA/IO) vstupu a výstupu s přímým přístupem do paměti interprocesoru do ní během pravidelných časových intervalů, během kterých uvedená řídicí jednotka (DMA/IO) vstupu a výstupu s přímým přístupem do paměti interprocesoru provádí přenosy dat na základě požadavků přenosu dat z jiné části uvedené fronty.
- 6. Počítačový systém podle alespoň jednoho z nároků 1 až 5, vyznačující se tím, že dále obsahuje prostředek pro odhad-33požadavku zdroje zpracování signálu druhého procesoru číslicových signálů (DSP) nutného pro podporu každého programu uživatelových úloh jeho volbou uživatelem, kde uvedený odhad obsahuje požadavek přenosu maxima dat programu zvoleného uživatelem během určeného časového intervalu, maximum žádané rychlosti provádění a maximum velikosti paměti požadované druhým procesorem číslicových signálů (DSP).
- 7. Počítačový systém podle nároku 4, vyznačující se tím, že uvedená řídicí jednotka (DMA/IO) vstupu a výstupu s přímým přístupem do paměti interprocesoru obsahuje vyrovnávací paměť a provádí požadavky přenosu dat přístupem ke zdrojové adrese paměti, přenosem dat z ní do vyrovnávací paměti, přístupem k adrese určení paměti a přenosem dat do ní z vyrovnávací paměti.
- 8. Způsob řízení činnosti počítačového systému s více medii pro zajištění efektivních datových přenosů, majícího první procesor číslicových signálů (DP, hlavní procesor) pro provádění programů uživatelských úloh a druhý procesor číslicových signálů (DSP) pro provádění požadavků zpracování číslicových signálů v podporovaném provádění uvedených programů uživatelských úloh v uvedeném prvním procesoru číslicových signálů (DP), vyznačující se tím, že obsahuje kroky:určení ((3), (6), Obr.6) celkového požadavku zdroje druhého procesoru číslicových signálů (DSP) pro podporu provádění jakékoli aktivní uživatelem zvolené programové úlohy;porovnání ((3), (6), Obr.6) uvedeného celkového požadavku zdroje druhého procesoru číslicových signálů (DSP) s maximální kapacitou zdroje druhého procesoru číslicových signálů (DSP);potlačení ((4), Obr.6) provádění uvedeného programu uživatelem zvoleného úkolu v prvním procesoru číslicových signálů (DP) jestliže požadavek zdroje uvedeného programu úkolu způsobuje, že celkový požadavek zdroje druhého procesoru číslicových signálů ΐΜνχ 4 (ρ,
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US76153491A | 1991-09-18 | 1991-09-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
CZ9400549A3 true CZ9400549A3 (cs) | 2002-05-15 |
CZ290716B6 CZ290716B6 (cs) | 2002-10-16 |
Family
ID=25062507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CZ1994549A CZ290716B6 (cs) | 1991-09-18 | 1992-08-26 | Počítačový systém s více médii |
Country Status (15)
Country | Link |
---|---|
US (3) | US5404522A (cs) |
EP (1) | EP0604471B1 (cs) |
JP (1) | JPH0827782B2 (cs) |
KR (1) | KR970000910B1 (cs) |
CN (1) | CN1026733C (cs) |
AT (1) | ATE149259T1 (cs) |
BR (1) | BR9203427A (cs) |
CA (1) | CA2069711C (cs) |
CZ (1) | CZ290716B6 (cs) |
DE (1) | DE69217664T2 (cs) |
HU (1) | HU219533B (cs) |
PH (1) | PH31674A (cs) |
PL (1) | PL170083B1 (cs) |
SK (1) | SK31194A3 (cs) |
WO (1) | WO1993006553A1 (cs) |
Families Citing this family (122)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5440740A (en) * | 1992-10-13 | 1995-08-08 | Chen; Fetchi | System and method for managing devices on multiple digital signal processors |
US6026443A (en) * | 1992-12-22 | 2000-02-15 | Sun Microsystems, Inc. | Multi-virtual DMA channels, multi-bandwidth groups, host based cellification and reassembly, and asynchronous transfer mode network interface |
US5828856A (en) * | 1994-01-28 | 1998-10-27 | Apple Computer, Inc. | Dual bus concurrent multi-channel direct memory access controller and method |
US5655151A (en) * | 1994-01-28 | 1997-08-05 | Apple Computer, Inc. | DMA controller having a plurality of DMA channels each having multiple register sets storing different information controlling respective data transfer |
US5805927A (en) * | 1994-01-28 | 1998-09-08 | Apple Computer, Inc. | Direct memory access channel architecture and method for reception of network information |
AU2192295A (en) * | 1994-03-30 | 1995-10-23 | Apple Computer, Inc. | Streaming storage system and streaming data buffer |
DE4428068A1 (de) * | 1994-08-09 | 1996-02-15 | Sel Alcatel Ag | Telekommunikationsendgerät |
TW270193B (cs) * | 1994-08-10 | 1996-02-11 | Ibm | |
US5634076A (en) * | 1994-10-04 | 1997-05-27 | Analog Devices, Inc. | DMA controller responsive to transition of a request signal between first state and second state and maintaining of second state for controlling data transfer |
US5685005A (en) * | 1994-10-04 | 1997-11-04 | Analog Devices, Inc. | Digital signal processor configured for multiprocessing |
US5634099A (en) * | 1994-12-09 | 1997-05-27 | International Business Machines Corporation | Direct memory access unit for transferring data between processor memories in multiprocessing systems |
US5864712A (en) * | 1995-03-17 | 1999-01-26 | Lsi Logic Corporation | Method and apparatus for controlling (N+I) I/O channels with (N) data managers in a homogenous software programmable environment |
DE69614291T2 (de) * | 1995-03-17 | 2001-12-06 | Lsi Logic Corp., Fort Collins | (n+i) Ein/Ausgabekanälesteuerung, mit (n) Datenverwaltern, in einer homogenen Software-Programmierbetriebsumgebung |
US5774745A (en) * | 1995-03-31 | 1998-06-30 | Cirrus Logic, Inc. | Method and apparatus for writing and reading entries in an event status queue of a host memory |
US5659749A (en) * | 1995-05-08 | 1997-08-19 | National Instruments Corporation | System and method for performing efficient hardware context switching in an instrumentation system |
EP0834136B1 (en) * | 1995-06-07 | 1999-08-11 | Advanced Micro Devices, Inc. | Computer system having a dedicated multimedia engine including multimedia memory |
US5870622A (en) * | 1995-06-07 | 1999-02-09 | Advanced Micro Devices, Inc. | Computer system and method for transferring commands and data to a dedicated multimedia engine |
WO1997006490A1 (en) * | 1995-08-09 | 1997-02-20 | Cirrus Logic, Inc. | Parasitic personal computer interface |
US5692211A (en) * | 1995-09-11 | 1997-11-25 | Advanced Micro Devices, Inc. | Computer system and method having a dedicated multimedia engine and including separate command and data paths |
US5784592A (en) * | 1995-09-11 | 1998-07-21 | Advanced Micro Devices, Inc. | Computer system which includes a local expansion bus and a dedicated real-time bus for increased multimedia performance |
US5917502A (en) * | 1995-12-06 | 1999-06-29 | Intergraph Corporation | Peer-to-peer parallel processing graphics accelerator |
US5748921A (en) * | 1995-12-11 | 1998-05-05 | Advanced Micro Devices, Inc. | Computer system including a plurality of multimedia devices each having a high-speed memory data channel for accessing system memory |
US5761532A (en) * | 1995-12-29 | 1998-06-02 | Intel Corporation | Direct memory access controller with interface configured to generate wait states |
US5954811A (en) * | 1996-01-25 | 1999-09-21 | Analog Devices, Inc. | Digital signal processor architecture |
US5896543A (en) * | 1996-01-25 | 1999-04-20 | Analog Devices, Inc. | Digital signal processor architecture |
JPH09212461A (ja) * | 1996-01-29 | 1997-08-15 | Internatl Business Mach Corp <Ibm> | データ転送制御方法 |
US6115767A (en) * | 1996-03-04 | 2000-09-05 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method of partially transferring data through bus and bus master control device |
US5987590A (en) * | 1996-04-02 | 1999-11-16 | Texas Instruments Incorporated | PC circuits, systems and methods |
US5894554A (en) * | 1996-04-23 | 1999-04-13 | Infospinner, Inc. | System for managing dynamic web page generation requests by intercepting request at web server and routing to page server thereby releasing web server to process other requests |
US6006286A (en) * | 1996-04-26 | 1999-12-21 | Texas Instruments Incorporated | System for controlling data packet transfers by associating plurality of data packet transfer control instructions in packet control list including plurality of related logical functions |
EP0804008B1 (en) * | 1996-04-26 | 2006-11-15 | Texas Instruments Incorporated | Apparatus for data packet transfer control |
US5898892A (en) * | 1996-05-17 | 1999-04-27 | Advanced Micro Devices, Inc. | Computer system with a data cache for providing real-time multimedia data to a multimedia engine |
US5805838A (en) * | 1996-05-31 | 1998-09-08 | Sun Microsystems, Inc. | Fast arbiter with decision storage |
US6832380B1 (en) * | 1996-06-28 | 2004-12-14 | Tarantella, Inc. | Client-server application partitioning with metering technique for distributed computing |
US5898895A (en) * | 1996-10-10 | 1999-04-27 | Unisys Corporation | System and method for controlling data transmission rates between circuits in different clock domains via selectable acknowledge signal timing |
US5926649A (en) * | 1996-10-23 | 1999-07-20 | Industrial Technology Research Institute | Media server for storage and retrieval of voluminous multimedia data |
US6076127A (en) * | 1996-11-06 | 2000-06-13 | International Business Machines Corporation | Configuration of a single point bus arbitration scheme using on-chip arbiters |
US6055619A (en) * | 1997-02-07 | 2000-04-25 | Cirrus Logic, Inc. | Circuits, system, and methods for processing multiple data streams |
US6259957B1 (en) | 1997-04-04 | 2001-07-10 | Cirrus Logic, Inc. | Circuits and methods for implementing audio Codecs and systems using the same |
JPH10328163A (ja) | 1997-05-28 | 1998-12-15 | Siemens Ag | 核スピン断層撮影装置のためのパルスシーケンスの制御方法及び装置 |
US6539415B1 (en) * | 1997-09-24 | 2003-03-25 | Sony Corporation | Method and apparatus for the allocation of audio/video tasks in a network system |
US6002882A (en) * | 1997-11-03 | 1999-12-14 | Analog Devices, Inc. | Bidirectional communication port for digital signal processor |
US5938744A (en) * | 1997-11-04 | 1999-08-17 | Aiwa/Raid Technlogy, | Method for managing multiple DMA queues by a single controller |
US6061779A (en) * | 1998-01-16 | 2000-05-09 | Analog Devices, Inc. | Digital signal processor having data alignment buffer for performing unaligned data accesses |
EP0936813A1 (en) | 1998-02-16 | 1999-08-18 | CANAL+ Société Anonyme | Processing of digital picture data in a decoder |
US6253237B1 (en) * | 1998-05-20 | 2001-06-26 | Audible, Inc. | Personalized time-shifted programming |
US6418459B1 (en) * | 1998-06-09 | 2002-07-09 | Advanced Micro Devices, Inc. | Isochronous task scheduling structure for a non-real-time operating system |
US6704763B1 (en) | 1998-06-09 | 2004-03-09 | Advanced Micro Devices, Inc. | Hardware enforcement mechanism for an isochronous task scheduler |
US6421702B1 (en) * | 1998-06-09 | 2002-07-16 | Advanced Micro Devices, Inc. | Interrupt driven isochronous task scheduler system |
US6502123B1 (en) | 1998-06-09 | 2002-12-31 | Advanced Micro Devices, Inc. | Isochronous system using certified drivers to ensure system stability |
US7616200B1 (en) | 1998-06-12 | 2009-11-10 | 3Dlabs Inc. Ltd. | System for reducing aliasing on a display device |
US6378017B1 (en) * | 1998-07-08 | 2002-04-23 | Nms Communications Corporation | Processor interconnection |
WO2000004527A1 (en) * | 1998-07-17 | 2000-01-27 | Intergraph Corporation | Apparatus and method of directing graphical data to a display device |
WO2000004496A1 (en) | 1998-07-17 | 2000-01-27 | Intergraph Corporation | Graphics processor with texture memory allocation system |
WO2000004528A1 (en) | 1998-07-17 | 2000-01-27 | Intergraph Corporation | System for displaying a television signal on a computer monitor |
WO2000004482A2 (en) | 1998-07-17 | 2000-01-27 | Intergraph Corporation | Multi-processor graphics accelerator |
US6188410B1 (en) | 1998-07-17 | 2001-02-13 | 3Dlabs Inc. Ltd. | System for processing vertices from a graphics request stream |
WO2000004484A2 (en) | 1998-07-17 | 2000-01-27 | Intergraph Corporation | Wide instruction word graphics processor |
WO2000004443A1 (en) | 1998-07-17 | 2000-01-27 | Intergraph Corporation | Byte reordering apparatus and method |
WO2000004494A1 (en) | 1998-07-17 | 2000-01-27 | Intergraph Corporation | Graphics processing system with multiple strip breakers |
WO2000004436A1 (en) | 1998-07-17 | 2000-01-27 | Intergraph Corporation | Graphics processing with transcendental function generator |
US6415345B1 (en) * | 1998-08-03 | 2002-07-02 | Ati Technologies | Bus mastering interface control system for transferring multistream data over a host bus |
US6219725B1 (en) * | 1998-08-28 | 2001-04-17 | Hewlett-Packard Company | Method and apparatus for performing direct memory access transfers involving non-sequentially-addressable memory locations |
US6233639B1 (en) | 1999-01-04 | 2001-05-15 | International Business Machines Corporation | Memory card utilizing two wire bus |
US6674440B1 (en) | 1999-04-05 | 2004-01-06 | 3Dlabs, Inc., Inc. Ltd. | Graphics processor for stereoscopically displaying a graphical image |
GB9909196D0 (en) * | 1999-04-21 | 1999-06-16 | Texas Instruments Ltd | Transfer controller with hub and ports architecture |
EP1059781B1 (de) | 1999-05-06 | 2007-09-05 | Siemens Aktiengesellschaft | Kommunikationseinrichtung mit Mitteln zur Echtzeitverarbeitung von zu übertragenden Nutzdaten |
NO993483L (no) | 1999-07-15 | 2001-01-16 | Ericsson Telefon Ab L M | Fremgangsmåte og anordning for effektiv overföring av datapakker |
US6892339B1 (en) * | 1999-09-20 | 2005-05-10 | Freescale Semiconductor, Inc. | Discrete multi-tone (DMT) system and method that communicates a data pump data stream between a general purpose CPU and a DSP via a buffering scheme |
US6421744B1 (en) * | 1999-10-25 | 2002-07-16 | Motorola, Inc. | Direct memory access controller and method therefor |
US6985964B1 (en) * | 1999-12-22 | 2006-01-10 | Cisco Technology, Inc. | Network processor system including a central processor and at least one peripheral processor |
US7661107B1 (en) | 2000-01-18 | 2010-02-09 | Advanced Micro Devices, Inc. | Method and apparatus for dynamic allocation of processing resources |
US6925641B1 (en) * | 2000-02-04 | 2005-08-02 | Xronix Communications, Inc. | Real time DSP load management system |
US6757904B1 (en) * | 2000-03-10 | 2004-06-29 | Microsoft Corporation | Flexible interface for communicating between operating systems |
US6615173B1 (en) * | 2000-08-28 | 2003-09-02 | International Business Machines Corporation | Real time audio transmission system supporting asynchronous input from a text-to-speech (TTS) engine |
JP4915631B2 (ja) * | 2000-09-06 | 2012-04-11 | エスティー‐エリクソン、ソシエテ、アノニム | プロセッサ間通信システム |
WO2002033504A2 (en) * | 2000-10-02 | 2002-04-25 | Altera Corporation | Programmable logic integrated circuit devices including dedicated processor components |
US6721826B2 (en) * | 2001-09-25 | 2004-04-13 | Lsi Logic Corporation | Buffer partitioning for managing multiple data streams |
MXPA04003127A (es) * | 2001-10-10 | 2005-01-25 | Gartner Inc | Sistema y metodo para asignar una medida metrica de motor a un sistema de computacion. |
US7234144B2 (en) * | 2002-01-04 | 2007-06-19 | Microsoft Corporation | Methods and system for managing computational resources of a coprocessor in a computing system |
EP1351514A3 (en) * | 2002-04-01 | 2005-07-20 | Broadcom Corporation | Memory acces engine having multi-level command structure |
US7302503B2 (en) * | 2002-04-01 | 2007-11-27 | Broadcom Corporation | Memory access engine having multi-level command structure |
US7426182B1 (en) * | 2002-08-28 | 2008-09-16 | Cisco Technology, Inc. | Method of managing signal processing resources |
WO2005015386A1 (ja) * | 2003-08-07 | 2005-02-17 | Matsushita Electric Industrial Co., Ltd. | プロセッサ集積回路及びプロセッサ集積回路を用いた製品開発方法 |
US20050038946A1 (en) * | 2003-08-12 | 2005-02-17 | Tadpole Computer, Inc. | System and method using a high speed interface in a system having co-processors |
US7895411B2 (en) * | 2003-10-02 | 2011-02-22 | Nvidia Corporation | Physics processing unit |
US7739479B2 (en) * | 2003-10-02 | 2010-06-15 | Nvidia Corporation | Method for providing physics simulation data |
US20050086040A1 (en) * | 2003-10-02 | 2005-04-21 | Curtis Davis | System incorporating physics processing unit |
JP2005128963A (ja) * | 2003-10-27 | 2005-05-19 | Toshiba Information Systems (Japan) Corp | 記憶制御装置及びdma転送が可能な制御システム |
US7188195B2 (en) * | 2003-11-14 | 2007-03-06 | Hewlett-Packard Development Company, L.P. | DMA slot allocation |
US7240135B2 (en) * | 2004-03-05 | 2007-07-03 | International Business Machines Corporation | Method of balancing work load with prioritized tasks across a multitude of communication ports |
US20050251644A1 (en) * | 2004-05-06 | 2005-11-10 | Monier Maher | Physics processing unit instruction set architecture |
US7457484B2 (en) * | 2004-06-23 | 2008-11-25 | Creative Technology Ltd | Method and device to process digital media streams |
US20060026308A1 (en) * | 2004-07-29 | 2006-02-02 | International Business Machines Corporation | DMAC issue mechanism via streaming ID method |
JP4585809B2 (ja) * | 2004-08-02 | 2010-11-24 | 株式会社リコー | 画像処理制御装置 |
US20060075157A1 (en) * | 2004-09-28 | 2006-04-06 | Paul Marchal | Programmable memory interfacing device for use in active memory management |
EP1647894A3 (en) | 2004-10-12 | 2007-11-21 | NEC Electronics Corporation | Information processing apparatus with parallel DMA processes |
US8079036B2 (en) * | 2004-11-10 | 2011-12-13 | Microsoft Corporation | Method and system for structured DMA transactions |
US7369502B2 (en) * | 2004-12-02 | 2008-05-06 | Cisco Technology, Inc. | Intelligent provisioning of DSP channels for codec changes |
US7774584B2 (en) * | 2005-03-30 | 2010-08-10 | Freescale Semiconductor, Inc. | Discrete multi-tone (DMT) system and method that communicates a data pump data stream between a general purpose CPU and a DSP via a buffering scheme |
US7697536B2 (en) * | 2005-04-01 | 2010-04-13 | International Business Machines Corporation | Network communications for operating system partitions |
US7620746B2 (en) * | 2005-09-29 | 2009-11-17 | Apple Inc. | Functional DMA performing operation on DMA data and writing result of operation |
US7496695B2 (en) * | 2005-09-29 | 2009-02-24 | P.A. Semi, Inc. | Unified DMA |
JP2007156824A (ja) * | 2005-12-05 | 2007-06-21 | Nec Electronics Corp | プロセッサシステム、タスク制御方法 |
US7415449B2 (en) * | 2006-01-30 | 2008-08-19 | Xerox Corporation | Solution recommendation based on incomplete data sets |
US20090222270A2 (en) * | 2006-02-14 | 2009-09-03 | Ivc Inc. | Voice command interface device |
US8069279B2 (en) | 2007-03-05 | 2011-11-29 | Apple Inc. | Data flow control within and between DMA channels |
GB2459331B (en) * | 2008-04-24 | 2012-02-15 | Icera Inc | Direct Memory Access (DMA) via a serial link |
US8526460B2 (en) * | 2008-10-01 | 2013-09-03 | Harris Corporation | Systems and methods for scheduling asynchronous tasks to residual channel space |
US8181184B2 (en) * | 2008-10-17 | 2012-05-15 | Harris Corporation | System and method for scheduling tasks in processing frames |
US8719463B2 (en) * | 2010-11-16 | 2014-05-06 | Taiwan Semiconductor Manufacturing Company, Ltd. | Processor with tightly coupled smart memory unit |
US8843714B1 (en) * | 2011-03-30 | 2014-09-23 | Emc Corporation | Write pacing simulation tool |
US9553590B1 (en) | 2012-10-29 | 2017-01-24 | Altera Corporation | Configuring programmable integrated circuit device resources as processing elements |
CN103955408B (zh) * | 2014-04-24 | 2018-11-16 | 深圳中微电科技有限公司 | Mvp处理器中有dma参与的线程管理方法及装置 |
US10452392B1 (en) | 2015-01-20 | 2019-10-22 | Altera Corporation | Configuring programmable integrated circuit device resources as processors |
US10110233B2 (en) | 2016-06-23 | 2018-10-23 | Altera Corporation | Methods for specifying processor architectures for programmable integrated circuits |
US10805424B2 (en) | 2017-06-29 | 2020-10-13 | Bank Of America Corporation | System for sending digital requests for resource transfers |
CN111093109B (zh) * | 2018-10-24 | 2022-07-29 | 杭州海康威视数字技术股份有限公司 | 媒体数据播放处理方法、媒体播放设备 |
CN112328520B (zh) * | 2020-09-30 | 2022-02-11 | 郑州信大捷安信息技术股份有限公司 | 一种pcie设备、基于pcie设备的数据传输方法和系统 |
CN112328519B (zh) * | 2020-09-30 | 2022-02-18 | 郑州信大捷安信息技术股份有限公司 | 一种pcie设备、基于sr-iov的数据包有序传输方法和系统 |
US20220029936A1 (en) * | 2021-06-01 | 2022-01-27 | Fujitsu Limited | Packet transmission device and packet transmission method |
CN117215664B (zh) * | 2023-08-21 | 2024-06-11 | 白盒子(上海)微电子科技有限公司 | 一种片上系统多核dsp快速启动方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS603216B2 (ja) * | 1977-12-26 | 1985-01-26 | 富士通株式会社 | デ−タ処理システム運転制御方式 |
US4485438A (en) * | 1982-06-28 | 1984-11-27 | Myrmo Erik R | High transfer rate between multi-processor units |
JPS63153643A (ja) * | 1986-12-17 | 1988-06-27 | Mitsubishi Electric Corp | ジヨブの選択制御方式 |
CA1279393C (en) * | 1987-01-23 | 1991-01-22 | A. David Milton | Digital signal processing system |
US5195092A (en) * | 1987-08-04 | 1993-03-16 | Telaction Corporation | Interactive multimedia presentation & communication system |
JPH065524B2 (ja) * | 1987-11-18 | 1994-01-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 記憶装置管理方法 |
US4930069A (en) * | 1987-11-18 | 1990-05-29 | International Business Machines Corporation | Mechanism and method for transferring data between bus units having varying master and slave DMA capabilities |
US5142672A (en) * | 1987-12-15 | 1992-08-25 | Advanced Micro Devices, Inc. | Data transfer controller incorporating direct memory access channels and address mapped input/output windows |
JPH01291545A (ja) * | 1988-05-18 | 1989-11-24 | Fujitsu Ltd | マルチメディア多重化装置 |
US5003465A (en) * | 1988-06-27 | 1991-03-26 | International Business Machines Corp. | Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during DMA read/write operations between a common memory and an input/output device |
US4935868A (en) * | 1988-11-28 | 1990-06-19 | Ncr Corporation | Multiple port bus interface controller with slave bus |
JPH02170644A (ja) * | 1988-12-22 | 1990-07-02 | Nec Corp | マルチメディア通信システムの優先送信方法 |
US5377332A (en) * | 1989-10-02 | 1994-12-27 | Data General Corporation | Bus arbitration algorithm and apparatus |
US5247626A (en) * | 1990-05-29 | 1993-09-21 | Advanced Micro Devices, Inc. | Fddi controller having flexible buffer management |
US5303369A (en) * | 1990-08-31 | 1994-04-12 | Texas Instruments Incorporated | Scheduling system for multiprocessor operating system |
US5165021A (en) * | 1991-01-18 | 1992-11-17 | Racal-Datacom, Inc. | Transmit queue with loadsheding |
US5226041A (en) * | 1991-02-21 | 1993-07-06 | International Business Machines Corporation | Method for efficiently simulating the dynamic behavior of a data communications network |
-
1992
- 1992-05-27 CA CA002069711A patent/CA2069711C/en not_active Expired - Fee Related
- 1992-08-04 JP JP4207901A patent/JPH0827782B2/ja not_active Expired - Fee Related
- 1992-08-18 PH PH44829A patent/PH31674A/en unknown
- 1992-08-18 KR KR1019920014825A patent/KR970000910B1/ko not_active Expired - Fee Related
- 1992-08-18 CN CN92108730A patent/CN1026733C/zh not_active Expired - Fee Related
- 1992-08-26 SK SK311-94A patent/SK31194A3/sk unknown
- 1992-08-26 PL PL92302682A patent/PL170083B1/pl not_active IP Right Cessation
- 1992-08-26 EP EP92918307A patent/EP0604471B1/en not_active Expired - Lifetime
- 1992-08-26 WO PCT/EP1992/001965 patent/WO1993006553A1/en active IP Right Grant
- 1992-08-26 DE DE69217664T patent/DE69217664T2/de not_active Expired - Fee Related
- 1992-08-26 AT AT92918307T patent/ATE149259T1/de not_active IP Right Cessation
- 1992-08-26 CZ CZ1994549A patent/CZ290716B6/cs not_active IP Right Cessation
- 1992-08-26 HU HU9400792A patent/HU219533B/hu not_active IP Right Cessation
- 1992-09-02 BR BR929203427A patent/BR9203427A/pt not_active IP Right Cessation
-
1993
- 1993-10-26 US US08/143,406 patent/US5404522A/en not_active Expired - Fee Related
-
1995
- 1995-02-06 US US08/384,192 patent/US5724583A/en not_active Expired - Fee Related
- 1995-06-08 US US08/474,713 patent/US5724587A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5724583A (en) | 1998-03-03 |
HU219533B (hu) | 2001-05-28 |
DE69217664T2 (de) | 1997-09-11 |
HUT68084A (en) | 1995-05-29 |
CA2069711C (en) | 1999-11-30 |
CZ290716B6 (cs) | 2002-10-16 |
US5404522A (en) | 1995-04-04 |
WO1993006553A1 (en) | 1993-04-01 |
DE69217664D1 (de) | 1997-04-03 |
HU9400792D0 (en) | 1994-07-28 |
BR9203427A (pt) | 1993-04-20 |
JPH0827782B2 (ja) | 1996-03-21 |
EP0604471A1 (en) | 1994-07-06 |
EP0604471B1 (en) | 1997-02-26 |
SK31194A3 (en) | 1994-07-06 |
KR970000910B1 (ko) | 1997-01-21 |
US5724587A (en) | 1998-03-03 |
CA2069711A1 (en) | 1993-03-19 |
CN1070751A (zh) | 1993-04-07 |
JPH05204828A (ja) | 1993-08-13 |
PH31674A (en) | 1999-01-18 |
CN1026733C (zh) | 1994-11-23 |
ATE149259T1 (de) | 1997-03-15 |
KR930006550A (ko) | 1993-04-21 |
PL170083B1 (pl) | 1996-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CZ9400549A3 (cs) | Počítačový systém s více medii | |
US5761464A (en) | Prefetching variable length data | |
JP3335172B2 (ja) | データ処理システム及びそれに使用するための入出力プロセッサ | |
US6115761A (en) | First-In-First-Out (FIFO) memories having dual descriptors and credit passing for efficient access in a multi-processor system environment | |
US6728722B1 (en) | General data structure for describing logical data spaces | |
US6701405B1 (en) | DMA handshake protocol | |
EP0288636A2 (en) | Network communications adapter | |
JPH06266650A (ja) | データを転送する方法と装置及びデータ転送をインタリーブする装置 | |
JPH071495B2 (ja) | データ処理システム | |
JPH06266649A (ja) | 複数のデータチャネルを介してデータを転送する方法及びその回路アーキテクチャ | |
WO2003003232A2 (en) | Data processing apparatus and a method of synchronizing a first and a second processing means in a data processing apparatus | |
US5014236A (en) | Input/output bus expansion interface | |
EP0485507A1 (en) | MODULAR INPUT / OUTPUT SYSTEM FOR SUPER COMPUTERS. | |
US6615296B2 (en) | Efficient implementation of first-in-first-out memories for multi-processor systems | |
KR100316190B1 (ko) | 로컬 메모리에서 패킷화된 동작 정보의 기억을 통한 입출력 성능을 증가시키기 위한 시스템 | |
US6877060B2 (en) | Dynamic delayed transaction buffer configuration based on bus frequency | |
CN116450564B (zh) | 一种多处理卡间的数据传输方法和系统 | |
US7979660B2 (en) | Paging memory contents between a plurality of compute nodes in a parallel computer | |
CN117312202B (zh) | 片上系统和用于片上系统的数据传输方法 | |
CN117971317B (zh) | 中央处理器与加速器交互方法、装置及电子设备 | |
JP2643116B2 (ja) | 主記憶制御装置 | |
Weeks et al. | Assessing the Feasibility of Using a Media I/O Processor in a VOD Server | |
CN120353743A (zh) | 一种数据传输方法、dma控制器、片上系统及存储介质 | |
CN119512997A (zh) | 一种数据传输方法及装置 | |
Bogaerts et al. | Experience with a virtual memory based data acquisition system at CERN |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Patent lapsed due to non-payment of fee |
Effective date: 20060826 |