Forum Discussion
1 Reply
- Altera_Forum
Honored Contributor
I'm a newbie to SopC design and have a couple of questions relating to using Qsys to make a hierarchical designs. I am trying to break up the nichestack reference design into a hierarchy by having all of the Ethernet components in a subsystem so I can make modifications to those components alone. I'm not sure I fully understand how to correctly assign addresses and was hoping someone would be kind enough to verify some assumptions of mine or clarify some points of confusion...
I took the original nichestack system: http://i52.tinypic.com/amxo4p.jpg and moved the following into their own Ethernet subsystem: 1. descriptor memory 2. rx scatter gather dma controller 3. tx scatter gather dma controller 4. triple speed Ethernet module I then added two Avalon MM pipeline bridges: 1. Ethernet_to_sdram to facilitate the m_read and m_write commands from the dma controller 2. data_to_ethernet to facilitate the slave interface from the nios II http://i52.tinypic.com/2v1w360.jpg and interfaced this new subsystem into the original like so: http://i54.tinypic.com/2zs4iyq.jpg My questions are: 1. Aside from taking streaming data and converting it to parallel, what does the scatter gather dma controller do, and why does it need descriptor memory? 2. Also is there any reason you would want to lock memory locations, ie: do you have to change driver code if you move the csr registers locations? 3. Is there any latency added by the additional pipeline bridge or does it just map the addresses into the top hierarchy? 4. Does the error: Error: Output port "DATAOUT" of DDIO_OUT WYSIWYG "sopc_system:sopc_system_inst|ethernet_subsystem_4gy6ezls:ethernet_subsystem|triple_speed_ethernet_ykj4ie6k:triple_speed_ethernet_0|altera_tse_mac:altera_tse_mac_inst|altera_tse_top_gen_host:top_gen_host_inst|altera_tse_rgmii_module:U_RGMII|altera_tse_rgmii_out4:the_rgmii_out4|altddio_out:altddio_out_component|ddio_out_gmb:auto_generated|ddio_outa[0]" has too many fan-outs. mean anything to anyone? I appreciate any clarification, I've looked through the documentation for these devices and it didn't answer much for me...