Você está na página 1de 43

Como construir una computadora casera de 8 bits

https://www.taringa.net/posts/hazlo-tu-mismo/14758892/Construir-una-Computadora-De-8Bites-Megapost.html

La construccin de un equipo de 8-bits TTL suena como una


tarea desalentadora y complicada, o al menos asi fue para a m
cuando empec mi viaje a entender la arquitectura bsica de una
CPU. Cuando se llega a esto, una CPU es bastante simple en
funcionamiento una vez que aprenda los fundamentos detrs de
todos sus procesos. Este proyecto est destinado a ayudar a
cualquier persona interesada en la construccin de su propio
ordenador y obtener el conocimiento maravilloso que viene junto
con el proceso. No tenga miedo de probar, slo se puede
aprender. Este proyecto comenzar con la descripcin de los
fundamentos de la electrnica. Despus de eso, los fundamentos
de la lgica binaria y booleanos se describir. Por ltimo
entonces se mover hacia la funcin de las diversas partes de un
ordenador sencillo-como-posible (con algunas modificaciones) .

Electrnica de ordenador digital . Esto significa que el producto


final de este proyecto ser un equipo que se puede programar
con un nico conjunto de instrucciones. Este proyecto tambin
deja a muchos de los aspectos de diseo de la computadora
dependiendo de usted y sirve como una gua para la
construccin de su propio equipo. Esto se debe a que hay
muchas maneras de acercarse a este proyecto. Si usted ya tiene
una slida comprensin de la lgica booleana y el
funcionamiento de binarios no dude en pasar a la carne del
proyecto. Espero que todos disfruten Para este proyecto se
necesita: 1) Una fuente de alimentacin. 2) Ayuda para diseo +
un montn de cables. 3) LED para la salida. 4) (explicado ms
adelante) Varios circuitos integrados. 5) Tiempo libre. 6) La
voluntad de echar a perder y aprender de los errores. 7) Una
gran cantidad de paciencia. Opcional (pero muy til): . 1) del
osciloscopio . 2) Multmetro digital . 3) EEPROM del programador
. 4) destornillador

Paso 1 Qu es una computadora?


Esta puede parecer una pregunta muy simple que no necesita
responder cuando, en realidad, es una pregunta a la que muchas
personas no saben la verdadera respuesta

Las computadoras han existido mucho ms tiempo que el


transistor en forma mecnica y terico. La definicin actual de un
equipo que fue ideado por un individuo muy inteligente con el
nombre de Alan Turing.

El describi una mquina que se llama la mquina de Turing.


Todos los equipos que usamos hoy en da, desde la
computadora o telfono celular que usted est leyendo esto a
todos los superordenadores pueden ser clasificados como una
mquina de Turing, a su nivel ms simple.

Qu es una Mquina de Turing? Una mquina de Turing consta


de 4 partes: el registro de la cinta, la cabeza, la mesa y el
Estado. Para visualizar el funcionamiento de una mquina que
primero hay que imaginar que una tira de pelcula se extiende
infinitamente en cada direccin. Ahora imagina que cada clula
de esta tira de pelcula puede contener slo uno de un conjunto
definido de smbolos (como un alfabeto). Para este ejemplo,
imaginemos que cada celda slo puede contener un "0" o un "1".
Estas clulas pueden ser reescritos una cantidad infinita de
tiempo, pero conservan la informacin de forma indefinida hasta
que se cambi de nuevo. La parte de la mquina de Turing
conocida como la cabeza puede escribir smbolos para las
clulas, as como aumentar o reducir su posicin sobre la tira de
pelcula por un nmero entero dado (nmero entero) de las
clulas. La parte siguiente es la tabla que contiene un conjunto
de instrucciones para la cabeza para ejecutar como "mover a la
derecha cuatro clulas" y "conjunto de celdas a 1".

La cuarta y ltima parte de una mquina de Turing es su registro


estatal, cuyo propsito es mantener el estado actual de la
mquina. El Estado incluye la instruccin, as como los datos
actuales sobre la cinta. Eso es lo simple de la operacin de una
computadora . Cuando el equipo funciona, en realidad est
funcionando como una mquina de Turing. Procesa los datos
almacenados en su computadora por un conjunto de
instrucciones y algoritmos. El equipo descrito en este Instructable
es un modelo muy simplista de un ordenador, pero todava
funciona como una que se puede programar con un conjunto de
instrucciones que va a seguir y ejecutar.

Paso 2 Una Introduccin a la electrnica


Antes de construir un ordenador de 8 bits, es sumamente til
contar con una comprensin de las propiedades elementales de
la electricidad y los circuitos analgicos. Hay partes en el equipo
que va a construir que tendr componentes analgicos. Hay
muchas guas de autoaprendizaje electrnicos disponibles por un
costo mnimo que proporcionan un curso intensivo en ingeniera
elctrica. Yo he encontrado Auto Electronics Gua de la
Enseanza de Harry Kybet y Boysen conde de ser un libro
maravilloso para enfrentar el mundo de electrnica analgica.
Gua electrnica de enseanza del dominio propio : http

://www.amazon.com/Electronics-Self-Teaching-Guide-Teaching -
Guides/dp/0470289619 /

Componentes comunes: . Resistor - Lmites de corriente, medida


