??? 04/15/05 19:59 Modified: 04/15/05 20:15 Read: times |
#91702 - provided in the datasheet Responding to: ???'s previous message |
The example below implements the equation: 4660 292 – × 1360720 – = MOV MAC0CF, #01h ; Use integer numbers, and multiply only mode (add to zero) MOV MAC0AH, #12h ; Load MAC0A register with 1234 hex = 4660 decimal MOV MAC0AL, #34h MOV MAC0BH, #FEh ; Load MAC0B register with FEDC hex = -292 decimal MOV MAC0BL, #DCh ; This line initiates the Multiply operation NOP NOP ; After this instruction, the Accumulator should be equal to ; FFFFEB3CB0 hex = -1360720 decimal. The MAC0STA register should ; be 0x01, indicating a negative result. NOP ; After this instruction, the Rounding register is updated assuming the values are in 4 DATA slots DATA to SFR in a F120 takes 30ns, so to load the value will take 120ns, to unload it (20 bits = 3 SFRs) will take 90ns and the nop will take 10ns all in all the operation DATA memory to DATA memory will take 220ns. With a f124 it would take 440ns. Erik MAC0CF, of course, need only be set in the initialization and never again. Erik |
Topic | Author | Date |
Fast Square. | 01/01/70 00:00 | |
Square dancing | 01/01/70 00:00 | |
table lookup??? | 01/01/70 00:00 | |
code & algorithm | 01/01/70 00:00 | |
16*16 bit is slower than what I want. | 01/01/70 00:00 | |
How fast? | 01/01/70 00:00 | |
Re: How Fast | 01/01/70 00:00 | |
... probably impossible in 15 cycles | 01/01/70 00:00 | |
why cycles ? | 01/01/70 00:00 | |
Re: Microseconds | 01/01/70 00:00 | |
table lookup | 01/01/70 00:00 | |
Natsemi appnote or CORDIC | 01/01/70 00:00 | |
Natsemi link to appnote | 01/01/70 00:00 | |
(a+b)^2=a^2+2*a*b+b^2 | 01/01/70 00:00 | |
Thats Slow. | 01/01/70 00:00 | |
faster need hardware | 01/01/70 00:00 | |
How fast do you need? | 01/01/70 00:00 | |
Re: How Fast. | 01/01/70 00:00 | |
Just? | 01/01/70 00:00 | |
Incorrect | 01/01/70 00:00 | |
Correct? | 01/01/70 00:00 | |
Whooooopa... Sorry. | 01/01/70 00:00 | |
Thanks | 01/01/70 00:00 | |
I tried... | 01/01/70 00:00 | |
optimum? table driven | 01/01/70 00:00 | |
Jan metod | 01/01/70 00:00 | |
Hardware? | 01/01/70 00:00 | |
CPLD? | 01/01/70 00:00 | |
SILabs f12x does it in hardware | 01/01/70 00:00 | |
Re: SiLabs F12x | 01/01/70 00:00 | |
Price | 01/01/70 00:00 | |
F12x price | 01/01/70 00:00 | |
F12x MAC | 01/01/70 00:00 | |
provided in the datasheet | 01/01/70 00:00 | |
Just out of interest | 01/01/70 00:00 | |
clarification | 01/01/70 00:00 | |
CPLD? | 01/01/70 00:00 | |
too expensive | 01/01/70 00:00 | |
Absolute rubbish Oleg | 01/01/70 00:00 | |
explain | 01/01/70 00:00 | |
your right | 01/01/70 00:00 | |
especially for those... | 01/01/70 00:00 | |
I need to say this.... | 01/01/70 00:00 | |
By the way..... | 01/01/70 00:00 | |
just a demo | 01/01/70 00:00 | |
Hang on. | 01/01/70 00:00 | |
Oh bollocks | 01/01/70 00:00 | |
Well oleg | 01/01/70 00:00 | |
Please check my answer. | 01/01/70 00:00 | |
Here you go | 01/01/70 00:00 | |
You're having me on. | 01/01/70 00:00 | |
Pascal? | 01/01/70 00:00 | |
Pascal? | 01/01/70 00:00 | |
Why ? | 01/01/70 00:00 | |
It was changed because,,, | 01/01/70 00:00 | |
Its because | 01/01/70 00:00 | |
For Jez | 01/01/70 00:00 | |
For Michael | 01/01/70 00:00 | |
simulation | 01/01/70 00:00 | |
Re: Fast Square | 01/01/70 00:00 | |
Prahlad, waithing for a conclusion | 01/01/70 00:00 | |
just an exercise... | 01/01/70 00:00 | |
Tricky | 01/01/70 00:00 | |
Jez asked his cat, I asked my sheep | 01/01/70 00:00 | |
Conclusion. | 01/01/70 00:00 | |
SPI EEPROM![]() | 01/01/70 00:00 |