【Verilog】实验九 存储器设计与IP调用

一、实验目的

1. 掌握单端口RAM和ROM原理和设计方法。

2. 掌握单端口RAM和ROM的IP生成和调用方法。

2. 掌握ModelSim和VIVADO工具软件。

3. 掌握基本的测试代码编写和FPGA开发板使用方法。

二、实验环境

1. 装有ModelSim和VIVADO的计算机。

2. Sword实验系统。

三、实验原理

片内存储器分为RAM和ROM两大类。RAM是随机存储器,存储单元的内容可按需随意取出或存入。这种存储器在断电后将丢失所有数据,因此一般用来存储一些短时间内使用的程序和数据。

ROM即只读存储器,是一种只能读出事先存储的数据的存储器,其特性是存入的数据无法改变。也就是说,这种存储器只能读不能写。由于ROM在断电之后数据不会丢失,所以通常用在不需经常变更的电子资料。

四、实验任务

1. 用Verilog HDL设计深度为32、位宽为8 bit的单端口RAM,在Modelsim上仿真测试。

2.用Verilog HDL设计深度为8、位宽为8 bit的ROM。在Modelsim上仿真测试。

top.v

`timescale 1ns / 1ps
module 	 TOP_new(input  wire clk_200MHz_p,          
	             input wire clk_200MHz_n,
						input  wire[15:0]SW,
						
						output wire led_clk,
						output wire led_clrn,
						output wire led_sout,
						output wire LED_PEN
				
						);
wire clk_100mhz;
    clk_wiz_0 	  instance_name   (
								// Clock out ports
									.clk_out1(clk_100mhz),     // output clk_out1
								// Status and control signals
									.reset(1'b0), // input reset
									.locked(),       // output locked
								// Clock in ports
									.clk_in1_p(clk_200MHz_p),    // input clk_in1_p
									.clk_in1_n(clk_200MHz_n)     // input clk_in1_n
								  );					  
wire[31:0]Div;
wire CK;	
	wire[7:0] out;
	ram U1(Div[26],SW[15:11],SW[10],SW[9],SW[7:0],out[7:0]);
	//module ram(clk,addm,cs_n,we_n,din,dout);
	//SW[10]片选--0,SW[9]为1是读,为0是写,SW[7:0]是输入的数据,SW[15:11]是写入的地址
	//dist_mem_gen_1 U3(SW[15:11],SW[7:0],Div[26],SW[9],out);
	//rom U3(out[7:0],Div[26],SW[2:0],SW[3]);
	clk_div       U8(clk_100mhz,1'b0,SW[2],Div,CK);
wire[15:0]LED_DATA;
	LED_P2S 	  #(.DATA_BITS(16),.DATA_COUNT_BITS(4)) 
				  PLED (clk_100mhz,
						1'b0,
						Div[20],
						LED_DATA,
						led_clk,
						led_clrn,
						led_sout,
						LED_PEN
						);					
	assign LED_DATA = {out[0],out[1],out[2],out[3],out[4],out[5],out[6],out[7],1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,Div[26]};
	
endmodule





		


ram.v

module ram(clk,addm,cs_n,we_n,din,dout);
    input clk;
    input [4:0] addm;
    input cs_n,we_n;
    input [7:0] din;
    output [7:0] dout;
    reg [7:0] dout;
    reg [7:0] ram[7:0];
    always@(posedge clk)
        begin
            if(cs_n) dout<=8'bzzzz_zzzz;
            else
                if(we_n) dout<=ram[addm];
                else ram[addm]<=din;
        end
endmodule

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/938140.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

元力音乐 1.2.2 | 完全免费无广告的无损音乐听歌下载工具

元力音乐是一款音乐听歌和下载工具&#xff0c;提供完全免费且没有任何广告弹窗的用户体验。内置两条线路&#xff0c;用户可以无限次下载无损音质音乐。作者承诺永久免费并长期维护此应用。此外&#xff0c;它还支持导入歌单功能&#xff0c;让用户能够轻松管理和下载喜爱的音…

生产环境迁移——harbor篇

这些年环境迁移干了很多&#xff0c;但是没有总结&#xff0c;想想还是记录一下&#xff0c;以前是下属做&#xff0c;自己统筹就行&#xff0c;现在就剩下孤家寡人了&#xff0c;只好都自己做。还是完整记录下来&#xff0c;供有缘人参考。其实我也是搭了个草台班子。 1 安装…

电脑问题4[非华为电脑安装华为电脑管家华为荣耀手机多屏协助]

非华为电脑安装华为电脑管家华为荣耀手机多屏协助 我是荣耀手机之前一直用的是window的"连接手机"功能,电脑控制手机还蛮好用,但是又不能够没有好的电脑控制手机的功能,后来想了想看了看,竟然安装了华为电脑关键,竟然可以顺利连接上荣耀手机,发现还蛮好用! 本文引用…

KeyFormer:使用注意力分数压缩KV缓存

Keyformer: KV Cache Reduction through Key Tokens Selection for Efficient Generative Inference 202403&#xff0c;发表在Mlsys Introduction 优化KV cache的策略&#xff0c;主要是集中在系统级别的优化上&#xff0c;比如FlashAttention、PagedAttention&#xff0c;它…

linux ibus rime 中文输入法,快速设置为:默认简体 (****)

本文环境&#xff1a; ubuntu 22.04 直接 apt install ibus-rime 输入法的安全性&#xff0c;人们应该关注吧&#xff01;&#xff01;&#xff1f;&#xff1f; 云输入法&#xff1f;将用户的输入信息传输到云端吗&#xff1f; Rime 等的一些输入法&#xff0c;是本地的&…

【python从入门到精通】-- 第七战:字典

&#x1f308; 个人主页&#xff1a;白子寰 &#x1f525; 分类专栏&#xff1a;重生之我在学Linux&#xff0c;C打怪之路&#xff0c;python从入门到精通&#xff0c;数据结构&#xff0c;C语言&#xff0c;C语言题集&#x1f448; 希望得到您的订阅和支持~ &#x1f4a1; 坚持…

海外本地化呼叫中心有哪些独特优势?

随着全球化的深入推进&#xff0c;企业越来越注重拓展海外市场&#xff0c;而海外本地化呼叫中心作为企业海外拓展的重要工具&#xff0c;其独特优势逐渐凸显。沃丰科技呼叫中心系统凭借其先进的功能和卓越的服务质量&#xff0c;为众多企业提供了完美的解决方案。 语言与文化…

优选算法——分治(归并)

1. 归并排序 题目链接&#xff1a;912. 排序数组 - 力扣&#xff08;LeetCode&#xff09; 题目展示&#xff1a; 题目分析&#xff1a;这里我们直接来实现归并排序即可&#xff1b; 代码实现&#xff1a; class Solution {vector<int> tmp;//在全局创建辅助数组&…

Java从入门到工作1 - 语法

1.1、注解 注解困扰了我很长时间&#xff0c;看了一堆概念。要理解注解&#xff0c;首先得理解两个概念元数据和反射机制 元数据是关于数据的数据。它提供了关于其他数据的信息或描述。例如&#xff0c;在数据库中&#xff0c;记录的结构&#xff08;字段类型、字段名称等&am…

MySQL其五,索引详解,逻辑架构,SQL优化等概念

目录 一、索引 1、索引的概念 2、索引的优缺点 3、添加索引的原则 4、索引的分类 5、索引如何使用 6、存储过程讲解 7、测试索引的效率 7、索引的数据结构 8、覆盖索引&#xff08;SQL优化的点&#xff09; 9、最佳左前缀法则&#xff08;SQL优化的点&#xff09; 二…

简单的go写的websocket协议 im 聊天 服务,流程简单清晰,采用golang编写,flutter im客户端。免费开源哈,随意用

mini-im 1、说明&#xff1a; 项目地址&#xff1a;https://github.com/haomiao33/minim 1.1、项目介绍&#xff1a; 简单的go写的im服务&#xff0c;流程简单清晰,大部分接口使用的是http&#xff0c;方便流程控制。login服务目前只是用来做服务端推送消息通知到客户端。本…

多音轨视频使用FFmpeg删除不要音轨方法

近期给孩子找宫崎骏动画&#xff0c;但是有很多是多音轨视频但是默认的都是日语&#xff0c;电视上看没办法所以只能下载后删除音轨文件只保留中文。 方法分两步&#xff0c;先安装FFmpeg在转文件即可。 第一步FFmpeg安装 FFmpeg是一个开源项目&#xff0c;包含了处理视频的…

GitHub企业版:AWS CodeCommit迁移的最佳路径与技术优势

此前&#xff0c;亚马逊网路服务&#xff08;AWS&#xff09;宣布&#xff0c;自2024年7月25日起&#xff0c;AWS CodeCommit不再接受新客户。虽然现有客户可以继续使用该服务&#xff0c;且其安全性、可用性和性能将得到维护&#xff0c;但AWS将不再推出新功能或接受新用户。 …

龙旗科技社招入职测评:言语理解材料计算图形推理真题北森题库考什么?

龙旗科技社招入职测评北森题库主要考察以下几个方面&#xff1a; 1. **言语逻辑**&#xff1a;这部分的考试时间是10分钟&#xff0c;需要完成10道题目。每题的作答时间被限定为60秒&#xff0c;一旦提交后无法返回修改。题目类型包括总结中心思想、选词填空和推理文章意思。考…

并发编程中数据的可见性

一、什么是并发编程的可见性&#xff1f; 在并发编程中&#xff0c;“可见性”是指一个线程对共享变量的修改是否能被其他线程及时看到的特性。 二、不可见情况的测试 现在设置成员属性flagtrue&#xff0c;如果flagtrue则t1线程一直死循环执行任务&#xff0c;main线程设置fl…

不配置python环境,直接用PyCharm就可以?

有的伙伴可能遇到不安装python环境只安装pycharm也可以进行运行代码。 所以自认为是不需要解释器就可以运行&#xff1f; 这个是不现实的&#xff0c;有很多伙伴可能是安装了Pycharm&#xff0c;但Pycharm看你电脑上没有解释器&#xff0c;所以在安装的时候给你默认安装在C盘…

C语音顺序表专题及应用

数据结构引进 0数据结构相关概念 0.1什么是数据结构 数据结构是由“数据”和“结构”两词组合而来。 什么是数据&#xff1f;常见的数值1、2、3、4…、教务系统⾥保存的用户信息&#xff08;姓名、性别、年龄、学历等等&#xff09;、网页肉眼可以看到的信息&#xff08;⽂字…

单元测试总结

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 Hello&#xff01;大家好&#xff0c;我是一个专注于分享软件测试干货的测试开发。 对于软件测试&#xff0c;我们先按照开发阶段来进行划分&#xff0c;将软件测…

immaculate C# DragDrop 注册失败 解决 C#窗口程序如何看控制台打印的日志

C# DragDrop 注册失败 System.InvalidOperationExceptionHResult0x80131509MessageDragDrop 注册失败。SourceSystem.Windows.FormsStackTrace:在 System.Windows.Forms.Control.SetAcceptDrops(Boolean accept)在 System.Windows.Forms.Control.OnHandleCreated(EventArgs e)…

怎样衡量电阻负载的好坏

电阻负载的好坏通常通过以下几种方法来衡量&#xff1a; 1. 测量电阻值&#xff1a;最直接的方法是使用万用表来测量电阻负载的电阻值。将万用表设置在适当的电阻档位&#xff0c;然后将测试笔连接到电阻负载的两个引脚上。如果电阻负载是好的&#xff0c;那么万用表应该显示一…