Share to: share facebook share twitter share wa share telegram print page

Blackfin

Blackfin
DesignerAnalog Devices
Bits32-bit
Introduced2000; 25 years ago (2000)
DesignRISC
TypeLoad–store
EncodingVariable (16- or 32-bit general purpose, or 64-bit parallel issue of 1 × 32-bit instruction + 2 × 16-bit instructions)
BranchingCondition code
EndiannessLittle
Registers
General-purpose8 × 32-bit data registers (addressable as 16 × 16-bit half-registers), 2 × 40-bit accumulators, 6 × 32-bit address registers, stack pointer, frame pointer
Blackfin
ADI Blackfin Logo
General information
Launched2008
DiscontinuedPresent
Marketed byAnalog Devices
Designed byAnalog Devices
Common manufacturer

Blackfin is a family of 16-/32-bit microprocessors developed, manufactured and marketed by Analog Devices. The processors have built-in, fixed-point digital signal processor (DSP) functionality performed by 16-bit multiply–accumulates (MACs), accompanied on-chip by a microcontroller.[1] It was designed for a unified low-power processor architecture that can run operating systems while simultaneously handling complex numeric tasks such as real-time H.264 video encoding.[2][3]

Architecture details

Blackfin processors use a 32-bit RISC microcontroller programming model on a SIMD architecture, which was co-developed by Intel and Analog Devices, as MSA (Micro Signal Architecture).

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

It incorporates aspects of ADI's older SHARC architecture and Intel's XScale architecture into a single core, combining digital signal processing (DSP) and microcontroller functionality. There are many differences in the core architecture between Blackfin/MSA and XScale/ARM or SHARC, but the combination was designed to improve performance, programmability and power consumption over traditional DSP or RISC architecture designs.

The Blackfin architecture encompasses various CPU models, each targeting particular applications.[4] The BF-7xx series, introduced in 2014, comprise the Blackfin+ architecture, which expands on the Blackfin architecture with some new processor features and instructions.

Architecture features

Core features

mounted Blackfin BF526 in an Agilent oscilloscope

What is regarded as the Blackfin "core" is contextually dependent. For some applications, the DSP features are central. Blackfin has two 16-bit hardware MACs, two 40-bit ALUs and accumulators, a 40-bit barrel shifter, and four 8-bit video ALUs; Blackfin+ processors add a 32-bit MAC and 72-bit accumulator. This allows the processor to execute up to three instructions per clock cycle, depending on the level of optimization performed by the compiler or programmer. Two nested zero-overhead loops and four circular buffer DAGs (data address generators) are designed to assist in writing efficient code requiring fewer instructions. Other applications use the RISC features, which include 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 is designed for a high level of expressiveness, allowing the assembly programmer (or compiler) to optimize an algorithm for the hardware features present. The standard Blackfin assembly language is written using an algebraic syntax: instead of prefix commands used in many other assembly languages.

Other assembly languagesBlackfin assembly language
ld R0, 8[P0]R0 = [P0 + 8]
add R0, R1, R2R0 = R1 + R2
push R7[SP--] = R7

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 reside in this 32-bit address space, so that from a programming point of view, the Blackfin has a Von Neumann architecture.

The L1 internal SRAM memory, which runs at the core-clock speed of the device, is based on a Harvard architecture. Instruction memory and data memory are independent and connect to the core via dedicated memory buses, designed for higher 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 processors 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 core and memory system is a DMA engine that can operate between any of its peripherals and main (or external) memory. The processors typically have a dedicated DMA channel for each peripheral, which is designed for higher throughput for applications that can use it, such as real-time standard-definition (D1) video encoding and decoding.

Microcontroller features

The architecture of Blackfin contains the usual CPU, memory, and I/O that is found on microprocessors or microcontrollers. These features enable operating systems.

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 operating systems, RTOSs and kernels like ThreadX, μC/OS-II, or NOMMU Linux. Although the MPU is referred to as a Memory Management Unit (MMU) in the Blackfin documentation, the Blackfin MPU does not provide address translation like a traditional MMU, so 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.

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. 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.

