Hur man bygger en 8-bitars dator (13 / 18 steg)
Steg 13: Kontrollmatris
T1: Innehållet i programräknaren överförs till minnet adressregister. (Adress State)
T2: program räknarens värde ökas av en. (Increment State)
T3: den adresserade byten i programminnet överförs till instruktion registret. (Minne State)
T4: beroende på vilket kommando exekveras.
T5: beroende på vilket kommando exekveras.
T6: beroende på vilket kommando exekveras.
Det finns två sätt att skapa en kontrollmatris: diskret logik och med ROM'S ROM metoden är den enklaste och mest effektiva. Diskret logik innebär designa en massiv logik Schematisk som kommer ut rätt kontroll orden för datorn baserat på en OP-koden ingång. ROM står för read-only memory. Det finns flera typer av ROM som du kan överväga för användning i din bygga. För min dator jag ursprungligen använt EEPROM (elektroniskt raderbart programmerbart ROM) men sedan skiftade till NVRAM (non-volatile random access memory) efter EEPROM chips kunde inte skriva. Jag rekommenderar inte NVRAM som det är tänkt för minne och inte permanent lagring. EEPROM är den effektivaste lösningen enligt min mening.
Matrisen kontroll kommer att ha tre chips ROM var och en har minst 32 adresser till 8 bit lagring (liksom de timing och räknande element). Det binära ord som skickas ut från kontrollmatris kallas kontroll ROM och innehåller alla kontroll bitar för varje komponent i din dator. Du vill vara säker på att organisera kontroll bitar och vet deras ordning. Ingen operation vill du en kontroll som gör varje del av datorn inaktiv (utom klockan förstås). Ordet kontroll för den datorn som beskrivs i detta Instructable är 16 bitar långa och lagras i två av de kontroll chips ROM. De tre första adresserna i de kontroll chips ROM hålla kontroll orden för Hämta cykeln. Resten av adresserna på chip hålla kontroll orden i par med tre för varje OP-kod. Det tredje ROM-chipet har minnesplatsen för start av word kontrollsekvens för varje kod som OP och tas upp i själva OP-koden. Till exempel, i min dator kommer om du ger kontroll OP koden 0110 det produktionen binära 21, som är adressen till början av kommandot JMP. Det finns en 8-bitars räknare mellan OP ROM och kontroll Roms som räknar från 0-2 (tre första T staterna) då tredje T stat laddar adressen utdata av OP ROM och räknas från den positionen tills tillståndet T1 raderar disken igen. Ringen och binär räknare för kontroll matrisen kontrolleras av en invertering av klocka puls så att kontroll ord är närvarande när den stigande pulsen klocka går till delarna av datorn. Hela processen i ordning är följande:
1.) T1 tillståndet Clear räknaren till 0, skickas kontroll ordet lagras vid 0 ut
2.) klockan går hög och adress staten äger rum
3.) klockan går lågt och i sin tur de kontroll counter påslagen och kontroll ordet 1 skickas ut
4.) klockan går hög och increment cykeln sker
5.) klockan går låg och kontroll counter steg om 2, kontroll ord 2 skickas ut
6.) klockan går hög och minne staten äger rum och OP koden anländer till instruktion registret, T3 är också aktiv vilket innebär på nästa låg klockan pulsen OP kontroll adress kommer att läsas
7.) klockan går låg och laddar disken med adressen för först av de tre kontroll ord för givet OP-koden
8.) T4, T5 och T6 köra OP koden
9.) T1 återställer räknaren, fortsätter processen tills en HLT OP tas emot. Kommandot HLT stoppar klockan.