All Topics  
Blackfin

 

   Email Print
   Bookmark   Link






 

Blackfin



 
 
Blackfin refers to a family of 16/32-bit microprocessor
Microprocessor

A microprocessor incorporates most or all of the functions of a central processing unit on a single integrated circuit . The first microprocessors emerged in the early 1970s and were used for electronic calculators, using Binary-coded decimal arithmetic on 4-bit Word ....
s with built-in Digital Signal Processor (DSP
Digital signal processor

A digital signal processor is a specialized microprocessor designed specifically for digital signal processing, generally in real-time computing....
) functionality, which is traditionally only accompanied by a small and power-efficient microcontroller
Microcontroller

A microcontroller is a small computer on a single integrated circuit consisting of a relatively simple CPU combined with support functions such as a crystal oscillator, timers, watchdog, serial and analog I/O etc....
. The result is a low-power
Low-power

In electronics, the term low-power may mean:* Low-power broadcasting, that the power of the broadcast is less, i.e. the radio waves are not intended to travel as far as from typical transmitters....
, unified processor architecture that can run operating systems while simultaneously handling complex numeric tasks such as real-time H.264 video encoding.

The processors come in several varieties of hardware development kits and a community supported Linux port
UClinux

?Clinux stands for "MicroController Linux", and is pronounced "you-see-Linux" as explained in the website and not how the letter Mu is normally pronounced....
 is available. Currently the microprocessor
Microprocessor

A microprocessor incorporates most or all of the functions of a central processing unit on a single integrated circuit . The first microprocessors emerged in the early 1970s and were used for electronic calculators, using Binary-coded decimal arithmetic on 4-bit Word ....
 is manufactured by Analog Devices
Analog Devices

Analog Devices is an United States Multinational corporation producer of semiconductor devices. Analog specializes in analog-to-digital converter, digital-to-analog converter, MEMS, and digital signal processing chips for consumer and industrial goods....
.

Architecture Details
Blackfin processors use a 32-bit
32-bit

The range of integer values that can be stored in 32 bits is 0 through 4,294,967,295 or -2,147,483,648 through 2,147,483,647 using two's complement encoding....
 RISC MCU programming model on a SIMD
SIMD

In computing, SIMD is a technique employed to achieve data level parallelism....
 architecture, which was co-developed by Intel and Analog Devices
Analog Devices

Analog Devices is an United States Multinational corporation producer of semiconductor devices. Analog specializes in analog-to-digital converter, digital-to-analog converter, MEMS, and digital signal processing chips for consumer and industrial goods....
, as MSA (Micro Signal Architecture).

The Blackfin processor architecture was announced in December, 2000 and first demonstrated at the Embedded Systems Conference in June, 2001.

The Blackfin architecture incorporates aspects of ADI's older SHARC
Super Harvard Architecture Single-Chip Computer

The Super Harvard Architecture Single-Chip Computer is a high performance floating-point and fixed-point digital signal processor from Analog Devices,...
 architecture and Intel's Xscale architecture into a single core, combining Digital Signal Processing (DSP) and micro-controller functionality.






Discussion
Ask a question about 'Blackfin'
Start a new discussion about 'Blackfin'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Blackfin refers to a family of 16/32-bit microprocessor
Microprocessor

A microprocessor incorporates most or all of the functions of a central processing unit on a single integrated circuit . The first microprocessors emerged in the early 1970s and were used for electronic calculators, using Binary-coded decimal arithmetic on 4-bit Word ....
s with built-in Digital Signal Processor (DSP
Digital signal processor

A digital signal processor is a specialized microprocessor designed specifically for digital signal processing, generally in real-time computing....
) functionality, which is traditionally only accompanied by a small and power-efficient microcontroller
Microcontroller

A microcontroller is a small computer on a single integrated circuit consisting of a relatively simple CPU combined with support functions such as a crystal oscillator, timers, watchdog, serial and analog I/O etc....
. The result is a low-power
Low-power

