Construir una Computadora De 8Bites [Megapost]



pc



computadora



Toda mi vida he estado interesado en aprender cómo funcionan las cosas. Siempre fue difícil para mí usar algo y simplemente aceptar que funciona sin tener que desarmarla y ver lo que la hace funcionar. Por eso la electrónica se ha convertido en una parte muy importante de mi vida y una parte muy agradable también. Hoy les acerco este proyecto. Espero que lo disfruten



notebook



Cómo construir una computadora de 8 bits



madre




binario



programar




La construcción 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 básica de una CPU. Cuando se llega a esto, una CPU es bastante simple en funcionamiento una vez que aprenda los fundamentos detrás de todos sus procesos. Este proyecto está destinado a ayudar a cualquier persona interesada en la construcción de su propio ordenador y obtener el conocimiento maravilloso que viene junto con el proceso. No tenga miedo de probar, sólo se puede aprender. Este proyecto comenzará con la descripción de los fundamentos de la electrónica. Después de eso, los fundamentos de la lógica binaria y booleanos se describirá. Por último entonces se moverá hacia la función de las diversas partes de un ordenador sencillo-como-posible (con algunas modificaciones) .

Electrónica 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 también deja a muchos de los aspectos de diseño de la computadora dependiendo de usted y sirve como una guía para la construcción de su propio equipo. Esto se debe a que hay muchas maneras de acercarse a este proyecto. Si usted ya tiene una sólida comprensión de la lógica 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 alimentación. 2) Ayuda para diseño + un montón de cables. 3) LED para la salida. 4) (explicado más 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) Multímetro digital . 3) EEPROM del programador . 4) destornillador



megapost



Paso 1 ¿Qué es una computadora?



8 bits



placa madre





computador




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 más tiempo que el transistor en forma mecánica y teórico. La definición actual de un equipo que fue ideado por un individuo muy inteligente con el nombre de Alan Turing.

El describió una máquina que se llama la máquina de Turing. Todos los equipos que usamos hoy en día, desde la computadora o teléfono celular que usted está leyendo esto a todos los superordenadores pueden ser clasificados como una máquina de Turing, a su nivel más simple.

¿Qué es una Máquina de Turing? Una máquina de Turing consta de 4 partes: el registro de la cinta, la cabeza, la mesa y el Estado. Para visualizar el funcionamiento de una máquina que primero hay que imaginar que una tira de película se extiende infinitamente en cada dirección. Ahora imagina que cada célula de esta tira de película puede contener sólo uno de un conjunto definido de símbolos (como un alfabeto). Para este ejemplo, imaginemos que cada celda sólo puede contener un "0" o un "1". Estas células pueden ser reescritos una cantidad infinita de tiempo, pero conservan la información de forma indefinida hasta que se cambió de nuevo. La parte de la máquina de Turing conocida como la cabeza puede escribir símbolos para las células, así como aumentar o reducir su posición sobre la tira de película por un número entero dado (número entero) de las células. La parte siguiente es la tabla que contiene un conjunto de instrucciones para la cabeza para ejecutar como "mover a la derecha cuatro células" y "conjunto de celdas a 1".

La cuarta y última parte de una máquina de Turing es su registro estatal, cuyo propósito es mantener el estado actual de la máquina. El Estado incluye la instrucción, así como los datos actuales sobre la cinta. Eso es lo simple de la operación de una computadora . Cuando el equipo funciona, en realidad está funcionando como una máquina 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 todavía funciona como una que se puede programar con un conjunto de instrucciones que va a seguir y ejecutar.




Silicio



Paso 2 Una Introducción a la electrónica



procesar






Antes de construir un ordenador de 8 bits, es sumamente útil contar con una comprensión de las propiedades elementales de la electricidad y los circuitos analógicos. Hay partes en el equipo que va a construir que tendrá componentes analógicos. Hay muchas guías de autoaprendizaje electrónicos disponibles por un costo mínimo que proporcionan un curso intensivo en ingeniería eléctrica. Yo he encontrado Auto Electronics Guía de la Enseñanza de Harry Kybet y Boysen conde de ser un libro maravilloso para enfrentar el mundo de electrónica analógica. Guía electrónica de enseñanza del dominio propio : http

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

