<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ST-BUS總線(xiàn)接口模塊的Verilog HDL設計

ST-BUS總線(xiàn)接口模塊的Verilog HDL設計

作者: 時(shí)間:2011-04-09 來(lái)源:網(wǎng)絡(luò ) 收藏


(1)同步檢測及數據發(fā)送
if(!f0) begin file://同步信號低電平有效
f0_flag=1;//同步狀態(tài)標志
bitcounter=bitsofbyte-1;//位計數器復位
bytecounter=0; file://時(shí)隙計數器復位
if(byte_pos1==0) file://通道1為時(shí)隙0,則開(kāi)始發(fā)送數據
begin dx=data1[7]; file://先送高位到
dout1=data11; file://移位準備下一位待發(fā)數據
dout2=data2;end file://準備下一通道待發(fā)數據
else if(byte_pos2==0)//通道2為時(shí)隙0,則開(kāi)始發(fā)送數據(同通道1)
……
else dx=1‘bZ; end file://如果沒(méi)有選擇0時(shí)隙,則輸出高阻,釋放

(2)定位計數及數據發(fā)送
if(f0_flag) file://判斷同步狀態(tài)
begin case(bitcounter)
0:begin bitcounter=bitsofbyte-1;//位計數器復位
if(bytecounter==(bytes_per_frame-1)) bytecounter=0;//時(shí)隙計數滿(mǎn)則復位
else bytecounter=bytecounter +1;//時(shí)隙計數器遞增
if(bytecounter==byte_pos1-1)
file://通道1發(fā)送數據
begin dx=dout1[7];
file://發(fā)送數據的最高位
dout1=dout11; end
file://移位準備下一位待發(fā)數據
else if(bytecounter==byte_pos2-1) file://通道2發(fā)送數據(同通道1)
……
else dx=1‘bZ;end
file://非占用通道則釋放
default:begin
bitcounter=bitcounter-1;
file://位計數遞減
……
file://同前面通道1、通道2發(fā)送數據
end endcase end

根據總線(xiàn)收發(fā)規則及發(fā)送基本工作原理,發(fā)送各功能塊均采用C2上升沿,或者采用C2下降沿轉換狀態(tài)而采用C2上升沿發(fā)送數據。對前者,以上發(fā)送可用1個(gè)或2個(gè)always語(yǔ)句完成;對后者,以上發(fā)送模塊則至少需用2個(gè)always語(yǔ)句實(shí)現,并將數據發(fā)送從以上兩部分中分離出來(lái)。采用類(lèi)似接收模塊的方法,對發(fā)送模塊單獨綜合后作時(shí)序仿真,結果如圖3(b)所示。值得注意的是,為了說(shuō)明模塊對于通道設置順序的無(wú)關(guān)性,圖中第一通道為31時(shí)隙,第二通道為0時(shí)隙。

控制模塊
ST-BUS控制模塊主要完成ST-BUS總線(xiàn)的收發(fā)控制與協(xié)調,同時(shí)也負責與外部的數據交換功能,這部分代碼因涉密不再列出,這里僅簡(jiǎn)單介紹一下其功能。

控制模塊的功能劃分大致分為以下5部分:外部時(shí)鐘產(chǎn)生及管理,控制收發(fā)模塊與控制模塊的數據交換,控制模塊與其它接口的數據交換,對速率不匹配的數據作緩存(FIFO),提供對外通信接口供用戶(hù)設置參數。根據實(shí)際應用情況,以上所列的功能可以適當取舍或調整。如果速率匹配,則可以舍棄第4部分;如果參數固化,則可舍棄第5部分。
  
結語(yǔ)
基于MAX7000S系列CPLD器件分析收發(fā)模塊的最高工作性能可知,接收模塊的位時(shí)鐘C2最高工作頻率可達21.74MHz,而發(fā)送模塊的位時(shí)鐘C2最高工作頻率則達到32.26MHz,完全符合要求。本文所的ST-BUS接口模塊具有很強的通用性、可擴展性和可移植性,利用MAX7000S系列CPLD器件成功實(shí)現了ST-BUS與UART、RS-232、RS-485等接口單元的順利對接,并已成功應用于某專(zhuān)用集群通信設備的E1接口板,完成了多路不同接口的數據復接通信,運行狀況良好。

本文引用地址:http://dyxdggzs.com/article/150876.htm

上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>