en ohmios de carga condensador - Las tiendas, o bien puede ser
polar o no polar (es decir, polar que se debe colocar en la
direccin correcta para trabajar). Se mide en faradios. diodo -
Slo permite que la corriente fluya en una direccin, se
descompone en una cierta tensin cuando se coloca en la
direccin equivocada. transistor - Una corriente de compuerta
que es controlado por un tercer pasador que acta como un
mediador. Hay muchos tipos de transistores, pero aqu vamos a
estar hablando del BJT (transistor bipolar de unin), que se
presenta en dos tipos:. NPN y PNP de corriente, tensin y
resistencia a ir mano a mano en un circuito. La relacin entre los
tres se puede expresar con la ley de Ohm: V = IR.

En otras palabras, Voltaje es igual a la corriente en amperios


multiplicado por la resistencia en ohmios. La ley de Ohm es una
de las frmulas ms importantes de la electrnica y vale la pena
conocer fuera de la parte superior de su cabeza. Para aplicar la
ley de Ohm que usted necesita saber la resistencia de un
circuito. Para hallar el valor de una resistencia que tiene que
utilizar su cdigo de color. El cdigo de color resistencia se basa
en el espectro visible y pueden ser memorizados en muchas
maneras diferentes. Para los que no les importa para memorizar,
hay una gran cantidad de herramientas que existen para
ayudarle a encontrar el valor correcto para su resistencia. Para
calcular la resistencia total en un circuito se necesitan dos
frmulas para dos configuraciones diferentes de resistencias:
serie y paralelo. En la serie de una resistencia sigue a la otra,
mientras que en paralelo que trabajan uno junto al otro. En la
serie de la frmula es muy simple: Resistencias en serie: R (total)
= R (1) + R (2) +. . . + R (N) . Lo que significa que slo hay que
sumar los valores de las resistencias resistencias en paralelo: R
(total) = 1 / {1 / R (1) + 1 / R (2) +. . . + 1 / R (N)} Una buena
herramienta para encontrar resistencia por parte de cdigo de
color: http://www.csgnetwork.com/resistcolcalc.html Es ms fcil
entender la frmula para resistencias en paralelo si se piensa en
las resistencias de trabajar juntos, como dos personas que
trabajan juntos en un proyecto. La misma frmula se utiliza para
problemas de palabras donde se le da la velocidad a la que dos
personas operar y usted debe saber lo rpido que su proyecto se
completar si el trabajo en conjunto. Para encontrar la cantidad
de corriente se suministra a un componente determinado con un
determinado valor de la resistencia slo tendra que conectar los
valores de resistencia y el voltaje en la ley de Ohm y resuelve
para I. Por ejemplo: Hay una luz en un circuito y dos, y 1K (mil
ohms) resistencias se colocan en frente de ella en paralelo. Con
una fuente de alimentacin de 9 voltios, cunta corriente se
suministra a la luz? 1) Calcular el R (total):. R (total) = 1 / (1/1000
+ 1/1000) = 1 / (2/1000) = 1000/2 = 500 ohmios . 2) Calcular la
ley de Ohm actual mediante la: 9 = I * 500 I = 9/500 = 0,018 A =
18 mA (miliamperios) Tambin se pueden organizar las
resistencias en un circuito para regular el voltaje. Esto se llama
un divisor de tensin e implica dos resistencias en serie. La
salida de tensin de las dos resistencias es en su unin. Para
una mejor idea, mira la imagen que he adjuntado. En esta
disposicin, la frmula para la salida de voltaje es: V (a) = V
(fuente) * R (2) / {R (1) + R (2)} Los condensadores sern de
utilidad en su ordenador con la construccin del reloj. El reloj es
simplemente un circuito que se activa y desactiva a una
velocidad constante. Al igual que las resistencias, los
condensadores tienen dos frmulas para encontrar el valor total
de ambas series y configuraciones en paralelo. Serie: C (total) =
1 / {1 / C (1) + 1 / C (2) +. . . + 1 / C (N)} en paralelo: C (total) = C
(1) + C (2) +. . . + C (N) La velocidad a la cual un condensador se
carga depende de la resistencia del circuito antes (o despus, si
se descarga) el condensador, as como su capacidad. La carga
de un condensador se mide en las constantes de tiempo. Se
tarda 5 constantes de tiempo en cargarse por completo o
despedir a un condensador. La frmula para calcular la
constante de tiempo de un condensador en el segundo es: T
(constante) = * Resistencia Capacitancia Diodos son simples en
funcionamiento y son muy tiles cuando la construccin de un
equipo TTL. Slo permiten que la corriente fluya en una
direccin. Cuando se colocan en la direccin correcta son lo que
se llama polarizacin. Cuando se invierte se descomponen en un
cierto voltaje. Cuando un diodo est trabajando en contra de la
corriente es de polarizacin inversa. Un transistor opera como
una vlvula que se acciona por la corriente. Un BJT tiene tres
pines: el colector, emisor y la base. En aras de la simplicidad en
este paso que se describe un transistor NPN en la que la
corriente fluye desde el colector al emisor. La corriente aplicada
a la base controla la cantidad de la corriente fluye desde el
colector al emisor. Los transistores son ideales para muchas
aplicaciones debido a su capacidad para amplificar una seal.
Esto es debido a la corriente aplicada a la base del transistor
puede ser considerablemente menor que la corriente controlada.
Esta ganancia de corriente se llama la ganancia de corriente del
transistor, o beta. La frmula para beta es: Beta = corriente
(colector) / corriente (base) Cuando un transistor est
completamente en ella se dice que est saturado. Un transistor
booleana es una que es ya sea en su estado saturado o
apagado y nunca en el medio. Este es el tipo de transistor que
usted tendr que lidiar con todo en electrnica digital. Los
transistores formar las puertas lgicas necesarias para un
ordenador para funcionar. Estas se describirn ms adelante.
tiles

