Atari SIO - Atari SIO

Atari Serial I / O (SIO)
Atari-800-Computer-Port-Side.jpg
Sari porti chap tomonda ikkinchi bo'lgan Atari 800 portlari.
Turiketma-ket avtobus
DizaynerDjo Dekuar / Atari Inc.
Loyihalashtirilgan1978; 42 yil oldin (1978)
Ishlab chiqaruvchiAtari Inc.
Ishlab chiqarilgan1979 yildan 1992 yilgacha
Issiq ulanishi mumkinnazariy jihatdan
Tashqiha
Pinslar13
UlagichD-subminatura variant
Ma'lumot uzatishIkki yo'nalishli ketma-ket
Kengligi8 + start / stop = 10
BitrateMaksimal ~ 120 kbit / s
Maks. qurilmalarMaksimal 256
8 ta foydalanishda
ProtokolKetma-ket
1-pinCLOCKINSoat kiritish
2-pinSoatSoat chiqishi
3-pinDATAINMa'lumot kiritish
Pin 4GNDZamin
PIN-kod 5MA'LUMOTMa'lumotlar chiqishi
6-pinGNDZamin
7-pinBUYURTBuyruq
8-pinMOTORDvigatelni boshqarish
9-pinISHLAB CHIQARILADIDavom eting
10-pin+ 5V+ 5V / Tayyor
Pin 11AUDIOINOvoz
Pin 12+ 12V+ 12V (faqat 400/800)
13-pinO'ZGARIShInterrupt

The Ketma-ket kirish / chiqish sifatida tanilgan tizim SIO, mulkiy edi periferik avtobus va tegishli dasturiy ta'minot protokol to'plamlari da ishlatilgan Atari 8-bitli oila ko'pini ta'minlash kirish / chiqish ushbu kompyuterlar uchun to'lovlar. Kabi davrning ko'pgina I / O tizimlaridan farqli o'laroq RS-232, SIO engil protokolni o'z ichiga olgan bo'lib, u bir nechta qurilmani bitta qurilmaga ulashga imkon berdi romashka bilan bog'langan o'nlab qurilmalarni qo'llab-quvvatlaydigan port. U ham qo'llab-quvvatladi plagin va ijro etish operatsiyalar. SIO dizayner, Djo Dekuar, tizimdagi ishiga asos bo'lib xizmat qiladi USB.

SIO ichki ishlatmasdan kengaytirishga imkon berish maqsadida ishlab chiqilgan karta uyalari kabi Apple II bilan bog'liq muammolar tufayli FCC ustida radio shovqin. Bu qurilmani qo'llab-quvvatlash nuqtai nazaridan ancha moslashuvchan bo'lishini talab qildi. SIO interfeysidan foydalangan qurilmalarga printerlar, floppi-disklar, kasseta maydonchalari, modemlar va kengaytiruvchi qutilar kiradi. Ba'zi qurilmalarda ROM-ga asoslangan drayvlar mavjud edi, ular yuklashda kompyuterga ko'chirilib, yangi qurilmalarni kompyuterning o'zida o'rnatilgan mahalliy qo'llab-quvvatlamasdan qo'llab-quvvatlashga imkon beradi.

SIO protokollarni qo'llab-quvvatlash uchun atrof-muhit birliklarida mantiqni talab qildi va ba'zi hollarda qayta ishlash quvvatining katta miqdori talab qilindi - Atari 810 floppi haydovchiga kiritilgan a MOS Technology 6507 masalan; misol uchun. Bundan tashqari, katta buyurtma ulagichi qimmat edi. Bular SIO tizimidagi xarajatlarni ko'paytirdi va Dekuir buni "tizimni cho'ktirishda" ayblamoqda.[1][2] 8-bitlik tarix davomida tizim narxini pasaytirish bo'yicha muvaffaqiyatsiz harakatlar bo'lgan.

"SIO" nomi faqat bo'limlarini anglatadi operatsion tizim ma'lumotlar almashinuvi bilan shug'ullanadigan, Atari hujjatida shinaning o'zi shunchaki "ketma-ket avtobus" yoki "interfeys shinasi" dir, garchi bu ba'zan SIO deb ham nomlanadi.[3] Umumiy foydalanishda SIO operatsion tizimdan avtobusga va hatto jismoniy ulagichlarga qadar bo'lgan butun tizimni nazarda tutadi.

