当前位置: 首页 > news >正文

如何使用天翼云主机建设网站北京seo优化排名推广

如何使用天翼云主机建设网站,北京seo优化排名推广,中国建设银行沈阳铁西支行网站,化妆品网络营销策划书ZYNQ-PL实践课堂(四)IP核之RAM) 1 概述2 硬件管脚约束3 搭建IP核4 创建新的verilog文件5 创建另一个实例化6 仿真文件7 编译、下载总结 1 概述 RAM(随机存取存储器), 它用来随时把数据写入或者读取任一指定…

ZYNQ-PL实践课堂(四)IP核之RAM)

  • 1 概述
  • 2 硬件管脚约束
  • 3 搭建IP核
  • 4 创建新的verilog文件
  • 5 创建另一个实例化
  • 6 仿真文件
  • 7 编译、下载
  • 总结

1 概述

RAM(随机存取存储器), 它用来随时把数据写入或者读取任一指定地址的存储单元。RAM 主要用来存放程序及程序执行过程中产生的中间数据、 运算结果等。
XILINX 7系列BRAM IP核可配置成单端口RAM、也可以配置成双端口RAM。本文介绍配置成单端口 RAM 。
本文介绍xilinx RAM IP 核。
单端口RAM框图如下,
在这里插入图片描述
单端口RAM端口介绍,

DINA	: RAM 端口A写数据信号。
ADDRA	: RAM 端口A读写地址信号,读地址、写地址共用同该地址线。
WEA		: RAM 端口A写使能信号, 高电平表示向 RAM 中写入数据,低电平表示从 RAM 中读出数据。
ENA		: 端口A的使能信号, 高电平表示使能端口A, 低电平表示端口 A 被禁止。
RSTA	: RAM 端口A复位信号,可配置成高电平或者低电平复位。
REGCEA	: RAM 端口A输出寄存器使能信号, 当 REGCEA 为高电平时, DOUTA 保持最后一次输出的数据。
CLKA	: RAM 端口A的时钟信号。
DOUTA	: RAM 端口A读出的数据。

接下来介绍 Vivado 软件携带了 BMG IP 核(块 RAM 生成器),配置成单端口RAM,进行读写操作。

2 硬件管脚约束

关于时钟、复位如下,

set_property -dict {PACKAGE_PIN U18 IOSTANDARD LVCMOS33} [get_ports sys_clk]
set_property -dict {PACKAGE_PIN J15 IOSTANDARD LVCMOS33} [get_ports sys_rst_n]

3 搭建IP核

选择Block Memory Generator,
在这里插入图片描述

在这里插入图片描述

Interface Type:

选择 Native 接口类型(标准 RAM 接口总线)。

Memory Type选项如下,

Memory Type(存储器类型):
可配置成 Single Port RAM(单端口 RAM)

Simple Dual Port RAM	(伪双端口 RAM)
True Dual Port RAM		(真双端口 RAM)
Single Port ROM			(单端口 ROM)
Dual Port ROM			(双端口 ROM)

ECC Options(纠错能力选项):

单端口 RAM 不支持 ECC。

Write Enable(字节写使能选项):

勾中后可以单独将数据的某个字节写入 RAM 中,这里不使能。

Algorithm Options(算法选项):

 Minimum Area 		(最小面积)Low Power 			(低功耗)Fixed Primitives	(固定的原语)

点击Port A Option,
在这里插入图片描述

Write Width		:端口 A 写数据位宽,单位 Bit,这里设置成 8。
Read Width		: 端口 A 读数据位宽,一般和写数据位宽保持一致,设置成 8。
Write Depth		:写深度,这里设置成 32,即 RAM 所能访问的地址范围为 0-31。
Read Depth		:读深度,默认和写深度保持一致。
Operating Mode	: RAM 读写操作模式。 共分为三种模式 Write First(写优先模式)、Read First(读优先模式)和 No Change(不变模式)。

使能端口类型

Enable Port Type(使能端口类型): Use ENA pin(添加使能端口 A 信号); Always Enabled(取消使能信号)

Port A Optional Output Register(端口 A 输出寄存器选项)

Port A Output Reset Options(RAM 复位信号选项):这里不添加复位信号,保持默认即可。
.

在这里插入图片描述
点击OK,
在这里插入图片描述
在“Design Run”窗口的“Out-of-Context Module Runs”一栏中出现了该 IP 核对应的run“blk_mem_gen_0_synth_1”,正在综合如下图,
在这里插入图片描述

4 创建新的verilog文件

创建一个新的设计文件 ram_rw.v,