Componentes comunes: . Resistor - Límites 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 dirección correcta para trabajar). Se mide en faradios. diodo - Sólo permite que la corriente fluya en una dirección, se descompone en una cierta tensión cuando se coloca en la dirección equivocada. transistor - Una corriente de compuerta que es controlado por un tercer pasador que actúa como un mediador. Hay muchos tipos de transistores, pero aquí vamos a estar hablando del BJT (transistor bipolar de unión), que se presenta en dos tipos:. NPN y PNP de corriente, tensión y resistencia a ir mano a mano en un circuito. La relación 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 fórmulas más importantes de la electrónica 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 código de color. El código 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 fórmulas 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 fórmula es muy simple: Resistencias en serie: R (total) = R (1) + R (2) +. . . + R (N) . Lo que significa que sólo 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 código de color: http://www.csgnetwork.com/resistcolcalc.html Es más fácil entender la fórmula para resistencias en paralelo si se piensa en las resistencias de trabajar juntos, como dos personas que trabajan juntos en un proyecto. La misma fórmula se utiliza para problemas de palabras donde se le da la velocidad a la que dos personas operar y usted debe saber lo rápido 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 sólo tendría 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 alimentación de 9 voltios, cuánta 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) También se pueden organizar las resistencias en un circuito para regular el voltaje. Esto se llama un divisor de tensión e implica dos resistencias en serie. La salida de tensión de las dos resistencias es en su unión. Para una mejor idea, mira la imagen que he adjuntado. En esta disposición, la fórmula para la salida de voltaje es: V (a) = V (fuente) * R (2) / {R (1) + R (2)} Los condensadores serán de utilidad en su ordenador con la construcción 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 fórmulas 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 después, 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 fórmula 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 construcción de un equipo TTL. Sólo permiten que la corriente fluya en una dirección. Cuando se colocan en la dirección correcta son lo que se llama polarización. Cuando se invierte se descomponen en un cierto voltaje. Cuando un diodo está trabajando en contra de la corriente es de polarización inversa. Un transistor opera como una válvula 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 señal. 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 fórmula 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 electrónica digital. Los transistores formar las puertas lógicas necesarias para un ordenador para funcionar. Estas se describirán más adelante. útiles




8b



Paso 3 números binarios



comp



la base




netbook




Hoy se utilizan para un sistema de numeración en todo el mundo que se basa en el número diez. Con esto quiero decir que no tenemos ningún número en nuestro sistema de numeración que vale la pena el valor de diez y por lo tanto nuestro sistema numérico de base diez es. Piensa en nuestro sistema de numeración como un odómetro. Se cuenta con odómetro de la cifra más baja a la más 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 dígito binario es la base de dos, lo que significa que sólo tiene dos números y no tiene el numeral 2. Binario sólo tiene los números 0 y 1 o "apagado" y "on". Para contar en binario sólo tiene que aplicar la técnica del odómetro: 0001b - 1 0010b - 2 0011b - 3 0100b - 4 0101b - 5 0110b - 6 0111b - 7 1000B - 8 , etc. . . Hay otro factor de nuestro sistema numérico que hace de base diez, a medida que avanzamos más alto en cifras el peso del aumento de los números 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 número sucesivo es otra potencia de dos. 1b = 1 = 2 ^ 0, 10b = 2 = 2 ^ 1, 100 B = 4 = 2 ^ 2, etc. . . Para convertir un número decimal a binario no es un simple truco conocido como doble-meterse que hace que el proceso sea mucho más fácil: Supongamos que desea convertir 13 a un número binario, comenzamos dividiendo 13 por dos y anotando el resto . A continuación, directamente encima de anotar el número resultante, sin que el resto (6 en este caso) y se divide por dos y escribir el resto por encima de la anterior. Se continúa 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 números y af. Un número 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 número 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 sería 2E.