Tarix

FCC muammosi

SIO tizimi, oxir-oqibat, to'g'ridan-to'g'ri ishlab chiqarilgan har qanday qurilmadan oqishi mumkin bo'lgan RF shovqinlarining ruxsat etilgan miqdori to'g'risidagi FCC qoidalariga muvofiqdir. analog televizor signallari. Ushbu qoidalar juda kam miqdordagi qochqinni talab qildi va keng sinov to'plamidan o'tishi kerak edi. Ushbu qoidalar Atari tomonidan tuzilgan davrda qayta ko'rib chiqilgan Grass Valley guruhi Atari 800 ga aylanadigan Colleen mashinasini ishlab chiqardi.[4]

The Apple II, o'sha davrda televizorga ulangan bir nechta oldindan ishlab chiqarilgan mashinalardan biri, bu kabi muammolardan qochib qutulgan edi RF modulyatori kompyuterda. Buning o'rniga Apple mahalliy elektronika ishlab chiqaruvchi M&R Enterprises kompaniyasi bilan plagin modulyatorlarini sotish uchun shartnoma tuzdi Sup'R'Mod. Bu shuni anglatadiki, Apple texnik jihatdan televizion signallarni yaratmadi va FCC sinovlaridan o'tishi shart emas edi. Atari-ning eng yirik sotuvchilardan biri, Sears, bu ularning do'kondan tashqarida sotilishi uchun mos echim emasligini his qildi, shuning uchun shovqin talablarini qondirish uchun ular butun tizimni 2 mm qalinlikdagi quyma alyuminiy blok bilan o'rab oldilar.[4]

Dastlab Klein a o'yin konsoli, voris Atari 2600. Apple II-ning muvaffaqiyati tizimning a-ning o'rnini bosishiga olib keldi uy kompyuteri va ushbu bozorda periferik qurilmalar kerak edi. Apple II kabi mashinalarda tashqi qurilmalar adapter kartasini mashinaning ichki kartalari uyalaridan biriga joylashtirish, kassa teshigidan kabel o'tkazib, qurilmani shu kabelga ulash orqali qo'llab-quvvatlandi. Bunday simi uchun etarlicha katta teshik, Klelenning chastotali sinovlarida muvaffaqiyatsiz bo'lishini anglatadi va bu jiddiy muammo tug'diradi. Bundan tashqari, kartalarni sovutish uchun konveksiya juda qiyin bo'ladi.[4]

TI yo'nalishi

1978 yil boshida tashrif paytida,[a] a Texas Instruments (TI) sotuvchisi a dan iborat bo'lgan tizimni namoyish etdi optik tolali ikkala uchiga kalıplanmış qabul qiluvchi-qabul qilgichli simi. Jou Dekuir buni video signalni tashqi chastotali modulyatorga yuborish uchun ishlatishi mumkinligini aytdi, bu esa televizorga signalni uzatish uchun kerak bo'lgan koaksiyal kabeldan foydalanish kabi oddiy bo'ladi. Endi kompyuterda oddiy uyalar bo'lishi mumkin; Apple II singari, RF qismi ham butunlay tashqi bo'lishi mumkin va uni kompyuterdan alohida ravishda sinab ko'rish mumkin.[4]

Dekuir o'z kontseptsiyasini tushuntirganda, sotuvchining "ko'zlari ochilib ketishi" mumkin edi.[4] Grass Valley jamoasiga noma'lum bo'lgan TI o'sha paytda rivojlanish bosqichida bo'lgan TI-99/4 va RF chiqishi bilan bir xil muammoga duch keldi. Keyinchalik Dekuir bu g'oyani o'z xo'jayini Veyd Tumaga tushuntirganda, Tuma "Yo'q, FCC bizni bu kaskad bilan qutqarishga hech qachon yo'l qo'ymaydi" deb javob berdi.[4] Bu haqiqat ekanligi isbotlandi; TI Dekuirning g'oyasidan foydalangan va 1979 yilda uni FCCga olib borishganida, ular buni qo'ldan chiqarib rad etishgan. TI o'z tizimini qayta ishlab chiqishi kerak edi va natijada kechikish Atari bozorga birinchi bo'lib yetib borishini anglatadi.[4]

