五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

有一種方法是用異步FIFO來(lái)處理跨時(shí)鐘域處理

2022-05-25 22:26 作者:大方老師單片機(jī)課堂  | 我要投稿

在進(jìn)修跨時(shí)鐘域處理的時(shí)候,有一種方法是用異FIFO來(lái)處理跨時(shí)鐘域處理的


\\\插播一條:

自己在今年整理一套單片機(jī)單片機(jī)相關(guān)論800余篇

論文制作思維導(dǎo)圖

原理+源代+開(kāi)題報(bào)++外文資料

想要的同學(xué)私信找我。

在進(jìn)修跨時(shí)鐘域處理的時(shí)候,有一種方法是用異FIFO來(lái)處理跨時(shí)鐘域處理的。那么在這之前先看看同FIFO實(shí)現(xiàn)。

所謂同FIFO,就是讀寫(xiě)時(shí)鐘是同一個(gè)時(shí)鐘頻次。本次實(shí)現(xiàn)是通過(guò)計(jì)數(shù)器的形式來(lái)實(shí)現(xiàn)滿空標(biāo)志。詳細(xì)實(shí)現(xiàn)如下:

module fifo_sync(

input clk,

inputrst_n,

input[7:0]datain, //輸寫(xiě)數(shù)據(jù)inputwr, //寫(xiě)請(qǐng)求inputrd, //讀請(qǐng)求

outputreg[7:0] dataout, //輸出數(shù)據(jù)outputempt, //空標(biāo)志outputfull //滿標(biāo));

//定義寄存reg [3:0]cnt; //計(jì)數(shù)器用于計(jì)FIFO中寄存了多少數(shù)據(jù),方便提供滿空標(biāo)reg [3:0]wr_ptr, rd_ptr; //讀寫(xiě)指reg[7:0]fifo_mem[15:0]; //16個(gè)8位的寄存器用于寄存數(shù)據(jù)FIFO//定義狀態(tài)parameter S0 = 2'b00, S1 = 2'b01, S2 = 2'b10, S3 = 2'b11;

//用一段式狀態(tài)機(jī)簡(jiǎn)略實(shí)現(xiàn)FIFOalways @(posedge clk or negedge rst_n) begin

if(!rst_n) begin

cnt

wr_ptr

rd_ptr

dataout

end

else begin

case ({rd,wr})

S0 : begin //空閑cnt

wr_ptr

rd_ptr

dataout0;

end

S1:begin//寫(xiě)FIOFif(!full)begin

fifo_mem[wr_ptr]datain;

wr_ptrwr_ptr+1'b1;

rd_ptrrd_ptr;

cntcnt+1'b1;

dataout0;

end

end

S2:begin//FIFOif(!empt)begin

dataoutfifo_mem[rd_ptr];

rd_ptrrd_ptr+1'b1;

wr_ptrwr_ptr;

cntcnt-1'b1;

end

end

S3:begin//同時(shí)讀寫(xiě)FIFOif(!full)begin

fifo_mem[wr_ptr]datain;

wr_ptrwr_ptr+1'b1;

end

if(!empt)begin

dataoutfifo_mem[rd_ptr];

rd_ptrrd_ptr+1'b1;

end

end

default:;

endcase

endend

//滿空標(biāo)志信號(hào)產(chǎn)生assignfull=(cnt==4'd15);assignempt=(cnt==4'd0);

endmodule

簡(jiǎn)單的測(cè)試:

`timescale1ns/1nsmodulefifo_sync_tb();

regclk;regrst_n;reg[7:0]datain;regwr,rd;

wire[7:0]dataout;wireempt;wirefull;

initialbeginclk=1'b1;rst_n=1'b0;datain=0;wr=1'b0;rd=1'b0;#50rst_n=1'b1;#40wr=1'b1;#20rd=1'b1;#20rd=1'b0;#170wr=1'b0;#200rd=1'b1;#40rd=1'b0;#500$stop;end

always#5clk=~clk;

always@(posedgeclk)begin

dataindatain+1'b1;end

fifo_syncfifo(

.clk(clk),

.rst_n(rst_n),

.datain(datain),//輸入數(shù)據(jù).wr(wr),//寫(xiě)請(qǐng)求.rd(rd),//讀請(qǐng)求

.dataout(dataout),//輸出數(shù)據(jù).empt(empt),//空標(biāo)志.full(full)//


【文章福利】:小編整理了一些個(gè)人覺(jué)得比較好的學(xué)習(xí)書(shū)籍、視頻資料共享在群文件里面,有需要的可以自行添加哦!~點(diǎn)擊綠色通訊軟件搜airuimcu加入。

有一種方法是用異步FIFO來(lái)處理跨時(shí)鐘域處理的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
来宾市| 方正县| 潍坊市| 晋宁县| 西丰县| 新宁县| 阿合奇县| 闵行区| 抚远县| 土默特左旗| 祁东县| 庆城县| 蒙阴县| 苍溪县| 和田市| 津南区| 巴林左旗| 张家港市| 玉龙| 香港| 屯昌县| 陇南市| 容城县| 昌黎县| 乳源| 萨迦县| 玉溪市| 资中县| 离岛区| 延安市| 开江县| 重庆市| 垫江县| 水富县| 桂阳县| 清流县| 万山特区| 邵阳市| 陆丰市| 大庆市| 原阳县|