picoblaze流水灯参考设计方案.docx

上传人:b****6 文档编号:15601808 上传时间:2023-07-06 格式:DOCX 页数:13 大小:440.29KB
下载 相关 举报
picoblaze流水灯参考设计方案.docx_第1页
第1页 / 共13页
picoblaze流水灯参考设计方案.docx_第2页
第2页 / 共13页
picoblaze流水灯参考设计方案.docx_第3页
第3页 / 共13页
picoblaze流水灯参考设计方案.docx_第4页
第4页 / 共13页
picoblaze流水灯参考设计方案.docx_第5页
第5页 / 共13页
picoblaze流水灯参考设计方案.docx_第6页
第6页 / 共13页
picoblaze流水灯参考设计方案.docx_第7页
第7页 / 共13页
picoblaze流水灯参考设计方案.docx_第8页
第8页 / 共13页
picoblaze流水灯参考设计方案.docx_第9页
第9页 / 共13页
picoblaze流水灯参考设计方案.docx_第10页
第10页 / 共13页
picoblaze流水灯参考设计方案.docx_第11页
第11页 / 共13页
picoblaze流水灯参考设计方案.docx_第12页
第12页 / 共13页
picoblaze流水灯参考设计方案.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

picoblaze流水灯参考设计方案.docx

《picoblaze流水灯参考设计方案.docx》由会员分享,可在线阅读,更多相关《picoblaze流水灯参考设计方案.docx(13页珍藏版)》请在冰点文库上搜索。

picoblaze流水灯参考设计方案.docx

picoblaze流水灯参考设计方案

基于picoblaze的流水灯参考设计

前言

我写下这篇文章,旨在一步一步教初学者如何开始第一个picoblaze嵌入式设计,让初学者了解picoblaze原理与架构的同时,掌握其开发环境与流程。

刚接触的朋友,只要照着做,肯定可以做出来,如果遇到问题,可以把问题发到我邮箱:

threegn@。

第一步:

PicoBlaze开发包KCPSM3的下载:

1、打开Xilinx官方网站

2、在新打开的页面中,在“搜索IP核”框中,输入picoblaze,点击“搜索”,

3、然后点击“PicoBlaze8位微控制器 ”,

4、点击“下载”转到登录页面,

5、如果你已经有Xilinx网站的账号,则直接输入账号与密码,点击“signin”。

如果还没有Xilinx网站的账号,则点右边的“Createaccount",然后按照它的提示一步一步完成注册(不会注册的朋友自己想办法),再回到刚才的登录页面点击“signin”,

6、进入picoblazedownload页面,在picoblazeType(s)下拉列表中选择PicoBlazeforSpartan-3(E/L),Virtex-4,Virtex-II(Pro)FPGAs,确认其他个人信息没有问题后,再点“下一步”,

CO2

7、点击“我接受”,

8、在弹出来的对话框中,选择“是”或者“否”都可以,没有区别。

9、然后再点一次“我接受”,在接下来的页面中,点击“PicoBlazeLounge”。

10、选择第五行的PicoBlazeforSpartan-3,Virtex-4,Virtex-IIandVirtex-IIProFPGAs,点击右边的“Downloaddesignfiles”。

然后按照提示把文件保存好。

第二步,学会picoblaze的IP核KCPSM3的使用

下载完成后,我们把刚才下载的KCPSM3.ZIP文件解压

找到KCPSM3_Manual.pdf,看文档可以发现,从第1到12页,都是在讲picoblaze的原理功能特性等方面的内容,然后13,14两页是讲picoblaze结合VHDL语言的使用,第15页是讲picoblaze结合Verilog语言的使用,再看16页到39页,全部是讲picoblaze的汇编指令,由于今天是入门教程,我们先跳过这前面的39页,直接从40页仔细看起,按照上面所说的一步一步操作。

1,把Assembler文件夹下的KCPSM3.EXE,ROM_form.vhd,ROM_form.v和ROM_form.coe这四个文件复制到我们的工作目录下,为方便讲解,我们创建一个临时工作目录,如:

D:

\Xilinx\pico_led。

2,用记事本或者文本文档编辑以下内容,并以“.psm”扩展名保存,我们这里取名为picoled.psm。

start:

loads2,aa;

led:

outputs2,02;

loads0,ff;

loop1:

loads3,10;

loop2:

loads1,ff;

loop3:

subs1,01;

adds1,01;

subs1,01;

jumpnz,loop3;

subs3,01;

jumpnz,loop2;

subs0,01;

jumpnz,loop1;

xors2,ff;

jumpled;

3,打开系统的“开始”菜单,点击“运行”。

4,在弹出来的对话框中,输入“cmd”。

5,输入命令D:

6,输入cdXilinx\pico_led

7,输入kcpsm3picoled.psm

8,成功后,在工作目录下,会生成很多的文件,其中有PASS1~PASS5,否则就没有成功。

第三步、建立ISE工程,并综合仿真,下载调试

1,在VHDL文件夹下,找到KCPSM3.VHD文件,同样复制到工作目录下

2,新建一工程,取名为pico_led。

然后,输入以下顶层源文件。

libraryIEEE;

useIEEE.STD_LOGIC_1164.ALL;

useieee.std_logic_arith.all;

useieee.std_logic_unsigned.all;

entitypico_ledis

Port(clk:

inSTD_LOGIC;

reset:

inSTD_LOGIC;

led:

outSTD_LOGIC_VECTOR(7downto0));

endpico_led;

architectureBehavioralofpico_ledis

componentkcpsm3is

Port(address:

outstd_logic_vector(9downto0);

instruction:

instd_logic_vector(17downto0);

port_id:

outstd_logic_vector(7downto0);

write_strobe:

outstd_logic;

out_port:

outstd_logic_vector(7downto0);

read_strobe:

outstd_logic;

in_port:

instd_logic_vector(7downto0);

interrupt:

instd_logic;

interrupt_ack:

outstd_logic;

reset:

instd_logic;

clk:

instd_logic);

endcomponent;

componentpicoledis

Port(address:

instd_logic_vector(9downto0);

instruction:

outstd_logic_vector(17downto0);

clk:

instd_logic);

endcomponent;

signaladdress:

std_logic_vector(9downto0);

signalinstruction:

std_logic_vector(17downto0);

signalport_id:

std_logic_vector(7downto0);

signalout_port:

std_logic_vector(7downto0);

signalin_port:

std_logic_vector(7downto0);

signalwrite_strobe:

std_logic;

signalread_strobe:

std_logic;

signalinterrupt:

std_logic:

='0';

signalinterrupt_ack:

std_logic;

signalreset_r:

std_logic;

signalcnt:

std_logic_vector(4downto0);

signalclk_r:

std_logic;

begin

processor:

kcpsm3

portmap(address=>address,

instruction=>instruction,

port_id=>port_id,

write_strobe=>write_strobe,

out_port=>out_port,

read_strobe=>read_strobe,

in_port=>in_port,

interrupt=>interrupt,

interrupt_ack=>interrupt_ack,

reset=>reset_r,

clk=>clk);

reset_r<=notreset;

program:

picoled

portmap(address=>address,

instruction=>instruction,

clk=>clk);

process(write_strobe,out_port)

begin

ifwrite_strobe='1'then

led<=out_port;

endif;

endprocess;

endBehavioral;

2,把KCPSM3.VHD,还有PICOLED.VHD添加进工程,然后结合自己的开发板或者学习板,就可以综合实现,下载与调试了。

写在最后:

picoblaze是xilinx官方提供的三大嵌入式IP核之一,掌握它的开发流程,只是FPGA嵌入式学习的第一步,对于刚接触FPGA,或者刚接触FPGA嵌入式的朋友,一定要在你自己的板子上调试通过,如果手上还没有开发板,可以到我朋友的淘宝网店看一下:

一、质量与服务非常好,已经有来自全国各地的好几百人买了他的学习板,形成了一个的小小社区,无论你有什么问题,只要在他群里一问,一般马上就有人回答。

二、资源丰富,价格最低。

其实买东西,就要看他的扩展性和资源,同时还有价格,在这方面,他的板子,是整个淘宝网上扩展性最强,价格最低的,对于经济的紧张的朋友来说,这是不二之选。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2