SIO

Ushbu karta uyalariga to'sqinlik qilish yo'li bilan Dekuir tashqi tizim orqali kengayishni ta'minlash muammosiga qaytdi.[4]

Bu vaqtga kelib Atari-dan foydalanish bo'yicha katta ishlar amalga oshirildi POKEY ishlatish uchun chip a kassetaning pastki qismi lentaga yozib olinadigan tovushlarni to'g'ridan-to'g'ri chiqarish orqali. Tegishli modifikatsiyalar bilan POKEY raqamli-analogli konversiya apparati va diskini chetlab o'tishi mumkinligi tushunildi TTL to'g'ridan-to'g'ri chiqish. TTL raqamli avtobusini ishlab chiqarish uchun SIO tizimi POKEY-ning to'rtta ovoz kanalidan ikkitasidan foydalanib, ma'lum bir chastotali soat signallarini aks ettiruvchi barqaror tonlarni ishlab chiqardi. Ma'lumotlarni yuborish va qabul qilish uchun bitta baytli bufer ishlatilgan; soat signali har gal o'zgarganda, buferdan bit o'qiladi yoki yoziladi. Hammasi sakkiz bit o'qilgan yoki yozilgan bo'lsa, tizim to'xtatuvchini yaratdi operatsion tizim ko'proq ma'lumotlarni o'qish yoki yozish uchun.[5]

Odatda bitta qurilmadan foydalaniladigan kasseta interfeysidan farqli o'laroq, tashqi kengayish porti bir nechta qurilmani qo'llab-quvvatlashi kerak. Buni qo'llab-quvvatlash uchun oddiy protokol ishlab chiqildi va asl oddiy kasseta portiga bir nechta yangi pin qo'shildi. Bular orasida eng muhimi COMMAND pimi bo'lib, u qurilmalarni avtobusdagi qurilmalardan birini faollashtirgan va ma'lumot so'ragan (yoki unga buyruqlar yuborgan) 5 baytli xabarni tinglashga undagan.[6] Shuningdek, ular qurilmalar tomonidan xostdagi boshqaruv registrlarida bitlarni o'rnatish uchun ishlatilishi mumkin bo'lgan PROCEED va INTERRUPT pinlarini qo'shdilar, ammo ular tarqatilgan tizimda ishlatilmadi. Xuddi shu tarzda, POKEY tomonidan ishlab chiqarilgan vaqt signallari CLOCKOUT va CLOCKIN pinlariga yuborilgan, ammo asenkron protokol ulardan foydalanmagan.[7]

Tavsif

Uskuna

SIO ulagichi asboblardagi pimlarga mustahkam bog'lanish uchun pog'onali metall barglardan foydalangan. Ulagichga kesilgan teshiklar barglar xonasini harakatga keltiradi.
Atari 850 taqdim etildi Centronik printer va RS-232 uchinchi tomon qurilmalariga ulanish uchun ketma-ket portlar. SIO qurilmalariga xos bo'lib, papatyani zanjirlashga imkon beradigan kirish va chiqish portlari mavjud.

