PicoBlaze er det fælles navn for en serie af frit distribuerede bløde processorkerner skabt af Xilinx til sine FPGA'er ( FPGA og CPLD ). PicoBlaze er baseret på en 8-bit RISC-processorarkitektur ; arbejdshastigheden på FPGA'en i Virtex 4- familien kan nå 100 MIPS . For at få adgang til ydre enheder har processoren en 8-bit bus, hvor du kan læse og skrive op til 256 porte separat.
PicoBlaze distribueres som kildekode i VHDL og Verilog [1] til gratis brug på Xilinx-produkter. Arkitektoniske funktioner garanterer den bedste ydeevne for Spartan og Virtex FPGA'er. Xilinx foreslår at bruge speciel software til at oversætte kildekode til Assembly-sprog. Kildesprogets syntaks er bevidst forenklet for enkelhedens og hastighedens skyld. Der er også specialværktøjssoftware skabt af tredjeparter (Mediatronix og andre) . Alternativt er der PacoBlaze , en modificeret PicoBlaze-kerne distribueret under BSD-licensen .
Oprindeligt hed PicoBlaze-projektet KCPSM, hvilket betyder "Constant (K) Coded Programmable State Machine" - en programmerbar finite state-maskine med et konstant program. Skaberen af projektet er Ken Chapman, en Xilinx-ingeniør, der udviklede og implementerede PicoBlaze [2] (en alternativ afkodning af KCPSM-forkortelsen er "Ken Chapman's PSM").
Når PicoBlaze indsættes i et VHDL -projekt, skal det passende komponentnavn KCPSM [3] bruges . For eksempel for PicoBlaze3:
komponenten kcpsm3 er port ( adresse : ud std_logic_vector ( 9 ned til 0 ); instruktion : in std_logic_vector ( 17 ned til 0 ) ; port_id : ud std_logic_vector ( 7 ned til 0 ); write_strobe : ud std_logic ud ; std_logic : ned std_logic ud ; std_logic : read_strobe : out std_logic ; in_port : in std_logic_vector ( 7 ned til 0 ); interrupt : in std_logic ; interrupt_ack : out std_logic ; reset : in std_logic ; clk : in std_logic ); endekomponent ; _KCPSM3-kernen til PicoBlaze understøtter:
KCPSM6-kernen til PicoBlaze understøtter:
Derudover er PicoBlaze-kernen:
PicoBlaze-programmer skal være skrevet i assemblersprog . Programmer skrevet til KCPSM3 kræver genoversættelse, når de skal udføres på KCPSM6, men selv i dette tilfælde er der ingen fuldstændig kompatibilitet for en række almindelige kommandoer. Der er en softwaresimulator til fejlfinding.
Ved hjælp af specielle softwareværktøjer kan programmet til PicoBlaze udskiftes direkte i FPGA-firmwarefilen (med bit-udvidelsen). Ved hjælp af specielle softwareværktøjer kan du downloade PicoBlaze-programmet direkte til FPGA'en via JTAG -grænsefladen .
Processorarkitekturer baseret på RISC- teknologier | |
---|---|