¿Cómo reescribir el programa VerilogHDL en un multiplexor tres a uno?
//----------------------------------------- -----------------------------------------
// Nombre del archivo: Eighth_Select
// Fecha de última modificación:? 10:31 del 19 de mayo de 2020
// Última versión: V1.1
// Descripciones: Diseño multiselector de 8 selecciones uno
//----------------------- - -------------------------------------------------- --------------
módulo Eignth_Select(out,in0,in1,in2,in3,in4,in5,in6,in7,sel);
salida salida;
entrada in0,in1,in2,in3,in4,in5,in6,in7;
entrada[2:0] sel;
reg out; ?//Señal de salida, puede observar la forma de onda de la señal de salida para determinar si la simulación es correcta
siempre @(in0 o in1 o in2 o in3 o in4 o in5 o in6 o in7 o sel) p>
case(sel) //Selecciona in0, in1, in2, in3, in4, in5, in6, in7 según los diferentes valores de sel
3'b000 : salida=entrada0;
3'b001: salida=entrada1;
3'b010: salida=entrada2;
3'b011: salida=entrada3;
3'b100: salida=entrada4;
3'b101: salida=entrada5;
3'b110: salida=entrada6;
3'b111: out= in7;
default: out=1'bx;
endcase
endmodule
Un típico El dispositivo FPGA contiene principalmente tres tipos de recursos básicos: bloque lógico configurable (CLB), recursos de enrutamiento y módulos de entrada/salida programables. El bloque lógico programable está rodeado por canales de recursos de cableado prefabricados y los módulos de entrada/salida programables están distribuidos alrededor de la FPGA. Además de los tres recursos anteriores, la FPGA generalmente también contiene recursos opcionales como bloque RAM y multiplicadores.
Entre los diversos recursos de FPGA, el bloque lógico programable es la unidad básica para realizar funciones de usuario. Cada bloque lógico programable contiene 1 matriz de interruptores de interconexión y 4 SLICE, donde cada SLICE incluye 2 tablas de búsqueda. (LUT), 2 flip-flops y algunos multiplexores. Una matriz de conmutadores de interconexión se compone principalmente de cables de diferentes longitudes y múltiples conmutadores de enrutamiento.