Xilinx ISE 14.1生成Rom内核并读取Rom中的数据
<一>建立一个项目readDataFromRom
详细过程参照另一篇文章
http://www.cnblogs.com/LCCRNblog/p/3397666.html
<二>生成一个IP内核
1.右键点击项目——》New Source——》IP (CORE Generator & Architecture Wizard)
我取名为myRom;
点击next
2.Memories & Storage Elements——》RAMs & ROMs
选择其中一个存储器,我在此选择第三个,仅仅是作为示范;
点击next——》finish;
过一会就弹出下图所示的界面
3.配置Rom的各个参数
本例子做一个64x8bit 的Rom,因此:
Width = 8;
Depth = 64;
设置Rom;
next——》next进入下一步
4.初始化Rom(在以后的使用中就不能更改,除非重新设置,后面会讲解怎样重新配置)
在你的工程所在目录下,打开文件夹ipcore_dir,如我的D:\readDataFromRom\ipcore_dir
创建一个文本文件,将其后缀名改写为.coe,我设置为data.coe,用记事本打开,输入一下数据
前两行是固定格式,后面是自己需要的数据:
memory_initialization_radix = 10; 这个是为了说明你在初始化时输入数据是10进制
memory_initialization_vector =
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3;
数据个数一定的为64个,最后一个分号不能少;
创建好初始化文件后,
点击Browse,添加data.coe,
在此可以点击show查看数据;
点击Generate就已经生成好了需要的Rom了。
可以如下图操作查看其代码:
<三>从Rom中读数据
建立一个Verilog Modul:readRom
添加代码如下:
module readRom(
input [5:0] address, //此处的地址是6位,因为我们的Rom是64x8的
output [7:0] data
);
myRom myRom_1(.a(address),.spo(data));//元件例化
endmodule
接着创建readRom的测试文件
添加代码:
//测试前面几个数据
#0.001 address <= 6'b000001;
#0.001 address <= 6'b000010;
#0.001 address <= 6'b000011;
结果为:
自己查看数据是不是正确的
<四>修改初始化文件数据
找到data.coe,我将数据做修改
memory_initialization_radix = 10;
memory_initialization_vector =
10,11,12,13,14,15,16,17,18,19,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
0,1,2,3;
然后:
重新读数据结果为:
数据显示正确;
Xilinx ISE 14.1生成Rom内核并读取Rom中的数据的更多相关文章
- Ubuntu 14.04 安装 Xilinx ISE 14.7 全过程
生命在于折腾. 这个帖子作为我安装xilinx ISE 14.7版本一个记录.希望给需要的人一些帮助,这些内容绝大部分也是来源于互联网. 软硬件: lsb_release -a No LSB modu ...
- Ubuntu 14.04 安装 Xilinx ISE 14.7 全过程(转)
reference:https://www.cnblogs.com/tracyone/p/3561781.html 按照ISE后,建立ISE启动连接: 这个帖子作为我安装xilinx ISE 14.7 ...
- Xilinx ISE 14.1中模拟True Dual Port RAM例子
<一>创建工程 创建工程在此略过. <二>基本代码 1.创建一个Verilog modual代码如下: module main( input clk, input rsta, ...
- Xilinx ISE 14.1利用Verilog产生clock
<一>建立如下的Verilog Module module myClock( input clock ); endmodule <二>建立 Verilog Test Fixtu ...
- Windows 8 64bit Xilinx ISE(14.7) Fix License
http://www.youtube.com/watch?v=ttPbEcNjdo8 It can work successfully!
- [ISE 14.7]Fail to Link the designer导致无法仿真问题
一.当前配置 操作系统:WIN 8.1 64位 软件:Xilinx ISE 14.7 二.解决方法 首先,似乎64位的binary都有些问题,所以先把ISE Design Suite 14.7这个快捷 ...
- Windows 10下Xilinx ISE需要注意的事项。
一是安装.可以在Windows 10下安装Xilinx ISE 14.7. 详见:https://www.eevblog.com/forum/xilinx/guide-getting-xilinx-i ...
- postman上传excel,java后台读取excel生成到指定位置进行备份,并且把excel中的数据添加到数据库
最近要做个前端网页上传excel,数据直接添加到数据库的功能..在此写个读取excel的demo. 首先新建springboot的web项目 导包,读取excel可以用poi也可以用jxl,这里本文用 ...
- 在Xilinx ISE中生成ROM时需要注意的事
在Xilinx ISE中生成ROM时,需要指定.coe文件.需要做到两件事.其一,要使用memory_initialization_radix= ; memory_initializatoin_vec ...
随机推荐
- CSS1-3基礎知識
CSS1-3基礎知識 1.css排版 css在html內排版: <style type='text/css'> 標記名{} .類型名{} #ID名{} 標記名,.類型名,#ID名{} &l ...
- 0 can't find referenced pointcut declarePointExpress
今天在用SpringAOP 的 @pointCut 的时候报错 Exception in thread "main" org.springframework.beans.facto ...
- HTML5可预览多图片ajax上传(使用formData传递数据)
HTML5可预览多图片ajax上传(使用formData传递数据) 在介绍上传图片之前,我们简单的来了解下FormData的基本使用:介绍完成后这些基本知识后,我们会在文章最后提供一个demo,就是a ...
- struts2---自定义类型转换器
从servlet我们知道从页面获取到的参数都是string类型,但是struts2中基本的数据类型,它可以自动帮我们转化为其对应的包装类,就像获取到123,可以自动转化为Integer,但是比如201 ...
- IDEA- idea代码调试debug
IDEA有很多的快捷键,下面整理Debug的快捷键,方便自己使用!(阅读本篇可能花费您2分钟,需要多的实践练习) F9 resume programe 恢复程序 Alt+F10 show execut ...
- 针对Openlayer3官网例子的简介
网址:http://openlayers.org/en/latest/examples/ 如果大家想了解ol3能做什么,或者说已提供的API有什么,又闲一个个翻例子跟API累的话,就看看这个吧. 1. ...
- MUI顶部选项卡的用法(tab-top-webview-main)
前 言 MUI是一款最接近原生APP体验的高性能前端框架,它的比较重要的功能是:下拉刷新.侧滑导航.滑动触发操作菜单和顶部(底部)选项卡等 最近用MUI做手机app应用的时候 ...
- sql的存储过程使用详解--基本语法
存储过程简介 SQL语句需要先编译然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储 ...
- Nginx 1.10.1 版本nginx.conf优化配置及详细注释
Nginx 1.10.1 的nginx.conf文件,是调优后的,可以拿来用,有一些设置无效,我备注上了,不知道是不是版本的问题,回头查一下再更正. #普通配置 #==性能配置 #运行用户 user ...
- FPGA在电平接口领域的应用
电子技术的发展,产生了各种各样的电平接口. TTL电平: TTL电平信号之所以被广泛使用,原因是因为:通常我们采用二进制来表示数据.而且规定,+5V等价于逻辑"1",0V等价于逻辑 ...