在使用FPGA时,有时会用到它做为主控芯片。对于习惯于单片机及C语言开发的人,使用FPGA做主控芯片,首先还是想到它的嵌入式软核功能。如果能够基于Microblze软核进行C语言程序的开发,相对于使用生疏的Verilog语言进行项目的开发,将会起到事半功倍的效果。

下面就如何使用ISE创建Microblaze软核,写一个简单的入门教程。教程以图片为主,辅以简单的文字进行说明。

我使用的是Xilinx Spartan 6系列的FPGA,开发环境为ISE13.3。

第一步 先创建一个ISE工程

工程名字为MicroblazeTutor。

ISE创建Microblaze软核(一)-LMLPHP

在这里根据自己的硬件平台进行选择对应的FPGA型号。根据自己开发习惯,选择是使用Verilog语言还是VHDL语言。

ISE创建Microblaze软核(一)-LMLPHP

点击完成,完成工程的创建。

ISE创建Microblaze软核(一)-LMLPHP

工程创建完成图。

ISE创建Microblaze软核(一)-LMLPHP

第二步 在工程中添加一个嵌入式软核

如图,右键点击,选择New Source。

ISE创建Microblaze软核(一)-LMLPHP

选择Embedded Processor(嵌入式软核),软核名字为mb_system。

ISE创建Microblaze软核(一)-LMLPHP

点击完成。

ISE创建Microblaze软核(一)-LMLPHP

第三步 进入软核创建向导

点击确认,进入软核创建向导。

ISE创建Microblaze软核(一)-LMLPHP

选择PLB system。PLB系统是旧版本的软核系统,相对操作更简单一些;AXI是新版的软核系统,有兴趣的话可以自己去研究。

ISE创建Microblaze软核(一)-LMLPHP

按向导点击下一步。

ISE创建Microblaze软核(一)-LMLPHP

这里会自动使用之前创建工程时设置的FPGA型号。

ISE创建Microblaze软核(一)-LMLPHP

选择单核,下一步。

ISE创建Microblaze软核(一)-LMLPHP

根据自己硬件平台的主时钟,选择对应的晶振频率。注意,系统时钟要选择晶振倍频后能够达到的频率。内存选择16KB。

ISE创建Microblaze软核(一)-LMLPHP

这是系统默认最精简的内核。

ISE创建Microblaze软核(一)-LMLPHP

通过Add Device选项添加如下图所示的外设:按键、LED、IIC、串口、定时器。也可以不要选这么多外设,添加最简单的串口即可。LED和按键只要选择1位数据位宽。

ISE创建Microblaze软核(一)-LMLPHP

下一步。

ISE创建Microblaze软核(一)-LMLPHP

系统内核的地址分配。

ISE创建Microblaze软核(一)-LMLPHP

点击OK,完成创建。

ISE创建Microblaze软核(一)-LMLPHP

转载:http://blog.sina.com.cn/s/blog_7d283bbb01011qrb.html

04-14 03:24