11-23-2010 04:17 PM
I am planning to build an embedded linux system on a Spartan 6 LX45T with support for ethernet, wifi CF card and data storage on a SD card . I have already spent some time with the documents but since I am a beginner, I would like to ask for some basic fundemantal questions to see if I don't have any wrong assumptions.
Thank you in advance for your guidance
1) Is it possible to access a SD or CF card only via Microblaze and Linux ( that is without using any non-free IP cores). I know that linux has drivers for both SD and CF cards but I am a little bit confused since there are also many IP cores that access SD and CF cards. For example Xilinx has this SystemAce CF IC on SP605.
2) By using only free IP cores on a Spartan 6 running embedded linux, what would be the maximum data transfer rate over ethernet?
3) If I have custom peripheral that consumes a lot of DDR bandwidth, can I connect this peripheral's output to microblaze and have its DDR interface directly connected to an arbiter before the ddr memory controller core. This way microblaze with linux running on it and the peripheral will share the DDR. Would this be difficult to implement?
4) I have read (on EDK 9.2i Hands on Guide) that EDK designs cannot be simulated with Isim and one has to buy either Modelsim or NCsim. Is this still true? If yes does one need the modelsim simulations a lot when using embedded linux?
I would be most happy to hear your answers/comments about these questions.
Thank you again
11-23-2010 04:25 PM
11-24-2010 03:06 AM
Thank you for your answers. I would like to ask more about 1st and 4th points.
1) If I simply connect FPGA output pins to an SD card then, to my limited knowledge, all I need in terms of hardware is the SPI peripheral coupled to the microblaze. I mean there are already many microcontroller based SD and CF card dataloggers and they don't use external chips. They implement the access routines in software, which in our case Linux already handles.
Do I miss something critical?
4) About the fourth point, let me rephrase my question. Do you as an embedded linux on FPGA developer, use modelsim or similar simulation tools a lot or do you handle the debugging process directly over linux? Can it be the case that once one has a working board, modelsim or similar tools are not needed anymore?
thank you very much for your time
11-24-2010 08:06 AM
You can access SD over SPI, but not sure if the Linux driver supports that mode or not.. It would only be 1-bit, not the 4-bit high performance mode that is supported with a custom SD hardware controller.
In the latest 12.x tools, you can use ISIM to simulate embedded designs - there may be way to get it to work in older tools, but it's not supported.
11-24-2010 02:08 PM
Thanks for the anwers. It's great to hear that isim supports EDK designs on 12.x versions.
I have checked the linux drivers and there is support for SPI mode. However as you have mentioned there is a huge performance loss in SPI mode. In opencores, a finished, FPGA proven SD host controller IP exists.
Has anybody tried it? I would be happy to hear some feedback.
05-28-2013 12:50 PM
any luck yet on finding/implementing an SD controller in HDL??
I to would like to run Linux on a Spartan 6LX25 and I would very much like to be able to us the SDcard in 4 or 8 bit mode(SD/MMC) from Linux. I just downloaded the latest TAR from opencores half an hour before I found your post but as usual it is wishbone and not axi so I guess it needs some adoption.
I have no experience with the SD card interface and have found no one that does though they mention it has been tested.
like to hear from you and perhaps we can help eachother.
kind regards Martijn