initial version

this is the newly designed architecture; it has been tested on
linux-usb platform;