Paso 3 nmeros binarios

Hoy se utilizan para un sistema de numeracin en todo el mundo


que se basa en el nmero diez. Con esto quiero decir que no
tenemos ningn nmero en nuestro sistema de numeracin que
vale la pena el valor de diez y por lo tanto nuestro sistema
numrico de base diez es. Piensa en nuestro sistema de
numeracin como un odmetro. Se cuenta con odmetro de la
cifra ms baja a la ms alta la cifra y luego obliga a que el rotor
siguiente en la secuencia para avanzar en un solo lugar. Por
ejemplo: 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 1 0 <- Llevar al
siguiente dgito binario es la base de dos, lo que significa que
slo tiene dos nmeros y no tiene el numeral 2. Binario slo tiene
los nmeros 0 y 1 o "apagado" y "on". Para contar en binario slo
tiene que aplicar la tcnica del odmetro: 0001b - 1 0010b - 2
0011b - 3 0100b - 4 0101b - 5 0110b - 6 0111b - 7 1000B - 8 ,
etc. . . Hay otro factor de nuestro sistema numrico que hace de
base diez, a medida que avanzamos ms alto en cifras el peso
del aumento de los nmeros por una potencia de diez. Por
ejemplo, 1 = ^ 10 de 0, 10 = 10 ^ 1, 100 = 10 ^ 2, etc. . . En
binario, las cosas, por supuesto, son la base de dos y, como tal,
cada nmero sucesivo es otra potencia de dos. 1b = 1 = 2 ^ 0,
10b = 2 = 2 ^ 1, 100 B = 4 = 2 ^ 2, etc. . . Para convertir un
nmero decimal a binario no es un simple truco conocido como
doble-meterse que hace que el proceso sea mucho ms fcil:
Supongamos que desea convertir 13 a un nmero binario,
comenzamos dividiendo 13 por dos y anotando el resto . A
continuacin, directamente encima de anotar el nmero
resultante, sin que el resto (6 en este caso) y se divide por dos y
escribir el resto por encima de la anterior. Se contina este
proceso hasta llegar a un 1 o un 0. Al final se lee de arriba hacia
abajo para obtener el resultado. 1/2 = 0 R1 <Lea de arriba a
abajo. El resultado es 1101 o 2 ^ 0 + 0 + 2 ^ 2 + 2 ^ 3 = 1 + 0 + 4
+ 8 = 13. Esto se denomina una palabra binaria. 3/2 = 1 R1 < 2.6
= 3 R0 < 13/2 = 6 R1 < hexadecimal se utiliza muy a menudo con
binario. Hexadecimal es base 16 y que contiene el 0-9 nmeros y
af. Un nmero hexadecimal se utiliza para describir un mordisco
o cuatro bits de datos. Un bit es un solo 1 o 0 del binario. Un
mordisco puede contar desde 0 hasta 15 (0000 a 1111) antes de
la siguiente bit es en el nibble siguiente. Dos aperitivos junto es
un byte u 8 bits. Puesto que el primer nmero es 2 ^ 0, la ltima
cifra es ponderada 2 ^ 7. Por lo tanto un byte puede estar en
cualquier lugar en el intervalo de 0 a 255. Para expresar el byte
00101110 (46 en decimal) en hexadecimal que en primer lugar
separar las dos mordiscos en el 0010 y 1110. La primera nibble
tiene un valor 2, y el segundo tiene un valor de E (o 14 en
decimal). Por lo tanto el byte 00101110 en hexadecimal sera 2E.

Paso 4 puertas lgicas


Un equipo se compone de miles de puertas lgicas dispuestas
para llevar a cabo ciertas funciones. Una puerta lgica es un
componente de la electrnica digital, cuya produccin depende
del estado de sus entradas. La mayora de las puertas lgicas
tienen dos entradas y una salida. Usted puede pensar de puertas
lgicas, como los tomadores de decisiones en la electrnica
digital. Las seis puertas lgicas principales utilizados en la
electrnica digital son: Y la Puerta: La salida es alta cuando todo
si sus entradas son altas. O Puerta: La salida es alta cuando
cualquiera de sus entradas son altas. NO Puerta: Slo tiene una
entrada. La salida es alta cuando su entrada es baja. Puerta
NAND:. de salida es alto a menos que todas sus entradas son
altas NOR: La salida es alta cuando ninguno de sus entradas
son altas. Puerta XOR: la salida es alta cuando un nmero impar
de entradas son . alto de triple estado del buffer. Un buffer que
est controlado por una seal lgica tercera Es importante
mencionar ahora la diferencia entre una alta seal "1" y una baja
relacin seal "0". Una seal alta o bien puede ser una conexin
a un voltaje positivo o puede ser una entrada flotante. Una
entrada flotante es una que no est conectado a cualquier salida.
Un ejemplo de una entrada flotante sera uno que no est
conectado a la totalidad o una que est conectada a la salida de
un tampn 3-estado que no est activado. Una seal baja est
presente cuando uno de entrada est a tierra. Las puertas
lgicas se puede alimentar entre s para producir casi cualquier
funcin imaginable. Por ejemplo, dos puertas NOR se puede
alimentar una en la otra para almacenar un bit de datos en un
pestillo RS_NOR mientras se suministra energa al circuito.

