RTV KLUB MURSKA SOBOTA DIGITALNI MOSTOVI "HITRI PACKET RADIO" Murska Sobota, september 2000
PHARE 2000 Matjaž Vidmar, S53MV V CQ ZRS 3/96 sem opisal pajek, ki omogoèa uporabo 32-bitnega mikroprocesorja MC68020 v veèini naprav, ki uporabljajo 16-bitne mikroprocesorje MC68000 ali MC68010. Bolj toèno je bil opisani pajek namenjen zamenjavi mikroprocesorja v DSP raèunalniku in v packet-radio vozlišèu SuperVozelj s ciljem poveèati zmogljivost teh dveh naprav. Poskusi so pokazali, da razen pajka potrebujeta tako DSP raèunalnik kot SuperVozelj manjše predelave za hitrejše delovanje z mikroraèunalnikom MC68020, pa tudi sam pajek se da še izboljšati. Predelave pajka se v glavnem nanašajo na vrednosti dušilnih uporov. Vrednosti v CQ ZRS 3/96 so se izkazale nekoliko previsoke. Ustreznejše vrednosti uporov so prikazane na sliki 1. Dušilni upori na naslovnem vodilu so zdaj 100ohm (namesto 330ohm), dušilni upori na podatkovnem vodilu 68ohm (namesto prejšnjih 220ohm) in dušilni upori na kontrolnih vodih (AS, UDS, LDS, RW in BG) so zdaj 47ohm (namesto 150ohm). Razen dušilnih uporov se je izkazalo koristno zmanjšati tudi upora, ki vleèeta UDS in LDS na +5V, na komaj 470ohm (prej sta bila 1.2 kohm). Verjetno je celotna predelava pajka lažje razvidna na sliki 2, ki prikazuje razporeditev sestavnih delov. Opisane vrednosti uporov so primerne za dolgo vodilo (8 vtiènic). Na kratkem vodilu (5 vtiènic) lahko brez škode uporabimo za eno stopnjo veèje upore, se pravi 150ohm na naslovnem vodilu, 100ohm na podatkovnem vodilu, 68ohm na kontrolnih vodih in dva upora 680ohm iz UDS in LDS na +5V. Z opisanimi spremembami so vrednosti dušilnih uporov zelo blizu karakteristièni impedanci vodov na vodilu, kar zagotavlja kar se da hitro dušenje "zvonjenja" ob preklopih vodila. Takt mikroraèunalnika MC68020 zdaj omejuje le še hitrost pomnilnikov na zunanjih karticah. Pri tem s 120ns pomnilniki dosežemo takt 14MHz, s 100ns pomnilniki takt 15MHz in z 80ns pomnilniki takt 16MHz. Seveda se da takt samega MC68020 naviti še dosti višje z vstavljanjem èakalnih stanj, podobno kot se to poène v komercialnih raèunalnikih. Podobno kot pri komercialnih raèunalnikih in njihovih silnih megahercih takšno ravnanje ne prinese kakšnega bistvenega poveèanja zmogljivosti naprave. V DSP raèunalniku ali SuperVozlju moramo predvsem preveriti vrsto vseh uporabljenih logiènih vezij iz družine 74... Ker v sluèaju uporabe MC68020 hitrost v glavnem omejujejo motnje na vodilu, moramo uporabljati izkljuèno logièna vezja iz družine 74HC... (ali kveèjemu 74AC...). Z vezji 74LS..., 74HCT... ali 74ACT... bojo velike težave predvsem zaradi drugaènih vhodnih logiènih nivojev. Vezja 74HCT... imajo na primer vhodni prag komaj 1.4V namesto 2.5V pri družini 74HC... Kljub podobnosti med družinama 74HC... in 74HCT... (marsikateri trgovec ju sploh ne loèi) so vezja 74HCT... veliko bolj obèutljiva na motnje na vodilu. Pri uporabi stare CPU plošèe z MC68020 ne smemo pozabiti na prevezavo vzporednega vmesnika upd71055 iz VPA na DTACK, saj MC68020 nima veè vhoda VPA. Pri višjih taktnih frekvencah se vèasih (delovanje s slikolovom) izkaže potrebno vgraditi kondenzator (okoli 560pF) med CS vhodom upd71055 in maso. Ta kondenzator je èrtkano oznaèen na naèrtih in na popravljeni CPU plošèi (CQ ZRS 3/95) sta zanj predvideni oèesi. Ker so zakasnitve sorazmerne dolžini vodila, se obièajno splaèa prestaviti pomnilniške plošèe v sicer enakovrednem vodilu tako, da se nahajajo èim bližje CPU plošèi. Pri tem se pomnilniki razliènih proizvajalcev razlièno obnašajo: nekateri so na položaj plošèe v vodilu zelo obèutljivi, drugi pa ne. RTV KLUB Murska Sobota 145
PHARE 2000 146 RTV KLUB Murska Sobota
PHARE 2000 Z izjemo pomnilnikov vsebujejo vse ostale plošèe DSP raèunalnika lastna vezja za vstavljanje èakalnih stanj, zato jim višji takt mikroprocesorja ne dela preglavic. Predelavo potrebuje le videlo plošèa in to zato, ker traja dostop do pomnilnika pri MC68020 le tri taktne cikle namesto štirih ciklov pri MC68000/10. Predelava video plošèe je potrebna, èe pri višjih taktih dobimo popackano sliko pri skroliranju vsebine video pomnilnika. Predelava, to je "pohitritev" DTACK vezja na video plošèi, je prikazana na sliki 3. Predvsem moramo izloèiti kondenzator 120pF, ki premošèa upor 6.8kohm na bazi tranzistorja 2N2369 (ali MPS2369). Namesto kondenzatorja vgradimo schottky diodo HP2811 med bazo in kolektor tranzistorja tako, da gleda katoda diode proti kolektorju. Drugo enako schottky diodo vgradimo vzporedno z uporom 330ohm, kondenzator zakasnilnega RC vezja pa zmanjšamo na približno 47pF. Ta kondenzator je sicer pametno vgraditi v dve nožici podnožja za integrirana vezja, da izberemo tisto vrednost, ki pri danem taktu mikroprocesorja najuèinkovitejše prepreèuje pacanje po zaslonu. V SuperVozlju je za uèinkovito uporabo MC68020 potrebno predelati SCC-DMA kartico, kot je to prikazano na sliki 4. Na SCC-DMA kartici je smiselno izloèiti oba krmilnika podatkovnega vodila 74HC245 ter ju nadomestiti s 16 dušilnimi upori po 470ohm. Ker je dostop DMA vezja do vodila razmeroma poèasen in traja 4 ali celo 5 taktnih ciklov, so vrednosti teh dušilnih uporov razmeroma visoke. Zamenjava 74HC245 z dušilnimi upori bistveno zmanjša motnje na vodilu. Opisani trik z upori sploh ni nekaj novega, saj je dobra stara Mavrica prav tako vsebovala 470- ohmske upore med vodili Z80CPU in ULA. Drugi ukrep je vezan na razmerje taktnih frekvenc mikroprocesorja MC68020 in DMA vezja MC68450. Èe dela MC68450 pri znatno nižjem taktu od MC68020, potem pride do motenj na signalu DTACK. MC68020 RTV KLUB Murska Sobota 147
PHARE 2000 zaène uporabljati DTACK še preden ga je MC68450 sprostil. Rešitev je v dodatni schottky diodi BAT47 in uporu 2.2kohm, ki ju vežemo zaporedno z nožico 11, to je vhodom/izhodom DTACK na vezju MC68450. Predelave DMA-SCC kartice so verjetno bolje razvidne na sliki 5, ki prikazuje razporeditev sestavnih delov. Pri tem vtaknemo 16 uporov 470ohm kar v izpraznjena podnožja vezij 74HC245. Veè dela je z dodatno schottky diodo in uporom 2.2kohm. Ta dva sestavna dela vgradimo tako, da prerežemo obstojeèo povezavo do nožice 11 DMA vezja MC68450 na spodnji strani tiskanine in nato zacinimo diodo in upor. Konèno moramo na SCC kartici kot tudi na DMA-SCC kartici prilagoditi taktne frekvence vseh vezij višji hitrosti delovanja mikroprocesorja. Pri taktu mikroprocesorja nad 14MHz moramo zvišati PCLK takt vseh SCC vezij na 10MHz ali veè. Takt DMA vezja mora znašati vsaj 75% takta mikroprocesorja MC68020, sicer pride do izgubljanja okvirjev. Z opisanimi predelavami in novo izvedbo programa SuperVozelj so poèasne 8MHz NMOS izvedbe DMA vezja MC68450 zanesljivo delovale celo do 14.5 MHz, tako da ta zadnja zahteva ne predstavlja veè omejitve za takt mikroprocesorja. MC68020 seveda ni od muh in vseh težav še zdaleè ni konec. Zaradi notranjega naèina delovanja MC68020 se isti program razlièno izvaja, ko je napisan na razliènih naslovih. Na 16- bitnem vodilu se zelo pozna, èe celoten program zamaknemo samo za en položaj (naslov+2). [e vedno pa si ne znam razložiti, zakaj se v tem sluèaju tudi DMA vezje MC68450 razlièno obnaša? Zadnja, a tudi najmanj uèinkovita izboljšava SuperVozlja je prikazana na sliki 6. Izboljšano vodilo je izdelano na tanjšem vitroplastu debeline komaj 0.8 mm, poveèana ravnina mase pa naj bi še dodatno zmanjšala presluh na vodilu. Tanjša tiskanina prinaša nižje induktivnosti in nižje karakteristiène impedance, kar za- hteva nizke vrednosti dušilnih uporov na pajku (100ohm naslovi, 68 ohm podatki in 47ohm kontrolni vodi). Z vsemi opisanimi izboljšavami sem uspel pognati SuperVozelj s CPU MC68020 s taktom 16MHz, DMA MC68450 s taktom 12MHz ter SCC vezja Z85C30 s taktom 10MHz. Takšen "naviti" SuperVozelj opravi dvakrat veè praznih zank kot MC68010 pri taktu 12MHz, na DMA kanalih pa se izgubi 10- krat manj okvirjev. Uporaba takšnega "navitega" SVja je zato smiselna povsod tam, kjer sta oba DMA kanala aktivna z megabitnimi hitrostmi, vsaj dokler ne najdemo boljše zamenjave za sedanji SuperVozelj... 148 RTV KLUB Murska Sobota