microprogramacion



Paso 4 puertas lógicas






hacer compu



fabricar compu


Construir una Computadora De 8Bites [Megapost]



pc



computadora



notebook



madre




binario



Un equipo se compone de miles de puertas lógicas dispuestas para llevar a cabo ciertas funciones. Una puerta lógica es un componente de la electrónica digital, cuya producción depende del estado de sus entradas. La mayoría de las puertas lógicas tienen dos entradas y una salida. Usted puede pensar de puertas lógicas, como los tomadores de decisiones en la electrónica digital. Las seis puertas lógicas principales utilizados en la electrónica 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: Sólo 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 número impar de entradas son . alto de triple estado del buffer. Un buffer que está controlado por una señal lógica tercera Es importante mencionar ahora la diferencia entre una alta señal "1" y una baja relación señal "0". Una señal alta o bien puede ser una conexión 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 sería uno que no está conectado a la totalidad o una que está conectada a la salida de un tampón 3-estado que no está activado. Una señal baja está presente cuando uno de entrada está a tierra. Las puertas lógicas se puede alimentar entre sí para producir casi cualquier función 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 energía al circuito.



programar



Paso 5 conteo binario (El contador de programa)



megapost



8 bits



placa madre


computador




Silicio



Una de las partes más esenciales para una computadora es su contador de programa. El contador de programa ofrece el equipo con la dirección actual de la instrucción 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 lógicas que almacena un bit (como el seguro de RS_NOR se describe en el paso de las puertas lógicas). 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 también 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 actúa como un odómetro. 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 (¿cuántas veces se enciende y se apaga un segundo) se redujo a la mitad con cada adición sucesiva de un flop flip. Es por eso un flip-flop JK también se llama una división por dos del circuito. El patrón 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 también tiene la capacidad de cargar una palabra binaria para el código de JMP op que permite al equipo para saltar a una instrucción determinada. Las puertas lógicas se utilizan para lograr este objetivo. Afortunadamente para nosotros los contadores binarios vienen en fichas convenientes con todas las funciones que usted necesita.




procesar



Paso 6 Registros



8b




comp



la base



Registros: Los registros podrían ser la parte más 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 instrucción 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 habilitación (tanto activa como cuando se baja). Cuando la salida de habilitar pasador se conecta a tierra la palabra binaria almacenada en la actualidad se envía a través 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 aritmética lógica que realiza operaciones matemáticas). El acumulador es como el bloc de notas para la computadora que almacena la salida de la ALU. El acumulador es también la primera entrada para la ALU. El registro B es la segunda entrada. Para una operación de adición, el primer valor es cargado en el acumulador. Después de que el segundo valor que se añade al primer valor es cargado en el registro B. Las salidas del acumulador y el registro B se funden abierto y están constantemente en la alimentación de la ALU. El paso final para la adición es transferir la salida de la operación en el acumulador.


netbook




Paso 7 La ALU




microprogramacion







hacer compu



fabricar compu




Construir una Computadora De 8Bites [Megapost]



pc



computadora



notebook



madre



binario



programar



La ALU (unidad aritmética lógica) de una computadora es la parte que ejecuta operaciones matemáticas. Para el equipo de SAP sólo 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 términos decimales, por ejemplo:
1 <- Llevar a 1 1 <- Llevar Bits
05 0101 05 0101 10 1010 Para añadir binaria que necesitamos lo que se llama un servicio completo, sumador. Un sumador completo efectivamente añade 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 adición. Se utilizan para la cadena de múltiples sumadores completos juntos. La realización de un sumador completo se produce cuando hay un par de seres en el proceso de adición. El llevar a cabo de un sumador completo se alimenta en el acarreo para añadir 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 número 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 inversión 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 inversión con un poco enviada al acarreo en los sumadores completos de una operación resta es el resultado.



megapost



Paso 8 memoria de programa y la memoria RAM



8 bits



placa madre



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



computador



Paso 9 registro de instrucción


Silicio



procesar




8b


