Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

9.6 khz from 27 or 33 MHz

Status
Not open for further replies.

aajizattari

Member level 3
Joined
Nov 13, 2007
Messages
55
Helped
8
Reputation
16
Reaction score
0
Trophy points
1,286
Activity points
1,608
Hi all ,

I need to have 9.6 k clock from a 27 Mhz clock in FPGA

But it only approximates and error is erraneous

Has aanyone some Solution ????
 

I think you mean that 27MHz/9600 = 2812.5, so you can't use a simple counter to get an exact ratio.

If your 9600 output needs to have low jitter, you could double the 27 MHz clock by using a DLL or PLL or whatever feature your FPGA provides, and then divide the 54 MHz clock by 5625.

Another approach -- If you don't mind some jitter on the 9600 output, you could design a counter that divides the 27 MHz clock by 5625, and outputs two pulses during that time. The output's average frequency would be exactly 9600 Hz, but the output period would alternate between 2812 and 2813 cycles.
 
9.6KHZ, hmmm, that sounds like a clock for a UART to set the baud rate. If so, please be aware that simply dividing by 2812 will get you close enough. You do not need to hit the exact baud rate for UARTs to work properly.

Setting the baud rate is a common problem in microcontrollers. I believe the rule of thumb is to get the baud rate within 2% for reliable operation.

If you are doing a UART and it does not communicate, capture a transmission of a couple of bytes on a scope. Most common problems are forgetting to invert the inputs and outputs and incorrect polarity of stop and start bits.
 
hi,

what FPGA(family, manufacture) you use?
 

a solution

For example, 5MHz-->2MHz can be realized as follows:
 

But this solution requires separate synchronous logic operating at both clock edges and asynchronous logic to combine the output signal. Clock duty cycle deviating from 50% causes additional output jitter.
 

It's too easy.
you need only to divide 27MHz by 2812.5.
you need only to divide 33MHz by 3437.5.
I prefer to divide 27MHz by 2812.5. It's too easy. if you cant. I will help you!
 

if you have a 27MHz and use a divider_by_1.5 module. you will have 18 MHz.
18000000/9600=1875

then you should build a divide by 1875 counter. and you will got a 9.6KHz signal.
It's too easy!!!!
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top