There are 8 messages in this thread.
You are currently looking at messages 0 to 8.
I've got a problem with my DDR2 (MT47H32M16) on my Spartan3AN board. I use MIG 2.3 controler. The burst lenght is 4. When I'm writing the data like x"A1A1B2B2" or x"01010101" everything works. I'm reading the data after data_valid is set and writing to internal registers. Then I'm sending it to RS232. Problem is when I want write data with zeros... like x"A100B2B2" or x"01010001". Then data which I'm reading are wrong. For x"A100B2B2" A1 I can read but else data are wrong:/ I'm little confused why it happens..
On Mar 9, 2:04=A0pm, lusch <lukaszschodow...@gmail.com> wrote: > I've got a problem with my DDR2 (MT47H32M16) on my Spartan3AN board. I > use MIG 2.3 controler. The burst lenght is 4. When I'm writing the > data like x"A1A1B2B2" or x"01010101" everything works. I'm reading the > data after data_valid is set and writing to internal registers. Then > I'm sending it to RS232. > > Problem is when I want write data with zeros... like x"A100B2B2" or > x"01010001". Then data which I'm reading are wrong. For x"A100B2B2" A1 > I can read but else data are wrong:/ > > I'm little confused why it happens.. My guess is that it's the RS-232 link dropping your zeroes, not the memory controller. It's standard practice on serial links to treat null characters (x"00") as nothing, and therefore drop them. Make sure the software at the other end of your RS-232 link is set up to receive binary mode rather than ASCII text. Regards, Gabor______________________________
On 9 Mar, 21:59, Gabor <ga...@alacron.com> wrote: > My guess is that it's the RS-232 link dropping your zeroes, not > the memory controller. =A0It's standard practice on serial links > to treat null characters (x"00") as nothing, and therefore drop > them. =A0Make sure the software at the other end of your RS-232 > link is set up to receive binary mode rather than ASCII text. > > Regards, > Gabor I receive data in serial terminal and I set hexadecimal rather than ASCII so I see exactly byte to byte what I receive. Thanks for replay. Regards
> I've got a problem with my DDR2 (MT47H32M16) on my Spartan3AN board. I > use MIG 2.3 controler. The burst lenght is 4. When I'm writing the > data like x"A1A1B2B2" or x"01010101" everything works. I'm reading the > data after data_valid is set and writing to internal registers. Then > I'm sending it to RS232. > > Problem is when I want write data with zeros... like x"A100B2B2" or > x"01010001". Then data which I'm reading are wrong. For x"A100B2B2" A1 > I can read but else data are wrong:/ > > I'm little confused why it happens.. Is this a custom board or a 3rd party eval board? How confident are you about the terminations between the FPGA and memory? What exactly do you get back when you write x"A100B2B2"? What do you get back if you write all zeros? Can you slow the transfer down (half speed?). I'd be worried about signal integrity, but then the x"01010101" case would suggest this might not be a problem. ? Sounds like you're confident about the RS232 connection, if you weren't this is the sort of thing my 1Pin Interface is useful for. http://www.1pin-interface.com :-) Nial
Yes, the problem was in RS232 :) Actually I don't know why. I wrote simple module to write data to RS232 from FPGA and problem appeared when I'd like send "00" Thanks for cooperation Luka______________________________
lusch <l...@gmail.com> wrote: >Yes, the problem was in RS232 :) Actually I don't know why. >I wrote simple module to write data to RS232 from FPGA and problem >appeared when I'd like send "00" Probably a getchar() / C style strings problem. -- Failure does not prove something is impossible, failure simply indicates you are not using the right tools... nico@nctdevpuntnl (punt=.) --------------------------------------------------------------______________________________
On Mar 10, 2:22=A0pm, lusch <lukaszschodow...@gmail.com> wrote: > Yes, the problem was in RS232 :) Actually I don't know why. > I wrote simple module to write data to RS232 from FPGA and problem > appeared when I'd like send "00" > > Thanks for cooperation > Luka I think previously you said that you were using a displaying the result in HEX in your terminal program. Gabor pointed out that RS-232 would ignore 00 unless you were in binary (vs ascii) mode. Your reply here wasn't The value 00 is the same as 0 which is also NULL or end-of-string in C software. You haven't said how the value is sent to the RS-232 port, but if you were using MicroBlaze and printf think that this could be getting swallowed by the software routine. In order to separate the issue between the Memory read/write and the RS-232 transmit. I would suggest that you change your design to simple write a number of zero and non-zero values to the RS-232 and see if these appear correctly in your RS-232 terminal. Ed McGettigan -- Xilinx Inc.
"lusch" <l...@gmail.com> wrote in message news:9...@33g2000yqj.googlegroups.com... > Yes, the problem was in RS232 :) Actually I don't know why. > I wrote simple module to write data to RS232 from FPGA and problem > appeared when I'd like send "00" A haaa, so the 1 Pin Interface would have been invaluable, how many hours did you waste? (Without giving it too hard a sell). At least the problem isn't FPGA or PCB based! Nial.______________________________