1) can be solved very easy if you call the signals as altera recomments them. if you do so, you will not need to manualy change signal and interfaces again. belive me i was luckily surprised too when i found that out a couple of days ago.
the method of naming is more than simple and starts with :
gls (GLobal Signal)
avs (Avalon Valid Slave)
avm (Avalon Valid Master)
now a "_" followed by tha name of the interface
registerslave
writemaster
jackdaniels
(what ever you would like to your interfaces (register is not allowed as it is a valid word in verilog)
now a "_" followed by the signal
readdata
read
address
int
waitrequest
if you have an avalon slave that you would like to call registerslave then all signals for that interface must be called like :
avs_registerslave_readdata
avs_registerslave_address
avs_registerslave_read .....
global signals like clk and reset should be called
gls_clk
gls_reset
for a master :
avm_mymaster_waitrequest
now something about exporting signals that leave the nios to be connected outside
avs_myslave_export_signalnameoutside
recognised _export_ ???
if you follow these simple rules you will never reedit the interface again if you change a hdl (well at least this works perfect for me)
2) i have requested such a garbage collection feature more than once when contacting altera ..... as long as their resources do more importante thing a can live with this server space wasting dead files.
but ... use the quartus archieve function to create a *.qar file that hold everything remove all files and unpack qar again :-)
5) yes this realy sucks :-( i add this file to a quartus project and do the analyze there until is does not mention any error or warning then i go back to the sopc ....
6) YES i would greatly call this a MUST HAVE !!!
we design a platform system and do not want to reedit or reenter a complete nios sopc into a new project and keep an eye on both projects. image dozens of nios sopc project all nearly the same (address, int, timer, core).
i would love to have the possability to create a basic set that is include in a famlily of nios sops projects and they differ only in a few thing .... but each family project member will get the modification made in other members of this design family (like changig the int of the timer f.e.)
7) how should such a fifo behave ?
8.) there is even no simple sram sopc modul to tell the sopc that we want to have 8/16/32Bit sram outside with xyz addressbits ...
9.) there is no external memory model to implement a external tristate bus to connect external devices
10.) one very big problem with the avalon : the avalon is not capable to have an external 8bit device connected that handles the external device as a memory (not registered) that there is no gap in the occupied space from nios software view AND (and that is the problem) read only these bytes from the external 8 bit component that the software has accessed (meaning reading only 8 bit should lead to only 1 external byte access instead of reading all 32 bit)
Why ? tell me one profibuschip that allows that byte locations are read that are not needed. (spc31, spc4, spc41, spc42, vpc3+c interprete a read from a register and reset according bits) but to gain performance you want to have the profibus memory inside the profibuschip as a memory window for memcopy() memset() ...
so nios with avalon is currently not capable to have any known profibus chip (infineon, profichip) as an external 8bit memory device. (memory not register !) you wont get the certified stacks running !
Regards
Michael Schmitt