ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Picoblaze

DanielBrena8 de Septiembre de 2014

830 Palabras (4 Páginas)287 Visitas

Página 1 de 4

PicoBlaze es la designación de una serie de tres núcleos blandos gratuitas procesador de Xilinx para el uso en sus FPGA y CPLD productos. Se basan en un 8-bit RISC Arquitectura y pueden alcanzar velocidades de hasta 100 MIPS del Virtex 4 FPGA de la familia 's. Los procesadores tienen una dirección de 8 bits y un puerto de datos para el acceso a una amplia gama de periféricos. La licencia de los núcleos permite su uso gratuito, aunque sólo en los dispositivos de Xilinx, y vienen con las herramientas de desarrollo. Herramientas de terceros están disponibles en Mediatronix y otros. También PacoBlaze , una aplicación independiente del dispositivo y del comportamiento de los núcleos existe y es liberado bajo la licencia BSD .

El diseño PicoBlaze fue originalmente llamado KCPSM que significa "constante (K) Coded máquina programable Estado" (antes "PSM de Ken Chapman"). Ken Chapman fue el diseñador de sistemas de Xilinx que ideó e implementó el microcontrolador.

Cuando una instancia de un microcontrolador PicoBlaze en VHDL , el respectivo nombre del componente KCPSM debe ser utilizado. [ 2 ] Por ejemplo, para un procesador PicoBlaze3:

component kcpsm3 is

port (

address : out std_logic_vector ( 9 downto 0 ) ;

instruction : in std_logic_vector ( 17 downto 0 ) ;

port_id : out std_logic_vector ( 7 downto 0 ) ;

write_strobe : out std_logic ;

out_port : out std_logic_vector ( 7 downto 0 ) ;

read_strobe : out std_logic ;

in_port : in std_logic_vector ( 7 downto 0 ) ;

interrupt : in std_logic ;

interrupt_ack : out std_logic ;

reset : in std_logic ;

clk : in std_logic

) ;

end component ;

Todas las instrucciones se ejecutan en dos ciclos de reloj, por lo que el rendimiento de la instrucción conjunto básico determinista. De respuesta de alarmas no es más de cinco ciclos de reloj. Como la optimización de recursos, es posible que los dos núcleos PicoBlaze compartan la misma 1k x 18 instrucciones PROM, aprovechando la doble puerto implementación de este bloque en FPGAs de Xilinx.

Xilinx documenta la PicoBlaze como requiriendo sólo 96 rebanadas de FPGA. El tamaño de la aplicación pequeña se logra en parte a través de una separación bastante rígido del lado secuenciación operación (contador de programa, la pila de llamadas de retorno, puntero de pila implícita, e interrumpir bit de habilitación) de la ejecución simultánea (ALU, regístrese archivo, la RAM temporal, Z / C bits de estado). La única información que fluye desde el lado de cómputo a un lado la secuenciación son el cero y llevar a los bits de estado de UTA, cuando se probó en las instrucciones de salto y de llamadas condicional. No es posible implementar saltos calculadas o punteros de función. La única información que fluye desde el lado de secuenciación para la ejecución simultánea son campos de operando: registro de destino (4 bits), ALU de código de operación (seis bits), registro de origen opcional (4 bits), opcional valor / port-dirección inmediata de 8 bits, opcional Dirección bloc de 6 bits. No hay ningún mecanismo para inspeccionar el valor del puntero de pila, el contenido de la pila 31-entrada, el bit de habilitación de interrupción, o el contenido de la memoria de programa.

El lado secuenciación de instrucciones no contiene un sumador, por lo ramas relativos y código independiente de posición no son posibles. Todas las direcciones de salto y de llamadas son absolutos.

El PicoBlaze es poco adecuado a la programación en lenguajes compilados como C . [ 3 ] Además de la falta de apoyo a los punteros de función, no hay instrucciones

...

Descargar como (para miembros actualizados) txt (4 Kb)
Leer 3 páginas más »
Disponible sólo en Clubensayos.com