-
Notifications
You must be signed in to change notification settings - Fork 0
rom读写测试时序分析
minichao9901 edited this page Mar 3, 2024
·
1 revision
![image](https://private-user-images.githubusercontent.com/61445559/309546002-3ae5c67c-be28-4de6-b6b8-e2eef83d368e.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0ODc1OTEsIm5iZiI6MTczOTQ4NzI5MSwicGF0aCI6Ii82MTQ0NTU1OS8zMDk1NDYwMDItM2FlNWM2N2MtYmUyOC00ZGU2LWI2YjgtZTJlZWY4M2QzNjhlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDIyNTQ1MVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRiN2EwNDZiNmZkYmJmMDQ4ZTNhMWY0ZjVmNmE3NjM5ZGZjZjg3NjFlNDg2NzFkYTc1NWQ2MzkyMmFkMGMwOTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.A0QynMJdRdMXqfcD3NU4k4b-mk9Kr5ha7Y3-9fW3HOg)
一般我们这2项都不勾选,这样延迟是一拍。
`timescale 1ns / 1ps
module test_rom(
);
reg clka, rstn;
initial clka=0;
always #10 clka=~clka;
initial begin
rstn=0;
#1000;
rstn=1;
end
reg [15:0] dina;
reg [7:0] addra;
reg ena;
wire [15:0] douta;
initial begin
dina=16'h0000;
addra=8'h00;
ena=0;
wait(rstn==1);
# 1000;
repeat(256)
@(posedge clka) begin
#1;
ena=1;
addra=addra+1;
end
ena=0;
end
blk_mem_gen_1 your_instance_name (
.clka(clka), // input wire clka
.ena(ena), // input wire ena
.addra(addra), // input wire [7 : 0] addra
.douta(douta) // output wire [15 : 0] douta
);
endmodule
![image](https://private-user-images.githubusercontent.com/61445559/309546297-1d63c32e-4887-4732-8a7a-e1f6488ae786.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0ODc1OTEsIm5iZiI6MTczOTQ4NzI5MSwicGF0aCI6Ii82MTQ0NTU1OS8zMDk1NDYyOTctMWQ2M2MzMmUtNDg4Ny00NzMyLThhN2EtZTFmNjQ4OGFlNzg2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDIyNTQ1MVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTVjNjBiYzc4NTBlZDdjNWVmZjJlZjMxNzQ0YzNkNDBiNDk5N2VmYjNlYjMyZjY4M2RhODlhY2E1NTQ4NDNlMGMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.R8d1-f_Z7vWKK8bItcIPOTE5xajtGNeWie7GMdhTg00)
![image](https://private-user-images.githubusercontent.com/61445559/309546183-b534edcf-7c19-47ec-a171-70d42e6554b4.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0ODc1OTEsIm5iZiI6MTczOTQ4NzI5MSwicGF0aCI6Ii82MTQ0NTU1OS8zMDk1NDYxODMtYjUzNGVkY2YtN2MxOS00N2VjLWExNzEtNzBkNDJlNjU1NGI0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDIyNTQ1MVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWY1YTM2ODU4YzFmYmIxYzEwNzFiYjBjZTA4NjUxNjcwZDQ3NmI1ODcxNzc1ODlhYzJmNWUxYTQ4YzI2ZmY3NjcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.CyOCfwBLZbksiLmhjc_OoxVbCaoxybL0ywtGeiqzcLY)
可以看到,第1个读的地址0x01,数据是13。(注意,由于testbench原因,没有从0x00地址开始读)
![image](https://private-user-images.githubusercontent.com/61445559/309546260-d7443a04-4f5f-4500-a9d6-3af0516735ff.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0ODc1OTEsIm5iZiI6MTczOTQ4NzI5MSwicGF0aCI6Ii82MTQ0NTU1OS8zMDk1NDYyNjAtZDc0NDNhMDQtNGY1Zi00NTAwLWE5ZDYtM2FmMDUxNjczNWZmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDIyNTQ1MVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRkODUzMjE0NDk4YTkzYjJkY2VhMTE4ZmM0ZjMwY2Y4ZGY4YWEwODE5ZWY4MWY5YzViODQwNzlkMDZmNDU1NDkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.ns2bIKvjcVK4GGsbqywBtJFD9dn3IfPVptf_bDWRS90)
最后一个读的地址是0xff,读的数据是267