James Lee

Блогы турында фән

Баш бит

Минем белән элемтәгә керергә

Apple2fpga: реконструкцияләү Алма икенче+ fpga

Apple2fpga: реконструкцияләү Алма икенче+ fpgaApple2fpga: реконструкцияләү Алма икенче+ fpga

Стивен А Эдвардс
Колумбия Университеты
Сыйфатында Раштуа бүләк өчен үзен 2007 елда мин тормышка ашырды 1980 еллар-чор, сугыш+ vhdl эшләү өчен бортында ПЛИС ДЭ2. Мәгънәсе тыш, күңел ачу иде проиллюстрировать хакимият (дөресрәге, кече егәрлек) заманча ПЛИС. Башка сүзләр белән әйткәндә, нәрсәне халык кылды, Стив Джобс үзенең беренче миллион, хәзер мөмкин класс проекты минем 4840 встраиваемых системаларын сыйныф.

Нәрсә ул "маков"?

Apple2fpga: реконструкцияләү Алма икенче+ fpga

"Apple II иде беренчеләрдән булып, чыннан да, уңышлы персональ компьютерлар. Эшләнгән Стивом Возняк ("воз") һәм беренче тапкыр тәкъдим ителде 1977 елда, ул, чыннан да, төшергән 1978 елда, кайчан, икенче 140К диск 5.25-дюймовый флоппи-дисковод кертелгән иде, аннары visicalc, беренче программа электрон таблицалар.
Шактый гади, хәтта стандартлары буенча көн, Apple компаниясе II буенча төзелгән недорогой 8-разрядный микроэшкәрткечтән 6502 технологияләрдән МОП (ул продан өчен $25, кайчан Микроэшкәрткечтән Intel 8080 продавался өчен $179). Бу 6502 иде, сигез-битную шину мәгълүматлар алырга мөмкин керү 64 Кб хәтер. "Apple II, ул йөгерә бераз югарырак 1 МГц. Моннан тыш, дисклар һәм драма, калганнары цепи состояли берсе дискретных ЛС ТТЛ микросхем.
Шул ук вакытта беренче Яблоко хезмәтләре IIS китерелә белән 4К драмасы, бу тиз үсте дәрәҗәсенә кадәр 48К һәм 64К соңрак ярдәмендә банк коммутации һәм карта киңәйтү хәтер. Драмов, бу вакытта иде алдынгы технологияләр. Шул ук вакытта алар иде сложны куллану таләп +5, +12-5В чыганаклары туклану кирәк, вакыт-вакыт яңартыла, аларның якынча алты тапкыр арттырырга тыгызлыгы, моны тора. Запыхавшийся күчермәсен башында безнең эрага өчен Apple, мин түгел расхваливаю үз өстенлекләре.
Шул ук вакытта Apple компаниясе II килдем белән встроенной клавиатурой, рудиментарные (бер бит) звуковой порт, һәм уен порт, кагыйдә буларак, тоташтырылган ике-осевой аналоговый джойстик, аның төп отличительной үзенчәлеге шунда иде, аны встроенном видео экранында. Бу оештырылган композитный (НЧ) NTSC видео, гадәттә җибәрелгән аша RF-модулятора өчен, барлыкка килергә, мәсәлән, ТВ-канал 3.
"Apple II-туар өч видео режимын: 40 х 24 заглавные-бары тик њзе аклы-каралы текстовый дисплей, 40 х 48 16-төс белән түбән разрешением дисплея һәм 140 х 280 6-төсле дисплей белән югары разрешением.
"Apple II итеп карап булыр иде җайланма белешмәләр видео, анда бар микропроцессор, подключенный аңа. Воз башлады 14.31818 МГц мастер пиксель сәгатьләре-нәкъ дүрт тапкыр частоту 3.579545 МГц colorburstбыл кулланыла NTSC видео. Чөнки төсе иде өстәлде к аклы-каралы ак стандартын NTSC тоелса, аклы-каралы ак бизәкләр җибәрделәр нәкъ менә бу ешлыгын воспринимаются ничек төс.
Воз алынган тактовой ешлыгын процессора нче 14.31818 МГц юлы белән бүлү якынча ундүрт яшь тулганда. Мин якынча дим, чөнки чынлыкта һәр алтмыш бишенче циклы үзәк процессора (бер тапкыр буенча я горизонталь, я вертикаль линия сканирования) растягивается ике 14 МГц такта саклап калу өчен этабы 3.58 ешлыгы colorburstбыл МГц. Шул рәвешле, бар 65 * 14 + 2 = 912 пикселей чорында линиягә, нәкъ яки 228 циклы colorburstбыл 3.58 МГц ка линиясе.
Икесе дә процессора һәм керү видео байт хәтер өчен частоте 1 МГц. Доступы чередуются, шуңа күрә драма нәтиҗәле эшли, 2 МГц. Башка воз трюк: видео-адреслары шундый яңарту алар тагын да шактый яңартырга драма, шуңа күрә кирәкми бернинди өстәмә циклы яңарту.
Минем реконструкцияләү, мин попытался воспроизвести тәртибе цепи ГРМ (шул исәптән растянутые циклы) мөмкин кадәр якынрак. Әмма урынына алсын чынлыкта генерировать низкочастотные сәгать юлда (кагыйдә буларак, бу начар идея заманча конструкциях, анда куллану микросхеме Фапч белән наклона контроль булып тора предпочтительным), мин побежала күбесе төп 14 МГц һәм распределенных защелки камап дип баштан ук эшли берсе производных частот.

