SIXNET Home
 Home   |   About Us   |   Sales   |   Integration   |   Support   |   What's New   |   WebStore   |   Contact   |    Advanced Search
 Products:
  RTUs
  DCS Controllers
  I/O Modules
  Dataloggers
  Phone Modems
  Cellular Solutions
  Ethernet Switch
  OEM Solutions
  Software Tools
  Documentation
  eNewsletter
  Employment
  Reseller Tools

Industrial Ethernet Switches & Modems

Get Your FREE CD!

We are always looking
to expand our sales
channels. Contact Us
to become a Regional
Factory Representative, or a Local Distributor.



 Inside the IPm Subsystem
This topic discusses some of the interesting details of IPm technology by taking a look inside the IPm subsystem hardware and firmware.

   PowerPC Processor
   Dynamic Memory
   Flash Memory
   Battery-backed RAM Memory
   IPm is a Multitasking
       Automation Super-system
   Firmware Features
   I/O Database
   Serial Communications
   Optimized Performance
   Customized Windows Tools

Linux IPm offers gives you the best of both worlds! (Click here to take a quick tour...)
Best of Both Worlds
Windows Familiarity,
IPm Linux Flexibility
See for Yourself,
Take a Quick Tour!
 

The IPm subsystem is built around a Motorola PowerPC processor. (A PowerPC is the CPU found in MAC computers.) Specifically, the IPm utilizes an 855 processor. This is a special CPU, specifically designed for embedded systems. It incorporates many of the IPm functions into a single IC making it possible for the IPm subsystem to be so small. This true 32-bit processor contains a cache memory which speeds processing by accepting instructions in “batch mode” and performing quick executions of instructions already in memory.One of the most interesting aspects of the 855 processor, is its built in communications co-processor. This RISC processor handles the serial communication, unburdening the main processor and greatly aiding the real-time performance of the IPm subsystem. It should be noted that a Pentium and most other computers in common usage do not have such a co-processor. (Serial communications is not a priority in a Windows or most other computer applications. Industrial systems however, rely on serial communications for their real-time performance.) More will be said about this in the Serial Communications topic below.

The IPm subsystem executes all programs from the 32-bit wide dynamic memory. Upon boot-up, programs are loaded from the Flash disk into this fast memory for execution. The clock timing has been carefully designed to allow zero wait states on this system memory. (Most industrial controllers execute their programs from the Flash or EPROM memory, which is typically only 8 or 16 bits wide and usually requires wait states.) It is interesting to note that when you are debugging new applications, the use of this dynamic memory for executable code, permits the debugger to set breakpoints and utilize advanced debugging tools that require the memory to be altered by the debugger on the fly. This type of operation is common in computers, but is rarely possible in legacy industrial controllers.

There are two separate Flash memory devices available in the IPm subsystem. All versions include an eight Megabyte program Flash. This is a special type of Flash with sector sizes optimized for program code. The IPm subsystem compresses program files in this memory and expands them when they are transferred to the dynamic memory for execution. This increases the speed and reduces the size of the memory required to store programs. It is worth noting that all standard IPm firmware files take up approximately three Megabytes of this file system. This includes the boot monitor, the LINUX kernel, all supporting drivers, the VersaTRAK firmware (including ISaGRAF) and all configuration files. This is an order of magnitude smaller than a typical embedded Windows NT system of similar capabilities. On some IPm controllers an optional data Flash disk may be added to provided an additional 128 Megabytes of disk storage. IPm firmware uses journaling and other techniques to insure the reliability of file write operations. This is important in an industrial controller that demands high reliability. These techniques insure the integrity of the data in the file system even if there is a sudden loss of power.
The IPm subsystem includes battery-backed RAM memory. This memory is used to store non-volatile variables such as process set-points and counter values. All variables declared as “retained” in an ISaGRAF program or in virtual I/O registers are stored in this memory. This is an important feature of an industrial controller. Most PLCs have such a feature, but computers do not. Battery-backed memory is also used for datalogging because it can be rewritten quickly, does not require erasure (like a Flash memory) and will not wear out from frequent write cycles.

  ISaGRAF PLC+

Supporting all five IEC 61131-3 programming languages.

  Process Controller With Sequential Function Charts, a process-oriented function block library, and floating point math.
  RTU Complete with 100% VersaTRAK advanced functions for communication, datalogging and local control.
  Datalogger Includes Sixlog datalogging and Windows support for both host and client initiated data transfers.
  Data Concentrator The I/O database supports over 50,000 registers. IPm supports peer I/O moves over Ethernet or multiple simultaneous serial ports.
  Protocol Converter Use the LINUX core to easily add I/O drivers to move data into or out of the internal I/O database.
  LINUX Open-source Run third party applications or create your own programs in this truly open industrial platform.

Click here for a list of IPm firmware features. Several important topics are also discussed below for your general interest.

At the core of the IPm firmware is a database of I/O registers. This I/O database is the central hub of the IPm with all applications reading and writing I/O to it. All of the I/O drivers, the local I/O polling task, ISaGRAF, the Sixlog Datalogging, the peer to peer I/O moves, and various other applications exchange data with this shared resource database. This technology is based upon the SIXNET “IOmap”, which is a shared resource database for Windows applications, pioneered by SIXNET in the mid 1990’s. SIXNET has put man years into developing this technology to make it both flexible and high performance. Licensees of the SIXNET LINUX development tools are provided with an interface library to make calls into this database. It may also be accessed from outside the IPM controller through any of the I/O drivers, including the SIXNET Universal and the Modbus protocols. Third party and custom applications are best designed to use this database as a gateway to I/O values. In this manner, application programs are insured of compatibility and interoperability with all other applications running in the IPm controller.

Accessing IPm I/O Registers from Your Own Application

The serial communications in the IPm controller has been enhanced to include support for real-time features such as radio handshaking (RTS as a transmit enable), and lead and lag message delays. (These features are important for RS485 communications as well as wireless media.) The serial port drivers have also been enhanced to permit four serial ports to function simultaneously with complete independence. The I/O drivers are GPL (General Public License) software. You get the source code in case you require further enhancements.

SIXNET has fine-tuned the performance of the IPm firmware to insure each application receives the time allocation and priority it requires. Applications that are not in use do not burden system resources, so there is no need to remove applications from the firmware that you are not presently using. SIXNET will continue to improve the performance of the IPm firmware and upgrades will be provided. Please know that SIXNET has a strong policy of maintaining upward compatibility with each new firmware release.

Industrial Ethernet Switches & Modems
BlueTree Wireless Data
What's new with SIXNET Automation

Certified to Perform
SIXNET Industrial Certifications


SIXNET Home