In electronics, the term low-power may mean:* Low-power broadcasting, that the power of the broadcast is less, i.e. the radio waves are not intended to travel as far as from typical transmitters....
, unified processor architecture that can run operating systems while simultaneously handling complex numeric tasks such as real-time H.264 video encoding.

The processors come in several varieties of hardware development kits and a community supported Linux port
UClinux

?Clinux stands for "MicroController Linux", and is pronounced "you-see-Linux" as explained in the website and not how the letter Mu is normally pronounced....
 is available. Currently the microprocessor
Microprocessor

A microprocessor incorporates most or all of the functions of a central processing unit on a single integrated circuit . The first microprocessors emerged in the early 1970s and were used for electronic calculators, using Binary-coded decimal arithmetic on 4-bit Word ....
 is manufactured by Analog Devices
Analog Devices

Analog Devices is an United States Multinational corporation producer of semiconductor devices. Analog specializes in analog-to-digital converter, digital-to-analog converter, MEMS, and digital signal processing chips for consumer and industrial goods....
.

Architecture Details


Blackfin processors use a 32-bit
32-bit

The range of integer values that can be stored in 32 bits is 0 through 4,294,967,295 or -2,147,483,648 through 2,147,483,647 using two's complement encoding....
 RISC MCU programming model on a SIMD
SIMD

In computing, SIMD is a technique employed to achieve data level parallelism....
 architecture, which was co-developed by Intel and Analog Devices
Analog Devices

Analog Devices is an United States Multinational corporation producer of semiconductor devices. Analog specializes in analog-to-digital converter, digital-to-analog converter, MEMS, and digital signal processing chips for consumer and industrial goods....
, as MSA (Micro Signal Architecture).

The Blackfin processor architecture was announced in December, 2000 and first demonstrated at the Embedded Systems Conference in June, 2001.

The Blackfin architecture incorporates aspects of ADI's older SHARC
Super Harvard Architecture Single-Chip Computer

The Super Harvard Architecture Single-Chip Computer is a high performance floating-point and fixed-point digital signal processor from Analog Devices,...
 architecture and Intel's Xscale architecture into a single core, combining Digital Signal Processing (DSP) and micro-controller functionality. There are many differences in the core architecture between Blackfin/MSA and Xscale/ARM or SHARC, but the combination provides improvements in performance, programmability and power consumption over traditional DSP or RISC architecture designs.

The Blackfin architecture encompasses various different CPU models, each targeting particular applications. Analog Devices keeps a comprehensive . The Blackfin family is summarized in the following table.

Processor
ADSP-
Max. Clock
(MHz)
CoresInstr L1 SRAM/
(Cache)
(KB)
Data L1 SRAM/
(Cache)
scratch
(KB)
L2 SRAM
(KB)
On-
chip
Flash
Host PortCode SecurityEther-
net
MAC
SD/
SDIO
16-bit PPIs
Parallel Peripheral Interface

The Parallel Peripheral Interface is a peripheral found on the Blackfin embedded processor.The PPI is a half-duplex, bi-directional port that is designed to connect directly to LCDs, CMOS sensors, Charge-coupled devices, video encoders , video decoders or any generic high speed, parallel device....
18/24-bit PPIs
Parallel Peripheral Interface

The Parallel Peripheral Interface is a peripheral found on the Blackfin embedded processor.The PPI is a half-duplex, bi-directional port that is designed to connect directly to LCDs, CMOS sensors, Charge-coupled devices, video encoders , video decoders or any generic high speed, parallel device....
SDRAM
SDRAM

SDRAM refers to synchronous dynamic random access memory, a term that is used to describe dynamic random access memory that has a synchronous interface....
USB
Universal Serial Bus

In information technology, Universal Serial Bus is a Serial communications computer bus standard to electrical connector devices to a host computer....
ATAPICAN
Controller Area Network

Controller?area network is a vehicle bus standard designed to allow microcontrollers and devices to communicate with each other within a vehicle without a host computer....
I²C
I²C

