Locale Icon
English
  • Forums

    Popular Forums

    • LTspice
    • RF and Microwave
    • Video
    • Power Management
    • Precision ADCs
    • FPGA Reference Designs
    • Linux Software Drivers

    Product Forums

    • Amplifiers
    • Microcontrollers
    • Clock and Timing
    • Data Converters
    • Direct Digital Synthesis (DDS)
    • Energy Monitoring and Metering
    • Interface and Isolation
    • MEMS Inertial Sensors
    • Power Management
    • Processors and DSP
    • Switches/Multiplexers
    • Temperature Sensors
    • Voltage References
    View All

    Application Forums

    • A2B
    • Audio
    • Automated Test Equipment (ATE)
    • Condition-Based Monitoring
    • Depth, Perception & Ranging Technologies
    • Embedded Vision Sensing Library
    • Motor Control Hardware Platforms
    • Precision Technology Signal Chains Library
    • Video
    • Wireless Sensor Networks Reference Library

    Design Center Forums

    • ACE Evaluation Software
    • ADEF System Platforms
    • Design Tools and Calculators
    • FPGA Reference Designs
    • Linux Software Drivers
    • Microcontroller no-OS Drivers
    • Reference Designs
    • Signal Chain Power (SCP)
    • Software Interface Tools
    • System Demonstration Platform (SDP) Support
  • Learn

    Highlighted Webinar

    Upcoming Webinar: Simplify High-Accuracy Instrumentation Design with Latest Precision Data Converters

    Join us for an insightful webinar on how ADI’s Precision technology is transforming the landscape of high accuracy instrument design with cutting-edge...

    Places

    • ADI Education Home
    • ADI Webinars
    • GMSL U
    • StudentZone (Analog Dialogue)
    • Video Annex
    • Virtual Classroom

    Libraries

    • 3D ToF Depth Sensing Library
    • Continuous-Wave CMOS Time of Flight (TOF) Library
    • Embedded Vision Sensing Library
    • Gigabit Multimedia Serial Link (GMSL) Library
    • Optical Sensing Library
    • Precision Technology Signal Chains Library
    • Software Modules and SDKs Library
    • Supervisory Circuits Library
    • Wireless Sensor Networks Library

    Latest Webinars

    • Simplifying Connectivity - Remote Controlled (RC) Nodes in a Software Defined Vehicle (SDV)
    • Upcoming Webinar: Simplify High-Accuracy Instrumentation Design with Latest Precision Data Converters
    • Design High Performance Power Systems with Ultralow Noise Technology
    • µModule Solution for Intelligent Motion Control
    • Accelerating Embedded System Development with CodeFusion Studio™︎
    View All Webinars
  • Community Hub

    Challenge Yourself!

      KCC's Quizzes AQQ286 about Right Labels on the Right Boxes containing colored balls

      1. Quote of the week: "Knowledge is knowing a tomato is a fruit. Wisdom is not putting it in a fruit salad" - unknown Sources: commons.wikimedia...

    View All

    What's Brewing

      Quiz! Why a Hybrid Approach Works Blog and Test Your Knowledge

      Quiz! Understand ISO 26262 Compliance Test your knowledge with our quick quiz , based on the blog " Safety in Layers: Why a Hybrid Approach Works ...

    View All

    Places

    • Community Help
    • Logic Lounge
    • Super User Program

    Resources

    • EZ Code of Conduct
    • EZ How To Help Articles
    • Getting Started Guide
    • ADI: Words Matter
    • Community Help Videos
    View All
  • Blogs

    Highlighted Blogs

    GMSL Debugging: Getting a Lock

    Imagine a scenario where you have a brand-new board design or are excited to try out some evaluation kits only to find out that the two devices can’t talk...

     

    Exploring DCM and CCM in SMPS: Part 1 of 6

    Power supplies are the unsung heroes of electronic devices, ensuring that they receive the precise, stable, and clean DC voltages they need to function...

    Latest Blogs

    • Let’s Take a Field-Bus Trip
    • Countable vs Non-countable Faults
    • Power Your Signal: DAS Networks Unleashed: Part 2 of 4
    • Combining Functional Safety and Availability Using Redundancy
    • Top 3 Engineering Blogs That Captivated Minds on EngineerZone
    Read All Blogs

    ADI Blogs

    • EZ Spotlight
    • The Engineering Mind
  • ContentZone

    Visit ContentZone

    ContentZone

    Technical articles. Blogs. Videos. Your ADI content, all in one place.

    View ContentZone

    Featured Content

    Featured Content Title

    Blurb About Content

    View Content By Industry

    • Aerospace and Defense Systems
    • Automotive Solutions
    • Consumer Technology Solutions
    • Data Center Solutions
    • Energy Solutions
    • Healthcare Solutions
    • Industrial Automation Technology Solutions
    • Instrumentation and Measurement Solutions
    • Intelligent Building Solutions
    • Internet of Things (IoT)
    • Wireless Communication Solutions

    View Content By Technology

    • A2B Audio Bus
    • ADI OtoSense Predictive Maintenance Solutions
    • Dynamic Speaker Management
    • Gallium Nitride (GaN) Technology
    • Gigabit Multimedia Serial Link (GMSL)
    • Industrial Vision
    • Power Solutions
    • Precision Technology
    • RF
    • Security Solutions
    • Sensor Interfaces
    • SmartMesh
  • Partners

    Partner Forums

    • Boston Engineering
    • PalmSens
    • Richardson RFPD
    • Tri-Star Design, Inc.

    Partner Libraries

    • Calian, Advanced Technologies Library
    • Clockworks Signal Processing Library
    • Colorado Engineering Inc. (DBA CAES AT&E) Library
    • Epiq Solutions Library
    • Fidus Library
    • VadaTech Library
    • Vanteon Library
    • X-Microwave Library
