TinyBoards

BLACKSheep® OS
BLACKSheep® OS stands for a powerfully and multithreaded real-time operating system (RTOS) originally designed for digital signal processing application development on Analog Devices Blackfin® embedded processors. This high-performance OS is based on the reliable and stable real-time VDK kernel from Analog Devices that comes with VDSP++ IDE. Of course BLACKSheep® OS is fully supported by all Bluetechnix Core-Modules  and development hardware. Have a look on the system overview below this to get an idea of BLACKSheep® OS wide spread hardware driver support and its bulky software features which are included.


BLACKSheep® OS is delivered as preconfigured VDSP++ project-file-package including the complete set of BLACKSheep® OS C/C++ sources.
The package consists of two preconfigured VDSP++ projects
* the bsboot-project and
* the BSP-project.
The bsboot-project configures BLACKSheep® OS as boot loader including different automated firmware update processes. The BSP-project extends the bsboot-project with a lot of different multimedia drivers for audio and video processing. The developer can tailor his individual BLACKSheep® OS version which strongly depends on his needs and driver dependencies simply by adding or removing appropriate C/C++ files. Individual source code can easily be added to BLACKSheep® OS which will be compiled to one executable.


Due to extensive work on BLACKSheep® OS at the moment for a completely new release, the BLACKSheep® OS BSP projects are currently unavailable. This affects mainly the multimedia features of the supported Core Modules. Of course, the bsboot projects for all Core Modules continue to be available throughout this time.



*NDA with Analog Devices required.
 
Development
Multithread support All drivers are usable in a multithreaded VDK environment as well as in single threaded applications.
Debugging Debugging support over all Analog Devices JTAG devices and Bluetechnix Dev-BF5xxDA-Lite boards.
IDE Development under Analog Devices VDSP++ IDE.
Applications Focused on typical DSP applications and multimedia applications.
 
OS Functionality
VDK Kernel Support The Analog Devices Visual DSP VDK-Kernel is a small multithreaded kernel featuring semaphores, messages and event handling. Within a VDK project, all BLACKSheep® OS drivers can be easily integrated in a multithreaded environment.
V100 Terminal A standard VT100 ASCII-Computer-Terminal is emulated for standard I/O.
IDE Development under Analog Devices VDSP++ IDE.
Application Loader The application loader can download and execute applications in Intel HEX and binary format without the need of a JTAG device. The applications can be stored and booted with the BLACKSheep® OS boot loader from flash by a single BLACKSheep® OS command.
 
Mass Storage Devices - MSD
MSD-Manager BLACKSheep® OS offers a MSD-manager that controls all block and character based devices and provides a common interface to each device based on three functions: read, write and info.
Supported driver for MSD BLACKSheep® OS offers integrated driver support for the following MSDs:
* CF-card
* SD-card on SPI
* RAM-drive
* SD-card on SDIO (CM-BF548)
* ATA (CM-BF548)
SFAT 12/16/32 support BLACKSheep® OS comes with full featured FAT 12/16 and 32 drivers which are partly ports of FreeDos 32FAT and open source ELFS.
Fullfat is an own proprietary FAT stack which is included at BLACKSheep® OS. Other filesystems can be integrated and mounted very easily.
 
Hardware Abstraction Layer - HAL
TCP/IP The TCP/IP stack is a port of the lightweight IP (lwIP) stack.
DMA-Manager Internal HAL driver that supports Memory-to-Memory-DMA (MDMA) transfers.
Interrupt-Manager Global interrupt manager which gets mostly used by device drivers. Part of the system service library from ADI.
RTC, Timer Effective and user-friendly RTC- and internal timer-HAL.
Basic I/O Interfaces Bulked easy-to-use and -configure GPIO, UART, SPI, CAN, TWI (I2C), SPORT drivers are part of the internal HAL.
USB2.0 Bulk Device Fully supported NET2272 IC from PLXtech for setting up a USB2.0 device.
Audio In/Out BLACKSheep® OS fully supports the AD1836A which is a high performance, single-chip codec that provides three stereo DACs and two stereo ADCs
Video In/Out Both video processing ICs ADV7171 (DAC) and ADV7183 (ADC) from Analog Devices are supported by BLACKSheep® OS.
TFT-Display Supports Hitachis TX09D50VM1CCA 3.5” TFT-display and similar displays. Note: Not supported by CM-BF533.
Camera Driver Implements a SCCB serial interface driver found in all OmniVision cameras and uses the PPI driver to setup the PPI interface with the correct parameters. Supported camera modules are: OV7660, OV2630, OV2655, OV2640 and OV3640.
AD/DA Controller Powerful drivers for Analog Devices ADC: AD8266 and DAC: AD5415 and AD5405 are supported.
Touch Controller Easy to use low level driver for a touch controller (TSC2003).
Flash Driver Powerful (Intel-) StrataFlash driver to gain full access of the on-board flash.
PPI and EPPI Powerful Parallel-Peripheral-Interface and Enhanced-PPI (EPPI, on CM-BF548) driver for data intense DMA transfer applications such as ADC, DAC, Camera, TFT, Video etc.
Ethernet Supports the on-board Ethernet interface of CM-BF537 and CM-BF518 as well as the external devices SMSC 91C111 and SMSC 9218.
 
Protocol Stacks
Power Management Internal HAL driver for setting the processors PLL according to speed or power saving settings. Part of the system service library from ADI.
USB-Host USB host bulk calss driver from Analog Devices.

Manuals & Datasheets

Support
Get detailed information on BLACKSheep OS such as:
  • BLACKSheep® OS Licensing
  • BLACKSheep® V1.0.0 Command Reference
  • BLACKSheep FAQ
  • BLACKSheep® Software Developers Guide
  • BLACKSheep® OS documentation
  • BLACKSheep® Coding Guideline
  • BLACKSheep® Doxygen Guideline
 at our at our support homepage.
Licensing
The BLACKSheep® OS license can be split up into three parts which are explained at our support site.

Info

All Core Modules are preflashed with a BLACKSheep VDK standalone bootloader.

This provides the possibility of flashing Core Modules without having a JTAG