Lab-2-NIOS_demo
所属分类:嵌入式/单片机/硬件编程
开发工具:VHDL
文件大小:9972KB
下载次数:4
上传日期:2013-11-15 10:16:20
上 传 者:
kaximodo
说明: 关于Nios的开发例程。(偶是新人 向大家多多学习!)
(This is the demo about Nios II)
文件列表:
Lab 2 NIOS_demo\App\Putty.rar (233755, 2013-05-30)
Lab 2 NIOS_demo\App (0, 2013-05-31)
Lab 2 NIOS_demo\NIOS_demo\.qsys_edit\filters.xml (69, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\.qsys_edit\preferences.xml (663, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\.qsys_edit (0, 2013-05-31)
Lab 2 NIOS_demo\NIOS_demo\assignment_defaults.qdf (56066, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\easyGX_tse.flash-settings (4174, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\flash\nios2-flash-programmer.exe (270448, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\flash\NIOS_SOC_epcs_flash_controller.flash (1080468, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\flash (0, 2013-05-31)
Lab 2 NIOS_demo\NIOS_demo\full.sdc (890, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\full.sdc.bak (150, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\FULL_SYS.qip (58746, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\FULL_SYS.v (755956, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\greybox_tmp\cbx_args.txt (1580, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\greybox_tmp (0, 2013-05-31)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\pll_eth.qip (0, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_avalon_sc_fifo.v (32228, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_avalon_st_pipeline_base.v (4978, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_arbitrator.sv (9460, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_burst_adapter.sv (46851, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_burst_uncompressor.sv (11576, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_master_agent.sv (10372, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_master_translator.sv (16807, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_slave_agent.sv (22804, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_slave_translator.sv (16048, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_traffic_limiter.sv (15517, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_merlin_width_adapter.sv (52691, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_reset_controller.sdc (1179, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_reset_controller.v (3600, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_reset_synchronizer.v (3569, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tristate_controller_aggregator.sv (9390, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tristate_controller_translator.sv (7099, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tse_align_sync.v (5944, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tse_alt2gxb_arriagx.v (20936, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tse_alt2gxb_basic.v (21836, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tse_alt2gxb_gige.v (26480, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tse_alt2gxb_gige_wo_rmfifo.v (26566, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tse_alt4gxb_gige.v (76146, 2013-05-30)
Lab 2 NIOS_demo\NIOS_demo\FULL_SYS\synthesis\submodules\altera_tse_alt4gxb_gige_wo_rmfifo.v (76182, 2013-05-30)
... ...
Readme - Simple Socket Server Software Example
DESCRIPTION:
A Simple Socket Server that controls development board LEDs. This software
application is targeted for TSE design having RGMII interface media between
Ethernet MAC and Ethernet Phy.
RGMII (Reduced Gigabit Media Independent Interface) is intended to be an
alternative to GMII. The principle objective of RGMII is to reduce the number
of pins from 22 (GMII) down to 12 in a cost-effective manner. RGMII interface
require a 1.5 to 2ns delay (90 degree phase shift) on the transmitted clock
over the data bus. This timing requirement can be achieved through a PCB trace
delay, or optionally of introducing the delay on-chip at the physical layer
transceiver chip. This example software include a configuration file to enable
the on-chip delay method.
Requirements:
-RTOS Type - MicroC/OS-II
-Software Component - NicheStack TCP/IP Stack - Nios II Edition
-Period System Timer - SYS_CLK_TIMER
PERIPHERALS USED:
This example exercises the following peripherals:
- Ethernet MAC
- PIO, 8-bit output (named "led_pio" in SOPC Builder)
- PIO, 16-bit output (named "seven_seg_pio" in SOPC Builder)
- STDOUT device (UART or JTAG UART)
SOFTWARE SOURCE FILES:
This example includes the following software source files:
- iniche_init.c: Contains main() and SSSInitialTask() to initialize NicheStack
and then create the other tasks once network has been properly initialized.
Tasks which will use sockets, such as the SSSSimpleSocketServerTask() in this
example, must be created with TK_NEWTASK. All other tasks can be created by directly
calling the MicroC/OS-II API to create a task, i.e. OSTaskCreateExt().
- simple_socket_server.c: Implementation of a simple_socket_server including all necessary sockets
calls to handle a single socket connection & process received commands.
- network_utilities.c: Contains MAC address and IP address routines to
manage addressing. These are used by NicheStack during initialization, but are
implementation-specific (you set your MAC address to whatever you want.. or read
it from your own special non-volatile memory.
- network_utilities.h: Contains prototype for function get_board_mac_addr().
- led.c: Contains tasks to manage board LED commands and update LED displays.
LEDManagementTask interprets commands, and toggles the row of 8 LEDS or signals the
LED7SegLightshowTask in response to commands received from the host running telnet.
The LEDManagementTask reads data from a MicroC/OS-II SSSLEDCommandQ Queue which
receives its data from the SSSSimpleSocketServerTask. LED7SegLightshowTask controls the
7-segment display.
- simple_socket_server.h: Definitions for the entire example application.
- alt_error_handler.h: Definitions for 3 error handlers, one each for MicroC-OS/II, Network,
and Simple Socket Server Application.
- alt_error_handler.c: Implementation for 3 error handlers, one each for MicroC-OS/II,
Network, and Simple Socket Server Application.
- tse_my_system.c: Contain function to enable RGMII timing mode driver configuration.
BOARD/HOST REQUIREMENTS:
Altera CycloneIII Development Board with FPGA EP3C120F780 device on board, which exercise RGMII
interface to the Ethernet Phy will require this software example for its Ethernet functionality.
This example requires an Ethernet cable connected to the development board's
RJ-45 jack, and a JTAG connection with the development board. If the host
communication settings are changed from JTAG UART (default) to use a
conventional UART, a serial cable between board DB-9 connector and the host is
required.
If DHCP is available (and enabled in the Software component configuration page, from
the BSP properties configuration), NicheStack TCP/IP Stack will attempt
to obtain an IP address from a DHCP server. Otherwise, a static IP address (defined in
Simple_Socket_Server.h) will be assigned after a DHCP timeout.
ADDITIONAL INFORMATION:
This is an example socket server using NicheStack TCP/IP Stack on MicroC/OS-II. The server
implements simple commands to control board LEDs through a separate MicroC/OS-II
task. It is in no way a complete implementation of a telnet server.
A good introduction to sockets programming is the book "Unix Network Programming" by
Richard Stevens. Additionally, the text "Sockets in C", by Donahoo & Calvert, is a concise
& inexpensive text for getting started with sockets programming.
This example will not run on the Instruction Set Simulator (ISS).
Once the simple socket server example is running and has obtained an IP address (shown
in the terminal window of Nios II Software Build Tools for Eclipse),
you can connect to it over a network by typing the
following command in a command shell on a development host:
telnet 30
This command will try to connect to the Simple Socket Server using port 30.
近期下载者:
相关文件:
收藏者: