Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Macintosh бастапқыда салыстырмалы түрде қарапайым машина болған, қазір өзінің қарапайымдылығымен және Macintosh деген атпен Apple компаниясы жасаған алғашқы компьютер болғандығымен қызығушылық тудырады. Macintosh барынша көп стандартты, тікелей қолжетімді компоненттерді пайдаланды, күрделі LSI чиптері, оңай реттелетін бағдарламаланатын логикалық тізбектер және стандартты компоненттерді үйлестіру арқылы орташа бағаға қол жеткізді.
The original Macintosh was a relatively simple machine, now of interest for its simplicity and for the fact that it was the first computer produced by Apple under the name Macintosh. The Macintosh used standard off the shelf components to the greatest extent possible, achieving a moderate price point by mixing complex LSI chips, readily customizable programmable array logic, and off the shelf components.
Жалпы архитектурасы
Macintosh Motorola 68000-ді пайдаланды. 68000 шинасы компьютердің басқа бағдарламаланатын компоненттеріне тікелей қосылған: IWM дискеталық контроллері, Zilog 8530 SCC және MOS Technology 6522. Шина 68000-ді 128 немесе 512 КиБ негізгі жадпен (DRAM) байланыстырды, ол процессор мен мультимедиа тізбектері арасында тікелей жадқа қол жеткізу (DMA) арқылы бөліседі. Процессор немесе бейне/дыбыс машинасы жадқа қол жеткізе алады, бірақ екеуі бірдей емес, нәтижесінде өнімділік 10%-ға дейін төмендеуі мүмкін; DMA тізбегі сонымен қатар RAM-ге қажетті техникалық қызмет көрсетуді жүзеге асырды, бұл әйтпесе қосымша шығындарға әкелер еді, бұл тәсіл бұрын Apple II-де қолданылған. 68000-ға нақты уақыт туралы ақпарат үзілістер арқылы жіберілді. 68000 үш үзіліс кірісін қамтамасыз етеді, олар Macintosh 128K/512K-да 6522, 8530 және бағдарламашыларға арналған пайдаланушы кірісіне, өсу басымдығы бойынша қосылған. Осылайша, 6522-ге қосылған пернетақтада теру сериялық деректердің (8530) өнімділігін төмендетпеді, бірақ сериялық шинаны басқаратын бағдарламаны бағдарламашы түзетуге болатын. Өндіріс құнын алдыңғы үлгісі Lisa-мен салыстырғанда азайту үшін Apple MMU-ды қоспады. Нәтижесінде Macintosh қорғалған жадыны қолдамады. Қорғалған жад тек Mac OS X операциялық жүйесінің шығарылуымен Macintosh компьютерлеріне қосылды. Энди Герцфельдтің сөзіне сәйкес, 1984 жылғы 24 қаңтарда таныстыру көрсетілімі үшін қолданылған Macintosh 512к RAM-ы бар прототип болды, тіпті сатуға ұсынылған алғашқы модель 128к кеңейтілмейтін жадпен жасалса да. Бұл прототип жадына көп көлемді демоны іске асыру үшін жеткілікті RAM-ды қамтамасыз ету үшін пайдаланылды, онда көпшілікті таң қалдыру үшін сөйлеу синтезі бағдарламалық құралы көрсетілді.
The Macintosh used the Motorola 68000. The 68000's bus was wired directly to the other programmable components of the computer: the IWM floppy controller, the Zilog 8530 SCC, and the MOS Technology 6522. The bus also connected the 68000 to the 128 or 512 KiB of main memory (DRAM), which was shared between the processor and the multimedia circuits in a direct memory access (DMA) arrangement. Either the processor or the video/sound engine could access the memory, but not both, resulting in up to a 10% loss in performance; the DMA circuit also performed necessary maintenance on the RAM which would otherwise add overhead, a trick previously used in the Apple II. Precise timing information was relayed to the 68000 by interrupts. The 68000 provides three interrupt inputs, which in the Macintosh 128K/512K were connected to the 6522, the 8530, and a human input designed for programmers, in order of increasing priority. Thus typing on the keyboard (attached to the 6522) did not reduce serial data (8530) performance, yet the program controlling the serial bus could be debugged by the programmer. To further reduce the cost of manufacture, as compared with its predecessor the Lisa, Apple did not include an MMU. As a result, the Macintosh did not support protected memory. Protected memory was only added to Macintosh computers with the release of the Mac OS X operating system. According to Andy Hertzfeld the Macintosh used for the introduction demo on January 24, 1984, was a prototype with 512k RAM, even though the first model offered for sale implemented just 128k of non expandable memory. This prototype was used to provide adequate RAM to run the memory intensive demo, which showcased speech synthesis software intended to impress the crowd.
Ерекшеліктері
Жоғарыда көрсетілген компоненттер Macintosh GUI және желілік функционалдықты төменде сипатталғандай жүзеге асырды.
The above components implemented the Macintosh GUI and networking as described below.
Тышқан
Жаңа интерфейстің негізгі бөлігі тышқанмен басқару болды. Тышқанның құрамында тек электромеханикалық компоненттер болды: бір түйме және екі оптикалық энкодер. Түйме 6522-ге қосылды. Энкодерлердің төрт шығысы 8530-ға және 6522-ге екі-екіден жалғастырылды. Оптикалық энкодерлер қозғалысты квадраттық принцип бойынша анықтады. Әр энкодерде радиалды жолақтары бар дөңгелек болды, ол LED және жарық сезгіш фотодиод арасындағы жарықты тоқтата тұрып, тышқанның қозғалысымен электр импульстарын тудырады. X және Y энкодерлері тышқан допшесімен үйкеліс арқылы айналдырылды. Әр энкодерде эмитерлер мен детекторлардың екі жұбы қолданылды. Импульстардың бірінші жиынтығы айналу бағытын көрсетпей, айналу жылдамдығын анықтау үшін жеткілікті болды, ал екінші жиынтық, бірақ 90° фазалық айырмасы бар импульстар айналу бағытын анықтады. Сондықтан X және Y енкодерлері үшін екі детектор-эмитер жұбы қолданылды. Бастапқыда бұл сигналдар модемнің қосылуы немесе ажыратылуын көрсететін. Тышқан белгілі бір қашықтыққа қозғалғанда, модемнің қосылу/ажыратылу сигналы күйін өзгертіп, 8530 процессорды тоқтата тұрды. Операциялық жүйе сол жақтан оңға, жоғарыдан төменге айырмашылығын анықтау үшін 6522-ден бағытталған сигналдарды оқып, тышқан курсорын жылжытады.
The centerpiece of the new interface was mouse driven control. The mouse contained only electromechanical components: a button, and two optical encoders. The button was connected to the 6522. The encoders' four outputs were connected two to the 8530 and two to the 6522. The optical encoders detected movement by quadrature. Each encoder had a wheel with radial stripes which would interrupt the light passing between an LED and a light detecting photodiode, producing electrical pulses with mouse movement. Both the X and the Y encoders were turned by frictional contact with the mouse ball. Two pairs of emitters and detectors were used on each encoder. A first set of pulses is enough to detect the rate of rotation without indicating the direction of rotation, and a second set of synchronized but 90° out of phase pulses provides the direction of rotation. Therefore, two emitter detector pairs were used for X and Y each. The motion detection signals connected to the 8530 chip using two non essential pins used for obsolete modems. Originally these signaled modem connection or disconnection. When the mouse moved by a certain amount, the modem connect/disconnect signal would change state and the 8530 would interrupt the processor. The operating system would then read the direction signals from the 6522 to differentiate left from right, and up from down, and move the mouse cursor.
Курсор мен бейне
Тышқан курсоры, басқа экрандағы барлық нысандар сияқты, бағдарламалық құралдар арқылы экранға салынды. Нақты уақытты анимацияны қолдау үшін экранды уақыттау PAL тізбегі 6522-ге тік сызық қайтарылған сайын бір импульс жіберетін. Бұл VBL (тік бос орын) менеджері деп аталатын операциялық жүйе қызметінің негізі болды. Экранды қайта салу қажет болғанда, курсор жылжытылып, ойындар дисплейді жаңарту мүмкіндігіне ие болды. Кейде ойын мен растрлық дисплей арасындағы бәсекелестіктен қашу қиын болуы мүмкін. Бүркіру процессордың CRT-ге жіберіліп жатқанда кескінді жазуынан туындауы мүмкін. Сондықтан Macintosh жадында екі кескінді таңдау мүмкіндігін ұсынды, сонда біреуі оқылып, екіншісі жазылатын. "Бет" 6522-ден бейне DMA-ға қосылған жалпы мақсаттағы I/O шығысы арқылы таңдалды. Дегенмен, екі кескін 42,75 КиБ құнды оперативті жадты қажет еткендіктен, бұл мүмкіндік кең таралмады. DMA графикалық контроллері тәуелсіз және автономды түрде жұмыс істеді. Бір биттік пиксельдер 16 биттік деректер шинасы арқылы бір уақытта он алтыдан алынып, 16 МГц-тен сәл кем жылдамдықпен шығарылды, бұл секундына шамамен бір миллион сұрауды талап етті. Әрбір сұрау дисплейдің белсенді бөлігінде қол жетімді екі циклдің біреуін алды, бұл процессор үшін секундына шамамен 2,56 МБ жад енімен қамтамасыз етті.
The mouse cursor was drawn on the screen by software, as were all other on screen objects. To support real time animation the screen timing PAL circuit would send a pulse to the 6522 once per vertical retrace. This was the basis for an operating system service called the VBL (vertical blanking) Manager. When the screen was to be redrawn, the cursor would be moved and games had an opportunity to update the display. It could sometimes be difficult to avoid a race condition between a game and the raster display. Flicker could result from the processor writing to the image while it was being sent to the CRT. Therefore, the Macintosh provided a choice of two images in memory, so one could be read while the other was written. The "page" was selected by a general purpose I/O output connected from the 6522 to the video DMA. As two images added up to 42.75 KiB of precious RAM, however, this feature was unpopular. The DMA graphics controller operated independently and autonomously. One bit pixels were fetched sixteen at a time over a 16 bit data bus and output at just less 16 MHz, necessitating almost one million fetches per second. Each fetch took one memory access cycle out of every two available during active parts of the display, implying a memory bandwidth for the CPU of about 2.56MB per second.
Пернетақта
6522 жалпы мақсаттағы тізбектік шинаны ұсынды. Пернетақтада Intel 8021 микропроцессоры орналасқан, ол пайдаланушы енгізген деректерді стандартты телефондық қосылым кабелі арқылы 6522-ге жіберді. Жаңа перне басылған кезде процессорда үзіліс орын алды.
The 6522 provided a general purpose serial bus. The keyboard contained an Intel 8021 microprocessor which transmitted user input to the 6522 over standard phone patch cable. A new keystroke resulted in a processor interrupt.
Дыбыс
Үлгіленген дыбыс қозғалтқышы бейне схемасына тіркелді. Растрлық сканерлеу экранның оң жағынан сол жағына қайтқанда, экран орнына PWM генераторына бір байт дерек жіберілді. Бұл 22.25 кГц көлденең аралықтық жиілікте үлгіленген 8 биттік моно дыбысты қамтамасыз етті. Жалпы мақсаттағы 6522 шығыстары үлгіленген дыбысты өшіре алады немесе оның дыбыс деңгейін 8 деңгейлі әлсіретудің біріне орнатуға мүмкіндік берді. 6522 құрылғысында шаршы толқын генераторы болды. Оның екі таймерлік тізбегінің біреуі дыбысты өшіру шығысын мерзімді түрде қосу/өшіру үшін бапталуы мүмкін. Бұл 11 кГц-тен жоғары жиіліктерді тудыруға болады. Бұл жүйе Lisa / Mac XL аппараттық құралдарымен үйлесімсіз болды, бірақ басқа жағынан, жалпы қолжетімді бағдарламалық жасақтама/фирмалық бағдарлама өзгертулерімен Mac бағдарламалық жасақтамасын іске қоса алатын. Lisa құрылғыларында Mac дыбыс мүмкіндіктерін пайдаланатын бағдарламаларды іске қосу ауыр бейне мәселелеріне және жүйелік құлауларға әкелді.
The sampled sound engine piggybacked on the video circuit. As the raster scan returned from the right side of the screen to the left, one byte of data was placed into a PWM generator instead of the screen. This provided 8 bit sampled monaural sound sampled at the 22.25 kHz horizontal blanking rate. General purpose 6522 outputs could mute the sampled sound, or set its volume to one of 8 levels of attenuation. A square wave generator was included on the 6522. One of its two timer circuits could be set to toggle the mute output periodically. This could produce frequencies higher than 11 kHz. This system was not compatible with the Lisa / Mac XL hardware, which in other respects could run Mac software with commonly available software/firmware modifications. Running programs on Lisas which made use of the Mac sound features would cause severe video problems and system crashes.
Байланыс
Zilog 8530 SCC шамамен 3,7 МГц жиілікте жұмыс істеді. Осы жылдамдықпен әрбір тізбектік канал негізгі жадтан екі есе баяу жұмыс істеді. RS 422 протоколы қосылым орнату сызығын қоспағанда, толыққандай іске асырылды, ол тышқанды қолдау үшін пайдаланылды. Кейіннен Apple оны 8 қосқыштың (коннектордың) орнына ауыстырды, ол осы мүмкіндікті толығымен жойды.
The Zilog 8530 SCC was clocked at around 3.7 MHz. At this speed each serial channel was half as fast as the main memory. The RS 422 protocol was implemented except for the connection established line, which was used to support the mouse. Apple later changed to an 8 pin connector which dropped it entirely.
Сақтау
Macintosh-тың тұрақты сақтау құралы Sony-дің дискеталық дискісі болды. Бұл дискі Apple ][-тің Shugart дискісін және бастапқы Macintosh үшін таңдалған сақтау құралы ретінде бастапқы Lisa-да қолданылған 871K FileWare/"Twiggy" дискетасын ығыстырды. Бір жақты 3,5 дюймдік дискета дискінің сыртқы жиегі қолданылғанда айналу жылдамдығын төмендету арқылы 400 КБ сақтады. Дискіні басқаруға арналған жеке микроконтроллер, IWM (Integrated Woz Machine) болды. Дискеттің жұмысы сауалнамалы I/O арқылы жүзеге асырылды, сондықтан қолжетімділік үздірілмейтін болған жоқ: файлдарды жүктеу және сақтау бүкіл машинаны тоқтататын операциялар еді. Нақты уақыт сағатының санаушысы чипіне 20 байт жад қосылды. Бұл деректер 4,5 вольтты сілтілік батареяны пайдалану арқылы сақталды және пайдаланушының баптауларын сақтау үшін қолданылды.
The Macintosh's persistent storage medium was Sony's floppy diskette drive. This drive replaced the Apple ]['s Shugart drive and the 871K FileWare/"Twiggy" floppy drive used in the original Lisa as the storage medium chosen for the original Macintosh. The single sided 3.5 inch floppy stored 400 KB by spinning the disk slower when the outer edge was used. A separate microcontroller, the IWM (Integrated Woz Machine), was dedicated to disk control. The floppy operated by polled I/O so access was not seamless: loading and saving files were operations that stopped the entire machine. Twenty bytes of memory were included in the real time clock counter chip. This data was retained using a 4.5 Volt alkaline battery and was used to store user preferences.
Уақытты сақтау
Macintosh нақты уақыт сағатымен секундтарды санап, микросекундқа жуық дәлдікпен кері санау таймерімен жабдықталған. Алғашқысы үш жалпы мақсаттағы I/O желісі арқылы сериялық шинамен 6522-ге қосылған. Машина өшірілген кезде ол кварц сағат сияқты жұмыс істеді. Екіншісі 6522-нің ішіне орнатылған. Екеуі де үзіліс сигналын тудыруға қабілетті.
The Macintosh featured a real time clock counting seconds, and a countdown timer with near microsecond resolution. The former was connected to the 6522 by a serial bus on three general purpose I/O lines. It functioned much as a quartz watch when the machine was powered off. The latter was built into the 6522 itself. Either could generate interrupts.