Blackfin uses a variable-length RISC-like instruction set consisting of 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 is designed for code density equivalence to modern microprocessor architectures.

Media-processing features

The Blackfin instruction set contains media-processing extensions to help accelerate pixel-processing operations commonly used in video compression and image compression and decompression algorithms.

Peripherals

Blackfin processors contain an array of connectivity peripherals, depending on the specific processor:

  • ATAPI
  • CAN: A wide-area, low-speed serial bus used in some automotive and industrial electronics
  • DMA with support for memory-to-memory DMA and peripheral DMA
  • EMAC (Ethernet Media Access Controller) with MII and RMII
  • External memory: the EBIU (External Bus Interface Unit) can include a controller for SDRAM, Mobile SDRAM, DDR1, DDR2, or LPDDR, and an asynchronous memory controller for SRAM, ROM, flash EPROM, and memory-mapped I/O devices
  • GPIO including level-triggered and edge-triggered interrupts
  • I²C, also known as TWI (Two-Wire Interface): a lower speed, shared serial bus
  • MXVR: a MOST Network Interface Controller
  • NAND flash
  • PPI: 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 75 MHz and can be configured from 8 to 16-bits wide.
  • PWM and timers/counters
  • Real-time clock
  • SD/SDIO
  • SPI: a fast serial bus used in some high-speed embedded electronics applications
  • SPORT: A synchronous, high speed serial port that can support TDM, I²S and a number of other configurable framing modes for connection to ADCs, DACs, other processors, FPGAs, etc.
  • UART: allows for bi-directional communication with RS-232 devices (PCs, modems, PC peripherals, etc.), MIDI devices, IRDA devices
  • USB 2.0 OTG (On-The-Go)
  • Watchdog timer

All of the peripheral control registers are memory-mapped in the normal address space.

Development tools

Blackfin BF537 EZ-Kit-Lite evaluation platform

ADI provides its own software development toolchains. The original VisualDSP++ IDE is still supported (its last release was 5.1.2 in October 2014; 10 years ago (2014-10)), but is approaching end of life and has not had support added for the new BF6xx and BF7xx processors. The newer toolchain is CrossCore Embedded Studio, which uses supports all Blackfin and Blackfin+ processors using upgraded versions of the same compiler and tools internally, but with a UI based on Eclipse CDT. No free version of either tool is available; a single-user license for VisualDSP++ costs $3500 USD, and CrossCore Embedded Studio $995 USD.

Other options include Green Hills Software's MULTI IDE and the GNU GCC Toolchain for the Blackfin processor family. However, like VisualDSP++, these have not been updated to support the newer BF6xx and BF7xx processors. Moreover, neither support all BF5xx processors. Green Hills MULTI lacks support for BF50x, BF51x, some BF52x, BF547, and BF59x. GCC lacks support for BF50x, BF566, and BF59x, and has incomplete support for BF561.

Blackfin is also supported by National Instruments' LabVIEW Embedded Module, which requires VisualDSP++.

Supported operating systems, RTOSs and kernels

Several commercial and open-source operating systems support running on Blackfin.

OS/RTOS/Kernels on Blackfin
Title License Comments
ThreadX[5] Proprietary
Nucleus Proprietary
μC/OS-II[6] Proprietary
INTEGRITY[7] Proprietary
RTEMS BSD-2 Clause and Permissive
RTXC Quadros Proprietary
VDK Proprietary ADI's real-time kernel. Ships with VisualDSP++.
.NET Micro Framework Apache License 2.0 Stand-alone version from Microsoft. Integrated version from AxiomFount.

Blackfin was previously supported by μClinux and later by Linux with the NOMMU feature, but as it was not ever widely used and no longer had a maintainer,[8][9] support was removed from Linux on April 1, 2018; 4.16 was the last release to include Blackfin support.[10][11][12]

