[信息与通信]etc-2 nios开发平台使用说明

上传人:自*** 文档编号:80054733 上传时间:2019-02-18 格式:DOC 页数:66 大小:5.99MB
返回 下载 相关 举报
[信息与通信]etc-2 nios开发平台使用说明_第1页
第1页 / 共66页
[信息与通信]etc-2 nios开发平台使用说明_第2页
第2页 / 共66页
[信息与通信]etc-2 nios开发平台使用说明_第3页
第3页 / 共66页
[信息与通信]etc-2 nios开发平台使用说明_第4页
第4页 / 共66页
[信息与通信]etc-2 nios开发平台使用说明_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《[信息与通信]etc-2 nios开发平台使用说明》由会员分享,可在线阅读,更多相关《[信息与通信]etc-2 nios开发平台使用说明(66页珍藏版)》请在金锄头文库上搜索。

1、ETC-2 FPGA & NIOS使 用 说 明 书武汉大学电工电子基地liqing_15902795559目 录第一章 概 述21.1 ETC-2 FPGA&NIOS板描述21.2 ETC-2 FPGA&NIOS板性能指标2第二章 ETC-2 FPGA&NIOS工作原理和资源配置32.1工作原理框图32.2 工作原理42.3 资源配置5第三章 FPGA底层驱动和示例实验73.1 旋转编码开关73.2 键盘扫描9第四章 NIOS 入门124.1 NIOS软核工程的建立124.1.1 SOPC的开发124.1.2 NIOS开发环境264.2 LED流水灯实验274.3 PIO 中断实验334.4

2、 定时器中断实验36第五章 附录415.1 液晶接口介绍4165第一章 概 述1.1 ETC-2 FPGA&NIOS板描述ETC-2 FPGA & NIOS 是一块包含FPGA,SDRAM,SRAM和串并行FLASH片上最小系统板,既可以单独学习FPGA的开发,更可以在FPGA中嵌入NIOS软核形成SOPC,该评估板不仅适合刚开始学习FPGA开发的人员,也适用于有一定开发经验的初学者。ETC-2为6层PCB,工作稳定,接口丰富,设计灵活,是FPGA开发人员的得力助手。评估板上配备有Altera的Cyclone III系列FPGA EP3C16F484,根据不同的使用场合,可以将芯片换成Cycl

3、one III的其它容量的FPGA。除此之外,系统板还配有320*240的超大液晶显示屏与旋转编码开关,结合6个独立按键可完美完成人机交互。除了SDRAM,SRAM,FLASH所用IO口,其他IO口均全部引出,分布在系统板的两侧,共 4*32个,拥有丰富的扩展能力。系统板使用5V,1A的DC-DC电源供电,经LDO稳压芯片后分出3.3V,2.5V,1.8V共板上芯片使用。整板带液晶屏电流大约为300-600mA,功耗较大。在不考虑功耗的情况下,本系统板性能优秀,能满足绝大部分的实验及设计需要。1.2 ETC-2 FPGA&NIOS板性能指标1 片上晶振为50MHz,选择此晶振的目的是考虑到FP

4、GA的高速数据处理及灵活的倍频分频能力,同时兼顾了NIOS软核的CPU主频,使用时尽量将片上最高时钟频率控制在100MHz之内,噪声较小。2 FPGA为EP3C16F484,该FPGA有15408个LE,4个加强型PLL,516096Bist的RAM资源。该芯片为C8级别的,工作频率最高可以超过300MHz。详细参数可参见Cyclone III数据手册。3 FPGA配置芯片为EPCS4,可直接JTAG烧写,据说烧写次数可上千次,直接通过USB下载器烧写即可。4 板上自带4个独立按键,2个SW,扩展板上带2个独立按键,1个旋转编码开关,此外系统板可以外接4*4的矩阵键盘。5 LCD为点阵型LCD

5、,大小为320*240,也可显示图形和汉字,详细会在后面提及。6 外围接口:左右分别 2*2的扩展接口,每个接口共40针,包含2个5V电源,2个3.3V电源,4个GND和32个可编程IO口。下方用有10针的键盘扩展接口,包含1个3.3V电源和1个GND,8个通用IO口。同时还包含1个时钟输出SMA,1个时钟输入SMA。7 电源方面,请参看1.1 ETC-2 FPGA&NIOS板描述。第二章 ETC-2 FPGA&NIOS工作原理和资源配置2.1工作原理框图图21为ETC-2 FPGA&NIOS板的功能框图。该评估板主要包括电源、FPGA、FPGA配置芯片EPCS、AS接口、JTAG接口、SDR

6、AM、SRAM、FLASH、键盘和SAM输出等。图2-1 图22为ETC-2 FPGA&NIOS板的实物对照图。图2-22.2 工作原理 ETC-2 FPGA&NIOS板设计思想主要是利用NIOS软核的配置灵活性和FPGA的高速特性来综合起来,使得整个板子可以满足不同场合、不同层次的需求。NIOS软核主要负责复杂的运算(例如开方、乘方、对数等FPGA较难实现的运算)和控制,所谓的控制,一方面是软核直接控制外部电路,另一方面是在FPGA内部自己来写时序电路,满足软核的读写等时序,从而实现软核与FPGA的通信和对外围芯片的控制。2.3 资源配置 本节描述ETC-2 FPGA&NIOS板的主要元件配