SIO shinasi 13-pinli D-ulagichning maxsus tartibi yordamida amalga oshirildi (bo'lmasa ham D-subminatura ) qurilmalardagi erkak konnektorlari va kabellarning har ikki uchidagi ayol konnektorlari bilan.[8] Ulagichlar takroran foydalanishga imkon berish uchun jismonan mustahkam edi, ular odatdagi D-ulagichdagi kabi ishqalanishdan farqli o'laroq, qurilma rozetkasidagi juda kuchli pinalar va kabellardagi burama ulagichlar bilan ta'minlangan. Ko'pgina qurilmalarda papatyani zanjirga bog'laydigan tashqi qurilmalarga ruxsat berish uchun kirish va chiqish portlari mavjud edi, garchi Atari 410 dastur yozuvchisi zanjirning oxiriga joylashtirilishi kerak edi va shu bilan tashqi portni o'z ichiga olmadi.

Aloqa

SIO Atari tomonidan boshqarilgan POKEY bir qator umumiy maqsadli taymerlarni o'z ichiga olgan chip. Ulardan to'rttasi vaqt stavkalari ustidan aniq nazoratni amalga oshirdi va ularni an-ga ulab ovoz chiqarishda foydalanish uchun mo'ljallangan edi analog-raqamli konvertor (A-to-D) va keyin ularni chastotali modulyatorga kirishdan oldin televizor signaliga aralashtiring. Ular SIO tizimining asosi sifatida qayta ishlangan, ba'zi rejimlarda soat sifatida ishlatilgan yoki to'g'ridan-to'g'ri boshqalarda chiqish signallarini ishlab chiqarish uchun ishlatilgan.

Tizimga ma'lumotlar uzatishning ko'p qismini yarim avtomatlashtirish uchun foydalaniladigan bitta "smenali registr" kiritildi. Bu bitta 8-bitli qiymatdan iborat edi, avval LSB,[9] o'qish va yozishni bufer qilish uchun ishlatilgan. Foydalanuvchi bunga yozish uchun SEROUT va o'qish uchun SERIN deb nomlanadigan ikkita xotira joylari orqali kiradi. Ular "soya registrlari" edi Ram POKEY kabi turli xil qo'llab-quvvatlash chiplarida aks ettirilgan registrlar. Ma'lumotlar bitlari bitta nol boshlang'ich biti va bitta bitta to'xtash biti bilan hoshiyalangan va paritet ishlatilmagan.[9]

Sinxron rejimda ma'lumotlarni yozish uchun POKEY-ning asosiy taymer kanallari tegishli soat tezligiga o'rnatildi, masalan, 9600 bps. SEROUT registriga yozilgan har qanday ma'lumot har safar signal baland ko'tarilganda bittadan bittadan yuborilgan. Vaqt o'tdi, shuning uchun signal bitning o'rtasida past qaytdi. Barcha 10 bit (ishga tushirish va to'xtashni o'z ichiga olgan holda) yuborilgandan so'ng, POKEY protsessorga boshqa baytga tayyorligini ko'rsatish uchun niqobli uzilish yubordi. O'qish paytida, agar SERIN o'qilmasdan oldin yana bir bayt ma'lumot olingan bo'lsa, SKSTAT-ning 3-biti to'lib toshganligini ko'rsatish uchun rostga o'rnatildi. Shaxsiy o'qiladigan bitlar SKSTAT-ning 4-bitiga kelganda ham yuborildi, ular freymlash tugashini kutmasdan ma'lumotlarni to'g'ridan-to'g'ri o'qishga imkon berdi.

Tizim rasmiy ravishda 19200 bps tezlikni qo'llab-quvvatladi, ammo bu tezlik Atari muhandisi tufayli tanlandi protokol analizatori shu tezlikda engib chiqdi. Tizim aslida ancha yuqori ishlashga qodir edi. Bir qator uchinchi tomon qurilmalari, ayniqsa disketlar, uzatish tezligini 72000 bps ga qadar oshirish uchun maxsus apparat va drayverlardan foydalanilgan.

Garchi tizimda nazariy jihatdan sinxron aloqa uchun ishlatilishi mumkin bo'lgan CLOCKOUT va CLOCKIN pinlari mavjud bo'lsa-da, amalda faqat asinxron tizim ishlatilgan. Bunday holda, POKEY-da yuqoridagi kabi asosiy tezlik o'rnatildi, bu esa ushbu bazaviy stavkadan 5% gacha bo'lgan o'zgarishlarni kuzatib boradi. Bu mexanik yoki elektr muammolari vaqt o'tishi bilan stavkalarning ozgina o'zgarishiga olib keladigan haqiqiy qurilmalar bilan ishlashni ancha osonlashtirdi. Masalan, lenta uzatmasi tezlikni o'zgartirishi mumkin bo'lgan kasseta maydonchasi, ikkinchisi modem, masofaviy tizim ma'lum tezlikda aniq ishlamasligi mumkin.

Qurilmani boshqarish

SIO tizimi qurilmalarni romashka bilan zanjirga bog'lashga imkon berdi va shu bilan har xil ma'lumotlar pinalaridagi ma'lumotlar zanjirning ma'lum bir qurilmasi uchun mo'ljallanganligini aniqlashning biron bir usulini talab qildi. Bu buyruq pimi yordamida amalga oshirildi.[9]

COMMAND pimi odatda baland tutilgan,[8] va u pastroqqa tortilganda, avtobusdagi qurilmalar "buyruq ramkasi" ni tinglashlari kerak edi. Bu 5 baytlik paketdan iborat edi; birinchi bayt - bu qurilma identifikatori, ikkinchisi - bu qurilmaga xos buyruq raqami, so'ngra drayver tomonidan har qanday maqsadda ishlatilishi mumkin bo'lgan ikkita yordamchi bayt. Ushbu to'rttadan keyin nazorat summasi bayt bilan davom etdi.[6] Frame tugagandan so'ng COMMAND pimi yana baland keldi.[10]

Paketni qabul qilishda birinchi baytda ko'rsatilgan qurilma javob berishi kutilgan edi. Bu ASCII belgisini o'z ichiga olgan bitta baytdan iborat edi, agar paket to'g'ri dekodlangan bo'lsa va nazorat summasi mos keladigan bo'lsa, E'tirof etish uchun "A", aks holda "N". Ma'lumotlarni almashadigan buyruqlar uchun buyruqlar ramkasidan keyin tanlangan qurilmadan yoki "ma'lumotlar bazasi" kuzatiladi. Keyinchalik, bu ramka qabul qiluvchida "S" belgisi to'liq yoki xato uchun "E" belgisi bilan tan olinadi.[11] Ma'lumotlarning 128 baytli har bir to'plami keyingisi yuborilishidan oldin yana bir buyruq ramkasini talab qilganligi sababli, ishlash kechikish muammosi bilan amalga oshirildi; Atari 810 disk drayveri odatda 19,200 bps tezlikni ishlatar edi, lekin qo'shimcha xarajatlar natijasida taxminan 6000 bps bilan cheklangan edi.[12]

Qurilmalar mexanik ravishda sanab o'tilgan, odatda kichik DIP kalitlari.[13] Qurilmaning har bir sinfiga o'n oltinchi raqamlarga asoslangan 16 ta potentsial raqamlar to'plami berilgan, masalan, disklar uchun $ 30 va printerlar uchun $ 40. Biroq, har bir haydovchi xohlagancha yoki ozgina qurilmani qo'llab-quvvatlashi mumkin edi; Atari 820 printer drayveri faqat 40 dollarlik bitta printerni qo'llab-quvvatladi,[14] disk drayverlari 31 dan 34 dollargacha bo'lgan to'rtta diskni qo'llab-quvvatlashi mumkin edi.[15]

Kassetadan foydalanish

Dastlabki 410 XL davrida juda kichikroq 1010 bilan almashtirildi.

SIO-ni loyihalashtirish interfeys uchun tizim sifatida boshlangan kasseta tegishli tovushlarni yaratish uchun ovozli apparatdan foydalangan holda yozib oluvchilar. Ushbu imkoniyat Atari 410 va uning izdoshlariga nisbatan oddiy qurilmalar bo'lishiga imkon beradigan ishlab chiqarish versiyalarida saqlanib qoldi.

Kassetani boshqarish uchun o'rnatilganda, POKEY-ning 1 va 2-kanalidagi chiqishlar soat pinlari o'rniga DATAOUT-ga yuborildi. Ikkala kanal lentaga yozib olish uchun xavfsiz bo'lgan ohanglarni ishlab chiqarish uchun o'rnatildi, nol uchun 3995 Hz POKEY 2 kanalida va 5326 Hz uchun esa 1 kanalda edi. Ushbu rejimda POKEY SERINdan bitlarni o'qiganida , har qanday 1-lar natijasi 1-kanal ma'lumot piniga, 0-lar esa 2-kanal o'ynalishiga olib keldi. Shu tarzda, ma'lumotlar baytlari lentadagi ohanglarga aylantirildi. Ammo o'qish boshqa tizimdan foydalangan, chunki kompyuterda A-dan D ga o'zgartirgich yo'q edi. Buning o'rniga kassetaning pastki qismida ikkita chastotada sozlangan ikkita tor tarmoqli filtr mavjud. O'qish paytida bitning lentadan o'qilganligi sababli ushbu filtrlarning bir yoki ikkinchisining chiqishi tasdiqlanadi. Ular raqamli ma'lumotlar sifatida asosiy kompyuterga qaytarib yuborildi.[16]

Lenta cho'zish va boshqa mexanik muammolarga duch kelganligi sababli, ular bosh bo'ylab transportni tezlashtirishi yoki sekinlashtirishi mumkin edi, tizim asenkron o'qish va yozishni qo'llagan. Ma'lumotlar har bir yozuv uchun 132 baytli bloklarda yozilgan bo'lib, dastlabki ikki bayt "01010101 01010101" bit naqshidir. Bloklar orasidagi ohangsiz yozuvlararo bo'shliq operatsion tizimga etakchi nolni qidirib, yangi yozuv qachon boshlanganligini bilish imkonini berdi. Keyin u portni tezda o'qidi va aniq ma'lumotlar tezligini aniqlash uchun vaqt bitlarining o'tish vaqtini 0 dan 1 gacha va orqaga qaytardi. Keyingi bayt bu 128 ma'lumotlar baytlari, qisqa blok yoki fayl oxiridagi oddiy yozuv ekanligini ko'rsatadigan boshqaruv bayti edi. 128 baytgacha ma'lumotlarni kuzatib bordi, so'ngra u nazorat sumidan oldin hamma narsani o'z ichiga olgan summa baytini kuzatdi.[16]

Amaliyot ushbu maqsadga bag'ishlangan SIO portidagi MOTOR pimi tomonidan boshqarildi. Ushbu pin past bo'lganida, kemadagi vosita o'chirilgan. Bu foydalanuvchiga lenta harakatlana boshlamasdan ijro etish yoki ijro etish va yozishni bosish imkonini berdi. Kompyuterga tegishli buyruq kiritilganda MOTOR tasdiqlanib, kasseta aylana boshlaydi.[16]

Yana bir ajratilgan pin AUDIOIN edi, u to'g'ridan-to'g'ri POKEY ning D-dan A-ga o'tkazgichlari va yakuniy chiqishi orasidagi ovoz chiqarish davrlariga ulangan edi, shunda pin ustidagi har qanday signal POKEY (agar mavjud bo'lsa) ovozi bilan aralashgan va keyin televizor karnayiga yuborilgan. Bu kassetadagi chap ovoz kanaliga, o'ng kanal esa ma'lumot pinlariga ulangan edi. Bu foydalanuvchilarga chap kanalda odatdagi tovushlarni yozib olishga va keyin ularni televizor orqali ijro etishga imkon berdi. Bu tez-tez interaktiv tilni o'rganish lentalari va shunga o'xshash dasturlarni yaratish uchun to'g'ridan-to'g'ri motorni boshqarish bilan birlashtirildi. Ba'zi dasturiy ta'minot kompaniyalari yuklash jarayonini yanada yoqimli qilish uchun ushbu kanalda tovushlar yoki musiqalarni yozib olishadi.[17]