See also

References

  1. ^ "Blackfin Processor Architecture Overview | Blackfin Processors | Processors and DSP | Analog Devices". Archived from the original on April 17, 2011. Retrieved April 9, 2011.
  2. ^ "H.264 BP/MP Encoder". Analog Devices. Retrieved 2014-09-03.
  3. ^ "H.264 BP/MP Decoder Library". Analog Devices. Retrieved 2014-09-03.
  4. ^ "Blackfin Processors | Analog Devices". Analog.com. Retrieved 2016-06-24.
  5. ^ "Real-Time Operating Systems for Embedded Development, Real Time System By Express Logic". Rtos.com. Archived from the original on 2016-05-23. Retrieved 2016-06-24.
  6. ^ "Real-Time Kernels". Micrium.com. Retrieved 2016-06-24.
  7. ^ "INTEGRITY Real-time Operating System". Ghs.com. Retrieved 2016-06-24.
  8. ^ [1] MAINTAINERS: mark arch/blackfin/ and its gubbins as orphaned
  9. ^ [2] RE: MAINTAINERS: mark arch/blackfin/ and its gubbins as orphaned
  10. ^ [3] arch: remove obsolete architecture ports
  11. ^ Simon Sharwood (2018-04-03). "Linux 4.16 arrives, erases eight CPUs". theregister.co.uk. Retrieved 2018-04-03.
  12. ^ Arnd Bergmann (2018-04-03). "[GIT PULL] arch: remove obsolete architecture ports". LKML. Retrieved 2018-04-04.

Read other articles:

Akademi Komunitas Industri Manufaktur BantaengDidirikan2018Lembaga indukKementerian Perindustrian Republik IndonesiaDirekturDrs. Zainal Abidin, M.SiAlamatNipa-Nipa, Pa’jukukang, BantaengSitus webwww.akom-bantaeng.ac.id Akademi Komunitas Industri Manufaktur Bantaeng atau AK-Manufaktur Bantaeng adalah pendidikan tinggi Vokasi di bidang teknologi manufaktur yang berada di bawah Kementerian Perindustrian Republik Indonesia untuk memenuhi kebutuhan tenaga ahli manufaktur. Kampus ini terletak di Kab…