Минем Реконструкцияләү

Минем Алма икенче " (сердечник) тора ГРМ, генератор бар, ролик генератор бар, Саны ядер процессора 6502, ул мин алды берсе Питер Wendrich бу Коммодор 64 эмулятор, Ромы, ниндидер мантыйк өчен декодирования адреслары һәм башка бортовых кертү/чыгару, гомумән, ядро көтә 14.31818 МГц тактового сигнал, тапшыру белән клавиатуры, керү 64 КБ хәтер һәм керү периферийной шине (хәзерге вакытта, бары диск эмулятор) һәм генерирует бер-битное видео трансляцияләүне белән бергә аудио-әлеге өчен оратора.
Өчен моны ядра кулланырга, мин аларга янына клавиатуру PS/2 тора (Алекс освободил һәм alse), диск эмулятор, VGA линия-дублер, ул преобразует 15 кГц горизонтальная ешлыгы һәм өлеше Apple-битный видео чыгу төс чыгу VGA каршындагы 30 кГц горизонтальная Ешлыгы яңарту.
Удвоитель амбар үз эченә алган хәтер өчен ике линия видео нче Apple; күрсәтергә бер-ике тапкыр, шул ук вакытта башка-укырга килгән видео Алма берсе. Өстәп, интерпретации булдыру я горизонталь, я вертикаль һәм вертикальной синхронизации, камап, преобразует одноразрядный агымы видео төс ярдәмендә, мөгаен, артык гади генә алгоритм: һәр дүрт 14 МГц пикселей интерпретируются ничек блогы, отображается кебек бер төс. Бу шактый нәтиҗәле булыр, һәм күп җитештерә странные цветовые эффекты окантовка үзенчәлекле Apple II, әмма бу бик дөрес, чөнки чын телевизор чынлыкта башкара артык мягким низкочастотной фильтрации бу luimance һәм цветоразностных сигналлар. Яхшыртылган алгоритм булачак дип санарга биты, примыкающих к һәр төркемдә дүрт. Шуңа да карамастан, дисплей, һичшиксез, файдалы.

Apple2fpga: реконструкцияләү Алма икенче+ fpgaApple2fpga: реконструкцияләү Алма икенче+ fpgaApple2fpga: реконструкцияләү Алма икенче+ fpga

Минем эмуляции диск II булып тора примитивным (гына уку өчен), әмма функциональ. Мин кибетендә "nibblized образы" 5,25-дюймовых дискет бу внешнюю SD картасын һәм укырга, аның истәлегенә-обломока дорожки, бер үк вакытта. Мин кодированный интерфейс SPI (берсе-өч сказанных типичный SD-карта) vhdl, ул сәләтле уяту, карта һәм скачать случайный 256-байтных блоклар. Контролируя бу гади эмулятор өчен тора диск II, ул тәэмин итә, бик низкоуровневый интерфейс к диску. Мәсәлән, головки уку/язу перемещаются контрольдә программа белән тәэмин итү, выборочно пульсирует дүрт фаза шагового двигательнең. Минем эмулятор аппарат сәгатьләр бу импульсы, һәм модель, алар хәзерге вакытта җитәкчесе урнашкан.
Һәр тапкыр, кайчан номеры трека үзгәрә, минем контроллер считывает белән SD-карта яңа төркем 6655 байт (256 * 25) эз хәтер. Шул ук вакытта, мин эмулировать диск вращается, вакыт-вакыт башта адреслары считываемых мәгълүматлар бүген микроэшкәрткечтән каршындагы алу мөмкинлеген тәэмин итү диску ячейкам кертү-чыгару.
Өчен отладки, мин вывел процессора ПК дүрт җиде-сегментных индикатор бу тактаны һәм агымдагы трека өчен диск, башка ике. Шул ук вакытта компьютер гадәттә шулай тиз үзгәрә, бу әверелә размытие, схемасын еш туа. Мәсәлән, ПК, элеккечә үк, бик сосредоточены, кайчан компьютер көтә шул команда строке. Аналогично, мин тапкан күп программалы тәэмин итүне дә кертеп, операционную системасын вакытта аның перемещении головки привода, атады "тоткарлау монитора" режимы өчен замедлить әйберләр аска таба.

