. Andrew Warren wrote: > It doesn't appear hard to design a PIC-compatible core in VHDL > or Verilog (see http://www.opencores.org/projects/minirisc/ for > an example), so if someone wanted a PIC in his CPLD or FPGA, he'd > probably just spend a couple days and design it himself. Except > for (maybe) some legal concerns, there's no real reason to wait > for Microchip to release an "official" core. >=20 You are right: Quotations from http://xilinx.com/xapp/xapp213.pdf: ---------------------------------------------------------------------- Summary The Constant (k) Coded Programmable State Machine=20 (PicoBlaze) solution presented in this application note is=20 a fully embedded 8-bit microcontroller macro for the VirtexT=20 and SpartanR-II devices. The module is remarkably small=20 at just 35 CLBs, less than half of the smallest Spartan=20 XC2S15 device, and virtually free in an XCV2000 device=20 by consuming less than 0.37% of the device CLBs. This PicoBlaze solution provides 49 different instructions,=20 16 registers, 256 directly and indirectly addressable ports,=20 and a maskable interrupt at 35 million instructions per second (MIPs). This performance exceeds that of traditional discrete=20 microcontroller devices, making the PicoBlaze a cost-attractive=20 solution for data processing as well as control algorithms. Fully embedded including the program memory, the PicoBlaze=20 solution can be connected to many other functions and=20 peripherals tuned to a specific design. Processing distributed=20 over multiple PicoBlaze processors within a single device is=20 suitable for applications such as neural networks. Conclusion=20 A microprocessor module does not have to be large or=20 expensive when implemented in a Virtex or Spartan-II device.=20 The Virtex architectural features (block memory, distributed=20 memory, dedicated multiplexers, and carry logic) are ideal=20 for the construction of fully embedded microprocessor modules. The PicoBlaze macro is a simple 8-bit processor with an=20 instruction set for basic control functions and data manipulation.=20 This is achieved with just 35 CLBs and one block RAM. Even with a silicon utilization over performance objective, over=20 30 MIPs of processing power shows the very high performance=20 provided by Xilinx devices. This simple 8-bit processor achieves significant data processing algorithms and control. For example,=20 performance measurements of 150,000 16-bit multiplications=20 per second are available for audio and control digital signal processing. When a processor is completely embedded within an FPGA,=20 no I/O resources are required to communicate with other modules=20 in the same FPGA. Additionally, system design flexibility is=20 included along with savings on PCB requirements, power=20 consumption, and EMI. Whenever a special type of instruction is=20 required, it can be created in hardware (other CLBs) and=20 connected to the PicoBlaze solution as a kind of coprocessor.=20 Indeed, there is nothing to prevent a coprocessor from being=20 another PicoBlaze module. In this way, even the 256-instruction program length is not a limitation. Finally, the optimal processor results when the instruction=20 set is tuned to the system algorithms. By creating individual=20 processor architectures with flexible software inside the hardware,=20 the PicoBlaze solution shows how programmable state machines=20 are very silicon efficient. ------------------------------------------------------------------------ ------------ Mike. -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.