ULPBench测下的MSP430,低功耗是ARM的时代了吗?
[复制链接]
测试工具不开放,只能凑凑热闹。
不管是不是广告,看起来即便是官网号称配备更低功耗的FRAM系列MSP430,依据测试项目来看,在和ARM的功耗争夺上也开始表现的力不从心。性能上差距太大,MSP430基本完败;功能配置上flash大小,sram大小,功能模块支持等,MSP430基本只在及格线;价格上,MSP430似乎也占不到多少便宜;市场覆盖上说MSP430是TI的专项而ARM的低功耗:ST的L,ATMEL的L,Freescale的L,Silabs的EFM32和Precision32,TI的MSP432,NXP的5410x。。。;产品线生态上还有M7,A9,A53;DSP能力虽然目前还无法和专业DSP器件抗衡,性价比上也可以瞄准一部分DSP市场;然后FPGA也开始折腾ARM。现在既有LowPow+DSP+FP的Cortex-M4F的MSP432和STM32L476,更有“搅局”的双核Cortex-M4F+Cortex-M0+ = LPC54102,让其他非ARM芯片情何以堪。
马太效应会逐步作用于ARM上,趋于一家独大了吗?
测试内容:
The ULPBench-CoreProfile performs a variety of functions commonly found in ULP applications; among them are memory and math operations, sorting, GPIO interaction, etc.
The main function of the benchmark is as follows:
a. Blink an indication port 20 times quickly ending with active indicator.
b. Run the math_int8, math_int16, and state_machine 24 times, using the cumulative result of the math functions as the input to the state function.
c. Run the LCD function using the output of the state function as input, with display size set to 8
d. Run the StringSearch function on a string chosen based on the the previous step. Test the output value.
e. Run the BytesCopy for StringLength over the size of the chosen string.
f. Run the bubblesort function on the result of the previous step, and test the result.
g. Run the permute function for 16 permutes
h. Indicate end of workload iteration by calling clear_Indication_Port
1. math_int16; Approximation of a filter. Description: This function performs a simple filter using 16b math. A routine to filter away the DC content from an AC mains waveform signal. It does this using a heavily damped integrator to estimate the DC level. The current DC level is then subtracted from the signal.
2. LCD function will write values to the buffer that will represent LCD characters. The values written are based on the value of the bin parameter, and actual value to write is picked from the lcd_7segment_ascii_table.
3. The permute function sets a particular bit. The value to modify in table is based on size_mask lower bits of the index. 4. The bit to modify is based on the 3 lower bits of the index. The bit is set if the value parameter is not 0, unset otherwise.
5. The sort implements a simple bubble sort for 8b data.
6. The state machine implements a simple state machine using a switch statement.
测试结果
个人还是喜欢百花齐放的芯片市场,如果放眼望去绝大部分的声音只剩下arm,感觉就和开高速一样,不开不行,但是越开也越乏味。(强调做应用的就没必要乏味了,毕竟品位和品尝是不一样的名词)
|