7、置及其操作,提供关于外部接口的说明。ETC-2 FPGA&NIOS包括以下8个主要逻辑模块:1. 电源模块2. FPGA主芯片3. FPGA配制芯片4. SDRAM芯片5. SRAM芯片6. FLASH芯片7. 液晶显示模块8. 扩展接口1. 电源模块ETC-2 FPGA&NIOS板的电源由专用5V电源供给,EVM板上FPGA的电源分别为3.3V,2.5V,1.8V,是用专用电源芯片转换得到,电源的输入电流最大1A,因为大容量的FPGA在大负荷和资源使用较多时需要的电流较大,此电源的功率可以满足开发人员的正常使用,不会出现功率不够而是芯片无法正常工作的情况。2. FPGA主芯片FPGA主芯片是

8、Altera公司的Cyclone III系列的EP3C16F484C8,该芯片的主要特征如下:1) 15408个逻辑单元2) 516096Bits RAM or ROM3) 4个数字PLL4) 347个可编程I/O口5) 最高工作时钟可到300MHz以上6) 通过JTAG接口实现在系统配置9) IO口最大承受3.3V(使用时务必注意电平的转换)10) 核心供电电压1.8V,I/O缓冲供电电压2.5V,3.3V可编程3. FPGA配置芯片该系统板所使用的FPGA配置芯片为Altera公司的EPCS4,该芯片的主要特征如下:1) 3.3V在系统可编程2) 可重复编程上千次次左右3) 串行ROM容量

9、约为4MBits4. SDRAM芯片该系统板使用的SDRAM芯片为ISSI公司的IS42S16400,4Banks,每Bank容量为16MBits,共64MBits,容量足够大,开发人员可随意使用。5. SRAM芯片 该系统板使用的SRAM芯片为ISSI公司的IS61LV25616,数据位宽为16位,总容量为256K,可用于某些需要高速缓存的系统中。6.FLASH芯片该系统板外扩了FLASH芯片S29AL032D,容量为32MBits,当系统需要掉电储存信息时可使用。7.液晶显示模块EVM板上配备的LCD为点阵型320*240的LCD,可以显示30行40个字符或数字,还可显示图形和汉字。8.

10、扩展接口 外扩接口在前文中已介绍,请参看1.2.6。 第三章 FPGA底层驱动和示例实验3.1 旋转编码开关一 基本原理 利用旋转编码开关左右旋转时,上升沿与下降沿的不同时产生来区分旋转的方向。将时钟分频后进行计数进行延时判断电平高低得到结果。二 代码示例旋转编码模块代码如下(Verilog HDL)/*function:3*3 int module;time:2011-8-12 16:30;guide:int rising edge read;*/module knobswitch(input clk, input A, input B, input C, output mid, outpu

11、t reg intl, output reg intr);reg out;reg15:0 count;reg 1:0state;assign mid=A;always (posedge clk)begin count=count+1b1; if(count=9999) out=1b0; if(count=19999) begin out=1b1; count=16h0000; endendalways (posedge out)begin if(B) begin intr=1b0; intl=1b0; state=2b00; end else case(state) 0:begin state

12、=2b01; end 1:if(C) begin intr=1b1; state=2b10; end else begin intl=1b1; state=2b10; end 2:begin state=2b11; end 3:begin state=state; end ii endmodule代码说明:第一个always块对输入时钟进行分频,作为延时的时钟。第二个always块对输入信号进行分析,得到旋转方向。旋转编码开关一共有三个输入,其中一个为独立按键,另外2个为旋转控制。根据旋转的方向,产生左转或者右转的中断,软核根据中断进行相应的处理即可。3.2 键盘扫描i 基本原理键盘扫描的原理

13、很简单,由于该板上的键盘为4*4键盘,那么我们在进行键盘扫描的时候,可以采用如下方法:1首先置4行全部为高电平,4列全部为低电平,此时如果有按键按下,那么对应的该键所在的行的电平将会被拉低。2读取4行的值,如果读进来的值不是全部为高电平,那么就说明其中至少有一行是低电平,也就是说有按键按下。记下此时的行值,如KC。 3置4行全部为低电平,4列全部为高电平,通理,如果有按键按下,那么对应的该i的列将会被拉低。 4读取4列的置,如果读进来的值不是全部为高电平,i,记下此时的列值,如KR。以上4步实际上就完成了一次完整的键盘扫描和i读取,得到KC和KR两个行和列的扫描值,合并这两个值,就可以得到一个

14、完整的键盘扫描值。再根据扫描值判断键值,键盘扫描就这么简单!二 代码示例 键盘扫描模块代码如下(Verilog HDL) /*i4*4 keyboard read module;time:2011-3-22 16:30;guide:int rising edge read;*/module ScanKey(clk,Dout,KC,KR,INT);input clk; /Clock signal of the moduleinout 3:0 KC; /Columns of 4X4 KeyBoardinout 3:0 KR; /Rows of 4X4 KeyBoardoutput 7:0 Dout; /Output the numeber of the key output INT; /Interrupt signal reg3:0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号