Está en la página 1de 10

Unive

rsidad
Nacio
Facultad de Ciencias Fsicas y
nal
Matemticas
Pedr
Tema:
o Ruiz
Microprocesador 4004
Gallo
Curso:
Microprocesadores
Integrantes:
Cajn Escobar Morelia
Ocampo Burga Luis Angel
Sanchez Allende Wilmer
Segovia Valdera Elva
Ciclo:
2015 - I
LAMBAYEQUE PERU

El microprocesador 4004

INDICE
1. Historia del 4004 3
2. Descripcin del 4004.. 5
3. Terminales del 4004... 5
4. Instrucciones del 4004.... 6
4.1 Instrucciones operan sobre las direcciones de RAM y
ROM....... 8
4.2 Instrucciones del acumulador. 9
5.

El microprocesador 4004

EL MICROPROCESADOR 4004
Historia del 4004

En 1969, Silicon Valley, en el estado de California (EEUU) era el centro de la industria de los
semiconductores. Por ello, gente de la empresa Busicom, una joven empresa japonesa, fue a la
compaa Intel (fundada el ao anterior) para que hicieran un conjunto de doce chips para el
corazn de su nueva calculadora de mesa de bajo costo.

Al principio se pens que no se poda hacer, ya que Intel no estaba preparada para realizar circuitos
"a medida". Pero Marcian Edward Ted Hoff, Jr., jefe del departamento de investigacin de
aplicaciones, pens que habra una mejor forma de realizar el trabajo.

En 1969 durante el otoo (del hemisferio norte) Hoff, ayudado por Stanley Mazor, definieron
una arquitectura consistente en una CPU de 4 bits, una memoria ROM (de slo lectura) para
almacenar las instrucciones de los programas, una RAM (memoria de lectura y escritura) para
almacenar los datos y algunos puertos de entrada/salida para la conexin con el teclado, la
impresora, las llaves y las luces. Adems definieron y verificaron el conjunto de instrucciones
con la ayuda de ingenieros de Busicom (particularmente Masatoshi Shima).

En abril de 1970 Federico Faggin se sum al staff de Intel. El trabajo de l era terminar el
conjunto de chips de la calculadora. Se supona que Hoff y Mazor haban completado el diseo
lgico de los chips y solamente quedaran definir los ltimos detalles para poder comenzar la
produccin. Esto no fue lo que Faggin encontr cuando comenz a trabajar en Intel ni lo que
Shima encontr cuando lleg desde Japn.

Shima esperaba revisar la lgica de diseo, confirmando que Busicom podra realizar su calculadora
y regresar a Japn. Se puso furioso cuando vio que estaba todo igual que cuando haba ido seis
meses antes, con lo que dijo (en lo poco que saba de ingls) "Vengo ac a revisar. No hay nada para
revisar. Esto es slo idea". No se cumplieron los plazos establecidos en el contrato entre Intel y
Busicom.
De esta manera, Faggin tuvo que trabajar largos meses, de 12 a 16 horas por da.

Finalmente pudo realizar los cuatro chips arriba mencionados. El los llam "familia 4000".
Estaba compuesto por cuatro dispositivos de 16 pines: el 4001 era una ROM de dos kilobits con
salida de cuatro bits de datos; el 4002 era una RAM de 320 bits con el port de entrada/salida
(bus de datos) de cuatro bits; el 4003 era un registro de desplazamiento de 10 bits con entrada
serie y salida paralelo; y el 4004 era la CPU de 4 bits.

En octubre de 1970 el 4001 fue el primer chip diseado y terminado. La primera fabricacin
ocurri y el circuito trabaj perfectamente.

En noviembre salieron el 4002 con un pequeo error y el 4003 que funcion correctamente.

Finalmente el 4004 vino unos pocos das antes del final de 1970. Fue una lstima porque en la
fabricacin se haban olvidado de poner una de las mscaras. Tres semanas despus vinieron los
nuevos 4004, con lo que Faggin pudo realizar las verificaciones. Slo encontr unos pequeos
errores. En febrero de 1971 el 4004 funcionaba correctamente. En el mismo mes recibi de
El microprocesador 4004

Busicom las instrucciones que deban ir en la ROM.

A mediados de marzo de 1971, envi los chips a Busicom, donde verificaron que la
calculadora funcionaba perfectamente. Cada calculadora necesitaba un 4004, dos 4002,
cuatro 4001 y tres 4003. Tom un poco menos de un ao desde la idea al producto
funcionando correctamente.

Luego de que el primer microprocesador fuera una realidad, Faggin le pidi a la gerencia de Intel
que utilizara este conjunto de chips para otras aplicaciones. Esto no fue aprobado, pensando que la
familia 4000 slo servira para calculadoras. Adems, como fue producido mediante un contrato
exclusivo, slo lo podran poner en el mercado teniendo a Busicom como intermediario.
Despus de hacer otros dispositivos utilizando la familia 4000, Faggin le demostr a Robert Noyce
(entonces presidente de Intel) la viabilidad de estos integrados para uso general. Finalmente ambas
empresas llegaron a un arreglo: Intel le devolvi los 60000 dlares que haba costado el proyecto, slo
podra vender los integrados para aplicaciones que no fueran calculadoras y Busicom los obtendra
ms baratos (ya que se produciran en mayor cantidad).

