Example 3: Using the Blackfin Processor Voltage Regulator
Our application (
example: a work loop in
quick sort functions. Additional calls at the start and end of
ize and terminate the SSL library as mentioned above; additionally, the
work loop is wrapped inside another loop. This new outer loop cycles
through a number of core voltage settings and uses the SSL function
adi_pwr_SetMaxFreqForVolt()
clocks to the maximum supported by the new level. Then the loop calls
the
adi_pwr_GetFreq()
loop, and prints voltage, clock, elapsed time, and cycles values to the Con-
sole window.
Table 2-2
shows typical results from example 3. Since the entire program
is in L1 memory, the Elapsed Seconds column shows a decrease as the
core voltage (and hence the core clock rate) increases, while the number of
cycles executed remains more or less constant. However, the System MHz
column serves as a reminder that for a real application with code and data
in external memory (and perhaps with other peripherals dependant on the
system clock rate), core clock speed is not the only determining factor
when balancing power consumption against speed.
Table 2-2. Typical Results From Example 3
Core Volts
0.85
0.95
1.05
1.25
2-10
) looks similar to the application in the previous
Sorts.c
repeatedly executes the bubble sort and
main()
to adjust the voltage regulator and set the
function to get the new clock rates, runs the work
Core MHz
System MHz
250.0
83.3
325.0
81.3
400.0
100.0
500.0
125.0
Getting Started with ADSP-BF548 EZ-KIT Lite
main()
Elapsed Seconds
Core Cycles
12
2936M
9
2936M
7
2935M
6
2935M
initial-
Need help?
Do you have a question about the EZ-KIT and is the answer not in the manual?