PS/2

PS/2 on sünkroonne jadaliides hiire ja klaviatuuri (sisendseadmete) ühendamiseks personaalarvutiga.
Liidese nimi pärineb 1987 välja lastud IBM-i Personal System / 2 sarja personaalarvutitelt. PS/2 vahetas välja varasema D-sub DE-9 RS-232-hiire jadaliidese ning PS/2-klaviatuuriliides vahetas välja varasema 5-viigulise DIN-pistikühenduse. Hiire- ja klaviatuuriliides on sarnased ning kasutavad andmete edastamiseks sama sideprotokolli. Sellegipoolest ei ole PS/2 süsteemi hiire- ja klaviatuuripordid omavahel vahetatavad, kuna neis kasutatakse eri käsusüsteeme. Vältimaks portide segiajamist, tähistatakse neid eri värvidega, klaviatuuriliidest lilla ja hiireliidest rohelisega. Seoses USB-liidesega klaviatuuride ja hiirte tulekuga on PS/2-liides hakanud kasutusest taanduma.

PS/2-liidese kasutamine

Vanematel sülearvutitel oli tavaliselt ainult üks port, mis toetas kas hiirt või klaviatuuri. Mõnel mudelil kasutati liidese kahte vaba viiku nii klaviatuuri kui hiire ühendamiseks arvutiga sama pordi kaudu. Mõlemad sisendseadmed ühendati samasse porti erihargmiku abil.
Tänapäeva sülearvutid tavaliselt enam PS/2-liidest ei kasuta, vaid eelistatakse vabaksjäänud ruumi hoida täiendavate USB- või muud tüüpi uuemate portide jaoks. Samas võib PS/2-liidese veel leida enamiku lauaarvutite küljest. PS/2-liidesega hiire ja klaviatuuri kasutamiseks USB-pordis on olemas eriadapterid. Kuigi USB- ja PS/2-liidesed kasutavad erinevaid andmeedastusprotokolle, suudab porti juhtiv mikrokontroller tuvastada, milline seade on pordiga ühendatud ja valida vastavalt sellele sobiva andmeedastusprotokolli.

Andmeedastus

PS/2-hiir ja -klaviatuur kasutavad arvutiga suhtlemiseks kahesuunalist sünkroonset andmeedastusprotokolli. Ühendussiin on jõudeolekus, kui mõlemal liinil on kõrge pingetase (loogiline 1). See on ainus olek, milles sisendseadmel on lubatud arvutile teavet edastada. Arvutil on siini üle täielik kontroll ja ta saab suvalisel ajahetkel ühenduse katkestada, viies taktliini madalale tasemele.
Nii hiire kui klaviatuuri PS/2-liidese kontrollimisega tegeleb emaplaadil sama mikrokontroller. Taoline lahendus lihtsustab ja odavdab arvuti disaini ja tootmist. Sellise lahenduse puuduseks on asjaolu, et ühise kontrolleri kasutamise tõttu võivad vead ühes sisendseadmes põhjustada probleeme ühenduses teise sisendseadmega.
Taktsignaali tekitab alati sisendseade. Kui arvuti tahab alustada andmeedastust, peab ta kõigepealt katkestama andmeedastuse sisendseadmest, viies selleks taktliini madalale tasemele. Seejärel viib arvuti andmeliini madalale tasemele ja vabastab taktliini. Taoline edastusnõue annab sisendseadmele teada, et arvuti soovib alustada andmeedastust, ja sisendseade alustab taktsignaalide tekitamist.
Andmete edastus klaviatuuri või hiire poolt arvuti suunas toimub taktsignaali langevast frondist, andmete edastus vastupidises suunas toimub taktsignaali tõusvast frondist. Taktsignaali sagedus peab jääma vahemikku 10–16,7 kHz.

Andmeedastus sisendseadmest arvutisse

