












































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Un circuito integrado que permite realizar operaciones aritméticas y lógicas en 16 bits. La operación a realizar se selecciona mediante un input de 3 bits y dos inputs de 16 bits x e y. Las operaciones posibles son and, or, xor, cmplt, cmple, cmpltu, cmpleu, cmplt(signed), cmple(signed), cmpltu(unsigned), cmpleu(unsigned), not, add y sub. Además, el circuito permite realizar desplazamientos aritméticos a la izquierda o derecha de hasta 16 bits. La documentación incluye detalles de la implementación del circuito y ejemplos de uso.
Tipo: Monografías, Ensayos
1 / 52
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!













































Z
(^10) D
Q
AND
X
0 1 2 3 4 5 6 7 8 9 A B C D E F
X · y
10 Mx NOT^ OR
s c z
Ha
Ld REG c s
Fa +
03210 (^1) MUX (^) 2
076543210 1 2 MUX
ADD ADD
c v
REGFILE
D
A
@B B
@D
@A
WrD
SUB
+^ - SUB
c+^ - v
0 01^ REG e
Dec
0
0 1
e
3
1 2
Dec 0
0 1
e
3
2 1 (^2 ) 6 7
Dec
MUX
1 0 03210 (^1) Mx (^) 2
076543210 1 Mx
(^3568368)
SL-1 SL-2 SL-4 SL-8 SRA-1 SRA-2 SRA-4 SRA-
SHA SHL
SRL-1 SRL-2 SRL-4 SRL-
X Y AL F^
X Y CMP F
X Y
ALU
z (^) F
Cmp/Al
XOR
- 1-bit: se nombran con una letra minúscula (v.g.: x) o con una letra minúscula seguida de un número (por ejemplo, x1) o
- n-bits: En el nombre no se ve el valor de n (que siempre es mayor que 1 y en la mayoría de los casos en esta librería vale
3 Sobre las señales/buses y los mnemotécnicos
4 Interpretación de la información representada en un bus o patilla de n-bits
- En el dispositivo Flip-Flop, la Entrada D y la salida Q son de 1 bit y por ello, siguiendo con nuestra propia norma
i
i = 0
n – 1
∑
n – 1
i
i = 0
n – 2
∑
Description: The 16-bit output W is the result of an arithmetic/logic operation or a comparison applied to the 16-bit inputs X and Y. The type of operation is selected by the 3-bit input F and by the binary input Cmp/Al according to the table:
OP Cmp/Al = 1 Cmp/Al = 0
000 CMPLT(X, Y) AND(X, Y) 001 CMPLE(X, Y) OR(X, Y) 010 --- XOR(X,Y) 011 CMPEQ(X, Y) NOT(X) 100 CMPLTU(X, Y) ADD(X, Y) 101 CMPLEU(X, Y) SUB(X, Y) 110 --- SHA(X ,Y) 111 --- SHL(X, Y)
If the ALU performs a comparison the result can be true or false. If the result is true then W(b0) = 1 else W(b0) = 0. Moreover, W(bi) = 0 for i = 1 to 15. The 1-bit output z indicates when the output W is a vector of 16 zeroes.
16 Bit-wide ALU ALUupg
Cmp/Al
z
z
Cmp/Al
z
z (^) F
Cmp/Al
Implementations Details:
F CMPxxx Logic Function
000 CMPLT(X, Y) n ^ v 001 CMPLE(X, Y) (n ^ v) + z 010 --- 0 011 CMPEQ(X, Y) z 100 CMPLTU(X, Y) c 101 CMPLEU(X, Y) c + z 110 --- 0 111 --- 0
Description: The 16-bit output W has only two posible values as the result of a comparison: true or false. True is coded as W(b0) = 1 and false as W(b0) = 0. For all the cases W(bi) = 0 for i = 1 to 15. The type of comparison and the consideration of the 16-bit inputs X and Y as signed or as unsigned integers is chosen by the 3-bit selection input F according to the next table:
F W CMPxx(X, Y) Name
000 Xs < Ys CMPLT(X, Y) Less Than (Signed) 001 Xs <= Ys CMPLE(X, Y) Less than or Equal (Signed) 010 --- --- 011 X ==Y CMPEQ(X, Y) Equal 100 Xu < Yu CMPLTU(X, Y) Less Than Unsigned 101 Xu <= Yu CMPLEU(X, Y) Less than or Equal Unsigned 110 --- --- 111 --- ---
c v (^) z
16 Bit-wide Signed and Unsigned Comparator CMP
n
b
b15 b14 b13b12 b11 b10b9 b8 b7 b6 b5 b4 b3 b2 b1 b
b0b1b
z
c+^ - v
Mx