- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi everybody!!!
I'm studying with a topics "Interface between Ethernet of Cyclone III and computer(PC or labtop)" It's means that I must "ping IP and Relay from Cyclone's Ethernet". I don't know how to practice that i use Verilog language. it's difficult to me!!! Help me everybodyLink Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Take Cyclone III Development kit or NEEK web server examples for starters.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
i don't understand. Can you discrible your mind. I need to instruction detail about it. example .... I'm confuse... worried!!!!!
help me !!! anyone- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What development kit do you have? Isn't it shipped with design examples?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes I do.
I'm doing on Development Board on Cyclone III. But I don't know how to set up IP for Cyclone III's Ethernet. My task is when I ping "Ethernet's IP address" it answer "Relay ...."comment ???????? that's all!!!- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You need to upload the nios standard image (delivered with the kit) and compile and run a web server example..
Then the board will try to configure itself through dhcp so it can be a good idea to have a dhcp server on your PC if you don't want to configure the IP manually in the source code.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I can set up IP address for Cyclone III's Ethernet, and this is my code when I declare for this code.
/* * define_IP.h * * Created on: Dec 12, 2012 * Author: user01 */ # ifndef DEFINE_IP_H_ # define DEFINE_IP_H_ /* # pragma ident "@(#)ip.h 1.7 98/08/26 SMI" ip.h 1.13 88/08/19 SMI; from UCB 7.6.1.1 3/15/88 # include <sys/isa_defs.h> # ifdef __cplusplus extern "C" { # endif */ # define IPVERSION 4 /* * Structure of an internet header, naked of options. * * We declare ip_len and ip_off to be short, rather than ushort_t * pragmatically since otherwise unsigned comparisons can result * against negative integers quite easily, and fail in subtle ways. */ struct ip { # ifdef _BIT_FIELDS_LTOH uchar_t ip_hl:4, /* header length */ ip_v:4; /* version */ # else uchar_t ip_v:4, /* version */ ip_hl:4; /* header length */ # endif uchar_t ip_tos; /* type of service */ short ip_len; /* total length */ ushort_t ip_id; /* identification */ short ip_off; /* fragment offset field */ # define IP_DF 0x4000 /* dont fragment flag */ # define IP_MF 0x2000 /* more fragments flag */ uchar_t ip_ttl; /* time to live */ uchar_t ip_p; /* protocol */ ushort_t ip_sum; /* checksum */ struct in_addr ip_src, ip_dst; /* source and dest address */ }; # define IP_MAXPACKET 65535 /* maximum packet size */ /* * Definitions for IP type of service (ip_tos) */ # define IPTOS_LOWDELAY 0x10 # define IPTOS_THROUGHPUT 0x08 # define IPTOS_RELIABILITY 0x04 /* * Definitions for IP precedence (also in ip_tos) (hopefully unused) */ # define IPTOS_PREC_NETCONTROL 0xe0 # define IPTOS_PREC_INTERNETCONTROL 0xc0 # define IPTOS_PREC_CRITIC_ECP 0xa0 # define IPTOS_PREC_FLASHOVERRIDE 0x80 # define IPTOS_PREC_FLASH 0x60 # define IPTOS_PREC_IMMEDIATE 0x40 # define IPTOS_PREC_PRIORITY 0x20 # define IPTOS_PREC_ROUTINE 0x00 /* * Definitions for options. */ # define IPOPT_COPIED(o) ((o)&0x80) # define IPOPT_CLASS(o) ((o)&0x60) # define IPOPT_NUMBER(o) ((o)&0x1f) # define IPOPT_CONTROL 0x00 # define IPOPT_RESERVED1 0x20 # define IPOPT_DEBMEAS 0x40 # define IPOPT_RESERVED2 0x60 # define IPOPT_EOL 0 /* end of option list */ # define IPOPT_NOP 1 /* no operation */ # define IPOPT_RR 7 /* record packet route */ # define IPOPT_TS 68 /* timestamp */ # define IPOPT_SECURITY 130 /* provide s,c,h,tcc */ # define IPOPT_LSRR 131 /* loose source route */ # define IPOPT_SATID 136 /* satnet id */ # define IPOPT_SSRR 137 /* strict source route */ /* * Offsets to fields in options other than EOL and NOP. */ # define IPOPT_OPTVAL 0 /* option ID */ # define IPOPT_OLEN 1 /* option length */ # define IPOPT_OFFSET 2 /* offset within option */ # define IPOPT_MINOFF 4 /* min value of above */ /* * Time stamp option structure. */ struct ip_timestamp { uchar_t ipt_code; /* IPOPT_TS */ uchar_t ipt_len; /* size of structure (variable) */ uchar_t ipt_ptr; /* index of current entry */ # ifdef _BIT_FIELDS_LTOH uchar_t ipt_flg:4, /* flags, see below */ ipt_oflw:4; /* overflow counter */ # else uchar_t ipt_oflw:4, /* overflow counter */ ipt_flg:4; /* flags, see below */ # endif union ipt_timestamp { n_long ipt_time[1]; struct ipt_ta { struct in_addr ipt_addr; n_long ipt_time; } ipt_ta[1]; } ipt_timestamp; }; /* flag bits for ipt_flg */ # define IPOPT_TS_TSONLY 0 /* timestamps only */ # define IPOPT_TS_TSANDADDR 1 /* timestamps and addresses */ # define IPOPT_TS_PRESPEC 2 /* specified modules only */ /* bits for security (not byte swapped) */ # define IPOPT_SECUR_UNCLASS 0x0000 # define IPOPT_SECUR_CONFID 0xf135 # define IPOPT_SECUR_EFTO 0x789a # define IPOPT_SECUR_MMMM 0xbc4d # define IPOPT_SECUR_RESTR 0xaf13 # define IPOPT_SECUR_SECRET 0xd788 # define IPOPT_SECUR_TOPSECRET 0x6bc5 /* * Internet implementation parameters. */ # define MAXTTL 255 /* maximum time to live (seconds) */ # define IPFRAGTTL 60 /* time to live for frags, slowhz */ # define IPTTLDEC 1 /* subtracted when forwarding */ # define IP_MSS 576 /* default maximum segment size */ # ifdef __cplusplus } # endif # endif /* _NETINET_IP_H */ # endif /* DEFINE_IP_H_ */ */- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
or i can set up other.
# define IP4_ADDR(ipaddr, a,b,c,d) ipaddr = htonl((((alt_u32)(a & 0xff) << 24) | ((alt_u32)(b & 0xff) << 16) | ((alt_u32)(c & 0xff) << 8) | (alt_u32)(d & 0xff))) mus i can do now? i'm confuse.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What does it say when you run the web server example?
In the project you should have a file with two functions that are called by the IP stack to set up the MAC and IP addresses.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
okey.but i cannot...
i write a code for set up IP addresss. it cannot run. How must i declare for this code? that's : Ip address? example: i want to declare?????? i need a code for this. :confused::confused::(:(- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What you posted are definitions, not code that actually set up the address.
What software project did you use? Have a look at the network_utilities.c file, there is a function called get_ip_addr(). The actual IP address to use is declared in a header file (web_server.h for the web server example).- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What's up?
I'm looking forward to receiving any the question. And In the meantime, I tried to review this problem. But there're so numerous for my doing. In summary, The most of different to me that's I cannot define IP address on DEVELOPMENT KIT(CYCLONE III). I wish that anybody will help me!! thanks for your helping.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Did you read my last answer?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, I did. and Here this code I found.
* get_ip_addr() * * This routine is called by InterNiche to obtain an IP address for the * specified network adapter. Like the MAC address, obtaining an IP address is * very system-dependant and therefore this function is exported for the * developer to control. * * In our system, we are either attempting DHCP auto-negotiation of IP address, * or we are setting our own static IP, Gateway, and Subnet Mask addresses our * self. This routine is where that happens. */ int get_ip_addr(alt_iniche_dev *p_dev, ip_addr* ipaddr, ip_addr* netmask, ip_addr* gw, int* use_dhcp) { IP4_ADDR(*ipaddr, IPADDR0, IPADDR1, IPADDR2, IPADDR3); IP4_ADDR(*gw, GWADDR0, GWADDR1, GWADDR2, GWADDR3); IP4_ADDR(*netmask, MSKADDR0, MSKADDR1, MSKADDR2, MSKADDR3); # ifdef DHCP_CLIENT *use_dhcp = 1; # else /* not DHCP_CLIENT */ *use_dhcp = 0; printf("Static IP Address is %d.%d.%d.%d\n", ip4_addr1(*ipaddr), ip4_addr2(*ipaddr), ip4_addr3(*ipaddr), ip4_addr4(*ipaddr)); # endif /* not DHCP_CLIENT */ /* Non-standard API: return 1 for success */ return 1; } So, Dynamic IP or static IP? And I'm really understand clearly how to create code from this program.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It depends on define.
Use# undef DHCP_CLIENT in the beginning of the file for static IP or# define DHCP_CLIENT for DHCP.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
those defines are in a header file, just as I said in my post on top of this page. You can enable or disable DHCP with the DHCP_CLIENT definition, and if you want a static IP, change the defines for IPADDR0..3 in that same header file.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Daixiwen!
I had done! I use DHCP for this problem. But How to know IP_address, Mean that, I want to ping "IP_address" from computer on Terminal window and then at the moment the signal relay and display on the Terminal Terminal? How ?- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The Interniche stack says in the console what IP address it is using. Just ping that one.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How to ping? You talk too general. I cannot be images!? more clearly? about ping IP?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I don't understand what you are saying... You just said you wanted to ping the card from a terminal window. Don't you know how to do that?
The embedded application will say its IP address in the console. You can just recopy it when you type the ping command in the terminal.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Of course, That's I want to interface between on Board(Development kit) Cyclone III's Ethernet and a the other computer via Cable. And To solve this problem. I must have programmed to create a IP address and then from a computer(is connected with Ethernet via the cable). Then, I open the Terminal(DOS). typing "cmd" command and then "ping" IP_address(this address had programmed) and if the system rely ....... and display on the terminal is ok?????????????????????????
Thanks for your many helping:(
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page