Andmesiinil on jõudeolekus mõlema liini pinge kõrge. Kui hiir või sõrmistik soovib arvutile andmeid edastada, kontrollib edastust alustada sooviv seade kõigepealt taktliini taset, selgitamaks, kas viimane on loogiliselt kõrgel tasemel. Kui kontrollitud tase on madal, on ühendus arvuti poolt keelatud ja sisendseade ei saa andmeid edastada enne, kui taktliin on arvuti poolt kõrgele tasemele viidud ja vähemalt 50 μs seal püsinud. Andmed edastatakse järjestikku kaaderhaaval. Biti väärtust muudab sisendseade siis, kui taktsignaali tase on kõrge, ja seda loeb arvuti siis, kui taktsignaali tase on madal. Aeg taktsignaali tõusva frondi ja andmebiti väärtuse muutuse vahel peab olema vähemalt 5 μs. Aeg andmebiti väärtuse muutumisest taktsignaali langeva frondini vahel peab jääma vahemikku 5–25 μs.
Arvuti võib peatada andmeedastuse suvalisel ajahetkel, viies taktliini vähemalt perioodiks 100 μs madalale tasemele. Kui ülekanne peatatakse enne 11 taktimpulssi, siis peab sisendseade peatama käimasoleva infoedastuse ja valmistuma poolelijäänud andmete uuestiedastamiseks kohe, kui arvuti vabastab taktliini. Kui andmeedastus peatati kahebaidise koodi teise baidi edastamisel, siis edastatakse ühenduse taastumisel uuesti mõlemad baidid. Kui arvuti peatab andmeedastuse enne taktsignaali esimest tõusvat fronti või pärast viimast langevat fronti, siis ei pea sisendseade andmeid uuesti edastama.
Kui uusi andmeid tekitatakse ajal, mil andmeedastus on juhtarvuti poolt keelatud, salvestatakse edastamist ootavad andmed eripuhvrisse. PS/2-liidesega klaviatuuridel on selleks otstarbeks 16-baidine puhvermälu. Kui katkestatud andmeedastuse korral tekitatakse klahvivajutustega rohkem kui 16 baiti andmeid, eiratakse edasisi klahvivajutusi seni, kuni andmeedastus taastub ja puhvrisse tekib taas vaba ruumi. Hiire mälupuhvris hoitakse edastamiseks andmeid ainult kõige viimase asendimuutuse kohta.

Andmeedastus arvutist sisendseadmetesse

Andmeedastus vastupidisel suunal erineb ülalkirjeldatust veidi.
Kuna PS/2-liidese taktsignaal tekitatakse alati sisendseadme poolt, siis kui arvuti tahab alustada andmeedastust, peab ta kõigepealt tekitama edastusnõude, andmaks sisendseadmele teada oma soovist alustada andmeedastust. Sisendseade kontrollib edastusnõude olemasolu vähemalt korra iga 10 ms tagant. Kui sisendseade tuvastab arvutipoolse edastusnõude, alustatakse taktsignaali tekitamist. Edastusnõude edastamise algusest kuni taktsignaali tekitamise alguseni ei tohi kuluda rohkem kui 15 ms. Edastusel muudab arvuti andmebiti väärtust, kui taktsignaali tase on madal, ja andmeid loetakse sisendseadme poolt, kui taktsignaali tase on kõrge.
Pärast stopp-biti vastuvõtmist kinnitab sisendseade andmete vastuvõtmist kinnitusbiti edastamise ja viimase taktimpulsi tekitamisega. Kui arvuti ei vabasta andmeliini pärast 11 taktimpulssi, jätkab sisendseade taktimpulsside tekitamist, kuni andmesiin vabastatakse. Andmete edastamine ei tohi kesta kauem kui 2 ms. Kui edastatud andmeteks on nõue edastada arvutile sisendseadme poolt teavet, ei tohi viimase edastamiseks kuluda rohkem kui 20 ms.
Arvuti võib ülekande peatada igal ajahetkel enne kinnitusbiti edastamist, viies taktliini vähemalt 100 μs perioodiks madalale tasemele.