PSOC5 have fpu?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable
        Do any of the PSOC5 have integrated floating point unit in the hardware?   
0 Likes
39 Replies
Anonymous
Not applicable
        Most probably, the PSoCs has no FPU ever. But it is very fast, I think so.   
0 Likes
Anonymous
Not applicable

 Don't think so.

0 Likes
Anonymous
Not applicable
        HL-san "Konbanwa", Is it slow? OR PSoC5 has FPU?   
0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given
        PSOC 5 does not have an FPU. It does have the fixed point, 24 bit - The Datapath subblock is a 24-bit fixed point, numerical processor containing a Multiply and Accumulator (MAC function Arithmetic Logic Unit (ALU), sample and coefficient and data RAM (data RAM is shown in Figure 28-1) data routing, shifting, holding, and rounding functions. The datapath block is the calculation unit inside the DFB.   
0 Likes
Anonymous
Not applicable

 I mean the FPU. PSoC5 should be fast enough for alot of embedded processing.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Despite the absense of a floating-point-unit the math.lib has all the routines to serve your needs. ARM CPU is fast enough to calculate things you want. If that is not enough, there is a sine/cosine calculator implemented by a user in a datapath which is calculating integer but VERY speedy. And if I'm not mistaken, Chris Kees implemented a square-root calculation in a datapath module, too.

   

 

   

Bob

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

I was mistaken, it was Brad Budlong, look here http://www.cypress.com/?id=2401

   

 

   

Bob

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

HW FPU (Like Cortex M4) vs FP Library ( PSOC 3/5) on a fixed point machine -

   

 

   

1) FPU allows much higher dynamic range than many fixed point libraries, depending on machine.

   

2) Used in precision filters, Real Time convolution, precise pole/zeroe high order filters.......

   

3) Usually at least one, if not two, orders of magnitude faster than FP Library. single cycle vs 100's

   

of cycles in FP Library.

   

 

   

Use of FPU driven by specifications, performance criteria in design.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

We normally tried to avoid using floating point calcuations by multipying the numbers by 1000 or more and scale it down after the calcuation.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

PSoCs are built for (analog) comfort, not for speed!

   

https://www.youtube.com/watch?v=GgTjuDh7dVA

   

 

   

Bob

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

100 DMIPS out of PSOC 5 not exactly slow.

   

 

   

Just a thought.

   

 

   

Regards, Dana.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Compared to the GHz Arm implementations (with fpu) a psoc seems to be slow. But PSoCs are not dedicated to number-crunching or graphic applications but to connect to the outer world, gathering datata and fine-tune the signals on-chip.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

 I know Cypress mentioned 100DMIPS, but just wonder how it is measured/obtained with 80mhz clock?

0 Likes
Anonymous
Not applicable

 PSOC5 is a cortex-M3 and as such it does not have a FPU (you can find FPU in some cortex-M4), also it is a microcontroller designed to interface with the real world. You won't see GHz clocks in any microcontroller lol and unlike the M4s it does not have DSP extensions.

   

 

   

You might want to try fixed-point instead of floating point. When I tried software floating point on a Cortex-m3 it used to take like 50 cicles to complete a multiplication, but varied based on the actual numbers.

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

HL, DMIPS is not a direct f(clkrate), see measurement method here - en.wikipedia.org/wiki/Dhrystone

   

 

   

Insofar as the discussion of PSOC being slow, yes it will not keep up with a Ghz Quad Core DSP

   

with FPU. It will, however, destroy an 8051 of yore many times over. Either comparison is irrelevant.

   

The point of PSOC 5 at 100 DMIPS is, in its class , for its geometry, it is a fast competitive processor.

   

To think othwerwise is ludicrous.

   

 

   

Regards, Dana.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

There is one thing I've learnt so far in my life:

   

When you want to double the speed of your processor wait for 2 years.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

 1. I think PSoC5 is not slow, it is fast enough for a lot of real life embedded application. Actually the PSoC3 is fast while comparing with other 8051 chips or PIC.

   

 

   

2. I use wiki alot, but my question is - how can PSoC5 With a single core at 80M clcok, can have 100DMIPS, as I think it take more than 1 cpu instruction to perform 1 DHRYSTONE cycle. Even the MAC hardware takes more than 1 cycle to perform a MAC operation. Assuming it use the MAC and the CPU to to 2 calculation in parallel. I would think 10DMIPS may be a correct number.

   

 

   

3. I just want to know how Cypress implement the SW to get 100DMIPS.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

DMIPs is an artifical word expressing Drystones benchmark performance. this is defined as the number of iterations the benchmark perfomes within a second. It has nothing to do with the number of instructions per second the CPU performes. Follow Dana's link to the explanation.

   

 

   

Bob

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

