ProfiCore: Profibus for FPGA
Recognizing the need for a cost-efficient solution for a Profibus slave, ADESCOM offers ProfiCore: the implementation of Profibus in FPGA. Together with an on-FPGA CPU, ProfiCore offers real savings, as one FPGA can substitute two ICs (separate ProfiCore and CPU).
ProfiCore with a Profibus software stack complies to the Profibus standard IEC61158, and meets strict Profibus certification tests.
ProfiCore is an intelligent Profibus DP/PA Slave controller that implements the complete Profibus hardware necessary to support DPV0, DPV1, and part of DPV2 features. It seamlessly work with all Profibus software stacks compatible with Siemens ASIC DPC31. In this regard, ProfiCore is fully compatible to DPC31 on functional, register, and memory map levels.
- Full Profibus Slave functionality – successfully passed ProfiBus certification,
- Certified by an official Profibus certification institute,
- Compatible to Siemens DPC31 on register level,
- Works with DPC31 software stack,
- Up to 12 Mbits/s transmission rates,
- 6,100LE and 8KB RAM footprint on Altera Cyclone EP1C12 device,
- Ideally suited for implementation in FPGAs; seamlessly works with on-chip CPUs, like for example Altera NIOSII.
For users who do not have any existing software compatible with DPC31, ProfiCore comes along with a simple software stack. This stack provides basic Profibus functionality, equivalent to DPV0.
ProfiCore software stack is executed on a dedicated CPU. For this purpose either an external microprocessor or an FPGA-based CPU can be used.
ProfiCore is implemented as a synchronous VHDL module. Its design adheres to general OMI guidelines.
For verification and certification purposes ProfiCore has been synthesized using Altera tools and tested on EBV Cyclone evaluation board. The synthesis resulted in 6,100LEs and 8KB internal RAM. The software stack was executed on NIOS2 CPU. Together with NIOS2, the complete design fits into Altera Cyclone EP1C12 device.
We offer ProfiCore in the following packages:
- ProfiCore Evaluation Package: time-limited encrypted ProfiCore netlist with a simple ProfiCore C software stack. This can be used with EBV Cyclone evaluation board DBC2C20. This board offers Altera EP2C20 device, leaving ample space for NIOS and design extensions.
- ProfiCore production encrypted netlist package: pre-compiled ProfiCore for Altera FPGAs. Altera NIOS SOPC Buider configuration and the simple ProfiCore software stack are included;
ProfiCore production VHDL package: source code of ProfiCore. Altera NIOS SOPC Buider configuration and the simple ProfiCore software stack are included.
The netlist production package is available either on a single project or multiple project basis. The source code package is available only on a multiple project basis.
All packages come along with documentation and initial customer support.
ProfiCore has two interfaces: a line interface to the Profibus bus, and a processor interface to the external CPU:
Digital signals from the line interface connect directly to RS485 line drivers;
The processor interface can be configured to different bus data widths. In this way, ProfiCore can be easily adapted to a wide variety of processors.
In addition to the configurable bus, ProfiCore has several other parameters that can be configured at the compile time.
Profibus slave functionality is split between hardware and software. Profibus hardware is implemented by ProfiCore. The software is implemented by ProfiCore software or by any 3rd party Profibus software compatible to DPC31.
The functionality implemented by ProfiCore is equivalent to DPV0. In addition to DPV0 some also time-critical tasks of DPV1 and DPV2 are also implemented by ProfiCore. In this way, even though DPV1 and DPV2 are mostly implemented in software on an external CPU, this CPU is off-loaded from servicing all time-critical Profibus bus events. This gives system designers flexibility to share this CPU with other tasks that are not related to Profibus.
To help our customers to quickly integrate ProfiCore in their products we offer the following services:
Adaptation of ProfiCore C software to customer software (e.g. Operating systems);
Adaptation of 3rd party Profibus stacks to ProfiCore;
Customization of Profibus processor interface to fit non-standard CPUs;
Help with Profibus certification.
Upon request we can also offer complex design services for software and hardware development, including VHDL and PCB design. We offer local design support in Germany, Poland, and in the USA.}