El registro de instrucciones de un ordenador almacena la instrucción actual, así como una dirección de la instrucción que se operar. Es un componente muy simple, con un propósito muy importante. Durante el funcionamiento del equipo, el contenido de una dirección dada en la memoria se transfiere al registro de instrucciones. En mi ordenador los bits fsal más a la izquierda son el código OP o instrucción actual para llevar a cabo. Los cuatro bits de la derecha, o más bits de cuatro, decirle a la computadora qué dirección va a utilizar para la operación. Los primeros cuatro bits de alimentar constantemente el código OP en la matriz de control que le dice al ordenador qué hacer para una instrucción dada. Los cuatro bits más a la derecha de comer de nuevo en el ordenador de manera que la dirección puede ser transferido en el MAR o el contador de programa.


comp


Paso 10 Registro de salida



la base



netbook



microprogramacion






hacer compu


Si un equipo se para alimentar sólo la salida del autobús para el operador, la lectura que hacen poco o ningún sentido. Esto es por qué hay un registro de salida, cuyo propósito es almacenar los valores destinados a la producción. La salida para su equipo puede ser que la pantalla binaria de LED simple prima, o usted podría tener una pantalla que lee en voz alta los números 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 conversión de binario a decimal.



fabricar compu


Paso 11 Reloj


Construir una Computadora De 8Bites [Megapost]



pc



computadora



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 más fácil 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 aparición de la computadora que es stille extremadamente popular entre los aficionados hoy en día. Para construir el circuito 555 que usted necesita saber cómo funciona. El reloj de su ordenador debería 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 operación. Las dos resistencias determinar cuánto 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


notebook


Paso 12 Arquitectura


madre



binario


programar



megapost



8 bits



placa madre




computador



Este es el paso donde todo se une. Es el momento de diseñar la arquitectura de su ordenador. La arquitectura es como los registros y los distintos componentes de su computadora se organizan. El aspecto del diseño 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 diseñar su equipo después de la mía es completamente bien. He modificado la arquitectura de la SAP-1 se encuentra en Electrónica Digital Informática para mi equipo de 8-bits. Uno de los aspectos de diseño a tener siempre en cuenta es cómo se transfieren los datos entre los distintos componentes de su equipo. El método más común es tener un común "bus" para todos los datos en el ordenador. Las entradas y salidas de los registros, ALU, contador del programa y la memoria RAM están conectadas al bus de la computadora. Los cables están dispuestos en orden desde el bit menos significativo (1) a mayor bit más significativo (128). salidas Todas y cada una que están conectados al bus tienen que ser completamente desconectado mientras inactivo o de lo contrario sería combinar entre sí y dan como resultado erróneo de salida. Para ello se utiliza buffers triestado para controlar la salida de algunos elementos que la producción de forma predeterminada como la entrada del acumulador, ALU y real para la programación de la computadora.


Silicio



Paso 13 de control de matriz



procesar



8b



comp


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 operación en un ordenador. Estos estados son provocados por un tipo de contador de llamada contador de anillo. Un contador de anillo sólo tiene un poco alto a la vez y los ciclos a través 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.

la base



Estas etapas se llaman estados T. El equipo en este Instructable utiliza seis estados T para la operación de un comando. El primero tres estados T son lo que se llama el ciclo de búsqueda en la que se capta la instrucción actual y se coloca en el registro de instrucciones. El contador de programa también se incrementa en uno. El segundo conjunto de tres estados T depende de qué código 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 lógica discreta y el uso de ROM. El método de ROM es la más fácil y más eficiente. Utilizando una lógica discreta consiste en el diseño un esquema masivo que la lógica es la salida de las palabras de control correctos para su equipo sobre la base de una entrada de código OP. ROM es sinónimo de sólo lectura de memoria. Hay varios tipos de ROM que se puede considerar para su uso en su construcción. Para mi equipo que originalmente utiliza EEPROM (ROM programable y borrable eléctricamente), pero luego pasó a la NVRAM (memoria no volátil de acceso aleatorio) después 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 solución más eficiente en mi opinión. La matriz de control tendrá tres chips ROM teniendo cada uno al menos 32 direcciones de almacenamiento de bits 8 (así como la sincronización y elementos de conteo). La palabra binaria que se envía 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 organización de los bits de control y conocer su orden. Por ninguna operación 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 captación.