Чагыштыру Гамәлгә Ашыруга

Иң төп побудительных бизәкләр төшереп ясаган өчен бу проектның иде күрсәтергә, ничек интегрированные заманча ПЛИС, җиңүче буларак, чагыштырмача аз энергия алар күләмдә кулланыла. Шуңа күрә мин чагыштырды егәрлек, Потребляемая реаль Алма II+, Алма икенче+ эмулируется программалы, һәм минем реконструкцияләү ПЛИС.
Үлчәү өчен егәрлек, мин кулланды недорогой һәм бик гади куллануда, "үтерергә Ватт" измеритель егәрлек. Бу дәгъва 0.2% төгәллек, аның шактый алу өчен примерное тәкъдим итү турында хәбәр (ватт?) бара.
Һәр очракта да, мин измерял егәрлек, Потребляемая системасы тыш монитора. Хакимият иде, артык яки ким даими өчен Dell (вакытында эмулятор җибәрелде) һәм түләү fpga; чыгымы (Алма буенча икенче куәте шактый үзгәрә башлагач, диск иде актив (спиннинг).
Бары тик саны өчен Apple II-бу, чыннан да, дөрес. Бу Dell-бу чудовищно подавлен, күбрәк булган хәтер (192 МБ) караганда өчен кирәк җибәрү Нигезләнгән һәм эмулятор өчен Apple, һәм беркайчан да кулланды үз дискеты, компакт-дисклар һ. б. дәүләт Советы ПЛИС ия бу мәктәпкә охшаган проблемалар: бу да бар (неиспользованный) интерфейс Ethernet, USB һәм NTSC видео-интерфейсов, шулай ук SDRAM һәм тьюторы-чипов. Әлегә дыйгычлы, алар барыбер энергия куллану.

Apple2fpga: реконструкцияләү Алма икенче+ fpgaApple2fpga: реконструкцияләү Алма икенче+ fpga

Apple2fpga: реконструкцияләү Алма икенче+ fpgaApple2fpga: реконструкцияләү Алма икенче+ fpga

Apple2fpga: реконструкцияләү Алма икенче+ fpgaApple2fpga: реконструкцияләү Алма икенче+ fpgaApple2fpga: реконструкцияләү Алма икенче+ fpga

Apple II+ Dell Optiplex GXa Altera/Terasic DE2
c. 1982 c. 1998 c. 2006
Synertek 6502 Intel Pentium II Altera EP2C35F672C6 Cyclone II
LS TTL, 16K DRAMs, 1 MHz NMOS CPU 233 MHz, 250 nm CMOS CPU 90 nm CMOS
CPU: 4K transistors? CPU: 7.5M transistors 33K LEs, 150M transistors?

Техник Ресурслар

Алма II иде описано бу мельчайших нечкәлекләре. Башлап беренче сугыш - "китап" Справочное җитәкчелеге, үзе Apple компаниясе опубликовала чертежи сериясе өчен Apple II өчен. Кайчан Возняк чыгыш ясады Колумбийском университетында, ул билгеләп үткәнчә, бу шулай эшләнде намеренно: ул сезгә булсын өчен мөмкин кадәр күбрәк техник мәгълүмат өйрәтү өчен кулланучылар. Мондый мөнәсәбәт сирәк күренеш бу көннәрдә.
Ике башка китаплар бирергә, тагын да подробные язык: Уинстон Gayler Алма икенче цепи Тасвирламасы (Самс, 1983), һәм аңлау, Джим Сатер Алма икенче (югары сыйфатлы программа тәэмин ителешен, 1983). Мин консультировался еш кына вакытында язу vhdl моның өчен проект. Өчен, аңлау диск II, дөресрәге, яблочный дисклы операция бүлмәсе системасы (ДОС 3.3), тормый, һәм Петер Лехнер астында Алма ДОС (Сыйфаты, программа белән тәэмин итү, 1983) тора, икенчесе юк, булса да, бу күпкә артык сосредоточен караганда, беренче ике китабы.
Бу китаплар инде күптән чыккан матбугат, әмма кайбер иде отсканированы һәм архивируются веб-сайтында. 1000bit.net бигрәк тә яхшы коллекциясе.
Проект FPGApple Алекс освободил вдохновил бу. Алекс шактый любезен өчен уртаклаша үз исходным коды белән мине (бу кадәр начар түгел кебек, ул раслый һәм үзенең сайтында) һәм мин кулланды аның сыйфатында сылтамалар, ничек, мин язган үзенең хосусый.

Ayrat Izraphilov - 2017-06-02 18:50:12
Керергә