I?C isa multi-master bus serial communications computer bus invented by Philips that is used to attach low-speed peripherals to a motherboard, embedded system, or cellphone....
 (TWI)
SPI
Serial Peripheral Interface Bus

The Serial Peripheral Interface Bus or SPI bus is a synchronous Serial communications standard named by Motorola that operates in full duplex mode....
UARTSPORTGPIOMXVR
Media Oriented Systems Transport

Media Oriented Systems Transport is a vehicle bus standard, intended for interconnecting multimedia components in automobiles and other vehicles....
BF5221 600164 (16)64 (32)
4
YesYes
10SDR
x16
112248 pins -
BF5251 600164 (16)64 (32)
4
YesYes
10SDR
x16
2.0
OTG
112248 pins -
BF5271 600164 (16)64 (32)
4
YesYes1
10SDR
x16
2.0
OTG
112248 pins -
BF542 600164 (16)64 (32)
4
Yes
110DDR
x16
1111233152 pins -
BF544 533164 (16)64 (32)
4
64
YesYes
11DDR
x16
22233152 pins -
BF548 600164 (16)64 (32)
4
128
YesYes
111DDR
x16
2.0
OTG
122344152 pins -
BF549 533164 (16)64 (32)
4
128
YesYes
111DDR
x16
2.0
OTG
122344152 pins 1
BF531 400132 (16)16 (16)
4
1
SDR
x16
11216
BF532 400148 (16)32 (32)
4
1
SDR
x16
11216
BF533 600180 (16)64 (32)
4
1
SDR
x16
11216
BF534 500164 (16)64 (32)
4
1
SDR
x16
1111248
BF536 500164 (16)32 (32)
4
1
1
SDR
x16
1112248
BF537 600164 (16)64 (32)
4
1
1
SDR
x16
1112248
BF538 500180 (16)64 (32)
4
1
SDR
x16
1233454
BF538F 500180 (16)64 (32)
4
512
1024
1
SDR
x16
1233454
BF539 500180 (16)64 (32)
4
1
SDR
x16
12334381
BF539F 500180 (16)64 (32)
4
512
1024
1
SDR
x16
12334381
BF561 600264 (16)
per core
64 (32)
4
per core
128
2
SDR
x32
11248
BF535 350116 32
4
256
SDR
x16
1.1
22216


1 The BF52xC family includes an embedded 48 kHz, stereo audio CODEC
Codec

A codec is a device or computer program capable of encoder and/or Decoding methods a digital data stream or signal . The word codec is a portmanteau of 'compressor-decompressor' or, most commonly, 'coder-decoder'....
 (2xADCs, 2xDACs).

In addition to the features in the table above, all Blackfin processors have the following peripherals

  • Debug/JTAG
    JTAG

    Joint Test Action Group is the common name used for the Institute of Electrical and Electronics Engineers 1149.1 standard entitled Standard Test Access Port and Boundary-Scan Architecture for test access ports used for testing printed circuit boards using boundary scan....
     Interface for in-system debugging
  • Real-time clock
  • Internal core voltage switching regulator
  • Watchdog timer
  • Timers/PWM outputs/PWM capture ports
  • Core timer (runs at core clock speed)


Architecture Features


Core Features