El 15 de noviembre de 1971, la familia 4000, luego conocida como MCS-4 (Micro Computer
System 4-bit) fue finalmente introducida en el mercado.

La MCS-4 es un conjunto de computadoras diseada para aplicaciones tales como sistema de pruebas,
perifricos, terminales, mquina de facturacin, Sistema de medicin, control numrico y control de proceso.
La 4004 CPU, 4003 SR, 4002 RAM son bloques de construccin estndar. La 4001 contiene microprogramas
personalizadas y es implementado usando una mscara de metal de acuerdo a las especificaciones del cliente.
MCS-4 es un interfaz de sistema fcil con interruptores, pantallas, teletipos, impresoras, lectores, convertidores
A-D y otros perifricos populares.
Un sistema construido con el MSC con una computadora puede tener hasta 4k x 8 bits ROM de palabras, 1280 x
4bits RAM de caracteres y 128 lneas de E/S sin requerir ninguna interfaz lgica. Mediante la visin de un par de
puertas simples la MCS4 puede tener hasta 48 paquetes de RAM y ROM en cualquier combinacin, y 192
lneas de E/S.
La configuracin mnima del sistema consiste de una CPU y una ROM de 256 x 8 bit.
La MCS-4 tiene una instruccin muy poderosa que permite tanto la aritmtica binaria y decimal. Eso incluye la
derivacin condicional, saltos a su rutina, y proporciona para el eficiente uso de la ROM, buscar tablas mediante
la alimentacin indirecta.
El grupo de microcomputadoras INTEL MSC-4 (4001/2/3/4) fue fabricado con Silicon Gate Technology
(tecnologas de puertas de silicio). Esta tecnologa de umbral bajo permite el diseo y la produccin de circuitos
MOS proporciona mayor rendimiento y una mayor densidad funcional en un chip monoltico que las tecnologas
convencionales.

El microprocesador 4004

Descripcin del 4004


Es un microprocesador de 4 bits de bus de datos, direcciona 32768 bits de ROM y 5120 bits de
RAM. Adems se pueden direccionar 16 ports de entrada (de 4 bits) y 16 ports de salida (de 4 bits).
Contiene alrededor de 2300 transistores MOS de canal P de 10 micrones. El ciclo de instruccin es
de 10,8 microsegundos.

Terminales del 4004


Este microprocesador estaba encapsulado en el formato DIP (Dual Inline
Package) de 16 patas (ocho de cada lado). La distancia entre las patas es de
0,1 pulgadas (2,54 milmetros), mientras que la distancia entre
patas enfrentadas es de 0,3 pulgadas (7,68 milmetros).
Ntese en el grfico de la derecha el semicrculo que identifica la posicin
de la pata 1. Esto sirve para no insertar el chip al revs en el circuito
impreso.
Las funciones de las 16 patas con las que se conecta el 4004 con el
exterior son las siguientes:

El microprocesador 4004

Pata

Nombre

Descripcin

D0

D1

D2

D3

VSS

Clock phase 1

Clock phase 2

Sync output

Seal de sincronismo generada por el procesador. Indica el


comienzo de un ciclo de instruccin.

Reset

Un "1" lgico aplicado en esta pata borra todos los flags y


registros de estado y fuerza el contador de programa (PC) a
cero. Para que acte correctamente, esta lnea deber activarse
por 64 ciclos de reloj (8 ciclos de mquina).

10 Test
11

Todas las direcciones y datos de RAM y ROM pasan por estas


lneas

Referencia de tierra. Es la tensin ms positiva.


Son las dos fases de entrada de reloj (clock)

La instruccin JCN verifica el estado de esta lnea.

CM-ROM (Control Memory Esta seal est activa cuando el procesador necesita datos de la
ROM
Outputs)

12 VDD

Alimentacin del microprocesador. La tensin debe ser de -15V


+/- 5%

13 CM-RAM3
14 CM-RAM2
15 CM-RAM1

stas son las seales de seleccin de banco para indicar a cul


RAM 4002 desea acceder el microprocesador

16 CM-RAM0
Mnemnico
Instrucciones
del 4004

Descripcin

OPR
D D D D

OPA
D D D D

Hay NOP
instrucciones
uno
o dos bytes. Los primeros tardan 8 perodos de0 reloj
No de
hace
nada
0 (un
0 ciclo
0 de
0 0 0 0
instruccin). Los segundos tardan 16 perodos de reloj (dos ciclos de instruccin).
Salta a la direccin especificada por A2 A2 A2 A2 A1
A1 A1 A1 dentro de la misma ROM que contiene esta
0 0 0 1 C1 C2 C3 C4
instruccin JCN, si se cumple la condicin C1 C2 C3
3
2
1
0
3
2
1
0
C4, en caso contrario contina ejecutando la prxima

