TA的每日心情 | 开心 2018-9-15 10:23 |
---|
新手上路

- 积分
- 35
|
我向fifo里写了4个4位数,在读出来发现仿真没问题,signaltapII抓线时,却不对。代码如下:
`timescale 1ns/1ns
module fifo_test(
Rst_n,
mii_rx_clk,
mii_tx_clk,
WKC
);
input Rst_n;
input mii_rx_clk;
input mii_tx_clk;
output reg[15:0]WKC;
wire tx_go;
reg[3:0]fifo_wrdata;
reg fifo_wrreq;
wire fifo_wrclk;
wire[10:0]fifo_wruse;
wire[3:0]fifo_rddata;
reg fifo_rdreq;
wire fifo_rdclk;
wire rdempty;
wire[10:0]fifo_rduse;
assign fifo_wrclk=mii_rx_clk;
assign fifo_rdclk=mii_tx_clk;
Rx_fifo Rx_fifo(
.aclr(!Rst_n),
.data(fifo_wrdata),
.rdclk(fifo_rdclk),
.rdreq(fifo_rdreq),
.wrclk(fifo_wrclk),
.wrreq(fifo_wrreq),
.q(fifo_rddata),
.rdempty(rdempty),
.rdusedw(fifo_rduse),
.wrfull(),
.wrusedw(fifo_wruse)
);
//fifo里存放4个4位数
reg[2:0]cnt;
reg flag;
always@(posedge mii_rx_clk or negedge Rst_n)
if(!Rst_n)begin
fifo_wrreq<=#1 0;
fifo_wrdata<=#1 0;
cnt<=#1 0;
flag<=#1 0;
end
else if(tx_go)begin
cnt<=#1 5;
end
else if(cnt>=2)begin
fifo_wrreq<=#1 1;
fifo_wrdata<=#1 (fifo_wrdata+1'b1);
cnt<=#1 cnt-1'b1;
end
else if(cnt==1)begin
fifo_wrdata<=#1 0;
fifo_wrreq<=#1 0;
flag<=#1 1;
cnt<=#1 cnt-1'b1;
end
else begin
cnt<=#1 0;
flag<=#1 0;
end
//fifo里取出4个4位数
reg[7:0]flag_dly;
always@(posedge mii_rx_clk or negedge Rst_n)
if(!Rst_n)
flag_dly<=#1 0;
else
flag_dly<=#1 {flag_dly[6:0],flag};
reg[2:0]data_cnt;
always@(posedge mii_tx_clk or negedge Rst_n)
if(!Rst_n)begin
fifo_rdreq<=#1 0;
data_cnt<=#1 0;
WKC<=#1 0;
end
else if(flag_dly[7])begin
data_cnt<=#1 4;
fifo_rdreq<=#1 1;
end
else if(data_cnt>=2)begin
fifo_rdreq<=#1 1;
WKC<=#1 {WKC[11:0],fifo_rddata};
data_cnt<=#1 data_cnt-1'b1;
end
else if(data_cnt==1)begin
fifo_rdreq<=#1 0;
WKC<=#1 {WKC[11:0],fifo_rddata};
data_cnt<=#1 data_cnt-1'b1;
end
else begin
data_cnt<=#1 0;
end
reg [8:0]counter;
always@(posedge mii_tx_clk or negedge Rst_n)
if(!Rst_n)
counter <=#1 0;
else //计数器自增,不考虑溢出,接受溢出自动清零
counter <=#1 counter + 1'b1;
//每671ms(该值无特殊要求,这里取计数器自溢出,接近0.5ms发送一次数据的目的)启动一次发送数据
assign tx_go = (counter == 9'd1);
endmodule
http://file:///d:\\Documents\\Tencent Files\\2579622230\\Image\\C2C\\7NX42$0D)NHU()W0KL__557.png
http://file:///d:\\Documents\\Tencent Files\\2579622230\\Image\\C2C\\]A8Q`K)Q$HI$ZW)2``F7D2Q.png
|
|