Go Back   Velocity Reviews > Newsgroups > VHDL
User Name
Password
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply

VHDL - Re: problem in different clock speed when reading and writing from ram

 
Thread Tools Search this Thread
Old 08-13-2003, 09:54 PM   #1
Default Re: problem in different clock speed when reading and writing from ram


Hello Sarah,

> So, i need to keep the signal : start_tx longer until the rising endge of
> Uart_clcok.
> Does anyboday know how to slove this problem? Which logic should be
> used?


It's a 3 step approach:

1. Stretch the start_tx signal such that it is longer than the clock pulse
of the UART clock including clock skew. A simple counter to turn the
start_tx signal on and off should do the trick. It's no problem if the
start_tx pulse is a bit longer than it needs to be. Too short however will
cause problems.
2. Clock the start_tx to the UART clock using 3 FFs to avoid meta-stability.
3. Perform a positive edge detection on the output of the 2nd and 3rd FF
using the UART clock.


For step 2 and 3:

PROCESS
BEGIN
WAIT UNTIL uart_clk = '1';
uart_start_tx <= start_tx; -- 1st FF
uart_start_tx_1d <= uart_start_tx; -- 2nd FF
uart_start_tx_2d <= uart_start_tx_1d; -- 3rd FF
-- rising edge detection
IF uart_start_tx_1d = '1' AND uart_start_tx_2d = '0' THEN
-- start your transmission here
END IF;
END PROCESS;


Hope this helps,

Pieter Hulshoff



Pieter Hulshoff
  Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
Toshiba SD-R5372 onehappymadman@yahoo.com DVD Video 4 12-01-2005 01:41 AM
Best DVD Burner Bob DVD Video 201 07-11-2005 12:44 PM




SEO by vBSEO 3.3.2 ©2009, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46