netbook



El resto de las direcciones en el chip mantenga las palabras de control en pares de tres para cada código OP. El chip ROM tercera mantiene la posición de memoria para el inicio de la secuencia de palabras de control para cada código OP y está dirigida por el código OP sí. Por ejemplo, en mi equipo si le dan el control del código OP 0110 es la salida binaria 21, que es la dirección 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 después en las cargas de estado T terceros la dirección emitida por la ROM OP y los recuentos de esa posición 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 inversión del pulso de reloj de modo que las palabras de control están presentes cuando el pulso de reloj ascendente va a los elementos del equipo. Todo el proceso en orden es el siguiente:

microprogramacion




. 1) estado T1 se borra el contador a 0, la palabra de control se almacena a 0 se envía 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 envía 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 más alto y el estado de la memoria se lleva a cabo y el código OP llega al registro de instrucciones, T3 también es activo lo que significa en el siguiente pulso de reloj bajo la dirección de control OP se cargará 7.) El reloj pasa a nivel bajo y se carga el contador con la dirección para la primera de las tres palabras de control para la propuesta código OP 8). T4, T5 y T6 ejecutar el código OP 9.) T1 restablece el contador, el proceso continúa hasta que una OP HLT se recibe. El comando Equipo de Alto Nivel para el reloj.




Paso 14 microprogramación


hacer compu




fabricar compu




Construir una Computadora De 8Bites [Megapost]



pc




computadora




notebook




madre




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 básicas de programación 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 más antiguos de programación y todavía se puede utilizar en las computadoras de hoy. Los comandos en el lenguaje incluyen la carga del acumulador, añadir, mover, salida y almacenamiento de las variables. Cada símbolo tiene su propio 4-bit de código OP en este equipo de 8-bits. Los comandos que he elegido para mi equipo son:

binario



