- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, all.
I am creating sopc builder system with nios II-f processor and some other components. After compiled, 48% the total logic elements are used. but, when i added a dma component to the system, the used logic elements increased rapidly from 48% to more than 100%. Can anybody help me out from puzzled? Regards.Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Did you notice a bunch of adapters generated? They should have names like "clock_0.v" or "burst_0.v"..... or something similar. If you connect the DMA masters to everything in your system I would expect the fabric to grow substantially as well.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for your attention and forgive for my late reply.
There are files like "burst_0.v" in my folder as I enable the burst option for my nios II, but it's not the main factor because they had been there before I added the DMA. I had found out the cause while I compare the "Resource Utilization by Entity" reports. I had used a dc-fifo in my sopc system, which changed to use register resources after the dma component had been added. However, it is supposed to use memory resources. I still don't konw how to make the fifo use memory resources forever.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It sounds like you ran out out of on-chip memory resources and now some FIFOs are being implemented in LEs/ALUTs. I would inspect you on-chip memory utilization to see if you are running low. The DMA has an option where you can force it's internal FIFO into logic instead of RAM. That FIFO is pretty shallow so if you are tight on memory that would be a good one to force into LEs/ALUTs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I used cyclone III, which has about 64Kbytes of ram memory, and I have used less than 50%.
And the fifo which runs out my LEs is a dc-fifo which is used on my video pipeline. It uses 8K LEs instead of ram memory after I add a DMA. The DMA's internal fifo is small, so it doesn't matter whether to use LEs or Ram resources. I guess the fifo auto changes to use LEs while the system goes complex, so that it can get a better timing.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Are you sure those memories are not under utilized though? For example if you create a memory that contains only four bytes, you will end up consuming an entire M9K block. You can see the block usage in the final compilation report.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, I compared the "Resource Utilization by Entity" reports. The fifo formally uses 8K memorys, then changes to use 8K registers.
And now I reduce the size of the fifo to avoid LE resources to run out.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page