Pages: [1]   Go Down
Author Topic: Very high clock-rates  (Read 792 times)
0 Members and 1 Guest are viewing this topic.
Switzerland
Offline Offline
Sr. Member
****
Karma: 6
Posts: 375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm using an Uno to count irregular pulses from an external source.  Right now I'm limited to around 7us per pulse, but I'd like to go faster -- much faster.  Are there any microcontrollers similar to the ATmega series capable of very high clock frequencies?  200MHz would not be too fast...
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 636
Posts: 34574
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Are there any microcontrollers similar to the ATmega series capable of very high clock frequencies?

No there are lots of microcontrollers capable of 200MHz clocks but they are not similar to the arduino, nor do they have the nice arduino environment.
Try the LPC2000 series of microcontrollers.
Logged

SF Bay Area (USA)
Offline Offline
Tesla Member
***
Karma: 137
Posts: 6792
Strongly opinionated, but not official!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Try the LPC2000 series of microcontrollers.
A fast CPU clock rate does not necessarily end up meaning the ability to examine (or output to) port pins at high rates.  Some of the ARM chips in particular have been dissed as having particularly poor "pin toggle" capabilities.
I you're just COUNTING pulses, there are other ways to get high speeds (a high speed counter is "easy" external logic), and there are also the external clock input to the timer/counter units.

You should be able to do better than 7us pulses even on an Arduino, if you use direct port access rather than the digitalRead() functions.  But less than about 2us would probably be tough.

There was a series of microcontrollers (Scenix/Ubicom) that explicitly attacked the "fast pin access" problem, with the aim of doing away with standard peripherals and implementing everything in software (IIRC, they ran 80 to 100MHz.)  They failed to survive :-(

An FPGA or CPLD might be applicable as well.
Logged

Switzerland
Offline Offline
Sr. Member
****
Karma: 6
Posts: 375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks for the replies.  I have tried pulse-counting via direct port access, in a tight loop inside loop() (sorry, I don't have my code to hand).  Even choosing the input-pins to minimise the logic, I can't seem to get much below 25us per pulse.  Using interrupts to do the edge-detection gets me down to about 7us per pulse.  Forum member Coding-Badly suggested using the timers as counters, and this will be my next line of enquiry (as soon as I can wrap my head around the Atmel docs).
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 636
Posts: 34574
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

You are much better off using an external TTL counter like a 74F193 and reading the pins on that. These chips can easily count in the hundreds of MHz. Then you only need to periodically sample the count you have.
Logged

Global Moderator
Boston area, metrowest
Offline Offline
Brattain Member
*****
Karma: 548
Posts: 27372
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

How long of a burst of 200MHz pulses are you looking to capture?
That's 5 nS pulses, pretty darn quick.
The atmega need a couple of clock cycles to latch in an edge that has changed state - so you're limited to 130-193nS between pulses at best on 2 different pins.

Go to ti.com and search for 'counter', I think you'll have a hard time finding a part that will go that fast.

What are you trying to count?
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Pages: [1]   Go Up
Jump to: