--- Quote Start ---
I have had exactly the same problem. I made a modified DMA component (with variable increment, and wrap to make a circular buffer), which works fine in 7.0, but in 7.1 I get the outside range (0x0..0x1) error. I have no idea what some of the interface properties do (such as 'addressGroup'), and I can find no reference to a complete list of interface properties and what they mean. The Quartus manual, section 6, 'Building a Component Interface with TCL commands' offers very little information, and is missing interface definitions that appear in the generated _hw.tcl files. Can anyone help by pointing at a document that lists the interface properties. And also how to overcome this address range problem. Thanks!
--- Quote End ---
Hi BartSchroder,
It seems that in 7.1 component editor it may have incorrectly inserted a tcl parameter that limits the address span size.
Look for the following addressSpan parameter:
set_interface_property "<slave port>" "addressSpan" "<some_span_value>"
where <slave port> is the name of the Avalon Slave port.
There seems to be two ways to fix this issue
1) comment out the parameter with a# at the begining of the line (or just delete it)
2) correctly calculate the correct address span value which should be the total number of addressable bytes (2^address_bits * word_size_in_bytes).
It seems that the component editor when it inserted the addressSpan parameter it sometimes did not use the correct address span value. But if you remove that parameter, the SOPC Builder will correctly calculate the address span of your component.
It seems if there is a tcl parameter that is not documented in ch 6 'building a component interface with tcl commands' (
http://www.altera.com/literature/hb/qts/qts_qii54022.pdf) (
http://www.altera.com/literature/hb/qts/qts_qii54022.pdf) it may not be a required parameter and can usually be commented out of the file with little issue.
What I do is use the component editor to build the initial tcl file and then modify the tcl file directly when I need to make changes. I also found commenting out the tcl parameter not documented in the ch6 seems to make my component less prone to issues like the addressspan issue above. I seen to have the most sucess following this way of creating a component in 7.1.
Regards,
-ATJ