EngineerZone
EngineerZone
ADSP-BF70x
  • Log In
  • User
  • Site
  • Search
OR
Ask a Question
ADSP-BF70x
  • Processors and DSP
  • Blackfin Processors
  • ADSP-BF70x
  • Cancel
ADSP-BF70x
Documents Monitoring Cache Performance on the ADSP-BF70x
  • Q&A
  • FAQs/Docs
  • Members
  • Tags
  • More
  • Cancel
  • +Documents
  • ADSP BF706 Ezkit Mini SPI1 cannot be done in master mode.
  • +ADSP-BF707: FAQ
  • -ADSP-BF70X: FAQ
    • Different Wake-up Sources on BF70x
    • ADSP-BF70x application cannot boot using Secure Boot
    • CPLB enhancements in Blackfin+ Core
    • FAQ: Different Wake-up Sources on BF70x
    • Digital watch code for RTC
    • Enhancements in Hardware Loop in Blackfin+ core
    • Enhancements in Supervisor Mode in Blackfin+ core
    • HADC maximum bandwidth
    • Highlights of MSI on BF70x
    • How can I initialize DDR memory device connected to BF70x processor ?
    • How do I access the full memory space of the SPI slave?
    • How L2CTL in BF70x is different than BF60x ?
    • How the System Cross Bar (SCB) in BF70x different than in BF60x ?
    • How to configure MSI IDMAC for Dual Buffer Descriptor Ring mode operation
    • FAQ: How to re-enable the Core clock on BF70x after gating it
    • How to send data using SPI READY signal
    • How to take the core out of reset on BF70x
    • How to use the Signtool Utility to encrypt and sign the unsigned bootstream (loader file generated for an application, example:bootstream.ldr)
    • Is INIT Code supported in Secure Boot in ADSP-BF707
    • Monitoring Cache Performance on the ADSP-BF70x
    • Performance Enhancements in Blackfin+ core
    • UART slave boot BF70x with Higher BAUD rate
    • Sample code for HADC on BF70x?
    • What are the salient features of SPI Host Port on BF70x?
    • What is the effect of bus disabling (RDEN bit) on RTC functionality?
    • What is the Encrypt-Hash and Hash-Decrypt mode in PKTE module
    • What is the purpose of the ownership bit when programming the PKTE module for encryption/hashing?
    • What modes of Encryption and Hashing are supported and how do they make an application secure
    • Getting Started with ADSP-BF70x Processors
    • How to re-enable the Core clock on BF70x after gating it
    • Known Errata Against ADSP-BF70x Blackfin+ Datasheet
    • the secret BF70x documentation
    • Where can I find power consumption data for BF70x processors?
    • What are the major differences between DMC module of BF60x and BF70x ?
    • Cache Enhancements in Blackfin+ core
    • Can I pass the output generated from PKA directly to the PKTE module for encryption/decryption
    • Configuring Timer in continuous/single pulse mode
    • DMA error interrupt
    • How to verify that the boot bytes are accurate in all boot modes for the ADSP-BF60x and ADSP-BF70x?
  • BF707 SPI Slave to Master loopback communication
  • Example for UART transmit and receive operation using Core Mode for BF707
  • Hardware Reset using Watchdog in BF706