Paso 5 conteo binario (El contador de programa)


Una de las partes ms esenciales para una computadora es su
contador de programa. El contador de programa ofrece el equipo
con la direccin actual de la instruccin a ejecutar. A fin de que el
contador de programa para trabajar, sin embargo, es necesario
contar en binario. Para ello flip flop JK se utilizan. Un flip-flop es
un arreglo de compuertas lgicas que almacena un bit (como el
seguro de RS_NOR se describe en el paso de las puertas
lgicas). Un flip-flop JK cambia su estado cuando su entrada
pulso de reloj pasa a nivel alto y luego baja de nuevo (sus
entradas J y K tambin tiene que ser alto). En otras palabras,
cada vez que un flop flip obtiene el flanco de bajada de un pulso
de reloj de sus cambios de estado, ya sea un "0" a un "1" o un
"1" a "0". Si se conecta la salida de un flop, flip en cascada a otro
y que el resultado es un contador binario que acta como un
odmetro. Esto se debe a que el primer flip flop, en la secuencia
pasa a alta y baja, entonces, se activa el siguiente en la
secuencia. La frecuencia del reloj (cuntas veces se enciende y
se apaga un segundo) se redujo a la mitad con cada adicin
sucesiva de un flop flip. Es por eso un flip-flop JK tambin se
llama una divisin por dos del circuito. El patrn resultante para
cuatro flip flops ser 0000, 0001, 0010, 0011, 0100, etc. . . Para el
equipo simple como sea posible-se describe en este Instructable,
sin embargo, hay algunas otras funciones que usted necesita
con el fin de hacer que el equipo operativo. Para que el equipo
sea capaz de reiniciar su programa se necesita la capacidad de
borrar o hacer que todos sus productos a cero. El contador de
programa tambin tiene la capacidad de cargar una palabra
binaria para el cdigo de JMP op que permite al equipo para
saltar a una instruccin determinada. Las puertas lgicas se
utilizan para lograr este objetivo. Afortunadamente para nosotros
los contadores binarios vienen en fichas convenientes con todas
las funciones que usted necesita.

Paso 6 Registros
Registros: Los registros podran ser la parte ms importante de
un ordenador. Un registro almacena temporalmente un valor
durante el funcionamiento de un ordenador. El ordenador de 8-
bits se describe en este Instructable tiene dos registros unidos a
sus ALU, un registro para almacenar la instruccin actual y un
registro para la salida de la computadora. Dependiendo del chip,
un registro tendr 2 o 3 clavijas de control. Los registros que se
va a utilizar tienen dos pines de control: habilitar la salida y
entrada de habilitacin (tanto activa como cuando se baja).
Cuando la salida de habilitar pasador se conecta a tierra la
palabra binaria almacenada en la actualidad se enva a travs de
los pines de salida. Cuando el pasador de entrada se conecta a
tierra el presente palabra binaria en los pines de entrada se
carga en el registro. Un ejemplo del uso de un registro en un
equipo es el acumulador en la ALU (unidad aritmtica lgica que
realiza operaciones matemticas). El acumulador es como el
bloc de notas para la computadora que almacena la salida de la
ALU. El acumulador es tambin la primera entrada para la ALU.
El registro B es la segunda entrada. Para una operacin de
adicin, el primer valor es cargado en el acumulador. Despus
de que el segundo valor que se aade al primer valor es cargado
en el registro B. Las salidas del acumulador y el registro B se
funden abierto y estn constantemente en la alimentacin de la
ALU. El paso final para la adicin es transferir la salida de la
operacin en el acumulador.

Paso 7 La ALU
La ALU (unidad aritmtica lgica) de una computadora es la
parte que ejecuta operaciones matemticas. Para el equipo de
SAP slo tendr que tener dos funciones: suma y resta.
Sumando y restando en el sistema binario trabaja de manera
muy similar a la suma y la resta en trminos decimales, por
ejemplo:
1 <- Llevar a 1 1 <- Llevar Bits
05 0101 05 0101 10 1010 Para aadir binaria que necesitamos lo
que se llama un servicio completo, sumador. Un sumador
completo efectivamente aade un poco de binario a otro con un
acarreo y llevar a cabo. El acarreo en de un sumador completo
es como una tercera entrada para el proceso de adicin. Se
utilizan para la cadena de mltiples sumadores completos juntos.
La realizacin de un sumador completo se produce cuando hay
un par de seres en el proceso de adicin. El llevar a cabo de un
sumador completo se alimenta en el acarreo para aadir varios
bits de binario. Para construir un sumador completo se necesitan
dos puertas XOR, dos puertas AND y una compuerta OR. Para
restar binarios que necesitamos para convertir un nmero a su
contraparte negativa y agregarlo a la cantidad que estamos
restando. Para ello se utiliza lo que se llama complemento de 2.
Para tomar el complemento de 2 de una palabra binaria que
invertir cada bit (cambiar todos los 0 a 1 y cada uno a un 0) y
agregar uno. 5 = 0101, 5 = 1010 1 = 1011 No se usa -> 1 1 10
1010 + (-5) 1011 0101 5 Para controlar la inversin de los bits
que utilizamos puertas XOR con una entrada normalmente baja.
Con un entrada normalmente baja, la salida es equivalente a la
otra entrada. Cuando se establece la entrada de control de alta,
inviertes la otra entrada. Si par esta inversin con un poco
enviada al acarreo en los sumadores completos de una
operacin resta es el resultado.

