第一步:硬件部分设计
进行Qsys 系统设计
1.点击 Tools 下拉菜单
(2)启动 Platform Designer 后,点击 File-save
(3)鼠标放在 clk_0 处点击右键 Edit 或是双击 clk_0 元件对Clock 进行时钟设置,设 为为 50M
(4)添加CPU和外围器件。从PD的元件池中选择以下元件加入到当前设计的系统中:
在“component library”标签栏中找到“Nios II Processor”后点击Add(在查找窗口 输出 nios 即可)。一切按照默认设置即可
将 cpu 的 clk 和 reste_n 分别与系统时钟 clk_0 的 clk 和 clk_reset 相连
添加 jtag uart 接口。jtag uart 接口是Nios II 嵌入式处理器新添加的接口元件,通过 内嵌在 Intel FPGA 内部的 JTAG 电路,可以实现在 PC 主机与Qsys 系统之间进行串行字符
流通信。
从下图左侧”Component Library”标签栏中的查找窗口输入 jtag 找到”JTAG UART ”, 然后点击 Add。
保持默认设置改名字为jtag_uart
同样的找到”On-Chip Memory(RAM or ROM)”后点击 Add。在”Size”栏中的”Total memory size”窗口中输入 40960(即片上内存的大小为 40KB), 其余选项保持默认,点击 Finish。。在”Name” 列中将 onchip_memory2_0 改名为 onchip_ram。
如下图
添加 PIO接口
从”Component Library”标签栏中的查找窗口输入 pio 找到”PIO”后点击 Add。
确定以下选项:Width 为 8bits,Direction 选择 output,其余选项保持默认,点击 Finish。如下图所示。
添加片 System ID Peripheral 核
从下图左侧”Component Library”标签栏中的查找窗口输入 sys 找到” System ID Peripheral”后点击 Add。
保持默认选项,单击 Finish。
完成Qsys 设计的后续工作
(1)基地址分配:点击 PD主界面菜单栏中的”System”下的”Assign Base Addresses”。 如下图所示:
(2)分配中断号:在”IRQ”标签栏下点选”Avalon_jtag_slave”和 IRQ 的连接点就会 为”jtag_uart”核添加一个值为 0 的中断号。如下图所示:
(3)指定 NIos II 的复位和异常地址:从”System Contents”标签栏 双击建立好的 cpu 进入 Nios II Processor 的配置界面,配置 Reset Vector 和 Exception
Vector 为””onchip_ram.s1”,点击 Finish。
最终完成的连接图(完成后对照此图仔细检查,否则后面无法进行)
点击 Close 后关闭窗口后,再关闭 Platform Designer 主界面
在原理图(BDF)文件中添加 PD 生成的系统符号,在空白处双击将已生 成的 kernel
加入 Quartus II IP File 文件,为了以后编译成功,请务必将对应的 Quartus II IP File (.qip) 加入项目中。步骤如下:
点击Assignments-Settings ,添加kernel.qip 文件,如下图所示
在 kernel 模块内点击鼠标右键选取 Generate Pin for Symbol Ports 生成管脚。如 下图所示:
将管脚”inclk0”改名为 clock,管脚”reset_reset_n”改名为 reset_n, 管脚 out_led_export[7…0]改为 out_led[7…0]。
菜单里选择Assignments-device,然后如下图所示点击Device pin option
回到 Quartus II 主界面后编译项目。如下图所示,编译成功后,点击OK完成。
点击下图所指快捷键进入 Pin Planner 界面,
按照下图设置pin脚