What is regarded as the Blackfin "core" is contextually dependent.
  • For some applications, the DSP
    Digital signal processor

    A digital signal processor is a specialized microprocessor designed specifically for digital signal processing, generally in real-time computing....
     is central. It combines two 16-bit hardware MAC
    Multiply-accumulate

    In computing, especially digital signal processing, multiply-accumulate is a common operation that computes the product of two numbers and adds that product to an accumulator ....
    s, two 40-bit ALU
    Arithmetic logic unit

    In computing, an arithmetic logic unit is a digital circuit that performs arithmetic and logicaloperations. The ALU is a fundamental building block of the central processing unit of a computer, and even the simplest microprocessors contain one for purposes such as maintaining timers....
    s, and a 40-bit barrel shifter
    Barrel shifter

    A barrel shifter is a digital circuit that can Bit shift a Word by a specified number of bits in one clock cycle. It can be implemented as a sequence of multiplexers , and in such an implementation the output of one MUX is connected to the input of the next MUX in a way that depends on the shift distance....
    . This allows the processor to execute up to three instructions per clock cycle, depending on the level of optimization
    Compiler optimization

    Compiler optimization is the process of tuning the output of a compiler to minimize or maximize some attribute of an executable computer program....
     performed by the compiler
    Compiler

    A compiler is a computer program that transforms source code written in a programming language into another computer language . The most common reason for wanting to transform source code is to create an executable program....
     and/or programmer
    Programmer

    A programmer is someone who writes computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist who writes code for many kinds of software....
    .
  • Other applications emphasize the RISC core. It includes memory protection, different operating modes (user, kernel), single-cycle opcodes, data and instruction caches, and instructions for bit test, byte, word, or integer accesses and a variety of on-chip peripherals.


The ISA also features a high level of expressiveness, allowing the assembly programmer (or compiler) to highly optimize an algorithm to the hardware features present.

Memory and DMA

The Blackfin uses a byte-addressable, flat memory map. Internal L1 memory, internal L2 memory, external memory and all memory-mapped control registers all reside in this 32-bit address space, so that from a programming point-of-view, the Blackfin has a Von Neumann architecture
Von Neumann architecture

The von Neumann architecture is a design model for a stored-program digital computer that uses a central processing unit and a single separate computer storage structure to hold both instructions and data ....
.

The L1 internal SRAM memory, which runs at the core-clock speed of the device, is based on a Harvard Architecture
Harvard architecture

The Harvard architecture is a computer architecture with physically separate computer storage and signal pathways for instructions and data. The term originated from the Harvard Mark I relay-based computer, which stored instructions on punched tape and data in electro-mechanical counters ....
. Instruction memory and data memory are independent and connect to the core via dedicated memory buses which allows for high sustained data rates between the core and L1 memory.

Portions of instruction and data L1 SRAM can be optionally configured as cache (independently).

Certain Blackfin processors also have between 64KB and 256KB of L2 memory. This memory runs slower than the core clock speed. Code and data can be mixed in L2.

Blackfin processors support a variety of external memories including SDRAM, DDR-SDRAM, NOR FLASH, NAND FLASH and SRAM. Some Blackfin also include mass-storage interfaces such as ATAPI, and SD/SDIO. They can support hundreds of megabytes of memory in the external memory space.

Coupled with the significant core and memory system is a DMA
Direct memory access

Direct memory access is a feature of modern computers and microprocessors that allows certain hardware subsystems within the computer to access system Computer storage for reading and/or writing independently of the central processing unit....
 engine that can operate between any of its peripheral
Peripheral

A peripheral is a device attached to a host computer behind the chipset whose primary functionality is dependent upon the host, and can therefore be considered as expanding the hosts capabilities, while not forming part of the system's core computer architecture....
s and main (or external) memory. The processors typically have a dedicated DMA channel for each peripheral, which enables very high throughput
Throughput

In communication networks, such as Ethernet or packet radio, throughput is the average rate of successful message delivery over a communication channel....
 for applications that can take advantage of it such as real-time standard-definition (D1) video encoding and decoding.

Micro-controller Features