Paso 8 memoria de programa y la memoria RAM


La memoria del programa de su computadora va a almacenar las
instrucciones a ejecutar. Tambin actuar como RAM que puede
almacenar valores durante el funcionamiento del equipo. La
memoria de programa consta de tres partes principales: la
memoria, la direccin de memoria de registro (MAR) y el
multiplexor. La memoria es un chip que tiene 16 bytes de
almacenamiento. Hay una direccin de cuatro bits que se
introducen en la memoria que le dice qu bytes debe leer o
escribir. El MAR almacena la direccin actual para el byte que se
lee o se escribe de la memoria. Se constantemente de
alimentacin en el chip de memoria a menos que el equipo est
en su estado de programacin. Un multiplexor le permite elegir
entre dos entradas y una salida de la seal de entrada. El
multiplexor utilizado en mi ordenador le permite seleccionar entre
dos entradas de cuatro bits (el MAR y la introduccin manual).
Cuando el equipo est en su estado la programacin de la
direccin manual se introduce en la memoria y le permite a los
bytes del programa en la memoria de los ordenadores en la
direccin que usted defina.

Paso 9 registro de instruccin

El registro de instrucciones de un ordenador almacena la


instruccin actual, as como una direccin de la instruccin que
se operar. Es un componente muy simple, con un propsito muy
importante. Durante el funcionamiento del equipo, el contenido
de una direccin dada en la memoria se transfiere al registro de
instrucciones. En mi ordenador los bits fsal ms a la izquierda
son el cdigo OP o instruccin actual para llevar a cabo. Los
cuatro bits de la derecha, o ms bits de cuatro, decirle a la
computadora qu direccin va a utilizar para la operacin. Los
primeros cuatro bits de alimentar constantemente el cdigo OP
en la matriz de control que le dice al ordenador qu hacer para
una instruccin dada. Los cuatro bits ms a la derecha de comer
de nuevo en el ordenador de manera que la direccin puede ser
transferido en el MAR o el contador de programa.

Paso 10 Registro de salida


Si un equipo se para alimentar slo la salida del autobs para el
operador, la lectura que hacen poco o ningn sentido. Esto es
por qu hay un registro de salida, cuyo propsito es almacenar
los valores destinados a la produccin. La salida para su equipo
puede ser que la pantalla binaria de LED simple prima, o usted
podra tener una pantalla que lee en voz alta los nmeros reales
en las pantallas de siete segmentos. Todo depende de la
cantidad de trabajo que desea poner en su ordenador. Para mi
equipo que estoy utilizando algunos IV-9 tubos Numitron rusos
para la salida de mi ordenador, junto con un Arduino para hacer
la conversin de binario a decimal.
Paso 11 Reloj

Cada parte en el equipo tiene que estar completamente


sincronizado con el fin de funcionar correctamente. Para ello el
equipo necesita un reloj o un circuito que tiene una salida que se
activa y desactiva a un ritmo constante. La manera ms fcil de
hacer esto es utilizar un temporizador 555. El temporizador 555
es un contador de tiempo muy popular que fue inventado en la
poca de la aparicin de la computadora que es stille
extremadamente popular entre los aficionados hoy en da. Para
construir el circuito 555 que usted necesita saber cmo funciona.
El reloj de su ordenador debera ser relativamente lento al
principio. 1Hz, o un ciclo por segundo, es un buen valor de
partida. Esto le permite ver el funcionamiento de su ordenador y
comprobar si hay errores. El chip 555 necesita dos resistencias y
un condensador para la operacin. Las dos resistencias
determinar cunto tiempo los impulsos de alto y bajo son as
como la frecuencia global. El condensador cambia la longitud del
pulso para ambos. Si usted no tiene ninguna experiencia con 555
temporizadores Recomiendo experimentar con ellos

Paso 12 Arquitectura
Este es el paso donde todo se une. Es el momento de disear la
arquitectura de su ordenador. La arquitectura es como los
registros y los distintos componentes de su computadora se
organizan. El aspecto del diseo es totalmente suya, a pesar de
que ayuda a mantener un objetivo en mente (lo que usted desea
que su equipo lo hacen) y un modelo para ir fuera de. Si desea
disear su equipo despus de la ma es completamente bien. He
modificado la arquitectura de la SAP-1 se encuentra en
Electrnica Digital Informtica para mi equipo de 8-bits. Uno de
los aspectos de diseo a tener siempre en cuenta es cmo se
transfieren los datos entre los distintos componentes de su
equipo. El mtodo ms comn es tener un comn "bus" para
todos los datos en el ordenador. Las entradas y salidas de los
registros, ALU, contador del programa y la memoria RAM estn
conectadas al bus de la computadora. Los cables estn
dispuestos en orden desde el bit menos significativo (1) a mayor
bit ms significativo (128). salidas Todas y cada una que estn
conectados al bus tienen que ser completamente desconectado
mientras inactivo o de lo contrario sera combinar entre s y dan
como resultado errneo de salida. Para ello se utiliza buffers
triestado para controlar la salida de algunos elementos que la
produccin de forma predeterminada como la entrada del
acumulador, ALU y real para la programacin de la computadora.

