硬件平台:ZedBoard
开发环境:XPS + ISE
*** 作系统:WinXP SP3
一直说要研究官方的例子XAP792,也确实在断断续续地学习着,现在硬件基本搞明白了,在公司也已经做出了测试画面。在搭建硬件平台的时候碰到了一些问题,本文要探讨的是这些问题当中比较重要的一个:如何在XPS中调用HDL语言编写的模块。
在网上搜索“XPS ISE 协同工作”相关资料的时候,搜到过这样的说法:
------------------------------------------------------------------------------------------
为了和ise协同工作,edk和ise也是有两种结合方式:
(1) ise中添加处理器,处理器结构部分会自动在xps中运行配置,此时fpga作为顶层模块。
(2) 输出edk设计到ise。当在xps中产生网表和比特流后,可以运用命令project opTIons,选择export to project navigator.生成一个 system.ise 工程。注意有两个文件.bit和system.bmm文件。此时,需要在ise软件中重新打开工程,然后综合布局布线生成.bit硬件文件和.bmm文件,然后再下载到fpga。而elf不变下载到fpga。下载时,可以在ise中,把.bit和system_bd.bmm硬件部分下载以及把elf软件比特下载到fpga中即可。也可以在xps中下载硬件,此时只需利用命令xps菜单中的 import from project navigator 把两个文件复制一下到implenTIon文件夹下即可。
------------------------------------------------------------------------------------------
可能是由于版本更新的问题,我在14.2版本的XPS和ISE中不知道怎么实现上述两种 *** 作,最终是这样完成设计的:
step1:在ISE中设计所需要的逻辑模块;
step2:利用XPS的IP核向导,将ISE所做的设计导入到XPS,生成一个新的IP核;
step3:添加该IP核,和其他模块组合,完成硬件平台的搭建。
下面给一个例子吧,还是以VGA画面测试为例,这次和以往不同的是设计逻辑时使用了参数,通过改变参数改变模块的输出,避免了修改HDL代码的弊端。这也做也是有原因的:ISE设计完毕并导入至XPS之后,再修改HDL代码的时候,XPS检测不到相应的改动。有同病相怜的网友在网上提问得到这样的回答:“用户自定义ip核最好在wizards里面修改,因为会涉及到很多配置文件,你可能没有修改完全。”这个问题我还没有深入研究,明天弄个带DVI接口的显示器回来之后再搞XAP792,应该还要面对这个问题,到时候再摸索解决办法。
以前都是使用PlanAhead搭建整个硬件平台,但是由于实质性的工作还是由XPS完成,所以,我就抛弃了PlanAhead,最近一直在用XPS搭硬件,完了导出至SDK就可以了。
ISE部分:
这一部分我就不多说了,前面已经给过一个利用PL实现简单VGA测试的教程了, *** 作是一样的。ISE主要是用来验证所设计的模块是否存在逻辑错误和语法、语义错误。下文我直接拿一个验证无误的vtc.v做示例。
XPS部分:
其实 *** 作方法和使用PlanAhead调用XPS是一样的,由于是第一次这样做,仍然记录一次详细的 *** 作流程。
1、新建工程
1.1、打开XPS:d出下图所示的引导画面:
1.2、"the Base System Builder wizard " 创建一个新的XPS工程:点击上图红色方框中的新建工程连接,d出下图所示的对话框:
1.3、设置工程文件的保存路径,完毕后点击OK,进入下一步:
1.4、选择开发板,完了点击Next,d出的是外设配置界面,如下图所示:
这里我们没有用到开关或是LED,所以把两个都删掉:选中之后,点击Remove即可,设置完毕后点击Finish,出现下图所示的画面:表示正在生成各种工程文件。
1.5、接下来就来到了无比熟悉的界面:
至此,工程建立完成。
2、导入逻辑模块
2.1、菜单Hardware,选择Create or Import Peripheral
d出新建/导入外设向导,如下图所示:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)