![Xilinx可编程逻辑器件设计与开发(基础篇)连载50:Spartan_第1页](http://file4.renrendoc.com/view/b25da8b50982198ec5046a040f0a5481/b25da8b50982198ec5046a040f0a54811.gif)
![Xilinx可编程逻辑器件设计与开发(基础篇)连载50:Spartan_第2页](http://file4.renrendoc.com/view/b25da8b50982198ec5046a040f0a5481/b25da8b50982198ec5046a040f0a54812.gif)
![Xilinx可编程逻辑器件设计与开发(基础篇)连载50:Spartan_第3页](http://file4.renrendoc.com/view/b25da8b50982198ec5046a040f0a5481/b25da8b50982198ec5046a040f0a54813.gif)
![Xilinx可编程逻辑器件设计与开发(基础篇)连载50:Spartan_第4页](http://file4.renrendoc.com/view/b25da8b50982198ec5046a040f0a5481/b25da8b50982198ec5046a040f0a54814.gif)
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Xilinx可编程逻辑器件设计与开发(基础篇)连载50:Spartan12.7PicoBlaze设计实例一、设计要求1.PICOBLAZE嵌入式系统,包括1个8位的方波输出口,一个驱动两位7段LED的输出口,一个时钟输入和一个中断输入。
2.在Spartan-3anstarter套件中实现。二、设计过程1.在ISE11.x中建立一个新的项目,项目名为kcpsm3_int_test,并加入源文件kcpsm3.vhd,这仅仅是一个PicoBlaze控制器核文件,读者可以根据自己的爱好选择不同的设计语言。2.编写PicoBlaze的汇编语言源程序,本例中的汇编源程序为int_test.psm,具体如下。;Interruptexample
;
CONSTANTwaveform_port,02;定义方波输出端口ID为02
CONSTANTcounter_port,04;定义中断计数器输出端口ID为04
CONSTANTsel_port,08;定义2位7段LED选择输出端口ID为08
CONSTANTpattern_10101010,AA;定义方波输出口初始值
CONSTANTini_sel,01;定义2位7段LED位选初始值为01
NAMEREGsA,interrupt_counter;将sA寄存重新命名为interrupt_counter
;
start:LOADinterrupt_counter,00;中断计数寄存器清零
LOADs2,pattern_10101010;将方波数据载入寄存器s2中
LOADsD,ini_sel;将位选值装载入寄存器sD中
ENABLEINTERRUPT;使能中断
;
drive_wave:OUTPUTs2,waveform_port;输出方波
OUTPUTsD,sel_port;输出LED位选
LOADs0,FF;延时
loop3:LOADs1,FF
loop4:SUBs1,01
ADDs1,01
SUBs1,01
JUMPNZ,loop4
SUBs0,01
JUMPNZ,loop3
XORs2,FF;方波值取反
XORsD,FF;位选值取反
JUMPdrive_wave
;
ADDRESS2B0;定义程序存储地址
int_routine:ADDinterrupt_counter,01;中断计数器加1
OUTPUTinterrupt_counter,counter_port;输出计数值
OUTPUTsD,sel_port;输出位选
LOADsF,FF;延时
loop1:LOADsE,FF
loop2:SUBsE,01
ADDsE,01
SUBsE,01
JUMPNZ,loop2
SUBsF,01
JUMPNZ,loop1
XORsD,FF
RETURNIENABLE;中断返回
;
ADDRESS3FF;中断入口地址
JUMPint_routine
3.将int_test.psm文件拷贝到Assembler目录下,运行DOS命令,进入
Assembler目录,运行如下命令:
kcpsm3int_test.psm>screen回车编译后Assembler目录中产生了一些新的文件,如图12-30所示。其中INT_TEST.VHD/INT_TEST.V文件为我们需要的文件,它就是PicoBlaze的程序存储器文件,将它加入到kcpsm3_int_test项目中。可以看到,生成的PROM文件名与汇编源程序的文件名相同。图12-30编译后Assembler目录文件其中screen文件为一个文本文件,编译过程记录在此文件中,如果源文件有错误,错误信息会在此文件中找到。4.建立一个顶层文件。在顶层文件中完成PROM文件以及PicoBlaze核文件的连接。下面对顶层文件进行简要说明。
例化kcpsm3和INT_TEST。
初始化未用的PicoBlaze输入引脚in_port和reset。
扩展输出寄存器,分别是waveforms、counter和sel,其端口ID分别为0x02、0x04和0x08。
中断输入逻辑。
将计数器的结果译码为7段LED的输入编码。顶层文件源代码如下。
--
libraryIEEE;
useIEEE.STD_LOGIC_1164.ALL;
useIEEE.STD_LOGIC_ARITH.ALL;
useIEEE.STD_LOGIC_UNSIGNED.ALL;--
-------------------------------------------------------------------------
entitykcpsm3_int_testis
Port(LED:outstd_logic_vector(6downto0);
waveforms:outstd_logic_vector(7downto0);
interrupt_event:instd_logic;
clk:instd_logic;
selp:outstd_logic);
endkcpsm3_int_test;
-------------------------------------------------------------------------
architectureBehavioralofkcpsm3_int_testis
--
componentkcpsm3
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;
--
componentint_test
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);
signal
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北京亿欧网盟科技有限公司-新质生产力系列:2025中国消费级AI硬件价值洞察及GEEK50榜单报告
- 2024年三年级道德与法治下册 第四单元 多样的交通和通信 11四通八达的交通第二课时说课稿 新人教版
- 2024年秋七年级地理上册 第五章 世界的发展差异 5.2《国际经济合作》说课稿2 (新版)湘教版
- 9 古代科技 耀我中华(说课稿)2024-2025学年统编版道德与法治五年级上册
- 养殖设备销售合同范例
- 2024年一年级道德与法治上册 第16课 我有一双明亮的眼睛说课稿 未来版
- 9 种豆子 说课稿-2023-2024学年科学二年级下册冀人版
- 出售电厂锅炉合同范例
- 人员转公司合同范例
- 2023六年级语文下册 第一单元 口语交际:即兴发言新学习单说课稿 新人教版
- 跨领域安检操作标准化的现状与挑战
- 大模型落地应用实践方案
- 2024届清华大学强基计划数学学科笔试试题(附答案)
- 六年级上册数学应用题100题
- 个人代卖协议
- 赏析小说语言(二)
- 【立高食品公司的偿债能力现状及问题分析(论文9000字)】
- 10.《运动技能学习与控制》李强
- 冀教版数学七年级下册综合训练100题含答案
- 农电公司绩效考核管理办法
- 斜拉桥施工技术之斜拉索图文并茂
评论
0/150
提交评论