- PicoBlaze
-
PicoBlaze — общее название серии свободно распространяемых Soft-процессорных ядер, созданных фиромой Xilinx для своих ПЛИС (FPGA и CPLD). В основе PicoBlaze лежит архитектура 8-битного RISC-процессора; скорость работы на ПЛИС семейства Virtex 4 может достигать 100 MIPS. Процессор имеет 8-битные порты данных и адреса, обеспечивающие доступ к разнообразной периферии.
PicoBlaze распространяется в виде исходного кода на языке VHDL для свободного использования, но только на продуктах фирмы Xilinx. Имеется специальное инструментальное программное обеспечение, в том числе, созданное сторонними организациями (Mediatronix и др.). Существует также PacoBlaze — модифицированное ядро PicoBlaze, распространяемое под лицензией BSD.
Изначально проект «PicoBlaze» носил имя KCSPM, что означает «Constant(K) Coded Programmable State Machine» — программируемый конечный автомат с постоянной программой. Создатель проекта — Кен Чапман (Ken Chapman) — инженер Xilinx, разработавший и реализовавший PicoBlaze[1] (альтернативная расшифровка аббревиатуры KCPSM — «Ken Chapman’s PSM»).
При вставке PicoBlaze в проект на VHDL должно быть использовано соответствующее имя компонента KCPSM[2]. Например, для 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;
Содержание
Основные характеристики
Ядро PicoBlaze включает:
- 16 регистров общего назначения размером по 1 байту;
- память команд на 1024 инструкции;
- счетчик команд
- АЛУ с флагами CARRY и ZERO (размер операндов - 1 байт);
- внутреннее ОЗУ на 64 байта;
- 256 входных и выходных портов;
- стек вызовов на 31 ячейку (CALL/RETURN stack);
- порт прерывания.
Кроме того, ядро PicoBlaze:
- выполняет все без исключения команды за два такта, при этом тактовая частота может доходить до нескольких сотен МГц;
- быстро реагирует на прерывания (в худшем случае - за 5 тактов);
- в версии KCPSM-3 оптимизировано для архитектуры Xilinx Spartan-3: занимает всего 96 ячеек (slices) и 1 блок RAM;
- в версии KCPSM-6 оптимизировано для архитектуры Xilinx Spartan-6, Virtex®-6, и FPGA седьмой серии: занимает всего 26 ячеек;
Программы для PicoBlaze необходимо писать на ассемблере (имеется специальный симулятор).
Специальные возможности
С помощью специальных программных средств программа для PicoBlaze может быть заменена непосредственно в файле прошивки ПЛИС (с расширением bit). С помощью специальных программных средств можно загружать программу для PicoBlaze непосредственно в ПЛИС через интерфейс JTAG.
Ссылки
- PicoBlaze на сайте Xilinx
- PicoBlaze — краткое описание
- PicoBlaze — руководство пользователя
- TechXclusives: Creating Embedded Microcontrollers (Programmable State Machines) PDF
- PicoBlaze user resources
- бесплатные инструменты для работы с FPGA от Mediatronix
- Open source Picoblaze assembler
- Free Linux IDE
- PacoBlaze: a synthesizable and behavioral Verilog clone of PicoBlaze
- Implementation of picoblaze in LabVIEW FPGA on the Xilinx Spartan 3E Starter board
Примечания
- ↑ PicoBlaze 8-bit Microcontroller. Xilinx, Inc..(недоступная ссылка — история) Проверено 25 июня 2007.
- ↑ PicoBlaze 8-bit Embedded Microcontroller User Guide. Xilinx, Inc..(недоступная ссылка — история) Проверено 25 июня 2007.
Процессорные архитектуры на базе RISC-технологий Altera Nios II • AMD 29000 • Apollo PRISM • Analog Devices Blackfin • ARM • Atmel (AVR • AVR32) • Cambridge Consultants XAP • DEC Alpha • DLX • PA-RISC • Intel i960 • M32R • LatticeMico32 • Microchip PIC • MIPS • Motorola 88000 • OpenRISC • POWER • PowerPC • SPARC • SuperH • Xilinx (MicroBlaze • PicoBlaze) • XMOS XCore
Категории:- Технологии процессоров
- Встроенные микропроцессоры
Wikimedia Foundation. 2010.