Paso 13 de control de matriz


La matriz de control de una computadora le dice a cada parte
individual al tomar la entrada y la salida de su valor. Hay varios
estados de cada operacin en un ordenador. Estos estados son
provocados por un tipo de contador de llamada contador de
anillo. Un contador de anillo slo tiene un poco alto a la vez y los
ciclos a travs de sus salidas en forma consecutiva. Por ejemplo,
si un contador de anillo tiene 4 salidas que primero tendr su
primera salida activa. En el siguiente pulso de reloj que se
establezca su segunda salida de alta (y baja el primero). El
siguiente pulso de reloj avanzar el bit de una salida superior y
as sucesivamente.

Estas etapas se llaman estados T. El equipo en este Instructable


utiliza seis estados T para la operacin de un comando. El
primero tres estados T son lo que se llama el ciclo de bsqueda
en la que se capta la instruccin actual y se coloca en el registro
de instrucciones. El contador de programa tambin se
incrementa en uno. El segundo conjunto de tres estados T
depende de qu cdigo OP se alimenta en la matriz de control
del registro de instrucciones. Los estados T son como sigue: T1:
El contenido del contador del programa se transfieren en el
registro de direcciones de memoria. (Estado de direcciones) T 2:
El contador de programa se incrementa en uno. (Estado de
incremento) T3: El byte dirigida en la memoria del programa se
transfiere al registro de instrucciones. (Estado de memoria) T4:
Depende de qu comando est siendo ejecutado. T5:. Depende
de qu comando se est ejecutando T6:. Depende de qu
comando se est ejecutando Hay dos formas principales para
crear una matriz de control: el uso de lgica discreta y el uso de
ROM. El mtodo de ROM es la ms fcil y ms eficiente.
Utilizando una lgica discreta consiste en el diseo un esquema
masivo que la lgica es la salida de las palabras de control
correctos para su equipo sobre la base de una entrada de cdigo
OP. ROM es sinnimo de slo lectura de memoria. Hay varios
tipos de ROM que se puede considerar para su uso en su
construccin. Para mi equipo que originalmente utiliza EEPROM
(ROM programable y borrable elctricamente), pero luego pas a
la NVRAM (memoria no voltil de acceso aleatorio) despus de
que los chips de memoria EEPROM no pudo escribir. No
recomiendo la NVRAM ya que est destinado para la memoria
de acceso aleatorio y el almacenamiento no es permanente.
EEPROM es la solucin ms eficiente en mi opinin. La matriz
de control tendr tres chips ROM teniendo cada uno al menos 32
direcciones de almacenamiento de bits 8 (as como la
sincronizacin y elementos de conteo). La palabra binaria que se
enva fuera de la matriz de control se denomina la ROM de
control y contiene todos los bits de control para cada
componente de su equipo. Usted quiere estar seguro de la
organizacin de los bits de control y conocer su orden. Por
ninguna operacin que desea una palabra de control que hace
que todas las partes de la computadora inactiva (excepto el reloj,
por supuesto). La palabra de control para el equipo descrito en
este Instructable es de 16 bits de longitud y se almacena en dos
de los chips de control de ROM. Las tres primeras direcciones de
las fichas de control de ROM tienen las palabras de control para
el ciclo de captacin.

El resto de las direcciones en el chip mantenga las palabras de


control en pares de tres para cada cdigo OP. El chip ROM
tercera mantiene la posicin de memoria para el inicio de la
secuencia de palabras de control para cada cdigo OP y est
dirigida por el cdigo OP s. Por ejemplo, en mi equipo si le dan
el control del cdigo OP 0110 es la salida binaria 21, que es la
direccin de la salida del comando JMP. Hay un contador de 8-
bits en la ROM entre OP y la ROM de control es que los
recuentos de 0-2 (primero tres estados T) y despus en las
cargas de estado T terceros la direccin emitida por la ROM OP
y los recuentos de esa posicin hasta que el T1 Estado se borra
el contador de nuevo. El anillo y contador binario para la matriz
de control son controladas por una inversin del pulso de reloj de
modo que las palabras de control estn presentes cuando el
pulso de reloj ascendente va a los elementos del equipo. Todo el
proceso en orden es el siguiente:

. 1) estado T1 se borra el contador a 0, la palabra de control se


almacena a 0 se enva 2) El reloj pasa a alta y el estado de
direcciones tiene lugar. 3) El reloj pasa a nivel bajo y. a su vez,
incrementa el control de venta libre y la palabra de control 1 se
enva 4.) El reloj pasa a nivel alto y el ciclo de incremento se
produce 5.) El reloj pasa a nivel bajo y los incrementos de control
de venta libre a los 2, la palabra de control 2 se enviaron 6.) El
reloj va ms alto y el estado de la memoria se lleva a cabo y el
cdigo OP llega al registro de instrucciones, T3 tambin es activo
lo que significa en el siguiente pulso de reloj bajo la direccin de
control OP se cargar 7.) El reloj pasa a nivel bajo y se carga el
contador con la direccin para la primera de las tres palabras de
control para la propuesta cdigo OP 8). T4, T5 y T6 ejecutar el
cdigo OP 9.) T1 restablece el contador, el proceso contina
hasta que una OP HLT se recibe. El comando Equipo de Alto
Nivel para el reloj.

