A PicoBlaze a Xilinx által az FPGA -khoz ( FPGA és CPLD ) létrehozott , szabadon terjesztett lágy processzormagok sorozatának általános neve . A PicoBlaze 8 bites RISC processzorarchitektúrán alapul ; a Virtex 4 család FPGA-ján végzett munka sebessége elérheti a 100 MIPS -t . A perifériák eléréséhez a processzor 8 bites busszal rendelkezik, melynek segítségével akár 256 portot is lehet külön olvasni és írni.
A PicoBlaze forráskódként VHDL -ben és Verilogban [1] terjesztve ingyenesen használható Xilinx termékeken. Az építészeti jellemzők garantálják a legjobb teljesítményt a Spartan és Virtex FPGA-k számára. A Xilinx speciális szoftver használatát javasolja a forráskód Assembly nyelvre történő lefordításához. A forrásnyelv szintaxisát az egyszerűség és a gyorsaság érdekében szándékosan egyszerűsítették. Léteznek harmadik felek (Mediatronix és mások) által készített speciális eszközszoftverek is. Alternatív megoldásként létezik a PacoBlaze , egy módosított PicoBlaze kernel, amelyet a BSD licenc alatt terjesztenek .
Kezdetben a PicoBlaze projektet KCPSM-nek hívták, ami azt jelenti, hogy "Constant (K) Coded Programmable State Machine" - programozható véges állapotú gép, állandó programmal. A projekt megalkotója Ken Chapman, a Xilinx mérnöke, aki kifejlesztette és megvalósította a PicoBlaze-t [2] (a KCPSM rövidítés alternatív dekódolása a "Ken Chapman's PSM").
A PicoBlaze VHDL projektbe való beillesztésekor a megfelelő KCPSM [3] komponensnevet kell használni . Például a PicoBlaze3 esetében:
A kcpsm3 komponens egy port ( cím : out std_logic_vector ( 9 downto 0 ) ; utasítás : in std_logic_vector ( 17 downto 0 ) ; port_id : out std_logic_vector ( 7 downto 0 ) ; write_strobe : out std_logic ; outstd_logic ; outstd_logic ; outstd_logic ; 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 ); végkomponens ; _A PicoBlaze KCPSM3 kernelje a következőket támogatja:
A PicoBlaze KCPSM6 kernelje a következőket támogatja:
Ezenkívül a PicoBlaze mag:
A PicoBlaze programokat assembly nyelven kell megírni . A KCPSM3-hoz írt programok újrafordítást igényelnek, ha a KCPSM6-on kell végrehajtani őket, de még ebben az esetben sincs teljes kompatibilitás számos gyakori parancshoz. Van egy szoftverszimulátor a hibakereséshez.
Speciális szoftvereszközök segítségével a PicoBlaze program közvetlenül lecserélhető az FPGA firmware fájlban (bit kiterjesztéssel). Speciális szoftvereszközök segítségével a JTAG interfészen keresztül közvetlenül letöltheti a PicoBlaze programot az FPGA-ra .
RISC technológiákon alapuló processzorarchitektúrák | |
---|---|