对数组的“reg [7:0] a_tmp[32:0]”理解

news/2024/7/5 5:12:13

数组

在verilog中,对数组reg [7:0] a_tmp[32:0]进行操作时,分不清楚先对[32:0]进行操作还是先对 [7:0]进行操作,为此进行下面的实验。进一步加深对数组的理解。

实验1:

reg [7:0] a_tmp[32:0];

遍历的方式:
integer i;
always@(posedge clk or negedge rst_n)begin
	if(rst_n==1'b0)begin
		for(i=0;i<8;i=i+1)
            a_tmp[i]<='d0;//遍历了8次,a_tmp[i]<='d0与a_tmp[i][7:0]<='d0的结果一样
	end 
	else begin
		for(i=0;i<8;i=i+1)
			a_tmp[i]<=data_out;
	end 
	
end

image-20230612083309361

image-20230612083742692

image-20230612083812789

实验2:

reg [7:0] a_tmp[32:0];
integer i;
always@(posedge clk or negedge rst_n)begin
	if(rst_n==1'b0)begin
		for(i=0;i<8;i=i+1)
			a_tmp[i][7:0]<='d0;//将a_tmp[i]修改为a_tmp[i][7:0]。
	end 
	else begin
		for(i=0;i<8;i=i+1)
			a_tmp[i][7:0]<=data_out;
	end 
	
end

image-20230612084441593

image-20230612084542605

两个实验的出的结论:

数组数据的遍历a_tmp[i]<='d0与a_tmp[i][7:0]<='d0的结果一样

实验3:

module array(
	input clk,
	input rst_n,
	input reg [7:0] data_in,
	
	output reg [7:0] data_out

);
reg [7:0] a_tmp[32:0];
reg [7:0] b_tmp[32:0];
always@(posedge clk or negedge rst_n)begin
	if(rst_n==1'b0)begin
		data_out <= 'b0;
	end 
	else
		data_out <= data_in*data_in;
	
end 	
integer i;
always@(posedge clk or negedge rst_n)begin
	if(rst_n==1'b0)begin
        for(i=0;i<33;i=i+1)//将i=8改为i=33
			a_tmp[i][7:0]<='d0;
	end 
	else begin
		for(i=0;i<8;i=i+1)
			a_tmp[i][7:0]<=data_out;
	end 
	
end 

endmodule

得到的结果:

image-20230612085154448

最后得出的结论:

“reg [7:0] a_tmp[32:0]”代码中,对数组的操作先对[32:0]进行操作,再对[7:0]进行操作。[32:0]为深度,[7:0]为位宽。
reg [7:0] a_tmp[32:0];

image-20230612090541426

image-20230612090748941

	--晓凡	2023年6月12日于桂林书

http://lihuaxi.xjx100.cn/news/1235117.html

相关文章

对话利星行汽车:合作圆满,对斯歌充分信任!

上海斯歌在利星行汽车的OA替换项目中&#xff0c;喜提客户高度评价。近日&#xff0c;就企业数字化及斯歌产品、服务、体验等问题&#xff0c;斯歌与利星行汽车的管理信息系统总经理庄淑菱女士展开了一次对话访谈。 利星行汽车简介 利星行汽车于1993年进入中国大陆市场&#xf…

【几分醉意赠书活动 - 03期】 | 《Python系列丛书》

个人主页&#xff1a; 几分醉意的CSDN博客主页_传送门 个人主页&#xff1a; 陈老板的CSDN博客主页_传送门 赠书活动 | 第三期 本期好书推荐&#xff1a;《Python系列丛书》 粉丝福利&#xff1a;书籍赠送&#xff1a;共计送出30本 参与方式&#xff1a;关注公众号&#xff1a;…

Kali Linux 简介

概要 Kali Linux 是安全专家和以及网络安全爱好者所使用的工具&#xff0c;你不应该也不允许使用它来对他人的计算机系统进行未经允许的任何活动。任何使用它带来的法律后果和损失&#xff0c;将由使用者自行承担。我们之所以推荐 Kali Linux&#xff0c;是希望有更多的人来保护…

作为leader,如何去做,如何去把控,如何对外交流

充分的理解理论知识&#xff0c;找到正确的人去验证你的理论知识时可行的。 作为leader&#xff0c;如何去用人&#xff0c;如何能让人把他们的才华展现出来&#xff0c;用尽其才华很重要。 作为项目开发的案例我后续会继续复盘&#xff0c;有人可用&#xff0c;有正确的用人方…

macbook pro存储空间不足怎么办? MacBook Pro怎么优化或清理Mac磁盘空间?

MacBook Pro用久了之后都会堆积很多残留文件或缓存垃圾&#xff0c;久经之下MacBook Pro磁盘空间将会面临不够用的情况。 macbook pro存储空间不足怎么办&#xff1f;macbook pro笔记本中的存储空间不足&#xff0c;想要优化一下&#xff0c;该怎么优化呢&#xff1f; 这时候…

【PHP】Wampserver启动时呈现黄色的解决方案

首先&#xff0c;我们可以进入服务查看WampServer的服务是哪几个没有开&#xff1f; 经观察上图发现&#xff1a; apache没有开启sql没有开启 如果你点击开启&#xff0c;将会出现报错信息&#xff0c;因为服务冲突 所以解决方式就是&#xff1a;关闭冲突服务&#xff0c;再次…

OpenAI官方提示词课(四)如何进行文字的情感分析

这节介绍大模型判断文字的语义&#xff0c;或者说对内容进行情感分析的能力。同时也演示了大模型如何提取出文字中的关键信息。 在传统的机器学习方案中&#xff0c;要做到对文字内容的情感分析&#xff0c;需要先对一系列的文字内容&#xff08;如评论&#xff09;进行人工标…

算法设计与分析之最优二叉搜索树

简介 给定一个n个不同关键字的已排序的序列K<k1,k2,…,kn>&#xff0c;我们希望用这些关键字构造一颗二叉搜索树&#xff0c;对于给定的搜索频率&#xff0c;该二叉搜索树所需的期望代价最小。称这个二叉树为最优二叉搜索树。 代码具体实现 #include<iostream> …