The Blackfin architecture contains a number of attributes commonly found on microprocessors and micro-controllers. These features allow Blackfin to efficiently and securely run many commercial and open-source operating systems.

  • Memory Protection Unit : All Blackfin processors contain a Memory Protection Unit (MPU). The MPU provides protection and caching strategies across the entire memory space. The MPU allows Blackfin to support many full-featured operating systems, RTOSs and kernels like ThreadX, µC/OS-II, or (noMMU) Linux. The Blackfin MPU does not provide address translation like a traditional Memory Management Unit
    Memory management unit

    A memory management unit , sometimes called paged memory management unit , is a computer hardware component responsible for handling accesses to computer memory requested by the central processing unit ....
     (MMU) thus it does not support virtual memory or separate memory addresses per process. This is why Blackfin currently can not support operating systems requiring virtual memory such as WinCE or QNX. Confusingly, in most of the Blackfin documentation, the MPU is referred to as a MMU.


  • User/Supervisor Modes : Blackfin supports three run-time modes : supervisor, user and emulation. In supervisor mode, all processor resources are accessible from the running process. However, when in user mode, system resources and regions of memory can be protected (with the help of the MPU). In a modern operating system or RTOS, the kernel typically runs in supervisor mode and threads/processes will run in user mode. If a thread crashes or attempts to access a protected resource (memory, peripheral, etc) an exception will be thrown and the kernel will then be able to shut down the offending thread/process. Unfortunately, the Supervisory mode is implemented as being enabled only when running an interrupt handler. The official guidance from ADI on how to use the Blackfin in non-OS environments is to reserve the lowest-priority interrupt for general-purpose code so that all software is run in supervisor space. This would not be as serious a deficiency if the Blackfin had more than 9 general-purpose interrupt vectors.


  • Variable-Length, RISC-Like Instruction Set : Blackfin supports 16, 32 and 64-bit instructions. Commonly-used control instructions are encoded as 16-bit opcodes while complex DSP and mathematically intensive functions are encoded as 32 and 64-bit opcodes. This variable length opcode encoding allows Blackfin to achieve good code density equivalent to modern micro-processor architectures.


Media Processing Features


The Blackfin instruction set contains media processing extensions to help accelerate pixel processing operations commonly used in video compression
Video compression

Video compression refers to reducing the quantity of data used to represent digital video images, and is a straightforward combination of and motion compensation....
 and image compression
Image compression

Image compression is the application of Data compression on digital images. In effect, the objective is to reduce redundancy of the image data in order to be able to store or data transmission data in an efficient form....
 and decompression algorithms.

Peripherals


Blackfin processors contain a wide array of connectivity peripherals.

  • USB 2.0 OTG (On-The-Go)
  • ATAPI
  • MXVR : a MOST (Media Oriented Systems Transport
    Media Oriented Systems Transport

    Media Oriented Systems Transport is a vehicle bus standard, intended for interconnecting multimedia components in automobiles and other vehicles....
    ) Network Interface Controller. MOST is a registered trademark of SMSC.
  • PPI (Parallel Peripheral Interface
    Parallel Peripheral Interface

    The Parallel Peripheral Interface is a peripheral found on the Blackfin embedded processor.The PPI is a half-duplex, bi-directional port that is designed to connect directly to LCDs, CMOS sensors, Charge-coupled devices, video encoders , video decoders or any generic high speed, parallel device....
    ) : A parallel input/output port that can be used to connect to LCDs, video encoders (video DACs), video decoders (video ADCs), CMOS sensors, CCDs and generic, parallel, high-speed devices. The PPI can run up to 65 MHz and can be configured from 8 to 16-bits wide.
  • SPORT : A synchronous, high speed serial port that can support TDM, I2S and a number of other configurable framing modes for connection to ADCs, DACs, other processors, FPGAs, etc.
  • CAN
    Controller Area Network

    Controller?area network is a vehicle bus standard designed to allow microcontrollers and devices to communicate with each other within a vehicle without a host computer....
     : A wide-area, low-speed serial bus that is fairly popular in automotive and industrial electronics.
  • UART (Universal Asynchronous Receiver Transmitter) : allows for bi-directional communication with RS232 devices (PCs, modems, PC peripherals, etc), MIDI devices, IRDA
    IRDA

    IRDA may refer to:* Infrared Data Association, in information and communications technology , a standard for communication between devices over short distances using infrared signals...
     devices.
  • SPI : A fast serial bus used in many high-speed embedded electronics applications.
  • I²C
    I²C

    I?C isa multi-master bus serial communications computer bus invented by Philips that is used to attach low-speed peripherals to a motherboard, embedded system, or cellphone....
     (also known as TWI (two-wire interface)) : A lower speed, shared serial bus.