Paso 14 microprogramacin
Ahora es la parte donde se decide qu comandos que desea que
su computadora sea capaz de hacer. Le di a mi equipo de 6
operaciones nicas que le confieren las funciones bsicas de
programacin que iba a necesitar. Los comandos que se
programa en su ordenador se lo que se llama lenguaje
ensamblador. El montaje es uno de los idiomas ms antiguos de
programacin y todava se puede utilizar en las computadoras de
hoy. Los comandos en el lenguaje incluyen la carga del
acumulador, aadir, mover, salida y almacenamiento de las
variables. Cada smbolo tiene su propio 4-bit de cdigo OP en
este equipo de 8-bits. Los comandos que he elegido para mi
equipo son:
NOP: No est en funcionamiento. (0000) LDA: Cargar el
acumulador con el valor en esta direccin. (0001) ADD: Agregue
el valor a la direccin especificada en el valor en el acumulador.
(0010) SUB: Resta el valor en la direccin especificada en el
valor en el acumulador. (0011) STO: Almacenar el acumulador
de su contenido en la direccin especificada. (0100) OUT:
Guarde el contenido del acumulador en el registro de salida para
que el operador puede ver. (0101) JMP: Salto a una instruccin
determinada en la memoria en la direccin especificada. (0110)
Equipo de Alto Nivel: Detener el funcionamiento de la
computadora. (0111) Para determinar lo que las palabras de
control deben ser enviados por cada OP que usted necesita
saber qu partes tiene que estar activo en cada estado T. Para
mi equipo me organiz los bits de la siguiente manera (el
subrayado indica un bit activo-bajo): CE CO J MI RO II IO IO BI
OE SU AI AO RI Equipo de Alto Nivel X de la CE - Conde
Habilitar (permite la entrada del contador de programa del reloj)
CO- Reloj con habilitacin J - Salto de habilitacin MI - MAR
entrada RO - La memoria del programa de II - Instrucciones de
registro en el IO - registro de instrucciones a OI - registro de
salida en la BI - B registro en el EO - ALU salida de habilitacin
SU - Restar AI - Acumulador de AO - Acumulador de salida
permiten RI - La memoria de programa en el Equipo de Alto Nivel
- Alto X - No se utiliza aqu es lo que los bits deben estar activos
para cada estado de T para una instruccin dada, as como la
direccin que debe estar en la ROM de control: Fetch: 0: CO, MI
- Los resultados de los programas de venta libre en el MAR 1:
CE - El contador est habilitado para el siguiente pulso de reloj 2:
RO, II - El byte direccionado se emite desde la RAM en el
registro de instruccin NOP: 3: X 4: X : X 5 LDA: 6: IO, MI - La
direccin en el registro de instruccin se transfiere al MAR (ms
cuatro bits) 7: RO, IA - El byte direccionado se emite desde la
memoria en el acumulador 8: X ADD: 9: IO, MI - La direccin en
el registro de instruccin se transfiere al MAR (ms cuatro bits)
10: RO, BI - El byte direccionado se emite desde la memoria en
el acumulador 11: EO, IA - La suma del acumulador y el registro
B se carga en el acumulador SUB: 12: IO, MI - La direccin en el
registro de instruccin se transfiere al MAR (ms cuatro bits) 13:
RO, BI - El byte direccionado se emite desde la memoria en el
acumulador 14: Amnista Internacional, Unin Sovitica, la OE -
La diferencia del acumulador y el registro B se carga en el
acumulador de STO: 15: IO, MI - La direccin en el registro de
instruccin se transfiere al MAR (ms cuatro bits) 16: AO, RO, RI
- Las salidas de acumuladores en la memoria de programa en la
ubicacin del destinatario (RO y RI tiene que estar activo para
que una escritura en el chip que se utiliza) 17: X SALIDA: 18: IO,
AO - Las salidas del acumulador en el registro de salida 19: X 20:
X JMP: 21: J, IO - Las cargas del registro de instrucciones del
contador de programa con ms sus cuatro bits 22: X 23: X HLT:
24: HLT - Una seal es enviada a detener el reloj 25: X 26: X su
ROM contiene OP mltiplos de tres en cada localizacin de
memoria. Este es, por supuesto, ya que cada ciclo tiene tres
estados de ejecucin. Por lo tanto los datos tratados para su
ROM OP sern los siguientes: 0-3 1-6 2-9 3-12 4-15 5-18 6-21 7-
24

Para programar su eleccin de la ficha que tiene muchas


opciones diferentes. Usted podra comprar una memoria
EEPROM y programador EPROM, pero por lo general cuesta
una cantidad considerable de dinero. He construido un
programador protoboard para mi ROM que funciona moviendo
los cables alrededor y el control de la escritura y lectura permite
pines a travs de pulsadores. Ms tarde me simplific el proceso
y dise un programador Arduino para mi NVRAM
especficamente. Voy a adjuntar el cdigo, ya que puede ser
fcilmente modificado para programar casi cualquier chip de
memoria en paralelo en que se usan para este proyecto.

