AMD am9513A System Timing Controller

něco jako 8253 na steroidech



Obvod AMD am9513 se ke mě dostal opravdu zajímavou cestou. Pořád se totiž pletl ve výsledcích vyhledávání, když jsem hledal, kterak zakoupiti kopráček am9511. Nakonec tedy skočil na objednávkovém listu a posléze u mě na stole (děkuji Jirko). Nijak zvlášť jsem o něj ale nestál a ani neplánoval si s ním bůhvíjak hrát. Prvotní dojem byl ten, že když se něco jmenuje System Timing Controller, bude to nějaký systémový "hodinář" pro nějaký procesor. A protože se mi u AMD pořád plete označení 95xx a 29xx, usoudil jsem, že je to něco k těm jejich AMD řezům, o které jsem se ještě nezačal zajímat. Vždy jsem tíhnul spíše k řezům Intelu řady 3000, když už je vyráběla i naše Tesla...

Jenže, když už ten brouk ležel přede mnou na stole, nedalo mi to, a podíval jsem se na něj podrobněji. A ejhle! Žádný jednoúčelový systémový hodinář, ale programovatelný periferní obvod s čítači/časovači, který je připojitelný ke všem klasickým mikroprocesorům té doby. Po dalším zkoumání jsem si udělal malé přirovnání: am9513 je vlastně takový Intel 8253 na steroidech. Na pořádných steroidech, protože tak nabušený časovací obvod jsem snad ještě neviděl (v kontextu doby pochopitelně).



AMD am9513A



Obvod am9513 obsahuje pět nezávislých 16-bitových čítačů/časovačů, se kterými lze provádět neskutečné kousky. Mohou čítat vzestupně i sestupně. Binárně, v BCD kódu, nebo dokonce i ve 24 hodinovém cyklu. Lze je spouštět jednorázově, nebo opakovaně. Mají automatický preload a to dokonce 2x (dvě alternující hodnoty preloadu). Dva z čítačů mají ještě compare registr (pro automatické generování PWM) a alarm registr (pro mód event counteru). Výstup lze definovat jako jediný puls, nebo toggle (sqare wave). Čítače lze používat jak v režimu timerů, tak counterů (vč. tzv. event counterů), lze programovat na jakou polaritu vstupních impulsů mají čítat. Pochopitelně je lze hradlovat, přiřazovat jim různé zdroje kmitočtu a také je řetězit, a to až do celkové "délky" fantastických 80 bitů! Je toho prostě spousta. Vždyť datasheet má na tu dobu celkem ohromujících 40 stran a ještě odkazuje na jakýsi User Manual!


    Software pro 8051 a 9513



Z hlediska připojení k CPU se jedná o klasiku s klasickými signály kompatibilními třeba s 8080, Z80, apod. Komunikace s obvodem je tedy v pohodě. Jediné, na co je třeba si zvyknout, je adresování interních registrů. Je totiž nepřímé. Nejprve je nutné nastavit datapointer registr, který pak adresuje příslušný konfigurační registr a teprve poté můžeme zapsat konfigurační data. Datapointer se přitom může, nebo nemusí (dle nastavení) automaticky inkrementovat.

Obvod obsahuje vlastní oscilátor a tak vyžaduje pouze připojení krystalu a kalibračních kondíků. Maximální vstupní frekvence může být cca 7 MHz (přesněji 6,8 MHz). Je možné připojit i jiný zdroj kmitočtu, já použil TTL oscilátor s nejmenším krystalem, jaký jsem měl po ruce (1,8 MHz), abych mohl na výstupy připojit LEDky a pozorovat reakce na nich (světýlka já rád:-)). Před zavedením na vstup interních čítačů je možné základní vstupní kmitočet ještě vydělit až 16-bitovým předděličem. Obvod disponuje i výstupem kontinuálních hodin FOUT, které jsou odvozeny od vstupního kmitočtu děleného až 20 bitovým děličem. Vše je pochopitelně plně programovatelné. Až hrůza, co to všechno umí...

Na následujících obrázcích je fotografie z průběhu testu am9513 s mým DUINem52. Způsob připojení am9513 k 8051 je popsán ve zdrojáku testovacího programu. Test jsem tentokrát spíše odflákl a tak jsem si jen pohrál s výstupem FOUT a timerem 3, u kterého jsem si vyzkoušel i hradlování. Výstupy kmitočtů jsem pozoroval na LEDkách. Vše je popsáno v bohatě komentovaném zdrojáku. Obvod se choval přesně podle popisu v datasheetu.


Test am9513A
Test am9513A s 8051
Test am9513A
Test am9513A s 8051


Obvod AMD am9513 je u nás málo známý. V našich končinách se prosadil spíše zmiňovaný Intel 8253, který se v socbloku i vyráběl (u bolševiků), případně ještě Z80 CTC, který zase vyráběli dederóni. Oproti oběma těmto obvodům je ale am9513 opravdu nabušený machr, který toho umí fakt hodně. Jen je potřeba věnovat delší čas jeho studiu, protože zpočátku se možnosti jeho nastavování zdají nekonečné a to ve vývojáři probouzí jistou beznaděj:-) Pokud mu ale přijdete na kloub, je to fantastická součástka, která stojí za pozornost.



Literatura:

[1] Datasheet AMD am9513A





RET



Odladěno na MS IE 8.0 a Firefoxu při rozlišení min. 1024 x 768 pixelů
www.NOSTALCOMP.cz    2010  -  2017