Fictional vigilantes in the Marvel Comics universe This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article does not cite any sources. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: The Jury comics – news · newspapers · books · scholar · JSTOR (June 2016…

Pour les articles homonymes, voir Gérard de Lorraine. Gérard de LorraineTitres de noblesseDuc de Lorraine1048-1070Prédécesseur Adalbert de LorraineSuccesseur Thierry II de LorraineComte de Metz1048-1070Prédécesseur Adalbert de LorraineSeigneur de Châtenois (d)jusqu'en 1070BiographieNaissance 1030Lieu inconnuDécès 14 avril 1070RemiremontSépulture RemiremontActivité FeudataireFamille Maison de LorrainePère Gerard de BouzonvilleMère Gisela (d)Fratrie Adalbert de LorraineConjoint H…

American politician John Joseph O'Neill, 1892 portrait John Joseph O'Neill (June 25, 1846 – February 19, 1898) was a U.S. Representative from Missouri. Born in St. Louis, Missouri, O'Neill attended the common schools. He studied law. He was admitted to the bar in 1870 and commenced practice in St. Louis. He engaged in the manufacture of gold pens. He served as member of the State house of representatives from 1872 to 1878. He served as member of the municipal assembly from 1879 to 1881. O'Neil…

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: WROK AM – news · newspapers · books · scholar · JSTOR (April 2011) (Learn how and when to remove this template message) For the Sebastian, Florida, radio station, see WROK-FM. Radio station in Rockford, IllinoisWROKRockford, IllinoisBroadcast areaNorth Centra…

Mercedes-Benz C257InformasiProdusenDaimler AGMasa produksiMaret 2018 – sekarangPerakitanJerman: SindelfingenThailand: Samut Prakarn (Thonburi Automotive Assembly Plant)PerancangGorden WagenerBodi & rangkaKelasMobil eksekutif (E)Bentuk kerangka4-pintu sedanTata letakMesin depan, Penggerak roda belakang/Penggerak seluruh roda (4matic)PlatformMRAMobil terkaitMercedes-Benz W213Mercedes-Benz S-Class W222 faceliftMercedes-AMG GT 4-pintu CoupéMercedes-Benz C217[1]Penyalur dayaMesin1…

I WishPoster filmSutradaraHirokazu Kore-edaProduserKentarō KoikeHijiri TaguchiDitulis olehHirokazu Kore-edaPenata musikKishida ShigeruSinematograferYutaka YamasakiPenyuntingHirokazu Kore-edaPerusahaanproduksiShirogumi Inc.BIGXDistributorGagaTanggal rilis 11 Juni 2011 (2011-06-11) (Jepang) Durasi127 menitNegaraJepangBahasaJepangPendapatankotor$1,543,385[1] I Wish (奇跡code: ja is deprecated , Kiseki, terj. har.Miracle) adalah film Jepang tahun 2011 yang disunting, dituli…

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (يناير 2021) صدرت أربعة قرارات من مجلس الأمن التابع للأمم المتحدة خلال نزاع ناغورني كاراباخ. ولم تستشهد هذه القرارات بال…

Синелобый амазон Научная классификация Домен:ЭукариотыЦарство:ЖивотныеПодцарство:ЭуметазоиБез ранга:Двусторонне-симметричныеБез ранга:ВторичноротыеТип:ХордовыеПодтип:ПозвоночныеИнфратип:ЧелюстноротыеНадкласс:ЧетвероногиеКлада:АмниотыКлада:ЗавропсидыКласс:Птиц…

Cet article est une ébauche concernant une commune du Calvados. Vous pouvez partager vos connaissances en l’améliorant (comment ?). Le bandeau {{ébauche}} peut être enlevé et l’article évalué comme étant au stade « Bon début » quand il comporte assez de renseignements encyclopédiques concernant la commune. Si vous avez un doute, l’atelier de lecture du projet Communes de France est à votre disposition pour vous aider. Consultez également la page d’aide à la …

Tullio d'Albisola, pseudonimo di Tullio Mazzotti (Albisola Superiore, 2 dicembre 1899 – Albissola Marina, 19 maggio 1971), è stato un ceramista, scultore, editore e scrittore italiano. Tullio d'Albisola e Lucio Fontana (!949) Indice 1 Biografia 1.1 Tullio futurista 1.2 La casa-laboratorio 1.3 Con l'editoria futurista 1.4 Lito-Latta 1.5 Scultura e ceramiche monumentali 1.6 Ultimi anni 2 Bibliografia 3 Voci correlate 4 Altri progetti 5 Collegamenti esterni Biografia Tullio Mazzotti era il secon…

イスラームにおける結婚(イスラームにおけるけっこん)とは、二者の間で行われる法的な契約である。新郎新婦は自身の自由な意思で結婚に同意する。口頭または紙面での規則に従った拘束的な契約は、イスラームの結婚で不可欠だと考えられており、新郎と新婦の権利と責任の概要を示している[1]。イスラームにおける離婚は様々な形をとることができ、個人的…

Motor vehicle Hyundai Custo (KU)OverviewManufacturerHyundaiAlso calledHyundai CustinProduction2021–presentAssemblyChina: Beijing (Beijing Hyundai)Taiwan: Hukou (Sanyang Motor)Vietnam: Ninh Bình (HTMV)Body and chassisClassMinivanBody style5-door minivanLayoutFront-engine, front-wheel-drivePlatformHyundai-Kia N3 platformRelatedKia Carnival (KA4)PowertrainEnginePetrol:1.5 L Smartstream G1.5 T-GDi I42.0 L Smartstream G2.0 T-GDi I4Transmission8-speed automaticDimensionsWheelbas…

Former administrative unit in Bangladesh Ancient ruins of Bikrampur Bikrampur (City of Courage) was a pargana situated 19 kilometres (12 mi) south of Dhaka, the modern capital city of Bangladesh. In the present day, it is known as the Munshiganj District of Bangladesh. It is a historic region in Bengal and was a part of the Bhawal Estate.[citation needed] History Part of a series on the History of Bangladesh Etymology Timeline Traditional Urheimat Ancient Neolithic, c. 7600 – c. 3…

Artikel ini memiliki beberapa masalah. Tolong bantu memperbaikinya atau diskusikan masalah-masalah ini di halaman pembicaraannya. (Pelajari bagaimana dan kapan saat yang tepat untuk menghapus templat pesan ini) Artikel atau bagian mungkin perlu ditulis ulang agar sesuai dengan standar kualitas Wikipedia. Anda dapat membantu memperbaikinya. Halaman pembicaraan dari artikel ini mungkin berisi beberapa saran. Artikel ini membutuhkan rujukan tambahan agar kualitasnya dapat dipastikan. Mohon bantu ka…

Island in the United States of America class=notpageimage| Location in Alaska King Island (Inupiaq: Ugiuvak; Russian: Остров Кинг, romanized: Ostrov King) (King's Island in early US sources) is an island in the Bering Sea, west of Alaska. It is about 40 miles (64 km) west of Cape Douglas and is south of Wales, Alaska. Geography King Island, Alaska. The large boulders on the top of the island are barely visible through the fog. King island is a small island located about 40 mi…

この項目には、一部のコンピュータや閲覧ソフトで表示できない文字が含まれています(詳細)。 数字の大字(だいじ)は、漢数字の一種。通常用いる単純な字形の漢数字(小字)の代わりに同じ音の別の漢字を用いるものである。 概要 壱万円日本銀行券(「壱」が大字) 弐千円日本銀行券(「弐」が大字) 漢数字には「一」「二」「三」と続く小字と、「壱」「弐」…

Beberapa bentuk anisogami. Anisogami (Anisogamy) adalah keadaan yang melibatkan peleburan gamet-gamet yang berlainan ukuran dan/atau motilitasnya. Pada oogami (oogamy), gamet-gamet berbeda dalam kedua sifat tersebut. Tampaknya sperma sering menyumbangkan sentriol tunggal untuk zigot yang terbentuk. Lihat pula Pembuahan atau fertilisasi Isogami Parthenogenesis Artikel bertopik biologi ini adalah sebuah rintisan. Anda dapat membantu Wikipedia dengan mengembangkannya.lbs

费迪南德·马科斯Ferdinand Marcos 菲律賓第10任總統任期1965年12月30日—1986年2月25日副总统費爾南多·洛佩斯(1965-1972)阿圖羅·托倫蒂諾前任奧斯達多·馬卡帕加爾继任柯拉蓉·阿基诺 菲律賓第4任總理任期1978年6月12日—1981年6月30日前任佩德羅·帕特諾(1899年)继任塞薩爾·維拉塔 个人资料出生1917年9月11日 美屬菲律賓北伊羅戈省薩拉特(英语:Sarrat)逝世1989年9月28日(1989…

Ivo Karlović Ivo Karlović durante lo US Open 2016 Nazionalità  Croazia Altezza 211 cm Peso 104 kg Tennis Termine carriera 21 febbraio 2024 (ufficiale)[1] 4 ottobre 2021 (ultimo match) Carriera Singolare1 Vittorie/sconfitte 371-346 (52,70%) Titoli vinti 8 Miglior ranking 14º (18 agosto 2008) Risultati nei tornei del Grande Slam  Australian Open 4T (2010)  Roland Garros 3T (2014, 2016)  Wimbledon QF (2009)  US Open 4T (2016) Altri tornei  Giochi olimpici 3…

Kembali kehalaman sebelumnya