module ram_rw(input               clk        ,  //时钟信号input               rst_n      ,  //复位信号,低电平有效output              ram_en     ,  //ram使能信号output              ram_wea    ,  //ram读写选择output  reg  [4:0]  ram_addr   ,  //ram读写地址output  reg  [7:0]  ram_wr_data,  //ram写数据input        [7:0]  ram_rd_data   //ram读数据        );//reg define
reg    [5:0]  rw_cnt ;                //读写控制计数器//控制RAM使能信号
assign ram_en = rst_n;
//rw_cnt计数范围在0~31,写入数据;32~63时,读出数据
assign ram_wea = (rw_cnt <= 6'd31 && ram_en == 1'b1) ? 1'b1 : 1'b0;//读写控制计数器,计数器范围0~63
always @(posedge clk or negedge rst_n) beginif(rst_n == 1'b0)rw_cnt <= 1'b0;    else if(rw_cnt == 6'd63)rw_cnt <= 1'b0;elserw_cnt <= rw_cnt + 1'b1;    
end  //产生RAM写数据
always @(posedge clk or negedge rst_n) beginif(rst_n == 1'b0)ram_wr_data <= 1'b0;  else if(rw_cnt <= 6'd31)  //在计数器的0-31范围内,RAM写地址累加ram_wr_data <= ram_wr_data + 1'b1;elseram_wr_data <= 1'b0 ;   
end  //读写地址信号 范围:0~31
always @(posedge clk or negedge rst_n) beginif(rst_n == 1'b0)ram_addr <= 1'b0;else if(ram_addr == 5'd31)ram_addr <= 1'b0;else    ram_addr <= ram_addr + 1'b1;
endila_0 your_instance_name (.clk(clk),           // input wire clk.probe0(ram_en),     // input wire [0:0]  probe0  .probe1(ram_wea),    // input wire [0:0]  probe1 .probe2(ram_addr),   // input wire [0:0]  probe2 .probe3(ram_wr_data),// input wire [4:0]  probe3 .probe4(ram_rd_data) // input wire [7:0]  probe4 
);endmodule

5 创建另一个实例化

实例化创建的 RAM IP 核以及 ram_rw 模块文件名 ip_ram.v,

module ip_ram(input         sys_clk ,  //系统时钟input         sys_rst_n  //系统复位,低电平有效);//wire define
wire             ram_en      ;  //RAM使能    
wire             ram_wea     ;  //ram读写使能信号,高电平写入,低电平读出 
wire    [4:0]    ram_addr    ;  //ram读写地址 
wire    [7:0]    ram_wr_data ;  //ram写数据  
wire    [7:0]    ram_rd_data ;  //ram读数据  //ram读写模块
ram_rw  u_ram_rw(.clk            (sys_clk     ),.rst_n          (sys_rst_n   ),//RAM.ram_en         (ram_en      ),.ram_wea        (ram_wea     ),.ram_addr       (ram_addr    ),.ram_wr_data    (ram_wr_data ),.ram_rd_data    (ram_rd_data ));//ram ip核
blk_mem_gen_0  blk_mem_gen_0 (.clka  (sys_clk      ),  // input wire clka.ena   (ram_en       ),  // input wire ena	.wea   (ram_wea      ),  // input wire [0 : 0] wea.addra (ram_addr     ),  // input wire [4 : 0] addra.dina  (ram_wr_data  ),  // input wire [7 : 0] dina.douta (ram_rd_data  )  // output wire [7 : 0] douta
);endmodule

6 仿真文件

对 RAM IP 核进行 仿真,文件tb_ip_ram,

`timescale 1ns / 1psmodule tb_ip_ram();reg     sys_clk;
reg     sys_rst_n;      always #10 sys_clk = ~sys_clk;initial beginsys_clk = 1'b0;sys_rst_n = 1'b0;#200sys_rst_n = 1'b1;
endip_ram u_ip_ram(.sys_clk          (sys_clk        ),.sys_rst_n        (sys_rst_n      ));endmodule

7 编译、下载

略。。。

总结

待定。。。

感谢阅读,祝君成功!
-by aiziyou

http://www.cadmedia.cn/news/7366.html

相关文章:

  • wordpress weixin已矣seo排名点击软件
  • 怎样做企业官方网站关键词你们都搜什么
  • 科技有限公司简介模板廊坊seo排名
  • 宿舍管理系统优势的seo网站优化排名
  • 网站地图建设有什么用杭州seo网站建设靠谱
  • c 多语言网站怎么做如何免费注册网站平台
  • 兰州网站建设100应用市场
  • 宁夏建设监督网站企业查询天眼查
  • 企业网站建设 调研中国公关公司前十名
  • 无锡市住房建设局网站谷歌搜索引擎为什么国内用不了
  • 大连建设网站制作市场营销专业就业方向
  • 网站建站建设工作总结2022年可以打开的网址
  • 手机网站开发费用推销广告
  • 四川省红鱼洞水库建设管理网站武汉seo招聘
  • 政务网站建设的三大核心功能是什么搜索引擎的作用
  • 工程招标平台关键词优化策略
  • 建筑公司网站广告宣传语百度收录网址提交
  • 如果网站设计时新闻热点事件
  • 营商环境网站建设网页广告调词平台
  • 十个程序员必备的网站seo知识点
  • 苏州网站建设名字公司开发设计推荐
  • 网站建设怎么学黑帽seo什么意思
  • 做网站要了解的事情怎么给自己的公司建立网站
  • 网站制作报价多少引流获客app下载
  • 温州网站设计图片大全百度一下官网网址
  • 网站制作设计发展前景综合权重查询
  • 兰州程序开发网站建设网络推广公司电话
  • 广州网站app制作公司软文营销方案
  • 做交易网站存在什么风险百度搜索引擎的原理
  • 深圳集团网站建设企业兔子bt樱桃搜索磁力天堂