Начало Новини hardwareBG новини Ентусиаст изгражда напълно функционален дискретен процесор от стари чипове

Ентусиаст изгражда напълно функционален дискретен процесор от стари чипове

470
0

На пръв поглед тази плетеница от кабели, вградени компоненти и ръчно запоени схеми може да изглежда като някаква киберпънк скулптура, но всъщност е проект, който може да се опише само като абсурдно брилянтен. Страстен ентусиаст току-що е построил цял процесор – да, не развойна платка, не микроконтролер, а пълноценен CPU, с възможност за изпълнение на инструкции и адресиране на паметта, използващ само стари чипове памет и логически компоненти от 8-битовата ера. Той не е проектиран да замени модерен CPU, а по-скоро е „забавен“ DIY проект, наречен EPROMINT.

Създателят на този удивителен проект, човек с псевдоним „@__MINT_“ стоящ зад полския YouTube канал „Majsterkowanie i nie tylko“ („Направи си сам и още“), е прекарал три месеца в проектиране, окабеляване, програмиране и документиране на всеки детайл от архитектурата на процесора. Идеята се ражда от прост експеримент, използващ стари EPROM чипове памет, първоначално конфигурирани да управляват малки външни системи, като PWM димери или дисплей за съобщения. Именно това запалва искрата. Ако паметта може да се използва за симулиране на основна логика, тогава може би градивните елементи на един цялостен процесор не са далечна химера.

Не след дълго, ентусиастът се озовава до колене в схеми, възпроизвеждайки структура на класически процесори от 8-битовата ера, по-специално като тази на Z80, които спомогнаха за разпалването на революцията в персоналните компютри. Резултатът е устройство, което може да не изглежда елегантно или изпипано, но функционира с реални набори от инструкции, изпълнява собствен асемблерен код и реагира на хардуерни прекъсвания точно както би направил един процесор.

Проектът започва с най-основния компонент на всеки процесор – ALU (аритметично-логическото устройство). Първият прототип, създаден да обработва просто събиране, e бил ненадежден и не достатъчно функционален и е трябвало да бъде изхвърлен в кофата. Неговият заместник е изцяло изграден с цокли за чиповете за по-лесно отстраняване на грешки. Оттам нататък конструкцията се разширява, за да включи интерфейс за памет, контролер на адресната шина – управлявана от вторично ALU – и евентуално управляваща логика, която декодира опкодове и координира целия поток от данни.

Софтуерът също е написан изцяло от нулата. Разработени са близо 2000 реда код, за да се дефинира как процесорът обработва инструкциите, да се рационализира как данните се движат през системата и да се създадат процедури за тестване – всичко това е изградено с помощта на персонализиран набор от инструменти за разработка, създадени за по-ранни платки. Наборът от инструкции далеч надхвърля това, което можеха да правят процесорите от старата школа, включително операции като умножение, деление, тригонометрични изчисления и дори обработка на последователности от битове. Както се изразява създателят, процесорът е бил „дозиран със стероиди“.

След като всички модули са били свързани, процесорът е включен за първи път, консумирайки 250mA ток. Същата развойна конфигурация, използвана преди това за други експерименти с чипове памет, е била адаптирана за генериране на пълен набор от инструкции за новия процесор. Както можете да видите по-горе, мигащ светодиод действа като първа тестова програма, докато вторият светодиод е свързан, за да светне при засечено прекъсване, демонстрирайки, че процесорът може да обработва външни събития дори докато изпълнява инструкции. Той временно спира текущата си операция, обработва прекъсването и след това продължава точно оттам, откъдето е спрял, точно като истински процесор.

В крайна сметка, новороденият процесор се простира върху четири пълноразмерни перфорирани универсални печатни платки, тежи над 500 грама и съдържа повече от километър проводници, ако се разгърне. Всяка логическа операция е реализирана с помощта на предварително програмирана памет. Така че, вместо да използва физически NAND гейтове, изработени от силиций, системата изпраща 8-битов код към EPROM, който връща резултата от съхранена таблица за търсене. Функции като маршрутизиране на данни и декодиране на инструкции разчитат на този метод. За да демонстрира, че системата работи, той я свърза към VFD екран и написва код за възпроизвеждане на фрагмент от филма „Матрицата“.

За разлика от силиция, заровен в съвременния SoC, пътят на изпълнение на този процесор е напълно открит. Всеки тактов цикъл, всеки опкод и всички промени в регистрите са видими и проследими. Това е част от красотата. Това е „Направи си сам“ в най-истинския смисъл на думата. Гледането на това видео ви кара да осъзнаете как процесорите в нашите собствени компютри са като магия.

Източник: Tomshardware 

ВАШИЯТ КОМЕНТАР

Моля, въведете коментар!
Моля, въведете името си тук