1.1 Dynamic Voltage and Frequency Scaling (DVFS)
This MPLAB Harmony example application demonstrates and evaluates Dynamic Voltage and Frequency Scaling (DVFS) mechanisms by simulating various CPU workloads and observing the resulting system behavior.
Description
This source file defines the application state machine for an MPLAB Harmony project, including initialization, idle period measurement, and CPU load simulation functions (at approximately 95% and 60% load), to facilitate testing and evaluation of power management and DVFS mechanisms.
Downloading and Building the Application
To clone or download this application from Github, go to the main page of this repository and then click Clone button to clone this repository or download as zip file. This content can also be downloaded using content manager by following these instructions.
Path of the application within the repository is apps/dvfs/firmware.
To build the application, refer to the following table and open the project using its IDE.
| Project Name | Description |
|---|---|
| sama7d65_curiosity.X | MPLAB X project for SAMA7D65 Curiosity Board |
| sama7d65_curiosity_pro.X | MPLAB X project for SAMA7D65 Curiosity Pro Board |
Setting Up AT91Bootstrap Loader
To load the application binary onto the target device, it is necessary to use at91bootstrap loader. Refer to the at91bootstrap loader documentation for details on how to configure, build, and run bootstrap loader project and use it to bootstrap the application binaries.
Setting Up the Hardware
The following table shows the target hardware for the application projects.
| Project Name | Description |
|---|---|
| sama7d65_curiosity.X | SAMA7D65 Curiosity Board |
| sama7d65_curiosity_pro.X | SAMA7D65 Curiosity Pro Board |
Setting Up SAMA7D65 Curiosity Board
- Connect a programming cable from JTAG connector J27 on board to programmer (J-34 Debugger)
- Powered the board with J1 connector
- Connect FTDI cable to DEBUG
Setting Up SAMA7D65 Curiosity Pro Board
- Connect a programming cable from JTAG connector J64 on board to programmer (J-34 Debugger)
- Powered the board with J1 connector
- Connect FTDI cable to DEBUG
- TWCK and TWD lines are interchanged between J2 and J3; connect J2 pin 1 to J3 pin 2 and J2 pin 2 to J3 pin 1
Running the Application
- Build the application using its IDE.
- Connect to the USB Serial COM
port and configure the serial settings as follows:
- Baud: 115200
- Data: 8 Bits
- Parity: None
- Stop: 1 Bit
- Flow Control: None
- Build and Program the application using its IDE.
- The result in Tera Term will be
similar to the following output:
- The LED will blink every 3 seconds.
