Dual SDRAM and AP7000

Go To Last Post
9 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

I am doing standalone development on the AP7000 (using the grasshopper card).
I am driving a TFT monitor and the resolution required is 1024x768 8BPP. I also have a NGW100 and have used it to drive the monitor at this resolution. On the NGW100 the screen flickers a little bit and the data is a bit distorted. Flickering is due to the LCD re-init after an underrun error.
So, I decided to go for the grasshopper board.
I choose the grasshopper board for the 32-bit SDRAM interface, so that I will get better performance. Now, the problem is that the same code on the grasshopper board performs even worse than on the NGW100. This puzzles me :shock:
I changed the SDRAM driver and the LCD I/O port mapping to suit the new board.

I doubt the SDRAM init in this case. The SDRAM on the grasshopper is the Samsung K4S561632J-UC75. Actually 2 of them to make a 32-bit SDRAM.
It has similar timings and other paramaters as the SDRAM on the NGW100, which is the Micron MT48LC16M16A2. So, I did not play around with the timings while porting the driver to the grasshopper.
So, the only change I made is that I made the SDRAM interface to 32-bits wide. I wonder is this enough or I need to do anything else.

I am hoping to get more out of the grasshopper than I do with the NGW100 and it sounds pretty logical to me.

Thanks,
-drt

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Did you set the HSB clock to 75 MHz? CPU to 150 MHz? Etc.

32-bit SDRAM should be a lot better than 16-bit SDRAM.

Hans-Christian

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yes I have set the HSB clock to 75 MHz and CPU to 150 MHz.

Any suggestions on what would be different in initialization of a 16-bit SDRAM as compared to similar 2 16-bit SDRAMs giving a 32-bit interface?

-drt

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Anyone?

-drt

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:

Any suggestions on what would be different in initialization of a 16-bit SDRAM as compared to similar 2 16-bit SDRAMs giving a 32-bit interface?
You set 32-bit memory interface in the SDRAMC if you have 2 x 16-bit devices.

Hans-Christian

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

hce wrote:
Quote:

Any suggestions on what would be different in initialization of a 16-bit SDRAM as compared to similar 2 16-bit SDRAMs giving a 32-bit interface?
You set 32-bit memory interface in the SDRAMC if you have 2 x 16-bit devices.

Thanks for the reply.
I have already done that. So, I do not have to do other settings. The SDRAMC settings will be the same as that for the 16-bit interface.

-drt

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Correct, same timing settings as for a single device connected.

The hardware wiring will take care of the two devices hooked up to the bus.

Hans-Christian

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks!! So, my SDRAM driver seems to be good :). I will run some more tests on it.

I could make some significant improvements on the NGW100. I use the non-cacheable area for data and the cacheable area for the LCD frame buffer. I also made all my constant data not constant.

I think this had to be done from the very begining, but while trying out a few things I made the data section in the cacheable area.

I will try out similar things on the 32-bit board, will update when done. I am hoping to use 1024x768 16BPP on the 32-bit as opposed to 1024x768 8BPP on the NGW100 :D.

-drt

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

I will "reopen" this topic.

I have +- the same problem that Deven had. So, I ask if, after all this time that the topic was opened, changing the SDRAM interface to 32-bits wide is really enough to exchange the ngw100 for the icnova board (just for SDRAM interface).

If I set 32-bits in dbw register it works worse :\

Thank you in advance.