本帖最后由 jinyi7016 于 2016-10-15 16:32 编辑
自Altera在Quartus II10.1推出Qsys这个新工具,就对这个Qsys充满了好奇,起初只是简单的认为它只是SOPC Builder的简单升级,就简单地在界面上复杂化了一下,不过经过进一步学习发现,它还是很有“内涵”的。
在QuartusII11.0中就正式使用Qsys作为主要的SOPC工具,当然SOPC Builder还保留,可以通过tools->SOPC Builder打开,据说在12.0后就完全把SOPC builder去掉了。为了探究Altera到底对Qsys做了哪些改进,首先咱分别在SOPC Builder和Qsys中建了一个最小系统,只包含了几个主要组件:NiosII Processor、onchip_memory、jtag_uart和pio。
首先要新建一个工程,这里的步骤就省略了。
最后所建工程的信息如下:
接下来就是重头戏了,使用Qsys软件创建Qsys系统了。
菜单栏:Tools --> Qsys
如下就是Qsys的界面,这里已经默认添加了一个时钟IP核,任何一个系统时钟是必须要有的。
时钟频频是可以更改的,双击上面的“clk”进入如下的界面,可以更改频率为100MHz。点击“Finish”。
时钟配置好后,就要添加Nios II IP核了。
在Library中找到“Nios II Processsor”
双击“Nios II Processsor”,弹出配置向导。
在Core Nios II选项卡这里,选择Nios II/f,将选择上硬件运算。
再来配置“Caches and Memory Interfaces”。
这里要配置Instruction Master与Data Master的各自的Cache的大小与传输方式。这里将在后面再进行说明,这里先默认。
下一项是“Advanced Faetures”,在这一界面中,主要是中断、指令异常的配置。
对于“MMU and MPU Settings”这里也没有用到,忽略即可。
对于Jtag的配置,先选择 Level 1,后面用到时再更改。
点击“Finish”完成配置。
到此Nios II 核心就已经添加到Qsys中了,但是只有核心,一个系统是跑不起来的,学习单片机的时候都知道会有程序存储与数据存储区,这里也是一样的。 同样在Library中找到 On-Chip Memory(RAM or ROM ),双击添加。
这里ROM选择数据为32位,大小为10K。其他默认,点击“Finish”
同样的方法添加RAM为20K
添加Jtag UART组件,实现与PC的串口通讯。
找到组件,双击。
串口配置中数据buffer配置为64bytes。
点击“Finish”
添加System ID。双击。
这里可以更改ID,点击“Finish”
添加PIO组件,PIO为接收输入信号和输出信号提供了一种简易的方法。
在Library中找到PIO,双击组件。
此次添加的是一个输出端口。
再建一个PIO为输入功能,还要有上升沿中断功能,这个是要接按键的,按键的威廉希尔官方网站
决定了要在高电平触发。
到此所有的组件就添加完成了。
总结一下都添加了哪些组件。
1、时钟,是默认添加的。
2、Niso II
3、RAM
4、ROM
5、System ID
6、PIO输出
7、PIO输入