|
USB-HCD
Intentions: USB Host Controller Driver for VxWorks.
Synopsis: Porting drivers from Linux kernel 2.6.6 USB-HCD EHCI drivers to VxWorks system on ARM-based SoC (TakAsic800). This is done by inventing a technology that we call Preemptive Abstraction Layer. We create a micro-environment with the same namespace and services as the Linux driver environment, with back-end that can be connected to different OS/hardware; and it is connected to TakAsic800 with VxWorks. All aspects of PCI enumeration, DMA controlling, IRQ subscription, memory mapping, heap management are mapped to native services of the target system. (Linux programming style hardly uses heap, taking advantage of Linux well-performed heap engine. The VxWorks has poorer heap engine, and we implemented an alternative non-blocking thread-safe heap manager). As a result, the connection with the well-performed device is limited to DMA transfer speed only.
Platform: Ansi C, GNU-C, Linux, VxWorks, PCI.
USB 1.1/2.0 Device and Host Implementation
AstroSoft has successfully designed and implemented the device side of a Universal Serial Bus (USB) device protocol for two different printer controllers for Swedish and Taiwanese companies. The USB support is developed using the Philips PDIUSBD12 USB interface chip USB 2.0 Host Controller Driver. Also the implementation of USB 2.0 Host Controller Driver (EHCI) was done for a multifunction device working under VxWorks, optimized to maximize bandwidth for image transfer.
Fast Flash Translation Layer (FTL)
AstroSoft has invented a new patent-clear algorithm for managing the NAND Flash Memory. The challenging task was to avoid more than 5 existing patents and to outperform the certain existing algorithms. The task was completed successfully. The algorithm and the software will be used in a wide range of applications from smart-cards to mobile phones and PDAs.
Communication Protocols Implementation
AstroSoft has successfully designed and implemented various communication protocols, such as TCP/IP, LPD, HTTP, SNMP and SMTP stacks. The TCP/IP software has modular structure and contains the Ethernet/ARP data-link layer module, the IP/ICMP network layer module and the TCP/UDP transport layer module. It was implemented as one static library which can be linked to any application that requires network transport services. The LPD, HTTP, SNMP and SMTP protocol modules are implemented as server applications, which access the network using TCP and UDP transport services. PPP is the data-link protocol, which is capable to operate across most DTE/DCE interfaces, such as EIA RS-232, EIA RS-422, CCITT V.35.
HDD Filter Driver (Part of the HDD Protection System)
The project is a part of HDD notebook computers protection system development. HDD protection is performed by stopping HDD in case of potential danger. The software is implemented for Windows XP operating system family and is a kernel mode driver development (storage class filter driver). Software is a part of the system storage and boot driver set.
|