Hi,I need some help about triple speed ethernet (tse) to receive and transmit datas. I have paid for IP-TRIETHERNET + IP-NIOS + IP-TCPIP-NIOS. The altera support and commercial contact told me that I need only this pack to do the gigabit... I add gigabit to our board. We need 10/100 and 1G in ethernet. We use the marvel 88E1111 like phy and cyclone II (stratix III too on other board). We connect the phy marvell with altera in mii / gmii mode. I have a nios II with the tse module. With the advise of altera support, I do my sopc project with the "Triple Speed Ethernet Data Path Rference Design" aka AN483. But with this exemple , I can't send my own datas or receive and display the datas that I receive. The module "eth_gene" can send only random datas or incremental datas and "eth_moni" can count the bytes received and mentionned if packets with error or not. I don't understand why we need other module to have the datas or to send our own messages because I paid for doing all in gigabit. If I want to use the "simple socket server " exemple code, I need to use the "sgdma" module but it is not free. (see in ug_ethernet.pdf 6.2) And why didn't tell me that I need other thing to use my tse pack ? So, is the sgdma module important ? necessary ? or can I create my own module to use the streaming (in and out) from my tse module in the nios. Our board must send any datas that we want and receive any datas on ethernet. How can I access to the datas in the fifo of the triple speed ethernet module ? I need help about this and it's very urgent. Thanks Cordialy, Benoît Edit : my .qar file ici (http://exterminabur.free.fr/etep608a_dtd_ben.qar)
You should be able to use the simple socket server example.You are right, sgdma module is required for tse connection to nios, but actually it is free, included in sopc builder standard components. This is true for Cyclone III, but afaik for Cyclone II and Stratix, too. Cris
--- Quote Start --- You should be able to use the simple socket server example. You are right, sgdma module is required for tse connection to nios, but actually it is free, included in sopc builder standard components. This is true for Cyclone III, but afaik for Cyclone II and Stratix, too. Cris --- Quote End --- Hi Cris, thanks for information for sgdma module I find it. Now I try to configure it to add to my sopc For the example, I think I must add the "mdio" in the tse module ,doesn't you ? Edit: I must add two "sgdma" module for each streaming from tse module ?
Hi,You usually always need to include mdio interface in order to configure your phy run time. Otherwise you are forced to use a few standard configurations, selected by pulling up/down some phy strap pins during reset. Regarding sopc builder connections, you need both a tx sgdma and a rx sgdma for a single tse module. Cris
greatI'm looking that In waiting, I add a "on chip memory" to connect all ^^ to test it. Thanks but I don't understand why these information are not included or explain with more details in documentation from altera. In altera support, I didn't have the same help and not these information. thanks again. I open it immediatly. Ben
Hello againso , thanks for the sopc file I do my sopc with success ;) but now, in nios II ide, I want to compile but I have some errors. I don't have the files "altera_avalon_sgdma_regs.h" , "altera_avalon_sgdma_descriptor.h" and "altera_avalon_sgdma.h". So my compilation failed. Why these files don't give in base ? where can I have it ? thanks again Ben
Hi Ben,On my system , the files are here: \altera\90sp2\ip\altera\sopc_builder_ip\altera_avalon_sgdma Check if you have them, too. Maybe in a different directory if you are using a different version. Probably you are missing the include paths in Nios IDE. Cris
Hello Cris,yes I do the files in the same directory So, I'm looking for this problem and why I have this error : " c:/Trav_Quartus/etep608A/etep608A_Cyclone/software/prog_nios1_etep608A_bsp/drivers/src/altera_avalon_tse.c:31: ./drivers/inc/altera_avalon_tse.h:96:33: altera_avalon_sgdma.h: No such file or directory" I'll back soon if I find th reason. Edit:in fact, these files don't appear in my "bsp" in the folder "driver" so I have this error but "# ifdef __ALTERA_AVALON_SGDMA" is ok and recognize... I don't understand
Hi again,all adds are ok. but I have a new problem. My ram memory (external) is called "ramprog" and the base address is "0x8a00000". Before changing (add "sgdma modules"), I control the base address in th .objdump generated and it is "0x8a00000" ,So , ok. but after changing, (add "sgdma modules" with your help) my new .objdump file have the base address (to start) to "0x8a00230". So my program doesn't work. i don't undestand why the "start" address has changing. I check it on the sopc, and the base address is good (0x8a00000) and in my bsp project (in nios II ide) the base address is 0x8a000000 too. can you help me ? maybe an option in bsp editor I must change ?
In fact, I have a program in a boot (a onchip memory in altera) that it jumps to my ram (where there is the final program in RAMPROG with base address = 0x8a00000).I add to you my .objdump files : - prog_nios1_etep608A.objdump is my old before adding "sgdma module" and it works great - prog_91_etep608A.objdump is my new after adding the module (in the objdump .zip file ;) ) thanks again Cris for your help
I can't give you an exact explanation. I faced similar problems in the past during some tests but I can't remember or I didn't investigate the cause.I think this could be related to one of these: - placement of exception vector; see Nios properties in sopc builder - initialization of onchip memory Cris
--- Quote Start --- I can't give you an exact explanation. I faced similar problems in the past during some tests but I can't remember or I didn't investigate the cause. I think this could be related to one of these: - placement of exception vector; see Nios properties in sopc builder - initialization of onchip memory Cris --- Quote End --- hum... I see that "exception" is "0x0" in old objdump and the base address is 0x8a00000 but in the new objdump the "exception" is "0x230" and the base address is 08a00230 ...I don't think that is an accident, do you ? so, just a thing, I use "
void jump_from_loader(void target(void))" to jump from "boot" to "ram prog". and I do this :
- "jump_from_loader((void(*)(void))(RAMPROG_BASE));"so I must (maybe) jump not to RAMPROG_BASE but to RAMPROG_BASE + EXCEPTION. And just to now, I always do this but It is wrong ,I have just lucky that the "exception" is "0x0". i hope I'm near the solution of my problem ;)
Hello Cris,so I test my jump to "RAMPROG_BASE + OFFSET 0x230" and all is ok I test too my jump to "RAMPROG_BASE" and option "enable_alt_load_copy_exceptions" disabled in my bsp and all is ok. Now,I want to launch the "simple socket server" like nios II ide example project : - compilation is ok (i just disable the flash using). - but I have a error message in debug rs (I put my capture.txt file) So i don't undersand because i paid for IP-NIOS , IP-TRIETHERNET and IPSW-TCPIP-NIOS (for nichestack license) So why I have this error how can I obtain a "simple socket server" example with my license (I use triple speed ethernet in gmii mode too). ? thanks for helping Cordialy, Ben
Hi Ben,That's not an error. It simply reminds you that you don't have a valid license to use nichestack. Your program should work anyway. I think you probably see also a reminder about Micrium RTOS license during compilation: this one you don't have but, like Nichestack, code will be 100% functional for evaluation purposes. Regarding the fact the tools can't see your license, if you actually have it, probably you missed something in the installation of Nichestack licence itself. Refer the the information they gave you when your purchased the TCPIP package in order to know how to install it. Cris
Hello,So, I try "simple socket server example " but I can't use it. I have the connexion, in uart I have information that all is ok and "ss example " is working but I can't telnet it ... but here (http://www.altera.com/support/examples/nios2/exm-hello_world.html) I see that I haven't the same "simple server socket" because I haven't the "network_utilities_iniche.c"
wh[/B]ere can I obtain the zip project or the example ? [/B]
hiThose utilities are not mandatory. They help you to manage mac and ip addresses and store them into nv memory. For test purposes you can simply define fixed addresses. Regarding the fact you say you can't telnet, do you mean you can't either ping? Or you can ping but you can't connect to telnet port 23? I recommend you start with dhcp disabled and use a well known fixed ip address. Cris