Shuningdek qarang

Izohlar

  1. ^ Boshqa bir ma'lumotga ko'ra, bu 1977 yil iyul edi.

Adabiyotlar

  1. ^ "Djo Dekuar bilan intervyu". Atari muzeyi.
  2. ^ Atari - kompyuter tizimlari, Atari, Inc., dan arxivlangan asl nusxasi 2015-12-08 kunlari, olingan 2015-01-14
  3. ^ SIO 1980 yil, p. 1.
  4. ^ a b v d e f g h Dekuir.
  5. ^ SIO 1980 yil, 6-7 betlar.
  6. ^ a b SIO 1980 yil, p. 13.
  7. ^ SIO 1980 yil, p. 8.
  8. ^ a b SIO 1980 yil, p. 7.
  9. ^ a b v SIO 1980 yil, p. 6.
  10. ^ SIO 1980 yil, p. 18.
  11. ^ SIO 1980 yil, p. 16.
  12. ^ Atari 810 Disk Drive operatsion qo'llanmasi (PDF) (Texnik hisobot). 1979. p. 6.
  13. ^ "Indus GT o'rnatish".
  14. ^ SIO 1980 yil, p. 25.
  15. ^ SIO 1980 yil, p. 28.
  16. ^ a b v DeRe 1981, p. Qo'shimcha S
  17. ^ Viktor, Jon (1982 yil oktyabr). "Yuk ko'tarayotganingizda audio". Qarshi.

Bibliografiya