Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Serial comm from BRAM

Thread Tools

Serial comm from BRAM

matchstick86 matchstick86 is offline
Junior Member
Join Date: Oct 2009
Posts: 19
I have a dual port RAM (both ports 8 x 31250) and I would like to send data stored in each address of Port B via a UART (RS232).

Here is a little background:
Port A is written with data while Port B is untouched. Once Port A is full, writing halts and reading from Port B begins. Data from each data is read and sent serially to a terminal at a baud rate of 115200. FPGA is running at 50 MHz. After all data in Port B are read, Port A and Port B addresses are reset to 0's and the process starts over.

My question is, what is the best way to control how each Port B address is read by the uart module? I have an address counter to keep track of where in Port B we are, but I suspect that while a bit is being sent, the Port B address is increased before all the txd_data bits are sent, thus overwriting read information.

I hope I'm clear enough. Any tips?
Reply With Quote
matchstick86 matchstick86 is offline
Junior Member
Join Date: Oct 2009
Posts: 19
Ok, I seemed to have fixed this issue with supposedly proper handshaking signals where addrA tells port A to stop collecting when it is at its max. In turn, Port B gets the go from addrA to send data from Port A address (in its own Port B addresses. I know how a symmetric dual port RAM look like in VHDL). Once Port B is done with sending, Port B turns off and Port A turns on again.

now my question, if Port A is 16 x 100 (16 bits, 100 depth) and Port B is 8 x 200 (8 bits, 200 depth), how is data read from Port B?

Let's say addrA(0) has data[15:0]. Is data[7:0] send from Port B, followed by data[15:8]? I think this should be the most probable case.

The reason why I am asking is because I have count values that span 16 bits, but since our trusty old-timer RS232 can only send in bytes, there could be some undesirable framing issues (as in, data[15:8] comes out before data[7:0]).
Reply With Quote

Thread Tools

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

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

Similar Threads
Thread Thread Starter Forum Replies Last Post
writing to serial port (COMM) Andreas Java 6 11-16-2010 11:49 AM
Serial, Card wrong Comm Ports.. Mathew Good NZ Computing 7 02-13-2007 03:58 AM
sync/async serial comm.. Sundar C Programming 3 11-21-2006 02:51 PM
using javax.comm with usb-serial port adapter yakka Java 3 08-17-2006 12:15 PM
Java Comm API, 50% CPU Usage, Serial Port I/O Greg Pedder Java 0 02-08-2004 01:38 PM