And another reference to answer your question - forums.arm.com/index.php

   

 

   

Regards, Dana.

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

Hi PSoCkers “Konbanwa”, Cheers for hard discussions.      

   

Slow?, Fast?, Which is the unit? Every Day and Night.      

   

Article owner was run away huh.      

   

      

              

   

Anyway, comes up to me How Slow PSoC is.      

   

That is in progress but I would be report the speed of PSoC5.      

   

I'm trying real time FFT conversion for a example.      

   

       

   

Very Nice, Even if that is Audio frequency but working well.      

   

That's using floating point calculations without FPU.      

   

Number of point is 512, Refresh time is 200ms now, No problem in practical use.      

   

I should be concern about more fast algorithm, improvement.      

   

How do you think.      

    The image shows spectrum of 10KHz wave.
0 Likes
Anonymous
Not applicable

 Thanks for the information.

   

I was thinking in the wrong direction.

   

"The DMIPS figure for a given machine is the relative speed a VAX 11/780 (a particular "1 MIPS" machine) "

   

So it is a number relative to a VAX 11 machine.

   

it jus means that PSoC5 in 100 time as fast as a VAX 11 runing the same test.

   

I learn something new today.

   

0 Likes
Anonymous
Not applicable

 @PSoC73

   

512 fft in 200ms, not bad. 

0 Likes
Anonymous
Not applicable
        Now, I got 16ms for 128 FFT, 62 FPS!   
0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

This might be of interest -

   

 

   

cas.web.cern.ch/cas/Denmark-2010/Caspers/Tektronix%20%20primer%20on%20overlapping%20FFT%20signals%20...

   

 

   

Regards, Dana.

0 Likes
lock attach
Attachments are accessible only for community members.
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

You might find these interesting as well -

   

 

   

processors.wiki.ti.com/index.php/Efficient_FFT_Computation_of_Real_Input

   

 

   

www.coactionos.com/embedded-design/115-fft-on-the-arm-cortex-m3.html

   

 

   

en.wikipedia.org/wiki/Category:FFT_algorithms

   

 

   

And attachment.

   

 

   

Regards, Dana.

0 Likes
lock attach
Attachments are accessible only for community members.
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Here are some sources used for the various transforms, overall the Hartley

   

seems to be fastest.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable
        Ah! Dana-san Thank you so much, "Arigato Gozaimasita" Many many PDFs and Zips those are a lot of helpful. Now, I'm planning a simple robust power line net work. The FFT use for that system. Need a compact and fast module. I will be disclose those as a user module on this forum, When those will complete almost. Thank you.   
0 Likes
Anonymous
Not applicable

 would MAC be useful?

0 Likes
Anonymous
Not applicable

The MAC is usefull. No MAC, No Degital filter
FIR or IIR filter is computation by MAC.      

   

PsoC1 also have MAC too.      

                                                                                                                                                                                                                                 

Device          

Number of MAC          

Cy8C29x66          

2          

Cy8C27x43          

1          

Cy8C24x94          

2          

Cy8C24x23          

1          

Cy8C22x13          

0          

Cy8C21x34          

0          

Cy8C21x23          

0          

   

                  

   

      

              

   

      

              

   

      

              

   

      

              

   

      

              

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

PSOC 4 has a 32 bit MAC.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

 I needed faster, decimal point mathematics on the PSoC 5 (faster than what float/double would offer), and so wrote a fixed point library for it.

   

 

   

I havn't quantified how much faster it is, but I do know it is much quicker than using a traditional float or doubles.

   

 

   

I have put it on GitHub is anyone is interested, you can download it from github.com/gbmhunter/Cpp-FixedPoint.

   

 

   

Note that I wrote it in C++ to take advantage of templating (to support any fixed-point integer/decimal ratio and operator overloading (so you can use +, -, *, /, e.t.c on floating point numbers and it all works magically) which makes the library much eaier to use than had it been written in C.

0 Likes
Anonymous
Not applicable
        I tried to avoid floating point unless necessary. I HAVE THE SMALL TEXT WINDOW AGAIN......!!!!   
0 Likes
Anonymous
Not applicable
        Hi HL-san, How about Designer5.4? the Programmer is updated too.   
0 Likes
Anonymous
Not applicable
        Still counting down. I think 8 days to go. http://www.cypress.com/?id=3674   
0 Likes
Anonymous
Not applicable
        Hey, What you talking about ! http://www.cypress.com/?id=2522&source=cybanner   
0 Likes
Anonymous
Not applicable
        False Count Down !   
0 Likes
Anonymous
Not applicable
        your are right, looks like we can download it now...   
0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

When you get the small text window clear your browser history, that

   

generally takes care of the problem.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

Don't have this problem now. Shall try that if that happens again.

0 Likes