El microprocesador 4004

JCN

instruccin.
C1=1: Invertir la condicin de salto.
C2=1: Saltar si el acumulador es cero.
C3=1: Saltar si el acarreo vale uno.

A2 A2 A2 A2 A1 A1 A1 A1

C4=1: Saltar si la pata TEST est a cero.


Cargar el dato D2, D1 (ocho bits) en el par de registros 0 0 1 0 R R R 0
D2 D2 D2 D2 D1 D1 D1 D1
RRR

FIM

SRC

Enviar la direccin (contenido del par de registros


RRR) a la ROM y a la RAM en los tiempos X2 y
X3 del ciclo de instruccin

R R R 1

R R R 0

FIN

Cargar en el par de registros RRR el dato de ROM


apuntado por el par de registros cero

JIN

Salto indirecto segn el par de registros RRR

R R R 1

JUN

0 1 0 0 A A A A
Salto incondicional a la direccin de ROM A3, A2, A1 A A A A A3 A3 A3 A3
2
2
2
2
1
1
1
1

JMS

Salvar el viejo valor del contador de programa y saltar 0 1 0 1 A3 A3 A3 A3


a la direccin de ROM A3, A2, A1
A2 A2 A2 A2 A1 A1 A1 A1

INC

Incrementar el contenido del registro RRRR

R R R R

Incrementar el registro RRRR. Si el resultado no es


cero, saltar a la direccin A2 A2 A2 A2 A1 A1 A1 A1

R R R R

ISZ

dentro de la misma ROM que contiene esta instruccin A A A A A A A A


2
2
2
2
1
1
1
1
ISZ

ADD

Sumar el registro RRRR al acumulador con acarreo

R R R R

SUB

Restar el registro RRRR del acumulador con prstamo 1

R R R R

Cargar el acumulador con el contenido del registro


RRRR

R R R R

XCH

Intercambiar los contenidos del acumulador y el


registro RRRR

R R R R

BBL

Retornar de subrutina y cargar el dato D D D D en el


acumulador

D D D D

LDM

Cargar el dato D D D D en el acumulador

D D D D

LD

Las siguientes instrucciones operan sobre las direcciones de RAM y ROM especificadas en la
ltima instruccin SRC:

Cada chip de RAM tiene cuatro registros, cada uno con veinte caracteres de 4 bits subdivididos en 16
caracteres de memoria principal y 4 de estado. El nmero de chip, registro de RAM y carcter de
memoria principal se selecciona mediante la instruccin SRC, mientras que los caracteres de estado
Mnemnico

Descripcin

OPR OPA

WRM

Escribir el acumulador en RAM

1110 0000

WMP

Escribir el acumulador en port de salida de RAM

1110 0001

WRR

Escribir el acumulador en port de salida de ROM

1110 0010

WPM

Escribir el acumulador en el medio byte especificado de RAM (se usa en


los microprocesadores 4008 y 4009 solamente)

1110 0011
1110 0100

WR0
WR1
WR2

Escribir el acumulador en el carcter de estado de RAM 0, 1, 2, 3

WR3

1110 0101
1110 0110
1110 0111

SBM

Restar el contenido de la posicin previamente especificada de RAM del


acumulador con prstamo

1110 1000

RDM

Cargar en el acumulador el contenido de la posicin de RAM

1110 1001

RDR

Cargar en el acumulador el contenido del port de entrada de ROM

1110 1010

ADM

Sumar el contenido de la posicin previamente especificada de RAM al


acumulador con acarreo

1110 1011
1110 1100

RD0
RD1
RD2

Almacenar en el acumulador el carcter de estado de RAM 0, 1, 2, 3

RD3
(dentro de un registro) se seleccionan mediante el cdigo de instruccin (OPA)

1110 1101
1110 1110
1110 1111

La siguiente tabla muestra el grupo de instrucciones del acumulador.


Mnemnico

Descripcin

OPR OPA

CLB

Limpiar el acumulador y el acarreo

1111 0000

CLC

Limpiar el indicador de acarreo

1111 0001

IAC

Incrementar el acumulador

1111 0010

CLC

Complementar el acarreo

1111 0011

CMA

Complementar el acumulador

1111 0100

RAL

Rotar acumulador y acarreo hacia la izquierda

1111 0101

RAR

Rotar acumulador y acarreo hacia la derecha

1111 0110

TCC

Sumar acarreo al acumulador y limpiar el acarreo

1111 0111

DAC

Decrementar el acumulador

1111 1000

TCS

Restar acarreo del acumulador y limpiar el acarreo

1111 1001

STC

Poner el acarreo a uno

1111 1010

DAA

Ajuste decimal del acumulador

1111 1011

KBP

Convierte un cdigo 1 de 4 a binario en el acumulador 1111 1100

DCL

Designar lnea de comando

1111 1101

También podría gustarte