基于Nios II 软核处理器的SD卡接口设计(一)
接口电路图 1.5 NiosII的构建过程 首先要考虑到的是使用什么样的Nios II,Nios II分为几个等级,有标准内核和高速内核。由于本系统对速度的要求并不高,设计时采用了标准的Nios II内核。在速度和所占用的资源方面具有比较好的折中。采用Altera公司的SOPC Builder工具来进行构建,生成一个Nios II的标准内核。 接着要对选中的Nios标准内核进行配置,这里要考虑的问题是如何如何分配片内存储器和片外存储器的使用。片内存储器的资源是很宝贵的,所以要先确定系统运行所需要的片内ROM或RAM,在满足性能的条件下,尽可能使用较少的片内存储器。 对于一个实际的系统,光有片内存储器一般是不够的,尤其是考虑到要进行嵌入式操作系统的移植,所以还要增加片外存储器。Niso II通过Avalon总线和片外存储器以及外部设备连接。外部存储器件的类型包括SRAM、SDRAM、DDR2、Flash等,外部设备包括UART串行口等。本设计采用SDRAM. 接着是添加PIO端口,定义输入输出端口,主要的目的是用于Nios II读取数字量。Nios II所采用的时钟和FPGA 的时钟密切相关,一般是通过锁相环PLL 把外部输入的时钟进行倍频之后再送给Nios II来作为主频使用,同时外部设备也使用时钟信号。外部时钟信号为25MHz,而经过倍频后为50MHz. 至此,主要的配置过程就结束了。但是还是需要配置如下部分: (1) 分配存储器和外部设备的基地址和中断请求优先级; (2) 设定NiosII处理器的启动地址,本设计把片内存储器设定为Nios II的启动地址。 (3) 在生成NiosⅡ系统时,可以选择生成Verilog语言还是VHDL 语言,本设计采用VHDL语言进行设计; (4) 最后生成的qsf文件,相当于整个工程的文件,但是关于配置管脚使用的部分,需要用户去生成。生成的方法可以在图形界面下配置,也可以通过写tcl文件的方法。写tcl文件的方法一般来讲,对于大型工程,还是比较方便的。 (5) 编译整个NiosⅡ系统,在Altera 提供的开发环境Quartus II 中进行编译。顶层设计文件可以使VHDL 也可以是原理图的形式。 (6) 采用JATG口进行下载,把生成的的SOF文件下载到FPGA里。 2系统软件设计 Altera公司为了用户方便使用Nios II来快速研制产品,提供了功能强大、易于使用的Nios II集成开发环境,与一般的嵌入式系统开发设计比较类似。在生成NiosII的过程中已经自动生成了需要使用的头文件(一般是C语言的头文件),同时一般外围设备的驱动程序也可以生成。对于嵌入式操作系统,可以使用用户自己裁剪的ucLinux内核也可以使用Altera提供的操作系统内核。本设计使用Altera公司提供的Nios II 9.0版本的开发环境。
SD 接口 设计 处理器 软核 Nios II 基于 相关文章:
- 对中国Linux标准战略与战术的思考(11-12)
- Linux与Unix二大操作系统编程的安全(04-08)
- 用NiosII搭建的固态盘设备系统(03-23)
- dsPIC33F系列DSC的 SD存储卡接口设计(01-05)
- μClinux下SDRAM数据交换区的生成和使用(06-04)
- 基于DSP的数码望远相机的研究与设计(03-28)