Global Sources
EE Times-India
Stay in touch with EE Times India
EE Times-India > Networks

FPGAs don remote reprogram habits

Posted: 01 May 2001     Print Version  Bookmark and Share

Keywords:fpga  network protocol  emGateway  cpld 

FPGAs are often used in embedded devices because they can be reprogrammed and one way of getting the new program to the device is by sending it through the net.

If networking is to be added to the device, engineers must understand the device networking options available to them. It is also important to understand the benefits that device networking brings to a system besides the ability to remotely program an FPGA.

Device networking for remote access can be viewed as a client/server relationship. For example, the local interface, which a technician would use to control the reconfiguration of a remote device, is a client and the remote device is a server.

In choosing a device network architecture, it is important to consider communication bandwidth requirements; protocol complexity; processing requirements; peripheral resources; and open standards. Three different classes of device network architectures are examined in this article: heavyweight, lightweight and gateway networks. Heavyweight networks have complex protocols that typically use a high-bandwidth medium. Lightweight networks have simple protocols that typically use a low-bandwidth medium. Gateway networks comprise a gateway that bridges a heavyweight and a lightweight network.

Often the first solution considered when networking a device is to use a TCP/IP-based network. This type of network connects the local interface to the remote devices through the Internet. TCP/IP is not a complete solution; additional protocols are required that support and manage TCP/IP as well as higher-level protocols that ride on top of TCP/IP. TCP/IP and the accompanying protocols require significant resources on the device and significant bandwidth.

Heavyweight network

For these reasons, TCP/IP is considered a heavyweight network protocol. TCP/IP is considered a heavyweight protocol independent of the medium in which it resides. For example, Ethernet and modems by themselves are not considered heavyweight networks because they use simple protocols. However, when combined with TCP/IP, they become heavyweight networks.

If the device has access to a telephone line, direct connection over a modem to a PC is an option. Because this is a basic point-to-point connection, the communication protocol can be simple and lightweight. This network architecture does not support Internet connectivity.

Another alternative is the use of a PC-based gateway, which has a number of advantages. First, a gateway network architecture is able to act as a bridge between a heavyweight network such as TCP/IP and lightweight networks such as modem. The gateway offloads functions from the client such as subnet protocols, subnet management and data representation. The device is offloaded from a heavyweight network protocol.

There are security advantages, as well, particularly important in the remote reprogramming of hardware. The gateway shields the device from the hazards associated with the Internet by handling standard Internet security issues, client authentication and user access rights.

Common look

Another advantage is that the gateway presents a common device representation to the client. The gateway can present proxies for the devices so that they can be interoperable with device object networking strategies such as Universal Plug and Play, Jini and OSGi.

Gateways also handle multiple client sessions, data synchronization, metering and caching. A gateway's lightweight subnets can utilize peer-to-peer or master-slave protocols. The gateway architecture can access several subnets simultaneously.

Dual storage helps

A design may need one or two storage locations for the FPGA programs. There are two drawbacks to having only a single storage location for the program. The first is that, depending on the design, the FPGA may not operate during program download. The second is that if there is a communications or power failure during download, the FPGA will not operate until a successful download is completed. Having two storage locations for the programs allows one location to be designated for the current program and the other to be designated for the new program.

To demonstrate the remote programming of logic devices, two prototypes were assembled. The first demonstrates remote programming on a Xilinx CoolRunner CPLD. The second demonstrates remote programming on a Xilinx Spartan FPGA. Both used the Emit device-networking technology.

Gateway architecture with a modem lightweight network was chosen because it fit a likely scenario. The components of the system included the following: A PC with an emGateway software; modem using emNet open device-networking protocol between the gateway and the device used; emMicro controller device-networking kernel; and a local interface that involves a PHP-based HTML page served from emGateway to a standard browser.

The CoolRunner CPLD prototype used the CoolRunner XPLA-3 CPLD Demo Board with the addition of a Microchip PIC-16C73 using an assembly port of emMicro, an RS232 driver and an external modem. Meanwhile, the Spartan FPGA prototype used a Spartan XCS30 Demo Board, an Emit software development kit with a Hitachi H8S/2134 em-Ware SDK board, a C-language port of emMicro and an external modem.

Login Harris and David Atkisson

emWare Inc.

Comment on "FPGAs don remote reprogram habits"
*  You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.


Go to top             Connect on Facebook      Follow us on Twitter      Follow us on Orkut

Back to Top