Develop PCI Express Drivers (WinDriver)

WinDriver » PCI Express
PCI Express is gradually gaining momentum in becoming a new industry standard for many chipset manufacturers and developers. The PCI standard is currently the most widely used PCI architecture. However, recent industry trends indicate chipset manufacturers will also be utilizing the more efficient PCI Express chipsets in future designs, alongside the existing PCI chipsets.

The original PCI standard is a parallel based technology, and as such data is transmitted in a single direction only. With PCI based configurations a bottleneck may arise when all the devices are sharing the same data path and available bandwidth. While PCI Express is a serial based technology; data is transmitted over the bus in two directions at once. Data from PCI Express enabled devices can be transmitted using a combination of two-way serial connections to optimize throughput and therefore eliminate any possible data impediment.

PCI Express is also a more sophisticated technology, in that data is transmitted over a series of links. A "link" is the connection between PCI Express devices and the bus, which can consist of several lanes that transmit and receive data independently of each other. PCI Express links can be comprised of 1, 2, 4, 8, 12, 16, or 32 serial lanes. This configuration provides engineers and designers increased flexibility in assigning as many lanes as needed to any particular device. As such, the configuration requires a more complex driver design.

WinDriver Support for PCI Express

In order to take full advantage of PCI Express' enhanced features, more robust drivers are required. WinDriver provides the necessary tools to fully utilize the superior capabilities of the PCI Express standards, while additionally supporting the standard PCI bus - including a rich set of APIs, code samples and the graphical DriverWizard for hardware debugging and driver code generation.

PCI Express also expands the existing PCI Configuration space from 256 bytes to 4Kb. WinDriver provides the needed support and a set of API's for easy access to PCI Express specific features such as the virtual channel support and advanced error reporting mechanisms which exist in the extended configuration space.

The WinDriver Toolkit

The WinDriver toolkit is a powerful cross-platform driver development software which is available for all major operating systems such as Windows 8 / Windows 7 / Vista / Server 2008 / Server 2003 / XP / XP Embedded, Windows CE / Mobile, Linux .

Designed to be hardware agnostic, WinDriver is the software solution of choice for both PCI and PCI Express driver developers. Such flexibility provides developers with the ability to design drivers in various environments and configurations. Furthermore, WinDriver includes enhanced support features for top chipset developers such as Xilinx, Altera, Texas Instruments and many more.

What Else is Included?
  • Comprehensive documentation and help files.
  • Technical support, according to Jungo's technical support plan.
  • No run-time fees or royalties

What's Next?
Download free trial
WinDriver's Top Features
  • Fast: Shorten driver development cycle and time to market.
  • Simple: No OS internals or kernel knowledge required.
  • Stable: Field tested on thousands of HW / OS configurations.
  • Enhanced Chipset Support: Silicon partners libraries to jump-start your driver development. Special samples for various PCI / USB chip vendors, such as PLX, Altera, Cypress, Silicon Laboratories, STMicroelectronics, Texas Instruments and Xilinx. WinDriver generates a skeletal driver code, customized for the user's hardware.
  • Multiple OS support and cross platform: WinDriver product line supports Windows 8 / Windows 7 / Vista / Server 2008 / Server 2003 / XP / XP Embedded, Windows CE / Mobile, Linux . The same driver will run under all supported operating systems without any code modifications. Just recompile!
  • Immediate Hardware Access and Debugging: Test your hardware through a graphical user-mode application, without having to write a single line of code. Monitor kernel level activity throughout the driver development process.
  • Performance Optimization: Use WinDriver's Kernel PlugIn technology to develop your driver in the user-mode - then run performance critical sections of it in the Kernel Mode (Ring 0) to achieve optimal performance (more).
  • WHQL Certifiable Driver: WinDriver's Windows drivers are WHQL ready - you will not need to invest time and efforts on making your driver WHQL compliant. Jungo also can prepare the WHQL submission package for you.
  • Field-proven quality: WinDriver's technology enables you to concentrate on your core business and successfully create first-rate drivers without having to invest redundant resources in driver development from scratch.
  • User-mode programming: WinDriver's architecture enables driver development in the user mode, while maintaining kernel-mode performance.
  • 64-bit Support: Allow utilizing the additional bandwidth provided by 64-bit hardware and enable 64-bit data transfer on x86 platforms running 32-bit operating systems. Drivers developed with WinDriver will attain significantly better performance results than drivers written with the DDK or other driver development tools that do not support this feature.
  • Complete .NET Framework Support: Easily incorporate WinDriver's C# or VB.NET code into your existing .NET application using the powerful object oriented managed extensions for C++ library.