NOP: No está en funcionamiento. (0000) LDA: Cargar el acumulador con el valor en esta dirección. (0001) ADD: Agregue el valor a la dirección especificada en el valor en el acumulador. (0010) SUB: Resta el valor en la dirección especificada en el valor en el acumulador. (0011) STO: Almacenar el acumulador de su contenido en la dirección especificada. (0100) OUT: Guarde el contenido del acumulador en el registro de salida para que el operador puede ver. (0101) JMP: Salto a una instrucción determinada en la memoria en la dirección 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 habilitación J - Salto de habilitación 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 habilitación 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 instrucción dada, así como la dirección 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 instrucción NOP: 3: X 4: X : X 5 LDA: 6: IO, MI - La dirección en el registro de instrucción se transfiere al MAR (más cuatro bits) 7: RO, IA - El byte direccionado se emite desde la memoria en el acumulador 8: X ADD: 9: IO, MI - La dirección en el registro de instrucción se transfiere al MAR (más 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 dirección en el registro de instrucción se transfiere al MAR (más cuatro bits) 13: RO, BI - El byte direccionado se emite desde la memoria en el acumulador 14: Amnistía Internacional, Unión Soviética, la OE - La diferencia del acumulador y el registro B se carga en el acumulador de STO: 15: IO, MI - La dirección en el registro de instrucción se transfiere al MAR (más cuatro bits) 16: AO, RO, RI - Las salidas de acumuladores en la memoria de programa en la ubicación 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 más sus cuatro bits 22: X 23: X HLT: 24: HLT - Una señal es enviada a detener el reloj 25: X 26: X su ROM contiene OP múltiplos de tres en cada localización de memoria. Este es, por supuesto, ya que cada ciclo tiene tres estados de ejecución. Por lo tanto los datos tratados para su ROM OP serán los siguientes: 0-3 1-6 2-9 3-12 4-15 5-18 6-21 7-24

programar




Para programar su elección de la ficha que tiene muchas opciones diferentes. Usted podría 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 través de pulsadores. Más tarde me simplificó el proceso y diseñó un programador Arduino para mi NVRAM específicamente. Voy a adjuntar el código, ya que puede ser fácilmente modificado para programar casi cualquier chip de memoria en paralelo en que se usan para este proyecto.


megapost


Paso 15 piezas de compra


8 bits



placa madre



computador


La gran cosa acerca de la construcción de un ordenador de 8 bits es que la mayoría de las partes le costará menos de un dólar por pieza si se compran desde el lugar correcto. He comprado el 90% de mis piezas de Jameco Electrónica 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 más barato en sitios como Amazon. Siempre asegúrese de hacer que las piezas que usted está pidiendo son los correctos. Cada parte que usted compra debe tener una hoja de datos en línea disponible que explica todas las funciones y las limitaciones del artículo que usted está comprando. Asegúrese de mantener estos organizada, que va a utilizar hojas de datos de muchos en la construcción de su ordenador. Para ayudarle con el ordenador voy a enumerar las partes que se utilizan para la mía: contador de 4 bits: 74161 Registro (yo uso dos para cada registro de 8 bits): 74LS173 Multiplexor: 74LS157 -


Silicio


Paso 16 Construcción


procesar



8b


comp



la base



netbook



Aquí es donde la paciencia realmente entra en juego elegí utilizar una placa para el equipo real, pero hay muchos otros métodos por ahí (como el alambre-embalaje) que funcionan igual de bien. Para hacer las cosas mucho más simple que incluye un diagrama de bloques para el esquema actual de mi equipo. No obstante se incluyen los números de pieza o números PIN. Creo que esto hará las cosas más simple y abierto a la creatividad. La salida del programa 4-bit del contador, de entrada y salida MAR registro de instrucción están todos conectados a los cuatro bits menos significativos del bus de la computadora. El segundo diagrama que se muestra es la lógica de control para el final la operación de la computadora. Los controles están diseñados 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 más pulsos que desee. Adición de un flip-flop a la salida de un conmutador elimina los pulsos adicionales. Esto sería extremadamente útil cuando se utiliza la opción de reloj de manual. Usted no quiere dar la vuelta al interruptor y poner en marcha 8 pulsos de reloj. La lectura / escritura botón 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 después de los 555 significa que cuando el ordenador se ejecuta, no se inicia en el centro de un pulso de reloj. Una señal 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.




microprogramacion



Paso 17 Programación






hacer compu



fabricar compu



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 posición de programa. Después 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 sería la siguiente: Dirección - Datos: 0000-00010111 LDA 7: Carga el acumulador con el valor almacenado en la dirección de memoria 7 (5) 0001-00101000 ADD 8: Añadir el valor almacenado en la dirección de memoria de 8 (4) desde 0010 hasta 01010000 OUT: Salida del acumulador 0011 a 01.100.001 JMP 1: Ir a la instrucción 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



Construir una Computadora De 8Bites [Megapost]



Paso 18 Ir más allá


pc



computadora



notebook



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 comprensión de la electrónica, la informática y la programación. Al final, usted también tendrá algo muy fresco para mostrar a todo su trabajo duro también. Después de la construcción de su primer ordenador de 8 bits puede ir más allá y añadir más 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 lógicas. Otro aspecto importante es pasar a bifurcación condicional. Condicionales medios de ramificación que una instrucción 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 más amplia para la aplicación de su computadora.


madre



Bueno amigos , esto es todo. Antes que nada quiero aclara que no hayprueba sin error y que solo no fracasa nunca el que nunca intenta nada. Esta ves voy a limitar los comentarios de rango Elite para arriba , ya que no estoy dispuesto a aguantarme a gente que no tienen puntos ni post pero igual vienen y critica o trollea.



binario



los comentarios son bien recibidos pero de estar fuera de lugar o de ser irrespetuosos serán borrados y el usuario bloqueado. Gracias