This article attempts to summarize in a few lines of the increasingly popular technology of programmable logic, providing an overview for those who love, business needs or simple curiosity, it is entering the first time in this world.
Basic
To put it simply, the so-called programmable logic allows anyone to create a complex digital system on a single silicon chip. The most common form of programmable devices is the FPGA (Field Programmable Gate Array ). These are true high-density chips, which can be programmed as often as you like, by means of a suitable software provided free by the same manufacturer of the device. It also serves a circuit programming interface to the PC. This can usually be bought with a few tens of euro once again by the manufacturer of the device. Note that for writing and debugging of the program are not strictly necessary nor circuit programming or the device itself. The development environment, in fact, includes a suitable mortgage that, a bit 'as it happens Development of software for microcontrollers, can continually check the correctness of the program is being developed. Once loaded on the FPGA, the program causes the device implements exactly the functionality we have described.
Benefits
The programmable logic devices have been introduced to meet the developers have a tool in place to quickly implement sophisticated circuitry in the execution of specific tasks . As an alternative to FPGAs, it's possible to manufacture an ASIC (Application Specific Integrated Circuit) or to make the same circuit used discrete components. The first solution can usually get better performance and reduced dimensions, but implies huge costs, and for this reason, it is convenient when you plan to drive down costs by buying a large number of devices (obviously not the case with ' Electronic DIY). The development of discrete components instead you get the lower door is much more complicated from a design point of view, and implies the creation of cumbersome and complex electronic boards (board).
VHDL
The step of programming is done through the use of so-called hardware description language or HDL (Hadware Description Language). Among these, there is a VHDL stands for VHSIC HDL, in turn, VHSIC stands for Very High Speed \u200b\u200bIntegrated Circuits. This language became the IEEE standard in its two versions in 1987 and 1993 respectively. In addition to programming the FPGA, VHDL is widely used for ASIC design.
FPGA Development
Many manufacturers of FPGAs such as Altera, Xilinx and Actel, together with software development, generally also provide core libraries that greatly facilitate the work of designers. These libraries include a set of modules IP (Intellectual Property), which are essentially presviluppati components that can be freely used and integrated into the project along with the user modules. This approach saves a lot of time when you have the need for highly complex projects that include standard components such as Ethernet interfaces, SDRAM controller, FFT / IFFT cores, etc..
as FPGA Co-Processor
As mentioned, FPGAs are often used in the creation of specialized circuits in the execution of specific tasks. Consider for example an embedded system for decoding a video signal or treating. When, as in this case, it requires high computational power, the use of a standard processor is not enough and one needs to predict the presence of a co-processor is exactly what happens even in the standard personal computer , where many of the graphics features are implemented by a separate processor built into the video. Returning to the example, a convenient choice is to realize the co-processor on the FPGA device, designing and implemented in VHDL of the functionality of the system. In these cases, when there is a processor that is an FPGA, there is a problem of co-design hardware / software. In other words, we must identify which of the functionality of the system must be implemented in hardware and software in which the processor. In this particular example, the obvious solution is to implement the FPGA device, the only video decoding circuitry, and allow the CPU to manage the eventual user interface and management of communication with any peripherals and memory.
as FPGA chipset
Until a few years ago, the realization of complex chips such as microcontrollers, general purpose processors or specialized processors in digital signal processing (DSP), could only be entrusted to the so-called chipmaker, the company that is equipped with the technology required for the manufacture of integrated circuits. Today, thanks to the performance and complexity can also be reached through the programmable technologies, in many cases it is possible to create entire systems on an FPGA device. In other words, the typical architecture system-on-Chip (SoC), usually composed of at least a CPU, various components of processing (hardware CODEC Audio / Video, DSP, etc.). And peripheral modules (USB, I2C, etc..) Can also be synthesized on programmable devices. Of course, unless you are part of a team of dozens of people, we must necessarily rely on the libraries of IP provided (often free) by the FPGA manufacturers.
There are really many ways to begin in a few hours to develop a system to FPGA hardware. Actel, for example, provides a free suite ACTEL Free, rather than a development environment that delivers immediate VHDL modules that can be quickly integrated with a variety of IP cores library. Through this suite, you can create for example a microcontroller-based coreABC and up to 16 different peripherals (SPI, UART, VGA controller, etc..), simply instantiating library components.
0 comments:
Post a Comment