Monitoring Cache Performance on the ADSP-BF70x

Question

How do I monitor cache performance on the ADSP-BF70x?

===========================================

Answer

The performance monitor can count events like cache misses non-intrusively. The following functions can be added to your program and used to start and stop monitoring events of interest.

#include <sys/platform.h>

typedef enum {
     /* BF70x cache related events.
     Refer to Programmers Reference for others.
     */
     pf_icache_hit = 0x81,
     pf_icache_miss = 0x82,
     pf_dcache_fill_completed = 0x98,
     pf_dcache_line_replaced = 0x99,
     pf_dcache_hit = 0x9a,
     pf_dcache_miss = 0x9b
} PFMonEvent;

void start_pfmon(PFMonEvent mon0, PFMonEvent mon1) {
     uint32_t ctl = 0;
     if (mon0)
          ctl |= BITM_PFCTL_PWR|
               (3<<BITP_PFCTL_ENA0)|
               ((mon0<<BITP_PFCTL_MON0)&BITM_PFCTL_MON0);
     if (mon1)
          ctl |= BITM_PFCTL_PWR|
               (3<<BITP_PFCTL_ENA1)|
               ((mon1<<BITP_PFCTL_MON1)&BITM_PFCTL_MON1);
     *pPFCTL = 0;
     *pPFCNTR0 = 0;
     *pPFCNTR1 = 0;
     *pPFCTL = ctl;
}

void stop_pfmon(unsigned *count0, unsigned *count1) {
     ssync();  /* flush system activity before stopping counting */
     *pPFCTL = 0;
     if (count0)
     *count0 = *pPFCNTR0;
     if (count1)
     *count1 = *pPFCNTR1;
}

These functions can be used to monitor cache activity in your program as follows.

unsigned dcache_hits, dcache_misses;
start_pfmon(pf_dcache_hit, pf_dcache_miss);
...
/* code you want to monitor */
...
stop_pfmon(&dcache_hits, &dcache_misses);
printf("dcache hits = %u, dcache misses = %u", dcache_hits, dcache_misses);
Tags: bf70x blackfin
  • Share
  • History
  • More
  • Cancel
analog-devices logo

About Analog Devices

  • Who We Are
  • Careers
  • Newsroom
  • What We Do (Signals+)
  • Investor RelationsExternalLink
  • Quality & Reliability
  • Sales and Distribution
  • What's New on Analog.com
  • Contact Us

Find Help

  • Support
  • Resources
  • WikiExternalLink
  • Analog Dialogue

Get the Latest News

Stay up to date with our latest news and articles about Analog Devices' products, design tools, trainings, and events.

Sign Up Now
  • Instagram page
  • Twitter page
  • Linkedin page
  • Youtube page
  • Facebook
  • Legal and Risk
  • Accessibility
  • Privacy Policy
  • Privacy Settings
  • Cookie Settings
沪ICP备09046653号-1

©2025 Analog Devices, Inc. All Rights Reserved

analog-devices

About Analog Devices

Down Up
  • Who We Are
  • Careers
  • Newsroom
  • What We Do (Signals+)
  • Investor RelationsExternalLink
  • Quality & Reliability
  • Sales and Distribution
  • What's New on Analog.com
  • Contact Us

Find Help

Down Up
  • Support
  • Resources
  • WikiExternalLink
  • Analog Dialogue

Get the Latest News

Stay up to date with our latest news and articles about Analog Devices' products, design tools, trainings, and events.

Instagram page Facebook Twitter page Linkedin page Youtube page
  • Legal and Risk
  • Accessibility
  • Privacy Policy
  • Privacy Settings
  • Cookie Settings
沪ICP备09046653号-1

©2025 Analog Devices, Inc. All Rights Reserved