Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tarea ASM
ANÁLISIS Y DISEÑO DE MICROPROCESADORES
Profesor:
Andres Eduardo Gaona
Bogotá D.C.
Semestre 2020-1
Índice
1. Calculo de Pendiente 2
1.1. Pseudo algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2. ASM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3. Caja Negra y Gris . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4. Unidad de Control . . . . . . . . . . . . . . . . . . . . . . . . 5
1.5. Camino de datos . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Multiplicación 6
2.1. Pseudo Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2. ASM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3. Caja Negra y Gris . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4. Unidad de Control . . . . . . . . . . . . . . . . . . . . . . . . 9
2.5. Camino de datos . . . . . . . . . . . . . . . . . . . . . . . . . 9
1
1. Calculo de Pendiente
1.1. Pseudo algoritmo
final=0;
if (inicio='1'){
dx=x1-x0; //diferencia en x
dy=y1-y0; //diferencia en y
while (mr>ddx){
m=m+1;
mr=mr-ddx;
}
final=1;
salida_0=signo; // muestra el signo de m
salida_1=m; //muestra parte entera de m
salida_2=mmr; //muestra residuo de m
}
2
1.2. ASM
Final=0
Inicio
1
dx=x1-x0;
ddx=dx(6 to 0);
signodx=dx(7);
m=0;
dy=y1-y0;
ddy=dy(6 to 0);
signody=dy(7);
mr=ddy;
signo=signodx XOR signody;
1 0
mr>ddx
m=m+1
mr=mr-ddx
salida_0=signo
salida_1=m
salida_2=mr
Final=1
Figura 1: ASM
3
1.3. Caja Negra y Gris
8
x0 Final
y0 Calculo de salida_0 (signo)
x1
pendiente salida_1 (entera)
y1
salida_2 (residuo)
inicio Rst
clk Rst
x0 y0 x1 y1
8
P.C
salida_0 (signo)
UC CD salida_1 (entera)
salida_2 (residuo)
inicio alpha
Final
4
1.4. Unidad de Control
Inicio Final
alpha P.C
ROM REGISTRO ROM
32x3 (3) 8X9
Rst
clk Rst
xo yo x1 y1
dx(7) dy(7)
8
1 +1
1 0 7
+/-
6
5
1 m
2 mr 3 dy 4 dx
5
salida
5
2. Multiplicación
2.1. Pseudo Algoritmo
final= 0;
if(inicio='1'){
while (i=p_2){
i=i+1;
resultado=resultado+p_1;
}
final=1;
salida_0=signo;
salida_1=resultado;
}
6
2.2. ASM
Final=0
Inicio
1
P_1=X(6 to 0);
P_2=Y(6 to 0);
signop_1=x(7);
signop_2=y(7);
i=0;
resultado=0;
signo= signop_1 xor signop_2;
0 0
i=p_2
i=i+1
Resultado=
resultado+p_1
Salida_0=signo
salida_1=resultado
Figura 6: ASM
7
2.3. Caja Negra y Gris
8
P_1 Final
P_2 salida_0 (signo)
Calculo de
pendiente
inicio Rst
clk Rst
P_1 P_2
P.C
salida_0 (signo)
UC CD salida_1
inicio alpha
Final
8
2.4. Unidad de Control
Inicio Final
alpha P.C
ROM REGISTRO ROM
128x3 (6) 8X6
Rst
clk Rst
y(6-0)
y(7) x(7)
1 +1
0 +
1 0
3
4
1 i
2 Suma
acumulada
x(6 - 0) =
5
alpha
salida