Because all of the peripheral control registers are memory-mapped
Memory-mapped I/O

Memory-mapped I/O and port I/O are two complementary methods of performing input/output between the Central processing unit and peripheral devices in a computer....
 in the normal address space, they are quite easy to set-up.

Development Tools Software


ADI provides its own software development toolchain, CROSSCORE (VisualDSP++), but other options are also available, such as Green Hills Software
Green Hills Software

Green Hills Software is a privately owned company that builds operating systems and development tools for embedded systems. The company was founded in 1982 by Dan O'Dowd and Carl Rosenberg....
's MULTI IDE, the GNU GCC
GNU Compiler Collection

The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain....
 Toolchain for the Blackfin processor family, the OpenEmbedded
OpenEmbedded

The OpenEmbedded Project is a software framework to create Linux distributions aimed for Embedded system. It was created by merging the achievements of OpenZaurus in addition with contributions of projects like Familiar Linux and OpenSIMpad into a common codebase....
 project, National Instruments' LabVIEW Embedded Module, or Microsoft Visual Studio through use of (integrated .NET Micro Framework
.NET Micro Framework

The .NET Micro Framework is a Microsoft .NET platform for extremely resource-constrained devices. It includes a small version of the .NET common language runtime and supports development in C Sharp and debugging , both using Microsoft Visual Studio....
 based) solutions.

Supported Operating Systems, RTOSs & Kernels


Blackfin supports numerous commercial and open-source operating systems.

OS/RTOS/Kernels on Blackfin
Title Type Comments
Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 
Free Software GPL Integrated into mainline kernel, distributed as part of the µClinux Distribution
ThreadX
ThreadX

ThreadX, developed and marketed by Express Logic, Inc. of San Diego, California, USA, is a real-time operating system . Similar RTOSes are available from other vendors such as VxWorks, Nucleus RTOS, Operating System Embedded, QNX, LynxOS, etc....
 
Commercial  
Nucleus
Nucleus RTOS

Nucleus OS is a real-time operating system and full-featured toolset created by the Embedded system Division of Mentor Graphics for various CPU platforms....
 
Commercial  
Fusion RTOS Commercial  
µC/OS-II Commercial/Source Available  
velOSity Microkernel Commercial  
INTEGRITY
Integrity (operating system)

INTEGRITY is a real-time operating system produced and marketed by Green Hills Software. It is royalty-free, POSIX-certified, and intended for use in embedded systems needing reliability, availability, and fault tolerance....
 
Commercial  
RTEMS
RTEMS

RTEMS is a free open source real-time operating system designed for embedded systems.The acronym RTEMS initially stood for Real-Time Executive for Missile Systems, then became Real-Time Executive for Military Systems before changing to its current meaning....
 
Open-Source/GPL  
T2 SDE
T2 SDE

T2 is a flexible Open Source System Development Environment that facilitates the automated creation of Linux-based systems. T2 enables the creation of custom Linux distribution for targets including embedded systems with low memory footprint, secure and specialized server setups, or complete desktop systems, with an adaptable modular framew...
 
Open-Source/GPL  
VDK Commercial ADI's real-time kernel. Ships with VisualDSP++.
TOPPERS/JSP Open-Source  
.NET Micro Framework
.NET Micro Framework

The .NET Micro Framework is a Microsoft .NET platform for extremely resource-constrained devices. It includes a small version of the .NET common language runtime and supports development in C Sharp and debugging , both using Microsoft Visual Studio....
Commercial Stand-alone version from Microsoft. Integrated version from .


See also

  • SHARC
    Super Harvard Architecture Single-Chip Computer

    The Super Harvard Architecture Single-Chip Computer is a high performance floating-point and fixed-point digital signal processor from Analog Devices,...
  • TigerSHARC
    TigerSHARC

    TigerSHARC refers to a family of microprocessors currently manufactured by Analog Devices .For details of this implementation of the Super Harvard Architecture please see the see also and external links....


External links

  • Open source tools and Linux kernel for Blackfin