Design Con 2015
Breaking News
News & Analysis

Cortus to Target Security to Win 32-Bit Processor Race

The company competes with ARM in deeply embedded market
10/7/2014 01:00 AM EDT
11 comments
NO RATINGS
Page 1 / 2 Next >
View Comments: Newest First | Oldest First | Threaded View
Page 1 / 2   >   >>
Wilco1
User Rank
CEO
Re: Have you used Cortus?
Wilco1   10/15/2014 4:38:48 PM
NO RATINGS
For official results you have to compile Dhrystone 2.1 with -fno-inline. And you can't use LTO or profile feedback either of course! This is clearly stated in the comment giving the rules of running Dhrystone. If you don't then some compilers will optimize away almost all of Dhrystone, making the result completely meaningless and useless.

When you build Dhrystone correctly there is a minimum number of instructions you have to execute. That gives an upper bound on the score for a single-issue in-order core assuming every single instruction takes a single cycle, including branches, loads and stores. That upper bound is about half of the claimed score.

roddy_u
User Rank
Freelancer
Re: Have you used Cortus?
roddy_u   10/14/2014 4:40:02 AM
NO RATINGS
The benchmark source code has not been touched (except for the timer code).

Nothing has been done to either ask the compiler to inline nor has anything been done to prevent it doing so (i.e. no "noinline" attributes have been added to the source code).

The Coremark results are relatively low due to the fact that multiply takes 3x longer on a Cortus APS25 (pipelined multiplier to allow a much higher clock rate than is possible with the ARM Cortex M3), and 33 times longer (bit serial multiplier) on a Cortus APS23 than on a ARM Cortex M3. Coremark is essentially a test of matrix/array access and multiply performance.

Both the APS23 and APS25 are single issue partial out of order cores.

Dhrystone does not use multiply (the multiply in the source code gets converted to a shift and add).

Neither benchmark corresponds in any way to any real customer code we have ever seen. So our advice remains to use real application code when comparing cores.

Wilco1
User Rank
CEO
Re: Have you used Cortus?
Wilco1   10/12/2014 1:37:54 PM
NO RATINGS
The claimed Dhrystone result is incorrect indeed. It is absolutely impossible for a core with such a low CoreMark score (60% of Cortex-M0+) to be 3x as fast on Dhrystone.

The actual correct figure is likely below 1.0 DMIPS/MHz.

Wilco1
User Rank
CEO
Re: Have you used Cortus?
Wilco1   10/12/2014 1:22:11 PM
NO RATINGS
The claimed Dhrystone result is certainly incorrect - 2.83DMIPS/MHz is impossible to achieve for a single-issue pipeline. About 1.5 is the best you can do with branch prediction and folding.

I suspect this is not Dhrystone 2.1 compiled according to the rules - ie. separate compilation and NO inlining.

 

 

roddy_u
User Rank
Freelancer
Re: Have you used Cortus?
roddy_u   10/10/2014 6:43:37 AM
NO RATINGS
Hi John,

Yes it is true that at present we do not offer our SW tools via our website. However if you are interested in an evaluation please contact your local Cortus office.

I note your comments on benchmarks and I agree that benchmarks can appear puzzling. However the underlying reason is that they test a relatively small number of things and are not necessarily representative of your application code. We alway recommend that anybody evaluting different processor cores uses real code examples rather than relying on somewhat artificial benchmarks.

The Dhrystone benchmark is known to be over-representing string operations and is susceptible to modern compiler techniques. The CoreMark benchmark usually is influenced by the multiplier due to the matrix operations involved. You cite the CoreMarks/MHz figure for APS23, note that APS23 has a sequential multiplier which directly influences this result. Also note that pipeline length directly influences xxx/MHz benchmark results. A core with a pipelined multiplier will result in a poorer CoreMarks/MHz figure than the same core with a single cyle multiplier yet will deliver more performance.

At the end of the day please judge any core's performance by real application code rather than standard benchmarks.

Cheers

Roddy

roddy_u
User Rank
Freelancer
Re: Have you used Cortus?
roddy_u   10/10/2014 6:24:08 AM
Hi ip2design

Yes that is correct, the best-known example being SIM cards from StarChip who have done native, JavaCard and LTE card designs. Thinking of mobile phones, Cortus has been designed into touchscreen controllers from a number of Asian fabless semiconductor manufacturers e.g. IMAGIS & LeadingUI. Cortus has also been used in WiFi, Bluetooth and other wireless designs.

Other applications have included smart sensors, cameras and video processing systems with licensees including e2v, Microsemi, SightIC (acquired by Broadcom), Pyxalis & Nextchip.

In security applications many of our licensees are not in the public domain. However we are in the Discretix Secure Execution Environment (SEE) which is used to secure smartphones, tablets, etc. Also in Certicom's secure data communication designs.

Regards

Roddy

John Cooper
User Rank
Rookie
Re: Have you used Cortus?
John Cooper   10/9/2014 4:35:03 PM
NO RATINGS
Hi Junko,

 

It´s very diffcult to get access to the tools and evaluate these processors, you wouldn't find any eval version on their website, at least I never found it myself ;-)!

It would be nice to have a try as the benchmark numbers given look puzzling:

* 1.44 CoreMark/MHz: that is just slightly higher than current 8/16bit architectures (for reference the similar in size Cortex-M0 delivers 2.3 CM/MHz according to coremark.org)

* 2.83 DMIPS/MHz: it beats many high performance application processors from the Intel Atom to low-end Cortex-A, strange isn't it?

 

BTW, are you sure of the comment above "can run 16-bit and 32-bit code inline without mode-switching, unlike ARM."? I thought the 16/32-bit instruction set was introduced by ARM with the Thumb2 more than ten years ago:

en.wikipedia.org/wiki/ARM_architecture#Thumb-2

And Thumb2 is used in all Cortex-M.

 

Cheers,

John

ip2design
User Rank
Rookie
Re: Have you used Cortus?
ip2design   10/8/2014 11:52:30 AM
NO RATINGS
Cortus core is currently used in mass-market SIM cards for mobile handsets. There are other embedded cores in some ASICs.

rick merritt
User Rank
Author
Flying under the radar
rick merritt   10/7/2014 11:36:25 PM
NO RATINGS
I first heard of these guys from Andes. Love t hear ow they compare as ARM alternatives.

junko.yoshida
User Rank
Blogger
Another analyst's take
junko.yoshida   10/7/2014 12:15:36 PM
NO RATINGS
There appear to be a plenty of interesting things going for the new cores Cortus announced today.

Loyd Case, senior analyst, The Linley Group, described Cortus as "very small code size without compromising performance." One of the notable things about the new cores from Cortus is that they "can run 16-bit and 32-bit code inline without mode-switching, unlike ARM."

Asked how Cortus survives in the competition with ARM, the analyst added, "The newer APS23 and APS25 chips now implement 24-bit code word widths, which gives them even more flexibility. In addition, Cortus is a much smaller organization with lower overhead than ARM, so can offer more attractive licensing costs."

 

Page 1 / 2   >   >>
Flash Poll
Like Us on Facebook

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
EE Times on Twitter
EE Times Twitter Feed
Top Comments of the Week