Paso 15 piezas de compra

La gran cosa acerca de la construccin de un ordenador de 8


bits es que la mayora de las partes le costar menos de un dlar
por pieza si se compran desde el lugar correcto. He comprado el
90% de mis piezas de Jameco Electrnica y he estado
completamente satisfecho con sus servicios. Las nicas partes
que realmente he comprado en otro sitio son las paneras y los
cables de protoboard (y los tubos Numitron). Estos se pueden
encontrar mucho ms barato en sitios como Amazon. Siempre
asegrese de hacer que las piezas que usted est pidiendo son
los correctos. Cada parte que usted compra debe tener una hoja
de datos en lnea disponible que explica todas las funciones y las
limitaciones del artculo que usted est comprando. Asegrese
de mantener estos organizada, que va a utilizar hojas de datos
de muchos en la construccin de su ordenador. Para ayudarle
con el ordenador voy a enumerar las partes que se utilizan para
la ma: contador de 4 bits: 74161 Registro (yo uso dos para cada
registro de 8 bits): 74LS173 Multiplexor: 74LS157 -
Paso 16 Construccin

Aqu es donde la paciencia realmente entra en juego eleg utilizar


una placa para el equipo real, pero hay muchos otros mtodos
por ah (como el alambre-embalaje) que funcionan igual de bien.
Para hacer las cosas mucho ms simple que incluye un
diagrama de bloques para el esquema actual de mi equipo. No
obstante se incluyen los nmeros de pieza o nmeros PIN. Creo
que esto har las cosas ms simple y abierto a la creatividad. La
salida del programa 4-bit del contador, de entrada y salida MAR
registro de instruccin estn todos conectados a los cuatro bits
menos significativos del bus de la computadora. El segundo
diagrama que se muestra es la lgica de control para el final la
operacin de la computadora. Los controles estn diseados de
manera que cambia puede ser un insumo para el equipo.
RS_NOR pestillos se colocan delante de los interruptores de
palanca para el rebote. Interruptores de palanca suelen tener
conexiones sucias que puede rebotar debido a un a un estado de
apagado y proporcionar ms pulsos que desee. Adicin de un
flip-flop a la salida de un conmutador elimina los pulsos
adicionales. Esto sera extremadamente til cuando se utiliza la
opcin de reloj de manual. Usted no quiere dar la vuelta al
interruptor y poner en marcha 8 pulsos de reloj. La lectura /
escritura botn escribe el byte de entrada activa a la memoria
dirigida. Al cambiar el control de entrada por defecto la palabra
en la memoria RAM a dos RO baja y los bits de RI que inician un
ciclo de escritura. La carrera / programa de cambio del interruptor
de entrada, que est activo en el multiplexor de direcciones de
memoria. El flop flip despus de los 555 significa que cuando el
ordenador se ejecuta, no se inicia en el centro de un pulso de
reloj. Una seal de Equipo de Alto Nivel de baja se detendr el
reloj pase a ambos el reloj manual o 555. Y finalmente, el
conmutador marcha / claro est conectado a todas las patas
claras en el equipo tal como aquellos en los registros y
contadores.

Paso 17 Programacin
Ahora que el equipo est hecho, puede ser programado para
llevar a cabo las instrucciones. Para ello primero tienes que
poner el equipo en el ajuste del programa al pulsar el interruptor
de marcha / programa de palanca en la posicin de programa.
Despus de que seleccione las direcciones que comienzan en 0
y va a 15 e insertar los datos necesarios para su programa. Por
ejemplo, para comenzar con 5 y suma 4 con cada salida del
programa sera la siguiente: Direccin - Datos: 0000-00010111
LDA 7: Carga el acumulador con el valor almacenado en la
direccin de memoria 7 (5) 0001-00101000 ADD 8: Aadir el
valor almacenado en la direccin de memoria de 8 (4) desde
0010 hasta 01010000 OUT: Salida del acumulador 0011 a
01.100.001 JMP 1: Ir a la instruccin 1 0100 - X 0101 - X 0110 -
X 0111 a 00.000.101 5 1.000-00.000.100 4 1001 - X 1010 - X
1011 - X 1100 - X 1101 - X 1110 - X 1111 - X

Paso 18 Ir ms all
Espero que haya disfrutado de este Instructable y, sobre todo,
espero que usted tiene algo de ella. Usted puede considerar todo
este trabajo duro de una experiencia de aprendizaje muy valiosa
que le dar una mejor comprensin de la electrnica, la
informtica y la programacin. Al final, usted tambin tendr algo
muy fresco para mostrar a todo su trabajo duro tambin.
Despus de la construccin de su primer ordenador de 8 bits
puede ir ms all y aadir ms funcionalidad. La ALU se utilizan
en este equipo es muy simplista en funcionamiento y hoy ALU
verdaderas mujeres tienen una gran variedad de funciones tales
como el desplazamiento de bits y las comparaciones lgicas.
Otro aspecto importante es pasar a bifurcacin condicional.
Condicionales medios de ramificacin que una instruccin
depende del estado actual de indicadores establecidos por la
ALU. Estas banderas cambiar a medida que el contenido del
acumulador de ser negativo o son iguales a cero. Esto permite
una posibilidad mucho ms amplia para la aplicacin de su
computadora.

Você também pode gostar