Uživatel:Zalabmar

Z HPM wiki
Přejít na: navigace, hledání

Obsah

Rodina procesorů Texas Instruments TMS320

TMS320 je řada procesorů pro digitální zpracování signálů (DSP) společnosti Texas Instruments vyvíjející se od r. 1983 dodnes. Rodina se dále dělí na několik sérií, přičemž každý procesor je v rámci jedné řady kódově kompatibilní s druhým.

Na počátku tohoto vývoje byla řada TMS3201x, spuštěná v r. 1983. Výchozí model této řady je TMS32010. Procesor pracoval s 16bitovými celočíslenými daty (slovy) s časem jedné instrukce 160 ns. Pro představu, na mono audio signál v CD kvalitě (44100 vzorků za sekundu) to činí zhruba 140 instrukcí na jeden vzorek. Disponoval pamětí RAM až 256 slov a ROM až 4 tisíce slov.

Tms32010.png

Horní pohled na čip TMS32010



Dalším bodem vývoje byly na přelomu 80. a 90.let série TMS320C3x a TMS320C4x pracující s 32bit daty s plovoucí desetinou čárkou a z roku 94 též TMS320C8x MVP (Multimedia Video Processor). Poslední zmíněný je víceprocesorový čip, používající 32bit floating-point procesor jako řídící a 4 paralelní fixed-point procesory jako paralelní početní jednotky. Tento čip byl určený hlavně pro zpracování videa. Série C2000 obsahující subsérie C240x (16bit) a C28xx (32bit) přinesla řadu přidaných zařízení přimo na čipu, např. PWM, A/D.

Série C5000

První série dnes stále aktivní je série C5000 pracující s 16bit fixed-point aritmetikou a dostalo se jí další řady početních a paměťových rozšíření (instrukční doba např klesla na 25 - 8,3 ns, RAM: 5 - 32 tisíc slov, ROM: 2 - 48 tisíc slov). Série C54x našla na začátku 90. let uplatnění ve vysílačích v mobilních telefonech (např. Nokia, Ericsson). V rámci zkvalitnění uživatelských rozhraní přenosných zařízení tohoto typu došlo také ke spojení s procesorem ARM7 a vzniku dvojjádrového zařízení ARM7+C54x DSP, které se stalo přímým předchůdcem procesorů OMAP.

Pokračovatelem se stala série C55x, kde došlo k paralelizaci vnitřních dějů a celkovému snížení spotřeby. Tato série lze dnes nalézt především ve formě diskrétních čipů. Jeho výskyt je nečastější v zařízeních OMAP pro tablety a mobilní telefony, kde bývá spojen s procesorem ARM9 (OMAP1) či ARM11 (OMAP2420).

Více zde

Série C6000

Aktuální série DSP procesorů od TI, série C6000, využívá instrukce VLIW, neboli very long instruction word. To znamená, že instrukce, zpracovaná za jeden cyklus, má délku 256 bitů, leč představuje osm 32bitových instrukcí, které mohou (avšak nemusí být) využity.

Podrobnější informace možno nalézt zde

Několik dalších sérií...

V nabídce TI je i několik sérií specializovanějších modelů, zpravidla využívající jádra některého výše zmíněného procesoru. Zde je několik ukázek:

Programování C6000

Pro vývojáře softwaru má Texas Instruments balík nástrojů - toolchain. Balík obsahuje nástroje pro assembler, C/C++, operační systém SYS/BIOS (který slouží spíše jako jádro pro uživatelovy programy) a v placené verzi i IDE se debuggerem. Pro maximální optimalizaci je možné psát kód přímo v assembleru, sám výrobce však, pro jednoduchost, doporučuje použít C/C++ překladač cl6x s optimalizací -O3, přičemž tento překladač jeví zjevnou podobnost s GCC. Pro využití speciálních instrukcí procesorů je potřeba však použít C Intrinsics. Např. případ saturovaného součtu, který by bylo nutno v rámci klasického C řešit nějak takto:

int sadd(int a, int b)
{
  int result;
  result = a + b;
  if (((a ^ b) & 0x80000000) == 0)
  {
    if ((result ^ a) & 0x80000000)
    {
      result = (a < 0) ? 0x80000000 : 0x7fffffff;
    }
  }
return (result);
}

Umožňuje architektura C6000 řešit přímou instrukci:

int  _sadd(int,int);

Zde pdf uživatelské příručky pro vývojáře pro C6000.

Další čtení

Osobní nástroje
Jmenné prostory
Varianty
Akce
Navigace
Nástroje