《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > Core_1553_8051_SFR Verilog設計文件

Core_1553_8051_SFR Verilog設計文件

2008-08-13
作者:Actel
關鍵詞: present_st B0 CPUWAITn reg sfr4

// SFR_FSM.v
module SFR_FSM (clk, Resetn, sfr4" title="sfr4">sfr4, sfr7, CPUDOUT, CPUWAITn" title="CPUWAITn">CPUWAITn, latch_RD, CPUWRn,
??????????????? CPURDn , CPUMEM);

input clk;
input [2:0] sfr4; // SFR4 Control Reg" title="Reg">Register bit 2 to 0.
input CPUWAITn; //input from Core1553
input Resetn; //global power on reset
input [15:0] CPUDOUT; // Read data input from Core1553B
output [7:0] sfr7; // SFR7 Status Regsiter
output [1:0] CPUWRn; //Output to Core1553
output CPURDn; //Output to Core1553
output [15:0] latch_RD; //read data output to Core8051
output CPUMEM; //Output to Core1553

parameter idle = 2'b0" title="b0">b00, write = 2'b01, read = 2'b10;

reg CPURDn_int, CPUMEM;
reg [1:0] CPUWRn;
reg [7:0] sfr7;
reg [15:0] latch_RD;

reg [1:0] present_st" title="present_st">present_st, next_st;

//FSM state transition
always @ (posedge clk or negedge Resetn)
begin
if (Resetn == 1'b0)
? present_st <= idle;
else
? present_st <= next_st;?
end

//FSM state definition狀態機
always @ (present_st, sfr4, CPUWAITn)
begin
case (present_st)
?? idle: case (sfr4)
???????? 3'b000: next_st<= idle;
???????? 3'b011: next_st<= write;
???????? 3'b101: next_st<= read;
???????? default: next_st<= idle;
???????? endcase
?? write: case (CPUWAITn)
????????? 1'b0: next_st<= write;
????????? 1'b1: next_st<= idle;
????????? endcase
?? read: case (CPUWAITn)
???????? 1'b0: next_st<= read;
???????? 1'b1: next_st<= idle;
???????? endcase
?
?? default: next_st <= idle;
endcase
end

//Output definition 輸出定義
always @ (present_st)
begin
case (present_st)
idle: begin
????? sfr7 <= 8'b0;
????? CPUWRn <= 2'b11;
????? CPURDn_int <= 1'b1;
????? CPUMEM <= 1'b0;
?? end
write: begin
?????????? sfr7 <= 8'b00000001;
?????????? CPUWRn <= 2'b00;
?????????? CPURDn_int <= 1'b1;
?????????? CPUMEM <= 1'b1;
???? end
read:? begin
?????????? sfr7 <= 8'b00000001;
?????????? CPUWRn <= 2'b11;
?????????? CPURDn_int <= 1'b0;
?????????? CPUMEM <= 1'b1;
???? end
default: begin
????? sfr7 <= 8'b00000000;
????? CPUWRn <= 2'b11;
????? CPURDn_int <= 1'b1;
????? CPUMEM <= 1'b0;
?? end
endcase
end

//Latching the read data from Core1553 to Core8051
always @ (posedge clk)posedge CPURDn_int)
begin
if (CPURD_int == 1'b0)
?? latch_RD <= CPUDOUT;
end

assign CPURDn = CPURDn_int;

endmodule

更多請訪問

http://www.actel.com/techdocs/appnotes/proasic3.aspx

?

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 黄瓜视频深夜释放自己 | 我把寡妇日出水好爽视频 | 性猛交xxxxx按摩中国 | 久久香蕉网 | 婷婷六月综合网 | 欧美成人手机在线 | 精品视频一区二区三区在线播放 | 真实乱欲视频 | 国产三级国产精品国产普男人 | 亚洲欧美日韩天堂 | 成人国产永久福利看片 | 亚洲综合色一区二区三区另类 | 伊人天伊人天天网综合视频 | 成人黄色在线观看 | 手机福利视频一区二区 | 欧美日韩片 | 中文字幕欧美视频 | 国产精品不卡在线观看 | 国产成人亚洲毛片 | 亚洲欧美日韩中文v在线 | 国产播放啪视频免费视频 | 日韩免费小视频 | 久久亚洲高清观看 | 欧美一区亚洲二区 | 一级黄色大片免费看 | 午夜高清在线观看 | 成人国产精品久久久免费 | 久青草视频免费视频播放线路1 | 青青草国产青春综合久久 | 午夜毛片免费看 | 亚洲精品午夜级久久久久 | 国产精品12页 | 在线欧美视频免费观看国产 | 在线观看免费午夜大片 | 亚洲视频精品在线观看 | 在线精品欧美日韩 | 肉动漫成人免费无遮羞 | 大学生美女穿黑色丝袜网站 | 麻豆射区 | 特级毛片视频在线 | 一级特黄特黄xxx视频 |