本帖最后由 jinyi7016 于 2016-10-15 16:33 编辑
自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。
上一篇添加了所需要的组件,但是名字都是软件默认的,看不去不够直观。
对于添加的组件是可以重命名的,右键在组件上。
更改后的所有组件如下图:
下面就要将各个组件进行连接。大体遵循如下规则:数据主端口连接存储器和外设元件,指令主端口只连接存储器元件。如果存储器类是IP核,最后的连接图如下:要说明的是,PIO黑体的那两个端口,要双击后,才会被命名成图中所示,默认下是与其他的一样的灰色。IRQ一栏的0、1也是要点击后才会出现,并不是连接好后自动出现的。
配置Niso II 复位与异常地址。
双击Niso II核
ExceptionAddress的设置要是0x20的倍数。
返回到Qsys的界面,还是会有很多的错误,有16个。这些错误怎么处理呢?
菜单栏:System --> Assign BaseAddresses可以看到错误已经没有了,若是还有,错误信息也是很明白的,参照上面的步骤进行更改。这时,可以看到Base的地址也都被自动分配了。
没有了错误就可以生成Qsys系统了。菜单栏:Generate –-> Generate…
再次点击“Generate”,弹出对话框,选择“Save”。输入名字,点击保存。
由于我们的这个系统比较简单,比较小,很快就会编译完成。
点击“Close”,我们的Qsys系统就算是创建完成了。